labview中的visa用法.pdf

上传人:小** 文档编号:76177074 上传时间:2019-02-03 格式:PDF 页数:27 大小:2.24MB
返回 下载 相关 举报
labview中的visa用法.pdf_第1页
第1页 / 共27页
labview中的visa用法.pdf_第2页
第2页 / 共27页
labview中的visa用法.pdf_第3页
第3页 / 共27页
labview中的visa用法.pdf_第4页
第4页 / 共27页
labview中的visa用法.pdf_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《labview中的visa用法.pdf》由会员分享,可在线阅读,更多相关《labview中的visa用法.pdf(27页珍藏版)》请在金锄头文库上搜索。

1、在在 LabVIEW 中使用中使用 VISA 在 LabVIEW 中使用 VISA VISA 是仪器编程的标准 I/O API。 VISA 的多种 用途 VISA 可控制 GPIB、串口、USB、以太网、PXI 或 VXI 仪器,并根据使用 仪器的类型调用相应的驱动程序,用户无需学习各种仪器的通信协议。VISA 独 立于操作系统、总线和编程环境。换言之,无论使用何种设备、操作系统和编程 语言,均使用相同的 API。 开始使用 VISA 之前,应确保选择合适的仪器控制 方法。 GPIB、串口、USB、以太网和某些 VXI 仪器使用基于消息的通信方式。 对基于消息的仪器进行编程,使用的是高层的 A

2、SCII 字符串。仪器使用本地处 理器解析命令字符串,设置合适的寄存器位,进行用户期望的操作。SCPI(可 编程仪器标准命令)是用于仪器编程的 ASCII 命令字符串的标准。相似的仪器 通常使用相似的命令。用户只需学习一组命令,而无需学习各个仪器生产厂商各 种仪器的不同命令消息。最常用的基于消息的函数是:VISA 读取、VISA 写入、 VISA 置触发有效、VISA 清空和 VISA 读取 STB。 PXI 和许多 VXI 仪器使用基 于寄存器的通信方式。对基于寄存器的仪器进行编程,使用的是将直接写入仪器 控制寄存器的底层二进制信息。该通信方式的优点是速度快,因为仪器不需解析 命令字符串,并

3、将信息转换为寄存器层次的程序。基于寄存器的仪器实际上是在 直接硬件操作层上进行通信。最常用的基于寄存器的函数是:VISA 输入、VISA 输出、VISA 转入和 VISA 转出 LabVIEW VISA 与串口通讯的编程实现 (2013-05-25 11:25:52) VISA 是虚拟仪器软件体系结构的缩写(即 Virtual Instruments Software Architecture),实质上是一个 I/O 口软件库及其规范的总称。 VISA 是应用于仪器编程的标准 I/0应用程序接口,是工业界通用的仪器驱动 器标准 API(应用程序接口),采用面向对象编程,具有很好的兼容性、扩展性

4、和 独立性。用户可用一个 API 控制包括 VXI、GPIB 及串口仪器在内的不同种类的仪 器。它还支持多平台工作、多接口控制,是一个多类型的函数库。 在 LabVIEW 中编写的 VISA 接口程序,当外部设备变更时,只需要更换几个 程序模块即可使用,简单方便而且开发效率高。 在 LabVIEW 中利用 VISA 节点进行串行通信编程。为了方便用户使用, LabVIEW 将这些 VISA 节点单独组成一个子模块,共包含8个节点,分别实现初始 化串口、串口写、串口读、中断以及关闭串口等功能。 一、基本步骤一、基本步骤 在 LabVIEW 中,进行串口通信的基本步骤分为3步: 第一:串口初始化,

5、利用SA Configure Serial Port.vi【VISA 配置串口】 节点设定串口的端口号、波特率、停止位、校验位、数据位。 第二:读写串口,利用 VISA Read 节点和 VISA Write 节点对串口进行读写。 第三:关闭串口,停止所有读写操作。 二、主要节点介绍二、主要节点介绍 下面介绍一下 VISA 串口的主要节点及其功能: 1、串口配置1、串口配置 该节点主要用于串口的初始化,如图1所示。 图1 串口配置节点 VISA 资源名称:指 PC 的串口名,例:COMl,COM2等。 波特率:串口速率,默认为9600bps。 数据比特:一帧信息中的位数,LabVIEW 中允许

6、58位数据,默认为8。 奇偶:奇偶校验位,可选为无校验、奇校验或偶校验,默认为无校验。 停止位:一帧信息中的停止位的位数,可选为1位、15位或2位。 流控制:设置传输机制使用的控制类型,可选为 None、XONXOFF 软件流控 或 RTSCTS 硬件流控,默认为 None。 终止符:设置一帧数据的结束符,即当接收串口数据时,当收到终止符时, 软件自动结束一帧数据接收。 特别需要注意的是超时(TIMEOUT) 和结束符号两个参数默认的 秒,结束符号默认是使能状态,默认的结束符是A(n),另外,回车x0D (r)也 经常做为做为结束符号 2、串口写入2、串口写入【从写缓冲区中写数据至 visa

7、资源名称指定的串口】【从写缓冲区中写数据至 visa 资源名称指定的串口】 该节点主要用于写入串口数据,如图2所示。 图2 串口写入节点 写入缓冲区:串口发送的内容。 3、串口读取【从 visa 资源名称指定的串口中读数据至读缓冲区】3、串口读取【从 visa 资源名称指定的串口中读数据至读缓冲区】 该节点主要用于读取串口中的数据,如图3所示。 图3 串口读取节点 字节总数:要读取的字节数量。 读取缓冲区:PC 串口收到的数据。 返回数:实际读取的字节数,字节总数应大于或等于返回数,否则会丢数。 4、串口关闭4、串口关闭 该节点主要用于关闭已打开的串口,释放串口资源,以便串口被其他程序所调用,

8、如图 4所示。 图4 串口关闭节点 三、典型串口程序框图三、典型串口程序框图 按照串口编程的3个基本步骤,图5和图6给出了两个典型的串口读写程序框串口读写程序框 图图。图5为读取的字节数为固定值,图中为4个字节,如果串口中数据字节数目不 等于4个字节则会出错。图6则是先判断出串口中数据的字节数目,然后将其全部 读取出来。相对而言,图6的通用性更好,但是出错的概率也会增大,因为不知 道串口发来的数据是否与我们所需要的数据的字节数相等。 图5 典型串口读写程序框图1 图6 典型串口读写程序框图2 参考文献:参考文献: 文献1:基于 LabVIEW 的串口通信应用(李晴) 文献2:http:/ 串口

9、通信 编辑 串行接口是一种可以将接受来自 CPU 的并行数据字符转换为连续的串行数据流发送出去, 同时可将接受的串行数据流转换为并行的数据字符供给 CPU 的器件。一般完成这种功能的 电路,我们称为串行接口电路。 目录 1定义 2原理 1定义 串口通信程序框图 串口通信是指外设和计算机间,通过数据 信号线 、地线、控制线等,按位进行传输数据 的一种通讯方式。这种通信方式使用的数据线 少,在远距离通信中可以节约通信成本,但其 传输速度比并行传输低。 串口是计算机上一种非常通用的设备通信 协议。大多数计算机(不包括笔记本电脑)包 含两个基于 RS-232的串口。串口同时也是仪 器仪表设备通用的通信

10、协议;很多 GPIB 兼容 的设备也带有 RS-232口。同时,串口通信协 议也可以用于获取远程采集设备的数据。 RS-232(ANSI/EIA-232标准)是 IBM-PC 及其兼容机上的串行连接标准。可用于许多用 途,比如连接鼠标、打印机或者 Modem,同时 也可以接工业仪器仪表。用于驱动和连线的改 进,实际应用中 RS-232的传输长度或者速度 常常超过标准的值。RS-232只限于 PC 串口和 设备间点对点的通信。 RS-232串口通信最远距 离是50英尺。1 2原理 串行通信 串口通信(Serial Communications)的概 念非常简单,串口按位(bit)发送和接收字节。

11、 尽管比按字节(byte)的并行通信慢,但是串 口可以在使用一根线发送数据的同时用另一根 线接收数据。它很简单并且能够实现远距离通 信。比如 IEEE488定义并行通行状态时,规定 设备线总长不得超过20米,并且任意两个设备 间的长度不得超过2米; 而对于串口而言, 长度 可达1200米。典型地,串口用于 ASCII 码字符 的传输。通信使用3根线完成,分别是地线、发 送、接收。由于串口通信是异步的,端口能够 在一根线上发送数据同时在另一根线上接收数 据。其他线用于握手,但不是必须的。串口通 信最重要的参数是波特率、数据位、停止位和 奇偶校验。对于两个进行通信的端口,这些参 数必须匹配。 a,

12、 波特率: 这是一个衡量通信速度的参数。 它表示每秒钟传送的位的个数。例如300波特 表示每秒钟发送300个位。通常电话线的波特 率为14400,28800和36600。波特率可以远远 大于这些值,但是波特率和距离成反比。高波 特率常常用于放置的很近的仪器间的通信,典 型的例子就是 GPIB 设备的通信。 b, 数据位: 这是衡量通信中实际数据位的 参数。当计算机发送一个信息包,实际的数据 不会是8位的,标准的值是6、7和8位。如何设 置取决于你想传送的信息。 比如, 标准的 ASCII 码是0127 (7位) 。 扩展的 ASCII 码是0255 (8位) 。如果数据使用简单的文本(标准 A

13、SCII 码) ,那么每个数据包使用7位数据。每 个包是指一个字节,包括开始/停止位,数据位 和奇偶校验位。由于实际数据位取决于通信协 议的选取,术语“包”指任何通信的情况。2 c,停止位:用于表示单个包的最后一位。 典型的值为1,1.5和2位。 由于数据是在传输线 上定时的,并且每一个设备有其自己的时钟, 很可能在通信中两台设备间出现了小小的不同 步。因此停止位不仅仅是表示传输的结束,并 且提供计算机校正时钟同步的机会。适用于停 止位的位数越多,不同时钟同步的容忍程度越 大,但是数据传输率同时也越慢。 d, 奇偶校验位: 在串口通信中一种简单的 检错方式。有四种检错方式:偶、奇、高和低。 当

14、然没有校验位也是可以的。对于偶和奇校验 的情况,串口会设置校验位(数据位后面的一 位) , 用一个值确保传输的数据有偶个或者奇个 逻辑高位。例如,如果数据是011,那么对于偶 校验, 校验位为0, 保证逻辑高的位数是偶数个。 如果是奇校验,校验位为1,这样就有3个逻辑 高位。高位和低位不真正的检查数据,简单置 位逻辑高或者逻辑低校验。这样使得接收设备 能够知道一个位的状态,有机会判断是否有噪 声干扰了通信或者是否传输和接收数据是否不 同步。1 串行通信是工业现场仪器或设备常用的通信方式, 它是将一条信号的 各位数据按顺序逐 位传送。 计算机串行通信 (简称串口) 采用 RS232 协议,允许一

15、个发送设备连接到一个接 收设备以传送数据,最大速 率为115200bps。计算机串行口采用 Intel 8250 异步串行通信组 件 构成,通常以 COM1COM4 来表示。 1.LabView 串口节点 LabView 中提供了已封装好的串口通信节点, 它们位于函数数据 通信协议串 口。 这里主要介绍程序中使用到的串口配置、串口读取、串口写入和串口 关闭, 其他串口相关的节点使用方法查询 LabView 帮助。 串口配置串口配置 在进行串口通信时, 首先要对串口进行初始化和配置。 这可以由 VISA 配置 串口节点来完成,串口配置节点如下图所示。 使用该节点可以设置串口的 VISA 资源名称

16、、波特率、数据位、超时 时间、 终止符以及流控制等参数。 VISA 资源名称控件用于规定对 VISA 会话句柄开放的资源,并维持 会话句柄和类。VISA 会话句柄是 VISA 使用的唯一逻辑标识符,用 于与资源进行通信。 VISA 会话句柄由 VISA 资源名称输入控件保持, 用户不可见。VISA 资源名称输出是 VISA 函数中输出的 VISA 资 源 名称的副本。通过将资源名称输出或输入至函数和 VI,并链接函数 和 VI,从而简化数据流 编程。这与文件 I/O 函数使用的文件引用句 柄输出相似。 【 【 【 【句柄【 【 【 【句柄,是整个 windows 编程的基础。一个句柄是指使用的一个唯一的整数 值,即一个四字节长的数值,来标志应用程序中的不同对象和同类对象中的不同的实例,诸 如,一个窗口,按钮,图标,滚动条,输出设备,控件或者文件等。应用程序能够通过句柄 访问相应的对象的信息, 但是句柄不是一个指针, 程序不能利用句柄来直接阅读文件中的信 息。如果句柄不用在 I/O 文件中,它

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号