《虚拟仪器技术》第1页第1章虚拟仪器概述本章概述1.1虚拟仪器的基本概念1.2虚拟仪器的形成和发展1.3虚拟仪器的系统结构1.4虚拟仪器的软件系统1.5虚拟仪器系统设计及系统集成1.6虚拟仪器技术应用本章总结《虚拟仪器技术》第2页1.1虚拟仪器的基本概念1.虚拟仪器的定义传统仪器:特定功能和仪器外观。虚拟仪器(VI,VirtualInstrumentation):是一种以计算机和测试模块的硬件为基础、以计算机软件为核心所构成的,并且在计算机显示屏幕上虚拟的仪器面板,以及由计算机所完成的仪器功能,都可由用户软件来定义的计算机仪器。《虚拟仪器技术》第3页如:虚拟示波器《虚拟仪器技术》第4页虚拟数字电压表基于虚拟仪器的温度检测与控制《虚拟仪器技术》第5页2.虚拟仪器的特点从虚拟仪器的组成结构上来看:(1)虚拟仪器的硬件是通用的(包括通用计算机硬件平台和通用的测量功能硬件);(2)良好的人机界面。虚拟仪器的面板(或称软面板)是虚拟的(通过“控件”虚拟出面板);(3)功能强。虚拟仪器的功能是由用户软件定义的。激励信号调理、采集硬件计算机仪器面板、鼠标、键盘软件采集信号测量数据输出数据控制参数键入命令被测对象用户采集和产生显示和输出数据命令控制和处理《虚拟仪器技术》第6页(4)虚拟仪器之“虚拟”含义:虚拟仪器面板;软件实现仪器功能。如:基于高速数据采集硬件,通过计算机软件编程可实现“虚拟示波器”、“虚拟频谱仪”、“虚拟交流数字电压表”、“虚拟频率计”、“虚拟相位计”等不同仪器。(5)因此,软件是虚拟仪器的核心,NI提出“软件即仪器”(Thesoftwareistheinstrument)。《虚拟仪器技术》第7页与传统仪器相比,虚拟仪器技术特点:(1)功能强、性价比高、开放性(可扩充性)好;充分利用计算机丰富的软硬资源。仪器功能可通过软件灵活设计(基于相同的硬件,通过软件设计可实现不同的虚拟仪器)。仪器升级方便,性价比高(一机多用)。基于计算机网络技术,可实现“网络化虚拟仪器”。(2)操作方便;通过图形用户界面(GUI)操作虚拟仪器面板。(3)硬件模块化、系列化;基于仪器总线技术,设计出模块化、系列化硬件。《虚拟仪器技术》第8页比较内容虚拟仪器传统仪器系统构成软件和通用硬件。软件是关键专用硬件系统开发周期开发时间短、技术要求低、系统通用性强开发时间长、技术要求高、系统功能较专一开发费用软件使得开发和维护费用降至最低开发与维修开销高技术更新周期短(1~2年)长(5~10年)价格价格低、可复用与可重配置性强价格昂贵功能可塑性用户定义仪器功能,柔性厂商定义仪器功能,刚性系统开放性开放、灵活,与计算机技术同步发展封闭、固定构成复杂系统能力易与网络及其他周边设备互连功能单一的独立设备人机交互无限的显示选项、界面友好有限的显示选项虚拟仪器与传统仪器的比较:《虚拟仪器技术》第9页1.2虚拟仪器的形成和发展1.虚拟仪器形成的背景(1)电子测量仪器(ElectronicInstruments)及自动测试系统(AutomaticTestSystem,ATS)的发展第一代测试系统模拟仪器第一代电子仪器数字仪器智能仪器个人仪器数字化计算机化模块化第二代电子仪器第三代电子仪器第四代电子仪器虚拟仪器及系统第四代仪器系统软件仪器自定义型仪器模块嵌入计算机中计算机嵌入到仪器中扫描测试系统专用测试系统GPIB仪器系统模块化仪器系统数字化标准化模块化第二代测试系统第三代测试系统模拟式自动测试系统特定设计专用型台式仪器积木型模块仪器集成型《虚拟仪器技术》第10页(2)仪器与自动测试系统总线技术总线(bus):信号或信息传输的公共路径。片内总线:微处理器芯片内连接内部各逻辑单元;片间总线:元件级总线(如典型的微机“三总线结构”)。还有串行总线,如:Motorola的SPI(SerialPeripheralInterface,串行外围接口)、Philips的I2C(InterICbus,片间总线)、NS的MicroWire(串行同步双工通信接口)等。内总线:板级总线。如个人计算机的PC/XT、PC/AT、ISA、EISA、MCA、PCI,及工业控制的STD、VME、CompatPCI,仪器与测量系统的CAMAC、VXI、PXI等。外总线:外部通信总线。如RS-232/485、USB、IEEE1394、EPP、SCSI;现场总线CAN、LONworks、FF;仪器与测量系统的GPIB、CAMAC、HP-IL、MXI等。《虚拟仪器技术》第11页通过总线技术,可实现:模块化硬件设计;标准化;便于生产、维护(维修)、升级;较好的经济性。《虚拟仪器技术》第12页仪器与自动测试系统几种常用总线的比较摘自:EvaluatingPXIandVXIPlatformsforyourMeasurementandAutomationNeeds,NI《虚拟仪器技术》第13页(2)虚拟仪器是技术发展的结果计算机技术、软件技术、总线技术、网络技术、微电子技术的发展,及其在电子测量技术与仪器领域中的应用,使新测试理论、测试方法、测试技术不断出现,仪器与系统的结构不断推陈出新,电子测量仪器及自动测试系统的结构也发生了质的变化,功能与性能得到不断提高。计算机(PC机)处于核心地位,计算机软件技术和仪器与测试系统更紧密结合成了一个有机整体。在上述的背景下,提出了全新概念的仪器——虚拟仪器。1986年,美国国家仪器公司(NI,NationalInstrument)提出了虚拟仪器(VirtualInstrumentation)的概念。《虚拟仪器技术》第14页1990年代,虚拟仪器得到业界广泛认可和应用,相继推出了基于GPIB总线(GeneralPurposeInterfaceBus)、PC-DAQ(DataAcquisition)和VXI总线(VMEbuseXtensionforInstrumentation,1987年)、PXI总线(PCIeXtensionforInstrumentation,1997年)等多种虚拟仪器系统。虚拟仪器软件采用面向对象和可视化编程技术。底层驱动和上层应用软件融为一体。虚拟仪器软件的标准化:VPP(VXI即插即用,VXIplug&play,1993年)和VISA(VirtualInstrumentSoftwareArchitecture,虚拟仪器软件体系结构)。IVI(InterchangeableVirtualInstruments,可互换式虚拟仪器,1997年)。《虚拟仪器技术》第15页(3)虚拟仪器技术的发展与展望虚拟仪器技术是计算机技术与测试技术相结合的产物。多门学科多种技术的融合,如测试技术、计算机技术、软件技术、数字信号处理、总线与接口、网络与通信、传感技术、光电技术、微机械技术等。(1)新的总线技术的应用(如HS488,1394b等)。(2)速度不断提高。(3)智能化、模块化、集成化是硬件发展的主流。(4)软件技术。第一是软件标准化问题;第二是如何利用各种软件开发环境及工具,编制出符合标准的应用软件。(5)网络化仪器系统。(6)应用范围更加广泛。《虚拟仪器技术》第16页1.3虚拟仪器的系统结构1.虚拟仪器系统组成及各部分基本功能(1)虚拟仪器的系统构成硬件和软件两大部分构成。硬件是基础,软件是核心。《虚拟仪器技术》第17页(2)各部分基本功能虚拟仪器的内部功能,可划分为信号采集与控制、数据分析与处理、结果表示与输出三大功能模块。信号采集与控制主要由虚拟仪器的通用硬件平台,并配合仪器驱动程序共同完成,而数据分析与处理、结果表达与输出则主要由用户应用软件完成。《虚拟仪器技术》第18页2.虚拟仪器的通用硬件平台(1)通用硬件平台的基本功能信号采集(模拟、数字输入);信号产生(模拟、数字输出);信号调理(信号幅度、频率、驱动、隔离等);定时与计数;大容量数据存储。实时信号处理。总线与通信。《虚拟仪器技术》第19页(2)通用硬件平台的组成信号输入采集多路器信号调理A/D变换器数据存储器信号分析处理及控制单片机DSP、FPGA)计算机显示器键盘标准接口数字I/O信号输出信号调理数据存储器波形数据发生D/A变换器人机接口定时计数器整形电路《虚拟仪器技术》第20页3.虚拟仪器通用硬件平台的构成形式通常为带有某种标准总线接口的各种测试设备(分立式或模块式仪器),主要有PC总线的数据采集模块(PC-DAQ)、GPIB总线仪器、VXI总线仪器模块、PXI总线仪器模块、RS-232串口、USB接口仪器等类型,或多种类型的组合。被测信号PC-DAQ系统I/O接口设备GPIB系统VXI系统PXI系统串口系统计算机《虚拟仪器技术》第21页(1)基于PC总线的虚拟仪器内置PC总线(如ISA、PCI、PC/104)的通用数据采集卡(DAQ,DataAcQuisition)。(2)基于GPIB通用接口总线的虚拟仪器国际标准(IEEE488.1和IEEE488.2),技术成熟;但其数据传输速度一般低于500Kb/s,对测试速度要求很高的场合不太适用。(3)基于VXl总线的虚拟仪器具有模块化、系列化、通用化、“即插即用”及VXI仪器的互换性和互操作性。但价格相对较高,适合于高端的测试领域。(4)基于PXI总线的虚拟仪器兼容PCI总线产品。集CompactPCI的高性能和VXI可靠性,性价比最好。《虚拟仪器技术》第22页1.4虚拟仪器的软件系统1.虚拟仪器的软件结构虚拟仪器系统的软件结构包括I/O接口软件、仪器驱动程序和应用软件三部分。应用软件仪器驱动程序I/O接口软件(VISA库)SerialVXIGPIB等《虚拟仪器技术》第23页(1)I/O接口软件(VISA库)I/O接口软件存在于仪器设备(即I/O接口设备)与仪器驱动程序之间,是一个完成对仪器寄存器进行直接存取数据操作,并为仪器设备与仪器驱动程序提供信息传递的底层软件。VPP规范了虚拟仪器的I/O接口软件的特点、组成、内部结构与实现规范,并将符合VPP规范的虚拟仪器I/O接口软件定义为VISA(虚拟仪器软件结构)软件。VISA库,实质就是标准的I/O函数库及其相关规范的总称。VISA函数库驻留于计算机系统中,是计算机与仪器之间的标准软件通信接口,用以实现对仪器的控制。《虚拟仪器技术》第24页(2)仪器驱动程序连接上层应用程序与底层I/O接口仪器的纽带和桥梁。是完成对某一特定仪器的控制与通信的软件程序集合。仪器厂商提供有相应仪器的驱动程序(原代码),为用户提供对仪器操作的较抽象的操作函数集。(3)程控仪器标准命令SCPISCPI(StandardCommandsforProgrammableInstruments,可程控仪器标准命令)。面向测试功能而非仪器。《虚拟仪器技术》第25页(4)应用软件建立在仪器驱动程序之上,直接面对用户操作。提供直观、友好的操作界面、丰富的数据分析与处理(时域、频域、数字滤波等)功能,完成自动测试任务。通常,包括测试管理软件和测试功能软件两部分。《虚拟仪器技术》第26页2.虚拟仪器软件开发平台(1)虚拟仪器软件框架结构应用软件(软面板)应用软件开发环境(LabVIEW,LabWindows/CVI,HP-VEE,VC、VB)仪器驱动器操作系统VXI总线接口软件VISI/O库,NI-VXI,HP-SICL等VXI总线系统硬件《虚拟仪器技术》第27页(2)通用的可视化软件编程环境Microsoft公司的VisualC++和VisualBasic、Inprise公司的Delphi和C++Builder等。(3)专用于虚拟仪器开发的软件编程环境图形化编程(G语言)环境:AgilentVEE、NILabVIEW;文本编程环境:NILabWindows/CVI。其中,LabVIEW是目前最流行、应用最广、发展最快