非完整轮式移动机器人轨迹跟踪控制研究
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第34卷 第3期
中 国 科 学技 术 大 学 学 报
Vol. 34, No. 3
2 0 0 4 年 6 月 JOURNAL OF UNIVERSITY OF SCIENCE AND TECHNOLOGY OF CHINA Jun. 2 0 0 4
文章编号: 0253 2778( 2004) 03 0376 05
t
c , 从而跟踪参 r ) T , 使得( xe ye
图 1 机器人示意图 Fig. 1 Robot structure
2 控制算法的设计
机器人轨迹跟踪控制系统结构如图 2 所示, 系统的输入为参考位姿 p r 和参考速度qr , 系 统的输出为机器人当前时刻的位姿 p c, 系统控制器根据系统位姿误差 p e 和参考速度 qr 得到 机器人的控制速度 qc , 然后, 经过动力学约束和运动学方程运算得到当前时刻的位姿 pc , 如 此反复经过控制器调节, 最终使得系统位姿误差 p e 趋于零.
( 4)
其中 f ( k
c) =
1 - exp( 1 + exp( -
2k 2k
c) c)
为双曲正切函数.
a1f ( k
c ) y e 为虚拟反馈,
双曲正切函数
3 78
中国科学技术 大学学报
第 34 卷
f ( k c) 使虚拟反馈调节范围平滑在[ - a1 ye , a1 y e ] 之间. 如果控制作用使得控制量 x e
= Jp c
( 1)
c
c
01
J 为雅可比矩阵. 假设存在参考移动机器人由向量 pr = ( x r y r r ) T 表示, ( x r , yr ) 为点 N 的坐
标, r 为参考移动机器人的运动方向. 在以移动机器人为参考的局部坐标系( M, i , j ) 中, 机 器人运动的误差矢量 pe = ( x e ye e ) T 可表示为:
1 运动学模型及跟踪问题描述
如图 1 所示, 在全局坐标系 ( O , X , Y) 中, 机器人的位置可由向量 p c = ( x c yc c ) T 表示,
( xc , yc ) 为点 M 的坐标, c 为沿 X 轴逆时针得到的机器运动方向. 移动机器人的运动由机器人 的线速度 c 和角速度 c 来表示. 设 qc = ( c c ) T , 机器人的运动学方程可由以下方程表示:
图 4 参考轨迹直线跟踪结果 Fig. 4 Straiqht line tracking control result
误差 ( xe , ye , e ) 为( 10m, - 15m, - !rad) , 参考速度 ( r , r ) 为( 1m s, 0. 1rad s) 的条件下, 跟踪参考参考轨迹为以( 20, 0) 为圆心半径为 10m 的圆. 图 4 为机器人在初始误差 ( xe , ye , e ) 为( - 7. 89, - 10. 33, 11 12!) , 参考速度 ( r , r ) 为( 2m s, 0) 的条件下跟踪以( 0, 0) 为起
非完整轮式移动机器人轨迹跟踪控制研究
徐俊艳, 张培仁
( 中国科学技术大学自动化系, 合肥 230026)
摘要: 根据机器人的运动学模型, 对具有非完整特性的移动机器人轨迹跟踪控制进行
了研究. 采用基于积分 backstepping 时变状态反馈方法, 引入具有双曲正切特性的虚
拟反馈量, 设计机器人轨迹跟踪控制算法, 并且利用 Lyapunov 方法证明系统的全局稳
时, V 0, 这意味着
x
2 e
(
t
)
,
y
2 e
(
t)
cf ( k
c),
s in2
e
2
分别趋于零. 所以,
lim
t
e=
0(
e ∀ [ - !, !) ) , limx e = 0 即 t
xe a1 f ( k c ) ye . 由于 r , r 不同时为零, 由控制律知 c 不恒等于零且y2e ( t ) cf ( k c ) 趋于
图 2 机 器人跟踪控制系统结构
Fig. 2 The Structure of robot tracking control system
本文采用积分 backstepping 思想, 根据机器人的运动学模型, 将机器人系统中的误差分 量 x e 视为虚拟控制量, 新的虚拟误差变量取为:
x e = xe - a1f ( k c ) y e
( max , max ) = ( 10 m s, 1 rad s) , ( max , max ) = ( 20 m s2 , 2 rad s2 ) 不同初始误差条件和参考速度控制的仿真结果如图 3, 图 4 所示. 图 3 为机器人在初始
图 3 圆周参考轨迹跟踪结果 Fig. 3 Circal tracking control result
定性. 考虑到机器人的动力学约束, 控制律中引入机器人系统速度、加速度受限策略
以保证机器人运动平滑. 仿真证明该算法具有快速、精确、全局稳定的良好特性.
关键词: 移动机器人; 轨迹跟踪; 积分 backstepping; 全局稳定
中图分类号: TP24
文献标识码: A
0 引言
由于机器人非完整特性, 机器人不满足 Brockett 的光滑镇定条件[ 1] , 使得机器人的跟踪 及姿态( 位置, 方向) 点镇定控制具有挑战性。积分 backstepping 方法是近十年来发展的一种 非线性系统稳定设计理论, 该方法将复杂非线性系统分解为多个子系统, 首先设计最基本子 系统的稳定控制器, 把每个子系统将状态坐标的变化( 虚拟控制量) 和一个已知 lyapunov 函 数的虚拟控制系统的镇定函数联系起来, 然后通过积分器后推, 逐步修正算法, 从而设计镇 定的控制器[ 2] 获得系统最终真正的控制律. 将积分 backstepping 方法用于非完整机器人自适 应跟踪控制引起了有关学者的高度重视[3~ 5] .
t
考虑到机器人运动过程的动力学特性, 如果系统误差比较大, 控制律所产生的控制量
( c , c ) 有可能超出系统的最大速度( max, max ) 或系统的加速度超出系统允许范围( max ,
第3期
非完整轮式移动机器人轨迹跟踪控制 研究
37 9
max ) , 并且系统的速度或加速度太大将会引起机器人运动打滑, 为此, 在控制律中引入如下 控制策略, 从而保证机器人运动平滑.
本文在文献[ 3] 和[ 5] 的基础上, 根据机器人的运动学模型, 引入具有双曲正切特性的虚 拟反馈量, 采用基于积分 backstepping 时变反馈方法对机器人轨迹跟踪控制进行了研究, 控 制器设计更为简单, 并且根据 Lyapunov 理论证明系统全局稳定. 仿真结果表明算法具有快速 跟踪, 稳定特性.
零, 得到 ye 趋于零. 综上分析, 进一步得到 x e 0. 由于 e 为周期函数, e ∀ [ - !, !) 等价
于 e ∀ [ 0, ) , 由 李 亚 普 诺 夫 稳 定 判 据 知, 在 全 局 范 围 内 ( xe y e e) T 有 界 且
lim ( x e y e e ) T = 0.
c=
r+
2
r ayy e cos
e
2
+
ra
\
%sin
e
2
c = r cos e + a1 cf ( k c ) xe - a1f ( k c ) r sin e +
( 7)
axxe - ax a1 f( k c ) ye - a1 k( 1- f2 ( k c ) ) c ye
其中由于 a1 , ax , ay , a , k 为大于零的数, 则
#
x e = x e - a1 kf ∃( k c) cy e - a1f ( k c) ye
( 6)
其中 f ∃( k c) = [ 1 - f 2( k c ) ] . 同时对 Lyapunov 函数求导, 可得:
V = x ex#e +
yey e +
1 ay
s
in
e
2
e=
x e x e - a1f ( k c ) y e - a1 kf ∃( k c ) cy e + ye ( -
a1 f ( k c ) ye , 并且 e 0, 则由系统运动误差模型( 3) 式可知: y e - a1 cf ( k c ) ye . 根据双曲
正切函数特性得到: cf ( k c ) !0, 所以, 当 t
, ye 应按指数收敛于零. 反之, 如果 y e 收敛
于零, 由以上分析可知 x e 也趋向于零. 因此, 控制器的设计主要是寻求控制量 c , c , 使得 xe
V =-
axx
2 e
-
a1
cf ( k
c)
y
2 e
-
1 ay
a
r sin2
e
2
( 8)
由于 a1 , ax , ay , a 均为大于零的数, 且 cf ( k c ) ! 0, 所以 V !0. 由于 V 为连续可微正定函
数并且有界, V 为半负定且一致连续函数, 由 Barbalat 定理可知: t
a1 f ( k c ) ye , e 0. 取 Lyapunov 函数
V=
1 2
x
2 e
+
1 2
y
2 e
+
2 ay
1-
cos
e
2
( 5)
由于 ay > 0, 很明显 V ! 0, 当且仅当( x e , y e , e ) T = 0, V = 0( e ∀ [ - !, !) ) .
由( 4) 式和( 3) 式得:
r sin e +
1 ay
s
in
e
2
(
r-
c) =
cxe + r sin e ) - a1 k( 1 - f 2 ( k c ) )
cy e -
a1
cf ( k
c
)
y
2 e
+
1 ay
sin
e
2
r-
c+
2ayye
r cos
e
2
设 t ∀ [ 0, + ) , r , r , r , r 有界且 r , r 不同时为零, 取系统的控制律为:
收稿日期: 2003 02 20 作者简介: 徐俊艳, 女, 1976 年生, 博士生. 研究方向: 机器人智能控制, 图像识别. E mail: junyanxu@ hotmail . com
第3期
非完整轮式移动机器人轨迹跟踪控制 研究
37 7
xc
cos c 0
c
p c = yc = s in c 0
c
otherw ise
3 实验分析
为了验证算法的有效性, 基于 MATLAB 对算法进行了仿真研究, 仿真过程中, 控制律的 参数选择十分重要, 参数 k 将影响双曲正切函数的平滑程度, 如果 k 值越大则f ∃( k c ) 更快 趋于零, f ( k c) 趋近于 % 1, 从控制律式( 7) 可以发现控制器的调节将变得非常简单. a1, ax 一般改变x 方向误差, ay 改变y 方向误差, a 改变角度误差, 虽然原理上只要 a1 、ax 、ay 、a 均为大于零, 都能保证系统收敛稳定, 但是, 太大的系数会使系统运动振荡较大, 系数太小会 使系统误差收敛速度变慢, 误差调节过程中参数间又是互相影响的. 试验中系统控制参数 ( a1, ax , ay , a , k ) 取为( 1, 2, 0. 2, 2, 5) . 为了保证机器人运动平滑, 我们选取
xe +
r s in e ) +
1 ay
sin
e
2
(
r-
c) =
x e ye c - c + r cos e - a1f ( k c ) ( - cx e + r sin e ) - a1 k ( 1- f 2 ( k c ) ) cye +
百度文库
ye xe - c +
c ( x e + a1f ( k c ) y e ) + r cos e - a1 f ( k c ) ( -
pr e + s ign( c - pre ) max dt
if ( c >
max )
c = sign( c ) max
if ( c >
max )
c
otherw is
pre + s ign( c - pre ) max dt
if ( c > max )
c = sign( c ) max
if ( c > max )
xe
cye - c + r cos e
p e = y e = - cxe + r sin e
( 3)
e
r- c
基于机器人运动学模型的跟踪控制问题主要使机器人系统在
任意初始误差下, 确定机器人的输入控制 c , 考位姿 pr = ( x r y r r ) T 和参考输入 qr = ( r e ) T 有界和l im ( x e ye e ) T = 0.
xe
cos c sin c 0 xr - xc
pe = ye
= - s in c cos c 0 yr - yc
= Re ( p r - p )c ( 0, x, y)
( 2)
e ( M, i, j)
0
0
1
- r
c ( O, x, y)
Re 为转移矩阵, ( x e , y e ) 为局部坐标系中 MN 矢量坐标. 机器 人位置误差微分方程[ 3] 为
中 国 科 学技 术 大 学 学 报
Vol. 34, No. 3
2 0 0 4 年 6 月 JOURNAL OF UNIVERSITY OF SCIENCE AND TECHNOLOGY OF CHINA Jun. 2 0 0 4
文章编号: 0253 2778( 2004) 03 0376 05
t
c , 从而跟踪参 r ) T , 使得( xe ye
图 1 机器人示意图 Fig. 1 Robot structure
2 控制算法的设计
机器人轨迹跟踪控制系统结构如图 2 所示, 系统的输入为参考位姿 p r 和参考速度qr , 系 统的输出为机器人当前时刻的位姿 p c, 系统控制器根据系统位姿误差 p e 和参考速度 qr 得到 机器人的控制速度 qc , 然后, 经过动力学约束和运动学方程运算得到当前时刻的位姿 pc , 如 此反复经过控制器调节, 最终使得系统位姿误差 p e 趋于零.
( 4)
其中 f ( k
c) =
1 - exp( 1 + exp( -
2k 2k
c) c)
为双曲正切函数.
a1f ( k
c ) y e 为虚拟反馈,
双曲正切函数
3 78
中国科学技术 大学学报
第 34 卷
f ( k c) 使虚拟反馈调节范围平滑在[ - a1 ye , a1 y e ] 之间. 如果控制作用使得控制量 x e
= Jp c
( 1)
c
c
01
J 为雅可比矩阵. 假设存在参考移动机器人由向量 pr = ( x r y r r ) T 表示, ( x r , yr ) 为点 N 的坐
标, r 为参考移动机器人的运动方向. 在以移动机器人为参考的局部坐标系( M, i , j ) 中, 机 器人运动的误差矢量 pe = ( x e ye e ) T 可表示为:
1 运动学模型及跟踪问题描述
如图 1 所示, 在全局坐标系 ( O , X , Y) 中, 机器人的位置可由向量 p c = ( x c yc c ) T 表示,
( xc , yc ) 为点 M 的坐标, c 为沿 X 轴逆时针得到的机器运动方向. 移动机器人的运动由机器人 的线速度 c 和角速度 c 来表示. 设 qc = ( c c ) T , 机器人的运动学方程可由以下方程表示:
图 4 参考轨迹直线跟踪结果 Fig. 4 Straiqht line tracking control result
误差 ( xe , ye , e ) 为( 10m, - 15m, - !rad) , 参考速度 ( r , r ) 为( 1m s, 0. 1rad s) 的条件下, 跟踪参考参考轨迹为以( 20, 0) 为圆心半径为 10m 的圆. 图 4 为机器人在初始误差 ( xe , ye , e ) 为( - 7. 89, - 10. 33, 11 12!) , 参考速度 ( r , r ) 为( 2m s, 0) 的条件下跟踪以( 0, 0) 为起
非完整轮式移动机器人轨迹跟踪控制研究
徐俊艳, 张培仁
( 中国科学技术大学自动化系, 合肥 230026)
摘要: 根据机器人的运动学模型, 对具有非完整特性的移动机器人轨迹跟踪控制进行
了研究. 采用基于积分 backstepping 时变状态反馈方法, 引入具有双曲正切特性的虚
拟反馈量, 设计机器人轨迹跟踪控制算法, 并且利用 Lyapunov 方法证明系统的全局稳
时, V 0, 这意味着
x
2 e
(
t
)
,
y
2 e
(
t)
cf ( k
c),
s in2
e
2
分别趋于零. 所以,
lim
t
e=
0(
e ∀ [ - !, !) ) , limx e = 0 即 t
xe a1 f ( k c ) ye . 由于 r , r 不同时为零, 由控制律知 c 不恒等于零且y2e ( t ) cf ( k c ) 趋于
图 2 机 器人跟踪控制系统结构
Fig. 2 The Structure of robot tracking control system
本文采用积分 backstepping 思想, 根据机器人的运动学模型, 将机器人系统中的误差分 量 x e 视为虚拟控制量, 新的虚拟误差变量取为:
x e = xe - a1f ( k c ) y e
( max , max ) = ( 10 m s, 1 rad s) , ( max , max ) = ( 20 m s2 , 2 rad s2 ) 不同初始误差条件和参考速度控制的仿真结果如图 3, 图 4 所示. 图 3 为机器人在初始
图 3 圆周参考轨迹跟踪结果 Fig. 3 Circal tracking control result
定性. 考虑到机器人的动力学约束, 控制律中引入机器人系统速度、加速度受限策略
以保证机器人运动平滑. 仿真证明该算法具有快速、精确、全局稳定的良好特性.
关键词: 移动机器人; 轨迹跟踪; 积分 backstepping; 全局稳定
中图分类号: TP24
文献标识码: A
0 引言
由于机器人非完整特性, 机器人不满足 Brockett 的光滑镇定条件[ 1] , 使得机器人的跟踪 及姿态( 位置, 方向) 点镇定控制具有挑战性。积分 backstepping 方法是近十年来发展的一种 非线性系统稳定设计理论, 该方法将复杂非线性系统分解为多个子系统, 首先设计最基本子 系统的稳定控制器, 把每个子系统将状态坐标的变化( 虚拟控制量) 和一个已知 lyapunov 函 数的虚拟控制系统的镇定函数联系起来, 然后通过积分器后推, 逐步修正算法, 从而设计镇 定的控制器[ 2] 获得系统最终真正的控制律. 将积分 backstepping 方法用于非完整机器人自适 应跟踪控制引起了有关学者的高度重视[3~ 5] .
t
考虑到机器人运动过程的动力学特性, 如果系统误差比较大, 控制律所产生的控制量
( c , c ) 有可能超出系统的最大速度( max, max ) 或系统的加速度超出系统允许范围( max ,
第3期
非完整轮式移动机器人轨迹跟踪控制 研究
37 9
max ) , 并且系统的速度或加速度太大将会引起机器人运动打滑, 为此, 在控制律中引入如下 控制策略, 从而保证机器人运动平滑.
本文在文献[ 3] 和[ 5] 的基础上, 根据机器人的运动学模型, 引入具有双曲正切特性的虚 拟反馈量, 采用基于积分 backstepping 时变反馈方法对机器人轨迹跟踪控制进行了研究, 控 制器设计更为简单, 并且根据 Lyapunov 理论证明系统全局稳定. 仿真结果表明算法具有快速 跟踪, 稳定特性.
零, 得到 ye 趋于零. 综上分析, 进一步得到 x e 0. 由于 e 为周期函数, e ∀ [ - !, !) 等价
于 e ∀ [ 0, ) , 由 李 亚 普 诺 夫 稳 定 判 据 知, 在 全 局 范 围 内 ( xe y e e) T 有 界 且
lim ( x e y e e ) T = 0.
c=
r+
2
r ayy e cos
e
2
+
ra
\
%sin
e
2
c = r cos e + a1 cf ( k c ) xe - a1f ( k c ) r sin e +
( 7)
axxe - ax a1 f( k c ) ye - a1 k( 1- f2 ( k c ) ) c ye
其中由于 a1 , ax , ay , a , k 为大于零的数, 则
#
x e = x e - a1 kf ∃( k c) cy e - a1f ( k c) ye
( 6)
其中 f ∃( k c) = [ 1 - f 2( k c ) ] . 同时对 Lyapunov 函数求导, 可得:
V = x ex#e +
yey e +
1 ay
s
in
e
2
e=
x e x e - a1f ( k c ) y e - a1 kf ∃( k c ) cy e + ye ( -
a1 f ( k c ) ye , 并且 e 0, 则由系统运动误差模型( 3) 式可知: y e - a1 cf ( k c ) ye . 根据双曲
正切函数特性得到: cf ( k c ) !0, 所以, 当 t
, ye 应按指数收敛于零. 反之, 如果 y e 收敛
于零, 由以上分析可知 x e 也趋向于零. 因此, 控制器的设计主要是寻求控制量 c , c , 使得 xe
V =-
axx
2 e
-
a1
cf ( k
c)
y
2 e
-
1 ay
a
r sin2
e
2
( 8)
由于 a1 , ax , ay , a 均为大于零的数, 且 cf ( k c ) ! 0, 所以 V !0. 由于 V 为连续可微正定函
数并且有界, V 为半负定且一致连续函数, 由 Barbalat 定理可知: t
a1 f ( k c ) ye , e 0. 取 Lyapunov 函数
V=
1 2
x
2 e
+
1 2
y
2 e
+
2 ay
1-
cos
e
2
( 5)
由于 ay > 0, 很明显 V ! 0, 当且仅当( x e , y e , e ) T = 0, V = 0( e ∀ [ - !, !) ) .
由( 4) 式和( 3) 式得:
r sin e +
1 ay
s
in
e
2
(
r-
c) =
cxe + r sin e ) - a1 k( 1 - f 2 ( k c ) )
cy e -
a1
cf ( k
c
)
y
2 e
+
1 ay
sin
e
2
r-
c+
2ayye
r cos
e
2
设 t ∀ [ 0, + ) , r , r , r , r 有界且 r , r 不同时为零, 取系统的控制律为:
收稿日期: 2003 02 20 作者简介: 徐俊艳, 女, 1976 年生, 博士生. 研究方向: 机器人智能控制, 图像识别. E mail: junyanxu@ hotmail . com
第3期
非完整轮式移动机器人轨迹跟踪控制 研究
37 7
xc
cos c 0
c
p c = yc = s in c 0
c
otherw ise
3 实验分析
为了验证算法的有效性, 基于 MATLAB 对算法进行了仿真研究, 仿真过程中, 控制律的 参数选择十分重要, 参数 k 将影响双曲正切函数的平滑程度, 如果 k 值越大则f ∃( k c ) 更快 趋于零, f ( k c) 趋近于 % 1, 从控制律式( 7) 可以发现控制器的调节将变得非常简单. a1, ax 一般改变x 方向误差, ay 改变y 方向误差, a 改变角度误差, 虽然原理上只要 a1 、ax 、ay 、a 均为大于零, 都能保证系统收敛稳定, 但是, 太大的系数会使系统运动振荡较大, 系数太小会 使系统误差收敛速度变慢, 误差调节过程中参数间又是互相影响的. 试验中系统控制参数 ( a1, ax , ay , a , k ) 取为( 1, 2, 0. 2, 2, 5) . 为了保证机器人运动平滑, 我们选取
xe +
r s in e ) +
1 ay
sin
e
2
(
r-
c) =
x e ye c - c + r cos e - a1f ( k c ) ( - cx e + r sin e ) - a1 k ( 1- f 2 ( k c ) ) cye +
百度文库
ye xe - c +
c ( x e + a1f ( k c ) y e ) + r cos e - a1 f ( k c ) ( -
pr e + s ign( c - pre ) max dt
if ( c >
max )
c = sign( c ) max
if ( c >
max )
c
otherw is
pre + s ign( c - pre ) max dt
if ( c > max )
c = sign( c ) max
if ( c > max )
xe
cye - c + r cos e
p e = y e = - cxe + r sin e
( 3)
e
r- c
基于机器人运动学模型的跟踪控制问题主要使机器人系统在
任意初始误差下, 确定机器人的输入控制 c , 考位姿 pr = ( x r y r r ) T 和参考输入 qr = ( r e ) T 有界和l im ( x e ye e ) T = 0.
xe
cos c sin c 0 xr - xc
pe = ye
= - s in c cos c 0 yr - yc
= Re ( p r - p )c ( 0, x, y)
( 2)
e ( M, i, j)
0
0
1
- r
c ( O, x, y)
Re 为转移矩阵, ( x e , y e ) 为局部坐标系中 MN 矢量坐标. 机器 人位置误差微分方程[ 3] 为