◆蒋海霞 童玮 杨健
基于TrueTime仿真的网络控制系统基本问题研究
◆蒋海霞 童玮 杨健
(陆军工程大学通信工程学院 江苏 210007)
网络的介入,使网络控制系统产生了一些不可避免的问题,如网络诱导时延、数据包丢失、通信协议的选取、网络调度、驱动方式等,均会影响控制系统的性能。利用TrueTime仿真工具箱,本文采用PD控制器,构建了一个以直流伺服电机为被控对象的网络控制系统仿真模型,主要研究了时延对网络控制系统性能的影响,以及在一定时延条件下,其他几个因素对网络控制系统性能的影响。
网络控制系统;时延;TrueTime仿真工具箱;系统性能
控制系统中的传感器、控制器和执行机构等可能分布于不同的地理位置,通过网络将它们连接起来,形成全分布实时反馈闭环控制系统,称为网络控制系统(Networked Control System,以下简写作NCS)。该交叉学科是网络通信与控制理论研究领域备受关注的国际前沿性课题之一[1]。
网络控制系统发展潜力巨大。但由于网络的引入,节点通过网络交换数据时,便会产生一系列不可避免的现象,如多包传输、数据碰撞、丢包、时延、网络拥塞等问题,它们都会影响网络控制系统的性能。本文简单阐述了NCS中存在的基本问题,采用基于MATLAB环境的TrueTime仿真工具箱[2],构建了NCS仿真模型。通过仿真分析,研究了由于网络的引入从而无法避免的时延对系统性能的影响,同时仿真分析了时延存在的情况下其他因素对控制系统性能的影响。
本文采用一种典型NCS结构[3],以研究NCS的基本问题对控制系统性能的影响,如图1所示。
图1 典型结构的NCS
图1中箭头方向表示信号流动的方向,其中,τca:控制器到执行器的时延,τsc:传感器到控制器的时延。控制器对被控对象的控制是通过网络来实现的,网络作为主要传输介质被控制系统中的执行器、传感器和控制器共享。
由于网络的介入,NCS运行机制、分析和设计比传统的点对点直接控制系统更加复杂,存在不同于传统控制系统的基本问题,主要有:网络诱导时延、通信媒体类型及协议、数据包传输、节点驱动方式、网络调度等[4]。为进行仿真分析,需首先了解NCS的基本问题。
由于网络带宽受限且数据流量随机变化,控制系统中的节点通过网络传送、交换数据时,会出现信息碰撞、拥塞、丢包等现象,时延是不可避免的,这种由传输网络引起的时延即为网络诱导时延(Network-induced Delay)。时延不仅会让系统性能变差,还可能缩小系统的稳定范围,甚至导致系统失稳,因此在所有影响网络控制系统性能的因素中,网络诱导时延是最主要的因素。而网络诱导时延的特性,主要取决于系统的控制网络采用的媒体类型及协议,例如缓存队列的排队时间等是造成时延不确定性的主要原因,同时也与节点驱动方式、数据包传输、网络调度策略等诸多因素有关,实际应用中需综合考虑各种情况,调整系统参数,使时延符合系统的性能要求[1] [3]。
在NCS中,作为主要传输媒介的通信网络可以是有线或者无线网络,既可借助于公用的Internet、WLAN,也可以搭建专用的传感器网络、现场总线等。根据控制系统信息传输与交换的需要,可以采用不同的通信协议。在随机访问中,以太网采用CSMA/CD协议,总线网络采用CSMA/AMP协议;而在轮询服务中,主要采用令牌总线方式。采用不同的协议,网络的质量和特征也不同,因而使网络控制系统具有不同的特性,制约着网络控制系统的设计和分析,从而对整个系统的控制性能产生影响[5]。
网络控制系统中,数据的传输主要有单包传输和多包传输两种方式。将传输的数据封装成一个数据包等待传输即为单包传输,而将数据封装成多个数据包等待传输,即为多包传输。网络控制系统将根据网络中各个传感器在物理空间范围内的分布情况,以及不同网络的数据帧的容量大小,综合考虑采用单包传输还是多包传输。例如若网络中的传感器分布远而广,则采用单包传输,即将数据放在一个包中传输就不切实际;又如以太网中数据帧的容量达到1500字节,适宜单包传输大批量数据;而在总线网络中数据帧的容量仅为8字节,导致数据需分成多个包进行传输,适合传输数据量小且需快速传输的控制信息。
数据在网络中传输,面临着节点冲突、网络拥塞和多路径等众多影响因素,多包传输时,还存在多个包不能同时到达接收端,这将直接增加接收处理时间,并间接增加了网络时延。因此,系统的设计与分析方法也会因采用的数据包传输方式而不同,性能同样受到影响。
网络控制系统中,包括控制器、传感器、执行器等主要节点,这些节点的驱动方式分为时钟驱动(Clock Driven)、事件驱动(Event Driven)两类[6]。若网络控制系统中的节点在预定时间启动工作,则称为时钟驱动方式;若网络节点在发生特定事件时启动工作则称为事件驱动方式。一般来说,传感器节点为时钟驱动,即按系统时钟周期性对被控对象进行采样;控制器节点和执行器节点多采用事件驱动方式,即当控制器收到来自传感器的信号时,立即进行控制计算等相关操作,而当执行器接收到控制器传来的信号时,立即执行命令,驱动被控对象执行机构,实现预期的调整。
不同的工作方式对系统的性能影响不同,事件驱动相比于时钟驱动的优点:节点在事件到来时立即启动工作,无采样等待时间,时延减少;亦避免了空采样、时钟同步困难等问题。其缺点是比时钟驱动方式的实现难度大。
网络控制系统中,各节点需通过网络交换数据,必然出现碰撞现象,网络调度通过规定各节点发送次序的优先级、发送时刻以及发送间隔,以期尽可能地避免信息冲突和网络拥塞,合理分配资源,从而降低丢包率、减少网络时延,达到提升网络控制性能的目的。
在NCS的时延组成和性能影响等因素中,调度算法是重要因素之一。由于网络负载不均衡、网络资源有限,因此网络控制系统中需合理设计调度算法,充分利用带宽的同时尽量避免发生信息冲突,保证实时性要求,提高网络控制系统的运行效率。
目前,网络控制系统的调度方法主要有两大类:静态调度和动态调度算法。预先离线分配好各节点任务的发送次序优先级、发送时刻和发送时间间隔等称为静态调度算法,例如:单调速率算法(RM)、截止期单调算法(DM)。与静态调度算法不同,动态调度算法根据任务的变化,动态调整各节点任务的发送次序,在线动态分配网络资源。如最小截止期优先算法(EDF)。动态调度算法比静态调度算法更能适应不断变化的网络,因此受到更多的关注。
利用MATLAB仿真网络控制系统时,为了模拟网络环境,采用了TrueTime仿真工具箱。研究中利用其搭建了仿真模型,首先仿真了网络时延对NCS性能的影响。然后在一定时延条件下,通过改变数据传输速率、通信模式、丢包率等参数,仿真分析了上节所分析的NCS基本问题中涉及的相关因素对系统性能的影响。
TrueTime是瑞典隆德大学自动化系于2002年推出的基于MATLAB/Simulink的NCS仿真工具箱,用来仿真分布式的实时控制系统和网络控制系统。该工具箱具有丰富的功能,可以实现任一种网络下控制系统与实时调度的综合仿真研究,是目前应用最广的NCS仿真工具之一。
直流电机是常见的一种驱动设备,广泛应用于控制领域,如智能机器人、无人驾驶和航天航空领域等。直流电机响应速度快,对控制回路中的时延比较敏感,因此选择直流电机作为被控对象来研究时延以及存在时延情况下其他因素对网络控制系统性能的影响,并建立仿真模型。
考虑受控对象是一直流电机,其传递函数为:
参考输入采用方波,周期为1s,振幅为1.0。控制器采用DM调度算法,且为提高NCS的快速性和稳定性,控制器采用比例微分(PD)控制算法:
参考取值:=0.01,=1,T=0.04,=100.0。
利用基于MATLAB/Simulink软件平台的TrueTime仿真工具箱,建立NCS仿真模型,如图2所示,其中控制器用一个内核模块建模,传感器和执行器共用一个内核模块建模,网络模块用于对数据传输系统建模。
图2,传感器节点(sensor node)采用时钟驱动方式,周期性的采样输出测量值,并通过网络模块(TrueTime network)将采样信号发送给控制器节点(controller node)。因为控制器节点采用的是事件驱动方式,所以接收到采样数据后,通过PD算法立即计算控制信号,然后将计算结果通过网络模块发送给执行器节点(actuator node)。由于执行器也采用事件驱动,所以当接收到控制信号立即启动工作,驱动被控对象。
利用TrueTime对NCS进行仿真时,初始化和代码编写是关键,其代码编写可以选择C++或者MATLAB语言,有所不同的是,C++运行速度快但编写难度较大,MATLAB编写简单更易理解。
图2 NCS仿真模型
3.3.1时延对NCS性能的影响
仿真中,网络协议采用以太网协议(CSMA/CD),数据传输速率为80kbps,最小数据帧设定为80bits,不存在数据丢失即设置网络参数Loss probability=0,各节点信息调度策略采用截止期单调DM;传感器采样周期为10ms,仿真时间为4s。
图3给出了时延分别为2ms、5ms、7ms、7.5ms和8ms的仿真结果。
图3 时延对NCS性能影响的仿真结果
将两个性能指标数据进行分析后所得的结果如表1所示:
表1 时延与性能指标的关系
从仿真结果可知,当时延为2ms时,系统输出能够较好地跟随输入,控制性能良好,但随着时延的增加,系统的超调量增大,上升时间缩短,当时延为7ms时,系统超调量近似为72.79%,系统稳定性迅速变差,时延进一步增大将导致系统不稳定,时延为8ms时系统已振荡发散。
3.3.2传输速率对NCS性能的影响
NCS中数据传输速率主要跟网络结构、传输介质和访问协议有关,通过网络模块参数设置对话框,可以仿真不同传输速率对NCS性能的影响。
在仿真中,网络协议采用CSMA/CD协议,传感器采样周期为10ms,最小数据帧设定为80bits,不存在数据丢失即设置网络参数Loss probability=0,各节点信息调度策略采用截止期单调DM;时延为2ms,仿真时间为4s。
图4给出了传输速率分别为40kbps、80kbps和320kbps的仿真结果。
从仿真结果可知,数据传输速率较低时,NCS控制性能较差;当数据传输速率较高时,NCS控制效果良好,性能较为稳定。但传输速率受传输介质和访问协议的限制,不可能无限增大,在实际应用中,一般是通过合理的设计布线来保证较高的传输速率,而不是单纯地提高传输速率。
图4 数据传输速率对NCS性能的影响
3.3.3通信模式对NCS性能的影响
在NCS中,通信模式的不同也使NCS呈现出不同的性能。在仿真中,传感器采样周期为10ms,数据传输速率为80kbps,不存在数据丢失即设置网络参数Loss probability=0,最小数据帧设定为80bits,各节点信息调度策略采用截止期单调DM;时延为2ms,仿真时间为4s。
图5分别给出了以太网(Ethernet)、令牌总线(Round Robin)和交换式以太网(Switched Ethernet)的仿真结果。
图5 通信模式对NCS性能的影响
从仿真结果可以看出,不同的通信模式所呈现的系统性能不一样,但没有显著差别。在这三种通信模式中,系统在采用以太网进行数据传输时稳定性最好。
3.3.4丢包对NCS性能的影响
在NCS中,大部分网络根据网络协议,有数据重传机制,即在一定时限内,节点重发数据,如果超过这个时限范围,数据包便被丢弃。丢包也是影响NCS性能的重要因素。
在仿真中,网络协议采用以太网协议(CSMA/CD),传感器采样周期为10ms,数据传输速率为80kbps,最小数据帧设定为80bits,各节点信息调度策略采用截止期单调DM;时延为2ms,仿真时间为4s。
图6给出了丢包率分别为0、0.15、0.20和0.25的仿真结果。
图6 丢包率对NCS性能的影响
从图中可以看出,丢包率为0时系统性能较好,经计算系统超调量为26.44%。随着丢包率的增加系统的稳定性越来越差,当丢包率达到25%时系统已失稳。
3.3.5调度策略对NCS性能的影响
在仿真中,网络协议采用以太网协议(CSMA/CD),传感器采样周期为10ms,数据传输速率为80kbps,最小数据帧设定为80bits,不存在数据丢失即设置网络参数Loss probability=0,时延为2ms,仿真时间为4s。
图7、图8分别给出了采用DM和EDF调度策略的仿真结果。
图8 采用EDF调度策略
从仿真结果可以看出,在该仿真条件下系统性能稳定,采用DM调度算法和采用EDF调度算法对系统控制性能影响无明显差别。因此调度策略可以不作为研究的重点。
随着网络通信技术和计算机技术的飞速发展,网络控制系统从根本上突破了传统控制系统的局限性,促进了控制、计算机与通信的综合运用和共同发展,从实践上解决了对复杂远地系统实时控制的难题,因此对NCS的研究具有十分重要的意义。
本文从NCS的复杂性和综合性方面考虑,利用基于MATLAB的TrueTime仿真工具箱,设计并建立NCS的仿真模型,通过仿真及数据分析,研究了网络时延对系统性能的影响,以及存在时延的情况下数据传输速率、丢包率、通信模式以及调度策略等因素对NCS性能的影响。
本文的仿真模型较为简单,仅研究了单输入单输出的单回路控制系统,而实际的网络控制系统一般是多输入多输出的多回路分级控制复杂系统,可以在此模型基础上,对多回路分级控制的复杂系统进行建模,展开研究。
[1]邱占芝,张庆灵.网络控制系统分析与控制[M].北京:科学出版社,2009.
[2]Anton C,Dan H,Martin A.TrueTime 2.0——Reference Manual [Online],Available:http:// www.control.1th.se/.
[3]张鹏辉.基于TrueTime的网络控制系统分析与研究[D].西安:西安电子科技大学,2014.
[4]Zhang W,Branicky M S,Phillips S M.Stability of networked control systems[J].IEEE Control Systems Magazine. 2001,21(1):84-99.
[5]王先鹏,周川,陈庆伟.通信受限的时延网络控制系统动态调度与控制同步设计[J].中南大学学报(自然科学版). 2013,44(Suppl.1):109-114.
[6]王淼.网络控制系统分析和网络实验室设计方法研究[D].沈阳建筑大学,2011.67.