目录
1 MATLAB软件介绍 ................................ 2 2数字Butterworth滤波器的设计 ...................... 3
2.1设计题目 .......................................... 3
2.2设计原理 .......................................... 3
2.2.1巴特沃斯滤波器 ................................ 3
2.2.2冲激响应不变法原理 ............................ 3
2.2.3 双线性变换法原理 ............................. 4
3 设计思想和设计程序 ............................. 5
3.1低通巴特沃斯模拟滤波器设计 ......................... 5
3.2模拟低通转换为数字低通滤波器 ....................... 6
3.2.1冲激响应法的频率混叠失真分析 .................. 8
3.2.2双线性变换法存在的非线性频率失真 .............. 9
3.3设计一个10阶的Butterworth滤波器 .................. 9
4心得体会 .................................... 11 5参考文献 .................................... 12
1 MATLAB软件介绍
MATLAB是一种科学计算软件,适用于工程应用个领域的分析设计与复杂计
算,它使用方便,输入简捷,运算高效且内容丰富,很容易由用户自行扩展。因
此,当前已成为美国和其他发达国家大学教学和科学研究中最常用且必不可少的
工具。
MATLAB以矩阵作为基本编程单元,它提供了各种矩阵的运算与操作,并有
较强的绘图功能。MATLAB集科学计算、图像处理、声音处理于一身,是一个高
度的集成系统,有良好的用户界面,并有良好的帮助功能。MATLAB不仅流行于
控制界,在机械工程、生物工程、语音处理、图像处理、信号分析、计算机技术
等各行各业中都有极广泛的应用。
MATLAB语言的特点:1.编程效率高 2.用户使用方便 3.扩充能力强 4.语
句简单,内涵丰富 5.高效方便的矩阵和数组运算 6.方便的绘图功能
数字信号处理的主要对象是数字信号,且是采用运算的方法达到处理目的,
因此,其实现方法不同于模拟信号的实现方法,基本上可以分为两种实现方法,即
软件实现方法和硬件实现的方法。而硬件实现指的是选用合适的DSP芯片,配有
适合芯片语言及任务要求的软件,实现某种信号处理功能的一种方法。
数字信号处理的特点1.灵活性2.高精度和高稳定性3.便于大规模集成4.
对数字信号可以存储、运算;系统可以获得高性能指标
2数字Butterworth滤波器的设计
2.1设计题目
数字Butterworth滤波器的设计
2.2设计原理
2.2.1巴特沃斯滤波器
巴特沃斯滤波器的特点是具有通带内最大平坦的幅度特性,而且随着频率的
升高而单调地下降。它的幅度平方函数可以写为
|H(j)|21
1()2n
c
其 中 , n 为滤波器 的阶数 ,c为低通滤波器的截止频率。该滤波器具
有一些特殊的性 质 :
① 对所有的 n , 都有 当 =0时 ,|H(j)|2=1 ;
② 对所有的 n , 都有 当 =c时 ,|H(j)|2=
衰减;
③ |H(j)|2 是的单调递减函数 ,即不会出现幅度响应的起伏; 1,即在c处有3dB的2
④ 当 n时 , 巴特沃斯滤波器趋向于理想的低通滤波器 ;
⑤ 在 =0处平方幅度响应 的各级导数均存在且等于0, 因此|H(j)|2在
该点上取得最大值, 且具有最大平坦特性。
2.2.2冲激响应不变法原理
冲激响应不变法是使数字滤波器的单位冲激响应序列h(n)模仿模拟滤波器
的单位冲激响应ha(t),将模拟滤波器的单位冲激响应加以等间隔抽样,使h(n)正
好等于ha(t)的抽样值,即满足:
h(n)ha(nT)
式中:T为抽样周期。
冲激不变法把稳定的Ha(s)转换为稳定的H(z)。由此方法可得到一阶系统的
最基本的转换关系为:
11 sa1eaTsz1
1h(n)完全模仿模拟滤波器的单位抽样响应时域逼近良好 优点:○
2线性相位模拟滤波器转变为线性相位数字滤波器 ○
1对时域的采样会造成频域的“混叠效应”,故有可能使所设计数字滤波缺点:○
器的频率响应与原来模拟滤波器的频率响应相差很大,
2不能用来设计高通和带阻滤波器。只适用于限带的低通、带通滤波器 ○
2.2.3 双线性变换法原理
双线性变换法是从频域出发,使DF的频率响应与AF的频率响应相似的一种
变换法。直接使数字滤波器的频率响应,逼近模拟滤波器的频率响应,进而求得
H(z)。
1避免了频率响应的混迭现象 优点:○
2在特定AF和特定DF处,频率响应是严格相等的,它可以较准确地 ○
控制截止频率的位置。
3它是一种简单的代数关系,设计十分方便。 ○
1除了零频率附近,与之间严重非线性,即线性相位模拟滤波器缺点:○
变为非线性相位数字滤波器
2要求模拟滤波器的幅频响应为分段常数型,不然会产生畸变 ○
3对于分段常数型AF滤波器,经双线性变换后,仍得到幅频特性为 ○
分段常数的DF.但在各个分段边缘的临界频率点产生畸变,这种频率的畸变,可
通过频率预畸变加以校正。
3 设计思想和设计程序
3.1低通巴特沃斯模拟滤波器设计
指标如下:
通带截止频率:fp=3400HZ, 通带最大衰减:Rp=3dB
阻带截至频率:
程序如下:
Wp=2*pi*3400; %通带截止角频率
Ws=2*pi*4000; %阻带截止角频率
Rp=3; %通带最大衰减
Rs=40; %阻带最小衰减
[n,Wn] = buttord(Wp,Ws,Rp,Rs,'s'); %求巴特沃斯阶数和3db截止角频率
[b,a] = butter(n,Wn,'s'); %求传递函数
[z,p,k] = butter(n,Wn,'s'); %求零极点及增益
w=linspace(1,15000)*2*pi;
H =freqs(b,a,w); %频率响应
magH=abs(H); %频率响应的幅度
phaH=unwrap(angle(H)); %频率响应的相位(平滑处理)
plot(w/(2*pi),20*log10(magH)); %频率响应的幅度的曲线图 title('巴特沃斯低通滤波器的幅频特性');
xlabel('频率/Hz');
ylabel('幅度/db') fs=4000HZ,阻带最小衰减:AS=40dB
3.2模拟低通转换为数字低通滤波器
已知一模拟滤波器的系数函数为
Ha(s)1000 S1000
分别用冲激响应不变法和双线性变换法将Ha(s)转换成数字滤波器系统函数H(z),并图示Ha(s)和 H(z)的幅度相应曲线。分别取采样频率Fs=1000Hz和Fs=500Hz,分析冲激响应法中存在的频率混叠失真和双线性变换法存在的非线性频率失真等。
程序如下:
clear; %清除变量
close all %关闭所有窗口
b=1000;a=[1,1000]; %模拟滤波器分子分母的系数
w=[0:1000*2*pi]; %定义频带宽度
[hf,w]=freqs(b,a,w); %把频域转化到复频域
subplot(2,3,1) %分割窗口画图
plot(w/2/pi,abs(hf)); %画滤波器的幅频特性
title('模拟滤波器的幅频特性') %给这个图加个标题
grid on %打开网格
fs0=[1000,500]; %定义两个变化频率
for m=1:2
fs=fs0(m)
[d,c]=impinvar(b,a,fs) %脉冲响应不变法求滤波器系数
[f,e]=bilinear(b,a,fs) %双线性变化法求滤波器系数
wd=[0:512]*pi/512; %频率归一化
hw1=freqz(d,c,wd); %求脉冲响应不变法的数字滤波器的频率分量
hw2=freqz(f,e,wd); %求双线性变化法的数字滤波器的频率分量
subplot(2,3,2); %分割窗口画图
plot(wd/pi,abs(hw1)/abs(hw1(1))); %画滤波器的幅频特性
hold on %保持图形不清除
grid on %打开网格
title('脉冲响应不变法'); %给这个图加个标题
subplot(2,3,3) %分割窗口画图
plot(wd/pi,abs(hw2)/abs(hw2(1))) %画滤波器的幅频特性
hold on; %保持图形不清除
title('双线性变化法'); %给这个图加个标题
end
3.2.1冲激响应法的频率混叠失真分析
数字滤波器的频率响应与模拟滤波器的频率响应间的关系为:
12jH(e)Ha(jk) TkT
即数字滤波器的频率响应是模拟滤波器的周期延拓,根据奈奎斯特抽样定理,只有当模拟滤波器的频率响应是严格限带的,且带限于折叠频率[s/2,s/2]以内时,才能使数字滤波器的频率响应在折叠频率以内,重现模拟滤波器的频率而不产生混叠失真。但是,任何一个实际的模拟滤波器响应都不是严格限带的,变换后都会产生周期延拓分量的频谱交叠,即产生频率响应的混叠失真,因此模拟滤波器的频率响应在折叠频率以上衰减越大、越快,变换后频率响应混叠失真就越小。
3.2.2双线性变换法存在的非线性频率失真
如仿真波形图可知,在零频率附近,arctan(/2)的频率变换关系接近线性关系外,当增加时,变换关系就是非线性的了,也就是说,与之间存在严重的非线性关系。这就是双线性变换法存在的非线性频率失真。
3.3设计一个10阶的Butterworth滤波器
通带为100~250Hz,采样频率为1000Hz,绘出滤波器的单位脉冲响应。 程序如下:
n=10;
Wn=[100 250]/1000;
[b,a]=butter(n,Wn);
[y,t]=impz(b,a,101);l
stem(t,y)
4心得体会
在课程设计刚刚开始的时候,觉得很无助,不知道怎么开始做,于是看课本知识、上网搜资料、去图书馆查找等等,终于功夫不负有心人,在不断的资料搜寻当中我们渐渐的明白了我们将要做的设计的原理和相关知识。
本次课程设计,我选题为巴特沃斯滤波器设计,通过设计,我具体的了解了巴特沃斯滤波器设计的原理和其相关的知识。
首先,我们要了解设计数字滤波器的原理方法,从模拟滤波器设计无限长冲激响应数字滤波器在工程上常用的有两种:脉冲响应不变法、双线性变换法。其设计过程都是由模拟滤波器的系统函数H(s)去变换出相应的数字滤波器的系统函数H(z)。
然后,我们要知道需要用函数来编写程序通过MATLAB来实现滤波器的设计。我们知道的现有的逼近函数如巴特沃斯可供使用。巴特沃斯滤波器是以原点的最大平坦性来逼近理想低通滤波器。由此函数设计出的模拟低通滤波器通过频率变换可得到高通、带通、带阻模拟滤波器。
最后通过所掌握的巴特沃斯滤波器设计原理和方法将其应用到实际问题当中进行处理,终于顺利完成了本次课程设计。
通过整个设计过程,让我感触最深的就是MATLAB功能的强大性与掌握编程各种函数和语句的重要性。当然首先要了解所要编程运行的对象的原理。在课程设计的过程中,我深深的感受到我们所学的东西太少了,需要学习的东西太多了,真的是学无止境。学习的过程是艰辛的,但是同时也是快乐的,让我们大家朝着自己各自的目标努力奋斗,努力学习吧,快乐生活,快乐学习,终将一天我们会成功的。
5参考文献
[1]陈怀琛·MATLAB在电子信息课程中的应用(第二版)·电子工业出版社·2006
[2] 刘泉·数字信号处理原理与实现(第二版)·电子工业出版社·2008
[3] 陈贵明·用MATLAB语言处理数字信号与数字图像·科学出版社·2000
[4] 王家文·MATLAB7.0图形图像处理·国防工业出版社·2006
[5] 苏金明·MATLAB图形图像·电子工业出版社·2005
目录
1 MATLAB软件介绍 ................................ 2 2数字Butterworth滤波器的设计 ...................... 3
2.1设计题目 .......................................... 3
2.2设计原理 .......................................... 3
2.2.1巴特沃斯滤波器 ................................ 3
2.2.2冲激响应不变法原理 ............................ 3
2.2.3 双线性变换法原理 ............................. 4
3 设计思想和设计程序 ............................. 5
3.1低通巴特沃斯模拟滤波器设计 ......................... 5
3.2模拟低通转换为数字低通滤波器 ....................... 6
3.2.1冲激响应法的频率混叠失真分析 .................. 8
3.2.2双线性变换法存在的非线性频率失真 .............. 9
3.3设计一个10阶的Butterworth滤波器 .................. 9
4心得体会 .................................... 11 5参考文献 .................................... 12
1 MATLAB软件介绍
MATLAB是一种科学计算软件,适用于工程应用个领域的分析设计与复杂计
算,它使用方便,输入简捷,运算高效且内容丰富,很容易由用户自行扩展。因
此,当前已成为美国和其他发达国家大学教学和科学研究中最常用且必不可少的
工具。
MATLAB以矩阵作为基本编程单元,它提供了各种矩阵的运算与操作,并有
较强的绘图功能。MATLAB集科学计算、图像处理、声音处理于一身,是一个高
度的集成系统,有良好的用户界面,并有良好的帮助功能。MATLAB不仅流行于
控制界,在机械工程、生物工程、语音处理、图像处理、信号分析、计算机技术
等各行各业中都有极广泛的应用。
MATLAB语言的特点:1.编程效率高 2.用户使用方便 3.扩充能力强 4.语
句简单,内涵丰富 5.高效方便的矩阵和数组运算 6.方便的绘图功能
数字信号处理的主要对象是数字信号,且是采用运算的方法达到处理目的,
因此,其实现方法不同于模拟信号的实现方法,基本上可以分为两种实现方法,即
软件实现方法和硬件实现的方法。而硬件实现指的是选用合适的DSP芯片,配有
适合芯片语言及任务要求的软件,实现某种信号处理功能的一种方法。
数字信号处理的特点1.灵活性2.高精度和高稳定性3.便于大规模集成4.
对数字信号可以存储、运算;系统可以获得高性能指标
2数字Butterworth滤波器的设计
2.1设计题目
数字Butterworth滤波器的设计
2.2设计原理
2.2.1巴特沃斯滤波器
巴特沃斯滤波器的特点是具有通带内最大平坦的幅度特性,而且随着频率的
升高而单调地下降。它的幅度平方函数可以写为
|H(j)|21
1()2n
c
其 中 , n 为滤波器 的阶数 ,c为低通滤波器的截止频率。该滤波器具
有一些特殊的性 质 :
① 对所有的 n , 都有 当 =0时 ,|H(j)|2=1 ;
② 对所有的 n , 都有 当 =c时 ,|H(j)|2=
衰减;
③ |H(j)|2 是的单调递减函数 ,即不会出现幅度响应的起伏; 1,即在c处有3dB的2
④ 当 n时 , 巴特沃斯滤波器趋向于理想的低通滤波器 ;
⑤ 在 =0处平方幅度响应 的各级导数均存在且等于0, 因此|H(j)|2在
该点上取得最大值, 且具有最大平坦特性。
2.2.2冲激响应不变法原理
冲激响应不变法是使数字滤波器的单位冲激响应序列h(n)模仿模拟滤波器
的单位冲激响应ha(t),将模拟滤波器的单位冲激响应加以等间隔抽样,使h(n)正
好等于ha(t)的抽样值,即满足:
h(n)ha(nT)
式中:T为抽样周期。
冲激不变法把稳定的Ha(s)转换为稳定的H(z)。由此方法可得到一阶系统的
最基本的转换关系为:
11 sa1eaTsz1
1h(n)完全模仿模拟滤波器的单位抽样响应时域逼近良好 优点:○
2线性相位模拟滤波器转变为线性相位数字滤波器 ○
1对时域的采样会造成频域的“混叠效应”,故有可能使所设计数字滤波缺点:○
器的频率响应与原来模拟滤波器的频率响应相差很大,
2不能用来设计高通和带阻滤波器。只适用于限带的低通、带通滤波器 ○
2.2.3 双线性变换法原理
双线性变换法是从频域出发,使DF的频率响应与AF的频率响应相似的一种
变换法。直接使数字滤波器的频率响应,逼近模拟滤波器的频率响应,进而求得
H(z)。
1避免了频率响应的混迭现象 优点:○
2在特定AF和特定DF处,频率响应是严格相等的,它可以较准确地 ○
控制截止频率的位置。
3它是一种简单的代数关系,设计十分方便。 ○
1除了零频率附近,与之间严重非线性,即线性相位模拟滤波器缺点:○
变为非线性相位数字滤波器
2要求模拟滤波器的幅频响应为分段常数型,不然会产生畸变 ○
3对于分段常数型AF滤波器,经双线性变换后,仍得到幅频特性为 ○
分段常数的DF.但在各个分段边缘的临界频率点产生畸变,这种频率的畸变,可
通过频率预畸变加以校正。
3 设计思想和设计程序
3.1低通巴特沃斯模拟滤波器设计
指标如下:
通带截止频率:fp=3400HZ, 通带最大衰减:Rp=3dB
阻带截至频率:
程序如下:
Wp=2*pi*3400; %通带截止角频率
Ws=2*pi*4000; %阻带截止角频率
Rp=3; %通带最大衰减
Rs=40; %阻带最小衰减
[n,Wn] = buttord(Wp,Ws,Rp,Rs,'s'); %求巴特沃斯阶数和3db截止角频率
[b,a] = butter(n,Wn,'s'); %求传递函数
[z,p,k] = butter(n,Wn,'s'); %求零极点及增益
w=linspace(1,15000)*2*pi;
H =freqs(b,a,w); %频率响应
magH=abs(H); %频率响应的幅度
phaH=unwrap(angle(H)); %频率响应的相位(平滑处理)
plot(w/(2*pi),20*log10(magH)); %频率响应的幅度的曲线图 title('巴特沃斯低通滤波器的幅频特性');
xlabel('频率/Hz');
ylabel('幅度/db') fs=4000HZ,阻带最小衰减:AS=40dB
3.2模拟低通转换为数字低通滤波器
已知一模拟滤波器的系数函数为
Ha(s)1000 S1000
分别用冲激响应不变法和双线性变换法将Ha(s)转换成数字滤波器系统函数H(z),并图示Ha(s)和 H(z)的幅度相应曲线。分别取采样频率Fs=1000Hz和Fs=500Hz,分析冲激响应法中存在的频率混叠失真和双线性变换法存在的非线性频率失真等。
程序如下:
clear; %清除变量
close all %关闭所有窗口
b=1000;a=[1,1000]; %模拟滤波器分子分母的系数
w=[0:1000*2*pi]; %定义频带宽度
[hf,w]=freqs(b,a,w); %把频域转化到复频域
subplot(2,3,1) %分割窗口画图
plot(w/2/pi,abs(hf)); %画滤波器的幅频特性
title('模拟滤波器的幅频特性') %给这个图加个标题
grid on %打开网格
fs0=[1000,500]; %定义两个变化频率
for m=1:2
fs=fs0(m)
[d,c]=impinvar(b,a,fs) %脉冲响应不变法求滤波器系数
[f,e]=bilinear(b,a,fs) %双线性变化法求滤波器系数
wd=[0:512]*pi/512; %频率归一化
hw1=freqz(d,c,wd); %求脉冲响应不变法的数字滤波器的频率分量
hw2=freqz(f,e,wd); %求双线性变化法的数字滤波器的频率分量
subplot(2,3,2); %分割窗口画图
plot(wd/pi,abs(hw1)/abs(hw1(1))); %画滤波器的幅频特性
hold on %保持图形不清除
grid on %打开网格
title('脉冲响应不变法'); %给这个图加个标题
subplot(2,3,3) %分割窗口画图
plot(wd/pi,abs(hw2)/abs(hw2(1))) %画滤波器的幅频特性
hold on; %保持图形不清除
title('双线性变化法'); %给这个图加个标题
end
3.2.1冲激响应法的频率混叠失真分析
数字滤波器的频率响应与模拟滤波器的频率响应间的关系为:
12jH(e)Ha(jk) TkT
即数字滤波器的频率响应是模拟滤波器的周期延拓,根据奈奎斯特抽样定理,只有当模拟滤波器的频率响应是严格限带的,且带限于折叠频率[s/2,s/2]以内时,才能使数字滤波器的频率响应在折叠频率以内,重现模拟滤波器的频率而不产生混叠失真。但是,任何一个实际的模拟滤波器响应都不是严格限带的,变换后都会产生周期延拓分量的频谱交叠,即产生频率响应的混叠失真,因此模拟滤波器的频率响应在折叠频率以上衰减越大、越快,变换后频率响应混叠失真就越小。
3.2.2双线性变换法存在的非线性频率失真
如仿真波形图可知,在零频率附近,arctan(/2)的频率变换关系接近线性关系外,当增加时,变换关系就是非线性的了,也就是说,与之间存在严重的非线性关系。这就是双线性变换法存在的非线性频率失真。
3.3设计一个10阶的Butterworth滤波器
通带为100~250Hz,采样频率为1000Hz,绘出滤波器的单位脉冲响应。 程序如下:
n=10;
Wn=[100 250]/1000;
[b,a]=butter(n,Wn);
[y,t]=impz(b,a,101);l
stem(t,y)
4心得体会
在课程设计刚刚开始的时候,觉得很无助,不知道怎么开始做,于是看课本知识、上网搜资料、去图书馆查找等等,终于功夫不负有心人,在不断的资料搜寻当中我们渐渐的明白了我们将要做的设计的原理和相关知识。
本次课程设计,我选题为巴特沃斯滤波器设计,通过设计,我具体的了解了巴特沃斯滤波器设计的原理和其相关的知识。
首先,我们要了解设计数字滤波器的原理方法,从模拟滤波器设计无限长冲激响应数字滤波器在工程上常用的有两种:脉冲响应不变法、双线性变换法。其设计过程都是由模拟滤波器的系统函数H(s)去变换出相应的数字滤波器的系统函数H(z)。
然后,我们要知道需要用函数来编写程序通过MATLAB来实现滤波器的设计。我们知道的现有的逼近函数如巴特沃斯可供使用。巴特沃斯滤波器是以原点的最大平坦性来逼近理想低通滤波器。由此函数设计出的模拟低通滤波器通过频率变换可得到高通、带通、带阻模拟滤波器。
最后通过所掌握的巴特沃斯滤波器设计原理和方法将其应用到实际问题当中进行处理,终于顺利完成了本次课程设计。
通过整个设计过程,让我感触最深的就是MATLAB功能的强大性与掌握编程各种函数和语句的重要性。当然首先要了解所要编程运行的对象的原理。在课程设计的过程中,我深深的感受到我们所学的东西太少了,需要学习的东西太多了,真的是学无止境。学习的过程是艰辛的,但是同时也是快乐的,让我们大家朝着自己各自的目标努力奋斗,努力学习吧,快乐生活,快乐学习,终将一天我们会成功的。
5参考文献
[1]陈怀琛·MATLAB在电子信息课程中的应用(第二版)·电子工业出版社·2006
[2] 刘泉·数字信号处理原理与实现(第二版)·电子工业出版社·2008
[3] 陈贵明·用MATLAB语言处理数字信号与数字图像·科学出版社·2000
[4] 王家文·MATLAB7.0图形图像处理·国防工业出版社·2006
[5] 苏金明·MATLAB图形图像·电子工业出版社·2005