高 远,江 明,葛 愿
GAOYuan,JIANG Ming,GEYuan
安徽工程大学 安徽检测技术与自动化装置重点实验室,安徽 芜湖 241000
Anhui Provincial Lab of Detection Technology and Energy Saving Devices,Anhui Polytechnic University,Wuhu,Anhui241000,China
网络控制系统(Networked Control System,NCS)是通过网络将在不同地理位置的传感器、控制器和执行器连接起来,形成的一种实时反馈控制系统[1-3]。其与传统的控制系统相比简化了系统各环节连接,打破了系统空间位置限制,降低了系统运行维护成本,具有系统组件灵活,易于扩展维护,能够实现资源共享与远程控制等优点。基于以上优点NCS在航空航天、机器人遥操作、汽车制造、智能家居、远程医疗等领域有着巨大的应用前景[4-7]。
然而,网络是不稳定的传输介质,NCS不可避免地存在网络传输时延,数据包丢失,数据包时序错乱,多包传输等问题[8-9]。以致对整个系统性能产生影响,甚至会导致整个系统的不稳定。所以需要设计合适的控制器补偿这些缺点对系统产生的负面影响。但是,由于网络的介入,使得以往经典控制方法无法直接应用于NCS,因此需要针对NCS的系统结构特点设计新的控制策略。为了验证这些控制策略的有效性,往往需要进行仿真实验。
目前常见的NCS仿真方法是通过Matlab/TrueTime工具箱模拟控制策略和网络环境以及相关性能,但是其网络模拟的功能相对较弱,无法模拟复杂的网络环境。为此本文引入一款能够模拟复杂网络环境的软件——NS2。NS2是由离散事件驱动,面向对象的开放式网络模拟器[10-12]。其内核由C++类库实现各种网络协议和链路层模型,前端利用OTCL程序语言搭建网络拓扑结构,可以完整地模拟整个网络环境。因此NS2在NCS中的应用越来越受到重视,如昆明理工大学刘守盎提出的基于NS2网络化控制系统仿真[13],江南大学谢林柏等提出的基于NS2的网络控制系统仿真研究[14],吉林大学王庆凤等提出的基于NS2的网络化控制系统仿真平台的设计与实现[15]。但是,总体来看这方面的研究工作刚刚起步,还有待深入研究。
为此,本文的主要工作是在NS2下搭建一个基于PID控制的直流电机网络化控制系统仿真平台,通过仿真分析网络时延对于系统性能的影响。本文首先基于NS2实现NCS的节点,其次在实现节点的基础上进行网络模拟,最后分析实验结果。
网络化控制系统由被控对象、传感器、执行器和控制器组成,被控对象一般为连续系统,控制器则一般为离散系统。被控对象的输出值通过传感器采样离散化并通过网络传递给控制器。控制器计算后将控制律通过网络返还给被控对象。在NS2中将被控对象、传感器、执行器、控制器都抽象为节点表示。将被控对象,传感器、执行器抽象为广义对象节点,又由于控制器节点一般为离散系统,NS2也是基于离散事件驱动,所以将控制器节点放在另一个单独的节点中,这样在NS2中NCS在结构上分为广义对象节点,控制器节点,通信网络三个部分。下面分别给出每个部分的仿真实现方法。
广义对象节点的主要功能是周期性的采样数据,并通过网络将采样数据发送给控制器节点。由于在NS2中并不存在相应功能的节点,因此需要使用C++以及OTCL语言对NS2进行功能扩展,以实现新的节点功能和协议。而实现新的节点功能和协议就是要向NS2中添加新的Agent类。由此定义对象节点的Agent类PLANT数据包头部的主要内容:
在这里定义了时间类SYNTimer,每当定时时间到,数据采集函数就开始采集数据,将数据传递给数据发送函数进行数据发送。sys_1为输出计算函数,由传递函数转化为微分方程后,求解微分方程得到。在本文中所考虑的被控对象为一个直流电机,用二阶微分方程描述为:
其中y为量测的电机输出,u为控制输入,A,B,C为控制器参数。
通过MATLAB求解微分方程,可以得到解为:
y(t0)为上一采样时刻的输出,T为采样周期,这样建立了系统的输出模型。对其他模型可以通过求解其微分方程,将结果作为系统的输出模型。在该Agent实例化后,就可以模拟广义对象节点,周期性发送和接收数据,该周期由定义的时间类函数设置。
该节点的实现与广义对象节点类似。同样在NS2中建立一个新的Agent类CONTROL,为了保证数据的传输,其数据包头部设置与广义对象节点相同。不同之处在于该Agent类中没有定义时间类函数,在接收函数中直接调用发送函数发送数据,其接收函数如下:
控制器节点与广义对象节点不同在于其由事件驱动,每当接收到对象节点发送的数据,就对数据进行处理,处理完成后立刻返还给对象节点。在该节点中打包了PID控制规律。因在工程中无法实现纯微分,本文令微分项为近似微分,微分项为:
同时在接收函数中设置,每当接收到数据时,在屏幕上输出接收到的数据,以验证节点功能扩展成功。
在NS2中通过OTCL程序完成网络环境的模拟。首先建立仅有两个节点的网络环境,测试扩展的广义对象节点和控制器节点。设置两个节点间的带宽为2 Mb,延时为10 ms,队列为DropTail模型,将广义对象节点和控制器节点的Agent类绑定在两个节点上,建立被控对象与控制器之间的链接,其otcl脚本如下:
图1 具有两个节点网络控制系统仿真图
同时在屏幕上输出数据如图2,证实两个节点扩展成功。
图2 系统输出数据图
在此基础上建立具有8个节点网络化控制系统模型。其中0号,1号节点为路由节点,2,3,5,6号节点都为干扰节点。由于网络中的传输协议主要以TCP、UDP为主,所以2号节点到5号节点使用TCP传输,从1 s开始传输。3号到6号节点使用UDP传输,从2 s开始传输,同时在8 s结束。
0号节点和1号节点之间设置不同的带宽分别为1 Mb,0.75 Mb,0.5 Mb,路由节点间的带宽设置为1 Mb以下,因为当路由节点间的带宽在1 Mb以上时,已经满足系统的传输要求,对系统的影响较小,其他节点之间的带宽都设置为1 Mb,延时为10 ms,DropTail队列,模拟仿真在不同的带宽时延下对于系统性能的影响。
具有8个节点的网络控制系统仿真图如图3所示。
图3 具有8个节点的网络控制系统仿真图
系统采样的时间设为0.1 s,其中设置系统的值为4.0,PID控制方法中的比列系数P=1.5,积分系数I=0.13,微分系数D=0.015。仿真时间设为30 s。此时整个网络控制系统可以看成无时延。系统输出曲线如图4所示,从图中可以看出系统很快就能达到稳定,在没有网络时延的情况下,该PID控制器可以保证直流电机控制系统的稳定性。
图4 无时延的系统输出曲线
在该网络环境中改变0号节点和1号节点两个路由节点之间的带宽,分别设置为1.75 Mb,1 Mb,0.75 Mb,0.5 Mb。其时延分布如图5所示,在路由节点之间带宽为1.75 Mb时系统的时延小于采样周期,时延跳变无规律。在1 Mb时系统的时延超过采样周期,时延在0.12 s附近跳动。在0.75 Mb和0.5 Mb时系统的时延出现巨大的震荡,超过采样周期,同时在0.5 Mb时系统的时延成周期性的跳动,在8 s时停止了干扰节点的传输,系统时延降到采样周期以下。
图5 系统在不同带宽下的时延
保持原PID控制器参数不变,图6给出了不同时延下直流电机的阶跃响应曲线。
图6 不同时延下的系统输出曲线
在系统仅有两个节点时系统迅速稳定无超调,当系统的路由节点带宽为1 Mb时系统调节时间增大。在带宽设置为0.75 Mb和0.5 Mb后系统出现较大的震荡,超调量变大,调节时间变长,响应速度变慢。不难发现具有相同节点数的网络模型结构,带宽越大,时延对系统的影响越小;带宽越小,时延对系统的影响越大。
本文讨论了基于NS2的直流电机网络化控制系统仿真平台的建立,利用NS2的网络模拟功能仿真比较了不同时延下系统的性能,仿真实验表明可以充分利用NS2的构件库以及网络协议搭建和扩展网络化控制系统平台,最后展示了不同时延对系统性能的影响,为网络控制系统PID控制参数的整定奠定了基础。
[1]Hespanha J P,Haghshtabrizi P,Xu Y.A survey of recent results in networked control systems[J].Proceedings of the IEEE,2007,95(1):138-162.
[2]Gupta R A,Chow M Y.Networked control system:overview and research trends[J].IEEE Transactions on Industrial Electronics,2010,57(7):2527-2535.
[3]Xia Y,Fu M,Liu G P.Analysis and synthesis of networked control systems[M].Heidelberg:Springer,2011.
[4]Gaid M,Cela A,Hamam Y.Optimal integrated control and scheduling of networked control systems with communication constraints:application to a car suspension system[J].IEEE Transactions on Control Systems Technology,2006,14(4):776-787.
[5]Ma Z P,Cui D G,Cheng P.Dynamic network flow model for short-term air traffic flow management[J].IEEE Transactions on Systems,Man and Cybernetics,Part A:Systems and Humans,2004,34(3):351-358.
[6]Gajate A M,Guerra R E H.Internal model control based on a neurofuzzy system for network applications,a case study on the high-performance drilling process[J].IEEE Transactions on Automation Science and Engineering,2009,6(2):367-372.
[7]Kim Y H,Phong L D,Park W M,et al.Laboratory-level telesurgery with industrial robots and haptic devices communicating via the internet[J].International Journal of Precision Engineering and Manufacturing,2009,10(2):25-29.
[8]Zhang W,Branicky M,Phillips S.Stability of networked control systems[J].IEEE Control Systems Magazine,2001,21(1):84-99.
[9]Baillieul J,Antsaklis P J.Control and communication challenges in networked real-time systems[J].Proceedings of the IEEE,2007,95(1):9-28.
[10]柯志亨,程荣祥,邓德隽.NS2仿真实验——多媒体和无线网络通信[M].北京:电子工业出版社,2009.
[11]于斌,孙斌.NS2与网络模拟[M].北京:人民邮电出版社,2007.
[12]徐雷鸣,庞博,赵耀.NS与网络模拟[M].北京:人民邮电出版社,2003.
[13]刘守盎,向凤红,毛剑琳,等.基于NS-2的网络化控制系统仿真[J].云南大学学报:自然科学版,2009,31(S2):55-58.
[14]谢林柏,王强,纪志成.基于NS-2的网络控制系统仿真研究及实现[J].计算机仿真,2006,23(10):95-99.
[15]王庆凤,陈虹,王萍.基于NS2的网络控制系统仿真平台的设计与实现[J].系统仿真学报,2011,23(2):270-274.