积分控制的鲁棒性(robustness)抗扰能力(disturbance rejection)只在常值扰动和常值参考信号下效果好,而当参考信号与扰动不是一个常值时,我们需要考虑另外一类控制设计方法。这一篇文章介绍线性系统控制设计中的一个基本问题:输出调节问题(Linear Output Regulation),解决这一问题,我们就能设计出能够robustly渐进跟踪(asymptotic tracking)参考信号,并且抑制扰动。

下面几篇文章中的设计方法其实并不是只针对SISO系统的,而是一种同样适用于linear multivaraible system(MIMO)的控制设计。

本篇目录:

1. 线性输出调节问题 Linear Output Regulation

2. 问题基本框架 Basic Framework

3. 静态反馈 Static Feedback


1. 线性输出调节问题 Linear Output Regulation Problem

输出调节问题(Output regulation problem),或者也可以叫做伺服问题(servomechanism problem),是指为一个存在不确定性的系统设计一种反馈控制器,使其针对一类reference inputs和一类disturbances实现该系统的asymptotic tracking和disturbance rejection,同时还要保证整个closed-loop system稳定。

output regulation问题很常见,比如汽车的定速巡航(cruise control of automobiles),飞机起飞与降落(aircraft landing and taking-off),机械臂操作(manipulation of robot arms), 电机速度调节(motor speed regulation),等等。而在控制理论发展的历史中,蒸汽机的阀门调节问题就属于一个典型的output regulation问题,直到20世纪70年代,这个问题才在state-space的框架下形成。[1,preface]

这里需要指出[1][2]中强调的关于output regulation problemtrajectory tracking problem的区别。Output regulation问题面对的reference input与disturbances并不要求是提前精确知道的。它们被归结为由一个外部系统(exosystem)独立产生的外部信号(exogenous signals),exosystem是由一个自治动态方程(autonomous differential equation)决定的。所以output regulation problem涵盖了一大类参考信号渐进跟踪和扰动抑制问题,不再只是像积分控制那样只针对常值信号,从而具有一定的普适性。

Output regulation problem最初的研究是从linear system开始的,在历史上有几个不同的名字,比如:Robust servomechanism problem(Davison) 和 structurally stable output regulation problem(Francis and Wonham). 我们在之后的几篇文章中会看到,output regulation problem的可解性条件(solvability conditions)是非常关键的,只有满足这个条件才能设计出相应的regulator。

我们之后会介绍内模原理(internal model principle, IMP)。IMP告诉我们可以在控制器设计中加入扰动和参考信号的产生模型,使得系统能够抑制和渐进跟踪扰动和参考信号。PID控制器中的积分控制 [公式] ,就是一个特殊的抑制常值扰动的例子。

更多关于nonlinear output regulation的问题,我们以后有机会再讨论。可以参考[1]这本书中的内容。

2. 问题基本框架 Basic Framework

在这篇文章中我们考虑解决asymptotic tracking and disturbance rejection,而把robust留到下一篇文章中。应该说,output regulation problem的内涵实际上既要解决前者,也要解决后者,故而我们的最终目的还是robust output regulation。

我们一步步来说,这里我们先考虑输出的渐进跟踪与扰动抑制问题。为下图中的线性系统设计一个controller,目标是使得系统闭环exponentially stable,输出 [公式] 能够渐进跟踪一个给定的参考输入 [公式] 

[公式]

并且能够抑制外界扰动 [公式] 。其中线性系统的exponentially stable就是指其特征值的实部都是negative的。

Unity feedback control

在这个设定下,我们的目标有两个: asymptotic tracking and disturbance rejection。如果参考信号 [公式] ,那么问题可以被称为 asymptotic regulation problem。写出这个系统的方程:

[公式]

其中 [公式] 。那么扰动 [公式] 会通过两个通道影响动态 [公式] 和传感器输出 [公式] ,传递矩阵已经给处。显然我们可以定义追踪误差:

[公式]

解决上述问题的一般形式控制器是由一组动态方程决定的,实际上是一种dynamic output feedback:

[公式]

实际中的参考信号或者扰动可能并不是被精确已知的,即我们清楚的知道其过去,现在以及将来。比如正弦信号的幅值,相位,频率都可能存在变化,常值信号和阶跃信号的幅值都会有所不同。我们希望上述控制器能够handle这些潜在的变化,即能够把某一类reference inputs和disturbances都考虑进去。于是我们考虑ref和disturbances由下面的线性自治微分方程(linear autonomous differential equations)确定,初值任意选取:

[公式]

(5)可以描述一大类函数,比如step function,ramp function,sinusoidal functions等等。令 [公式],我们把(5)改写成:[公式]

[公式]

其中 [公式] 。根据(6)把(2)(3)改写成:

[公式]

其中是矩阵 [公式] 定义为:[公式]

我们得到了(8)之后,原系统(2)的渐进跟踪和扰动抑制问题,就变了(8)的输出调节问题,如果我们把 [公式] 当作(8)的输出的话。这就是为什么称之为output regulation problem的原因。我们称(6)为exosystem,它产生的exogenous signals就是 [公式]  [公式] 

3. 静态反馈 Static Feedback

3.1 反馈控制律设计

把exosystem和(8)结合到一起,我们构成了一个复合系统(composite system):

[公式]

前两个方程是状态动态方程,而最后一个则是输出。这里我们用 [公式] 提醒我们这是error,当然你也可以用其他字母。现在我们的设计控制器的目标系统就是(8)了。

我们考虑用static feedback control law来使得(8)闭环稳定,并且输出 [公式] 渐进稳定到0:

[公式]

其中 [公式] 注意当 [公式] 不再是单输入时,增益 [公式] 将都会是多行矩阵,而不是一个行向量。将(11)代入(10)得到闭环系统为:

[公式]

我们简化符号,写成:

[公式]

产生ref signal和disturbance的exosystem是 [公式] 

我们的目标是闭环系统(12)能够稳定,并且:

[公式]

。这里我们做出两个假设: [公式] stabilizable,以及 [公式] 的特征值实部都在右半复平面。其中 [公式] 的特征值实部假设只是为了满足一般情况,实际上没有特别要求。exosystem自己是不是稳定的不要求,我们只关心闭环系统(12)最终是否稳定。

下面这个定理告诉了我们(13)成立的充分条件:

存在唯一的解 [公式] 满足下列方程: [公式]

(14)的第一个方程是Sylvestor equation,其存在唯一解,如果 [公式] 没有相同的特征值。根据假设,我们希望闭环系统稳定,而exosystem是不稳定的,所以唯一解自然是能够保证。但是如果exosystem是稳定的,我们要保证它们没有相同的特征值才能满足唯一性。

证明:我们利用(14)得到 [公式] 。令 [公式] ,得到

[公式]

如果(14)成立,根据(14)的第二个方程, [公式] 是Hurwitz的,则显然能得到[公式] ,从而从(15)的第二个方程中满足 [公式] 。那么(13)成立,output regulation problem得解。如果exosystem是不稳定的, [公式] 会发散,那么反过来,(15)中 [公式] 成立,意味着 [公式] 。所以(14)此时也成为了必要条件。但这里我就只讲其为充分条件了。

可以看出来,闭环系统(12)的稳定与否是与feedback增益 [公式] 有关的,而最终误差是否渐进为0是与 [公式] 以及feedforward增益 [公式] 都有关系的。显然套用定理(14)的公式,只要选择合适的 [公式] 使得闭环系统稳定,并且选择 [公式] 使得:

[公式]

有唯一解 [公式] ,那么output regulation problem就得到了解决。方程(16)描述了可解性条件(solvability condition)。

3.2 计算feedback gain与feedforward gain

问题就变得简单了,只要找一个 [公式] 稳定系统,保证 [公式] 有唯一解。通过(16)解出 [公式] 就可以了。不过这样子做并不是十分方便,因为每次改动 [公式] 都会要重新求解(16)。我们通过一点简单的线性变换,把(16)中的 [公式] 变成 [公式] 

[公式]

这样把(16)转换为:

[公式]

(18) 被称为regulator equations,它完全由 [公式] 这6个矩阵决定。所以我们就不需要每次都解一遍(16),而只要根据(17)获得最终的 [公式]  [公式] 即可。注意到 [公式] 

所以我们得到一个结论:选择了 [公式] 使得闭环系统(12)稳定,那么原系统(10)的linear output regulation problem可以由静态反馈控制律

[公式]

根据(17)(18)确定其中的:

[公式]

根据(15),或者把(16)代入到(12)中,我们就能得到,闭环系统稳定时稳态:

[公式]

此时的控制输入根据(11)得到:

[公式]

因此闭环系统的稳态轨迹完全由 [公式] 和regulator equation的解 [公式] 确定。

3.3 regulator equation的可解判定条件

一个比较简单的可解判据是[1,Theorem1.9]:

对于(18)中任意矩阵E,F,(18)有唯一解的充分必要条件是, [公式] 的任一特征值 [公式] 都满足:
[公式]

也就是说, [公式]  [公式] 不能有共同的特征值。该矩阵必须保证满秩,证明见[1,p9-10]。由于所有让:

[公式]

 [公式] 都是原系统的transmission zeros(我们之前讲过零点的计算公式),所以这个判据就可以归纳为:plant的transmission zeros与exosystem的特征值不能相同,称之为transmission zeros condition。

显然如果系统是minimum phase system,最小相位系统的开环零点都在LHP,那么在假设exosystem的特征值实部均在RHP时,是一定能够判定(18)有解,即Linear output regulation是可解的(solvable)。

在上面的分析中,我们假设系统的状态 [公式] 与exosystem的信号 [公式] 都是可以用于feedback control law设计的。这往往个“奢侈”的要求,我们在下一篇里讲使用dynamic output feedback control law来解决linear output regulation problem。

同时我们也应该注意到,上述regulator equation完全受制于 [公式] 如果它们的参数发生变化,解的结果也将发生变化。此时的static feedback还能不能使得输出误差渐进为0,下面的文章会解答。

参考文献 Reference

[1] Huang, J. (2004).Nonlinear output regulation: theory and applications .Siam.

[2] Byrnes, C. I., & Isidori, A. (2000). Output regulation for nonlinear systems: an overview.International Journal of Robust and Nonlinear Control: IFAC‐Affiliated Journal,10(5), 323-337.