ImageVerifierCode 换一换
格式:PPT , 页数:40 ,大小:775.50KB ,
资源ID:1104697      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/1104697.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(第5章Modbus通信协议.ppt)为本站会员(b****1)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

第5章Modbus通信协议.ppt

1、第5章 Modbus通信协议,5.1 Modbus通信协议概述,Modbus是MODICON公司1979年为其生产的PLC设计的一种通信协议。从功能上看,Modbus是一种现场总线,现已成为通用工业标准。很多型号的PLC、仪表、变频器、HMI、组态软件均支持Modbus。1989年Modicon公司又开发推出了Modbus Plus。1998年施耐德公司推出基于TCP/IP以太网的Modbus/TCP。,5.1.1 Modbus通信协议特点 Modbus为应用层报文传输协议,仅定义了通信的消息结构。Modbus信息帧包括从机地址、功能码、数据区和数据校验码。Modbus定义了控制器可以识别和使

2、用的消息结构,描述了控制器访问另一设备的过程、被访问者如何应答、侦测和提交差错信息。把网络上的通信参与者规定为“主站”(Master)和“从站”(Slave),同一网络上只能有一个主站,其余均为从站。只有主站能主动访问,从站只能被动应答。,Modbus是主从访问的单主控制网络。每个从站都有自己的地址编号,地址1个字节,范围0255。地址00H为广播地址。通过协议中的功能代码传输总线命令,实现主站和从站之间的信息交换。主要特点:物理接口使用RS-232C、RS-422、RS-485 组成主从访问的单主控制网络;主站轮询从站时,从站回应相应信息。主站也可对所有从站进行广播通信。通过通信报文结构完成

3、对从节点操作。,5.1.2 Modbus的传输网络 1.在标准Modbus网络上传输 Modicon 协议最早采用的标准串行接口是RS-232C。现在可采用RS-422、RS-485、光纤等。主机可对某从机查询,该从机返回信息作为响应。若出现差错或从机无法执行要求动作时,从机会向主机发送差错信息。主机也可对所有从机广播查询,从机对于主机的广播查询无响应返回。,在标准Modbus网络上,Modbus协议有两种模式:ASCIIRTU(Remote Terminal Unit)一个Modbus通信网络上只能有一种模式,不允许两种模式混用。,2.在其它类型网络上传输 有些Modbus控制器可使用内置接

4、口或网络适配器,在Modbus Plus或者以太网上通信。在这些网络上,控制器间采用对等(p2p)技术,任一控制器可发起向其它的数据传送。在不同传输过程中,某一控制器既可作从机,也可作主机。形成客户机/服务器模式。,5.1.3 Modbus的查询回应周期 查询(Query):主设备发起的数据传输回应(Response):从设备对主设备查询作出的回复,主设备可单独和某从设备通信,也能以广播方式和所有从设备通信。单独查询某从设备,则相应从设备执行查询请求的功能,并返回一消息作为回应;以广播方式查询,则所有从设备执行查询请求的功能,但不用作任何回应。如果在查询消息接收过程中产生差错,或从设备不能完成

5、请求的功能,从设备回应差错消息。主设备接收到回复,或在一定时限内未收到回复,将根据设定程序进行相应举措。,5.1.4 Modbus的两种传输模式 ASCII模式和RTU模式,任何一种都能在标准Modbus网络通信。用户根据需要选择想要的传输模式。同一Modbus网络上的所有设备都必须选择相同传输模式和串口参数(波特率、校验方式等)。,ASCII模式消息中每个8位字节都要用两个ASCII字符表示并以异步方式传输。优点:字符发送时间间隔可达1秒而不产生差错。编码系统十六进制,ASCII字符09,AF 消息中每个ASCII字符包含一个十六进制字符,每个字节的位1个起始位7个数据位,最小的有效位先发送

6、1个奇偶校验位,无校验则无该位1个停止位(有校验时),或2个停止位(无校验时)差错检测域 LRC(Longitudinal Redundancy Check,纵向冗余校验),RTU模式消息中每个8位字节都是原始的十六进制字符(包含2个),无需编码,以异步方式传输。优点:在同样波特率下,可比ASCII模式传送更多的数据。编码系统8位二进制,十六进制数09,AF 消息中每个8位由两个十六进制字符组成,每个字节的位1个起始位8个数据位,最小的有效位先发送1个奇偶校验位,无校验则无该位1个停止位(有校验时),或2个停止位(无校验时)差错检测域 CRC(Cyclical Redundancy Check

7、,循环冗余校验),5.2 Modbus消息帧格式,5.2.1消息帧包含的信息 每个消息帧包含4类信息,按发送的先后顺序分别为(字节数指未编码原始信息字节数):地址(1字节)功能码(1字节)数据段(n字节,n0)差错检测码(ASCII:1字节;RTU:2字节)消息帧中包含以上有关信息的区域分别称为地址域、功能域、数据域、差错检测域。,1.地址域地址信息一个字节。可能的从设备地址是1247。主设备通过将要联络的从设备的地址放入消息中的地址域来选通从设备。当从设备发送回应消息时,它把自己的地址放入回应的地址域中,以便主设备知道是哪一个设备作出的回应。ASCII模式时,地址域包含2字节;RTU模式时,

8、地址域1字节。地址0用作广播地址。,2.功能域 功能代码是一个字节。可能的代码范围是1255。其中有些代码适用于所有控制器,有些应用于某种控制器,还有些保留以备后用。,功能码中较常使用的是1、2、3、4、5、6号功能码,可实现对PLC数字量和模拟量的读写操作。,ASCII模式时,功能域包含2字节;RTU模式时,功能域1字节。当消息从主设备发往从设备时,功能代码域将告之从设备需要执行哪些行为。当从设备回应时,使用功能代码域指示是正常回应(执行无误)还是异常回应(产生错误)。对正常回应,从设备仅回应相应的功能代码。对异常回应,从设备返回与正常代码相同的代码,但要在其最高位置1。例如:一从主设备发往

9、从设备的消息要求读一组保持寄存器,使用功能码03H。如果正常执行,从设备回应功能码03H;如果异议,从设备回应功能码83H。,异常回应时,除了修改功能码,从设备还将一个描述具体差错的代码放到回应消息的数据域中,这能告诉主设备具体发生了什么差错。主设备应用程序得到异常的回应后,典型的处理过程是重发消息,或者诊断发给从设备的消息并报告给操作员。,3.数据域数据域由字节组成,每个字节的取值范围是00FFH。根据传输模式,数据域可以由一对对ASCII字符或由一个个RTU字符组成。主设备请求消息帧的数据域为从设备执行请求功能时要使用附加信息。如果执行过程中无差错,从设备返回的消息帧数据域包含请求的数据;

10、如果有差错,此域包含异常代码。在某种消息中数据域可以没有(0长度)。如主设备请求不需附加信息时。,4.差错检测域 ASCII模式时,差错检测值是采用LRC方法对消息内容计算后得出的LRC校验码,1字节长度,故ASCII模式的差错检测域包含2个ASCII字符。RTU模式时,差错检测值使采用CRC方法对消息内容计算得出的CRC校验码,2字节长度,所以RTU模式的差错检测域是2字节长度。,5.2.2 差错检测方法 ASCII传输模式采用LRC帧检测RTU模式采用CRC帧检测 帧检测应用于整个消息,在消息发送前由发送方产生的,接受方在接收过程中检测。1.奇偶校验 在每一组字符帧的数据后添加奇偶校验位,

11、使码元中总的1的个数为奇数或偶数。ASCII模式是7个数据位,RTU是8个数据位。,例如,RTU字符帧数据为 1 1 0 0 0 1 0 1奇偶校验只能检测出传输过程中字符帧1的个位数出错。如果不指定奇偶校验,传输不进行校验,要传输字符帧中的奇偶校验位用一附加停止位填充替代。,奇校验:使数据位+校验位总的1的个数为奇数。,1,偶校验:使数据位+校验位总的1的个数为偶数。,0,2.LRC校验 ASCII模式时,消息帧包括了一基于LRC校验方法的差错检测域。LRC域检测根据地址域、功能域和数据域内容计算得到(不包括开始的冒号符及后面的回车换行符)。LRC域包含了一个字节信息(LRC值)。LRC值由

12、发送方计算并以两个ASCII码字符形式放到消息帧中发送;接收方在接收消息后同样计算LRC,并将结果和接收消息中LRC域中的LRC值比较,两值不等,说明有差错。,LRC基本算法:将消息中的地址信息(1字节)、功能码信息(1字节)、数据信息(n字节)连续累加,丢弃超出8位的部分,只保留一个字节。实际上,Modbus网络的发送方在对信息码元累加后,还要取其补码。将补码转换成两个ASCII字符,填入ASCII模式的消息帧格式,高位在前,低位在后。Modbus网络接收方,在接收到消息帧中所有字符后,将地址域、功能域、数据域、差错校验域的ASCII代码信息还原成原始信息码后,求所有数据单元字节和,丢弃超出

13、8位的部分。如果累加结果是0,认为该消息帧的传输正常无差错,否则传输失败。,地址域、功能域、数据域消息未经ASCII编码的原始值(16进制)02 03 00 2A 00 08 3.CRC校验,02H+03H+00H+FAH+00H+08H=107H,07H,F9H,F9,5.2.3 消息帧格式 无论什么模式,传输设备都要将Modbus消息转为有起点和终点的帧。这能使接收方获知每条消息何时开始,何时结束。1.ASCII模式的帧格式 消息以冒号:字符(ASCII码3AH)作为消息帧的起始。以回车CR(ASCII码0DH)、换行LF(ASCII码0AH)作为消息帧的结束。字符间发送时间间隔不能超过1

14、秒,否则接收方认为传输错误。,2.RTU模式的帧格式 消息以至少3.5个字符时间的停顿间隔为开始和结束。1个字符时间是RTU模式时传输一个字符所需时间,与传输格式和波特率有关。RTU模式用时间间隔作为消息帧的起始和结束标志,传输信息是未经过编码的原始码元。整个消息帧必须作为一个连续信息流传输。如果一帧内部有超过1.5个字符时间的停顿,接收方将丢弃接收到的不完整消息,并假定下一字节是一个新消息的地址域。如果一个新消息是在小于1.5个字符时间内接着前个消息开始,接收方将认为它是前一消息的延续。,3.Modbus网络传输举例 设在Modbus网络上,主机向地址为06H的从机发出查询,请求读取从地址0

15、06BH开始的3个16位寄存器数据。分析收发过程,并写出两种模式的帧。,1.主机查询过程 查找功能码表,完成该行为的功能码是03H 寄存器的地址和数量都属于主机发给从机的包含在数据域中的附加信息,在Modbus中都用双字节表示。寄存器地址006BH,寄存器数量0003H。主机要向从机发送6个字节的原始数据:06H 03H 00H 6BH 00H 03H。发送前主机还要计算LRC校验码(ASCII模式),或CRC校验码(RTU模式),放入查询消息帧的校验域。,计算LRC校验码06H+03H+00H+6BH+00H+03H=77HNOT(77H)+1=89H对应的ASCII码是:38H(8),39

16、H(9)。,2.从机回应过程 从机在检测到消息帧的起始(ASCII模式:,RTU模式3.5个字符时间),并确认收到的查询地址是本机地址后,接收全部消息帧的信息。在检测到消息帧的结束(ASCII模式 CR,LF;RTU模式至少1.5个字符时间),发收过程结束。从机在接受过程中,对接收的每个字符进行奇偶校验(如果设定),如有差错,接收过程结束,从机开始等待接收新的消息帧。ASCII模式时,消息帧全部正常接收完,从机将ASCII码信息转换为原数据信息(包括地址、功能、数据和LRC校验)。,从机计算校验码,与接收到校验进行比较,判断接收过程是否有差错。字符奇偶校验、帧校验均无差错时,从机才有可能对主机正常回应,否则是异常回应,或无回应。正常响应,从机的回应消息帧中功能代码还是接收到的代码;否则该代码的最高位会置1,表示异常回应。设备地址仍为从机地址值。,“返回字节数”表明了附在数据区中的字节数的返回数量(06H)。返回的数据是双字节,分为高低字节。02H 2BH 00H 00H 00H 63H计算LRC校验码06H+03H+06H+02H+2BH+00H+00H+00H+63H=9FHNOT(

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1