著录项信息
专利名称 | 一种面向SRS仿人手臂的自运动角计算方法 |
申请号 | CN201510017243.0 | 申请日期 | 2015-01-13 |
法律状态 | 权利终止 | 申报国家 | 中国 |
公开/公告日 | 2015-05-20 | 公开/公告号 | CN104635762A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G05D3/12 | IPC分类号 | G;0;5;D;3;/;1;2查看分类表>
|
申请人 | 北京航空航天大学 | 申请人地址 | 北京市海淀区学院路37号
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 北京航空航天大学 | 当前权利人 | 北京航空航天大学 |
发明人 | 胡宁;胡磊;胡玥 |
代理机构 | 北京慧泉知识产权代理有限公司 | 代理人 | 王顺荣;唐爱华 |
摘要
一种面向SRS仿人手臂的自运动角计算方法,它包括如下步骤:步骤一:建立SRS构型冗余度机械臂的数学模型,根据结构特点建立肩关节、肘关节、腕关节坐标系;步骤二:由当前状态下的自运动角通过PID算法计算给定工具坐标系位姿时的自运动角;步骤三:由步骤二的自运动角和工具坐标系位姿计算关节空间运动角度;步骤四:将步骤三的求解结果传递给下位机控制器,驱动机械臂实现给定工具坐标系位姿的运动。本发明给出了一种冗余度机械臂的逆运动学求法,和传统的计算方法相比,算法简单,计算速度快,可以得到解析解,在降低了求解难度的同时对关节运动做了一定的优化。
一种面向SRS仿人手臂的自运动角计算方法\n技术领域\n[0001] 本发明涉及冗余度机械臂运动学及控制领域,具体来说,是一种面向SRS仿人手臂的自运动角计算方法。\n背景技术\n[0002] 机械臂是实现机器人系统主体与末端执行器连接的重要工具,机械臂的活动范围、负载能力直接影响机器人末端的作业能力。冗余度机械臂的逆运动学问题是指已知机械臂末端位姿,确定机械臂的关节角度。给定冗余自由度机械臂的末端位姿,关节空间有无数个点与之对应,这些点的集合是关节空间的一个n-m维流形。冗余自由度机械臂可以在这个流形内自由变动而不影响末端位姿,这个变动称为冗余自由度机器人的自运动。传统的冗余自由度机械臂的逆运动学解法如梯度投影法耗时较长,或人为退化一个关节角转化为无冗余自由度问题。\n发明内容\n[0003] 为了解决上述问题,本发明提出一种面向SRS仿人手臂的自运动角计算方法。\n[0004] 本发明通过以下技术方案予以实现:\n[0005] 一种面向SRS仿人手臂的自运动角计算方法,它包括如下步骤:\n[0006] 步骤一:建立SRS构型冗余度机械臂的数学模型,根据结构特点建立肩关节、肘关节、腕关节坐标系;\n[0007] 步骤二:由当前状态下的自运动角通过PID算法计算给定工具坐标系位姿时的自运动角;\n[0008] 步骤三:由步骤二的自运动角和工具坐标系位姿计算关节空间运动角度;\n[0009] 步骤四:将步骤三的求解结果传递给下位机控制器,驱动机械臂实现给定工具坐标系位姿的运动。\n[0010] 其中,步骤一所述“建立SRS构型冗余度机械臂的数学模型”,其实现过程如下:将测量肩关节中心到肘关节中心的距离和肘关节中心到腕关节中心的距离,其几何模型为一个三动杆机构。\n[0011] 其中,基于自运动角的SRS构型冗余度机械臂逆运动学计算方法,所述SRS构型S为球副,R转动副,文中所述中肩关节、肘关节、腕关节分别对应S球副、R转动副、S球副。\n[0012] 其中,基于自运动角的SRS构型冗余度机械臂逆运动学计算方法,坐标系建立如下所述:将肩关节转动中心、轴关节转动中心的连线称为大臂,肘关节转动中心、腕关节转动中心的连线称为前臂。在初始状态下肩关节坐标系Z轴与大臂平行,并由肩关节转动中心指向肘关节转动中心;Y轴平行于肘关节转动轴线。肘关节坐标系Z轴与小臂平行,并由肘关节转动中心指向腕关节转动中心,Y轴为肘关节转动轴线方向。腕关节处坐标系为肘关节坐标系沿前臂平移。\n[0013] 其中,基于自运动角的SRS构型冗余度机械臂逆运动学计算方法,参数自运动角θ的含义:腕关节中心点和执行末端姿态已知时,肩关节中心点、肘关节中心点和腕关节中心点组成的平面可以绕腕关节中心点矢量转动,称其为自运动平面,对应转角称为自运动角,并规定当工具坐标点为(x,y,z)时,自运动角为零时自运动平面的法矢方向为(-y,x,0)。其余自运动平面对应的自运动角大小为自运动平面法矢与自运动角为零时自运动平面法矢方向的夹角。\n[0014] 其中,基于自运动角的SRS构型冗余度机械臂逆运动学计算方法,其中步骤二中所述PID算法具体过程如下:\n[0015] 1)由当前状态的自运动角θn和给定的执行末端点的位姿确定各个关节运动角度;\n[0016] 2)将步骤二计算得到的关节角度,计算腕关节姿态矩阵的Z轴与腕关节中心点矢量构成的平面与大臂小臂平面之间的夹角αn;\n[0017] 3)新的自运动角θn+1由如下公式:θn+1=θn+P*αn+I*(θn–θ0)求出;式中符号[0018] 说明如下:\n[0019] θn+1为新的自运动角,θn为上一次计算得到的自运动角,θ0为初始状态的自运动角,P、I为PI可调节参数。\n[0020] 4)在内存中存储自运动角θn+1。\n[0021] 该算法需给定初始状态时的自运动角θ0。由初始状态时的自运动角θ0按照上面1)-\n4)所述递推。\n[0022] 其中,基于自运动角的SRS构型冗余度机械臂逆运动学计算方法,由自运动角和执行末端位姿计算关节角度的步骤如下:\n[0023] 步骤1)由腕关节中心点求出自运动角为0时大臂小臂的法向矢量N;若腕关节中心点为(x,y,z),则上面所述矢量N为(-y,x,0);\n[0024] 步骤2)将步骤1)中所述矢量N绕腕关节中心点(x,y,z)转动自运动角值θn得到大臂小臂平面的法矢量N1;\n[0025] 步骤3)通过余弦定理求出肩关节中心点,肘关节中心点和腕关节中心点构成的三角形的三个角度,大臂与肩关节、腕关节连线的夹角用符号α表示,大臂小臂之间的夹角用符号β表示。\n[0026] 步骤4)将腕关节中心点矢量绕步骤2)求出的法矢量N1转动步骤3)求出的角度α,得出大臂的矢量方向AB,AB方向即肩关节转动后的Z轴方向,步骤2)求出的法矢量N1为肩关节转动后的Y轴,转动后肩关节的坐标可以确定;\n[0027] 步骤5)肘关节的转动角度即步骤3)中所求角度π-β;\n[0028] 步骤6)运动后腕关节的坐标是通过肩关节的旋转矩阵乘以肘关节的旋转矩阵,然后对两矩阵的乘积求逆,最后将求得的逆矩阵乘以给定执行末端的姿态矩阵得到。\n[0029] 本发明的优点在于:\n[0030] 给出了一种冗余度机械臂的逆运动学求法,和传统的计算方法相比,算法简单,计算速度快,可以得到解析解,在降低了求解难度的同时对关节运动做了一定的优化。\n附图说明\n[0031] 图1为初始状态下SRS构型冗余度机械臂机构及坐标系建立示意图;\n[0032] 图2为一般状态下SRS构型冗余度机械臂机构及坐标系建立示意图;\n[0033] 图3为实施本发明方法使用的冗余度机械臂结构示意图;\n[0034] 图4(a)是给定直线轨迹下肩关节X支链的移动量轨迹图\n[0035] 图4(b)是给定直线轨迹下肩关节Y支链的移动量轨迹图\n[0036] 图4(c)是给定直线轨迹下肩关节Z轴转动量轨迹图\n[0037] 图4(d)是给定直线轨迹下肘关节转动量轨迹图\n[0038] 图4(e)是给定直线轨迹下腕关节X支链的移动量轨迹图\n[0039] 图4(f)是给定直线轨迹下腕关节Y支链的移动量轨迹图\n[0040] 图4(g)是给定直线轨迹下腕关节关节Z轴转动量轨迹图\n[0041] 图5(a)是给定圆形轨迹下肩关节X支链的移动量轨迹图\n[0042] 图5(b)是给定圆形轨迹下肩关节Y支链的移动量轨迹图\n[0043] 图5(c)是给定圆形轨迹下肩关节Z轴转动量轨迹图\n[0044] 图5(d)是给定圆形轨迹下肘关节转动量轨迹图\n[0045] 图5(e)是给定圆形轨迹下腕关节X支链的移动量轨迹图\n[0046] 图5(f)是给定圆形轨迹下腕关节Y支链的移动量轨迹图\n[0047] 图5(g)是给定圆形轨迹下腕关节关节Z轴转动量轨迹图\n[0048] 图6是本发明流程框图\n具体实施方式\n[0049] 下面将结合附图和实例对本发明作进一步的详细说明。\n[0050] 1、图3所示为实现本发明所使用的机械臂,该机械臂为SRS构型七自由度机械臂。\n该机械臂肩关节转动中心到肘关节转动中心轴线的距离l1=270,肘关节转动中心到腕关节转动中心的距离l2=230。\n[0051] 2、图4(a-g)、5(a-g)为实现本发明的冗余度机械臂逆运动学关节运动曲线示意图。在这个具体示例中,机械臂的任务是画一条圆弧和一条直线。根据插值点的位姿,利用本发明所述逆运动学方法求出各关节的运动角度,将计算得到的结果传送给机械臂控制器,从而控制机械臂完成末端轨迹任务。\n[0052] 其中参数自运动角θ表示在给定工具坐标系的位姿时,冗余度机械臂可以绕肩关节中心点和腕关节中心点的连线转动的角度。腕关节中心点和执行末端姿态已知时,肩关节中心点、肘关节中心点和腕关节中心点组成的平面可以绕腕关节中心点矢量转动,称其为自运动平面,对应转角称为自运动角,并规定当工具坐标点为(x,y,z)时,自运动角为零时自运动平面的法矢方向为(-y,x,0)。自运动角的大小为其余自运动平面对应的自运动角大小为自运动平面法矢与自运动角为零时自运动平面法矢方向的夹角。\n[0053] 3、下面介绍本发明结合实际机构尺寸的逆运动学计算过程及结果:\n[0054] 如图2所示,建立SRS构型冗余度机械臂的数学模型,建立坐标系,当腕关节在初始状态时,腕关节的坐标系由肘关节坐标系平移得到,坐标系必须这样建立才能进一步优化计算;其中肩关节转动中心为A,肘关节转动中心为B,腕关节转动中心为C,AB之间的距离为l1,BC之间的距离为l2,AC之间的距离为d。\n[0055] 如图1所示,初始状态下的机械臂状态。机械臂上电后初始化,初始位置自运动角θ0的数值为零。给定一条运动轨迹的插补点序列0,1,2,3…。由初始位置自运动角和插补点\n0计算关节空间的运动角度。设上一步计算的腕关节姿态矩阵的Z轴与腕关节中心点矢量所在的平面M,计算M与大臂小臂平面的夹角α1。新的自转角新的自运动角θ1由如下公式:θ1=θ0+P*α1+I*(θ0–θ0)求出,其中P=0.2,I=0.1。通过调节PI可以改善关节空间的运动平滑性。存储当前插补点0处的自运动角θ1。已知n处自运动角时,由插补点n处自运动角和插补点n+1处给定末端位姿计算插补点n+1处关节空间的运动角度。设上一步计算的腕关节姿态矩阵的Z轴与腕关节中心点矢量所在的平面M,计算M与大臂小臂平面的夹角αn+1。插补点n+1处的自运动角θn+2由如下公式:θn+1=θn+P*αn+1+I*(θn–θ0)求出,其中P=0.2,I=0.1。由初始状态的值和递推公式可以求得所有插补点处的关节运动角度。将计算得到的结果传递给下位机控制器,驱动机械臂完成给定的末端轨迹。\n[0056] 上文所述给定自运动角θ和执行末端位姿时,计算关节空间转动角度的步骤如下:\n[0057] 1)设腕关节中心点矢量AC为(x,y,z),则自转角为0时大臂小臂平面ABC的法向量N为(-y,x,0)。\n[0058] 2)将1)中所述矢量N绕腕关节中心点矢量AC转动自运动角值θ得到大臂小臂平面ABC的法矢量N1;\n[0059] 3)大臂长度l1和小臂长度l2已知,已知AC为(x,y,z),求得 已知\n三角形ABC三个边的长度,由余弦定理求出图2所示α、β角。\n[0060] 4)步骤2)求出的平面ABC法矢量N1为肩关节转动后的Y轴在原肩关节坐标系下的坐标。将腕关节中心点矢量AC绕平面ABC的法矢量N1转动步骤3)求出的角度α,得出大臂的矢量方向AB。将某矢量绕定轴转动一个角度可以采用四元数的方法,是一种常规方法,这里不做陈述。\n[0061] 5)肘关节的转动角度即步骤3)中所求角度为π-β;\n[0062] 6)4)中求出的转动后肩关节的坐标系按照[x,y,z]写出,即为肩关节的旋转矩阵R1。其中x为X轴方向的单位矢量,y为Y轴方向的单位矢量,z为Z轴方向的单位矢量。肘关节的旋转矩阵R2通过绕肘关节轴线方向旋转π-β角,即可求出。绕空间任意方向的转轴转动一个角度的旋转矩阵有常用的公式,此处不做叙述。腕关节的旋转矩阵R3通过给定的末端姿态R可以求出。R3=R2-1*R1-1*R。至此,各关节的转动量均已求出,再结合特定构型球副的运动学逆解求出肩关节球球副和腕关节球副驱动关节的运动量即可求出。由R1、R2、R3计算出各关节运动量的方法与不同的球副、转动副实现方法有关,且主题无关,这里省略。\n[0063] 图4(a-g)为从点(100,100,300)沿直线运动到(0,0,500)各关节的运动曲线;图5(a-g)为绕x=20;y=50;z=350转动半径为50的四分之一个圆弧转动关节的运动曲线。本算法可以较快的得到SRS构型冗余度机械臂的逆解,并在一定程度上做了运动平滑性的优化。而且,不同尺寸通过可以调节PI的取值调节各关节运动的平滑性。图6是本发明流程框图。
法律信息
- 2020-12-22
未缴年费专利权终止
IPC(主分类): G05D 3/12
专利号: ZL 201510017243.0
申请日: 2015.01.13
授权公告日: 2017.06.06
- 2017-06-06
- 2015-06-17
实质审查的生效
IPC(主分类): G05D 3/12
专利申请号: 201510017243.0
申请日: 2015.01.13
- 2015-05-20
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2012-06-20
|
2011-11-25
| | |
2
| |
2012-08-22
|
2012-04-25
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |