教学课件第5部分Modbus通信协议简介.ppt
《教学课件第5部分Modbus通信协议简介.ppt》由会员分享,可在线阅读,更多相关《教学课件第5部分Modbus通信协议简介.ppt(27页珍藏版)》请在三一办公上搜索。
1、,第5部分 Modbus通信协议简介 5.1 Modbus协议概述 5.2 Modbus协议规范 5.3 Modbus协议在串行链路的主站/从站通信原理 5.4 Modbus协议在串行链路寻址原则 5.5 Modbus帧结构 5.6 串行链路上Modbus帧的两种传输模式 5.7 Modbus协议数据模型 5.8 Modbus通信应用实例,5.1 Modbus协议概述,1.Modbus协议的发展历史(1)Modicon公司提出的通信规约。(2)Modicon公司被施耐德电气公司收购。(3)施耐德将Modbus协议的所有权移交给IDA,成立了Modbus-IDA组织。(4)Modbus-RTPS
2、成为实时以太网标准(IEC61784-2)。(5)Modbus协议已经成为国家标准(GB/T19582-2008)。2.Modbus协议的特点(1)标准、开放用户可以免费、放心地使用Modbus协议。(2)灵活支持多种物理层标准,如RS-232、RS-485、以太网等。(3)简单Modbus的帧格式简单、紧凑,通俗易懂。(4)使用广泛它是一种在工业领域被广为应用的真正开放、标准的网络通讯协议,已经成为一种电子控制器的通用语言,通过此协议控制器之间可以通讯,已成为一种工业标准。不同厂商生产的控制设备通过Modbus协议可以连成通讯网络,在PLC、变频器、电器设备及自动化仪表等领域都广泛应用Mod
3、bus协议。,5.2 Modbus协议规范,1.Modbus技术规范的关系Modbus是OSI模型第7层上的应用层报文传输协议,它在连接至不同类型总线或网络的设备之间提供客户机/服务器通信。Modbus是一个请求/应答协议,并且提供功能码规定的服务。Modbus功能码是Modbus请求/应答PDU的元素。,5.2 Modbus协议规范,2.Modbus通信栈Modbus是一种简单客户机/服务器应用协议:客户机能够向服务器发送请求,服务器分析请求,处理请求,向客户机发送应答。,5.3 Modbus协议在串行链路的主站/从站通信原理,Modbus串行链路协议是一个主/从协议。在同一时刻,只有一个主
4、节点连接于总线,一个或多个子节点(最大编号为247)连接于同一个串行总线。Modbus通信总是由主节点发起,子节点在没有收到来自主节点的请求时,从不会发送数据。子节点之间从不会互相通信,主节点在同一时刻只会发起一个 Modbus 事务处理。主站用两种模式向从站发出Modbus请求,分别为单播模式和广播模式。单播模式工作方式:由主站寻址单个从站,从站接收并处理完请求之后,向主站返回一个报文(一个应答)。在这种模式下,一个Modbus 事务处理包含2 个报文,一个是主站的请求,另一个是从站的应答。每个从站必须有唯一的地址(1247),这样才能区别于其它站而被独立地寻址。广播模式工作方式:主站可以向
5、所有的从站发送请求,对于主站广播的请求没有应答的返回,广播请求必须是写命令,所有设备必须接收写功能的广播,地址0被保留用来识别广播通信。,单播模式,广播模式,1.客户机向服务器发请求,服务器分析并处理客户机的请求后返回响应。2.1个主站(客户机),最多247个从站(服务器)。3.可以采用单播模式和广播模式(0地址)。4.产生错误,服务器返回通信异常码。,5.3 Modbus协议在串行链路的主站/从站通信原理,5.4 Modbus协议在串行链路寻址原则,Modbus寻址空间由256个不同地址组成。地址0为广播地址,所有从站必须识别广播地址。Modbus主节点没有地址,只有子节点必须有一个地址。该
6、地址必须在 Modbus串行总线上唯一的。1.请求-响应周期(1)请求主设备查询消息中的功能代码告之被选中的从设备要执行何种功能,数据段包含了从设备要执行功能的任何附加信息。例如:功能代码03是要求从设备读保持寄存器并返回它们的内容。数据段必须包含要告之从设备的信息:从何寄存器开始读及要读的寄存器数量。错误检测域为从设备提供了一种验证消息内容是否正确的方法。(2)响应如果从设备产生一个正常的回应,在回应消息中的功能代码是在查询消息中的功能代码的回应,数据段包括了从设备收集的数据(例如寄存器值或状态)。如果有错误发生,功能代码将被修改以用于指出回应消息是错误的,同时数据段包含了描述此错误信息的代
7、码。错误检测域允许主设备确认消息内容是否可用。,5.5 Modbus帧结构,串行链路上的Modbus帧结构见下图:(1)地址域在 Modbus串行链路,地址域只含有子节点地址,合法的子节点地址为十进制 0 247。每个子设备被赋予1 247范围中的地址。主节点通过将子节点的地址放到报文的地址域对子节点寻址。当子节点返回应答时,它将自己的地址放到应答报文的地址域以让主节点知道哪个子节点在回答。(2)功能码Modbus由公共功能码和用户定义的功能码组成,功能码指明服务器要执行的动作。功能码后面可跟有表示含有请求和响应参数的数据域。(3)错误检验域错误检验域是对报文内容执行 冗余校验 的计算结果。根
8、据不同的传输模式(RTU or ASCII)使用两种不同的计算方法。,1.Modbus事务处理(无差错)当服务器对客户机响应时,它使用功能码域来指示正常(无差错)响应或者出现某种差错(称为异常响应)。对于一个正常响应来说,服务器仅复制原始功能码。,5.5 Modbus帧结构,2.Modbus事务处理(异常响应)对于异常响应,服务器将原始功能码的最高有效位设置逻辑1后返回,异常码指示差错类型。3.Modbus PDU(数据单元)长度Modbus最初在串行链路上的实现(最大RS485 ADU=256字节),限制了Modbus PDU的长度。因此,对串行链路通信来说,Modbus PDU=256-服
9、务器地址(1字节)-CRC(2字节)253字节。因此:RS232/RS485 ADU=253字节+服务器地址(1字节)+CRC(2字节)=256字节。TCP/IP Modbus ADU=253字节+MBAP(7字节)=260字节。,5.5 Modbus帧结构,4.Modbus PDU(数据单元)结构(1)Modbus请求PDUmb_req_pdu=function_code,request_data,function_code-1字节 Modbus功能码,request_data-n字节。(2)Modbus响应PDUmb_rsp_pdu=function_code,response_ data
10、,function_code-1字节 Modbus功能码,response_data-n字节。(3)Modbus异常响应PDUmb_excep_rsp_pdu=function_code,exception_code,function_code-1字节 Modbus功能码+0 x80 exception_code 1字节。,5.5 Modbus帧结构,5.6 串行链路上Modbus帧的两种传输模式,Modbus帧的两种串行传输模式有RTU模式 和ASCII模式。它定义了报文域的位内容在线路上串行的传送。它确定了信息如何打包为报文和解码Modbus串行链路上所有设备的传输模式和串行通信接口的参数
11、必须相同。尽管在特定的领域ASCII模式是要求的,但达到Modbus 备之间的互操作性只有每个设备都有相同的模式。所有设备必须必须实现 RTU 模式,ASCII传输模式是选项。,5.6 串行链路上Modbus帧的两种传输模式,1.RTU传输模式当设备使用 RTU模式在Modbus串行链路通信,报文中每个8位字节含有两个4位十六进制字符。这种模式的主要优点是较高的数据密度,在相同的波特率下比 ASCII 模式有更高的吞吐率。每个报文必须以连续的字符流传送。(1)RTU模式每个字节(11位)的格式编码系统:8位二进制;报文中每个8位字节含有两个4位十六进制字符(09,AF)。Bits per By
12、te:1个起始位;8数据位,首先发送最低有效位;1位作为奇偶校验;1位停止位。注意:一般使用偶校验,其它模式(奇校验,无校验)也可以使用。默认校验模式必须为偶校验。如果无奇偶校验,将传送一个附加的停止位以填充字符帧。见下图:,有奇偶校验的RTU模式位序列,无奇偶校验的RTU模式位序列,5.6 串行链路上Modbus帧的两种传输模式,(2)Modbus报文RTU帧结构由发送设备将Modbus报文构造为带有已知起始和结束标记的帧。这使设备可以在报文的开始接收新帧,并且知道何时报文结束。不完整的报文必须能够被检测到而错误标志必须作为结果被设置。在RTU 模式,报文帧由时长至少为3.5个字符时间的空闲
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 教学 课件 部分 Modbus 通信协议 简介
链接地址:https://www.31ppt.com/p-6287932.html