1 引言
在控制系统中,重要的核心问题之一是实现现场生产设备、服务器、客户端之间数据的动态交互,达到远程实时监控、现场数据实时交互的目的。此外,还要求系统只传送与用户需求有关的数据更新,且传输延迟应当被控制在确定的时间内,即有实时性要求,任何控制系统离开实时性将变得毫无意义,实时性问题在工业监控领域具有十分重要的地位,本文将主要对现场数据动态交换及实时性作深入研讨。
2 实时性的概念
2.1 实时性一般定义
实时是指信号的输入、运算和输出都要在一定的时间内完成,并根据生产过程工况及现场情况变化及时进行处理。而实时系统指在事件或数据产生的同时,能够在规定的时间内给予响应,以足够快的速度处理,及时地将处理结果送往目的地的一种处理系统。实时与快速并非是相同的含义,不论网络的传输速度如何,只要在规定的响应时间内产生响应动作,则称系统具有实时性。而实时网络是指网络中数据传输的时间是确定的,即是可以预测的,也就是说,实时网络中的数据传输是具有时限的。
其实,实时性就是将系统对输入信息做出响应的时间加以约束,即系统的正确性不仅与系统处理信息结果的正确性有关,而且还与系统得到结果的时间有关,只有系统处理信息的结果正确和得到结果的时间在规定范围内,系统才是实时系统。当信息输入系统后,系统必需在一定的时间内做出响应,如果反应结果正确,但超过了时限,就认为系统失败。满足一项任务的实时性是指其响应时间小于规定的时限。一般实时应用要求有两个突出特点:一是其中的活动时间性比较强,要求在一定的时刻或一定的时间内从外部环境收集信息,按彼此联系存取已获得的信息和处理收集的信息,再及时做出响应;二是它们要处理“短暂”数据,这种数据只在一定的时间范围内有效,超过一定时限则就没有意义了。
2.2 网络实时性
网络控制系统的实时性有两层含义:一是指基本控制器的实时性,通常,每一台控制器要具有一定的实时性,一般来说,每一台控制器所要承担的任务不止一项,但每项任务对实时性都有一定要求,且可能会各不相同,每项任务对实时性的要求将由配置在基本控制器中的“实时多任务管理程序”来承担;二是指通信网络的实时性,控制系统具有通信功能的基本单元通过通信网络联系在一起,这些单元称为“站”,当某个站向通信网络请求通信时,它对“响应时间”是有要求的,不同的站对实时性要求可能不同,同一站中的不同通信任务对实时性的要求也可能不同。
实时性是工业监控网络不同于普通lan(local area network局域网)的最大特点,一般在工业控制网络中信息响应时间要求为0.01~0.5s,而普通lan中信息的响应时间为2~6s,即工业控制网络的实时性要求比普通lan高得多,有的工业控制网络对实时性的要求比普通lan高几百倍,这只有靠牺牲部分信道利用率来保证。显然,若将普通lan加以时间约束,使之满足控制系统的实时性要求,则它就可以应用于控制系统,作为控制系统的通信网络。
2.3 网络实时性条件
(1)网络本身的硬件性能。包括网络的拓扑结构、通信媒体、网络接口的传送速率等。通信媒体的传输速率越高、网络接口的传送速率越快,网络的实时性就越高。
(2)网络的通信协议。包括媒体的访问控制方式、网络通信协议的层次结构、传输的可靠性、有无连接控制等等。层次结构越简单,系统的实时性就越高。而可靠性与实时性是相互矛盾的,对于无连接、无应答的通信方式要比有连接、有应答的通信方式的实时性要高,但可靠性差。例如通讯协议是profibus-dp现场总线协议,profibus-dp采用主从方式和低层的令牌环传递相结合的形式进行通道分配,整个网络可以将总线系统分割成线段分步建立,段间用中继器来连接,每个段可以有32个网络站,整个网络可以达到126个网站,由于最大传输速率可达到12mbps,以及其第2层采用srd(发送并要求回送)功能,使得输入和输出数据可在一个周期内完成,所以传输速度有了很大的提高,总线周期可尽量减少。
(3)网络的信息量。也称为网络的负载,是指网络在一定时间内需要传送信息的多少。网络传送信息量越少,其实时性就越高。
(4)信道利用率。实时性与通信子网的信道利用率是相互矛盾的,在工业控制网络中,为了提高系统的实时性,不得不牺牲一部分信道利用率。
2.4 网络时间域特点
网络控制系统在时间域上具有以下一些特点,从而区分于其他系统。
(1)时限。网络控制系统中执行的任务一般具有时限要求,规定在特定时间内完成特定的功能而不能超过这个时间。
(2)实时控制。网络控制系统经常包括实时控制,接收输入数据并做出控制决策。
(3)“反应”系统。一般网络控制系统都是“反应”的系统,也就是说,由事件驱动并且必须对外界事件进行响应。
(4)并发处理。绝大多数网络控制系统的一个重要特点是并发处理,通常,事件发生的顺序是不可预测的。
(5)与外部环境交互。网络控制系统通常需要与外部环境进行交互。
3 实时对象模型
3.1 对象模型
当研究网络控制系统的实时性时,需要考虑时间域上的问题,因此给出实时对象的定义。
定义1:实时对象可用如下的四元组表示:
orealtime=(ii,oi,p,t) (1)
其中orealtime为real-time object,表示具有实时性要求的对象;ii为input interface,表示输入接口;0i为output interface,表示输出接口;p为inner process,表示对象内部处理;t为time,表示对象在时间上的要求。有了实时对象模型,网络控制系统的实时性主要体现在实时对象之间的交互上,也就是对实时对象中时间要求t的满足。这里所要讨论的网络控制系统的实时性就是要寻求可行的解决方案,使得tr≤tδ,其中tδ表示某个实时对象的时间要求。
在网络控制系统中,同步和数据交换一般要经过消息传递,实时通信为保证实时任务的按时完成起着关键作用,它最重要的性质是需要确定有界的消息传递延迟,不可预测的消息延迟可能会使参与实时通信的任务违反时限要求。
3.2 消息传递延迟
消息传递延迟是指发送节点通信对象开始发送消息到接收节点通信对象完全收到消息之间的时间间隔,主要包括以下几个部分:
(1)消息在各节点通信对象内的等待延迟。报文在每个通信对象上被阻塞的时间量是因为多条通道的报文同时到达一个通信对象所致。
(2)报文发送延迟。节点对象发送一个报文所需时间,它依赖于报文大小和发送率,一般为常数。
(3)链路上的传播延迟。一个数据位在链路上的传播时间。
其中,发送延迟和链路上的传播延迟分别由网络带宽和信号传播速度决定,而节点通信对象的消息排队等待延迟由系统的软件结构所决定。
4 网络控制系统中的通信分类
网络控制系统是一个复杂的综合性系统,在网络控制系统中需要传输的数据既包括实时数据,又包括非实时数据。
4.1 实时数据
如各种检测器和控制器的i/o口的实时数据,信号、控制器之间的互锁信号、部分系统状态监视数据等。实时数据对时间要求苛刻,一般不允许有秒级的延迟,在某些特殊情况下甚至不允许有毫秒级的延迟。另一方面,对大多数实时数据而言,只有最新数据是有意义的,如果在某一时间段内,某一数据由于某种原因未能作用,而此时下一个数据已经产生,则该数据将被丢弃,而启用最新数据,因此实时数据一般不要求重发。例如:在本项目的温度控制子系统中,阀门的开关是由温度传感器传送的温度信号决定的,此时控制器将只接收温度传感器传送的最新数据;同样,阀门将只接收控制器传送的最新控制信号,否则便会产生滞后。实时数据的数据量相对较少,对带宽的占用率较低。
4.2 非实时数据
如用户编程数据、组态数据、部分系统状态监视数据等。非实时数据对时间要求不很苛刻,允许有相对较长的延迟,但这种数据的数据量相对较大,对带宽的占用率较高,对绝大多数非实时数据而言,传送的数据都是有意义的,一般不允许丢失,需要差错控制和重发机制保证数据的完整和准确。
4.3 通讯分类
从时域的角度看,网络控制系统中实时数据和非实时数据的传输可以概括为三种类型的通信:周期性通信、随机性通信和突发性通信。
(1)周期性通信。如传感器周期性地传送采样数据,控制器周期性地传送控制信号,这类通信的特点是通信周期性地发生,一般为相对固定的端到端的消息传递;传送的数据一般为实时数据,数据通信量较小,占用固定的带宽。
(2)随机性通信。如客户端向服务器端请求服务等,这类通信的特点是:
l通信随机性地发生,一般符合负指数分布;
l传送的数据一般为非实时数据;
l数据通信量较大。
(3)突发性通信。如报表信息等,这类通信的特点是:
l通信是突发的;
l传送的数据一般为实时数据;
l数据通信量小。
4.4 周期性实时消息模型
(1)由于工业控制系统中的通讯绝大部分属于周期性通信,我们着重看一下周期性实时通信。
定义:周期性通信中的消息流可以用如下周期性实时消息模型表示:
cm=(l,c,s,d); (2)
式中,cm(cyclic message)为周期性消息;l(length)为周期性消息流长度,表示消息流的传输时间,包括网络协议规定的信息域、校验域和前导符等消息帧全部内容;c(cycle)为通信周期,也即消息产生周期;s(start time)为发出通信请求的时刻,即消息产生的时刻,d(deadline)为消息时限,即消息从产生至到达目的节点所能允许的最大延迟时间。
(2)周期性消息流k表示为:
cmk=(lk,cx,sk,dk); (3)
从周期性实时消息的定义可以得出,周期性通信实时性的满足由如下条件决定:
l tp-s≤d,tp为消息传送过程中的某一时刻,该条件说明消息从产生到最终到达目的节点不会超过其时限。
l tmax≤c,tmax为进行周期性通信的节点获得总线控制权的最大时间间隔。
l tr≤l,tr为一次总线控制时间,该条件说明节点在获得总线控制权后应有充分的时间发送完所有的周期性消息。
对于周期性通信,要保证所有消息流的实时性,而不是某一个消息流的实时性,因此,要考虑通信中的最坏情况;另一方面,在保证实时性的前提下,还要考虑系统的综合效率,即合理利用通信信道,保证信道利用率的平稳。
5 结束语
本文的分析对网络的实时性问题作了更加全面讨论,有利于在设计控制系统的网络通讯时,更好的满足实时性的要求,提高控制系统的响应速度。