- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
协议介绍及解析
简介
Modbus是一种广泛应用于工业控制领域串行通信协议,以其开
放性、高可靠性、高效简单性、免费等优点,成为了工业领域通信
协议的业界标准,是工业现场电子设备之间常用的连接方式。
Modbus按其格式可分为Modbus-RTU,Modbus-ASCII,Modbus-TCP,其
中前两者适用于串行通信控制网络中,例如RS485,RS232等,而
Modbus-TCP主要应用于基于以太网TCP/IP通信的控制网络中。通
过此协议,控制器相互之间、或控制器和其它设备之间进行通信。
Modbus协议使用的是主从通讯技术,即由主设备主动查询和操作从
设备。一般将主控设备方所使用的协议称为ModbusMaster,从设
备方使用的协议称为ModbusSlave。典型的主设备包括工控机和工
业控制器等;典型的从设备如PLC可编程控制器等。Modbus通讯物
理接口可以选用串口(包括RS232和RS485),也可以选择以太网
口。
2.报文类型及格式
2.1协议描述
Modbus协议定义了一个与基础通信层无关的简单协议数据单元
(PDU)。特定总线或网络上的Modbus协议映射能够在应用数据单
元(ADU)上引入一些附加域,启动Modbus事务处理的客户机创建
Modbus应用数据单元。如图1所示。Modbus-RTU方式的通讯数据
帧格式如图2所示。
2.2通讯信息传输过程
当命令由主机发送至从机时,符合相应地址码的从机处理命令,根
据功能码作相应任务。如果CRC校验无误,则执行相应的任务,然
后把数据返送给主机。如果CRC校验出错就不返回任何信息,主机
应当有相应的超时处理。如果接收正确,但不能处理,返回异常报
文。对字型数据发送顺序为先高字节后低字节;对浮点数按照正常
的顺序发送;信文总长度(包括地址码和CRC校验码)不超过256
字节。
2.3应用数据单元
应用数据单元(ADU)由地址码、功能码、数据区、错误校验码构
成。
地址码:
地址码是通讯信息帧的第一字节,从0到255。每个从机有唯一的
地址码,并且只有符合地址码的从机才能响应回送信息。0xFF为广
播地址。
功能码:
功能码向服务器指示将执行哪种操作。Modbus协议建立了客户机启
动的请求格式,用一个字节编码Modbus数据单元的功能码域,当
从客户机向服务器设备发送报文时,功能码域通知服务器执行哪种
操作。
数据区:
数据区可以是数据(如:开关量输入/输出、模拟量输入/输出、寄
存器等等)、参考地址等。均为二进制数。各种数据参考地址在综
合控制装置中均从1开始,在通讯过程中则从0开始,所以读写地
址N时使用的地址数据为N-1。
错误校验码(CRC校验):
由于电子噪声或一些其它干扰,信息在传输过程中有时会发生错
误,CRC校验可以检验主机或从机在通讯数据传送过程中的信息是
否有误,错误的数据可以放弃(无论是发送还是接收),这样增加
了系统的安全和效率。
Modbus通讯协议的CRC(冗余循环码)包含2个字节,即16位二进
制数。CRC码由发送设备(主机)计算,放置于发送信息帧的尾
部。接收信息的设备(从机)再重新计算接收到信息的CRC,比较
计算得到的CRC是否与接收到的相符,如果两者不相符,则表明出
错。在进行CRC计算时只用8个数据位,起始位及停止位,如有奇
偶校验位也包括奇偶校验位,都不参与CRC计算。
主要功能码说明
(1)读取内部线圈(接点)
功能码:0x01
描述:读从机多个内部线圈数据。不支持广播命令。(地址0XXXX)
查询
查询信息指定要读取的线圈开始地址和线圈数量。线圈地址从0开
始。
以读取地址为17的从机中第7~15号内部线圈的值为例:
响应
响应报文格式:
计算机发送命令:[设备地址][功能码01][起始寄存器地址高8
位][低8位][读取的寄存器数高8位][低8位][CRC校验的低8
位][CRC校验的高8位]
[设备地址][功能码01][返回的字节个数][数据1][数
据2]…[数据n][CRC校验的低8位][CRC校验的高8位]
您可能关注的文档
最近下载
- 2023年导热油锅炉竣工最全面精品资料.pdf VIP
- 错案问责申请书范文.docx VIP
- 保时捷-Macan (迈凯)-产品使用说明书-Macan GTS-Macan GTS-17Macan_95B_Basis_BAL_WKD95B039317_CHS_HighRes.pdf VIP
- 2025年04月10月自考《财务管理学》真题及答案.docx VIP
- Unit8OnceuponaTimeSectionA2a-2e(第2课时)课件内嵌音视.pptx
- 个人债务集中清理工作指引.pdf VIP
- 24CDX009-2数据中心机电设施设计与安装-电力模块锂离子电池柜间接蒸发冷却空调系统.docx
- 入党志愿书里面的入党志愿.docx VIP
- 关于入党志愿书里的入党志愿.docx VIP
- 叠合板吊装专项施工方案.doc VIP
文档评论(0)