现代信号与通信技术实验报告.docx
《现代信号与通信技术实验报告.docx》由会员分享,可在线阅读,更多相关《现代信号与通信技术实验报告.docx(26页珍藏版)》请在冰豆网上搜索。
![现代信号与通信技术实验报告.docx](https://file1.bdocx.com/fileroot1/2022-11/15/cde03065-337f-436e-8715-35d5fbbe7913/cde03065-337f-436e-8715-35d5fbbe79131.gif)
现代信号与通信技术实验报告
现代信号与通信技术实验报告
班级:
学号:
姓名:
指导老师:
目录
实验一模拟信号频谱分析……………………………3
1.实验目的………………………………………………3
2.实验内容与结果…………………………………………3
实验二离散信号频谱分析……………………………11
1.实验目的………………………………………………11
2.实验内容与结果…………………………………………11
实验三IIR数字滤波器的设计………………………19
1.实验目的………………………………………………19
2.实验内容与结果…………………………………………19
实验心得及体会…………………………………………25
实验一模拟信号频谱分析
1.实验目的
●学会应用DFT对模拟信号进行频谱分析的方法;
●通过应用DFT分析各种模拟信号的频谱,加深对DFT的理解;
●熟悉MATLAB的基本操作,以及一些基本函数的使用,为以后的实验奠定基础。
2.实验内容与结果
⑴理解运行以上例题程序,改变有关参数,进一步观察结果的变化,并加以分析说明。
⑵假设一实际测得的一段信号的长度为0.4秒,其表达式为:
其中
。
试确定一合适抽样频率
,利用MATLAB的fft函数分析计算信号
的频谱。
解:
信号
的最高频率fm=110Hz,抽样频率fs大于等于2fm=220Hz,取抽样频率fs=300Hz;最低的频率分辨率为10Hz,最少的信号样点数为N=300/10=30.
的MATLAB程序如下:
1N=30;%数据的长度
L=200;%DFT的点数
f1=100;
f2=110;
fs=300;%抽样频率
T=1/fs;%抽样间隔
t=(0:
N-1)*T;
x=cos(2*pi*f1*t)+0.75*cos(2*pi*f2*t);
y=fft(x,L);
mag=abs(y);
f=(0:
length(y)-1)'*fs/length(y);
plot(f(1:
L/2),mag(1:
L/2));
xlabel('频率(Hz)')
ylabel('幅度谱')
程序运行结果如下图所示。
由图可见,频谱图显示出两个较为明显的峰值(对应f1=100;f2=110)。
结论:
当截取信号
样点时,频率分辨率为10,刚好能够分辨出
和
两个频谱分量,但频谱泄漏较严重。
的MATLAB程序如下:
%programexa_1_2.m,利用矩形窗计算有限长余弦信号频谱
N=20;%数据的长度
L=200;%DFT的点数
f1=100;
f2=110;
fs=300;%抽样频率
T=1/fs;%抽样间隔
t=(0:
N-1)*T;
x=cos(2*pi*f1*t)+0.75*cos(2*pi*f2*t);
y=fft(x,L);
mag=abs(y);
f=(0:
length(y)-1)'*fs/length(y);
plot(f(1:
L/2),mag(1:
L/2));
xlabel('频率(Hz)')
ylabel('幅度谱')
程序运行结果如下图所示
由图可见,频谱图显示出两个较为明显的峰值(对应f1=100;f2=110)。
结论:
当截取信号
样点时,频率分辨率为15,达不到最低的分辨频率
,频谱泄漏更为严重。
若取频率分辨率
,则对应的信号样点数为N=300。
N=300的MATLAB程序如下
%programexa_1_3.m,利用矩形窗计算有限长余弦信号频谱
N=300;%数据的长度
f1=100;
f2=110;
fs=300;%抽样频率
T=1/fs;%抽样间隔
t=(0:
N-1)*T;
x=cos(2*pi*f1*t)+0.75*cos(2*pi*f2*t);
y=fft(x);
mag=abs(y);
f=(0:
length(y)-1)'*fs/length(y);
plot(f(1:
length(y)/2),mag(1:
length(y)/2));
xlabel('频率(Hz)')
ylabel('幅度谱')
程序运行结果如下图所示。
由图可见,频谱图显示出两个较为明显的峰值(对应f1=100;f2=110)
结论:
当截取信号N=300样点时,频率分辨率1HZ,高分辨率的频谱图具有较高的质量,频谱分析时必须保证获取足够的信号数据长度。
⑶观察并分析采用不同抽样频率时,对信号
的频谱影响。
a)以
,对其进行采样得到
;
b)以
,对其进行采样得到
。
解:
注意到
时有
,所以exp(-1000*t)时,故模拟信号
可以用一个在0≤t≤0.005之间的有限长度信号来近似。
(a).以
,对
进行采样得到
,对应0≤t≤0.005,0≤n≤25.
的频谱分析MATLAB程序如下:
n=0:
25;%抽样点数
fs=5000;%抽样频率
Ts=1/fs;%抽样间隔
t=n*Ts;
x=exp(-1000*t);
subplot(2,1,1)
stem(t,x,'.');
gtext('Ts=0.125sec');
xlabel('tinsec.');
ylabel('x(n)');
title('DiscreteSignal');
%computethespectrumbyDFT
K=500;
k=0:
1:
K;
w=pi*k/K;
y=fft(x,1001);
mag=Ts*abs(y);
Wmax=2*pi*30;
W=k*Wmax/K;
X=1./sqrt(W.^2+1);%幅度谱理论值
subplot(2,1,2)
plot(w/pi,X,'-',w/pi,mag(1:
length(y)/2+1),'r');
xlabel('Frequencyinpiunits');
ylabel('幅度谱|X(w)|');
z=['fs='num2str(fs)'的结果'];
legend('理论值',z);
title('exp(-1000*t)的幅度谱');
程序运行结果如下图所示:
从图中可见,理论频谱与由DFT近似计算频谱之间存在较大误差,这是由于信号
不是限带信号,在时域抽样时产生频谱混叠。
由于信号
也不是时限信号,由DFT分析频谱时也存在时域加窗截短造成的频谱泄漏。
(b).以
,对
进行采样得到
,对应0≤t≤0.005,0≤n≤5。
的频谱分析MATLAB程序如下:
n=0:
5;%抽样点数
fs=1000;%抽样频率
Ts=1/fs;%抽样间隔
t=n*Ts;
x=exp(-1000*t);
subplot(2,1,1)
stem(t,x,'.');
gtext('Ts=0.125sec');
xlabel('tinsec.');
ylabel('x(n)');
title('DiscreteSignal');
%computethespectrumbyDFT
K=500;
k=0:
1:
K;
w=pi*k/K;
y=fft(x,1001);
mag=Ts*abs(y);
Wmax=2*pi*30;
W=k*Wmax/K;
X=1./sqrt(W.^2+1);%幅度谱理论值
subplot(2,1,2)
plot(w/pi,X,'-',w/pi,mag(1:
length(y)/2+1),'r');
xlabel('Frequencyinpiunits');
ylabel('幅度谱|X(w)|');
z=['fs='num2str(fs)'的结果'];
legend('理论值',z);
title('exp(-1000*t)的幅度谱');
程序运行结果如下图所示:
由图可见,计算出的频谱与理论值十分接近,没有混叠现象产生
结论:
当
时,满足采样定理,所以没有混叠现象产生。
在利用DFT分析连续信号的频谱时,信号抽样频率
对DFT分析信号频谱的精度影响较大,因为它直接影响频谱混叠的程度。
实验二离散信号频谱分析
1.实验目的
●理解DFS、IDFS的原理和基本性质;
●掌握应用FFT对离散信号进行频谱分析的方法;
●通过应用FFT分析各种离散信号的频谱,学会在实际中正确应用FFT。
2.实验内容与结果
⑴理解运行以上例题程序,改变有关参数,进一步观察结果的变化,并加以分析说明。
⑵已知序列:
,试确定一合适样本数
,利用MATLAB的fft函数分析计算信号
的频谱。
解:
序列
是一个周期序列。
为了说明高密度谱和高分辨率谱之间的区别,分以下几种情况进行讨论:
①先取
的前10个样本,10点DFT的MATLAB程序如下:
n=[0:
1:
9];
x=cos(0.82*pi*n)+2*sin(0.43*pi*n);
subplot(2,1,1);
stem(n,x,'.');
title('x(n),0<=n<=9');
xlabel('n');
ylabel('x(n)');
axis([0,10,-2.5,2.5]);
Xk=fft(x);
magXk=abs(Xk(1:
1:
6));
k1=0:
1:
5;
w1=2*pi/10*k1;
subplot(2,1,2);
stem(w1/pi,magXk,'.');
title('SamplesofDTFTMagnitude');
xlabel('frequencyinpiunits');
ylabel('|X(k)|');
axis([0,1,0,10]);
程序运行结果如下图所示。
由于样本数不足,难以获得足够的信息而得到正确的结论。
即从频谱图无法观测到原复合余弦信号
的w=0.43π和w=0.82π两个频率分量.
②在先前
的前10个样本后补90个零,以期得到一个更高密度的频谱。
补零后DFT的MATLAB程序如下:
%programexa_3_2.m,Spectrumbasedonx(n),0<=n<=9+90zeros
n=[0:
1:
9];
x=cos(0.82*pi*n)+2*sin(0.43*pi*n);
n1=[0:
1:
99];
x1=[xzeros(1,90)];
subplot(2,1,1);
stem(n1,x1,'.');
title('x(n),0<=n<=9+90zeros');
xlabel('n');
ylabel('x(n)');
axis([0,100,-2.5,2.5]);
Xk=fft(x1);
magXk=abs(Xk(1:
1:
51));
k1=0:
1:
50;
w1=2*pi/100*k1;
subplot(2,1,2);
stem(w1/pi,magXk,'.');
title('SamplesofDTFTMagnitude');
xlabel('frequencyinpiunits');
ylabel('|X(k)|');
axis([0,1,0,10]);
程序运行结果如下图所示。
结果表明,序列在w=0.4π处存在一个主频,而原序列并未提供这一信息(原序列仅含w=0.43π和w=0.82π两个频率分量)。
补零运算只是获得一个更高密度的频谱,改善