虚拟实验室的虚拟仪器开发
虚拟仪器
虚拟仪器的出现是测量仪器发展史上的一场革命。随着微电子技术、计算机技术、软件技术、网络技术的高度发展和在测量与仪器上的应用以及测试的新理论、新方法、新领域的发展导致了一种新型仪器--虚拟仪器(Virtual Instrument)的诞生。它充分利用最新的计算机技术来实现和扩展仪器的功能;用计算机屏幕可以形象、方便地模拟各种仪器的调控面板,以各种需要的形式表达输出检测结果;用计算机软件实现大部分信号的分析和处理,完成各种调控和测试功能。"软件即是仪器",在虚拟仪器系统中,软件发挥着核心作用,已有这样的一类虚拟仪器及其系统,在其中,硬件仅是为了解决信号的输入输出,而核心功能以软件来完成,基于虚拟仪器,用户可以根据自己的需要定义仪器的功能,通过软件修改的方法,很方便地改变、增减仪器系统的功能与规模。与传统仪器相比,虚拟仪器的优点如表1所示。
但是虚拟仪器也并非十全十美,在与其他设备连接时容易受到客观环境和条件的限制,另外由于需要进行大量的软件计算,可能造成较大的时延,此种情况下需要用传统的硬件仪器来代替。
虚拟仪器可以用于国防、航空航天、核物理、石油化工等领
域,目前开发环境主要有两类:一类是文本语言,如C、C++、LabWindows /CVI等等;另一类是图形语言,如NI公司的LabVIEW和HP公司的VEE等等。由于图形语言开发的方便性,受到了广大工程师的欢迎,一个在计算机语言方面没有很多经验的工程师也可以在较短时间内掌握虚拟仪器开发的技术,并能应用到工程实践当中。
虚拟仪器在大学实验室建设中的应用
由于虚拟仪器具有以上各种优点,并且随着计算机硬件和信号处理箱等辅助设备价格的下降以及计算能力的提高,虚拟仪器已经可以代替大部分电路电子学实验设备,从而为虚拟实验室的开发提供了可能。随着校园网的普及,网络虚拟实验室可以提供在线实验,一方面节省了大量的实验室、硬件、人员等支出,另一方面也能有效管理实验进程。虚拟仪器也可以用在各种物理学和其他与信号观测和处理相关的领域。
美国的斯坦福大学的机械系就要求三、四年级学生在实验时用虚拟仪器进行实验的数据采集和实验控制。国内一些大学如清华大学、西安交通大学、华北电力大学、东南大学、复旦大学、上海交通大学、暨南大学、华中科技大学、四川大学等都成功的开设了虚拟仪器的相关课程并开发了一系列的虚拟仪器用于教学实验。值得注意的是,一些规模较小,条件困难,经费紧张的学校,也开始引进基于虚拟仪器的实验室,很大程度上解决了实验经费短缺的问题。
设计实例:电路过渡过程监测仪
由于开发过程中实现监测和回放功能的主要控件不同,而两者需要设定的参数也是不同的,所以整个面板上的控件较多,为了使仪器面板更清晰,更易于控制,同时也为了避免一些不必要的误操作,所以将监测面板和回放面板分开放置。监测面板如图1所示,从监测窗口可以观测到每次处理的数据(默认值为500个数据点)的波形,从观察到的幅值大小就可以推断出过渡过程是否发生,当然更直观的方法是观察该窗口左侧的报警指示灯。"停止监测"开关用于控制在参数设置不合理的情况下,手动停止该仪器工作,未处理数据显示框中数据表示未处理的数据采样数量,如果这一数据基本上是0或者很小的数(数量级不超过101),表示工作正常,如果这一数值逐渐增加并且数量级超过102,说明参数设置不合理,就需要停止监测。可以通过单击"工作状态"按钮,进行"监测/回放"状态的切换。过渡过程波形显示设备在仪器停止运行时候自动输出一个波形,其数据总数等于参数设置中处理速度乘以保存数据组数。可以在光标移动使能控制和光标拖动控制都开放的情况下,用鼠标直接在光标上拖动从而改变光标的位置。
图1 电路过渡过程监测仪的监测面板
参数设置窗口能够设置包括通道号、采样率、缓冲大小、保存数据组数、缓冲数据组数、报警标准、过渡过程发生标准、存储路径等。本仪器提供的默认参数用于观测ms量级的过渡过程,可以根据实际的需求修改。程序的基本流程如图2所示。
图2 电路过渡过程监测仪的工作流程
波形采集和连续采集需要使用更多的计算机资源,也需要使用缓冲区,而且在连续采集中一般需要在采集数据的同时对数据进行分析处理,本监测仪中,使用LabVIEW提供的模拟输入中级模块AI Config ,AI Start, AI Read, AI Clear来实现,采集程序的模型如图3所示。
图3 电路过渡过程监测仪连续采集示意图
实际虚拟仪器得到的波形并不理想,原因很多,如实验电源并非理想的,而实验推导是理想的,所以两
- 虚拟仪器:在开放架构基础上创建用户定义的测试系统(09-19)
- 什么是虚拟仪器?(10-23)
- 基于虚拟仪器技术的短波电台自动测试系统(10-23)
- 宽带多媒体网关测试方法研究(10-27)
- 采用模块化仪器,对新兴音频和视频应用进行测试(02-19)
- 基于虚拟仪器技术的航空机载电子设备自动测试系统(03-03)