ABB产品的Modbus 协议应用

上传人:TH****3P 文档编号:119712966 上传时间:2020-01-23 格式:PPT 页数:70 大小:2.64MB
返回 下载 相关 举报
ABB产品的Modbus 协议应用_第1页
第1页 / 共70页
ABB产品的Modbus 协议应用_第2页
第2页 / 共70页
亲,该文档总共70页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《ABB产品的Modbus 协议应用》由会员分享,可在线阅读,更多相关《ABB产品的Modbus 协议应用(70页珍藏版)》请在金锄头文库上搜索。

1、ABB产品的Modbus 协议应用 Modbus Modbus 协议是MODICOM公司开发的一个为很多厂商 支持的开放规约 是应用于电子控制器上的一种通用语言 通过此协议 控制器相互之间 控制器经由网络 例如 以太网 和其它设备之间可以通信 此协议定义了一个控制器能认识使用的消息结构 而不管 它们是经过何种网络 常用的通讯网络有串行总线和以太 网 进行通信的 它描述了一控制器请求访问其它设备的 过程 如果回应来自其它设备的请求 以及怎样侦测错误 并记录 它制定了消息域格局和内容的公共格式 串行通讯标准 RS 232 RS 422与RS 485都是串行数据接口标准 最初都是由电子 工业协会 E

2、IA 制订并发布的 RS 232在1962年发布 命名为EIA 232 E 作为工业标准 以保证不同厂家产品之间的兼容 RS 422由RS 232发展而来RS 422定义了一种平衡通信接口 将传输 速率提高到10Mb s 传输距离延长到4000英尺 速率低于100kb s 时 并允许在一条平衡总线上连接最多10个接收器 RS 422是一 种单机发送 多机接收的单向 平衡传输规范 被命名为TIA EIA 422 A标准 EIA于1983年在RS 422基础上制定了RS 485标准 增加了多点 双向 通信能力 即允许多个发送器连接到同一条总线上 同时增加了发送 器的驱动能力和冲突保护特性 扩展了总

3、线共模范围 后命名为 TIA EIA 485 A标准 由于EIA提出的建议标准都是以 RS 作为前缀 所以在通讯工业领域 仍然习惯将上述标准以RS作前缀称谓 RS232 RS422 RS485 接口标准 RS 232 C是美国电子工业协会EIA Electronic Industry Association 制定的一种串行物理接口标准 RS 232 C 总线标准设有25条信号线 常用9针口 对于一般双工通 信 仅需一条发送线 一条接收线及一条地线 通讯距离受电缆电容及共地噪声的影响最多15米 RS 232是为点对点 即只用一对收 发设备 通讯而设计 的 其驱动器负载为3 7k 接线原则 接收数

4、据针脚 或线 与发送数据针脚 或线 相连 彼些交叉 信号地对应相接 接线管脚图 RS422与RS485 RS 422是一种单机发送 多机接收的单向 平衡传输规范 被命名为TIA EIA 422 A标准 是RS 232 的改进 EIA又于1983年在RS 422基础上制定了RS 485标准 增加 了多点 双向通信能力 即允许多个发送器连接到同一条 总线上 即TIA EIA 485 A标准 RS422与RS485数据信号采用差分传输方式 也称作平衡 传输 它使用一对双绞线 将其中一线定义为A 另一线 定义为B RS485 两线制接法 RS 422与RS 485的网络安装注意要点 RS 422可支持

5、10个节点 RS 485支持32个节点 因此多 节点构成网络 网络拓扑一般采用终端匹配的总线型结构 不支持环形或星形网络 在构建网络时 应注意如下几 点 1 采用一条双绞线电缆作总线 将各个节点串接起来 从总线到每个节点的引出线长度应尽量短 以便使引出线 中的反射信号对总线信号的影响最低 2 应注意总线特性阻抗的连续性 在阻抗不连续点就会 发生信号的反射 下列几种情况易产生这种不连续性 总 线的不同区段采用了不同电缆 或某一段总线上有过多收 发器紧靠在一起安装 再者是过长的分支线引出到总线 RS 422与RS 485传输线上匹配电阻 对RS 422与RS 485总线网络一般要使用终接电阻进行匹

6、 配 但在短距离与低速率下可以不用考虑终端匹配 匹配原则 当信号的转换时间 上升或下降时间 超过电 信号沿总线单向传输所需时间的3倍以上时就可以不加匹 配 实际应用 RS 422在总线电缆的远端并接电阻 RS 485 则应在总线电缆的开始和末端都需并接终接电阻 终接电 阻一般在RS 422网络中取100 在RS 485网络中取120 比较省电的匹配方式 利用一只电容C隔断直流成分可以节省大部分功率 但电容C的取值 是个难点 需要在功耗和匹配质量间进行折衷 利用二极管的钳位作用能迅速削弱反射信号 达到改善信 号质量的目的 RS 422与RS 485的接地问题 很多情况下 连接RS 422 RS

7、485通信链路时只是简单 地用一对双绞线将各个接口的 A B 端连接起来 而忽略了信号地的连接 这种连接方法在许多场合是能 正常工作的 但却埋下了隐患 对整个RS 422或RS 485网络 必须有一条低阻的信号地 将两个接口的工作地连接起来 使共模干扰电压被短路 这条信号地可以是额外的一条线 非屏蔽双绞线 或者 是屏蔽双绞线的屏蔽层 这是最通常的接地方法 一 在ModBus网络上传输 标准的ModBus口是使用RS 232C兼容串行接口 它定义 了连接口的针脚 电缆 信号位 传输波特率 奇偶校验 通信使用主 从技术 即仅一设备 主设备 能初始化传 输 查询 其它设备 从设备 根据主设备查询提供

8、的 数据作出相应反应 从设备回应消息也由Modbus协议构成 包括确认要行动 的域 任何要返回的数据 和一错误检测域 如果在消息 接收过程中发生一错误 或从设备不能执行其命令 从设 备将建立一错误消息并把它作为回应发送出去 二 在其它类型网络上传输 在其它网络上 控制器使用对等技术通信 故任何控制都 能初始和其它控制器的通信 这样在单独的通信过程中 控制器既可作为主设备也可作为从设备 提供的多个内部 通道可允许同时发生的传输进程 在消息位 Modbus协议仍提供了主 从原则 尽管网络 通信方法是 对等 如果一控制器发送一消息 它只是 作为主设备 并期望从从设备得到回应 同样 当控制器 接收到一

9、消息 它将建立一从设备回应格式并返回给发送 的控制器 三 查询 回应周期 四 两种传输方式 所选的ASCII或RTU方式仅适用于标准的Modbus网络 它定义了在这些网连续传输的消息段的每一位 以及决定 怎样将信息打包成消息域和如何解码 其它网络上 象 TCP和Modbus Plus Modbus消息被转成与串行传输无 关的帧 五 RTU模式 当控制器设为在Modbus网络上以RTU 远程终端单元 模式通信 在消息中的每个8Bit字节包含两个4Bit的十六进制字符 代码系统 a 8位二进制 十六进制数0 9 A F b 消息中的每个8位域都是一个字节 两个十六进制字符组成 每个字节的位 a 1

10、个起始位 b 8个数据位 最小的有效位先发送 c 1个奇偶校验位 无校验则无 d 1个停止位 有校验时 2个Bit 无校验时 错误检测域 CRC 循环冗长检测 典型Modbus RTU 帧结构 地址域包含8Bit 地址范围是1 247 十进制 主设备通 过将要联络的从设备的地址放入消息中的地址域来选通从 设备 当从设备发送回应消息时 它把自己的地址放入回 应的地址域中 以便主设备知道是哪一个设备作出回应 功能代码域包含了8Bits 范围是十进制的1 255 消息从 主设备发往从设备时 功能代码域将告之从设备需要执行 哪些行为 从设备回应时 它使用功能代码域来指示是正 常回应 无误 还是有某种错

11、误发生 称作异议回应 数据域是由两个十六进制数集合构成的 范围00 FF 从 主设备发给从设备消息的数据域包含附加的信息 从设备 必须用于进行执行由功能代码所定义的所为 这包括了象 不连续的寄存器地址 要处理项的数目 域中实际数据字 节数 如果主设备需要从设备读取一组保持寄存器 功能代码03 数据域指定了起始寄存器以及要读的寄存器数量 如 果主设备写一组从设备的寄存器 功能代码10十六进制 数据域则指明了要写的起始寄存器以及要写的寄存器数 量 数据域的数据字节数 要写入寄存器的数据 错误检测域的内容是通过对消息内容进行循环冗长检测方 法得出的 CRC域附加在消息的最后 添加时先是低字 节然后是

12、高字节 Modbus RTU 帧传输过程 传输的第一个域是设备地址 可以使用的传输字符是十六 进制的0 9 A F 网络设备不断侦测网络总线 包括停 顿间隔时间内 当第一个域 地址域 接收到 每个设备 都进行解码以判断是否发往自己的 在最后一个传输字符 之后 一个至少3 5个字符时间的停顿标定了消息的结束 一个新的消息可在此停顿后开始 整个消息帧必须作为一连续的流转输 如果在帧完成之前 有超过1 5个字符时间的停顿时间 接收设备将刷新不完 整的消息并假定下一字节是一个新消息的地址域 同样地 如果一个新消息在小于3 5个字符时间内接着前个消息 开始 接收的设备将认为它是前一消息的延续 这将导致

13、一个错误 因为在最后的CRC域的值不可能是正确的 RTU字符帧传输时位的序列是 有奇偶校验 无奇偶校验 错误检测方法 标准的Modbus串行网络采用两种错误检测方法 奇偶校验对每个字符都可用 例如RTU字符帧中包含以下8个数据位 1 1 0 0 0 1 0 1 整个 1 的数目是4个 如果便用了偶校验 帧的奇偶校 验位将是0 便得整个 1 的个数仍是4个 如果便用了 奇校验 帧的奇偶校验位将是1 便得整个 1 的个数是 5个 CRC域检测了整个消息的内容 CRC域是两个字节 包含一16位的二进制值 它由传输 设备计算后加入到消息中 接收设备重新计算收到消息的 CRC 并与接收到的CRC域中的值

14、比较 如果两值不同 则有误 计算CRC码的步骤 1 预置16位寄存器为十六进制FFFF 即全为1 称此 寄存器为CRC寄存器 2 把第一个8位数据与16位CRC寄存器的低位相异或 把结果放于CRC寄存器 3 把寄存器的内容右移一位 朝低位 用0填补最高位 检查最低位 4 如果最低位为0 重复第3步 再次移位 如果最低位为 1 CRC寄存器与多项式A001 1010 0000 0000 0001 进行异或 5 重复步骤3和4 直到右移8次 这样整个8位数据全部 进行了处理 6 重复步骤2到步骤5 进行下一个8位数据的处理 7 最后得到的CRC寄存器即为CRC码 ACS550内置标准Modbus的

15、连接 RS485标准 传输速率 1 2 76 8kbit s ACS550 Modbus 参数设置 u98 02 STD Modbus 激活标准Modbus uGroup 53 Modbus 通讯设置 53 01 EFB PROTOCOL ID EFB 辨识 现场总线协议和程序版本 xx 协议 ID YY 程序版本 53 02 EFB STATION ID EFB 站号 53 03 EFB BAUD RATE EFB 波特率 53 04 EFB PARITY EFB 校验 总线中所有站点的奇偶校验一致 0 8N1 8 位 无校验 一个停止位 1 8N2 8 位 无校验 两个停止位 2 8E1

16、8 位 偶校验 一个停止位 3 8O1 8 位 奇校验 一个停止位 53 05 EFB CTRL PROFILE EFB 控制通讯配置文件 0 ABB DRV LIM 控制字 状态字的操作符合 ABB 传动协议 与 ACS400 相同 1 DCU PROFILE 控制字 状态字的操作符合 32 位 DCU 协议 2 ABB DRV FULL 控制字 状态字的操作符合 ABB 传动协议 与 ACS600 800 相同 53 06 EFB OK MESSAGES EFB 好信息 53 07 EFB CRC ERRORS EFB CRC 错误 53 08 EFB UART ERRORS EFB UART 错误 53 09 EFB STATUS EFB 状态 0 IDLE 空闲 EFB 协议已配置 但没有接收到任何信息 1 EXEC INIT 初始化 EFB 正在初始化 2 TIME OUT 超时 网络主机和 EFB 通讯中出现超时故障 3 CONFIG ERROR 配置出错 EFB 配置出错 4 OFF LINE 离线 EFB 离线 5 ON LINE 在线 EFB 在线 6 RESET 复

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 电子/通信 > 电子电气自动化

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号