收藏 分销(赏)

基于DSP的FIR数字低通滤波器设计.doc

上传人:天**** 文档编号:3337316 上传时间:2024-07-02 格式:DOC 页数:36 大小:9.10MB
下载 相关 举报
基于DSP的FIR数字低通滤波器设计.doc_第1页
第1页 / 共36页
基于DSP的FIR数字低通滤波器设计.doc_第2页
第2页 / 共36页
基于DSP的FIR数字低通滤波器设计.doc_第3页
第3页 / 共36页
基于DSP的FIR数字低通滤波器设计.doc_第4页
第4页 / 共36页
基于DSP的FIR数字低通滤波器设计.doc_第5页
第5页 / 共36页
点击查看更多>>
资源描述

1、电气控制技术应用设计题目 基于DSP的FIR数 字低通滤波器设计二级学院 电子信息与自动化学院 专 业 电气工程及其自动化 班 级 学生姓名 黄鸿资 学号 学生姓名 姜天宇 学号 指导教师 蒋东荣 时间:2023年8月29日至2023年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

2、滤波器并在在MATLAB环境仿真5(二) Matlab中自带工具箱FDATool快速的实现滤波器的设计101.拟定一个低通滤波器指标102.打开MATLAB的FDATool103.选择DesignFilter104.滤波器分析115.导出滤波器系数12(三)滤波器设计总结12(四)DSP所需文献配置13四 基于DSP的FIR滤波器实现13(一)DSP中滤波器的算法实现 131.线性缓冲区法132.循环缓冲区法14(二)C语言实现FIR14(三)CSS仿真调试15(四) 滤波器的仿真测试16五 DSP数字滤波器与硬件低通滤波器对比19(一)二阶有源低通滤波电路的构建19(二)二阶低通滤波器参数计

3、算20(三)在protues环境下的仿真测试20(四) 实物硬件连接以及测试结果20(五)运用FilterPro的低通滤波器设计221 选择filter类型222 滤波器参数设定223 滤波器的算法选择234 滤波器的拓扑结构选择23(六) DSP数字滤波器与硬件电路滤波器对比总结24六 课程设计总结24参考文献26摘 要DSP芯片是一种特别适合数字信号解决运算的微解决器,重要用来实时、快速实现各种数字信号解决算法。FIR数字滤波器具有严格的线性相位、总是稳定等特点而广泛应用于数字信号解决的各个领域,是一个重要的研究课题。本文重要研究了低通数字滤波器的基本理论,在MATLAB坏境下设计FIR低

4、通数字滤波器,重要用窗函数法及运用MATLAB的滤波器设计工具的设计方法,编写相应的MATLAB语言,进行具体的仿真分析。用TMS320C5402的DSP芯片软件,编写了DSP的FIR低通数字滤波算法,用MATLAB中生成的滤波器系数导入DSP中设计的滤波器函数中。在ccs环境中,一方面根据算法编写C语言文献,在编写完毕后再编写cmd文献和在库中添加lib文献保证C语言程序文献可以对的编译链接。DSP的输入信号可以又MATLAB软件进行编写,在程序测试的时候可以导入进行观测。在这次课程设计末尾,为了验证DSP设计的低通滤波器相对于运算放大器所设计的硬件电路的优势,运用protues软件和Fil

5、terPro软件进行硬件电路的设计仿真。采用信号发生器产生所需信号,运用示波器显示。将DSP设计的滤波器与硬件设计的滤波器进行比较分析其优劣。最后根据得到的结果对滤波后的结果进行分析,找出设计过程中存在的问题,并想办法从电路元件或者软件算法方面对其进行一定改良。通过这次课程设计可以掌握CCS,MATLAB,protues等软件的基本使用和焊接简朴电路的动手能力。关键词:数字低通滤波器 FIR MATLAB TMS320C54XX DSP 引 言现代生活中,越来越多的电子产品把数字信号解决(DSP)作为技术核心,DSP已经作为推动数字化进程的动力。作为数字化最重要的技术之一,DSP无论是在其应用

6、领域的深度还是广度,正在以前所未有的速度发展。数字信号解决器,也称DSP芯片,是针对数字信号解决需要而设计的一种具有特殊结构的微解决器。随着数字化技术的飞速发展,DSP在电子信息、通信、无线电、自动控制、仪表技术等方面应用广泛。在数字信号解决中,数字滤波器占有极其重要的位置。是象解决、指纹辨认、模式辨认、谱分析等应用中一个基本的解决算法。在许多信号解决应用中运用数字信号滤波器代替模拟信号滤波器有很大的优势,数字信号滤波器容易实现不同幅度和相位频率特性指标,克服了与模拟信号解决器性能相关的电压漂移、温度漂移和噪声问题。用DSP实现数字滤波具有稳定性好、精确度高和不受环境影响。数字滤波器又分为无限

7、冲激响应滤波器(IIR)和有限冲激响应滤波器(FIR)。FIR滤波器具有不含反馈环路、结构简朴以及可以实现的严格线性相位等优点,因而在对相位规定比较严格的条件下,采用F1R数字滤波器。同时,由于在许多场合下,需要对信号进行实时解决,因而对于单片机的性能规定也越来越高。采用 DSP控制器就可以提高数字信号解决运算的能力,可以对数字信号做到实时解决。而普通的单片机例如MCS-51难以满足这一规定。用可编程DSP芯片实现数字滤波的又一优势是:通过修改滤波器的参数十分方便的改变滤波器的特性。有限长单位冲激响应(FIR)数字滤波器,与传统的通过硬件电路实现的模拟滤波器相比有以下优点:(1)简化了硬件电路

8、的设计,提高了硬件电路的集成度和可靠性。(2)对干扰信号的克制能力有了明显提高,这对系统的控制精度和稳定性的提高起到了促进作用。(3)数字滤波器的参数调节比起模拟滤波器来更加方便、灵活。(4)数字滤波器可以实现数据的并行解决,提高了系统运营速度。一 绪论(一) 课题设计的目的设计的目的一方面是为了纯熟使用DSP,运用所学的数字信号解决知识设计一FIR滤波器,并在基于DSP平台的仿真软件CCS下通过软件模拟仿真实现基本的滤波功能,其中输入信号和滤波器的各个参数根据设计规定自行拟定。一方面可以借助Matlab来产生输入数据,并根据输入信号拟定滤波器参数,然后根据产生滤波器参数在CCS下编写程序实现

9、滤波器功能,最后进行滤波器性能的测试,完毕本次课程设计。为了对于设计有帮助一方面了解什么是滤波器以及功能和滤波器的基本结构以及工作方式,可以研究滤波器的硬件原理图和数字滤波器的各种算法来加深理解。(二)课题内容我们小组将课题研究分为两个部分:一部分为简朴的滤波器硬件电路的设计仿真与实物焊接测试。另一部分着重研究DSP中的滤波器程序的编写与使用matlab软件辅助编写输入文献与滤波器系数。在完毕数据的编写之后,一方面在ccs环境中根据选择的滤波器的滤波算法用c语言编写相应程序,随后编写asm,smd文献和添加ti库中的lib文献使得编写的c语言程序可以编译链接并且下载到DSP开发板中进行验证。(

10、三) 设计方法数字滤波器的实现方法一般有几种:(1)在通用计算机上软件编程实现。(2)用加法器、乘法器、延时器设计实现专用的滤波电路。(3)用单片机实现。(4)用通用的可编程DSP芯片实现。(5)用专用的DSP芯片实现。在这几种方法中,第一种方法的速度比较慢,重要用来进行算法的模拟仿真,只能用于非实时系统;第二种和第五种方法是专用的,应用范围不广;第三种方法比较容易实现人机接口,但系统比较复杂,对乘法运算的速度很慢;第四种方法因DSP芯片的哈佛结构、并行结构、指令系统等结构特点,使得数字滤波器比较好的容易实现。在这里我们小组采用方法4编写数字滤波器程序框架,使用matlab软件设计滤波器导出系

11、数,最后完毕一个完整低通滤波器的设计。(四)课程设计的意义21世纪是数字化的时代,随着越来越多的电子产品将数字信号解决(PSP)作为技术核心,DSP已经成为推动数字化进程的动力。DSP的数字解决能力可以解决许多问题,例如电机控制,图像解决等等。我们的课程设计是研究滤波器,一方面要了解滤波器的原理和不同的实现方式,另一方面学习滤波器如何通过编写程序实现。最终目的是可以在实际环境之中运用滤波器对于采集的信号进行解决完毕滤波规定。二 FIR滤波器基本理论 (一)FIR滤波器的特点 第一了解数字滤波器的功能,就是把输入序列通过一定的运算变换成输出序列。它的实现方法有很多,其中比较常用到的是无限长脉冲响

12、应滤波器 IIR和有限长脉冲响应滤波器FIR两种。 在计算量相等的情况下,IIR数字滤波器比FIR滤波器的幅频特性优越,频率选择性也好。但是,它有着致命的缺陷,其相位特性不好控制。它的相 位特性)是使频率产生严重的非线性的因素。但是在图像解决、数据传输等波形传递系统中都越来越多的规定信道具有线性的相位特性。在这方面 FIR滤波器具有它独特的优点,设FIR滤波器单位脉冲响应h(n)长度为N,其系统函数H(z)是H(N-1)次多项式,它在z平面上有(N-1)个零点,原点z=0是(N-1)阶重极点。因此,H(z)永远稳定,它可以在幅度特性随意设计的同时,保证精确、严格的线性相位。 (二)FIR滤波器

13、的基本结构 数字滤波就是将输入的信号序列,按规定的算法进行解决,从而得到所盼望的输出序列,H(z)是1-z的N-1次多项式,它在z平面内有N-1个零点,同时在原点处有N-1个重极点。N阶滤波器通常采用N个延迟单元、N个加法器与N+1个乘法器。此外,若对 h(n)提出一些约束条件,那么可以很容易地使 H(z)具有线性相位,这在信号解决的很多领域是非常重要的。FIR滤波器的设计任务,是要决定一个转移函数H(z),使它的频率响应满足给定的规定。这里所说的规定,除了通带频率pw、阻带频率及两个带上的最大和最小衰减p和s外,很重要的一条是保证H(z)具有线性相位。(三)Chebyshev逼近法 窗函数法

14、和频率采样法设计出的滤波器的频率特性都是在不批准义上对所给抱负频率特性的逼近。由数值逼近理论可知,对某个函数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)的偏差相比是最小的,即切比雪夫逼近理论,这样的多项式是存在的,且是唯一的,

15、并指出了构造这种最佳一致逼近多项式的方法,就是有名的“交错点组定理”。 三 用MATLAB辅助DSP设计FIR滤波器在进行设计过程中一方面运用matlab进行滤波器的设计,在这里运用了两种方法进行滤波器的设计,一种为运用matlab自带的fir函数进行设计,并运用matlab自带的命令进行输入信号的编写并且输出输出信号的幅频曲线与相频曲线图。第二种使用matlab的FDATool工具进行滤波器的设计得到的滤波器参数,同时使用matlab软件编写“input.dat”文献,具体内容为三个正弦函数叠加生成的具有高次谐波的正弦信号。总流程图(一)运用fir函数设计FIR滤波器并在在MATLAB环境仿

16、真MATLAB辅助DSP 实现FIR ,其总体过程为在DSP中编写解决程序,在MATLAB中运用滤波器设计、分析工具( FDATOOL) ,根据指定的滤波器性能快速设计一个FIR ,再把滤波器系数以头文献形式导入CCS 中,头文献中MATLAB 辅助DSP 实现FIR 数字滤波器含滤波器阶数和系数数组,在MATLAB中调试、运营DSP 程序并显示、分析解决后的数据。使用该方法,便于采用汇编语言来实现程序。头文献名不变,当MATLAB中设计的滤波器系数改变时,相应头文献中系数也改变,方便程序调试、仿真。 在matlab环境下进行设计与仿真 f1=10;%第一个点频信号分量频率 f2=30;%第二

17、个点频信号分量频率 fs=100;%采样率 T=2;%时宽 B=20;%带宽 n=round(T*fs);%采样点个数 t=linspace(0,T,n); y=cos(2*pi*f1*t)+cos(2*pi*f2*t);figure; plot(t,y); title(原始信号时域); xlabel(t/s); ylabel(幅度); figure; fft_y=fftshift(fft(y); f=linspace(-fs/2,fs/2,n); plot(f,abs(fft_y); title(原始信号频谱); xlabel(f/Hz); ylabel(幅度); axis( 0 50 0

18、100);b=fir1(40, B/(fs/2); %滤波产生指定带宽的噪声信号 figure; freqz(b);%画滤波器频响y_after_fir=filter(b,1,y);figure; plot(t,y_after_fir); title(滤波后信号时域); xlabel(t/s); ylabel(幅度); fft_y1=fftshift(fft(y_after_fir); f=linspace(-fs/2,fs/2,n); figure; plot(f,abs(fft_y1); title(滤波后信号频谱); xlabel(f/Hz); ylabel(幅度); axis( 0 5

19、0 0 100);所设计的低通滤波器的幅频特性曲线与相频特性曲线 输入信号的幅频曲线 输入信号的相频曲线 通过滤波后的信号幅频曲线 通过滤波后的信号幅频曲线 (二) Matlab中自带工具箱FDATool快速的实现滤波器的设计1.拟定一个低通滤波器指标若需要设计一个16阶的FIR滤波器(h(0)=0),给定的参数如下:(1)低通滤波器(2)采样频率Fs为48kHz,滤波器Fc为10.8kHz(3)输入序列位宽为9位(最高位为符号位)在此运用MATLAB来完毕FIR滤波器系数的拟定。2.打开MATLAB的FDAToolMATLAB集成了一套功能强大的滤波器设计工具FDATool(Filter D

20、esign & Analysis Tool),可以完毕多种滤波器的设计、分析和性能评估。单击MATLAB主窗口下方的“Start”按钮,选择菜单“ToolBox” “Filter Design” “Filter Design & Analysis Tool(FDATool)”命令3.选择DesignFilterFDATool界面左下侧排列了一组工具按钮,其功能分别如下所述:创建多速率滤波器(CreateaMultirateFilter)滤波器转换(TransFormFilter)设立量化参数(SetQuantizationParameters)实现模型(RealizeModel)零极点编辑器(

21、Pole-zeroEditor)导入滤波器(ImportFilter)设计滤波器(DesignFilter)选择其中的按钮,进入设计滤波器界面滤波器类型(FilerType)为低通(LowPass)设计方法(DesignMethod)为FIR,采用窗函数法(Window)滤波器阶数(Filterorder)定制为15窗口类型为Kaiser,Beta为0.5Fs为48kHz,Fc为10.8kHz最后单击DesignFilter图标,让MATLAB计算FIR滤波器系数并作相关分析。由于FIR滤波器的输出结果通过了一个单位延时单元,所以在FDATool中,把它当作15阶FIR滤波器来计算参数。因此,

22、设立滤波器阶数时,要比规定的小1。4.滤波器分析计算完FIR滤波器系数以后,往往需要对设计好的FIR滤波器进行相关的性能分析,以便了解该滤波器是否满足设计规定。分析操作环节如下:选择FDATool的菜单“Analysis”“Magnitude Response”,启动幅频响应分析如图B.4所示,x轴为频率,y轴为幅度值(单位为dB)选择菜单“Analysis”“Phase Response”,启动相频响应分析。由该图可以看到设计的FIR滤波器在通带内其相位响应为线性的,即该滤波器是一个线性相位的滤波器。求出的FIR滤波器的系数可以通过选择菜单“Analysis”“FilterCoefficie

23、nts”来观测。图中列出了FDATool计算的15阶直接I型FIR滤波器的部分系数。5.导出滤波器系数为导出设计好的滤波器系数,选择FDATool菜单的“File”“Export”命令,打开Export(导出)对话框(三)滤波器设计总结FIR滤波器实现一般采用窗函数法和等纹波设计法。窗函数法还包含两个分支,一种是用公式先手动算出N值和其他相应得窗函数参数值,再代入窗函数和fir1实现,一种是用函数*rord估算出N和相应参数再用fir1实现。但是要注意*rord会低估或高估阶次n,也许会使滤波器达不到指定的性能,这时应稍微增长或减少阶次。假如截止频率在0或Nyquist频率附近,或者设定的de

24、v值较大,则得不到对的结果。滤波器实现形式及特点:由于一般的滤波器在运用窗函数是其通带波纹和阻带波纹不同(一般为第一个阻带波纹最大)因此,在满足第一个阻带衰减旁瓣时,比其频率高的旁瓣,它们的衰减都大大超过规定。而根据阻带衰减与项数的近似关系N = P(2)*fs/TW,可得当阻带衰减越大,所需项数越多。(四)DSP所需文献配置Fdacoefs.h中存放着所设计的滤波器的系数。Input.dat中为设计好的一个带有杂波的正弦波,用于dsp仿真时的数据输入。所生成的两个文献,系数文献内的数据届时候直接添加到c语言编写的dsp程序中,input文献用于dsp仿真进行时作为输入信号输入。四 基于DSP

25、的FIR滤波器实现 在完毕matlab的FIR滤波器的参数提取与输入文献“input.dat”的编写以后就可以开始dsp的滤波器的实现。具体思绪为:一方面寻找一种滤波器的算法,在这种算法的基础上运用C语言进行程序编写,再编写link.cmd文献将程序进行编译,之后导入输入信号,运用ccs自带的工具对于前后的波形进行分析。Dsp中程序运营流程图(一)DSP中滤波器的算法实现 FIR滤波器的输出表达式中x(n)表达滤波器在n时刻的输入;y(n)为n时刻的输出。 它的基本算法是一种乘法-累加运算,即不断地输入样本x(n),通过延时后,再进行乘法-累加,最后输出滤波结果y(n)。 1.线性缓冲区法线性

26、缓冲区法又称延迟线法,其特点: (a)对于N级的FIR滤波器,在数据存储器中开辟一个N单元的缓冲区(滑窗),用来存放最新的N个输入样本; b)从最老样本开始取数,每取一个样本后,将此样本向下移位; (c)读完最后一个样本后,输入最新样本存入缓冲区的顶部。 2.循环缓冲区法循环缓冲区法的特点如下: (a)对于N级FIR滤波器,在数据存储器中开辟一个N单元的缓冲区(滑窗),用来存放最新的N个输入样本; (b)从最新样本开始取数; (c)读完最后一个样本(最老样本)后,输入最新样本来代替最老样本,而其他数据位置不变; (d)用片内BK(循环缓冲区长度)寄存器对缓冲区进行间接寻址,使循环缓冲区地址首尾

27、相邻。本次设计的FIR滤波器所采用的就是循环缓冲区法。 (二)C语言实现FIR 采用C语言算法在DSP平台上实现了FIR低通数字滤波器,C语言算法相比于汇编算法可移植性很强。这里是在TMS320VC5510DSP为平台编写的C语言算法, 此算法可以稍加改动用在其他DSP芯片上, 而汇编算法则不然。这种方法具有以下优点: (a) 程序的入口和出口由C语言自动管理,不必手工编写汇编程序实现。 (b) 程序结构清楚,可读性强。 (c) 程序调试方便。由于C程序中的变量所有由C语言来定义,因此采用C源码调试器可以方便地观测C语言变量。 (d) 可移植性较强,通用性较好。 具体代码如下:#include

28、 stdio.h #include D:externincludetmwtypes.h /fdacoefs.h为Matlab生成的系数表头文献 /如运营不通过,请修改fdacoefs.h中的代码,将”#include”这行修改为如下: /#include d:MATLAB7externincludetmwtypes.h /也就是自己机器上的Matlab安装的绝对途径#define N 33 /FIR滤波器的级数+1,本例中滤波器级数为32 #define LEN 200 /待滤波的数据长度 long yn; int inputLEN; /输入缓冲,在仿真时将从内存载入 int outputLE

29、N; /输出缓冲,直接存放在内存中 void main() int i,j; int *x;const int16_T B33 = 82, 22, -127, -268, -240, 42, 463, 702, 434, -382, -1321, -1620, -595, 1865, 5078, 7808, 8879, 7808, 5078, 1865, -595, -1620, -1321, -382, 434, 702, 463, 42, -240, -268, -127, 22, 82; for(j=0;jLEN-1;j+) x=&inputj; yn = 0; for(i=0; i15

30、; while(1); (三)CSS仿真调试 CCS 是TI 推出的用于开发其DSP 芯片的继承开发调试工具, 集编辑、编译、链接、软件仿真、硬件调试及实时跟踪等功能于一体, 极大地方便了DSP 程序的设计与开发, 此外还提供图形显示功能, 方便用户观测特定地址的波形。此外, 还需向工程中添加Link. cmd文献MEMORY PAGE 0: EPROG: origin = 0x1400, len = 0x7c00 VECT: origin = 0xff80, len = 0x80 PAGE 1: USERREGS: origin = 0x60, len = 0x1c BIOSREGS: or

31、igin = 0x7c, len = 0x4 IDATA: origin = 0x80, len = 0x1380 EDATA: origin = 0x1400, len = 0x8000 EDATA1: origin = 0x9400, len = 0x4c00 SECTIONS .vectors: VECT PAGE 0 .sysregs: BIOSREGS PAGE 1 .trcinit: EPROG PAGE 0 .gblinit: EPROG PAGE 0 frt: EPROG PAGE 0 .text: EPROG PAGE 0 .cinit: EPROG PAGE 0 .pini

32、t: EPROG PAGE 0 .sysinit: EPROG PAGE 0 .bss: IDATA PAGE 1 .far: IDATA PAGE 1 .const: IDATA PAGE 1 .switch: IDATA PAGE 1 .sysmem: IDATA PAGE 1 .cio: IDATA PAGE 1 .MEM$obj: IDATA PAGE 1 .sysheap: IDATA PAGE 1 .stack: IDATA PAGE 1 此外还要导入rts.lib文献,在D:DSPcgtoolslib文献夹下。在CCSV5中建立工程,把c源代码和.cmd文献导入后,外加rts.

33、lib文献,它是TI提供的运营时支持库。假如是C代码写的源程序, 必须要包含该库该库。(四) 滤波器的仿真测试编译成功后会在”/debug”文献夹下产生*.out文献,在CCS软件的File-Load Program里打开这个.out文献。选择File-Data-Load打开之前Matlab生成的input.dat文献。将Address设立为input,Length设立为200,Page设立为Data。运营程序,点击按钮,程序即开始运营。打开View-Graph-Time/Frequency在上一步出现的对话框中,按如下图设立假如出现的波形图太大,在图形上点右键,将”Allow Docking

34、”、”Float in main window”之前的勾去掉,即会变成如下图的波形:反复前三个环节,只改变图形选项中的Display Type、Graph Title、Start Address,使之最后出现如下的图形:左上角:输入数据时域图(Start Address : input) 右上角:输入数据频谱(Display Type : FFT Magnitude) 左下角:输出数据时域图(Start Address : output) 右下角:输出数据频谱(Display Type : FFT Magnitude)五 DSP数字滤波器与硬件低通滤波器对比(一)二阶有源低通滤波电路的构建低通

35、滤波器是用低频信号衰减或克制高频信号。如图为典型的二阶低通滤波器。它由两级RC滤波环节与同相比例运算电路组成,其中第一级电容C接至输出端,引入适量的正反馈,以改善幅频特性。(二)二阶低通滤波器参数计算二阶低通滤波器性能参数表达式为C2/(CC1RR1)Q=0.707C/Q=1/R1C+1/R2C+(1+AV)/R2C1AV=1+R4/R3参数计算设定低通滤波器的截止频率为2KHz、品质因数Q=0.707,设定R1=R2=R,C1=C2=C;又根据截至频率,初步拟定电容值C1=C2=C=0.1U,由R1=R2=0.796K,R3=R4=4*R=3,184K(三)在protues环境下的仿真测试打

36、开protues软件,在元件库寻找到电阻,电容,运算放大器元件。根据电路图连接线路,再根据计算结果设定元件的参数。 二阶有源低通滤波器电路图与在protues中仿真的结果(四) 实物硬件连接以及测试结果 一方面在面包板上完毕电路的连接与测试。 完毕测试后在电路板上完毕焊接工作。由测试的波形的对比,有信号可以通过随着输入频率增长,电容电抗减小,由于电阻不变,而电容电抗减小,根据分压定理,电容两端的电压(输出电压)将随之减小。当输入频率增长到某一值时,电抗远小于电阻,输出电压与输入电压相比可忽略不计。这时,电路基本上完全阻止了输入信号的输出。同理对比一个噪声信号的波形的前后对比可以得出相同的结论。

37、(五)运用FilterPro的低通滤波器设计本设计是由TI公司的FilterPro滤波器设计软件直接设计生成的滤波器电路,FilterPro是一款强大的滤波器设计软件,研发时间断、成本比较低、产品开发投放市场快。与其它的类型的滤波器不同的是,它支持三种最常见的全极点滤波器类型:巴特沃兹(最大幅度平坦度)、切比雪夫(等纹波幅度)及贝塞尔(最大延迟时间平坦度)。此软件是通过了一系列精确细致的运算,得到更为抱负的低通滤波器,误差范围更小,产生效果更明显,更易于大家认可和接受。运用施密特触发器状态转换过程中的正反馈作用,可以将边沿变化缓慢的周期性信号变换为边沿很陡的矩形脉冲信号。具有科学性和对的性。1

38、 选择filter类型2 滤波器参数设定根据需求依据规定改写相应参数3 滤波器的算法选择这里由于butterworth算法所产生的曲线最为平滑所以选择此算法。4 滤波器的拓扑结构选择Sallen-Key滤波器是1955年R.P.Sallen与E.L.Key提出的一种由单个运算放大器和电阻、电容组成的低通滤波器。此外两个上方的为单反馈的下方的为双反馈的。二阶低通滤波器电路图与幅频曲线图(六) DSP数字滤波器与硬件电路滤波器对比总结一方面简朴的滤波器的硬件电路设计比较简朴,运用设计工具可以容易获得电路原理图。硬件设计的滤波器的滤波方式重要是运用了运算放大器在输入端的两个电容。当有信号通过的时候,

39、高频信号通过电容,电容的电抗减小,根据分压原理输入端的两端电压减小。当信号频率高于设定期,这时高频信号加在输入端的电压信号很小其输出信号可以忽略掉。而使用DSP设计的数字滤波器直观上的优势就是操作简朴快捷,得到的波形图清楚准确。另一方面数字滤波器的精度高,仿真度好,并且可靠性好相对于硬件电路受到外界环境例如温度湿度的影响比较小。硬件电路假如提高其精确度所需元件会增长许多导致体积增大成本增长不利于产品的生产使用。六 课程设计总结课程设计的开始,我们组的课题是基于dsp的门禁系统设计,但是由于指纹的输入器已经是完毕品并且只能与相应软件进行配合使用,并不适合用于开发板。所以将小组的课题更改为基于DS

40、P的FIR低通滤波器的设计。在开始的两天我们小组两人进行分工合作,一人进行资料文献的收集,另一人进行相应软件的安装。材料与软件准备完毕后,我们两人开始第一步在matlab的环境下进行滤波器的仿真与设计。通过对材料的阅读分析,matlab的设计可以分为两种,自带的fir函数与FDATool工具进行滤波器的设计。通过指令编写将三个信号叠加起来,形成一个输入信号。调用函数信号将输入信号进行解决,分别将滤波器的幅频特性与相频特性曲线和输入输出信号的幅频曲线与相频曲线输出。在完毕matlab的设计之后我们组获得六张图片可以分析滤波器的性能,外加滤波器的参数与输入信号文献。然后进行dsp的c语言程序编写。

41、在进行设计的过程中碰到的第一个问题就是文献编译过程之中出现了错误。程序在连接过程中寻找不到相应的头文献。之后通过将滤波器参数直接写入c语言程序中解决了问题。第二个问题是需要一个lib文献的支持才干使得c语言程序能过进行仿真,通过在ti官网上进行下载,并将文献添加在library的库中解决。在完毕软件仿真之后,开始对滤波器的硬件电路进行学习。在这个过程中我们找到了一个名为FilterPro的专门设计的软件。在软件的帮助之下,我们得到了一个简朴的二阶低通滤波器电路。通过protues软件我们绘制了一个简朴二阶低通滤波器电路图,在输入端输入一个正弦信号,在输出端运用幅频曲线显示结果,通过对比与之前所

42、设计的滤波器的仿真结果基本一致。在实验过程中,我们小组运用了matlab,ccs5.5,protues,FDATool,protel等软件完毕对于滤波器的设计与仿真。其中我们额外学习了滤波器的硬件电路,dsp的最小系统的设计,dsp的外围电路的设计和运用protel绘制元件图并转化为PCB图。在完毕这些过后,我们对于运算放大器的硬件电路原理也进行了了解,在这个过程之中我们复习了以前的有关于模电的知识,并且知道了运算放大器可以完毕滤波的原理是当有一定频率的信号进入时,随着输入的频率的升高电容的电抗减小,根据分压定理,电容两端的电压大小减少,输入的信号减小于是输出信号随之减小,这样高频信号就被过滤出去了,留下的就是低频信号。这次课程设计的局限性在于只能设计简朴的硬件电路,其滤波器的滤波效果不好失真比较严重,DSP设计的数字滤波器在开发板上进行仿真时高频信号没有能完全解决掉。但是在这其间我们通过这次课程设计收获了更多的东西。第一我们学会了如何在零基础的情况下进行资料的收集与整理。第二我们学会了在元件缺少的或者元件原理不清楚时通过向厂家询问寻求帮助。第三设计过程中将几个重要的实用软件例如MATLAB,CCS与protues等软件的使用有了基本的了解。第四我们学会了如何在MATLAB和CCS中编写滤波器程序。第五学会了如何将不同的软件配合起来使用。第六在程序的编译和链接过程中

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服