1.一种基于观测器的非线性执行器故障系统的容错控制方法,其特征在于:所述方法包括以下步骤:
步骤1、建立带有执行器故障的可重复非线性系统:考虑一个带有执行器故障的可重复非线性系统,如下所示:其中,
yk(t)表示第k次迭代t时刻,系统的输出;
f(·)表示未知的非线性函数;
表示第k次迭代t时刻,系统带有执行器故障的控制输入;
uk(t)表示第k次迭代t时刻,系统不带有执行器故障的控制输入;
αk(t)∈(0,1]、|βk(t)|≤bβ表示第k次迭代t时刻的执行器故障;
bβ为一个正数;
ny表示一个未知的正整数;
nu表示一个未知的正整数;
该系统满足:
系统初始值yk(0)不变,即yk(0)=y0;
系统满足广义Lipschitz条件,当Δuk(t)≠0、Δyk(t)≠0时,|Δyk(t+1)|≤b1|Δuk(t)|+b2|Δyk(t)|;
其中,
y0是一个常数;
b1、b2均为正数;
Δuk(t)=uk(t)‑uk‑1(t),Δyk(t)=yk(t)‑yk‑1(t);
步骤2、将非线性系统迭代线性化为等价线性数据模型:其中,
1×(t+1)
Φk(t)∈R 为未知梯度矩阵;
步骤3、设计迭代学习观测器对系统输出进行估计:其中,
是Φk(t)的估计值;
表示第k次迭代t时刻,对系统输出yk(t)的估计值;
ξk(t)表示第k次迭代t时刻,输出yk(t)的估计误差;
εk(t)表示第k次迭代t时刻,沿迭代轴的补偿项;
观测器参数γ1、γ2满足γ1∈(0,1)、γ2∈(0,1);
步骤4、设计迭代更新算法估计线性数据模型中的未知梯度矩阵:其中,
表示第k‑1次迭代t时刻,对未知梯度矩阵Φk‑1(t)的估计值;
Φk‑1(t)表示第k‑1次迭代t时刻,未知梯度矩阵Φ的值;
η∈(0,2)为一个步长因子;
μ>0为一个权重因子;
步骤5、设计基于观测器的控制器实现对非线性执行器故障系统的容错控制:其中,
ρ>0为一个步长因子;
λ>0为一个权重因子;
yd(t+1)表示t+1时刻的期望输出;
T (t+1)
Uk(t)=[uk(0),uk(1),...,uk(t)]∈R 。
2.根据权利要求1所述方法,其特征在于:步骤2的迭代线性化过程主要包括以下步骤:步骤2.1、对于步骤1所述带有执行器故障的非线性系统,使用迭代动态线性化,使得:其中,
t
g(·)是一个状态转移函数,是f(·)的复合函数;
步骤2.2、对上述系统沿迭代轴进行差分并使用微分中值定理,可以得到线性数据模型:
其中,
Φk(t)为未知的梯度矩阵;
||Φk(t)||≤bΦ;bΦ为正数。
3.根据权利要求1所述方法,其特征在于:步骤4中用于估计未知梯度矩阵的迭代更新算法的设计主要包括以下步骤:步骤4.1、考虑如下目标函数:其中,
μ>0为权重因子; 表示对Φk‑1(t)的估计;Φk‑1(t)表示第k‑1次迭代t时刻,未知梯度矩阵Φ的值;
对参数Φk(t)进行最小化处理,得到:其中,
η∈(0,2)为步长因子;
步骤4.2、为了减少执行器故障的影响,将观测器带入迭代更新算法:最终得到基于观测器的迭代更新算法:
4.根据权利要求1所述方法,其特征在于:步骤5中基于观测器的控制算法的设计主要包括以下步骤:
步骤5.1、不考虑执行器故障,设计如下目标函数:
2 2
J(Uk(t))=|yd(t+1)‑yk‑1(t+1)‑Φk(t)(Uk(t)‑Uk‑1(t))|+λ||Uk(t)‑Uk‑1(t)||;
其中,
λ>0为权重因子;yd(t+1)表示t+1时刻的期望输出;
对控制输入Uk(t)进行最小化处理,得到:其中,
ρ>0为步长因子;
步骤5.2、为了减少执行器故障的影响,将观测器带入控制器,最终得到基于观测器的容错控制器: