Modbus-RTU 协议兼容适配示例.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
T/CESA XXXXX—XXXX AA 附 录 A (资料性附录) Modbus-RTU协议兼容适配示例 以下以兼容Modbus-RTU协议为例,简述协议兼容适配过程: Modbus总线协议定义了OSI七层参考模型中的应用层、数据链路层、以及物理层。 (参见图1) 图1 首先看到Modbus协议的应用层规范,提出了客户端、服务器的概念,客户端向服务器发起数据读写 请求,服务器响应客户端的请求给出相应应答或是异常应答 (参见图2)。对于应用层规范提供的各种 服务modbus协议通过功能码来描述 (参见图3)。对于服务器端需要被访问的数据对象,Modbus协议通 过地址加数量的方式来映射 (参见图4)。在功能码描述章节,Modbus协议详细描述了各个功能码需要 的数据格式,包括客户端的请求以及服务端的回应。在兼容适配Modbus协议时,应用层分析了协议规范 之后,就需要通过编码实现逻辑功能。若客户端需要读取服务端的从地址0开始的10个寄存器,需要组 帧成如下数据流0x03,0x00,0x00,0x00,0x0A。在协议规范中把这一串数据流称为Modbus协议PDU。 图2 6 T/CESA XXXXX—XXXX 图3 图4 再看Modbus-RTU协议的链路层规范。这一规范中,定义了Modbus运行在串行链路上,通过主从机 方式实现对信道的管理。主机发送命令,从机收到命令才回应,否则不占用信道。其次,该规范还定义 了主机命令的寻址方式 (通过数据帧首部的地址域字段实现),以及数据校验方式 (16位CRC校验)。最 后,规范还定义了RTU字节内部的BIT位序等。分析了链路层的协议规范可知,若要读取从站站号为1的 站点的数据,数据帧格式应为:0x01,0x03,0x00,0x00,0x00,0x0A,0xC5,0xCD (参见图5、图6)。 图5 图6 在不同总线或网络的 Modbus 协议映射在协议数据单元之外引入了一些附加的域。发起 Modbus 事 务处理的客户端构造 Modbus PDU,然后添加附加的域以构造适当的通信 PDU。 主站根据协议状态机规定(参见图7),收到应用层的数据请求后,主动往串行链路上发送该数据帧, 7 T/CESA XXXXX—XXXX 并等待应答。主站收到应答将数据回给应用层,应用层再将数据提交给应用程序,一次完整的Modbus 读请求就完成了。 需要注意的是,串行链路的物理层主从两端必须是一致的同为RS485、RS232等等。串行数据的波特 率,奇偶检验等都必须一致。 8

您可能关注的文档

文档评论(0)

雄霸天下 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档