当前位置:今日智造 > 智造快讯 > 新闻

智能制造之通信协议

2018/2/26 9:45:28 人评论 次浏览 来源:通信与物联网安全 分类:新闻

工业以太网和现场总线为代表的控制网络技术标志着工业控制进入一个新的时代,其特点是分散化、网络化、信息化。

工控网络首先要满足实时性的要求,其次是可靠性与安全性,其特点有:

1、工控网络信息帧长度小,信息交换频繁

2、工控网络周期性信息多,非周期性信息少

3、工控网络的响应时间要求严格,一般为毫秒级

4、工控网络的信息流向基本固定

5、工控网络的数据传送具有顺序性

除此之外,需要满足工业设备的共性需求:工业耐高温、潮湿,防爆以及POE供电等等需求。

可以看到工控网络不同于普通数据网络的最大特点在于它必须满足控制对实时性的要求。

业内对实时性通常分为两类:硬实时和软实时,其中硬实时的系统如果不能满足要求将产生严重致命后果,而软实时系统程度较之偏弱,通常仅对系统的输出产品质量产生影响。具体而言,离散行业对于控制的实时性要求较高,而过程行业对实时性要求相对较低,但对本安、防爆等方面有严格要求。

(部分资料来源于网络,版权归原作者所有,本号仅整理,下同!)

工控网络系统中多采用现场总线的形式,IEC61158 的定义为:现场总线是安装在制造或过程区域的现场装置与控制室内的自动控制装置之间的数字式、串行和多点通信的数据总线。

采用现场总线后最大的优势是提供了现场级的设备诊断、配置功能,便于网络的管理和维护。

与传统的DCS 相比,FCS 控制功能更加分散:它可以由现场仪表组成自治的控制回路。 FCS中各现场设备有足够的自主性,它们彼此之间相互通信,把各种控制功能分散到各种设备中,实现了真正的分布式控制。这也意味着FCS 系统具有较高的可靠性和灵活性,系统很容易进行重组和扩建,且易于维护。

2001 年8 月制定出了由10 种类型现场总线组成的第三版现场总线标准,它们是:Type1 TS61158现场总线、Type2 ControlNet 和 Ethernet/IP 现场总线、Type3 Profibus 现场总线、Type4 P-NET现场总线、Type5 FF HSE 现场总线、Type6 Swift-Net 现场总线、Type7 WorldFIP 现场总线、Type8 INTERBUS 现场总线、Type9 FF H1 现场总线以及Type10 PROFInet 现场总线。

在汽车中,应用比较多的是CAN总线,与典型的RS485对比的话,其主要特点是总线利用率高、支持较高的数据传输速率而且失败率极低,传输距离较远、调试方便等等。

综上,业内提出了实时以太网的概念,其常用性能指标包括传输时间、终端节点数、网络拓扑结构、网络中的交换机数目、实时以太网吞吐量、非实时以太网带宽、时间同步精度、非时间性能的同步精度以及冗余恢复时间等。

随着技术的快速发展,业内很多公司对IT信息网络的以太网CSMA/CD机制进行优化来实现实时以太网:速率提高意味着网络负荷减轻和传输延时减少,全双工交换式以太网能够避免因碰撞而引起的通信响应不确定性,保障通信的实时性,E到底,ALL IP是必然的趋势,正在变成现实。

目前几种主要的实时以太网协议是Ethernet/IP (这里的IP表示为工业协议(industrial protoco1))、PROFInet 及MODBUS,今天主要就后两者进行简要介绍。

1.MODBUS协议

Modbus 协议原为美国Modicon 公司(现为施耐德电气的一个品牌)于70 年代所发表的用于PLC 产品的通信协议。早期的Modbus 协议建立在TIA/EIA 标准RS-232F 和RS-485A 串行链路的基础上,近年来,随着Modbus 协议不断发展,已经将Web Server、Ethernet 和TCP/IP等技术引入应用协议。

Modbus 协议采用Client/Server(又称为Master/Salve)模型,是一个请求/应答协议,提供功能码规定的服务,客户机负责创建Modbus 应用数据单元,功能码向服务器指示将执行哪种操作。Modbus 协议是一种应用层报文协议,可以用在不同类型的总线或网络链接,而不管它们是经过何种网络进行通信的。Modbus 协议描述了一控制器请求访问其它设备的过程,如何回应来自其它设备的请求,以及怎样侦测错误并记录。它制定了消息域格局和内容的公共格式。

Modbus串行链路协议是一个主/从协议。该协议位于OSI 模型的第二层。在同一时刻,只有一个主节点连接于总线,一个或多个子节点(最大编号为247 ) 连接于同一个串行总线。Modbus 通信总是由主节点发起。子节点在没有收到来自主节点的请求时,从不会发送数据。子节点之间从不会互相通信。主节点在同一时刻只会发起一个Modbus 事务处理。

Modbus 采用主从协议,Modbus 通讯总是由主站发起,当从站没有接收到来自主站的请求时,将不会发送数据。从站之间不能相互通信。

主节点以两种模式对子节点发出Modbus 请求:

  • 在单播模式,主节点以特定地址访问某个子节点,子节点接到并处理完请求后,子节点向主节点返回一个报文(一个 应答)。在这种模式,一个 Modbus 事务处理包含2 个报文:一个来自主节点的请求,一个来自子节点的应答。每个子节点必须有唯一的地址(1 到247),这样才能区别于其它节点被独立的寻址。

  • 在广播模式,主节点向所有的子节点发送请求。对于主节点广播的请求没有应答返回。广播请求一般用于写命令。所有设备必须接受广播模式的写功能。地址0 是专门用于表示广播数据的。

Modbus 寻址空间有256 个不同地址。0为广播地址,所有的子节点必须识别广播地址。1-247为子节点单独地址,248-255保留。Modbus 主节点没有地址, 只有子节点必须有一个地址。该地址必须在Modbus 串行总线上唯一。

如前文所述,合法的子节点地址为十进制0 – 247。每个子设备被赋予1 – 247 范围中的地址。主节点通过将子节点的地址放到报文的地址域对子节点寻址。当子节点返回应答时,它将自己的地址放到应答报文的地址域以让主节点知道哪个子节点在回答。

这里提到了功能码,在MODBUS中,有三类功能码。

公共功能码

  • 是较好地被定义的功能码,

  • 保证是唯一的,

  • MODBUS组织可改变的,

  • 公开证明的,

  • 具有可用的一致性测试,

  • MBIETF RFC 中证明的

  • 包含已被定义的公共指配功能码和未来使用的未指配保留供功能码。

用户定义功能码

  • 有两个用户定义功能码的定义范围,即65 至72 和十进制100 至110。

  • 用户没有MODBUS 组织的任何批准就可以选择和实现一个功能码。

  • 不能保证被选功能码的使用是唯一的。

  • 如果用户要重新设置功能作为一个公共功能码,那么用户必须启动RFC,以便将改变引入公共分类中,并且指配一个新的公共功能码。

保留功能码

一些公司对传统产品通常使用的功能码,并且对公共使用是无效的功能码。

继续看MODBUS的帧结构,最后是CRC或LRC,它们是根据不同的传输模式(RTU or ASCII)来使用两种不同的计算方法。

当设备使用RTU (Remote Terminal Unit) 模式在Modbus 串行链路通信,报文中每个8位字节含有两个4 位十六进制字符,默认校验模式模式必须为偶校验。这种模式的主要优点是较高的数据密度,在相同的波特率下比ASCII 模式有更高的吞吐率。每个报文必须以连续的字符流传送。

在 RTU 模式,报文帧由时长至少为3.5 个字符时间的空闲间隔区分。

当 Modbus 串行链路的设备被配置为使用ASCII (American Standard Code for Information Interchange) 模式通信时, 报文中的每个 8 位子节以两个ASCII 字符发送。当通信链路或者设备无法符合RTU 模式的定时管理时使用该模式。由于一个子节需要两个字符,此模式比RTU 效率低。

在标准的MODBUS系统中,所有设备(并行)连结在一条由3 条导线组成的干线电缆上。其中两条导线(“两线”结构)形成一对平衡双绞线,双向数据在其上传送,典型比特率为每秒9600 比特。要求必须实现19200的波特率。

MODBUS串口RS485系统中有两线和四线区分,一般不混合,但是特殊情况也可能存在着两线设备接入已经存在的四线系统中,或者反之,此时在接线上进行相应处理即可,如下图四线设备接入已经存在的2线系统中。

RS232-MODBUS 串行链路系统上的MODBUS 只应用于短距离(一般小于20m)的点到点的互连。其次,必须遵守EIA/TIA-232 标准。

多点系统中,在没有中继器的任何RS485-MODBUS 系统中,总是允许最多有32 台设备。

其依据是:

- 所有允许的地址,

- 设备使用的RS485 单元负载总量,

- 以及需要的线偏置

当没有数据在RS-485平衡对线上传递时,该线路不被驱动,因此易受外部噪声与干扰的影响。为确保它的接收器处于一个稳定状态,在没有数据信号出现时,一些设备需要使网络偏置。

相关线缆的长度也必须有所限制:对于最高波特率为9600,AWG26(或更粗)规格的电缆,其最大长度为1000m。分支必须更短,不能超过20m 。

在TCP/IP上使用一种专用报文头识别MODBUS应用数据单元。将这种报文头称为MBAP报文头(MODBUS 协议报文头)。

这种报文头提供一些与串行链路上使用的MODBUS RTU 应用数据单元比较的差别主要在于用MBAP报文头中的单个字节单元标识符取代MODBUS串行链路上通常使用的MODBUS从地址域。这个单元标识符用于设备的通信,这些设备使用单个IP 地址支持多个独立MODBUS 终端单元,例如:网桥、路由器和网关。

TCP连接管理的建议

1)如果没有明确的用户需求,建议采用自动的TCP连接管理

2)建议:打开并保持与远端设备的连接,而不要在每次MODBUS/TCP事务处理时打开和关闭连接。

2.ProfiNet协议

ProfiNet 全称Process Field Net,是在Siemens 公司的支持下由PNO(ProfibusNutzer/User Organisation)开发而成的。

它的第一个文本仅仅是非时间要求通信的以太网接口的设备和通过代理网关连结的实时性通信的Profibus-DP 设备的结合体。从2004 年开始开发与制定新的版本标准。提出了对IEEE802.1D 和IEEE1588 进行实时扩展的技术方案,并对不同实时要求的信息采用不同的软件和硬件的实时传输方法。

在第二版中,ProfiNet 提出了两种工业以太网的通信机制,采用TCP/IP 协议通道来实现非实时数据的传输。如用于设备参数、组态和读取诊断数据的传输。而实时数据的传输是将OSI 模型的第三层和第四层进行旁路,实现实时数据通道,传输的实时数据存放在实时堆栈上,实现传输时间的确定性。为了减少通信堆栈的访问时间,第二版对协议中传输数据的长度作了限制。因此在实时通道上传输的数据主要是用于现场I/O 数据、事件控制的信号与报警信号等。为优化通信功能,ProfiNet 根据IEEE802.1P 定义了报文的优先权,规定了七级的优先级。其中最高级用于硬实时数据的传输。

ProfiNet 的第三版本采用了同步实时(isochronous real-time,IRT)等的ASIC 芯片的硬件方法来实现具有数据同步传输功能的实时数据的传输,以进一步缩短通信栈软件的处理时间,这样一来,ProfiNet 不仅能实现基于自动化的组件(component based automation,CBA)的数据通信,同时应用于快速的时钟同步运动控制。

首先大致了解下ProfiNet硬件设备类型,接下来简要介绍下相关协议。

PROFINET控制器,IO控制器相当于电脑硬件中的中央处理器,其通用模型包含一个PLC程序、所有输入和输出数据。

IO设备:IO设备相当于电脑硬件中的鼠标、键盘、光驱等输入输出设备。

IO监视器:IO监视器是运行组态和诊断功能的编程设备或PC。

在选择设备时需要根据系统中各个子系统的要求进行一致性的规划,比如运动控制的需要最高级别,监视的级别就可以降低。

PROFINET为了满足不同场合对系统实时性的要求,从响应时间的角度定性的区分出三种类型的通信:非实时、实时、等时实时。

PROFINET具体实现实时的方法有:使用802.1Q技术来降低冲突域,使用802.1P排定优先级,循环通信重传机制,精简协议栈,旁路TCP/IP等等。

最后简单总结下,今天主要回顾了下智能制造系统中常用的通信协议,不管是MODBUS,还是PROFINET,良好的支撑TCP/IP从而为规模的普及打下了良好的基础,这些基于以太网的工控系统在上层软件的支撑下,各种功能应用也越来越智能,后期我们将逐步涉及到这些方面的内容,欢迎您和我一起走入智能制造的万千世界!

免责声明:本文系网络转载,版权归原作者所有,如涉及版权,请联系我们删除,QQ:1138247081!

共有条评论 网友评论

验证码: 看不清楚?