【技术实现步骤摘要】
S
‑
R
‑
S结构七自由度机械臂逆运动学解析解的数值稳定算法
[0001]本专利技术涉及冗余机械臂逆运动学求解领域,尤其涉及一种S
‑
R
‑
S结构的七自由度机械臂逆运动学解析 解的数值稳定算法。
技术介绍
[0002]七自由度串联机器人受到机器人界的广泛关注。与六自由度串联机器人相比,冗余的自由度使机器人 更加灵活,可以完成避障和避免关节极限及奇异点等问题。七自由度机械臂广泛采用球形
‑
旋转
‑
球形(S
‑
R
‑ꢀ
S)机构。S
‑
R
‑
S机械臂由7个串联的旋转关节组成,其中前三个关节的轴相交于一个公共点,形成一个3自 由度的肩部(球形),第四个关节用作肘关节(旋转),最后三个关节的轴相交于一点形成一个3自由度的 腕部(球形)。这类机械臂也称为七自由度非偏置机械臂,又因结构模仿人类的上臂(肩肘腕)而被称为 仿人臂机械臂。
[0003]在机器人 ...
【技术保护点】
【技术特征摘要】
1.一种S
‑
R
‑
S结构七自由度机械臂逆运动学解析解的数值稳定算法,其特征在于,所述数值稳定算法包括:(1)正运动学求解、(2)参考平面求解、(3)逆运动学求解、(4)奇异臂角获取、(5)关节限位及奇异值规避。2.根据权利要求1所述的S
‑
R
‑
S结构七自由度机械臂逆运动学解析解的数值稳定算法,其特征在于,所述(1)正运动学求解包括:机械臂的正运动学求解问题即给定关节角求解末端姿态和位置的问题,对于SRS结构的机械臂,采用修正DH参数法对其进行正运动学求解,求解方法如下:坐标系i相对于坐标系i
‑
1(i∈[1,7])的转换矩阵为:其中四个参数θ
i
,a
i
‑1,α
i
‑1,d
i
分别在图1的DH参数表中列出,通过坐标系的连乘规则:
i
‑1T
i+1
=
i
‑1T
i
·
i
T
i+1
即可得出机械臂任意坐标间的转换矩阵,解决正运动学求解问题;其中,符号标识说明如下:使用的形式来表示从A到B的向量,此向量不相对于任何参考系;
i
P
AB
表示在坐标系{i}中向量的表示;p
i
表示向量P的第i个分量,M
i
表示矩阵M的第i个列向量,M
ij
表示矩阵M第i行j列的元素;x
i
,y
i
,z
i
分别表示坐标系{i}的x、y、z单位轴。表示向量p的单位向量;<p1,p2>和p1×
p2分别为两个向量p1和p2的点积和叉积。向量p的斜对称矩阵用[p]表示,其定义为3.根据权利要求1或2所述的S
‑
R
‑
S结构七自由度机械臂逆运动学解析解的数值稳定算法,其特征在于,所述(2)参考平面求解包括:机械臂逆运动学问题即为给定末端姿态和位置反求关节角度的问题,由于S
‑
R
‑
S结构为七自由度冗余结构,而笛卡尔空间中给定末端姿态和位置仅需6个参数即3个位置参数和3个姿态参数,因此为了唯一确定关节角度,求得运动学逆解,需要人为增加1个冗余参数结合末端位置和姿态6个参数共同确定关节角度,本算法选用的冗余参数为相对参考平面的臂角ψ,具体说明如下:如附图2所示,其中平面SE
′
W即为参考平面,冗余参数臂角ψ为参考平面SE
′
W沿向量旋转至实际关节平面SEW所需旋转的角度,其中本算法参考平面SE
′
W选择关节角θ3=0时的关节平面为参考平面;对于七自由度冗余结构,当设定第三个关节角θ3=0时即变为6自由度机械臂,而确定的末端位置和姿态则提供了6个参数,6个位置姿态参数求解6个关节角变量,便是可解的;如附图1所示的S
‑
R
‑
S结构机械臂,最后三个关节即5,6,7关节轴线相交于一点,即W点;由附图
0
R
33
R4=0R
ψ0
R
′
33
R
′
40
R3=0R
ψ0
R
′3;通过以上推导得到真实0R3即为参考平面0R3'沿旋转ψ角求得,其中0R
ψ
为相对向量旋转ψ角形成的旋转矩阵,由罗德里格斯公式得到:其中I为3
×
3单位矩阵,因此0R3可以表示为:0R3(ψ)=sinψA
s
+cosψB
s
+C
s
其中:其中:其中:同时,由于1
‑
3关节为ZYZ球关节角,通过正运动学求得的公式为:由0R3(θ1,θ2,θ3)=0R3(ψ)可得:当θ2≠0或
±
π时π时π时其中GC2同GC4,取值范围为{
‑
1,1},表明θ2的正负,且:的正负,且:的正负,且:当θ2=0或
±
π时因此对应可求出θ1~θ3,θ4=θ4',之后便求解θ5~θ7;同理,5
‑
7关节也为ZYZ球关节角,因此同样可对应求出θ5~θ7,即将上式完成如下替换即可:θ1←
θ5,θ2←
θ6,θ3←
θ7,s
←
w,GC2←
GC6其中:其中:
GC2、GC4和GC6均为姿态参数,取值为{
‑
1,1},分别表明θ2、θ4和θ6的正负,臂角ψ为自运动冗余参数,至此完成逆运动学求解过程。5.根据权利要求1
‑
4任一项所述的S
‑
R
‑
S结构七自由度机械臂逆运动学解析解的数值稳定算法,其特征在于,所述(4)奇异臂角获取包括:所述数值稳定算法考虑整个“球关节”而不是单个关节来表征奇异臂角;对于S
‑
R
‑
S机械臂,关节1、2、3组成一个名为“肩”的球关节;关节5、6、7组成一个名为“腕”的球关节;由于肩关节和腕关节在本质上是相同的,统称为球关节;球关节有三个Z
‑
Y
‑
Z欧拉角变量θ1、θ2、θ3,其中θ1和θ3为正切关节,θ2为余弦关节;由ZYZ欧拉角形成的旋转矩阵0R3(θ1,θ2,θ3)可知,当且仅当θ2=0或
±
π时,θ1和θ3是无法唯一确定的,且此时对应表达式中u=v=0;反之,当位于奇异臂角ψ
s
时,正切关节的u=v=0,由于0R3(θ1,θ2,θ3)为正交矩阵,即可证明此时cos(θ2)=
±
1即θ2=0或
±
π;因此θ1和θ3的奇异臂角ψ
s
即为θ2=0或
±
π时对应的臂角;这也表明奇异臂角不是单个关节的特殊臂角,而是综合球关节的特殊臂角;因此得出结论,奇异臂角是机械臂局部自运动流形中的奇异位置,在球关节θ2=0或
±
π时出现;描述球关节的奇异臂角的关键是找到使θ
i
=0或
±
π的ψ
s
(肩部i=2,腕部i=6),此臂角ψ
s
同时也是与其相关的两个正切关节的奇异臂角;余弦关节表达式为:θ
i
=GC
i
arccos(asinψ+bcosψ+c)θ
i
相对ψ求导公式为:由表达式可知θ
i
=0或
±
π对应于asin(ψ)+bcos(ψ)+c=
±
1,而asin(ψ)+bcos(ψ)+c的值均位于
±
1间;即使得θ
i
=0或
±
π的ψ
s
一定为asin(ψ)+bcos(ψ)+c的极值;因此,通过使其导数为零可得两个ψ
s
值:值:容易判断求得和对应于θ
i
的最大值或最小值;为了检验是否存在奇异臂角ψ
s
,只需将与1进行比较;采用一种数值稳定的确定ψ
s
的方...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。