CN116061188A - 一种机器人的关节移动增量确定方法及装置 - Google Patents
一种机器人的关节移动增量确定方法及装置 Download PDFInfo
- Publication number
- CN116061188A CN116061188A CN202310214757.XA CN202310214757A CN116061188A CN 116061188 A CN116061188 A CN 116061188A CN 202310214757 A CN202310214757 A CN 202310214757A CN 116061188 A CN116061188 A CN 116061188A
- Authority
- CN
- China
- Prior art keywords
- joint
- resistance
- constraint
- determining
- robot
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 58
- 238000006073 displacement reaction Methods 0.000 claims description 13
- 238000001514 detection method Methods 0.000 claims description 7
- 230000007613 environmental effect Effects 0.000 claims description 7
- 238000004364 calculation method Methods 0.000 claims description 3
- 238000013507 mapping Methods 0.000 abstract description 12
- 238000013473 artificial intelligence Methods 0.000 abstract description 3
- 230000006870 function Effects 0.000 description 72
- 238000013016 damping Methods 0.000 description 12
- 230000003993 interaction Effects 0.000 description 8
- 230000001133 acceleration Effects 0.000 description 5
- 239000011159 matrix material Substances 0.000 description 5
- 238000013459 approach Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Images
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
- B25J9/1674—Programme controls characterised by safety, monitoring, diagnostic
- B25J9/1676—Avoiding collision or forbidden zones
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J17/00—Joints
- B25J17/02—Wrist joints
-
- 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
- B25J9/1666—Avoiding collision or forbidden zones
-
- 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/1679—Programme controls characterised by the tasks executed
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
Abstract
本申请公开本一种机器人的关节移动增量确定方法及装置,可应用与人工智能领域。本申请中可以获取机器人的至少一个关节的位置信息,然后根据位置信息,确定预设约束场景中每个不同约束场景对应的目标关节的约束空间,然后计算在每个约束空间中与目标关节运动方向相反的抵抗力,根据每个抵抗力确定每个约束场景下的目标关节的移动增量大小以及方向。本申请中可以通过局部空间映射方法,将多种约束映射在同一作用空间,也就是约束空间,进而可以在映射空间中计算每个约束场景下的机器人的关节移动增量,以实现同时对多种约束进行处理。
Description
技术领域
本申请涉及人工智能技术领域,特别是涉及一种机器人的关节移动增量确定方法。
背景技术
随着机器人技术的不断发展,协作机器人已经被广泛地应用于工业、医疗以及航空探索等多个领域。在这些应用场景中,协作机器人借助于柔顺控制技术,可以对人的拖动行为做出柔顺的响应,实现拖动示教的交互模式。这种交互模式降低了操作人员对机器人编程的难度,使得机器人可以快速地被布置于定制化应用场景之中。
在拖动示教的交互模式中,机器人有时会发生自身的碰撞、与工作空间中障碍物的碰撞、关节超限以及构型奇异的问题。这些情况都会使人机交互无法继续进行,同时威胁到操作人员以及机械臂本体的安全。因此就需要机器人的碰撞、关节超限以及构型奇异问题进行规避,以保障人机交互的安全。
现有技术中,通常采用混合法也就是混合虚拟力法和变阻尼法解决规避问题。但是混合法往往用于描述单一约束的问题,对于多约束问题缺少有效的应用。
因此,如何同时对多约束进行处理,是本领域技术人员急需解决的技术问题。
发明内容
本申请提供一种机器人的关节移动增量确定方法,以同时对多约束进行处理,本申请还提供一种机器人的关节移动增量确定装置。
第一方面,本申请提供一种机器人的关节移动增量确定方法,包括:
获取机器人的至少一个关节的位置信息;
根据所述位置信息,确定预设约束场景中每个不同约束场景对应的目标关节的约束空间;
计算在所述每个约束空间中与所述目标关节运动方向相反的抵抗力;
根据每个所述抵抗力确定每个约束场景下的目标关节的移动增量大小以及方向。
可选的,所述预设约束场景包括:自碰撞规避、关节极限规避、环境碰撞规避以及奇异构型规避,所述计算在所述每个约束空间中与所述目标关节运动方向相反的抵抗力,包括:
分别计算在自碰撞规避、关节极限规避、环境碰撞规避以及奇异构型规避对应的约束空间中与所述目标关节运动方向相反的抵抗力。
可选的,所述至少一个关节为两个关节,所述计算在自碰撞规避对应的约束空间中与所述目标关节运动方向相反的抵抗力,包括:
计算由两个关节位置信息确定的两个连杆模型之间的距离以及两个连杆模型之间最近的两个距离点;
根据所述两个连杆模型之间的距离、预设的安全距离阈值以及预设的危险阈值确定第一抵抗力函数的输出值;
根据所述第一抵抗地函数的输出值与第一抵抗力方向函数的输出值乘积确定第一抵抗力的值;所述第一抵抗力方向函数的输出值由两个连杆模型之间最近的两个距离点的向量确定。
可选的,所述计算在环境碰撞规避对应的约束空间中与所述目标关节运动方向相反的抵抗力,包括:
计算由关节位置信息确定的连杆模型与障碍物之间的距离以及连杆模型与障碍物之间最近的两个距离点;
根据所述连杆模型与障碍物之间的距离、预设的安全距离阈值以及预设的危险阈值确定第二抵抗力函数的输出值;
根据所述第二抵抗地函数的输出值与第二抵抗力方向函数的输出值乘积确定第二抵抗力的值;所述第二抵抗力方向函数的输出值由连杆模型与障碍物之间最近的两个距离点的向量确定。
可选的,所述计算在关节极限规避对应的约束空间中与所述目标关节运动方向相反的抵抗力,包括:
根据所述关节极限的距离、预设的安全距离阈值以及预设的危险阈值确定第三抵抗力函数的输出值;
根据所述第三抵抗地函数的输出值与第三抵抗力方向函数的输出值乘积确定第三抵抗力的值;所述第三抵抗力方向函数的输出值由关节极限的距离确定。
可选的,所述计算奇异构型规避对应的约束空间中与所述目标关节运动方向相反的抵抗力,包括:
根据所述奇异构型的约束距离、预设的安全距离阈值以及预设的危险阈值确定第四抵抗力函数的输出值;
根据所述第四抵抗地函数的输出值与第四抵抗力方向函数的输出值乘积确定第四抵抗力的值;所述第四抵抗力方向函数的输出值由机器人的位姿向量以及关节末端的微小位移确定。
可选的,所述方法还包括:
根据每个约束场景下的目标关节的移动增量大小以及方向,确定对应约束场景下的每个节点的总增量大小和方向。
可选的,所述方法还包括,将每个约束场景下的目标关节的移动增量大小按照方向相加,获得关节增量信息;
根据所述关节增量信息,向机器人发送关节控制指令。
可选的,在所述获取机器人的至少一个关节的位置信息之前,所述方法还包括:
获取机器人每个连杆的物体外轮廓形状的几何模型;
将所述几何模型转换为目标模型;所述目标模型用于进行碰撞检测。
第二方面,本申请还提供一种机器人的关节移动增量确定装置,所述装置包括:
第一获取单元,用于获取机器人的至少一个关节的位置信息;
第一确定单元,用于根据所述位置信息,确定预设约束场景中每个不同约束场景对应的目标关节的约束空间;
第一计算单元,用于计算在所述每个约束空间中与所述目标关节运动方向相反的抵抗力;
第二确定单元,用于根据每个所述抵抗力确定每个约束场景下的目标关节的移动增量大小以及方向。
可选的,所述预设约束场景包括:自碰撞规避、关节极限规避、环境碰撞规避以及奇异构型规避,所述第一计算单元具体用于:
分别计算在自碰撞规避、关节极限规避、环境碰撞规避以及奇异构型规避对应的约束空间中与所述目标关节运动方向相反的抵抗力。
可选的,所述至少一个关节为两个关节,所述第一计算单元,具体用于:
计算由两个关节位置信息确定的两个连杆模型之间的距离以及两个连杆模型之间最近的两个距离点;
根据所述两个连杆模型之间的距离、预设的安全距离阈值以及预设的危险阈值确定第一抵抗力函数的输出值;
根据所述第一抵抗地函数的输出值与第一抵抗力方向函数的输出值乘积确定第一抵抗力的值;所述第一抵抗力方向函数的输出值由两个连杆模型之间最近的两个距离点的向量确定。
可选的,所述第一计算单元,具体用于:
计算由关节位置信息确定的连杆模型与障碍物之间的距离以及连杆模型与障碍物之间最近的两个距离点;
根据所述连杆模型与障碍物之间的距离、预设的安全距离阈值以及预设的危险阈值确定第二抵抗力函数的输出值;
根据所述第二抵抗地函数的输出值与第二抵抗力方向函数的输出值乘积确定第二抵抗力的值;所述第二抵抗力方向函数的输出值由连杆模型与障碍物之间最近的两个距离点的向量确定。
可选的,所述第一计算单元,具体用于:
根据所述关节极限的距离、预设的安全距离阈值以及预设的危险阈值确定第三抵抗力函数的输出值;
根据所述第三抵抗地函数的输出值与第三抵抗力方向函数的输出值乘积确定第三抵抗力的值;所述第三抵抗力方向函数的输出值由关节极限的距离确定。
可选的,所述第一计算单元,具体用于:
根据所述奇异构型的约束距离、预设的安全距离阈值以及预设的危险阈值确定第四抵抗力函数的输出值;
根据所述第四抵抗地函数的输出值与第四抵抗力方向函数的输出值乘积确定第四抵抗力的值;所述第四抵抗力方向函数的输出值由机器人的位姿向量以及关节末端的微小位移确定。
可选的,所述装置还包括:
第三确定单元,用于根据每个约束场景下的目标关节的移动增量大小以及方向,确定对应约束场景下的每个节点的总增量大小和方向。
可选的,所述装置还包括,获得单元,用于将每个约束场景下的目标关节的移动增量大小按照方向相加,获得关节增量信息;
发送单元,用于根据所述关节增量信息,向机器人发送关节控制指令。
可选的,所述装置,还包括:
第二获取单元,用于获取机器人每个连杆的物体外轮廓形状的几何模型;
转换单元,用于将所述几何模型转换为目标模型;所述目标模型用于进行碰撞检测。
第三方面,本申请实施例提供了一种设备,所述设备包括存储器和处理器,所述存储器用于存储指令或代码,所述处理器用于执行所述指令或代码,以使所述设备执行前述第一方面任一项所述的方法。
第四方面,本申请实施例提供了一种计算机存储介质,所述计算机存储介质中存储有代码,当所述代码被运行时,运行所述代码的设备实现前述第一方面任一项所述的方法。
相较于现有技术,本申请具有以下有益效果:
本申请中可以获取机器人的至少一个关节的位置信息,然后根据位置信息,确定预设约束场景中每个不同约束场景对应的目标关节的约束空间,然后计算在每个约束空间中与目标关节运动方向相反的抵抗力,根据每个抵抗力确定每个约束场景下的目标关节的移动增量大小以及方向。本申请中可以通过局部空间映射方法,将多种约束映射在同一作用空间,也就是约束空间,进而可以在映射空间中计算每个约束场景下的机器人的关节移动增量,以实现同时对多种约束进行处理。
附图说明
为更清楚地说明本实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种机器人的关节移动增量确定方法的流程图;
图2为本申请实施例提供的另一种机器人的关节移动增量确定方法的流程图;
图3为本申请实施例提供的机器人的关节移动增量确定装置的一种具体实施方式的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本申请保护范围。
随着机器人技术的不断发展,协作机器人已经被广泛地应用于工业、医疗以及航空探索等多个领域。在这些应用场景中,协作机器人借助于柔顺控制技术,可以对人的拖动行为做出柔顺的响应,实现拖动示教的交互模式。这种交互模式降低了操作人员对机器人编程的难度,使得机器人可以快速地被布置于定制化应用场景之中。
在拖动示教的交互模式中,机器人有时会发生自身的碰撞、与工作空间中障碍物的碰撞、关节超限以及构型奇异的问题。这些情况都会使人机交互无法继续进行,同时威胁到操作人员以及机械臂本体的安全。因此就需要机器人的碰撞、关节超限以及构型奇异问题进行规避,以保障人机交互的安全。
现有技术中,通常采用混合法也就是混合虚拟力法和变阻尼法解决规避问题。但是混合法往往用于描述单一约束的问题,对于多约束问题缺少有效的应用。
本申请中可以获取机器人的至少一个关节的位置信息,然后根据位置信息,确定预设约束场景中每个不同约束场景对应的目标关节的约束空间,然后计算在每个约束空间中与目标关节运动方向相反的抵抗力,根据每个抵抗力确定每个约束场景下的目标关节的移动增量大小以及方向。本申请中可以通过局部空间映射方法,将多种约束映射在同一作用空间,也就是约束空间,进而可以在映射空间中计算每个约束场景下的机器人的关节移动增量,以实现同时对多种约束进行处理。
需要说明的是,本申请提供的一种机器人的关节移动增量确定方法及装置,用于人工智能领域。上述仅为示例,并不对本申请提供的方法及装置名称的应用领域进行限定。
本申请实施例提供的方法可以在机器人控制系统上执行。
为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。下面以本申请实施例提供的方法由第一设备执行为例进行说明。
图1为本申请实施例提供的一种机器人的关节移动增量确定的流程图。
如图1所示,该方法包括:
S101:获取机器人的至少一个关节的位置信息。
第一设备在获取机器人的至少一个关节的位置信息之前可以建立机器人自身的碰撞模型。
具体的,将机器人每个连杆的物体外轮廓形状的几何模型转换为目标模型,将几何模型的结构转换为与目标模型的结构一致,也就是转换成能进行碰撞检测的AABB或OBB等碰撞模型结构。然后获取机器人至少一个关节的位置信息。
S102:根据所述位置信息,确定预设约束场景中每个不同约束场景对应的目标关节的约束空间。
第一设备在获取至少一个关节的位置信息之后,可以根据该位置信息,确定预设约束场景中每个不同约束场景对应的目标关节的约束空间,其中,预设约束场景可以包括:自碰撞规避、关节极限规避、环境碰撞规避以及奇异构型规避,当然也可以是其中任意几项组合。
S103:计算在所述每个约束空间中与所述目标关节运动方向相反的抵抗力。
第一设备可以分别计算在自碰撞规避、关节极限规避、环境碰撞规避以及奇异构型规避对应的约束空间中与目标关节运动方向相反的抵抗力,也就是虚拟力。
具体的,计算在自碰撞规避对应的约束空间中与所述目标关节运动方向相反的抵抗力,可以为以下步骤:
获取机器人的关节的位置信息,然后通过机器人正运动学求解,确定各连杆模型的空间位置,需要说明的是每一个连杆可以类似看成是一个机器人的身体部位,例如,获取机器人的手臂关节的位置信息,则可以根据手臂关节的位置信息,确定手臂的空间位置。然后可以利用碰撞检测算法FCL得到机器人两个需要计算自碰撞的连杆间的距离dij和两个模型间距离最近的两点坐标和根据需要计算自碰撞的连杆间连杆信息,也可以称为违反约束的两连杆的信息,组成局部约束空间,需要解释的是在局部约束空间中,只对形成约束的两个连杆模型产生影响,不影响其他的连杆模型。进而可以将自碰撞规避转化为一种主动约束,然后根据第一抵抗地函数的输出值与第一抵抗力方向函数的输出值乘积确定第一抵抗力的值,也就是自碰撞规避下的虚拟力。需要解释的,虚拟力是为任何位置的物体提供远离障碍物和靠近目标的力向量,以此影响机器人朝离障碍物的方向运动。因为该力向量并不是真实存在的,顾称为虚拟力,例如两个机器人的手臂朝着胸部方向运动,此时就会产生一个与机器人的手臂运动方向相反的抵抗力,以抵抗手臂,避免与胸部发生碰撞。
具体第一抵抗力公式如下:
其中Ω是所有可能发生碰撞的连杆对集合。fij为虚拟力,这里也可以叫做第一抵抗力,ds为预设的安全距离阈值dc为预设的危险距离阈值。M(dij,ds,dc)为虚拟力函数,也可以叫第一抵抗力函数,具体公式如下:
其中λ是增益系数。虚拟力方向函数D(Pi,Pj)保证虚拟力的方向为主动约束指标下降最快的方向,比如自碰撞情况下虚拟力方向函数的公式如下:
可选的,为了使计算出的虚拟力更加准确还可以通过分析操作者意图优化虚拟力,具体公式如下:
f′ij=Φ(fij,X)fij
其中,函数Φ根据机器人末端力矩传感器数据判断操作者意图:如果在某方向上操作者的操作是使两连杆相互远离的,则在该方向上虚拟力为0。如果操作者的操作是使两连杆相互接近的,则在该方向上保留虚拟力,X代表力作用点的位置。然后可以根据虚拟力生成导纳控制器的阻尼系数。
Bd(t)=B0+Be(t)
其中B0是预设阻尼系数,Be(t)与虚拟力相关的阻尼增量:
Be(t)=λe|f′ij|
其中λe是增益系数。将优化后的虚拟力和阻尼系数带入到控制空间导纳控制器中,产生虚拟的控制空间位移增量。通过组成的局部约束空间映射,将位移增量转变为对应的关节增量。这样也就完成了一次两个连杆模型的自碰撞判断,并计算出对应的关节增量。也就是为了避免碰撞关节在某个方向上需要移动的量。
可以计算在关节环境碰撞规避对应的约束空间中与目标关节运动方向相反的抵抗力,具体的:
获取机器人的关节的位置信息预计障碍物的位置,然后通过机器人正运动学求解,确定各连杆模型的空间位置,需要说明的是每一个连杆可以类似看成是一个机器人的身体部位,例如,获取机器人的手臂关节的位置信息,则可以根据手臂关节的位置信息,确定手臂的空间位置。然后可以利用碰撞检测算法FCL得到机器人需要计算碰撞的连杆与障碍物的距离这里也可以为dij和连杆与障碍物间距离最近的两点坐标连杆与障碍物和确定违反约束的连杆与机器人底座组成的局部约束空间,进而可以将自碰撞规避转化为一种主动约束,然后根据第二抵抗地函数的输出值与第二抵抗力方向函数的输出值乘积确定第二抵抗力的值,也就是环境碰撞规避下的虚拟力。
具体第二抵抗力公式如下:
其中fij为也可以环境碰撞规避下的虚拟力,这里也可以叫做第二抵抗力,ds为预设的安全距离阈值dc为预设的危险距离阈值。M(dij,ds,dc)也可以为第二虚拟力函数,也可以叫第二抵抗力函数,具体公式如下:
其中λ是增益系数。虚拟力方向函数D(Pi,Pj)保证虚拟力的方向为主动约束指标下降最快的方向,比如环境碰撞规避下的虚拟力方向函数的公式如下:
可选的,为了使计算出的虚拟力更加准确还可以通过分析操作者意图优化虚拟力,具体公式如下:
fi′j=Φ(fij,X)fij
其中,函数Φ根据机器人末端力矩传感器数据判断操作者意图:如果在某方向上操作者的操作是使两连杆相互远离的,则在该方向上虚拟力为0。如果操作者的操作是使两连杆相互接近的,则在该方向上保留虚拟力,X代表力作用点的位置。然后可以根据虚拟力生成导纳控制器的阻尼系数,f′ij为优化后的虚拟力。
Bd(t)=B0+Be(t)
其中B0是预设阻尼系数,Be(t)是由于虚拟力引起的阻尼增量:
Be(t)=λe|f′ij|
其中λe是增益系数。将优化后的虚拟力和阻尼系数带入到控制空间导纳控制器中,产生虚拟的控制空间位移增量。通过组成的局部约束空间映射,将位移增量转变为对应的关节增量。这样也就完成了一次连杆与环境碰撞判断,并计算出对应的关节增量。也就是为了避免碰撞关节在某个方向上需要移动的量。
可以计算在关节极限规避对应的约束空间中与目标关节运动方向相反的抵抗力,具体的:
获取机器人关节的位置信息,当确定机器人关节的位置信息超越预设的极限位置,可以进行极限规避。
当然也可以获取机器人的关节的速度、加速度以及驱动力矩信息,进而通过机器人的关节的速度、加速度以及驱动力矩信息与预设的关节极限速度、极限加速度、最大驱动力矩相比较,来进行机器人关节的极限规避。
确定违反约束的关节的局部约束空间,然后计算关节极限距离d,计算虚拟力,以关节的当前位置x及其当前关节的极限位置xlim举例:
当然,x不限于是关节的当前位置,也可以是关节的速度、加速度以及驱动力矩,xlim也不限于是当前关节的极限位置,也可以对应的是关节极限速度、极限加速度、最大驱动力矩。
fij为也可以关节极限规避下的虚拟力,这里也可以叫做第三抵抗力计算第三抵抗力,公式如下:
fij=M(d,ds,dc)D(x,xlim)
虚拟力方向函数D(x,xlim)保证虚拟力的方向为主动约束指标下降最快的方向,比如关节极限规避下的虚拟力方向函数的公式如下:
需要说明的是M(d,ds,dc)为第三虚拟力函数,具体公式与上述第二虚拟力函数M(dij,ds,dc)类似,把第二虚拟函数中公式中的dij用d代替即可。
后续优化虚拟力原理与上述相同,在此不做多余叙述。
将优化后的虚拟力和阻尼系数带入到控制空间导纳控制器中,产生虚拟的控制空间位移增量。以规避关节的位置极限为例,通过组成的局部约束空间映射,将位移增量转变为对应的关节增量。这样也就完成了一次关节极限规避判断,并计算出对应的关节增量。也就是为了避免关节当前位置超出极限位置,关节在某个方向上需要移动的量。
可以计算在奇异构型规避对应的约束空间中与目标关节运动方向相反的抵抗力,具体的:
第一设备获取机器人的关节的位置信息,然后计算机器人雅可比矩阵和其条件数,通过雅可比矩阵的条件数分解,确定失去自由度的关节,并确定该关节组成的局部约束空间,可以计算奇异构型规避对应的约束空间中与目标关节运动方向相反的抵抗力,具体的:
d=cond(J)-δlim
其中cond()为计算矩阵条件数,J为机器人雅可比矩阵,δlim为预设判断矩阵奇异阈值,d为奇异构型的约束距离。
fij为也可以奇异构型规避下的虚拟力,这里也可以叫做第四抵抗力计算第四抵抗力,公式如下:
fij=M(d,ds,dc)D(x)
需要说明的是这里的M(d,ds,dc)为第四虚拟力函数,具体公式与上述第三虚拟力函数M(dij,ds,dc)类似,把第三虚拟函数中公式中的关节极限距离d用奇异构型的约束距离d代替即可。
这里以机器人末端的六维度位姿向量x举例,D(x)函数代表根据机器人的位姿向量x计算机器人雅可比矩阵的算法。Δx代表末端的微小位移。
后续优化虚拟力原理与上述相同,在此不做多余叙述。
将优化后的虚拟力和阻尼系数带入到控制空间导纳控制器中,产生虚拟的控制空间位移增量。通过组成的局部约束空间映射,将位移增量转变为对应的关节增量。这样也就完成了一次奇异构型规避判断,并计算出对应的关节增量。
S104:根据每个所述抵抗力确定每个约束场景下的目标关节的移动增量大小以及方向。
第一设备根据每个抵抗力确定每个约束场景下的目标关节的移动增量大小以及方向。
这样第一设备就可以确定每个约束场景下的目标关节的单次约束的移动增量大小以及方向。
本申请中可以获取机器人的至少一个关节的位置信息,然后根据位置信息,确定预设约束场景中每个不同约束场景对应的目标关节的约束空间,然后计算在每个约束空间中与目标关节运动方向相反的抵抗力,根据每个抵抗力确定每个约束场景下的目标关节的移动增量大小以及方向。本申请中可以通过局部空间映射方法,将多种约束映射在同一作用空间,也就是约束空间,进而可以在映射空间中计算每个约束场景下的机器人的关节移动增量,以实现同时对多种约束进行处理。
在上述实施例的基础上,本申请还可以提供另一实施例,可以称之为实施例二,在确定每个节点在各个约束场景下的移动增量之后,本申请还可以增加,“将根据每个约束场景下的目标关节的移动增量大小以及方向,确定对应约束场景下的每个节点的总增量大小和方向”,“将每个约束场景下的目标关节的移动增量大小按照方向相加,获得关节增量信息,根据所述关节增量信息,向机器人发送关节控制指令“这两个步骤,具体流程图如图2所示,具体的:
S201:将根据每个约束场景下的目标关节的移动增量大小以及方向,确定对应约束场景下的每个节点的总增量大小和方向。
具体的,以自碰撞约束为例,例如,手臂与胸部可能发生碰撞,手臂与头部也可能发生碰撞,为避免手臂与胸部发生碰撞产生的关节增量为向左移动3cm,为避免手臂与头部也发生碰撞产生的关节增量为向下移动3cm,则需要将自碰撞约束下,该可能发生碰撞的关节产生的所有移动增量相加,也就是手臂的在自碰撞约束产生的移动增量为向左移动3cm,向下移动3cm。
当然,其余约束场景下也是基于同样原理,在此不做叙述,且这里只是举例说明,并不做具体限定。
S202:将每个约束场景下的目标关节的移动增量大小按照方向相加,获得关节增量信息,根据所述关节增量信息,向机器人发送关节控制指令。
第一设备可以将每个约束场景下的目标关节的移动增量大小按照方向相加,获得关节增量信息,例如,手臂在自碰撞约束产生的移动增量为向左移动3cm,向下移动3cm,在环境碰撞约束产生的移动增量为向下移动1cm,则将手臂在每个约束场景的移动增量相加为向左移动3cm,向下移动4cm,从而获得手臂的关节增量信息,根据关节增量信息,向机器人发送关节控制指令,以控制关节按照关节增量信息中关节的增量和方向控制关节移动。
以上为本申请实施例提供机器人的关节移动增量确定方法的一些具体实现方式,基于此,本申请还提供了对应的装置。下面将从功能模块化的角度对本申请实施例提供的装置进行介绍,该装置与上文描述的机器人的关节移动增量确定方法可相互对应参照。
图3为本申请实施例提供的机器人的关节移动增量确定装置的一种具体实施方式的结构示意图。称其为具体实施方式三,参照图3所述装置可以包括:
第一获取单元300,用于获取机器人的至少一个关节的位置信息;
第一确定单元310,用于根据所述位置信息,确定预设约束场景中每个不同约束场景对应的目标关节的约束空间;
第一计算单元320,用于计算在所述每个约束空间中与所述目标关节运动方向相反的抵抗力;
第二确定单元330,用于根据每个所述抵抗力确定每个约束场景下的目标关节的移动增量大小以及方向。
可选的,所述预设约束场景包括:自碰撞规避、关节极限规避、环境碰撞规避以及奇异构型规避,所述第一计算单元具体用于:
分别计算在自碰撞规避、关节极限规避、环境碰撞规避以及奇异构型规避对应的约束空间中与所述目标关节运动方向相反的抵抗力。
可选的,所述至少一个关节为两个关节,所述第一计算单元,具体用于:
计算由两个关节位置信息确定的两个连杆模型之间的距离以及两个连杆模型之间最近的两个距离点;
根据所述两个连杆模型之间的距离、预设的安全距离阈值以及预设的危险阈值确定第一抵抗力函数的输出值;
根据所述第一抵抗地函数的输出值与第一抵抗力方向函数的输出值乘积确定第一抵抗力的值;所述第一抵抗力方向函数的输出值由两个连杆模型之间最近的两个距离点的向量确定。
可选的,所述第一计算单元,具体用于:
计算由关节位置信息确定的连杆模型与障碍物之间的距离以及连杆模型与障碍物之间最近的两个距离点;
根据所述连杆模型与障碍物之间的距离、预设的安全距离阈值以及预设的危险阈值确定第二抵抗力函数的输出值;
根据所述第二抵抗地函数的输出值与第二抵抗力方向函数的输出值乘积确定第二抵抗力的值;所述第二抵抗力方向函数的输出值由连杆模型与障碍物之间最近的两个距离点的向量确定。
可选的,所述第一计算单元,具体用于:
根据所述关节极限的距离、预设的安全距离阈值以及预设的危险阈值确定第三抵抗力函数的输出值;
根据所述第三抵抗地函数的输出值与第三抵抗力方向函数的输出值乘积确定第三抵抗力的值;所述第三抵抗力方向函数的输出值由关节极限的距离确定。
可选的,所述第一计算单元,具体用于:
根据所述奇异构型的约束距离、预设的安全距离阈值以及预设的危险阈值确定第四抵抗力函数的输出值;
根据所述第四抵抗地函数的输出值与第四抵抗力方向函数的输出值乘积确定第四抵抗力的值;所述第四抵抗力方向函数的输出值由机器人的位姿向量以及关节末端的微小位移确定。
可选的,所述装置还包括:
第三确定单元,用于根据每个约束场景下的目标关节的移动增量大小以及方向,确定对应约束场景下的每个节点的总增量大小和方向。
可选的,所述装置还包括,获得单元,用于将每个约束场景下的目标关节的移动增量大小按照方向相加,获得关节增量信息;
发送单元,用于根据所述关节增量信息,向机器人发送关节控制指令。
可选的,所述装置,还包括:
第二获取单元,用于获取机器人每个连杆的物体外轮廓形状的几何模型;
转换单元,用于将所述几何模型转换为目标模型;所述目标模型用于进行碰撞检测。
本申请实施例还提供了对应的设备以及计算机存储介质,用于实现本申请实施例提供的方案。
其中,所述设备包括存储器和处理器,所述存储器用于存储指令或代码,所述处理器用于执行所述指令或代码,以使所述设备执行本申请任一实施例所述的方法。
所述计算机存储介质中存储有代码,当所述代码被运行时,运行所述代码的设备实现本申请任一实施例所述的方法。
本申请实施例中提到的“第一”、“第二”(若存在)等名称中的“第一”、“第二”只是用来做名字标识,并不代表顺序上的第一、第二。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到上述实施例方法中的全部或部分步骤可借助软件加通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如只读存储器(英文:read-only memory,ROM)/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者诸如路由器等网络通信设备)执行本申请各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅是本申请示例性的实施方式,并非用于限定本申请的保护范围。
Claims (10)
1.一种机器人的关节移动增量确定方法,其特征在于,包括:
获取机器人的至少一个关节的位置信息;
根据所述位置信息,确定预设约束场景中每个不同约束场景对应的目标关节的约束空间;
计算在所述每个约束空间中与所述目标关节运动方向相反的抵抗力;
根据每个所述抵抗力确定每个约束场景下的目标关节的移动增量大小以及方向。
2.根据权利要求1所述的方法,其特征在于,所述预设约束场景包括:自碰撞规避、关节极限规避、环境碰撞规避以及奇异构型规避,所述计算在所述每个约束空间中与所述目标关节运动方向相反的抵抗力,包括:
分别计算在自碰撞规避、关节极限规避、环境碰撞规避以及奇异构型规避对应的约束空间中与所述目标关节运动方向相反的抵抗力。
3.根据权利要求2所述的方法,其特征在于,所述至少一个关节为两个关节,所述计算在自碰撞规避对应的约束空间中与所述目标关节运动方向相反的抵抗力,包括:
计算由两个关节位置信息确定的两个连杆模型之间的距离以及两个连杆模型之间最近的两个距离点;
根据所述两个连杆模型之间的距离、预设的安全距离阈值以及预设的危险阈值确定第一抵抗力函数的输出值;
根据所述第一抵抗地函数的输出值与第一抵抗力方向函数的输出值乘积确定第一抵抗力的值;所述第一抵抗力方向函数的输出值由两个连杆模型之间最近的两个距离点的向量确定。
4.根据权利要求2所述的方法,其特征在于,所述计算在环境碰撞规避对应的约束空间中与所述目标关节运动方向相反的抵抗力,包括:
计算由关节位置信息确定的连杆模型与障碍物之间的距离以及连杆模型与障碍物之间最近的两个距离点;
根据所述连杆模型与障碍物之间的距离、预设的安全距离阈值以及预设的危险阈值确定第二抵抗力函数的输出值;
根据所述第二抵抗地函数的输出值与第二抵抗力方向函数的输出值乘积确定第二抵抗力的值;所述第二抵抗力方向函数的输出值由连杆模型与障碍物之间最近的两个距离点的向量确定。
5.根据权利要求2所述的方法,其特征在于,所述计算在关节极限规避对应的约束空间中与所述目标关节运动方向相反的抵抗力,包括:
根据所述关节极限的距离、预设的安全距离阈值以及预设的危险阈值确定第三抵抗力函数的输出值;
根据所述第三抵抗地函数的输出值与第三抵抗力方向函数的输出值乘积确定第三抵抗力的值;所述第三抵抗力方向函数的输出值由关节极限的距离确定。
6.根据权利要求2所述的方法,其特征在于,所述计算奇异构型规避对应的约束空间中与所述目标关节运动方向相反的抵抗力,包括:
根据所述奇异构型的约束距离、预设的安全距离阈值以及预设的危险阈值确定第四抵抗力函数的输出值;
根据所述第四抵抗地函数的输出值与第四抵抗力方向函数的输出值乘积确定第四抵抗力的值;所述第四抵抗力方向函数的输出值由机器人的位姿向量以及关节末端的微小位移确定。
7.根据权利要求2-6任一项所述的方法,其特征在于,所述方法还包括:
根据每个约束场景下的目标关节的移动增量大小以及方向,确定对应约束场景下的每个节点的总增量大小和方向。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括,将每个约束场景下的目标关节的移动增量大小按照方向相加,获得关节增量信息;
根据所述关节增量信息,向机器人发送关节控制指令。
9.根据权利要求3或4所述的方法,其特征在于,在所述获取机器人的至少一个关节的位置信息之前,所述方法还包括:
获取机器人每个连杆的物体外轮廓形状的几何模型;
将所述几何模型转换为目标模型;所述目标模型用于进行碰撞检测。
10.一种机器人的关节移动增量确定装置,其特征在于,包括:
第一获取单元,用于获取机器人的至少一个关节的位置信息;
第一确定单元,用于根据所述位置信息,确定预设约束场景中每个不同约束场景对应的目标关节的约束空间;
第一计算单元,用于计算在所述每个约束空间中与所述目标关节运动方向相反的抵抗力;
第二确定单元,用于根据每个所述抵抗力确定每个约束场景下的目标关节的移动增量大小以及方向。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310214757.XA CN116061188A (zh) | 2023-03-07 | 2023-03-07 | 一种机器人的关节移动增量确定方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310214757.XA CN116061188A (zh) | 2023-03-07 | 2023-03-07 | 一种机器人的关节移动增量确定方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116061188A true CN116061188A (zh) | 2023-05-05 |
Family
ID=86169950
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310214757.XA Pending CN116061188A (zh) | 2023-03-07 | 2023-03-07 | 一种机器人的关节移动增量确定方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116061188A (zh) |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0890468A (ja) * | 1994-09-27 | 1996-04-09 | Nissan Motor Co Ltd | ロボットのティーチング装置 |
CN102162847A (zh) * | 2011-01-14 | 2011-08-24 | 中国人民解放军理工大学 | 一种基于奇异值分解的高效航迹相关方法 |
JP2012143842A (ja) * | 2011-01-13 | 2012-08-02 | Sharp Corp | 探索装置、自動組付け装置、探索方法、およびプログラム |
WO2016193217A1 (de) * | 2015-06-02 | 2016-12-08 | Kuka Roboter Gmbh | Verfahren zum betreiben eines roboters, zugehöriger roboter mit einer vibrationsvorrichtung und roboterarbeitsplatz |
CN106774312A (zh) * | 2016-12-05 | 2017-05-31 | 遨博(北京)智能科技有限公司 | 一种为移动机器人确定移动轨迹的方法和装置 |
CN106945020A (zh) * | 2017-05-18 | 2017-07-14 | 哈尔滨工业大学 | 一种空间双机械臂系统运动协调控制方法 |
CN108515520A (zh) * | 2018-04-13 | 2018-09-11 | 宁波德深机械设备有限公司 | 避碰式工业机器人 |
CN108527369A (zh) * | 2018-04-13 | 2018-09-14 | 宁波德深机械设备有限公司 | 工业机器人的碰撞保护方法 |
CN108714894A (zh) * | 2018-05-03 | 2018-10-30 | 华南理工大学 | 一种求解双冗余机械臂互相碰撞的动力学方法 |
CN110977974A (zh) * | 2019-12-11 | 2020-04-10 | 遨博(北京)智能科技有限公司 | 一种机器人规避奇异位型的导纳控制方法、装置及系统 |
US20210052459A1 (en) * | 2017-12-28 | 2021-02-25 | Safran Electronics & Defense | Exoskeleton structure |
CN113799142A (zh) * | 2021-10-29 | 2021-12-17 | 遨博(北京)智能科技有限公司 | 对机械臂的碰撞防护方法、控制柜以及机械臂系统 |
-
2023
- 2023-03-07 CN CN202310214757.XA patent/CN116061188A/zh active Pending
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0890468A (ja) * | 1994-09-27 | 1996-04-09 | Nissan Motor Co Ltd | ロボットのティーチング装置 |
JP2012143842A (ja) * | 2011-01-13 | 2012-08-02 | Sharp Corp | 探索装置、自動組付け装置、探索方法、およびプログラム |
CN102162847A (zh) * | 2011-01-14 | 2011-08-24 | 中国人民解放军理工大学 | 一种基于奇异值分解的高效航迹相关方法 |
WO2016193217A1 (de) * | 2015-06-02 | 2016-12-08 | Kuka Roboter Gmbh | Verfahren zum betreiben eines roboters, zugehöriger roboter mit einer vibrationsvorrichtung und roboterarbeitsplatz |
CN106774312A (zh) * | 2016-12-05 | 2017-05-31 | 遨博(北京)智能科技有限公司 | 一种为移动机器人确定移动轨迹的方法和装置 |
CN106945020A (zh) * | 2017-05-18 | 2017-07-14 | 哈尔滨工业大学 | 一种空间双机械臂系统运动协调控制方法 |
US20210052459A1 (en) * | 2017-12-28 | 2021-02-25 | Safran Electronics & Defense | Exoskeleton structure |
CN108515520A (zh) * | 2018-04-13 | 2018-09-11 | 宁波德深机械设备有限公司 | 避碰式工业机器人 |
CN108527369A (zh) * | 2018-04-13 | 2018-09-14 | 宁波德深机械设备有限公司 | 工业机器人的碰撞保护方法 |
CN108714894A (zh) * | 2018-05-03 | 2018-10-30 | 华南理工大学 | 一种求解双冗余机械臂互相碰撞的动力学方法 |
CN110977974A (zh) * | 2019-12-11 | 2020-04-10 | 遨博(北京)智能科技有限公司 | 一种机器人规避奇异位型的导纳控制方法、装置及系统 |
CN113799142A (zh) * | 2021-10-29 | 2021-12-17 | 遨博(北京)智能科技有限公司 | 对机械臂的碰撞防护方法、控制柜以及机械臂系统 |
Non-Patent Citations (2)
Title |
---|
伊强;陈恳;刘莉;付成龙;: "考虑综合步行约束的仿人机器人参数化3D步态规划方法", 机器人, no. 04, 15 July 2009 (2009-07-15), pages 56 - 64 * |
许宪东;洪炳;朴松昊;刘强;: "一种仿人机器人行走距离预测方法", 华中科技大学学报(自然科学版), no. 2, 15 November 2011 (2011-11-15), pages 307 - 310 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2022088593A1 (zh) | 机械臂的控制方法、装置及人机协同模型的训练方法 | |
Yang et al. | Neural-learning-based telerobot control with guaranteed performance | |
Lee et al. | Planning and control for collision-free cooperative aerial transportation | |
CN111538949A (zh) | 冗余机器人逆运动学求解方法、装置和冗余机器人 | |
CN110355751B (zh) | 控制装置和机器学习装置 | |
WO2018107851A1 (zh) | 冗余机械臂的控制方法及装置 | |
JP5261495B2 (ja) | 重み行列を用いたリアルタイム自己衝突および障害物回避 | |
JP7324932B2 (ja) | 動的計画コントローラ | |
JP2022169722A (ja) | 機械システムの制御方法,機械システム用コントローラ,ロボットマニピュレータ,および非一時的なコンピュータ可読記憶媒体 | |
CN110682286B (zh) | 一种协作机器人实时避障方法 | |
CN114571469B (zh) | 一种机械臂零空间实时避障控制方法及系统 | |
JP6321905B2 (ja) | 関節システムの制御方法、記憶媒体、制御システム | |
JP5156836B2 (ja) | リアルタイム自己衝突および障害物回避 | |
CN106945043A (zh) | 一种主从式遥操作手术机器人多臂协同控制系统 | |
Islam et al. | Artificial and virtual impedance interaction force reflection-based bilateral shared control for miniature unmanned aerial vehicle | |
WO2017132905A1 (zh) | 控制运动系统的方法和装置 | |
CN114952821A (zh) | 机器人运动控制方法、机器人及系统 | |
Waltersson et al. | Planning and control for cable-routing with dual-arm robot | |
CN111716352B (zh) | 一种配电网带电作业机械臂导航避障方法及系统 | |
Sadeghian et al. | Visual servoing with safe interaction using image moments | |
CN116061188A (zh) | 一种机器人的关节移动增量确定方法及装置 | |
JPH02188809A (ja) | 移動体の障害物回避制御装置 | |
CN114274145A (zh) | 一种腹腔镜手术中多机械臂的实时避障方法 | |
Vijayan et al. | Comparative study on the performance of neural networks for prediction in assisting visual servoing | |
Liu et al. | Learning control of quadruped robot galloping |
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 |