modbusrtu通讯规约

modbusrtu通讯规约

ID:14416256

大小:78.00 KB

页数:4页

时间:2018-07-28

modbusrtu通讯规约_第1页
modbusrtu通讯规约_第2页
modbusrtu通讯规约_第3页
modbusrtu通讯规约_第4页
资源描述:

《modbusrtu通讯规约》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、MODBUS_RTU通讯规约一、通讯数据的类型及格式信息传输为异步方式,并以字节为单位,在主机和从机之间传递的通讯信息是11位的字格式,包含1个起始位(0),8个数据位,2个停止位(1)。信息帧格式:开始地址码功能码数据区CRC校验码结束大于3.5个字节停顿时间1字节1字节n字节2字节大于3.5个字节停顿时间二、通讯信息传输过程通讯命令由主机发送至从机时,与主机发送的地址码相符的从机接收通讯命令,如果CRC校验无误,则执行相应的操作,然后把执行结果(数据)返送给主机。返回的信息中包括地址码、功能码、执行后的数据以及CRC校验码。如果CRC校验出错就不返回任何信息。2.1地址码地址码是每个通讯信

2、息帧的第个1字节,从0到100。每个从机必须有总线内唯一的地址码,只有与主机发送的地址码相符的从机才能响应回送信息。当从机回送信息时,回送数据均以各自的地址码开始。主机发送的地址码表明将发送到的从机地址,从机返回的地址码表明回送的从机地址,相应的地址码表明该信息来自于何处。2.2功能码每个通讯信息帧的第个2字节。主机发送,通过功能码告诉从机应执行什么动作。从机响应,从机返回的功能码与从主机发送来的功能码一样,表明从机已响应主机并已执行了相关的操作。仪表支持以下2个功能码:功能码定义操作03H读寄存器读取一个或多个寄存器的数据10H写多路寄存器把n个16位二进制数据写入n个连续寄存器2.3数据区

3、数据区随功能码不同而不同。这些数据可以是数值、参考地址等。对于不同的从机,地址和数据信息都不相同(应给出通讯信息表)。主机利用通讯命令(功能码03H和10H),可以任意读取和修改从机数据寄存器,一次读取或写入的数据长度应不超过数据寄存器地址有效范围。三、功能码简介43.1功能码03H:读寄存器例如:主机要读取从机地址为01H,起始寄存器地址为0CH的2个寄存器数据。主机发送:主机发送发送的信息地址码01H功能码03H起始寄存器地址高字节00H低字节0CH寄存器数量高字节00H低字节02HCRC校验码低字节04H高字节08H如果从机寄存器0CH、0DH的数据为0000H、1388H,从机返回:从

4、机返回返回的信息地址码01H功能码03H字节数04H寄存器0CH数据高字节00H低字节00H寄存器0DH数据高字节13H低字节88HCRC校验码低字节F7H高字节65H3.2功能码10H:写多路寄存器例如:主寄存器地址为00H的3个寄存器中。主机发送:4主机发送发送的信息地址码01H功能码10H起始寄存器地址高字节00H低字节00H寄存器数量高字节00H低字节03H写入字节数06H00H寄存器待写入数据高字节00H低字节02H01H寄存器待写入数据高字节13H低字节88H02H寄存器待写入数据高字节00H低字节0AHCRC校验码低字节9BH高字节E9H从机返回:从机返回返回的信息地址码01H功

5、能码10H起始寄存器地址高字节00H低字节00H寄存器数量高字节00H低字节03HCRC校验码低字节80H高字节08H四、16位CRC校验码4主机或从机可用校验码判别接收信息是否正确。由于电子噪声或一些其它干扰,信息在传输过程中可能会发生错误,校验码可以检验主机或从机通讯信息是否有误。16位CRC校验码由主机计算,放置于发送信息帧的尾部。从机再重新计算接收到的信息的CRC,比较计算得到的CRC与接收到的CRC是否一致,如果不一致,则表明出错。在进行CRC计算时只用到8个数据位,起始位及停止位都不参与CRC计算。CRC校验码计算方法如下:① 预置1个16位的寄存器为十六进制FFFF(即全为1),

6、称此寄存器为CRC寄存器;② 把第一个8位二进制数据(通讯信息帧的第1个字节)与16位CRC寄存器的低8位相异或,结果  放于CRC寄存器;③ 把CRC寄存器的内容右移一位(朝低位)并用0填补最高位,检查右移后的移出位;④ 如果移出位为0:重复第③步(再次右移一位);  如果移出位为1:CRC寄存器与多项式A001(1010000000000001)进行异或;⑤ 重复步骤③和④,直到右移8次,这样整个8位数据全部进行了处理;⑥ 重复步骤②到步骤⑤,进行通讯信息帧下一个字节的处理;⑦ 将该通讯信息帧所有字节(不包括CRC校验码)按上述步骤计算完成后,得到的CRC寄存器内容即为:16位CRC校验码

7、。五、出错处理当仪表检测到了除CRC校验码出错以外的其它错误时,将向主机回送信息,功能码的最高位置为1,即从机返送给主机的功能码是在主机发送的功能码的基础上加128。从机返回的错误信息帧格式如下:地址码功能码(最高位为1)错误码CRC校验码低字节CRC校验码高字节1字节1字节1字节1字节1字节错误码如下:01H非法的功能码接收到的功能码仪表不支持02H非法的寄存器地址接收到的寄存器地址超出仪表的寄

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。