CN113084792B - 关节奇异区域的确定方法、机器人及存储装置 - Google Patents
关节奇异区域的确定方法、机器人及存储装置 Download PDFInfo
- Publication number
- CN113084792B CN113084792B CN201911339777.XA CN201911339777A CN113084792B CN 113084792 B CN113084792 B CN 113084792B CN 201911339777 A CN201911339777 A CN 201911339777A CN 113084792 B CN113084792 B CN 113084792B
- Authority
- CN
- China
- Prior art keywords
- robot
- shaft
- axis
- point
- boundary
- 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 77
- 230000011218 segmentation Effects 0.000 claims abstract description 21
- 239000011159 matrix material Substances 0.000 description 6
- 210000000707 wrist Anatomy 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000013459 approach Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 2
- 238000004904 shortening Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 239000012636 effector Substances 0.000 description 1
- 230000002427 irreversible effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
- Numerical Control (AREA)
Abstract
本申请公开了一种关节奇异区域的确定方法、机器人及存储装置,该方法包括:判断机器人在当前轨迹中当前插补点的下一插补点对应的第一轴和第三轴中至少一个轴的速度是否大于预设速度;若大于预设速度,则设置机器人当前位置为奇异区域的进入边界;并且根据机器人的当前轨迹的终点及后续轨迹的终点对应的第一轴和第三轴的速度,利用分段法确定奇异区域的离开边界。通过上述方式,本申请能够合理确定奇异区域。
Description
技术领域
本申请涉及机器人领域,尤其是涉及一种关节奇异区域的确定方法、机器人及存储装置。
背景技术
机器人运动学中,将机器手臂视为由刚体以及可提供平移或旋转的关节所组成,机器人运动学中使用雅可比(Jacobian)矩阵来转换轴角度及机械手臂末端的关系,当机械手臂中的两轴共线时,矩阵内并非完全线性独立,造成Jacobian矩阵的秩会减少,其行列式值为零,使得Jacobian矩阵无反函数,反向运动学无法运算,从而产生奇异点。当机械手臂末端接近奇异点时,微小的位移变化量就会导致某些轴的角度产生剧烈变化,产生近似无限大的角速度。例如,具有腕部奇异点的机器人,在腕部奇异点处,5轴为0度,4、6轴共线,此时速度雅可比矩阵不可逆,末端笛卡尔空间的有限速度将对应无穷大的轴速度,在这样的区域,机器人难以按照用户的指令程序进行示教和加工。
为了在机械手臂末端接近奇异点之前提前进行速度规划,通常有两种方法确定奇异区域边界:一种方法是直接指定关节的角度作为奇异区域边界;另一种方法是根据轴空间速度和笛卡尔空间的速度和的比例确定奇异区域边界。但是,因为现有机器人奇异区域边界的确定与用户的具体应用无关,无法根据用户指令轨迹的路径和速度确定奇异区域边界,所以可能导致区域设置太大,造成效率的浪费;或区域设置的太小,用户必须修通过修改程序才能通过奇异区域。
发明内容
本申请提出了一种机器人奇异区域的确定方法、机器人及存储装置,能够合理确定奇异区域,减少因区域设置过大造成的效率的浪费,同时可以保证确定的奇异区域不会因过小导致加工过程中出现奇异点导致的关节轴超速问题。
为解决上述技术问题,本申请采用的一个技术方案是:提供一种机器人奇异区域的确定方法,应用于具有轴线正交于一点的第一轴、第二轴和第三轴的关节式机器人,第一轴、第二轴和第三轴依次连接,包括:判断机器人在当前轨迹中当前插补点的下一插补点对应的第一轴和第三轴中至少一个轴的速度是否大于预设速度;若大于预设速度,则设置机器人当前位置为奇异区域的进入边界;根据机器人的当前轨迹的终点及后续轨迹的终点对应的第一轴和第三轴的速度,利用分段法确定奇异区域的离开边界。
为解决上述技术问题,本申请采用的另一个技术方案是:提供一种机器人,包括:机械臂,以及与机械臂连接的处理器,该机械臂轴线正交于一点的第一轴、第二轴和第三轴,第一轴、第二轴和第三轴依次连接;处理器用于执行指令以实现如上所述的机器人奇异区域的确定方法。
为解决上述技术问题,本申请采用的又一个技术方案是:提供一种存储装置,内部存储有程序文件,该程序文件被执行以实现如上所述的机器人奇异区域的确定方法。
本申请的有益效果是:区别于现有技术的情况,本申请的实施例中,通过判断机器人在当前轨迹中当前插补点的下一插补点对应的第一轴和第三轴中至少一个轴的速度是否大于预设速度;若大于预设速度,则设置机器人当前位置为奇异区域的进入边界;并且根据机器人的当前轨迹的终点及后续轨迹的终点对应的第一轴和第三轴的速度,利用分段法确定奇异区域的离开边界,从而可以根据加工或示教过程中的实际指令控制的机械臂的轨迹过程中第一轴和第三轴中至少一个轴是否超速作为判断条件,并结合分段法可以实时确定合理的奇异区域边界,使得确定的奇异区域不会因过小导致加工过程中出现因奇异点导致的关节轴超速问题,也不会因为确定的过大导致不必要的轨迹精度的损失。
附图说明
图1是本申请机器人奇异区域的确定方法第一实施例的流程示意图;
图2是具有轴线相交于一点的第一轴、第二轴和第三轴的六轴串联机器人的结构示意图;
图3是图1中步骤S14的具体流程示意图;
图4是利用二分法更新边界起点或边界终点的示意图;
图5是本申请机器人奇异区域的确定方法第二实施例的流程示意图;
图6是本申请机器人奇异区域的确定方法第三实施例的流程示意图;
图7是图6中步骤S41的具体流程示意图;
图8是本申请机器人一实施例的结构示意图;
图9是本申请存储装置一实施例的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
如图1所示,本申请机器人奇异区域确定方法的第一实施例包括:
S12:判断机器人在当前轨迹中当前插补点的下一插补点对应的第一轴和第三轴中至少一个轴的速度是否大于预设速度。
其中,该机器人是具有轴线正交于一点的第一轴、第二轴和第三轴的关节式机器人。关节式机器人的关节具有对应的转轴,本实施例中,第一轴、第二轴和第三轴依次连接,例如图2中六轴串联机器人,第一轴对应控制手腕旋转的关节,第二轴对应控制手腕上下摆动的关节,第三轴对应控制手腕圆周旋转的关节,三个关节依次连接,且三个关节对应的轴的轴线正交于一点。该预设速度是机器人的关节能够达到的最大转速,例如机器人控制***能够指定的最大速度,其具体取值取决于机器人使用的电机的最大转速,如每秒150度。
可选地,如图1所示,在步骤S12之前,还可以包括:
S11:计算机器人运动轨迹,得到插补周期,并根据运动轨迹进行速度规划。
其中,机器人的运动轨迹为其法兰中心或TCP(Tool Central Point,工具中心点)点的运动轨迹。在一个应用例中,机器人在加工或示教过程中,接收用户或***的控制指令,该控制指令指示机器人运动的起点和终点,机器人会在运动的起点和终点之间规划出其末端执行件的运动轨迹(本文简称为机器人的运动轨迹),在轨迹规划过程中,机器人通常采用在已知运动的起点和终点之间进行插补的操作***中间点,例如在运动的起点和终点之间***多个插补点,从而得到机器人的运动轨迹,并可以根据运动轨迹进行速度规划,其中,所述运动轨迹可以由多段轨迹组成。
运动轨迹规划好之后,可以根据运动轨迹生成控制指令,由控制指令指定机器人运动的每段轨迹,可称为指令轨迹。当机器人进行插补时,机器人准备在当前轨迹中的当前插补点后***下一插补点时,可以利用机器人运动学逆解等方法先计算该下一插补点对应的第一轴和第三轴的速度,若计算出的第一轴和第三轴中任一个轴的速度大于该预设速度,或者两个轴的速度均大于该预设速度,则执行如下步骤S13。
S13:设置机器人当前位置为奇异区域的进入边界。
其中,机器人的当前位置为其法兰中心或TCP点在当前插补点时的位置。奇异区域是包含奇异点位置的机器人法兰中心或TCP点的位置区域。
具体地,当机器人在当前插补点的下一个插补点对应的第一轴和第三轴中至少一个轴的速度大于预设速度时,说明机器人即将进入奇异区域,如六轴串联机器人腕部的该第一轴和第三轴即将共线,此时,可以将机器人的当前位置设置为奇异区域的进入边界。
S14:根据机器人的当前轨迹的终点及后续轨迹的终点对应的第一轴和第三轴的速度,利用分段法确定奇异区域的离开边界。
针对奇异区域的离开边界,根据机器人的当前轨迹及后续轨迹的终点对应的第一轴和第三轴的速度,可以利用分段法确定奇异区域的离开边界。其中,该分段法可以是二分法,也可以是三段等分法等类型的方法。
可选地,如图3所示,以二分法进行分段时,步骤S14包括:
S141:依次判断当前轨迹的终点及后续轨迹的终点对应的第一轴和第三轴的速度是否小于或等于预设速度,直至找到终点对应的第一轴和第三轴的速度小于或等于预设速度的轨迹,以该轨迹为边界轨迹,以该边界轨迹的终点为边界终点,以当前轨迹的起点为边界起点。
其中,当前轨迹是机器人的当前指令轨迹,是以机器人当前位置为起点,以机器人接收到的控制指令中指定的当前位置的下一位置点为终点的轨迹。后续轨迹是除当前轨迹外,以机器人接收到的控制指令中指定的任意相邻两个位置点确定的轨迹。边界轨迹是以机器人接收到的控制指令中指定的任意相邻两个位置点确定的轨迹中的其中一段轨迹,且该边界轨迹的终点对应的第一轴和第三轴的速度小于或等于预设速度。
具体地,机器人可以首先计算当前轨迹的终点对应的第一轴和第三轴的速度,若当前轨迹的终点对应的第一轴和第三轴的速度中至少一个大于该预设速度,则继续选择后续下一个轨迹的终点计算其对应的第一轴和第三轴的速度,判断后续下一个轨迹的终点对应的第一轴和第三轴的速度是否大于预设速度,依次类推,直到计算出的某段轨迹的终点对应的第一轴和第三轴的速度均不大于该预设速度时,则确定该段轨迹为边界轨迹。由于奇异区域的离开边界对应的第一轴和第三轴的速度应均小于或等于预设速度,因此,奇异区域的离开边界必定在边界起点和边界终点之间的区域,可以该边界轨迹的终点为边界终点,以当前轨迹的起点为边界起点,确定一段分段轨迹,然后利用分段方法不断缩小分段轨迹范围,最终得到奇异区域的离开边界。
S142:计算边界终点与边界起点的中间点。
该中间点是分段法中将边界起点和边界终点之间的轨迹分为两段的轨迹点,例如中点、黄金分割点或其他任意点等。
具体地,在一个应用例中,如图4所示,当边界起点Ps和边界终点Pe确定后,Ps和Pe之间的轨迹即确定(如图4中的线段PsPe),此时直接计算该轨迹的中点,即计算线段PsPe的中点P1,该中点P1即为边界终点与边界起点的中间点。
在其他应用例中,也可以计算边界起点Ps和边界终点Pe直接连成的线段的中点、黄金分割点或其他任意点等,作为该中间点。
S143:判断该中间点对应的第一轴和第三轴的速度是否至少一个大于预设速度。
若该中间点对应的第一轴和第三轴的速度至少一个大于预设速度,则执行步骤S144,若该中间点对应的第一轴和第三轴的速度均小于或等于预设速度,则执行步骤S145。
S144:以该中间点为边界起点。
S145:以该中间点为边界终点。
具体地,在上述应用例中,如图4所示,在初始状态时,以当前轨迹的起点Ps为起点,以边界轨迹的终点Pe为终点,可以得到一段分段轨迹PsPe。在该分段轨迹上,执行二分法时,首先计算该分段轨迹的中间点(例如PsPe的中点P1),然后计算该中点P1对应的第一轴和第三轴的速度,并判断二者速度是否至少一个大于预设速度(如每秒120度),若该中点P1对应的第一轴和第三轴的速度均小于或等于预设速度,则以该中点P1为边界终点,将分段轨迹缩短为起点为Ps、终点为P1的轨迹PsP1,若该中间点对应的第一轴和第三轴的速度至少一个大于预设速度,则以该中点P1为边界起点,将分段轨迹缩短为起点为P1、终点为Pe的轨迹P1Pe。
S146:判断步骤S142的执行次数是否达到预设次数。
其中,该预设次数与插补周期和步骤S142、S143和S144/S145S所用时间相关,例如该预设次数应小于或等于插补周期与步骤步骤S142所用时间的比值。
若步骤S142的执行次数达到预设次数,则执行如下步骤S147,否则返回执行步骤S142。
S147:以最后一次执行步骤S145得到的边界终点为奇异区域的离开边界。
具体地,在上述应用例中,每次执行步骤S142、S143和S144/S145后,分段轨迹即被缩小,当重复执行上述步骤S142、S143和S144/S145的次数达到预设次数,例如可以利用计数器计算上述步骤执行的次数,每执行一次步骤S142、S143和S144/S145即算一次,重复一次上述步骤,计数器的计数值加一,当计数值大于预设次数(如20次)时,则表明二分次数够多,分段轨迹的终点已经足够接近奇异区域的离开边界,此时可以直接将最后一次执行S145得到的边界终点为奇异区域的离开边界,即将最后得到的分段边界的终点Pe作为奇异区域的离开边界。当然,在其他实施例中,也可以设定一个预设长度,当分段轨迹的长度小于该预设长度时,说明分段轨迹足够小,此时可以直接将分段轨迹的终点Pe作为奇异区域的离开边界。
在其他实施例中,也可以采用三段等分法等分段方法缩短分段轨迹,确定奇异区域的离开边界。其中,其他分段方法的具体执行过程也可以采用与二分法类似的过程,即获取中间点,将第一轴和第三轴的速度至少一个大于预设速度的中间点更新为边界终点,而将第一轴和第三轴的速度均小于或等于预设速度的中间点更新为边界起点,多次迭代缩短分段轨迹后,最终以最后一次迭代得到的分段轨迹的边界终点作为奇异区域的离开边界。
可选地,继续参阅图1所示,若步骤S12的判断结果为否,即机器人下一插补点对应的第一轴和第三轴的速度均不大于预设速度,则执行如下步骤S15。
S15:按照原运动轨迹进行速度规划。
S16:控制机器人按照原运动轨迹和规划的速度进行运动。
其中,该原运动轨迹即根据计算得到的原运动轨迹或用户实际加工或示教的原指定轨迹。
具体地,当步骤S12的判断结果是否,即第一轴和第三轴的速度均不大于该预设速度,即机器人还未进入奇异区域边界,此时机器人可以继续按照原运动轨迹进行笛卡尔空间的速度规划,然后机器人可以继续按照规划得到的轨迹和速度进行运动,并获取下一插补点,返回执行步骤S12,继续判断机器人在当前轨迹中当前插补点的下一插补点对应的第一轴和第三轴中至少一个轴的速度是否大于预设速度,以确定机器人的关节奇异区域边界。
本实施例中,根据加工或示教过程中的实际指令控制的机械臂的轨迹过程中第一轴和第三轴中至少一个轴是否超速作为判断条件,并结合分段法,可以在实际加工或示教过程中实时确定合理的奇异区域边界,使得确定的奇异区域不会因过小导致加工过程中出现因奇异点导致的关节轴超速问题,也不会因为确定的过大导致不必要的轨迹精度的损失。
为了减少机器人确定关节奇异区域时的计算量,可以预先设定一个奇异区域的粗略边界,当机器人进入该粗略边界后才利用上述步骤确定该机器人的关节奇异区域。具体如图5所示,本申请机器人奇异区域的确定方法第二实施例是在本申请机器人奇异区域的确定方法第一实施例的基础上,进一步限定步骤S12之前,还可以包括:
S31:判断机器人的第二轴的角度是否在预设范围内。
第一轴和第三轴共线时第二轴的角度θ是处于预设范围内的。由于第一轴和第三轴共线时,机器人处于关节奇异区域内,机器人的第一轴和第三轴的速度会超过预设速度,使得机器人无法进行速度规划,因此,预设范围是预先设定的机器人可能处于关节奇异区域的第二轴的角度范围,通过判断机器人的第二轴的角度是否在预设范围内,可以判断第一轴和第三轴是否共线,进而可以判断器人是否处于关节奇异区域内。其中,预设范围的具体取值可以为θ-10°~θ+10°。
若第二轴的角度在预设范围内,则执行步骤S32。
S32:执行步骤S12,判断机器人在当前轨迹中当前插补点的下一插补点对应的第一轴和第三轴中至少一个轴的速度是否大于预设速度。
具体地,在一个应用例中,机器人加工或示教过程中,机器人可以获取各轴的角度,当获取第二轴的角度后,机器人会判断该第二轴的角度是否在预设范围θ-10°~θ+10°内(包括两个端点)。例如,机器人可以设定该角度θ为0°,机器人会判断该第二轴的角度是否在-10°~10°之间,若该第二轴的角度在-10°~10°之间,则表明机器人即将进入奇异区域,此时可以继续执行步骤S12,以确定具体地奇异区域边界。
可选地,继续参阅图5,若第二轴的角度不在预设范围内,则执行步骤S33。
S33:确定机器人不在该关节奇异区域内。
在上述应用例中,当机器人获取第二轴的角度后,如第二轴角度为20°时,机器人会确定该第二轴的角度不在该预设范围-10°~10°之间,此时,确定机器人不在该关节奇异区域内,机器人不需要执行步骤S12,可以继续按照原先实际的加工或示教的指定轨迹进行速度规划。
本实施例中,通过预先设定一个第二轴的角度预设范围作为关节奇异区域的粗略边界,当机器人的第二轴的角度在该预设范围内时,才执行判断机器人在当前轨迹中的下一插补点对应的第一轴和第三轴中至少一个轴的速度是否大于预设速度的步骤,以及后续的迭代步骤,而在第二轴的角度不在预设范围内时,不执行该判断步骤,从而可以减少机器人的计算量,提高效率。
如图6所示,本申请机器人奇异区域的确定方法第三实施例是在本申请机器人奇异区域的确定方法第一实施例的基础上,进一步限定步骤S13之后,还包括:
S41:构造关节奇异区域的插补轨迹。
S42:控制机器人按照插补轨迹进行运动。
具体地,机器人在确定关节奇异区域后,若继续按照原来的指令轨迹进行速度规划,会导致第一轴和第三轴超速,机器人难以继续进行加工或示教。因此,为了满足机器人在该关节奇异区域的示教和加工需求,可以对机器人进行该关节奇异区域的运行轨迹和速度重新规划,构造该关节奇异区域的插补轨迹,之后机器人按照该插补轨迹进行运动,即可以使得机器人在该关节奇异区域内正常完成加工或示教。其中,插补轨迹的位置与原指令轨迹的位置相同,即位置精度一致,但为了避免第一轴和第三轴超速,插补轨迹需要进行单独的速度规划,此时关节轴的姿态与依据原指令轨迹运动的姿态不同。
可选地,如图7所示,步骤S41具体包括:
S411:根据关节奇异区域的进入边界和离开边界的位置进行位置路径速度规划,以得到机器人法兰坐标系的位置。
具体地,为了保证位置精度,机器人可以根据关节奇异区域的进入边界和离开边界的位置继续按照原指令轨迹进行位置路径速度规划,获取机器人法兰坐标系的位置,此时机器人法兰坐标系的位置与原指令轨迹的位置相同。当机器人夹持工件时,根据工件上表面中心点坐标系与机器人法兰坐标系及其变换关系,可以得到机器人法兰坐标系的位置。
S412:根据关节奇异区域的进入边界和离开边界的机器人位姿计算出对应的第一轴、第二轴和第三轴的轴位置,并构造对应的三条单轴轨迹,进行速度规划。
具体地,由于关节奇异区域的进入边界和离开边界均不是机器人的奇异点,因此仍然可以根据机器人逆解,求解出进入边界和离开边界的位姿对应的第一轴、第二轴和第三轴的轴位置,即第一轴、第二轴和第三轴的角度,然后根据该第一轴、第二轴和第三轴的角度,可以构造每个轴对应的单轴轨迹,进行速度规划,即规划每个轴的角度变化过程,避免各个轴的速度超过预设速度。
S413:在每一个插补周期,根据机器人法兰坐标系的位置和第一轴、第二轴和第三轴的轴位置,计算机器人对应的其他轴的轴位置。
其中,轴位置是指各轴的角度,例如第一轴的轴位置即为第一轴的角度。
具体地,当该机器人是六轴串联机器人时,可以利用如下公式计算机器人对应的其他三轴的轴位置:
(q1,q2,q3)=fW -1(p,q4,q5,q6);
其中,q1,q2,q3分别表示机器人对应的其他三轴的轴位置,q4,q5,q6分别表示第一轴、第二轴和第三轴的轴位置,p表示机器人法兰坐标系的位置,fW -1表示机器人的逆解过程函数。
当然,当机器人是其他类型的机器人(如七轴机器人)时,该机器人也可以根据机器人运动学原理,利用类似上述公式的方法计算其他轴的轴位置,以便形成机器人的该插补轨迹。
本实施例还可以与本申请机器人奇异区域的确定方法第二实施例相结合。
如图8所示,本申请机器人一实施例中,机器人60包括:机械臂601,以及与该机械臂601连接的处理器602,具体地,可以为机械臂的传感器及控制器与所述处理器连接。
其中,该机械臂601具有轴线正交于一点的第一轴、第二轴和第三轴,该第一轴、第二轴和第三轴依次连接。例如,当机器人60是六轴串联机器人时,该机械臂601包括串联的六轴,其中腕部包括轴线正交于一点的第一轴、第二轴和第三轴。
处理器602控制机器人60的操作,处理器602还可以称为CPU(Central ProcessingUnit,中央处理单元)。处理器602可能是一种集成电路芯片,具有信号的处理能力。处理器602还可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
处理器602用于执行指令以实现如本申请关节奇异区域的确定方法第一至第三任一实施例或其不冲突的组合所提供的方法。
可选地,如图9所示,该机器人60还可以包括:存储器603,耦接该处理器602,用于存储处理器602执行的指令以及执行指令所需的数据。
此外,该机器人60还可以根据实际需求包括显示装置(图未示)、输入输出装置等设备。
本实施例中,机器人根据加工或示教过程中的实际指令控制的机械臂的轨迹过程中第一轴和第三轴中至少一个轴是否超速作为判断条件,并结合分段法,可以在实际加工或示教过程中实时确定合理的奇异区域边界,使得确定的奇异区域不会因过小导致加工过程中出现因奇异点导致的关节轴超速问题,也不会因为确定的过大导致不必要的轨迹精度的损失。
如图9所示,本申请存储装置一实施例中,存储装置70内部存储有程序文件701,该程序文件701被执行时实现如本申请关节奇异区域的确定方法第一至第三任一实施例或其不冲突的组合所提供的方法。
其中,存储装置70可以是便携式存储介质如U盘、光盘,也可以是机器人、服务器或可集成于机器人中的独立部件,例如控制芯片等。
以上所述仅为本申请的实施方式,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (9)
1.一种机器人奇异区域的确定方法,应用于具有轴线正交于一点的第一轴、第二轴和第三轴的关节式机器人,所述第一轴、所述第二轴和所述第三轴依次连接,其特征在于,包括:
判断机器人在当前轨迹中当前插补点的下一插补点对应的所述第一轴和所述第三轴中至少一个轴的速度是否大于预设速度;
若大于所述预设速度,则设置所述机器人当前位置为奇异区域的进入边界;
根据所述机器人的当前轨迹的终点及后续轨迹的终点对应的所述第一轴和所述第三轴的速度,利用分段法确定所述奇异区域的离开边界,包括:
步骤a:依次判断所述当前轨迹的终点及后续轨迹的终点对应的所述第一轴和所述第三轴的速度是否小于或等于所述预设速度,直至找到终点对应的所述第一轴和所述第三轴的速度小于或等于所述预设速度的边界轨迹,以所述边界轨迹的终点为边界终点,以所述当前轨迹的起点为边界起点;
步骤b:计算所述边界终点与所述边界起点的中间点;
步骤c:若所述中间点对应的所述第一轴和所述第三轴的速度中至少一个大于所述预设速度,以所述中间点为所述边界起点;若所述中间点对应的所述第一轴和所述第三轴的速度均小于或等于所述预设速度,以所述中间点为所述边界终点;
重复执行预设次数的所述步骤b和所述步骤c,以最后一次执行所述步骤c得到的边界终点为所述奇异区域的离开边界。
2.根据权利要求1所述的方法,其特征在于,所述中间点为所述边界终点与所述边界起点的中点或黄金分割点。
3.根据权利要求1所述的方法,其特征在于,所述判断机器人在当前轨迹中当前插补点的下一插补点对应的所述第一轴和所述第三轴中至少一个轴的速度是否大于预设速度之前,还包括:
判断所述机器人的所述第二轴的角度是否在预设范围内;
若所述第二轴的角度在所述预设范围内,执行所述判断机器人在当前轨迹中当前插补点的下一插补点对应的所述第一轴和所述第三轴中至少一个轴的速度是否大于预设速度的步骤;
若所述第二轴的角度不在所述预设范围内,则判定所述机器人不在所述奇异区域内。
4.根据权利要求3所述的方法,其特征在于,所述预设范围为θ-10°~θ+10°,其中,所述角度θ包括所述第一轴和所述第三轴共线时所述第二轴的角度。
5.根据权利要求1所述的方法,其特征在于,所述判断机器人在当前轨迹中当前插补点的下一插补点对应的所述第一轴和所述第三轴中至少一个轴的速度是否大于预设速度之后,包括:
若所述下一插补点对应的所述第一轴和所述第三轴的速度均不大于所述预设速度,则按照原运动轨迹进行速度规划;
控制所述机器人按照所述原运动轨迹和所述规划的速度进行运动;
返回执行所述判断机器人在当前轨迹中当前插补点的下一插补点对应的所述第一轴和所述第三轴中至少一个轴的速度是否大于所述预设速度的步骤。
6.根据权利要求1所述的方法,其特征在于,所述根据所述机器人的当前轨迹的终点及后续轨迹的终点对应的所述第一轴和所述第三轴的速度,利用分段法确定所述奇异区域的离开边界之后,进一步包括:
构造所述奇异区域的插补轨迹;
控制所述机器人按照所述插补轨迹进行运动;
其中,所述构造所述奇异区域的插补轨迹包括:
根据所述奇异区域的进入边界和离开边界的位置进行位置路径速度规划,以得到所述机器人法兰坐标系的位置;
根据所述奇异区域的进入边界和离开边界的位姿计算出对应的所述第一轴、所述第二轴和所述第三轴的轴位置,并构造对应的三条单轴轨迹,进行速度规划;
在每一个插补周期,根据所述机器人法兰坐标系的位置和所述第一轴、所述第二轴和所述第三轴的轴位置,计算所述机器人对应的其他轴的轴位置。
7.根据权利要求6所述的方法,其特征在于,所述机器人是六轴串联机器人,所述根据所述机器人法兰坐标系的位置和所述第一轴、所述第二轴和所述第三轴的轴位置,计算所述机器人对应的其他轴的轴位置包括:
利用如下公式计算所述机器人对应的其他三轴的轴位置:
(q1,q2,q3)=fW -1(p,q4,q5,q6);
其中,q1,q2,q3分别表示所述机器人对应的其他三轴的轴位置,q4,q5,q6分别表示所述第一轴、所述第二轴和所述第三轴的轴位置,p表示所述机器人法兰坐标系的位置,fW -1表示所述机器人的逆解过程函数。
8.一种机器人,其特征在于,包括:机械臂,以及与所述机械臂连接的处理器,所述机械臂具有轴线正交于一点的第一轴、第二轴和第三轴,所述第一轴、所述第二轴和所述第三轴依次连接;所述处理器用于执行指令以实现如权利要求1-7任一项所述的机器人奇异区域的确定方法。
9.一种存储装置,内部存储有程序文件,其特征在于,所述程序文件被处理器执行以实现如权利要求1-7任一项所述的机器人奇异区域的确定方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911339777.XA CN113084792B (zh) | 2019-12-23 | 2019-12-23 | 关节奇异区域的确定方法、机器人及存储装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911339777.XA CN113084792B (zh) | 2019-12-23 | 2019-12-23 | 关节奇异区域的确定方法、机器人及存储装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113084792A CN113084792A (zh) | 2021-07-09 |
CN113084792B true CN113084792B (zh) | 2024-05-03 |
Family
ID=76663931
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911339777.XA Active CN113084792B (zh) | 2019-12-23 | 2019-12-23 | 关节奇异区域的确定方法、机器人及存储装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113084792B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113681570B (zh) * | 2021-10-26 | 2022-01-04 | 季华实验室 | 一种六轴机械臂过奇异点的控制方法 |
CN116277039B (zh) * | 2023-05-23 | 2024-04-05 | 极限人工智能(北京)有限公司 | 机械臂过腕部奇异点的轨迹规划方法、***、设备及介质 |
CN117226858B (zh) * | 2023-11-16 | 2024-03-05 | 浩科机器人(苏州)有限公司 | 一种工业多轴机器人的协调控制方法及*** |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105082134A (zh) * | 2015-08-06 | 2015-11-25 | 珞石(北京)科技有限公司 | 一种基于多判据的六自由度串联机器人奇异性处理方法 |
DE202014010055U1 (de) * | 2014-12-19 | 2016-03-23 | Kuka Roboter Gmbh | Akustische Teach-Hilfe zum leichten Erkennen von Arbeitsraumgrenzen und singulären Stellungen |
CN205614678U (zh) * | 2016-01-25 | 2016-10-05 | 珠海格力电器股份有限公司 | 一种奇异点区域减速保护***和工业机器人 |
US10065311B1 (en) * | 2016-06-08 | 2018-09-04 | X Development Llc | Singularity handling for robot jogging |
CN109605369A (zh) * | 2018-12-07 | 2019-04-12 | 英华达(上海)科技有限公司 | 机械臂奇异点控制方法及*** |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6845295B2 (en) * | 2002-03-07 | 2005-01-18 | Fanuc Robotics America, Inc. | Method of controlling a robot through a singularity |
-
2019
- 2019-12-23 CN CN201911339777.XA patent/CN113084792B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE202014010055U1 (de) * | 2014-12-19 | 2016-03-23 | Kuka Roboter Gmbh | Akustische Teach-Hilfe zum leichten Erkennen von Arbeitsraumgrenzen und singulären Stellungen |
CN105082134A (zh) * | 2015-08-06 | 2015-11-25 | 珞石(北京)科技有限公司 | 一种基于多判据的六自由度串联机器人奇异性处理方法 |
CN205614678U (zh) * | 2016-01-25 | 2016-10-05 | 珠海格力电器股份有限公司 | 一种奇异点区域减速保护***和工业机器人 |
US10065311B1 (en) * | 2016-06-08 | 2018-09-04 | X Development Llc | Singularity handling for robot jogging |
CN109605369A (zh) * | 2018-12-07 | 2019-04-12 | 英华达(上海)科技有限公司 | 机械臂奇异点控制方法及*** |
Also Published As
Publication number | Publication date |
---|---|
CN113084792A (zh) | 2021-07-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113084792B (zh) | 关节奇异区域的确定方法、机器人及存储装置 | |
JP5743495B2 (ja) | ロボット制御装置 | |
TWI704039B (zh) | 機械臂奇異點控制方法及系統 | |
JP2019517929A (ja) | ロボット関節空間におけるポイントツーポイント移動の軌跡計画方法 | |
CN108908347B (zh) | 一种面向冗余移动机械臂容错型重复运动规划方法 | |
CN111002306B (zh) | 一种基于电子凸轮的机器人运动控制方法及控制*** | |
CN111890349A (zh) | 一种四自由度机械臂运动规划方法 | |
CN110914020B (zh) | 具有机器人的操纵装置以及方法和计算机程序 | |
CN111230860B (zh) | 机器人控制方法、装置、计算机设备及存储介质 | |
CN107553485A (zh) | 一种人机交互过程中动态虚拟夹具的生成方法 | |
CN111699079B (zh) | 协调***、操作设备和方法 | |
JPH05345291A (ja) | ロボットの動作範囲制限方式 | |
CN110561426B (zh) | 一种超冗余机械臂的路径规划方法、装置及控制*** | |
KR20040034167A (ko) | 6축 수직다관절 매니퓰레이터의 직선이동 제어방법 | |
CN113478479B (zh) | 一种基于工业机器人五次多项式轨迹规划中间点的加速度选取方法 | |
Tyapin et al. | Long arm manipulator path interpolation using 4th order b-splines | |
JP7276359B2 (ja) | 動作指令生成装置、機構制御システム、コンピュータプログラム、動作指令生成方法及び機構制御方法 | |
JPS6029288A (ja) | ロボツト装置 | |
JPH0310781A (ja) | 多関節型ロボット | |
JPS5924313A (ja) | 高速軌跡発生装置 | |
JP3930956B2 (ja) | 一平面内多自由度スカラ型ロボットの軌跡制御装置および軌跡制御方法、並びに、一平面内多自由度スカラ型ロボットの軌跡制御プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
Constantin | Kinematic analysis of the lynx6 robotic arm | |
JPH05297916A (ja) | ロボットの軌跡制御方法 | |
Tang et al. | A reinforcement learning based control framework for robot gear assembly with demonstration learning and force feedback | |
CN118267109A (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 |