摘要:经过研究AF(模拟滤波器)和DF(数字滤波器)的设计,根据差分近似微分,推导出一种将模拟滤波器设计为数字滤波器的变换方法,并用双线性变换来实现这个设计,结果表明该方法具有结构简单,精确和易于实现的优点。
关键字:模拟滤波器,数字滤波器,双线性变换
0.引言
数字滤波器是数字信号处理所需要的一种重要方法,它可以在各种各样交织的信号里提取我们所需要的有用信号,从而虑除掉干扰信号、噪声信号以及其他不需要的信号[4]。数字滤波器处理的输出数字信号须经数模转换、平滑。数字滤波器具有高精度、高可靠性、可程控改变特性或复用、便于集成等优点。数字滤波器在语言信号处理、图像信号处理、医学生物信号处理以及其他应用领域都得到了广泛应用。
1.设计原理
应用模拟滤波器设计数字滤波器时,首先须对输入模拟信号进行限带、抽样和模数转换,由于一个模拟系统可以用微分方程来表示,所以先微分方程进行拉氏变换,求出相应的系统函数,然后对原微分方程进行采样,而数字滤波器输入信号的抽样频率应大于被处理信号带宽的两倍,其频率响应具有以抽样频率为间隔的周期重复特性,最后利用公式将 转化成 ,通过相应的数字频率 和模拟频率 之间的关系式进行频率转换,从而完成由AF设计DF[2]。设计流程图如下:
2.应用实例
为了设计出满足要求的高通滤波器,这里分别设计了模拟滤波器和数字滤波器,并且比较幅频响应特性,来验证该变换方法是否满足基本要求,具体的方法采用参考文献,用相应的方法直接进行变换,采取双线性变换为变换方法,该变换法彻底消除了频率混叠失真,该设计思想是算法逼近[1-4]。
例1.
(5)matlab实现程序[3]
%把数字滤波器的频率特征转换为模拟滤波器的频率特征 [N,wc]=buttord(wp,ws,ap,as,'s');%选择滤波器的最小阶数
[Z,P,K]=buttap(N);%创建Butterworth低通滤波器原型
[A,B,C,D]=zp2ss(Z,P,K);%零极点增益模型转换为状态空间模型
[AT,BT,CT,DT]=lp2hp(A,B,C,D,wc);%实现低通向高通转变
[num1,den1]=ss2tf(AT,BT,CT,DT);%状态空间模型转换为传递函数模型
%实现模拟高通滤波器
[H,W]=freqs(num1,den1);%求频率响应
subplot(2,1,1);
plot(W/pi,abs(H));%绘出频率响应曲线
%运用双线性变换法把模拟滤波器转换为数字滤波器
[num2,den2]=bilinear(num1,den1,100);
[H1,W1]=freqz(num2,den2); %求频率响应
subplot(2,1,2);
plot(W1*Fs/(2*pi),abs(H1)); %绘出频率响应曲线
从Matlab仿真的幅频特性曲线可以看出,上面的那个图采用的是简单线性变换的滤波器的频率相应,下面采用的是双线性变换的频率响应,巴特沃斯数字高通滤波器的设计效果优于巴特沃斯模拟高通滤波器,模拟滤波器没有数字滤波器更精确,所以将模拟滤波器转换为数字滤波器是正确的。
3.结束语
总的来说由模拟滤波器设计数字滤波器是不错的做法,在通带内,二者均满足设计要求,没有混频失真,满足设计要求。但也存在着不足,由于在双线性变换中相位不满足线性关系,所以必须进行预畸变校正,只有非线性预畸变校正由DF边界频率求的相应的AF边界频率才能取得双线性变换,将 转化成 过程中非线性畸变后,保持DF原来的边界频率不变。
参考文献
[1]唐向宏 ,岳恒立,郑雪峰.MATLAB及在电子信息类课程中的应用[M].2版.电子工业出版社,2011,5:163-183
[2]李行一,数字信号处理[M].1版,重庆大学出版社,2002,12:104-220
[3]周辉,董正宏,数字信号处理基础及matlab实现,[M]1.版,2006,2:168-258
[4]丁志中,双线新变换法原理的解释[J].电气电子教学学报,2004,26(2):53-54