精通LabVIEW程序设计 1.1.3虚拟仪器的硬件 随着测试测量应用的日益复杂,目前市场上显供的模块化便件产品也非常丰富,比如, 总线类型支持PC、PX灯、PCMC1A、USB和134总线等,产品种类从数据采集,值号条 理、声奢和燕动测量、视觉、运动、仪器控制、分布式O到CAN横口等工业通信等。 接期硬件接口的不同,虚换仪爆可分为基于PC总线、GB总线、X总线和Ⅺ 三鞋的4种标准体系结构 《1)泰于C惑线的应位仪器 由于个人计算机的用户量及其通用型,基于P℃慕线的喝数仪摇成为人们的首菇。这 种硬件一般果用基于PC总线的通用DAQ(Data AcQuisition)数据深集卡,主要的F℃总 线有5A、PCL.C/1O4等。 这虚位器充分地利用了计算机的资谦,大大增加了衡试系统的灵活性和扩展性。 利用通用型DQ可方便铁捷地组建基于计算机的仪器,易于实现“一机多型”和”一机 多用”。随着AD转换技术、情密放大技术,湾表技术与值号数字调理技术等的迅速发展 DAQ的采样速率已达到1G的,精度高达24位,通道数高达64个,并能任意组合数字I/0、 模拟0,计数我/定时辑等通道,大大扩展了仪器的功能。 另外,专业仅器厂家生产了大量的DQ功能视峡可供用户选酒,如示滚器、数字万用 表、串行数据分析仅、动态信号分析仪,任意波形发生摆等。在PC计算机上挂接若干DQ 功能模块,配合相应的款件,就可以构成一台具有者干功能的“专业”测量、检测位落。 (2)基于GPB通用从口感线的应:仪器 对已有的专业仅器(尤其是专业数字式仪器,为?扩展其功能或望高性能,往往采 用“专用”总线实规与计算机的连接。多数这类仪器配有GPB【General Purpose Inerface Bs,通用接口总线,所以利用此类仪露构建基于计算机的虚掠仪器一般利用GB实现。 GB是最平的仪器总线,其硬件搬格和软件协垃已纳入国际工业标准正E正488.1和 EE4882,目前多数仪器幕配置了符合正正正488的GPB接口。 基于GPB的虚救仪器充分利用了豆有条件,实现满量、检测等功能。但其数宽传抽 速度一般任于500K的,不适合对系统速度要求较高的应用。 (3)基于VXI惑线的虚板仅器 VⅪ系换最多可包含255个装置,主要由主机箱、控制器、具有多种功能的模块仪器 和要动款件、系统应用软件等组成,具有即插即用的特性,所以系统中各功能模块可随意 更换构成新系统。 基于VXⅪ慕线的墙数位帮具有模块化、系列化、通用化以及VX攸器的互换性和五 操作性的特征,VXⅪ的价格相对较高,适合于尖端的满试箱煤。 (4)暴于PX总线的虚标仪器 P(PCI eXtension for Instrumentation}总线整合了台式计算机的高速Pc总线的 4
第1章LabVlEW述 8即B6优势,推整了VX总线中先进的收群技术,知同步鞋发、板间总烧、星形触发 线、板发时钟等特性,兼容Campacti口机械凝觉,并增加了主动冷却、环境两试(温度 湿度、新动和冲击试验)等要求,这既保证了厂商户品的反操作性和票使的易集成性,网 时又使革于X的虚救仪器成为测试系统中具有徐格优势的测试方案。 1.1,4虚拟仪器的软件 虚热仪软件从在层到层,由VSA(5owe Architecture】车,仪器型动程序、应用款件三部分组成。 1.V5A库 所谓VS人库,即虚拟仪器软件体系结构库,实质上就是标准0函数库及相关规范 的总称,一般将该0函数库称为VSA库。 VSA本驻丽于计尊机系统中技行仪器总线的特殊功能,起输连接计算机与仅器的作 用,以实夏对收器的程序控制: 对于虚数位器驱动程序的开发编理者来说。VT3人库显一个可调用的操作函数集。 作为准化的O接口软件规范,VIS人主要作用有 ·为所有使用者提供缺一的软件编程基德,对颦动程序、应用程序不必考虑接口类型 均可使用 ·仪规定为用户提供标渗函散,不对具体实观作任何说明: ·用于编写符合VP规范的仅琳竖动程序,完减计草机与仪器之间的备令和数锡传 输,实球对仪器的控制 ·VSA车作为底层O婆口软件,运行于计算粮系统中 VA的主要特点 ·适用于各类仪,如VX1.PX、GPB、R5232和UB夜器等 与硬件接口无关 ·系适用于单处理器结构又适用于多处蝶器或分布式结构 ·透用于多种网机制 VSA只解决了仪器接口的可互换(即政变接口或总线方式不必修政测试程序,但并 没有解决更高层次的针对不简仪器的可换性。 2。仪器动程序 所调仅器题动程序是指能实规某一仅器暴统控与通信的软件程序集,是应用程序实 显仅器控制的桥梁。仪器的多砖程序由仪器生产商以源码形式提供始用户使用,每个仪器 块怨有自己的仪驱动程序。 常用的虚抱仪器设计数件(如LbV正W等)集成7大量常用仪器的驱动程序,以方 便编程老使用。 经常使用的测试仪器有几十大类、上万种型号。各种仪我的原动程序都不相同,为使 问黄功能的仅器可以互换而不修改测试软件,即实现仪器的可互换性,世界各大仪器公司 44445
通LabVIEW程序设计 都为在仪器驱动程序研究和制定统一的标准和规范。可五换性琴可降低虚救位露设计的复 杂性,加快设计速度,可时又便于仪器系统的维修更换和更新换代。 仪器距动程序又称为动器。目前,广乏使用的图动器规英有VTP(VXⅪPg&P%y 即插即用型E动器)规范程VI{Ieterchangeable Virtual Instruments,互换显多站卷)规苑 两种类型 (1)卷子VPP规范的即特脚用型器动器 为了解决多生产厂家的VX系统的易操作性和互操作性问题,提燕系统维护、两开发 约能力,199g年N1,Tektronies、Rc等灌名位器公司成立T了VP甲联翌并制定了筒称V阿 规。 VP规定义了氯统的根架、款件口、仪器聚动器模型。它把与仪器的度通信封 装成一些离层函数,执行位器的控制功能,VSA作为其底层0库 VP规范的优点是,程序源代码由仪器生产厂家提供,降任了开发的复杂性:程序采 用姑构化与模块化结构,便于程序尤其是复杂程序的编制:程序具有兼容性与开放性,即 V仰规范对佼器驱动程序的要求不区分位耀的种类,不仅证用于VⅪ仅器,也同样适用于 G阳仪器、PX仪落、申行口俊器、网络仅器、USB仪器等 但是V四露动器接口没有严格的语义定义,厂商可以根据白己的情况进行开发,这使 得驱动器产品的接口不统一,仪器互铁性仍淡有最终实现。 《2)卷十IV门规范的互换型醒特器 针对VP规范的缺点,为了速一步提高位%启动程序在硬件互换、远行性能、发晨弹 性。质量保证等方面的规楚化和标准化,充分实现位器的五换性和瓦操作姓,1然年8月 成立了IVT(]基金会,制订了相应的仪器熏动程序规范 简称为V1根苑。 1规楚在V理的基上为仪群警动程序制定了新的编程接口标准,使应用程序可以 实凳完全独立于硬件,独立于接口,并增加了位器伤真、状态缓存第机侧,极大地提高了 仪器动程序的开发效率和执行效率。 1规克从两个方面对仪器进行了细分。从功能上,由于仪器的功能不可能完全相同 因此不可能为不同仪器建立一个单一的满足所有要求的编群接口,V规范将仪器分成是 木功能和扩展功能两部分。前者定义了同类仪器中绝大影数位器所共有的能力和属性V 蒂金会的日标是支持某一确定类仪器中的5年的仪器】。后者则主要体现每煲位器的特殊 功能和属性从类型上,门规范将所有的仪进行分类,已经公布了示器、开关、任 意表形发生器/函数发生器、数字电压表、电源、射频信号发生器,频谱分析位、功来计和 数字口位我九类位碧的规范。更换同类仪器的时候,只要修放或更换那些特殊功能的代 码,也就是具体的距功程序,而不必改动类墓动程序。 和VPP更动程摩相比,V1位霸更动程序的优点主要有 ·仪器领可互换。利用V1类驱动器编写的测试代码,在仪器硬件用另一同类位解代 替时,不必经过蜂改便可直接调用: 6●。年
第1草LabV能W述 ·采用了基于秋态存储机制的程序结构。面向对象技术中属性管理机制的引入使V 引可实规状态存储。和VP寥动程序中每个测量函数在进行测量前都要对收圈 进行设量引而不管仅器在此之前是语已被正确配置过1不丹,通过V1中属性模型, 驱动程序能自动存储位群的当前状态,只有在仪器设置和函数所要求的不一粒时 仪器整动程序函数才执行仪器D操作,从而优化了程序运行! ·仪器仿真,V门模型更动框序可以在没有位器硬件的情况下流立应用程序进行系统 仿直,此时要动程序不执行仪器0而仅利用软博贝来处理,并产生仿真结果。料 币仿真数衡,实观在没有仪器硬件的情况下为仪器开发应用代码 ·具有多线程安全性 ·具有范医检查、状态第存以及其怡的调试和开发功能。 NM规范不但可用干VX系统,同杆可用于GB、XL,串行仪器、Compoct PCI等各 类超入式仪器,以及高速串行总线控制仪落,如USB和13州总线仪器。V 对干面向仪器互换的凌拟仪馨设计身标,目前V们慎数的主要缺点体现在 ·只适合同英仪器的互换,不能实现不列类权糕坡某纸多类功能的蜂合性仪解之间的 互换: 。1类竖动器只能块一菜类位器中大部分位强劝能,其他功规只能透过传用取动爆 未实现 ·可周标准较少,目前只完成了示浓器,万用表。函数发生港、多路开美等超分收器 的责票动酒的标准化 标准开放程度低,门模型只适合于语用仪器:比如万用表第,而对某些专用仪器 〈如数据采集卡)不适用。 为7改谦VM模型存在的不足,VM基金会在VI基础上又制定了VMSS {Measrement and S6 mulus Sabsysem,测量和泼陆子系统}和V门-Signal Interface规范, 它们分别实现基于功能和信号的仪器互线操作。 与即插即用数距助器类似,基于V门规克的互换型取动器开发也包括两步:第一步, 定义整动雅均件的授口。这些流口定义要严格遵德相关标准,定义对于不词的仅耀和软杆 类透是标准的和通用的。第二步是驱动器细件接口的内都程序编制。该摆序封装在组件内 部,不同的仪蝶程序不间,该程序是非标准的。 对于基于V1疑楚的寥动器开发,可以采用如VC+、VB等图形化编程工具证行。 3.应用软件 应用软件是直接南向操作用户的程序,该敏件建立在仪器寥动程序之上,通过提供的 测控操作界面(或称为仪得面板人丰富的数据分析与处理功领等党减自动测试任务。尤 其是应用款件的通用数字处理款件,集中体现了虞放纹器的优忧点。 虚物仪器应用软件的开发工具有通同编程较件和专业审形化编程软件两类, 。通用编程数件 这类软件主要有Mieros6t公司的Visual Baic与Visual C+、Bordand公司的Delphi, 44447
精通LabVIEW程序设计 S)如公司的oBur。这类软件功能强大,但不是专门为虚拟仪养而设计,因此, 利用通用编程软件开发盛椒位器需要开发者具备较高的软件编程技术,同时对虚拟仪器技 术也应有相尚的了解 。专业图形化编程软件 这类软件主要有P公司的VEE,N灯公司的LabVIEW和Lab Windows/CVI等。这类 软件专门用于虚拟仪得的开发而设计,对开发者的要求较低,只要丁解软件的总体功能以 及所要设计的虚拟仪器的功能就可快凄方便地进行开发。 bVEW这一行业标准挥彩化编程软件,不仅能轻松方便地完成与各种款硬件的连 接,更能提供强大的后续数据处理能力,设置数据处理。转赖、存储的方式,并将结果量 示给用户。 1.2 LabVIEW的特点 上世纪即年代单期,计算机接口变得越来越精细,软件设计的虚抱仪器界面也填米 触支好,苹果公司的Macintosh开发了G语言,这些为功能强大的专业虚拟仅器软件的出 现提供了交要基避。不久,N1为基于计算机的测量和白动化开发出了1bVEW款件包。 L物VEW的功能不断丰富和强大。LabVIEW用来进行数据采集和控制、数据分析和 数据表达,使工程韩和科学家能充分利用℃的功能,快速简便地完戒白己的工作经过 多年的不断充实,LabVTEW成为丰富、强大的实用工具软件包,内都配有G田、VXI 串口和插入式DAQ板的库函数以及全球几百家厂商的仪器驱动程序。棵练这些核心软得 还陆开发出多种附件。 bVEW的出现大大提离了虚拟位都的开发效率,降低了对开发人员的要求。 LbVT正W所提供的交互式的图形化开发环境得度顺霍了以往一种开发工具损有强大开发 功能的同时不可能会简单易用的思想。LbV压W所包含的各种特性使其成为开发测试 测量、自动化及校制应用的理恩工具,不管虚效仪器净及哪个工业领城,也不管开发者具 有什么专业背景或编程经验,1VEW都可以提供与其编程经验相匹配的用户界面,从 而可以迅速地开发应用系统,充成产品设计验证与白动化控制等应用。 作为基于图形化编程语言的开爱环境,【由V压W自然、真观。筒洁的程序开发方式 大大降任丁学习难度。开发老可以通过各种交互式的控件、对话栀菜单及函数模块进行 编程。所需做的只是将这些1模块施拉到程序框图中,并定义它在应用程序中的功能。 最后格这些控件或V门模妹违接起来即可光成仪露设计: LabVIEW的主要特点可概括如下 ·图彩化的收器编程环填,它使用“所见即所得的可祝化技术意立人机界面,使用 大多数工程师历熟光的数操流程雨式的语言编写程序,被增为·工程师和科学家的 话言”。 ·内置的程序编泽器,使运行速度加快。 ·灵活的程序调试手袋,可以在潭代科中设置断点,单步运行,在数据流上设置探针, 8e下