M-Bus 和 DLT645-2007 通讯协议

发布于 2021-01-01 13:41:41 字数 1453 浏览 2682 评论 0

M-Bus(meter-bus) 是一个专用于公共事业仪表的总线结构,《DL/T645-2007多功能电能表通信协议》是发改委发布的一项用于国内电能表数据通信的协议规范,相当于MBus的"汉化版"。

MBus 总线协议帧格式

|--前导字节--|--帧起始符--|--仪表类型--|--从站地址域--|--控制码--|--数据长度--|--数据域--|--纵向校验码--|--帧结束--| 字节格式:8位数据位+1个起始位+1个奇偶校验位+1停止位。传输时,低位在前,高位在后。

前导字节

通信前设备发送一定数目的FEH,本质上是物理层的要求,用于唤醒设备和同步,一般是2~4个FE

帧起始符

表示一帧信息的开始,为68H

仪表类型

指示参与通信的从站是那种类型的计量仪表:

  • 10H~19H: 水表
  • 20H~29H: 热表
  • 30H~39H: 燃气表

地址域

地址域指示与之通信的从站的地址,由7个字节组成A0A1A2A3A4A5A6,每个字节为2为BCD码,其中A5A6为厂商代码,低地址在前高地址在后,AAH为通配地址,当为AAAAAAAAAAAAAA时,代表广播。

控制码

帧信息控制代码,一个字节,字节的低6位代表相应信息的控制码(如000100代表读计量数据),第7位表示从站应答信息(0-正确应答,1-异常信息的应答),第8位表示帧的发送方(0-主站的控制帧,1-从站应答帧)。

数据长度

数据域的数据长度。

数据域

数据,含义根据控制码及上下文确定。发送方进行加33H处理,接收方进行减33H处理。

纵向校验码

从帧起始符开始到校验码之前得所有字节的二进制算术累加和,无进位。

帧结束符

表示一帧信息的结束,为68H

数据传输

  • 所有多字节数据域(地址域、数据域)均先传送地位后高位,例如传输数据0x12345678,先发送数据0x78,依次发送0x560x340x12
  • 通讯为半双工通信,每次通信均为主站请求、从站应答。
  • 字节奇偶校验错误、帧校验错误都代表数据通信异常,丢弃信息帧。
  • 最长响应时间为Tr = 50ms + 30 * Tbyte,其中Tbyte为传输一个字节所需时间。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

JSmiles

生命进入颠沛而奔忙的本质状态,并将以不断告别和相遇的陈旧方式继续下去。

0 文章
0 评论
84960 人气
更多

推荐作者

沧笙踏歌

文章 0 评论 0

山田美奈子

文章 0 评论 0

佚名

文章 0 评论 0

岁月无声

文章 0 评论 0

暗藏城府

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文