一、恩格曼热表
1.1 M-Bus协议
总召唤命令为:
10 5B FE 59 16
正确回复报文为:
68 61 61 68 08 00 72 34 33 18 13 C5 14 03 0D 42 00 00 00 04 78 66 29 C9 00 04 6D 1F 0F 7B 19 04 15 EF 01 00 00 04 FB 00 38 00 00 00 84 20 FB 00 00 00 00 00 84 30 FB 00 00 00 00 00 04 3D 00 00 00 00 04 2D 00 00 00 00 02 5B 82 00 02 5F 19 00 04 61 B3 28 00 00 02 27 05 00 01 FD 17 10 04 90 28 10 27 00 00 1D 16
报文解读:参考热表报文解析
网络1
LD SM0.1 //初始化
MOVB 16#09, SMB130 // 串口1,无校验位,八位数据位,自由口通信
MOVB 16#E0, SMB187 //接收信息控制字节,
MOVB 16#68, SMB188 //设置接收信息起始字节 16#68
MOVB 16#16, SMB189 //设置接收信息结束字节 16#16
MOVB 120, SMB194 //设置接收字节数为 120 个
网络2
LD SM0.1
MOVB 4, VB200 //发送命令10
MOVW 16#10, VW201
MOVB 5, VB210 //发送命令 5B
MOVW 16#5B, VW211
MOVB 3, VB220 //发送命令 FE
MOVB 16#FE, VB221
MOVB 3, VB230 //发送命令 59
MOVB 16#59, VB231
MOVB 2, VB230 //发送命令 16
MOVB 16#16, VB231
网络3
LD SM0.1 //发送命令
XMT VB100, 1
ATCH INT_0:INT0, 26
ATCH INT_0:INT0, 24 //串口1发送完成中断
ENI //串口1接收完成中断
//中断允许控制命令
网络4
LD SM0.0
LPS
RCV VB250, 1 //存储数据到VB250存储空间
NOT
XMT VB230, 1 //重新启动发送称量命令
LPP
DTCH 26 //无条件返回中断指令
数据块内容:
VB100 16#05, 16#10, 16#5B, 16#FE, 16#59, 16#16
验证方法:
通过拨动PLC上的拨码,由run到stop再到run.
监视状态表,检测初始地址是VB250,之后为VB 251,VB252,VB253......
或者用串口工具在电脑上查看。