前言
本文通过滑模方法对AUV的直线路径跟踪的转艏力矩进行设计,主要目的是介绍滑模变结构控制的基本原理和滑模方法在AUV控制中的简单运用。
一、滑模控制的基本原理介绍
滑模变结构控制是一种非线性的控制方法,又称为变结构控制,其控制结构是不固定的,会随着整个系统的状态变化而变化。根据系统运动轨迹可以通过切换控制量进行控制,滑模控制的结构简单,对精确的数学模型的依赖性不强,同时易于控制而且响应较快,缺点是其不连续的特性会导致抖振现象产生,系统的状态在切换面的左右 进行抖动,无法对切换面进行实际上的趋近和贴合。
滑模运动主要包括趋近运动和滑模运动两部分。
趋近运动:要求状态空间不断向切换面靠近,对具体的趋近过程未作限制;
滑模运动:系统状态在滑模面附近继续运动;
具体定义如下:
假设存在控制系统:
x
˙
=
f
(
x
,
u
,
t
)
\dot{x}=f(x,u,t)
x˙=f(x,u,t)
确定一个切换函数
s
(
x
)
s(x)
s(x),切换面可以表示为:
s
(
x
)
=
s
=
0
s(x)=s=0
s(x)=s=0
此处的切换面是一个超曲面,它将整个状态空间分为两个部分,如下图所示:
此时要求控制量
u
u
u在切换面附近的切换为:
u
=
{
u
+
(
x
)
s
(
x
)
>
0
u
−
(
x
)
s
(
x
)
<
0
u = \begin{cases}u^{+}(x) &s(x)>0\\u^{-}(x)& s(x)<0&\end{cases}
u={u+(x)u−(x)s(x)>0s(x)<0
若能满足上式,则称滑动模态存在。一种控制能称为滑模变结构控制,不仅要求滑动模态存在,同时在有限时间能达到滑模面,且过程要保持稳定。
应用滑模理论解决跟踪问题时,基本思路是通过设计关于跟踪误差的滑模函数,设计控制率使滑模函数收敛,进而保证误差的收敛,最终达到控制目的,下面进行简单说明。
设计的滑模函数为:
s
(
t
)
=
c
e
(
t
)
+
e
˙
(
t
)
s(t)=ce(t)+\dot{e}(t)
s(t)=ce(t)+e˙(t)其中
e
(
t
)
e(t)
e(t)和
e
˙
(
t
)
\dot{e}(t)
e˙(t)分别为误差和误差随时间的变化率,参数
c
c
c满足相应的参数选择条件,即大于零。
当
s
(
t
)
=
0
s(t)=0
s(t)=0时,滑模函数变为:
e
˙
(
t
)
/
e
(
t
)
=
−
c
\dot{e}(t)/e(t)=-c
e˙(t)/e(t)=−c对两侧同时积分:
l
n
(
e
(
t
)
/
e
(
0
)
)
=
−
c
t
ln(e(t)/e(0))=-ct
ln(e(t)/e(0))=−ct最终的收敛结果为:
e
(
t
)
=
e
(
0
)
e
x
p
(
−
c
t
)
e(t)=e(0)exp(-ct)
e(t)=e(0)exp(−ct)即
t
→
∞
t\rightarrow\infty
t→∞时,系统误差会以指数形式收敛到0,收敛的速度与参数
c
c
c的选择有关。则若通过设计相应的控制率使滑膜函数收敛于0,那么误差在
t
→
∞
t\rightarrow\infty
t→∞时也可指数收敛于0。
二、几种典型的趋近率
滑模控制包含趋近运动和滑模运动,前者指系统状态从所给定的初始位置趋向切换面,后者指系统状态到达切换面时无限趋近于切换面,此过程即为 s → ∞ s\rightarrow\infty s→∞的过程,合理的趋近率选择可以保证快速趋近且有效消除抖振现象,下面介绍几种典型的趋近率。
2.1等速趋近率
s ˙ = − ϵ s g n s , ϵ > 0 \dot{s}=-\epsilon sgns,\epsilon>0 s˙=−ϵsgns,ϵ>0 s g n s sgns sgns为符号函数, ϵ \epsilon ϵ为增益参数,系统状态趋近于切换面的速度与之相关:较大的 ϵ \epsilon ϵ会使趋近速度变快,但同时产生的抖振现象也会更加明显;较小的 ϵ \epsilon ϵ会使趋近速度变慢,同时引起的抖振也会更小。
2.2指数趋近率
s ˙ = − ϵ s g n s − k s , ϵ > 0 , k > 0 \dot{s}=-\epsilon sgns-ks ,\epsilon>0,k>0 s˙=−ϵsgns−ks,ϵ>0,k>0由上式知,指数趋近率由等效趋近率和指数项 s ˙ = − k s \dot{s}=-ks s˙=−ks组成,其中指数项主要控制趋近的速率,较大的增益能使系统状态趋近至滑模面的时间变短,其解为 s = s ( 0 ) e − k t s=s(0)e^{-kt} s=s(0)e−kt。
对指数趋近率进行分析,取李雅普诺夫函数:
V
=
1
2
s
2
V=\frac{1}{2}s^{2}
V=21s2采用指数趋近率并对上式进行求导,得到:
V
˙
≤
−
ϵ
∣
s
∣
−
k
s
2
=
−
k
2
V
−
ϵ
∣
s
∣
≤
−
k
2
V
\dot{V}\leq-\epsilon\mid s\mid-ks^{2}=-\frac{k}{2}V-\epsilon\mid s\mid\leq-\frac{k}{2}V
V˙≤−ϵ∣s∣−ks2=−2kV−ϵ∣s∣≤−2kV求解该不等式可得:
V
(
t
)
≤
e
−
k
2
(
t
−
t
0
)
V
(
t
0
)
V(t)\leq e^{-\frac{k}{2}(t-t_{0})}V(t_{0})
V(t)≤e−2k(t−t0)V(t0)即
V
(
t
)
V(t)
V(t)指数收敛于零,收敛速度由
k
k
k的大小决定。在指数收敛中,收敛速度会随时间推移逐渐减小为零,这就使当系统状态接近切换面时速度较小。
倘若只存在指数趋近,系统只能无限趋近于切换面但最终无法达到,此时便无滑动模态。当引入等速趋近项
s
˙
=
−
ϵ
s
g
n
(
s
)
\dot{s}=-\epsilon sgn(s)
s˙=−ϵsgn(s),此时靠近切换面时,其收敛速度是
ϵ
\epsilon
ϵ而非零,使其最终能达到滑模面。
2.3幂次趋近率
s ˙ = − k ∣ s ∣ α , k > 0 , 1 > α > 0 \dot{s}=-k\mid s \mid ^\alpha,k>0,1>\alpha>0 s˙=−k∣s∣α,k>0,1>α>0
2.4一般趋近率
s ˙ = − ϵ s g n s − f ( s ) , ϵ > 0 \dot{s}=-\epsilon sgns-f(s),\epsilon>0 s˙=−ϵsgns−f(s),ϵ>0上式中 f ( 0 ) = 0 f(0)=0 f(0)=0,当 s ≠ 0 s≠0 s=0时, s f ( s ) > 0 sf(s)>0 sf(s)>0,与上述三种趋近率类似,也有可以使系统 达到滑模动态的条件 s s ˙ < 0 s\dot{s}<0 ss˙<0
三、滑模方法设计转艏力矩
假定需要镇定的误差为:
ψ
e
=
ψ
+
β
−
ϕ
F
−
δ
\psi_{e}=\psi+\beta-\phi_{F}-\delta
ψe=ψ+β−ϕF−δ选取的滑模函数为:
s
=
k
1
ψ
e
+
ψ
˙
e
s=k_{1}\psi_{e}+\dot{\psi}_{e}
s=k1ψe+ψ˙e采用基于趋近率的滑模控制,选取指数趋近率:
s
˙
=
−
ϵ
t
a
n
h
(
s
)
−
k
2
s
,
ϵ
>
0
,
k
>
0
\dot{s}=-\epsilon tanh(s)-k_{2}s,\epsilon>0,k>0
s˙=−ϵtanh(s)−k2s,ϵ>0,k>0此处对原本的趋近率做出了改进,用连续的双曲正切函数代替了符号函数,能够有效减小抖振现象,大大降低了趋近滑模面时的超调现象。
s
˙
=
k
1
ψ
˙
e
+
ψ
¨
e
=
k
1
ψ
˙
e
+
ψ
¨
+
β
¨
−
ϕ
¨
F
−
δ
¨
\dot{s}=k_{1}\dot{\psi}_{e}+\ddot{\psi}_{e}=k_{1}\dot{\psi}_{e}+\ddot{\psi}+\ddot{\beta}-\ddot{\phi}_{F}-\ddot{\delta}
s˙=k1ψ˙e+ψ¨e=k1ψ˙e+ψ¨+β¨−ϕ¨F−δ¨运动学方程为:
ψ
˙
=
q
s
i
n
ϕ
s
e
c
θ
+
r
c
o
s
ϕ
s
e
c
θ
\dot{\psi}=qsin\phi sec\theta +rcos\phi sec\theta
ψ˙=qsinϕsecθ+rcosϕsecθ一般忽略横摇运动,
ϕ
=
0
\phi=0
ϕ=0,只考虑水平面运动,即
θ
=
0
\theta=0
θ=0,则运动学方程变为:
ψ
˙
=
r
\dot{\psi}=r
ψ˙=r将其带入一阶导得到:
s
˙
=
k
1
ψ
˙
e
+
r
˙
+
β
¨
−
ϕ
¨
F
−
δ
¨
\dot{s}=k_{1}\dot{\psi}_{e}+\dot{r}+\ddot{\beta}-\ddot{\phi}_{F}-\ddot{\delta}
s˙=k1ψ˙e+r˙+β¨−ϕ¨F−δ¨结合指数趋近率有:
−
ϵ
t
a
n
h
(
s
)
−
k
2
s
=
k
1
ψ
˙
e
+
r
˙
+
β
¨
−
ϕ
¨
F
−
δ
¨
-\epsilon tanh(s)-k_{2}s=k_{1}\dot{\psi}_{e}+\dot{r}+\ddot{\beta}-\ddot{\phi}_{F}-\ddot{\delta}
−ϵtanh(s)−k2s=k1ψ˙e+r˙+β¨−ϕ¨F−δ¨
动力学方程为:
N
=
m
r
r
˙
+
d
r
N=m_r\dot{r}+d_{r}
N=mrr˙+dr进行简单的化简:
r
˙
=
N
−
d
r
m
r
\dot{r}=\frac{N-d_{r}}{m_{r}}
r˙=mrN−dr再次带入一阶导中,得到:
−
ϵ
t
a
n
h
(
s
)
−
k
s
=
k
1
ψ
˙
e
+
N
−
d
r
m
r
+
β
¨
−
ϕ
¨
F
−
δ
¨
-\epsilon tanh(s)-ks=k_{1}\dot{\psi}_{e}+\frac{N-d_{r}}{m_{r}}+\ddot{\beta}-\ddot{\phi}_{F}-\ddot{\delta}
−ϵtanh(s)−ks=k1ψ˙e+mrN−dr+β¨−ϕ¨F−δ¨需要设计的滑模控制率为:
N
=
m
r
(
−
k
1
ψ
˙
e
−
ϵ
t
a
n
h
(
s
)
−
k
2
s
−
β
¨
+
ϕ
¨
F
+
δ
¨
)
+
d
r
N= m_{r}(-k_{1}\dot{\psi}_{e}-\epsilon tanh(s)-k_{2}s-\ddot{\beta}+\ddot{\phi}_{F}+\ddot{\delta})+d_{r}
N=mr(−k1ψ˙e−ϵtanh(s)−k2s−β¨+ϕ¨F+δ¨)+dr