
基于LabVIEW的抛物线内插设计说明.doc
15页word格式.LABVIEW课程设计报告基于labview的抛物线内插设计学院:自 动 化 专业:测控技术与仪器 班级:0 4 0 7 0 1 0 1 学号:2010040701031姓名:张 亚 雄指导教师:吴 星 刚课程设计时间:2012年12月10日—2012年12月23日目 录0. 前言 11. 总体方案设计 21.1 抛物线信号恢复显示原理 32. LabVIEW下的程序设计 42.1 软件层次设计 62.2 程序框图的设计 63. 调试及结果分析 83.1运行检验 83.2调试分析 94. 结论及进一步设想 9参考文献 10课设体会 11附 录 基于LabVIEW的抛物线信号内插设计 12基于LabVIEW的抛物线信号内插设计张亚雄 沈阳航空航天大学自动化学院摘要:本次课程设计主要是通过对LabVIEW软件的使用和调试,设计一个基于抛物线信号内插设计,以此来实现对抛物线采样信号内插恢复显示程序设计的思路是从信号序列开始处取三个采样点组成一个插值数组进行等距离内插,且仅仅在第一个点和第二个点之间内插由于是等距离内插,因此插值的每个点的时间很容易算出,然后利用公式计算插值点处的值。
如此反复计算,直至最终采样点结束该设计主要进行抛物线信号的内插恢复,也可以应用到其他信号的恢复当中,设计简单,操作方便关键字: LabVIEW;采样;抛物线内插;恢复显示0. 前言虚拟仪器技术就是利用高性能的模块化硬件,结合高效灵活的软件来完成各种测试、测量和自动化的应用灵活高效的软件能帮助您创建完全自定义的用户界面,模块化的硬件能方便地提供全方位的系统集成,标准的软硬件平台能满足对同步和定时应用的需求虚拟仪器技术反映了当前测量技术的发展方向:涉及面广,包括数学、物理、电工电子技术、计算机软硬件、信号处理及相关专业的测试技术测试的目的是感知某种事物或者现象,而这种事物或者现象可以用某些信息来表征构建一个测试系统,首先要做的就是全面了解和仔细分析被测信号及测试环境,然后根据被测信号特征建立测试模型,确定测试方案对被测信号了解得不够,就会影响到测试的每一个环节,包括仪器、数据采集卡的选型、信号处理方式、数据分析方法等信号是人们认识客观物质运动的内在规律、研究各个物理量之间的相互关系、预测未来变化趋势的重要依据,因此必须透彻地了解所研究信号的各种属性,对信号有一个清楚全面的认识,这也是本节的目的。
测试结果通常需要与测试人员或用户进行交互,即测试人员应能及时了解当前的测试结果这种交互最直接的方式是将测试原始数据以波形的方式显示出来,供测试人员观察因此,如何把测试得到的实时数据或者存储在存储器中的数据显示在屏幕上,是测试中的一项重要任务本文紧扣工程实践,依托LabVIEW平台环境,详细地阐述并实现对抛物线采样信号的内插恢复显示,为对相关方面的应用提供理论依据和基础参照1. 总体方案设计本文中,主要利用LabVIEW的数据采集系统的方便的函数信号处理能力,实现利用对抛物线采样信号的内插恢复显示功能首先对仿真抛物线信号进行采样,然后利用抛物线内插法对采样信号进行内插,通过总VI与子VI的链接,显示原始采样信号及插值后曲线总体的流程图如图1所示:仿真抛物线信号原始采样波形插值复原波形抛物线内插方式恢复显示插入点数间隔 图1 总体流程框图1.1 抛物线信号恢复显示原理整个电路的工作原理是首先设计一个信号恢复系统,信号恢复系统运用抛物线内插显示的方式抛物线插值的基本原理是用一条通过三个已知信号点的抛物线来表示信号的函数关系,然后从抛物线上等距离取值插入相应的位置,构成新的插值序列,接着再用直线将新的插值序列连接起来。
这样得到的波形就平滑多了,也更接近真实信号抛物线的数学表达式为: (1) 上式是一个二次方程,因此抛物线插值又称二次插值抛物线通过三个已知点,和,即满足条件: ,, (2)令,则, , ;, , ;, , 这样,含有、两个因子,令,利用确定其中的系数,得“ (3)类似地可以得出 (4) (5)于是 (6)称为以为结点的插值基函数,称为插值数组整体程序流程图如图2所示:信号恢复系统数据采样原始采样信号曲线结束仿真抛物线信号插值恢复信号曲线开始图2 整体程序流程图2. LabVIEW下的程序设计在LabVIEW中,有两处地方可用来生成模拟信号,一是Signal Generation模板,二是Waveform Generation模板。
Signal Generation模板按照图3中(a)→(b)→(c)→(d)的顺序进入,Waveform Generation模板按照图3中(a)→(b)→(e)的顺序进入 (b)Analyze模板 (a)Functions选项板(c)Signal Processing模板 (d)Signal Generation模板 (e)Waveform Generation模板图3 信号生成模板 Singal Generation模板和Waveform Generation模板的功能大同小异,生成的信号类型差不多,主要区别是Waveform Generation模板包含了信号的时间信息,波形是时间的函数;而Single Generation模板则不包括Waveform Generation模板中个模块参数设置更为灵活,功能更强大,其中的许多模块是在Signal Generation模板的基础上进一步开发的。
由于并没有专门的仿真抛物线信号发生器,所以采用公式函数信号发生器如图4,.通过输入抛物线公式来实现仿真抛物线信号的产生图4 公式函数信号发生器2.1 软件层次设计在本次课设中,由于整体的程序框图比较复杂,并不能用单个屏幕进行显示,所以这里采用子VI的形式通过总VI对子VI的调度,从而实现程序册各方面应用LabVIEW中的子VI相当于文本编程语言中的函数、过程和子程序,就是可以被其他的VI调用的VI可以将任何一个定义了图标和连接器的VI作为另一个VI的子VI进行调用调用的方法是在框图窗口打开时,选择Functions模板Functions→All Functions→Select a VI…,然后在弹出的“Choose the VI to open; ”对话框中定位所要调用的子VI,将其双击打开后,就可以与LabVIEW内置VI和函数一样放在框图上2.2 程序框图的设计子VI主要是二阶抛物线内插恢复显示系统,实现的主要方式是,从信号序列开始处取三个采样点组成一个插值数组进行等距离内插,且仅仅在第一个点和第二个点之间内插由于是等距离内插,因此插值的每个点的时间很容易算出,然后利用公式(6)计算出插值点处的值,如图5所示。
一个插值数组处的内插完成后,将所有的插值连同插值数组第一个值一起放入插值序列中接下来去掉插值数组中第一个采样点,加入一个新采样点组成一个新的插值数组继续插值,直至最终采样点结束图5 抛物线插值算法实现过程图6 子VI前面板总VI由于将内插过程做成了子程序,因此程序框图相当简单,它包括波形采样、内插和显示三个步骤如图7、8所示,是总VI的前、后面板图7 总VI前面板图8 总VI后面板3. 调试及结果分析3.1运行检验基于上述设计的方案,对实验的整体程序进行验证,首先更改公式函数信号发生器的公式输入端,使产生一个相对完整的仿真抛物线波形,如图9所示键入合适的采样信号频率、采样信息和插入点数,运行该后可以观察原始采样波形和抛物线内插后的波形,如图10所示从图中可以看出内插后的抛物线比原始波形平滑的多,达到了课程设计的要求图9 原始采样波形图10 整体程序验证3.2调试分析整个实验调试过程中出现了很多问题,由于时间过长,对于LabVIEW的软件已经不太熟悉,所以在应用其函数时找不到其准确的位置,,于是通过LabVIEW中的帮助,教材上的讲解和老师同学的指导,一点点的修改最后搭成了完整的回路。
另外在子VI中,由于算法的连接中x的值均采用整数进行循坏所以可能有些微的不够尽善尽美,相信通过继续的学习可以解决这个技术难题!4. 结论及进一步设想本设计实现了对抛物线采样信号的内插恢复显示,对仿真抛物线信号进行采样,对采样信号进行内插,显示原始采样信号及插值后曲线与此同时,本设计也存在着很大的设计空间,如还可以实现多种其他信号的恢复显示功能,有很高的研究价值参考文献[1] 杨乐平.虚拟仪器设计概论.北京:电子工业出版社,2003.[2] 秦文虎. 虚拟现实基础及可视化设计. 北京:化学工业出版社,2009. [3] 张毅.虚拟仪器技术分析与应用.北京:清华大学出版社,2005.[4] 侯国屏. LabVIEW7.1编程与虚拟仪器设计.北京:机械工业出版社,2004.[5] 徐涛、宋崎、胡立夫.虚拟仪器技术实验指导书.沈阳.沈阳航空航天大学,2010.[6] 戴鹏飞.测试工程与LabVIEW应用.北京.电子工业出版社,2006.课设体会 两周的虚拟仪器课设已经结束,在这两周中,通过指导老师吴星刚老师的和同学的帮助,基本上达到了课设题目的要求,这让我倍感欣慰,首先在这里感谢我的老师和同学,没有你们的帮助,我想我的课设将难上加难。
课设并没有我想象的那么容易,从借阅书,到复习虚拟仪器的知识,再到开始动手进行实践,设计LabVIEW程序,每一步都让我体验的困难的滋味,这不仅仅是一次编写程序的过程,更是思维、想。
