预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共25页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

上海电力学院 《嵌入式计算机系统》 Modbus及Modbus/TCP协议讲解 李辉 电力与自动化工程学院 E-mail:elmerlee@163.com Modbus及Modbus/TCP协议讲解 ¾概述 ¾Modbus应用协议规范 ¾Modbus协议在串行链路上的实现 ¾Modbus协议在TCP/IP上的实现 Modbus及Modbus/TCP协议讲解上海电力学院 概述 ¾1979年Modicon公司(现Schneider的一部分)提 出的Modbus ¾Modbus最初作为工业串行链路的事实标准 ¾1997年Schneider电气在TCP/IP上实现Modbus协议 ¾2004年Modbus作为我国国家标准 Modbus及Modbus/TCP协议讲解上海电力学院 Modbus技术规范组成 ‹Modbus应用协议规范 ‹Modbus协议在串行链路上的实现指南 ‹Modbus协议在TCP/IP上的实现指南 Modbus及Modbus/TCP协议讲解上海电力学院 Modbus技术规范的关系 Modbus Modbus协议 应用协议 在TCP/IP上 规范 Modbus应用层的实现指南 在TCP/IP上的Modbus映射 TCP/IP IETFRFC793 Modbus协议 在串行链路IP 上的实现指IETFRFC791 南 EthernetII/802.3 串行链路主站/从站IEEE802.2 TIA/EIA-232-FTIA/EIA-485-A以太网物理层 Modbus及Modbus/TCP协议讲解上海电力学院 Modbus应用协议规范 Modbus及Modbus/TCP协议讲解上海电力学院 Modbus通信栈 Modbus应用层 基于TCP的Modbus TCP IP 其它MODBUS+/HDLC主站/从站EthernetII/802.3 EIA/TIA-232或以太网 其它物理层 EIA/TIA-485物理层 Modbus及Modbus/TCP协议讲解上海电力学院 Modbus应用协议 ‹Modbus是一种简单客户机/服务器(主站/从站)应用协议 ‹客户机(主站)能够向服务器发送请求 ‹服务器(从站)分析请求,处理请求,向客户机发送应答 Modbus请求(例:地址100开始读20个字) 网络 客户机(主站)服务器(从站) Modbus响应(例:地址100至119的20个字的值) Modbus及Modbus/TCP协议讲解上海电力学院 通用Modbus帧结构--协议数据单元(PDU) Modbus是一个可选择部分使用的协议 ‹服务器可执行部分Modbus协议 Modbus由公共功能码和用户定义的功能码组成 Modbus应用协议使用功能码列表读或写数据,或者在远程服 务器上进行远程处理 ‹读/写寄存器列表,读/写比特列表 ‹诊断,标识 ADU 附加地址功能码数据差错校验 PDU Modbus及Modbus/TCP协议讲解上海电力学院 Modbus事务处理(无差错) ‹当服务器对客户机响应时,它使用功能码域来指示 正常(无差错) ‹响应或者出现某种差错(称为异常响应) ‹对于一个正常响应来说,服务器仅复制原始功能码 客户机(主站)服务器(从站) 启动请求 功能码数据请求 执行操作 启动响应 功能码数据响应 接收响应 Modbus及Modbus/TCP协议讲解上海电力学院 Modbus事务处理(异常响应) ‹对于异常响应,服务器将原始功能码的最高有效位 设置逻辑1后返回 ‹异常码指示差错类型 客户机(主站)服务器(从站) 启动请求 功能码数据请求 在操作中检测差错 启动差错 异常功能码异常码 接收响应 Modbus及Modbus/TCP协议讲解上海电力学院 ModbusPDU长度 ‹Modbus最初在串行链路上的实现(最大RS485ADU =256字节),限制了ModbusPD的长度。 ‹因此,对串行链路通信来说, ModbusPDU=256-服务器地址(1字节)- CRC(2字节)=253字节 从而: ‹RS232/RS485ADU=253字节+服务器地址(1字 节)+CRC(2字节)=256字节 ‹TCPModbusADU=253字节+MBAP(7字节)= 260字节 Modbus及Modbus/TCP协议讲解上海电力学院 Modbus数据模型 ‹Modbus的数据模型是以一组具有不同特征的表为 基础建立的。 ‹四个基本表为: 基本表对象类型访问类型注释 离散量输入位只读I/O系统可提供这种类型数据 线圈位读写通过应用程序可改变这种类型数据 输入寄存器16位只读I/O系统可