logo资料库

基于双线性变换法的IIR数字滤波器设计与matlab仿真.pdf

第1页 / 共4页
第2页 / 共4页
第3页 / 共4页
第4页 / 共4页
资料共4页,全文预览结束
《自 动 化 技 术 与 应 用 》2 0 0 8 年 第 2 7 卷 第 9 期 通信与信息处理 Communication and Information Processing 基于双线性变换法的 IIR 数字滤波器设计 与 matlab 仿真 刘 凤 举 1 , 吴 简 彤 2 , 刘 力 1 (1.牡丹江师范学院 物理系,黑龙江 牡丹江 157000;2.哈尔滨工程大学 自动化学院,黑龙江 哈尔滨 150001) 摘 要:传统的数字滤波器设计使用繁琐的公式计算,尤其是设计高阶滤波器时工作量很大。利用 matlab 数字信号处理(dsp)工具 箱(signal processing toolbox)可以快速有效的实现数字滤波器的设计与仿真。MATLAB 软件的频谱分析和滤波器的分析 设计功能很强,从而使数字信号处理变得十分简单。本文比较了设计 IIR 数字滤波器的两种方法,介绍了利用双线性变换法设 计 IIR 滤波器的原理、步骤,并在 matlab 下进行了仿真。 关键词:双线性变换法;数字滤波器;IIR 中图分类号:TN911.72 文献标识码:B 文章编号:1003-7241(2008)09-0044-04 IIR Digital Filter Design Based on the Bilinear Transformation and Matlab Simulation LIU Feng-ju1, WU Jian-tong2, LIU Li1 ( 1.MuDanJiang teacher’s college, MuDanJiang 157000 China; 2. Harbin Engineering University, Harbin 150001 China ) Abstract: This paper introduces the digital filter design with signal processing toolbox of Matlab. An IIR filter design example based on the bilinear transformation is used to illustrate the design procedure. Key words: bilinear transformation; digital filter; IIR 1 引言 应(FIR)滤波器[1]。 数字滤波器是数字信号处理的重要基础。在对信 IIR 滤波器的特征是,具有无限持续时间冲激响应。 号的过滤、检测与参数的估计等处理中, 数字滤波器 这种滤波器也称之为递归型滤波器。IIR 数字滤波器的 是使用最广泛的线性系统。数字滤波器的设计方法有 设计常采用两种方法: 一、冲激响应不变法 二、双线 多种, 如双线性变换法、窗函数设计法、插值逼近法和 性变换法。 C h e b y s h e v 逼近法等等[ 1 ]。随着 M A T L A B 软件尤其是 2.1 冲激响应不变法的变换原理[1] M A T L A B 的信号处理工作箱的不断完善, 不仅数字滤波 冲激响应不变法的变换思路是利用模拟滤波器来 器的计算机辅助设计有了可能, 而且还可以使设计达到 设计数字滤波器, 也就是使数字滤波器能模仿模拟滤波 最优化。 2 IIR 数字滤波器 器的特性, 这种模仿可以从不同的角度出发。冲激响应 不变法是从滤波器的脉冲响应出发, 使数字滤波器的单 位脉冲响应序列h(n)模仿模拟滤波器的冲激响应ha(t), 数字滤波器根据其冲激响应函数的时域特性, 可分 即将ha(t)进行等间隔采样,使h(n)正好等于ha(t)的采样 为两种,即无限长冲激响应(IIR)滤波器和有限长冲激响 值,满足 h(n)=ha(nT)式中,T 是采样周期。 如果令Ha(s)是ha(t)的拉普拉斯变换,H(z)为h(n)的 Z 变换, 利用采样序列的 Z 变换与模拟信号的拉普拉斯 收稿日期: 2 0 0 8 - 0 1 - 1 4 44 | Techniques of Automation & Applications
通信与信息处理 Communication and Information Processing 《 自 动 化 技 术 与 应 用 》2 0 0 8 年 第 2 7 卷 第 9 期 变换的关系, 得 = zX )( sT = ez 1 T ¥= k sX ( a jk = ) s 1 T ¥= k X a s j p2 T k 使用冲激响应不变法将模拟滤波器的 S 平面变换成数 字滤波器的 Z 平面关系如图 1 所示。 H (s) a = + + A 0 B 0 2 + + 1 A s A s 2 2 B s B s 2 1 + + + + H ( z ) = H ( s ) | a , C s -= 1 z + 1 z 1 1 H ( z ) = + 1 a z +a z + 1 a 0 1+b z +b z + 2 1 2 2 1 2 k A s k k B s k 2 = T + + k a z k b z k k 双线性 变换法的频率变换关系如图 3 所示。 图 1 冲激响应不变法 S 平面到 Z 平面 的 映 射 关 系 2.2 双线性变换法的基本原理[2] 冲激响应不变法的主要缺点是产生频率响应的混 叠失真。这是因为从 S 平面到Z平面是多值的映射关系 所造成的。为了克服这一缺点, 可以采用非线性频率压 图 3 双线性变换法的频率变换关系 缩方法, 将整个频率轴上的频率范围压缩到±π / T 之 双线性变换法幅度和相位特性非线性映射关系如 间,在用 z=esT 转换到 z 平面上。这里用正切变换实现频 图 4 所示。 率压缩:式中 T 仍是采样间隔, 当Ω 1 从π /T 经过 0 变 化到π /T 时, Ω则由∞经过 0 变化到 + ∞,实现了 s 平 面上整个虚轴完全压缩到 s 1 平面上虚轴的±π /T 之间 的转换。这样便有 1 2 1s T e e 转换到 z 平面上,得到 w j 2 T 再通过 2 1 T 1 e= = ) t h s T 1 s T 1 = + s T 1 ( j w W = 2 T 1 2 w + s s tan 2 T 2 T W = j z 2 1 T 1 e e + = s 2 1 T 1 + z z 1 1 = z 则从 S 平面到 Z 平面的映射可表示如图 2 所示。这 样有效的避免了多值映射的发生,从而避免了混叠失真。 图 2 双线性变换法 S 平面到 Z 平面 的 映 射 关 系 令 s=j Ω,z=e j ω,有 图 4 双线性变换法幅度和相位特性关系 3 IIR 数字低通滤波器设计的步骤 (1) 确定数字低通滤波器的技术指标:在设计一个 滤波器之前, 必须首先根据工程实际的需要确定滤波器 的技术指标。在很多实际应用中, 数字滤波器常常被用 来实现选频操作。因此, 指标的形式一般在频域中给出 幅度和相位响应。幅度指标主要以两种方式给出。第一 种是绝对指标。它提供对幅度响应函数的要求, 一般应 用于 FIR 滤波器的设计。第二种指标是相对指标。它以 分贝值的形式给出要求。在工程实际中, 这种指标最受 欢迎。技术指标包括通带截止频率ω p、通带衰减α p、 阻带截止频率ω s、阻带衰减α s[3]。 (2) 确定了技术指标后,就可以建立一个目标的数 字滤波器模型。将数字低通滤波器的技术指标转换成 模拟低通滤波器的技术指标。 w = W 如果采用双线性变换法, 边界频率的转换关系为 T Techniques of Automation & Applications | 45 ł Ł - W - ¥ - ¥ - - - - W - - - - - - - - - - - - - - -
《自 动 化 技 术 与 应 用 》2 0 0 8 年 第 2 7 卷 第 9 期 通信与信息处理 Communication and Information Processing W = 2 T t a n ( 1 2 w ) %% 1.0000 1.9814 0.9817 %% 1.0000 2.0004 1.0000 (3) 按照模拟低通滤波器的技术指标设计模拟低 %%A = 1.0000 -0.9459 0.2342 通滤波器。 %% 1.0000 -1.0541 0.3753 (4) 将模拟滤波器 Ha(s),从 s 平面转换到 z 平面, %% 1.0000 -1.3143 0.7149 得到数字低通滤波器系统函数 H(z)。 % Plotting figure(1); subplot(1,1,1) 4 IIR 数字低通滤波器的设计与 matlab 仿真 利用双线性变换法设计 IIR 数字滤波器技术指标为 Wp=0.2 p ,Rp=1dB,Ws=0.3 p ,As=15dB;以 0.02 π为 采样间隔,设计数字滤波器在频率区间 [0,π/2]上的幅 [db,mag,pha,grd,w] = freqz_m(b,a); subplot(2,2,1); plot(w/pi,mag); title('Magnitude Response') xlabel('frequency in pi units'); ylabel('|H|'); axis ([0,1,0,1.1]) 频响应特性曲线。用所设计的滤波器仿真出滤波前后 set(gca,'XTickMode','manual','XTick',[0,0.2, 的信号波形图, 观察总结滤波作用与效果。 0.3,1]); 利用 M A T L A B 的 M 文件进行编程[ 4 ] , 程序如下: set(gca,'YTickmode','manual','YTick',[0,Attn, % BiLinear Transformation: % Butterworth Lowpass Filter Design % Digital Filter Specifications: Ripple,1]); grid subplot(2,2,3); plot(w/pi,db); title('Magnitude in dB'); wp = 0.2*pi; % digital Passband freq in Hz xlabel('frequency in pi units'); ylabel('decibels'); ws = 0.3*pi; % digital Stopband freq in Hz axis([0,1,-40,5]); Rp = 1; % Passband ripple in dB set(gca,'XTickMode','manual','XTick',[0,0.2, As = 15; % Stopband attenuation in dB 0.3,1]); set(gca,'YTickmode','manual','YTick',[-50,- % Analog Prototype Specifications: Inverse map- 15,-1,0]); grid ping for frequencies T = 1;Fs = 1/T;% Set T=1 OmegaP = (2/T)*tan(wp/2); OmegaS = (2/T)*tan(ws/2); ep = sqrt(10^(Rp/10)-1); Ripple = sqrt(1/(1+ep*ep)); Attn = 1/(10^(As/20)); s e t ( g c a , ' Y T i c k L a b e l M o d e ' , ' m a n u a l ' , 'YTickLabels',['50';'15';' 1';' 0']) subplot(2,2,2); plot(w/pi,pha/pi); title('Phase Response') xlabel('frequency in pi units'); ylabel('pi units'); axis([0,1,-1,1]); set(gca,'XTickMode','manual','XTick',[0,0.2, % Analog Butterworth Prototype Filter 0.3,1]); Calculation: set(gca,'YTickmode','manual','YTick',[-1,0, [cs,ds] = afd_butt(OmegaP,OmegaS,Rp,As); 1]); grid %%*** Butterworth Filter Order =6 subplot(2,2,4); plot(w/pi,grd); title('Group % Bilinear transformation: [b,a] = bilinear(cs,ds,T); [C,B,A] = dir2cas(b,a) %%C = 5.7969e-004 Delay') xlabel('frequency in pi units'); ylabel('Samples'); axis([0,1,0,10]) set(gca,'XTickMode','manual','XTick',[0,0.2, %%B = 1.0000 2.0183 1.0186 0.3,1]); set(gca,'YTickmode','manual','YTick',[0:2: 46 | Techniques of Automation & Applications
通信与信息处理 Communication and Information Processing 《 自 动 化 技 术 与 应 用 》2 0 0 8 年 第 2 7 卷 第 9 期 10]); grid 滤波器提供了一个可靠而有效的工作平台。 双线性变换法设计 IIR 数字滤波器仿真波形如图 5 所示。 参考文献: [1] 丁玉美,高西全.数字信号处理[M].西安:西安电子科技 大学出版社,2000. [2] 胡广书.数字信号处理:理论、算法与实现[M].北京:清 华大学出版社,1997. [3] 程佩清.数字信号处理[M].北京:清华大学出版社,2001. [4] 罗军辉.MATLAB7.0 在数字信号处理中的应用[M].北 京:机械工业出版社,2005. 图 5 双线性变换法设计 IIR 数字滤波器 仿 真 波 形 5 结束语 根据 IIR 数字滤波器的设计原理,提出了 IIR 数字滤 波器的快速设计方法,并在 matlab 环境下做出了 IIR 数 字滤波器的设计系统。该系统中指定的模拟滤波器为 作者简介: 刘凤举( 1 9 7 3 - ) , 男, 牡丹江人, 讲师, 研究方向: 巴特沃斯滤波器,该系统为快速、高效地设计 IIR 数字 嵌 入 式 系 统 设 计 、 惯 性 仪 表 技 术 。 (上接第 54 页) 用户的个人信息的隐私权,还要针对用户数据进行及时 响应。为了提高系统的可靠性避免用户信息的错误判 断, 系统还采用轮询机制, 在最短的时间内发回轮询确 认信号,确保安全可靠运行[4]。 6 结束语 本项目如能大量投入使用, 能有效地解决居民日常 保健、减轻医护人员工作量问题, 缓解目前紧张的医疗 资源,及时发现发病征兆,建立完整的健康档案,在家中 就可以享受专家监护与对话的便利。对于高突发病而 引起的死亡也可以得到相应的及时救助, 有利于减少此 类事件的死亡率。本系统的 G R P S 无线接入网络, 使得 用户的数据可以在任何连通的网络中都可以查询并且 存储。此系统不仅仅是健康监护系统、生命保障系统也 是一个良好的保健信息浏览平台, 让普通的大众的生活 质量得到进一步的提高。 参考文献: [1] 王义山.多参数监护仪血压参数检验校准方法探讨[J]. 中国计量,2008,(2):81-82. [2] 罗文志.基于 ARM 的血氧饱和度检测仪的研究[D].广 西:广西师范大学,2007. [3] 孙秋野,冯健步.ARM 嵌入式系统开发典型模块[M].北 京:人民邮电出版社,2006. [4] 黄练,谢存禧,张铁.基于 ARM 的多生理参数嵌入式监 护系统[J].微计算机信息,2007,(23):116-118.护系统[J].微计算 机信息,2007,(23):116-118. 作者简介: 郑健( 1 9 8 0 - ) , 男, 助教, 在职研究生,主要从事 计 算 机 实 践 教 学 与 科 研 。 Techniques of Automation & Applications | 47
分享到:
收藏