通讯MODBUSRTU规约培训教案分析.pptVIP

  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文档。上传文档
查看更多
DCS与其他设备的通讯 -- MODBUS-RTU通讯协议 背景介绍 协议总体介绍 协议分类 MODBUS RTU对硬件要求 协议相关术语介绍(一) 协议相关术语介绍(二) 常用功能码介绍 MODBUS RTU协议分析(一) MODBUS RTU协议分析(二) MODBUS RTU协议分析(三) MODBUS RTU协议分析(四) MODBUS RTU协议分析(五) MODBUS RTU地址含义 公司支持MODBUS RTU产品 244卡通讯举例 248卡通讯举例 * * Modbus协议最初由Modicon(莫迪康)公司开发出来 ,后来该公司成为施耐德自动化(Schneider Automation)部门的一部分 。 支持传统的RS-232、RS-422、RS-485和以太网设备。 许多工业设备,包括PLC,DCS,智能仪表等都在使用Modbus协议作为他们之间的通讯标准。 Modbus 协议是应用于工业控制器上的一种网络协议 。 此协议定义了一个控制器能认识使用的消息结构,而不管它们是经过何种网络进行通信的 。 制定了消息域格局和内容的公共格式 。 使用主—从技术 。即一个设备(主设备)能初始化传输(查询)。其它设备(从设备)根据主设备查询提供的数据做出相应反应。 MODBUS相关协议包括以下几类: MODBUS ASCII 调试时直观,LRC校验容易 ,传输的效率比较低。 MODBUS RTU 采用16位CRC校验 ,传输的数据量比较大 。 MODBUS TCP Modbus信息帧需嵌入TCP帧 ,使用对等技术通信 。 MODBUS PLUS (MODBUS+) 一种高速对等工业局域网 ,更加复杂的数据打包方法 。 网络采用串行总线方式,满足RS485通讯要求(通讯距离、设备数量等)。 网络中只有一个主设备。 设备支持MODBUS RTU协议。 网络中设备的串口参数和传输设置必须一致。 网络中设备通讯地址不能重复,地址范围在1-247之间 线圈状态 -表示一个可读写的数字量寄存器,类似于开出信号 输入状态 -表示一个只读的数字量寄存器,类似于开入信号 保持寄存器 -表示一个可读写的模拟量寄存器,类似于模出信号 输入寄存器 -表示一个只读的模拟量寄存器,类似于模入信号 功能码 -表示主设备对从设备操作的方式(读或者写指定寄存器类型)。 寄存器起始地址 -不同寄存器的地址是相对独立的,设备数据的存放是按照地址进行存储的。 寄存器数量 -不同寄存器的数量返回的字节数不一致,模拟量一个寄存器表示2个字节,开关量8个寄存器用一个字节表示。 作用 名称 功能码 取得一组逻辑线圈的当前状态(ON/OFF) 读取线圈状态 01 取得一组开关输入的当前状态(ON/OFF) 读取输入状态 02 在一个或多个保持寄存器中取得当前的二进制值 读取保持寄存器 03 在一个或多个输入寄存器中取得当前的二进制值 读取输入寄存器 04 强置一个逻辑线圈的通断状态 强置单线圈 05 把具体的二进制值装入一串连续的保持寄存器 预置多寄存器 16 强置一串连续逻辑线圈的通断 强置多线圈 15 把具体二进值装入一个保持寄存器 预置单寄存器 06 读命令 主设备发送命令:[设备地址] [功能码] [起始寄存器地址高8位] [低8位] [读取的寄存器数高8位] [低8位] [CRC校验的低8位] [CRC校验的高8位] 设备响应:[设备地址] [功能码] [返回的字节个数][数据1][数据2]...[数据n][CRC校验的低8位] [CRC校验的高8位] 注:寄存器地址从0开始偏移 开关量每一个数据表示8个开关量的值,每一位为0表示对应的开关断开,为1表示闭合。 一个模拟量需要2个字节 ,高位在前 举例 读线圈: 发:[11][01][00][13][00][25][CRC低][CRC高] 收:[11][01][05][CD][6B][B2][0E][1B][CRC低][CRC高] 读保持寄存器: 发:[11][03][00][6B][00][03][CRC低][CRC高] 收:[11][03][06][02][2B][00][00][00][64][CRC低][CRC高] 写单个寄存器命令 主设备发送命令:[设备地址] [功能码] [需下置的寄存器地址高8位] [低8位] [下置的数据高8位] [低8位] [CRC校验的低8位] [CRC校验的高8位] 设备响应:原样返回 写多个寄存器命令 主设备发送命令:[设备地址] [功能码] [需下置的寄存器地址高8位] [低8位] [寄存器数量高8位] [低8位] [字节个数] [数据1高8位] [低8位] [数据2高8位] [低8位

文档评论(0)

三沙市的姑娘 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档