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

主题:MODBUS通讯协议的计算

点击:562 回复:4

RTU使用说明
(baud=9600,  word=8,  parit=none,  stop=2 )。计算机发给仪表的命令格式为:
机号 命令 地址高 地址低 字数高 字数低 CRC低 CRC高
内容 01 03 05 00 00 08 44 c0
该命令的含义是读取地址为0500,数据长度为8个字的所有数据,即累计流量(3字)、瞬时流量(2字)、频率(2字)、流速(1字)全部数值。若读取一个值,只要改变对应地址和字数即可。如读频率,可选地址为050a,字数选0002即可。
( 地址:1281 长度:8 格式:03 )
目前程序仅支持RTU格式,测试程序中应选择RTU格式,其它选项与过去相同
仪表回答格式为:
机号 命令 n 数据1 数据2 …… 数据n CRC低 CRC高
内容 01 03 xx xx xx …… xx xx xx
注释:
回答数据均为十六进制
数据格式:(RTU)
数据地址
(16进制) 字数 参数 数值范围单位 单位 说明 备注
0500 3 ∑Q 0~99999999999999 mL 累计流量 48位无符号数
0506 2 Q 0~99999999 10mL/h 瞬时流量 32位无符号数
050A 2 F 0~99999999 Hz 频率 32位无符号数
050E 1 S 0~65535 cm/s 流速 16位无符号数
这是流量计MODBUS通讯协议说明,用测试软件读过来的数和流量计表头的实际数值不一样怎样根据这个协议算出和表头一样的数值?谢谢!
15-04-15 20:59
050A 2 F 0~99999999 Hz 频率 32位无符号数
假设读取这个,那么读取来的有效值应该是两个16位的值,把两个16位换算成32位的就行了
15-04-16 08:17
谢谢你,怎样换算?能详细点吗?多谢多谢!
15-04-16 10:34
您应该把 软件读过来的数和流量计表头的实际数值 都列出来,让大家帮您参考。不然不好回答的,因为有些仪表返回的数据是低字在前,高字在后。
15-04-16 10:53
就是这么回事,lz把实际和测试的贴上来才能看出来
15-04-16 16:40

工控新闻

更多新闻资讯