登录
首页 PLC论坛 PLC论坛
回帖 发帖
正文

主题:欧姆龙PLC中的modbus-RTU简易主站用DM固定分配区域数据高低位

点击:4043 回复:4

为什么说:
D32254高位保存的是有效数据的低位
D32255低位保存的是有效数据的高位
在哪里能看到解释呢?
14-11-10 10:03

引用 1185251626 在 2014/11/10 10:03:14 发言【内容省略】

我给你帮助文档里就有解释啊!
接收缓存区,保存数据的话,都是从一个16位寄存器的低位开始保存的!,但是首先接收的是一个数据的高位,所以说寄存器的高8位保存的是有效数据低8位,
14-11-10 10:06
举例说明:
当PLC发如下命令的时候:
01 03 00 0F 00 01 B4 09
私服会正确返回入戏数据,数据我们假设一个数据
01 03 02 01 23 F8 0D
那么是这样的:
D32250的低8位保存的就是01,也就是地址码
D32250的高8位始终为0
D32251的低8位保存的就是03,也就是功能码
D32251的高8位始终为0
D32252的低8位保存的就是出错代码,如果正确返回数据给PLC,则出错代码为0
D32252的高8位始终为0
D32253保存的是从功能码03后开始的应答字节数,但不包括CRC校验的两个字节,本例应该为3,包括02,01,23
D32254的低8位保存的是寄存器数据的高8位01
D32254的高8位保存的是字节计数02
D32255的低无数据
D32255的高8位8位保存的是寄存器数据的低8位23
所以
要把D32254的低8位保存到D30的高8位
要把D32255的高8位保存到D30的低8位
这样D30里保存的才是真正有效数据哦!
明白了吗?
14-11-10 10:43
二楼很仔细。
14-11-10 10:46

引用 fywsch 在 2014/11/10 10:46:19 发言【内容省略】

一般了!
14-11-10 10:48

工控新闻

更多新闻资讯