虚拟仪器概述施荣理双控03045090070摘要:虚拟仪器是计算机技术与仪器技术完美结合的产物,代表了仪器的发展方向,它实际上是一个按照仪器需求组织的数据采集系统。目前这一领域,使用较为广泛的计算机语言和开发环境是美国NI公司的Labview。Labview与虚拟仪器技术成为测控领域关注的热点技术。它在数据采集(DAQ)、虚拟仪器软件框架(VISA)、通用接口总线(GPIB)及串口仪器控制、图像处理、运动控制、数据分析和图标显示等方面都具有强大的优势。虚拟仪器技术与Labview已成为测控系统中的实际工业标准。关键词:虚拟仪器,labview,测控技术Keyword:virtualinstrument,labview,measurementandcontroltechnology1虚拟仪器产生背景传统仪器技术发展到今天,已经经历了模拟仪器、数字仪器和智能仪器等阶段,从20世纪70年代开始进入到了虚拟仪器时代。通常,在完成某个测试任务时需要很多仪器,如示波器、电压表、频率分析仪、信号发生器等,对复杂的数字电路系统还需要逻辑分析仪、IC测试仪等。这么多的仪器不仅价格昂贵、体积大、占用空间,相互连接起来很费事、费时,而且经常由于仪器之间的连接、信号带宽等方面的问题给测量带来很多麻烦,使得原来并不复杂的测量变得异常困难。要提高电子测量仪器的测量准确度和效率,就要求仪器本身具有自动调节、校准、量程转换、计算和寻找故障等功能,能自动存储有关数据并在需要的时候自动调出,这些要求传统仪器很难满足,在以前几乎被视为不可能完成的任务。计算机科学和微电子技术的迅速发展和普及,有力地促进了多年来发展相对缓慢的仪器技术。目前,正在研究的第三代自动测控系统中,计算机处于核心地位,计算机软件技术和测控系统更紧密地结合成了一个有机整体,仪器的结构概念和设计观点等都发生了突破性的变化,出现了新的仪器概念——虚拟仪器。由于虚拟仪器应用软件集成了一起的所有采集、控制、数据分析、结果输出和用户界面等功能,使得传统仪器的某些硬件乃至整个仪器都被计算机软件所代替。2虚拟仪器的概念虚拟仪器(virtualinstrument,VI)的概念是由美国国家仪器公司(NI)提出来的,虚拟仪器本质上是虚拟现实的一个方面的应用结果、也就是说虚拟仪器是一种功能意义上的仪器,它充分利用计算机系统强大的数据处理能力,在基本硬件的支持下,利用软件完成数据的采集、控制、数据分析与处理以及测试结果的显示等,通过软、硬件的配合来实现传统仪器的各种功能,大大地突破了传统仪器在数据处理、显示、传送、存储等方面的限制,使用户可以方便地对仪器进行维护、扩展与升级。虚拟仪器是基于计算机的仪器,计算机和仪器的紧密结合时目前仪器发展的一个重要方向,虚拟仪器就是在通用计算机上加上一组软件和硬件,使得使用者在操作这台计算机时,就像在操作一台自己设计的专用的传统电子仪器。在虚拟仪器系统中,硬件仅仅是为了实现信号的输入输出,软件才是整个仪器系统的关键。任何一个使用者都可以通过修改软件的方法,很方便地改变、增减仪器系统的功能与规模,所以有了“软件就是仪器”之说。3虚拟仪器的特点虚拟仪器的最大的特点是将计算机丰富的资源与仪器硬件、DSP技术相结合,在系统内共享软件硬件资源,打破了以往由厂家定义仪器功能的模式,由用户自己定义仪器功能。在虚拟仪器中,使用相同的硬件系统,通过不同的软件编程,就可以实现功能完全不同的测量仪器。传统仪器和虚拟仪器系统的比较如下表所示:虚拟仪器传统仪器系统标准用户自定义,标准逐渐统一仪器厂商自定义,标准难统一系统开放性开放、灵活,可与计算机技术保持同步发展封闭性、仪器间相互配合较差系统关键及升级关键是软件,性能升级方便,通过网络下载升级程序即可关键是硬件,升级成本较高,且升级必须上门服务技术更性周期技术更新周期短(1-2年)技术更新周期长(5-10年)系统成本及复用性价格低廉,软件使得开发和维护费用降至最低系统。仪器间资源可重复利用率高价格昂贵,开发和维护开销高。仪器间一般无法相互利用系统的开放性可以与网络及周边设备方便互连与其他设备仪器的连接十分有限由此可见,虚拟仪器尽可能采用通用的硬件,各种仪器的差异主要是软件,同时能充分发挥计算机的能力,有强大的数据处理功能,可以创造出功能更强大的“个人仪器”。4虚拟仪器的构成虚拟仪器系统的结构可以用下图表示:显示器信号分析及处理器微机接口各类接口A/D转换器D/A转换器信号调理器输入信号信号调理器信号输出虚拟仪器的基本构成包括计算机、虚拟仪器软件、硬件结构模块,其中硬件接口模块可以包括插入式数据采集卡(DAQ)、串并口、IEEE488接口(GPIB)卡、VXI控制器以及其他接口卡。目前较为常用的虚拟仪器系统是数据采集卡系统、GPIB仪器控制系统、VXI仪器系统以及这三者之间的任意组合。接下来介绍三种虚拟仪器系统的各自特点。4.1PC总线插卡型的虚拟仪器这种方式借助于插入计算机内的数据采集卡与专用的软件如LabVIEW相结合。它充分利用计算机的总线、机箱、电源及软件的便利。但是受PC机机箱和总线限制,且有电源功率不足,机箱内部的噪声电平较高,插槽数目也不多,插槽尺寸比较小,机箱内无屏蔽等缺点。另外,ISA总线的虚拟仪器已经淘汰,PCI总线的虚拟仪器价格比较昂贵。还在随着基于PC的工业控制计算机技术的发展,PC-DAQ方式存在的缺点正在被克服。因个人计算机数目非常庞大,插卡式仪器价格便宜,因此其用途广泛,特别适用于工业测控现场、各种实验室和教学部门使用。4.2GPIB总线方式的虚拟仪器GPIB技术是IEEE488标准的虚拟仪器早期的发展阶段,它的出现使电子测量由独立的单台手工操作向大规模自动测控系统发展。典型的GPIB系统由一台PC机、一块GPIB接口卡和若干台GPIB仪器通过GPIB电缆连接而成。在标准情况下,一块GPIB接口可带多达14台仪器,电缆长度可达40米。GPIB技术可用计算机实现对仪器的操作和控制,替代传统的人工操作方式,可以更方便地把多台仪器组合起来,形成自动化测控系统。GPIB测控系统的结构和命令简单,主要应用于台式仪器,适合于精确度要求高的,但计算机高速传输状况和实时性要求不高的场合。4.3VXI总线方式的虚拟仪器VXI总线是VMEbusExtensionforInstrumentation的缩写,是高速计算机总线VME在VI领域的扩展,有稳定的电源、强有力的冷却能力和严格的RFI/EMI屏蔽。由于它的标准开放,且具有结构紧凑、数据吞吐能力强、定时和同步精确、模块可重复利用、众多仪器厂家支持的优点,得到广泛的应用。经过多年的发展,VXI系统的组建和使用越来越方便,有其他仪器无法比拟的优势,适用于组建大、中规模自动测量系统以及对速度、精度要求高的场合,但VXI系统要求有专用的机箱、零槽管理器及嵌入式控制器,造价比较高。5虚拟仪器开发语言目前,业界基本认同的虚拟仪器定义是“基于通用计算机的测控系统”,这里并没有限定这个测控系统的程序开发语言,目前许多种语言都有开发成功的虚拟仪器案例,但是众多的开发人员从“”教、学、用”三个角度体会,从各方面综合考虑,一致认为Labview还是测控领域最优秀的图形语言开发环境。图形化的程序语言又称为“G“语言,它与C、Pascal、Basic等传统编程语言有着诸多的相似之处,如相似的数据类型、数据流控制结构、程序调试工具以及层次化的编程特点等。但二者最大的区别在于,传统编程语言用文本语言编程,而Labview用图形语言(即各种图标、图形符号、连线等),以框图的形式编写程序。用Labview编程无需具备太多的编程经验,因为Labview使用的都是测试工程师所熟悉的术语与图标,如各种旋钮、开关和波形图等,界面非常直观形象。因此Labview对于缺乏丰富编程经验的测试工程师们来说是个极好的选择。Labview目前已经广泛地被工业界、学术界和研究实验室所接受,被视为一个标准的数据采集和仪器控制软件。Labview集成了与满足GPIB、VXI、RS-232和RS-485协议的硬件及数据采集卡通信的全部功能。它还内置了便于应用TCP/IP、ActiveX等软件标准的库函数,是一个功能强大且灵活的软件,利用它可以方便地建立自己的虚拟仪器,其图形化的界面使编程和使用过程都生动有趣。Labview作为一个面向最终用户的工具,它可以增强构建科学和工程系统的能力,提供了实现仪器编程和数据采集系统的便捷途径,使用它进行原理研究、设计、测试并实现仪器系统时,可以大大提高工作效率。6虚拟仪器的应用虚拟仪器系统开放、灵活,可与计算机技术保持同步发展,以提高精确度,降低成本,并大大节省用户的开发时间,因此已经在测量领域得到广泛的应用。6.1检测方面在实验室,利用虚拟仪器开发工具开发专用虚拟仪器系统,可以把一台个人计算机编程一组检测仪器,用于数据/图像采集、控制与模拟。中国农业大学的研究人员利用虚拟仪器开发平台开发了用于精密播种机性能检测的实验室自动化系统。6.2监控方面用虚拟仪器系统可以随时采集和记录从传感器传来的数据,并对之进行统计、数字滤波、频域分析等处理,从而实现监控功能。6.3教学方面目前,随着虚拟仪器系统的广泛应用,越来越多的教学部门也开始用它来建立教学系统,不仅大大节省了开支,而且由于虚拟仪器系统具有灵活、可重用性强等优点,使得教学方法也更加灵活了。6.4电信方面由于虚拟仪器具有灵活的图形用户接口和强大的检测功能,同时又能与GPIB和VXI仪器兼容,因此很多工程师和研究人员都把他用语电信检测和场测试。7虚拟仪器的发展现状与趋势7.1国外虚拟仪器现状虚拟仪器技术目前在国外发展很快,以美国国家仪器公司(NI公司)为代表的一批厂商已经在市场上推出了基于虚拟仪器技术而设计的商品化仪器产品。在美国虚拟仪器系统及其图形编程语言,已作为各大学理工科学生的一门必修课程。美国的斯福坦大学的机械工程系要求三、四年级的学生在实验时应用虚拟仪器进行数据采集和实验控制。近年来,世界各国的虚拟仪器公司开发了不少虚拟仪器开发平台软件,以便使用者利用这些公司提供的开发平台软件组建自己的虚拟仪器或测试系统,并编制测试软件。最早和最具有影响力的开发软件,是NI公司的LABVIEW软件和Labwindows/CVI开发软件。LABVIEW采用图形化编程方案,是非常实用的开发软件。Labwindows/CVI是为熟悉C语言的开发人员准备的、在windows环境下的标准ANSIC开发环境,除了上述优秀的开发软件之外,美国HP公司的HP-VEE和HPTIG平台软件,美国Tektronix公司的Ez-Test和Tek-TNS软件,以及美国的HEMData公司的Snap-Master平台软件,也是国际上公认的优秀虚拟仪器开发平台软件。当今虚拟仪器的系统开发采用的总线类型较多,世界各国的公司,特别是美国NI公司,为使虚拟仪器能够适应各种总线的配置,开发了大量的软件以及适应要求的硬件(插件),可以灵活的组建不同复杂程度的虚拟仪器自动检测系统。不仅如此,开发商们也开始建立各种仪器专用的总线系统。美国NI公司在1997年9月1日推出模块化仪器的主流平台PXI,这是与CompactPCI完全兼容的系统。这种虚拟仪器模块化主流平台PXI/CompactPCI的传输速度已经达到100Mb/s。是目前已经发布的最高传输速度。虚拟仪器的开发厂家,为扩大虚拟仪器的功能,在测量结果的数据处理、表达模块及其变换方面也做了很多工作,发布了各种软件,建立了数据处理的高级分析库和开发工具库(例如测量结果的谱分析、快速傅立叶变换、各种数据滤波器、卷积处理和相关函数处理、微积分、峰值和阈值检测、波形发生噪声发生、回归分析、数值运算、时域和频域分析等),使虚拟仪器发展成为可以组建极为复杂自动检测系统的仪器系统。7.2国内虚拟仪器现状在国内已有部分院校的实验室引入了虚拟仪器系统,清华大学、上海复旦大学、上海交通大学、广州暨南大学、华中理工大学、四川联合大学等。近一、两年来这些学校在原有的基础上,又开发了