差速轮机器人由于其简洁的结构、较大的负载、较长的续航时间在仓储物流行业中有较多的应用。其中运动控制作为基础的功能之一是保证安全可靠运行的基础,以李雅普诺夫稳定为依据设计的运动控制器对差速轮机器人运行的平稳性有较好的效果。
运动学模型分析
![](https://img-blog.csdnimg.cn/0f98767afbf7479281675cd52bf7cbf3.png)
差速轮机器人的运动学模型如图1所示,
r
r
r 表示机器人中心距离目标位姿的长度,
δ
\delta
δ表示机器人方向与
r
r
r所成的角度,
θ
\theta
θ与
r
r
r所成的角度,其状态方程如下:
r
˙
=
−
v
cos
δ
θ
˙
=
v
r
sin
δ
δ
˙
=
w
+
v
r
sin
θ
(1)
\begin{array}{l} \dot{r}=-v \cos \delta \\ \dot{\theta}=\frac{v}{r}\operatorname{sin} \delta \\ \dot{\delta}=w + \frac{v}{r} \operatorname{sin} \theta \end{array} \tag{1}
r˙=−vcosδθ˙=rvsinδδ˙=w+rvsinθ(1)
从状态方程(1)中可以看出 r r r和 θ \theta θ与线速度 v v v相关,因此在通过李雅普诺夫稳定设计控制器时先保证 r r r和 θ \theta θ稳定,再设计 w w w使得 δ \delta δ稳定。
控制率原理推导
通过李雅普诺夫稳定性判据可知如果能找到一个正定的由状态变量组成的函数(李雅普诺夫函数),且函数的一阶导为负定,则系统是渐进稳定的。
李雅普诺夫函数设计如式(2)所示。
V
(
t
)
=
0.5
∗
(
r
2
+
θ
2
)
(2)
V(t) = 0.5*(r^2+ \theta ^2) \tag{2}
V(t)=0.5∗(r2+θ2)(2)
李雅普诺夫函数对时间的一阶导如式(3)所示。
V
(
t
)
˙
=
r
r
˙
+
θ
θ
˙
(3)
\dot{V(t)} = r \dot{r} + \theta \dot{\theta} \tag{3}
V(t)˙=rr˙+θθ˙(3)
令
δ
=
arctan
(
−
k
1
θ
)
\delta = \operatorname{arctan} (-k_1 \theta)
δ=arctan(−k1θ),
V
(
t
)
˙
=
−
r
v
c
o
s
[
a
r
c
t
a
n
(
-
k
1
θ
)
]
+
θ
v
r
s
i
n
[
a
r
c
t
a
n
(
-
k
1
θ
)
]
\dot{V(t)} = -rv \operatorname{cos[arctan (-k_1 \theta)]} + \theta \frac{v}{r} \operatorname{sin[arctan(-k_1 \theta)]}
V(t)˙=−rvcos[arctan(-k1θ)]+θrvsin[arctan(-k1θ)],由于
r
>
0
,
v
>
0
,
−
π
<
δ
<
π
,
k
1
>
0
r>0,v>0, -\pi < \delta < \pi,k_1 > 0
r>0,v>0,−π<δ<π,k1>0,所以
−
r
v
c
o
s
(
a
r
c
t
a
n
(
-
k
1
θ
)
)
<
0
-rv \operatorname{cos(arctan (-k_1 \theta))} <0
−rvcos(arctan(-k1θ))<0,
θ
v
r
s
i
n
[
a
r
c
t
a
n
(
-
k
1
θ
)
]
<
0
\theta \frac{v}{r} \operatorname{sin[arctan(-k_1 \theta)]} < 0
θrvsin[arctan(-k1θ)]<0,
V
(
t
)
˙
<
0
\dot {V(t)} < 0
V(t)˙<0,
r
,
θ
r,\theta
r,θ满足渐进稳定条件。为了保证
δ
\delta
δ也是渐进稳定的,重新定义一个李雅普诺夫函数,如式(4)所示。
Z
=
δ
−
arctan
(
−
k
1
θ
)
(4)
Z = \delta - \operatorname{arctan} (-k_1 \theta) \tag{4}
Z=δ−arctan(−k1θ)(4)
令
Z
=
δ
−
arctan
(
−
k
1
θ
)
Z = \delta - \operatorname{arctan} (-k_1 \theta)
Z=δ−arctan(−k1θ)得式5。
Z
˙
=
δ
˙
−
k
1
1
+
k
1
2
θ
2
θ
˙
(5)
\dot{Z} = \dot{\delta} - \frac{k_1}{1 + k_1 ^ 2 \theta ^2} \dot{\theta} \tag{5}
Z˙=δ˙−1+k12θ2k1θ˙(5)
将式(1)代人式(5)得式(6)。
Z
˙
=
w
+
v
r
(
1
+
k
1
1
+
k
1
2
θ
2
)
δ
(5)
\dot{Z} = w + \frac{v}{r} (1 + \frac{k_1}{1 + k_1 ^ 2 \theta ^2}) {\delta} \tag{5}
Z˙=w+rv(1+1+k12θ2k1)δ(5)
令
w
=
−
k
2
Z
−
v
r
(
1
+
k
1
1
+
k
1
2
θ
2
)
δ
,
k
2
>
0
w= -k_2 Z - \frac{v}{r} (1 + \frac{k_1}{1 + k_1 ^ 2 \theta ^2}) {\delta},k_2 > 0
w=−k2Z−rv(1+1+k12θ2k1)δ,k2>0,并代人式(5)中得,
Z
˙
=
−
k
2
Z
\dot{Z} = -k_2 Z
Z˙=−k2Z,因此系统“
Z
=
δ
−
arctan
(
−
k
1
θ
)
Z = \delta - \operatorname{arctan} (-k_1 \theta)
Z=δ−arctan(−k1θ)”是渐进稳定的,也意味着
δ
\delta
δ将无线接近
arctan
(
−
k
1
θ
)
\operatorname{arctan} (-k_1 \theta)
arctan(−k1θ),使机器人最终达到目标角度
θ
\theta
θ。
因此机器人角速度
w
w
w的控制率为:
w
=
−
k
2
Z
−
v
r
(
1
+
k
1
1
+
k
1
2
θ
2
)
δ
=
−
k
2
(
δ
−
arctan
(
−
k
1
θ
)
)
−
v
r
(
1
+
k
1
1
+
k
1
2
θ
2
)
δ
,
k
1
,
k
2
>
0
w= -k_2 Z - \frac{v}{r} (1 + \frac{k_1}{1 + k_1 ^ 2 \theta ^2}) {\delta} = -k_2 (\delta - \operatorname{arctan} (-k_1 \theta)) - \frac{v}{r} (1 + \frac{k_1}{1 + k_1 ^ 2 \theta ^2}) {\delta},k_1, k_2 > 0
w=−k2Z−rv(1+1+k12θ2k1)δ=−k2(δ−arctan(−k1θ))−rv(1+1+k12θ2k1)δ,k1,k2>0
注意事项
- 参数 k 1 , k 2 > 0 k_1,k_2>0 k1,k2>0;
- 在跟踪取消的时候,目标点随着机器人位置发生变化,目标点与机器人的速度相关;
- 当机器人接近目标点时,存在奇点的情况;