
3.6 大时变扰动下切换增益模糊调节的滑模控制
在滑模控制中,针对较大的扰动,为了保证闭环系统稳定,需要较大的切换增益,这就造成抖振,抖振是滑模控制中难以避免的问题。
针对跟踪问题,设计滑模函数为,其中,e(t)和
分别为跟踪误差及其变化率,c>0。可见,当s(t)=0时,
,
,即
,积分得
,则
,从而得到

收敛结果为
e(t)=e(0)exp(-ct)
即当t→∞时,误差指数收敛于0,收敛速度取决于c值。如果通过控制律的设计,保证s(t)也是指数收敛于0,则当t→∞时,误差变化率也是指数收敛于0。
模糊逻辑的设计不依靠被控对象的模型,其突出优点是能够将人的控制经验通过模糊规则融入到控制器中,通过设计模糊规则,实现高水平的控制器。采用模糊规则,可根据滑模到达条件对切换增益进行有效地估计,并利用切换增益消除干扰项,从而消除抖振。
3.6.1 系统描述
考虑如下模型

其中,d(t)为时变干扰。
3.6.2 滑模控制器设计
取滑模函数为

其中,e为跟踪误差,e=x1d-x1,x1为位置信号,x1d为指令角度。
取Lyapunov函数为

设计滑模控制器为

取

其中,η>0。则

将控制律代入,得

在滑模控制律式(3.14)中,切换增益K(t)值是造成抖阵的原因。K(t)用于补偿不确定项d(t),以保证滑模存在性条件得到满足。如果d(t)时变,则为了降低抖阵,K(t)也应该时变。可采用模糊规则,根据经验实现K(t)的变化。
3.6.3 模糊规则设计
滑模存在条件为,当系统到达滑模面后,将会保持在滑模面上。由式(3.16)可见,K(t)为保证系统运动得以到达滑模面的增益,其值必须足以消除不确定项的影响,才能保证滑模存在条件
成立。
模糊规则设计的原则为:在满足条件下,尽量采用较小的增益K(t),以降低抖阵。设计模糊规则如下
如果,则K(t)应增大
如果,则K(t)应减小
由式(3.16)可设计关于和ΔK(t)之间关系的模糊系统,在该系统中,
为输入,ΔK(t)为输出。系统输入输出的模糊集分别定义如下

ΔK={NB NM ZO PM PB}
其中,NB为负大,NM为负中,ZO为零,PM为正中,PB为正大。
模糊系统的输入输出隶属函数如图3.25和图3.26所示。

图3.25 模糊输入的隶属函数

图3.26 模糊输出的隶属函数
模糊规则设计如下
Rule1:If is PB then ΔK is PB
Rule2:If is PM then ΔK is PM
Rule3:If is ZO then ΔK is ZO
Rule4:If is NM then ΔK is NM
Rule5:If is NB then ΔK is NB
采用积分的方法对的上界进行调节

其中,G>0为比例系数,根据经验确定。
用代替式(3.14)的K(t),则控制律变为

3.6.4 仿真实例
被控对象为式(3.12),采用高斯函数的形式表示d(t),d(t)=200exp(-t2),如图3.27所示。

图3.27 高斯函数形式的干扰d(t)
位置指令信号为x1d=sint。首先运行程序chap3_8fuzz.m建立模糊系统,模糊规则库保存在chap3_8fis.fis中,并得到模糊系统输入输出的隶属函数图,如图3.25和图3.26所示。
在控制律中,取D=200,c=50,η=3.0。取M=2,采用模糊调节增益的控制律式(3.18),G=400,仿真结果如图3.28~图3.30所示。取M=1,采用传统的控制律式(3.14),仿真结果如图3.31和图3.32所示。可见,采用基于模糊规则的模糊滑模控制方法,可有效地通过切换增益消除干扰项,从而消除抖振。

图3.28 模糊调节增益时的位置和速度跟踪(M=2)

图3.29 扰动d(t)和增益的调节(M=2)

图3.30 模糊调节增益时的控制输入(M=2)

图3.31 采用传统控制器时的位置和速度跟踪(M=1)

图3.32 传统控制时的控制输入(M=1)
仿真程序:
(1)高斯函数:chap3_8func.m
clear all; close all; ci=5; ts=0.001; for k=1:1:10000 t(k)=k*ts; d(k)=200*exp(-(t(k)-ci)^2); end figure(1); plot(t,d,'k','linewidth',2);
(2)模糊系统设计程序:chap3_8fuzz.m
(3)Simulink主程序:chap3_8sim.mdl

(4)控制器S函数:chap3_8ctrl.m
(5)被控对象S函数:chap3_8plant.m
(6)模糊系统S函数:chap3_8rule.m
(7)作图程序:chap3_8plot.m