前言
前面一篇博客介绍了基于状态空间模型的系统分析。本篇博客将针对线性时不变系统,基于状态空间模型并根据系统的性能要求来设计控制系统。
一个系统的控制方式有开环控制和闭环控制。开环控制指的是把一个确定的控制信号(关于时间的函数)加到系统的输入端,使得系统具有某种期望的性能,如稳定的跟踪某个参考输入或者使系统的状态达到某个特定值,等等。上一篇博客讲的系统的能控性就是利用了开环控制,即存在一个特定的控制作用(开环控制)使得系统在有限时间内,从初始状态转移到零状态。
然而,由于建模存在的不确定性或误差、系统运行过程中的扰动等因素,使得我们没办法获得实际物理系统的真实动态方程,我们能得到的仅仅是粗略的低阶的名义模型或有时又称标称模型。因此在对实际系统的控制过程中,若不能根据系统当前的运行状况及时修改系统的行为,而仍按照名义模型设计的开环控制作用会使得实际系统产生一些意想不到的情况,很难使实际物理系统按我们原先所期望的方式运行。因此,我们必须根据系统的运行状况实时地来确定控制信号而不是采用预先设计好的控制信号,这就是反馈控制(feedback control)。
在经典控制理论中,我们依据描述对象输入输出行为的传递函数模型来设计控制器,因此只能用系统的可测量输出作为反馈信号。而现代控制理论则是用刻画系统内部特征的状态空间模型来描述对象,出了可测量的输出信号外,还可以用系统的内部状态来作为反馈信号。根据可利用的信息是系统的输出还是状态,相应的反馈控制可分为输出反馈和状态反馈。
本篇博客以状态空间模型描述的线性时不变系统为研究对象,介绍状态反馈控制器的一些设计方法。首先介绍反馈控制的种类、结构及其对系统性能的影响。进而介绍改善系统动态性能的极点配置方法,提出极点配置状态反馈控制律的设计算法。针对极点配置方法可能影响系统稳态性能的问题,介绍了实现精确跟踪的控制系统设计方法。
线性反馈控制系统
控制系统结构
控制系统由被控对象和控制器(controller)两部分组成。状态刻画了对象内部的全部动态信息,输出仅仅是状态的一部分,从而用系统的全部状态信息来构造反馈控制器,渴望使系统获得更优异的性能。然而,要获得系统的全部状态信息,意味着需要更多的传感器,从而增加了控制系统的成本。另一方面,一个系统的状态变量未必都是可测量的物理量,这使得状态反馈控制在实际中往往难以实现。因此,在实际控制系统应用中,究竟采用输出反馈还是状态反馈视具体情况而定。
我们考虑以下状态空间描述的线性系统:
其中,是系统的维状态空间,是系统的维控制输入,是系统的维测量输出,和分别是适当维数的已知常数矩阵。
一般的反馈控制系统具有以下所示结构:
其中,是维的外部参考输入。控制器可以是一个动态补偿器(例如在控制器中包含动态过程),也可以是一个静态反馈控制器。控制器的输入可以是系统的状态,也可以是系统输出。若系统的状态是可直接测量得到的,则结构最简单、包含对象信息量最多的反馈控制方式是线性时不变的静态状态反馈控制(简称状态反馈)。
其中,为维的静态常数矩阵,称为状态反馈增益矩阵。将上式代入状态空间模型,可得闭环系统的状态空间模型:
输出反馈控制在这里就不展开了,处理方式和状态反馈控制类似,,只是反馈信息在这里采用系统输出。
反馈控制的一些性质
从闭环系统的状态空间模型可以看出:状态反馈和输出反馈均改变了闭环系统的状态矩阵,即系统由原来的变为了现在的或。而闭环系统的动态行为主要由其状态矩阵的特征值(即闭环极点)决定,因此可以通过选择适当的反馈增益矩阵和,使得闭环系统状态矩阵的特征值都在左半开复平面内,从而保证闭环系统的渐进稳定性。更进一步,还可以使得闭环状态矩阵特征值位于左半开复平面的特殊位置上,从而不仅保证系统是渐近稳定的,而且还具有一定的过渡过程特性。
除了能改变闭环系统的状态矩阵,从而改变闭环系统的稳定性和瞬态特性外,状态反馈控制对系统性能还有什么其他的影响呢?给出以下两个定理进行说明。
定理1:状态反馈不改变被控系统的能控性,而系统的能观性不一定能保证。
若原系统是能控的,则加入状态反馈控制后的闭环系统仍然是能控的。需要注意的是,原系统如果是能观的,但采用状态反馈控制后得到的闭环系统却不一定能观,因此状态反馈并不能保持原系统的能观性。这是因为状态反馈在改变系统极点的同时,可能使得闭环系统出现零极点相消现象。零极相消导致系统的能控性或能观性,或能控能观性的破坏,由于闭环系统仍然能控,故它不再可能是能观的。
定理2:输出反馈不改变系统的能控性和能观性。
两种反馈性质的讨论
在状态反馈和输出反馈中,反馈的引入并没有增加新的系统变量,即闭环系统和开环系统具有相同的阶数。
两种反馈形式所导致的闭环系统均能保持开环系统的能控性,但能观性则不然。具体的说,状态反馈未必能保持能观性(当出现零极相消),而输出反馈既能保持系统的能控性,也能保持系统的能观性。
-
采用状态反馈的一个前提是系统的状态必须可以直接量测的。当状态不能直接量测时,需要设法通过系统的输入输出信息来重构系统的状态,即由状态观测器来获得状态的估计量,以实现状态反馈。然而,这种基于观测器的状态反馈由于采用的仅是系统的输出信息,因而,本质上还是一种输出反馈,只不过这是一种带有动态补偿器的输出反馈,而不再是静态的输出反馈。更加一般的带有动态补偿器的输出反馈控制系统具有以下所示结构:
其中,是被控系统的传递函数矩阵,是动态补偿器的传递函数矩阵。静态的输出反馈虽然结构简单,信息上的获取也没有任何困难,但可以证明:这种形式的输出反馈所能达到的系统性能是有限的,有时甚至都不能保证闭环系统稳定。
- 输出反馈的一个突出优点就是实现方便,但状态反馈能获得更好的系统性能。而且随着观测器理论的发展,状态反馈具有更广的应用前景。
稳定化状态反馈控制器设计
稳定是一个系统正常运行的首要条件。上一篇博客分析了一个系统的稳定性,并给出了系统稳定的李雅普诺夫判别方法。若一个系统不稳定,则必须运用外部控制手段来设法让其稳定,这就是系统的镇定问题(stabilization),使得系统稳定的控制器称为稳定化控制器(stabilizing controllers)。
控制手段往往采用反馈控制。上一节介绍了反馈控制系统的结构,其中最简单,包含对象信息最多的控制结构就是静态线性状态反馈控制。本节将介绍基于李雅普诺夫稳定性理论的稳定化状态反馈控制器设计方法。
考虑以下状态方程描述的系统:
我们的目标是要设计一个能使系统状态稳定的稳定化状态反馈控制器:
由该控制器导出的闭环系统:
本节的目的是要给出确定增益矩阵的方法,使得闭环系统是渐近稳定的。由于闭环系统是一个线性时不变系统,根据李雅普诺夫稳定性定理,系统渐近稳定的充分必要条件是存在一个二次型的李雅普诺夫函数,其中的是特定的对称正定矩阵。可以通过沿着闭环系统的任意轨迹,使得标量二次型李雅普诺夫函数关于时间的导数是负定的来确定对称正定矩阵和增益矩阵,从而得到所要的稳定化状态反馈控制器。沿这一思路,介绍两种处理方法来确定对称正定矩阵和增益矩阵。
黎卡提方程处理方法
这种方法可用来处理非线性系统、时滞系统等各类系统的镇定问题,也可用于鲁棒控制器的设计。
考虑标量函数,其中是待定的对称正定阵。沿闭环系统的任意轨迹,关于时间的导数为:
由,可得
故
我们选取控制具有以下结构形式:
则
进一步,若选取正定对称矩阵使得
即,李雅普诺夫函数关于时间的导数小于零(表明随着时间的增加能量是不断衰减的)。根据李雅普诺夫稳定性定理,标量二次型函数是闭环系统的一个李雅普诺夫能量函数。因此,该闭环系统是渐近稳定的。式就是原系统的一个稳定化状态反馈控制器。
根据以上分析,稳定化控制器的设计问题就转化为了矩阵方程:
是否存在一个对称正定解矩阵(李雅普诺夫矩阵)的问题。若存在这样的,那么即可得到一个稳定化控制器增益矩阵。而该矩阵方程被称为系统的黎卡提(Riccati)矩阵方程,这类矩阵方程在自动控制中起着很重要的作用,在最优控制中还将遇到这类方程(李雅普诺夫函数就是最优控制中的值函数)。这种基于求解黎卡提矩阵方程的稳定化控制器设计方法称为黎卡提方程处理方法。
若对给定的,黎卡提矩阵方程有一个对称正定解矩阵,则对任意的,
因此,对任意的,都是系统的稳定化控制律。由此可知,稳定化控制律具有正无穷大的稳定增益裕度(margin)。这在实际应用中将非常有用,当我们不知道精确的时,我们尽量选择具有较高增益的控制律,使得实际控制系统在保持稳定的同时能够满足其他性能要求。
线性矩阵不等式处理方法
根据线性时不变系统李雅普诺夫稳定性定理,闭环系统渐近稳定的充分必要条件是存在一个对称正定矩阵,使得:
因此,稳定化控制器的设计问题归结为寻找一个矩阵和一个对称正定矩阵,使得上述矩阵不等式成立,即以矩阵和为变量的矩阵不等式的求解问题。
在上述矩阵不等式中,矩阵变量和以非线性的形式耦合在一起。因此,要直接求解这样一个矩阵不等式是不容易的。以下通过引进一个适当的变量替换,将非线性矩阵不等式转换成一个等价的关于新变量的线性矩阵不等式,从而可以应用求解线性矩阵不等式的方法求解所导出的线性矩阵不等式。首先将矩阵不等式整理为:
由于矩阵是对称的,故在上式两边分别左乘和右乘矩阵,可得:
记,,则从上式进一步可得:
显然,上述不等式是一个关于矩阵变量和的线性矩阵不等式。由于矩阵的正定性等价于矩阵是正定的。因此,若线性矩阵不等式系统
是可行的,则系统存在稳定化控制器。进一步,若矩阵变量和是线性矩阵不等式系统的一个可行解,则是系统的一个稳定化状态反馈增益矩阵,是相应闭环系统的一个李雅普诺夫矩阵。
以上用线性矩阵不等式系统的可行性给出了系统的稳定化状态反馈控制器存在条件,在线性矩阵不等式系统可行的情况下,用其可行解给出了稳定化控制器的构造方法。这种处理方法已在各类控制系统的设计中得到了广泛应用,和黎卡提方程处理方法相比,线性矩阵不等式处理方法具有保守性低、处理方便、易于结合其他性能要求设计多目标控制器等优点。
极点配置
上一节介绍了基于李雅普诺夫稳定性理论设计稳定化状态反馈控制器的两种方法。然而,在实际控制系统设计中,仅仅保证闭环系统的稳定性还是不够的,通常还需要使得闭环系统具有一定的过渡过程性能,如较快的响应速度,较短的调节时间,较小的超调,等等。如何设计一个状态反馈控制器,使得闭环系统同时具有期望的稳态和动态性能,本节给出了一种极点配置的方法(需要注意的是不单单只有极点配置这一种方法,还有其他设计方法也能满足兼具稳态和动态性能要求,比如最优控制)。
极点配置的主要思路就是通过寻找适当的状态反馈增益矩阵,使得闭环系统极点(即矩阵的特征值)位于预先给定的位置。极点配置具体设计方法在这里不再赘述,这里只给出一个定理。
定理:若系统是能控的,则对任意给定闭环极点,存在状态反馈控制器,使得闭环系统的极点是
由于求解一个极点配置问题需要大量的计算,特别对于多变量系统更是如此,另一方面,描述对象的模型总是近似和不精确的,从而要实现精确极点配置的方法是难以实现的。在实际控制系统应用中,我们往往还需采用其他更简便、有效的设计方法。
通过以上的分析,理论上我们可用状态反馈的方式实现了闭环系统的极点配置,从而使得闭环系统具有满意的稳态和动态性能。然而,实际应用中,状态反馈这种方法并非总是可行的。一方面,状态反馈实际上是一个或补偿器,这样的控制器具有无限带宽,而实际的执行机构总是只有有限带宽(对超过带宽频率范围的信号是没办法响应的)。另一方面,在实际中,要检测到所有的状态往往是困难的,甚至是不可能的,因此有必要研究只利用系统测量输出的极点配置问题,以后的博客将给出一种基于状态观测器的输出反馈控制器设计方法。
如果系统有多个输入,则使得闭环系统具有给定极点的状态反馈增益矩阵是不唯一的,从而有更多的自由度去选择满足闭环极点要求的。如何利用这些自由度,使得闭环系统具有给定的极点外,还具有一些其他附加性能是需要进一步探讨的问题,这就是多目标控制。一种方法就是在使得闭环系统具有给定极点的同时,闭环系统的稳定裕度最大化(Margin Maximization),基于这种思想进行的极点配置称为是鲁棒极点配置方法。
跟踪控制器设计
通过重新配置闭环系统极点,尽管改善了闭环系统的稳定性和动态特性,但有可能使得闭环系统产生稳态误差(稳态误差在这指的是系统的稳态输出与参考输入之间的偏差),导致系统的稳态性能变差。或者说极点配置方法可能会使一个原来没有稳态误差的系统产生稳态误差。那么是否存在一种方法使得改善系统动态特性的同时保证系统的稳态性能不变坏呢(保证系统输出与参考输出无静差)?
另一方面,实际系统还不可避免地存在外部扰动。外部扰动信号可分为随机性的高频扰动和确定性扰动两大类。随机性扰动具有随机噪声特性,通常只知道它的一些统计特性,如均值和方差等。确定性扰动具有确定的函数形式,如阶跃函数、斜坡函数、正弦函数等。在实际中,许多系统都存在确定性的扰动,如阵风对雷达系统的扰动,海浪对正常航行的船体控制系统的扰动,飞行系统在大气中受到气浪的扰动等。这些扰动都具有确定的函数表达式,可以通过动力学分析或辨识学习的手段来确定函数关系式中未知的参数。
在这里我们只讨论确定性扰动。扰动的存在使得系统在稳态时不能很好地跟踪参考输入,从而产生稳态误差。因此,必须对扰动进行补偿,以克服扰动对系统稳态性能的影响(扰动影响稳态精度)。
注:对于一个稳定的系统,从李雅普诺夫稳定性理论的角度来看,该系统在扰动的输入下,系统的能量必然会随着时间推移而衰减(只要外界不持续的输入能量包括参考输入和扰动)。也就是说只要干扰是有界的(或有界输入),就不会对系统的稳定性造成影响,影响的仅仅是稳态误差。系统的稳定性是自治系统的性质,与输入无关;输入会影响系统状态的稳态值。
在诸如数控机床、导弹制导等许多实际控制系统中,常常要求闭环系统的输出以给定的精度跟踪参考输入信号,实现精确的跟踪控制。然而以上分析又说明了极点配置状态反馈和外部扰动都可能影响系统输出跟踪参考输入的效果。那么该如何设计使得闭环系统不仅具有期望的过渡过程特性,而且在扰动的作用下,还能实现精确(稳态精度)的跟踪控制?
接下来将针对具有外部阶跃扰动的线性时不变系统,提出一种能实现无静差跟踪阶跃参考输入信号的抗干扰渐近跟踪调节器设计方法。考虑以下状态空间模型描述的系统:
其中,是维的扰动输入,是维系统量测输出。假定系统的参考输入是阶跃输入,是阶跃扰动,其中的和是阶跃信号的幅值向量。控制作用的目的是在存在扰动的情况下,仍希望闭环系统的输出能很好地跟踪参考输入。
在经典控制理论中,用偏差的积分来抑制或消除单输入单输出系统的稳态误差,这样一种思想也可以推广到多输入多输出系统。为此,定义偏差向量:
引入偏差向量的积分:
注意到和输出向量具有相同的维数,因此它由个积分组成,每个积分器的输入是偏差向量的一个分量(或者说是一维坐标值):
由于在控制回路中增加了个积分器,因此增加了整个系统的动态特性,而是这些积分器的输出,故可以通过将作为附加状态向量(经积分累加后输出的量是不可以突变的,是关于时间的动态量,因此可以作为系统扩张状态),得到描述整个系统动态行为的状态空间模型:
新的状态向量空间是维的,称上述状态空间模型为增广系统的状态空间模型。
对上述增广系统,若能设计一个状态反馈控制器:
使得闭环系统:
是渐近稳定的,即闭环系统状态矩阵:
的所有特征值均在左半开复平面中,从而该矩阵也是非奇异的。由于参考输入和外部扰动都是阶跃信号。因此当时间趋向于无穷时,和都趋向于常值向量,这表明和都必将趋于零。又因为,故当趋于无穷时,从而实现精确的跟踪控制。
以上分析说明了只要对上述增广系统设计一个稳定化状态反馈控制器,就可以保证系统的输出跟踪阶跃参考输入且没有稳态误差。我们的做法是通过人为引入一个新的状态向量(对误差信号的积分)来克服阶跃扰动对系统输出带来的影响(从增广系统的状态空间模型中可以很清楚的看到是如何克服扰动影响的)。进一步,我们还可以通过状态变量的稳态值估计出系统的干扰。
如果还要使得闭环系统具有一定的动态特性(比如缩短调节时间),则可以通过适当配置增广系统的闭环极点来实现,但这要求增广系统是完全能控的。下面给出一个定理:
定理:增广系统能控的充分必要条件为:(1)原系统是能控的;(2),,。
定理说明,表明控制输入的个数不能小于输出的个数,而则意味着所有的测量输出必须是线性无关或者说是独立的。
增广系统的状态反馈控制器可以写为:
上式中的第一项是原系统的状态反馈,而第二项是为了改善稳态精度而加入的积分控制作用。因此,这是一个由被控对象的状态反馈和偏差向量的积分所组成的复合控制,相当于一个比例积分控制器。这样一个反馈控制系统的结构如下图所示:
由以上分析可知,对于一个多变量系统,尽管有一个未知(不能测量)的阶跃扰动输入,但仍可以设计一个控制器,使得闭环系统的输出能无静差地跟踪阶跃参考输入。一般情况下,引入积分器会使闭环增广系统响应变慢(因为增广后的系统又增加了动态环节)。类似于经典控制理论中通过加大反馈增益来加快系统响应速度的方法,对由状态空间模型描述的多变量系统,可根据闭环系统的过渡过程要求按极点配置方法来确定状态反馈增益矩阵。
若参考输入是一个包含的多项式,则可以通过增加积分器的方法来处理。对能直接测量(或能够被估计)的外部扰动,可采用前馈控制的方式进行补偿。