摘 要:介绍了网络控制系统的基本概念,利用Matlab建立了一个网络控制系统仿真平台,实现了对网络控制系统的实时仿真,并重点对控制器的算法进行了研究,给出了模糊PID控制器与PID控制器的仿真结果对比。结果证明,模糊PID可以很好地应用于网络控制。
关键词:网络控制系统;仿真平台;模糊控制
网络控制系统NCS(Networked Control System)是一种完全网络化、分布化的控制系统,是通过网络构成闭环的反馈控制系统。具体来说,网络控制系统以网络作为传输介质,实现传感器、控制器和执行器等系统各部件之间的信息交换,从而实现资源共享、远程监测与控制。
网络控制系统一般由三部分组成:控制器、被控对象以及通信网络。被控对象一般为连续系统,而控制器通常采用离散系统。被控对象的输出通道传感器采样的方式离散化,并通过通信网络发送到控制器的输入端。控制器进行运算后,将输出通过网络发送到被控对象的输入端,并由零阶保持器生成分段连续函数作为连续系统的输入。
利用由瑞典Lund工学院的Dan Henriksson和Anton Cervin等学者开发的、一种基于Matlab的、实时控制与网络控制仿真工具箱TrueTime[1],能够同时支持控制与实时调度,可以对网络时延、网络参数的系统性能的影响、控制方法和网络调度等多方面进行综合仿真研究,推进网络控制算法改进。
1 网络控制系统建模
与传统控制系统相比,网络控制系统会更多地受到网络环境的影响,如网络延迟、数据丢包、错序及单包与多包传输等,这些都将直接影响闭环系统的性能。对于一个被控对象,当采用不同类型网络环境时,所导致的网络控制系统的数学模型描述也将有所不同。在闭环系统中引入网络后,被控对象有了扩展,包含了直接控制对象及通信网络的广义被控对象。
网络控制系统仿真是将传统控制模型与网络结合的过程,其所依据的基本控制模型是常见的闭环控制系统,由控制器(比较环节、放大装置、校正装置)、执行机构、传感检测环节、被控对象等组成,接入网络后各器件通过网络相连接,其系统结构如图1所示。
使用TrueTime进行仿真时,控制器节点、执行器节点等均通过网络模块相连接,而不再采用传统连接模式,在TrueTime环境下建立的系统仿真平台如图2所示[2]。
其中,节点1为干扰节点,节点2为执行器节点,节点3为传感器节点,节点4为控制器节点。其中,传感器节点周期地进行采样,采样值通过网络发送给控制器节点;控制器节点接收到采样数据后,立即进行控制计算,并将计算得到的控制信号通过网络发送给执行器节点。
网络控制系统中的传感器、控制器和执行器节点由实时内核模块实现,该模块最重要的参数就是初始化文件的名称。在初始化中需要完成以下工作:
(1)初始化功能模块内核,设置功能模块输入、输出端口的数目和调度的策略。
(2)定义任务函数,并根据节点采用的驱动方式设置不同的任务调度策略。
(3)初始化网络端口,设置节点对应的网络端口代号。
2模糊控制在网络控制中的应用
在刘喜梅[3]等人的论文中曾证明,传统PID控制可以用于网络控制中,但考虑实际仿真过程中,时延网络控制系统的补偿手段主要采用传统的控制理论,且假定的理想化条件较多,如假设单包传送、通信无误等,因此应用于实际的控制网络时,控制效果难以预期。本文将模糊逻辑补偿算法引入传统PID控制器的设计中,以消除闭环网络控制系统中由时延引起的控制性能下降、系统不稳定等不利影响。在模糊PID时延补偿算法中,无需更改传统PID控制器的设计,以模糊补偿器调制PID控制器的输出,实现模糊逻辑条件参数与结论参数的整定。模糊调制器充分利用了模糊控制理论规则少、应用简单灵活的特点,在保持系统稳定性的同时,有效削弱了控制系统中由不确定性时延造成的脉动与振荡。在改善远程网络控制系统的动、静态性能方面表现出了较传统PID控制更强的功能特性。
仿真中的控制方法采用自适应模糊PID控制,自适应模糊PID控制器以误差e和误差变化率ec作为输入(利用模糊控制规则在线对PID参数进行修改),以满足不同时刻的e和ec对PID参数自整定的要求。自适应模糊PID控制器结构如图3所示[4]。
3 仿真实验及其结果
在网络控制系统中假定:
(1)传感器为时钟驱动,即系统部件按照事先规定的时间间隔对控制对象进行采样。
(2)控制器和执行器为事件驱动,即系统部件在特定的事件发生时,部件才开始处理相应的任务。
(3)控制系统通信网络选择CAN网络,不考虑数据包时序错乱问题(假定在网络中存在数据包的时序错乱,网络可自行解决该问题)。
(4)调度采用prioFP(固定优先级)策略,数据速率为1 000 000 b/s,网络节点数为4个。
(5)基于对网络的分析和建模抽象出网络时延模型。控制系统的采样周期设置为0.01 s,传感器到控制器的预计时延为0.002 s,控制计算时间预计为0.001 s,控制器到执行器的预计时延为0.002 s,这样,系统闭环预计时延为0.005 s。
(6)在实际网络控制系统的真实情况下,测量网络丢包率,系统丢包率参照实际网络传输情况设置为固定值3%。
网络系统参数如上设置完成后,为使得PID控制算法与模糊PID算法的对比更为清晰,被控对象选择四阶系统模型进行仿真,设定初始比例增益KP=150,初始积分增益KI=87,初始微分增益KD=17,对控制器节点设定不同任务代码,启动仿真即可分别得到常规PID控制与模糊PID控制下的阶跃响应仿真曲线。由于系统被控对象阶次高,调节时间长,为获得更加明显的对比效果,截取第一秒的图像如图4所示。
基于阶跃响应仿真曲线可以看出,在常规PID的控制作用下,系统阶跃响应超调量约为127%;在模糊PID的控制作用下,系统阶跃响应超调量约为123%。模糊PID控制下的系统超调量相比较常规PID控制得到明显改善,同时,模糊PID控制作用下调节时间等控制参数方面也略有提升,可见模糊PID控制算法适应于网络控制系统,对于实际网络系统的控制性能改善具有重要意义。
参考文献
[1] HENRIKSSON D, CERVIN A. Truetime 1.5-reference manual[R]. Department of Automatic Control, Lund University, Sweden,2007.
[2] 何坚强,张焕春.基于Matlab环境的网络控制系统仿真平台[J].计算机工程与应用,2005,2(1):142-145.
[3] 刘喜梅,魏婉韵,于洁.基于TrueTime的网络控制系统实时仿真[J].微计算机信息,2007,23(12):209-210.
[4] 袁凤莲.Fuzzy自整定PID控制器设计及其Matlab仿真[J].沈阳航空工业学院学报,2006,23(1):71-75.
[5] 黄赞,陈伟文.模糊自整定PID控制器设计及其Matlab仿真[J].控制与检测,2006(2):50-54.