研讨滤波利用FDAtool实现数字滤波策略

更新时间:2024-03-21 点赞:5754 浏览:18456 作者:用户投稿原创标记本站原创

摘要:实现由滤波算法仿真到硬件平台数字滤波移植,通过FDAtool工具包进行FIR和IIR各种类型数字滤波器设计,分析了适合移植的FIR和IIR两种滤波器结构,通过对其实验验证,可实现对各种不同类型、不同阶数滤波器的设计,且效果较好。
关键词:数字滤波器;MATLAB;硬件实现
1674-9324(2013)05-0087-02 一、引言
在数字信号处理中,对于信号变换和滤波算法研究通常采用MATLAB仿真,MATLAB具备卓越的数值计算能力,它还提供了专业水平的符号计算、文字处理、可视化建模仿真和实时控制等功能。当前数字滤波器设计在教学和实验中采用仿真设计,利用MATLAB函数进行各种滤波器设计,如何移植的方法和过程没有介绍,理论教学和实际应用严重脱节,本文利用FDAtool滤波器设计工具包,通过对滤波器的参数进行设置,生成实际应用中所需的参数,并进行编程移植,这样极大缩短了研究人员开发产品的周期,提高了设计效率。

二、数字滤波器原理

(一)FIR滤波器实现原理

FIR滤波器是指系统的单位冲击响应仅在有限的范围内有非零值的滤波器。FIR系统只有零点,因此这类系统不像IIR系统那样容易取得比较好的通带和阻带衰减特性。但FIR系统有自己突出的优点,就是易实现精确地线性相位,FDAtool适合的滤波器结构为直接型结构,如图1所示。
对应FDAtool工具箱对应FIR滤波器为卷积型结构,关键求出系统单位冲击响应h(n)。系统函数为:
式中,N为滤波器阶数,x(n)为输出信号,h(n)为滤波器系数,y(n)为滤波后信号。
基于微处理器平台编写程序用迭代法简单方便,可把公式(2)展开,初始输出书籍前N个点数据有一定误差,当输入数据点数大于滤波器阶数N时,输出滤波指标达到系统要求。

(二)IIR滤波器实现原理

IIR数字滤波器在设计上借助模拟滤波器巴特沃斯、契比雪夫和椭圆滤波器等,对计算工具的要求不高。在设计一个IIR数字滤波器时,根据指标先写出模拟滤波器的公式,然后通过一定的变换,将模拟滤波器的公式转换成数字滤波器的公式。IIR数字滤波器的相位特性不好控制,对相位要求较高时,需加相位校准网络。
FDAtool工具箱对应IIR滤波器为二阶滤波器级联型结构,如图2所示。通过二阶滤波器级联可得任意阶滤波器设计。
IIR滤波器系统函数为:
IIR滤波器通过每级迭代方式所得。

二、FDAtool求解系数

(一)FIR滤波器实现方法

借助FDAtool工具箱,设置滤波器参数,点击菜单栏Analysis下Filter coefficienst可以看到所需系数单位样值响应h(n),代入差分方程公式(2)即可。通过Targets菜单选择导出数组h(n),设计灵活方便。

(二)IIR滤波器实现方法

IIR滤波器设计时的阶数不是由设计者指定的,而是根据设计者输入的各个滤波器参数(截止频率、通带滤纹、阻带衰减等),由软件设计出满足这些参数的最低滤波器阶数。在MATLAB下设计不同类型IIR滤波器均有与之对应的函数用于阶数的选择。列出分子和分母系数,对应分子系数为1、β1l、β2l,分母系数为1、α1l、α2l,代入公式(5)可求出一个二阶滤波器输出yl(n),前一个滤波器的输出作为下一个滤波器输入x(n),每一级代入不同系数,可得出整体滤波器输出。
三、结论
对于实际工程要求,用工具箱实现各型滤波器设计,把得到的不同系数代入硬件实现环境,脱离matlab常用实现函数。本例采用移植效果经STM32单片机进行采集、编写差分方程程序、DA输出,经示波器演示效果明显,同理论设计结果一致,并缩短了研究的时间,为进一步实现数字信号处理打下良好的基础。
参考文献:
程佩青.数字信号处理[M].北京:清华大学出版社,2007.
张明照.应用MATLAB实现信号分析和处理[M].北京:科技出版社,2005.
[3]陈桂明,张明照,戚红雨.应用MATLAB语言处理数字信号与数字图像[M].北京:科学出版社,2000.
[4]袁小平,王艳芬,史良.基于Matlab的数字信号处理课程的实验教学[J].实验室研究与探索,2002,21(1):58-60.
[5]席在芳,欧青立,曾照福.IIR数字滤波器设计实验教学的探索与实践[J].实验技术与管理,2008,5(8):48-50.
[6]申艳,陈后金,薛健.基于Matlab加噪语音的FIR滤波器设计[J].电气电子教学,2011,23(2):41-44.
[7]席在芳,周少武,欧青立.基于Simulink的FIR数字滤波器设计实验教学探索与实践[J].实验技术与管理,2摘自:毕业论文选题www.618jyw.com
010,27(5):81-83.
[8]席在芳,欧青立,曾照福.IIR数字滤波器设计实验教学的探索与实践[J].实验技术与管理,2008,25(8):49-51.
[9]王易炜,张金鹏,王龙.基于MATLAB的数字滤波器设计及其在数据处理中的应用[J].航空兵器,2011,8(4):43-46.
[10]维纳·K·恩格尔.数字信号处理使用MATLAB[M].刘树棠,译.西安:西安交通大学出版社,2002.
基金项目:本课题为东北石油大学教育教学改革工程项目;校级重点课程改革项目
作者简介:韩建(1976-),男,吉林永吉人,硕士研究生,副教授,主要从事数学信号处理教学及油井信号检测方面研究。
相关文章
推荐阅读

 发表评论

共有3000条评论 快来参与吧~