- 基于LabWindows/CVI的虚拟仪器设计与应用
- 孙晓云主编
- 3053字
- 2020-08-28 08:59:55
1.1 虚拟仪器技术
随着计算机技术、大规模集成电路技术和通信技术的飞速发展,仪器技术领域发生了巨大的变化,美国国家仪器公司(National Instruments,简称NI)于20世纪80年代中期首先提出基于计算机技术的虚拟仪器的概念,把虚拟测试技术带入新的发展时期,随后研制和推出了基于多种总线系统的虚拟仪器。经过十几年的发展,虚拟仪器技术将高速发展的计算机技术、电子技术、通信技术和测试技术结合起来,开创了个人计算机仪器时代,是测量仪器工业发展的一个里程碑。
1.1.1 虚拟仪器概念
1. 虚拟仪器概念
所谓虚拟仪器,就是在以计算机为核心的硬件平台上,由用户设计定义、具有虚拟面板、测试功能由测试软件实现的一种计算机仪器系统。操作者用鼠标或键盘操作虚拟面板,就如同使用一台专用测量仪器,虚拟仪器的出现使测量仪器与个人计算机的界限模糊了。
虚拟仪器的实质是利用计算机显示器的显示功能来模拟传统仪器的控制面板,以多种形式表达输出检测结果,利用计算机强大的软件功能实现信号数据的运算、分析和处理,利用I/O接口设备完成信号的采集、测量与处理,从而完成各种测试功能的一种计算机仪器系统。“虚拟”主要包含以下两方面的含义。
1)虚拟仪器的面板
虚拟仪器面板上的各种“控件”与传统仪器面板上的各种“器件”所完成的功能是相同的。如由各种开关按键显示器等实现仪器电源的“通”、“断”,被测信号“输入通道”、“放大倍数”等参数设置,测量结果“数值显示”、“波形显示”等。
传统仪器面板上的器件都是实物,而且均为通过手动和触摸完成操作的,而虚拟仪器面板控件是外形与实物相似的图表,“通”、“断”、“放大”等对应着相应的软件程序,这些软件已经设计好了,用户只需选用代表该种软件程序的图形控件即可,用计算机的鼠标来对其进行操作。因此,设计虚拟面板的过程就是在面板设计窗口中摆放所需的控件,然后编写相应的程序。
2)由软件编程来实现的虚拟仪器测量功能
在以PC为核心的硬件平台支持下,虚拟仪器不仅可以通过软件编程设计来实现仪器的测试功能,而且可以通过不同测试功能的软件模块的组合来实现多种测试功能。因此在硬件平台确定后就有了“软件就是仪器”的说法,这也体现了测试技术与计算机技术深层次的结合。
2. 虚拟仪器的特点
虚拟仪器测试系统由三大功能模块组成:信号的采集与控制、信号的分析与处理、结果的显示与输出,即由完成数据采集功能的硬件部分和完成数据分析处理功能的软件部分组成。硬件部分一般为各种形式的数据采集设备,将采集到的各种形式的信号转换成电信号后输入到计算机内。计算机通过软件实现从计算机的各类接口中读取数据,完成信号分析处理,并将处理结果显示出来。
虚拟仪器是在计算机的基础上完成各种测试分析功能的一种计算机化仪器系统。它将计算机资源和插卡式仪器硬件,以及用于数据采集、信号分析、图形用户界面的应用软件有效地结合起来进行数据的分析测试。与传统仪器相比,虚拟仪器有以下几个特点。
(1)功能由用户自己定义。
(2)面向应用的系统结构,可方便地与网络外设、应用程序等连接。
(3)展开图形操作界面、计算机完成读数、分析处理。
(4)数据可编辑、存储、打印。
(5)价格低廉(是传统仪器价格的五至十分之一)。
(6)基于计算机技术开放的功能模块可构成多种仪器。
(7)技术更新快(周期为1~2年)。
(8)基于软件体系的结构,大大节省开发维护费用。
(9)个人可以拥有一个实验室。
虚拟仪器系统已成为仪器领域的一个基本方案,是技术进步的必然结果。虚拟仪器技术先进,十分符合国际上流行的“硬件软件化”的发展趋势,被人们广泛地称为“软件仪器”。由于虚拟仪器以计算机为基础,随着计算机的高速发展,虚拟仪器可以方便地向智能化、网络化方向发展。虚拟仪器的技术优势使得其应用广泛,尤其是在科研、开发、测量、检测、测控等领域更是不可多得的好工具,必将对科学技术的发展和国防、工业、农业的生产产生巨大的影响。
1.1.2 虚拟仪器的设计及应用
1. 虚拟仪器的构成
虚拟仪器由通用仪器硬件平台(简称硬件平台)和应用软件两大部分构成。
1)通用仪器硬件平台
虚拟仪器的硬件平台由两部分构成。
(1)计算机
一般为一台PC或者工作站,它是硬件平台的核心。
(2)I/O接口设备
I/O接口设备主要完成被测输入信号的采集、放大、模/数转换。根据采用的不同总线及其相应的I/O接口硬件设备,如利用PC总线的数据采集卡/板(DAQ)、GPIB总线仪器模块、VXI总线仪器模块、PXI总线仪器模块、串口总线仪器等,虚拟仪器的构成方式主要有5种类型,如图1.1所示。
图1.1 虚拟仪器的构成框图
① PC⁃DAQ系统:它是以数据采集板、信号调理电路及计算机为仪器硬件平台组成的插卡式虚拟仪器系统。这种系统采用PCI或ISA计算机本身的总线,故将数据采集卡/板(DAQ)插入计算机的空槽中即可。
② GPIB系统:它是以GPIB标准总线仪器模块与计算机为仪器硬件平台组成的虚拟仪器测试系统。
③ VXI系统:它是以VXI标准总线仪器模块与计算机为仪器硬件平台组成的虚拟仪器测试系统。
④ PXI系统:它是以PXI标准总线仪器模块与计算机为仪器硬件平台组成的虚拟仪器测试系统。
⑤串口系统:它是以Serial标准总线仪器与计算机为仪器硬件平台组成的虚拟仪器测试系统。
无论上述哪种虚拟仪器系统,都是通过应用软件将仪器硬件与通用计算机相结合的,其中,PC⁃DAQ系统是构成虚拟仪器的最基本的方式。
2)软件结构
虚拟仪器软件由两大部分构成。
(1)应用程序
应用程序包含以下两方面:
① 实现虚拟面板功能的前面板软件程序;
② 定义测试功能的流程图软件程序。
(2)I/O接口仪器驱动程序
I/O接口仪器驱动程序完成特定外部硬件设备的扩展、驱动与通信。
开发虚拟仪器必须有合适的软件工具,目前的虚拟仪器软件开发工具有如下两类:
① 文本式编程语言,如Visual C++、Visual BASIC、LabWindows/CVI;
② 图形化编程语言,如LabVIEW、HPVEE等。
2. 虚拟仪器的内部功能
虚拟仪器的内部功能可划分为:输入信号的测量、数据分析处理及结果显示三大部分。
(1)输入信号的测量
该功能是将模拟信号转变为数字信号输入到计算机中。
(2)数据分析处理功能
虚拟仪器充分利用了计算机的存储、运算功能,并通过软件实现对输入信号数据的分析处理。处理内容包括进行数字信号处理、数字滤波、统计处理、数值计算与分析等。虚拟仪器比传统仪器,以及以微处理器为核心的智能仪器有更强大的数据分析处理能力。
(3)测量结果的显示
虚拟仪器充分利用计算机资源,如内存、显示器等,对测量结果数据的显示与输出有多种方式,这也是传统仪器所不能及的。例如,虚拟仪器可以实现:通过总线网络进行数据传输;通过磁盘,光盘复制输出;通过文件存于硬盘内存中;计算机屏幕显示或图形用户接口。
3. 虚拟仪器的设计与应用
虚拟仪器的核心是软件,其设计主要由硬件板卡驱动模块、信号分析模块和仪器表头显示模块等软件组成。
硬件板卡驱动模块通常由硬件板卡制造商提供,直接在其提供的DLL或ActiveX基础上开发就可以了。目前PC⁃DAQ数据采集卡、GPIB总线仪器卡、RS232串行接口仪器卡、FieldBus现场总线模块卡等许多仪器板卡的驱动程序接口都已标准化,为减小因硬件设备驱动程序不兼容而带来的问题,国际上成立了可互换虚拟仪器驱动程序设计协会(Inter⁃changeable Virtual Instrument),并制订了相应软件接口标准。
信号分析模块的功能主要是完成各种数学运算,在工程测试中常用的分析模块包括信号的时域波形分析和参数计算,信号的相关分析、信号的频谱分析、信号滤波分析等由软件编程实现。
仪器表头显示模块主要包括波形图、旋钮、仪表头、按钮、温度计、棒图等仪表显示常用的软件仪表盘显示模块。
虚拟仪器系统可以广泛地应用在通信、自动化、半导体、航空、电子、电力、生化制药、和工业生产等各种领域。