文档库 最新最全的文档下载
当前位置:文档库 › DSP自适应滤波器算法研究报告

DSP自适应滤波器算法研究报告

DSP自适应滤波器算法研究报告
DSP自适应滤波器算法研究报告

基于DSP的自适应滤波器的算法研究

梅娟 201810302003

要:随着DSP技术的高速发展,人们对信号处理的实时性、准确性和灵活性的要求越来越高,DSP技术在信号处理中的地位也越来越重要。自适应滤波器是一种复杂的算法,设计它是为了在均衡信道,抵消回波,增强谱线,抑制噪声等方面有所应用。而自适应滤波器的实现主要采用最小均方误差算法完成。自适应算法通过调整滤波器系数来实现可以更好地跟踪信号的变化,最终实现自适应滤波。

关键词:自适应滤波器;数字信号处理器;最小均方误差算法;Matlab仿真

Algorithm Research of Adaptive Filter and DSP

Simulation Realization

Mei Juan 201810302003

Abstract: With the rapid development of DSP technique,there is an increasing requirement of real time processing,accuracy and flexibility in signal processing.DSP technique plays a more important role in signal processing.Adaptive filters havebeen implemented with some complex algorithms in the past decade.Designing it is for the balanced channel,counterbalances the echo,the enhancement spectral line,aspects noise elimination has the application and so on.But the realization of adaptive filtermainly uses the least mean square to complete.The least mean square is realized by adjusting filter and can track signal muchbetter,finally realizes the adaptive filtering.

Keywords: adaptive filter。digital signal processor。least mean square error。matlab simulation

0 引言

滤波是电子信息处理领域的一种最基本而又极其重要的技术。在有用信号的传输过程中,通常会受到噪声或干扰的污染。利用滤波技术可以从复杂的信号中提取所需要的信号,同时抑制噪声或干扰信号,以便更有效地利用原始信号。滤波器实际上是一种选频系统,它对某些频率的信号予以很小的衰减,让该部分信号顺利通过。而对其他不需要的频率信号则予以很大的衰减,尽可能阻止这些信号通过。在电子系统中滤波器是一种基本的单元电路,使用很多,技术也较为复杂,有时滤波器的优劣直接决定产品的性能,所以很多国家非常重视滤波器的理论研究和产品开发。

1 自适应滤波器简介

自适应滤波器属于现代滤波器的范畴,自适应滤波器是相对固定滤波器而言的,固定滤波器属于经典滤波器,它滤波的频率是固定的,自适应滤波器滤波的频率则是自动适应输入信号而变化的,所以其适用范围更广。在没有任何关于信号和噪声的先验知识的条件下,自适应滤波器利用前一时刻已获得的滤波器参数来自动调节现时刻的滤波器参数,以适应信号和噪声未知或随机变化的统计特性,从而实现最优滤波。所谓自适应滤波,就是利用前一时刻已获得的滤波器参数等结果,自动地调节现时刻的滤波器参数,以适应信号和噪声未知的或随时间变化的统计特性,从而实现最优滤波。自适应滤波器实质上就是一种能调节其自身传输特性以达到最优化的维纳滤波器。

2 自适应滤波原理

自适应滤波器的特性变化是由自适应算法通过调整滤波器系数来实现的。一般而言,自适应滤波器由两部分组成,一是滤波器结构,二是调整滤波器系数的自适应算法。自适应滤波器的结构采用FIR或IIR结构均可,由于IIR滤波器存在稳定性问题,因此一般采用FIR滤波器作为自适应滤波器的结构。图1给出了自适应滤波器的一般结构。图1为自适应滤波器结构的一般形式,图中x(n>为输入信号,通过参数可调的数字滤波器后产生输出信号y(n>,将输出信号y(n>与标准信号(或者为期望信号>d(n>进行比较,得到误差信号e(n>。e(n>和x(n>通过自适应算法对滤波器的参数进行调整,调整的目的使得误差信号e(n>最小。

图1 自适应滤波器的一般结构

自适应滤波器设计中最常用的是FIR横向型结构。图2是横向型滤波器的结构示意图。

图2 横向型滤波器的结构示意图

其中:为自适应滤波器的输入。为自适应滤波器的冲激

响应:。为自适应滤波器的输出:

3 自适应滤波算法

自适应滤波器除了包括一个按照某种结构设计的滤波器,还有一套自适应的算法。自适应算法是根据某种判断来设计的。自适应滤波器的算法主要是以各种判据条件作为推算基础的。通常有两种判据条件:最小均方误差判据和最小二乘法判据。LMS算法是以最小均方误差为判据的最典型的算法,也是应用最广泛的一种算法。最小均方误差(Least Mean Square,LMS>算法是一种易于实现、性能稳健、应用广泛的算法。所有的滤波器系数调整算法都是设法使接近,所不同的只是对

于这种接近的评价标准不同。LMS算法的目标是通过调整系数,使输出误差序列的均方值最小化,并且根据这个判据来修

改权系数,该算法因此而得名。误差序列的均方值又叫/均方误差0(M ean Square Error,MSE>。理想信号与滤波器输出之差的期望值最小,

并且根据这个判据来修改权系数。由此产生的算法称为LMS。

均方误差表示为:对于横向结构的滤

波器,代入的表达式:其中:

为的自相关矩阵,它是输入信号采样值间的相

关性矩阵。为互相关矢量,代表理想信号与输

入矢量的相关性。

在均方误差E达到最小时,得到最佳权系数

。它应满足下式:=0

这是一个线形方程组,如果R矩阵为满秩的,存在,可得到权系数的最佳值满足:。用完整的矩阵表示为:

显然为的自相关值,

为与互相关值。在有些应用中,把输入信号的采样值分成相

同的一段(每段称为一帧>,再求出R,P的估计值得到每帧的最佳权系数。这种方法称为块对块自适应算法。如语音信号的线性预测编码LP C就是把语音信号分成帧进行处理的。R,P的计算,要求出期望值E,在现实运算中不容易实现,为此可通过下式进行估计:

用以上方法获得最佳W*的运算量很大,对于一些在线或实时应用的场合,无法满足其时间要求。大多数场合使用迭代算法,对每次采样值就求出较佳权系数,称为采样值对采样值迭代算法。迭代算法可以避

免复杂的和P的运算,又能实时求得近似解,因而切实可行。LMS 算法是以最快下降法为原则的迭代算法,即矢量是矢量按

均方误差性能平面的负斜率大小调节相应一个增量:

,这个是由系统稳定性和迭代运算收敛速度决

定的自适应步长。为次迭代的梯度。对于LMS算法为下式

的斜率:

由上式产生了求解最佳权系数W*的两种方法,一种是最陡梯度法。其思路为:设计初始权系数,用迭代公式

计算,到与误差小于规定范围。其中计算可用估计值

表达式:

上式K取值应足够大。如果用瞬时来代替上面对

的估计运算,就产生了另一种算法—

随机梯度法,即Widrow-Hoff的LMS算法。此时迭代公式为:

以后讨论的LMS算法都是基于Widrow-

Hoff的LMS算法。上式的迭代公式假定滤波器结构为横向结构。对于对称横向型结构也可推出类似的迭代公式:

4 自适应滤波算法的理论仿真

使用Matlab编程,采用自适应滤波器技术实现信噪分离,也就是去噪。程序如下:

lear all。

clf。

signal = cos(2*pi*0.055*[0:1000-1]c>。 %产生信号

noise=randn(1,1000>。 %产生噪声

nfilt=fir1(11,0.4>。 %11阶低通FIR滤波器

fnoise=filter(nfilt,1,noise>。 %相关噪声数据

d=signal.c+fnoise。 %信号和噪声叠加

w0 = nfilt.c-0.01。 %设置初始化滤波器系数

mu = 0.05。 %设置算法的步长

s=initse(w0,mu>。 % adaptse函数的初始化参数

[y,e,s] = adaptse(noise,d,s>。

plot(0:199,signal(1:200>,0:199,e(1:200>>。

程序运行的结果如图3所示。通过CCS软件环境,把滤波程序烧录

到DSP芯片中,在CCS DSK C5000环境下输出仿真结果:输入信号为余弦信号和随机噪声的叠加。程序正确运行后,观察运行结果,得出如图4,图5所示的仿真图。

图3 Matlab 仿真图

图4 余弦信号和随机噪声叠加的输入信号

图5 输出信号

5 结束语

通过仿真实验结果表明:自适应滤波器却能很好地消除叠加在信号上的噪声,虽然也可以用固定滤波器来实现,但设计固定滤波器时需

要预先知道信号和噪声的统计特性,而自适应滤波器则不需要,并且当信号和噪声的统计特性发生变化时,自适应滤波器也能自动地调节其冲激响应特性来适应新的情况,因此,自适应滤波器具有更加广阔的应用前景。

[参考文献]

[1]胡广书.数字信号处理—

理论、算法与实现[M].北京:清华大学出版社,1998.

[2]王世一.数字信号处理[M].北京:北京理工大学出版社,1999.

[3]程卫国,冯峰,姚东,徐昕.Matlab启用指南[M].北京:人民邮电出版社,2000.

[4]邓重一.滤波器的过去、现在与未来[J].世界电子元器件,2003(

4>:48-50.

[5]侯志林.过程控制与自动化仪表[M].北京:机械工业出版社,199 8.

[6]谭浩强,吴功宜.计算机教程[M].2版.北京:电子工业出版社,200 1.

[7]于海生.微型计算机控制技术[M].北京:清华大学出版社,1998.

[8]程佩青.数字信号处理教程[M].北京:清华大学出版社,2005.

[9] Simon Haykin.Adaptive Filter Theory[M].Beijing:Publishing House of Electronics Industry,2002.

[10] Alexander V Anisimov,Vadim Yu Teplov,Nikolai I Silkin.System of Thermostatic Control on Peltier Thermopiles

andMicroprocessor Control for a Portable NMR Relax—ometer[J].Journal of Magnetic Resonance,2002,154:176-180.

几种非线性滤波算法的研究-内附程序

2017 年秋季学期研究生课程考核 (读书报告、研究报告) 考核科目:雷达系统导论 学生所在(系):电子与信息工程学院 学生所在学科:电子与同学工程 学生姓名: 学号: 学生类别: 考核结果阅卷人 第 1 页(共页)

几种非线性滤波算法的介绍与性能分析 作者姓名:学号: 专业院系:电信学院电子工程系 电子邮件: 摘要—非线性滤波算法在雷达目标跟踪中有着重要的应用,对雷达的跟踪性能有着至关重要的影响。好的滤波算法有利于目标航迹的建立及保持,能够得到较精确的目标位置,为发现目标后的后续工作提供可靠的数据依据。本文重点介绍了雷达数据处理中的几种非线性滤波算法:扩展卡尔曼滤波(EKF)、不敏卡尔曼滤波(UKF)、粒子滤波(PF),并且给出了一个利用这三种算法进行数据处理的一个实例,通过这个实例对比分析了这三种算法的性能以及优劣。 关键字—非线性滤波算法;扩展卡尔曼滤波;不敏卡尔曼滤波;粒子滤波; I.概述(一级表题格式) 在雷达对目标进行跟踪前要先对目标进行检测。对于满足检测条件的目标就需要进行跟踪,在跟踪的过程中可以利用新获得的数据完成对目标的进一步检测比如去除虚假目标等,同时利用跟踪获得数据可以进一步完成对目标动态特性的检测和识别。因此对目标进行准确的跟踪是雷达性能的一个重要指标。在检测到满足条件的目标后,根据目标运动状态建立目标运动模型,然后对目标跟踪算法进行设计,这是雷达目标跟踪中的核心部分。 目前主要的跟踪算法包括线性自回归滤波,两点外推滤波、维纳滤波、- αβ滤波、加权最小二乘滤波、维纳滤波和卡尔曼滤波[1]。对于线性系统而言最优滤波的方法就是卡尔曼滤波,卡尔曼滤波是线性高斯模型下的最优状态估计算法。但是实际问题中目标的运动模型往往不是线性的,因此卡尔曼滤波具有很大的局限性。目前主要用的非线性滤波算法可以分为高斯滤波和粒子滤波[2]。不敏卡尔曼滤波和扩展卡尔曼滤波就是高斯滤波中的典型代表,也是应用相对较为广泛的。粒子滤波的应用范围比高斯滤波的适用范围要广,对于系统状态非线性,观测模型非高斯等问题都有很好的适用性。本文具体分析阐述了扩展卡尔曼滤波算法,不敏卡尔曼滤波算法,粒子滤波算法,并且通过一个实例利用仿真的方法分析了这三种算法在滤波性能上的优劣,最后对这三种算法做了一定的总结。 我本科毕业设计题目为《基于历史数据的路径生成算法研究》,由于我是跨专业保研到电信学院,该课题所研究内容不属于雷达系统研究范围,是一种城市路网最快路径生成算法。 II.几种非线性滤波算法 A.扩展卡尔曼滤波 扩展卡尔曼滤波是将非线性系统转换为近似的线性系统的一种方法,其核心思想是围绕滤波值将非线性函数展开成泰勒级数并略去二阶及以上的项,得到一个近似的线性化模型,然后应用卡尔曼滤波完成状态估计。 扩展卡尔曼滤波状态空间模型: k k k w x f+ = + ) ( x 1 状态方程 k k k v x h+ =) ( z观测方程 其中(.) f和(.) h为非线性函数 在扩展卡尔曼滤波中,状态的预测以及观测值的预测由非线性函数计算得出,线性卡尔曼滤波中的状态转移矩阵A阵和观测矩阵H阵由f和h函数的雅克比矩阵代替。 对 (.) f和(.) h Taylor展开,只保留一次项有: ) ? ( ) ?( ) ( k k k k k x x A x f x f- + ≈ ) ? ( ) ?( ) ( k k k k k x x H x h x h- + ≈ 其中: k k x x k k dx df A ?= =为f对 1- k x求导的雅克比矩阵 k k x x k k dx dh H ?= =为h对 1- k x求导的雅克比矩阵 ) ?( ? 1-k k x f x=,于是可以得出: k k k k k k k w x A x f x A x+ - + ≈ + ) ? ) ?( ( 1 k k k k k k k v x H x h x H z+ - + ≈ + ) ? ) ?( ( 1 通过以上变换,将非线性问题线性化。接下来EKF 滤波过程同线性卡尔曼滤波相同,公式如下: )) | (?( ) |1 ( X?k k X f k k= + ) ( ) ( ) | ( ) ( ) |1 (P k Q k k k P k k k+ Φ' Φ = + )1 ( )1 ( ) |1 ( )1 ( )1 (S+ + + ' + + = +k R k H k k P k H k )1 ( )1 ( ) |1 ( )1 ( K1+ + ' + = +-k S k H k k P k

常用的8种数字滤波算法

常用的8种数字滤波算法 摘要:分析了采用数字滤波消除随机干扰的优点,详细论述了微机控制系统中常用的8种数字滤波算法,并讨论了各种数字滤波算法的适用范围。 关键词:数字滤波;控制系统;随机干扰;数字滤波算法 1 引言 在微机控制系统的模拟输入信号中,一般均含有各种噪声和干扰,他们来自被测信号源本身、传感器、外界干扰等。为了进行准确测量和控制,必须消除被测信号中的噪声和干扰。噪声有2大类:一类为周期性的,其典型代表为50 Hz 的工频干扰,对于这类信号,采用积分时间等于20 ms整倍数的双积分A/D转换器,可有效地消除其影响;另一类为非周期的不规则随机信号,对于随机干扰,可以用数字滤波方法予以削弱或滤除。所谓数字滤波,就是通过一定的计算或判断程序减少干扰信号在有用信号中的比重,因此他实际上是一个程序滤波。 数字滤波器克服了模拟滤波器的许多不足,他与模拟滤波器相比有以下优点: (1)数字滤波器是用软件实现的,不需要增加硬设备,因而可靠性高、稳定性好,不存在阻抗匹配问题。 (2)模拟滤波器通常是各通道专用,而数字滤波器则可多通道共享,从而降低了成本。 (3)数字滤波器可以对频率很低(如0.01 Hz)的信号进行滤波,而模拟滤波器由于受电容容量的限制,频率不可能太低。 (4)数字滤波器可以根据信号的不同,采用不同的滤波方法或滤波参数,具有灵活、方便、功能强的特点。 2 常用数字滤波算法 数字滤波器是将一组输入数字序列进行一定的运算而转换成另一组输出数字序列的装置。设数字滤波器的输入为X(n),输出为Y(n),则输入序列和输出序列之间的关系可用差分方程式表示为: 其中:输入信号X(n)可以是模拟信号经采样和A/D变换后得到的数字序列,也

基于DSP 的FIR滤波器的设计

基于TMS320VC5416 的FIR 数字滤波器设计与实现 论文摘要:在现代电子系统中,数字滤波器在语音处理、图像处理、模式识别以及各种随机信号分析中有着广泛的应用,且其波形传递系统中都越来越多的要求信道具有线性的相位特性,在这方面FIR滤波器具有独到的优点,它可以在幅度特性随意设计的同时保证精确严格的线性相位。本文以窗函数法设计线性相位FIR数字滤波器为例,研究有限冲击响应(FIR)滤波器的基本原理,介绍用MATLAB工具软件设计数字滤波器的方法和如何在定点TMS320VC5416 DSP芯片上设计实现连续数字滤波器。 关键词:FIR滤波器,TMS320V5416 一. 课题的目的以及意义 随着集成电路技术的发展,各种新型的大规模和超大规模集成电路不断涌现集成电路技术与计算机技术结合在一起,使得对数字信号处理系统功能的要求越来越强。 DSP 技术就是基于VLSI技术和计算机技术发展起来的一门重要技术,DSP 技术已在通信、控制信号处理、仪器仪表、医疗、家电等很多领域得到了越来越广泛的应用.在数字信号处理中数字滤波占有极其重要的地位。数字滤波在语音信号、图象处理模式识别和谱分析等领域中的一个基本的处理技术。数字滤波与模拟滤波相比数字滤波具有很多突出的优点,主要是因为数字滤波器是过滤时间离散信号的数字系统,它可以用软件(计算机程序)或用硬件来实现,而且在两种情况下都可以用来过滤实时信号或

非实时信号。尽管数字滤波器这个名称一直到六十年代中期才出现,但是随着科学技术的发展及计算机的更新普及,数字滤波器有着很好的发展前景。同时它也有完全取代模拟滤波器的时候,原因是数字滤波没有漂移,它能处理低频信号,数字滤波的频率响应特征可做成极接近于理想的特性,它可以做成没有插入损耗和有线性相位特性,可相当简单地获得自适应滤波,滤波器的设计者可以控制数字字长,因而可以精确地控制滤波器的精度,其中的道理是数字滤波随着滤波器参数的改变,很容易改变滤波器的性能。这一特点就能允许我们用一种程序滤波器来完成多重滤波任务。滤波器对幅度和相位特性的严格要求,可以避免模拟滤波器所无法克服的电压漂移、温度漂移和噪声等问题。用可编程DSP芯片实现数字滤波可通过修改滤波器的参数十分方便地改变滤波器的特性,因此我们有必要对滤波器的设计方法进行研究,理解其工作原理优化设计方法,设计开发稳定性好的滤波器系统。我们将通过DSP设计平台来实现较为重要的“FIR和自适应滤波器系统”并实现了它们的应用系统以TMS320VC5416芯片为核心的硬件电路,实现能独立完成滤波功能的系统从而通过本课题的研究。掌握滤波器的设计技术和原理能为在通信领域、信号处理领域等诸多领域中对数字滤波器的设计提供技术和准备。本科题的研究将为今后设计以DSP为核心部件的嵌入式系统集成提供技术准备,这不仅具有重要的理论意义同时还具有重要的现实意义。 二、FIR滤波器的DSP实现的技术指标及性能

数字滤波算法

几种简单的数字滤波 假定从8位AD中读取数据(如果是更高位的AD可定义数据类型为int),子程序为get_ad(); 1、限副滤波 /* A值可根据实际情况调整 value为有效值,new_value为当前采样值 滤波程序返回有效的实际值*/ #define A 10 char value; char filter() { char new_value; new_value = get_ad(); if ( ( new_value - value > A ) || ( value - new_value > A ) return value; return new_value; } 2、中位值滤波法 /* N值可根据实际情况调整 排序采用冒泡法*/ #define N 11 char filter() { char value_buf[N]; char count,i,j,temp; for ( count=0;countvalue_buf[i+1] ) { temp = value_buf[i]; value_buf[i] = value_buf[i+1]; value_buf[i+1] = temp; } } }

return value_buf[(N-1)/2]; } 3、算术平均滤波法 /* */ #define N 12 char filter() { int sum = 0; for ( count=0;count

几种卡尔曼滤波算法理论

自适应卡尔曼滤波 卡尔曼滤波发散的原因 如果卡尔曼滤波是稳定的,随着滤波的推进,卡尔曼滤波估计的精度应该越来越高,滤波误差方差阵也应趋于稳定值或有界值。但在实际应用中,随着量测值数目的增加,由于估计误差的均值和估计误差协方差可能越来越大,使滤波逐渐失去准确估计的作用,这种现象称为卡尔曼滤波发散。 引起滤波器发散的主要原因有两点: (1)描述系统动力学特性的数学模型和噪声估计模型不准确,不能直接真实地反映物理过程,使得模型与获得的量测值不匹配而导致滤波发散。这种由于模型建立过于粗糙或失真所引起的发散称为滤波发散。 (2)由于卡尔曼滤波是递推过程,随着滤波步数的增加,舍入误差将逐渐积累。如果计算机字长不够长,这种积累误差很有可能使估计误差方差阵失去非负定性甚至失去对称性,使滤波增益矩阵逐渐失去合适的加权作用而导致发散。这种由于计算舍入误差所引起的发散称为计算发散。 针对上述卡尔曼滤波发散的原因,目前已经出现了几种有效抑制滤波发散的方法,常用的有衰减记忆滤波、限定记忆滤波、扩充状态滤波、有限下界滤波、平方根滤波、和自适应滤波等。这些方法本质上都是以牺牲滤波器的最优性为代价来抑制滤波发散,也就是说,多数都是次优滤波方法。 自适应滤波 在很多实际系统中,系统过程噪声方差矩阵Q和量测误差方差阵R事先是不知道的,有时甚至连状态转移矩阵 或量测矩阵H也不能确切建立。如果所建立的模型与实际模型不符可能回引起滤波发散。自适应滤波就是这样一种具有抑制滤波发散作用的滤波方法。在滤波过程中,自适应滤波一方面利用量测值修正预测值,同时也对未知的或不确切的系统模型参数和噪声统计参数进行估计修正。自适应滤波的方法很多,包括贝叶斯法、极大似然法、相关法与协方差匹配法,其中最基本也是最重要的是相关法,而相关法可分为输出相关法和新息相关法。

滤波各种算法优缺点

滤波关键看你什么应用!采样频率,这个方法很多的。以下仅供参考: 1、限幅滤波法(又称程序判断滤波法) A、方法: 根据经验判断,确定两次采样允许的最大偏差值(设为A) 每次检测到新值时判断: 如果本次值与上次值之差<=A,则本次值有效 如果本次值与上次值之差>A,则本次值无效,放弃本次值,用上次值代替本次值 B、优点: 能有效克服因偶然因素引起的脉冲干扰 C、缺点 无法抑制那种周期性的干扰 平滑度差 2、中位值滤波法 A、方法: 连续采样N次(N取奇数) 把N次采样值按大小排列 取中间值为本次有效值 B、优点: 能有效克服因偶然因素引起的波动干扰 对温度、液位的变化缓慢的被测参数有良好的滤波效果 C、缺点: 对流量、速度等快速变化的参数不宜 3、算术平均滤波法 A、方法: 连续取N个采样值进行算术平均运算 N值较大时:信号平滑度较高,但灵敏度较低 N值较小时:信号平滑度较低,但灵敏度较高 N值的选取:一般流量,N=12;压力:N=4 B、优点: 适用于对一般具有随机干扰的信号进行滤波 这样信号的特点是有一个平均值,信号在某一数值范围附近上下波动 C、缺点: 对于测量速度较慢或要求数据计算速度较快的实时控制不适用 比较浪费RAM 4、递推平均滤波法(又称滑动平均滤波法) A、方法: 把连续取N个采样值看成一个队列 队列的长度固定为N 每次采样到一个新数据放入队尾,并扔掉原来队首的一次数据.(先进先出原则) 把队列中的N个数据进行算术平均运算,就可获得新的滤波结果 N值的选取:流量,N=12;压力:N=4;液面,N=4~12;温度,N=1~4 B、优点: 对周期性干扰有良好的抑制作用,平滑度高 适用于高频振荡的系统 C、缺点: 灵敏度低 对偶然出现的脉冲性干扰的抑制作用较差 不易消除由于脉冲干扰所引起的采样值偏差 不适用于脉冲干扰比较严重的场合 比较浪费RAM 5、中位值平均滤波法(又称防脉冲干扰平均滤波法) A、方法: 相当于“中位值滤波法”+“算术平均滤波法” 连续采样N个数据,去掉一个最大值和一个最小值 然后计算N-2个数据的算术平均值

dsp滤波要点

数字信号处理 综合设计性实验报告 学院:电子信息工程学院 班级:自动化0706班 电子0701班 指导教师:高海林 学生:张越07213056 陈冠宇07214004 北京交通大学电工电子教学基地 2010年1月20日

利用DSP实现信号滤波 一:实验目的 实现离散信号滤波是DSP的基本功能,本实验中我们尝试实现分别了设计FIR 和IIR滤波器实现低通,高通,带通,带阻四种滤波器对正弦离散信号进行滤波。(1)学会编写滤波程序和输入信号程序。 (2)熟悉CCS集成开发环境,熟悉DSK板的使用。 (3)通过实验比较FIR和IIR在设计上和滤波效果上的区别。 二:FIR滤波器的设计 例:设计一个采样频率Fs为8000Hz,输入信号频率为1000HZ、2500HZ与4000HZ 的合成信号,通过设计FIR滤波器分别实现低通,高通,带通,带阻的滤波功能。 一:实验原理 一个线性位移不变系统的输出序列y(n)和输入序列x(n)之间的关系,应满 足常系数线性差分方程: x(n): 输入序列,y(n): 输出序列,ai、bi : 滤波器系数,N: 滤波器的阶数。在式上式中,若所有的ai 均为0,则得FIR 滤波器的差分方程: 对上式进行z 变换,可得FIR 滤波器的传递函数: FIR 滤波器的结构

FIR 滤波器的单位冲激响应h(n)为有限长序列。 若h(n)为实数,且满足偶对称或奇对称的条件,则FIR 滤波器具有线性相位特性。在数字滤波器中,FIR 滤波器具有如下几个主要特点: ① FIR 滤波器无反馈回路,是一种无条件稳定系统; ② FIR 滤波器可以设计成具有线性相位特性。 本实验程序设计的就是一种偶对称的线性相位滤波器。 程序算法实现采用循环缓冲区法。 二:算法原理: ①在数据存储器中开辟一个N个单元的缓冲区(滑窗),用来存放最新的N个输入样本; ②从最新样本开始取数; ③读完最老样本后,输入最新样本来代替最老样本,而其他数据位置不变; ④用BK 寄存器对缓冲区进行间接寻址,使缓冲区地址首尾相邻。 三:实验程序设计步骤 1.FIR滤波器设计 利用MATLAB中的FDA工具导出正确的参数。 2.产生滤波器输入信号文件 以下是一个产生输入信号的C语言程序,信号是频率为1000Hz、2500Hz和4000Hz 的正弦波合成的波形: #include #include

各种滤波算法比较

数字滤波方法有很多种,每种方法有其不同的特点和使用范围。从大的范围可分为3类。 1、克服大脉冲干扰的数字滤波法 ㈠.限幅滤波法㈡.中值滤波法 2、抑制小幅度高频噪声的平均滤波法 ㈠.算数平均㈡.滑动平均㈢.加权滑动平均㈣一阶滞后滤波法 3、复合滤波法 四、介绍 在这我选用了常用的8种滤波方法予以介绍 (一)克服大脉冲干扰的数字滤波法: 克服由仪器外部环境偶然因素引起的突变性扰动或仪器内部不稳定引起误码等造成的尖脉冲干扰,是仪器数据处理的第一步。通常采用简单的非线性滤波法。 1、限幅滤波法(又称程序判断滤波法)限幅滤波是通过程序判断被测信号的变化幅度,从而消除缓变信号中的尖脉冲干扰。 A、方法:根据经验判断,确定两次采样允许的最大偏差值(设为A)每次检测到新值时判断:如果本次值与上次值之差A,则本次值无效,放弃本次值,用上次值代替本次值 B、优点:能有效克服因偶然因素引起的脉冲干扰 C、缺点无法抑制那种周期性的干扰平滑度差 D、适用范围: 变化比较缓慢的被测量值 2、中位值滤波法 中位值滤波是一种典型的非线性滤波器,它运算简单,在滤除脉冲噪声的同时可以很好地保护信号的细节信息。 A、方法:连续采样N次(N取奇数)把N次采样值按大小排列(多采用冒泡法)取

中间值为本次有效值 B、优点:能有效克服因偶然因素引起的波动(脉冲)干扰 C、缺点:对流量、速度等快速变化的参数不宜 D、适用范围:对温度、液位的变化缓慢的被测参数有良好的滤波效果 (二)抑制小幅度高频噪声的平均滤波法 小幅度高频电子噪声:电子器件热噪声、A/D量化噪声等。通常采用具有低通特性的线性滤波器:算数平均滤波法、加权平均滤波法、滑动加权平均滤波法一阶滞后滤波法等。 3、算术平均滤波法算术平均滤波法是对N个连续采样值相加,然后取其算术平均值作为本次测量的滤波值。 A、方法:连续取N个采样值进行算术平均运算N值较大时:信号平滑度较高,但灵敏度较低N值较小时:信号平滑度较低,但灵敏度较高N值的选取:一般流量,N=12;压力:N=4 B、优点:对滤除混杂在被测信号上的随机干扰信号非常有效。被测信号的特点是有一个平均值,信号在某一数值范围附近上下波动 C、缺点:不易消除脉冲干扰引起的误差。对于采样速度较慢或要求数据更新率较高的实时系统,算术平均滤法无法使用的。比较浪费RAM 4、递推平均滤波法(又称滑动平均滤波法) 对于采样速度较慢或要求数据更新率较高的实时系统,算术平均滤法无法使用的。滑动平均滤波法把N个测量数据看成一个队列,队列的长度固定为N,每进行一次新的采样,把测量结果放入队尾,而去掉原来队首的一个数据,这样在队列中始终有N个“最新”的数据。 A、方法:把连续取N个采样值看成一个队列,队列的长度固定为N ,每次采样到

数字滤波器的MATLAB设计与DSP上的实现

数字滤波器的MAT LAB设计与 DSP上的实现 数字滤波器的MATLAB 设计与DSP上的实现 公文易文秘资源网佚名2007-11-15 11:56:42我要投稿添加到百度搜藏 摘要:以窗函数法设计线性相位FIR数字滤波器为例,介绍用MATLAB工具软件设计数字滤波器的方法和在定点DSP上的实现。实现时,先在CCS5000仿真开发,然后将程序加载到TMS320VC5409评估板上实时运行,结果实现了目标要求。文中还讨论了定标、误差、循环寻址等在DSP上实现的关键问题。关键词 摘要:以窗函数法设计线性相位 FIR数字滤波器为例,介绍用 MATLAB工具软件设计数字滤波器的方法和在定点DSP上的实现。实现时,先在 CCS5000仿真开发,然后将程序加载到 TMS320VC5 409评估板上实时运行,结果实现了目标要求。文中还讨论了定标、误差、循环寻址等在DSP上实 现的关键问题。 关键词:数字滤波器MATLAB DSP 引言 随着信息时代和数字世界的到来,数字信号处理已成为今一门极其重要的学科和技术领域。数字信号处理在通信、语音、图像、自动控制、雷达、军事、航空航天、医疗和家用电器等众多领域得到了广泛的应

用。在数字信号处理应用中,数字滤波器十分重要并已获得广泛应用。 1数字滤波器的设计 1.1数字滤波器设计的基本步骤 数字滤波器根据其冲激响应函数的时域特性,可分为两种,即无限长冲激响应(IIR )滤波器和有限长冲激响应(FIR )滤波器。IIR滤波器的特征是,具有无限持续时间冲激响应。种滤波器一般需要用递归模型来实现,因而有时也称之为递归滤波器。FIR滤波器的冲激响应只能延续一定时间, 在工程实际中可以采用递归的方式实现,也可以采用非递归的方式实现。数字滤波器的设计方法有多种,如双线性变换法、窗函数设计法、插值逼近法和Chebyshev逼近法等等。随着 MATLAB软件尤 其是MATLAB的信号处理工作箱的不断完善,不仅数字滤波器的计算机辅助设计有了可能,而且还可以使设计达到最优化。 数字滤波器设计的基本步骤如下: (1确定指标 在设计一个滤波器之前,必须首先根据工程实际的需要确定滤波器的技术指标。在很多实际应用中,数字滤波器常常被用来实现选频操作。因此,指标的形式一般在频域中给岀幅度和相位响应。幅度指标主要以两种方式给岀。第一种是绝对指标。它提供对幅度响应函数的要求,一般应用于FI R滤波器的设计。第二种指标是相对指标。它以分贝值的形式给岀要求。在工程实际中,这种指标最受欢迎。对于相位响应指标形式,通常希望系统在通频带中人有线性相位。运用线性相位响应指标进行滤波器设计具有如下优点:①只包含实数算法,不涉及复数运算;②不存在延迟失真,只有固定数量的延迟;③长度为N的滤波器(阶数为N-1),计算量为N/2数量级。因此,本文中滤波器的设计就以线性相位FIR滤波器的设计为例。 (2)逼近

(整理)11种滤波方法+范例代码.

软件滤波算法(转载) 这几天做一个流量检测的东西,其中用到了对数据的处理部分,试了很多种方法,从网上找到这些个滤波算法,贴出来记下 需要注意的是如果用到求平均值的话,注意总和变量是否有溢出,程序没必要照搬,主要学习这些方法,相信做东西的时候都能用得上 1、限幅滤波法(又称程序判断滤波法) A、方法: 根据经验判断,确定两次采样允许的最大偏差值(设为A) 每次检测到新值时判断: 如果本次值与上次值之差<=A,则本次值有效 如果本次值与上次值之差>A,则本次值无效,放弃本次值,用上次值代替本次值 B、优点: 能有效克服因偶然因素引起的脉冲干扰 C、缺点 无法抑制那种周期性的干扰 平滑度差 2、中位值滤波法 A、方法: 连续采样N次(N取奇数) 把N次采样值按大小排列 取中间值为本次有效值 B、优点: 能有效克服因偶然因素引起的波动干扰 对温度、液位的变化缓慢的被测参数有良好的滤波效果 C、缺点: 对流量、速度等快速变化的参数不宜 3、算术平均滤波法 A、方法: 连续取N个采样值进行算术平均运算 N值较大时:信号平滑度较高,但灵敏度较低 N值较小时:信号平滑度较低,但灵敏度较高 N值的选取:一般流量,N=12;压力:N=4 B、优点:

适用于对一般具有随机干扰的信号进行滤波 这样信号的特点是有一个平均值,信号在某一数值范围附近上下波动 C、缺点: 对于测量速度较慢或要求数据计算速度较快的实时控制不适用 比较浪费RAM 4、递推平均滤波法(又称滑动平均滤波法) A、方法: 把连续取N个采样值看成一个队列 队列的长度固定为N 每次采样到一个新数据放入队尾,并扔掉原来队首的一次数据.(先进先出原则) 把队列中的N个数据进行算术平均运算,就可获得新的滤波结果 N值的选取:流量,N=12;压力:N=4;液面,N=4~12;温度,N=1~4 B、优点: 对周期性干扰有良好的抑制作用,平滑度高 适用于高频振荡的系统 C、缺点: 灵敏度低 对偶然出现的脉冲性干扰的抑制作用较差 不易消除由于脉冲干扰所引起的采样值偏差 不适用于脉冲干扰比较严重的场合 比较浪费RAM 5、中位值平均滤波法(又称防脉冲干扰平均滤波法) A、方法: 相当于“中位值滤波法”+“算术平均滤波法” 连续采样N个数据,去掉一个最大值和一个最小值 然后计算N-2个数据的算术平均值 N值的选取:3~14 B、优点: 融合了两种滤波法的优点 对于偶然出现的脉冲性干扰,可消除由于脉冲干扰所引起的采样值偏差 C、缺点: 测量速度较慢,和算术平均滤波法一样 比较浪费RAM

几种滤波算法

一.十一种通用滤波算法(转) 1、限幅滤波法(又称程序判断滤波法) A、方法: 根据经验判断,确定两次采样允许的最大偏差值(设为A) 每次检测到新值时判断: 如果本次值与上次值之差<=A,则本次值有效 如果本次值与上次值之差>A,则本次值无效,放弃本次值,用上次值代替本次值B、优点: 能有效克服因偶然因素引起的脉冲干扰 C、缺点 无法抑制那种周期性的干扰 平滑度差 2、中位值滤波法 A、方法: 连续采样N次(N取奇数) 把N次采样值按大小排列 取中间值为本次有效值 B、优点: 能有效克服因偶然因素引起的波动干扰 对温度、液位的变化缓慢的被测参数有良好的滤波效果 C、缺点: 对流量、速度等快速变化的参数不宜 3、算术平均滤波法 A、方法: 连续取N个采样值进行算术平均运算 N值较大时:信号平滑度较高,但灵敏度较低 N值较小时:信号平滑度较低,但灵敏度较高 N值的选取:一般流量,N=12;压力:N=4

适用于对一般具有随机干扰的信号进行滤波 这样信号的特点是有一个平均值,信号在某一数值范围附近上下波动 C、缺点: 对于测量速度较慢或要求数据计算速度较快的实时控制不适用 比较浪费RAM 4、递推平均滤波法(又称滑动平均滤波法) A、方法: 把连续取N个采样值看成一个队列 队列的长度固定为N 每次采样到一个新数据放入队尾,并扔掉原来队首的一次数据.(先进先出原则) 把队列中的N个数据进行算术平均运算,就可获得新的滤波结果 N值的选取:流量,N=12;压力:N=4;液面,N=4~12;温度,N=1~4 B、优点: 对周期性干扰有良好的抑制作用,平滑度高 适用于高频振荡的系统 C、缺点: 灵敏度低 对偶然出现的脉冲性干扰的抑制作用较差 不易消除由于脉冲干扰所引起的采样值偏差 不适用于脉冲干扰比较严重的场合 比较浪费RAM 5、中位值平均滤波法(又称防脉冲干扰平均滤波法) A、方法: 相当于“中位值滤波法”+“算术平均滤波法” 连续采样N个数据,去掉一个最大值和一个最小值 然后计算N-2个数据的算术平均值 N值的选取:3~14

DSP的FIR设计(低通滤波)C语言编写

一、设计目的 低通滤波器设计。 本设计中使用的信号为 信息信号: signal=sin(2*pi*sl*n*T) 高频噪声1:noise1=0.7*sin(2*pi*ns1*n*T) 高频噪声2:noise2=0.4*sin(2*pi*ns2*n*T) 混合信号: x=(signal+noise1+noise2) 其中sl=500Hz ,ns1=3000Hz ,ns2=8000Hz ,T=1/20000。混合信号波形为滤波器输入信号波形,信息信号波形为输出信号波形,滤波器的效果为滤除两个高频噪声。 二、FIR 滤波器基本理论 (1)FIR 滤波器的特点 数字滤波器的功能,就是把输入序列通过一定的运算变换成输出序列。它的实现方法有很多,其中比较常用到的是无限长脉冲响应滤波器 IIR 和有限长脉冲响应滤波器FIR 两种。 在计算量相等的情况下,IIR 数字滤波器比FIR 滤波器的幅频特性优越,频率选择性也好。但是,它有着致命的缺点,其相位特性不好控制。它的相位特性 )argH( )f(ω ωj e =是使频率产生严重的非线性的原因。但是在图像处理、数据传 输等波形传递系统中都越来越多的要求信道具有线性的相位特性。在这方面 FIR 滤波器具有它独特的优点,设FIR 滤波器单位脉冲响应h(n)长度为N ,其系统函数H(z)为 ∑-=-= 1 )()(N n n z n h z H H(z)是1 -z 的(N-1)次多项式,它在z 平面上有(N-1)个零点,原点z=0是(N-1)阶重极点。因此,H(z)永远稳定,它可以在幅度特性随意设计的同时,保证精确、严格的线性相位。 (2)FIR 滤波器的基本结构 数字滤波是将输入的信号序列,按规定的算法进行处理,从而得到所期望的输出序列,FIR 滤波器的差分方程为: ∑-=-= 1 )()(N k k k n x a n y 对上式进行Z 变换得到FIR 滤波器的传递函数为: ()() () ∑-=-= = 1 N i k k z b z X z Y z H

十一种软件数字滤波算法

1 数字滤波 1.1 概述 在单片机进行数据采集时,会遇到数据的随机误差,随机误差是由随机干扰引起的,其特点是在相同条件下测量同一量时,其大小和符号会现无规则的变化而无法预测,但多次测量的结果符合统计规律。为克服随机干扰引起的误差,硬件上可采用滤波技术,软件上可采用软件算法实现数字滤波。滤波算法往往是系统测控算法的一个重要组成部分,实时性很强。 采用数字滤波算法克服随机干扰的误差具有以下优点: 1、数字滤波无需其他的硬件成本,只用一个计算过程,可靠性高,不存在阻 抗匹配问题。尤其是数字滤波可以对频率很低的信号进行滤波,这是模拟滤波器做不到的。 2、数字滤波使用软件算法实现,多输入通道可共用一个滤波程序,降低系统 开支。 3、只要适当改变滤波器的滤波程序或运算,就能方便地改变其滤波特性,这 对于滤除低频干扰和随机信号会有较大的效果。 4、在单片机系统中常用的滤波算法有限幅滤波法、中值滤波法、算术平均滤 波法、加权平均滤波法、滑动平均滤波等。 1.2 限幅滤波算法 原理:该运算的过程中将两次相邻的采样相减,求出其增量,然后将增量的绝对值,与两次采样允许的最大差值A进行比较。A的大小由被测对象的具体情况而定,如果小于或等于允许的最大差值,则本次采样有效;否则放弃本次值取上次采样值作为本次数据的样本。 优点:能有效克服因偶然因素引起的脉冲干扰。 缺点:无法抑制那种周期性的干扰,平滑度差。 说明:限幅滤波法主要用于处理变化较为缓慢的数据,如温度、物体的位置等。使用时,关键要选取合适的门限制A。通常这可由经验数据获得,必要时可通过实验得到。 1.3 中值滤波算法 原理:该运算的过程是对某一参数连续采样N次(N一般为奇数),然后把N次采样的值按从小到大排列,再取中间值作为本次采样值,整个过程实际上是一个序列排序的过程。

DSP高通滤波器课程设计报告

D S P课程设计报告 题目:FIR高通滤波器设计 姓名 学号 教学院系 专业年级 指导教师

DSP课程设计 目录 一、设计题目 (1) 二、设计目标 (1) 三、算法研究与参数计算 (1) 1、FIR的原理和参数生成公式 (1) 2、利用MATLAB计算滤波系数 (1) 3、输入信号参数计算 (2) 四、编写源程序 (3) 五、调试过程 (4) 1、调试前准备 (5) 2、MATLAB的使用 (5) 3、编写及编译程序 (5) 4、设置断点和探针 (6) 5、打开观察窗口 (6) 六、实验结果及分析 (6) 1、输入信号的时域波形和频域波形 (6) 2、输出信号的时域波形和频域波形 (7) 七、设计心得 (8)

1 一、设计题目 FIR 高通滤波器设计 二、设计目标 设计一个FIR 高通滤波器,通带边界频率为6000Hz ,采样频率为20000Hz 。FIR 滤波器的设计用MA TLAB 窗函数法进行。 三、算法研究与参数计算 1、FIR 的原理和参数生成公式 图3-1 2、利用MATLAB 计算滤波系数 在MATLAB 界面输入图3-2所示程序,可得到滤波系数并生成INC 文件。 图 3-2

DSP 课程设计 2 输入freqz (y ,1,512),MATLAB 中显示高通滤波器的滤波特性曲线。如图3-3所示。 图3-3 3、输入信号参数计算 MATLAB 中输入图3-4中所示程序,包含两种频率成分的正弦信号,一种信号频率1000Hz ,一种信号6000Hz 。 图3-4 其频谱特性曲线如图3-5。 图3-5

FIR高通滤波器设计 四、编写源程序 参考资料,编写汇编语言源程序: HIGHPASS .set 1 ;if you want to use ,please set the value to 1 .global start,fir .mmregs COFF_FIR_START: .sect "coff_fir" .copy "0126.inc" K_FIR_BFFR .set 64 d_data_buffer .usect "fir_bfr",64 FIR_DP .usect "fir_vars",0 d_filin .usect "fir_vars",1 output .usect "fir_vars",1 input .usect "fir_vars",1 d_filout .usect "fir_vars",100h stacksize .set 256 stack .usect "fir_vars",stacksize .asg AR4,FIR_DATA_P .asg AR6,INBUF_P .asg AR7,OUTBUF_P .asg AR3,OUTBUF .asg AR2,INBUF .sect "fir_prog" nop start: stm #stack+stacksize,SP LD #FIR_DP,DP STM #d_data_buffer,FIR_DATA_P RPTZ A,#K_FIR_BFFR-1 STL A,*FIR_DATA_P+ STM #d_filin,INBUF_P 3

十种数字滤波方法

1、限幅滤波法(又称程序判断滤波法) A、方法: 根据经验判断,确定两次采样允许的最大偏差值(设为A) 每次检测到新值时判断: 如果本次值与上次值之差<=A,则本次值有效 如果本次值与上次值之差>A,则本次值无效,放弃本次值,用上次值代替本次值 B、优点: 能有效克服因偶然因素引起的脉冲干扰 C、缺点 无法抑制那种周期性的干扰 平滑度差 2、中位值滤波法 A、方法: 连续采样N次(N取奇数) 把N次采样值按大小排列 取中间值为本次有效值 B、优点: 能有效克服因偶然因素引起的波动干扰 对温度、液位的变化缓慢的被测参数有良好的滤波效果 自动化科协 C、缺点: 对流量、速度等快速变化的参数不宜 3、算术平均滤波法 A、方法: 连续取N个采样值进行算术平均运算 N值较大时:信号平滑度较高,但灵敏度较低 N值较小时:信号平滑度较低,但灵敏度较高 N值的选取:一般流量,N=12;压力:N=4 B、优点: 适用于对一般具有随机干扰的信号进行滤波 这样信号的特点是有一个平均值,信号在某一数值范围附近上下波动 C、缺点: 对于测量速度较慢或要求数据计算速度较快的实时控制不适用 比较浪费RAM 4、递推平均滤波法(又称滑动平均滤波法) A、方法: 把连续取N个采样值看成一个队列 队列的长度固定为N 每次采样到一个新数据放入队尾,并扔掉原来队首的一次数据.(先进先出原则) 把队列中的N个数据进行算术平均运算,就可获得新的滤波结果

N值的选取:流量,N=12;压力:N=4;液面,N=4~12;温度,N=1~4 B、优点: 对周期性干扰有良好的抑制作用,平滑度高 适用于高频振荡的系统 C、缺点: 灵敏度低 对偶然出现的脉冲性干扰的抑制作用较差 不易消除由于脉冲干扰所引起的采样值偏差 不适用于脉冲干扰比较严重的场合 比较浪费RAM 5、中位值平均滤波法(又称防脉冲干扰平均滤波法) A、方法: 相当于“中位值滤波法”+“算术平均滤波法” 连续采样N个数据,去掉一个最大值和一个最小值 然后计算N-2个数据的算术平均值 N值的选取:3~14 B、优点: 融合了两种滤波法的优点 对于偶然出现的脉冲性干扰,可消除由于脉冲干扰所引起的采样值偏差 C、缺点: 自动化科协 测量速度较慢,和算术平均滤波法一样 比较浪费RAM 6、限幅平均滤波法 A、方法: 相当于“限幅滤波法”+“递推平均滤波法” 每次采样到的新数据先进行限幅处理, 再送入队列进行递推平均滤波处理 B、优点: 融合了两种滤波法的优点 对于偶然出现的脉冲性干扰,可消除由于脉冲干扰所引起的采样值偏差 C、缺点: 比较浪费RAM 7、一阶滞后滤波法 A、方法: 取a=0~1 本次滤波结果=(1-a)*本次采样值+a*上次滤波结果 B、优点: 对周期性干扰具有良好的抑制作用 适用于波动频率较高的场合 C、缺点:

DSP课程设计-FIR高通滤波器设计说明

FIR高通滤波器设计 师大学物科院

从实现方法方面考虑,将滤波器分为两种,一种是IIR滤波器,另一种是FIR 滤波器。 FIRDF的最大优点是可以实现线性相位滤波。而IIRDF主要对幅频特性进行逼近,相频特性会存在不同程度的非线性。我们知道,无失真传输与滤波处理的条件是,在信号的有效频谱围系统幅频响应应为常数,相频响应为频率的线性函数。另外,FIR是全零点滤波器,硬件和软件实现结构简单,不用考虑稳定性问题。所以,FIRDF是一种很重要的滤波器,在数字信号处理领域得到广泛应用。 FIRDF设计方法主要分为两类:第一类是基于逼近理想滤波器特性的方法,包括窗函数法、频率采样法和等波纹最佳逼近法;第二类是最优设计法。其中窗函数计法的基本思想是用FIRDF逼近希望的滤波特性。本次设计主要采用窗函数设计法,对理想滤波器进行逼近,从而实现高通滤波器的设计。 在MATLAB软件中,有一系列函数用于设计滤波器,应用时十分方便。因此,在本次设计中,滤波器的设计主要采用MATLAB软件,编写适当的程序,得到滤波器的单位脉冲响应。 本设计对滤波器的硬件仿真主要使用CCS软件,通过对滤波器的硬件仿真,可以较为真实的看出滤波器的滤波效果。 关键字:高通、FIRDF、线性相位、Hanning窗、MATLAB、CCS

1.设计目标 产生一个多频信号,设计一个高通滤波器消除其中的低频成分,通过CCS的graph view 波形和频谱显示,并和MATLAB计算结果比较 2.设计原理 2.1数字滤波器 数字滤波器(digital filter)是由数字乘法器、加法器和延时单元组成的一种装置。其功能是对输入离散信号的数字代码进行运算处理,以达到改变信号频谱的目的。 由于电子计算机技术和大规模集成电路的发展,数字滤波器已可用计算机软件实现,也可用大规模集成数字硬件实时实现。数字滤波器广泛用于数字信号处理中,如电视、VCD、音响等。 按照滤波电路的工作频带为其命名:设截止频率为fp,频率低于fp的信号可以通过,高于fp的信号被衰减的电路称为低通滤波器,频率高于fp的信号可以通过,低于fp的信号被衰减的电路称为高通滤波器;而带通吗,就是频率介于低频段截止频率和高频段截止频率的信号可以通过的电路。 2.2高通滤波器 高通滤波器是容许高频信号通过、但减弱(或减少)频率低于截止频率信号通过的滤波器。对于不同滤波器而言,每个频率的信号的减弱程度不同。它有时被称为低频剪切滤波器;在音频应用中也使用低音消除滤波器或者噪声滤波器。高通滤波器与低通滤波器特性恰恰相反。这样的滤波器能够把高频率的声音引导至专用高音喇叭(tweeter),并阻止可能干擾或者损害喇叭的低音信号。使用线圈而不是电容的低通滤波器也可以同时把低频信号引导至低音喇叭(woofer)。高通和低通滤波器也用于数字图像处理中在频域中进行变换。 2.3高通滤波器的分析 2.3.1高通滤波器的时域分析 在时域,信号经过系统的响应y (n)体现为激励x(n)跟系统单位抽样响应h(n)的卷积和y(n)=(n)×h(n)=ΣN–1m=0h(m)x(n-m)[223] 。对于长度为N 的FIR 系统, h(n)可以看成一个长度为N 点的固定窗口,而x(n)则看成一个队列以齐步 走的方式穿过h(n)窗口,每走一步,位于窗口中的x(n)部分的点跟h(n)的对应点 的值相乘(即加权)再求和,所得结果构成此时系统的响应值y(n), x(n)队列每走 一步就得到一个响应值y(n),即y(n)是h(n)对位于其窗口中的x(n)的加权求和。 高通滤波要求h(n)窗口具有波形锐化作用,即利用h(n)窗口加权和使得变化快 的(即高频)正弦分量保留(理想高通)或衰减幅度小(实际高通) ,而变化缓慢(即 低频)的正弦分量正负抵消(理想高通)或衰减幅度大(实际高通) 。 设

DSP课程设计-FIR高通滤波器设计

DSP课程设计-FIR高通滤波器设计 FIR 高通滤波器设计 南京师范大学物科院 从实现方法方面考虑,将滤波器分为两种,一种是IIR 滤波器,另一种是FIR 滤波器。 FIRDF 的最大优点是可以实现线性相位滤波。而IIRDF 主要对幅频特性进行逼近,相频特性会存在不同程度的非线性。我们知道,无失真传输与滤波处理的条件是,在信号的 有效频谱范围内系统幅频响应应为常数,相频响应为频率的线性函数。另外,FIR 是全零 点滤波器,硬件和软件实现结构简单,不用考虑稳定性问题。所以,FIRDF 是一种很重要 的滤波器,在数字信号处理领域得到广泛应用。 FIRDF 设计方法主要分为两类:第一类是基于逼近理想滤波器特性的方法,包括窗函 数法、频率采样法和等波纹最佳逼近法;第二类是最优设计法。其中窗函数计法的基本思 想是用FIRDF 逼近希望的滤波特性。本次设计主要采用窗函数设计法,对理想滤波器进行逼近,从而实现高通滤波器的设计。 在MATLAB 软件中,有一系列函数用于设计滤波器,应用时十分方便。因此,在本次 设计中,滤波器的设计主要采用MATLAB 软件,编写适当的程序,得到滤波器的单位脉冲 响应。 本设计对滤波器的硬件仿真主要使用CCS 软件,通过对滤波器的硬件仿真,可以较为真实的看出滤波器的滤波效果。 关键字:高通、FIRDF 、线性相位、Hanning 窗、MATLAB 、CCS 1. 设计目标 产生一个多频信号,设计一个高通滤波器消除其中的低频成分,通过CCS 的graph view波形和频谱显示,并和MATLAB 计算结果比较 2. 设计原理 2.1 数字滤波器 数字滤波器(digital filter)是由数字乘法器、加法器和延时单元组成的一种装置。 其功能是对输入离散信号的数字代码进行运算处理,以达到改变信号频谱的目的。由于电 子计算机技术和大规模集成电路的发展,数字滤波器已可用计算机软件实现,也可用大规 模集成数字硬件实时实现。数字滤波器广泛用于数字信号处理中,如电视、VCD 、音响等。

相关文档