实验五IIR数字滤波器设计及软件实现 下载本文

内容发布更新时间 : 2024/11/20 20:44:15星期一 下面是文章的全部内容请认真阅读。

实用标准文档

三、实验结论:由上面所绘图形可知,利用数字滤波器完全可以将时域混叠而频域未混叠的波形分开,达到滤波目的。

四、思考题 (1)请阅读信号产生函数mstg,确定三路调幅信号的载波频率和调制信号频率。 答:第一路调幅信号的调制信号频率为100HZ,载波频率为1000HZ;第二路调幅信号的调制信号频率为50HZ,载波频率为500HZ;第三路调幅信号的调整信号频率为25HZ,载波频率为250HZ。 (2)信号产生函数mstg中采样点数N=1600,对st进行N点FFT可以得到6根理想谱线。如果取N=1800,可否得到6根理想谱线?为什么?N=2000呢?请改变函数mstg中采样点数N的值,观察频谱图验证您的判断是否正确? 答:

因为信号st是周期序列,谱分析时要求观察时间为整数倍周期。分析可知,st的每个频率成分都是25Hz的整数倍。采样频率Fs=10kHz=25×400Hz,即在25Hz的正弦波的1个周期中采样400点。所以,当N为400的整数倍时一定为st的整数个周期。因此,采样点数N=800和N=2000时,对st进行N点FFT可以得到6根理想谱线。如果取N=1000,不是400的整数倍,不能得到6根理想谱线。

文案大全

实用标准文档

(3)修改信号产生函数mstg,给每一路调幅信号加入载波成分,产生AM信号,观察AM信号与抑制载波调幅信号的时域波形及其频谱的差别。

文案大全

实用标准文档

可以观察到AM的频谱中含有离散的载波分量,且占用很大比重。

五、实验程序:

1、信号产生函数mstg程序:

function st=mstg N=800;

FS=10000;T=1/FS;TP=N*T;

t=0:T:(N-1)*T;K=0:N-1;f=K/TP;

fc1=FS/10;%第一路调幅信号的载波频率fc1=1000HZ

fm1=fc1/10;%第一路调幅信号的调制信号频率为fm1=100hz. fc2=FS/20;%第二路调幅信号的载波频率fc2=500HZ

fm2=fc2/10;%第二路调幅信号的调制信号频率为fm2=50hz. fc3=FS/40;%第三路调幅信号的载波频率fc3=250HZ

fm3=fc3/10;%第三路调幅信号的调制信号频率为fm3=25hz. xt1=cos(2*pi*fm1*t).*cos(2*pi*fc1*t); xt2=cos(2*pi*fm2*t).*cos(2*pi*fc2*t); xt3=cos(2*pi*fm3*t).*cos(2*pi*fc3*t); st=xt1+xt2+xt3;

fxt=fft(st,N);%计算信号st的频谱.

文案大全

实用标准文档

%绘图

subplot(211)

plot(t,st);grid on;xlabel('t/s');ylabel('s(t)');

axis([0,TP/4,min(st),max(st)]);title('(a) s(t)的波形') subplot(212)

stem(f,abs(fxt)/max(abs(fxt)),'.');grid on;title('(b) s(t)的频谱')

axis([0,FS/5,0,1.2]);xlabel('f/HZ');ylabel('幅度');

2、高通滤波器的程序

%高通滤波器设计 fp=800; fs=700; Fs=10000;

wp=2*fp/Fs;ws=2*fs/Fs; rp=1;rs=40; N=800;st=mstg; T=1/Fs;Tp=N*T;

t=0:T:(N-1)*T;k=0:N-1;f=k/Tp;

[N1,wpo]=ellipord(wp,ws,rp,rs);%确定最小阶数和截止频率 [B,A]=ellip(N1,rp,rs,wpo,'high');%求传递函数的分子分母系数 y=filter(B,A,st);%滤波 fyt=fft(y,N);%求其频谱

subplot(2,1,1),plot(t,y),grid on;xlabel('t/s'),ylabel('y(t)'),

axis([0,Tp/4,min(y),max(y)]),title('(a) y(t)的波形') subplot(2,1,2);

stem(f,abs(fyt)/max(abs(fyt)),'.');grid on;title('(b) y(t)的频谱')

axis([0,Fs/5,0,1.2]);

xlabel('f/Hz');ylabel('幅度')

3、带通滤波器 %带通滤波器

fpl=400;fpu=600;fsl=350;fsu=650;Fs=10000;

wp=[2*fpl/Fs,2*fpu/Fs];ws=[2*fsl/Fs,2*fsu/Fs]; rp=1;rs=40; N=800;st=mstg; T=1/Fs;Tp=N*T;

t=0:T:(N-1)*T;k=0:N-1;f=k/Tp; [N1,wpo]=ellipord(wp,ws,rp,rs); [B,A]=ellip(N1,rp,rs,wpo); y=filter(B,A,st);

文案大全

实用标准文档

fyt=fft(y,N);

subplot(2,1,1),plot(t,y),grid on;xlabel('t/s'),ylabel('y(t)'), axis([0,Tp/4,min(y),max(y)]),title('(a) y(t)的波形') subplot(2,1,2);

stem(f,abs(fyt)/max(abs(fyt)),'.');grid;title('(b) y(t)的频谱') axis([0,Fs/5,0,1.2]);

xlabel('f/Hz');ylabel('幅度'); 4、低通滤波器设计

%低通滤波器 fp=350; fs=400; Fs=10000;

wp=2*fp/Fs;ws=2*fs/Fs; rp=1;rs=40; N=800;st=mstg; T=1/Fs;Tp=N*T;

t=0:T:(N-1)*T;k=0:N-1;f=k/Tp; [N1,wpo]=ellipord(wp,ws,rp,rs); [B,A]=ellip(N1,rp,rs,wpo); y=filter(B,A,st); fyt=fft(y,N);

subplot(2,1,1),plot(t,y),grid,xlabel('t/s'),ylabel('y(t)'), axis([0,Tp/4,min(y),max(y)]),title('(a) y(t)的波形') subplot(2,1,2);

stem(f,abs(fyt)/max(abs(fyt)),'.');grid;title('(b) y(t)的频谱') axis([0,Fs/5,0,1.2]);

xlabel('f/Hz');ylabel('幅度')

5、带阻滤波器的设计

%带阻滤波器的设计 fpl=350; fpu=700; fsl=400; fsu=600; Fs=10000;

wp=[2*fpl/Fs,2*fpu/Fs];ws=[2*fsl/Fs,2*fsu/Fs]; rp=1;rs=40; N=800;st=mstg; T=1/Fs;Tp=N*T;

t=0:T:(N-1)*T;k=0:N-1;f=k/Tp; [N1,wpo]=ellipord(wp,ws,rp,rs); [B,A]=ellip(N1,rp,rs,wpo,'stop');

文案大全