LabVIEW环境下的GPIB总线虚拟仪器开发_第1页
LabVIEW环境下的GPIB总线虚拟仪器开发_第2页
LabVIEW环境下的GPIB总线虚拟仪器开发_第3页
LabVIEW环境下的GPIB总线虚拟仪器开发_第4页
LabVIEW环境下的GPIB总线虚拟仪器开发_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第1期CHINA MEASUREMENT TECHNOLOGY中国测试技术No 11LabVIEW 环境下的GPI B 总线虚拟仪器开发张小琴林建辉(西南交通大学牵引动力国家重点实验室, 成都610031摘要LabVIEW 是当今最流行的虚拟仪器开发平台, 文中介绍了用LabVIEW 开发基于GPI B 总线的虚拟仪器的全过程及其硬件和软件要求, 并给出了一个开发实例。实例为用LabVIEW 虚拟仪器开发平台对一台带有GPI B 接口磁测量仪进行二次开发, 构建自己的虚拟仪器。与台式仪器相比, 该虚拟仪器最突出的优点是不需要其它数据采集卡便可完成磁场的实时采集测量, 并将采集结果保存到文件,

2、以供后续分析使用, 从而大大扩展了原有台式仪器的功能。关键词LabVIEW GPI B 实进采集Development of virtual instrument based on GPIB bus on LabVIEW flatAbstract :LabVIEWis the most popular developing flat of virtual instruments 1In this paper the whole process and the requirement to hardware and software are introduced and an applied e

3、xample is 1Own virtual instrument is built based on an existing magnetic meter with GPI with the importable instrument it does not need other DAQ card but can real 2time acquirement and then save the results for the later analysis , thus importable instrument 1K ey wods :LabVIEW; GIPB ;real 2time in

4、strument1前言数据采集、经常遇到的实际任务。LabVIEW 的出现使普通的实验室工作者也能在较短的时间内构建自己的测控系统。LabVIEW 采用图形化语言进行编程, 抛弃了传统的文本编程方式, 程序开发变得简单直观, 开发时间大大减少。尽管现有的测试测量仪器能提供很高程序上的测量自动化操作, 但有时仍然不能满足实际测量的需要, 因为实际的测量要求往往随实际的测量环境和测量目的不同而发生改变, 但台式仪器的功能一般是固定不变的。例如一些台式仪器虽然能对某些物理量进行实时测量, 但它并不能将整个测试过程的数据记录下来, 仪器本身仅仅相当于一个物理量指标器。为了实现实时测量分析并记录其测量结

5、果, 必需进行额外的工作。方法之一是利用仪器本身的模拟输出接口, 配一个数据采集卡对模拟输出信号进行采集并进行相应的后续分析处理。方法之二是利用仪器本身提供的编程接口, 通过编程实现。与第一种方法相比, 第二种方法不需要额外的硬件, 使得测试系统变得简单、方便。GPI B(G eneral Purpose Interface Bus 1是仪器与各种控制器(最常见的是计算机 之间的一种标准接口, 许多仪器都带有此接口。就编程语言而言, 强大、灵活的仪器控制功能使LabVIEW 成为开发虚拟仪器的首选编程语言, 而且利用LabVIEW 开发的虚拟仪器具有很好的外观效果, 其用户界面可与实际仪器的操

6、作面板相媲美。本文介绍了用LabVIEW 开发基于GPI B 接口的虚拟仪器的一般步骤, 并给出了一个实际的开发实例。2GPI B 总线虚拟仪器的硬件描述GPI B 接口是一种8位数字并行通讯接口, 其数据传输速度为1Mbyte s 。GPI B 设备分为听者(Listeners 、说者(Talkers 和控制器(C ontrollers 。说者负责发出消息(数据或命令 , 听者负责接收消息(数据或命令 , 控制器(通常是一台计算机 负责管理总线上的消息, 并指定通讯连接和发送GPI B 命令到指定的设备。有些GPI B 设备在不同的时候可以扮演不同角色, 有时充当说者, 有时充当听者, 有时

7、又作为控制器。GPI B 接口的优点在于通过一个接口可以将多个GPI B 设备连接在一起, 同时完成多种不同物理量的测量。GPI B 的基地址共有31个, 为了获得较高的数据传输速度, 连接35设备一般超过15个, 对于普通的测量这已经足够了。开发基于GPI B 总线的虚拟仪器一般需如下硬件:计算机、带有GPI B 接口的测试仪器、GPI B 接口卡和GPI B 连接电缆。测试仪器的类型及数量取决于实际的测试要求, 仪器本身还要有与之配套的传感器。GPI B 接口卡主要用于将仪器与计算机相连, 各GPI B 接口之间用GPI B 连接电缆连接。3GPI B 总线虚拟仪器的软件要求用LabVIE

8、W 开发一个基于GPI B 总线的虚拟仪器的软件包括:LabVIEW开发平台、GPI B 接口卡驱动程序和仪器的LabVIEW 驱动程序(不是必需的 。当然如果有仪器的LabVIEW 驱动程序, 创建虚拟仪器就更加方便了。仪器的LabVIEW 驱动程序负责仪器通信和控制的具体过程, 里面封装了复杂的仪器编程细节, 为用户使用仪器提供了简单的函数接口, 用户不必对仪器硬件有专门的了解, 就可以通过仪器驱动程序来使用这些仪器。图1为基于GPI B 总线的虚拟仪器结构示意图 。图1基于GPI B 总线的虚拟仪器结构示意图4开发实例在此, 结合开发实例介绍了用LabVIEW 开发基于GPI B 总线的

9、虚拟仪器的全过程。实例为对一台现有带有GPI B 接口的磁测量仪进行二次开发, 并开发出一个可完成磁场的实时采集测量, 并将采集结果保存到文件, 以供后续分析使用的磁测量虚拟仪器。实例中的GPI B 接口仪器是一台由美国Lake Shore Cryotronics 公司生产的磁测量仪2, 可测量直流和交流磁场, 交流频率范围为10400Hz , 测量范围取决于Hall 探头, 最高可达30T 。它具有一个输入通道, 两个模拟输出通道(一个为修正输出, 一个为直接输出 , 提供两种编程接口,GPI B 接口和串行接口, 其中GPI B 接口的速率为每秒读18次, 串行接口的速率为每秒读15次。该

10、仪器能很方便的测量各种磁场, 但是它不能对所测数据进行保存, 而且也只具有一些最简单的分析功能如最大值、相对值。GPI B 接口卡是美国国家仪器公司生产的GPI B 2PCII IIA , 该卡只支持Windows95或98, 有两种工作模式, GPI B 2PCII 模式和GPI B 2PCIIA 模式, 公司推荐使用GPI B 2PCII 模式。另外, 该卡不是即插即用设备, 需要人工设置。实例中余下的硬件为一台计算机和一条GPI B 连接电缆。计算机的操作系统为Windows98。首先, 安装LabVIEW 开发平台和GPI B 接口卡驱动程序。然后手动添加GPI B 接口卡, 根据操作

11、系统分配的资源, 结合GPI B 接口卡用户手册3进行相应的跳线设置, 实例中该卡工作于GPI B 2PCII 模式, I O 地址为H2B8, 中断为5,DMA 通道设为1。最后关闭计算机,将此GPI B 卡插入计算机内的扩展槽内。至此, 实例中的硬件设置及软件安装已经完毕, 接下来将利用LabVIEW 来进行虚拟仪器编程。在LabVIEW 中为实现与GPI B 仪器通信有两种方式4, 一种是利用函数模板中Instrument I O 子模板下的GPI B 相关函数, 另一种是利用函数模板中Instrument I O 子模板下VISA 相关函数, 实际上VISA 总线通信, 还能与许多、P

12、XI 接口仪器。本文采用VISA 相关函数, 每一函数都有一个VISA 资源名称参数, 用来指明该函数对应的硬件设备。本实例中的VISA 资源名称为GPI B :12, 其中GPI B 用于指明指口的类型,12是磁测量仪器在GPI B 总线上的地址(出厂设定值 。与磁测量仪通信的第一步是建立计算机与仪器的连接, 此任务可以通过VISA 的OPEN 函数来实现, 接着利用VISA 的WRITE 函数, 可以根据需要向仪器发送各种命令,VISA 的READ 函数可以读取仪器响应的任何数据, 完成所有测试任务后, 借助于VISA 的C LOSE 函数断开计算机与磁测量仪的通信连接。值得注意的是, 多

13、数GPI B 接口仪器基于字符串格式的, 即使从仪器读回的数字也是字符串格式的数字, 为了进行后续的分析处理必须将其转化为数字类型。LabVIEW 中的函数模板中String 子模板下的Srting Numbder C onversion 下提供了一个专门从字符串中扫描数字的函数, 利用此函数可以方便的将字符串格式的数字转化成数字型。仪器的编程风格有两种方式:一种是非模块化编程, 即针对特定的需要编写特定的程序以满足需要, 此方法直接, 容易实现, 但其可扩充性差, 不便于后续升级和更改。另一种是模块化编程, 即将仪器的各种功能模块化, 然后根据需要选择相应的模块来实现特定的要求, 该方法前期

14、工作投入大, 但其后续工作简单, 且便于升级和更改。本实例采用模块编程风格。45根据美国NI 公司提出的“软件就是仪器”的口号, 一个LabVIEW 就是一台虚拟仪器, 通常一个LabVIEW程序包括三个部分:前面板、框图和图标。图2为实例虚拟仪器的框图。 图2实例虚拟仪器的框图如图2所示, 本框图包括三个模块, 即仪器设置模块(CONFIG 模块 、单位显示模块(UNIT DISP LAY 模块 和数据采集测试模块(TEST 模块 主要用来完成测试相关参数的设定, B 址、单位设置、量程模式选择(, 仪器将根 、磁场类型(交流或直流 , 如果测量的是交流磁场, 可通过Peak RMS 按钮选

15、择测量其峰值或平均值。单位显示模块主要用来指示测试结果的单位, 由于磁场存在两种单位, 高斯(G auss 和特斯拉(Tesla , 而且对应不同的量程有不同的单位, 如T 或mT 、kG 或G , 所以专门编写了一个单位显示模块, 三个单位显示分别为当前读数的单位及最大值和最小值的单位。数据采集测试模块是该虚拟仪器的核心模块, 主要完成磁场的测试, 根据实际测量需要任意指定磁场采样间隔, 并将磁场的测量结果实时显示, 测试完成后可将全部测试结果以文件方式保存, 以便后续分析处理。另外, 本模块只提供两个最简单的分析功能, 即测量结果的最大值和最小值。对于更复杂的数据分析处理, 如谱分析, 可

16、利用LabVIEW 丰富分析函数库编写其他的模块加以实现, 本虚拟仪器暂不涉及。此外, 由图2可以看出模块化的编程, 不仅使程序结构变得十分简单, 而且编程者可以不必了解仪器的底层通信协议, 因为与仪器通信的底层编程已封装在模块内部, 从而进一步简化了虚拟仪器的开发。图3(略 为实例虚拟器的前面板, 左边为测试结果, 、最小值和测试曲线; 右, “停止开始”开关用于停止, “保存”按钮用于将测试结果存盘。, 此虚拟仪器最大特点在于它能进行实时采集测量, 并将采集结果保存到文件, 以供后续分析使用。严格意义上说, 基于台式仪器的虚拟仪器不仅可以实现台式仪器的所有功能, 而且还可以实现台式仪器所不具备的功能, 尤其是测试结果后续分析与处理, 因为测试结果的分析处理不依赖于硬件, 完全取决于实际的要求。此外, 虚拟仪器还具有易升级, 易更改等优点。5结论文中介绍了采用LabVIEW 虚拟仪器开发平台开发基于GPI B 总线的虚拟仪器的硬件及软件要求。结合磁测量虚拟仪器开发实例, 介绍了开发基于GPI B 总线的虚拟仪器的全过程。实验证明该虚拟仪器能很好地完成磁场的实时采集测量, 并将测试结果存盘以供后续分析使用, 此功能是台式磁测量仪所不具备的功能, 从而大大扩充了台式仪器的功能。参考文献1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论