机械臂运动学.docx
- 文档编号:8963248
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:27
- 大小:94.01KB
机械臂运动学.docx
《机械臂运动学.docx》由会员分享,可在线阅读,更多相关《机械臂运动学.docx(27页珍藏版)》请在冰豆网上搜索。
机械臂运动学
机械臂运动学基础
1、机械臂的运动学模型
机械臂运动学研究的是机械臂运动,而不考虑产生运动的力。
运动学研究机械臂的位置,速度和加速度。
机械臂的运动学的研究涉及到的几何和基于时间的内容,特别是各个关节彼此之间的关系以及随时间变化规律。
典型的机械臂由一些串行连接的关节和连杆组成。
每个关节具有一个自由度,平移或旋转。
对于具有n个关节的机械臂,关节的编号从1到n,有n+1个连杆,编号从0到n。
连杆0是机械臂的基础,一般是固定的,连杆n上带有末端执行器。
关节i连接连杆i和连杆i-1。
一个连杆可以被视为一个刚体,确定与它相邻的两个关节的坐标轴之间的相对位置。
一个连杆可以用两个参数描述,连杆长度和连杆扭转,这两个量定义了与它相关的两个坐标轴在空间的相对位置。
而第一连杆和最后一个连杆的参数没有意义,一般选择为0。
一个关节用两
个参数描述,一是连杆的偏移,是指从一个连杆到下一个连杆沿的关节轴线的距离。
二是关节角度,指一个关节相对于下一个关节轴的旋转角度。
为了便于描述的每一个关节的位置,我们在每一个关节设置一个坐标系,对于一个关节链,Denavit和Hartenberg提出了一种用矩阵表示各个关节之间关系的系统方法。
对于转动关节i,规定它的转动平行于坐标轴Zi-i,坐标轴Xi-i对准从Zi-i到乙的法线方向,如果Zi-i与
Zi相交,则Xi-1取Zi-1Xzi的方向。
连杆,关节参数概括如下:
连杆长度ai沿着xi轴从Zi-i和Zi轴之间的距离;
连杆扭转ai从Zi-1轴到Zi轴相对Xi-1轴夹角;
连杆偏移di从坐标系i-1的原点沿着Zi-1轴到Xi轴的距离;
关节角度QiXi-1轴和Xi轴之间关于Zi-1轴的夹角。
对于一个转动关节Qi是关节变量,di是常数。
而移动关节di是可变的,也是恒定的。
为了
统一,表示为
■i转动关节
q=移动关节
运用Denavit-Hartenberg(DH)方法,可以将相邻的两个坐标系之间的变换关系表示为
一个4x4的齐次变换矩阵
-
Cosq
-sindcos%
sindsin闪
acosq'
i.
sin耳
cosQCOS^i
一cosdsins
aisin4
A=
0
sin^i
cos%
di
0
0
0
1一
上式表示出了坐标系i相对于坐标系i-1的关系。
即
00
iA八
T=liA
A
0
其中T表示坐标系i相对于世界坐标系0的位置与姿态,简称位姿。
2、正向和反向运动学
对于一个n-轴刚性连接的机械臂,正向运动学的解给出的是最后一个连杆坐标系的位置和姿态。
重复利用上式,得到
七=0几人川心代=K(q)
机械臂末端位姿在笛卡尔坐标系中有6个自由度,3个平移,3个旋转。
所以,一般来说具
有6个自由度的机械臂可以使末端实现任意的位姿。
总的机械臂变换In—般简写为Tn,对6个自由度的机械臂简写为T6。
对于任意的机械臂,无论其它有多少个关节,具有什么结构,正向运动学解都是可以得到的。
在机械臂的路径规划中,用到的是反向运动学的解q=K’CTn),它给出了特定的末端位
姿对应的机械臂的关节角度。
一般来说,反向运动学的解不是唯一的,对具有某种结构的机械臂,封闭解可能不存在。
对于6自由度的机器人而言,运动学逆解非常复杂,一般没有封闭解。
只有在某些特殊情况下才可能得到封闭解。
不过,大多数工业机器人都满足封闭解的两个充分条件之一(Pieper
准则)
(1)三个相邻关节轴交于一点
(2)三个相邻关节轴相互平行
如果机械臂多于6个关节,称关节为冗余的,这时解是欠定的。
如果对于机械臂某个特别的位姿,解不存在,称这个位姿为奇异位姿。
机械臂的奇异性可能是由于机械臂中某些坐标轴的重合,或位置不能达到引起的。
机械臂的奇异位姿分为两类:
(1)边界奇异位姿,当机械臂的关节全部展开或折起时,使得末端处于操作空间的边界或边界附近,雅克比矩阵奇异,机械臂的运动受到物理结构的约束,这时机械臂的奇异位姿称为边界奇异位姿。
(2)内部奇异位姿,两个或两个以上的关节轴线重合时,机械臂各个关节的运动相互抵消,不产生操作运动,这时机械臂的奇异位姿称为内部奇异位姿。
机械臂运动学逆解的方法可以分为两类:
封闭解和数值解、在进行逆解时总是力求得到封闭解。
因为封闭解的计算速度快,效率高,便于实时控制。
而数值解法不具有这些特点。
机械臂运动学的封闭逆解可通过两种途径得到:
代数法和几何法。
一般而言,非零连杆参数越多,到达某一目标的方式也越多,即运动学逆解的数目也越多。
在从多重解中选择解时,应根据具体情况,在避免碰撞的前提下通常按“最短行程”准则来选择。
同时还应当兼顾“多移动小关节,少移动大关节”的原则。
n个自由度的机械臂的末端位姿由n个关节变量所决定,这n个关节变量统称为n维关节矢量,记为q。
所有的关节矢量构成的空间称为关节空间。
机械臂末端的位姿用6个变量描
述,3个平移(x,y,z)和3个旋转(「X,-.y,-.z),记x=(x,y,z,-,x,--y,-.z),x是机械臂末端在基坐标空间中的坐标,所有的矢量x构成的空间称为操作空间或作业定向空间。
工作空间是
操作臂的末端能够到达的空间范围,即末端能够到达的目标点集合。
值得指出的是,工作空
间应该严格地区分为两类:
(1)灵活(工作)空间指机械臂末端能够以任意方位到达的目标点集合。
因此,在灵活空
间的每个点上,手爪的指向可任意规定。
(2)可达(工作)空间指机械臂末端至少在一个方位上能够到达的目标点集合。
机械臂各关节驱动器的位置组成的矢量称为驱动矢量s,由这些矢量构成的空间称为驱动空
间。
正向运动学
3、Jacobian矩阵
机械臂的Jacobian矩阵表示机械臂的操作空间与关节空间之间速度的线性映射关系,对于一个n轴的机械臂,机械臂末端在基坐标系中的速度是x=jq其中x是6个元素的向量。
对于6个关节机械臂Jacobian矩阵是方阵,如果它是可逆的,则可以由机械臂的末端速度求出各个关节的速度。
Jacobian矩阵在机械臂的奇异位姿上是不可逆的。
在实际应用中,
当机械臂的末端位置接近奇异位置时,Jacobian矩阵是病态的,可能导致关节速度不能正
确地得到。
上式解决的是正速度问题,即已知q和q求末端执行器的速度x。
对于逆速度解问题,由上
式可以得到速度逆解公式为JJx,注意到此时需要求雅可比矩阵的逆,由线性方程组
理论知上式对任意的X,q都有解的必要条件是雅可比矩阵的秩rank(J)=6,这意味着机械
臂的自由度数n>6。
这也说明了具有冗余自由度的机械臂,在末端位姿固定的条件下,能使关节在一个较大的关
节空间的子空间中运动,有效地避开障碍或奇异位姿,并把关节位移限制在允许范围内,从
而具有更大的运动灵活性。
雅可比矩阵可以看成是从关节空间到操作空间运动速度的传动比,同时也可用来表示两空间
之间力的传递关系。
对于冗余自由度机械臂,其雅可比矩阵是长方矩阵,因J满秩且方程个数少于未知数个数,所以有无穷多个解,这时,一般是求其中的最小范数解,或采用加权最小范数解也就是说使|qTDq|最小的解,其中d是对称正定加权矩阵。
此时的解是使机械臂
在能量消耗最小的情况下的解。
这时,逆速度问题便转为:
求q满足q=j」x且使lqTDq最小。
实际上等同于求性能
指标L在约束条件q°X下的极值。
应用Lagrange乘子法,以上极值为题的解是
q二D‘JT(JD」JT)」X,当D=I时,雅可比矩阵是J•=JT(JJT)_1,称为雅可比矩阵的
伪逆。
阵的特性,根据右图中的几何关系容易求得
^l1c1l2c12g二cos(m),g2二cos(m二2)
y=li3丄晁S=sin(m),$2二sin(弓二2)
I^x_"dx]讯]dy.Jy
01
-XI
两边微分后写成矩阵形式
即dx_-l1s^_l2s12T2S12
||_dy.HJ1C/l2C12LS.ILdl
简写成dx=Jd0,式中J就称为机械臂的雅可比(Jacobian)矩阵,它由函数x,y的偏微分组成,反映了关节微小位移d0与机械臂末端微小运动dx之间的关系。
将两边同除以dt
dt得到:
dx/dt=Jd0/dt,因此机械臂的雅可比矩阵也可以看做是操作空间中的速度与关
节空间中速度的线性变换。
dx/dt称为末端在操作空间中的广义速度,简称操作速度,d0
/dt为关节速度。
可以看出,雅可比矩阵的每一列表示其它关节不动而某一关节以单位速度运动产生的末端速度。
—12S12|
可以看出,J阵的值随末端位置的不同而不同,即01和02的
I2C|2
对于关节空间的某些位姿,机械臂的雅可比矩阵的秩减少,这些位姿
llSi-^2S12
由J二
|UiCiI2C12
改变会导致J的变化。
称为机械臂的奇异位姿。
上例机械臂雅可比矩阵的行列式为:
det(J)二l1l2sin(二2),当02=0
或02=180。
时,机械臂的雅可比行列式为0,矩阵的秩为1,这时机械臂处于奇异位姿。
机
械臂在操作空间的自由度将减少。
2R机械臂的逆雅可比矩阵J」二
丄[8
l1l2S^l1C^l2C12—l1S^—l2S12_
I2S2
显然,当02趋于0°(或
如果机械臂的雅可比J是满秩的方阵,相应的关节速度即可求出,即扌二J'x,上例平面
180°)时,机械臂接近奇异位姿,相应的关节速度将趋于无穷大。
以及解决两个不同坐标系之间的微
为了补偿机器人末端执行器位姿与目标物体之间的误差,位移关系问题,需要讨论机器人连杆在作微小运动时的位姿变化。
假设一变换的元素是某个变量的函数,对该变换的微分就是该变换矩阵各元素对该变量的偏
T为:
导数所组成的变换矩阵乘以该变量的微分。
例如给定变换
tn
t|2
t|3
t|4
t21
t22
t23
t24
t31
t32
t33
t34
t42
t43
t44
若它的元素是变量x的函数,则变换T的微分为:
T,经过微运动后
F面讨论机械臂的微分运动,设机械臂某一连杆相对于基坐标系的位姿为
该连杆相对基坐标系的位姿变为T+dT,若这个微运动是相对于基坐标系(静系)进行的(左
-
'ctn
盘21
点t|2
泳戲22
盘13
次
Ct23
dT=
ex
ex
盘31
戲32
员33
ex
ex
也1
戲42
戲43
一ex
ex
泳dx
盘34
ex
-:
t14
CX
孜24
盘44
cX一
乘),总可以用微小的平移和旋转来表示,即
TdT二Trans(dx,dy,dz)Rot(k,dr)T
所以有
dT-||Trans(dx,dy,dz)Rot(k,d"-I44T
根据齐次变换的对称性,若微运动是相对某个连杆坐标系i(动系)进行的(右乘),则T+dT可以表示为
TdT二TTrans(dx,dy,dz)Rot(k,^)
所以有
dT=TTrans(dx,dy,dz)Rot(k,d"-I44
令厶二Trans(dx,dy,dz)Rot(k,dR-l44为微分算子,则相对基系有dT=aot,相对i系
有dT=TAio这里△的下标不同是由于微运动相对不同坐标系进行的。
在机械臂运动学中
微分变换分为微分平移和微分旋转两类。
微分平移变换与一般平移变换一样,其变换矩阵为
Trans(dx,dy,dz)二
00dx
10dy
01dz
001
由于微分旋转时0^0,所以sinQ^d0,cos0^1将它们代入旋转变换通式中得微分旋转
表达式:
Rot(k,dr)二
-1
kzd0
i-kyd6
0
-kzdr
1
kxdr
0
kydn
-kxdv
1
01
0
于是得到微分算子.:
=Trans(dx,dy,dz)Rot(k,dv)-
■0
-kzd6
kyd日
dx]
kzd日
0
—kxd^
dy
_kyd日
kxd^
0
dz
0
0
0
0
也=
F面分别说明。
I44,即
微分旋转与有限旋转相比,有一些特殊的性质,
(1)微分旋转的无序性,当0T0时,有
sin0f
0,cos
若令8x=d
0x,
Sy=d
Sz=d0z,则绕三个坐标轴的微分旋转矩阵分别为
Rot(x,、.x)a
■1
0
0
卫
0
1
、.x
0
0
-、x
1
0
01
0
0
1
略去2次项,得到
-Rot(x,、x)Rot(y,、y)
Rot(y,、y)Rot(x,、x)=
00
1
一'
0
0
-
-1
0
b
01
1
-1
0
6y
01
y1
丿X
0
0
1
0
-6
y
1
0
—dy
6x
1
0
0
0
0
1_
1
_0
0
0
1一
-
1
y
01
-
•1
0
6y
01
0
1
-5x
0
0
1
一
0
—0y
6x
1
0
—0y
6x
1
0
-
0
0
0
1一
1
_0
0
0
1一
Rot(y,、.y)a
结论:
微分旋转其结果与转动次序无关,
0
1
0
01
0
0
0
0
1
、y
0
1
-、z
1
0
■1
0
-5y
■1
6z
0
Rot(Z,、.Z)=
01
0
0
1
两者结果相同,可见这里左乘与右乘等效。
这是与
有限转动(一般旋转)的一个重要区别。
(2)微分旋转的可加性,考虑两个微分旋转复合后的效果
1--:
:
'z、y0
dz1-dx0
Rot(x,6x)Rot(y,6y)Rot(z,6z)=
-bydx10
.0001一
Rot(、x,、y,、z)RotCx:
、y',、z')=
1
z:
.z'
_(、y:
.y')
0
-(:
Z丄眉z')
1
、X丄心X'
连续转动的结果为:
即微分旋转是可加的。
kyd日
01
-
-1
」z
5y
01
-kxd日
0
1
-5x
0
1
0
-dy
1
0
0
1一
1
0
0
0
1一
kzd0=Sz,将它们代入△得
上式表明:
任意两个微分旋转的结果为绕每个轴转动的元素的代数和,
由等效转轴和等效转角与Rot(xrx)Rot(yry)Rot(z「z)等效,有
Rot(k,d力二Rot(x,、x)Rot(y,、y)Rot(z,、z)
1-kzdv
kzd日1
-kyd日kxd&
-00
所以有kxd0=8x,kyd0=8y,
0丿zHydxI
|60-氏dy
」y我x0dz
.0000一
可见,微分变换由两个部分组成
S微分转动矢量,d微分平移矢量
合称为微分运动矢量,
-
0
1
0
0
1
0
10]
5
例:
已知一个坐标系A=
0
1
0
0
-
0
0
0
1一
可表示为D=(dx,dy,dzrx^yrz)
微分旋转矢量S=[00.10],求微分变换dA。
,相对固定系的微分平移矢量d=[100.5],
z
-y
」z
J
dxi
一0
0
0.1
11
0
」x
dy
0
0
0
0
眞
0
dz
-0.1
0
0
0.5
0
0
0_
1
0
0
0
0一
■0
1100
'0
0
0.1
0
0
0
二dA=AA=
-0.1
0
0
0
0
0
100
010
0.501
0_00
0.1
0
0
0
0
0
-0.1
0
F面讨论两坐标系之间的微分关系,设第一个坐标系为
i系,第二个坐标系为
11
0
-0.5
0一
j系不失一般
性,假定j系就是固定的0系。
Ox
ax
0T
nz
「°
Px
Py
Pz
1
-0
—0z
dx]
'0
—°z
dx]
dz
0
-5x
dy
,也i—
岀
0
一ox
dy
-5y
6x
0
dz
」Yi
&Xi
0
dz
-0
0
0
0一
11
0
0
0
0一
=0TA,也i=
打,
整理得到
因为礼
ay
az
0
oy
Oz
0
所以厶00T
dix=nkCP)d)*=n」
diy=0L((「P)d)Jy=o」
diz=aL((「p)d)、:
iz=a」:
dxiI
|dyid乙ki
母j
Ox
ax
「°
nynz(Pn)x(Pn)y
OyOz(Po)x(P0)y
ayaz(Pa)x(Pa)y
00nxny
00OxOy
00axay
an)J_dx0一
(PO)z
(Pa)z
nz
Oz
az
对于任何三维矢量p=[px,Py,Pz],其反对称矩阵S(P)定义为:
0-PzPy
S(P)=IPz0"Px
'-PyPx0一
dy0
dz0
nxOxax
0_
iR=nyOyay
Ozaz一
上式简写成
类似地,任意两坐标系
{A}和{B}之间广义速度的坐标变换为:
卩1=;0Rt—0Rts(0Po)1
o0rt一
;BvL;R-BRS(aPb°)1「v];avL£R-:
RS(BPa。
)
」B=」八.1A,」A=」八」B
0.10],求A系中等价的微分平移矢量dA和微分旋转矢量Sa。
「J-0aR」LjBR八J
-
0
0
1
10]
1
0
0
5
例:
已知一个坐标系A=
0
1
0
0
,相对固定系的微分平移矢量
-
0
0
0
1_
d=[100.5],
微分旋转矢量S=[0
解:
将d=[100.5]和冃00.10]代入
dix=nkCP)d)*=n」diy=0kC,P)d)=o」diz=ak(、:
p)d)、:
iz=a上
得到dA-〔005.11:
•A-0.100丨o
4、机械臂轨迹规划
机械臂的轨迹规划可以在关节空间也可以在笛卡尔空间中进行,或者说机械臂轨迹规划是指在关节空间或者笛卡尔空间中研究机械臂轨迹生成方法。
简言之,机械臂轨迹规划是运动学逆解的实际应用,它描述了机械臂在多维空间中的运动路线o在知道末端位姿的前提下,通过运动学逆解得到各个关节在相应时刻的转动量或者平移量,合理的规划指的是规划出的角位移曲线、角速度曲线以及角加速度曲线,可以有效地减少了机械臂在运动过程中的冲击和振动,使机械臂的工作寿命得以延长。
械臂可以分为点到点作业(Point-to-PointMotion)和连续路径作业(Continuous-Path
Motion)。
点到点的运动指的是机械臂在运动过程中,只要求在某些点上有准确的位置和姿态,相邻的点不做要求。
连续运动要求机械臂严格的沿特定的曲线运动。
机械臂的关节角位移变化率比较小,能够有效地防止了机械臂工作时的振动和冲击。
机械臂关节角速度和角加速度变化均平顺连续,从而有效避免了机械部件的磨损,能够保证整个机械臂系统的长期、稳定的运行,满足机械臂的工作要求。
5、robotics工具箱中的相关函数
link建立一个连杆对象,例如对于本次竞赛的机械臂,根据连杆参数得到
L{1}=link([pi/2
0
0
120
00]);
L{2}=link([pi/2
0
0
0
00]);
L{3}=link([-pi/2
0
0
140.8
0pi]);
L{4}=link([-pi/2
71.8
0
0
0pi/2]);
L{5}=link([+pi/2
71.8
0
0
0pi]);
L{6}=link([-pi/2
0
0
0
0pi/2]);
L{7}=link([0
0
0
129.6
00]);
robot建立一个机械臂对象
R=robot(L)
noname(7axis,RRRRRRR)
grav=[0.000.009.81]
standardD&Hparameters
alpha
A
theta
D
R/P
1.5708
0
120
R
(std)
1.5708.
0
0
R
(std)
-1.5708
0
140.8
R
(std)
-1.5708
71.8
0
R
(std)
1.5708
71.8
0
R
(std)
-1.5708
0
0
R
(std)
0
0
129.6
R
(std)
drivebot用滑块控制的机械臂图形drivebot(R,ones(1,7)*pi)plot机械臂的图形显示plot(R,[pi/2pi/200000])
fkine串联机械臂正向运动学计算
tr=fkine(ROBOT,Q)
ROBOT表示机械臂对象,Q机械臂关节坐标值。
tr=fkine(R,[000pi/2000])
tr=
0.0000
-0.0000
1.0000
129.6000
-0.0000
1.0000
0.0000
-0.0000
-1.0000
-0.0000
0.0000
-20.8000
0
0
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 机械 运动学