教学材料《LabVIEW实验与应用》-第10章_第1页
教学材料《LabVIEW实验与应用》-第10章_第2页
教学材料《LabVIEW实验与应用》-第10章_第3页
教学材料《LabVIEW实验与应用》-第10章_第4页
教学材料《LabVIEW实验与应用》-第10章_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

10.1案例简介VISA是一款可与仪器总线通信的高级应用程序接口(API)。通用序列总线(USB)是一款基于消息的通信总线。这表示,PC和USB设备通过在总线上发送文本或二进制数据格式的指令和数据实现通信。每款USB设备都有各自的指令集,可通过“NI-VISA读写”函数将这些指令发送给仪器并从仪器上读取响应。VISA提供了两类函数供LabVIEW调用:USBINSTR设备与USBRAW设备。USBINSTR设备是符合USBTMC协议的USB设备,可以通过使用USBINSTR类函数控制,通信时无须配置NI-VISA;而USBRAW设备是指除了明确符合USBTMC规格的仪器之外的任何USB设备,使用时需要配置。本案例使用配置好的USBRAW设备对数据进行发送和接收。返回10.2软件实现该软件的主程序如图10.2.1所示,主要实现打开USB口、数据接收、数据发送以及数据清空等功能。从程序结构分析,主程序主要是一个While循环内嵌一个事件结构和一个条件结构。条件结构及其相连函数的程序框图如图10.2.2(a)~(c)所示,通过属性节点的调用可以切换按钮的使能和禁用状态,即给布尔属性(disabled)赋值为0时,按钮使能;赋值为2时,按钮禁用。具体到程序中,当“SessionOpened”触发时,“OpenSession”和“VISAresourcename”按钮不能使用,其他按钮“CloseSession”“ControlIn”“ControlOut”“Clear”处于使能状态。下一页返回10.2软件实现当“Initialize/SessionClosed”触发时,情况正好相反,此时处于接口初始化状态。将Initialize/SessionClosed、DoNothing、SessionOpened作为初始值赋给While循环的移位寄存器,并连接到选择器接线端用来控制条件结构。使用创建数组和合并错误函数将各个属性节点的错误输出合并为错误I/O簇,作为VISA打开的错误输入。上一页下一页返回10.2软件实现而事件结构由六个子事件结构构成,分别为“OpenSession”:值改变;“ControlIn”:值改变;“ControlOut”:值改变;“Clear”:值改变;“CloseSession”:值改变;“Stop”:值改变。下面对这六个子事件依次详细说明。1.“OpenSession”:值改变该子事件通过“OpenSession”按钮触发,使用VISA打开函数打开指定的USB设备,通过USBRAW(InterfaceType)属性节点的调用来判断是否是USB设备。上一页下一页返回10.2软件实现如果打开VISA错误,则将错误输出接入错误代码至错误簇转换函数,该函数的输出与属性节点的错误输出经由选择函数返回错误输出值,程序框图如图10.2.3所示。2.“ControlIn”:值改变该子事件通过“ControlIn”按钮触发,使用VISAUSB控制输入函数执行USB设备控制管道传输,从USB接收数据,并显示在ControlInBuffer控件上。VISAUSB控制输入函数需要设置索引、值、VISA资源名称、请求类型、请求、长度、错误输入等参数。程序框图如图10.2.4所示。上一页下一页返回10.2软件实现3.“ControlOut”:值改变该子事件通过“ControlOut”按钮触发,与“ControlIn”子事件操作相反,该事件使用VISAUSB控制输出函数将读取的数据发送到USB设备,程序框图如图10.2.5所示。4.“Clear”:值改变该子事件通过“Clear”按钮触发后将空数组赋予ControlInBuffer,即清空接收缓冲区。程序框图如图10.2.6所示。5.“CloseSession”:值改变上一页下一页返回10.2软件实现该子事件通过“CloseSession”按钮触发VISA关闭函数,将VISA关闭,程序框图如图10.2.7所示。6.“Stop”:值改变该子事件通过“Stop”按钮触发,通过与While循环的条件接线端相连来结束程序,程序如图10.2.8所示。上一页返回10.3软件分析与总结本案例的软件主要有五个程序流程:值的初始化、依据VI的状态更新用户接口、处理用户事件(即OpenSession、ControlIn、ControlOut、Clear、CloseSession和Stop)、更新接收数据流并检查错误、处理错误。整个软件的前面板如图10.3.1所示。返回图10.2.1主程序返回图10.2.2条件结构及其相连函数的程序框图返回图10.2.3“OpenSession”子事件及其相连函数的程序框图返回图10.2.4“ControlIn”子事件及其相连函数的程序框图返回图10.2.5“ControlOut”子事件及其相连函数的程序框图返回图10.2.6“Clear”子事

温馨提示

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

评论

0/150

提交评论