- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PAGE 3
通讯协议(V1.0)新
概述
本通讯协议采用标准Modbus协议,所用的传输模式为RTU模式。Modbus协议是一种主-从式协议。
任何时刻只有一个设备能够在线路上进行发送。由主站管理信息交换,且只有它能发起。它会相继对从站进行轮询。除非被主站批准,否则任何从站都不能发送消息。从站之间不能进行直接通信。
协议帧中不包含任何消息报头字节或消息字节结束符。
它的定义如下:
从站地址
请求代码
数据
CRC16
从站地址:- 地址必须在1到247之间。
- 每个地址在网络设备环境中必须唯一。
数据 : 以二进制代码传输。
CRC16 : 循环冗余校验参数。
当间隔时间长于或等于3.5字符时,即作为检测到帧结束。
1、通讯口设置
通讯方式 异步串行通讯接口,如RS-485,RS-232,RS-422等
波特率 2400、4800、9600、19200bps(可由设定仪表参数相互更改,默认9600)
2、字节数据格式
. 一位起始位
. 八位数据位
. 一位停止位
. 无校验
1
*
*
*
*
*
*
*
*
1
1位起始位 8位数据位 1位停止位
3、仪表通讯帧格式
下表给出由数显仪工作在从机模式时的的Modbus功能,并规定其限值。
从站编号:本机仪表地址,地址必须在1到247之间,且同一总线上各仪表地址不可重复。
地址为0时用于广播功能,且此时只有写功能有效。单字节。
功能代码:“读”和“写”功能是从主站角度定义的。单字节。
功能代码
Modbus名
功能名
广播
一次连续的N的最大值
3 (0x03)
Read Holding Registers
读N个寄存器值
NO
24
16 (0x10)
Write Multiple Registers
写N个寄存器值
YES
24
首寄存器地址:要读取的第一个内部寄存器的地址。双字节。每个内部寄存器的值数据为双字节。
寄存器数:要读取或修改的内部寄存器个数。双字节。
读取的字节数:被读取的内部寄存器的数据的字节总数。单字节。
CRC16:循环冗余校验参数。
1) 读N个输出字:功能3
注意: Hi = 高位字节,Lo = 低位字节。
此功能可被用于读取参数,而无论类型如何。
主站请求
从站编号
0x03
首寄存器地址
寄存器数
CRC16
Hi
Lo
Hi
Lo
Lo
Hi
1 字节 1 字节 2 字节 2 字节 2 字节
从站响应
从站编号
0x03
读取的字节数
首寄存器数值
……
末寄存器数值
CRC16
Hi
Lo
Hi
Lo
Lo
Hi
1字节 1字节 1字节 2 字节 2 字节 2 字节
例1:使用功能3读取从站1上的1个字Sn(地址0137H,见附表),其中:
· Sn(信号输入类型) = 17(0x11)
主站请求
0x01
0x03
0x00
0x89
0x00
0x01
0x55
0xe0
1 字节 1 字节 2 字节 2 字节 2 字节
从站响应
0x01
0x03
0x02
0x00
0x11
0x78
0x48
1字节 1字节 1字节 2字节 2字节
2) 写N个输出字:功能16(0x10)
主站请求
从站编号
0x10
首寄存器地址
寄存器数
字节数
首字数据
……
CRC16
Hi
Lo
Hi
Lo
Hi
Lo
Lo
Hi
1字节 1字节 2 字节 2 字节 1字节 2字节 2字节
从站响应
从站编号
0x10
首寄存器地址
寄存器数
CRC16
Hi
Lo
Hi
Lo
Lo
Hi
1字节 1字节 2 字节 2 字节 2 字节
例2:使用功能16将1000、200写入从站1中的2个单元AL1和AL2(寄存器地址0009H至000AH,见附表),即:
· AL1(上限报警值) = 1000(0x3E8)
· AL2(下限报警值) = 200 (0xC8)
主站请求
从站编号
请求代码
首寄存器
地址
寄存器数
字节数目
首寄存器
数据
第二寄存器
数据
CRC16
0x01
0x10
原创力文档


文档评论(0)