CN116945153A - 机械臂的控制方法、装置、设备及存储介质 - Google Patents
机械臂的控制方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN116945153A CN116945153A CN202310360170.XA CN202310360170A CN116945153A CN 116945153 A CN116945153 A CN 116945153A CN 202310360170 A CN202310360170 A CN 202310360170A CN 116945153 A CN116945153 A CN 116945153A
- Authority
- CN
- China
- Prior art keywords
- dimensional object
- mechanical arm
- arm
- control signal
- gesture
- 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 128
- 238000003860 storage Methods 0.000 title claims abstract description 22
- 230000033001 locomotion Effects 0.000 claims description 85
- 230000000007 visual effect Effects 0.000 claims description 22
- 238000012545 processing Methods 0.000 claims description 16
- 238000007499 fusion processing Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 10
- 238000005096 rolling process Methods 0.000 claims description 8
- 230000009471 action Effects 0.000 abstract description 36
- 238000013461 design Methods 0.000 description 32
- 210000002310 elbow joint Anatomy 0.000 description 28
- 210000000323 shoulder joint Anatomy 0.000 description 26
- 230000005484 gravity Effects 0.000 description 13
- 238000002360 preparation method Methods 0.000 description 12
- 210000000245 forearm Anatomy 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 9
- 230000008878 coupling Effects 0.000 description 6
- 238000010168 coupling process Methods 0.000 description 6
- 238000005859 coupling reaction Methods 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 6
- 230000002159 abnormal effect Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000007789 sealing Methods 0.000 description 4
- 230000003068 static effect Effects 0.000 description 4
- 238000013473 artificial intelligence Methods 0.000 description 3
- 230000004069 differentiation Effects 0.000 description 3
- 238000006073 displacement reaction Methods 0.000 description 3
- 230000010354 integration Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 210000000707 wrist Anatomy 0.000 description 3
- 210000003857 wrist joint Anatomy 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 239000012636 effector Substances 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000003909 pattern recognition Methods 0.000 description 2
- 230000008054 signal transmission Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- FFBHFFJDDLITSX-UHFFFAOYSA-N benzyl N-[2-hydroxy-4-(3-oxomorpholin-4-yl)phenyl]carbamate Chemical compound OC1=C(NC(=O)OCC2=CC=CC=C2)C=CC(=C1)N1CCOCC1=O FFBHFFJDDLITSX-UHFFFAOYSA-N 0.000 description 1
- 238000007621 cluster analysis Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 210000001503 joint Anatomy 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- ORQBXQOJMQIAOY-UHFFFAOYSA-N nobelium Chemical compound [No] ORQBXQOJMQIAOY-UHFFFAOYSA-N 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000004804 winding Methods 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
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
Landscapes
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
Abstract
本申请公开了一种机械臂的控制方法、装置、设备及存储介质,属于机器人领域。该方法由所述机械臂的控制器执行,所述机械臂上除末端外的任意位置上放置有三维物体,该方法包括:控制机械臂抛起三维物体;获取第一控制信号;基于第一控制信号控制机械臂上除末端之外的任意位置接住被抛起的三维物体;获取第二控制信号;基于第二控制信号控制机械臂使得三维物体在除末端之外的任意位置上重新达到受力平衡状态。本申请提供了一种机械臂的新的使用方法,先抛起三维物体,再通过机械臂上除末端之外的任意位置接住三维物体,以及使得三维物体重新保持平衡;实现三维物体的抛接动作,拓展了机械臂除末端之外的任意位置对三维物体进行抛接的控制方式。
Description
技术领域
本申请涉及机器人领域,特别涉及一种机械臂的控制方法、装置、设备及存储介质。
背景技术
随着机器人技术的发展以及适用领域的扩散,机器人在生产、服务等领域已逐步成为不可替代的工具。机械臂是一种常见的机器人的执行器,在生产生活中发挥着重要作用。
相关技术中,通常采用机械臂的末端来完成操作任务。或者,在机械臂的末端安装末端执行器来完成相应操作,如在机械臂的末端安装机械手指,通过控制机械臂和机械手指的运动来完成操作。
发明内容
本申请提供了一种机械臂的控制方法、装置、设备及存储介质,所述技术方案如下:
根据本申请的一方面,提供了一种机械臂的控制方法,所述方法由所述机械臂的控制器执行,所述机械臂上除末端外的任意位置上放置有三维物体,所述方法包括:
控制所述机械臂抛起所述三维物体;
控制所述机械臂上除所述末端之外的任意位置接住被抛起的所述三维物体;
控制所述机械臂使得所述三维物体在所述除所述末端之外的任意位置上重新保持平衡。
根据本申请的另一方面,提供了一种机械臂的控制装置,所述机械臂上除末端外的任意位置上放置有三维物体,所述装置包括:
控制模块,用于控制所述机械臂抛起所述三维物体;
获取模块,用于获取第一控制信号;
所述控制模块,还用于基于所述第一控制信号控制所述机械臂上除所述末端之外的任意位置接住被抛起的所述三维物体;
所述获取模块,还用于获取第二控制信号;
所述控制模块,还用于基于所述第二控制信号控制所述机械臂使得所述三维物体在所述除所述末端之外的任意位置上重新达到受力平衡状态。
在本申请的一个可选设计中,所述机械臂包括第一支臂;所述控制模块还用于:
控制所述第一支臂抛起所述三维物体,所述第一支臂和所述三维物体之间脱离接触;
基于所述第一控制信号控制所述第一支臂上除所述末端之外的任意位置接住被抛起的所述三维物体;
基于所述第二控制信号控制所述第一支臂使得所述三维物体在所述除所述末端之外的任意位置上重新达到受力平衡状态。
在本申请的一个可选设计中,所述机械臂包括相互独立运动的第一支臂和第二支臂;所述控制模块还用于:
控制所述第一支臂抛起所述三维物体,所述第一支臂和所述三维物体之间脱离接触;
基于所述第一控制信号控制所述第二支臂上除所述末端之外的任意位置接住被抛起的所述三维物体;
基于所述第二控制信号控制所述第二支臂使得所述三维物体在所述除所述末端之外的任意位置上重新达到受力平衡状态。
在本申请的一个可选设计中,所述获取模块还用于:
获取所述三维物体的运动轨迹信息,所述运动轨迹信息是所述三维物体和所述机械臂之间脱离接触之后的抛物轨迹;
其中,所述第一控制信号是根据所述机械臂的第一实际姿态和所述三维物体的运动轨迹信息确定的。
在本申请的一个可选设计中,所述获取模块还用于:
根据所述三维物体的运动轨迹信息,确定所述机械臂的第一期望姿态,所述第一期望姿态用于指示所述机械臂对抛起的所述三维物体进行接取的姿态信息;
根据所述第一实际姿态和所述第一期望姿态的差值,确定所述第一控制信号。
在本申请的一个可选设计中,所述第一实际姿态包括所述机械臂绕第一转轴转动的角度和角速度,所述第一期望姿态包括所述机械臂绕所述第一转轴转动的期望角度和期望角速度,所述第一控制信号包括第一控制力矩;所述获取模块还用于:
根据所述角度和所述期望角度的差值、所述角速度和所述期望角速度的差值,确定所述第一控制力矩;
其中,所述第一控制力矩用于指示所述机械臂绕所述第一转轴转动的横滚角方向上施加的力矩,所述第一转轴是与所述机械臂垂直的水平线;和/或,所述第一控制力矩用于指示所述机械臂绕所述第一转轴转动的俯仰角方向上施加的力矩,所述第一转轴是所述机械臂的延长线。
在本申请的一个可选设计中,所述获取模块还用于:
获取第二实际姿态,所述第二实际姿态为所述机械臂和所述三维物体之间的接触信息;
其中,所述第二控制信号是根据所述第二实际姿态和第二期望姿态确定的,所述第二期望姿态用于指示所述机械臂使得所述三维物体在所述机械臂上保持平衡的姿态信息。
在本申请的一个可选设计中,所述获取模块还用于:
根据所述第二实际姿态和所述第二期望姿态的差值,确定所述第二控制信号。
在本申请的一个可选设计中,所述第二实际姿态包括所述三维物体的质心在第二转轴所在的方向上的位置信息和所述三维物体在所述第二转轴所在的方向上的偏移速度,所述第二期望姿态包括所述三维物体的质心在所述第二转轴所在的方向上的期望位置和所述三维物体在所述第二转轴所在的方向上的期望速度,所述第二控制信号包括第二控制力矩;所述获取模块还用于:
根据所述位置信息和所述期望位置的差值、所述偏移速度和所述期望速度的差值,确定所述第二控制力矩;
其中,所述第二控制力矩用于指示所述机械臂绕所述第二转轴转动的横滚角方向上施加的力矩,所述第二转轴是与所述机械臂垂直的水平线;和/或,所述第二控制力矩用于指示所述机械臂绕所述第二转轴转动的俯仰角方向上施加的力矩,所述第二转轴是所述机械臂的延长线。
在本申请的一个可选设计中,所述获取模块还用于:
基于视觉传感器,获取所述第二实际姿态;
或者,基于所述视觉传感器和触觉传感器,获取所述第二实际姿态。
在本申请的一个可选设计中,所述获取模块还用于:
通过所述视觉传感器获取图像,所述图像用于展示所述三维物体放置在所述机械臂上;
根据所述图像处理得到的图像处理结果,确定所述第二实际姿态。
在本申请的一个可选设计中,所述获取模块还用于:
基于所述视觉传感器,确定所述三维物体在第一方向上的第一信息;
基于所述触觉传感器,确定所述三维物体在第二方向上的第二信息;
对所述第一信息和所述第二信息进行融合处理,得到所述第二实际姿态;
其中,所述第一方向是与所述机械臂垂直的水平线所在的方向,所述第二方向是所述机械臂的延长线所在的方向。
在本申请的一个可选设计中,所述获取模块还用于:
获取所述机械臂的第三期望姿态,所述第三期望姿态用于指示所述机械臂使得所述三维物体和所述机械臂脱离接触,且获得竖直向上的速度的姿态信息;
根据所述机械臂的第三实际姿态和所述第三期望姿态,确定所述机械臂的第三控制信号;
其中,控制所述机械臂抛起所述三维物体是基于所述第三控制信号控制的。
在本申请的一个可选设计中,所述获取模块还用于:
获取所述机械臂的第四期望姿态,所述第四期望姿态用于指示所述机械臂使得所述三维物体和所述机械臂保持接触,且所述机械臂获得竖直向下的速度的姿态信息;
根据所述机械臂的第四实际姿态和所述第四期望姿态,确定所述机械臂的第四控制信号;
所述控制模块还用于:
根据所述第三控制信号和所述第四控制信号,控制所述机械臂抛起所述三维物体;
其中,所述第三控制信号用于控制所述三维物体和所述机械臂脱离接触,且所述三维物体获得竖直向上的速度,所述第四控制信号用于控制所述三维物体和所述机械臂保持接触且所述机械臂获得竖直向下的速度。
在本申请的一个可选设计中,所述获取模块,还用于获取抓取控制信号;
所述控制模块,还用于基于所述抓取控制信号控制所述机械臂的末端抓取被抛起的所述三维物体,且所述三维物体在被抓取的状态下达到受力平衡状态。
在本申请的一个可选设计中,所述获取模块还用于:
获取所述三维物体的运动轨迹信息,所述运动轨迹信息是所述三维物体和所述机械臂之间脱离接触之后的抛物轨迹;
其中,所述抓取控制信号是根据所述机械臂的第一实际姿态和所述三维物体的运动轨迹信息确定的。
根据本申请的一个方面,提供了一种计算机可读存储介质,存储介质中存储有计算机程序,所述计算机程序用于被处理器执行,以实现如上所述的机械臂的控制方法。
根据本申请的一个方面,提供了一种芯片,芯片包括可编程逻辑电路和/或程序指令,当安装有芯片的电子设备运行时,用于实现如上所述的机械臂的控制方法。
根据本申请的一个方面,提供了一种计算机程序产品,计算机程序产品包括计算机指令,计算机指令存储在计算机可读存储介质中,处理器从计算机可读存储介质读取并执行计算机指令,以实现如上所述的机械臂的控制方法。
本申请提供的技术方案带来的有益效果至少包括:
提供了一种机械臂的新的使用方法,能够先抛起三维物体,再通过机械臂上除末端之外的任意位置接住三维物体,以及使得三维物体重新保持平衡;控制器执行对机械臂的控制,实现三维物体的抛接动作,拓展了机械臂除末端之外的任意位置对三维物体进行抛接并保持平衡的控制方式。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一个示例性实施例提供的机械臂的示意图;
图2是本申请一个示例性实施例提供的机械臂的示意图;
图3是本申请一个示例性实施例提供的机械臂的示意图;
图4是本申请一个示例性实施例提供的机械臂的控制方法的流程图;
图5是本申请一个示例性实施例提供的机械臂的示意图;
图6是本申请一个示例性实施例提供的机械臂的示意图;
图7是本申请一个示例性实施例提供的机械臂的控制方法的流程图;
图8是本申请一个示例性实施例提供的机械臂和三维物体的示意图;
图9是本申请一个示例性实施例提供的机械臂的控制方法的流程图;
图10是本申请一个示例性实施例提供的机械臂的控制方法的流程图;
图11是本申请一个示例性实施例提供的机械臂和三维物体的示意图;
图12是本申请一个示例性实施例提供的机械臂的控制方法的流程图;
图13是本申请一个示例性实施例提供的机械臂的控制方法的流程图;
图14是本申请一个示例性实施例提供的机械臂的控制方法的流程图;
图15是本申请一个示例性实施例提供的机械臂的控制装置的结构框图;
图16是本申请一个示例性实施例提供的机械臂的结构示意性框图。
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本公开使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本公开可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开范围的情况下,第一参数也可以被称为第二参数,类似地,第二参数也可以被称为第一参数。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
机械臂是一种常见的机器人的执行器。随着人工智能的广泛应用,机械臂在生产生活中发挥着重要作用,成为了必不可少的设备。
在机械臂的使用过程中,通常采用机械臂的末端来完成操作任务;或者,在机械臂的末端安装末端执行器完成相应操作,如在机械臂的末端安装机械手指,通过控制机械臂和机械手指的运动来完成操作。
相关技术中,不会考虑应用机械臂的刚体连接件和/或外壳来完成操作任务,其主要原因在于:首先,机械臂的外观一般是曲面设计,不具备较大的平面;其次,若没有机械手指等可抓取的机构设计,机械臂的外观与外界物体之间的接触不会形成形封闭和力封闭,这将导致机械臂的控制难度较大。
图1示出了本申请一个示例性实施例提供的机械臂的示意图。
在一些实施例中,该机械臂是具有7自由度的机械臂。其中,机械臂的肘部、腕部控制电机后置于肩部第三关节中空处。可选的,肘部及腕部绳索驱动由肩部的电机带动皮带传动给绳轮,绳轮通过皮带传动绳对肘部腕部进行相应运动控制。
示意性的,机械臂包括:第一机械关节10、第二机械关节20和驱动组件30。
其中,第一机械关节10包括转动连接的第一固定件101和第一活动件102;第二机械关节20包括转动连接的第二固定件201和第二活动件202;第二固定件201和第一活动件102连接。
驱动组件30包括至少两个驱动源301和至少两条驱动绳索302;至少两个驱动源301中每个驱动源301通过至少一条驱动绳索302与第一固定件101、第一活动件102和第二活动件202连接。
至少两个驱动源301包括第一工作模式和第二工作模式;
第一工作模式下,至少两个驱动源301能够驱动第二活动件202相对于第二固定件201旋转,并使得第一活动件102相对于第一固定件101的位置固定;
第二工作模式下,至少两个驱动源301能够驱动第二活动件202、第二固定件201和第一活动件102相对于第一固定件101旋转,并使得第二活动件202相对于第二固定件201的位置固定。
本公开的机械臂,包括第一机械关节10、第二机械关节20和驱动组件30,驱动组件30包括至少两个驱动源301和至少两条驱动绳索302,该至少两个驱动源301中每个驱动源301均通过至少一条驱动绳索302与第一机械关节10的第一活动件102、第二机械关节20的第二活动件202,以及第一机械关节10的第一固定件101连接,该至少两个驱动源301第一工作模式下能够驱动第二活动件202相对于第二固定件201旋转,并使得第一活动件102相对于第一固定件101的位置固定;第二工作模式下能够驱动第二活动件202、第二固定件201和第一活动件102相对于第一固定件101旋转,并使得第二活动件202相对于第二固定件201的位置固定,实现至少两个驱动源301对多个关节的耦合驱动,提高驱动源301的利用率,降低机械关节的结构复杂度,提高机械关节的转动惯量,增强机械关节的运动性能。
此外,本实施例中第二机械关节20独立运动(即第二活动件202相对于第二固定件201旋转,但第一活动件102相对于第一固定件101的位置固定)时,以及第一机械关节10带动第二机械关节20耦合运动(即第二活动件202、第二固定件201和第一活动件102相对于第一固定件101旋转,第二活动件202相对于第二固定件201的位置固定)时,都是由至少两个驱动源301同时驱动,也即,无论那个自由度对应的关节运动,均受到至少两个驱动源301的动力驱动,相较于相关技术中,单一自由度通过单一驱动源301驱动的方案,能够实现至少连个驱动源301对单一活动件的耦合驱动,实现至少两倍的牵引驱动,有利于提高活动件的转动力矩、转动速度等工作性能。
在一些可能的实现方式中,至少两个驱动源301包括电机和主动绳轮,电机和主动绳轮通过传动机构连接,由电机通过传动机构带动主动绳轮旋转。
驱动绳索302缠绕在主动绳轮上,主动绳轮旋转时,能够将驱动绳索302绕紧在其上,从而通过驱动绳索302对第一固定件101、第一活动件102和第二活动件202中的至少之一产生牵引力。
在一些可能的实现方式中,传动机构包括但不限于带传动机构、齿轮传动机构、蜗轮蜗杆传动机构等等。
示例性地,传动机构为带传动,例如包括主动带轮、传动带和被动带轮,其中主动带轮与电机的输出轴连接,被动带轮与主动绳轮连接,传动带连接在主动带轮和被动带轮之间。
再一示例性地,传动机构为带传动,例如还包括张紧机构,张紧机构靠近与传动带,张紧机构能够用于调节传动带的张紧力。
在一些可能的实现方式中,第一工作模式和第二工作模式,例如,可以为根据至少两个驱动源301的旋转方向的不同或相同而形成的不同的工作模式;还可以根据至少两个驱动源301的旋转速度的不同或相同而形成的不同的工作模式;还可以为根据至少两个驱动源301的旋转方向、旋转速度的不同或相同而形成的不同的工作模式。
在一些实施例中,第一工作模式下,至少两个驱动源301同向旋转,第二工作模式下,至少两个驱动源301反向旋转。
从而,本实施例的机械臂,通过控制该至少两个驱动源301的旋转方向,就可以控制第二机械关节20独立运动、以及第一机械关节10带动第二机械关节20耦合运动,结构简单,耦合控制效率高。
在一些实施例中,第一工作模式下,至少两个驱动源301反向旋转,第二工作模式下,至少两个驱动源301同向旋转。
此外,示例性地,第一工作模式和第二工作模式时,至少两个驱动源301的旋转速度、输出扭矩的大小相同。
结合图1所示,在一些实施例中,至少两个驱动源301位于第一固定件101背离第一活动件102的一侧,至少两条驱动绳索302穿过第一固定件101与第一活动件102连接,并穿过第二固定件201与第二活动件202连接。
从而,本实施例的机械臂中,将至少两个驱动源301设置在第一固定件101背离第一活动件102的一侧,驱动绳索302穿过第一固定件101与第一活动件102连接,并穿过第二固定件201与第二活动件202连接,至少两个驱动源301的质量集中在第一固定件101所在侧,第一活动件102、第二固定件201和第二活动件202所在侧的质量较小,有利于提高该侧结构的转动惯量,提高其运行性能。
结合图2所示,在一些实施例中,第一机械关节10为机械肩关节,第二机械关节20为机械肘关节;第一固定件101和第一活动件102沿第一轴线001转动连接;第二固定件201和第二活动件202沿第二轴线002转动连接。
第一工作模式下,至少两个驱动源301能够驱动第二活动件202相对于第二固定件201绕第二轴线002旋转,并使得第一活动件102相对于第一固定件101的位置固定;第二工作模式下,至少两个驱动源301能够驱动第二机械关节20和第一活动件102相对于第一固定件101绕第一轴线001旋转,并使得第二活动件202相对于第二固定件201的位置固定。
在另一些实施例中,第一机械关节10为机械肩关节,第二机械关节20为机械肘关节,在第一工作模式下,至少两个驱动源301能够驱动机械肘关节的第二活动件202相对于机械肘关节的第二固定件201绕第二轴线002旋转,机械肩关节的第一活动件102相对于机械肩关节的第一固定件101的位置固定,实现机械肘关节的独立运动。
在第二工作模式下,至少两个驱动源301能够驱动机械肩关节的第一活动件102带动整个机械肘关节(包括第二固定件201和第二活动件202)相对于机械肩关节的第一固定件101绕第一轴线001旋转,但机械肘关节的第二活动件202相对于机械肘关节的第二固定件201的位置固定,实现机械肘关节和机械肩关节的耦合运动。
示例性的,机械臂可使用一套驱动源301,控制器可通过控制该一套驱动源301运行在不同的工作模式下,就能够分别驱动机械肘关节和机械肩关节。机械肘关节和机械肩关节的自由度均能够被至少两个驱动源301牵引驱动,实现至少两倍的牵引力驱动,有利于提高机械肘关节和机械肩关节的转动力矩、转动速度等工作性能。
在一些可能的实现方式中,机械臂还包括机械腕关节,机械肩关节与机械肘关节连接,机械腕关节与机械肘关节连接,形成完整的机械臂。
在一些可能的实现方式中,至少两个驱动源301位于第二活动件202内,且与第二活动件202连接,随第二活动件202运动。
结合图2所示,在一些实施例中,第一轴线001和第二轴线002垂直相交。从而,第一机械关节10(如机械肩关节)能够带动第二机械关节20(如机械肘关节)旋转,模拟人体的手臂中前臂自旋的运动,第二机械关节20能够在空间内朝向大范围(如0-360°)内旋转运动,丰富了机械臂的动作场景,提高机械臂的适用范围。
结合图2所示,在一些实施例中,第一机械关节10还包括第三固定件103;第一固定件101与第三固定件103转动连接。从而,第一机械关节10包括依次转动连接的第三固定件103、第一固定件101和第一活动件102。
在一些可能的实现方式中,第一固定件101通过肩部驱动组件驱动相对于第二固定件201转动,能够模拟人体的手臂的肩关节的抬升运动。第二固定件201与机器人的躯干部或者其它支撑结构固定连接,起到固定支撑整条机械臂的作用。
结合图2所示,在一些实施例中,第二机械关节20还包括第一连接件203,第二固定件201与第一连接件203转动连接,第一连接件203与第二活动件202转动连接。
从而,本实施例的机械臂中,第二机械关节20中第二固定件201通过第一连接件203与第二活动件202转动连接,能够将第二轴线002设置在距离第二固定件201较远的位置,使得第二活动件202相对于第二固定件201能够旋转的角度得到显著扩大。
此外,本实施例的机械臂降低了机械肘关节的驱动绳索302的布线难度,有利于降低机械肘关节的装配和维护难度。
本实施例的机械臂,至少两个驱动源301包括两个肘部主动绳轮,两个肘部主动绳轮安装在第一活动件102内,两个肘部主动绳轮能够分别驱动两条肘部驱动绳索302,两条肘部驱动绳索302缠绕在两个肘部主动绳轮上也实现了驱动绳索302与第一活动件102的连接。
至少两条驱动绳索302包括两条肘部驱动绳索302,两条肘部驱动绳索302分别连接第一固定件101、第一活动件102、第二活动件202,并且分别与第二活动件202的第一位置和第二位置连接,最终沿相反的缠绕方向与第二活动件202连接。
参考图3,以第一机械关节10是机械肩关节为例,在具有7自由度的机械臂的低惯量差分式肩关节结构中,在肩部采用了一个差分绳驱动机构,这将能够减轻机构的重量将电机模块后置,在某些情况下还可以实现力矩的叠加。
其中,肩关节的第三个自由度采用的是一对大小线轮,采用绳驱动的方式进行传动,进一步提升传动精度,减轻重量。最后,将腕关节和肘关节的驱动模块后置于肩关节大臂模块,从而降低整个机械臂的重量。
基于此,机械臂的结构将易于模块化,从而简化机械臂的制造流程。
参考前述内容,通常采用机械臂的末端来完成操作任务。本申请实施例提供了一种机械臂的控制方法,能够通过机械臂的非末端来完成对三维物体的抛接任务,从而使得三维物体在机械臂上除末端外的任意位置上保持平衡。
以三维物体是瓶子为例,对于具有多个自由度的机械臂而言,本申请实施例提供的机械臂的控制方法,通过机械臂的某个非末端连杆(如机械臂的小臂),来实现抛起三维物体(如瓶子),再接住空中抛起的三维物体。
应当理解的是,本申请实施例提供的控制方法可由前述的机械臂的控制器实现,该控制器可设置在机械臂中,也可设置在机械臂的外部且与机械臂有线或无线连接,来控制机械臂的运动。
图4示出了本申请一个示例性实施例提供的机械臂的控制方法的流程图。该方法可以由机械臂的控制器执行。该方法包括:
步骤510:控制机械臂抛起三维物体;
示例性的,三维物体放置于机械臂上除末端外的任意位置上,机械臂抛起三维物体用于指示三维物体和机械臂之间脱离接触;比如:三维物体和机械臂之间不存在相互作用力,且三维物体和机械臂之间不存在接触点。
图5示出了本申请一个示例性实施例提供的机械臂的示意图。其中,三维物体放置于机械臂上除末端外的任意位置上。参考图5,以三维物体是瓶子为例,瓶子放置在机械臂的小臂上。
示例性的,机械臂抛起三维物体使得三维物体获得了竖直向上的速度。竖直向上方向是重力方向的反方向。进一步的,三维物体的速度在竖直向上的方向上的分量为正值,本实施例对三维物体是否在其他方向上存在速度分量不进行限制。比如:三维物体还可以具有垂直于竖直方向的平面上的任意方向的速度分量。
步骤515:获取第一控制信号;
示例性的,第一控制信号是用于控制机械臂上除末端之外的任意位置接住被抛起的三维物体的控制信号;可选的,第一控制信号控制机械臂参考三维物体的运动轨迹信息进行运动;第一控制信号可以由控制器生成,也可以由其他设备生成并传输至控制器的,本申请对第一控制信号的获取方式不进行限制。示例性的,第一控制信号中承载有控制信息,第一控制信号的传递方式包括但不限于电信号、光信号等的至少之一。在一个示例中,第一控制信号也可以称为第一控制信息;相似的,下文中的第二控制信号也可以称为第二控制信息,文中的第三控制信号、第四控制信号和其他更多控制信号和上文相似,不再一一举例。
步骤520:基于第一控制信号控制机械臂上除末端之外的任意位置接住被抛起的三维物体;
示例性的,机械臂上除末端之外的任意位置和三维物体之间存在非抓握操作(Nonprehensile Manipulation);机械臂上除末端之外的任意位置和三维物体之间的接触不构成对三维物体的形封闭和力封闭中的至少之一。
需要说明的是,本步骤中机械臂在三维物体在空间中运动过程中接住被抛起的三维物体,三维物体是在空间中运动的过程中被机械臂的末端接住的。示例性的,机械臂抛起三维物体之后,三维物体和机械臂之间脱离接触,三维物体按照抛物运动或类抛物运动在空间中运动,本步骤中机械臂接住运动过程中的三维物体。进一步的,在机械臂抓取三维物体之前,三维物体的位置、速度、加速度中的至少之一发生改变,三维物体处于运动状态;进一步的,机械臂接住三维物体时,机械臂和三维物体之间产生接触。
步骤525:获取第二控制信号;
示例性的,第二控制信号用于控制机械臂运动使得三维物体在除末端之外的任意位置上重新保持平衡。和第一控制信号相似的,本申请对第二控制信号的获取方式不进行限制。
步骤530:基于第二控制信号控制机械臂使得三维物体在除末端之外的任意位置上重新保持平衡;
示例性的,三维物体在机械臂上重新保持平衡,本步骤中提供的控制机械臂的目的是保证三维物体在机械臂上处于平衡状态,使得三维物体能够始终在机械臂上保持平衡而不掉落。
示例性的,三维物体保持平衡可包括如下两种中的至少之一:静止平衡状态,处于静止平衡状态下的三维物体在机械臂上静止;动态平衡状态,处于动态平衡状态下的三维物体在机械臂上发生位移或滚动但不掉落。
综上所述,本实施例提供的方法,提供了一种机械臂的新的使用方法,能够先抛起三维物体,再通过机械臂上除末端之外的任意位置接住三维物体,以及使得三维物体重新保持平衡;控制器执行对机械臂的控制,实现三维物体的抛接动作,拓展了机械臂除末端之外的任意位置对三维物体进行抛接并保持平衡的控制方式。
对于本申请提供的机械臂的控制方法,控制机械臂抛起三维物体,再接住被抛起的三维物体的控制方法可以是通过一条机械臂实现的,也可以是通过两条机械臂实现的,具体介绍如下。需要说明的是,下文中通过一条或两条机械臂进行抛起并接住三维物体保持平衡的两个实施例和本申请的其他实施例可以重新进行结合,组成新的实施例,本申请对此不进行限制。
在一个示例中,机械臂的控制方法可以由机械臂的控制器执行。在图4示出的实施例中,步骤510可以实现为如下子步骤1,步骤520可以实现为如下子步骤2,步骤530可以实现为如下子步骤3:
子步骤1:控制第一支臂抛起三维物体;
示例性的,机械臂包括第一支臂;需要说明的是,本实施例对第一支臂的结构不进行限制,在一个示例中,第一支臂可以是如图1所示的具有多个自由度的机械臂。在本实施例中,控制机械臂抛起三维物体,再接住被抛起的三维物体的控制方法是通过第一支臂实现的。
示例性的,第一支臂抛起三维物体用于指示第一支臂和三维物体之间脱离接触。
子步骤2:基于第一控制信号控制第一支臂上除末端之外的任意位置接住被抛起的三维物体;
示例性的,第一支臂上除末端之外的任意位置和三维物体之间存在非抓握操作;第一支臂上除末端之外的任意位置和三维物体之间的接触不构成对三维物体的形封闭和力封闭中的至少之一。
示例性的,机械臂的末端用于指示机械臂远离肩关节的一端。在一些实施例中,机械臂由多个连杆首尾相连构成。比如,连杆1和连杆2构成机械臂,连杆1的第一端为肩关节,连杆1的第二端与连杆2的第一端连接,则末端用于指示连杆2的第二端。在一些实施例中,末端还可以理解为机械臂远离肩关节的一端所连接的机械手,如连杆1和连杆2构成的一条机械臂,连杆2的第一端与连杆1连接,连杆2的第二端为机械手,则末端用于指示连杆2上的机械手。
在本实施例中,第一支臂的末端用于指示机械臂中独立运动的第一支臂中远离肩关节的一端,相似的,第二支臂的末端用于指示机械臂中独立运动的第二支臂中远离肩关节的一端。本实施例中关于机械臂的末端的介绍可以应用于上文中的步骤520,也可以应用于下文中的子步骤5、子步骤6以及其他实施例,本申请不进行限制。
子步骤3:基于第二控制信号控制第一支臂使得三维物体在除末端之外的任意位置上重新达到受力平衡状态;
示例性的,三维物体在第一支臂上重新保持平衡,本步骤中提供的控制第一支臂的目的是保证三维物体在第一支臂上处于平衡状态,使得三维物体能够始终在第一支臂上保持平衡而不掉落。
综上所述,本实施例提供的方法,提供了一种机械臂的新的使用方法,由一个支臂完成;能够控制第一支臂先抛起三维物体,再控制第一支臂通过第一支臂上除末端之外的任意位置接住三维物体,以及使得三维物体重新保持平衡;控制器执行对机械臂的控制,实现三维物体的抛接动作,拓展了机械臂除末端之外的任意位置对三维物体进行抛接并保持平衡的控制方式。
在一个示例中,机械臂的控制方法可以由机械臂的控制器执行。在图4示出的实施例中,步骤510可以实现为如下子步骤4,步骤520可以实现为如下子步骤5,步骤530可以实现为如下子步骤6:
子步骤4:控制第一支臂抛起三维物体;
示例性的,机械臂包括相互独立运动的第一支臂和第二支臂;需要说明的是,本实施例对第一支臂和第二支臂的结构不进行限制,在一个示例中,第一支臂和第二支臂可以是如图1所示的具有多个自由度的机械臂。
图6示出了本申请一个示例性实施例提供的机械臂的示意图。其中子图(a)为机械臂的侧视图,子图(b)为机械臂的正视图。由第一支臂602抛起三维物体612;由第二支臂604上除末端之外的任意位置接住被抛起的三维物体612,以及控制第二支臂604使得三维物体612在除末端之外的任意位置上重新保持平衡。图中以三维物体612为瓶子为例进行了说明,本申请对三维物体的形状特征不进行限制。
子步骤5:基于第一控制信号控制第二支臂上除末端之外的任意位置接住被抛起的三维物体;
示例性的,第二支臂上除末端之外的任意位置和三维物体之间存在非抓握操作;第二支臂上除末端之外的任意位置和三维物体之间的接触不构成对三维物体的形封闭和力封闭中的至少之一。
子步骤6:基于第二控制信号控制第二支臂使得三维物体在除末端之外的任意位置上重新达到受力平衡状态;
示例性的,三维物体在第二支臂上重新保持平衡,本步骤中提供的控制第一支臂的目的是保证三维物体在第二支臂上处于平衡状态,使得三维物体能够始终在第二支臂上保持平衡而不掉落。
综上所述,本实施例提供的方法,提供了一种机械臂的新的使用方法,由两个支臂完成;能够控制第一支臂先抛起三维物体,再控制第二支臂通过第二支臂上除末端之外的任意位置接住三维物体,以及使得三维物体重新保持平衡;控制器执行对机械臂的控制,实现三维物体的抛接动作,拓展了机械臂除末端之外的任意位置对三维物体进行抛接并保持平衡的控制方式。
接下来,对机械臂接住被抛起的三维物体进行介绍。
图7示出了本申请一个示例性实施例提供的机械臂的控制方法的流程图。该方法可以由机械臂的控制器执行。即在图4示出的实施例中,还包括步骤512:
步骤512:获取三维物体的运动轨迹信息;
示例性的,三维物体的运动轨迹信息是三维物体被抛起后爱空中的运动轨迹。示例性的,运动轨迹信息可以包括三维物体的质心的运动轨迹,也可以包括三维物体上或三维物体内的至少一个点的运动轨迹,本实施例对此不进行限制。
示例性的,运动轨迹信息通常是通过机械臂抛起三维物体的信息预测得到的,但也不排除运动轨迹信息是通过测量空中的三维物体的姿态信息得到或预测的。
在一种可选实现方式中,运动轨迹信息是通过机械臂抛起三维物体之前的三维物体的位置特征和受力特征预测得到的。进一步的,三维物体的位置特征包括但不限于机械臂和三维物体脱离接触之前的位置信息。三维物体的受力特征包括但不限于机械臂和三维物体脱离接触之前的受力信息、机械臂的关节角位置、机械臂的关节角速度、机械臂的电流信息、机械臂的力矩。在一个具体的示例中,三维物体的位置特征和受力特征是随着时间变化的序列值,上述信息可以通过向量或矩阵形式表示,序列值中相邻数值之间的时间差值可以是预先确定的,也可以是携带在序列中的,本实施例不进行限制。
示例性的,第一控制信号是根据机械臂的第一实际姿态和三维物体的运动轨迹信息确定的。根据机械臂的第一实际姿态和三维物体的运动轨迹信息,确定机械臂的第一控制信号;
示例性的,运动轨迹信息是三维物体和机械臂之间脱离接触之后的抛物轨迹;机械臂的第一实际姿态用于指示机械臂在当前时间戳的姿态位置信息,比如,通过机械臂的角度、角速度中的至少之一描述姿态信息。第一控制信号是用于控制机械臂上除末端之外的任意位置接住被抛起的三维物体的控制信号。
示例性的,运动轨迹信息用于指示机械臂的运动方式,指示机械臂能够接住被抛起的所述三维物体的姿态信息。示例性的,指示机械臂参考三维物体的运动轨迹信息进行运动,可以在机械臂上除末端之外的任意位置和三维物体保持相对静止并接住三维物体。
在一些实施例中,本申请实施例提供的机械臂的控制方法可由比例-积分-微分(Proportion Integration Differentiation,PID)控制器实现。
其中,PID控制器是在工业控制应用中所使用的反馈回路部件。根据PID控制器的控制原理,可将收集到的数据和对应的参考值(或可理解为期望值、目标值)进行比较,将二者的差值用于计算新的输入值,这个新的输入值的目的是可以让系统的数据达到或者保持在参考值。
示例性的,根据第一控制信号,控制机械臂上除末端之外的任意位置接住被抛起的三维物体;
在确定第一控制信号后,可根据第一控制信号进行机械臂的控制。
进一步的,第一控制信号可以是在一个或多个转轴上的控制信号,第一控制信号通常是通过控制力矩控制机械臂进行运动的。
图8示出了本申请示例性实施例提供的机械臂和三维物体的示意图;示例性的,将机械臂的延长线所在的方向确定为y方向,将和机械臂垂直的水平线所在的方向确定为x方向,以与机械臂垂直的垂直线所在的方向为z方向。第一控制信号可以是绕x方向、y方向或z方向中的至少一个转轴的控制信号。
综上所述,本实施例提供的方法,提供了一种机械臂的新的使用方法,能够先抛起三维物体,再通过机械臂上除末端之外的任意位置接住三维物体,以及使得三维物体重新保持平衡;控制器执行对机械臂的控制,根据机械臂的第一实际姿态和三维物体的运动轨迹信息,确定第一控制信号,完成控制机械臂上除末端之外的任意位置接住被抛起的三维物体,拓展了机械臂除末端之外的任意位置对三维物体进行抛接并保持平衡的控制方式。
在一个示例中,机械臂的控制方法可以由机械臂的控制器执行。在图7示出的实施例中,步骤515可以实现为子步骤11、子步骤12:
子步骤11:根据三维物体的运动轨迹信息,确定机械臂的第一期望姿态;
示例性的,第一期望姿态可以和运动轨迹信息相同,也可以是基于运动轨迹信息确定的。第一期望姿态是根据三维物体的运动轨迹信息确定的。在一个示例中,第一期望姿态是将三维物体的运动轨迹信息根据三维物体的形状特征进行修正后确定的,基于三维物体的形状特征对运动轨迹信息进行修正是为了保证机械臂和三维物体之间接触。具体的,机械臂上除末端之外的任意位置,如图5示出的机械臂的小臂;和三维物体在竖直方向上的下沿边缘接触。示例性的,竖直方向和地球重力方向在同一条直线上,水平面是垂直地球重力的水平方向所在的平面。
子步骤12:根据第一实际姿态和第一期望姿态的差值,确定第一控制信号;
示例性的,第一期望姿态用于指示机械臂对抛起的三维物体进行接取的姿态信息;第一实际姿态和第一期望姿态请参考上文中的介绍。
在一种实现方式中,第一实际姿态包括机械臂绕第一转轴转动的角度和角速度;与之对应的,第一期望姿态包括机械臂绕第一转轴转动的期望角度和期望角速度,第一控制信号包括第一控制力矩;
示例性的,本步骤可以实现为如下子步骤:
根据角度和期望角度的差值、角速度和期望角速度的差值,确定第一控制力矩;
其中,第一控制力矩用于指示机械臂绕第一转轴转动的横滚角方向上施加的力矩,第一转轴是与机械臂垂直的水平线;和/或,第一控制力矩用于指示机械臂绕第一转轴转动的俯仰角方向上施加的力矩,第一转轴是机械臂的延长线。参考上文中的图8,第一转轴是图8中的x方向,和/或,y方向。可选的,机械臂的延长线是机械臂伸直的情况下,机械臂的延伸方向。示例性的,图8示出了机械臂伸直的情况下的延长线,示例性的,延长线是从机械臂的末端指向机械臂之外的一条射线,延长线所在方向和机械臂的小臂质心出发,指向机械臂末端的方向平行。比如,在图8中,延长线和y轴呈平行关系。示例性的,图8中延长线是从机械臂的小臂出发的,示例性延长线可以从机械臂上的任意位置出发。在另一种实现方式中,可以通过在机械臂以外的位置出发的射线,指示延长线方向;本实施例并不限制。
具体的,在一些实施例中,本申请实施例提供的机械臂的控制方法由PID控制器执行,控制信号还根据比例控制参数、微分控制参数、积分控制参数中的至少一个确定。根据PID控制器的控制原理,以第一控制信号是第一控制力矩为例,PID控制器可通过如下公式实现:
其中,τ用于指示第一控制力矩,a用于指示第一实际姿态中绕第一转轴转动的角度,用于指示第一实际姿态中绕第一转轴转动的角速度,/>是a关于时间的一阶导数,aref、用于指示第一期望姿态,具体是第一期望姿态包括机械臂绕第一转轴转动的期望角度和期望角速度;kp、kd、ki分别为比例控制参数、微分控制参数、积分控制参数,ts、tf分别用于指示第一控制力矩的开始和结束时刻。
需要说明的是,第一控制力矩在一种实现方式中,可以是对图8中的x方向和y方向分别进行控制的,比如:第一控制力矩包括两个子力矩,分别对上述两个方向进行控制。第一控制力矩的公式可以实现为如下两个公式,分别表示x方向和y方向上的子力矩。比如:
其中,τ1用于指示在绕y方向转动的横滚角方向施加的控制力矩。a1用于指示绕y方向的角度,用于指示绕y方向的角速度;a1 ref、/>用于指示机械臂绕y方向转动的期望角度和期望角速度。
τ2用于指示在绕x方向转动的横滚角方向施加的控制力矩。a2用于指示绕x方向的角度,用于指示绕x方向的角速度;a2 ref、/>用于指示机械臂绕x方向转动的期望角度和期望角速度。
kp1、kd1、ki1分别为比例控制参数、微分控制参数、积分控制参数;kp2、kd2、ki2分别为比例控制参数、微分控制参数、积分控制参数,ts、tf分别用于指示开始和结束时刻。
综上所述,本实施例提供的方法,提供了一种机械臂的新的使用方法,能够先抛起三维物体,再通过机械臂上除末端之外的任意位置接住三维物体,以及使得三维物体重新保持平衡;控制器执行对机械臂的控制,根据机械臂的第一实际姿态和三维物体的运动轨迹信息,根据PID控制器确定第一控制信号,完成控制机械臂上除末端之外的任意位置接住被抛起的三维物体,拓展了机械臂除末端之外的任意位置对三维物体进行抛接并保持平衡的控制方式。
接下来,对机械臂使得三维物体重新保持平衡进行介绍。
图9示出了本申请一个示例性实施例提供的机械臂的控制方法的流程图。该方法可以由机械臂的控制器执行。即在图4示出的实施例中,还包括步骤522:
步骤522:获取第二实际姿态;
示例性的,第二实际姿态为机械臂和三维物体之间的接触信息;接触信息用于指示机械臂和三维物体之间的相互作用情况,比如力学特征、位置特征等特征中的至少之一。以位置特征为例,第二实际姿态是机械臂和三维物体之间的接触位置、接触位置上的速度、加速度等信息中的至少之一。示例性的,机械臂和三维物体之间存在接触点、接触线、接触面中的至少之一。可选的,本实施例对接触信息的记录方式不进行限制,可以通过机械臂为参照物构建坐标系指示接触信息,也可以以大地为参照物构建自然坐标系;也可以是以替他方式构建坐标系。
示例性的,第二控制信号是根据第二实际姿态和第二期望姿态确定的。根据第二实际姿态和第二期望姿态,确定机械臂的第二控制信号;
示例性的,第二期望姿态用于指示机械臂使得三维物体在机械臂上保持平衡的姿态信息;
在一些实施例中,第二期望姿态为0,则可理解为,期望三维物体处于静止平衡状态,以使得三维物体在机械臂上静止。在另一些实施例中,第二期望姿态不为0,则可理解为,期望三维物体处于动态平衡状态,以使得三维物体在机械臂上发生位移或滚动但不掉落。
在一些实施例中,本申请实施例提供的机械臂的控制方法可由比例-积分-微分(Proportion Integration Differentiation,PID)控制器实现。
示例性的,根据第二控制信号,控制机械臂使得三维物体在除末端之外的任意位置上重新保持平衡;
在确定第二控制信号后,可根据第二控制信号进行机械臂的控制。
进一步的,第二控制信号可以是在一个或多个转轴上的控制信号,第二控制信号通常是通过控制力矩控制机械臂进行运动的。参考图8,第二控制信号可以是绕x方向、y方向或z方向中的至少一个转轴的控制信号。
综上所述,本实施例提供的方法,提供了一种机械臂的新的使用方法,能够先抛起三维物体,再通过机械臂上除末端之外的任意位置接住三维物体,以及使得三维物体重新保持平衡;控制器执行对机械臂的控制,根据机械臂的第二实际姿态和第二期望姿态,确定第二控制信号,完成使得三维物体在除末端之外的任意位置上重新保持平衡,拓展了机械臂除末端之外的任意位置对三维物体进行抛接并保持平衡的控制方式。
在一个示例中,机械臂的控制方法可以由机械臂的控制器执行。在图9示出的实施例中,步骤525可以实现为子步骤21:
子步骤21:根据第二实际姿态和第二期望姿态的差值,确定第二控制信号;
示例性的,第二期望姿态用于指示机械臂使得三维物体在机械臂上保持平衡的姿态信息;第二实际姿态和第二期望姿态请参考上文中的介绍。第二控制信号是用于控制机械臂使得三维物体在除末端之外的任意位置上重新保持平衡的信息。
在一种实现方式中,第二实际姿态包括三维物体的质心在第二转轴所在的方向上的位置信息和三维物体在第二转轴所在的方向上的偏移速度;与之对应的,第二期望姿态包括三维物体的质心在第二转轴所在的方向上的期望位置和三维物体在第二转轴所在的方向上的期望速度,第二控制信号包括第二控制力矩;在一种实现方式中,第二期望姿态是预先设置的,使得三维物体在除末端之外的任意位置上保持平衡的姿态信息。
示例性的,本步骤可以实现为如下子步骤:
根据位置信息和期望位置的差值、偏移速度和期望速度的差值,确定第二控制力矩;
其中,第二控制力矩用于指示机械臂绕第二转轴转动的横滚角方向上施加的力矩,第二转轴是与机械臂垂直的水平线;和/或,第二控制力矩用于指示机械臂绕第二转轴转动的俯仰角方向上施加的力矩,第二转轴是机械臂的延长线。参考上文中的图8,第一转轴是图8中的x方向,和/或,y方向。
具体的,在一些实施例中,本申请实施例提供的机械臂的控制方法由PID控制器执行,控制信号还根据比例控制参数、微分控制参数、积分控制参数中的至少一个确定。根据PID控制器的控制原理,以第二控制信号是第二控制力矩为例,PID控制器可通过如下公式实现:
其中,τ用于指示第二控制力矩,y用于指示第二实际姿态中三维物体的质心在第二转轴所在的方向上的位置信息,用于指示第二实际姿态中三维物体在第二转轴所在的方向上的偏移速度,/>是y关于时间的一阶导数,yref、/>用于指示第二期望姿态,具体是第二期望姿态包括三维物体的质心在第二转轴所在的方向上的期望位置和三维物体在第二转轴所在的方向上的期望速度;kp、kd、ki分别为比例控制参数、微分控制参数、积分控制参数,ts、tf分别用于指示第二控制力矩的开始和结束时刻。
需要说明的是,第二控制力矩在一种实现方式中,可以是对图8中的x方向和y方向分别进行控制的,比如:第二控制力矩包括两个子力矩,分别对上述两个方向进行控制。第二控制力矩的公式可以实现为如下两个公式,分别表示x方向和y方向上的子力矩。比如:
其中,τ1用于指示在绕y方向转动的横滚角方向施加的控制力矩。y1用于指示三维物体的质心在y方向上的位置信息,用于指示三维物体的质心在y方向上的偏移速度;y1 ref、/>用于指示三维物体的质心在y方向上的期望位置和期望速度。
τ2用于指示在绕x方向转动的横滚角方向施加的控制力矩。y2用于指示三维物体的质心在x方向上的位置信息,用于指示三维物体的质心在x方向上的偏移速度;y2 ref、用于指示三维物体的质心在x方向上的期望位置和期望速度。
kp1、kd1、ki1分别为比例控制参数、微分控制参数、积分控制参数;kp2、kd2、ki2分别为比例控制参数、微分控制参数、积分控制参数,ts、tf分别用于指示开始和结束时刻。需要说明的是,本实施例中的,比例控制参数、微分控制参数、积分控制参数、开始和结束时刻,和上文中子步骤11中的公式中为例便于展示,使用了相同的参数符号,但参数的取值是相互独立的,通常具有不同的取值。
在一些实施例中,根据机械臂和三维物体的状态估计,判断得到三维物体在机械臂上处于一个相对稳定的状态。比如,机械臂与三维物体的接触位置靠近机械臂的重心,且三维物体的质心也靠近机械臂的重心。又如,机械臂与三维物体的接触位置的坐标与机械臂的重心的坐标的差值小于第一阈值,且三维物体的质心的坐标与机械臂的重心的坐标小于第二阈值,第一阈值和第二阈值可根据实际需要进行设定,本申请对此不做限定。
此时,若期望三维物体在机械臂上保持平衡,则可使得y1 ref=0;若期望三维物体在机械臂上处于静止平衡状态,则可使得若期望三维物体的质心在y轴所在的方向上尽可能靠近机械臂的重心,则可使得y2 ref=0;若期望三维物体的质心在y轴所在的方向上的移动速度尽可能小,则可使得/>据此求得的第二控制力矩,将使得三维物体在机械臂上处于静止平衡状态,也可理解为,能够使得三维物体与机械臂相对静止。
在另一些实施例中,根据机械臂和三维物体的状态估计,判断得到三维物体在机械臂上处于一个相对不稳定的状态。比如,机械臂与三维物体的接触位置远离机械臂的重心,和/或三维物体的质心也远离机械臂的重心。又如,机械臂与三维物体的接触位置的坐标与机械臂的重心的坐标的差值不小于第一阈值,喝/或三维物体的质心的坐标与机械臂的重心的坐标不小于第二阈值,第一阈值和第二阈值可根据实际需要进行设定,本申请对此不做限定。
此时,可根据状态估计结果来对期望姿态信息进行赋值,该赋值可以是0,也可以是非0的数值。据此求得的第二控制力矩,将使得三维物体在机械臂上处于动态平衡状态,也可理解为,能够使得三维物体在机械臂上移动或滚动但不掉落。
综上所述,本实施例提供的方法,提供了一种机械臂的新的使用方法,能够先抛起三维物体,再通过机械臂上除末端之外的任意位置接住三维物体,以及使得三维物体重新保持平衡;控制器执行对机械臂的控制,根据机械臂的第二实际姿态和第二期望姿态,根据PID控制器确定第二控制信号,完成使得三维物体在除末端之外的任意位置上重新保持平衡,拓展了机械臂除末端之外的任意位置对三维物体进行抛接并保持平衡的控制方式。
以下,通过几个实施例对获取第二实际姿态进行进一步介绍。
在一个示例中,机械臂的控制方法可以由机械臂的控制器执行。在图9示出的实施例中,步骤522可以实现为子步骤25、子步骤26:
子步骤25:基于视觉传感器,获取第二实际姿态;
子步骤26:基于视觉传感器和触觉传感器,获取第二实际姿态;
应当理解的是,子步骤25和子步骤26择一执行,不可同时执行。
示意性的,视觉传感器设置于机械臂上,或者设置于机械臂的外部;触觉传感器铺设于机械臂的外壳上,可作为机械臂的电子皮肤进行使用。比如,在机械臂的关节电机上安装关节电机编码器,用于反馈各个关节转动的角度、角速度以及电流信息,这些信息可用于进行机械臂的状态估计。又如,在机械臂的手指、手掌、某一连杆上铺设触觉传感器,用于获取三维物体的反馈信息。
在一些实施例中,还可以通过接近觉传感器获取第二实际姿态。其中,接近觉传感器用于在两个物体接近时发出信号,当三维物体靠近接触觉传感器时,可据此获取第二实际姿态。
示意性的,为获取第二实际姿态,本申请给出如下三种可选的实现方式:
实现方式一:基于视觉感知的三维物体的全自由度的姿态识别。
以图1至3示出的7自由度的机械臂为例,可通过视觉传感器获取达到三维物体的全六维自由度的姿态识别,以确定三维物体与机械臂的相对位置关系,从而确定第二实际姿态。
在一些实施例中,姿态识别的运算时间在100毫秒左右,即10Hz。
实现方式二:基于视觉传感器进行数据图像处理。
可选的,可应用轻量级的数据图像处理方式,来确定三维物体在动力学系统中的位置。比如,在机械臂上或外部环境中设置摄像头,以获取机械臂和三维物体的图像信息,该图像信息用于展示三维物体放置在机械臂上。随后,对图像信息进行处理,以得到图像处理结果。
示例性的,在获取到图像信息后,根据三维物体与环境中的物体的颜色的不同进行聚类分析,以确定三维物体的几何中心,随后可确定几何中心和质心位置在动力学系统中的位置。基于此,结合机械臂的相关信息,可得到第二实际姿态,如根据三维物体的几何中心确定接触位置的坐标和移动速度,根据三维物体的质心位置确定偏移量和偏移速度。
在一些实施例中,基于该种实现方式中的轻量级的计算,其运算速度较快,运算时间在10毫秒左右,即10Hz。
基于此,可选的,子步骤25可实现为如下:
通过视觉传感器获取图像信息,图像信息用于展示三维物体放置在机械臂上;
根据图像信息处理得到的图像处理结果,确定第二实际姿态。
或者,可选的,子步骤26可实现为如下:
基于视觉传感器,确定三维物体在第一方向上的第一信息;
基于触觉传感器,确定三维物体在第二方向上的第二信息;
对第一信息和第二信息进行融合处理,得到第二实际姿态;
其中,第一方向是与机械臂垂直的水平线所在的方向,第二方向是机械臂的延长线所在的方向。
其中,第一信息的确定可参考前述内容,不再赘述;第二信息的确定以及融合处理将在下文展开描述。
实现方式三:基于视觉传感器和触觉传感器,进行数据的融合处理。
在一些实施例中,第二实际姿态还可基于视觉传感器和触觉传感器获得。其中,视觉传感器的处理可参考前述内容,触觉传感器的处理具体如下。
根据前述内容,在应用轻量级的数据图像处理方式的情况下,可能导致在摄像头的深度方向(即图8示出的y轴所在的方向)上存在较大的误差。基于此,可通过触觉传感器来进行弥补。比如,在机械臂的外壳上铺设触觉传感器,以采集三维物体放置在机械臂上时所对应的触觉信号。基于此,将能够准确得到三维物体在机械臂上的y方向上的具体位置。
可以理解为,触觉传感器给出平衡物y方向上的位置及俯仰角姿态;同时,结合视觉传感器的轻量级图像处理,与先验图片数据进行对比,可确定三维物体在机械臂上的y方向上的具体位置。
在一些实施例中,基于该种实现方式中触觉传感器的运算时间在10毫秒左右,即10Hz。
参考前述内容,给出三种实现方式的对比,如下表:
方案 | 运算周期 | 线性误差 | 角度误差 |
实现方式一 | 100ms | 1-2cm | 5-10度 |
实现方式二 | 10ms | 1cm | 5度 |
实现方式三 | 10ms | 1cm | 5度 |
应当理解的是,采用实现方式一,对于三维物体在机械臂上的位置的判断,将存在1-2厘米的线性误差和5-10度的角度误差,也即获取的第二实际姿态存在一定的线性误差和角度误差。类似的,采用实现方式二和三也存在一定的误差。更进一步的,实现方式三是在实现方式二基础上进行改进后的实现方式,能够克服实现方式二在y轴所在方向上的质心测量不准的缺点,从而使得获取的第二实际姿态的误差更小。
应当理解的是,若采用本申请提供的机械臂的控制方法,可根据实际需要选择合适的实现方式,以获取到第二实际姿态,本申请对此不做限定。
参考前述内容,子步骤26可实现为:基于视觉传感器,确定三维物体在第一方向上的第一信息;基于触觉传感器,确定三维物体在第二方向上的第二信息;对第一信息和第二信息进行融合处理,得到第二实际姿态。
可选的,第二信息的确定可具体实现为:通过触觉传感器,确定三维物体与机械臂的接触点相对于机械臂的位置信息。
应当理解的是,据此确定的位置信息至少包括三维物体与机械臂的接触位置的坐标。其中,触觉传感器获取位置信息的相关内容可参考前述内容,不再赘述。在一些实施例中,触觉传感器铺设于机械臂的外壳上,触觉传感器用户获取三维物体与机械臂的接触位置。
参考前述内容,第一信息是视觉感知的数据,第二信息是触觉感知的数据,可将这两个数据进行融合。可选的,融合处理可采用如下算法中的任意一种或多种:包括卡尔曼滤波(Kalman Filtering,KF)算法,扩展卡尔曼滤波(Extended Kalman Filtering,EKF)算法,粒子滤波(Particle Filter,PF)算法。
应当理解的是,数据的融合处理有多种实现方式,上述内容仅为示意性举例,不对本申请造成限定。同时,随着融合处理方式的更新,在本申请之后所出现的融合处理也应当能够应用在本申请之中,也即融合处理的结果不对本申请所提供的机械臂的控制方法造成限定。
综上所述,本实施例提供的方法,提供了一种机械臂的新的使用方法,能够先抛起三维物体,再通过机械臂上除末端之外的任意位置接住三维物体,以及使得三维物体重新保持平衡;基于视觉传感器,或基于视觉传感器和触觉传感器,确定第二实际姿态,为第二实际姿态提供了多种获取方式;拓展了机械臂除末端之外的任意位置对三维物体进行抛接并保持平衡的控制方式。
图10示出了本申请一个示例性实施例提供的机械臂的控制方法的流程图。该方法可以由机械臂的控制器执行。即在图4示出的实施例中,还包括步骤502、步骤504:
步骤502:获取机械臂的第三期望姿态;
示例性的,第三期望姿态用于指示机械臂使得三维物体和机械臂脱离接触,且获得竖直向上的速度的姿态信息;在一种实现方式中,第三期望信息是机械臂在俯仰方向上向上抬起,使三维物体获得竖直向上的速度。
步骤504:根据机械臂的第三实际姿态和第三期望姿态,确定机械臂的第三控制信号;
示例性的,第三期望姿态用于指示机械臂使得三维物体和机械臂脱离接触,且获得竖直向上的速度的姿态信息;第三控制信号用于控制机械臂从第三实际姿态运动至第三期望姿态。在一些实施例中,本申请实施例提供的机械臂的控制方法可由PID控制器实现。示例性的,第三期望姿态可以实现为姿态序列,比如随着时间变化的时间序列。
在一种实现方式中,第三实际姿态包括机械臂绕转轴转动的角度和角速度;与之对应的,第三期望姿态包括机械臂绕转轴转动的期望角度和期望角速度。参考图8,转轴可以是绕x方向、y方向或z方向中的至少一个转轴。
确定机械臂的第三控制信号的具体方式可以参考上文中子步骤12中的PID控制器的公式。示例性的,第三期望姿态包括在第一时间段内(比如0.1s),将关节角4和关节角5(小臂肘关节)的值从预备姿态的初始值变小到0度,关节角3从1.57弧度运动到1.37弧度,其他关节角度的数值保持不变,确定第三控制信号是根据第三实际姿态和第三期望姿态参考子步骤12中的PID控制器的公式确定的。
示例性的,根据第三控制信号,控制机械臂抛起三维物体;
在确定第三控制信号后,可根据第三控制信号进行机械臂的控制。进一步的,第三控制信号可以是在一个或多个转轴上的控制信号,第三控制信号通常是通过控制力矩控制机械臂进行运动的。需要说明是,即使第三控制信号用于控制机械臂使得三维物体获得竖直向上的速度,但也不排除三维物体获得垂直于竖直方向的平面上的任意方向的速度分量的情况。参考图8,第三控制信号可以是绕x方向、y方向或z方向中的至少一个转轴的控制信号。
在一种可选实现方式中,在步骤512之前,还包括如下步骤:
获取机械臂的第四期望姿态;
根据机械臂的第四实际姿态和第四期望姿态,确定机械臂的第四控制信号;
示例性的,第四期望姿态用于指示机械臂使得三维物体和机械臂保持接触,且机械臂获得竖直向下的速度的姿态信息;示例性的,在控制机械臂使得三维物体和机械臂脱离接触,且获得竖直向上的速度之前,机械臂获得竖直向下的速度,有利于机械臂获得活动空间,便于三维物体提高获得的竖直向上的速度。第四期望姿态包括机械臂绕转轴转动的期望角度和期望角速度。相似的,第四期望姿态可以实现为姿态序列,比如随着时间变化的时间序列。
确定机械臂的第三控制信号的具体方式可以参考上文中子步骤12中的PID控制器的公式。示例性的,第四期望姿态包括在第二时间段内(比如0.2s)内,将关节角4和关节角5(小臂肘关节)的值0度增加到大于预备姿态的初始值的数值(比如0.5弧度),关节角1从初始的角度旋转到预设值(比如0.3弧度),关节角3从1.37弧度运动到1.17弧度,其他关节角度的数值保持不变,确定第三控制信号是根据第三实际姿态和第三期望姿态参考子步骤12中的PID控制器的公式确定的。需要说明的是,上述关节角参考图1中的7自由度机械臂,从肩关节大臂两个活动件之间的夹角为关节角1,直至机械臂末端的两个活动件之间的夹角为关节角7。下文中关于关节角的描述均是基于图1中的7自由度机械臂确定的,在下文中不再赘述。
步骤510可以实现为:根据第三控制信号和第四控制信号,控制机械臂抛起三维物体;
示例性的,第三控制信号用于控制三维物体和机械臂脱离接触,且三维物体获得竖直向上的速度,第四控制信号用于控制三维物体和机械臂保持接触且机械臂获得竖直向下的速度。
示例性的,控制机械臂抛起三维物体,是先通过第四控制信号控制三维物体和机械臂保持接触且机械臂获得竖直向下的速度,再通过第三控制信号控制三维物体和机械臂脱离接触,且三维物体获得竖直向上的速度实现的。
综上所述,本实施例提供的方法,提供了一种机械臂的新的使用方法,能够先抛起三维物体,再通过机械臂上除末端之外的任意位置接住三维物体,以及使得三维物体重新保持平衡;控制器执行对机械臂的控制,根据机械臂的第三实际姿态和第三期望姿态,确定第三控制信号,完成控制机械臂抛起三维物体,拓展了机械臂除末端之外的任意位置对三维物体进行抛接并保持平衡的控制方式。
图11示出了本申请一个示例性实施例提供的机械臂和三维物体的示意图,图11包括子图a至子图f,示出了机械臂抛起三维物体612过程中的六个时间戳。示例性的,子图a中三维物体612放置在机械臂的小臂600a上,机械臂上还包括机械臂的大臂600b,关于机械臂的小臂、大臂的介绍请参考子步骤16b、步骤604和图3中的相关介绍,在这里不再示出。子图b中小臂600a进行俯仰运动,围绕肘关节进行转动,使得机械臂的末端600c高度降低。子图c中机械臂的小臂600a进行俯仰运动,围绕肘关节进行转动,使得机械臂的末端600c高度升高。子图d中机械臂的小臂600a围绕肘关节进行转动,机械臂的大臂600b围绕肩关节进行转动,使得机械臂的末端600c高度继续升高。示例性的,子图d对应三维物体612和机械臂脱离接触之前的时间戳。子图e中三维物体612和机械臂脱离接触,三维物体612被抛起;子图f中三维物体612达到最高点。
图12示出了本申请一个示例性实施例提供的机械臂的控制方法的流程图。该方法可以由机械臂的控制器执行。即在图4示出的实施例中,还包括步骤535、步骤540:
步骤535:获取抓取控制信号;
示例性的,抓取控制信号用于控制机械臂的末端抓取三维物体。可选的,抓取控制信号控制机械臂参考三维物体的运动轨迹信息进行运动;进一步的,可以在机械臂的末端和三维物体保持相对静止并抓取三维物体。和第一控制信号相似的,本申请对抓取控制信号的获取方式不进行限制。
步骤540:基于抓取控制信号控制机械臂的末端抓取被抛起的三维物体,且三维物体在被抓取的状态下达到受力平衡状态;
示例性的,机械臂的末端和三维物体之间存在抓握操作;机械臂的末端为可以张开或握紧的机械手;三维物体达到受力平衡状态,机械臂的末端抓握三维物体,机械臂的末端和三维物体之间存在形封闭和力封闭中的至少之一。进一步的,抓握操作限制了三维物体的运动;通过机械臂的末端和三维物体之间的接触保持机械臂的末端和三维物体之间相对静止,或三维物体和机械臂之间存在相对运动但三维物体不会和机械臂的末端之间脱离接触。
在一种实现方式中,在步骤540之前还包括如下步骤:
获取三维物体的运动轨迹信息;
示例性的,抓取控制信号是根据机械臂的第一实际姿态和三维物体的运动轨迹信息确定的。示例性的,根据机械臂的第一实际姿态和三维物体的运动轨迹信息,确定机械臂的末端的抓取控制信号;根据抓取控制信号,控制机械臂的末端抓取三维物体;
示例性的,运动轨迹信息的获取方式请参考上文中的步骤522,在这里不再赘述,运动轨迹信息是三维物体和机械臂之间脱离接触之后的抛物轨迹。抓取控制信号用于控制机械臂的末端抓取三维物体;机械臂的第一实际姿态用于指示机械臂在当前时间戳的姿态位置信息,比如,通过机械臂的角度、角速度中的至少之一描述姿态信息。
抓取控制信号包括指示机械臂参考三维物体的运动轨迹信息进行运动的信息,和控制机械臂末端对三维物体之间进行抓握操作的运动。示例性的,指示机械臂参考三维物体的运动轨迹信息进行运动的信息可以参考上文中的步骤524。控制机械臂末端对三维物体之间进行抓握操作的运动的控制信号是根据三维物体的形状特征确定的,比如根据三维物体的尺寸、弧度等信息确定机械臂进行抓握操作的控制信号。在一些实施例中,本申请实施例提供的机械臂的控制方法可由比例-积分-微分(Proportion IntegrationDifferentiation,PID)控制器实现。具体的实现方式可以参考上文中的子步骤12。
综上所述,本实施例提供的方法,提供了一种机械臂的新的使用方法,能够先抛起三维物体,再通过机械臂上末端抓取三维物体;控制器执行对机械臂的控制,实现三维物体的抛接动作,拓展了机械臂除末端之外的任意位置对三维物体进行抛接并保持平衡的控制方式。
图13示出了本申请一个示例性实施例提供的机械臂的控制方法的流程图。该方法可以由机械臂的控制器执行。该方法包括:
步骤602:接收第一指令信息;
示例性的,在没有接收第一指令信息的情况下,机械臂持续在预设的指令预备姿态下等待用户指令。第一指令信息可以通过语音、手势、键盘、遥控器等输入设备发送的,第一指令信息可以是通过语音和手势的基于人工智能的聚类分析和模式识别得到的,也可以是通过的指令信号传输和解析得到的。
第一指令信息用于指示机械臂抛起三维物体(如瓶子),再接住空中抛起的三维物体。
步骤604:控制机械臂运动至抛起动作的预备姿态;
控制机械臂运动到小臂抛瓶子的预备姿态,预备姿态预先设定的机械臂姿态。示例性的,预备姿态便于随时开始小臂抛瓶子动作,且对于机械臂是安全稳定的姿态。
具体的,初始姿态可以设置为双机械臂平台的第一支臂伸直指向右前方,同时1关节(大臂肩关节)向下运动、4关节和5关节(小臂肘关节)向上运动,保持小臂的刚体与地面基本平行,同时小臂与地面之间的距离小于肩关节与地面之间的距离。
步骤606:判断瓶子位置是否符合动作要求;
示例性的,在瓶子位置不符合动作要求的情况下,执行步骤608;在瓶子位置符合动作要求的情况下,执行步骤610和步骤612;
示例性的,瓶子位置是否符合动作要求,动作要求是抛起动作的要求,动作要求是根据机械臂和瓶子组成的力学模型进行规划得到的,也可以是预设的。比如:瓶子与地面保持平行、瓶子与机械臂的小臂垂直、瓶子与小臂之间的接触点位置处于小臂的边缘靠近肘关节一侧、瓶子与小臂之间的接触点位置处于小臂靠近肘关节一侧的三分之一位置处。
步骤608:在瓶子位置不符合动作要求的情况下,控制机械臂对瓶子姿态进行调整;
示例性的,在执行步骤608之后执行步骤606,对瓶子位置是否符合动作要求再次进行判断。示例性的,在瓶子位置不符合动作要求的情况下,控制机械臂进行运动,间接调整瓶子姿态,直到瓶子位置符合动作要求。
步骤610:在瓶子位置符合动作要求的情况下,控制第一支臂执行抛起动作;
示例性的,本实施例以双机械臂平台为了进行说明,在另一种实现方式中,本实施例中的全部步骤可以是通过一条机械臂实现的。
示例性的,控制第一支臂执行抛起动作,第一支臂的小臂上放置的瓶子得到向上的速度,与小臂的上表面分离后具有速度,继续进行上抛运动。
在小臂与瓶子接触而相互作用的过程中,即小臂与瓶子脱离接触之前,瓶子可以在小臂上滑动,但1滑动过程中瓶子不会从小臂上表面掉落,也不会因为运动速度过大、运动距离过长而滑出小臂前后向的范围。瓶子在空中抛出后,可以具有延小臂向前方向的速度,以及由第一支臂指向第二支臂方向的速度,也可以具有瓶子自身旋转的速度。
在一种具体的实现方式中,第一支臂执行抛起动作包括:机械臂从预备姿态开始,在第一时间段内(比如0.1s),将关节角4和关节角5(小臂肘关节)的值从预备姿态的初始值变小到0度,关节角3从1.57弧度运动到1.37弧度,其他关节角度的数值保持不变;在第二时间段内(比如0.2s)内,将关节角4和关节角5(小臂肘关节)的值0度增加到大于预备姿态的初始值的数值(比如0.5弧度),关节角1从初始的角度旋转到预设值(比如0.3弧度),关节角3从1.37弧度运动到1.17弧度,其他关节角度的数值保持不变。
步骤612:在瓶子位置符合动作要求的情况下,控制第二支臂运动至接取运动的预备姿态;
示例性的,预备姿态便于第二支臂随时开始接取瓶子,且对于第二支臂是安全稳定的姿态。
步骤614:对瓶子在空中的轨迹信息进行预测;
示例性的,在瓶子与小臂的接触分离之后,应用小臂和瓶子脱离之前的触觉位置、力大小的时序信息,机械臂的关节角位置、速度和电流信息,视觉传感信息,预测瓶子抛出之后在世界坐标系下或相对第一支臂的质心坐标系的轨迹信息。
步骤616:控制第二支臂根据预测的轨迹信息进行运动;
示例性的,根据瓶子在空中的轨迹信息,第二支臂会朝着瓶子的运动位置和方向运动,在接近瓶子的位置附近和瓶子保持类似速度的运动。根据瓶子在空中的轨迹信息规划出了第二支臂的位置和姿态的时间序列。应用时间序列,控制第二支臂进行运动。
步骤618:控制第二支臂关闭末端的机械手抓握瓶子;
在一种实现方式中,通过第二支臂末端的机械手抓握瓶子,机械手按照瓶子在空中的轨迹信息得到的时间序列,在瓶子接近手掌时,控制机械手上的各关节角的位置,控制机械手从打开到闭合的姿态,完成对飞行瓶子的抓取。
步骤620:控制第二支臂上除末端之外的任意位置接住被抛起的三维物体,以及使得三维物体在除末端之外的任意位置上重新保持平衡;
第二支臂上除末端之外的任意位置和三维物体之间存在非抓握操作;第二支臂上除末端之外的任意位置和三维物体之间的接触不构成对三维物体的形封闭和力封闭中的至少之一。三维物体在第二支臂上重新保持平衡,本步骤中提供的控制第一支臂的目的是保证三维物体在第二支臂上处于平衡状态,使得三维物体能够始终在第二支臂上保持平衡而不掉落。
综上所述,本实施例提供的方法,提供了一种机械臂的新的使用方法,能够先抛起三维物体,再通过机械臂上除末端之外的任意位置接住三维物体,以及使得三维物体重新保持平衡;控制器执行对机械臂的控制,实现三维物体的抛接动作,拓展了机械臂除末端之外的任意位置对三维物体进行抛接并保持平衡的控制方式。
图14示出了本申请一个示例性实施例提供的机械臂的控制方法的流程图。该方法可以由机械臂的控制器执行。该方法包括:
步骤632:接收第二指令信息;
示例性的,在没有接收第二指令信息的情况下,机械臂持续在预设的指令预备姿态下等待用户指令。第二指令信息可以通过语音、手势、键盘、遥控器等输入设备发送的,第二指令信息可以是通过语音和手势的基于人工智能的聚类分析和模式识别得到的,也可以是通过的指令信号传输和解析得到的。第二指令信息用于指示机械臂平衡机械臂上除末端之外的任意位置上放置的三维物体(如瓶子)。
步骤634:控制机械臂运动至平衡动作的预备姿态;
控制机械臂运动到小臂抛瓶子的预备姿态,预备姿态预先设定的机械臂姿态。示例性的,预备姿态便于随时开始小臂平衡瓶子的动作,且对于机械臂是安全稳定的姿态。
具体的,初始姿态可以设置为双机械臂平台的第一支臂伸直指向右前方。
步骤636:判断触觉信息是否正常;
示例性的,在判断触觉信息不正常的情况下,重复执行本步骤,直至获取正常的触觉信息。触觉信息不正常的情况包括没有接受到触觉信号,或者接受到的触觉信号异常。
步骤638:在判断触觉信息正常的情况下,判断视觉信息是否正常;
示例性的,在判断视觉信息不正常的情况下,重复执行本步骤,直至获取正常的视觉信息。视觉信息不正常的情况包括没有接受到视觉信号,或者接受到的视觉信号异常。
步骤640:在判断视觉信息正常的情况下,判断瓶子位置是否符合动作要求;
瓶子位置是基于接收到的视觉信息和触觉信息进行融合确定的,用于指示瓶子在机械臂上的位置姿态。
步骤642:在瓶子位置不符合动作要求的情况下,控制机械臂对瓶子姿态进行调整;
示例性的,在瓶子位置不符合动作要求的情况下,控制机械臂进行运动,间接调整瓶子姿态,直到瓶子位置符合动作要求。
步骤644:在瓶子位置符合动作要求的情况下,控制第一支臂执行平衡动作;
示例性的,控制第一支臂执行平衡动作包括:期望三维物体处于静止平衡状态,以使得三维物体在机械臂上静止。期望三维物体处于动态平衡状态,以使得三维物体在机械臂上发生位移或滚动但不掉落。
进一步的,机械臂还可以用于执行的懂做包括但不限于如下至少之一:使用机械臂末端的机械手的抓、抛、接动作,使用机械臂的末端工具进行插孔、装卸螺丝、安装装配动作,使用机械臂末端的机械手开门、关门、抓取桌面和工作空间内的物体等。
综上所述,本申请实施例提供了一种机械臂的新的使用方法,能够使得三维物体在机械臂上除末端外的任意位置上保持平衡而不掉落。其中,根据机械臂和三维物体构建的动力学系统的姿态信息和期望姿态信息,能够确定机械臂的控制信号,从而实现对机械臂的的控制。
本领域普通技术人员可以理解,上述实施例可以独立实施,也可以将上述实施例进行自由组合,组合出新的实施例实现本申请的机械臂的控制方法。
图15示出了本申请一个示例性实施例提供的机械臂的控制装置的框图。所述机械臂上除末端外的任意位置上放置有三维物体,该装置包括:
控制模块810,用于控制所述机械臂抛起所述三维物体;
获取模块820,用于获取第一控制信号;
所述控制模块810,还用于基于所述第一控制信号控制所述机械臂上除所述末端之外的任意位置接住被抛起的所述三维物体;
所述获取模块820,还用于获取第二控制信号;
所述控制模块810,还用于基于所述第二控制信号控制所述机械臂使得所述三维物体在所述除所述末端之外的任意位置上重新达到受力平衡状态。
在本申请的一个可选设计中,所述机械臂包括第一支臂;所述控制模块810还用于:
控制所述第一支臂抛起所述三维物体,所述第一支臂和所述三维物体之间脱离接触;
基于所述第一控制信号控制所述第一支臂上除所述末端之外的任意位置接住被抛起的所述三维物体;
基于所述第二控制信号控制所述第一支臂使得所述三维物体在所述除所述末端之外的任意位置上重新达到受力平衡状态。
在本申请的一个可选设计中,所述机械臂包括相互独立运动的第一支臂和第二支臂;所述控制模块810还用于:
控制所述第一支臂抛起所述三维物体,所述第一支臂和所述三维物体之间脱离接触;
基于所述第一控制信号控制所述第二支臂上除所述末端之外的任意位置接住被抛起的所述三维物体;
基于所述第二控制信号控制所述第二支臂使得所述三维物体在所述除所述末端之外的任意位置上重新达到受力平衡状态。
在本申请的一个可选设计中,所述获取模块820还用于:
获取所述三维物体的运动轨迹信息,所述运动轨迹信息是所述三维物体和所述机械臂之间脱离接触之后的抛物轨迹;其中,所述第一控制信号是根据所述机械臂的第一实际姿态和所述三维物体的运动轨迹信息确定的。
在本申请的一个可选设计中,所述获取模块820还用于:
根据所述三维物体的运动轨迹信息,确定所述机械臂的第一期望姿态,所述第一期望姿态用于指示所述机械臂对抛起的所述三维物体进行接取的姿态信息;
根据所述第一实际姿态和所述第一期望姿态的差值,确定所述第一控制信号。
在本申请的一个可选设计中,所述第一实际姿态包括所述机械臂绕第一转轴转动的角度和角速度,所述第一期望姿态包括所述机械臂绕所述第一转轴转动的期望角度和期望角速度,所述第一控制信号包括第一控制力矩;所述获取模块820还用于:
根据所述角度和所述期望角度的差值、所述角速度和所述期望角速度的差值,确定所述第一控制力矩;其中,所述第一控制力矩用于指示所述机械臂绕所述第一转轴转动的横滚角方向上施加的力矩,所述第一转轴是与所述机械臂垂直的水平线;和/或,所述第一控制力矩用于指示所述机械臂绕所述第一转轴转动的俯仰角方向上施加的力矩,所述第一转轴是所述机械臂的延长线。
在本申请的一个可选设计中,所述获取模块820还用于:
获取第二实际姿态,所述第二实际姿态为所述机械臂和所述三维物体之间的接触信息;
其中,所述第二控制信号是根据所述第二实际姿态和第二期望姿态确定的,所述第二期望姿态用于指示所述机械臂使得所述三维物体在所述机械臂上保持平衡的姿态信息。
在本申请的一个可选设计中,所述获取模块820还用于:
根据所述第二实际姿态和所述第二期望姿态的差值,确定所述第二控制信号。
在本申请的一个可选设计中,所述第二实际姿态包括所述三维物体的质心在第二转轴所在的方向上的位置信息和所述三维物体在所述第二转轴所在的方向上的偏移速度,所述第二期望姿态包括所述三维物体的质心在所述第二转轴所在的方向上的期望位置和所述三维物体在所述第二转轴所在的方向上的期望速度,所述第二控制信号包括第二控制力矩;所述获取模块820还用于:
根据所述位置信息和所述期望位置的差值、所述偏移速度和所述期望速度的差值,确定所述第二控制力矩;其中,所述第二控制力矩用于指示所述机械臂绕所述第二转轴转动的横滚角方向上施加的力矩,所述第二转轴是与所述机械臂垂直的水平线;和/或,所述第二控制力矩用于指示所述机械臂绕所述第二转轴转动的俯仰角方向上施加的力矩,所述第二转轴是所述机械臂的延长线。
在本申请的一个可选设计中,所述获取模块820还用于:
基于视觉传感器,获取所述第二实际姿态;
或者,基于所述视觉传感器和触觉传感器,获取所述第二实际姿态。
在本申请的一个可选设计中,所述获取模块820还用于:
通过所述视觉传感器获取图像,所述图像用于展示所述三维物体放置在所述机械臂上;
根据所述图像处理得到的图像处理结果,确定所述第二实际姿态。
在本申请的一个可选设计中,所述获取模块820还用于:
基于所述视觉传感器,确定所述三维物体在第一方向上的第一信息;
基于所述触觉传感器,确定所述三维物体在第二方向上的第二信息;
对所述第一信息和所述第二信息进行融合处理,得到所述第二实际姿态;
其中,所述第一方向是与所述机械臂垂直的水平线所在的方向,所述第二方向是所述机械臂的延长线所在的方向。
在本申请的一个可选设计中,所述获取模块820还用于:
获取所述机械臂的第三期望姿态,所述第三期望姿态用于指示所述机械臂使得所述三维物体和所述机械臂脱离接触,且获得竖直向上的速度的姿态信息;
根据所述机械臂的第三实际姿态和所述第三期望姿态,确定所述机械臂的第三控制信号;其中,控制所述机械臂抛起所述三维物体是基于所述第三控制信号控制的。
在本申请的一个可选设计中,所述获取模块820还用于:
获取所述机械臂的第四期望姿态,所述第四期望姿态用于指示所述机械臂使得所述三维物体和所述机械臂保持接触,且所述机械臂获得竖直向下的速度的姿态信息;
根据所述机械臂的第四实际姿态和所述第四期望姿态,确定所述机械臂的第四控制信号;
所述控制模块810还用于:
根据所述第三控制信号和所述第四控制信号,控制所述机械臂抛起所述三维物体;
其中,所述第三控制信号用于控制所述三维物体和所述机械臂脱离接触,且所述三维物体获得竖直向上的速度,所述第四控制信号用于控制所述三维物体和所述机械臂保持接触且所述机械臂获得竖直向下的速度。
在本申请的一个可选设计中,所述获取模块820,还用于获取抓取控制信号;
所述控制模块810,还用于基于所述抓取控制信号控制所述机械臂的末端抓取被抛起的所述三维物体,且所述三维物体在被抓取的状态下达到受力平衡状态。
在本申请的一个可选设计中,所述获取模块820还用于:
获取所述三维物体的运动轨迹信息,所述运动轨迹信息是所述三维物体和所述机械臂之间脱离接触之后的抛物轨迹;其中,所述抓取控制信号是根据所述机械臂的第一实际姿态和所述三维物体的运动轨迹信息确定的。
需要说明的一点是,上述实施例提供的装置在实现其功能时,仅以上述各个功能模块的划分进行举例说明,实际应用中,可以根据实际需要而将上述功能分配由不同的功能模块完成,即将设备的内容结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述;各个模块执行操作取得的技术效果与有关该方法的实施例中的技术效果相同,此处将不做详细阐述说明。
图16示出了本申请实施例提供的一种机械臂的结构示意性框图。本实施例中的机械臂可包括:一个或多个控制器1501;一个或多个传感器1502,一个或多个电机1503和存储器1504。上述控制器1501、传感器1502、电机1503和存储器1504通过总线1505连接。存储器1504用于存储计算机程序,计算机程序包括程序指令,控制器1501用于执行存储器1504存储的程序指令。
存储器1504可以包括易失性存储器(Volatile Memory),如随机存取存储器(Random-Access Memory,RAM);存储器1504也可以包括非易失性存储器(Non-VolatileMemory),如快闪存储器(Flash Memory),固态硬盘(Solid-State Drive,SSD)等;存储器1504还可以包括上述种类的存储器的组合。
控制器1501可以是中央控制器(Central Processing Unit,CPU)。控制器1501还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(Application-SpecificIntegrated Circuit,ASIC),可编程逻辑器件(Programmable Logic Device,PLD)等。该PLD可以是现场可编程逻辑门阵列(Field-Programmable Gate Array,FPGA),通用阵列逻辑(Generic Array Logic,GAL)等。控制器1501也可以为上述结构的组合。
本申请实施例中,存储器1504用于存储计算机程序,计算机程序包括程序指令,控制器1501用于执行存储器1504存储的程序指令,用来实现前述机械臂的控制方法的步骤。
在一个实施例中,控制器1501被配置调用程序指令,用于执行:
控制所述机械臂抛起所述三维物体;
控制所述机械臂上除所述末端之外的任意位置接住被抛起的所述三维物体;
控制所述机械臂使得所述三维物体在所述除所述末端之外的任意位置上重新保持平衡。
示意性的,本申请的实施例还提供了一种机器人,该机器人包括如上所述的机械臂,机械臂可用于实现上述各方法实施例提供的机械臂的控制方法。其中,机械臂的结构可参考上文的描述,机械臂的控制方法可参考前述多个方法实施例,不再赘述。
本申请的实施例还提供了一种机械臂,该机械臂包括控制器和存储器,该存储器中存储有至少一条程序代码,至少一条程序代码由控制器加载并执行以实现上述各方法实施例提供的机械臂的控制方法。
本申请的实施例还提供了一种计算机设备,该计算机设备包括处理器和存储器,存储器中存储有至少一段程序,至少一段程序由处理器加载并执行以实现上述各方法实施例提供的机械臂的控制方法。
本申请的实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序用于被处理器执行,以实现上述各方法实施例提供的机械臂的控制方法。可选地,该计算机可读存储介质可以包括:只读存储器(ROM,Read OnlyMemory)、随机存取记忆体(RAM,Random Access Memory)、固态硬盘(SSD,Solid StateDrives)或光盘等。其中,随机存取记忆体可以包括电阻式随机存取记忆体(ReRAM,Resistance Random Access Memory)和动态随机存取存储器(DRAM,Dynamic RandomAccess Memory)。上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
本申请的实施例还提供了一种芯片,芯片包括可编程逻辑电路或程序,芯片用于实现上述各方法实施例提供的机械臂的控制方法。
本申请的实施例还提供了一种计算机程序产品,该计算机程序产品包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述实施例中任一所述的机械臂的控制方法。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本申请实施例所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (20)
1.一种机械臂的控制方法,所述机械臂上除末端外的任意位置上放置有三维物体,所述方法由所述机械臂的控制器执行,其特征在于,所述方法包括:
控制所述机械臂抛起所述三维物体;
获取第一控制信号;
基于所述第一控制信号控制所述机械臂上除所述末端之外的任意位置接住被抛起的所述三维物体;
获取第二控制信号;
基于所述第二控制信号控制所述机械臂使得所述三维物体在所述除所述末端之外的任意位置上重新达到受力平衡状态。
2.根据权利要求1所述的方法,其特征在于,所述机械臂包括第一支臂;
所述控制所述机械臂抛起所述三维物体,包括:
控制所述第一支臂抛起所述三维物体,所述第一支臂和所述三维物体之间脱离接触;
所述基于所述第一控制信号控制所述机械臂上除所述末端之外的任意位置接住被抛起的所述三维物体,包括:
基于所述第一控制信号控制所述第一支臂上除所述末端之外的任意位置接住被抛起的所述三维物体;
所述基于所述第二控制信号控制所述机械臂使得所述三维物体在所述除所述末端之外的任意位置上重新达到受力平衡状态,包括:
基于所述第二控制信号控制所述第一支臂使得所述三维物体在所述除所述末端之外的任意位置上重新达到受力平衡状态。
3.根据权利要求1所述的方法,其特征在于,所述机械臂包括相互独立运动的第一支臂和第二支臂;
所述控制所述机械臂抛起所述三维物体,包括:
控制所述第一支臂抛起所述三维物体,所述第一支臂和所述三维物体之间脱离接触;
所述基于所述第一控制信号控制所述机械臂上除所述末端之外的任意位置接住被抛起的所述三维物体,包括:
基于所述第一控制信号控制所述第二支臂上除所述末端之外的任意位置接住被抛起的所述三维物体;
所述基于所述第二控制信号控制所述机械臂使得所述三维物体在所述除所述末端之外的任意位置上重新达到受力平衡状态,包括:
基于所述第二控制信号控制所述第二支臂使得所述三维物体在所述除所述末端之外的任意位置上重新达到受力平衡状态。
4.根据权利要求1至3任一所述的方法,其特征在于,所述方法还包括:
获取所述三维物体的运动轨迹信息,所述运动轨迹信息是所述三维物体和所述机械臂之间脱离接触之后的抛物轨迹;
其中,所述第一控制信号是根据所述机械臂的第一实际姿态和所述三维物体的运动轨迹信息确定的。
5.根据权利要求4所述的方法,其特征在于,所述获取第一控制信号,包括:
根据所述三维物体的运动轨迹信息,确定所述机械臂的第一期望姿态,所述第一期望姿态用于指示所述机械臂对抛起的所述三维物体进行接取的姿态信息;
根据所述第一实际姿态和所述第一期望姿态的差值,确定所述第一控制信号。
6.根据权利要求5所述的方法,其特征在于,所述第一实际姿态包括所述机械臂绕第一转轴转动的角度和角速度,所述第一期望姿态包括所述机械臂绕所述第一转轴转动的期望角度和期望角速度,所述第一控制信号包括第一控制力矩;
所述根据所述第一实际姿态和所述第一期望姿态的差值,确定所述第一控制信号,包括:
根据所述角度和所述期望角度的差值、所述角速度和所述期望角速度的差值,确定所述第一控制力矩;
其中,所述第一控制力矩用于指示所述机械臂绕所述第一转轴转动的横滚角方向上施加的力矩,所述第一转轴是与所述机械臂垂直的水平线;和/或,所述第一控制力矩用于指示所述机械臂绕所述第一转轴转动的俯仰角方向上施加的力矩,所述第一转轴是所述机械臂的延长线。
7.根据权利要求1至6任一所述的方法,其特征在于,所述方法还包括:
获取第二实际姿态,所述第二实际姿态为所述机械臂和所述三维物体之间的接触信息;
其中,所述第二控制信号是根据所述第二实际姿态和第二期望姿态确定的,所述第二期望姿态用于指示所述机械臂使得所述三维物体在所述机械臂上保持平衡的姿态信息。
8.根据权利要求7所述的方法,其特征在于,所述获取第二控制信号,包括:
根据所述第二实际姿态和所述第二期望姿态的差值,确定所述第二控制信号。
9.根据权利要求8所述的方法,其特征在于,所述第二实际姿态包括所述三维物体的质心在第二转轴所在的方向上的位置信息和所述三维物体在所述第二转轴所在的方向上的偏移速度,所述第二期望姿态包括所述三维物体的质心在所述第二转轴所在的方向上的期望位置和所述三维物体在所述第二转轴所在的方向上的期望速度,所述第二控制信号包括第二控制力矩;
所述根据所述第二实际姿态和所述第二期望姿态的差值,确定所述第二控制信号,包括:
根据所述位置信息和所述期望位置的差值、所述偏移速度和所述期望速度的差值,确定所述第二控制力矩;
其中,所述第二控制力矩用于指示所述机械臂绕所述第二转轴转动的横滚角方向上施加的力矩,所述第二转轴是与所述机械臂垂直的水平线;和/或,所述第二控制力矩用于指示所述机械臂绕所述第二转轴转动的俯仰角方向上施加的力矩,所述第二转轴是所述机械臂的延长线。
10.根据权利要求7所述的方法,其特征在于,所述获取第二实际姿态,包括:
基于视觉传感器,获取所述第二实际姿态;
或者,基于所述视觉传感器和触觉传感器,获取所述第二实际姿态。
11.根据权利要求10所述的方法,其特征在于,所述基于视觉传感器,获取所述第二实际姿态,包括:
通过所述视觉传感器获取图像,所述图像用于展示所述三维物体放置在所述机械臂上;
根据所述图像处理得到的图像处理结果,确定所述第二实际姿态。
12.根据权利要求10所述的方法,其特征在于,所述基于所述视觉传感器和触觉传感器,获取所述第二实际姿态,包括:
基于所述视觉传感器,确定所述三维物体在第一方向上的第一信息;
基于所述触觉传感器,确定所述三维物体在第二方向上的第二信息;
对所述第一信息和所述第二信息进行融合处理,得到所述第二实际姿态;
其中,所述第一方向是与所述机械臂垂直的水平线所在的方向,所述第二方向是所述机械臂的延长线所在的方向。
13.根据权利要求1至12任一所述的方法,其特征在于,所述方法还包括:
获取所述机械臂的第三期望姿态,所述第三期望姿态用于指示所述机械臂使得所述三维物体和所述机械臂脱离接触,且获得竖直向上的速度的姿态信息;
根据所述机械臂的第三实际姿态和所述第三期望姿态,确定所述机械臂的第三控制信号;
其中,控制所述机械臂抛起所述三维物体是基于所述第三控制信号控制的。
14.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取抓取控制信号;
基于所述抓取控制信号控制所述机械臂的末端抓取被抛起的所述三维物体,且所述三维物体在被抓取的状态下达到受力平衡状态。
15.根据权利要求14所述的方法,其特征在于,所述方法还包括:
获取所述三维物体的运动轨迹信息,所述运动轨迹信息是所述三维物体和所述机械臂之间脱离接触之后的抛物轨迹;
其中,所述抓取控制信号是根据所述机械臂的第一实际姿态和所述三维物体的运动轨迹信息确定的。
16.一种机械臂的控制装置,所述机械臂上除末端外的任意位置上放置有三维物体,其特征在于,所述装置包括:
控制模块,用于控制所述机械臂抛起所述三维物体;
获取模块,用于获取第一控制信号;
所述控制模块,还用于基于所述第一控制信号控制所述机械臂上除所述末端之外的任意位置接住被抛起的所述三维物体;
所述获取模块,还用于获取第二控制信号;
所述控制模块,还用于基于所述第二控制信号控制所述机械臂使得所述三维物体在所述除所述末端之外的任意位置上重新达到受力平衡状态。
17.一种机械臂,其特征在于,所述机械臂包括存储器和控制器;
所述存储器中存储有至少一条程序代码,所述程序代码由所述控制器加载并执行以实现如权利要求1至15中任一项所述的机械臂的控制方法。
18.一种计算机可读存储介质,其特征在于,所述存储介质中存储有计算机程序,所述计算机程序用于被处理器执行,以实现如权利要求1至15中任一项所述的机械臂的控制方法。
19.一种芯片,其特征在于,所述芯片包括可编程逻辑电路和/或程序指令,当安装有所述芯片的电子设备运行时,用于实现如权利要求1至15中任一项所述的机械臂的控制方法。
20.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机指令,所述计算机指令存储在计算机可读存储介质中,处理器从所述计算机可读存储介质读取并执行所述计算机指令,以实现如权利要求1至15中任一项所述的机械臂的控制方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310360170.XA CN116945153A (zh) | 2023-03-31 | 2023-03-31 | 机械臂的控制方法、装置、设备及存储介质 |
PCT/CN2023/130371 WO2024198365A1 (zh) | 2023-03-31 | 2023-11-08 | 机械臂的控制方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310360170.XA CN116945153A (zh) | 2023-03-31 | 2023-03-31 | 机械臂的控制方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116945153A true CN116945153A (zh) | 2023-10-27 |
Family
ID=88459196
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310360170.XA Pending CN116945153A (zh) | 2023-03-31 | 2023-03-31 | 机械臂的控制方法、装置、设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN116945153A (zh) |
WO (1) | WO2024198365A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024198365A1 (zh) * | 2023-03-31 | 2024-10-03 | 腾讯科技(深圳)有限公司 | 机械臂的控制方法、装置、设备及存储介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3602178A1 (de) * | 1986-01-23 | 1987-07-30 | Eberhard Dipl Ing Zurmuehlen | Trainingsgeraet |
CN206154324U (zh) * | 2016-10-12 | 2017-05-10 | 杭州电子科技大学 | 一种基于机器视觉的三轴抛接球机器人 |
CN107890678A (zh) * | 2017-12-15 | 2018-04-10 | 长沙志唯电子科技有限公司 | 一种抛接球娱乐机器人 |
CN114797047B (zh) * | 2021-01-19 | 2024-02-27 | 陈贺龄 | 陪练机器人、控制方法及控制系统 |
CN113177310B (zh) * | 2021-04-25 | 2022-05-27 | 哈尔滨工业大学(深圳) | 一种基于人体舒适度的机械臂抱人方法 |
CN116945153A (zh) * | 2023-03-31 | 2023-10-27 | 腾讯科技(深圳)有限公司 | 机械臂的控制方法、装置、设备及存储介质 |
-
2023
- 2023-03-31 CN CN202310360170.XA patent/CN116945153A/zh active Pending
- 2023-11-08 WO PCT/CN2023/130371 patent/WO2024198365A1/zh unknown
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024198365A1 (zh) * | 2023-03-31 | 2024-10-03 | 腾讯科技(深圳)有限公司 | 机械臂的控制方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2024198365A1 (zh) | 2024-10-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107416195B (zh) | 一种空中操作多旋翼飞行器的仿鹰抓取系统 | |
CN108495738B (zh) | 用于提供动态机器人控制系统的系统和方法 | |
Korpela et al. | MM-UAV: Mobile manipulating unmanned aerial vehicle | |
CN102814814B (zh) | 一种双臂机器人基于Kinect的人机交互方法 | |
CN114728412A (zh) | 使用视觉数据的机器人的运动路径的优化 | |
Paul et al. | A multirotor platform employing a three-axis vertical articulated robotic arm for aerial manipulation tasks | |
CN110605721A (zh) | 一种基于末端六维力传感器的机械臂拖动示教方法 | |
CN108422421B (zh) | 骨骼肌肉式机器人的肌肉控制和装配方法 | |
Patidar et al. | Survey of robotic arm and parameters | |
CN104589304A (zh) | 机器人控制装置以及机器人 | |
JP2018024082A (ja) | 多軸運動制御デバイス、ロボットアームシステム、ロボットアームシステムの動きを制御する方法及び多軸運動駆動デバイスの動きを制御するための方法 | |
CN110977990A (zh) | 一种基于末端六维力传感器的机械臂拖动示教方法 | |
CN107414823A (zh) | 根据力矩调整平衡的方法及装置 | |
CN116945153A (zh) | 机械臂的控制方法、装置、设备及存储介质 | |
CN106003032B (zh) | 一种可在空间站舱内稳定攀爬的机器人宇航员 | |
Li et al. | Neural learning and kalman filtering enhanced teaching by demonstration for a baxter robot | |
WO2024198364A1 (zh) | 机械臂的控制方法、装置、设备及存储介质 | |
Huang et al. | Virtual interaction and manipulation control of a hexacopter through hand gesture recognition from a data glove | |
US20230305563A1 (en) | Method for building controller for robot, method, device for controlling motion of robot, and robot | |
CN115712309B (zh) | 一种主动式变结构环形四旋翼无人机的控制方法及装置 | |
Kitchatr et al. | Visual servo control for ball-on-plate balancing: Effect of PID controller gain on tracking performance | |
US20230035296A1 (en) | Method of suppressing vibrations of a robot arm with external objects | |
CN114714358A (zh) | 基于手势协议遥操作机械臂方法及系统 | |
Meng et al. | Force-sensorless contact force control of an aerial manipulator system | |
WO2024197908A1 (zh) | 机械臂的控制方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40099453 Country of ref document: HK |