工业系统中常用通讯协议ppt课件_第1页
工业系统中常用通讯协议ppt课件_第2页
工业系统中常用通讯协议ppt课件_第3页
工业系统中常用通讯协议ppt课件_第4页
工业系统中常用通讯协议ppt课件_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、.,自控系统中常用通讯 MODBUS协议 2009年1月15日,.,EIA Electronic Industries Association 美国电子工业协会 TIATelecommunications Industry Association 电信工业协会 OSIOpen System Interconnection 开放系统互联 MODBUSMODICOM 公司定义的通讯协议 ADUApplication Data Unit 应用数据单元 PDUProtocol Data Unit 协议数据单元 HDLCHigh Data Link Control 高级数据链路控制 IPInternet

2、 Protocol 互联网协议 TCPTransport Control Protocol 传输控制协议 CSMA/CDCarrier Sense Multiple Access/Collision Detect 载波监听多路访问/ 冲突检测 IEEE754浮点数表示标准,名 词,.,网络结构模型 MODBUS协议 串行接口 SI RS485可靠性,.,网络结 构模型 Network Model,.,通讯网络结构模型OSI(一) Open System Interconnect,7、应用层(Application Layer) 应用层确定进程之间通信的性质,以满足用户的需要。不仅要提供应用进程

3、所需要的信息交换和远程操作,而且还要作为应用进程的用户代理,为完成一些为进行信息交换所必需的功能。应用层为操作系统或网络应用程序提供访问网络服务的接口。典型的协议:Telnet FTP HTTP SNMP 6、表示层(Presentation Layer) 主要用于处理两个通信系统中交换信息的表示方式。它包括数据格式交换、数据加密与解密、数据压缩与恢复等功能。 5、会话层(Session Layer) 在两个节点之间建立端连接。此服务包括建立连接是以全双工还是以半双工的方式进行设置,尽管可以在层4中处理双工方式 。本层管理主机之间的会话进程,负责建立、管理、终止进程之间的会话。会话层还利用在数

4、据中插入校验点来实现数据的同步。,.,通讯网络结构模型OSI(二) Open System Interconnect,4、传输层(Transport Layer) 传输层负责将上层数据分段并提供端到端的、可靠的或不可靠的传输。传输层还要处理端到端的差错控制和流量控制问题。包括全双工或半双工、流控制和错误恢复服务;本层的数据称为“数据段”。传输层协议的代表包括:TCP UDP SPX等。 3、网络层(Network Layer) 本层通过寻址来建立两个节点之间的连接,它包括通过互连网络来路由和中继数据;网络层负责对子网间的数据包进行路由选择。本层的数据称为“数据包”。网络层协议的代表包括:IP

5、IPX RIP OSPF等,.,通讯网络结构模型OSI(三) Open System Interconnect,2、数据链路层(DataLink Layer) 在此层将数据分帧,并处理流控制。指定拓扑结构,物理地址寻址、数据的成帧、流量控制、数据的检错、重发等。本层的数据称为“数据帧”。数据链路层协议的代表包括:SDLC、HDLC、PPP、STP、帧中继等。 1、物理层 (Physical Layer) 物理层的主要功能是利用物理传输介质为数据链路层提供物理连接,以便透明的传送比特流。规定了激活、维持、关闭通信端点之间的机械特性、电气特性、功能特性以及过程特性。在这一层,数据的单位称为比特(b

6、it)。物理层定义的典型规范代表包括:EIA/TIA RS-232,EIA/TIA RS-449,V.35,RJ-45;,.,MODBUS 标 准 分 类,MODBUS分为两种: 串行链路上的MODBUS (MODBUS on Serial Line) TCP/IP上的MODBUS (MODBUS on TCP/IP),串行链路上的MODBUS TIA/EIA-232-F TIA/EIA-485-A,TCP/IP 上的 MODBUS RFC793和RFC791,.,MODBUS on Serial与OSI层次对应关系,MODBUS协议的各个层次只采用了OSI层次模型中的三层:物理层,数据链路层

7、和应用层。各层都有各层相应的标准规范。 物理层标准:EIA/TIA-485(或EIA/TIA-232) 数据链路层标准:MODBUS Serial Line Protocol MODBUS串行线协议 应用层标准:MODBUS Application Protocol MODBUS应用协议,.,MODBUS on TCP与OSI层次对应关系,MODBUS协议的各个层次只采用了OSI层次模型中的三层:物理层,数据链路层和应用层。各层都有各层相应的标准规范。 物理层:在多种物理媒体上以多种速率采用 CSMA/CD 访问方式 10Base2,10Base5,10BaseTX,10BaseFX 数据链路

8、层:IEEE 802.3 逻辑链路控制 LLC (Logical Link Control)子层 媒体接入控制 MAC (Medium Access Control)子层。 应用层标准:MODBUS Application Protocol MODBUS应用协议,.,MODBUS典型网络结构,.,MODBUS协 议,.,定义与PDU结构,定义:MODBUS协议是一项应用层报文传输协议,用于在通过不同类型的总线或网络所连接的设备之间的客户机/服务器通讯。 MODBUS协议定义了一个与基础通讯层无关的简单协议数据单元(PDU),PDU由通讯发起方负责创建,发起方在协议定义中称为客户机 通讯接收方负

9、责对PDU的应答,通讯接收方在协议定义中称为服务器 一次的通讯过程称为事务处理,MODBUS on SerialPDU长度为253字节 MODBUS on TCPPDU长度为249字节,.,无错误的事务处理过程事务正常完成,服务器返回客户机所需的数据,错误的事务处理过程事务异常完成,服务器返回错误代码指示错误原因。 设置请求功能码的MSB为1,因此一般情况下MODBUS协议中80H以上功能码保留。,.,功能码 (FUNCTION CODE) 功能码定义某一个PDU的功能 分为公共功能码和用户功能码 公共功能码唯一的被较好定义的MODBUS组织认可的功能码 用户功能码不保证唯一的,各用户不同的。

10、只能定义6572和100110范围内的功能码。,.,常用的功能码01H,02H,03H,04H,05H,06H,16H,23H等,.,常用数据类型 (Data Type) bit比特类型,通常用于表示开关量状态。 WORD字类型,通常表示一个数。 浮点数可以采用IEEE754格式,其长度为32bits。占2个字长。在显示时,注意高低位是否需要交换。,.,MODBUS RTU报文(PDU)格式 (Format of MODBUS RTU PDU),在不同的模式下,PDU的内容是不一样的。 RTU模式每个字节为1个16进制的数(0FFH) ASCII模式每个字节为ASCII码(09,AF),RTU

11、模式下的报文(PDU)内容 请求PDU 正常应答PDU 异常应答PDU,.,异常错误子码1 (Error Sub Code ),.,异常错误子码2 (Error Sub Code 2),.,串行接口 (Serial Interface),.,MODBUS主/从站协议基本原理,MODBUS串行链路协议与OSI模型的对应关系,MODBUS串行链路协议是一个主从协议,主节点发送请求,子节点的响应; 在任何时刻,同一个网络上有且只能有一个主节点存在,有多个子节点(地址1247)。子节点在没有收到主节点的请求时,是沉默的。任何时刻,子节点之间是互相沉默的。,.,MODBUS主/从站协议基本原理,通讯模式

12、,主站与从站之间有两种通讯模式,单播模式主节点指定地址的方式请求数据,子节点根据请求,向主节点返回相应的数据。在这种情况下,MODBUS通讯事务只包含2个报文(主节点请求报文和子节点应答报文)。 子节点在单播模式中的地址必须在网络上是唯一的(1247)。,多播模式主节点对所有子节点进行请求,子节点沉默,仅仅根据请求完成相应的自身功能。在这种情况下,MODBUS通讯事务只包含1个报文(主节点请求报文)。 子节点在多播模式下地址可以不用考虑,但是子节点必须能够相应地址0的请求。0在协议中定义为多播地址。,.,MODBUS地址规则,MODBUS地址范围地址域长度为1字节,因此可能的寻址范围0255,

13、MODBUS协议规定地址范围 广播地址用于向所有子节点进行请求(0) 子节点地址同一网络中唯一表示子节点的地址(1247) 保留地址MODBUS协议保留的地址(248255),协议规定 所有子节点必须识别广播地址0 主节点在网络上没有也不需要地址,.,MODBUS 数 据 帧,MODBUS是应用层协议,只定义协议数据单元PDU。,MODBUS on Serial是数据链路层协议,需要定义目的地址和差错效验等功能,因此定义了应用数据单元ADU。,根据数据链路层协议的不同,ADU的内容是不同的。,.,MODBUS主/从站状态图,主站状态图,“空闲“无等待的请求 “等待应答“请求发出后的状态 “应答

14、检查”检查应答数据 “错误处理“应答错误处理 “处理应答”处理正常的应答数据,.,MODBUS主/从站状态图,从站状态图,“空闲“无等待的请求 “检查请求“请求发出后的状态 “格式化正常应答”形成正常应答数据并发送,分单播模式和多播模式 “格式化错误应答”形成错误应答数据并发送 “非本节点地址”请求地址不是本节点地址,忽略请求,回到空闲状态,.,RTU模式 允许字符:0 x00h0 xFFh 8位二进制位(bit) 1位起始位 1位奇偶校验位 1/1.5位停止位 奇偶校验位可选 LSB-MSB 最大帧长:256字节,数据长度252字节,ASCII模式 允许字符:09,AF 7位数据位 1位起始

15、位 1位奇偶校验位 1位停止位 奇偶校验位可选 LSB-MSB 最大帧长:256字节,数据长度是RTU模式的2倍,两种MODBUS串行模式,.,RTU模式 起始字符:3.5字符 地址域:1 Byte,寻址范围0247 功能码域:1 Byte,0 x00h0 xFFh 数据域:N Bytes,最长252Bytes 效验域:2 Bytes (1 Word),CRC方式 CRC循环冗余效验(Cyclical Redundancy Checking) 结束字符: 3.5字符,ASCII 模式 起始字符:1字符,: (冒号) 地址域:2个字符 功能码域:2个字符,00FF(char) 数据域: 最长25

16、22字符 效验域:2 字符,LRC方式 LRC纵向冗余效验(Longitudinal Redundancy Checking) 结束字符: CR.LF(回车和换行符),2字符,M O D B U S 报 文 帧,.,RTU模式下的数据流,RTU方式没有明显的起止符号,因此必须规定时间的要求 由发送设备将Modbus 报文构造为带有已知起始和结束标记的帧。这使设备可以在报文的开始接收新帧,并且知道何时报文结束。 不完整的报文必须能够被检测到,错误标志必须作为结果被设置。 在 RTU 模式,报文帧由时长至少为3.5 个字符时间的空闲间隔区分。这个时间区间通常被称作t3.5。,.,MODBUS差错控

17、制,RTU模式 循环冗余校验 (CRC - Cyclical Redundancy Checking) 由两个8 位字节组成的一个16 位值 CRC 域检验整个报文的内容 报文中附加低字节,然后是高字节,ASCII模式 纵向冗余校验 (LRC - Longitudinal Redundancy Checking) LRC 为一个8 位二进制值 检验包括除起始“冒号”和结尾 CRLF的整个 ASCII 报文域的内容,差错控制方法 奇偶校验 (偶或奇) 每个字符采用 帧检验 (LRC or CRC) 整个报文 报文有无奇偶校验,均执行帧检验,.,物理层电气接口,MODBUS协议默认的通讯速率:19

18、200bps 可用速率:4800bps115Kbps 每种波特率 对发送方,要求其精度必须高于1%,即1900819392bps 对接收方,必须允许2%误差,即1881619584bps 常用速率:9600bps(Micro-motion默认速率),.,电气物理接口网络结构,有源接口和无源接口 电气接头分为几种: 主干接口主干间接口ITr 分支接口设备与无源接口之间的接口IDv 附件单元接口设备与有源接口的接口AUI 主要连接方式:RS485,RS422,RS232,.,电气物理接口2线MODBUS定义,串行链路上的MODBUS依照EIA/TIA-485 标准实现“2-线”电气接口 在这个2

19、线-总线上,在任何时候只有一个驱动器有权发送信号 第三条导线把总线上所有设备相互连接:公共地,.,电气物理接口4线MODBUS定义,从对总线(TXD1-TXD0)上接收来自从站的数据, 主对总线(RXD1-RXD0)上发送数据,由从站接收,.,电气物理接口多点系统需求,多点系统需求 无中继器情况下,最大设备数量:32台 无配置中继器的RS-485 MODBUS 有一个主干电缆,所有的从设备沿着它直接(菊花链)或通过短的分支电缆连接起来 长度主干电缆端到端的长度必须有限制。其长度由波特率,电缆(规格,电容或特征阻抗),菊花链上的负载数,以及网络配置(2线或4线制)所决定 接地公共地电路(信号与可

20、选电源公共地)必须直接连到保护地上,最好是整条总线只接在一点 终端电阻沿线路传播的移动信号波遇到不连续的阻抗,造成在传输线路中的反射。为了使在RS-485电缆终端的反射最小,需要在接近总线两端点处放置线路终端。,.,机械物理接口,各种物理连接器的接线定义,.,电缆连接要求,RS485-MODBUS 必须使用一对平衡对线(用于D0-D1),第三根导线(用于公共地) 在4 线-MODBUS 系统中还必须使用第二对平衡对线(用于RXD0-RXD1)。 对RS485-MODBUS,必须选择足够大的连线直径以达到最大长度(1000m) AGW24对MODBUS数据总是满足的 在RS485-MODBUS

21、中使用第5 类电缆,最大长度可达600m. 在RS485-系统中使用的平衡对线,建议特征阻抗高于100欧姆,MODBUS 串行链路电缆必须屏蔽,.,RS485可靠性 (RS485 Reliability) RS485电气特性 常见问题及处理,.,RS485可靠性电气特性 (Electronic Characteristic),RS-485标准采有用平衡式发送,差分式接收的数据收发器来驱动总线。规格要求: 1、接收器的输入电阻Rin12k 2、驱动器能输出7V的共模电压 3、输入端的电容Cin50pF 4、在节点数为32个,配置了120的终端电阻的情况下,驱动器至少还能输出电压1.5V(终端电阻

22、的大小与所用双绞线的参数有关) 5、接收器的输入灵敏度为200mV 即(V+)-(V-)200V,表示信号0;(V+)-(V-)200mV,表示信号1,.,RS485可靠性,在工业控制领域,由于现场情况十分复杂,各个节点之间存在很高的共模电 压。虽然RS-485接口采用的是差分传输方式,具有一定的抗共模干扰的能力, 但当共模电压超过RS-485接收器的极限接收电压(即大于+12V或小于-7V时), 接收器就再也无法正常工作了,严重时甚至会烧毁芯片和仪器设备。 用一对双绞线将各个接口的A、B端连接起来,而不对RS-485通信链路的信号接地,在某些情况下也可以工作,但给系统埋下了隐患。RS-485

23、接口采用差分方式传输信号并不需要对于某个参照点来检测信号系统,只需检测两线之间的电位差就可以了。但应该注意的是收发器只有在共模电压不超出一定范围(-7V至+12V)的条件下才能正常工作。当共模电压超出此范围,就会影响通信的可靠直至损坏接口。当发送器A向接收器B发送数据时,发送器A的输出共模电压为VOS,由于两个系统具有各自独立的接地系统存在着地电位差VGPD,那么接收器输入端的共模电压就会达到VCM=VOS+VGPD。RS-485标准规定VOS3V,但VGPD可能会有很大幅度(十几伏甚至数十伏),并可能伴有强干扰信号致使接收器共模输入VCM超出正常围,在信号线上产生干扰电流轻则影响正常通信,重

24、则损坏设备。 解决此类问题的方法是通过DC-DC将系统电源和RS-485收发器的电源隔离;通过光耦将信号隔离,彻底消除共模电压的影响。实现此方案的途径可分为: 光隔离器(光耦)、集成芯片。 用1条线或者屏蔽线将所有485设备的GND地连接 这样可以避免所有设备之间存在影响通讯的电势差。,.,RS485可靠性常见问题一,1、信号A和B的判断。 B线应该永远是在空闲状态下电压更高的那一根。A线相当于,B线相当于+。可在网络空闲的状态下用电压表检测。如果B线没有比A线电压更高,那么就会存在连接问题。,2、若出现系统完全瘫痪,大多因为某节点芯片的VA、VB对电源击穿,使用万用表 测VA、VB间差模电压为零,而对地的共模电压大于3

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论