《机器人控制技术逆运动学方程.ppt》由会员分享,可在线阅读,更多相关《机器人控制技术逆运动学方程.ppt(25页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第四章第四章 逆运动学方程逆运动学方程Chapter Inverse Kinematic Equations4.1引言4.2逆运动学方程的解4.3斯坦福机械手的逆运动学解4.4欧拉变换的逆运动学解4.5RPY变换的逆运动学解4.6球坐标变换的逆运动学解4.7本章小结4.1 4.1 引言引言 (Introduction)所谓逆运动学方程的解,就是已知机械手直角坐标空间的位姿(pose)T6,求出各节变量nordn。T6=A1A2A3A4A5A6()逆运动学方程解的步骤如下:(1)根据机械手关节坐标设置确定AnAn为关节坐标的齐次坐标变换,由关节变量和参数确定。关节变量和参数有:an连杆长度;n连
2、杆扭转角;dn相邻两连杆的距离;n相邻两连杆的夹角。对于旋转关节n为关节变量,而对于滑动关节dn为关节变量。其余为连杆参数,由机械手的几何尺寸和组合形态决定。(2)根据任务确定机械手的位姿T6T6为机械手末端在直角坐标系(参考坐标或基坐标)中的位姿,由任务确定,即式(3.37)给出的表达式T6=Z-1XE-1确定。它是由三个平移分量构成的平移矢量P(确定空间位置)和三个旋转矢量n,o,a(确定姿态)组成的齐次变换矩阵描述。(3)由T6和An(n1,2,6)和式()求出相应的关节变量n或dn。4.2 逆运动学方程的解(逆运动学方程的解(Solving inverse kinematic equa
3、tions)根据式(4.1)T6=A1A2A3A4A5A6分别用An(n1,2,5)的逆左乘式(4.1)有A1-1T6=1T6(1T6=A2A3A4A5A6)()A2-1A1-1T6=2T6(2T6=A3A4A5A6)()A3-1A2-1A1-1T6=3T6(3T6=A4A5A6)()A4-1A3-1A2-1A1-1T6=4T6(4T6=A5A6)()A5-1A4-1A3-1A2-1A1-1T6=5T6(5T6=A6)()根据上述五个矩阵方程对应元素相等,可得到若干个可解的代数方程,便可求出关节变量n或dn。4.3 斯坦福机械手的逆运动学解斯坦福机械手的逆运动学解 (Inverse solut
4、ion of Stanford manipulator)在第三章我们推导出StanfordManipulator的运动方程和各关节齐次变换式。下面应用式(4.2)(4.6)进行求解:这里 f11=C1 xS1 y()f12=-z()f13=-S1 xC1 y()其中 x=nxoxaxpxT,y=nyoyaypyT,z=nzozazpzT由第三章得到的斯坦福机械手运动学方程式()为C2(C4C5C6-S4S6)-S2S5C6-C2(C4C5S6+S4C6)+S2S5S6S2(C4C5C6-S4S6)+C2S5C6-S2(C4C5S6+S4C6)-C2S5S61T6=S4C5C6+C4C6-S4C
5、5S6+C4C600C2C4S5+S2C5S2d3S2C4S5-C2C5-C2d3S4S5d2(4.13)01比较式()和式()矩阵中的第三行第四列元素相等得到 f13(p)=d2()或 -S1 pxC1py=d2()令 px=r cos ()py=r sin ()其中 ()()将式()和式()代入式()有 sincon1consin1 d2/r (0 d2/r 1)()由式()可得 sin(1)d2/r (0 1 )()con(1)()这里号表示机械手是右肩结构()还是左肩结构()。由式()、()和()可得到第一个关节变量1的值()根据同样的方法,利用式()和式()矩阵元素相等建立的相关的方
6、程组,可得到其它各关节变量如下:(4.24)(4.25)(4.26)(4.27)(4.28)注意:l在求解关节变量过程中如出现反正切函数的分子和分母太小,则计算结果误差会很大,此时应重新选择矩阵元素建立新的方程组再进行计算,直到获得满意的结果为止。同样,如果计算结果超出了机械手关节的运动范围,也要重新计算,直到符合机械手关节的运动范围。l由于机械手各关节变量的相互耦合,后面计算的关节变量与前面的关节变量有关,因此当前面关节变量的计算结果发生变化时,后面关节变量计算的结果也会发生变化,所以逆运动方程的解不是唯一的,我们应该根据机械手的组合形态和各关节的运动范围,经过多次反覆计算,从中选择一组合理
7、解。由此可见,求解机械手的逆运动方程是一个十分复杂的过程。4.4 4.4 欧拉变换的逆运动学解欧拉变换的逆运动学解 (Inverse solution of Inverse solution of Euler Angles )由第三章知欧拉变换为Euler(,)Rot(z,)Rot(y,)Rot(z,)()我们用T来表示欧拉变换的结果,即TEuler(,)()或TRot(z,)Rot(y,)Rot(z,)()其中()()比较式()和式()有()()()()()()()()()由式()可解出角()由式()和式()可解出角()由式()和式()可解出角()这里需要指出的是,在我们采用式()式()来计
8、算、时都是采用反余弦函数,而且式()和式()的分母为sin,这会带来如下问题:1)由于绝对值相同的正负角度的余弦相等,如coscos(-),因此不能确定反余弦的结果是在那个象限;2)当sin接近于0时,由式()和式()所求出的角度和是不精确的;3)当0或180时,式()和式()无数值解。为此,我们必须寻求更为合理的求解方法。由三角函数的知识我们知道,反正切函数tan1(x/y)所在的象限空间可由自变量的分子和分母的符号确定(如图所示),因此如果我们得到欧拉角的正切表达式,就不难确定欧拉角所在的象限。为此,我们采用本章第二节的方法,用Rot(z,)1左乘式()有Rot1(z,)TRot(y,)R
9、ot(z,)()yxyyxyxxyx图4.1正切函数所在象限即()将上式写成如下形式()式中()()()同样,上面三个式子中的x、y、z分别表示n、o、a、p矢量的各个分量,如()比较式()等号两边矩阵的第2行第3列元素可知()即()由此可得到()或()结果得到()或()上述结果相差180,可根据实际系统的组合形态从中选择一个合理解。如果ay和ax都为0,则式()和式()无定义,这是一种退化现象,此时值可任意设置,如0。由于角已求出,比较式()等号两边矩阵第1行第3列和第3行第3列元素相等有()()或()()由此可得()同样比较式()等号两边矩阵的第2行第1列和第2行第2列元素可知()()或(
10、)()由此可得()至此,我们求出了欧拉变换的逆运动学解。4.5 RPY变换的逆运动学解变换的逆运动学解(Inverse solution of Inverse solution of RPY)第三章介绍的摇摆、俯仰和偏转(RPY)变换的表达式如下T=RPY(,)Rot(z,)Rot(y,)Rot(x,)()用Rot1(z,)左乘上式得到Rot1(z,)TRot(y,)Rot(x,)()将上式写成式()的形式()式中()()()由式()等号两边矩阵的第2行第1列元素相等有()由此得到()或()角已求出,根据式()等号两边矩阵的第3行第1列和第1行第1列元素相等有()()由此可得()进一步比较式(
11、)等号两边矩阵元素,由第2行第3列和第2行第2列元素相等有()()由此可得()至此,我们求出了RPY的逆运动学解。4.6 球坐标变换的逆运动学解球坐标变换的逆运动学解 (Inverse solution of Inverse solution of Spherical Coordinates)第三章介绍的球坐标变换的表达式如下T=Sph(,)=Rot(z,)Rot(y,)Trans(0,0,)()用Rot1(z,)左乘上式得到Rot1(z,)T=Rot(y,)Trans(0,0,)()将上列矩阵方程的第4列元素写出有()由上式第2行元素相等有()由式()可得到()或()由式()第1行和第3行元素相等有()()由此可得()为了获得平移量,我们用Rot1(y,)左乘式()Rot1(y,)Rot1(z,)T=Trans(0,0,)()上式第4列元素是()由上式第3行元素相等得到()至此,我们求出了球坐标变换的逆运动学解。4.7 4.7 本章小结(本章小结(SummarySummary)l解逆运动方程是应用齐次坐标变换原理,从机器人末端执行器的直角坐标空间到关节坐标的变换(T6 n、dn),它是求解正运动方程的逆过程(n、dn T6),是机器人运动学的重要内容,是机器人控制的依据。l要注意的是正运动方程的解是唯一解,而逆运动方程的解不是唯一解,因此选择合理解是解逆运动方程的一项重要内容。
限制150内