本文介绍了虚拟仪器的概念、组成和虚拟仪器开发软件 labview,以及基于LabVIEW的数据采集系统。并对虚拟仪器的前景进行了展望。 一、虚拟仪器 1、虚拟仪器的概念 所谓虚拟仪器,就是在通用计算机平台上,用户根据自己的需求来定义和设计仪器的测量功能。其实质是将可以完成传统仪器功能的硬件和最新计算机软件技术充分地结合起来,用以实现并扩展传统仪器的功能,来完成数据采集、分析及显示。虚拟仪器系统技术的基础是计算机系统,核心是软件技术。 2、虚拟仪器的组成 虚拟仪器由硬件设备与接口、设备驱动软件和虚拟仪器面板组成。其中,硬件设备与接口可以是各种以PC为基础的内置功能插卡、通用接口总线接口卡、串行口、VXI总线仪器接口等设备,或者是其它各种可程控的外置测试设备,设备驱动软件是直接控制各种硬件接口的驱动程序,虚拟仪器通过底层设备驱动软件与真实的仪器系统进行通讯,并以虚拟仪器面板的形式在计算机屏幕上显示与真实仪器面板操作元素相对应的各种控件。用户用鼠标操作虚拟仪器的面板就如同操作真实仪器一样真实与方便。 3、LabVIEW的简介 LabVIEW是一种程序开发环境,由美国国家仪器(NI)公司研制开发的,类似于C和BASIC开发环境,但是LabVIEW与其他计算机语言的显著区别是:其他计算机语言都是采用基于文本的语言产生代码,而LabVIEW使用的是图形化编辑语言G编写程序,产生的程序是框图的形式。 二、基于LabVIEW的数据采集系统 1、系统整体方案设计
一个完整的LabVIEW程序主要包括前面板、程序框图、连接器三部分。前面板是一种交互式图形化用户界面,用于设置输入数值和观察输出:框图是定义VI功能的图形化源代码,可利用图形语言对前面板的控制量和指示量进行控制;图标和连接器窗格用于把程序定义成一个子程序,以便在其他程序中加以调用。本系统包括波形信号采集、保存标准信号、信号处理和分析、采集数据回放四个部分。图1是信号采集与分析系统框图。 1.1 波形信号的采集
该部分主要利用外部触发方式发出触发信号,以使发出信号和通道的采集达到同步。以信号发生器发出信号为例;为了分析有限个波形的数据,必须保证采集卡采集的数据是发出的全部信号并且只有一个发出信号。本系统通过采集卡输出一个脉冲信号来触发信号发生器,以使采集卡的输入通道和脉冲输出通道同步。实际上,正是基于这一点,其发出的任意信号才必须被无遗漏的同步采集过来。本设计正好满足了此要求。该部分的前面板控件包括采集信号参数的设置控件、脉冲输出端口、信号输入端口以及存放信号处理后峰值点位置的三个数组。其中采样率的设置比较重要,例如根据需要发出的信号周期是0.4ms,每个周期采集200个点,采5个周期就需要rate=l MHz,那么,每个点之间的时间间隔就是lμs,这样推理便于后面的信号处理。 程序中可利用数据采集的工具DAQmx中的各种子vi来实现数据的 通信,并可通过Get Terminal Name with Device Prefix.vi来实现输入与输出之间的同步。最后通过波形图显示所采集到的信号,同时通过Waveform Peak Detec tion for l Chan.vi获得信号超过阈值的峰值点。其数据采集程序框图如图2所示。 1.2 信号处理与分析
此部分首先选择以前保存过的标准信号作为信号处理的标准。选择路径后,相应的标准会存放到处理中的位置。然后点击前面板中的“信号处理”按钮,这样,相应的处理结果就会显示出来。标准信号和采集信号峰值点的位置和个数相应的显示出来,最后的相减结果也以数组的形式给出。其中无论是重新选择的标准信号还是以前默认的信号,都可以通过波形再次回放出来。通过一个选择结构来实现用什么样的标准信号来处理,其信号处理子模块的程序框图如图3所示。 l.3 信号的保存
在信号采集模块中,每次采集都默认保存,而且采集信号每次保存后都会覆盖上一个,这样,在程序运行过程中,用户可以随机地保存标准信号。其方法是把默认目录下的test.1vb文件复制到想要保存的路径下,然后通过读取测量文件把该目录下的波形提取出来。在此,标准信号的回放在信号处理的过程中已经用波形图的形式显示出来,但要用到此处保存路径的属性节点。其保存标准信号的程序框图如图4所示。 2、设计模式的选择
该程序的设计模式是基于事件结构的人机界面(UI EventLoop),即用控件的事件结构来响应用户操作。它可以避免因轮询导致的CPU浪费,而且会自动产生事件队列,从而避免丢失事件。 事件结构不仅使程序变得简单,提高了CPU的利用率,而且可以使几个子程序同时运行,从而在LabVIEW中实现多线程操作。这一性能取决于LabVIEW是一种自动多线程语言,它可自动根据用户编写的程序决定线程的数目、分配、管理和切换等。而该线程的执行系统则可在VI的属性对话框中直接进行配置。一般来说,一个独立的循环或者子VI就是一个独立的线程。前面板上的一个单击事件响应一个线程的执行,但多个线程可以并行运行,互不影响。
3、整体结构
本系统中各个部分的模块均可通过事件结构来实现,单击前面板中相应的操作程序,可相应地运行有关事件。前面板的整体结构如图5所示。
本系统可通过采集卡采集到由传感器感知到的波形信号,并进行相应的处理,同时对信号进行分析,以得出信号异变情况。事实上,基于LabVIEW平台开发的系统具有体积小巧,功能强大,处理速度快等优点,可用于各种结构的检测工程中。当然,本系统还存在着某些需要改进之处,由于是首次独立开发,主要功能模块只是初步通过调试,故在系统的纠错能力和信息提示等方面还需完善。 总结 虚拟仪器设计已经成为测试与仪器技术发展的一个重要方向。随着高速AD芯片和 电路的进一步集成化,可以设想在不远的将来,一台装有虚拟仪器软件的标准微机成为一个多功能的测量仪器站,从根本上改变目前专用仪器的研制和生产方式,具有广阔的应用前景和巨大的潜在经济效益。 从虚拟仪器的概念和LabVIEW诞生至今,几经发展正走向成熟。虚拟仪器是在PC技术的基础上发展起来的,所以也会以最快的速度来“继承”飞速发展的PC技术。利用最新商业技术的优点,比如功能超卓越的处理器和海量的数据存储,使在数据导入磁盘的同时就能实时地进行复杂的分析。随着现在软件和硬件技术的飞速发展,虚拟仪器必将成为未来实验室、研究机构以及工业应用发展的方向。
|