基于LabVIEW7.0的FIR数字滤波器的设计

   2013-03-23 工控之家网工控之家40
摘 要:虚拟仪器(Virtual Instrument,简称VI)是现代计算机技术、通信技术和测量技术相结合的产物。本文介绍了虚拟仪器的特点,应用以及基于LabVIEW虚拟仪器开发平台设计虚拟数字滤波器的方法。

关键词:FIR数字滤波器;LABVIEW;程序设计

Abstract:Virtual instrument is a product of modern computer software technology and communication technology in combination with test and measurement technology. The characteristic and apply of virtual instrument are introduced. Base on the virtual instrument development platform of LabVIEW,the design of virtual instrument of filter is given in details.

Key words:FIR filter; labview; programming

1 引言

  传统仪器是由厂家设计并定义好功能的封闭式机构,每种仪器实现一种特定的功能。随着计算机技术和传统仪器仪表技术的结合,在必要的数据采集硬件和计算机的帮助下,通过软件实现仪器的全部功能的新式仪器——虚拟仪器出现了。虚拟仪器技术作为新型的构造仪器技术,它可以部分实现甚至全部实现物理仪器功能。与传统仪器相比具有许多优点:对测试量的处理和计算可更复杂且处理速度更快,测试结果的表达方式更加丰富多样,可以方便地存储和交换测试数据,价格低,技术更新快。它的最大特点就是把由仪器生产厂家定义仪器功能的方式转变为由用户自己定义仪器功能,满足多种多样的应用需求。

  数字滤波器是数字信号分析中的重要组成部分,它实现对信号的滤波、提取、增强信号的有用分量、削弱无用的分量。经典滤波器的特点是输入信号中的有用的频率成分和希望滤除的频率成分各占有不同的频带,通过一个合适的选频滤波器达到滤波目的。但如果信号和干扰的频率相重叠,那么经典滤波器将无能为力,这时需要采用现代滤波器,如维纳滤波器、卡尔曼滤波器、自适应滤波器等。从实现的网络结构或从单位脉冲响应分类,数字滤波器可以分为无限脉冲相应滤波器(Infinite impulse respose,IIR)和有限脉冲相应滤波器(Finite impulse respose,FIR)。与IIR相比,FIR数字滤波器能够被设计成具有线性相位特性的滤波器。因此,它在要求具有线性相位的应用场合具有广泛的应用。数字滤波器的设计方法很多,其中较为常用的是窗函数设计法和频率采样设计法。本文介绍一种利用窗函数设计的虚拟滤波器。

2 LabVIEW软件主要功能和特点

  LabVIEW(Laboratory Virtual Instrument Engineering Workbench)即实验室虚拟仪器工程平台,是由美国国家仪器NI(National Instrument)公司推出的世界上第一个采用图形化编程技术的面向仪器的32位编译型程序开发系统。它的目标就是简化程序的开发工作,提高编程效率。是目前应用范围最广,功能最为强大的虚拟仪器平台。LabVIEW的高级软件库具有强大的数据处理能力,包括信号的产生、数据信号处理、测量、数据滤波、概率统计、线性代数、曲线拟合、数值分析等多种软件分析功能。LabVIEW使用可视化技术建立人机界面,提供了许多仪器面板中的控制对象,如表头、旋钮、开关及坐标平面图等。由于虚拟仪器的测试功能、面板控件都实现了软件化,任何使用者都可通过修改虚拟仪器的软件来改变它的功能和规模,这充分体现了软件就是仪器的设计思想。

  LabVIEW的运行机制从宏观上讲已经不再是传统上的冯·诺伊曼计算机体系结构的执行方式了。传统的计算机语言(如C)中的顺序执行结构在LabVIEW中被并行机制所代替。从本质上讲,它是一种带有图形控制流结构的数据流模式(Data Flow Mode),这种方式确保了程序中的函数节点( Function Node)只有在获得它的全部数据后才能够被执行。也就是说,在这种数据流程序的概念中,程序的执行是数据驱动的,它不受操作系统、计算机等因素的影。LabVIEW 支持多种操作系统平台,在任何—个平台上开发的LabVIEW 应用程序可直接移植到其它平台上。

3 数字滤波器的设计步骤


  因此,如果M选得较大,可以保证在窗口内有效值逼近。实际计算(3)式,可以用的M点采样值,进行M点IDFT(IFFT)得到。

  第二步:根据对过渡带及阻带衰减的要求,选择窗函数的形式,并估计窗口长度N。设待求滤波器的过渡带用表示,它近似等于窗函数主瓣宽度。因过渡带近似与窗口长度N 成反比,,A决定于窗口形式,例如,矩形窗A=4π,哈明窗A=8π等。按照过渡带及阻带衰减情况,选择窗函数形式。原则是在保证阻带衰减满足要求的情况下,尽量选择主瓣窄的窗函数。

  第三步:计算滤波器的单位取样响应h(n),

  (5)

  (5)式中是上面选择好的窗函数。若要求线性相位,则要求与和均对(N-1)/2对称。

  第四步:用(1)式验算技术指标是否满足要求。若不满足则根据具体情况重复二,三,四步,直到满足要求。

4 软件实现

  4.1前面板的设计

  图1为设计的数字滤波器的前面板。前面板用于设置输入数值和观察输出量,用于模拟真实滤波器的前面板。由于虚拟面板直接面向用户,是虚拟滤波器控制软件的核心。在设计这部分时,主要考虑界面美观、操作简洁,用户能通过面板上的各种按钮、开关等控键来控制虚拟滤波器的工作。实际中的待测信号可以由数据采集卡实时采集滤波,也可以由数据采集卡采集后保存为LabVIEW所能够识别的文件形式,之后再由LabVIEW进行分析滤波。在这里用基本的信号(正弦波,余弦波,方波,锯齿波)来模拟原始信号。程序采用窗函数法的计算流程,将窗函数与需要滤波的信号进行卷积实现信号的滤波。使用者可对原始信号,噪声信号和滤波器参数进行设置。原始信号的波形图,滤波的结果都可得到实时显示。这样,在程序成功的运行后就可以从显示区得到结果,使结果更为直观的反映出来。

  4.2 流程图的设计

  本数字滤波器的后面板即程序代码框图如图2所示。框图程序是由节点、端点、图框和连线四种元素构成的。节点类似于文本语言程序的语句、函数或者子程序。框图中的每一个对象端点与前面板上的对象(控制或显示)一一对应。不同的线型代表不同的数据类型,在彩显上,每种数据类型还以不同的颜色予以强调。


图1 数字滤波器的前面板


图2 滤波器的后面板

5 结论

  数字滤波器可以通过编程实现各种不同系统,满足不同的需要,又可以随时改动系数,调整滤波器参数,选择最佳方案。使用LabVIEW软件平台开发电气参数测量仪等虚拟仪器。实现了更高的效率,节省了更多的硬件开销,方便了系统的维护和减轻了仪器更新的负担。使用虚拟仪器逐步代替传统仪器已经成为测试领域发展的趋势。但是在实际应用中,仍要根据具体情况进行程序的优化和软硬件的结合,使虚拟仪器发挥更高的性能。

  本文作者创新点:采用Labview设计了一虚拟数字滤波器,该虚拟数字滤波器能够将带有干扰信号的正弦波、三角波、方波、锯齿波信号按照要求进行滤波,具有人机交互性好、易于操作等特点,能够广泛的应用于教学。

参考文献:

  [1] 丁玉美,高西全.数字信号处理[M].西安:西安电子科技大学出版社,2003。

  [2] Robert H.Bishop [美].LabVIEW7实用教程[M].北京:电子工业出版社,2005。

  [3] Instrumnts Catalogue. U.S. National Instruments,2003。

  周伟林,杨华勇,李清峰.基于LabVIEW的数字滤波器的设计[J] .微计算机信息,2006,5-1:163-164。

 
举报收藏 0打赏 0评论 0
更多>相关评论
暂时没有评论,来说点什么吧
更多>同类环保知识
推荐图文
推荐环保知识
点击排行
网站首页  |  免责声明  |  联系我们  |  关于我们  |  隐私政策  |  排名推广  |  广告服务  |  积分换礼  |  帮助中心  |  网站地图  |  违规举报
鲁ICP备12015736号-1