版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
工业互联网与智能产线控制MODBUSTCP通信协议解析主讲教师:冯广磊#0D7F47#06381F#C2F1C8#FFC30C#FFF2CB如何自动开启空调并调整室内灯光?ModbusTCP(ModbusTCP/IP)是一种工业通信协议,它是Modbus协议的一种实现方式,专为在以太网和TCP/IP网络上运行而设计。7.应用层MODBUS应用层MODBUS+/HDL物理层主站、从站RS232、RS422或RS485EthernetⅡ/802.3以太网物理层基于TCP的ModbusTCPIP4.传输层3.网络层2.数据链路层1.物理层Modbus数据模型数据区对象类型访问类型描述线圈位读写这种类型的数据可以被应用程序程序修改,表示开关状态的输出信号。离散量输入位只读这种类型的数据通常由输入/输出(I/0)系统提供,表示开关状态的输入信号输入寄存器16位字只读这种类型的数据通常由I/0系统提供,表示模拟量输入的数据或其他只读信息。保持寄存器16位字读写这种类型的数据可以被应用程序程序修改,用于存储数据或配置参数。Modbus协议的数据模型是数据在协议传输过程中的表达形式,它也是协议中约定的对从站设备的可访问数据的一种抽象。Modbus中的数据模型主要有以下四种。Modbus地址模型为了简化数据模型与设备存储区的对应关系,引入了一种地址模型。该地址模型通过编号的方式对不同类型数据进行区分,各数据的地址编号见下表。数据区Modbus地址编号编号范围(1-65536)编号范围(1-9999)PLC地址寄存器地址PLC地址寄存器地址线圈0000001-0655360x0000-0xFFFF00001-099990x0000-0x270E离散量输入1100001-1655360x0000-0xFFFF10001-199990x0000-0x270E输入寄存器3300001-3655360x0000-0xFFFF30001-399990x0000-0x270E保持寄存器4400001-4655360x0000-0xFFFF40001-499990x0000-0x270EModbus功能码Modbus中常用的功能码有8个,可以分为位操作和字操作两类,如表所示。功能码描述PLC地址位/字操作操作数量0x01读线圈寄存器00001-09999位操作单个或多个0x02读离散输入寄存器10001-19999位操作单个或多个0x03读保持寄存器40001-49999字操作单个或多个0x04读输入寄存器30001-39999字操作单个或多个0x05写单个线圈寄存器00001-09999位操作单个0x06写单个保持寄存器
40001-49999字操作单个0x0F写多个线圈寄存器00001-09999位操作多个0x10写多个保持寄存器40001-49999字操作多个Modbus
TCP
数据帧ModbusTCP的数据帧可分为两部分:MBAP+PDU,如下图所示。MODBUSTCP/IPADUMBAP报文头功能码数据PDU报文头MBAPMBAP为报文头,依赖于可靠的网络层,长度为7字节,组成如下:内容长度描述事务处理标识2字节可以理解为报文的序列号,每次通信过程中主站和从站的报文帧的事务标识符需保持一致。一般每次通信之后就要加1以区别不同的通信数据报。协议标识2字节固定值为0x0000,表示ModbusTCP协议。长度2字节表示接下来的数据长度,单位为字节。单元标识符1字节表示目标从站的地址。帧结构PDUPDU由功能码+数据组成。功能码为1字节,数据长度不定,根据功能码的不同而有所区别,包含要操作的数据地址和数据值等。功能码参照Modbus功能码。连接建立客户端(Master)使用TCP协议与服务器(Slave)建立连接,通常使用IANA分配的ModbusTCP端口号502。Modbus
TCP通信过程请求发送客户机向服务器发送请求消息,请求读取或写入数据。响应接收服务器接收到客户机的请求后,根据请求的功能码执行相应的操作,并生成响应消息。异常处理如果服务器无法满足客户机的请求,或者执行请求时发生错误,服务器将生成一个异常响应消息。连接关闭通信任务完成后,客户端可以关闭TCP连接。Modbus
TCP协议通信示例0x01功能码:读输出线圈事务处理标识协议标识符长度单元标识符功能码起始地址数据长度发送报文2字节2字节2字节1字节1字节
示例000700000006030100130010事务处理标识协议标识符长度单元标识符功能码字节计数读取值返回报文2字节2字节2字节1字节1字节
示例0007000000050301022F27示例含义发送:在从站3(0x03)中,读取起始地址为0x0013的线圈数据,读取线圈的数量为16(0x0010)个。返回:数据长度为2(0x02)个字节,数据为0x2F27,对应的二进制为0010111100100111,所在位上为1表示线圈为ON,为0表示线圈为OFF。Modbus
TCP协议通信示例0x02功能码:读离散量输入事务处理标识协议标识符长度单元标识符功能码起始地址数据长度发送报文2字节2字节2字节1字节1字节
示例000800000006030200130010事务处理标识协议标识符长度单元标识符功能码字节计数读取值返回报文2字节2字节2字节1字节1字节
示例0008000000050302022F27示例含义发送:在从站3(0x02)中,读取起始地址为0x0013的离散量输入数据,读取输入状态的数量为16(0x0010)个。返回:数据长度为2(0x02)个字节,数据为0x2F27,对应的二进制为0010111100100111,所在位上为1表示离散量输入为ON,为0表示离散量输入为OFF。Modbus
TCP协议通信示例0x03功能码:读保持寄存器事务处理标识协议标识符长度单元标识符功能码起始地址数据长度发送报文2字节2字节2字节1字节1字节
示例000900000006030300130002事务处理标识协议标识符长度单元标识符功能码字节计数读取值返回报文2字节2字节2字节1字节1字节
示例0009000000070303043D152F27示例含义发送:在从站3(0x03)中,读取开始地址为0x0013的保持寄存器数据,读取保持寄存器的数量为2个。返回:数据长度为4(0x04)个字节,数据为3D152F27,第一个保持寄存器的值为0x3D15,第二个保持寄存器的值为0x2F27。Modbus
TCP协议通信示例0x04功能码:读输入寄存器事务处理标识协议标识符长度单元标识符功能码起始地址数据长度发送报文2字节2字节2字节1字节1字节
示例001000000006020400130002事务处理标识协议标识符长度单元标识符功能码字节计数读取值返回报文2字节2字节2字节1字节1字节
示例0010000000070204043D152F27示例含义发送:在从站2(0x02)中,读取起始地址为0x0013的输入寄存器数据,读取输入寄存器的数量为2个。返回:数据长度为4(0x04)个字节,数据为3D152F27,第一个输入寄存器的值为0x3D15,第二个输入寄存器的值为0x2F27。Modbus
TCP协议通信示例0x05功能码:写单个线圈事务处理标识协议标识符长度单元标识符功能码起始地址写入值发送报文2字节2字节2字节1字节1字节
示例0010000000060505000BFF00示例含义发送:主设备要求从站设备(地址5)从线圈地址0x000B开始,写入单个线圈数据,写入值为1。其中:通断标识FF00,表示线圈置ON;0000表示线圈置OFF。返回报文:原文返回。Modbus
TCP协议通信示例0x06功能码:写单个寄存器事务处理标识协议标识符长度单元标识符功能码起始地址写入值发送报文2字节2字节2字节1字节1字节
示例0010000000060506000B00EC示例含义发送:主设备要求从站设备(地址5)从寄存器地址0x000B开始,写入单个寄存器数据,写入值为0x00EC。返回报文:原文返回。Modbus
TCP协议通信示例0x0F功能码:写多个线圈事务处理标识协议标识符长度单元标识符功能码起始地址线圈数量返回报文2字节2字节2字节1字节1字节2字节2字节示例001100000006030F000B0010示例含义发送:主设备要求从站设备(地址3)从线圈地址0x001B开始,连续写入16(0x0010)个,写入的值为2CA0(二进制为0010110010100000,1代表所在位线圈置1,0代表所在线圈置0)。返回:起始地址为0x000B,写入线圈数量为16个。事务处理标识协议标识符长度单元标识符功能码起始地址线圈数量字节计数写入值发送报文2字节2字节2字节1字节1字节2字节2字节1字节2字节示例001100000009030F000B0010022CA0Modbus
TCP协议通信示例0x10功能码:写多个寄存器事务处理标识协议标识符长度单元标识符功能码起始地址数量字节计数写入值发送报文2字节2字节2字节1字节1字节2字节2字节1字节2字节示例00120000000B0710001B0002041A092CA0事务处理标识协议标识符长度单元标识符功能码起始地址数量返回报文2字节2字节2字节1字节1字节2字节2字节
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年黑龙江大庆市中考语文试题解读及备考指导
- 黑龙江省绥化市海伦市2025-2026学年七年级上学期1月期末考试语文试卷(无答案)
- 广东省湛江雷州市2025-2026学年上学期期末七年级语文试卷(无答案)
- 2025秋人教版二年级数学上册期末复习专项拔高卷(含答案)
- 五官科题库及答案
- 微机原理试题库及答案
- 三年级下册第八单元写作指导这样想象真有趣人教部编版
- 北京版六年级下册数学第二单元比和比例测试卷附参考答案【预热题】
- 在市民政工作半年总结会议上的工作报告全国民政工作会议
- 防雷系统设计安装技术要点
- 2026年黑龙江林业职业技术学院单招职业技能笔试备考试题含答案解析
- 生物实验室安全管理手册
- 网络安全与舆情培训简报课件
- 供应商现场审核打分表-评分细则
- 预防葡萄膜炎复发护理策略
- 民兵伪装与防护课件
- 2025年初级经济师考试卷附答案
- 车辆保证过户协议书
- 2026年劳动合同示范文本
- 2025年《城市公共汽车和电车客运管理规定》知识考试题库及答案解析
- 数字文旅发展的沉浸式体验创新
评论
0/150
提交评论