位置:51电子网 » 技术资料 » 其它综合

一种改进型的FIR数字滤波器设计

发布时间:2008/5/29 0:00:00 访问次数:969



在数字信号处理中,滤波占有极其重要的作用,数字滤波器是谱分析、雷达信号处理、通信信号处理应用中的基本处理算法。目前常用的滤波器设计方法普遍采用matlab仿真,dsp实现。但这一传统设计方法需要的开发周期较长,且设计过程反复进行,非常不便。

针对这一问题,出现了系统级设计方法的构想将matlab算法仿真和dsp的实现融合在一起。文中应用matlab link for ccs development tools进行系统级设计,来完成fir滤波器的设计。

1 fir数字滤波器设计的基本步骤

数字滤波器根据其冲激响应函数的时域特性,可分为2种,即无限长冲激响应(iir)滤波器和有限长冲激响应(fir)滤波器。fir系统不像iir系统那样易取得较好的通带和阻带衰减特性,要取得较好的衰减特性,一般要求h(z)阶次要高,也即m要大。fir系统有自己突出的优点:系统总是稳定的;易实现线性相位;允许设计多通带(或多阻带)滤波器,后两项都是iir系统不易实现的。fir数字滤波器的设计方法有多种,如窗函数设计法、频率采样法和chebyshev逼近法等。随着matlab软件尤其是matlab的信号处理工作箱的不断完善,不仅数字滤波器的计算机辅助设计有了可能,而且还可以使设计达到最优化。

fir数字滤波器设计的基本步骤如下[1]

(1)确定技术指标

在设计一个滤波器之前,必须首先根据工程实际的需要确定滤波器的技术指标。在很多实际应用中,数字滤波器常被用来实现选频操作。因此,指标的形式一般在频域中给出幅度和相位响应。幅度指标主要以2种方式给出。第一种是绝对指标。他提供对幅度响应函数的要求,一般应用于fir滤波器的设计。第二种指标是相对指标。他以分贝值的形式给出要求。本文中滤波器的设计就以线性相位fir滤波器的设计为例。

(2)逼近

确定了技术指标后,就可以建立一个目标的数字滤波器模型(通常采用理想的数字滤波器模型)。之后,利用数字滤波器的设计方法(窗函数法、频率采样法等),设计出一个实际滤波器模型来逼近给定的目标。

(3)性能分析和计算机仿真

上两步的结果是得到以差分或系统函数或冲激响应描述的滤波器。根据这个描述就可以分析其频率特性和相位特性,以验证设计结果是否满足指标要求;或者利用计算机仿真实现设计的滤波器,再分析滤波结果来判断。

2 fir数字滤波器的传统设计方法

传统的fir数字滤波器设计流程分为2个部分:开发设计和产品实现。在开发设计部分完成方案设计和算法设计与验证,一般用matlab语言进行仿真,当仿真结果满意时,再进入产品的实现阶段。在实现阶段,将开发设计的阶段的算法用c/c++或者汇编语言实现,在硬件的单片机或dsp目标板上实现。

下面以电力系统中的用于滤除高次谐波的低通滤波器为例,介绍设计线性相位fir低通数字滤波器的传统设计方法。

2.1 fir滤波器的matlab仿真[2]

在电力分析实验仪中,只要求分析20次以下的谐波,30次以上的谐波由抗混叠滤波器滤波,20-30次的谐波则由数字滤波器滤除。所以电力系统的低通滤波器的技术指标如下:通带截止频率为1 000hz,阻带截止频率为1 500hz,通带波纹为0.001,阻带波纹为0.001,采样频率为4 000hz,阻带衰减小于50 db,因此设计中采用汉明窗比较合适。

fir滤波器的设计用matlab数字信号处理软件包提供的专用函数来直接求取是非常方便的。

先求出滤波器的阶数n:n=ceil(n)+1,通过相关程序仿真可以计算出n=28。

滤波器h(n)的系数和他的幅频特性:

调用格式为:b=fir1(n,wc,’ftype’,window)或b=fir2(n,wc,m,window);编制程序并运行,表1为计算所得滤波器系数,图1所示为设计的低通滤波器频率响应曲线。由此可见基本满足性能指标。h(n)的系数见表1。

输入一混叠信号来测试所设计滤波器的功能:输入信号是频率为f1=400hz和f2=1 800hz的正弦交流信号。

s1=sin(400×2πt);

s2=sin(1800×2πt);

s=s1+s2

图2为混叠信号波形s=s1+s2

图3经滤波器滤波后的波形。由此可见,仿真结果基本令人满意。然后用dsp来实现系统。

将上述系统存盘,建立一个数据文件fir01.txt,将matlab中产生的fir01.txt文件,通过执行转换命令,将自动变换为firdata.inc滤波器系数文件。转换命令为(在matlab下):!firdata fic01.txt

2.2 fir数字滤波器的c54实现

tms320c5416有很强的数据处理功能[3],带数据移位的加法指令macd在循环执行时,一但流水线



在数字信号处理中,滤波占有极其重要的作用,数字滤波器是谱分析、雷达信号处理、通信信号处理应用中的基本处理算法。目前常用的滤波器设计方法普遍采用matlab仿真,dsp实现。但这一传统设计方法需要的开发周期较长,且设计过程反复进行,非常不便。

针对这一问题,出现了系统级设计方法的构想将matlab算法仿真和dsp的实现融合在一起。文中应用matlab link for ccs development tools进行系统级设计,来完成fir滤波器的设计。

1 fir数字滤波器设计的基本步骤

数字滤波器根据其冲激响应函数的时域特性,可分为2种,即无限长冲激响应(iir)滤波器和有限长冲激响应(fir)滤波器。fir系统不像iir系统那样易取得较好的通带和阻带衰减特性,要取得较好的衰减特性,一般要求h(z)阶次要高,也即m要大。fir系统有自己突出的优点:系统总是稳定的;易实现线性相位;允许设计多通带(或多阻带)滤波器,后两项都是iir系统不易实现的。fir数字滤波器的设计方法有多种,如窗函数设计法、频率采样法和chebyshev逼近法等。随着matlab软件尤其是matlab的信号处理工作箱的不断完善,不仅数字滤波器的计算机辅助设计有了可能,而且还可以使设计达到最优化。

fir数字滤波器设计的基本步骤如下[1]

(1)确定技术指标

在设计一个滤波器之前,必须首先根据工程实际的需要确定滤波器的技术指标。在很多实际应用中,数字滤波器常被用来实现选频操作。因此,指标的形式一般在频域中给出幅度和相位响应。幅度指标主要以2种方式给出。第一种是绝对指标。他提供对幅度响应函数的要求,一般应用于fir滤波器的设计。第二种指标是相对指标。他以分贝值的形式给出要求。本文中滤波器的设计就以线性相位fir滤波器的设计为例。

(2)逼近

确定了技术指标后,就可以建立一个目标的数字滤波器模型(通常采用理想的数字滤波器模型)。之后,利用数字滤波器的设计方法(窗函数法、频率采样法等),设计出一个实际滤波器模型来逼近给定的目标。

(3)性能分析和计算机仿真

上两步的结果是得到以差分或系统函数或冲激响应描述的滤波器。根据这个描述就可以分析其频率特性和相位特性,以验证设计结果是否满足指标要求;或者利用计算机仿真实现设计的滤波器,再分析滤波结果来判断。

2 fir数字滤波器的传统设计方法

传统的fir数字滤波器设计流程分为2个部分:开发设计和产品实现。在开发设计部分完成方案设计和算法设计与验证,一般用matlab语言进行仿真,当仿真结果满意时,再进入产品的实现阶段。在实现阶段,将开发设计的阶段的算法用c/c++或者汇编语言实现,在硬件的单片机或dsp目标板上实现。

下面以电力系统中的用于滤除高次谐波的低通滤波器为例,介绍设计线性相位fir低通数字滤波器的传统设计方法。

2.1 fir滤波器的matlab仿真[2]

在电力分析实验仪中,只要求分析20次以下的谐波,30次以上的谐波由抗混叠滤波器滤波,20-30次的谐波则由数字滤波器滤除。所以电力系统的低通滤波器的技术指标如下:通带截止频率为1 000hz,阻带截止频率为1 500hz,通带波纹为0.001,阻带波纹为0.001,采样频率为4 000hz,阻带衰减小于50 db,因此设计中采用汉明窗比较合适。

fir滤波器的设计用matlab数字信号处理软件包提供的专用函数来直接求取是非常方便的。

先求出滤波器的阶数n:n=ceil(n)+1,通过相关程序仿真可以计算出n=28。

滤波器h(n)的系数和他的幅频特性:

调用格式为:b=fir1(n,wc,’ftype’,window)或b=fir2(n,wc,m,window);编制程序并运行,表1为计算所得滤波器系数,图1所示为设计的低通滤波器频率响应曲线。由此可见基本满足性能指标。h(n)的系数见表1。

输入一混叠信号来测试所设计滤波器的功能:输入信号是频率为f1=400hz和f2=1 800hz的正弦交流信号。

s1=sin(400×2πt);

s2=sin(1800×2πt);

s=s1+s2

图2为混叠信号波形s=s1+s2

图3经滤波器滤波后的波形。由此可见,仿真结果基本令人满意。然后用dsp来实现系统。

将上述系统存盘,建立一个数据文件fir01.txt,将matlab中产生的fir01.txt文件,通过执行转换命令,将自动变换为firdata.inc滤波器系数文件。转换命令为(在matlab下):!firdata fic01.txt

2.2 fir数字滤波器的c54实现

tms320c5416有很强的数据处理功能[3],带数据移位的加法指令macd在循环执行时,一但流水线

相关IC型号

热门点击

 

推荐技术资料

罗盘误差及补偿
    造成罗盘误差的主要因素有传感器误差、其他磁材料干扰等。... [详细]
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!