编辑: 静看花开花落 | 2019-07-13 |
e(t) <
B(t)}. (4) 其中: A(t), B(t)均为预定性能光滑函数,同时满足下 列条件: 1) A(t) ?= 0, B(t) ?= 0, A(t), B(t)及n + 1阶导数 为有界函数,且B(t) >
A(t);
2) 如果 lim t→∞ A(t) = a, lim t→∞ B(t) = b,则a + b =
0 (非必要性条件). 注2 式(4)可以说明,通过设计A(t), B(t)两个 函数使跟踪误差e(t)始终在A(t)与B(t)之间,即达到 了预定性能. 如果预定性能中的条件2)存在,则结合 下面的设计方法就可以达到预定性能的目的,所以条 件2)为非必要性条件. 但是,条件2)的存在性在于可 以使得跟踪误差e(t)稳定. 问题描述:对于由系统(1)与辅助系统(3)组成的 增广系统,通过状态变换,利用Backstepping反步法和 Lyapunov函数设计出控制器,使得闭环系统所有信 号全局有界,且使得跟踪误差满足预定性能.
2 控制器设计 在设计控制器之前,先给出如下引理. 引理1 有下面两个函数: y1(t) =
1 ? √
1 ? t2, y2(t) = t2 √
1 ? t2 . y1 与y2 的大小对比如图1所示. 图1y1 与y2 的大小对比 第9期蒋沅等: 一类非线性纯反馈系统的预定性能控制器设计
1721 由Matlab仿真图1可知,在?1 <
t <
1的区间里, 满足不等式 y1(t) ? y2(t). 引理2 [19] 设x : [0, ∞) → R为一阶连续可导, 且当t → ∞时有极限,如果 B x(t), t ∈ [0, ∞)一致连续, 则lim t→∞ B x(t) = 0. 引理2即为Barbalat引理. 为了设计控制器,使得非线性系统(1)全局稳定 有界,作如下形式的非传统状态变换: z1 = x1 ? r;
zi = B xi?1 ? ai?1, i = 2, 3,n + 1. (5) 其中: a1, a2,an 为虚拟控制器,且xn+1 = u. 注3 在传统变换[14] 中,常常把xi 与第i?1虚拟 控制器ai?1 的差作为第i个新状态,因此采取的状态 变换为 z1 = x1 ? r, zi = xi ? ai?1, 基于上述坐标变换,有效地解决了严格反馈非线 性系统的控制器设计问题. 然而,由于纯反馈系统存 在非仿射性函数,使得传统反推法很难直接用于系统 的控制器设计. 由于系统状态的导数包含了非仿射 结构,本文所提出的反推思想是把 B xi 与第i ? 1个虚 拟控制器ai?1 的差作为第i个新状态. 由反步法可得如下步骤. Step 1:由式(5)的第1个等式可知 B z1 = B x1 ? B r = z2 + a1 ? B r. 构造如下Lyapunov函数: V1 =
1 ? √
1 ? L2, L = z1 ? A B ? A + z1 ? B B ? A . (6) 注4 与文献[16]设计的障碍性Lyapunov函数 V1 相比,本文的V1 相对简单,由此可以设计出较为简 单的虚拟控制器a1 和a2,减少繁杂的公式计算. 由此 可以得到 B V1 = L √
1 ? L2 B L, 且有 B L =
2 B z1 ? B A ? B B ? L( B B ? B A) B ? A . (7) 将式(7)代入 B V1,可得 B V1 = L (B ? A) √
1 ? L2 [2a1 ?
2 B r ? B A ? B B? L( B B ? B A)] + 2L (B ? A) √
1 ? L2 z2. 选取虚拟控制器a1,即a1 = ?
1 2 c1L(B ? A) + B r +
1 2 [ B A + B B + L( B B ? B A)], 代入可得 B V1 = ?c1 L2 √
1 ? L2 + 2L (B ? A) √
1 ? L2 z2. Step 2:由式(5)的第2个等式可知 B z2 = ?f1 ?x1 B x1 + ?f1 ?x2 (z3 + a2) ? B a1. 选取虚拟控制器 a2 =
1 ?f1 ?x2 ( ? c2z2 ? 2L (B ? A) √
1 ? L2 ? ?f1 ?x1 f1 + B a1 ) , 代入可得 B z2 = ?c2z2 ? 2L (B ? A) √
1 ? L2 + ?f1 ?x2 z3. 定义如下 Lyapunov 函数: V2 = V1 +
1 2 z2 2. 由此可得 B V2 = ?c1 L2 √
1 ? L2 ? c2z2
2 + ?f1 ?x2 z2z3. Step i (3 ? i ? n):由式(5)的第i个等式可知 B zi = i?1 ∑ j=1 ? B xi?1 ?xj B xj + ? B xi?1 ?xi B xi ? B ai?1 = i?1 ∑ j=1 ?fi?1 ?xj fj + ?fi?1 ?xi (zi+1 + ai) ? B ai?1. 选取虚拟控制器 ai =
1 ?fi?1 ?xi ( ? cizi ? ?fi?2 ?xi?1 zi?1? i?1 ∑ j=1 ?fi?1 ?xj B xj + B ai?1 ) , 代入可得 B zi = i?1 ∑ j=1 ?fi?1 ?xj fj ? ?fi?2 ?xi?1 zi?1 ? i?1 ∑ j=1 ?fi?1 ?xj fj? cizi + B ai?i ? B ai?1 + ?fi?1 ?xi zi+1 = ? cizi ? ?fi?2 ?xi?1 zi?1 + ?fi?1 ?xi zi+1. 定义如下Lyapunov函数: Vi = Vi?1 +