CN111687844B - 一种使用机械臂抬起最少次数完成不可重复覆盖任务的方法 - Google Patents

一种使用机械臂抬起最少次数完成不可重复覆盖任务的方法 Download PDF

Info

Publication number
CN111687844B
CN111687844B CN202010568694.4A CN202010568694A CN111687844B CN 111687844 B CN111687844 B CN 111687844B CN 202010568694 A CN202010568694 A CN 202010568694A CN 111687844 B CN111687844 B CN 111687844B
Authority
CN
China
Prior art keywords
mechanical arm
cell
covered
cells
covering
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
Application number
CN202010568694.4A
Other languages
English (en)
Other versions
CN111687844A (zh
Inventor
王越
杨桐
熊蓉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University ZJU
Original Assignee
Zhejiang University ZJU
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhejiang University ZJU filed Critical Zhejiang University ZJU
Priority to CN202010568694.4A priority Critical patent/CN111687844B/zh
Publication of CN111687844A publication Critical patent/CN111687844A/zh
Application granted granted Critical
Publication of CN111687844B publication Critical patent/CN111687844B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1612Programme controls characterised by the hand, wrist, grip control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1633Programme controls characterised by the control loop compliant, force, torque control, e.g. combined with position control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning

Abstract

本发明公开了一种使用机械臂抬起最少次数完成不可重复覆盖任务的方法,使用非冗余机械臂完成覆盖任务,机械臂模型的末端执行器与待覆盖物体间的接触为点接触,所述的待覆盖物体的模型、机械臂模型、环境中的障碍物以及上述三者的相对位置关系已知,在覆盖任务执行过程中保持不变。本发明可以保证机械臂的末端执行器在覆盖任务执行过程中离开物体表面的次数最少,由于机械臂的力/力矩‑位置切换控制策略公认是复杂的,且在末端执行器与物体表面不接触时机械臂的运动不会导致物体的任何区域被覆盖,在机械臂覆盖任务中将末端执行器抬起额外的、非最少的次数会造成大量的时间、能量损失。

Description

一种使用机械臂抬起最少次数完成不可重复覆盖任务的方法
技术领域
本发明涉及机械臂路径规划技术领域,具体地说,是一种使用机械臂抬起最少次数完成不可重复覆盖任务的方法。
背景技术
物体表面的覆盖任务是工业应用中的常见任务,被广泛应用于物体表面的近距离建模、喷漆、抛光等工作中。为了满足对三维空间中一般形状的物体进行加工的需求,覆盖任务通常由机械臂完成。
一方面,机械臂的运动学问题是几十年来一直被研究的热门问题。机械臂运动学的实质是寻找机械臂的各个关节角度组成的关节空间到机械臂的末端执行器的位姿空间的映射。当机械臂中具有旋转关节时,这种映射关系是非线性的。另一方面,曲面的覆盖问题是机器人路径规划任务中的覆盖路径规划问题,针对给定的待覆盖空间,设计出一条路径,使得机器人沿着路径运行后可以经过待覆盖空间上的每一个点,在此过程中机器人视作一个质点。
在物体表面的覆盖问题中,机械臂末端安装的末端执行器沿着设定好的覆盖路径运行,即可经过物体表面的每一个点。然而,由于机械臂存在运动学约束,它不能使得末端执行器完整跟踪整条覆盖路径。在这种情况下,覆盖工作被迫中断,且机械臂需要调整其姿态来完成后续的跟踪任务。传统的覆盖路径规划算法是在被覆盖区域上进行路径生成的算法,在机械臂的覆盖路径规划问题中相当于在物体表面直接生成覆盖路径。然而由于机械臂的正运动学是非线性的,工作空间中的覆盖路径很容易因为机械臂的运动学约束而被截断。机械臂需要将末端执行器抬起,在空中完成机械臂位姿的变换,再重新接触。末端执行器的“脱离-重新接触”的过程需要复杂的控制策略,浪费额外的时间和能量,降低工业生产效率。
物体表面的非重复覆盖问题是物体表面覆盖问题的直接推广,因为,如果末端执行器的覆盖路径设计不合理,那么已经被执行过的覆盖路径会将尚未覆盖的区域切割为不连通的区域。这样,本来可以被末端执行器连续(不需要抬起)地覆盖的区域被切割为了多个不连通的区域,那么末端执行器必须要经历额外的抬起才能完成整个覆盖任务。
发明内容
为了克服现有技术的不足,本发明的目的在于提供一种使用机械臂抬起最少次数完成物体表面不可重复覆盖任务的方法,在完全已知环境下、对物体表面进行覆盖任务的方法。该方法在整个覆盖任务执行过程中,机械臂的末端执行器只需要与物体表面解除接触最少次数。
本发明是通过以下技术方案来实现的:
本发明公开了一种使用机械臂抬起最少次数完成物体表面不可重复覆盖任务的方法,使用非冗余机械臂完成覆盖任务,机械臂模型的末端执行器与待覆盖物体间的接触为点接触,所述的待覆盖物体的模型、机械臂模型、环境中的障碍物以及上述三者的相对位置关系已知,在覆盖任务执行过程中保持不变。
作为进一步地改进,本发明所述的使用机械臂抬起最少次数完成物体表面不可重复覆盖任务的方法包括如下步骤:
步骤一、待覆盖物体的表面曲面使用M表示,对M上所有的点进行机械臂逆运动学求解,获得机械臂的末端执行器覆盖此点时机械臂的位姿,对M上的任一点p,所有的可行位姿记为{Jp1,Jp2,…,Jpn};当待覆盖物体表面被完整覆盖,则所有的点均对应了一组可行的位姿,否则待覆盖物体表面不能覆盖到的点没有对应的位姿,M上的所有点的可行位姿构成机械臂的关节空间,所述机械臂的关节空间包括奇异位姿和非奇异位姿;
步骤二、除去所有奇异位姿后,所述机械臂的关节空间被分割成若干不相交的集合,每个集合中存储能被机械臂连续执行的位姿,将相同集合中的位姿标注相同的编号,不同集合中的位姿标注不同的编号,将不同的集合编号设置为c1,…,cn,曲面M上的每一点根据其可行位姿对应的编号获得点p对应的编号组合;
步骤三、根据M上的点的连通性,把具有相同编号组合、且在覆盖物体的曲面M上连通的点划分为同一个胞腔,两个胞腔之间的交界处记为一条拓扑边,每个胞腔具有唯一的编号,记为第一胞腔、第二胞腔……、第N胞腔,即为第一胞腔、第二胞腔等,每个胞腔储存覆盖此胞腔的不同种机械臂位姿,还按顺序存储了与之邻接的胞腔的编号;
步骤四、对于单连通的胞腔,用二进制数编码其所有不同的切割方式:二进制数的数字个数就是此胞腔的拓扑边个数,根据二进制数中对应数位是1还是0,0表示这条拓扑边会被保留,即拓扑边两侧的两个胞腔最终会是不同的编号,在机械臂执行时末端执行器抬起一次;1表示这条拓扑边会被删除,即拓扑边两侧的区域最终是相同的编号,在机械臂执行时被末端执行器连续、无抬起地覆盖,对于拓扑边数为1、2、3的胞腔,直接使用枚举方法获得最优解,然而,对于拓扑边数超过3的胞腔,经过分解后可能形成子胞腔,而子胞腔的拓扑边数少于原胞腔,通过递归求解出所有出现的子胞腔,获得所有可能的解,对于某一个胞腔,指定了它的分解方法后,只要在枚举过程当中出现矛盾,那么这个枚举分支就被删除;
步骤五、根据步骤四的求解过程,使用迭代方式求解待覆盖物体表面上机械臂的运动学模型生成的拓扑图:
(5.1)对待覆盖物体表面上的第一胞腔,遍历所述第一胞腔的所有可能的切割方法并设置编号,即完成所述第一胞腔的所有解法,对所有解法中的每一个,执行步骤(5.2);
(5.2)对待覆盖物体表面上的第二胞腔,遍历所述第二胞腔的所有可能的切割方法并设置编号,即完成所述第二胞腔的所有解法,将第二胞腔的所有解法与第一胞腔设定有矛盾的解删掉,对第二胞腔中剩下的可行解法中的每一个,执行步骤(5.3);
(5.3)依次对待覆盖物体表面上的第三胞腔至第N胞腔执行步骤(5.2),使得每个胞腔都被设置切割方法,且每个切出的子胞腔均为唯一的编号,即获得机械臂覆盖子胞腔的方式。
作为进一步地改进,本发明所述待覆盖物体表面的点只能被覆盖一次。
作为进一步地改进,本发明所述的步骤二中,当方法得到的最少的可行的编号组合具有的编号数量为L时,则在此覆盖任务中机械臂要经历的抬起末端执行器的次数至少为L-1次。
作为进一步地改进,本发明所述的点接触为在规划具体覆盖路径时,方法不考虑末端执行器与被覆盖物体表面的接触面积,即认为是点接触。
作为进一步地改进,本发明所述的机械臂模型是固定底座的或搭载于移动平台上或应用于流水线上的某一个环节。
本发明的有益效果如下:
本发明公开了一种使用机械臂抬起最少次数完成物体表面不可重复覆盖任务的方法,可以保证机械臂的末端执行器在覆盖任务执行过程中离开物体表面的次数最少。由于机械臂的力/力矩-位置切换控制策略公认是复杂的,且在末端执行器与物体表面不接触时机械臂的运动不会导致物体的任何区域被覆盖,在机械臂覆盖任务中将末端执行器抬起额外的、非最少的次数会造成大量的时间、能量损失。本发明旨在提高在工业应用中机械臂完成覆盖任务的效率,其直接应用场景包括物体表面的近距离建模、喷漆、抛光等工作。
首先,本发明方法对机械臂选择的限制仅为非冗余。非冗余机械臂的工作意味着可以最大化机械臂的效率。现有工业应用中由于缺少本发明提供的最小化抬起次数的覆盖路径设计方法,若选择非冗余机械臂,则末端执行器需要频繁抬起,极大地降低了工作效率。因此现有的工业应用中的相同问题的解决方案仅是使用冗余机械臂,例如,任务本可以使用五自由度机械臂完成,但因抬起次数过多,效率太低,只能使用六自由度或七自由度机械臂完成相同工作,或使用多机械臂,例如,两个五自由度机械臂。因此,本发明具有实际的工业应用价值。
其次,本发明只要求机械臂、待覆盖物体和周围障碍物的相对位置关系在覆盖任务执行过程中是不变的,而对他们的实际空间位置没有约束,可以是不固定的。例如,被工业流水线承载的待覆盖物体停在固定的机械臂前,由机械臂完成其表面的覆盖任务后再继续移动。又例如,移动机械臂平台(机械臂安装在可移动的底盘平台上)移动至待覆盖物体周围的某处,并使用传感器感知了周围环境后,执行覆盖任务,而在机械臂完成覆盖任务的过程中底盘不移动。综上,本发明在实际工业应用中具有广泛的应用场景。
本方法使用枚举的方法遍历编号({c1,…,cn})的所有可能组合,因此可以求解出在给定机械臂构型、物体模型、障碍物模型及它们之间的相对位置关系情况下,机械臂使用最少抬起次数完成覆盖任务的所有最优解。可以证明,任何一种满足最少抬起次数的机械臂覆盖方案都是本方法给出的某个最优解的同胚变形,所述的同胚变形是指将不同的区域之间的边界连续地变化成其它形状或连续地挪至其它位置,不改变每个区域的连通性。
本发明的方法具有使得机械臂的末端执行器抬起次数最少的特点。又考虑到在末端执行器抬离物体表面的过程中,机械臂的运动不会覆盖物体表面的任何区域,所以,本发明的方法间接地最小化了机械臂在覆盖任务中的能量损耗。
附图说明
图1是拓扑图的建立过程的示意图;
图2是对单连通胞腔进行分解时,三类等价的区域分解方法;
图3是对具有三条拓扑边的单连通胞腔进行分解时的所有可能解法;
图4是对具有四条拓扑边的单连通胞腔进行分解时的所有可能解法,以及生成子胞腔的示意图。
具体实施方式
本发明公开了一种使用机械臂抬起最少次数完成物体表面不可重复覆盖任务的方法。机械臂的末端执行器对每个区域都可以保证连续地完成覆盖,即不需要解除末端执行器与物体表面的接触,机械臂的末端执行器与待覆盖物体表面间的接触为点接触,且待覆盖物体、机械臂以及环境中的障碍物的相对位置关系已知,且在覆盖任务执行过程中保持不变。
本方法保证将物体表面只分解为最少块区域,进而保证了末端执行器在完成物体表面覆盖任务的过程中只需要抬起最少次数,通过提出几种等价的分割区域的切割路径设计,说明“不等价的区域分解切割路径”最多只有有限多种,再通过遍历所有可能的情况,求得所有的最优区域分解,路径设计会得到相同的最少抬起次数。
本发明点接触是灵活的,只要在规划具体覆盖路径时,该方法不考虑末端执行器与被覆盖物体表面的接触面积,即认为是点接触,待覆盖物体表面的点只能被覆盖一次。
下面通过具体实施例对本发明的技术方案作进一步地说明:
步骤一、待覆盖物体的表面曲面使用M表示,对M上所有的点进行机械臂逆运动学求解,获得机械臂的末端执行器覆盖此点时机械臂的位姿,因为机械臂上可能有旋转关节,逆运动学的解并不唯一。但又因为机械臂是非冗余的,故只有有限多个解,对M上的任一点p,所有的可行位姿记为{Jp1,Jp2,…,Jpn};当待覆盖物体表面被完整覆盖,则所有的点均对应了一组可行的位姿,否则所有能被覆盖的点可以找到可行的位姿,而不能覆盖到的点则没有对应的位姿。M上的所有点的可行位姿构成机械臂的关节空间,机械臂的关节空间包括奇异位姿和非奇异位姿;
步骤二、除去所有奇异位姿后,机械臂的关节空间被分割成若干不相交的集合,每个集合中存储能被机械臂连续执行的位姿,将相同集合中的位姿标注相同的编号,不同集合中的位姿标注不同的编号,将不同的集合编号设置为c1,…,cn,曲面M上的每一点根据其可行位姿对应的编号获得点p对应的编号组合;
具体说来,对于曲面M上相邻的两个点p,q,它们对应的机械臂关节角{Jp1,Jp2,…,Jpn}和{Jq1,Jq2,…,Jqm}。对p的每个关节角(设是Jp1),在q的可行位姿中最多只有一个(设是Jq1)与Jp1连续,将它们指定为同一个标号(设是c1),假设Jp2已经被指定了编号(设是c2),若Jq3与Jp2是连续的,则Jq3的标号也被指定为c2,对曲面M上每个点的所有可行位姿,都检查它与周围点的可行关节角位姿的连续性,若连续则指定相同的编号,否则指定不同的编号,此步骤结束时,所有点的所有可行关节角都被指定了编号。
步骤三、图1是拓扑图的建立过程的示意图;如图1所示,根据M上的点的连通性,把具有相同编号组合、且在覆盖物体的曲面M上连通的点划分为同一个胞腔,两个胞腔之间的交界处记为一条拓扑边,每个胞腔具有唯一的编号,记为第一胞腔、第二胞腔……、第N胞腔,即为第一胞腔、第二胞腔等,每个胞腔覆盖此胞腔的不同种机械臂位姿,还按顺序(例如逆时针顺序)存储了与之邻接的胞腔的编号。
步骤四、对于单连通的胞腔,用二进制数编码其所有不同的切割方式:二进制数的数字个数就是此胞腔的拓扑边个数,根据二进制数中对应数位是1还是0,0表示这条拓扑边会被保留,即拓扑边两侧的两个胞腔最终会是不同的编号,在机械臂执行时末端执行器抬起一次;1表示这条拓扑边会被删除,即拓扑边两侧的区域最终是相同的编号,在机械臂执行时被末端执行器连续、无抬起地覆盖,对于拓扑边数为1、2、3的胞腔,直接使用枚举方法获得最优解,然而,对于拓扑边数超过3的胞腔,经过分解后可能形成子胞腔,而子胞腔的拓扑边数少于原胞腔,通过递归求解出所有出现的子胞腔,获得所有可能的解,对于某一个胞腔,指定了它的分解方法后,只要在枚举过程当中出现矛盾,那么这个枚举分支就被删除。
具体说来,给出三个等价关系,将胞腔进行分解的方法,具有相同的抬起次数。图2是对单连通胞腔进行分解时,三类等价的区域分解方法;对于任意两种等价的将胞腔进行分解的方法,只需要考虑其中一个分解方法,而一个分解方法因为具有相同的抬起次数,并不会更少,所以不会导致这个分解方法失去最优性。显然,对物体表面的某个单连通区域进行划分的方法有无穷多种,通过给出的三个等价关系排除大多数分解方法,最终使得需要考虑的不等价的分解方法只有有限多个。在图2中虚线表示的是拓扑边,设计切割路径使得胞腔被分成多个部分,其中可以发现:(1)将拓扑边的任何非端点处设置为切割路径的起点或终点是没有意义的,因为可以将端点连续地移动至它所在的拓扑边的端点上,而不会增加抬起次数;(2)切割路径没有必要穿过其它拓扑边,因为它可能会导致不必要的额外抬起次数;(3)切割路径之间没有必要交叉,因为这种切割方式等价于将胞腔沿着拓扑边切割,而不会增加抬起次数。对于某一个胞腔,用二进制数编码其所有不同的切割方式:二进制数的数字个数就是此胞腔的拓扑边个数。根据二进制数中对应数位是1还是0,0表示这条拓扑边会被保留,即拓扑边两侧的两个胞腔最终会是不同的编号,在机械臂执行时末端执行器抬起一次;1表示这条拓扑边会被删除,即拓扑边两侧的区域最终是相同的编号,在机械臂执行时被末端执行器连续、无抬起地覆盖。图3是对具有三条拓扑边的单连通胞腔进行分解时的所有可能解法;图4是对具有四条拓扑边的单连通胞腔进行分解时的所有可能解法,以及生成子胞腔的示意图。在图3中,最左侧为由三条虚线作为边界的具有三条拓扑边的单连通胞腔的示意图,其存储的邻接胞腔的顺序为逆时针(左上、左下、右)。在图3右侧给出了使用二进制数表示的8种不同的切割方法,其中0表示对应的拓扑边在胞腔分解方法中是保持的,即从虚线变成实线,而1表示对应的拓扑边的两侧的胞腔是连在一起的,中间的拓扑边会被删除,即删除虚线。
对于拓扑边数为1、2、3的胞腔,直接使用枚举方法获得最优解。然而,对于拓扑边数超过3的胞腔,经过分解后可能形成子胞腔,此时,子胞腔的拓扑边仍然是待定的,例如图4中编码为xx11、x11x、1xx1、11xx这四种情形,4-胞腔被分解后生成了一个3-胞腔,这个子胞腔的一条边是指定的切割路径,另外两条边是待确定保留或者移除的拓扑边。注意到,因为生成的切割路径一定是保留的,所以对整个求解过程而言,生成子胞腔并不会导致问题求解具有更多的分支。而子胞腔的拓扑边数少于原胞腔,通过递归求解出所有出现的子胞腔,获得所有可能的解。对于某一个胞腔,指定了它的分解方法后,只要在枚举过程当中出现矛盾,那么这个枚举分支就被删除。
步骤五、根据步骤四的求解过程,使用迭代方式求解待覆盖物体表面上机械臂的运动学模型生成的拓扑图:
(5.1)对待覆盖物体表面上的第一胞腔,遍历第一胞腔的所有可能的切割方法并设置编号,即完成第一胞腔的所有解法,对所有解法中的每一个,执行步骤(5.2);
(5.2)对待覆盖物体表面上的第二胞腔,遍历第二胞腔的所有可能的切割方法并设置编号,即完成第二胞腔的所有解法,将第二胞腔的所有解法与第一胞腔设定有矛盾的解删掉,对第二胞腔中剩下的可行解法中的每一个,执行步骤(5.3);
(5.3)依次对待覆盖物体表面上的第三胞腔至第N胞腔执行步骤(5.2),使得每个胞腔都被设置切割方法,且每个切出的子胞腔均为唯一的编号,即获得机械臂覆盖子胞腔的方式。
例如:假设胞腔S和胞腔T是邻接的,且胞腔S和胞腔T的一部分被指定为编号ci,则机械臂覆盖这一部分区域(胞腔S和胞腔T的一部分)时,使用的是编号ci对应的机械臂位姿,具体的运行顺序,即,具体覆盖路径的设计,不会使得机械臂在执行过程中抬起末端执行器,因此任意具体覆盖路径均可。
本方法的编号({c1,…,cn})指定策略是基于机械臂关节空间中的连续性构造出来的。当使用不同构型、不同维度的机械臂处理不同的物体表面时,连续性的定义可能会有变形。凡是根据机械臂关节空间的连续性对机械臂在覆盖任务中的可行位姿进行划分、目的是实现最少抬起次数的其它方法,均等价于指定了某种编号。所以这种变形应认为是本发明的保护范围。
本方法使用枚举遍历的方法获得非冗余机械臂接触覆盖任务中使得机械臂与物体表面解除接触次数最少的所有最优解。但是当仅对所有可能组合中的某一些进行检查时,也可以获得一些最优解,或者一些近似最优解。因此,不使用枚举策略,最终目的是为了获取此机械臂接触覆盖任务的一个最优解或者近似最优解的其它方法,也应认为是本发明的保护范围。
典型的机械臂的非冗余情形的工作场景举例如下:(1)使用五自由度机械臂覆盖三维物体表面区域,且末端执行器垂直于物体表面,如金属零件表面精加工,汽车表面抛光等(2)使用二自由度机械臂覆盖平面区域,如桌面擦拭等(3)使用四自由度机械臂完成三维物体表面区域喷漆(4)使用六自由度机械臂完成三维物体表面区域近距离观察。
实施例
非冗余机械臂需要覆盖形如“+”的区域,通过本发明方法步骤一求得机械臂覆盖物体表面每个点的逆运动学,得到的一组连续的位姿可以覆盖“-”,而另一组连续的位姿可以覆盖“丨”。通过本发明方法步骤二的过程将所有位姿进行编号,将能够覆盖“-”的所有位姿编号为1,将能够覆盖“丨”的所有位姿编号为2。通过步骤三进行胞腔的构建,构建出的拓扑图与图1相同,即可使用与图1中相同的胞腔编号。第一胞腔的可被覆盖的机械臂位姿为{1},其中花括号表示其中元素的顺序没有特定含义;其邻接胞腔为(2),其中小括号表示其中元素是按顺序排列的,可知第二、三、四、五胞腔的可被覆盖的机械臂位姿依次为{1,2},{2},{2},{1},其邻接胞腔依次为(1,4,5,3),(2),(2),(2)。通过步骤四求解方法,可知第一、三、四、五胞腔分别只有唯一一种选择编号的方法和切割方法,因此只需要对第二胞腔进行求解。经过求解,可知第二胞腔的(1)切割方式为1010且编号设置为1,或者(2)切割方式为0101且编号设置为2时,该问题可以取得最优解。这两个解的物理含义分别为(1)先使用编号为1的位姿覆盖第一、二、五胞腔所在区域,而后抬起一次,使用编号为2的位姿覆盖第三胞腔所在区域,而后再抬起一次,最终使用编号为2的位姿覆盖第四胞腔所在区域。(2)先使用编号为2的位姿覆盖第二、三、四胞腔所在区域,而后抬起一次,使用编号为1的位姿覆盖第一胞腔所在区域,而后再抬起一次,最终使用编号为1的位姿覆盖第五胞腔所在区域。通过上述两种方法求得最少抬起次数均为2。
最后,还需要注意的是本发明不限于以上实施例,还可以有许多变形。本领域的普通技术人员能从本发明公开的内容直接导出或联想到的所有变形,均应认为是本发明的保护范围。

Claims (5)

1.一种使用机械臂抬起最少次数完成物体表面不可重复覆盖任务的方法,其特征在于,所述的方法使用非冗余机械臂完成覆盖任务,机械臂模型的末端执行器与待覆盖物体间的接触为点接触,所述的待覆盖物体的模型、机械臂模型、环境中的障碍物以及上述三者的相对位置关系已知,在覆盖任务执行过程中保持不变,所述使用机械臂抬起最少次数完成物体表面不可重复覆盖任务的方法包括如下步骤:
步骤一、待覆盖物体的表面曲面使用M表示,对M上所有的点进行机械臂逆运动学求解,获得机械臂的末端执行器覆盖此点时机械臂的位姿,对曲面M上的任一点p,所有的可行位姿记为{Jp1,Jp2,…,Jpn};当待覆盖物体表面被完整覆盖,则所有的点均对应了一组可行的位姿,否则待覆盖物体表面不能覆盖到的点没有对应的位姿,曲面M上的所有点的可行位姿构成机械臂的关节空间,所述机械臂的关节空间包括奇异位姿和非奇异位姿;
步骤二、除去所有奇异位姿后,所述机械臂的关节空间被分割成若干不相交的集合,每个集合中存储能被机械臂连续执行的位姿,将相同集合中的位姿标注相同的编号,不同集合中的位姿标注不同的编号,将不同的集合编号设置为c1,…,cn,M上的每一点根据其可行位姿对应的编号获得点p对应的编号组合;
步骤三、根据M上的点的连通性,把具有相同编号组合、且在M上连通的点划分为同一个胞腔,两个胞腔之间的交界处记为一条拓扑边,每个胞腔具有唯一的编号,记为第一胞腔、第二胞腔……、第N胞腔,每个胞腔存储覆盖此胞腔的不同种机械臂位姿,还按顺序存储了与之邻接的胞腔的编号;
步骤四、对于单连通的胞腔,用二进制数编码其所有不同的切割方式:二进制数的数字个数就是此胞腔的拓扑边个数,根据二进制数中对应数位是1还是0,0表示这条拓扑边会被保留,即拓扑边两侧的两个胞腔最终会是不同的编号,在机械臂执行时末端执行器抬起一次;1表示这条拓扑边会被删除,即拓扑边两侧的区域最终是相同的编号,在机械臂执行时被末端执行器连续、无抬起地覆盖,对于拓扑边数为1、2、3的胞腔,直接使用枚举方法获得最优解,然而,对于拓扑边数超过3的胞腔,经过分解后可能形成子胞腔,而子胞腔的拓扑边数少于原胞腔,通过递归求解出所有出现的子胞腔,获得所有可能的解,对于某一个胞腔,指定了它的分解方法后,只要在枚举过程当中出现矛盾,那么这个枚举分支就被删除;
步骤五、根据步骤四的求解过程,使用迭代方式求解待覆盖物体表面上机械臂的运动学模型生成的拓扑图:
(5.1)对待覆盖物体表面上的第一胞腔,遍历所述第一胞腔的所有可能的切割方法并设置编号,即完成所述第一胞腔的所有解法,对所有解法中的每一个,执行步骤(5.2);
(5.2)对待覆盖物体表面上的第二胞腔,遍历所述第二胞腔的所有可能的切割方法并设置编号,即完成所述第二胞腔的所有解法,将第二胞腔的所有解法与第一胞腔设定有矛盾的解删掉,对第二胞腔中剩下的可行解法中的每一个,执行步骤(5.3);
(5.3)依次对待覆盖物体表面上的第三胞腔至第N胞腔执行步骤(5.2),使得每个胞腔都被设置切割方法,且每个切出的子胞腔均为唯一的编号,即获得机械臂覆盖子胞腔的方式。
2.根据权利要求1所述的使用机械臂抬起最少次数完成物体表面不可重复覆盖任务的方法,其特征在于,所述待覆盖物体表面的点只能被覆盖一次。
3.根据权利要求1所述的使用机械臂抬起最少次数完成物体表面不可重复覆盖任务的方法,其特征在于,所述的步骤二中,当方法得到的最少的可行的编号组合具有的编号数量为L时,则在此覆盖任务中机械臂要经历的抬起末端执行器的次数至少为L-1次。
4.根据权利要求1所述的使用机械臂抬起最少次数完成物体表面不可重复覆盖任务的方法,其特征在于,所述的点接触为:在规划具体覆盖路径时,方法不考虑末端执行器与被覆盖物体表面的接触面积,即认为是点接触。
5.根据权利要求1或2或3或4所述的使用机械臂抬起最少次数完成物体表面不可重复覆盖任务的方法,其特征在于,所述的机械臂模型是固定底座的或搭载于移动平台上或应用于流水线上的某一个环节。
CN202010568694.4A 2020-06-19 2020-06-19 一种使用机械臂抬起最少次数完成不可重复覆盖任务的方法 Active CN111687844B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010568694.4A CN111687844B (zh) 2020-06-19 2020-06-19 一种使用机械臂抬起最少次数完成不可重复覆盖任务的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010568694.4A CN111687844B (zh) 2020-06-19 2020-06-19 一种使用机械臂抬起最少次数完成不可重复覆盖任务的方法

Publications (2)

Publication Number Publication Date
CN111687844A CN111687844A (zh) 2020-09-22
CN111687844B true CN111687844B (zh) 2021-08-31

Family

ID=72482361

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010568694.4A Active CN111687844B (zh) 2020-06-19 2020-06-19 一种使用机械臂抬起最少次数完成不可重复覆盖任务的方法

Country Status (1)

Country Link
CN (1) CN111687844B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113021352A (zh) * 2021-03-25 2021-06-25 浙江大学 一种使用非冗余机械臂抬起最少次数完成流水线上物体表面不可重复覆盖任务的方法
CN113021351A (zh) * 2021-03-25 2021-06-25 浙江大学 一种使用移动机械臂结构抬起最少次数完成大型物体表面不可重复覆盖任务的方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2969799A (en) * 1999-01-06 2000-07-24 Kenan Koser Slider crank mechanism based robot arm
US20040247390A1 (en) * 2003-06-03 2004-12-09 Smith Aaron D. Construction device and method stamping concrete
CN102161198B (zh) * 2011-03-18 2012-09-19 浙江大学 用于三维空间中移动机械臂路径规划的主从式协进化方法
US9327401B2 (en) * 2012-09-10 2016-05-03 Fanuc America Corporation Method of controlling a redundant robot
CN204277670U (zh) * 2014-11-05 2015-04-22 睿志达光电(深圳)有限公司 玻璃圆孔抛光机
CN107161346B (zh) * 2017-05-18 2020-10-20 浙江大学 一种基于遍历航点的无人机喷药系统及喷药方法
CN109079780B (zh) * 2018-08-08 2020-11-10 北京理工大学 基于广义坐标的分布式移动机械臂任务分层优化控制方法
CN109015657B (zh) * 2018-09-07 2021-12-10 浙江科技学院 一种面向冗余机械臂重复运动规划的终态网络优化方法
CN109262599B (zh) * 2018-11-15 2022-01-14 武汉唯车惠科技有限公司 一种集成式单臂多轴补漆机器人
CN109571466B (zh) * 2018-11-22 2021-01-26 浙江大学 一种基于快速随机搜索树的七自由度冗余机械臂动态避障路径规划方法
CN110434851B (zh) * 2019-06-24 2020-11-27 浙江工业大学 一种5自由度机械臂逆运动学求解方法
CN110587600B (zh) * 2019-08-20 2022-04-19 南京理工大学 基于点云的带电作业机器人自主路径规划方法
CN110876512B (zh) * 2019-11-13 2024-01-12 广东工业大学 一种鞋底高精度自动化涂胶系统的控制方法
CN110936383B (zh) * 2019-12-20 2022-11-18 上海有个机器人有限公司 一种机器人的障碍物避让方法、介质、终端和装置

Also Published As

Publication number Publication date
CN111687844A (zh) 2020-09-22

Similar Documents

Publication Publication Date Title
CN111687844B (zh) 一种使用机械臂抬起最少次数完成不可重复覆盖任务的方法
CN111761582B (zh) 一种基于随机采样的移动机械臂避障规划方法
CN111823231B (zh) 一种使用机械臂完成不可重复覆盖任务抬起次数最少的方法
US20080125893A1 (en) Apparatus and Method of Automated Manufacturing
CN104647377B (zh) 一种基于认知系统的工业机器人及其控制方法
CN111761580B (zh) 一种多机器人图案喷涂的工作区柔性分割方法
CN110160533B (zh) 多凸包障碍模型下移动机器人避障的路径规划方法
Wang et al. Design and manufacturing of sheet-metal parts: using features to aid process planning and resolve manufacturability problems
CN113325799B (zh) 一种曲面工件的点焊机器人操作空间平滑路径规划方法
CN113211447B (zh) 一种基于双向rrt*算法的机械臂实时感知规划方法及系统
CN111687843B (zh) 一种使用机械臂抬起最少次数完成覆盖任务的方法
CN110171000A (zh) 坡口切割方法、装置及控制设备
CN111975767A (zh) 基于多级任务分配的多机器人视觉检测系统的协同运动规划方法
CN110682292A (zh) 基于RT Toolbox的机器人码垛轨迹生成方法
Ali et al. Multi-robot path planning and trajectory smoothing
US20210323154A1 (en) Disassembly based assembly planning
Tam et al. An improved genetic algorithm based robot path planning method without collision in confined workspace
Shao et al. Rrt-goalbias and path smoothing based motion planning of mobile manipulators with obstacle avoidance
Li et al. Stiffness-maximum trajectory planning of a hybrid kinematic-redundant robot machine
Sheng et al. Surface partitioning in automated CAD-guided tool planning for additive manufacturing
CN113021352A (zh) 一种使用非冗余机械臂抬起最少次数完成流水线上物体表面不可重复覆盖任务的方法
CN110370276A (zh) 基于三维模型Morse分解的工业机器人加工轨迹自动规划方法
WO2021253391A1 (zh) 一种使用机械臂完成不可重复覆盖任务抬起次数最少的方法
Yang et al. Non-revisiting coverage task with minimal discontinuities for non-redundant manipulators
Liu et al. ROS-based robot offline planning simulation system

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