电气控制技术应用设计题目基于DSP的FIR数字低通滤波器设计二级学院电子信息与自动化学院专业电气工程及其自动化班级 113070404学生姓名黄鸿资学号 11307991032学生姓名姜天宇学号 11307991015指导教师蒋东荣时间:2016年8月29日至2016年9月9日考核项目平时成绩20分设计35分报告15分答辩30分得分总分考核等级教师签名一绪论 (3)(一)课题设计的目的 (3)(二)课题内容 (3)(三)设计方法 (3)(四)课程设计的意义 (4)二FIR滤波器基本理论 (4)(一)FIR滤波器的特点 (4)(二)FIR滤波器的基本结构 (4)(三)Chebyshev逼近法 (5)三用MATLAB辅助DSP设计FIR滤波器 (5)(一)利用fir函数设计FIR滤波器并在在MATLAB环境仿真 (6)(二) Matlab中自带工具箱FDATool快速的实现滤波器的设计 (10)1.确定一个低通滤波器指标 (10)2.打开MATLAB的FDATool (10)3.选择Design Filter (11)4.滤波器分析 (11)5.导出滤波器系数 (13)(三)滤波器设计总结 (13)(四)DSP所需文件配置 (14)四基于DSP的FIR滤波器实现 (14)(一)DSP中滤波器的算法实现 (15)1.线性缓冲区法 (15)2.循环缓冲区法 (15)(二)C语言实现FIR (15)(三)CSS仿真调试 (17)(四)滤波器的仿真测试 (18)五 DSP数字滤波器与硬件低通滤波器对比 (21)(一)二阶有源低通滤波电路的构建 (21)(二)二阶低通滤波器参数计算 (22)(三)在protues环境下的仿真测试 (22)(四)实物硬件连接以及测试结果 (22)(五)利用FilterPro的低通滤波器设计 (23)1 选择filter类型 (24)2 滤波器参数设定 (24)3 滤波器的算法选择 (25)4 滤波器的拓扑结构选择 (25)(六) DSP数字滤波器与硬件电路滤波器对比总结 (26)六课程设计总结 (26)参考文献 (28)摘要DSP芯片是一种特别适合数字信号处理运算的微处理器,主要用来实时、快速实现各种数字信号处理算法。
FIR数字滤波器具有严格的线性相位、总是稳定等特点而广泛应用于数字信号处理的各个领域,是一个重要的研究课题。
本文主要研究了低通数字滤波器的基本理论,在MATLAB坏境下设计FIR低通数字滤波器,主要用窗函数法及利用MATLAB的滤波器设计工具的设计方法,编写相应的MATLAB语言,进行具体的仿真分析。
用TMS320C5402的DSP芯片软件,编写了DSP的FIR低通数字滤波算法,用MATLAB中生成的滤波器系数导入DSP中设计的滤波器函数中。
在ccs环境中,首先根据算法编写C语言文件,在编写完成后再编写cmd文件和在库中添加lib文件保证C语言程序文件可以正确编译链接。
DSP的输入信号可以又MATLAB软件进行编写,在程序测试的时候可以导入进行观察。
在这次课程设计末尾,为了验证DSP设计的低通滤波器相对于运算放大器所设计的硬件电路的优势,利用protues软件和FilterPro软件进行硬件电路的设计仿真。
采用信号发生器产生所需信号,利用示波器显示。
将DSP设计的滤波器与硬件设计的滤波器进行比较分析其优劣。
最后根据得到的结果对滤波后的结果进行分析,找出设计过程中存在的问题,并想办法从电路元件或者软件算法方面对其进行一定改良。
通过这次课程设计可以掌握CCS,MATLAB,protues等软件的基本使用和焊接简单电路的动手能力。
关键词:数字低通滤波器 FIR MATLAB TMS320C54XX DSP引言现代生活中,越来越多的电子产品把数字信号处理(DSP)作为技术核心,DSP 已经作为推动数字化进程的动力。
作为数字化最重要的技术之一,DSP无论是在其应用领域的深度还是广度,正在以前所未有的速度发展。
数字信号处理器,也称DSP芯片,是针对数字信号处理需要而设计的一种具有特殊结构的微处理器。
随着数字化技术的飞速发展,DSP在电子信息、通信、无线电、自动控制、仪表技术等方面应用广泛。
在数字信号处理中,数字滤波器占有极其重要的位置。
是象处理、指纹识别、模式识别、谱分析等应用中一个基本的处理算法。
在许多信号处理应用中运用数字信号滤波器代替模拟信号滤波器有很大的优势,数字信号滤波器容易实现不同幅度和相位频率特性指标,克服了与模拟信号处理器性能相关的电压漂移、温度漂移和噪声问题。
用DSP实现数字滤波具有稳定性好、精确度高和不受环境影响。
数字滤波器又分为无限冲激响应滤波器(IIR)和有限冲激响应滤波器(FIR)。
FIR滤波器具有不含反馈环路、结构简单以及可以实现的严格线性相位等优点,因而在对相位要求比较严格的条件下,采用F1R数字滤波器。
同时,由于在许多场合下,需要对信号进行实时处理,因而对于单片机的性能要求也越来越高。
采用 DSP控制器就可以提高数字信号处理运算的能力,可以对数字信号做到实时处理。
而普通的单片机例如MCS-51难以满足这一要求。
用可编程DSP芯片实现数字滤波的又一优势是:通过修改滤波器的参数十分方便的改变滤波器的特性。
有限长单位冲激响应((FIR)数字滤波器,与传统的通过硬件电路实现的模拟滤波器相比有以下优点:(1)简化了硬件电路的设计,提高了硬件电路的集成度和可靠性。
(2)对干扰信号的抑制能力有了明显提高,这对系统的控制精度和稳定性的提高起到了促进作用。
(3)数字滤波器的参数调节比起模拟滤波器来更加方便、灵活。
(4)数字滤波器可以实现数据的并行处理,提高了系统运行速度。
一绪论(一)课题设计的目的设计的目的首先是为了熟练使用DSP,利用所学的数字信号处理知识设计一FIR滤波器,并在基于DSP平台的仿真软件CCS下通过软件模拟仿真实现基本的滤波功能,其中输入信号和滤波器的各个参数根据设计要求自行确定。
首先可以借助Matlab来产生输入数据,并根据输入信号确定滤波器参数,然后根据产生滤波器参数在CCS下编写程序实现滤波器功能,最后进行滤波器性能的测试,完成本次课程设计。
为了对于设计有帮助首先了解什么是滤波器以及功能和滤波器的基本结构以及工作方式,可以研究滤波器的硬件原理图和数字滤波器的各种算法来加深理解。
(二)课题内容我们小组将课题研究分为两个部分:一部分为简单的滤波器硬件电路的设计仿真与实物焊接测试。
另一部分着重研究DSP中的滤波器程序的编写与使用matlab软件辅助编写输入文件与滤波器系数。
在完成数据的编写之后,首先在ccs环境中根据选择的滤波器的滤波算法用c语言编写相应程序,随后编写asm,smd文件和添加ti库中的lib文件使得编写的c语言程序可以编译链接并且下载到DSP开发板中进行验证。
(三)设计方法数字滤波器的实现方法一般有几种:(1)在通用计算机上软件编程实现。
(2)用加法器、乘法器、延时器设计实现专用的滤波电路。
(3)用单片机实现。
(4)用通用的可编程DSP芯片实现。
(5)用专用的DSP芯片实现。
在这几种方法中,第一种方法的速度比较慢,主要用来进行算法的模拟仿真,只能用于非实时系统;第二种和第五种方法是专用的,应用范围不广;第三种方法比较容易实现人机接口,但系统比较复杂,对乘法运算的速度很慢;第四种方法因DSP芯片的哈佛结构、并行结构、指令系统等结构特点,使得数字滤波器比较好的容易实现。
在这里我们小组采用方法4编写数字滤波器程序框架,使用matlab软件设计滤波器导出系数,最后完成一个完整低通滤波器的设计。
(四)课程设计的意义21世纪是数字化的时代,随着越来越多的电子产品将数字信号处理(PSP)作为技术核心,DSP已经成为推动数字化进程的动力。
DSP的数字处理能力可以解决许多问题,例如电机控制,图像处理等等。
我们的课程设计是研究滤波器,一方面要了解滤波器的原理和不同的实现方式,另一方面学习滤波器如何通过编写程序实现。
最终目的是可以在实际环境之中运用滤波器对于采集的信号进行处理完成滤波要求。
二FIR滤波器基本理论(一)FIR滤波器的特点第一了解数字滤波器的功能,就是把输入序列通过一定的运算变换成输出序列。
它的实现方法有很多,其中比较常用到的是无限长脉冲响应滤波器 IIR和有限长脉冲响应滤波器FIR两种。
在计算量相等的情况下,IIR数字滤波器比FIR滤波器的幅频特性优越,频率选择性也好。
但是,它有着致命的缺点,其相位特性不好控制。
它的相位特性)是使频率产生严重的非线性的原因。
但是在图像处理、数据传输等波形传递系统中都越来越多的要求信道具有线性的相位特性。
在这方面 FIR滤波器具有它独特的优点,设FIR滤波器单位脉冲响应h(n)长度为N,其系统函数H(z)是H(N-1)次多项式,它在z平面上有(N-1)个零点,原点z=0是(N-1)阶重极点。
因此,H(z)永远稳定,它可以在幅度特性随意设计的同时,保证精确、严格的线性相位。
(二)FIR滤波器的基本结构数字滤波就是将输入的信号序列,按规定的算法进行处理,从而得到所期望的输出序列,H(z)是1z的N-1次多项式,它在z平面内有N-1个零点,同时在原点处有N-1个重极点。
N阶滤波器通常采用N个延迟单元、N个加法器与N+1个乘法器。
另外,若对 h(n)提出一些约束条件,那么可以很容易地使 H(z)具有线性相位,这在信号处理的很多领域是非常重要的。
FIR滤波器的设计任务,是要决定一个转移函数H(z),使它的频率响应满足给定的要求。
这里所说的要求,除了通带频率p、阻带频率及两个带上的最大和最小衰减p和s外,很重要的一条是保证H(z)具有线性相位。
(三)Chebyshev逼近法窗函数法和频率采样法设计出的滤波器的频率特性都是在不同意义上对所给理想频率特性的逼近。
由数值逼近理论可知,对某个函数f(x)的逼近一般有以下三种方法:插值法(Interpolating Way) 最小平方逼近法(Least Square Approaching Way) 一致逼近法(Consistent Approaching Way) 切比雪夫最佳一致逼近的基本思想是,对于给定区间[a,b]上的连续函数xf,在所有n次多项式的集合n中,寻找一个多项式 p(x),使它在[a,b]上对xf的偏差和其它一切属于n的多项式 p(x)对f(x)的偏差相比是最小的,即切比雪夫逼近理论,这样的多项式是存在的,且是唯一的,并指出了构造这种最佳一致逼近多项式的方法,就是有名的“交错点组定理”。
三用MATLAB辅助DSP设计FIR滤波器在进行设计过程中首先利用matlab进行滤波器的设计,在这里运用了两种方法进行滤波器的设计,一种为利用matlab自带的fir函数进行设计,并利用matlab自带的命令进行输入信号的编写并且输出输出信号的幅频曲线与相频曲线图。