维普资讯 http://www.cqvip.com 第22卷第2期 30 2004年3月 北京工商大学学报(自然科学版) Journal of Beijing Technology and Business university(Natural Science Edition) Vo1.22 No.2 Mar.2004 文章编号:1671—1513(2004)02—0030—04 基于LabVIEW的虚拟数字示波器的设计与实现 白 岛 (北京工商大学机械自动化学院,北京 100037) 摘要:本文详细介绍现代计算机技术与仪器技术深层次结合产物一虚拟仪器的基本概念、构成、 优点,同时介绍在实验测量、工业自动化和数据分析领域起重要作用的图形化编程语言 LabVIEW,在此基础上结合一个虚拟数字示波器的设计与实现过程的实例,具体阐述使用开发软 件工具LabVIEW进行虚拟仪器设计的方法、步骤与实现技术,借此展望虚拟仪器具有的广阔应用 前景和巨大潜在经济效益. 关键词:虚拟仪器(VI);数字示波器;LabVIEw 中图分类号:TP391.9 文献标识码:A 1.1.1虚拟仪器的结构 示波器是在科学研究和工程设计中广泛应用的 种通用仪器.虚拟仪器是一种全新结构概念的仪 如图1所示,虚拟仪器的结构有硬件平台和软 件两部分. 器,其设计应用已经成为测试与仪器技术发展的一 个重要方向.本文将结合一个虚拟数字示波器的设 计开发过程,具体介绍使用基于图形化编程语言 LabVIEW进行虚拟仪器编程的方法与实现技术. -.4{gg-NN U数据采集卡 测 —GPI控 B接口仪器U GPIB ̄VI k- 对 象 -_一 串行u仪器/PLc —一 LLabVIEW abWindows/CVI 1虚拟仪器和LabVIEW简介 vxI仪器 一 _一现场总线(FieIdBUS) 一 图1虚拟仪器结构示意 传统仪器一般由操作面板、信号输入端口、检测 结果输出这几部分组成,是一立的装置,功能都 是通过硬件电路或固化软件实现.传统仪器由仪器 生产厂家给定,其功能和规模一般是固定的,用户无 法随意改变其结构和功能.另外传统仪器价格昂贵, 构成虚拟仪器的硬件平台有两部分: 1)计算机:可以是各种类型的计算机,管理虚拟 仪器的软、硬件资源,是虚拟仪器的硬件基础. 技术更新慢(周期为5到10年),开发费用高.所有 这些使传统仪器很难适应信息时代对仪器的要求. 随着测试技术和计算机技术深层次的结合,出现了 虚拟仪器. 2)输入/输出接口设备:主要完成被测量信号的 采集、放大、模/数转换.可根据实际情况采用不同的 接口硬件设备,如数据采集卡(DAQ)、GPIB总线仪 器、VXI总线仪器模块、串口仪器等. 构成虚拟仪器的软件有两部分: 1)输入/输出接口驱动程序:用来完成特定外部 1.1虚拟仪器 虚拟仪器(Virtual Instrument,简称VI),就是 在通用仪器硬件平台上定义和设计仪器的功能,用 户在操作虚拟仪器的同时就是在使用一台专门的电 子仪器 . 收稿日期:2003—04—10 硬件设备的扩展、驱动与通信. 2)应用软件:建立在仪器驱动程序之上,直接面 对操作用户,通过提供直观、友好的操作界面、丰富 的数据分析和处理功能,来完成测试任务(《计算机 作者简介:白 富(1975一),男,黑龙江齐齐哈尔市人,助理实验师,从事CAD/CAM类实验教辅工作 维普资讯 http://www.cqvip.com 第22卷第2期 白 晶:基于LabVIEW的虚拟数字示波器的设计与实现 虚拟仪器图形编程LabVIEW实验教材》.北京中科 泛华测控技术有限公司). 1.1.2虚拟仪器的含义 虚拟仪器的“虚拟”主要包含两方面的含义: 1)虚拟仪器的面板是虚拟的:虚拟仪器面板上 的各种“控件”与传统仪器面板上的各种“器件”所完 成的功能是相同的.如由各种开关、按键等实现仪器 电源的“通”、“断”;测量结果的“数值显示”、“波形显 示”等. 2)虚拟仪器测量功能是由软件编程来实现的: 在以计算机为核心组成的硬件平台支持下,通过软 件编程来实现仪器的测试功能,而且可以通过不同 测试功能的软件模块的组合来实现多种测试功能, 因此有在硬件平台确定后“软件就是仪器”的说法. 1.1.3虚拟仪器的优点 虚拟仪器与传统仪器相比较具用有许多优点: 对输入信号的处理和计算可以更加复杂,而且处理 速度更快;测试结果的表达方式更加丰富多样;可以 方便地存储和交换测试数据;可以通过多种现有的 通信标准方便地同外设、网络及其它应用连接;价格 低而且可以重复利用;技术更新快(周期1~2年); 将所有的程控仪器的控制信息集成在虚拟仪器的软 件模块中,用户无需专门查阅、学习仪器的程控方法 与程控指令就可以对仪器进行操作;计算机强大的 图形用户界面(GU1)增强了仪器的结果显示功能; 具有几乎无限的数据记录容量;自动化的测试过程; 用户可以自定义分析方式和接口;可扩展的工程函 数库;自动生成测试运行报告;高品质的打印功能 等[ . 1.2 LabVlEW 虚拟仪器应用程序的开发环境主要有两种,一 种是基于传统的文本语言的软件开发环境,常用的 有Lab windows/CVI、Visual BASIC、VC++等; 种是基于图形化语言(Graphics Language,又称 G语言)的软件开发环境,常用的有LabVIEW和 HP VEE. LabVIEW是Laboratory Virtual Instrument Workbench(实验室虚拟仪器工程平台) 的简称,是目前国际上唯一的编译型图形化编程语 言,使用“所见即所得”的可视化技术建立人机界面, 使用图标表示功能模块,使用图标之间的连线表示 各模块间的数据传递.同时,LabVIEW继承了高级 编程语言的结构化和模块化编程的优点,支持模块 化与层次化设计,这种结构的设计增强了程序的可 读性.LabVIEW使得不熟悉文本式语言编程的设 计者在测控领域建立计算机仪器系统一虚拟仪器,被 誉为“科学家与工程师”的语言 . 2虚拟数字示波器的设计与实现 本虚拟数字示波器主要由一块PCI总线的多 功能数据采集卡和相应的软件组成.将它们安装在 台运行windows95/98/NT的计算机上,即构成 个功能强大的数字示波器.下面是虚拟数字示波 器设计与实现的全部过程. 2.1确定仪器的接口形式 DAQ(Data AcQuisition)数据采集接口是基于 计算机标准总线的内置功能插卡,可以充分利用计 算机的资源增加测试系统的灵活性和扩展性.利用 DAQ,可方便快速地组建虚拟仪器,实现“一机多 型”和“一机多用”.DAQ结构虚拟仪器不但实用而 且具用很高地性能价格比,是一种特别适合我国国 情的虚拟仪器方案.PCI总线传输速率高,数据吞吐 量大,是今后数据采集板卡设计的主流.因此本虚拟 数字示波器采用一块美国国家仪器公司(National Instruments,简称NI)出品的NI 6024E型PCI总 线数据采集卡. 2.2确定接口卡的设备驱动程序 本虚拟数字示波器采用的NI E系列数据采集 卡采用最新的DAQ—PnP(即插即用)总线技术,保 证了仪器级的性能与可靠性.配有的驱动软件支持 Windows9x/NT等操作系统的不同编程语言,可以 方便的对其编程,实现对数据的采集、分析处理、显 示表达、输出控制等多种功能.如果没有则应针对所 用接口卡编写设备驱动程序. 2.3确定仪器应用程序的编程语言 LabVIEW编程将软件的界面设计与功能设计 开来,修改人机交互界面无需对整个程序进行 调试,这对设计像仪器操作面板这样复杂的人机界 面而言是十分方便的.LabVIEW还为用户提供了 函数扩展功能,利用LabVIEW中的Code interface Node(CIN),可以调用用C等传统编程语言写的程 序代码;利用LabVIEw中的Call Library Function,可以调用标准动态链接库(.DLL).总之, 维普资讯 http://www.cqvip.com 北京工商大学学报(自然科学版) 2004年3月 LabVIEW作为图形化编程语言环境,为虚拟仪器 开发提供了一种快捷、方便和功能强大的软件工具, 因此本虚拟数字示波器采用LabVIEW进行设计开 发Ⅲ. 2.4面板流程设计及编写用户应用程序 本设计采用的6024E型数据采集卡支持DMA 方式和双缓冲区模式,保证了实时的信号不间断采 集与存储.它提供16路单端/8路差动模拟输入通 道、两路12位模拟输出通道、200 KS/s采样率、200 KS/s磁盘写入速度、+/一0.05到+/一10 V输入 范围、32条数字I/O线、两路24位定时器/计数器 等多种功能.这些功能使得我们不仅可以用该卡设 计虚拟示波器,也可以设计虚拟函数发生器或虚拟 计数器,做到一卡多用.当然,限于经费条件,选择的 6024E型数据采集卡的采样速率只能达到200 kS/s 对实际示波器而言,这远不能满足信号带宽的要 求.目前市场上采样速率达200 MS/s的PCI数据 采集卡已有成熟产品,技术上实现高带宽的虚拟示 波器不存在问题.由于篇幅所限,本虚拟数字示波器 只设计基本功能:双通道信号输入、触发控制、通道 控制、波形显示、参数自动测量.其它如时式控制、频 谱分析、波形存储和回放等功能,读者可根据需要自 行完成. 2.4.1 虚拟数字示波器前面板设计 1)测量控制结构 通过逻辑按键“通道”控制通道选择,通过逻辑 按键“触发”控制触发模式,如图2. 图2虚拟数早不坡器面板 2)波形控制结构 由逻辑按键“Time Base”、“Volts/Div”来控制 波形显示. 3)仪器控制结构 通过逻辑按键“More INFO”获得相关信息,通 过逻辑按键“STOP”结束虚拟仪器运行. 2.4.2虚拟数字示波器流程设计 虚拟数字示波器主要由软件控制来完成信号的 采集、处理和显示.系统软件总体上包括触发控制、 通道控制、数据采集、数据处理和波形显示等模块, 基功能结构框图如图3所示. 图3虚拟数字示波器软件结构示意 2.4.3虚拟数字示波器LabVIEW编程 LabVIEw编程的主要特点就是将虚拟仪器分 解为若干基本的功能模块(相当于硬件设计中的集 成电路),模块的引脚代表输入/输出接口.编程者可 以通过交互式手段,采用图形化框图设计的方法,完 成虚拟仪器的逻辑和测量分析功能设计.图4是虚 拟数字示波器的LabVIEw程序.可以看出, LabVIEW程序设计过程与人们设计仪器的思维过 程十分相近,程序框图就实现了程序代码功能,避免 了一般程序设计从框图构思到程序表示的繁琐. 通过前面板(等效于传统测试仪器的前面板)和 流程图(等效于传统测试仪器与前面板相联系的硬 件电路)的开发,就完成了本虚拟数字示波器的设计 与实现. 3虚拟数字示波器的主要技术特点 本文介绍的虚拟数字示波器不仅具有一般台式 数字示波器的功能,而且充分发挥了微机强大的功 能和软件设计的灵活性,主要技术特点表现在: 1)用图形化编程语言LabVIEW和面向对象编 程技术,软件开发效率高,可操作性和可维护性好; 2)充分利用了计算机的存储与外设连接的能 力,测量结果和波形可直接打印输出或通过网络 共享; 3)硬件具有开放性,允许通过升级硬件来提高 其性能; 4)在相同硬件条件下,可以通过修改或增加软 件模块,形成新的仪器功能. 从上面虚拟仪器实现步骤可以看出,在计算机 和仪器等硬件资源确定的情况下,对应不同的应用 程序,就有不同的虚拟仪器.通过软件来实现仪器的 部分或全部功能,这就是设计虚拟仪器的核心思想. 维普资讯 http://www.cqvip.com 第22卷第2期 白 皇:基于LabVIEW的虚拟数字示波器的设计与实现 33 图4虚拟数字示波器的LabVIEW程序 随着高速A/D芯片和电路的进一步集成化,可 以设想在不远的将来,一台安装有虚拟仪器软件的 标准微机成为一个多功能的测量仪器站,从根本上 乔瑞萍,林欣译.北京:电子工业出版社,2003. [2] 刘君华.虚拟仪器图形化编程语言LabVIEW教程 I-M].西安:西安电子科技大学出版社,2001. 改变目前专用仪器的研制和生产方式,具有广阔的 应用前景和巨大的潜在经济效益. 参考文献: [1]RobertH.Bishop(美).LabVIEW 6i实用教程EM] [3]杨乐平.LabVIEW程序设计与应用I-M].北京:电子 工业出版社,2001. I-4]刘君华.基于LabVIEW的虚拟仪器设计I-M].北京: 电子工业出版社,2003. DESIGN AND CoMPLETIoN oF VIRTUAL DIGITAL oSCILLoGRAPH BASED oN LABVIEW BAI Qiao (College of Mechanical Engineering and Automation,Beijing Technology and Business University, Beijing 100037,China) Abstract:The article explicates the virtual instrument,which is the outcome of modern computer technology and instrument technology,about fundamental conceptions,components and advantages in details,at the same time accounts for the programme language——LabVIEW, which is important in the experiment measure,industry automatization and data analysis areas. On the basis of this,combining an example of designing and completing a virtual digital oscillograph,concretely expounds the methods,steps and technologies on how tO use LabVIEW tO design the virtualinstrument.A1l of this makes OUt an expection that virtual instrument has a bright future and contains huge economic profits. Key words:virtual instrument(VI);digital oscillograph;LabVIEW (责任编辑王宽)