第六章 机器人动力学
第六章机器人操作臂动力学
动力学研究的是物体的运动和受力之间的关系。操作臂动力学有两个问题需要解决。
①动力学正问题:根据关节运动力矩或力,计算操作臂的运动(关节位移,速
度和加速度)
②动力学逆问题:已知轨迹运动对应的关节位移,速度和加速度,求出所需要
的关节力矩或力。
机器人操作臂是个复杂的动力学系统,由多个连杆和多个关节组成,具有多个输入和多个输出,存在着错综复杂的耦合关系和严重的非线性。因此,对于机器人动力学的研究,引起了十分广泛的重视。所采用的方法很多,①有拉格朗日方法,②牛顿-欧拉方法,③高斯法,④凯恩方法,⑤旋量对偶数方法等等。在此重点介绍牛顿-欧拉方法,它是基于运动坐标和达朗贝尔原理来建立相应的运动方程。
研究机器人动力学的目的是多方面的,动力学正问题与操作臂仿真有关,逆问题是为实时控制的需要,利用动力学模型,实现最优控制,以期达到良好的动态性能和最优指标。
机器人动力学模型主要用于机器人的设计和离线编程。在设计中需根据连杆质量,运动学和动力学参数,传动机构特征和负载大小进行动态仿真,从而决定机器人的结构参数和传动方案,验算设计方案的合理性和可行性,以及结构优化程度。在离线编程时,为了估计机器人高速运动引起的动载荷和路径偏差,要进行路径控制仿真和动态模型的仿真。这些都必须以机器人动态模型为基础。
为了建立机器人动力学方程,在此首先讨论机器人运动的瞬时状态,对其进行速度分析和加速度分析,研究连杆的静力平衡,然后利用朗贝尔原理,将静力学平衡条件用于动力学。
§6-1连杆的速度和加速度
点的速度表示一般要涉及到两个坐标系:
要指明速度是相对于哪个坐标系的运动所造成的。
① 要指明在哪个坐标系中描述这一速度。
连杆I 相对于参考系{o 的速度用w i 和v i 表示; w i 是连杆坐标系{i}的角速度矢量,v i 是{i}的原点线速度矢量。如果把两个向量在{i}中描述,即为
i
w i 和i
v i
。
为了描述刚体在不同坐标系中的运动,设有两坐标系:参考系{A}和运动坐
标系{B}.{B}相对于{A}的位置矢量为0B A P ,旋转矩阵为R A
B 。
任一点P 在两坐标系中的描述P A 和P B 之间的关系为:
P A
=0B A P +R A
B P B
将上式两边对时间求导得:=P A 0
B A P +P R P R B A B B A B + P A
和P B 分别表示点P 的速度相对于{A}和{B}的运动造成的,记为V A 和P
B V ; 0B A
P 是{B}的原点相对{A}的运动速度,记为0B A V ; R A
B
表示旋转矩阵的R A B
导数。 一 旋转矩阵的导数R
利用导数和微分的定义,即
()()()()t t R t t R t t R t R t t ??=?-?+=→?→?lim lim 0
0 由选择变换的公式可知,()t t R ?+总是可以看成为()t R 在时间间隔t ?内绕某轴K 转动微分角度δθ而得到的,即
()()()t R k R t t R δθ,=?+
()()()()()()()t R k t R I k R t R t t K t R δθδθ,],[A =-=-?+=?
式中,I 是3*3的单位矩阵,()δθ,k A 称微分旋转算子。利用选择变换通式,并用微量δθ代替θ,由于1cos ,sin ==δθγθδθ可得:
()()???
?
??????---=-=A 000,,δθδθδθδθδθδθδθδθx y x z y z k k k k k k I k R k
把上式两端除以t ?,并取极限,定义为角速度算子矩阵:
()????
?
?????---=??????????---=000000x
y
x z
y z x y x z y
z w w w w w w k k k k k k w S θθθθθθ 相应的角度矢量W 为:
角速度算子矩阵()w S 和角速度矢量W 是角速度的两种描述,在任意矢径P 处引起的线速度p V 可表示为
()P W p w S V p ?=?= 有伤吗可得旋转矩阵的导数;
()()R W R w S t R
?== 二. 刚体的速度和加速度
根据公式 ()()()
R W S R R w S t R A B
B A A B =?= 则;()
P R W S V R V V B A
B B A P B A B B A P A ?++=0
将上式两端求导,得加速度P A V 和P
B V 之间的关系: ()()()()
P R W S W S P R W S V R W S V R V V B A B
B A B A B A B B A P B A B B A P B A B B A P A
++++= 20 上面两式分别表示质点P 在不同坐标系中运动速度和加速度的转换公式,根
据不同的情况,该公式还可简化:
()a {A}固定不动,刚体与{B}固接
const P B
= 0==P
B P B V V 则 ()
P R W S V V B A B B A B A P A
+=0
()()()
P R W S W S P R W S V V B A B
B A B A B A B B A B A P A
++= 0 ()b 若运动坐标系{B}相对于参考系{A}移动,即R A B 固定不变;
θ
θ
θθ I w w w k k k W z y x z y x =??????????=??????????=
P
B A B B A P A
P B
A B B A P A B A B A V R V V V R V V W W +=+===000
()c 若{B}相对于{A}纯滚动;
const P B A
=0 00
0==B A B A V V 则: ()
P R W S V R V B A B B A P B A B P A
+=
()()()()
P R W S W S P R W S V R W S V R V B A B
B A B A B A B B A P B A B B A P B A B P A
+++= 2 式中B A W 表示坐标系{B}相对{A}转动的角速度矢量,因为角速度矢量是自由矢量。若已知{C}相对{B}的转动角速度为C B W ,则{C}相对{A}的转动角速度和角加速度矢量为:
C
B
A B B A C B A B B A C A C
B A B B A
C A
W R W S W R W W W R W W )(++=+= 三.旋转关节的连杆运动的传递。
连杆运动通常是用连杆坐标系的原点和加速度,以及连杆坐标系的角速度和角加速度来表示的。i v 和i w 分别表示连杆坐标系{}i 相对参考系{}0的线速度和角速度,而i i v 和i i w 在坐标系{}i 中表示的。11++i i v 和11++i i w 表示在连杆坐标系{}1+i 中的线速度和角速度。
连杆i+1相对连杆i 转动的角速度是绕关节i+1运动引起的。
i i
V
i i w
1
1
++i i V 1
1
++i i w
??
??
?
?????=+++++11
11100i i i i i Z θθ 1+i θ 是关节角速度,1
1++i i Z 是{i+1}的Z 轴单位向量 因为:同一坐标系中的向量可相加,因此,连杆i+1的角速度等于连杆i 的角速
度加上连杆i+1的角速度加上连杆i+1绕关节i+1旋转的角速度,在[i]中的表示为:
1+i i
w =
i i
w
+1
1
+?
+i i i k θ
11++i i z
将此式两端左乘旋转矩阵R i i 1
+,则得到相对连杆本身坐标系{i+1}的表示:
11
++i i w
=i i
i i w R 1
++1
+?
i θ
11
++i i z
①
坐标系{i+1}原点的线速度等于坐标系{i}原点的线速度加上连杆i 转动速度而产生的分量。1+i i
p 表示{i+1}的原点在坐标系{i}中的位置矢量,是不变
的,因此:
1i
i i i i i v v w +=+×1i i p +
此式两端都左乘1
i i
R +;得到相对于{i+1}中的表示:
1
111()i i i i i i i i i i v R v w x p ++++=
+ ②
由①和②式可以得到从一连杆向下一连杆的角加速度和线加速度 传递公式:
11
11i i i i
i i
i i
i i w R w R w +?
?
+++=
+
×1
+?
i θ
1
11111
i i i i i i Z Z θ+++++++ 1
1i i v ++=1i i R +11()i i i i i i
i i i i i i v w p w w p ++??+?+????
四.移动关节的连杆运动传递
当关节i+1是移动关节时,连杆i+1相对坐标系{i+1}的Z 轴移动,没有转
动,R i
i 1
+是常数矩阵,相应的运动“传递”关系为:
1
11i i i i i
i w R w +++=
1
111111
()i i i i i i i i
i i i i i v R v w p d Z +++++++=
+?+ 1
1
1i i i i i i w R w
+++=
1
1
111[()]i i i i i i i i i i i i i i i i v R v
w p w w p +++++=+?+?? 11111111
i i i i i i i i Z w d Z d Z +++++++++?+ 五.质心的速度和加速度
i
i i i ci i i ci v v w p =+?
()i
i i i i i i ci i i ci i i ci v
v w p w w p =+?+?? 式中,质心坐标系的{i c
}与连接杆i 固接;坐标原点位于连杆i 的质心,
坐标方向与{i}同向。上式中不含关节运动,因此,不论关节i+1是转动还是移动都同样适用。
上面是计算操作臂各连接杆运动的传递的公式,利用这些公式既可依次从基座开始传递各连杆的
i
i w ,i i v ,i i w
和i i v 。作为递推的初始(基座)
0w w
==
, 0v v
==
,这样递推得到的连杆速度、角速度、加速度和角加速度都是相对连杆本身坐标系表示的。如果将这些速度和角速度相对于基坐标系{0}表示,则需左乘旋转矩阵0
i R ,即:
i i i i w R w =
i i i i v R v = (i=1,2,……,n)
六.雅克比矩阵的速度递推法
逐次运用上面所介绍的递推公式,即可求出末端连杆的角速度
n
n w 和线速
度n
n v ,根据上式,利用n R 左乘,则p 得到这些速度在基座标系中的表示=n
w 和
n v
,简写为n w ,n v 。构造末端连杆的笛卡尔广义速度:
n n n n v v x
w ??==????
它与关节速度q
之间的关系就是由雅克比组成的线性映射: ()n n x
J q q = 【例】 用递推法求出平面2R 机械手末端连杆的速度和角速度,雅克比。
{3}固接在手臂末端,既有30θ=,3
0θ=
各连杆变换为:
1111
01
cos sin 00sin cos 0000100
1T θθθ
θ-????-??=??????
沿Z 轴旋转1
θ
22122
12cos sin 0sin cos 000010000
1l T θθθ
θ-????-??=??????
沿Z 轴旋转2θ,1X 轴移动1
l
22310001000
0100
1l T ??????=??????
2X 轴移动2l
适用式:11
1111i i i i i
i i i w Rw Z θ++++++=+
1111()i i i i i i i i i i v R v w p ++++=
+?
依次算出各连接杆的速度和角速度。基座标系{0}固定又动
00w =
00v =
其余各连杆的速度和角速度为“
1
1100w θ??
??=??????
11000v ????=??????
2
21200w θθ????=??
??+??
121
12
2
2
22
21211000000
100l s l c s v s c l c θθθ????
????????????????=--?=
????????????????????????????
??
3
232w w =
21
21
3
31
2
1121
0000
1
0000
100
00l l s v l c θθθθ??
??????????????????=+?????????????????????+???????
?
??
2211
12
121212122220()0l s l s l c l l c l l θθθθθθ????????=++=??????+????????
??
12
3122
20()l s J q l c l l ??∴=?
?+??
为了求出相对于基座标系{0}表示的
3w 和03v ,计算旋转变换:
12
120012
312312
1200001c s R R R R s c -??
??==??????
033331200w R w θθ??
??==??
??+??
1112121200333311121212()()0l s l s v R v l c l c θθθθθθ??--+??==++??????
末端连杆的卡迪尔广义速度为:
311212212311212
212331
33323300000011x y z x y z v l s l s l s v l c l c l c v v v w w w w θθ??---??
???
?+????
?????
?????===???
??????????
??????????
????
?
?? 于是机械手的雅克比即为
11212212112122120
00()000011l s l s l s l c l c l c J q ---????+????=????????
?
?
可知与前面求得的结果是一样的。
§6-2 连杆静力学分析
在对操作壁进行静力学分析时,首先考虑其中的一个连杆i ,建立连杆i 的力和力矩平衡方程。
图为连杆i 和连杆i+1的受力情况。
i f 和i n 分别表示连杆i-1作用在连杆i 上的力和力矩。 i m g 为连杆i 的重量,作用在质心上,质心的位置矢量为ci i r 。
当连杆处于平衡状态时,其上所受的合力和力矩为零,因此得到力和力矩平衡方程式(在{i}中的表示):
11111
11i i i i i i i i i i i i i i i i f R f n R n p f +++++++?=?=+??111100i i i i i i i i i i i i i i i i ci i f f m g n n p f r m g ++++?-+=?--?+?=? 在此,暂时忽略连杆本身的自重,从末端连杆逐次向基座(连杆0)反向递推各连杆所受的力和力矩:
1111i i i i i i i i
i i i i f f n n p f ++++?=?=+??
利用旋转变换矩阵R i i 1
+,将上式右端的力和力矩写成在自身坐标系中的表
示:
1111111i
i i i i i i i i i i
i i i i i f R f n R n p f +++++++?=?=+??
接下来的任务是计算每个关节的驱动力或力矩。其实各个连杆所承受的力向量和力矩向量中,某些分量由操作臂本身的连杆结构所平衡,一部分量则为各关节的驱动力或驱动力矩所平衡。
对于转动关节,关节驱动力矩平衡力矩的Z 分量:
i i T i i i z n ?=τ
对于移动关节,关节驱动力平衡力的Z 分量:
i i T i i i Z f ?=τ
类似于速度雅克比的递推算法,可以得到力雅克比的递推算法。下面举例说明:
[例]:平面2R 机械手,令f 3
是水平左作用在机械手的末端执行器(即坐标{3}的圆点上)的外力。
那么各关节的表达式反向递推如下:
111i
i i i i i f R f +++= 1111i i i i i i i i i i n R n p f ++++=+?
223
23310001000100x x y y f f f R f f f ??????
??????===??????
????????????
223
22233322220x y y f o n R n p f l x f o l f ??
??????=+?=??=?
??????????? 2
2221
121222
2
2200100x x y y x y c s f c f s f f R f s c f s f c f o
o
--????????????===+??????
???????????? 2
2221
1211122212
211222121220000000
10x y x y y x y y c s c f s f n R n p f s c l x s f c f l f l s f l c f l f ???
?--????????????=+?=+?+=???
?????????????++????????
11112212121220
000()1T
T
i i x
y x y y n z l s f l l c f
l s f l c f l f τ????
????=?==++??
??????++????
2222T
i i y
n z l f τ=?=
写成矩阵形成:
111222220x y f l s l l c f l ττ+??????=????????????11111111i
i i i i i i i i i i
i i i i i f R f n R n p f ++++++++?
=?=+?? 于是得到在{3}中表示的力雅克比为:
112223
2()0T l S l l c J q l +??
=??
??
将旋转矩阵0
3
T
R 右乘()3T J q ,得到在{0}表示的力雅克比:
()()11212112120
303212212T
T T
l s l s l c l c J
q J q R l s l c --+??==??-??
§6-3 牛顿—欧拉递推运动学方程
操作臂动力学的研究方法很多,现利用运动(速度和加速度)递推和力的递推来建立操作臂运动学方程,讨论运动学问题的求解方法。 一. 牛顿—欧拉方程
如果将操作臂的连杆堪称刚体,它的质心加速度c v ?
、总质量m 与产生这一加速度的作用力f 之间的关系满足牛顿第二运动定律:
c f mv ?
=
当刚体绕过质心的轴线旋转时,角速度ω、角加速度?
ω、惯性张量C
I ,与
作用力矩n 之间满足欧拉方程:
()
C
C n I I ωωω?
=+?
二. 惯性张量
令{C}是以刚体的质心C 为原点规定的一个坐标系,相对于该坐标系{C},惯
性张量C
I 定义为33?的对称矩阵:
xx xy xz c
xy
yy yz xz yz
zz I I I I I I I I I I ??
--??=--????--?
?
式中,对角线元素是刚体绕三坐标轴x,y,z 的质量惯性矩: ()22xx v
I y z dv
ρ=+??? ()2
2
yy v
I x z
dv
ρ=+???
()22zz v
I x y dv
ρ=+???
其余元素为惯性积:
xy v
I xy dv
ρ=???
yz v
I yz dv
ρ=???
zx v
I zx dv
ρ=???
ρ为密度;dv 是微分体元,其位置由矢量(),,T
c
p x y z =确定。
惯性张量C
I 表示刚体质量分布的特征,其值与选取的参考坐标有关,如果
所选的坐标系{c}的方位使各惯性积
xy
I ,
yz
I 和zx I 均为零,惯性张量变成对角型,
则此坐标的各轴称为惯性主轴,相应的质量惯性矩称为主惯性矩。
令坐标系{A}与质心坐标系{C}平行,根据平行轴定理,刚体相对两平行坐标系的惯性矩和惯性积存在以下关系:
A
C xy xy c c
I I mx y =+
()
22A
C zz zz C C I I m x y =++
式中c x ,c y ,c z 是质心,C 在{}
A 中的三个分量,其他惯性矩和惯性
积的转换公式类似。
三. 动力学逆问题的递推算法。
动力学逆问题是根据关节位移、速度和加速度θθθ???
?? ??
?
求所需的关节力
矩或力τ。整个算法由两部分组成:
① 首先向外递推计算各连杆的速度和加速度,由牛顿—欧拉公式算出各连杆的惯性力和力矩。
② 向内递推计算各连杆相互作用的力和力矩,以关节驱动力或力矩。 向外递推(i :0—>n-1)
1111+++++?i i i i i i i
Z R θω (对于转动关节i+1) i i
i i R ω?+1 (对于移动关节i+1)
i i i i
R ω ?+1+
1111111+++++++?+??i i i i i i i i i i Z Z X R θθω (转动关节) i i
i i R ω
?+1 (移动关节)
=
++11
i i ω=++11i i ω
R i i
1+[]
)(11++++i i i i i i i i i i i i P X X P X ωωων (转动关节)
R i i
1
+[]
)(11++++i i
i i i i i i
i
i
i
i
P X X P X ωωων
+
111111112+++++++++?i i i i i i i i Z d Z d X ω (移动关节) )(11111111111111
++++++++++++++++=ci i i i i i ci i i i i i ci i X X X γωωγωνν 11111
+++++=ci i i ci i m f ν
(
)
1111
11111111
+++++++++++++=i i i ci i i i i i ci ci i I X I n ωωω
向内递推(i :n —>1)
ci i
i i i i i i
f f R f +=+++111 1111111
++++++++++=i i i i i i ci i ci i ci i i i i i i i f R X P f X n n R n γ
i i
T
i i Z n ? (转动关节) i i
T i i Z f ? (移动关节)
[例] 平面2R 机械手,假定两个连杆的质量集中在连杆末端,分别为m 1和m 2。机械手的运动参数和动力学参数为:
1111X l P c =,2222
X l P c = 两连杆质心矢径
11
I c =0 22I c =0 相对质心的惯性张量为0
f 03= n 03= 末端执行器自由
00=ω 00=ω 基座固定
000
Y g V
= 考虑重力的作用
连杆间的旋转变换矩阵为:
??????????-=+++++100
0011
111
i i i i i i c s s c R ??
???
?????-=+++++1000011111
i i i i i i c s s c R
向外递推计算各连杆的速度和加速度
=++11
i i ν
=
i τ
??????????=?=11111100θθω Z ??????????=?=11111100θθω Z ??
???
?????=????????????????????-=0001000011111111
gc gs g c s s c υ
??????????+-=??????????????????????????????????????????+?????????????????????+??????????=00000000000011121
11111111111θθθθθυ l gc l gs l l gc gs c ??????????+-==011121
11111111θθν l gc l gs m m f c c
??
???
?????=00011
c n
对于连杆2:
??????????+=212200θθω ??
???
?????+=2122
00θθω
??????????+++-=???????
???+-???????
???-=0010
0002112211122
1122111211121112222
22
c l s l gc s l c l gs l gc l gs c s s c θθθθθθυ
(
)
(
)??????????+++-+????
??
?????
?+-+?????????
?
+=0000
2112211122
112211122
2
1221222
c l s l gc s l c l gs l l c θθθθθθθθυ
??????????+++++-+-=0)()
(2122112211122212211221112222θθθθθθθθ l c l s l gc l s l c l gs m f c ??
????????=00022
c n
向内递推计算 对于连杆2:
2222
c f f =
??
???
?????++++=)(002122212222122121221222
θθθθ l m gc l m s l l m c l l m n
对于连杆1:
????
??????++-+??????????+++-++--??????????-=00)()(10
001121111
121111222122212121
2121222212221212121222
2
2
11
gc m l m gs m l m gc m l m s l m c l m gs m l m c l m s l m c s s c f θθθθθθθθθθ
??????????++++=1222212212212221221211
)(00gc l m s l l m l m c l l m n θθθθ ++??
???
?????+11121100gc m l m θ ??
???
?????++-++=1122212212212212121211
)()(00gc l m s l l m c l l m l m n θθθθθ
最后,将11
n 和22n 的Z 轴分量列出,即得到两关节力矩:
22221212121212212212221)()2()(θθθθθθτ s l l m l m m c l l m l m -+++++=
11211222212212)(2gc l m m gc l m gs l l m ++++θθ
122221221221222122122)(gc l m s l l m l m c l l m ++++=θθθθτ
此为关节驱动力矩作为关节位移、速度和加速度的显函数表达式,即为平面2R 机械手动力学方程的封闭形式。
§6-4 关节空间和操作空间动力学
一 关节空间动力学方程
将上面得到的平面2R 机械手的动力学方程封闭形式写成矩阵形式:
?
?
????=21τττ
?
?????=21θθq ??????+++++=2
22221222212
2212122212211)()()2()(l m c l l l m c l l l m c l l l l m l m q D
()??????--=2122122
12212222212,2θθθθ s l l m s l l m s l l m h q q
??????++=122211211222)()(gc l m gc l m m gc l m G q 则:
()q q q q G q
h q D ++= ),()(τ
此为操作臂在关节空间中的动力学方程封闭形式的一般结构式,它反映了关节力矩与关节变量、速度和加速度之间的函数关系。对于n 个关节操作臂,D )(q 是
n n ?的正定对称矩阵,是q 的函数,称为操作臂的惯性矩阵;()q q h ,是1?n 的离心
力和哥氏力向量;
)
(q G 是1?n 的重力矢量,与机械手的形位q 有关。
D )(q 表示惯性力(矩)。D )(q 中的主对角元素表示各连杆本身的有效性,代表给定关节上的力矩与产生的角加速度之间的关系;而非主对角元素代表连杆之间的耦合惯性,即为某连杆的加速运动对另一关节产生耦合作用力矩的度量。
()
q q h ,包括两部分:共一与关节速度平方成正比,表示该关节速度产生的离心
力。其二与两关节速度的乘积成正比,称为哥氏力。
因而可将该项()q q h ,分成两部分,即;
()[][]2)()(,,q c q q
B h q q q q +=
)(q B 称为哥氏力的系数矩阵,为2/)1(-?n n n 阶矩阵。 )
(q C 是n n ?阶的离心力系数矩阵。
[]q q ,是2/)1(-n n 维的关节速度积矢量:[]q q ,=[]n
n q q q q q q
13
12
1,,-
[][]222
2
1
2
,,n
q q q q =是n 维关节速度平方矢量。
动力学方程可写成另一种形式——形位空间方程:
[]()q q q q G q C q q B q
D +++=2)()()(, τ
对于平面2R 机械手:
[][][][]T T q q q 2221221,,,θθθθ ==
???
???-=022212)
(s l l m B q ???
???-=0022122212)(s l l m s l l m C q
二 操作空间动力学方程
与关节可将动力学方程相对应,在笛卡尔操作空间中,操作力F 与末端加速
度X 方程表示为:之间的关系可用动力学
F=
()()
q q q P u x V ++ ,q )( …………①
)
(q V :操作空间中的惯性矩阵 ()q q u ,:操作空间的离心力和哥氏力向量
()
q P : 操作空间中的重力向量
x: 操作臂末端位姿向量
F :广义操作力向量,它与关节力向量τ之间的关系为F J q T
)(=τ操作空间与
关节空间之间的速度与加速度的关系为:
q J x
q )(=
()q q a q J q J q J x
r q q q ,)()()(+=+=
将式①两端左乘)(q T
J :
()()()
q q T q T q q T q T P J q q u J x V J F J )()()()(,++=
()()()()()
q q T q T r q q T q q q T q T P J q q u J q q a V J q J V J F J )()()()()()(,,+++=
比较关节空间与操作空间动力学方程可以看出两者之间存在以下关系:
)
()()(),()(),()()(),()
()()()(q P q J q G q q u q J q q a q V q J q
q h q J q V q J q D T T r T T =+==
如果雅可比)(q J 的逆存在,则与上述关系式相对应的有:
??
?
??=-==----)()()(),()()()(),()
()()()(1q G q J q P q q a q V q h q J q q u q J q D q J q V T r T T
【例】写出平面2R 机械手的操作空间动力学方程。
???????
???
?????????
????+=??????????+++--+-=???
?
?
?????-+=??
??
??-=??
????--=
????
??+=-1221222112121221212212
211212222222212221222122222
212213
212
2122211
322
21213)()2()(00)(00)(01)(0)(gc m gs m s gc m q P s l m s l m s c l m c l m l m l m l m c l m u s l s m m q V s l c l q J s l l c l l s l l q J l l c l s l q J θθθθθθθθθθ
当?=02s 或?180时,机械手处于奇异状态,操作空间动力学方程中的某些项趋于无限大。例如:操作空间中的有效惯性沿径向的分量变为无穷大,这一特定方向称为奇异方向。机械手不能沿此方向运动,但在垂直于这一方向的子空间内,一般还是可以的。
三、操作运动—关节力矩方程。
机器人动力学最终是研究其关节输入力矩与其输出的操作运动之间的关系。
[][][])()(,)()()()(),()()(2q G q q C q q q B x
q V q J q p q q u x
q V q J x x T T +++=++= ττ 一般情况下,)()(q B q B x ≠ )()(q C q C x ≠
§6-5拉格朗日动力学
前面推导的操作臂动力学方程的封闭形式是基于牛顿第二定律和欧拉方程给出的,并利用达朗贝尔原理,将静力平衡条件用于动力学问题。平衡方程中既
考虑外界驱动力,又计及产生加速度的惯性力。而拉格朗日动力学描述则基于系统能量的概念。对于任何机械系统,拉格朗日函数L 定义为系统总的动能k E 与总的势能
p
E 之差,即:
)(),(),(q E q q E q
q L p k -=
[]n q q q q ,,,21 = 是表示动能和势能的广义坐标。 []n q q q q ,,,21= 是相应的广义速度。 连杆i 具有的动能ki E i 为:
i
i i ci T i i ci T
ci i ki w I w V V m E 2121+=
操作臂所具有的动能是n 个连杆的动能之和,即:
∑==n
i ki
k E E 1
有前面的速度分析可知,ci V 和i i
w 是操作臂关节变量q 和关节速度q
的函数,故此操作臂的动能是关节变量和关节速度的标量函数,记为),(q q E k
,实际上,操作臂的动能为:
q q D q q
q E T
k )(21),(=
)(q D 是n n ?阶的操作臂惯性矩阵。显然,操作臂的动能k E 是惯性矩阵的二
次型,由于动能k E 为正,因而)(q D 是正定的矩阵。
连杆i 具有的势能
pi
E 为:
ci
T i pi p g m E 00-=
g 0
是13?的重力加速度向量。
ci p 0
是连杆i 质心的位置向量。
操作臂所具有的势能为各连杆的势能之和,即:
∑==n
i pi
p E E 1
六轴运动机器人运动学求解分析_第九讲
六轴联动机械臂运动学及动力学求解分析 V0.9版 随着版本的不断更新,旧版本文档中的一些笔误得到了修正,同时文档内容更丰富,仿真程序更完善。 作者朱森光 Email zsgsoft@https://www.360docs.net/doc/9d2994677.html, 完成时间 2016-02-28
1引言 笔者研究六轴联动机械臂源于当前的机器人产业热,平时比较关注当前热门产业的发展方向。笔者从事的工作是软件开发,工作内容跟机器人无关,但不妨碍研究机器人运动学及动力学,因为机器人运动学及动力学用到的纯粹是数学和计算机编程知识,学过线性代数和计算机编程技术的人都能研究它。利用业余时间翻阅了机器人运动学相关资料后撰写此文,希望能够起到抛砖引玉的作用引发更多的人发表有关机器人技术的原创性技术文章。本文内容的正确性经过笔者编程仿真验证可以信赖。 2机器建模 既然要研究机器人,那么首先要建立一个机械模型,本文将以典型的六轴联动机器臂为例进行介绍,图2-1为笔者使用3D技术建立的一个简单模型。首先建立一个大地坐标系,一般教科书上都是以大地为XY平面,垂直于大地向上方向为Z轴,本文为了跟教科书上有所区别同时不失一般性,将以水平向右方向为X轴,垂直于大地向上方向为Y轴,背离机器人面向人眼的方向为Z轴,移到电脑屏幕上那就是屏幕水平向右方向为X轴,屏幕竖直向上方向为Y轴,垂直于屏幕向外为Z轴,之所以建立这样不合常规的坐标系是希望能够突破常规的思维定势训练在任意空间建立任意坐标系的能力。 图2-1 图2-1中的机械臂,底部灰色立方体示意机械臂底座,定义为关节1,它能绕图中Y轴旋转;青色长方体示意关节2,它能绕图中的Z1轴旋转;蓝色长方体示意关节3,它能绕图中的Z2轴旋转;绿色长方体示意关节4,它能绕图中的X3轴旋转;深灰色长方体示意关节5,它能绕图中的Z4轴旋转;末端浅灰色机构示意关节6即最终要控制的机械手,机器人代替人的工作就是通过这只手完成的,它能绕图中的X5轴旋转。这儿采用关节这个词可能有点不够精确,先这么意会着理解吧。 3运动学分析 3.1齐次变换矩阵 齐次变换矩阵是机器人技术里最重要的数学分析工具之一,关于齐次变换矩阵的原理很多教科书中已经描述在此不再详述,这里仅针对图2-1的机械臂写出齐次变换矩阵的生成过程。首先定义一些变量符号,关节1绕图中Y轴旋转的角度定义为θ0,当θ0=0时,O1点在OXYZ坐标系内的坐标是(x0,y0,0);关节2绕图中的Z1轴旋转的角度定义为θ1,图中的θ1当前位置值为+90度;定义O1O2两点距离为x1,关节3绕图中的Z2轴旋转的角度定义为θ2,图中的θ2当前位置值为-90度;O2O3两点距离为x2,关节4绕图中的X3轴旋转的角度定义为θ3, 图中的θ3当前位置值为0度;O3O4两点距离为x3,关节5绕图中的Z4轴旋转的角度定义为θ4, 图中的θ4当前位置值为-60度;O4O5两点距离为x4,关节6绕图中的X5轴旋转的角度定义为θ5, 图中的θ5当前位置值为0度。以上定义中角度正负值定义符合右手法则,所有角度定义值均为本关节坐标系相对前一关节坐标系的相对旋转角度值(一些资料上将O4O5两点重合在一起即O4O5两点的距离x4退化为零,本文定义x4大于零使得讨论时更加不失一般性)。符号定义好了,接下来描述齐次变换矩阵。 定义R0为关节1绕Y轴的旋转矩阵 =cosθ0 s0 = sinθ0 //c0 R0 =[c0 0 s0 0 0 1 0 0 0 c0 0 -s0 0 0 0 1] 定义T0为坐标系O1X1Y1Z1相对坐标系OXYZ的平移矩阵 T0=[1 0 0 x0 0 1 0 y0 00 1 0 0 0 0 1] 定义R1为关节2绕Z1轴的旋转矩阵 R1=[c1 –s1 0 0 s1 c1 0 0
机器人学第七章(机器人动力学的凯恩方法)
第七章 机器人动力学的凯恩方法 7.1 引言 机器人动力学凯恩方程方法是建立在凯恩动力学方程基础上的,因而本章首先介绍凯恩动力学方程。 7.1.1 质点系的凯恩动力学方程 设一质点系具有n 个质点,该质点系的动力学普遍方程为 ()[]01 =?-∑=n i i i i i r a m f δ (7-1) 式中 i f ——作用于第i 质点主动力矢量; i m ——质点i 的质量; i a ——质点i 的加速度矢量; i r ——质点i 在参考坐标系中的位置矢量; i r δ——质点i 的微分位移; “·”——数量积符号。 设质点系为完全系,即它具有l 个自由度和l 个广义坐标,则 ()t q q q r r l i i (21) = (7-2) 式中 i q ――广义坐标; t ——时间变量; 质点i 的线速度为 j l j q i j l j j i i i q v q q r dt r v j ∑∑===???? ????=?=1 .1 式中 j i j i q i q v q r v j ??=??= . (7-3) 凯恩(kane )定义,j i q i j v v q =?? 为质点I 相对于广义速度的偏速度。 微分i r δ可表示为 j l j q i j l j j i i q v q q r r j δδδ∑∑===??=1 .1 (7-4) 将(7-4)代入(7-1)式,得
(), 110j l l i i i i q j i j f m a v q δ==?? -?=????∑∑ 交换求和符号,得 (), 110 j l n i i i i q j i j f m a v q δ==?? -?=???? ∑∑ 因为j q 是独立变量,故 (), 10j n i i i i q j f m a v =-?=∑ j=1,2,. ..,l (7-5) 或 , , 1 1 0j j n n i i q i i i q j i f v m a v ==?-?=∑∑ 这就是质点系的凯恩动力学方程(Kane Dynamics Equation ),可以改写为 ' , 1' , 101,2,,_______j j j j n j i i q i n j i i i q i F j l F f v F m a v F ==? ? +==???? ? =???=? ? ??∑∑广义主动力广义惯性力 (7-6) 7.1.2 刚体的凯恩动力学方程 如图7-1所示将刚体看成是由n 个质点组成的。设刚体的质心为C ,以C 为力的简化中心并设作用于刚体的主动力的合力为C Q ,合力矩为C N : ∑==n i i c f Q 1 (7-7) ()∑=?=n i i i c R f N 1 (7-8) 当刚体以角速度ω旋转时,其中点i 的速度为 c i i v v R ω=+? 其中 i R ——点到质心C 的位置矢量; i v ——质心C 的线速度。 Z 点对广义速度的偏速度为
第六章 机器人动力学
第六章机器人操作臂动力学 动力学研究的是物体的运动和受力之间的关系。操作臂动力学有两个问题需要解决。 ①动力学正问题:根据关节运动力矩或力,计算操作臂的运动(关节位移,速 度和加速度) ②动力学逆问题:已知轨迹运动对应的关节位移,速度和加速度,求出所需要 的关节力矩或力。 机器人操作臂是个复杂的动力学系统,由多个连杆和多个关节组成,具有多个输入和多个输出,存在着错综复杂的耦合关系和严重的非线性。因此,对于机器人动力学的研究,引起了十分广泛的重视。所采用的方法很多,①有拉格朗日方法,②牛顿-欧拉方法,③高斯法,④凯恩方法,⑤旋量对偶数方法等等。在此重点介绍牛顿-欧拉方法,它是基于运动坐标和达朗贝尔原理来建立相应的运动方程。 研究机器人动力学的目的是多方面的,动力学正问题与操作臂仿真有关,逆问题是为实时控制的需要,利用动力学模型,实现最优控制,以期达到良好的动态性能和最优指标。 机器人动力学模型主要用于机器人的设计和离线编程。在设计中需根据连杆质量,运动学和动力学参数,传动机构特征和负载大小进行动态仿真,从而决定机器人的结构参数和传动方案,验算设计方案的合理性和可行性,以及结构优化程度。在离线编程时,为了估计机器人高速运动引起的动载荷和路径偏差,要进行路径控制仿真和动态模型的仿真。这些都必须以机器人动态模型为基础。 为了建立机器人动力学方程,在此首先讨论机器人运动的瞬时状态,对其进行速度分析和加速度分析,研究连杆的静力平衡,然后利用朗贝尔原理,将静力学平衡条件用于动力学。 §6-1连杆的速度和加速度 点的速度表示一般要涉及到两个坐标系: 要指明速度是相对于哪个坐标系的运动所造成的。
机器人动力学
机器人动力学研究的典型方法和应用 (燕山大学 机械工程学院) 摘 要:本文介绍了动力学分析的基础知识,总结了机器人动力学分析过程中比较常用的动力学分析的方法:牛顿—欧拉法、拉格朗日法、凯恩法、虚功原理法、微分几何原理法、旋量对偶数法、高斯方法等,并且介绍了各个方法的特点。并通过对PTl300型码垛机器人弹簧平衡机构动力学方法研究,详细分析了各个研究方法的优越性和方法的选择。 前 言:机器人动力学的目的是多方面的。机器人动力学主要是研究机器人机构的动力学。机器人机构包括机械结构和驱动装置,它是机器人的本体,也是机器人实现各种功能运动和操作任务的执行机构,同时也是机器人系统中被控制的对象。目前用计算机辅助方法建立和求解机器人机构的动力学模型是研究机器人动力学的主要方法。动力学研究的主要途径是建立和求解机器人的动力学模型。所谓动力学模指的是一组动力学方程(运动微分方程),把这样的模型作为研究力学和模拟运动的有效工具。 报告正文: (1)机器人动力学研究的方法 1)牛顿—欧拉法 应用牛顿—欧拉法来建立机器人机构的动力学方程,是指对质心的运动和转动分别用牛顿方程和欧拉方程。把机器人每个连杆(或称构件)看做一个刚体。如果已知连杆的表征质量分布和质心位置的惯量张量,那么,为了使连杆运动,必须使其加速或减速,这时所需的力和力矩是期望加速度和连杆质量及其分布的函数。牛顿—欧拉方程就表明力、力矩、惯性和加速度之间的相互关系。 若刚体的质量为m ,为使质心得到加速度a 所必须的作用在质心的力为F ,则按牛顿方程有:ma F = 为使刚体得到角速度ω、角加速度εω= 的转动,必须在刚体上作用一力矩M , 则按欧拉方程有:εωI I M += 式中,F 、a 、M 、ω、ε都是三维矢量;I 为刚体相对于原点通过质心并与刚
机器人学第六章(机器人运动学及动力学)
第六章 机器人运动学及动力学 6.1 引论 到现在为止我们对操作机的研究集中在仅考虑动力学上。我们研究了静力位置、静力和速度,但我们从未考虑过产生运动所需的力。本章中我们考虑操作机的运动方程式——由于促动器所施加的扭矩或作用在机械手上的外力所产生的操作机的运动之情况。 机构动力学是一个已经写出很多专著的领域。的确,人们可以花费以年计的时间来研究这个领域。显然,我们不可能包括它所应有的完整的内容。但是,某种动力学问题的方程式似乎特别适合于操作机的应用。特别是,那种能利用操作机的串联链性质的方法是我们研究的天然候选者。 有两个与操作机动力学有关的问题我们打算去解决。向前的动力学问题是计算在施加一 组关节扭矩时机构将怎样运动。也就是,已知扭矩矢量τ,计算产生的操作机的运动Θ、Θ 和Θ 。这个对操作机仿真有用,在逆运动学问题中,我们已知轨迹点Θ、Θ 和Θ ,我们欲求出所需要的关节扭矩矢量τ。这种形式的动力学对操作机的控制问题有用。 6.2 刚体的加速度 现在我们把对刚体运动的分析推广到加速度的情况。在任一瞬时,线速度矢量和角速度矢量的导数分别称为线加速度和角加速度。即 B B Q Q B B Q Q 0V ()V ()d V V lim dt t t t t t ?→+?-==? (6-1) 和 A A Q Q A A Q Q 0()()d lim dt t t t t t ?→Ω+?-ΩΩ=Ω=? (6-2) 正如速度的情况一样,当求导的参坐标架被理解为某个宇宙标架{}U 时我们将用下面的记号 U A AORG V V = (6-3) 和 U A A ω=Ω (6-4)
6.2.1 线加速度 我们从描述当原点重合时从坐标架{}A 看到的矢量B Q 的速度 A A B A A Q B Q B B V V B R R Q =+Ω? (6-5) 这个方程的左手边描述A Q 如何随时间而变化。所以,因为原点是重合的,我们可以重写(6-5)为 A A B A A B B Q B B d ()V dt B B R Q R R Q =+Ω? (6-6) 这种形式的方程式当推导对应的加速度方程时特别有用。 通过对(6-5)求导,我们可以推出当{}A 与{}B 的原点重合时从{}A 中看到的B Q 的 加速度表达式 A A B A A A A Q B Q B B B B d d V (V )()dt dt B B R R Q R Q =+Ω?+Ω? (6-7) 现在用(6-6)两次── 一次对第一项,一次对最后一项。(6-7)式的右侧成为: A B A A A A B Q B B Q B B A A A A B B Q B B V () +Ω?+Ω?+Ω?+Ω? B B B B R R V R Q R V R Q (6-8) 把相同两项合起来 A B A A A A B Q B B Q B B A A A B B B V 2 () +Ω?+Ω?+Ω?Ω? B B B R R V R Q R Q (6-9) 最后,为了推广到原点不重合的情况,我们加上一项给出{}B 的原点的线加速度的项,得到下面的最后的一般公式 A B A A A A BORG B Q B B Q B B A A A B B B V 2 () ++Ω?+Ω?+Ω?Ω? A B B B V R R V R Q R Q (6-10) 对于我们将在本章上考虑的情况,我们总是有B Q 为不变,或 B Q Q V 0== B V (6-11) 所以,(6-10)简化为 A A A A A A Q BORG B B B B B V ()=+Ω?Ω?+Ω? A B B V R Q R Q (6-12) 我们将用这一结果来计算操作机杆件的线加速度。 6.2.2 角加速度 考虑{}B 以A B Ω相对于{}A 转动的情况,而{}C 以B C Ω相对于{}B 转动。为了计算 A C Ω我们把矢量在坐标架{}A 中相加
第3章 工业机器人静力学及动力学分析概要
注:1)2008年春季讲课用;2)带下划线的黑体字为板书内容;3)公式及带波浪线的部分为必讲内容第3章工业机器人静力学及动力学分析 3.1 引言 在第2章中,我们只讨论了工业机器人的位移关系,还未涉及到力、速度、加速度。由理论力学的知识我们知道,动力学研究的是物体的运动和受力之间的关系。要对工业机器人进行合理的设计与性能分析,在使用中实现动态性能良好的实时控制,就需要对工业机器人的动力学进行分析。在本章中,我们将介绍工业机器人在实际作业中遇到的静力学和动力学问题,为以后“工业机器人控制”等章的学习打下一个基础。 在后面的叙述中,我们所说的力或力矩都是“广义的”,包括力和力矩。 工业机器人作业时,在工业机器人与环境之间存在着相互作用力。外界对手部(或末端操作器)的作用力将导致各关节产生相应的作用力。假定工业机器人各关节“锁住”,关节的“锁定用”力与外界环境施加给手部的作用力取得静力学平衡。工业机器人静力学就是分析手部上的作用力与各关节“锁定用”力之间的平衡关系,从而根据外界环境在手部上的作用力求出各关节的“锁定用”力,或者根据已知的关节驱动力求解出手部的输出力。 关节的驱动力与手部施加的力之间的关系是工业机器人操作臂力控制的基础,也是利用达朗贝尔原理解决工业机器人动力学问题的基础。 工业机器人动力学问题有两类:(1)动力学正问题——已知关节的驱动力,求工业机器人系统相应的运动参数,包括关节位移、速度和加速度。(2)动力学逆问题——已知运动轨迹点上的关节位移、速度和加速度,求出相应的关节力矩。 研究工业机器人动力学的目的是多方面的。动力学正问题对工业机器人运动仿真是非常有用的。动力学逆问题对实现工业机器人实时控制是相当有用的。利用动力学模型,实现最优控制,以期达到良好的动态性能和最优指标。 工业机器人动力学模型主要用于工业机器人的设计和离线编程。在设计中需根据连杆质量、运动学和动力学参数,传动机构特征和负载大小进行动态仿真,对其性能进行分析,从而决定工业机器人的结构参数和传动方案,验算设计方案的合理性和可行性。在离线编程时,为了估计工业机器人高速运动引起的动载荷和路径偏差,要进行路径控制仿真和动态模型的仿真。这些都必须以工业机器人动力学模型为基础。 工业机器人是一个非线性的复杂的动力学系统。动力学问题的求解比较困难,而且需要较长的运算时间。因此,简化求解过程,最大限度地减少工业机器人动力学在线计算的时间是一个受到关注的研究课题。 在这一章里,我们将首先讨论与工业机器人速度和静力学有关的雅可比矩阵,然后介绍工业机器人的静力学问题和动力学问题。