CN112597437B - 机械臂的逆运动学解析方法、装置及设备 - Google Patents
机械臂的逆运动学解析方法、装置及设备 Download PDFInfo
- Publication number
- CN112597437B CN112597437B CN202011605529.8A CN202011605529A CN112597437B CN 112597437 B CN112597437 B CN 112597437B CN 202011605529 A CN202011605529 A CN 202011605529A CN 112597437 B CN112597437 B CN 112597437B
- Authority
- CN
- China
- Prior art keywords
- joint
- determining
- mechanical arm
- nth
- equation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 39
- 230000009466 transformation Effects 0.000 claims abstract description 72
- 238000004458 analytical method Methods 0.000 claims abstract description 54
- 238000013519 translation Methods 0.000 claims abstract description 41
- 239000011159 matrix material Substances 0.000 claims description 55
- 239000013598 vector Substances 0.000 claims description 34
- 238000004590 computer program Methods 0.000 claims description 19
- 238000004364 calculation method Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000010391 action planning Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Computational Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Manipulator (AREA)
Abstract
本申请属于机器人领域,提出了一种机械臂的逆运动学解析方法、装置及设备。该方法包括:根据机械臂末端位置和所述机械臂中为旋转自由度的第N关节,确定第N‑1关节的平动位置;根据第N‑1关节的平动位置,以及第N‑1关节相对于世界坐标系的齐次方程,确定第一关节至第N‑3关节的旋转角度;根据机械臂末端的指向,第一关节至第N‑3关节的旋转角度,结合第N‑3关节至第N关节之间的齐次变换方程,确定第N‑2关节和第N‑1关节的旋转角度;根据机械臂末端姿态确定第N关节的旋转角度。从而能够采用较低维度的方程组快速的进行机械臂的逆运动学解析,提高解析效率,并且可以同时得到多个满足要求的解。
Description
技术领域
本申请属于机器人领域,尤其涉及机械臂的逆运动学解析方法、装置及设备。
背景技术
机器人对机械臂的运动控制实现具体功能的过程中,需要反复进行运动学求解,包括正运动学求解和逆运动学求解。其中,正运动学求解是指通过关节角度计算末端位姿,逆运动学求解是指通过末端位姿反推关节角度。逆运动学在机器人操作控制中较为重要。比如,机械臂操作物体时,需要将机械臂末端移动到物体所在位置,通过逆运动学可以求解得到机械臂末端处于物体所在位置时所对应的关节角度。
求解逆运动学的方法通常包括解析法和数值法。其中,机械臂的解析方法通常采用多维非线性方程组求解的方式进行迭代计算,计算较为复杂,计算时间较长,解析效率较低,并且无法同时获得所有可行的解。
发明内容
有鉴于此,本申请实施例提供了一种机械臂的逆运动学解析方法、装置及设备,以解决现有技术中进行逆运动学解析时,采用多组非线性方程组求解的方式进行迭代,计算较为复杂,计算时间长,解析效率低,且无法同时获得所有可行的解的问题。
本申请实施例的第一方面提供了一种机械臂的逆运动学解析方法,所述机械臂包括N个关节,且靠近机械臂末端的第N关节和第N-2关节为旋转自由度关节,第N关节转动时,第N关节相对于第N-1关节的平动位置不变,第N-2关节转动时,第N-2关节相对于第N-3关节的平动位置不变,N为大于3的自然数,所述方法包括:
根据机械臂末端位置和所述机械臂中为旋转自由度的第N关节,确定第N-1关节的平动位置;
根据第N-1关节的平动位置,以及第N-1关节相对于世界坐标系的齐次方程,确定第一关节至第N-3关节的旋转角度;
根据机械臂末端的指向,第一关节至第N-3关节的旋转角度,结合第N-3关节至第N关节之间的齐次变换方程,确定第N-2关节和第N-1关节的旋转角度;
根据机械臂末端姿态确定第N关节的旋转角度。
结合第一方面,在第一方面的第一种可能实现方式中,根据第N-1关节的平动位置,以及第N-1关节相对于世界坐标系的齐次方程,确定第一关节至第N-3关节的旋转角度,包括:
根据第N-1关节的平动位置与所述第N-1关节相对于世界坐标的齐次方程在每个坐标轴的坐标的对应关系,生成方程组;
根据所述方程组计算所述第一关节至第N-3关节的旋转角度。
结合第一方面的第一种可能实现方式,在第一方面的第二种可能实现方式中,在根据第N-1关节的平动位置,以及第N-1关节相对于世界坐标系的齐次方程,确定第一关节至第N-3关节的旋转角度之前,所述方法还包括:
获取第一关节相对于世界坐标系的第一齐次变换矩阵T1,第二关节相对于第一关节的第二齐次变换矩阵T2,直至第N-1关节相对于第N-2关节的第N-2齐次变换矩阵Tn-2;
结合第一方面,在第一方面的第三种可能实现方式中,根据机械臂末端的指向,第一关节至第N-3关节的旋转角度,结合第N-3关节至第N关节之间的齐次变换方程,确定第N-2关节和第N-1关节的旋转角度,包括:
根据第一关节至第N-3关节的旋转角度,确定第N-3关节相对于世界坐标系的齐次变换矩阵;
根据N-2关节相对于N-3关节的齐次变换矩阵、第N-1关节相对于第N-2关节的齐次变换矩阵以及第N关节相对于第N-1关节的齐次变换矩阵,确定第N关节对应的方向矢量方程;
根据所述方向矢量方程确定所述第N-1关节和所述第N-2关节的旋转角度。
结合第一方面的第三种可能实现方式,在第一方面的第四种可能实现方式中,根据N-2关节相对于N-3关节的齐次变换矩阵、第N-1关节相对于第N-2关节的齐次变换矩阵以及第N关节相对于第N-1关节的齐次变换矩阵,确定第N关节对应的方向矢量方程,包括:
根据N-2关节相对于N-3关节的齐次变换矩阵、第N-1关节相对于第N-2关节的齐次变换矩阵以及第N关节相对于第N-1关节的齐次变换矩阵,确定第N关节相对于世界坐标系的方向矢量;
根据机械臂末端指向与所述第N关节方向矢量的对应关系,确定第N关节对应的方向矢量方程。
结合第一方面的第三种可能实现方式,在第一方面的第五种可能实现方式中,根据所述方向矢量方程确定所述第N-1关节和所述第N-2关节的旋转角度,包括:
根据所述方向矢量方程确定每个坐标轴方向的矢量分量方程,根据所述矢量分量方程构成矢量方程组;
根据所述矢量方程组确定所述第N-1关节和所述第N-2关节的旋转角度。
结合第一方面,在第一方面的第四种可能实现方式中,根据机械臂末端姿态确定第N关节的旋转角度,包括:
根据机械臂末端的夹持角度,确定所述第N关节的旋转角度。
本申请实施例的第二方面提供了一种机械臂的逆运动学解析装置,所述机械臂包括N个关节,且靠近机械臂末端的第N关节和第N-2关节为旋转自由度关节,第N关节转动时,第N关节相对于第N-1关节的平动位置不变,第N-2关节转动时,第N-2关节相对于第N-3关节的平动位置不变,N为大于3的自然数,所述装置包括:
平动位置确定单元,用于根据机械臂末端位置和所述机械臂中为旋转自由度的第N关节,确定第N-1关节的平动位置;
旋转角度第一确定单元,用于根据第N-1关节的平动位置,以及第N-1关节相对于世界坐标系的齐次方程,确定第一关节至第N-3关节的旋转角度;
旋转角度第二确定单元,用于根据机械臂末端的指向,第一关节至第N-3关节的旋转角度,结合第N-3关节至第N关节之间的齐次变换方程,确定第N-2关节和第N-1关节的旋转角度;
旋转角度第三确定单元,用于根据机械臂末端姿态确定第N关节的旋转角度。
本申请实施例的第三方面提供了一种机械臂的逆运动学解析设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面任一项所述方法的步骤。
本申请实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面任一项所述方法的步骤。
本申请实施例与现有技术相比存在的有益效果是:根据机械臂末端的第N关节为旋转自由度关节的特点,确定第N-1关节的平动位置,由于第N-2关节为旋转自由度关节,因此,第N-2关节的旋转不会影响到第N-1关节的平动位置,根据第N-1关节相对于世界坐标系的齐次方程,可确定第N-2关节之前的关节的旋转角度,再通过第N关节的方向矢量所确定的方向矢量方程,计算第N-2和第N-1关节的旋转角度,最后通过机械臂末端姿态确定第N关节的旋转角度,从而能够采用较低维度的方程组快速的进行机械臂的逆运动学解析,提高解析效率,并且可以同时得到多个满足要求的解。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种待解析的机械臂的结构示意图;
图2是本申请实施例提供的一种机械臂的逆运动学解析方法的实现流程示意图;
图3是本申请实施例提供的一种机械臂的逆运动学解析装置的示意图;
图4是本申请实施例提供的机械臂的逆运动学解析设备的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定***结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的***、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
为了说明本申请所述的技术方案,下面通过具体实施例来进行说明。
目前,对于机械臂的逆运动学解析,比如对于串联型的机械臂的逆运动学解析,通常是进行多维非线性方程组求解的方式,通过大量的迭代计算,反复尝试,以得到误差减小解析结果。由于大量的迭代计算过程较为复杂,使得计算时间较长,解析效率不高。
并且,在进行机械臂设计时,需要分析操作空间。增加操作空间有利于提升机械臂的功能性。操作空间即机械臂末端能够到达的空间的位置集合。在分析机械臂的操作空间时,可以采用正运动学方法或逆运动学方法。
正运动学方法是通过关节角度随机取样,获得末端位姿并记录。虽然正运动学方法求解简单快速,但难以保证空间搜索的完备性。通常需要10的10次方的次数的取样才能获得足够的精度。并且正运动学方法求解只能分析空间的可到达性,不便于分析指定空间内的操作空间可到达性。
逆运动学方法则是在空间内均匀取点,分析所取的点是否可到达。由于逆运动学计算的复杂性,使得操作空间分析计算难以实现。并且,数值逆运动学方法单次只能获得给定初始猜测值附近的解,不能同时获得所有的可行解。
为了解决上述问题,本申请实施例提出了一种机械臂的逆运动学解析方法,根据机械臂的几何特性,建立一种逆运动学解析的简单推导方法,以实现高效的逆运动学解析计算,同时获得所有可行解。将逆运动学求解的高维非线性方程组简化为较低维度的方程组进行解析求解,简化求解过程,提高解析效率,根据所获得的解析结果,便于实时进行动作规划和控制。
图1为本申请实施例提供的一种待用于逆运动学解析的机械臂的结构示意图。如图1所示,该机械臂包括6个关节。其中,机械臂的末端关节为旋转自由度关节,关节旋转时不会影响到相邻两个关节之间的平动位置的关节。即当机械臂末端关节转动时,不会改变所述机械臂末端关节相对于前一关节的平动位置。因此,通过机械臂末端关节的位姿,可以确定末端关节的前一关节的平动位置。
如图1所示,末端关节为第六关节。末端关节的前一关节为第五关节,所述第五关节为平动自由度关节。第五关节的前一关节为第四关节,第四关节为旋转自由度关节,第四关节在转动时,不会影响第五关节相对于第四关节的平动位置。
其中,平动自由度可以指关节的延伸方向与关节轴的方向不重合的关节。旋转自由度可以指关节的延伸方向与关节轴的方向重合的关节。
在可能的实现方式中,如图1所示,所述机械臂包括三个平动自由度关节和三个旋转自由度关节。其中,机械臂的第六关节、第四关节和第一关节为旋转自由度关节,第二关节、第三关节和第五关节为平动自由度关节。
图2为本申请实施例提供的一种机械臂的逆运动学解析方法的实现流程示意图,详述如下:
在S201中,根据机械臂末端位置和所述机械臂中为旋转自由度的第N关节,确定第N-1关节的平动位置。
本申请实施例中的机械臂所包括的关节中,第N关节和第N-2关节为旋转自由度关节,且第N关节旋转时,不会改变第N关节相对于第N-1关节的相对平动位置。当第N-2关节旋转时,不会改变所旋转的第N-2关节相对于第N-1关节的平动位置。因此,根据该特性,可以根据机械臂末端的位置,确定第五关节的平动位置,也即第五关节的空间坐标,比如,可以确定第五关节的平动位置为(x5,y5,z5)。
本申请实施例中,第N-2关节为旋转自由度关节,并且第N-2关节相对于第N-1关节的平动位置,不会随着第N-2关节的旋转而改变,因此,根据机械臂末端位姿所确定的第N-1关节的平动位置,可以根据第一关节、第二关节至第N-3关节的转动角度来确定。
在本申请实施例中,所述关节数量N可以为6个。当然,不局限于此,N还可以为小于6的其它自然数,或者为大于6的其它自然数。
在S202中,根据第N-1关节的平动位置,以及第N-1关节相对于世界坐标系的齐次方程,确定第一关节至第N-3关节的旋转角度。
在确定第N-1关节相对于世界坐标系的齐次方程时,可以先确定第N-1关节相对于世界坐标系的齐次变换矩阵,再根据齐次变换矩阵与第N关节相对于世界坐标系的平动位置在每个坐标轴方向的对应关系,生成齐次方程。
其中,第N-1关节相对于世界坐标系的齐次变换矩阵,可以根据第N-1关节相对于第N-2关节的齐次变换矩阵、第N-2关节相对于第N-3关节的齐次变换矩阵……第一关节相对于世界坐标系之间的齐次变换矩阵确定。
比如,当机械臂中包括六个关节时,第五关节的平动位置可以根据机械臂末端的位姿确定。第五关节相对于世界坐标系的的齐次变换矩阵可以表示为:
其中,第五关节相对于世界坐标系的齐次变换矩阵,T1为第一关节相对于世界坐标系的齐次变换矩阵,T2为第二关节相对于第一关节的齐次变换矩阵,T3为第三关节相对于第二关节的齐次变换矩阵,T4为第四关节相对于第三关节的齐次变换矩阵,T5为第五关节相对于第四关节的齐次变换矩阵。
如图1所示,第一关节相对于世界坐标系的变换参数包括:关节绕z轴旋转第一角度q1,平移(px,py,0),其中,平移量可以根据机械臂的安装位置确定。
第一关节相对于世界坐标系的齐次变换矩阵可以表示为:
第二关节相对于第一关节的变换参数包括:平移(0,-L2,L1),先绕x轴转-90°,再关节绕z轴转q2。
第二关节相对于第一关节的齐次变换矩阵可以表示为:
第三关节相对于第二关节的变换参数包括:平移(-L3,0,L4),关节绕z轴转q3。
第三关节相对于第二关节的齐次变换矩阵可以表示为:
第四关节相对于第三关节的变换参数包括:平移(L6,0,L5),绕y轴转90°。第四关节相对于第三关节的齐次变换矩阵可以表示为:
第五关节相对于第四关节的齐次变换参数包括:平移(0,0,L7),绕y轴转-90°第五关节相对于第四关节的齐次变换矩阵可以表示为:
将上述齐次变换矩阵相乘,即可计算得到第五关节相对于世界坐标系的平动位置。根据齐次变换矩阵在各个坐标轴方向的数值依次相等,可以得到:
x5=cos(q1)(L6+L7)[cos(q2)cos(q3)-sin(q2)sin(q3)]+sin(q1)(L2-L4-L5)-L3cos(q1)cos(q2)
y5=sin(q1)(L6+L7)[cos(q2)cos(q3)-sin(q2)sin(q3)]-cos(q1)(L2-L4-L5)-L3sin(q1)cos(q2)
z5=L1-(L6+L7)[cos(q2)sin(q3)+sin(q2)cos(q3)]+L3 sin(q2)
其中,L1、L2、L3、L4、L5、L6、L7为机械臂的尺寸常量参数。
根据三角函数的积化和差公式计算可得:
x5=cos(q1)(L6+L7)cos(q2+q3)+sin(q1)(L2-L4-L5)-L3 cos(q1)cos(q2)
y5=sin(q1)(L6+L7)cos(q2+q3)-cos(q1)(L2-L4-L5)-L3 sin(q1)cos(q2)
z5-L1=-(L6+L7)sin(q2+q3)+L3 sin(q2)
上述三个方程中包括三个参数,可以通过平方求和的方式,计算得到三:
其中:
A=L6+L7,
B=L2-L4-L5,
L=L3
X=x5
Y=y5
Z=z5-L1
根据第三关节的旋转角度q3的解,即可确定第一关节的旋转角度q1和第二关节的旋转角度q2的解。
在S203中,根据机械臂末端的指向,第一关节至第N-3关节的旋转角度,结合第N-3关节至第N关节之间的齐次变换方程,确定第N-2关节和第N-1关节的旋转角度。
根据机械臂末端关节的指向对应的单位矢量,比如可以为[rx,ry,rz],并且第一关节至第三关节的旋转角度已经确定,第六关节为旋转自由度关节,因此,第六关节的指向仅与第四关节和第五关节的指向有关。可以根据之前所计算的第三关节相对于世界坐标系的齐次变换矩阵,结合第四关节相对于第三关节的齐次变换矩阵,第五关节相对于第四关节的齐次变换矩阵以及第六关节相对于第五关节的齐次变换矩阵,确定第六关节的指向。
根据上述计算,可以确定第三关节相对于世界坐标系的齐次变换矩阵,可以表示为:
其中,t11、t12、t13、t21、t22、t23、t31、t32、t33为根据上式所确定的第三关节相对于世界坐标系的角度向量,(x3,y3,z3)为根据上式所确定第三关节相对于世界坐标系的位移向量。
具体的,如图1所示,第四关节相对于第三关节的变换参数包括:平移(L6,0,L5),绕y轴转90°,绕z轴转q4,相应的齐次变换矩阵可以表示为:
第五关节相对于第四关节的变换参数包括:平移(0,0,L7),绕y轴转-90°,绕z轴转q5,对应的齐次变换矩阵可以表示为:
第六关节相对于第五关节的变换参数包括:平移(L8,0,0),绕y轴转90°,相应的齐次变换矩阵可以表示为:
其中,L8为第八关节尺寸常量参数。
第六关节对应的方向矢量方程可以表示为:
t11 cos(q5)+sin(q5)[t12 cos(q4)+t13 sin(q4)]=rx
t21 cos(q5)+sin(q5)[t22 cos(q4)+t23 sin(q4)]=ry
t31 cos(q5)+t32 cos(q4)sin(q5)=rz
通过归一化计算可以确定第四关节的旋转角度q4以及第五关节的旋转角度q5。
在S204中,根据机械臂末端姿态确定第N关节的旋转角度。
在确定第一关节至第N-1关节的旋转角度后,可以根据机械臂末端的姿态,比如可以根据第N关节的夹持角度,确定第N关节的旋转角度。
可以理解的是,本申请实施例中的机械臂的关节数量小于图1所示的6个时,比如为4个或者5个时,同样可以根据平动位置对应的方程组,确定第N-2关节之前的关节的旋转角度。当N大于6时,可以结合其它逆运动学计算方式,确定第N-2关节之前的关节的旋转角度,并且由于总共需要计算的关节角度的数量减少,因而能够有效的提高逆运动学解析效率。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
图3为本申请实施例提供的一种机械臂的逆运动学解析装置的示意图,所述机械臂包括N个关节,且靠近机械臂末端的第N关节和第N-2关节为旋转自由度关节,第N关节转动时,第N关节相对于第N-1关节的平动位置不变,第N-2关节转动时,第N-2关节相对于第N-3关节的平动位置不变,N为大于3的自然数,所述装置包括:
平动位置确定单元301,用于根据机械臂末端位置和所述机械臂中为旋转自由度的第N关节,确定第N-1关节的平动位置;
旋转角度第一确定单元302,用于根据第N-1关节的平动位置,以及第N-1关节相对于世界坐标系的齐次方程,确定第一关节至第N-3关节的旋转角度;
旋转角度第二确定单元303,用于根据机械臂末端的指向,第一关节至第N-3关节的旋转角度,结合第N-3关节至第N关节之间的齐次变换方程,确定第N-2关节和第N-1关节的旋转角度;
旋转角度第三确定单元304,用于根据机械臂末端姿态确定第N关节的旋转角度。
图3所示的机械臂的逆运动学解析装置,与图2所示的逆运动学的解析方法对应。
图4是本申请一实施例提供的机械臂的逆运动学解析设备的示意图。如图4所示,该实施例的机械臂的逆运动学解析设备4包括:处理器40、存储器41以及存储在所述存储器41中并可在所述处理器40上运行的计算机程序42,例如机械臂的逆运动学解析程序。所述处理器40执行所述计算机程序42时实现上述各个机械臂的逆运动学解析方法实施例中的步骤。或者,所述处理器40执行所述计算机程序42时实现上述各装置实施例中各模块/单元的功能。
示例性的,所述计算机程序42可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器41中,并由所述处理器40执行,以完成本申请。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序42在所述机械臂的逆运动学解析设备4中的执行过程。
所述机械臂的逆运动学解析设备4可以是机械人、桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述机械臂的逆运动学解析设备可包括,但不仅限于,处理器40、存储器41。本领域技术人员可以理解,图4仅仅是机械臂的逆运动学解析设备4的示例,并不构成对机械臂的逆运动学解析设备4的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述机械臂的逆运动学解析设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器40可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器41可以是所述机械臂的逆运动学解析设备4的内部存储单元,例如机械臂的逆运动学解析设备4的硬盘或内存。所述存储器41也可以是所述机械臂的逆运动学解析设备4的外部存储设备,例如所述机械臂的逆运动学解析设备4上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(FlashCard)等。进一步地,所述存储器41还可以既包括所述机械臂的逆运动学解析设备4的内部存储单元也包括外部存储设备。所述存储器41用于存储所述计算机程序以及所述机械臂的逆运动学解析设备所需的其他程序和数据。所述存储器41还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述***中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括是电载波信号和电信信号。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (8)
1.一种机械臂的逆运动学解析方法,其特征在于,所述机械臂包括N个关节,且靠近机械臂末端的第N关节和第N-2关节为旋转自由度关节,第N关节转动时,第N关节相对于第N-1关节的平动位置不变,第N-2关节转动时,第N-2关节相对于第N-3关节的平动位置不变,N为大于3的自然数,所述方法包括:
根据机械臂末端位置和所述机械臂中为旋转自由度的第N关节,确定第N-1关节的平动位置;
根据第N-1关节的平动位置,以及第N-1关节相对于世界坐标系的齐次方程,确定第一关节至第N-3关节的旋转角度;
根据机械臂末端的指向,第一关节至第N-3关节的旋转角度,结合第N-3关节至第N关节之间的齐次变换方程,确定第N-1关节和第N-2关节的旋转角度;
根据机械臂末端姿态确定第N关节的旋转角度;
根据机械臂末端的指向,第一关节至第N-3关节的旋转角度,结合第N-3关节至第N关节之间的齐次变换方程,确定第N-1关节和第N-2关节的旋转角度,包括:
根据第一关节至第N-3关节的旋转角度,确定第N-3关节相对于世界坐标系的齐次变换矩阵;
根据N-2关节相对于N-3关节的齐次变换矩阵、第N-1关节相对于第N-2关节的齐次变换矩阵以及第N关节相对于第N-1关节的齐次变换矩阵,确定第N关节相对于世界坐标系的方向矢量;
根据机械臂末端指向与所述第N关节方向矢量的对应关系,确定第N关节对应的方向矢量方程;
根据所述方向矢量方程确定所述第N-1关节和所述第N-2关节的旋转角度。
2.根据权利要求1所述的方法,其特征在于,根据第N-1关节的平动位置,以及第N-1关节相对于世界坐标系的齐次方程,确定第一关节至第N-3关节的旋转角度,包括:
根据第N-1关节的平动位置与所述第N-1关节相对于世界坐标的齐次方程在每个坐标轴的坐标的对应关系,生成方程组;
根据所述方程组计算所述第一关节至第N-3关节的旋转角度。
4.根据权利要求1所述的方法,其特征在于,根据所述方向矢量方程确定所述第N-1关节和所述第N-2关节的旋转角度,包括:
根据所述方向矢量方程确定每个坐标轴方向的矢量分量方程,根据所述矢量分量方程构成矢量方程组;
根据所述矢量方程组确定所述第N-1关节和所述第N-2关节的旋转角度。
5.根据权利要求1所述的方法,其特征在于,根据机械臂末端姿态确定第N关节的旋转角度,包括:
根据机械臂末端的夹持角度,确定所述第N关节的旋转角度。
6.一种机械臂的逆运动学解析装置,其特征在于,所述机械臂包括N个关节,且靠近机械臂末端的第N关节和第N-2关节为旋转自由度关节,第N关节转动时,第N关节相对于第N-1关节的平动位置不变,第N-2关节转动时,第N-2关节相对于第N-3关节的平动位置不变,N为大于3的自然数,所述装置包括:
平动位置确定单元,用于根据机械臂末端位置和所述机械臂中为旋转自由度的第N关节,确定第N-1关节的平动位置;
旋转角度第一确定单元,用于根据第N-1关节的平动位置,以及第N-1关节相对于世界坐标系的齐次方程,确定第一关节至第N-3关节的旋转角度;
旋转角度第二确定单元,用于根据机械臂末端的指向,第一关节至第N-3关节的旋转角度,结合第N-3关节至第N关节之间的齐次变换方程,确定第N-1关节和第N-2关节的旋转角度;
旋转角度第三确定单元,用于根据机械臂末端姿态确定第N关节的旋转角度;
所述旋转角度第二确定单元包括:
齐次变换矩阵确定子单元,用于根据第一关节至第N-3关节的旋转角度,确定第N-3关节相对于世界坐标系的齐次变换矩阵;
方向矢量确定子单元,用于根据N-2关节相对于N-3关节的齐次变换矩阵、第N-1关节相对于第N-2关节的齐次变换矩阵以及第N关节相对于第N-1关节的齐次变换矩阵,确定第N关节相对于世界坐标系的方向矢量;
方向矢量方程确定子单元,用于根据机械臂末端指向与所述第N关节方向矢量的对应关系,确定第N关节对应的方向矢量方程;
旋转角度确定子单元,用于根据所述方向矢量方程确定所述第N-1关节和所述第N-2关节的旋转角度。
7.一种机械臂的逆运动学解析设备,包括存储器、处理器以及存储在所述存储器中并在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求2至5任一项所述方法的步骤。
8.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011605529.8A CN112597437B (zh) | 2020-12-29 | 2020-12-29 | 机械臂的逆运动学解析方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011605529.8A CN112597437B (zh) | 2020-12-29 | 2020-12-29 | 机械臂的逆运动学解析方法、装置及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112597437A CN112597437A (zh) | 2021-04-02 |
CN112597437B true CN112597437B (zh) | 2022-09-16 |
Family
ID=75204155
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011605529.8A Active CN112597437B (zh) | 2020-12-29 | 2020-12-29 | 机械臂的逆运动学解析方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112597437B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113442137A (zh) * | 2021-06-24 | 2021-09-28 | 达闼机器人有限公司 | 机械臂关节角度的确定方法、装置、存储介质及电子设备 |
CN114147714B (zh) * | 2021-12-02 | 2023-06-09 | 浙江机电职业技术学院 | 自主机器人机械臂控制参数计算方法和*** |
CN114290331B (zh) * | 2021-12-14 | 2023-06-23 | 中国科学院深圳先进技术研究院 | 机器人运动控制方法、机器人及计算机可读存储装置 |
CN114711760B (zh) * | 2022-04-06 | 2023-01-24 | 哈尔滨工业大学 | 一种关节轴线计算方法 |
CN115741672B (zh) * | 2022-10-21 | 2024-04-19 | 杭州邦杰星医疗科技有限公司 | 一种基于刚体变换的dh推导方法 |
CN117207200B (zh) * | 2023-11-09 | 2024-07-23 | 湖南视比特机器人有限公司 | 机械臂的工作空间生成方法、装置和计算机设备 |
CN117407630B (zh) * | 2023-12-14 | 2024-04-30 | 星猿哲科技(深圳)有限公司 | 协作机械臂求解肩肘角度逆运动学解析解*** |
CN117428791B (zh) * | 2023-12-21 | 2024-03-01 | 江西求是高等研究院 | 一种用于肩部四轴康复机器人的逆运动学求解方法及*** |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107589934A (zh) * | 2017-07-24 | 2018-01-16 | 大连理工大学 | 一种关节型机械臂逆运动学解析解的求取方法 |
CN109895101A (zh) * | 2019-04-09 | 2019-06-18 | 大连理工大学 | 一种关节型机械臂逆运动学数值唯一解求取方法 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4894657B2 (ja) * | 2007-07-17 | 2012-03-14 | トヨタ自動車株式会社 | 逆運動学計算方法及び逆運動学計算装置 |
CN102243620B (zh) * | 2011-06-02 | 2014-04-09 | 安凯 | 六关节机械臂逆运动学问题的快速求解方法 |
US9321175B2 (en) * | 2013-02-28 | 2016-04-26 | Mda U.S. Systems, Llc | Robotic manipulator articulation techniques |
CN105629880B (zh) * | 2015-12-22 | 2018-09-07 | 哈尔滨工业大学 | 用于具有三角形远心点机构的串联机械臂逆运动学数值解法 |
CN107030698B (zh) * | 2017-05-09 | 2018-06-01 | 中国科学院计算技术研究所 | 机器人的逆运动学求解*** |
JP6891773B2 (ja) * | 2017-11-24 | 2021-06-18 | 株式会社デンソーウェーブ | ロボットの制御装置及びロボットの逆変換処理方法 |
CN108673505A (zh) * | 2018-05-28 | 2018-10-19 | 南昌大学 | 一种机械臂末端精确运动控制方法 |
CN108789406A (zh) * | 2018-06-05 | 2018-11-13 | 上海大学 | 一种用于冗余机械臂可达性分析的逆解求解方法 |
CN108942942B (zh) * | 2018-08-16 | 2020-01-07 | 居鹤华 | 一种基于轴不变量的多轴机器人逆运动学建模与解算方法 |
CN110181522B (zh) * | 2019-07-05 | 2021-12-28 | 西北工业大学 | 一种五自由度首末对称机械臂逆运动学计算的优化方法 |
CN110712203B (zh) * | 2019-09-26 | 2021-03-26 | 苏州苏相机器人智能装备有限公司 | 一种7自由度机械臂逆运动学求解算法 |
CN110900581B (zh) * | 2019-12-27 | 2023-12-22 | 福州大学 | 基于RealSense相机的四自由度机械臂视觉伺服控制方法及装置 |
-
2020
- 2020-12-29 CN CN202011605529.8A patent/CN112597437B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107589934A (zh) * | 2017-07-24 | 2018-01-16 | 大连理工大学 | 一种关节型机械臂逆运动学解析解的求取方法 |
CN109895101A (zh) * | 2019-04-09 | 2019-06-18 | 大连理工大学 | 一种关节型机械臂逆运动学数值唯一解求取方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112597437A (zh) | 2021-04-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112597437B (zh) | 机械臂的逆运动学解析方法、装置及设备 | |
CN112318506B (zh) | 机械臂自动标定方法、装置、设备、机械臂和介质 | |
CN107995885B (zh) | 一种坐标系标定方法 、***及装置 | |
CN111844130B (zh) | 一种修正机器人末端工具位姿的方法和装置 | |
CN110640747B (zh) | 机器人的手眼标定方法、***、电子设备和存储介质 | |
US9321175B2 (en) | Robotic manipulator articulation techniques | |
CN112936301B (zh) | 一种机器人手眼标定方法、装置、可读存储介质及机器人 | |
Yang et al. | General 7-instant DCZNN model solving future different-level system of nonlinear inequality and linear equation | |
US20220254059A1 (en) | Data Processing Method and Related Device | |
CN108802669B (zh) | 二维波达方向估计方法、二维波达方向估计装置及终端 | |
CN113119081B (zh) | 一种机械臂的臂角区间的逆解方法、装置及终端设备 | |
CN111216136A (zh) | 多自由度机械手臂控制***、方法、存储介质、计算机 | |
CN111113429A (zh) | 一种动作模仿方法、动作模仿装置及终端设备 | |
Freeman et al. | Point-to-point iterative learning control with mixed constraints | |
CN117428791B (zh) | 一种用于肩部四轴康复机器人的逆运动学求解方法及*** | |
CN114387352A (zh) | 一种外参标定方法、装置、设备及存储介质 | |
CN113119083B (zh) | 一种机器人标定方法、装置、机器人及存储介质 | |
CN113084791B (zh) | 机械臂控制方法、机械臂控制装置及终端设备 | |
CN113119114B (zh) | 一种机械臂运动规划方法、装置、可读存储介质及机械臂 | |
CN115592670A (zh) | 机械臂的运动轨迹确定方法、装置、设备及存储介质 | |
CN112643674B (zh) | 机器人跟随加工工件表面补偿方法、机器人及存储装置 | |
Zheng et al. | An optimal kinematics calculation method for a multi-DOF manipulator | |
Kung et al. | Design of inverse kinematics IP for a six-axis articulated manipulator | |
CN109916352B (zh) | 一种获取机器人tcp坐标的方法和装置 | |
CN116652972B (zh) | 基于双向贪心搜索算法的串联机器人末端轨迹规划方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20221221 Address after: 266104 Room 202-1, Building 3, No. 8, Shengshui Road, Laoshan District, Qingdao, Shandong Patentee after: Ubicon (Qingdao) Technology Co.,Ltd. Address before: 518000 16th and 22nd Floors, C1 Building, Nanshan Zhiyuan, 1001 Xueyuan Avenue, Nanshan District, Shenzhen City, Guangdong Province Patentee before: Shenzhen UBTECH Technology Co.,Ltd. |
|
TR01 | Transfer of patent right |