二阶滑模
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
二阶滑模控制(读书笔记)
详细推导
一、改进时间最优二阶滑模控制算法
1、非线性系统
()[100]x Ax B x u Df y x
=++= 0()0()B x b x ⎡⎤⎢⎥=⎢⎥⎢⎥⎣⎦010D ⎡⎤⎢⎥=⎢⎥⎢⎥⎣⎦
u 为系统的控制量输入电压,y 为台车输出转角,f 为转向负载和外界扰动之和,()b x 为系统的非线性控制增益。
2、选取滑模切换函数33222111()()()T d d d d s C x x x x c x x c x x =-=-+-+-
采用极点配置或二次型最优法确定矢量C,保证系统进入滑动模态后具有满意的动态特性。
为构造s 的二阶趋近律,令12,y s y s ==,状态方程为122,y s y y s v ====
当满足时间最优的目标时,可导出控制量v
2222112211sgn ,022sgn(),02m m m m m
y y y y a y y a a v y y a y y a ⎧⎛⎫-++≠⎪ ⎪⎪⎝⎭=⎨⎪+=⎪⎩ 其轨迹由两段抛物线组成,v 的符号只切换一次,开关线为22102m y y y a +
=,m a 为趋
近滑模的最大加速度。
3、则 s 的一阶导数 ()[()]
()T T d d T T T d
s C x x C Ax B x u Df x C Ax b x u C Df C x =-=++-=++-
其中12(,,1)T C c c =,0()0()B x b x ⎡⎤⎢⎥=⎢⎥⎢⎥⎣⎦
s 的二阶导数
12()()[()]()()()()()(,,)()()(,,,)()T T d
T T d
T T T T d
d d s C Ax b x u b x u C x C A Ax B x u Df b x u b x u C x C AAx C AB x u C ADf b x u b x u C x x x f x u b x u x x f u b x u
ψψψ=++-=++++-=++++-==++=+
则控制量 11ˆˆˆˆˆˆ(())[(,,,)](())[(,,,)]d d u b
x s x x f u b x v x x f u ψψ--=-=- 解得0()(0)()t
u t u u d ττ=+⎰其中ˆψ是ψ相对应的标称值 把()u t 代入s 1ˆˆˆ(,,,)()(())[(,,,)]()()ˆˆ(,,,)(,,,)ˆˆ()()(,,,)()d d d d d s x x f u b x b
x v x x f u b x b x x x f u x x f u v b x b x x x f u x v
ψψψψφξ-=+-=-+=∆+
显然,式中(,,,)()d x x f u x φξ∆和是由外干扰和参数摄动引起的,理 想 情 况 下扰 动为零,可验证(,,,)=0d x x f u φ∆并且根据假设可以推出12(,,,)()d x x f u H r x r φξ∆≤≤≤,其中H 为正实数。
4、这样对应的二阶滑模应重新描述为
122====(,,,)+()d s y y s y x x f u x v
φξ⎧⎨∆⎩ 首先分析理想状态下的系统轨迹,假设12(0)(0)0y y >(即(0)(0)0s s >),则12y y 、(s s 、)在v 作用下,从初始点沿第一段抛物线移动,在1y 轴(s 轴)到达极值即抛物线顶点max y ,当1max 0.5y y =时,到达两段抛物线的交点,()v t 发生切换,并沿第二段抛物线(开关线)到达零点。
存在扰动时,切换发生在开关线附近的某一点,可能需要多次切换才能到达零点,扰动较大时甚至会导致系统不稳定。
考虑简化并改进算法,将开关线22
102m y y y a +=换成max 102
y y -=,对控制量()v t 乘以系数α,通过改变α和m a 约束来抑制扰动,改进算法如定理1所述。
5、定理1:改进的时间最优控制律1max 1()sgn[()]2
m v t a y t y α=--
其中11max max 21(0,),[,]21,r w w y y y r α⎧∈∈⎪=⎨⎪⎩
,其他,112max(/,2/())m a H wr H r wr >-
max y 是1y 的极值,初值取1(0)y ,迭代过程中满足2()0y t =(即()0s t =)时,取max 1()y y t =。
当满足1()y t ε<(ε是很小的正数),取()0v t =。
6、求控制量()u t 需要先求()v t ,可以
2222112211sgn ,022sgn(),02m m m m m
y y y y a y y a a v y y a y y a ⎧⎛⎫-++≠⎪ ⎪⎪⎝⎭=⎨⎪+=⎪⎩
也可以采用改进的()v t 将()v t 代入u 可求出u (含有v s =待求)
下面求(0)u
10(0)(0)T y s C x ==
取1()()s sng s sng y ζζ==,ζ是很小的正常数。
则1()()[()]
()T T d d T T T d s sng y C x x C Ax B x u Df x C Ax b x u C Df C x ζ==-=++-=++-
110ˆˆ(0)(())[((0))]T T T d
u b x sng y C Ax C Df C x ζ-=--+
二、削抖措施
二阶滑模将不连续控制量经过积分变为连续量,有效地抑制 了高频抖动。
本算法中,抖动的幅度和有关。
1、在下两式1max 1()sgn[()]2
m v t a y t y α=-- 11max max 21(0,),[,]21,r w w y y y r α⎧∈∈⎪=⎨⎪⎩
,其他
中的m a 约束条件112max(/,2/())m a H wr H r wr >-是为了保证系统的鲁棒性,根据扰动的上界选取。
接近滑模面时扰动φ将逐渐减小,因此可考虑用连续变化量替换固定不变的m a 。
2、把(,,,)d x x f u φ∆分解为
12111222(,,,)(,,)()()ˆ(,,)ˆ()()ˆ()ˆ()
d d d x x f u x x f x u
b x x x f b x b x x b x φφφφψψφψψ∆=∆+∆=-=-其中
(,,,)d x x f u φ∆的最大值为H ,重新表示为0()H t H u β=+,其中0H β和分别是1(,,)d x x f φ∆和2()x φ的上界。
m a 以u 为自变量,表示为如下形式0m m a a u λ=+,
其中000111
2max[,]m H H a wr r wr >-,1122max[,]wr r wr ββλ>- 三、基于Lyapunov 函数的二阶滑模控制 1、选取Lyapunov 函数2211(,)22V s s s s s ρρε=
++(注意sgn()s s s =),其中ρ和ε为正常数。
2、Lyapunov 函数的时间为 (,)sgn()
(sgn())V s s ss ss s s s s s s ρρερρε=++=++
为满足稳定性条件,选择sgn())s ks s s ρε=---
则(,)0V s s ≤。
3、按照sgn())s ks s s ρε=---设计趋近律,可使s 和s 在有限时间内趋近于平衡点。
则控制律1ˆˆˆ(())[sgn()(,,,)]d u b
x ks s s x x f u ρεψ-=---- 参考文献
[1] 李运华. 电液伺服系统的二阶滑模控制算法研究.机械工程学报,第41卷第3期。