I.I.机器人学机器人学 机器人学机器人学 机械电子工程机械电子工程 Dr.Kevin CraigDr.Kevin CraigI.I.机器人学机器人学 IEEE International Conference on Robotics and IEEE International Conference on Robotics and Automation(ICRA)2010 Automation(ICRA)2010 安克雷奇安克雷奇 文章:文章:856/2034856/2034 分会场:分会场:154154 国家:国家:4747 IEEE/RSJ International Conference on Intelligent IEEE/RSJ International Conference on Intelligent Robots and Systems(IROS)2009 Robots and Systems(IROS)2009 圣路易斯圣路易斯 文章:文章:936/1599936/1599 分会场:分会场:192192 国家:国家:5353I.I.机器人学机器人学 Technical SessionTechnical Session的主要内容的主要内容Human robot interactionMedical roboticsSensor fusionLegged robotsUnderwater robotsManipulator motion planningCamera calibrationIntelligent transportation systemsSLAM:Features and landmarksHumanoid robot body motionMicrorobotsBiologically-inspired robotic devicesRehabilitation roboticsField roboticsGraspingNanorobotic manipulationFish-like robotParallel robot 第二章 机器人运动学及其数学基础参考教材参考教材 美美 付京逊付京逊机器人学机器人学 中南大学中南大学 蔡自兴蔡自兴机器人学机器人学 美美 理查德理查德鲍尔鲍尔机器人操作器人操作手数数学学编程与控制编程与控制参考教材参考教材 美美 付京逊付京逊机器人学机器人学n 美籍华人n 普渡大学(Purdue University)电机工程专业著名教授n 4部著作、400多篇论文n 第一任国际模式识别学会会长,被誉为自动模式识别之父n 1985年去世参考教材参考教材 中南大学中南大学 蔡自兴蔡自兴n 中南大学教授,我国人工智能和机器人领域著名专家n 中国人工智能学会智能机器人专委会理事长n 曾与付京逊教授一起工作过第一节第一节 引言引言 串联机器人可以用一个开环关节链来建模串联机器人可以用一个开环关节链来建模 由数个驱动器驱动的由数个驱动器驱动的转动转动或或移动移动关节串联而成关节串联而成 一端固定在基座上,另一端是自由的,安装工具(末端一端固定在基座上,另一端是自由的,安装工具(末端执行器),用以操纵物体,或完成各种任务执行器),用以操纵物体,或完成各种任务inoa 关节的相对运动导致杆件的运动,使末端执行器定位于所需要的方位上 在一般机器人应用问题中,人们感兴趣的是:末端执行器相对于固定参考坐标数的空间几何描述,也就是机器人的运动学问题 机器人的运动学即是研究机器人手臂末端执行器位置和姿态与关节变量空间之间的关系运动学研究的问题运动学研究的问题Where is my hand?Direct KinematicsHERE!How do I put my hand here?Inverse Kinematics:Choose these angles!运动学运动学滚动接触滚动接触非完整控制非完整控制数学基础数学基础-刚体运动刚体运动 参考文献:参考文献:机器人操作的数学导论机器人操作的数学导论 作者:理查德作者:理查德摩雷摩雷 李泽湘李泽湘 夏卡恩夏卡恩萨斯特里萨斯特里 翻译:徐卫良翻译:徐卫良 钱瑞明(东南大学)钱瑞明(东南大学)n 19551955年丹纳维特(年丹纳维特(DenavitDenavit)和哈顿伯格()和哈顿伯格(HartenbergHartenberg)提)提出了一种出了一种采用矩阵代数方法采用矩阵代数方法解决机器人的运动学问题解决机器人的运动学问题D-HD-H方方法,其数学基础即是法,其数学基础即是齐次变换齐次变换具有直观的几何意义具有直观的几何意义能表达动力学、计算机视觉和能表达动力学、计算机视觉和 比例变换问题比例变换问题为以后的比例变换、透视变换为以后的比例变换、透视变换 等打下基础等打下基础1000pppTzyyyxxxzzzyxwww第二节 数学基础齐次坐标和齐次变换2.1 2.1 点和面的齐次坐标点和面的齐次坐标2.1.1 2.1.1 点的齐次坐标点的齐次坐标 一般来说,一般来说,n n维空间的齐次坐标表示是一个(维空间的齐次坐标表示是一个(n+1n+1)维空间实体。
有一)维空间实体有一个特定的投影附加于个特定的投影附加于n n维空间,也可以把它看作一个附加于每个矢量的维空间,也可以把它看作一个附加于每个矢量的特定坐标特定坐标比例系数比例系数引入齐次坐标的目的是为了表示几何变换的旋转、平移和缩放引入齐次坐标的目的是为了表示几何变换的旋转、平移和缩放kcj bi av zy x TwwzyxV式中i,j,k为x,y,z 轴上的单位矢量,a=,b=,c=,w为比例系数 wxwywz 显然,齐次坐标表达并不是唯一的,随w值的不同而不同在计算机图学中,w 作为通用比例因子,它可取任意正值,但在机器人的运动分析中,总是取w=1列矩阵一个点矢:例例11:kjiV543可以表示为:V=3 4 5 1T 或 V=6 8 10 2T 或 V=-12 -16 -20 -4T n 齐次坐标与三维直角坐标的区别齐次坐标与三维直角坐标的区别 V V点在点在OOXYZXYZ坐标系中表坐标系中表示是示是唯一唯一的(的(a a、b b、c c)而在齐次坐标中表示可而在齐次坐标中表示可以是多值的以是多值的不同的表不同的表示方法代表的示方法代表的V V点在空间点在空间位置上不变位置上不变。
xyzzzxV图2-2on 几个特定意义的齐次坐标:几个特定意义的齐次坐标:0 0 0 n0 0 0 nT T坐标原点矢量的齐次坐标,坐标原点矢量的齐次坐标,n n为任为任意非零比例系数意非零比例系数 1 0 0 01 0 0 0T T 指向无穷远处的指向无穷远处的OXOX轴轴 0 1 0 00 1 0 0T T 指向无穷远处的指向无穷远处的OYOY轴轴 0 0 1 00 0 1 0T T 指向无穷远处的指向无穷远处的OZOZ轴轴 0 0 0 00 0 0 0T T 没有意义没有意义n 2个常用的公式:zzyyxxbabababakbabajbabaibababbbaaakjibaxyyxzxxzyzzyzyxzyx)()()(点乘:叉乘:2.1.2 2.1.2 平面的齐次坐标平面的齐次坐标 平面齐次坐标由平面齐次坐标由行矩阵行矩阵P=a b c d P=a b c d 来表示来表示 当点当点v=x y z wv=x y z wT T处于平面处于平面P P内时,矩阵乘积内时,矩阵乘积PV=0PV=0,或记为,或记为 0dwczbyaxwzyxdcbaPV与点矢 相仿,平面 也没有意义 T00000000n 点和平面间的位置关系点和平面间的位置关系设一个平行于x、y轴,且在z轴上的坐标为单位距离的平面P可以表示为:或 有:PV=1100P2200P v0 v0 v0 点在平面下方点在平面上点在平面上方例如:点 V=10 20 1 1T 必定处于此平面内,而点 V=0 0 2 1T处于平 P 的上方,点V=0 0 0 1T处于P平面下方,因为:0112010101000 0 1120011000 -110001-1002.2 2.2 旋转矩阵及旋转齐次变换旋转矩阵及旋转齐次变换2.2.1 2.2.1 旋转矩阵旋转矩阵 设固定参考坐标系直角坐标为Oxyz,动坐标系为Ouvw,研究旋转变换情况。
xyzwvuPo(O)图2-3 初始位置时,动静坐标系重合,O、O 重合,如图各轴对应重合,设P点是动坐标系Ouvw中的一点,且固定不变则P点在Ouvw中可表示为:wwvvuuuvwkPjPiPP、为坐标系Ouvw的单位矢量,则P点在oxyz中可表示为:uivjwkzzyyxxxyzkPjPiPPxyzuvwPP 当动坐标系Ouvw绕O点回转时,求P点在固定坐标系oxyz中的位置 yzxo(O)uvwPPwPvPu图2-4已知:P点在Ouvw中是不变的仍然成立,由于Ouvw回转,则:wwvvuuuvwkPjPiPPxwwvvuuxuvwxikPjPiPiP)(PywwvvuuyuvwyjkPjPiPjP)(PzwwvvuuzuvwzkkPjPiPkP)(P用矩阵表示为:wvwzvzzwvyywxvxxzyxPPPkkjkikkjjjijkijiiiPPPy(2-7)uvwxyzwzvzzwvyywxvxxPRpkkjkikkjjjijkijiii:R y则旋转矩阵为:定义反过来:xyzuvwPRP1RRRdet*1T1RRRdet是正交矩阵,的行列式,为的伴随矩阵,为RRRR2.2.2 2.2.2 旋转齐次变换旋转齐次变换 用齐次坐标变换来表示式(2-7)110000001wvuzyxPPPRPPP1100000011zyxwvuPPPRPPP2.2.3 2.2.3 三个基本旋转矩阵和合成旋转矩阵三个基本旋转矩阵和合成旋转矩阵 三个基本旋转矩阵),(xR即动坐标系 求 的旋转矩阵,也就是求出坐标系 中各轴单位矢量 在固定坐标系中各轴的投影分量,很容易得到在两个坐标系重合时,有:角,轴转动绕,XOvwOvwOwvkji,Oxyz),(xR100010001Rwzvzzwvyywxvxxkkjkikkjjjijkijiiiy)R(x,xyzouvwUVWO图2-5ssin0sincos0001coiiux方向余弦阵同理:cos0sin010sin0cos)y,R(1000cossin0sin-cos)z,R (ssin0sincos0001)R(x,co三个基本旋转矩阵:xyzouvwUWOxyzouvwUWOvn 合成旋转矩阵:例1:在动坐标中有一固定点 ,相对固定参考坐标系 做如下运动:R(x,90);R(z,90);R(y,90)。
求运动后点 在固定参考坐标系 下的位置TuvwPo1321OxyzuvwPoOxyz解1:用画图的简单方法 解2:用分步计算的方法 R(x,90)R(z,90)R(y,90)123113211000001001-000001P12131231100001000001001-0 P1312121310000001-00100100 P(2-14)(2-15)(2-16)上述计算方法非常繁琐,可以通过一系列计算得到上述结果将式(2-14)(2-15)(2-16)联写为如下形式:11000133wvuzyxPPPRPPPR3x3为二者之间的关系矩阵,我们令:),(),(),RR33xRzRy(定义1:当动坐标系 绕固定坐标系 各坐标轴顺序有限次转动时,其合成旋转矩阵为各基本旋转矩阵依旋转顺序左乘注意:旋转矩阵间不可以交换 uvwOOxyzn 平移齐次变换矩阵1000100010001c)b (a TransHcba注意:平移矩阵间可以交换,平移和旋转矩阵间不可以交换 zyxoowuvabc2.2.4 2.2.4 相对变换相对变换 举例说明:例1:动坐标系0起始位置与固定参考坐标系0重合,动坐标系0做如下运动:R(Z,90)R(y,90)Trans(4,-3,7),求合成矩阵 解1:用画图的方法:ozyx74-3owuvvuwzyxoo(o)xyzuvwzyxuwo(o)v解2:用计算的方法 根据定义1,我们有:1000701030014100 )R(Z,90)90 R(y,7),3-,Trans(4T 以上均以固定坐标系多轴为变换基准,因此矩阵左乘。
如果我们做如下变换,也可以得到相同的结果:例2:先平移Trans(4,-3,7);绕当前 轴转动90;绕当前 轴转动90;求合成旋转矩阵vw(2-20)解1:用画图的方法 zyxo(o)vwuzyxoowuvozyxowvuxyzoowuv解2:用计算的方法 1000701030014100)R(Z,90)90 R(y,7),3-,Trans(4Too(2-21)式(2-20)和式(2-21)无论在形式上,还是在结果上都是一致的因此我们有如下的结论:动坐标系在固定坐标系中的齐次变换有2种情况:定义1:如果所有的变换都是相对于固定坐标系中各坐标轴旋转或平移,则依次左乘,称为绝对变换定义2:如果动坐标系相对于自身坐标系的当前坐标轴旋转或平移,则齐次变换为依次右乘,称为相对变换结果均为动坐标系在固定坐标中的位姿(位置+姿态)相对于固定坐标系,轴轴相当于轴,轴相对于轴,轴相当于ZYXwv 也就是说,动坐标系绕自身坐标轴做齐次变换,要达到绕固定坐标系相等的结果,就应该用相反的顺序右乘的意义:右乘的意义:机器人用到相对变换的机器人用到相对变换的时候比较多时候比较多 例如机械手抓一个杯子,例如机械手抓一个杯子,如右图所示,手爪需要如右图所示,手爪需要转动一个角度才抓的牢,转动一个角度才抓的牢,相对于固定坐标系表达相对于固定坐标系表达太麻烦,可以直接根据太麻烦,可以直接根据手爪的坐标系表示手爪的坐标系表示 但也要知道在但也要知道在O O中的位中的位姿,就用右乘的概念。
姿,就用右乘的概念xyzoH2.2.5 2.2.5 绕通过原点的任意轴旋转的齐次变换绕通过原点的任意轴旋转的齐次变换 有时动坐标系有时动坐标系O O 可能绕过原点可能绕过原点O O的分量分别为的分量分别为r rx x、r ry y、r rz z的的任意单位矢量任意单位矢量r r 转动转动角研究这种转动的好处是可用研究这种转动的好处是可用O O 绕某轴绕某轴r r 的一次转动代替绕的一次转动代替绕O O各坐标轴的数次转动各坐标轴的数次转动为推导此旋转矩阵,可作下述为推导此旋转矩阵,可作下述5 5步变换:步变换:1.1.绕绕X X 轴转轴转角,角,使使r r 轴处于轴处于XZXZ平面内平面内2.2.绕绕Y Y 轴转轴转-角,使角,使r r 轴与轴与OZOZ轴重合轴重合3.3.绕绕OZOZ轴转动轴转动角角4.4.绕绕Y Y 轴转轴转角角5.5.绕绕X X 轴转轴转-角角XYZrxryrzABCDBO51243rA由上图容易求出:2z2yyrrrsin2z2yzrrrcosxxrrrrOCsin2z2y2z2yrrrrrOBCBcos由定义1和定义2,上述5次旋转的合成旋转矩阵为:cossin0sin-cos0001cos0sin010sin-0cos1000cossin0sin-coscos0sin-010sin0coscossin0sincos0001RRRRRR,x,y,z,y,x,r(2-25)XYZrxryrzABCDBO51243rA带入式(2-25),得cos)cos(1rsinr)cos(1rrsinr)cos(1rrsinr)cos(1rrsinr)cos(1rrcos)cos(1rsinr)cos(1rrsinr)cos(1rrcos)cos(1rR2zxzyyzxxzyyzx2yzyxzyx2x,r由该式可以推出3个基本旋转矩阵2.2.6 2.2.6 齐次变换矩阵的几何意义齐次变换矩阵的几何意义 设,有一个手爪,即动坐标系O,已知,初始位置重合,那么O在O中的齐次坐标变换为:,如果手爪转了一个角度,则:111cbao1000100010001T 1111cba1000pppTzyyyxxxzzzyxwwwT反映了O在O中的位置和姿态,即表示了该坐标系原点和各坐标轴单位矢量在固定坐标系中的位置和姿态。
该矩阵可以由4个子矩阵组成,写成如下形式:比例系数透视矩阵位置矢量旋转矩阵11311333wfPRTzzzyyyxxxwww33R为姿态矩阵(旋转矩阵),表示动坐标系O在固定参考坐标系O中的姿态,即表示O各坐标轴单位矢量在O各轴上的投影 为位置矢量矩阵,代表动坐标系O坐标原点在固定参考坐标系O中的位置 TzyxpppP13为透视变换矩阵,在视觉中进行图像计算,一般置为0 00031f为比例系数 1 11w如果需要求解O在O中的位置和姿态,此时的齐次变换矩阵为 ,即求逆矩阵:1T1000-R-TTT1-33T1pwpvp)()()(kpjpippzyxkjizyxkvjvivvzyxkwjwiwwzyx其中:这些式子以后经常遇到,在机器人计算中,所要求的就是齐次变换矩阵 2.2.7 2.2.7 透镜成像的齐次变换透镜成像的齐次变换 pp:Px1PP x1 1()1ppppTTy zy zypzpzpfypzpzpypfypfzpxpypfzpxpypypfypfypfypypypfypypffxpxpy 以光心为原点O,光轴与y轴重合,P为物点,用齐次坐标表示求 的齐次坐标,即求根据三角形相似原理:注意是负值,是正值,所以实际上为相减关系又有设111000010000101110001ypzpypzppypzpfffxpxpxpypypypTfzpzpzpypf用矩阵表示:zyPypfozpfpzPpypp:Px1PP x1 1()1ppppTTy zy zypzpzpfypzpzpypfypfzpxpypfzpxpypypfypfypfypypypfypypffxpxpy 以光心为原点O,光轴与y轴重合,P为物点,用齐次坐标表示求的齐次坐标,即求根据三角形相似原理:注意是负值,是正值,所以实际上为相减关系又有设111000010000101110001ypzpypzppypzpfffxpxpxpypypypTfzpzpzpypf用矩阵表示:因此,进行机器人运动学计算时,不能省略透视矩阵,有因此,进行机器人运动学计算时,不能省略透视矩阵,有摄像头时,透视矩阵为摄像头时,透视矩阵为 0 -00 -0,没有摄像头时为,没有摄像头时为0 0 0 0 0 0 。
f11010010000100001T1T11pfzyxfyzyxzyxfpppfpppppp用矩阵表示:知识点:知识点:1.1.点和面的齐次坐标和齐次变换点和面的齐次坐标和齐次变换2.2.三个基本旋转矩阵三个基本旋转矩阵3.3.绝对变换:如果所有的变换都是相对于固定坐标系中各坐绝对变换:如果所有的变换都是相对于固定坐标系中各坐标轴旋转或平移,则依次左乘,称为绝对变换标轴旋转或平移,则依次左乘,称为绝对变换4.4.相对变换:如果动坐标系相对于自身坐标系的当前坐标轴相对变换:如果动坐标系相对于自身坐标系的当前坐标轴旋转或平移,则齐次变换为依次右乘,称为相对变换旋转或平移,则齐次变换为依次右乘,称为相对变换5.5.绕任意轴旋转:绕任意轴旋转:5 5步顺序步顺序6.6.透视变换透视变换知识点:知识点:三 个 基 本 旋三 个 基 本 旋转矩阵转矩阵cos0sin010sin0cos)y,R(1000cossin0sin-cos)z,R (ssin0sincos0001)R(x,co例题1:O与O初始重合,O作如下运动:绕Z轴转动30;绕X轴转动60;绕Y轴转动90100001000030cos30sin0030sin30cosR11000060cos60sin0060sin60cos000012R1000090cos090sin0010090sin090cos3R1000002/12/302/34/34/102/14/34/3123RRRT例题2:O与O初始重合,O作如下运动:绕X轴转动90;绕w轴转动90;绕Y轴转动90。
求 T;改变旋转顺序,如何旋转才能获得相同的结果1000090cos90sin0090sin-09cos00001R1100001000090cos90sin0090sin90cos2R1000090cos090sin0010090sin090cos3R1000001001000001213RRRT解:解:绕Z(w)轴转动90;绕X轴转动90;绕Y轴转动90例题3:矢量 在O中表示为 ,O相对于O的奇次变换为:Pkjip2230100011002000110010T oo中的矢量在求此时,轴平移的沿轴转的绕当中的矢量在求的位置和姿态在画出:求0 20X0 90Y0 0)3 0 2)00 1)O00ppp解:1)zxyuwvoo解:2)13238T00ppo解:3),1000090cos090sin0010090sin090cosR110000100001020001T 1r1000100102000121100TRT11orT1823231223100010010200012110100pTp例题4:如图所示,1)写出 、;2)求 1T21T32T43T 40 T 100011-00301-03.5-001T11000101-03001-0100T211000000155354-0054530 T32100001-0000103.5001-T 43解:1)o0 x0y0z433.511o1x1y1z2o2x2y2z3o3x3y3z4o4x4y4z解2):根据定义2,绕自身旋转,右乘100050.6-0.8-000.8-0.600001-T T T TT 433221140 习题1:O与O初始重合,O作如下运动:绕z轴转动90;绕v轴转动90;绕x轴转动90。
求 T;改变旋转顺序,如何旋转才能获得相同的结果习题2:已知齐次变换矩阵 要求R(f,),求f和值1000000101000010H第三章第三章 机器人运动学机器人运动学 n 机器人运动学主要是把机器人机器人运动学主要是把机器人相对于固定参考相对于固定参考系系的运动作为的运动作为时间的函数时间的函数进行分析研究,而不进行分析研究,而不考虑引起这些运动的力和力矩考虑引起这些运动的力和力矩n 也就是要把机器人的也就是要把机器人的空间位移空间位移解析地表示为解析地表示为时时间的函数间的函数,特别是研究机器人,特别是研究机器人关节变量空间和关节变量空间和机器人末端执行器位置和姿态之间机器人末端执行器位置和姿态之间的关系的关系n 本章将讨论机器人运动学几个具有实际意义的本章将讨论机器人运动学几个具有实际意义的基本问题基本问题3.1 3.1 机器人运动学所讨论的问题机器人运动学所讨论的问题 3.1.1 3.1.1 研究的对象研究的对象 机器人在基本机构形式上分为两种,一种是关节式串机器人在基本机构形式上分为两种,一种是关节式串联机器人,另外一种是并联机器人,如图:联机器人,另外一种是并联机器人,如图:PUMA560HexapodFanuc manipulator1972 Victor Scheinman在Unimation公司为通用;1980Westinghouse收购;1988Stubli收购;Nokia Robotics在80年代卖出1500余台PUMA系统;Nokia的 Robotics division1990年卖出。
运动学研究的问题运动学研究的问题Where is my hand?Direct KinematicsHERE!How do I put my hand here?Inverse Kinematics:Choose these angles!研究的问题研究的问题:n 运动学正问题运动学正问题-已知杆件几何参数和关节角矢量,求操已知杆件几何参数和关节角矢量,求操作机末端执行器相对于固定参考作标的位置和姿态(作机末端执行器相对于固定参考作标的位置和姿态(齐齐次变换问题次变换问题)n 运动学逆问题运动学逆问题-已知操作机杆件的几何参数,给定操作已知操作机杆件的几何参数,给定操作机末端执行器相对于参考坐标系的期望位置和姿态(位机末端执行器相对于参考坐标系的期望位置和姿态(位姿),操作机能否使其末端执行器达到这个预期的位姿?姿),操作机能否使其末端执行器达到这个预期的位姿?如能达到,那么操作机有几种不同形态可以满足同样的如能达到,那么操作机有几种不同形态可以满足同样的条件?条件?运 动 学 正 问 题关 节 角杆 件 参 数末 端 执 行 器运 动 学 正 问 题关 节 角杆 件 参 数逆3.2 3.2 机器人杆件,关节和它们的参机器人杆件,关节和它们的参数数 3.2.1 3.2.1 杆件,关节杆件,关节n操作机由一串用转动或平移(棱操作机由一串用转动或平移(棱柱形)关节连接的刚体(杆件)柱形)关节连接的刚体(杆件)组成组成n每一对关节杆件构成一个每一对关节杆件构成一个关节关节自由度自由度,因此,因此N N个自由度的操作个自由度的操作机就有机就有N N对关节对关节-杆件。
杆件n0 0号杆件(一般不把它当作机器号杆件(一般不把它当作机器人的一部分)固联在机座上,通人的一部分)固联在机座上,通常在这里建立一个固定参考坐标常在这里建立一个固定参考坐标系,最后一个杆件与工具相连系,最后一个杆件与工具相连n关节和杆件均由底座向外顺序排关节和杆件均由底座向外顺序排列,每个杆件最多和另外两个杆列,每个杆件最多和另外两个杆件相联,不构成闭环件相联,不构成闭环关节:关节:n一般说来,两个杆件间是用一般说来,两个杆件间是用低付低付相联的相联的n只可能有只可能有6 6种低付关节:种低付关节:旋转旋转(转动)、(转动)、棱柱棱柱(移动)、(移动)、圆柱形圆柱形、球形球形、螺旋螺旋和和平面平面,其中只有,其中只有旋转和棱柱形旋转和棱柱形关关节是串联机器人操作机常见的,各种低副形状如下图所节是串联机器人操作机常见的,各种低副形状如下图所示:示:旋转旋转棱柱形棱柱形柱形柱形球形球形螺旋形螺旋形平面平面AiAi+1Ai-1 杆件参数的定义杆件参数的定义 和和n li AA,由运动学的观点来看,杆件的作用仅在于它能保由运动学的观点来看,杆件的作用仅在于它能保持其两端关节间的持其两端关节间的结构形态结构形态不变。
这种形态由两不变这种形态由两个参数决定,一是杆件的长度个参数决定,一是杆件的长度 li,一个是杆件的,一个是杆件的扭转角扭转角 iAiAi+1iiliili 杆件参数的定义杆件参数的定义 和和n L和和L 在在A轴线上轴线上的交点之间的距离的交点之间的距离n L和和L 之间的夹角,之间的夹角,由由L 转向转向L,由右手,由右手定则决定正负,对于定则决定正负,对于旋转关节它是个变量旋转关节它是个变量 确定杆件确定杆件相对位置关系相对位置关系,由另外,由另外2个参数决定,一个是杆个参数决定,一个是杆件的偏移量件的偏移量 ,一个是杆件的回转角,一个是杆件的回转角 iidiidiAiAi+1iilid1iliAi-1id移动关节杆件参数的定义移动关节杆件参数的定义n 确定杆件的结构形态的确定杆件的结构形态的2个参数个参数Li与与i与旋转关节是一样的与旋转关节是一样的确定杆件相对位置关系的确定杆件相对位置关系的2个参数则相反这里个参数则相反这里i为常数,为常数,di为变量n 上述上述4个参数,就确定了杆件的结构形态和相邻杆件相对位个参数,就确定了杆件的结构形态和相邻杆件相对位置关系,在转动关节中,置关系,在转动关节中,Li,i,di是固定值,是固定值,i是变量。
在是变量在移动关节中,移动关节中,Li,i,i是固定值,是固定值,di 是变量3.3 机器人关节坐标系的建立机器人关节坐标系的建立o oO Oo on n-1 1nXn 对于每个杆件都可以在关节轴处建立一个正规的笛卡儿坐对于每个杆件都可以在关节轴处建立一个正规的笛卡儿坐标系(标系(xi,yi,zi),(),(i=1,2,n),),n是自由度数,再加是自由度数,再加上基座坐标系,一共有(上基座坐标系,一共有(n+1)个坐标系个坐标系n 基座坐标系基座坐标系 定义为定义为0号坐标系(号坐标系(x0,y0,z0),它也是机它也是机器人的惯性坐标系,器人的惯性坐标系,0号坐标系在基座上的位置和方向可号坐标系在基座上的位置和方向可任选,但任选,但 轴线必须与关节轴线必须与关节1的轴线重合,位置和方向可的轴线重合,位置和方向可任选;任选;n 最后一个坐标系(最后一个坐标系(n关节),可以设在手的任意部位,但关节),可以设在手的任意部位,但必须保证必须保证 与与 垂直n 机器人关节坐标系的建立主要是为了描述机器人各杆件和终机器人关节坐标系的建立主要是为了描述机器人各杆件和终端之间的相对运动,对建立运动方程和动力学研究是基础性端之间的相对运动,对建立运动方程和动力学研究是基础性的工作。
的工作n 为了描述机器人各杆件和终端之间转动或移动关系,为了描述机器人各杆件和终端之间转动或移动关系,Denavit和和Hartenberg于于1955年提出了一种为运动链中每个杆件建立年提出了一种为运动链中每个杆件建立附体坐标系的矩阵方法附体坐标系的矩阵方法(D-H方法)方法),建立原则如下:,建立原则如下:D-H关节坐标系建立原则关节坐标系建立原则u右手坐标系右手坐标系u原点原点Oi:设在:设在Li与与Ai+1轴线的交点上轴线的交点上 uZi轴轴:与与Ai+1关节轴重合,指向任意关节轴重合,指向任意 uXi轴轴:与公法线与公法线Li重合,指向沿重合,指向沿Li由由Ai轴线指向轴线指向Ai+1轴线轴线 uYi轴轴:按右手定则按右手定则 关节坐标系的建立原则关节坐标系的建立原则AiAi+1iilid1iliAi-11iz1ix1iy1ioizixiyion 原点原点Oi:设在:设在Li与与Ai+1轴线的交点上轴线的交点上 n Zi轴:与轴:与Ai+1关节轴关节轴重合,指向任意重合,指向任意 n Xi轴:与公法线轴:与公法线Li重合,指向沿重合,指向沿Li由由Ai轴线指向轴线指向Ai+1轴线轴线 n Yi轴:按右手定则轴:按右手定则 沿 xi 轴,zi-1 轴与 xi 轴交点到 0i 的距离 绕 xi 轴,由 zi-1 转向zi 沿 zi-1 轴,zi-1 轴和 xi 交点至0i 1 坐标系原点的距离 绕 zi-1 轴,由 xi-1转向 xi 两种特殊情况两种特殊情况n 两轴相交,怎么建立坐两轴相交,怎么建立坐标系?标系?0iAi与与Ai+1关节轴线的交关节轴线的交点;点;ZiAi+1轴线;轴线;XiZi和和Zi-1构成的平面的构成的平面的法线法线 ;Yi右手定则;右手定则;i-1ii-1i AiA Ai i+1 1o oi iz zi i-1 1z zi ix xi iy yi in两轴平行,怎么建立坐标系两轴平行,怎么建立坐标系(Ai与与Ai+1平行平行)?先建立先建立 0i-1然后建立然后建立0i+1最后建立最后建立 0i i-1i-1O OD D注意:注意:由于由于Ai和和Ai+1平行,平行,所以公法线任意点所以公法线任意点 在在A点位置;点位置;按照先前的定义,按照先前的定义,di为为Oi-1点和点和A点之间的距离,点之间的距离,di+1为为B点和点和C点间点间的距离,这样设定可以的,但我们可以变更一下,将的距离,这样设定可以的,但我们可以变更一下,将0i点放在点放在C点,点,定义定义Oi在在Li+1和和Ai+1轴的交点上,这样使轴的交点上,这样使di+1=0使计算简便,此时使计算简便,此时di=Ai-1AiAi+1Ai+2li-1oi-1xi-1yi-1zi-1ABDCoi(xi)(yi)zixiyioi+1xi+1yi+1zi+1di+1li+1di 相邻相邻关节坐标系间的齐次变换过程关节坐标系间的齐次变换过程 机器人运动学正解机器人运动学正解1.将将xi-1轴绕轴绕 zi-1 轴转轴转 i 角角度,将其与度,将其与xi轴平行;轴平行;2.沿沿 zi-1轴平移距离轴平移距离 di,使使 xi-1 轴与轴与 xi 轴重合;轴重合;3.沿沿 xi 轴平移距离轴平移距离 Li,使两坐标系原点及使两坐标系原点及x轴轴重合;重合;4.绕绕 xi 轴转轴转 i 角度,两角度,两坐标系完全重合坐标系完全重合),(),(),(),(A111iiiiransiiransiiiixRlxTdZTZR 根据上述坐标系建立原则,用下列旋转和位移我们根据上述坐标系建立原则,用下列旋转和位移我们可以建立相邻的可以建立相邻的 Oi-1 和和 Oi 坐标系之间的关系坐标系之间的关系AiAi+1iilid1iliAi-11iz1ix1iy1ioizixiyio 机器人的运动学正解方程机器人的运动学正解方程001112iiiTAAA D-H变换矩阵变换矩阵iiA1100010000100001id1000010000cossin00sincosiiii100001000010001il10000cossin00sincos00001iiii1000cossin0sincossincoscossincossinsinsincoscosiiiiiiiiiiiiiiiiidll=机械手的坐标变换图如图所示,机械手的末端(即连杆坐标系机械手的坐标变换图如图所示,机械手的末端(即连杆坐标系i)相对于基座坐标系相对于基座坐标系0的描述用的描述用 oTi 表示,即:表示,即:0zA1A2A3A4A5A60EX0T61T62T63T64T65T6 机械手的坐标变换图 机器人的运动学正解方程机器人的运动学正解方程001112iiiTAAA举例:举例:StanfordStanford机器人机器人A1A2A3A4A5A6d1z1x1y1O1d2z2x2y2O2z3y3x3O3y4z4x4O4z5y5x5O534545,0o o odd重重合合d3z6x6y6O6d6z0y0 x0O0n 为右手坐标系为右手坐标系n 原点原点Oi:Ai与与Ai+1关节轴线的交点关节轴线的交点n Zi轴:与轴:与Ai+1关节轴关节轴重合,指向任意重合,指向任意 n Xi轴:轴:Zi和和Zi-1构成构成的面的法线的面的法线n Yi轴:按右手定则轴:按右手定则 Li 沿沿 xi 轴,轴,zi-1 轴与轴与 xi 轴交点到轴交点到 0i 的距离的距离i 绕绕 xi 轴,由轴,由 zi-1 转向转向zidi 沿沿 zi-1 轴,轴,zi-1 轴和轴和 xi 交点至交点至0i 1 坐标系原坐标系原 点的距离点的距离i 绕绕 zi-1 轴,由轴,由 xi-1转向转向 xi解:解:3.4 3.4 例题例题试求立方体中心在机座坐标系试求立方体中心在机座坐标系0 0中的位置中的位置该手爪从上方把物体抓起,同时手爪的开合方向与物体的该手爪从上方把物体抓起,同时手爪的开合方向与物体的Y Y轴同向,轴同向,那么,求手爪相对于那么,求手爪相对于0 0的姿态是什么?的姿态是什么?在机器人工作台上加装一电视摄像机,摄像机可见到固联在机器人工作台上加装一电视摄像机,摄像机可见到固联着着6DOF关节机器人的机座坐标系原点,它也可以见到被操作关节机器人的机座坐标系原点,它也可以见到被操作物体(立方体)的中心,如果在物体中心建一局部坐标系,则物体(立方体)的中心,如果在物体中心建一局部坐标系,则摄像机所见到的这个物体可由齐次变换矩阵摄像机所见到的这个物体可由齐次变换矩阵T1来表示,如果摄来表示,如果摄像机所见到的机座坐标系为矩阵像机所见到的机座坐标系为矩阵T2表示。
表示1000101-002001-010-001T100091-00100011010T21xyz解解1 1:T T 21物机机摄物摄求,已知TTT TT 11-2)(有:物摄摄机物机TTT 100091-00100011010 1000101-002001-0100011000110010001-11010 O物根据T1画出O机根据T2画出因此物体位于机座坐标系的(因此物体位于机座坐标系的(11,10,1)T处,它的处,它的X,Y,Z轴分别与机座坐标系的轴分别与机座坐标系的-Y,X,Z轴平行xyzy机z物y物x物z机oO机O物解解2 2:向重合手爪开合方向与物体ya:Ts001有方向相反方向物体的从上向下抓,指出手爪zab:Ta 100则有Tkjikjiasnc01000100001:1-00001010因此:姿态矩阵为重合时与物体中心当手爪中心100011-001000111010 T物机OsnayzxX机手爪机实际要求Tpzazsznzpyaysynypxaxsxnx1000 工作空间工作空间n 工作空间工作空间:末端操作手可以到达的空间位置集合末端操作手可以到达的空间位置集合n 如何获得工作空间如何获得工作空间:利用正运动学模型利用正运动学模型,改变关节改变关节变量值变量值n 可达空间可达空间:末端操作手可以至少以一个姿态到达的末端操作手可以至少以一个姿态到达的空间位置集合空间位置集合n 灵活空间灵活空间:末端操作手可以以任何姿态到达的空间末端操作手可以以任何姿态到达的空间位置集合位置集合如何确定可达空间如何确定可达空间?首先,首先,令令 3 3变变化化 示例示例:平面平面 3 3连杆机器人连杆机器人123112123123112123123123123123coscoscossinsinsin,xlllylllllllll 3种最常见的欧拉角类型种最常见的欧拉角类型步步1步步2步步3类型类型1绕绕OZ轴转轴转角角绕当前绕当前OU 轴转轴转角角绕当前绕当前OW轴转轴转角角类型类型2绕绕OZ轴转轴转角角绕当前绕当前OV 轴转轴转角角绕当前绕当前OW轴转轴转角角类型类型3绕绕OX轴转轴转角角绕绕OY轴转轴转角角绕绕OZ轴转轴转角角uvwx(u)y(v)z(w)ouvwu?v?W?),(ZR),(R),(wR N0T100000000110000cssccssccsscccssssccccssscccsssccsscscscc类型类型1:表示法通常用于陀螺运动:表示法通常用于陀螺运动 类型类型2:所得的转动矩阵为右乘所得的转动矩阵为右乘 10000c0s-010s0c 10000),(),v(),(RcssccsscwRRZR1000pzpyRpxTccsssssccscsscccssccssccssccc类型类型2绕绕OZ轴转轴转角角绕当前绕当前OV 轴转轴转角角绕当前绕当前OW轴转轴转角角类型类型3 3:一般称此转动的欧拉角:一般称此转动的欧拉角为偏航角、俯仰和横滚,为偏航角、俯仰和横滚,(这(这种方法也叫做种方法也叫做偏航、俯仰和横滚偏航、俯仰和横滚角表示方法)这种形角表示方法)这种形 式主要用式主要用于航空工程中分析飞行器的运动,于航空工程中分析飞行器的运动,其旋转矩阵为其旋转矩阵为ccscssccssccssscssscsccsssccccssccssccsscxRyRz000010010010000),(),(),RR(类型类型3绕绕OX轴转轴转 角角绕绕OY轴转轴转角角绕绕OZ轴转轴转角角:已知关节角度或位移,计算已知关节角度或位移,计算末端操作手的对应位姿末端操作手的对应位姿.:已知已知末端操作手的位姿,求末端操作手的位姿,求解对应的关节变量解对应的关节变量.可能存在多解或无解可能存在多解或无解通常需多次求解非线性超越方程通常需多次求解非线性超越方程3.6 3.6 运动学逆问题运动学逆问题 解的存在性解的存在性存在双解存在双解!求解方法求解方法0140i000222018040i100040i 2 2选择一个与前一采样时间最接近的解,例如:选择一个与前一采样时间最接近的解,例如:0140i000222018040i 若该关节运动空间为若该关节运动空间为 ,且,且 ,则应选,则应选 25001160i0220i3 3根据避障要求,选择合适的解根据避障要求,选择合适的解4 4逐级剔除多余解逐级剔除多余解 对于具有对于具有n n个关节的机器人,其全部解将构成树形结构。
个关节的机器人,其全部解将构成树形结构为简化起见,应逐级剔除多余解这样可以避免在树形解中为简化起见,应逐级剔除多余解这样可以避免在树形解中选择合适的解选择合适的解Paul 等人提出的方法等人提出的方法65544332211060AAAAAAT 61655443322160-110 TAAAAATA)(1 q626554433260-110-121TAAAATAA)()(2q6560-110121132143154)()()()(TTAAAAA-)(5 qETAA60-110-165)()(6 q100060pzazsznzpyaysynypxaxsxnxT),(2xyarctg(arccos)cos(cos0/)(cos180,0dd为负为正均为负为正为负均为正yxyxyxyxyxtg,0909018018090900),(20000001ccssssccscscazsznzaycaxssycsxsnycnxsaysaxcsyssxcnysnxccssccsscazsznzaysynyaxsxnxcssczcssccssccsscazsznzaysynyaxsxnx010000 00001 1000-01,R 1 100000000110000 1或,可得:而另两个未知数在右边在矩阵方程的左边,未知数)左右两边,可使一个)左乘式(用)(例例1 1:欧拉角表示的逆运动学求解:欧拉角表示的逆运动学求解:),(2tan2111),(2tan01-11-1nysnxcsyssxctgnysnxcsyssxcsyssxcsnysnxccayaxtgayaxaysaxc)元素分别对应相等,)元素和(,使(所在象限。
按照前面的定义,确定具体分析办法靠结构结束条件、剔除确定象限靠分子,分母的符号来多值解逆运动唯一解正运动总体来讲于使用者的直觉用左乘还是右乘,取决解也可以用右乘的方法求)元素对应相等,)元素和(,(,),(2)(tan-333211azaycaxstgazaycaxsazcaycaxss例例2:斯坦福机器人运动学逆问题解:斯坦福机器人运动学逆问题解6532211060AAAAT61T653321AAA式中:式中:yxyxpCpSpfppfpSpCpf1134z241114)()()(由两端矩阵元素(由两端矩阵元素(3,4)对应相等可得:)对应相等可得:作三角变换:作三角变换:式中:式中:得到:得到:即有:即有:由(由(1,4)和()和(2,4)元素对应相等,得:)元素对应相等,得:6261121TTA6362132TTA高腕高腕低腕低腕z4x4O4z5y5x5O5取前一个采样点的值取前一个采样点的值52122212222cosl lllyxN000O0nasX0Y0Z0OnNdTNransTdwRdzdydxTT0N0),(),(变化后)(NransTdwRdzdydxTdTT0NN0),(),(记为TdwRdzdydxTdTTrans),(),(TEdwRdzdydxTdTrans),(),()T(.),(),(的左边在注意,称为微动率,令TdTEdwRdzdydxTrans在忽略高次项在忽略高次项的情况下:微的情况下:微动齐次变换与动齐次变换与次序无关次序无关 d)1(10000101011000010101100001000010011000010001000110000100100001xdydxdzdydzdxdzyddzxddydxdyxdzddzdyxddydzdzdzdydydxdxdT忽略高次项x)dR(x,3 y)dy,R 2 z)dR(z,1 、(、如果y)dR(y,3 x)dx,R 2 z)dR(z,1 、(、反过来,如果)相同与式(忽略高次项(110000101011000010101z)dR(z,x)dx,R y)dR(y,Txdydxdzdydzdxdydxdzdydxyddzdyxdd因此说,微动齐次变换与次序无关因此说,微动齐次变换与次序无关平移:平移:1000100010001dzdydxTr旋转旋转R R ,绕通过原点的任意轴,绕通过原点的任意轴 旋转旋转 角角:dw,wddddddddddddddddddddwcos)cos(1rsinr)cos(1rrsinr)cos(1rrsinr)cos(1rrsinr)cos(1rrcos)cos(1rsinr)cos(1rrsinr)cos(1rrcos)cos(1rR2zxzyyzxxzyyzx2yzyxzyx2x,1000010101sin,1cosdrdrdrdrdrdrdddxyxzyz在微动范围内在微动范围内,绕任意轴转动绕任意轴转动 角角,可以看作绕可以看作绕x,y,zx,y,z轴的微轴的微转动的合成。
因此:转动的合成因此:ddrzddryddrxdzyx,1000010101,xdydxdzdydzddwR因此:因此:因此微动率因此微动率=EdwRdzdydxTrans,0000000dzxdyddyxdzddxydzd微动的齐次变换:微动的齐次变换:dT=T 己知变换矩阵己知变换矩阵 1000000131007010T,001.0kjidkjidp6.003.0转动:转动:平移:平移:求求d T 解:解:00006.001.0001.0003.000010000100001000011000011.0001.010000110006.010000103.000100009.01.0000001.03.0000100000013100701000006.001.0001.0003.0000TdT10009.01.0013101.03.7010dTT反过来:如果我们要求反过来:如果我们要求 在在 中的齐次交换矩阵为中的齐次交换矩阵为 nooo1000000131007010T实际测得的为实际测得的为 10009.01.0013101.03.7010那么末端执行器坐标系要如何运动才能到达期望值?那么末端执行器坐标系要如何运动才能到达期望值?1000011.0001.0100001转动:转动:10006.010000103.0001平移:平移:dT=T (绕基准坐标系)(绕基准坐标系)=TT(绕动坐标系)(绕动坐标系)左乘左乘,绕基准绕基准右乘右乘,绕动坐标轴绕动坐标轴强调等效强调等效TTTTTT11TTT1000zzzzyyyyxxxxpasnpasnpasnT 10001PaaaaPsssspnnnnTTzyxTzyxTzyx设:设:有:有:0000000pdpdaasdandpdpdssadsndpdpdnnadnsd0000000pdpdandsdpdpdsndadpdpdnsdadTTT1sna研究绕自身轴的微动率研究绕自身轴的微动率和绕固定坐标系坐标轴的和绕固定坐标系坐标轴的微动率之间是什么关系微动率之间是什么关系,举例说明:举例说明:例:一动坐标系相对于固定坐标系的齐例:一动坐标系相对于固定坐标系的齐 次变换为次变换为 1000000131007010Tnsap己知相对固定坐标系的微己知相对固定坐标系的微动平移和转动动平移和转动 kjidkjidp001.06.003.0求:求:与与 求求dT 求与之等效的绕动坐标系的微平移和微转动求与之等效的绕动坐标系的微平移和微转动 解:解:=000000z0dzxdyddyxdzddxydd00006.001.0001.0003.00000100001.01.0001001.00010001.0TTTkjikjindkjikjisdkjikjiad kjikjikjipdpd6.003.0037001.0kjikji6.003.0037001.0 kjik。