摘要:与传统点对点控制系统相比,由于网络的引入,使得控制系统中出现了一些新问题,诸如网络时延、网络调度、包丢失及多包传输等。这些问题的存在使系统性能降低,甚至使控制系统不稳定。本文主要对以太网中存在的网络诱导时延进行分析和研究。
关键词:网络控制系统; 网络时延;
与传统的控制系统相比,通过公用或专用网络来传输信息,可以给网络控制系统带来许多优势,但也面临诸如网络诱导时延,数据包丢包,网络拥塞等新问题。在网络控制系统中,时延是普遍存在的现象。它来源于控制对象本身的时滞,控制算法的复杂程度,数据转换和传输(调度)以及外界干扰等。这类时延会大大降低被控系统的性能甚至使系统失稳,本文主要网络时延特性。 一、网络控制系统的基本框架与传统的点对点总线控制系统相比,网络控制系统具有可实现复杂系统的远程控制和操作,网络控制系统结构如下图1所示。此外,通过采用无线传感器等无线网络技术还可以将分布在不同地理区域内的传感器、控制器和执行器构成一个远程网络控制系统,这是传统的点对点控制系统所无法做到的。然而,网络的引入给控制系统带来各种优点的同时,也使得系统的分析和设计变得更加复杂。
执行器节点%20被控对象%20传感器节点%20网络%20控制器节点%20T
图-1%20NCS的示意图
在网络控制系统中,传感器将信息包以异步的方式传输到网上,控制器接收并对信息包进行分析和处理,然后将处理后的数据发送到执行器。数据包的传输可能存在时变延时,甚至会丢失数据包;通讯链接有时也可能被切断或被阻塞,且其通讯能力也比较有限;另外传感器或执行器本身也可能变得可用或者不可用,随之新的传感器、执行器和控制器等系统组件可能被加入到该系统,并自动地进行配置以使用信息资源。%20二、网络控制系统的时延网络控制系统中主要存在两类时延,一类是系统中现场设备计算处理时延,如传感器、控制器和执行器完成自身功能所需要的时间,另一类是由于系统中现场设备共享通信网络,网络传输信息发生冲突或阻塞引起的时延,也被称为网络诱导时延。相对采样周期来说设备计算处理时延很小,通常可以忽略不计,但是网络诱导时延较为不确定,故在NCS中是不可忽略的。%20网络诱导时延是恒定的、时变的、还是随机的,本文主要针对以太网来进行分析和比较,得到它的时延特性。
(1)以太网冲突解决算法
Ethernet%20(%20IEEE%20802.3%20)采用冲突检测载波监听多点访问(CSMA/CD)网络协议来解决网络资源的共用和冲突检测。当其中一个网络节点需要发送信息时,需要先要侦听网络,如果网络正忙必须等待,否则立即发送。当两个或两个以上的网络节点同时都侦听到网络空闲后会同时发送各自的信息,这样就会产生冲突。此时,传输节点就会停止发送并且随机等待一段时间后重新发送,根据相应的计算重发时间间隔的算法来确定随机等待的时间,最常用的算法是二进制指数退避算法(BEB)。
(2)以太网消息帧结构
Ethernet消息帧有26个头字节,可传数据包大小在46-1500字节之间。图-2是Ethernet帧格式。整个数据帧中系统的开销为26个字节。数据帧的大小在46到1500字节之间变动。因为规定了有效帧从目标地址到校验和至少需要64个字节长度(加上前同步和开始分隔符是72个字节)。如果数据帧中的数据部分少于46个字节,在数据帧中就用填充符填充,使得该帧达到最小帧长的要求。要求达到最小帧长主要有两个原因:第一、当节点接收装置检测到冲突,它就会截断当前的数据帧,这样网络上就常常会出现零散的位和帧,最小帧长的规定可以把有效帧从网路中和“垃圾帧”区分出来。第二、它保证节点在第一个位还没有到达网络的远端之前不发送其它帧,否则就会与其它帧发生冲突。对一个10Mb/s%20Ethernet,网路最大长度是2500m,允许的最小帧时间51.2%20us即是在10Mb/s下传输64个字节所需要的时间。
图-2 Ethernet (CSMA/CD)帧格式
在负载比较小的网络中,由于使用了简单的等待算法,传输基本上没有时延或者是可以忽略不计,但是Ethernet不支持信息的优先级,在负载比较大的网络中就会频繁地产生冲突和碰撞,时延有可能无界。BEB算法也无法保证每个数据包都一定可以发送出去,因为冲突次数过多时节点会停止发送,显然此算法使网络中传输数据包的时延是随机时变的。此外,Ethernet要求每帧数据都必须有一个最小的数据字节数,冲突发生时一个节点的等待也不必考虑其它节点的等待,这样会大大降低网络系统的性能和线路利用率。
(3)以太网消息发送策略
CSMA采用的是先听后发的策略,与其他介质访问控制协议不同的是CSMA协议有很多变种,以太网(Ethernet)协议是最为熟悉的,也称IEEE802.3。 Ethernet使用CSMA/CD机制来处理和解决通信介质的争用问题。CSMA/CD协议由IEEE 802.3网络标准指定,当节点要发送信息时,首先侦听网络状态,如果网络正忙,它一直等待直到网络空闲,否则立即发送。如果同时有两个或更多的节点侦听到网络空闲并且发送了各自的信息,这些发送节点的消息就会产生冲突并最终导致消息发送中断。在发送信息时,该节点也必须侦听消息的冲突状况,如果侦听到两个或更多的消息的冲突时,发送节点应停止发送并等待一个随机时间长度后重新发送。借助标准二进制指数退避算法来决定这个随机时间的长度:重新发送的间隔时间是在0到(2i-1)个时间片内随机进行选择,这里i表示节点侦听到的第i次冲突,消息往返所需要的最小时间称为一个时间片。但是当达到10次冲突,间隔固定在最大1023个时间片上。节点在16次冲突后不再试图发送消息,并且报告给微处理器发送失败。
三、综述
综上所述,以太网的时延主要是网络诱导时延,影响时延大小的因素主要是冲突解决算法复杂程度、信息包的大小和信息发送策略优劣。这些因素引起的时延将严重地影响到控制系统的性能,例如振荡加剧,超调量增大,回复时间增大等,最恶劣的情况会使控制系统失稳。即使网络控制系统仍然保持稳定,稳定区域也会明显减小,这些都是恶化系统性能、导致信息不能准时到达、引起系统不稳定的重要因素。如何减少网络延时以及针对具有网络延时的网络控制系统设计出稳定、高性能的控制器就显得十分重要,这也是当前自动控制界研究的热点之一。
参考文献:
[1] 李亚洁. 网络化控制系统的鲁棒容错控制研究. 硕士论文, 兰州理工大学,兰州,2008,21-35.
[2] 谢希仁. 计算机网络(第四版)[M]. 北京,电子工业出版社,2003,93-135.