matlab实现数字低通滤波器

DSP 设计滤波器报告

一·低通滤波器的设计

(一)实验目的:掌握IIR 数字低通滤波器的设计方法。

(二)实验原理:

1、滤波器的分类

滤波器分两大类:经典滤波器和现代滤波器。

经典滤波器是假定输入信号x (n ) 中的有用成分和希望取出的成分各自占有不同的频带。这样,当x (n ) 通过一个线性系统(即滤波器)后可讲欲去除的成分有效的去除。

现代滤波器理论研究的主要内容是从含有噪声的数据记录(又称时间序列)中估计出信号的某些特征或信号本身。

经典滤波器分为低通、高通、带通、带阻滤波器。每一种又有模拟滤波器(AF )和数字滤波器(DF )。对数字滤波器,又有IIR 滤波器和FIR 滤波器。 IIR DF 的转移函数是:

Y (z ) =X (z ) H (z ) =∑b z r

r =0

N

k =1M -r 1+∑a k z -k

FIR DF的转移函数是:

H (z ) =∑h (n ) z -n

n =0N -1

FIR 滤波器可以对给定的频率特性直接进行设计,而IIR 滤波器目前最通用的方法是利用已经很成熟的模拟滤波器的设计方法进行设计。

2、滤波器的技术要求

低通滤波器:

ωp :通带截止频率(又称通带上限频率) ωs :阻带下限截止频率 αp α:通带允许的最大衰减 αs :阻带允许的最小衰减 (p ,αs

:通带上限角频率 Ωs :阻带下限角频率 的单位dB ) Ωp

(Ωp =ωp s ,Ωs =ωs s )即 Ωp =2πωp C Ωs =2πωs C

3、IIR 数字滤波器的设计步骤:

1)按一定规则将给出的数字滤波器的技术指标转换魏模拟低通滤波器的技术指标。

2)根据转换后的技术指标设计模拟低通滤波器G (s ) ;

3)再按一定的规则将G (s ) 转换成H (z ) 。

4)若是高通、带通或带阻数字滤波器则将它们的技术指标先转化为低通模拟滤波器的技术指标,然后按上述步骤2)设计出低通G (s ) ,再将G (s ) 转换为所需的H (z ) 。

4.几种不同类型的滤波器的介绍:

因为我们设计的滤波器的冲击响应一般都为实数,所以有

G (s ) G *(s ) =G (s ) G (-s ) s =j Ω=G (j Ωs ) 2

G (j Ω) 2

这样,如果我们能由

的G (s ) 。 不同类型的G (j Ω) 2αp ,Ωp ,αs ,Ωs 求出,那么就容易得到所需要

的表达式,代表了几种不同类型的滤波器。

(1)巴特沃思(Butterworth)滤波器: G (j Ω) =2

11+C 2(Ω2) n

C 为待定常数,N 为待定的滤波器阶次。

(2)切比雪夫I 型(Chebyshev – I )滤波器:

G (j Ω) =21

21+ε2C n (Ω)

5.巴特沃思模拟低通滤波器的设计

由于每一个滤波器的频率范围将直接取决于设计者的应用目的,因此必然是千差万别。为了使设计规范化,我们需要将滤波器的频率参数作归一化处理。设所给的实际频率为Ω(或f ),归一化后的频率为λ,对低通模拟滤波器,令

, λ=Ω/Ωp 。又令归一化复数变量为p ,p =j λ,显然

显然, λp =1 λs =Ωs /Ωp p =j λ=j Ω/Ωp =s /Ωp

所以巴特沃思模拟低通滤波器的设计可按以下三个步骤来进行。

(1)将实际频率Ω规一化

(2)求C 和N

C 2=10αP /10-1

N =lg 10αs /10-1

10αp /10-1λs

这样C 和N 可求。

若令αp =3dB ,则C =1,这样巴特沃思滤波器的设计就只剩一个参数N ,这时 G (j λ) =21

1+λ2N =11+(Ω/Ωp ) 2N

(3)确定G (s )

因为p =j λ,根据上面公式有

G (p ) G (-p ) =11=1+(p /j ) 2N 1+(-1) N p 2N

由 1+(-1) N p 2N =0解得

2k +N -12π) 2N ,k =1,2,···,2N

1

2k +N -1p 2-2p cos(π) +12N p k =exp(j 这样可得 G k (p ) =1=(p -p k )(p -p N +1-k )

求得G (p ) 后,用s /Ωp 代替变量p ,即得实际需要得G (s ) 。

6.用双线性Z 变换法设计IIR 数字低通滤波器

s 平面到z 平面的映射关系

s =2z -1

T s z +1

称为双线性Z 变换,由此关系求出

z =1+(T s /2) s

1-(T s /2) s

j Ω=j 2sin(ω/2)

T s cos(ω/2) 及

Ω=

即 2tan(ω/2) T s ω=2arctan(ΩT s /2)

2

因为设计滤波器时系数T s 会被约掉,所以又有

z =1+s 1-s Ω=tan(ω/2)

ω=2arctan Ω

(三)实验内容

题一:试用双线性Z 变换法设计一低通数字滤波器,给定技术指标是f p =100Hz ,f s =300Hz ,αp =3dB ,αs =20 dB ,抽样频率F s =1000Hz 。

提示:首先应该得到角频率ω,然后再

(1) 将数字滤波器的技术要求转换为模拟滤波器的技术要求。

(2) 设计低通滤波器G (s )

由λ=Ω/Ωp 依次求出λp ,λs ,再求出N ,可得G (p ) G (s ) =G (p )

然后由p =s

Ωp 转换成G (s )

(3) 由G (s ) 求H (z )

源程序:

fp=100;

fs=300;

ap=3; %通带最大衰减

as=20; %阻带最小衰减

Fs1=1000; %抽样频率

wp=2*pi*fp/Fs1;

ws=2*pi*fs/Fs1; %数字角频率

Fs=Fs1/Fs1;

T=1/Fs;

Op=2/T*tan(wp/2);

Os=2/T*tan(ws/2); %角频率畸变

[N Wn]=buttord(Op,Os,ap,as,'s');

[z p k]=buttap(N); %G(p)的零点, 极点, 增益

[b a]=zp2tf(z,p,k); %G(p)的分子、分数系数

[B A]=lp2lp(b,a,Op); %H(s)的分子、分数系数

[Bz Az]=bilinear(B,A,Fs*T/2); %H(z)的分子、分数系数

[H w]=freqz(Bz,Az,256,Fs*Fs1); %H

plot(w,abs(H),'r');

title('低通滤波器');

grid on;

实验结果:

低通滤波器

1.2

1

0.8

0.6

0.4

0.2

[***********][1**********]00

同理可以设计出低通滤波器和带通及带阻滤波器。

MATLAB 参考程序和仿真内容

%*******************************************************************%

function[x]=ffts(mode,M)

Nfft=2^M;

x=zeros(1,Nfft); %定义一个长度为Nfft 的一维全0数组

if mode= =1 for n=0:Nfft-1 x(n+1)=sin(2*pi*n/Nfft); end

end %定义一个长度为Nfft 的单周期正弦序列

if mode= =2 for n=0:Nfft-1 x(n+1)=sin(4*pi*n/Nfft); end

end %定义一个长度为Nfft 的双周期正弦序列

if mode= =3 for n=0:Nfft/2-1 x(n+1)=sin(4*pi*n/Nfft); end

end %定义一个长度为Nfft/2的正弦序列,后面一半为0序列。

if mode= =4 for n=0:Nfft-1 x(n+1)=square(2*pi*n/Nfft); end

end

if mode= =5 for n=0:Nfft-1 x(n+1)=square(2*pi*n/Nfft); end

end

if mode= =6 for n=0:Nfft/2-1 x(n+1)=square(4*pi*n/Nfft); end

end

n=0:Nfft-1;

subplot(2,1,1);

stem(n,x);

axis([0 Nfft-1 1.1*min(x) 1.1*max(x)]);

xlabel('Points-->');

ylabel('x(n)');

X=abs(fft(x,Nfft));

subplot(2,1,2);

stem(n,X);

axis([0 Nfft-1 1.1*min(X) 1.1*max(X)]);

xlabel('frequency-->');

ylabel('!X(k)!');

图二

图三

DSP 设计滤波器报告

一·低通滤波器的设计

(一)实验目的:掌握IIR 数字低通滤波器的设计方法。

(二)实验原理:

1、滤波器的分类

滤波器分两大类:经典滤波器和现代滤波器。

经典滤波器是假定输入信号x (n ) 中的有用成分和希望取出的成分各自占有不同的频带。这样,当x (n ) 通过一个线性系统(即滤波器)后可讲欲去除的成分有效的去除。

现代滤波器理论研究的主要内容是从含有噪声的数据记录(又称时间序列)中估计出信号的某些特征或信号本身。

经典滤波器分为低通、高通、带通、带阻滤波器。每一种又有模拟滤波器(AF )和数字滤波器(DF )。对数字滤波器,又有IIR 滤波器和FIR 滤波器。 IIR DF 的转移函数是:

Y (z ) =X (z ) H (z ) =∑b z r

r =0

N

k =1M -r 1+∑a k z -k

FIR DF的转移函数是:

H (z ) =∑h (n ) z -n

n =0N -1

FIR 滤波器可以对给定的频率特性直接进行设计,而IIR 滤波器目前最通用的方法是利用已经很成熟的模拟滤波器的设计方法进行设计。

2、滤波器的技术要求

低通滤波器:

ωp :通带截止频率(又称通带上限频率) ωs :阻带下限截止频率 αp α:通带允许的最大衰减 αs :阻带允许的最小衰减 (p ,αs

:通带上限角频率 Ωs :阻带下限角频率 的单位dB ) Ωp

(Ωp =ωp s ,Ωs =ωs s )即 Ωp =2πωp C Ωs =2πωs C

3、IIR 数字滤波器的设计步骤:

1)按一定规则将给出的数字滤波器的技术指标转换魏模拟低通滤波器的技术指标。

2)根据转换后的技术指标设计模拟低通滤波器G (s ) ;

3)再按一定的规则将G (s ) 转换成H (z ) 。

4)若是高通、带通或带阻数字滤波器则将它们的技术指标先转化为低通模拟滤波器的技术指标,然后按上述步骤2)设计出低通G (s ) ,再将G (s ) 转换为所需的H (z ) 。

4.几种不同类型的滤波器的介绍:

因为我们设计的滤波器的冲击响应一般都为实数,所以有

G (s ) G *(s ) =G (s ) G (-s ) s =j Ω=G (j Ωs ) 2

G (j Ω) 2

这样,如果我们能由

的G (s ) 。 不同类型的G (j Ω) 2αp ,Ωp ,αs ,Ωs 求出,那么就容易得到所需要

的表达式,代表了几种不同类型的滤波器。

(1)巴特沃思(Butterworth)滤波器: G (j Ω) =2

11+C 2(Ω2) n

C 为待定常数,N 为待定的滤波器阶次。

(2)切比雪夫I 型(Chebyshev – I )滤波器:

G (j Ω) =21

21+ε2C n (Ω)

5.巴特沃思模拟低通滤波器的设计

由于每一个滤波器的频率范围将直接取决于设计者的应用目的,因此必然是千差万别。为了使设计规范化,我们需要将滤波器的频率参数作归一化处理。设所给的实际频率为Ω(或f ),归一化后的频率为λ,对低通模拟滤波器,令

, λ=Ω/Ωp 。又令归一化复数变量为p ,p =j λ,显然

显然, λp =1 λs =Ωs /Ωp p =j λ=j Ω/Ωp =s /Ωp

所以巴特沃思模拟低通滤波器的设计可按以下三个步骤来进行。

(1)将实际频率Ω规一化

(2)求C 和N

C 2=10αP /10-1

N =lg 10αs /10-1

10αp /10-1λs

这样C 和N 可求。

若令αp =3dB ,则C =1,这样巴特沃思滤波器的设计就只剩一个参数N ,这时 G (j λ) =21

1+λ2N =11+(Ω/Ωp ) 2N

(3)确定G (s )

因为p =j λ,根据上面公式有

G (p ) G (-p ) =11=1+(p /j ) 2N 1+(-1) N p 2N

由 1+(-1) N p 2N =0解得

2k +N -12π) 2N ,k =1,2,···,2N

1

2k +N -1p 2-2p cos(π) +12N p k =exp(j 这样可得 G k (p ) =1=(p -p k )(p -p N +1-k )

求得G (p ) 后,用s /Ωp 代替变量p ,即得实际需要得G (s ) 。

6.用双线性Z 变换法设计IIR 数字低通滤波器

s 平面到z 平面的映射关系

s =2z -1

T s z +1

称为双线性Z 变换,由此关系求出

z =1+(T s /2) s

1-(T s /2) s

j Ω=j 2sin(ω/2)

T s cos(ω/2) 及

Ω=

即 2tan(ω/2) T s ω=2arctan(ΩT s /2)

2

因为设计滤波器时系数T s 会被约掉,所以又有

z =1+s 1-s Ω=tan(ω/2)

ω=2arctan Ω

(三)实验内容

题一:试用双线性Z 变换法设计一低通数字滤波器,给定技术指标是f p =100Hz ,f s =300Hz ,αp =3dB ,αs =20 dB ,抽样频率F s =1000Hz 。

提示:首先应该得到角频率ω,然后再

(1) 将数字滤波器的技术要求转换为模拟滤波器的技术要求。

(2) 设计低通滤波器G (s )

由λ=Ω/Ωp 依次求出λp ,λs ,再求出N ,可得G (p ) G (s ) =G (p )

然后由p =s

Ωp 转换成G (s )

(3) 由G (s ) 求H (z )

源程序:

fp=100;

fs=300;

ap=3; %通带最大衰减

as=20; %阻带最小衰减

Fs1=1000; %抽样频率

wp=2*pi*fp/Fs1;

ws=2*pi*fs/Fs1; %数字角频率

Fs=Fs1/Fs1;

T=1/Fs;

Op=2/T*tan(wp/2);

Os=2/T*tan(ws/2); %角频率畸变

[N Wn]=buttord(Op,Os,ap,as,'s');

[z p k]=buttap(N); %G(p)的零点, 极点, 增益

[b a]=zp2tf(z,p,k); %G(p)的分子、分数系数

[B A]=lp2lp(b,a,Op); %H(s)的分子、分数系数

[Bz Az]=bilinear(B,A,Fs*T/2); %H(z)的分子、分数系数

[H w]=freqz(Bz,Az,256,Fs*Fs1); %H

plot(w,abs(H),'r');

title('低通滤波器');

grid on;

实验结果:

低通滤波器

1.2

1

0.8

0.6

0.4

0.2

[***********][1**********]00

同理可以设计出低通滤波器和带通及带阻滤波器。

MATLAB 参考程序和仿真内容

%*******************************************************************%

function[x]=ffts(mode,M)

Nfft=2^M;

x=zeros(1,Nfft); %定义一个长度为Nfft 的一维全0数组

if mode= =1 for n=0:Nfft-1 x(n+1)=sin(2*pi*n/Nfft); end

end %定义一个长度为Nfft 的单周期正弦序列

if mode= =2 for n=0:Nfft-1 x(n+1)=sin(4*pi*n/Nfft); end

end %定义一个长度为Nfft 的双周期正弦序列

if mode= =3 for n=0:Nfft/2-1 x(n+1)=sin(4*pi*n/Nfft); end

end %定义一个长度为Nfft/2的正弦序列,后面一半为0序列。

if mode= =4 for n=0:Nfft-1 x(n+1)=square(2*pi*n/Nfft); end

end

if mode= =5 for n=0:Nfft-1 x(n+1)=square(2*pi*n/Nfft); end

end

if mode= =6 for n=0:Nfft/2-1 x(n+1)=square(4*pi*n/Nfft); end

end

n=0:Nfft-1;

subplot(2,1,1);

stem(n,x);

axis([0 Nfft-1 1.1*min(x) 1.1*max(x)]);

xlabel('Points-->');

ylabel('x(n)');

X=abs(fft(x,Nfft));

subplot(2,1,2);

stem(n,X);

axis([0 Nfft-1 1.1*min(X) 1.1*max(X)]);

xlabel('frequency-->');

ylabel('!X(k)!');

图二

图三


相关内容

  • 基于Matlab和脉冲响应不变法的滤波器设计
  • 目 录 摘 要 ............................................................................................................. 错误!未定义书签. Abstract ............. ...

  • FIR数字带通滤波器的设计
  • 课程设计 题 目 数字FIR带通滤波器的设计 学生姓名 黄迎旭 学号 1110064036 所在院(系) 物电学院 专业班级 电信1102班 指导教师 井敏英 完成地点 陕西理工学院 2014年 9月26日 数字FIR带通滤波器的设计 黄迎旭 (陕西理工学院物电学院电子信息科学与技术专业1102班) ...

  • FIR数字滤波器设计
  • 长 治 学 院 2012届学士学位毕业论文 FIR 数字滤波器设计 学 号: 08405416 姓 名: 刘萍 指导教师: 张秀秀 专 业: 电子信息科学与技术 系 别: 电子信息与物理系 完成时间:2012年5月 FIR 数字滤波器的设计 专业:电子信息科学与技术 姓名:刘萍 学号:0848541 ...

  • 基于MATLAB做巴特沃斯低通滤波器
  • 分类号 编号 烟 台 大 学 毕 业 论 文(设 计) 基于MATLAB设计巴特沃斯低通滤波器 The Design of Butterworth Low-passing Filter Based on MATLAB 申请学位: 院 系: 专 业: 姓 名: 学 号: 指导老师: 2011年 05 ...

  • 数字巴特沃斯滤波器
  • 目录 1 MATLAB软件介绍 ................................ 2 2数字Butterworth滤波器的设计 ...................... 3 2.1设计题目 .......................................... 3 ...

  • 切比雪夫滤波器
  • NANHUA University 课程设计(论文) 题 目用切比雪夫Ⅱ型IIR设计带阻(数字频带变换)滤波器 学院名称 电 气 工 程 学 院 班 级 学 号 学生姓名 指导教师 陈 忠 泽 2010年 6 月 摘要 现如今随着电子设备工作频率范围的不断扩大,电磁干扰也越来也严重,接收机接收到的信 ...

  • 基于Matlab的IIR数字滤波器对声音信号的采集
  • 课程设计 题 目 IIR数字滤波器对语音信号的处理 学生姓名 宋小庆 学号 0810064014 所在院(系) 物电学院 专业班级 电子信息科学与技术081班 指导教师 刘东 完成地点 实验楼513教室 2011 年 12 月 15 日 IIR数字滤波器对语音信号的处理 作者:宋小庆 指导老师:刘东 ...

  • 数字信号处理实验报告
  • 数字信号处理 实验报告 实验一 信号(模拟.数字)的输入输出实验 (常见离散信号产生和实现) 一.实验目的 1.加深对常用离散信号的理解: 2.掌握matlab 中一些基本函数的建立方法. 二.实验原理 1. 单位抽样序列 δ(n ) =⎨ ⎧1⎩0 n =0n ≠0 在MATLAB 中可以利用ze ...

  • 数字信号处理课程设计
  • 数字信号处理课程设计报告 题目3 运用matlab 的数字音效处理系统设计 系 (院): 电子信息工程学院 专 业: 通信工程班 级: 13通信 学 号:xxx 姓 名:xxx 2015年12月19日 一.摘要 数字信号处理(Digital Signal Processing)技术,从20世纪60年 ...

  • DSP课程设计-FIR高通滤波器设计
  • FIR 高通滤波器设计 南京师范大学物科院 从实现方法方面考虑,将滤波器分为两种,一种是IIR 滤波器,另一种是FIR 滤波器. FIRDF 的最大优点是可以实现线性相位滤波.而IIRDF 主要对幅频特性进行逼近,相频特性会存在不同程度的非线性.我们知道,无失真传输与滤波处理的条件是,在信号的有效频 ...