最后更新:2022-05-29 23:41:27 手机定位技术交流文章
MODBUS是OSI模式第七层应用级传输协议,允许客户/服务器在与各种形式公共汽车或网络连接的装置之间进行通信。
它主要用于工业自动化设备通信。
MODBUS以序列线和Ether TCP/IP网络为基础,可在MODBUS上进行通信,可通过序列或网络链接连接设备两端,双方同意使用模式协议进行通信。
如前所述,MODBUS有两种运作方式:系列门户和网络门户(称为TCP),因此MODBUS协定相当于两项协定,尽管两项协定极为相似,下文将讨论。
在了解协议之前,让我们从MODBUS代码开始我们用的是01,05,03,06,16下面是我们用它时会看到的。线圈函数作为开关。实际值只有0和1,当我们播送的数据只有0和1时,我们可以使用圈圈。阅读循环是客户阅读服务的圈子。客户端使用相同的书写循环向服务器发送新值 。这里我们可以发现,服务器无法将命令(包括读和写)单独传送给客户端;发送者是存储数据的中央处理器的一部分。它有能力持有比圈子更多的价值。登记册有16个条目。您可以连续在两个登记册中存储32位数整数或浮点数。
以下是系列议定书报告格式:(数据组包括功能代码和数据)
地址 地址 外地函数代码数据 CRC 检查
CRC验证了两个字节,数据长度变化不定,根据功能代码而波动。
从运输示例开始: 01 03 00 00 00 00 02 95 CB
以下是我们所看到的 请求代码03格式:
职能编号03的PDU如下:
地址区域为 01, 函数代码为 03, 起始地址为 01 (00 01), 发报机的数目为 02 (002), 发报机的起始地址和数目均为 2 字节, 合并值为 最终值, 如格式所示 。
化学品审查委员会对95CB进行了验证,因此在此可不予考虑。
根据功能代码的不同,个人用药单位可能有所不同。但是都是固定好的,每个函数代码似乎都是数学公式。职能03读了登记册。当我们读到服务端的数据时您必须告知服务器要读取的起始地址( 通常由服务端建立并给出 ) 。以及您想要读取的数据数量
每个MODBUS客户都希望我们作出反应, 其代表是客户提出请求, 读取服务器的注册地址。 PDU如下:
当客户发送 01 03 00 00 00 02 95 CB 以读取登记册时,服务器必须提供回复信息。
答复是01.004 002 004 95 CB。
格式如下:地址区域为 01。功能码是03,04是字节数,上面有两台发射机因此,对报告作出答复的字节数为 2*2=4。返回客户阅读的登记簿有两个值,即002 00 04。分别是2和4,《儿童权利公约》确认了该《公约》。
下一步将审查MODBUS的TCP协议。
TCP和系列协议非常相似。它只是另一个MBAP头条 和另一个CRC检查。甲基溴行动计划标题包含交易处理识别码、协议识别特征、长度、单位识别特征和其他信息。它有7个字节。这些身份证符合客户的底部长度值补给后发送的字节长度。
这里有一个例子 说明我们用第三种功能 将会取得什么成就。
00 01 00 02 00 06 01 03 00 01 00 02
从格式上可以看出,交易处理身份为01,协议识别码为02, 长度为6, 函数代码为03, 起始地址为01(001), 存款者人数为02(002)。
MODBUS协议具体规定了两种通信方式,请注意,它将通过我的后模式传送。
将 PDU 附加到您的所有函数编号上 。
01
* N = 产出数/8;如果剩余数量超过零,那么
N = N+1
02
03
04
05
06
15
16
本文由 在线网速测试 整理编辑,转载请注明出处。