线性二次型最优控制
基本内容
线性二次型最优控制也称线性二次型调节器(Linear Quadratic Regulator,LQR),是应用线性二次型最优控制原理设计的控制器。它的作用是当系统状态因为某种原因导致偏离了平衡点,在不消耗多余能量的情况下,使系统状态仍然保持在平衡点附近。线性二次型最优控制的控制对象是具有线性或可线性化的特点,并且性能指标是状态变量和控制变量的二次型函数的积分。典型的LQR调节器结构如下图所示。
设计过程
设线性系统的状态空间描述为:
{
x
˙
(
t
)
=
A
x
(
t
)
+
B
u
(
t
)
y
=
C
x
(
t
)
\begin{cases} \dot{x}(t) & = Ax(t) +Bu(t) \\[2ex] y & = Cx(t) \end{cases}
⎩
⎨
⎧x˙(t)y=Ax(t)+Bu(t)=Cx(t)
最优控制的关键是如何求得一组反馈控制序列u,在时间段[t0, ∞)内,该控制序列作为控制系统的输入,可以将控制系统由非平衡状态调节到零点(平衡状态)附近,同时能够使性能指标函数的值最小。性能指标函数表示为J,则
J
=
1
2
∫
−
∞
+
∞
(
x
T
Q
x
+
u
T
R
u
)
d
t
J = \frac{1}{2} \int_{-\infty}^{+\infty}(x^TQx + u^TRu)dt
J=21∫−∞+∞(xTQx+uTRu)dt
式中,u不受限制,Q是半正定对称加权常数矩阵,R是正定对称加权常数矩阵。一般来说,Q越大,系统达到稳态的时间越短,当然还要实际系统允许,最优控制律为
u
∗
=
−
R
−
1
B
T
P
x
u^* = -R^{-1}B^TPx
u∗=−R−1BTPx
式中,P为正定对称常数矩阵,并且满足下列Riccati方程:
P
A
+
A
T
P
−
P
B
R
−
1
B
T
+
Q
=
0
PA + A^TP -PBR^{-1}B^T + Q = 0
PA+ATP−PBR−1BT+Q=0
利用Matlab求解工具lqr(A,B,Q,R)函数,可以求出最有反馈系数矩阵K,并通过改变Q、R矩阵,可以算出不同的K矩阵以及系统性能指标。
模糊控制
基本内容
模糊控制器(Fuzzy Controller,FC)也被称为模糊逻辑控制器(Fuzzy Logic Controller,FLC)。模糊控制器使用的模糊控制规则,是由模糊集合论中的模糊条件语句来构成的。因此,模糊控制器属于与言行控制器,故常被称为模糊语言控制器(Fuzzy Language Controller,FLC)。模糊控制系统的核心是模糊控制器,模糊控制系统性能的优劣取决于模糊控制器的结构、模糊规则、合成推理算法和模糊决策方法等因素。模糊控制器的一般结构如下图所示,包括系统输入、模糊化、数据库、规则库、模糊推理、清晰化以及系统输出其部分组成。
环节处理
模糊化环节的作用是将系统中的所有精确量(包括系统的外界参考输入、系统输出和系统状态等)转化为模糊量,使其变成符合模糊控制器要求的输入,然后进行尺度变换,把其变换到各自的论域范围内,再进行模糊化处理,使原来精确的输入量变为模糊量,并用相应的模糊集合来表示。需要注意的是,有时需要将模糊化部分是为模糊控制器的外部部分。
数据库和规则库环节包含控制系统具体应用过程中的知识和控制要求,通常由专家数据库和模糊控制规则库组成。其中,专家数据库包括了变量的隶属函数、尺度变换因子和模糊空间的分级数等;模糊规则库包括用模糊变量表示的一系列控制规则,能够反映出控制专家的经验和知识。
模糊推理环节是模糊控制器的重要组成部分,能够模拟人基于模糊概念的推理过程,其推理过程基于模糊逻辑中的蕴含关系和推理规则。
清晰化环节的作用是将模糊推理过程所得的控制量转换为用于控制的清晰量,其包含了两个过程:
1. 将模糊控制量经清晰化处理,先变换为表示在其论域范围内的清晰量;
2. 将第一步得到的清晰量经过尺度变换,转换成实际的控制量
自适应控制
基本内容
自适应控制系统需要不断地测量系统本身的状态、性能、参数,并对系统当前数据和期望数据进行比较,再做出改变控制器结构、参数或控制方法等的最优决策。系统不断地测量输入和扰动,与参考输入对比,根据需要不断地调节自适应结构,既要保证系统输出满足要求,还要保证系统的稳定。
设计过程
设可控系统的受控对象数学模型为:
{
x
˙
p
=
A
p
x
p
+
B
p
u
p
y
p
=
C
x
p
\begin{cases} \dot{x}_p & = A_px_p + B_pu_p \\[2ex] y_p & = Cx_p \end{cases}
⎩
⎨
⎧x˙pyp=Apxp+Bpup=Cxp
其中,xp为状态向量,yp为输出向量,Ap、Bp、C分别是有相同维数的系数矩阵。选定参考模型时,通常使其具有与被控对象相同的结构形式,而它的参数就可以根据系统设计要求来确定,参考模型可表示为:
{
x
˙
m
=
A
m
x
m
+
B
m
r
m
y
m
=
C
x
m
(1)
\begin{cases} \dot{x}_m & = A_mx_m + B_mr_m \\[2ex] y_m & = Cx_m \tag{1} \end{cases}
⎩
⎨
⎧x˙mym=Amxm+Bmrm=Cxm(1)
其中,xm为参考模型的状态向量,ym为参考模型的输出向量,rm为参考模型的输入向量,Am、Bm分别是有相同维数的表示期望性能的系数矩阵。系统的广义输出误差方程为:
ξ
=
y
m
−
y
p
\xi = y_m - y_p
ξ=ym−yp
其中,ym为模型的输出量,yp为可调系统的输出量。系统的广义状态误差方程为:
e
=
x
m
−
x
p
(2)
e= x_m - x_p \tag{2}
e=xm−xp(2)
根据式1 和 式2 可得广义误差运动方程为:
e
˙
(
t
)
=
A
m
e
+
(
A
m
−
A
p
)
x
p
+
B
m
r
m
−
B
p
u
p
\dot{e}(t) = A_me + (A_m - A_p)x_p + B_mr_m -B_pu_p
e˙(t)=Ame+(Am−Ap)xp+Bmrm−Bpup
按照自适应控制器的工作原理,可调系统和参考模型间的广义误差表示了自适应控制系统的运动状态。因此,自适应控制需要使等效误差的解
ξ
\xi
ξ 和e 尽可能小。
模型预测控制
基本内容
模型预测控制(Model Predictive Control,MPC)是一种特殊的控制方法。在每一个采样周期,通过求解一个有限时域开环最优控制问题来获得其当前的控制序列。系统的当前状态视为最优控制问题的初始状态,求得的最优控制序列中,只执行第一个控制动作。这是与其使用优先求解控制律的控制方法的最大区别。模型预测控制实际上是一种与时间相关的、利用系统当前状态和当前控制量,来实现对系统未来状态的控制。系统未来状态是不定的,因此在控制过程中要不断地根据系统状态对未来的控制量做出调整。相较于经典的PID控制,它具有优化和预测的能力。模型预测控制致力于将更长时间跨度甚至于无穷时间的最优化控制问题,分解为若干更短时间跨度或者有限时间跨度的最优化控制问题,并且在一定程度上仍然追求最优解。本质上模型预测控制是要求解一个开环最优控制问题,它的思想与具体的模型无关,但实现的过程则与模型有关。
组成部分
预测模型。
预测模型能够结合系统的现有控制输入以及过程的历史信息,来预测控制系统未来的输出值。因此,需要一个描述系统动态行为的模型作为预测模型。在预测控制中的不同算法中,常采用不同类型的预测模型,如最基本的模型算法控制(Model Algorithm Control,MAC)采用的是系统的单位脉冲响应曲线。动态矩阵控制(Dynamic Matrix Control,DMC)采用的是系统的阶跃响应曲线。这两个模型之间可以互相转换,且都属于非参数模型,在实际的控制过程中比较容易通过实验测得,不必进行复杂的数据处理。尽管精度不高,但是数据冗余量大,使其抗干扰能力较强。
反馈校正。
利用预测模型进行预估系统的输出值,仅仅是一种理想情况。在实际过程中,可能会因为存在模型失配和干扰等不确定因素,使得基于模型的预测结果不能与实际情况相切合。因此需要在预测过程中,增加对系统输出值的测量,并与模型预估值进行比较,从而得出模型的预测误差,然后利用预测误差对模型的预测值进行修正。因为模型增加了反馈校正,所以预测控制具有较强的抗扰动能力和克服系统不确定性的能力。预测控制不仅是基于模型的,还增加了反馈控制,因此预测控制属于闭环优化控制。
滚动优化。
预测控制需要通过某一性能指标的最有求解来确定未来的控制动作。这一性能指标与控制系统未来的行为有关,有未来的控制策略决定。但是,预测控制的优化与一般的离散最优控制算法不同,其不是采用一个固定的全局最优目标,而是利用滚动式的有限时域内优化策略。就是说,优化过程不是单次离线完成的,而是多次在线进行的。在任意的采样时刻,优化性能指标只应用在自该时刻起到未来的有限时间区间,当进行到下一个采样时刻时,该优化区间会同时向前。因此,预测控制不是去优化一个全局的新功能指标,而是在每一个时刻都有一个局部优化性能指标。
神经网络控制
神经网络控制是指应用神经网络技术,对控制系统中难以精确建模的复杂非线性对象进行神经网络模型辨识,可以作为控制器、可以对参数进行优化设计、可以进行推理、可以进行故障诊断或者兼顾以上多种功能。通常神经网络直接用作误差闭环系统的反馈控制器,神经网络控制器首先利用其已有的控制样本进行离线训练,然后以系统误差的的均方误差为评价函数进行在线学习。神经网络控制器如下图所示。
神经网络控制就是利用神经网络工具从机理上对人脑进行简单结构模拟的新型控制和辨识方法。神经网络在控制系统中可充当对象的模型,还可充当控制器,常见的神经网络控制结构有:
1. 参数估计自适应控制系统
2. 内膜控制系统
3. 预测控制系统
4. 模型参考自适应系统
5. 变结构控制系统
滑模控制
滑模控制(Skliding Model Control,SMC)也叫滑膜变结构控制,其本质是一种特殊的非线性控制方法,但其非线性表现为控制序列的不连续性。该控制方法与其他控制方法的区别在于系统结构不是固定不变的,而是在动态过程中根据当前的系统状态有目的地变化,使系统能够按照预定的滑动模态的轨迹运动。滑动模态需要提前设计且与控制对象和外界扰动无边,使得滑模控制具备相应迅速、参数变化平稳、外界扰动影响小,无需系统在线辨识、控制动作实现方式简单等优点。滑模控制主要表现为控制的不连续性,就是系统结构随时间变化的特性。该控制特性能够使系统在一定条件下沿着预设的状态轨迹做小幅度、高频率的运动,即滑动模态或者滑模运动。滑动模态是可以预设的,而且与系统的参数及外界扰动无关,因此具备较好的鲁棒性。
如上图所示,从切换面穿过的点A为通常点,从切换面向两边发散在切换面上的运动点B是起始点,从两边向切换面逼近的且在切换面上的点C为终止点。在滑模观测器的研究中,针对的很多都是终止点,对于通常点和起始点基本没有使用。如果在切换面上的某一区域内,全部的点都是终止点,那么档运动点接近该区域是,就会被局限在该区域内。因此,一般称在切换面s=0上的全部运动点都为终止点的那些区域为滑模区,也称滑动模态区。系统在滑动模态区内所做的运动称为“滑模运动”。当运动点逼近切换面s(x)=0时,有以下关系:
lim
s
→
0
+
s
′
≤
0
≤
lim
s
→
0
−
s
′
\lim_{s \to 0^{+}} s' \leq 0 \leq \lim_{s \to 0^{-}} s'
s→0+lims′≤0≤s→0−lims′
由此可以知道系统的一个条件李雅普诺夫函数:
v
(
x
1
,
…
,
x
n
)
=
[
s
(
x
1
,
…
,
x
n
)
]
2
v(x_1, … , x_n) = [s(x_1, … , x_n)]^2
v(x1,…,xn)=[s(x1,…,xn)]2
同时,系统也稳定于条件s=0。在滑模变结构控制中,设控制系统状态函数为
x
˙
=
f
(
x
,
u
,
t
)
x
∈
R
n
,
u
∈
R
n
,
t
∈
R
n
\dot{x} = f(x, u, t) \quad x \in R^n , \quad u \in R^n , \quad t \in R^n
x˙=f(x,u,t)x∈Rn,u∈Rn,t∈Rn
需要确定切换函数
s
(
x
)
,
s
∈
R
n
s(x) , \quad s \in R^n
s(x),s∈Rn
求解控制函数
u
=
{
u
+
(
x
)
s
(
x
)
>
0
u
−
(
x
)
s
(
x
)
<
0
u= \begin{cases} u^+(x) & s(x) > 0 \\[2ex] u^-(x) & s(x) < 0 \end{cases}
u=⎩
⎨
⎧u+(x)u−(x)s(x)>0s(x)<0
其中,
u
+
(
x
)
≠
u
−
(
x
)
u^+(x) \neq u^-(x)
u+(x)=u−(x),满足滑模变结构控制的特点。综上所述,滑模变结构控制有以下性质:
1. 在切换面s(x) = 0 以外的运动点均将于规定的时间内到达切换面;
2. 达到滑模控制系统的动态品质要求;
3. 确保了滑模控制运动的稳定性。
鲁棒控制
鲁棒控制(Robust Control)方面的研究始于20世纪50年代。鲁棒性是指控制系统在一定的参数摄动下,维持某些特性的能力。根据对性能的不同定义,可分为稳定鲁棒性和性能鲁棒性。以闭环系统的鲁棒性作为目标设计得到的固定控制器称为鲁棒控制器。鲁棒性也是系统的健壮性,它是系统在异常扰动情况下保持稳定的关键。鲁棒控制适用于稳定性和可靠性作为首要目标的应用,系统的动态特性已知,而且不确定因素的变化情况可以预估。在控制过程中,某些控制系统可以使用鲁棒控制,尤其是对那些不确定因素变化范围大且稳定裕度小的系统。
系统的分析方法和控制器的设计大多是基于数学模型而建立的,且目前来讲各类方法已经趋于成熟和完善。然而,系统总是存在不确定性,在系统建模时,有时只考虑了工作点附近的情况,造成了数学模型的人为简化。另外,执行部件与控制元件存在制造容差,系统运行过程也存在老化、磨损以及环境和运行条件恶化等现象,使得多数系统存在结构或者参数的不确定性。这样使用精确数学模型设计出来的控制器常常不能满足工程要求。