LabVIEW通讯-GPIB

GPIB

GPIB,通用接口总线,在OSI模型中属于物理层的协议。

GPIB基本特性

IEEE488规定的GPIB总线的24条总线中,16条讯号线按功能可分为:
8条数据线
(DIO1-DIO8,用于传输接口信息与数据信息)、
5条接口管理线(IFC,系统控制器重置装置;ATN,指示总线的8条数据线传输的数据属于命令还是数据信息;REN,切换装置为远程控制或本地控制;EOI,装置传送数据至最后字节时,令EOI拉低表示数据传输结束,收听者在EOI被拉至低电位后,停止读取数据。EOI可与NL(NewLine)CR(Carriage Return)字符组成结束符号;SRQ,装置用来通知控制器需要服务。SRQ为低电位时表示需要服务,在被控制器轮询完成后拉高,解除服务需求)、
三条交握线(DAV数据有效线,NRFD尚未备妥接收数据线、NDAC尚未接收数据)
在这里插入图片描述
GPIB数据传输采用并行以比特传输数据(1byte=8bit)、采用串行以字节(位组)传输数据,双向异步传输,
标准GPIB传输速率低于1Mbit/s(用HS488协议时,数据传输速率可达8 Mbit/s),互连总线的长度不超过20米,任何两个相邻仪器间的电缆不超过4米,总线上所有仪器之间的电缆长度平均不超过两米。
总线上传输消息采用负逻辑(低电平(≤+0.8V)为1,高电平(≥+2.0)为0)
将多台仪器与电脑连接至同一GPIB总线,每台设备(包括电脑接口板)都需要有唯一的GPIB地址(单字节地址0-30,双字节地址0-960)。一般GPIB接口板的地址会设置为0.
GPIB一般用于电气干扰轻微的实验室与生产现场,可以用作多台仪器之间的平行总线。

装置分类

在GPIB标准接口总线系统中,根据装置控制总线的时机可以分为三类仪器装置:
讲者(通过总线发送仪器消息的装置(测量仪器、数据采集器、计算机)一个GPIB系统中可以存在多个讲者,但是在某一时刻,只能有一个讲者在起作用)
听者(通过总线接收由讲者发出的消息的装置(打印机、信号源)一个GPIB系统中可以存在多个听者,允许多个听者同时进行工作(最多14个))
控者(数据传输过程中的组织者和控制者(对其他设备进行寻址、运行讲者使用总线等,常为计算机)GPIB系统不允许有两个或两个以上的控者同时起作用)
对于系统中的某一台装置,它可以具有三个要素中的其中一个、两个或全部

连接方式

GPIB的连线方式有线型连接与星形连接两种。
线型连接方式是一台串接一台的方式形成一测试回路
星型连接方式是以一台装置为中心,其他的辐射连接至其他装置 (重叠数量尽量在三个以下,防止最下方连接器承受多大压力)

SCPI命令

SCPI命令为树状层次结构,包括多个子系统,每个子系统由一个关键字和一个或几个层次关键字构成,命令行通常以:开始,关键字之间以:分隔开,关键字后面跟随可选的参数设置,命令行后面添加?表示查询,命令和参数以空格分开。

SCPI符号

大括号{}(大括号中的参数是可选项,可以不进行设置,也可以设置一次或多次。如[:TRACe]:DATA[:DATA] VOLATILE, < VALUE>{,< VALUE>}命令中,{ ,< VALUE>}中的浮点电压值可以省略,也可以设置一个或多个电压值)
竖线|(竖线用于分隔多个参数选项,发送命令时必须选择其中一个参数,例如DISPlay:SAVer[:5TATe] ON|OFF命令中,可选命令参数为ON或OFF)
方括号[](方括号中的内容(参数或关键字)可省略,如果省略参数,仪器将该参数设置为默认值,如[:SOURce< n>]:MDD[:STATe]?)
三角括号<>(三角括号中的值必须用一个有效值进行替换,例如DISPlay:BRIGhtness < brightness>MINimum|MAXimum)

参数类型

布尔 ON OFF
整型 特殊说明以外,参数在有效值范围内可以取任意整数值(此时不要把参数设置为小数形式,否则将出现异常)
离散(参数只能取指定的数值,并且这些数值不是连续的)
连续实型(参数在有效值范围内按精度要求(通常默认精度为小数点后六位有效值)可以进行任意取值)
关键字 参数取值所列举的值

命令缩写

所有命令对大小写不敏感,可以全部采用大写或小写,但是在要进行缩写的时候,必须输完命令格式中的所有大写字母(:SYSTem:COMMunicate:USB:INFormation?可缩写成:SYST:COMM:USB:INF?)

命令

公用命令描述
*CLS清除状态
*ESE标准事件状态使能
*ESE?标准事件状态使能
*ESR?标准事件状态寄存器查询
*IDN?仪器标识查询
*OPC操作完成
*OPC?操作完成询问
*RST复位
*SRE服务请求使能
*SRE?服务请求使能查询
*STB?读状态字节查询
*TST?自测试查询
*WAI等操作完成
测量命令描述
CONFigure状态设置仪器,以执行相应测量
FETCh?取数重新获取仪器数据,并将数据至于输出缓冲区
READ?实现对刷新数据的取数操作,数据采集和后期处理
MEASure?测量设置、触发数据采集并进行后期处理
子系统命令作用描述
CALCulate计算完成采集后期数据处理,有16个分支
CALibration校准完成系统校准,有11个分支
CONTrol控制用于测量和过程控制环境条件下机电仪器的通断操作
DIAGnostic诊断为仪器维护提供诊断书节点
DISPlay显示控制图、文与轨信息的显示选择和表达方法
FORMat格式为传送数值和矩阵信息设置数据格式
HCOPy硬拷贝控制至外部仪器的绘图与打印操作的设置
INPut输入控制检测器件输入口特征
INSTrument仪器提供识别和选择逻辑仪器的方法
MEMory存储器管理仪器存储器
MMEMory海量存储器为仪器提供海量存储能力
OUTPut输出控制源输出口特征
PROGramm程序仪器内部程序控制和管理
ROUTe路由仪器的信号路径选择
SENSe检测控制与信号特征无关的仪器检测功能的特定设置
SOURce控制与信号特性无关的源功能的特定设置
STATus状态控制SCPI定义的状态报告结构
SYSTem系统实现仪器内务管理和设置全局组态
TEST测试提供标准仪器自检程序
TRACe痕迹一般用于跟踪信号,
DATA数据仪器存储器中命名实体,用于定义和管理记录的数据
TRIGger触发用于同步仪器的动作
UNIT单位。义缺省单位
VXIVXI总线控制与VXI总线操作相关的管理功能

labVIEW实现

通过VISA连接

从仪器的信息或设置里获取GPIB地址。
简历主机与仪器的连接
SCPI指令中开启连线的指令为GPIB0::GPIB 地址::INSTR
向仪器发出指令并读取返回值(每台仪器返回的信息都不一样,详细意义需要阅读指令集手册)
VISA关闭函数关闭仪器的会话句柄。
在这里插入图片描述

通过GPIB模块连接

通过GPIB写入函数发送"*IDN?"命令。
通过GPIB读取函数读取仪器的响应。
在这里插入图片描述
部分GPIB仪器可能需要在读写之前线进行初始化
在这里插入图片描述
一般仪器仪表都会有自己的封装库,可以搁NI搜一下,搜不到的搁官网再搜一下,Git上搜一下(自己按指令集写库的稳定性确实稳定性高点,但,不是闲的或需求高,不建议自己写。不要问我遇到了什么)。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

斯金

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值