上位机和下位机的基础概念&PC端与横河仪器的连接方式(上位机和下位机的区别及各自意义) ypxx.net

科瑞杰-随着电子技术的快速发展,仪器仪表从最早的指针式模拟仪表已经发展到今天的各种数字化仪器。数字化仪器的一大优势就是可以比较方便的与上位机进行数据的传输,接收上位机发送的控制命令实现自动化测量。今天我们就来谈谈上位机和仪器的通讯。

先来回顾一下上位机和下位机的基础概念

上机位

可以直接发送操作指令的计算机或单片机,一般提供用户操作交互界面并向用户展示反馈数据。

下机位

下位机一般指用于接收和反馈上位机的指令的计算机或单片机,并且根据指令控制机器执行动作以及从传感器读取数据。

上机位软件

用于完成上位机操作交互的软件被定义为“上位机软件”。

为了实现以上过程,上位机和下位机都需要单独编程,都需要专门的开发人员在各自两个平台编写代码。

我们的测量仪器一般是作为下位机来和上位机进行通讯的,那么两者之间通讯首先要建立物理连接。

从PC控制测量仪器的连接方式

仪器厂家 Heweltt Packard开发了一种总线,称为HPIB(Hewlett-Packard接口总线)。1975年,IEEE标准化了这个总线,后来改为GPIB(通用接口总线)。该标准被称为IEEE 488(IEEE 488.1),它定义了总线的机械方面。后来的IEEE 488.2定义了它的协议属性。缺少的是制造商之间关于控制仪器的命令的一套规则。有时,这些甚至在同一制造商的不同型号之间也有所不同。

为了解决不同厂家控制仪器命令的差异太大的问题,1990年,SCPI联盟发布了第一个SCPI标准(Standard Commands for Programmable Instruments用于可编程仪器的标准命令),作为IEEE-488.2标准的附加层。

SCPI定义了一套用于仪器的标准语法和命令,SCPI命令实际是通过ASCII字符串形式使命令与仪器进行交互。命令一般由一系列的关键字构成,有的还需要包括参数,命令一般由英文单词的4个大写首字母定义,一般仪器对于命令的返回也是一系列的ASCII字符串,当然在进行大量数据传输的时候直接采用二进制的形式也是可以的。

一般的仪器指令可以分为控制指令和查询指令。

语法惯例

命令语法格式图示如下:

VOLTage:DC:RANGe {<range>|MIN|MAX|DEF}

大多数的命令(及一些参数)是大写和小写字母的混合。大写字母表示命令的缩写,使程序行变短。如果要获得较好的程序可读性,可以使用长格式命令。

例如,考虑到前文中VOLTage这个关键词。您可以键入VOLT或VOLTage,大小写字母随意结合。因此,VolTaGe、volt和Volt都可以接受。其他格式(如VOL和VOLTAG)将会产生错误。

  • 大括号 ({ }) 包含参数选项。大括号不随命令字符串发送。
  • 垂直线 (|) 分隔参数选择。例如,上述命令中的 {<range>|MIN|MAX|DEF} 指示您可以指定一个数字范围参数或 "MIN"、"MAX" 或 "DEF"。
  • 尖括号 (< >) 表示必须给括号内的参数指定一个值。例如,上述的语法语句表明尖括号中的 <量程> 参数。不随命令串一起发送尖括号。必须为该参数指定一个值(例如 "VOLT:DC:RANG 10"),除非您选择语法中显示的其它选项中的一项(例如 "VOLT:DC:RANG MIN")。
  • 方括号内 ([ ])放置可选参数。方括号不会随命令串一起发送。如果您未对可选参数指定数值,则仪器将使用默认值。

总结

仪器的SCPI命令用法在仪器的编程手册或者通讯手册中可以查询。本次的介绍就到这里,如想了解更多详细信息及使用方法,欢迎留言或致电咨询。

科瑞杰作为横河、艾德克斯授权代理商,深耕新能源汽车、低空经济、机器人、航空航天、军工等行业领域,专业提供可靠性测试、OBC测试、功能性测试、自动化测试系统集成与整体解决方案。