摘 要: 本文介绍了一种实时以太网控制协议,该协议能够保证实时信号的发送有确定的最大时延,而且它与现有的以太网介质访问控制协议兼容.分析了协议的工作原理,证明该协议是可行的有效的。
关键词: 工业以太网;实时;控制协议
1 引言
现场总线技术把基于封闭、专用的解决方案变成了基于公开化、标准化的解决方案,世界各大公司开发了各种各样的现场总线,号称开放的现场总线也有40多种,现场总线的国际标准IEC 61158也包含了8种之多,形成了多种现场总线并存的局面。但是,这些现场总线之间不能实现互操作,现场总线技术也不能为企业提供从现场控制层到管理层的全面信息集成,而且现场总线较低的通信速率也不能满足工业控制越来越多的数据交换的需要。世界各大厂商开始寻找其它途径,目前在信息网络中广泛应用的以太网已成为新的目标。
Ethernet具有成本低、稳定、可靠、应用广泛和共享资源丰富等优点,因此迅速发展起来,使其成为最受欢迎的通信网络之一,不仅垄断了办公自动化领域的网络通信,而且在工业控制领域管理层和控制层等中上层的网络通信中也得到了广泛应用,并直接向下延伸应用于工业现场设备层通信。
2 工业控制网络的实时性要求
以太网被认为是几乎所有网络相关自动化问题的有效解决方案—设备层通信、控制、高速数据传输等,但将之用于工业控制则要认真考虑其互操作性和安全性。这是因为以太网技术自身只提供了一系列的物理介质定义和一个共享的构架,构架包括物理介质、简单的帧格式和LAN内设备数据包传输的寻址方案。依据开放式系统互联7层参考模型,以太网仅提供了物理层和数据链路层协议。所以,所有以太网都可以支持在其之上的一种或多种上层协议,实现数据传输和网络管理功能。上层协议决定了网络支持的功能级、连接到网络的设备和网络中设备实现互操作。
图1 OSI 7层模型示意图
Internet采用了TCP/ IP作为网络层和传输层协议,它提供了设备间交换数据的一套服务。但是,TCP/ IP并不能保证设备间有效的通信,只能提供信息的传送。因此,在工业设备间的通信必须采用通用的应用层协议。这种通用的应用层协议采用在普通应用层上的TCP/ IP封装,使工业设备节点在以太网信息里将数据封装起来,然后该节点将带有TCP/ IP的信息发送到以太网的数据链路层。这个标准的应用层使工业自动化和控制设备的互操作性和互换性成为可能。
实际上,在控制系统中存在着两种信息:实时I/O数据((I/ O message)和用于组态、参数设置、诊断等的显式信息(Explicit Message)。前者不包含任何协议信息,只含有要求快速传送的I/O实时数据。它的特点是要求采用短帧结构、协议额外开销少、执行实时传送,因此要采用UDP/ I P( User Datagram Protocol/ Internet Protocol)协议。而后者的数据包含了协议信息和执行服务的指令,节点要翻译该信息的内容、执行规定的任务并产生应答信号,因此采用TCP/ IP协议。以UDP/ IP和TCP/ IP分别封装I/O信息和显式信息,可以保证提供不同网络性能要求的数据通信服务,还使工业自动化和控制设备具有互操作性和互换性。
图2 基于以太网的实时通信层次模型
3 实时以太网介质访问控制协议技术
3.1传统以太网介质访问控制协议
以太网提供波特率为10 Mbps或100 Mbps的快速、高效的传输。但是,在一个繁忙的环境中,以太网并不能为节点提供固定的网络访问时间。相反的,它用一种称之为带有冲突检测的载波侦听多路存取(CSMA/ CD)的判优算法。使用CSMA/ CD,每个节点会在发送数据前侦听网路。如果节点发现网路有空,它就开始传输。否则,它就等到网路空闲为止。大多数时候,网路侦听可以保证消除冲突。以太网的速度足以使节点等待网络空闲,而浪费的时间仅仅造成一个很小且有上限的延迟。然而,有这样一种可能,2个节点同时等待一个传输的结束。在这种情况下,他们会同时侦听到一个空闲的网路并且同时开始传输。这就会造成一个冲突,所以两个节点必须通过调停来决定网路的访问。
当节点探测到一个冲突,它就会回退,并等待2个时间间隔后在重试数据的发送。如果重发失败,最大等待时间将会加倍,而节点将在一个随机的时间端之后再次重发。这种算法会持续到网路空闲为止。在1个10 Mbps的网络中,时间间隔为51 .2us 。在100 Mbps的网络中,一个时间间隔仅为5 .12us 。但等待时间加倍的算法不会一直继续,它将在10次后停止加倍,并在16次后显示错误信号。这样,这种指数形式的补偿计算会造成不可预知的延迟。
3.2工业以太网实时通信分析
为了检测到信道上的冲突,首先给出最小竞争时隙的概念,定义网络上相距最远的2个节点的信号传播时延的2倍为最小竞争时隙.如果1个节点开始传输后,在一个最小竞争时隙内没有检测到冲突,该节点获得了信道的访问控制权.系统中,非实时节点遵循标准CSM A/CD协议,而实时节点遵循实时以太网介质访问控制协议(RT-CSM A/CD),该协议的基本思想是:有实时数据要发送时,首先侦听信道,如果信道空闲,实时节点开始发送.发送后如果检测到冲突,实时节点并不像非实时节点一样停止传输,而坚持发送竞争信号,竞争信号的长度不小于最小竞争时隙的长度.因为非实时节点遵循坚持CSM A/CD协议,检测到冲突后都停止信号发送,在实时节点发送完一个竞争信号之前,非实时节点都将退出竞争.剩下的实时节点按照优先级的大小决定是坚持发送竞争信号还是让出信道给更高优先级的节点,优先级越高的节点坚持发送竞争信号的次数越多.当某个节点发送完一个竞争信号后,如果检测到信道上的冲突已消失,说明其他的实时节点都已经退出竞争,该节点就取得信道的访问控制权,停止传输竞争信号,重传被破坏的数据帧。
设总线上相距最远的2个节点的信号传输时延为τp,所有节点的数据帧等长,发送一帧所需要的时间为τ,检测冲突后发出的阻塞信号时宽R,实时节点的竞争信号长度等于L.设帧间距时间间隔为TI,实时节点从取得信道到开始发送数据帧的时间间隔为T ‘I,要求T ‘I< TI .设信道上有n个实时节点.试想优先级最高的实时节点数据帧到达时所遇到的最坏情况:信道刚好被其他节点占用,实时节点必须等待信道空闲,等待时间是数据帧的发送时间T,信道空闲后再等待T i时间间隔,然后实时节点开始发送数据帧,但发生冲突,最大竞争次数为n,用于信道竞争的最大时延为
TI +2τp+R+nL+T ‘I
总的最大发送等待时延为
TI +2τp+R+nL+T ‘I+τ
是一个确定值,即该实时信号的发送有确定的最大时延.其他优先级的实时节点在保证高优先级的节点发送完成的情况下,也可相应计算出其最大发送时延.
4 实时通信协议在工业以太网中的应用
不同于以往的源/目的的通信模式,实时控制协议采用生产者/消费者(Producer/ Consumer)的通信模式(如图3),允许网络上的不同节点同时存取同一个源的数据。在生产者/消费者的模式中数据被分配一个唯一的标识,根据具体的标识,网络上多个不同的节点可以接收到来自于同一个发送者的数据。其结果是,数据的传输更为经济,每个数据源一次性地把数据发送到网络上,其他节点选择性地收取这些数据,不浪费带宽,提高了系统的通信效率,因为不管有多少个节点需要接收这个数据,数据只需产生一次。数据经过同样的时间传送到不同的节点,可以实现通信的精确同步。
图3生产者/消费者通信模型
绿化软件站 |
当下软件园 |
91招聘 |
51游戏 |
亿商网 实时访问控制协议作为一种开放的技术,同时受到Control Net和DeviceNet总线标准的支持。Control Net和DeviceNet是先进的现场总线协议,分别由CI( Control Net International)和ODVA两个组织来管理技术和推广,在世界上受到700多个大厂商的响应。实时访问控制协议支持 IEEE 802 .3物理层和链路层标准、 TCP/ IP协议簇(Transmission Control Protocol/Internet Protocol)以及以太网的工业标准还有控制与信息协议CIP( Control and Information Protocol),这个协议提供了I/O实时信息的交换。
实时访问控制协议与ControlNet .DeviceNet最大的共同点是具有相同的应用层通信协议,共享设备行规和对象库。这些对象库可支持不同厂商的各类产品间的即插即用的互操作性和互换性。
实时控制协议解决了以太网上的设备间的互操作性和互换性。在此之前,各大设备制造厂商在以太网上采用了各自独立的应用层协议(如Profibus和Modbusover Ethernet)。虽然它们后来也提供了网关的解决方案,但不提供到应用层的无缝连接,同时增加了硬件和系统组态的开销。工业以太网实时协议则采用了开放的应用层,通过一致性的检测来保证不同厂商的设备间的互操作性和互换性,即它可以提供到Control Net和DeviceNet的应用层的无缝连接。
5 结束语
改善以太网在工业控制应用中的实时能力除了采用实时访问控制协议,还要采用其他的方法。首先,限制以太网通信负载的大小,使其处于轻载状态。采用尽量少的节点数目可以有效地降低延迟。其次,采用快速以太网和交换式以太网来取代传统的共享式以太网。此外,还有通过双工通信技术、流量控制、虚拟局域网(VLAN)、自动负载平衡、自动协商等新技术。
以太网上层增加实时通信协议,在避免了改变以太网结构的情况下,提高了整个通信模型的通信确定性和实时性问题,为将廉价的商用以太网引入工业控制网络提供了一种简单易行的途径。随着以太网性能的进一步提高,加上高速以太网和交换式以太网的普及,以太网技术将更加广泛地应用于工厂底层控制网络。
参考文献:
[1]VenkatramaniC, Chiueh T.Supporting real-time traffic on Ethernet[A].In: Proceddings of the IEEE Real-Time Systems Symposiwn(RTSS‘ 94)
[2]Gerardo P C .The real-time publish-subscribe middle ware [A].The 18th IEEE Real-Time Syst Symp,San Francis co ,1997.
[3]沈钢,许晓鸣. 新型工业以太网介质访问控制协议. 上海交通大学学报,2002(4): 36-4