用matlab实现ChebyshevⅡ高通滤波器的仿真
- 格式:doc
- 大小:27.50 KB
- 文档页数:1
课 程 设 计20011 年 7月 1日 设计题目 学号专业班级 指导教师 学生姓名 张腾达 吴晔 陈丽娟 杨蕾通信电子电路课程设计 ——数字滤波器的设计 张静 光信息08-3班实验组员 张静 胡磊 艾永春 赵亚龙王宏道 胡进娟 马丽婷设计要求:某系统接收端接收到的信号为y=cos(2π*60t)+1.2cos(2π*140t)+2sin(2π*220t)+1.5sin(2π*300t)(A) 发现此信号夹杂了一个正弦噪声noise=1.5sin(2π*300t),请设计一个低通滤波器将此噪声滤除,从而恢复原信号。
(B) 发现此信号夹杂了一个正弦噪声noise= cos(2π*60t)+1.5sin(2π*300t) ,请设计一个带通滤波器将此噪声滤除,从而恢复原信号。
(C) 发现此信号夹杂了一个正弦噪声noise=1.2cos(2π*140t)+2sin(2π*220t),请设计一个带阻滤波器将此噪声滤除,从而恢复原信号。
(D) 发现此信号夹杂了一个正弦噪声noise= cos(2π*60t),请设计一个高通滤波器将此噪声滤除,从而恢复原信号。
要求:(1)请写出具体的MATLAB程序,并详细解释每条程序(2)画出滤波前后信号的频谱图(3)画出所设计滤波器的幅频和相频特性图,并写出具体参数参数计算:根据题目要求,开始选取Wp=2*60π,Ws=2*140π。
后来经老师指点,为了将阻带里的信号更好的滤除,通带里的信号更好的保持,达到较好的滤波效果,通带截止频率选取:Wp=2*70π>2*60π,阻带截止频率选取:Ws=2*120π<2*140π,输入信号为:y=cos(2π*60t)+1.2cos(2π*140t)+2sin(2π*220t)+1.5sin(2π*300t) 可知信号最高频率为2*300*π/(2π)=300Hz。
由奈奎斯特抽样定理得,fs>=2*300=600(Hz),这里为了得到更好的抽样效果,同时简化计算,选取fs=1000Hz。
本科生毕业论文(设计)题目:基于matlab模拟滤波器的设计与仿真系部电子信息工程学院学科门类工科专业电子信息工程学号xxxxxxxxxxxxxxxxxx姓名XXX指导教师XXX2012年 5 月18 日基于matlab的模拟滤波器设计与仿真摘要几乎在所有的工程技术领域中都会涉及到信号处理问题,而滤波器信号处理的重要组成部分。
本论文首先介绍了滤波器的滤波原理以及模拟滤波器的设计方法,然后系统地介绍了模拟滤波器(包括巴特沃斯滤波器和切比雪夫滤波器)的设计原理和方法,并在此基础上论述了低通、高通、带通、带阻模拟滤波器的设计。
最后,采用MATLAB对所述滤波器进行建模仿真。
仿真结果表明用matlab设计的滤波器符合技术要求,且直观简便,有利于设计的优化。
关键字:模拟滤波器频率转换MATLAB装订线ABSTRACTIn almost all areas of engineering and technology, signal processing will be involved andsignal processing is an important component of filter signal processing. This paper will firstintroduce the principle of filter and the design method of analog filters. Then the paper willpresent the design principles and methods of analog filters (including the Butterworth filter andChebyshev filter) and on this basis, the analog filters (including low-pass, high-pass, band-pass,and band-stop) design will be discussed. Last is the use of virtual realization of analog filtersMATLAB. It can be seen that based on the simulation result, the filter designed by MATLAB iscoincident in technical requirements and handy in anchauung. What’s more, it is easy to adjustthe performance of filters.Key words:Filtering Analog filters MATLAB装订线第1章绪论 (1)1.1课题研究背景及意义 (1)1.2国内外研究现状及趋势 (1)1.3本文的主要工作安排 (2)第2章基本理论知识 (3)2.1滤波器的工作原理 (3)2.1.1模拟滤波器的工作原理 (3)2.1.2数字滤波器的工作原理 (4)2.2滤波器的基本特性 (5)2.2.1模拟滤波器与数字滤波器的基本特性 (5)2.2.2无限冲激响应IIR和有限冲激响应FIR滤波器 (7)2.3滤波器的主要性能指标 (8)第3章模拟滤波器的设计 (9)3.1模拟滤波器的分类 (9)3.2 模拟滤波器的设计方法 (9)3.3模拟原型滤波器及最小阶数选择 (11)3.3.1巴特沃斯滤波器及最小阶数选择 (11)3.3.2切比雪夫滤波器及最小阶数选择 (14)3.3.3椭圆滤波器及最小阶数的选择 (20)3.3.4贝塞尔滤波器 (21)第4章 MATLAB仿真 (22)4.1MATLAB简介 (22)4.2对低通模拟滤波器的仿真 (23)4.3 模拟高通滤波器的仿真 (25)4.4 模拟带通滤波器的仿真 (26)4.5 对带阻模拟滤波器的仿真 (28)第5章频率转换 (30)5.1低通至高通的转换 (30)5.2低通至带通的变换 (31)5.3低通至带阻的变换 (34)第6章总结与展望 (36)参考文献 (37)第1章绪论1.1课题研究背景及意义凡是有能力进行信号处理的装置都可以称为滤波器。
课 程 设 计20011 年 7月 1日 设计题目 学 号专业班级 指导教师 学生姓名 张腾达 吴晔 陈丽娟 杨蕾通信电子电路课程设计 ——数字滤波器的设计 张静 20080302 光信息08-3班实验组员 张静 胡磊 艾永春 赵亚龙王宏道 胡进娟 马丽婷设计要求:某系统接收端接收到的信号为y=cos(2π*60t)+1.2cos(2π*140t)+2sin(2π*220t)+1.5sin(2π*300t)(A) 发现此信号夹杂了一个正弦噪声noise=1.5sin(2π*300t),请设计一个低通滤波器将此噪声滤除,从而恢复原信号。
(B) 发现此信号夹杂了一个正弦噪声noise= cos(2π*60t)+1.5sin(2π*300t) ,请设计一个带通滤波器将此噪声滤除,从而恢复原信号。
(C) 发现此信号夹杂了一个正弦噪声noise=1.2cos(2π*140t)+2sin(2π*220t),请设计一个带阻滤波器将此噪声滤除,从而恢复原信号。
(D) 发现此信号夹杂了一个正弦噪声noise= cos(2π*60t),请设计一个高通滤波器将此噪声滤除,从而恢复原信号。
要求:(1)请写出具体的MATLAB程序,并详细解释每条程序(2)画出滤波前后信号的频谱图(3)画出所设计滤波器的幅频和相频特性图,并写出具体参数参数计算:根据题目要求,开始选取Wp=2*60π,Ws=2*140π。
后来经老师指点,为了将阻带里的信号更好的滤除,通带里的信号更好的保持,达到较好的滤波效果,通带截止频率选取:Wp=2*70π>2*60π,阻带截止频率选取:Ws=2*120π<2*140π,输入信号为:y=cos(2π*60t)+1.2cos(2π*140t)+2sin(2π*220t)+1.5sin(2π*300t) 可知信号最高频率为2*300*π/(2π)=300Hz。
由奈奎斯特抽样定理得,fs>=2*300=600(Hz),这里为了得到更好的抽样效果,同时简化计算,选取fs=1000Hz。
滤波器设计示例1、Matlab 设计IIR 基本示例 (1)(1)直接设计数字滤波器 (1)(2)脉冲相应不变法 (2)(3)双线性变换 (2)(4)双线形变换法设计chebyshev 高通滤波器 (3)(5)使用MatLab6 下的Filter Designed Tool (4)2、Matlab 设计IIR 高级示例 (4)(1)双线性变换实现ButterWorth 低通 (4)(2)双线性变换法实现Chebyshev 低通(I 型) (5)(3)低通变换为高通 (6)(2)低通变换为带通 (7)(3)低通变换为带通(双线性变换) (8)3、Matlab 窗函数设计FIR 滤波器基本示例 (9)(1)低通滤波器实现 (9)(2)带通滤波器实现 (9)1、Matlab设计IIR基本示例[返回](1)直接设计数字滤波器[返回]低通,采样频率为1Hz,通带临界频率f p =0.2Hz,通带内衰减小于1dB(αp=1);阻带临界频率f s=0.3Hz,阻带内衰减大于25dB(αs=25)。
设计一个数字滤波器满足以上参数。
% Matlab 使用归一化的频率参数(临界频率除以采样频率的1/2)。
%这样临界频率参数的取值范围在0 和1 之间,1 代表Fs/2(用角频率表示的时候对应π)FS=1[n,Wn]=buttord(0.2/(FS/2),0.3/( FS /2),1,25);[b,a]=butter(n,Wn);freqz(b,a,512, FS);(2)脉冲相应不变法[返回]低通,采样频率为1Hz,通带临界频率f p =0.2Hz,通带内衰减小于1dB(αp=1);阻带临界频率f s=0.3Hz,阻带内衰减大于25dB(αs=25)。
设计一个数字滤波器满足以上参数。
FS=1[n,Wn]=buttord(0.2*2*pi,0.3*2*pi,1,25,'s'); %临界频率采用角频率表示[b,a]=butter(n,Wn,'s');%freqs(b,a) %设计模拟的[bz,az]=impinvar(b,a,FS); %映射为数字的freqz(bz,az,512,FS)(3)双线性变换[返回]低通,采样频率为1Hz,通带临界频率f p =0.2Hz,通带内衰减小于1dB(αp=1);阻带临界频率f s=0.3Hz,阻带内衰减大于25dB(αs=25)。
用MATLAB 设计滤波器1 IIR 滤波器的设计● freqz功能:数字滤波器的频率响应。
格式:[h ,w]=freqz(b ,a ,n)[h ,f]=freqz(b ,a ,n ,Fs)[h ,w]=freqz(b ,a ,n ,'whole')[h ,f]=freqz(b ,a ,n ,'whole',Fs)h=freqz(b ,a ,w)h=freqz(b ,a ,f ,Fs)freqz(b ,a)说明:freqz 用于计算由矢量"和b 构成的数字滤波器H(z)=A(z)B(z)= n-1--n-1 l)z a(n ....a(2)z l l)z b(n .... b(2)z b(l)++++++++ 的复频响应H(j ω)。
[h ,w]=freqz(b ,a ,n)可得到数字滤波器的n 点的幅频响应,这n 个点均匀地分布在 上半单位圆(即0~π),并将这n 点频率记录在w 中,相应的频率响应记录在h 中。
至于n 值的选择没有太多的限制,只要n>0的整数,但最好能选取2的幂次方,这样就可采用 FFT 算法进行快速计算。
如果缺省,则n=512。
[h ,f]二freqz(b ,a ,n ,Fs)允许指定采样终止频率Fs(以Hz 为单位),也即在0~Fs/2 频率范围内选取n 个频率点(记录在f 中),并计算相应的频率响应h 。
[h ,w]=freqz(b ,a ,n ,'whole')表示在0~2π之间均匀选取n 个点计算频率响应。
[h ,f]=freqz(b ,a ,n ,'whole',Fs)则在O~Fs 之间均匀选取n 个点计算频率响应。
h=freqz(b ,a ,w)计算在矢量w 中指定的频率处的频率响应,但必须注意,指定的频 率必须介于0和2π之间。
h=freqz(b ,a ,f ,Fs)计算在矢量f 中指定的频率处的频率响应,但指定频率必须介于 0和Fs 之间。
实践二: 理想高通滤波器、Butterworth高通滤波器、高斯高通滤波器2.1.1 理想高通滤波器实践代码:I=imread('girl.bmp');subplot(221),imshow(I);title('原图像');s=fftshift(fft2(I));subplot(223),imshow(abs(s),[]);title('图像傅里叶变换所得频谱');subplot(224),imshow(log(abs(s)),[]);title('图像傅里叶变换取对数所得频谱');[a,b]=size(s);a0=round(a/2);b0=round(b/2);d=10;p=0.2;q=0.5;for i=1:afor j=1:bdistance=sqrt((i-a0)^2+(j-b0)^2);if distance<=d h=0;else h=1;end;s(i,j)=(p+q*h)*s(i,j);end;end;s=uint8(real(ifft2(ifftshift(s))));subplot(222),imshow(s);title('高通滤波所得图像');I=imread('girl.bmp');[f1,f2]=freqspace(size(I),'meshgrid');Hd=ones(size(I));r=sqrt(f1.^2+f2.^2);Hd(r<0.2)=0;figuresurf(Hd,'Facecolor','interp','Edgecolor','none','Facelighting','phong'); % 画三维曲面〔色〕图2.1.2 理想高通滤波器实践结果截图:2. Butterworth高通滤波器实践代码:I1=imread('flower.bmp');subplot(121),imshow(I1);title('原始图像');f=double(I1);g=fft2(f);g=fftshift(g);[N1,N2]=size(g);n=2;d0=5;n1=fix(N1/2);n2=fix(N2/2);for i=1:N1for j=1:N2d=sqrt((i-n1)^2+(j-n2)^2);if d==0h=0;elseh=1/(1+(d0/d)^(2*n));endresult(i,j)=h*g(i,j);endendresult=ifftshift(result);X2=ifft2(result);X3=uint8(real(X2));subplot(122),imshow(X3) ;title('Butterworth高通滤波');I1=imread('flower.bmp');[f1,f2]=freqspace(size(I1),'meshgrid');D=0.3;r=f1.^2+f2.^2;n=4;for i=1:size(I1,1)for j=1:size(I1,2)t=(D*D)/r(i,j);Hd(i,j)=1/(t^n+1);endendfiguresurf(Hd,'Facecolor','interp','Edgecolor','none','Facelighting','phong'); % 画三维曲面〔色〕图2. Butterworth高通滤波器实践结果截图:2. 高斯高通滤波器实践代码:clear allIA=imread('girl.bmp');[f1,f2]=freqspace(size(IA),'meshgrid');%D=100/size(IA,1);D=0.3;r=f1.^2+f2.^2;for i=1:size(IA,1)for j=1:size(IA,2)t=r(i,j)/(D*D);Hd(i,j)=1-exp(-t);endendY=fft2(double(IA));Y=fftshift(Y);Ya=Y.*Hd;Ya=ifftshift(Ya);Ia=real(ifft2(Ya));figuresubplot(2,2,1),imshow(uint8(IA));title('原始图像');subplot(2,2,2),imshow(uint8(Ia));title('高斯高通滤波');figuresurf(Hd,'Facecolor','interp','Edgecolor','none','Facelighting','phong');2. 高斯高通滤波器实践结果截图:。
滤波器设计MATLAB滤波器的设计在信号处理中具有重要的作用,可以用于去除噪声、增强信号等。
MATLAB是一种强大的工具,可以用于滤波器设计和分析。
本文将介绍如何使用MATLAB进行滤波器设计,并通过示例展示具体的过程。
在MATLAB中,可以使用信号处理工具箱提供的函数来设计滤波器。
常用的函数有:- `fir1`:设计FIR滤波器。
- `butter`:设计巴特沃斯滤波器。
- `cheby1`:设计切比雪夫I型滤波器。
- `cheby2`:设计切比雪夫II型滤波器。
- `ellip`:设计椭圆滤波器。
这些函数的输入参数包括滤波器类型、阶数、截止频率等。
根据具体的需求选择不同的函数来设计滤波器。
下面以设计一个低通滤波器为例,演示如何使用MATLAB进行滤波器设计。
首先,创建一个信号作为输入。
可以使用`sin`函数生成一个正弦信号作为示例。
代码如下:```matlabfs = 1000; % 采样率t = 0:1/fs:1; % 时间向量f=50;%信号频率x = sin(2*pi*f*t); % 输入信号```接下来,使用`fir1`函数设计一个低通滤波器。
该函数的输入参数`n`表示滤波器的阶数,`Wn`表示归一化的截止频率。
代码如下:```matlabn=50;%滤波器阶数Wn=0.2;%截止频率b = fir1(n, Wn);```然后,使用`filter`函数对输入信号进行滤波。
该函数的输入参数是滤波器的系数和输入信号。
代码如下:```matlaby = filter(b, 1, x);```最后,绘制原始信号和滤波后的信号的时域和频域波形。
代码如下:```matlab%时域波形subplot(2, 1, 1)plot(t, x)hold onplot(t, y)legend('原始信号', '滤波后信号') xlabel('时间 (s)')ylabel('幅值')title('时域波形')%频域波形subplot(2, 1, 2)f = linspace(-fs/2, fs/2, length(x)); X = abs(fftshift(fft(x)));Y = abs(fftshift(fft(y)));plot(f, X)hold onplot(f, Y, 'r')legend('原始信号', '滤波后信号') xlabel('频率 (Hz)')ylabel('幅值')title('频域波形')```运行以上代码,可以得到原始信号和滤波后信号的时域和频域波形图。
《数字信号处理课程设计报告》题目:切比雪夫Ⅱ型IIR高通滤波器学院:专业:班级:姓名:指导教师:2012年 6月24日目录引言设计目的 (3)1滤波器设计流程图 (4)2手工完成本实验数字滤波器的初始值设计 (5)2.1确定数字高通滤波器的各项性能指标 (5)2.2由数字高通滤波器的指标转化为模拟高通滤波器的指标 (5)2.3由模拟高通滤波器的指标转化为模拟低通滤波器的指标 (5)2.4手工计算模拟滤波器相关指标 (6)2.5手工计算切比雪夫模拟低通滤波器相关参数 (6)2.6用MATLAB算法设计归一化切比雪夫II型模拟低通滤波器 (7)2.7手工计算把模拟低通滤波器转换成相应的模拟高通滤波器 (8)2.8用MATLAB算法将模拟低通滤波器转换成的模拟高通滤波器 8 2.9把模拟高通滤波器转换成的数字高通滤波器 (9)2.10用MATLAB算法将模拟滤波器转换成相应的数字滤波器 (9)3.在MATLAB基础上分析滤波器结构对其性能指标的影响 (9)3.1直接型 (9)3.2级联型 (11)4在MATLAB基础上分析滤波器参数的字长对其性能指标的影响 (12)4.1直接型 (12)4.2级联型 (14)5.在MATLAB基础上分析滤波器阶数对其性能指标的影响 (16)6 实验心得 (18)7 参考文献 (18)引言随着社会的发展,各种频率的波都在被不断的开发以及利用,这就导致了不同频率的波相互之间的干扰越来越严重,因此滤波器的市场是庞大的。
所以各种不同功能滤波器的设计就越来越重要,在此要求上实现了用各种不同方式来实现滤波器的设计。
本设计通过MATLAB 软件对IIR 型滤波器进行理论上的实现,其中用切比雪夫II 型方式来实现模拟低通滤波器的实现。
设计目的用切比雪夫II 型的设计方法设计一个IIR 数字高通滤波器(模拟频带变换),要求π8.0=phω,π44.0=s ω。
通带最大衰减为dB Ap 3=,阻带最小衰减为dB As 15=1滤波器设计流程图图1 滤波器设计流程方框图2手工完成本实验数字滤波器的初始值设计2.1确定数字高通滤波器的各项性能指标π8.0=ph ω,π44.0=s ω。
matlab 切比雪夫带通滤波器实现切比雪夫带通滤波器是一种数字滤波器,用于去除信号中的噪声和杂波。
该滤波器可以滤波信号的特定频率段内的噪声,并在此频率段外保留信号的有效信息。
本文将介绍matlab中如何实现切比雪夫带通滤波器。
切比雪夫带通滤波器是一种设计采用无限脉冲响应(IIR)数字滤波器的方法。
它是根据Chebyshev多项式来设计滤波器的,其设计目标是让通带中的波形误差最小化,同时让阻带的响应最大化。
切比雪夫带通滤波器的特征是在通带中有强烈的波纹条件,而在阻带中则有一定的振荡。
二、matlab实现在matlab中,实现切比雪夫带通滤波器需要用到cheby1函数。
cheby1函数的语法如下:[b,a] = cheby1(n,Rp,Wn)其中n是滤波器的阶数,Rp是通带最大衰减量,Wn是通带截止频率。
该函数的输出是滤波器的分子和分母系数。
以下是一个实现切比雪夫带通滤波器的例子:% 生成信号t = 0:0.001:1; % 采样时间f1 = 10; % 信号频率f2 = 50; % 基波频率x = sin(2*pi*f1*t) + 0.5*sin(2*pi*f2*t);% 设计滤波器fs = 1000; % 采样频率fcuts = [20,30]; % 通带截止频率Rp = 1; % 通带最大衰减量[n, Wn] = cheb1ord(fcuts/(fs/2), [25,30]/(fs/2), Rp); % 计算阶数和截止频率[b, a] = cheby1(n, Rp, Wn); % 设计滤波器% 滤波信号y = filter(b, a, x);% 绘制滤波器figurefreqz(b, a)% 绘制原始信号和滤波后的信号figureplot(t, x)hold onplot(t, y)legend('原始信号', '滤波后信号')在上面的例子中,我们首先生成了一个带有两个频率分量的信号,然后使用cheby1函数设计了一个通带在20Hz到30Hz之间的切比雪夫带通滤波器。
MATLAB实现数字巴特沃斯高通IIR滤波器武汉理工大学《MATLAB课程设计》报告《MATLAB课程设计》报告题目: 数字巴特沃斯高通IIR滤波器专业班级: 信息sy0901 学生姓名: 崔斌指导教师: 魏洪涛武汉理工大学《MATLAB课程设计》报告MATLAB课程设计任务书学生姓名: 崔斌专业班级: 信息sy0901指导教师: 魏洪涛工作单位: 信息工程学院 1. 题目: 设计一个数字巴特沃斯高通IIR滤波器设计内容和要求课题要求设计一个IIR数字滤波器,高通,采用双线性变换法,用巴特沃斯实现,用matlab软件对其进行仿真与调试。
本设计将先说明用双线性法设计IIR数字滤波器的原理,然后写出基于matlab的软件设计流程。
在对设计进行调试,分析实验数据。
初始条件1)MATLAB软件2)数字信号处理基础知识指导教师签名: 2010年 1月13 日武汉理工大学《MATLAB课程设计》报告目录摘要 ..................................................................... (1)Abstract ............................................................... ..... 2 1 设计项目要求与说明 ........................................................ 3 2 系统设计 (3)2.1 设计思路 (3)2.2 设计方法对比 ........................................................ 4 2.3典型模拟滤波器比较 (5)2.4 设计步骤 ............................................................ 5 3 仿真程序的设计与调试 ......................................................63.1 数字域指标变换成模拟域指标 (6)3.2 数字域频率进行预畸变 (7)3.3 模拟滤波器的设计 (7)3.4 模拟滤波器变成数字滤波器 (9)3.5 理论计算数字滤波器的仿真 ........................................... 12 4.程序调试中出现的问题 ..................................................... 13 5. 总结与体会 .............................................................. 13 参考文献 ................................................................... 15 附录一总程序如下 ......................................................... 16 附录二设计数字滤波器函数总结 (18)武汉理工大学《数字信号处理》报告摘要此报告重点介绍了用双线性不变法设计IIR数字滤波器的基本流程,比较了各种设计方法的优缺点,总结了模拟滤波器的性能特征。
Matlab产生高通、带通、带阻滤波器方法高通、带通、带阻滤波器在matlab中不能直接产生,它们的生成都是有低通滤波器转换而来的,所以要生成这些滤波器就必须先生成低通滤波器,然后通过转换函数做相应的转换就可。
下面介绍这些转换函数。
1 lp2hp功能:模拟低通滤波器到模拟高通滤波器的变换。
格式:[bt,at] = lp2hp(b,a,Wo)[At,Bt,Ct,Dt] = lp2hp(A,B,C,D,Wo)说明:lp2hp函数将截止频率为1(弧度/秒)的模拟低通滤波器变换成截止频率为Wo的模拟高通滤波器。
函数的第一种形式是有传递函数描述的滤波器相应参数,第二钟为状态空间描述的滤波器相应参数,下同。
2 lp2bp功能:模拟低通滤波器到模拟带通滤波器的变换。
格式:[bt,at] = lp2bp(b,a,Wo,Bw)[At,Bt,Ct,Dt] = lp2bp(A,B,C,D,Wo,Bw)说明:lp2bp函数将截止频率为1(弧度/秒)的模拟低通滤波器变换成带宽为Bw、中心频率为Wo的模拟带通滤波器。
3 lp2bs功能:模拟低通滤波器到模拟带阻滤波器的变换。
格式:[bt,at] = lp2bs(b,a,Wo,Bw)[At,Bt,Ct,Dt] = lp2bs(A,B,C,D,Wo,Bw)说明:lp2bs函数将截止频率为1(弧度/秒)的模拟低通滤波器变换成带宽为Bw、中心频率为Wo的模拟带阻滤波器4 lp2lp功能:模拟低通滤波器到模拟低通滤波器的变换。
格式:[bt,at] = lp2lp(b,a,Wo)[At,Bt,Ct,Dt] = lp2lp(A,B,C,D,Wo)说明:lp2lp函数将截止频率为1(弧度/秒)的模拟低通滤波器变换成截止频率为为Wo的模拟低通滤波器。
Matlab中模拟低通滤波器的函数1 besselap功能:贝塞尔(Bessel)模拟低通滤波器原型。
格式:[z,p,k] = besselap(n)说明:z、p、k分别为滤波器的零点、极点和增益,n为滤波器的阶次。
matlab滤波器设计-IIR滤波器的设计与仿真1 引言在现代通信系统中,由于信号中经常混有各种复杂成分,所以很多信号的处理和分析都是基于滤波器而进行的。
但是,传统的数字滤波器的设计使用繁琐的公式计算,改变参数后需要重新计算,从而在设计滤波器尤其是高阶滤波器时工作量很大。
利用MATLAB信号处理箱(Signal Processing Toolbox)可以快速有效地实现数字滤波器的设计与仿真。
2 数字滤波器及传统设计方法数字滤波器可以理解为是一个计算程序或算法,将代表输入信号的数字时间序列转化为代表输出信号的数字时间序列,并在转化过程中,使信号按预定的形式变化。
数字滤波器有多种分类,根据数字滤波器冲激响应的时域特征,可将数字滤波器分为两种,即无限长冲激响应(IIR)滤波器和有限长冲激响应(FIR)滤波器。
IIR数字滤波器具有无限宽的冲激响应,与模拟滤波器相匹配,所以IIR滤波器的设计可以采取在模拟滤波器设计的基础上进一步变换的方法。
其设计方法主要有经典设计法、直接设计法和最大平滑滤波器设计法。
FIR数字滤波器的单位脉冲响应是有限长序列。
它的设计问题实质上是确定能满足所要求的转移序列或脉冲响应的常数问题,设计方法主要有窗函数法、频率采样法和等波纹最佳逼近法等。
在对滤波器实际设计时,整个过程的运算量是很大的。
设计阶数较高的IIR滤波器时,计算量更大,设计过程中改变参数或滤波器类型时都要重新计算。
设计完成后对已设计的滤波器的频率响应要进行校核。
要得到幅频、相频响应特性,运算量也是很大的。
平时所要设计的数字滤波器,阶数和类型并不一定是完全给定的,很多时候要根据设计要求和滤波效果不断地调整,以达到设计的最优化。
在这种情况下,滤波器设计就要进行大量复杂的运算,单纯的靠公式计算和编制简单的程序很难在短时间内完成。
利用MATLAB强大的计算功能进行计算机辅助设计,可以快速有效地设计数字滤波器,大大地简化了计算量。
设计一个高通滤波器,并检验它的性能采样率为10kHZ阻带边缘为1.5Khz,衰减为40bB通带边缘为2kHz,波纹为3Db采用切比雪夫2型滤波器Fs=1e4 ; fs=1.5e3; fp=2e3; As=40; Rp=3 ;wp=2*fp/Fs; ws=2*fs/Fs;用MA TLAB工具:设计的滤波器性能>>Fs=1e4;>>fs=1.5e3;>>fp=2e3;>>As=40;>>Rp=3;>>wp=2*fp/Fs;>>ws=2*fs/Fs;>>[N,wn]=cheb2ord(wp,ws,Rp,As);>>[b,a]=cheby2(N,As,wn,'high');>>[db,mag,pha,grd,w]=freqz_m(b,a);>> subplot(2,2,1);plot(w/pi,mag);>> axis([0,1,0,1]);>> setX([0 0.3 0.4 1]);>>setY([0.01 0.7279 1])>> title('Magnitude Response');>> subplot(2,2,2);plot(w/pi,db);>> axis([0 1 -70 0])>> setX([0 0.3 0.4 1])>> setY([-40 -2.7589])>> title('Magnitude Response in dB');输入信号x=cos(0.6*pi*n); 取200个抽样值,为了便于观看,在画图是裁剪掉100个值不直观,直接做频谱图为了说明该滤波器的性能,做一组对比。
换上另一种频率的信号x=cos(0.2*pi*n);由上图可以看到该信号完全被滤去了可以看出在20和180点的信号几乎淹没了。
题目滤波器设计与实现学生姓名学号专业班级设计内容与要求一、设计内容:设计一个模拟高通切比雪夫Ⅰ滤波器,技术指标:通带截止频率2000Hz,通带最大衰减1dB;过渡带700Hz,阻带最小衰减60dB,画出其幅度谱和相位谱。
二、设计要求:1 设计报告一律按照规定的格式,使用A4纸,格式、封面统一给出模版。
2 报告内容(1)设计题目及要求(2)设计原理(包括滤波器工作原理、涉及到的matlab函数的说明) (3)设计内容(设计思路,设计流程、仿真结果)(4)设计总结(收获和体会)(5)参考文献(6)程序清单起止时间2012年12 月3日至2012年12月11 日指导教师签名2012年12月2日系(教研室)主任签名年月日学生签名年月日一、设计题目及要求设计一个模拟高通切比雪夫Ⅰ滤波器,技术指标:通带截止频率2000Hz ,通带最大衰减1dB ;过渡带700Hz ,阻带最小衰减60dB ,画出其幅度谱和相位谱。
二、设计原理 (包括滤波器工作原理、涉及到的matlab 函数的说明)2.1切比雪夫滤波器的内容:2.1.1、切比雪夫滤波器的幅度平方函数:从公式中我们可以发现它需要计算的ε和N,1101.0-=pa ε边带频率p Ω,通带最大衰减p α=0.1dB 、阻带最大衰减s α=50dB 、阻带截止频率s Ω,它们满足:)/cosh()/110cosh(11.0p s a ar ar N s ΩΩ-≥-ε根据公式可以求出最小的切比雪夫I 型滤波器阶数的N 最小值。
2.1.2、切比雪夫滤波器的三个参量: Ωc 通带截止频率,ε表征通带内波纹大小由:22221()()1()a N pA H j C εΩ=Ω=Ω+Ω由通带衰减决定。
2.1.3、滤波器阶数N 的确定:设阻带的起始点频率(阻带截止频率)用Ωs 表示,在Ωs 处的A2(Ωs)为 :令λs=Ωs/Ωp ,由λs>1,有:可以解出:2.1.4、3dB 截止频率Ωc 的确定:令按照(6.2.19)式,有:通常取λc>1,因此: 上式中仅取正号,得到3dB 截止频率计算公式2.2涉及到的MATLAB 函数:121211211()[()]1()11[1]()()111[1]()N s s s s s s p s C ch Nch A ch A N ch ch NA λλελελλελ----==--=⎫⎪⎧Ω=Ω-⎨⎬⎩⎪⎭22211()2()1,1()[()]c c N c c pN c c A C C ch Nch ελλλλε-Ω=Ω==Ω=±=2max2min22max min 2()10lg ()1() 1 ()1A A A A δεΩ=ΩΩ=Ω=+220.110lg(1)101δδεε=+=-2221()1()s sN PA C εΩ=Ω+Ω①[N, wpo]=cheblord(wp, ws, Rp, As, 's')该格式用于计算切比雪夫1滤波器的阶数N 和阻带截止频率wsp 。
【DSP教程】第43章IIR滤波器的Matlab设计第43章 IIR滤波器的Matlab设计本章节讲解IIR滤波器的Matlab设计,主要包括巴特沃斯滤波器,切⽐雪夫I型和II型滤波器以及椭圆滤波器。
43.1 巴特沃斯滤波器的设计43.2 切⽐雪夫滤波器的设计43.3 椭圆滤波器的设计43.4 总结43.1 巴特沃斯滤波器的设计43.1.1 butter函数功能:⽤于设计Butterworth(巴特沃斯)滤波器语法:[b, a] = butter(n, W n);说明:butter函数可以设计低通、带通、⾼通和带阻数字滤波器,其特性可以使通带内的幅度响应最⼤限度地平坦,但会损失截⽌频率处的下降斜度,使幅度响应衰减较慢。
[b,a] = butter(n,W n)可以设计截⽌频率为W n的n阶低通butterworth滤波器,其中截⽌频率W n应满⾜0<=W n<=1,W n=1相当于0.5f s(采样频率)。
当W n = [W1 W2]时,butter函数产⽣⼀个2n阶的数字带通滤波器,其通带为W1 < W < W2。
[b,a] = butter(n,W n,'ftype')可以设计⾼通或带阻滤波器。
当ftype=high时,可设计截⽌频率为W n的⾼通滤波器;当ftype=stop时,可设计带阻滤波器,此时W n = [W1 W2],阻带为W1 < W < W2。
使⽤butter函数设计滤波器,可以使通带内的幅度响应最⼤地平坦,但会损失截⽌频率处的下降斜度。
因此,butter函数主要⽤于设计通带平坦的数字滤波器。
43.1.2 buttord函数功能:⽤来选择Butterworth滤波器的阶数。
语法:[n, W n] = buttord(W P, W S, R P, R s);说明:buttord函数可以在给定滤波器性能的情况下,选择Butterworth数字滤波器的最⼩阶数,其中W P和W S分别是通带和阻带的截⽌频率,其值为0<=W p(或W s)<=1,当该值为1时表⽰0.5f s(采样率)。
切比雪夫滤波器设计和仿真摘要:滤波器是一种常见的电路形式,在电子线路中有广泛的应用。
滤波器的设计在这些领域中是必不可缺的。
滤波器是一种能使有用频率信号通过而同时抑制(或衰减)无用频率信号的电子电路或装置。
按照不同的频域或时域特性要求,可分巴特沃斯(Butterworth)、切比雪夫型(Chebyshev)、贝塞尔型(Bessel)椭圆型(Elliptic),这些都是属于模拟低通滤波器。
切比雪夫型滤波器的特点是通带内增益有起伏。
本文介绍的是借助Multisim 10仿真实现二阶切比雪夫低通有源滤波器的设计。
关键词:滤波器;频域或时域特性;切比雪夫;Multisim10Chebyshev LPF's design and emulation Abstrac:Filter would completely eliminate signals above the cutoff frequency, and perfectly pass signals below the cutoff frequency . In real filters, various rade-offs are made to get optimum performance for a given application. There are manybooks that provide information on popular filter types like the Butterworth, Bessel, and Chebyshev filters, just to name few. Chebyshev filters are designed to have ripple in the pass-band, but steeper roll off after the cutoff frequency. Cutoff frequency is defined as the frequency at which the response falls below the ripple band. For a given filter order, a steeper cutoff can be achieved by allowing more pass-band ripple. The transient response of a Chebyshev filter to a pulse input shows more overshoot and ringing than a Butterworth filter.Key Words:Filter;popular filter types;Chebyshev function;Multisim 10引言随着现代科学技术的发展,滤波技术在通信、测试、信号处理、数据采集和实时控制等领域都得到了广泛的应用。