MATLAB课程设计

2026/4/29 15:08:48

武汉理工大学《MATLAB应用》课程设计说明书

4 IIR带通滤波器程序及波形4.1 参考程序

Ts=0.1;Fs=1/Ts;Rp=2;Rs=30; Wp1=0.4*pi;Wp2=0.6*pi; Ws1=0.2*pi;Ws2=0.8*pi;

17

武汉理工大学《MATLAB应用》课程设计说明书

%频率的预畸变 Wp1=(2/Ts)*tan(wp1/2); Wp2=(2/Ts)*tan(wp2/2);

Wp=[Wp1,Wp2]; %模拟滤波器的通带截止频率 Ws1=(2/Ts)*tan(ws1/2); Ws2=(2/Ts)*tan(ws2/2);

Ws=[Ws1,Ws2]; %模拟滤波器的带宽 BW=Wp2-Wp1;

Omegaw0=sqrt(Ws1*Ws2); %模拟滤波器的中心频率 % Omegaw0=sqrt(Wp1*Wp2);

%求模拟低通滤波器的阶数与边缘频率 [N,OmegaC]=cheb2ord(Wp,Ws,Rp,Rs,'s'); %[N,OmegaC]=cheb1ord(Wp,Ws,Rp,Rs,'s') %求切比雪夫模拟低通滤波器的零、极点与增益 [z0,p0,k0]=cheb2ap(N,Rs); %[z0,p0,k0]=cheb1ap(N,Rp); %设计归一化的模拟原型带通滤波器 %求原型滤波器的分子系数

AnalogB=k0*real(poly(z0)); %求原型滤波器的分母系数

AnalogA=real(poly(p0)); %模拟低通到模拟带通的分子、分母系数的变换

[BandB,BandA]=lp2bp(AnalogB,AnalogA,Omegaw0,BW);

%双线性变换:模拟带通与数字带通的分子分母系数的变换 [DigitalB,DigitalA] = bilinear(BandB,BandA,Fs); %变为二阶节级联结构

[sos,G] = tf2sos(DigitalB,DigitalA);

%求数字带通滤波器的幅频、相频特性、及其群延迟 %求数字带通滤波器的幅频特性

18

武汉理工大学《MATLAB应用》课程设计说明书

[Hz,Wz]=freqz(DigitalB,DigitalA,1024,'whole'); %将数字带通滤波器的幅频特性转化为分贝表示 dbHz=20*log10((abs(Hz)+eps)/max(abs(Hz))); %求数字带通滤波器的相频特性 %求数字带通滤波器的群延迟特性 grd = grpdelay(DigitalB,DigitalA,Wz); %作图

subplot(2,3,1);plot(Wz/pi,abs(Hz));title('幅频响应'); xlabel(''), ylabel('幅度:|Hz|');axis([0,1,0,1.1]);

set(gca,'XTickMode','manual','XTick',[0,ws1/pi,wp1/pi,wp2/pi,ws2/pi,1]); grid;

subplot(2,3,4);plot(Wz/pi,dbHz);title('模值(dB)');

xlabel('频率(单位:\\pi)');ylabel('分贝(dB)'); axis([0,1,-40,5]);

set(gca,'XTickMode','manual','XTick',[0,ws1/pi,wp1/pi,wp2/pi,ws2/pi,1]); set(gca,'YTickmode','manual','YTick',[-50,-30,-2,0]);

set(gca,'YTickLabelMode','manual','YTickLabels',['50';'30';' 2';' 0']); grid;

subplot(2,3,2);plot(Wz/pi,angle(Hz)/pi);title('相频响应'); xlabel('');ylabel('单位:\\pi ');axis([0,1,-1,1]);

set(gca,'XTickMode','manual','XTick',[0,ws1/pi,wp1/pi,wp2/pi,ws2/pi,1]); grid;

subplot(2,3,5);

ylabel('单位:\\dB');xlabel('单位:\\pi ');

zplane(DigitalB,DigitalA);axis([-1.1,1.1,-1.1,1.1]); subplot(2,3,3); plot(Wz/pi,grd); title('群延迟')

xlabel('频率(单位:\\pi)'); ylabel('样本'); axis([0,1,0,8])

set(gca,'XTickMode','manual','XTick',[0,ws1/pi,wp1/pi,wp2/pi,ws2/pi,1]); %画高刻度线

19

武汉理工大学《MATLAB应用》课程设计说明书

set(gca,'YTickmode','manual','YTick',[0:0.5:10]); grid;

set(gcf,'color','w')

幅频响应1单位:? 幅度:|Hz|相频响应10.50-0.5-100.20.40.60.81样本群延迟87.576.565.554.543.532.521.510.500.5000.20.40.60.81模值(dB)00.20.40.60.81频率(单位:?)Imaginary Part 0 2分贝(dB)10-1-10Real Part13000.20.40.60.81频率(单位:?)

图4-1

以上是根据切比雪夫II型滤波器设计的带通滤波器,如果以切比雪夫I型滤波器设计,则只需改变几个参数则可,其程序如下所示(只附改变的参数与程序)。

%模拟滤波器的带宽 BW=Wp2-Wp1;

%模拟滤波器的中心频率 Omegaw0=sqrt(Wp1*Wp2);

%求切比雪夫I型模拟低通滤波器的阶数与边缘频率 [N,OmegaC]=cheb1ord(Wp,Ws,Rp,Rs,'s');

%求切比雪夫I型模拟低通滤波器的零、极点与增益

20


MATLAB课程设计.doc 将本文的Word文档下载到电脑
搜索更多关于: MATLAB课程设计 的文档
相关推荐
相关阅读
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 10

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219