收藏 分销(赏)

信号检测实验报告.doc

上传人:人****来 文档编号:4375329 上传时间:2024-09-14 格式:DOC 页数:11 大小:883KB
下载 相关 举报
信号检测实验报告.doc_第1页
第1页 / 共11页
信号检测实验报告.doc_第2页
第2页 / 共11页
点击查看更多>>
资源描述
信号检测实验报告 Harbin Institute of Technology 匹配滤波器实验报告 课程名称: 信号检测理论 院 系: 电子与信息工程学院 姓 名: 高亚豪 学 号: 14SD05003 授课教师: 郑薇 哈尔滨工业大学 1. 实验目的 通过Matlab编程实现对白噪声条件下的匹配滤波器的仿真,从而加深对匹配滤波器及其实现过程的理解。通过观察输入输出信号波形及频谱图,对匹配处理有一个更加直观的理解,同时验证匹配滤波器具有时间上的适应性。IlypRra。0NFqyrM。 2. 实验原理 对于一个观测信号,已知它或是干扰与噪声之和,或是单纯的干扰,即 这里,,都是复包络,其中是信号的复幅度,是确知的归一化信号的复包络,它们满足如下条件。 其中为信号的能量。是干扰的均值为0,方差为的白噪声干扰。 使该信号通过一个线性滤波系统,有效地滤除干扰,使输出信号的信噪比在某一时刻达到最大,以便判断信号的有无。该线性系统即为匹配滤波器。BsLdOOT。VLcCFpq。 以代表系统的脉冲响应,则在信号存在的条件下,滤波器的输出为 右边的第一项和第二项分别为滤波器输出的信号成分和噪声成分,即 则输出噪声成分的平均功率(统计平均)为 而信号成分在时刻的峰值功率为 输出信号在时刻的总功率为 上式中输出噪声成分的期望值为0,即,因此输出信号的功率成分中只包含信号功率和噪声功率。 则该滤波器的输出信噪比为 根据Schwartz不等式有 当且仅当时等号成立,其中为任意非零复常数。此时获得最大信噪比,即 对该式进行的变量置换,得到 因此,只有在时刻之前结束,才能使信噪比达到最大值。即观察时刻需设置在输入信号结束之后,此时。则最大信噪比为YyDbAVV。Ot86OpE。 综上所述,匹配滤波器的单位冲激响应为,对其进行傅里叶变换得到它的频率响应为,其中输入信号傅里叶变换。从匹配滤波器的频率响应可以看出,滤波处理不仅对信号的幅度进行了匹配,使输入信号较强的频率成分得到较大的加权,而且将输入信号的非线性相位补偿掉,使输出信号具有线性相位。sE1Rby9。JQLPaUU。 3. 实验步骤 (1)设定采样频率、噪声功率等仿真参数,产生输入信号的波形。 (2)根据得到匹配滤波器的单位冲激响应。 (3)生成输入信号,它有及其延迟叠加构成,即输入信号中存在两个回波。 (4)对输入信号和单位脉冲响应分别进行点FFT,其中不小于输入信号和冲激响应的点数之和,将它们的结果相乘,在进行FFT的逆变换,得到滤波器的输出信号。SqxBMRy。g8kSAFF。 (5)生成输出信号的波形图即频谱图。检测输出信号的两个峰值,将它们出现的时间与理论值比较,验证滤波器在时间上的适应性。kdKcbU3。12Qp0qx。 4. 实验结果与分析 本实验中采用的仿真参数如下:采样频率为100KHz,载波频率为2KHz,信号脉冲宽度为0.015s,第二个回波信号延迟为0.025s。dsIIG8i。7CLSrsA。 首先,在无噪声干扰的条件下,将有限时间的正弦信号及其延迟输入匹配滤波器,得到各部分仿真波形如下所示: 计算得到的延迟结果为,与仿真设定值相等。 从图像中可以看出,匹配滤波器的输出有两个峰值,分别对应两个输入信号结束的时刻,且它们之间的时间间隔等于输入信号的延迟时间,验证了匹配滤波器具有时间上的适应性。即当信号存在延迟时,不需要改变滤波器的形式,只需将观察时刻延迟相应的时间即可。qNM8kC0。xnHAUwf。 输出信号的幅度谱与输入信号相比,有了更强的对比度,即在较大的频率分量上得到了较大加权,并且输出信号具有线性相位,验证了匹配处理对输入信号进行了幅度匹配和相位匹配。ZlZyXdT。hOoVzxA。 在有噪声干扰的条件下,仿真得到的结果如下所示,其中噪声平均功率为0.3: 计算得到的延迟结果为。其中滤波器的频率响应与上面的相同,在此不再列出。 以上结果说明在该噪声环境下仍能够实现信号的匹配滤波。只是输出信号的相位不再是线性的,这是由于滤波器无法对噪声的相位进行补偿。kk73A9W。MIBN5YD。 仍在该噪声条件下,将输入信号改为线性调频信号,得到的仿真结果为: 其它条件不变,只将输入信号改为m序列的二相编码,其码元速率为2Kb/s,伪码周期为31,得到如下结果:uXBDSUg。tOetncu。 可见,当改变信号波形时,进行相应的匹配滤波可以得到相似的结果,与理论推导结果一致,从而验证了匹配滤波器的幅度和相位匹配特性,以及时间适应性。nrx8QHU。KlErOwJ。 5. 实验仿真程序 clear all; close all; clc; %仿真参数设定 fs = 1e5; %采样频率100kHz A = 0.3; %设置噪声平均功率 fo = 2e3; %载波频率2kHz To = 0.015; %调制脉冲长度0.015s ts = 1 / fs; %采样周期 td = 0.01; %第二个回波的延时 %df = 1e4; %线性调频信号频率变化率 %rb = 2e3; %二相编码的码元速率 tu = 0 : ts : (To - ts); % mseq = m_sequence([0, 0, 1, 0, 1], 1); % [u, tu] = wave(mseq, fs, rb); %m序列二相编码Pj79OA8。aWffx1n。 %u = cos(2 * pi * (fo + df * tu) .* tu); %线性调频信号zaLWTPQ。sGDhmuu。 u = cos(2 * pi * fo * tu); %回波信号为正弦信号 h = fliplr(u); %匹配滤波器单位脉冲响应 x = [u, zeros(1, fix(td / ts)), u] + A * randn(1, 2 * size(u, 2) + fix(td / ts));VSejduT。j4aVsKx。 N1 = size(x, 2); N2 = size(h, 2); M = N1 + N2 - 1; %傅里叶变换的点数 X = fft(x, M); H = fft(h, M); Y = X .* H; y = ifft(Y, M); [C, I1] = max(y); y1 = y; y1(I1 - 10 : I1 + 10) = 0; [C, I2] = max(y1); tao = ts * abs(I1 - I2) %仿真图像 t = 0 : ts : ts * (M - 1); figure(1); tx = 0 : ts : ts * (N1 - 1); plot(tx, x);axis([0, 0.045, -2, 2]); title('匹配滤波器输入信号波形(两个回波)');xlabel('时间/s');ylabel('幅度/V');N0N2jjz。mCqA7f6。 figure(2); fd = fs / M; f = 0 : fd : (fs - fd); subplot(2, 1, 1); plot(f, abs(H)); title('匹配滤波器幅频响应');xlabel('频率/Hz');ylabel('幅度'); subplot(2, 1, 2); plot(f, angle(H)); title('匹配滤波器相频响应');xlabel('频率/Hz');ylabel('角度/rad');ZYuiPs9。Qq0yCjK。 figure(3); plot(t, y); title('匹配滤波器输出');xlabel('时间/s');ylabel('幅度/V'); figure(4); subplot(2, 1, 1); plot(f, abs(X)); title('输入信号与输出信号的幅频特性比较');xlabel('频率/Hz');ylabel('幅度');j4oyXMD。IqomOjT。 subplot(2, 1, 2); plot(f, abs(Y)); xlabel('频率/Hz');ylabel('幅度'); figure(5); subplot(2, 1, 1); plot(f, angle(X)); title('输入信号与输出信号的相频特性比较');xlabel('频率/Hz');ylabel('角度/rad');P2XYm1E。fWCV5pC。 subplot(2, 1, 2); plot(f, angle(Y)); xlabel('频率/Hz');ylabel('角度/rad'); %产生m序列 function mseq = m_sequence(fbconnection, period) n = length(fbconnection); N = 2^n - 1; %m序列的长度 for k = 1 : period register = [zeros(1,n - 1) 1]; %定义移位寄存器的初始状态 mseq(1 + N * (k - 1)) = register(n); %m序列的第一个输出码元1NXyYKg。IUl0Gqu。 for i = 2 + (N * (k - 1)) : (N * k) newregister(1) = mod(sum(fbconnection.*register),2);OlDXqqO。rbJdFm2。 for j = 2 : n newregister(j) = register(j-1); end; register = newregister; %移位后的寄存器 mseq(i) = register(n); %新的寄存器输出 end end %对m序列进行二相编码 function [y, t] = wave(code, fs, rb) T = fs / rb; N = length(code); for i = 1 : N; if code(i) == 1; for j = 1 : T; y(T * (i - 1) + j) = 1; end end if code(i) == 0; for j = 1 : T; y(T * (i - 1) + j) = -1; end end end y = [y, y(T * N)]; t = 0 : (1 / fs) : (N / rb);
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服