EI-BISYNCH协议,欧陆2000系列设备读取数据

EI-Bisynch是一种基于ANSI X3.28-2.5 A4标准的专有协议,用于消息框架。尽管其名称中包含“Bisynch”,但它实际上是一种基于ASCII的异步协议。数据通过7位数据位、偶校验和1个停止位进行传输。

4.1 术语解释

4.1.1 地址

每个仪器都有一个可配置的地址,由两位数字组成:第一位是“组”编号(0到9),第二位是“单元”编号(0到9)。原则上,这允许使用100个不同的地址(00到99)。然而,在2000系列仪器中,地址00保留用于配置模式,实际可用的地址为01到99。

地址可以通过用户界面设置,具体使用指定的参数。可能需要通过用户界面查看和修改该参数;有关详细说明,请参阅仪器手册。

4.1.2 助记符

EI-Bisynch通过“助记符”识别仪器内的参数。这些通常是特定参数的两位字母缩写。例如:

  • PV:过程变量

  • OP:输出

  • SP:设定点

I-Bisynch消息中使用的ASCII控制字符

控制字符

几个ASCII控制字符在EI-Bisynch消息的框架中被使用。这些字符包括:

十六进制值名称用途
02STX消息中的数据开始
03ETX消息结束
04EOT传输序列结束
05ENQ请求值
06ACK正确认可
15NAK负确认可

数据格式

在Bisynch消息中,数据以一系列ASCII可打印字符的形式发送。Series 2000仪器使用两种主要的数据格式:自由格式和十六进制格式。

4.2.1 自由数据格式

从仪器返回的参数值以“自由格式”呈现,长度可变。仪器将值以其前面板上显示的形式返回,不带前导或尾随空格,例如:

  • -99.9

  • 123.4

  • 123(整数值)

注意,尾随的小数点字符会被抑制。任何“符号”必须位于数字本身之前。写入仪器的值可以包含前导和尾随空格、前导或尾随零或符号指示。

这种格式用于几乎所有可通过EI-Bisync获取的2000系列参数,除了少数状态字和主要设置参数,它们使用“十六进制格式”。

注意:由于返回的值长度可变,因此需要使用终止的ETX字符来分隔数据值。除非您在非常有限的数字范围内操作(例如10.0到99.9),否则通常无法对表示值所使用的字符数量做出假设,在这种情况下,所有可能的值将传输4个字符。

4.2.2 十六进制数据格式

这种格式用于少数状态字和主要设置参数。值前面有一个‘>’(十六进制3E)字符,通常由4个十六进制字符组成,尽管在写入参数时可以抑制前导零。这些字符表示16位无符号整数的十六进制(基数16)表示。‘A’到‘F’的大小写表示都是可以接受的,尽管仪器将始终返回大写。例如:

  • 2040 相当于8256十进制

  • ABCD 相当于43981十进制

此格式还与通道9指示符结合使用,以设置仪器的滚动列表。


 

4.3 从2000系列设备读取数据

要读取数据,需要向仪器发出一个“轮询”消息。该消息的格式如下:

EOTEOT(GID)(GID)(UID)(UID)(CHAN)(C1)(C2)ENQENQ

上述格式中的每一项都表示一个ASCII字符。用粗体显示的方括号中的项是控制字符,用于“框定”消息的起始和结束,它们的值可以参考第4.2节中的表格。括号中的普通字符项具有以下含义:

  • GID:组ID,即仪器地址的第一位数字。例如,地址为12的设备,GID为'1'(16进制为31);地址为1的设备,GID为'0'(16进制为30),地址01与地址1相同。GID被发送两次,作为验证机制。

  • UID:单元ID,即仪器地址的第二位数字。例如,地址为12的设备,UID为'2'(16进制为32);地址为1的设备,UID为'1'(16进制为31)。UID也被发送两次,作为验证机制。

  • CHAN:通道号,可选项。如果使用,发送‘1’值表示2000系列的单回路控制器。

  • C1:助记符的第一个字符,用于访问的参数,例如‘P’代表过程变量(Process Variable)。

  • C2:助记符的第二个字符,用于访问的参数,例如‘V’代表过程变量(Process Variable)。

如果设备正确接收了消息并且助记符有效,它将以以下格式回复:

STXSTX(CHAN)(C1)(C2)<DATA>ETXETX(BCC)

  • CHAN:来自轮询消息的通道号回显,如果使用该字段,则返回该值;否则不返回。

  • C1, C2:来自轮询消息的助记符回显。

  • DATA:参数的值,格式可能是例如 99.9、1.2、-999、>1234 等的显示格式。

  • BCC:这是一个用于数据验证的块校验和。它通过对STX之后、ETX之前的所有字符进行异或(XOR)计算生成。请注意,它的值可能是‘EOT’,因此在编写协议驱动程序时需要小心,不要将其视为“传输结束”序列。

如果请求的是不存在的助记符,或者该助记符代表未配置的参数,设备将回复单个‘EOT’字符。如果没有任何回复,则可能出现以下错误之一:

  • 接线不正确或硬件故障(电缆、PC、RS422/485适配器、设备通信模块)。

  • 设备地址设置错误(PC或设备)。

  • 线路设置错误,应为7个数据位、偶校验、1个停止位(PC)。

  • 波特率设置错误(PC或设备)。

  • 设备检测到奇偶校验错误(可能由线路噪声引起)。

  • 消息格式不正确(PC)。

为确定通信问题的原因,请系统地排查这些可能的原因。

参数读取示例

例如,当从地址为1的设备读取过程变量(PV)时,主设备发送和接收的字符序列如下:

主设备发送:EOTEOT0011PVENQENQ

设备回复:STXSTXPV16.4ETXETX{BCC}

注意,BCC是一个单字符值,在该例子中,其值为16进制的18。

以16进制显示的传输如下:

主设备:04 30 30 31 31 50 56 05

设备:02 50 56 31 36 2E 34 03 18

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/881028.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

数据结构之二叉树(1)

数据结构之二叉树&#xff08;1&#xff09; 一、树 1、树的概念与结构 &#xff08;1&#xff09;树是一种非线性的数据结构&#xff0c;由n(n>0)个有限结点组成一个具有层次关系的集合。 &#xff08;2&#xff09;树有一个特殊的结点&#xff0c;叫做根结点&#xff…

shell指令及笔试题

一&#xff1a;linux基本指令考察 创建文件&#xff0c;直接在本目录的上级目录下创建一个名为dir1的文件夹&#xff0c;并在dir1文件夹下创建一个名为file1的文件 答&#xff1a;本目录的上级目录下创建一个名为dir1的文件:mkdir ../dir1 在dir1文件夹下创建一个名为file1的…

VS code 创建与运行 task.json 文件

VS code 创建与运行 task.json 文件 引言正文创建 .json 文件第一步第二步第三步 运行 .json 文件 引言 之前在 VS code EXPLORER 中不显示指定文件及文件夹设置&#xff08;如.pyc, pycache, .vscode 文件&#xff09; 一文中我们介绍了 settings.json 文件&#xff0c;这里我…

手动部署并测试内网穿透

文章目录 手动部署并测试内网穿透1、原理2、下载 frp 文件3、配置对应的配置文件4、启动 frp 服务5、效果 手动部署并测试内网穿透 1、原理 原理就是让你需要访问的内网可以被其他内网访问到。 其实就是让内网经过一个公网服务器的转发&#xff0c;使得能够被访问。 这里我们需…

2024年H1昇腾服务器中标统计:宝德超聚变遥遥领先

华为全联接大会将于9月19日召开&#xff0c;本届华为全联接大会&#xff08;HUAWEI CONNECT 2024&#xff09;以“共赢行业智能化”为主题&#xff0c;以昇腾鲲鹏AI计算为核心&#xff0c;赋能行业增长。 去年9月20日&#xff0c;第八届华为全联接大会在上海发布了昇腾Atlas 90…

解决redis缓存击穿问题之布隆过滤器

布隆过滤器 1. 什么是布隆过滤器 布隆过滤器&#xff08;Bloom Filter&#xff09;是一个空间效率很高的数据结构&#xff0c;用于判断一个元素是否在一个集合中。布隆过滤器的核心思想是利用位数组和一系列随机映射函数&#xff08;哈希函数&#xff09;来快速判断某个元素是…

什么是CSRF攻击,该如何防护CSRF攻击

CSRF攻击&#xff08;跨站请求伪造&#xff0c;Cross-Site Request Forgery&#xff09;是一种网络攻击手段&#xff0c;攻击者利用已通过身份验证的用户&#xff0c;诱导他们在不知情的情况下执行未授权操作。这种攻击通常发生在用户登录到可信网站并且有活动的会话时&#xf…

我的AI工具箱Tauri版-FunAsr音频转文本

本教程基于自研的AI工具箱Tauri版进行FunAsr音频转文本服务。 FunAsr音频转文本服务 是自研AI工具箱Tauri版中的一个高效模块&#xff0c;专为将音频或视频中的语音内容自动转化为文本或字幕而设计。用户只需简单配置输入、输出路径&#xff0c;即可通过FunAsr工具快速批量处理…

PCL KD树的使用

目录 一、概述 1.1原理 1.1.1 数据拆分过程 1.1.2 树的构建示例 1.2实现步骤 1.3应用场景 二、代码实现 2.1关键函数 2.1.1KD树构建与查询&#xff1a; 2.1.2 k近邻搜索 2.1.3半径搜索 2.2完整代码 三、实现效果 3.1处理后点云 3.2数据显示 PCL点云算法汇总及实战…

linux系统维护:给linux的根目录分配更多的额外的磁盘空间,实现系统磁盘容量的平滑升级

目录 一、背景说明 二、概念介绍 1、物理卷&#xff08;Physical Volume, PV&#xff09; 2、卷组&#xff08;Volume Group, VG&#xff09; 3、逻辑卷&#xff08;Logical Volume, LV&#xff09;&#xff1a; 三、操作过程 1、vmware中新增磁盘 2、查看磁盘信息 3、格式化…

安卓13长按电源按键直接关机 andriod13不显示关机对话框直接关机

总纲 android13 rom 开发总纲说明 文章目录 1.前言2.问题分析3.代码分析4.代码修改5.编译6.彩蛋1.前言 有些设备需要在长按电源键的时候,直接关机。不需要弹出对话框进行询问。 2.问题分析 过滤电源按键,需要在系统里面处理的话,那么我们需要熟悉android的事件分发,然后再…

stm32f411ceu6芯片学习

首先找到对应芯片的数据手册&#xff0c;硬件电路设计参考的是Electrical characteristics这一节&#xff0c;芯片的每一个引脚都会有推荐的电路接线。 基本每个芯片&#xff0c;都可以在数据手册中找到厂家提供的参考电路图&#xff0c;这就是绘制芯片的原理图最基本的依据。 …

力扣题解2390

大家好&#xff0c;欢迎来到无限大的频道。 今日继续给大家带来力扣题解。 题目描述​&#xff08;中等&#xff09;&#xff1a; 从字符串中移除星号 给你一个包含若干星号 * 的字符串 s 。 在一步操作中&#xff0c;你可以&#xff1a; 选中 s 中的一个星号。 移除星号…

清理C盘缓存,删除电脑缓存指令是什么

在处理计算机系统的C盘缓存清理任务时&#xff0c;需要谨慎操作以确保系统的稳定性和数据的安全性。通常&#xff0c;Windows操作系统中并没有直接的“一键清理C盘缓存”的单一命令&#xff0c;因为缓存文件分散存储于多个位置&#xff0c;并且有些缓存对于系统性能至关重要&am…

HarmonyOS元服务与卡片

元服务与卡片 文章目录 一、元服务1.介绍2.常见元服务项目步骤 二、卡片1.介绍2.卡片的创建3.卡片的数据的变更4.卡片的进程间通讯4.1使用工具包4.2使用步骤 5.卡片路由postCardAction&#xff1a;快速拉起后台5.1格式5.2快速拉起指定页面--router5.3调用后台功能--call5.3卡片…

基于Java的房地产在线营销管理系统研究与实现

目录 前言 功能设计 系统实现 获取源码 博主主页&#xff1a;百成Java 往期系列&#xff1a;Spring Boot、SSM、JavaWeb、python、小程序 前言 随着信息技术的迅猛发展&#xff0c;互联网已经渗透到我们生活的方方面面&#xff0c;为各行各业带来了前所未有的变革。房地产…

Linux学习笔记8 理解Ubuntu网络管理,做自己网络的主人

本文讲解了Ubuntu下网络由什么管理&#xff0c;介绍了临时ip和路由的设置方法&#xff0c;介绍了静态持久化网络配置的方法以及各网络管理软件之间的关系。 来看看Ubuntu网络管理。 序言 原本学习ubuntu网络管理就是为了检查nginx安装过程中使用wget获取压缩包为什么解析不出…

Python编码系列—Python适配器模式:无缝集成的桥梁

&#x1f31f;&#x1f31f; 欢迎来到我的技术小筑&#xff0c;一个专为技术探索者打造的交流空间。在这里&#xff0c;我们不仅分享代码的智慧&#xff0c;还探讨技术的深度与广度。无论您是资深开发者还是技术新手&#xff0c;这里都有一片属于您的天空。让我们在知识的海洋中…

Jenkins怎么设置每日自动执行构建任务?

在 Jenkins 中设置每日自动执行构建任务可以按照以下步骤进行&#xff1a; 一、安装必要插件 确保安装了 “Timestamper” 插件&#xff0c;这个插件可以为构建添加时间戳&#xff0c;方便查看构建的执行时间。 二、配置任务 打开需要设置每日自动执行的 Jenkins 任务。在 …

105.游戏安全项目-基址的技术原理-分析技巧

免责声明&#xff1a;内容仅供学习参考&#xff0c;请合法利用知识&#xff0c;禁止进行违法犯罪活动&#xff01; 内容参考于&#xff1a;易道云信息技术研究院 本人写的内容纯属胡编乱造&#xff0c;全都是合成造假&#xff0c;仅仅只是为了娱乐&#xff0c;请不要盲目相信…