没有合适的资源?快使用搜索试试~ 我知道了~
MODBUS协议TCP_IP实现
5星 · 超过95%的资源 需积分: 10 22 下载量 130 浏览量
2011-12-14
16:11:53
上传
评论
收藏 1.13MB PDF 举报
温馨提示
试读
39页
MODBUS协议详解 MODBUS协议在串行链路上的实现 MODBUS协议在RCP/IP上的实现
资源推荐
资源详情
资源评论
GB/T ××××—××××
90
2 缩略语
ADU 应用数据单元
IETF 因特网工程工作组
IP 互连网协议
MAC
介质访问控制
MB MODBUS
MBAP MODBUS 协议
PDU 协议数据单元
PLC 可编程序逻辑控制器
TCP
传输控制协议
BSD 伯克利软件分配
MSL 最大段寿命
GB/T ××××—××××
91
3 背景概要
3.1 协议描述
3.1.1 总体通信结构
MODBUS TCP/IP 的通信系统可以包括不同类型的设备:
l 连接至 TCP/IP 网络的 MODBUS TCP/IP 客户机和服务器设备
l 互连设备,例如:在 TCP/IP 网络和串行链路子网之间互连的网桥、路由器或网关,联
接,该子网允许将 MODBUS 串行链路客户机和服务器终端设备连接起来。
客户机 TCP/IP 网关
MODBUS TCP/IP
服务器 TCP/IP
网关
MODBUS 串行链路
图 1:MODBUS TCP/IP 通信结构
MODBUS 协议定义了一个与基础通信层无关的简单协议数据单元(PDU)。特定总线或网络上
的 MODBUS 协议映射能够在应用数据单元(ADU)上引入一些附加域。
地址域
功能码
数据
差错校验
ADU
PDU
图 2:通用 MODBUS 帧
启动 MODBUS 事务处理的客户机建立 MODBUS 应用数据单元。这个功能码向服务器指示执行
执行哪种操作。
MODBUS
客户机
TCP/IP
MODBUS
客户机
TCP/IP
MODBUS
客户机
串行链路
MODBUS
服务器
TCP/IP
MODBUS
服务器
TCP/IP
MODBUS
服务器串
行链路
MODBUS
服
务器串行链路
GB/T ××××—××××
92
3.1.2 TCP/IP 上的 MODBUS 应用数据单元
这节描述了 MODBUS TCP/IP 网络中进行的 MODBUS 请求或响应的封装。
MODBUS TCP/IP ADU
PDU
图 3:TCP/IP 上的 MODBUS 的请求/响应
在 TCP/IP 上使用一种专用报文头识别 MODBUS 应用数据单元。将这种报文头称为 MBAP 报文
头(MODBUS 协议报文头)。
这 种 报文头提供一些与串行链路上使用的 MODBUS RTU 应用数据单元比较的差别:
l 用 MBAP 报文头中的单个字节单元标识符取代 MODBUS串行链路上通常使用的 MODBUS
从地址域。这个单元标识符用于设备的通信,这些设备使用单个
IP
地址支持多个独立
MODBUS 终端单元,例如:网桥、路由器和网关。
l 用接收者可以验证完成报文的方式设计所有 MODBUS 请求和响应。对于 MODBUS PDU
有固定长度的功能码来说,仅功能码就足够了。对于在请求或响应中携带一个可变数据的
功能码来说,数据域包括字节数。
l
当在
TCP
上携带
MODBUS
时,即使将报文分成多个信息包来传输,办事在
MBAP
报文头
上携带附加长度信息,以便接收者能识别报文边界。显式和隐式长度规则的存在以及
CRC-32 差错校验码的使用(在以太网上)将对请求或响应报文产生极小的未检出干扰。
3.1.3 MBAP 报文头描述
MBAP 报文头包括下列域:
域 长度 描述 客户机 服务器
事务元标识符 2 个字节 MODBUS 请求/响
应事务处理的识别
码
客户机启动 服务器从接收的请求中重
新复制
协议标识符 2 个字节 0=MODBUS 协议 客户机启动 服务器从接收的请求中重
新复制
长度 2 个字节 以下字节的数量 客户机启动(请
求)
服务器(响应)启动
单元标识符 1 个字节 串行链路或其它总
线上连接的远程从
站的识别码
客户机启动 服务器从接收的请求中重
新复制
报文头为 7 个字节长:
事务处理标识符:用于事务处理配对。在 响 应中,
MODBUS
服务器复制请求的事务处理标识符。
协议标识符:用于系统内的多路复用。通过值 0 识别 MODBUS 协议。
长度:长度域是下一个域的字节数,包括单元标识符和数据域。
单元标识符:为了系统内路由,使用这个域。专门用于通过以太网 TCP-IP 网络和 MODBUS 串
行链路之间的网关对 MODBUS 或 MODBUS+串行链路从站的通信。MODBUS 客户机在请求中设置
这个域,在响应中服务器必须利用相同的值返回这个域。
MBAP
报文头
功能码
数据
剩余38页未读,继续阅读
资源评论
- xie..2012-06-01没有例程,不爽,就是篇文档
mai_ailing
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- pta题库答案c语言之排序4统计工龄.zip
- pta题库答案c语言之树结构7堆中的路径.zip
- pta题库答案c语言之树结构3TreeTraversalsAgain.zip
- pta题库答案c语言之树结构2ListLeaves.zip
- pta题库答案c语言之树结构1树的同构.zip
- 基于C++实现民航飞行与地图简易管理系统可执行程序+说明+详细注释.zip
- pta题库答案c语言之复杂度1最大子列和问题.zip
- 三维装箱问题(Three-Dimensional Bin Packing Problem,3D-BPP)是一个经典的组合优化问题
- 以下是一些关于Linux线程同步的基本概念和方法.txt
- 以下是一个简化的示例,它使用pygame库来模拟烟花动画的框架.txt
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功