一种水面建造的并行自组装方法、终端及存储介质

文档序号:33112715发布日期:2023-02-01 02:23阅读:28来源:国知局
一种水面建造的并行自组装方法、终端及存储介质

1.本发明涉及机器人技术领域,尤其涉及的是一种水面建造的并行自组装方法、终端及存储介质。


背景技术:

2.水上房屋、浮桥、大型浮台等传统的水面建造技术存在环境复杂、施工空间狭窄、施工难度较高、维护困难等难点问题亟待解决。诸如水灾救援等紧迫的例子对建造时间也提出了要求。模块化无人船的自组装技术,可全自主地实现水面平台的快速建造,具有安全、高效、施工和维护便利,受天气影响小等优势。一方面,借助无人船的运载能力和机动性,可以减少施工人数,避免人员暴露在危险环境(例如,洪水、潮汐等)中,极大降低了人员的安全风险。另一方面,通过自组装算法的调度,无人船尽可能地选择最优的组装顺序并沿最短路径移动,可显著提高建造效率。
3.现有的自组装规划方法普遍假设了建造模块自身具备动力,可自主移动到目标位置进行主动对接。然而,此类模块结构复杂,成本高,并不适合于大规模建造;另一方面,现有的规划算法(仅机器人或机器人+模块)假设每个机器人仅能携带一个模块,并采用串行的策略,将模块逐个依次组装到目标结构上。由于水面的阻力较小,显然这种假设上是不合理的,导致现有传统的自组装规划方法组装效率低。
4.因此,现有技术还有待改进。


技术实现要素:

5.本发明要解决的技术问题在于,针对现有技术缺陷,本发明提供一种水面建造的并行自组装方法、终端及存储介质,以解决传统的自组装规划方法组装效率低的技术问题。
6.本发明解决技术问题所采用的技术方案如下:
7.第一方面,本发明提供一种水面建造的并行自组装方法,包括:
8.根据输入的结构体形状生成自组装二叉树,并根据所述自组装二叉树确定组装过程的组装顺序决策规则;
9.根据所述组装顺序决策规则对各机器人进行自组装规划,并根据规划的进度控制各机器人执行对应的状态,其中所述对应的状态包括:抓取模块状态、导航状态以及对接状态;
10.对处于导航状态的机器人进行路径规划,并根据规划的路径控制对应的机器人将携带的模块或子结构搬运至指定位置,以组装所述结构体形状中对应的结构。
11.在一种实现方式中,所述根据输入的结构体形状生成自组装二叉树,包括:
12.根据输入的结构体形状将所述自组装二叉树中的每一个节点表示为一个组装目标组;
13.确定每个所述组装目标组的最大化并行效率,并根据所述最大化并行效率设置对应的机器人数量;
14.遍历每个所述组装目标组,构建所述结构体形状的子结构,并根据构建的子结构确定主导目标数量;
15.根据所述主导目标数量得到所述自组装二叉树。
16.在一种实现方式中,所述根据输入的结构体形状将所述自组装二叉树中的每一个节点表示为一个组装目标组,包括:
17.将各非叶子节点下的子节点表示为用于拆分的组装目标组;
18.根据预先设定的距离沿垂直于各组装目标组的拆分线的方向进行扩展分离。
19.在一种实现方式中,遍历每个所述组装目标组,构建所述结构体形状的子结构,并根据构建的子结构确定主导目标数量,包括:
20.遍历每个所述组装目标组,得到的起始主导目标节点和终止节点;
21.寻找所述起始主导目标节点和所述终止节点之间的最短路径,确定所述起始主导目标节点和所述终止节点的共同祖先节点;
22.将所述共同祖先节点作为最大子树的根节点的候选节点;
23.对所述候选节点进行判断,并根据判断结果选择所述候选节点相邻的满足节点要求的替代节点;
24.根据所述替代节点确定所述主导目标数量。
25.在一种实现方式中,所述根据所述组装顺序决策规则对各机器人进行自组装规划,并根据规划的进度控制各机器人执行对应的状态,包括:
26.根据所述组装顺序决策规则确定各机器人对应的组装进度;
27.根据所述组装进度确定取模块或子结构;
28.对抓取模块或子结构的机器人规划对应的执行动作。
29.在一种实现方式中,所述对抓取模块或子结构的机器人规划对应的执行动作,包括:
30.若当前机器人将阻挡下一机器人的对接动作,则将当前机器人与模块之间的对接面切换至无冲突的对接方式;
31.若当前的目标位置已被其他机器人占据,则按照自组装树规定的组装顺序改变目标;
32.若对两个机器人对接完成,则将对接中的一个机器人的状态转变为模块获取状态,并将另一个机器人的状态转变为将组装后的子结构携带至父节点的目标组对接的状态。
33.在一种实现方式中,所述对处于导航状态的机器人进行路径规划,并根据规划的路径控制对应的机器人将携带的模块或子结构搬运至指定位置,以组装所述结构体形状中对应的结构,包括:
34.将各机器人及携带的模块或子结构定义为一个装配组;
35.检测各机器人当前位置的障碍物;
36.若无障碍物,则寻找从携带的模块或子结构的位置到对应的目标位置的可行路径;
37.若有障碍物,则将装配组视为具有较大尺寸的单个机器人,并对应调整障碍物膨胀的安全距离,根据调整的安全距离规划绕道路径;
38.根据规划的路径控制对应的机器人将携带的模块或子结构搬运至指定位置,以组装所述结构体形状中对应的结构。
39.在一种实现方式中,还包括:
40.根据各机器人的工作状态向各机器人分配不同的优先级;
41.将优先级较低的机器人调整为避让状态,并规划对应的绕道路径,以避让优先级较高的机器人;
42.根据设置的优先级控制多个机器人协调,以组装所述结构体形状中对应的子结构或整个结构。
43.第二方面,本发明还提供一种终端,包括:处理器以及存储器,所述存储器存储有水面建造的并行自组装程序,所述水面建造的并行自组装程序被所述处理器执行时用于实现如第一方面所述的水面建造的并行自组装方法的操作。
44.第三方面,本发明还提供一种存储介质,所述存储介质为计算机可读存储介质,所述存储介质存储有水面建造的并行自组装程序,所述水面建造的并行自组装程序被处理器执行时用于实现如第一方面所述的水面建造的并行自组装方法的操作。
45.本发明采用上述技术方案具有以下效果:
46.本发明根据输入的结构体形状生成自组装二叉树,可以确定组装过程的组装顺序决策规则;并且,根据组装顺序决策规则对各机器人进行自组装规划,可以控制各机器人执行对应的状态;通过对处于导航状态的机器人进行路径规划,可以控制对应的机器人将携带的模块或子结构搬运至指定位置,以组装结构体形状中对应的结构。本发明将无动力建筑模块和并行化策略引入了自组装规划,通过引入低成本的建筑模块,使得进行大规模建造成为可能,以及通过采用并行化拼接的策略,充分利用了机器人的运载能力,提高了自组装的执行效率。
附图说明
47.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。
48.图1是本发明的一种实现方式中水面建造的并行自组装方法的流程图。
49.图2是本发明的一种实现方式中水上并行式模块自组装算法流程图。
50.图3是本发明的一种实现方式中用于表示组装顺序的自组装二叉树的示意图。
51.图4是本发明的一种实现方式中自组装二叉树相关的目标扩展过程示意图。
52.图5是本发明的一种实现方式中最大子树生成器的算法1示意图。
53.图6是本发明的一种实现方式中最大子树生成器的执行过程的示意图。
54.图7是本发明的一种实现方式中自组装规划算法2的示意图。
55.图8是本发明的一种实现方式中为机器人路径规划中单独装配组的规划示意图。
56.图9是本发明的一种实现方式中为机器人路径规划中多机器人组之间的交互示意图。
57.图10是本发明的一种实现方式中装配组作为整体的路径规划的算法3的示意图。
58.图11是本发明的一种实现方式中一个自组装过程示例的示意图。
59.图12是本发明的一种实现方式中终端的功能原理图。
60.本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
61.为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
62.示例性方法
63.现有的自组装规划方法普遍假设了建造模块自身具备动力,可自主移动到目标位置进行主动对接。然而,此类模块结构复杂,成本高,并不适合于大规模建造;另一方面,现有的规划算法(仅机器人或机器人+模块)假设每个机器人仅能携带一个模块,并采用串行的策略,将模块逐个依次组装到目标结构上。由于水面的阻力较小,显然这种假设上是不合理的,导致现有传统的自组装规划方法组装效率低。
64.针对上述技术问题,本发明实施例提供一种水面建造的并行自组装方法,本发明提出的方法从两方面对现有的自组装规划算法进行了改进。一方面,提出了让机器人(即无人船)携带无动力的建筑模块进行建造,极大地降低了成本。另一方面,提出了每个机器人可同时携带多个连接起来的模块,继而实现了并行的拼接。随着规模增加,这种并行化策略的效率具有比串行高得多。
65.如图1所示,本发明实施例提供一种水面建造的并行自组装方法,包括以下步骤:
66.步骤s100,根据输入的结构体形状生成自组装二叉树,并根据所述自组装二叉树确定组装过程的组装顺序决策规则。
67.在本实施例中,所述水面建造的并行自组装方法应用于终端中,所述终端包括但不限于:机器人、计算机以及移动终端等设备;其中,计算机以及移动终端等设备为机器人的控制设备。
68.本实施例将无动力建筑模块和并行化策略引入了自组装规划,提出了一种基于机器人携带模块的并行化自组装规划算法,该自组装规划算法具有以下几点优势:
69.1、通过引入低成本的建筑模块,降低了模块的设计和制造的难度,也使得进行大规模建造成为可能;
70.2、通过采用并行化拼接的策略,充分利用了机器人的运载能力,大大提高了自组装的执行效率。
71.在本实施例中,机器人通过执行该自组装算法,可将带有对接装置、欠驱动的水上浮动模块(以下称其为模块)组装成为一个通过用户输入指定的平面结构。算法的输入为所需结构体的形状(即工作空间中所有目标点的坐标),机器人通过执行自组装算法,确定合适的装配顺序,并将模块按照输入指定的形状连接在一起。所建造的结构体可以被划分为一系列的方格,结构体中的每一个方格称为一个目标点,并在建造完成后会被一个浮动模块占据。互相连接、可代表一个子结构或整个结构体的一组目标点称为为一个目标组。
72.在模块组装的过程中,以下约束条件和假设应当被满足:首先,机器人和模块之间、模块之间、模块和不可移动的对接点之间的对接动作必须是一对一对接,而不能有一个
物体同时与两个或两个以上的物体进行对接动作。所有的机器人和模块在前、后、左、右四面都有可自对准的连接器(对接头)。此外,所有对接头都是主动式的,也就是说,机器人和模块都可以决定是否与出现在附近的对接机构进行对接。其他假设和约束条件将作为机器人和模块的属性分别陈述。
73.在本实施例中,假设所有的机器人都具有相同的物理特征,并给机器人标注了不同的id以用于区分。同时,所有机器人的位置都是完全可控的,而不会受到水流的影响,但机器人只能向前、后、左、右四个方向移动,而不能旋转。机器人可以获取自己在工作空间中的位置信息,并在不碰撞任何静态障碍物或移动物体的情况下导航到目标位置。同时,每个机器人都会维护一个自身在工作空间中的认知地图,用于记录邻近机器人、模块、子结构和机器人视线范围内的障碍物的位置。机器人可以与邻近的机器人进行无线通信,或与携带的模块进行有线通信。
74.所有模块都是方形的、可以互换的,除非直接连接到机器人或连接于机器人携带的模块组,否则模块的位置是高度不确定的。模块具有四面测距功能,以检测它与附近物体可能发生的碰撞,并可以通过有线通信将测距信息传递给与它连接的机器人。
75.在本实施例中,提出可用于建造水上浮动结构的自组装规划算法,该自组装规划算法流程如图2所示。
76.具体地,本实施例的一种实现方式中,步骤s100包括以下步骤:
77.步骤s101,根据输入的结构体形状将所述自组装二叉树中的每一个节点表示为一个组装目标组;
78.步骤s102,确定每个所述组装目标组的最大化并行效率,并根据所述最大化并行效率设置对应的机器人数量;
79.步骤s103,遍历每个所述组装目标组,构建所述结构体形状的子结构,并根据构建的子结构确定主导目标数量;
80.步骤s104,根据所述主导目标数量得到所述自组装二叉树。
81.在本实施例中,为了确定合适的组装顺序,在进行组装结构体之前,首先需要根据输入的结构体形状生成一个自组装二叉树,以用于表示组装过程和设定组装顺序决策规则。机器人根据自组装二叉树的顺序即可完成对于特定输入形状的自组装过程,相应的规划算法可分为上层的自组装规划和下层的路径规划。
82.具体地,本实施例的一种实现方式中,步骤s101包括以下步骤:
83.步骤s101a,将各非叶子节点下的子节点表示为用于拆分的组装目标组;
84.步骤s101b,根据预先设定的距离沿垂直于各组装目标组的拆分线的方向进行扩展分离。
85.在本实施例中,自组装二叉树是一种用于表示目标点之间的连接方式的二叉树结构,如图3所示。中的每一个节点表示一个目标组,对于有两个子节点的非叶子节点来说,其子节点表示了一种用于拆分该节点表示的目标组,并扩展到分离状态的方式。
86.例如,图3中的自组装二叉树即对应了图4(图4中空心的蓝色方块代表扩展前的目标位置,实心的蓝色方块代表完全扩展后的目标位置,扩展间距为3个网格)的目标点扩展过程,根节点表示1-9号目标点组成的完整目标组,其子节点中储存的目标组分别由1-3号目标点和4-9号目标点组成。同时,目标组(参见图3)的位置在拆分成子节点时也会沿垂直
于拆分线的方向扩展分离至目标组之间相距一个预先设定的距离d(图3中d=3)。相反地,从的叶子节点开始向上回溯,即可得到并行化的组装过程。
87.在本实施例中,考虑到浮动模块在工作空间中的位置具有高度不确定性,为了确保模块按照自组装二叉树提出的对接方式完成建造,必须由机器人携带模块以控制模块的运动状态。当机器人数量小于建造一个完整结构体所需模块总数时,机器人则必须先“合作”,完成比规模更小的子结构体的建造,再将子结构体拼装形成所需形状。任意一个子结构体的构建过程都可以和自组装二叉树中的一个子树相对应。
88.例如,图3中右端深色部分的子树则对应了5、6、8、9号目标形成的目标组,由扩展状态到对接形成一个2
×
2的正方形结构的过程。为了保证组装可以顺利进行,并且最大化并行效率,机器人将首先通过在自组装二叉树的叶子节点中从左到右遍历目标组来构建子结构。该子树的大小由以下的公式1决定:
[0089][0090]
其中表示第i个子树中的主导目标数量(nr表示工作空间内的机器人总数),主导目标(principle target)指的是位于自组装二叉树上,从叶子节点开始向上回溯,出现的第一个父节点包含目标点个数大于2的节点。主导目标通常为包含一个或两个目标点的目标组,它可以是自组装树中的叶子节点或叶子节点的父节点(取决于自组装树是否平衡,如图3中所示的框部分)。除去自组装树中由于保证平衡树添加的分支,其他分支上的主导目标表示了可以由两个机器人共同完成对接的最小单位,公式1通过限制以保证至少有一个机器人是可以携带模块自由移动的,以防止出现所有机器人都携带模块在不同的目标位置上等待其他模块完成对接的死锁情况。
[0091]
在本实施例中,根据给定工作空间内的机器人总数nr,来确定可以并行完成的主导目标数量,并由主导目标数量确定可以完成建造的子树大小。
[0092]
举例:假设当前任务为由3个机器人(nr=3)完成一个浮动结构体的建造,其中,该结构体的建造过程可以由图3中的自组装树表示。对于构建一个包含9个模块的浮动结构,不可能只使用3个机器人完全并行化地按照自组装树回溯并完成组装,因此需要把大任务(完成包含9个模块的结构体)拆分成一系列可以独立完成的小任务(完成2/3/4个模块组合成的子结构体,再把这些子结构体连接以完成大任务)。对于小任务到底有多“小”才可以实现并行操作,则需要由公式(1)确定。此时nr=3,则最大只能为2,因此,会得到如图3所示的子树拆分方式(用不同颜色表示)。
[0093]
在本实施例中,当确定之后,子树的规模也随之确定。图3显示了当
nr
=3时,根据公式1得出的子树(用不同颜色标记)。
[0094]
对于给定的nr和存在满足公式1的最大值,该最大值可以由执行图5中的算法1得到。图6为对算法1的原理进行了举例阐释。由于自组装树的叶子节点对于该部分没有影响,图6省略了叶子节点以便更好地关注自组装树上层的结构。
[0095]
具体地,本实施例的一种实现方式中,步骤s103包括以下步骤:
[0096]
步骤s103a,遍历每个所述组装目标组,得到的起始主导目标节点和终止节点;
[0097]
步骤s103b,寻找所述起始主导目标节点和所述终止节点之间的最短路径,确定所述起始主导目标节点和所述终止节点的共同祖先节点;
[0098]
步骤s103c,将所述共同祖先节点作为最大子树的根节点的候选节点;
[0099]
步骤s103d,对所述候选节点进行判断,并根据判断结果选择所述候选节点相邻的满足节点要求的替代节点;
[0100]
步骤s103e,根据所述替代节点确定所述主导目标数量。
[0101]
在本实施例中,假设图6中的二叉树表示了一个自组装二叉树中元素的索引(可以通过广度优先搜索排序使得同一深度节点的索引是递增的)。由于nr=4,所以能够完成的子树至多有3个主导目标节点。如图6所示,为了确定本实施例中在根据公式1遍历下得到的起始主导目标节点10和终止节点12,通过寻找二者之间的最短路径确定了他们的共同祖先节点1,并将节点1作为最大子树的根节点的候选者。通过算法判断可得,节点1下子树的终止节点(节点15)索引大于公式1要求的终止节点(节点12),因此,本实施例中将节点1左侧的子节点(节点2)替代节点1作为最大子树的根节点的候选者。对于节点2,终止节点的要求已经满足,但节点2下子树的起始节点(节点8)索引小于当前循环下的起始节点(节点10),因此,本实施例中将节点2右侧的子节点(节点5)替代节点2作为最大子树的根节点的候选者。此时,终止节点与起始节点的要求均满足,便可随之确定。
[0102]
本实施例中根据输入的结构体形状生成自组装二叉树,并根据自组装二叉树确定组装过程的组装顺序决策规则,机器人根据自组装二叉树的顺序即可完成对于特定输入形状的自组装过程,实现了并行化拼接的策略,充分利用了机器人的运载能力,大大提高了自组装的执行效率。
[0103]
如图1所示,在本发明实施例的一种实现方式中,水面建造的并行自组装方法还包括以下步骤:
[0104]
步骤s200,根据所述组装顺序决策规则对各机器人进行自组装规划,并根据规划的进度控制各机器人执行对应的状态。
[0105]
在本实施例中,在得到自组装二叉树后,对于每个机器人的自组装规划,机器人需在三种状态中切换:抓取模块状态、导航状态(向目标导航)和对接状态。每个机器人根据自组装顺序记录自己的进度(即当前机器人正在建造哪个子结构,负责哪个目标点/组)。
[0106]
具体地,本实施例的一种实现方式中,步骤s200包括以下步骤:
[0107]
步骤s201,根据所述组装顺序决策规则确定各机器人对应的组装进度;
[0108]
步骤s202,根据所述组装进度确定取模块或子结构;
[0109]
步骤s203,对抓取模块或子结构的机器人规划对应的执行动作。
[0110]
在本实施例中,在抓取模块的状态下,机器人将根据其记录的组装进度决定是取模块还是取子结构。一旦机器人完成了模块的抓取,它将导航到当前的目标位置,并执行对应的动作。
[0111]
具体地,本实施例的一种实现方式中,步骤s203包括以下步骤:
[0112]
步骤s203a,若当前机器人将阻挡下一机器人的对接动作,则将当前机器人与模块之间的对接面切换至无冲突的对接方式;
[0113]
步骤s203b,若当前的目标位置已被其他机器人占据,则按照自组装树规定的组装
顺序改变目标;
[0114]
步骤s203c,若对两个机器人对接完成,则将对接中的一个机器人的状态转变为模块获取状态,并将另一个机器人的状态转变为将组装后的子结构携带至父节点的目标组对接的状态。
[0115]
在本实施例中,对抓取模块或子结构的机器人规划对应的执行动作时,执行以下动作:
[0116]
(1)如果机器人将阻挡下一个对接动作(因为机器人不允许旋转),它切换与模块之间的对接面至一个没有冲突的对接方式;
[0117]
或者(2)如果其当前的目标位置已经被另一个机器人占据,它将按照自组装树规定的组装顺序改变目标。一旦机器人到达目标位置,它将等待其他机器人携带模块到来并进入对接状态。
[0118]
对接完成后,两个机器人中的一个将离开并转变为模块获取状态,另一个将携带组装好的子结构,前往父节点的目标组并对接,直到装配子树的根节点所表示的结构被组装完成。图7中算法2可以用来完成机器人的自组装规划。当整个结构完成后,规划器将终止。
[0119]
如图1所示,在本发明实施例的一种实现方式中,水面建造的并行自组装方法还包括以下步骤:
[0120]
步骤s300,对处于导航状态的机器人进行路径规划,并根据规划的路径控制对应的机器人将携带的模块或子结构搬运至指定位置,以组装所述结构体形状中对应的结构。
[0121]
在本实施例中,假设机器人应该能够导航到工作空间中的特定目标位置。可以采用a*搜索算法进行机器人的路径规划。由于机器人周围的环境中有其他移动的物体,机器人在每个时间段都会不断地重新规划自己的路径。在a*搜索算法的基础上,本实施例中做了一些调整,以确保无碰撞规划和多机器人之前不会互相干扰。在本实施例中,将由机器人和机器人携带的模块构成的组定义为一个装配组(assembly group),以下将装配组作为一个整体来考虑路径规划。
[0122]
具体地,在本实施例的一种实现方式中,步骤s300包括以下步骤:
[0123]
步骤s301,将各机器人及携带的模块或子结构定义为一个装配组;
[0124]
步骤s302,检测各机器人当前位置的障碍物;
[0125]
步骤s303,若无障碍物,则寻找从携带的模块或子结构的位置到对应的目标位置的可行路径;
[0126]
步骤s304,若有障碍物,则将装配组视为具有较大尺寸的单个机器人,并对应调整障碍物膨胀的安全距离,根据调整的安全距离规划绕道路径;
[0127]
步骤s305,根据规划的路径控制对应的机器人将携带的模块或子结构搬运至指定位置,以组装所述结构体形状中对应的结构。
[0128]
在本实施例中,机器人的尺寸不能被忽视,因此机器人应该与周围的障碍物保持一个安全距离d。这可以通过障碍物膨胀来保证。也就是说,机器人将把所有检测到的障碍物的位置和其周边的宽度等于d的位置视为在其认知地图中被占用,并使用该地图进行路径规划。
[0129]
然而,对于一个装配组作为一个整体的移动,仅仅保证机器人的无碰撞规划是不
够的(如图8中的)。一个装配组在一个时间步下按照它规划生成的路径移动一步,其规划路径的有效性也将通过只检查该组在规划路径中的下一步的位置来确定,由于存在其他移动的物体,机器人将在每个时间步中重新生成其未来路径。如果该组的下一个时间步的位置对于装配组整体不是有效的,那么该机器人有两种选择可以找到可行的路径:
[0130]
a)机器人携带的模块依次规划路径,即寻找从模块位置到相应目标位置的可行路径。然后,装配组将检查整个组是否存在有效路径(例如,当障碍物(ii)不存在时,图8中的是有效的);
[0131]
b)装配组被视为具有较大尺寸的单个机器人,并相应地调整障碍物膨胀的安全距离(例如,图8中的在障碍物ii存在时是有效的,而和都无效)。
[0132]
虽然方法b)可以确保提议的未来路径对整个团体有效,但方法b)也忽略了潜在的更短的可行路径,因为一个装配组可能不是一个规则的形状,而且障碍物膨胀禁止它前往一些合法的位置。相反,方法a)可以发现通过窄道的捷径,但当通道对整个装配组来说太窄时,方法a)无法规划得出绕道路径。因此,本实施例中整合了上述两种方法,并且在图10的算法3中总结了上述路径规划的实现。
[0133]
在本发明实施例的一种实现方式中,水面建造的并行自组装方法还包括以下步骤:
[0134]
步骤s400,根据各机器人的工作状态向各机器人分配不同的优先级;
[0135]
步骤s500,将优先级较低的机器人调整为避让状态,并规划对应的绕道路径,以避让优先级较高的机器人;
[0136]
步骤s600,根据设置的优先级控制多个机器人协调,以组装所述结构体形状中对应的子结构或整个结构。
[0137]
在本实施例中,在机器人工作的过程中,当不止一个装配组出现在工作区时,装配组之间的协调是必要的。在本实施例中,将所有的机器人用不同的id标记,记为ri,i=1,...,nr,其中下标i表示机器人ri的规划优先级,i的值越小,说明规划优先级越高。
[0138]
如果两个机器人(或相当于两个装配组)ri和rj相遇,并且i《(机器人可以通过本地通信获得优先级信息),那么ri在规划其未来路径时,将忽略rj及其携带的模块的存在,而rj应将ri及其携带的模块视为障碍物以完成规划。因此,rj将绕过ri。ri要么直接向前移动,要么停在自己的位置上,等待rj完成绕路(如图9所示)。对于在目标位置等待对接的装配组,它们暂时被分配到最高优先级i=0,这意味着所有其他经过的机器人都应该为它们让路。
[0139]
在本实施例中,图11中展示了一个算法运行的详细示例;其中,图11中a展示了机器人1、机器人2以及机器人3按照算法协作将模块1、模块2、模块3以及模块4进行组装,得到子结构1(模块2+模块4)和子结构2(模块1+模块3);图11中b展示了机器人1、机器人3将子结构1和子结构2进行组装,得到整体结构;以及机器人1、机器人2以及机器人3完成作业后归位的示意图。
[0140]
值得一提的是,本实施例中提出的算法,在机器人数量只有一个时,将退化为串行策略的算法;本实施例中算法中的机器人尺寸可小于模块尺寸;机器人移动过程中规划路径时,除了a*算法外,可采用rrt、dijkstra等路径规划算法;在实际的应用场景中,本实施例中的技术方案还可以用于临时浮桥快速建造、水面浮台拼接等水面建造任务。
[0141]
本实施例通过上述技术方案达到以下技术效果:
[0142]
本实施例根据输入的结构体形状生成自组装二叉树,可以确定组装过程的组装顺序决策规则;并且,根据组装顺序决策规则对各机器人进行自组装规划,可以控制各机器人执行对应的状态;通过对处于导航状态的机器人进行路径规划,可以控制对应的机器人将携带的模块或子结构搬运至指定位置,以组装结构体形状中对应的结构。本实施例将无动力建筑模块和并行化策略引入了自组装规划,通过引入低成本的建筑模块,使得进行大规模建造成为可能,以及通过采用并行化拼接的策略,充分利用了机器人的运载能力,提高了自组装的执行效率。
[0143]
示例性设备
[0144]
基于上述实施例,本发明还提供一种终端,包括:通过系统总线连接的处理器、存储器、接口、显示屏以及通讯模块;其中,所述处理器用于提供计算和控制能力;所述存储器包括存储介质以及内存储器;所述存储介质存储有操作系统和计算机程序;所述内存储器为所述存储介质中的操作系统和计算机程序的运行提供环境;所述接口用于连接外部设备,例如,移动终端以及计算机等设备;所述显示屏用于显示相应的信息;所述通讯模块用于与云端服务器或移动终端进行通讯。
[0145]
所述计算机程序被所述处理器执行时用以实现一种水面建造的并行自组装方法的操作。
[0146]
本领域技术人员可以理解的是,图12中示出的原理框图,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的终端的限定,具体的终端可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0147]
在一个实施例中,提供了一种终端,其中,包括:处理器和存储器,所述存储器存储有水面建造的并行自组装程序,所述水面建造的并行自组装程序被所述处理器执行时用于实现如上所述的水面建造的并行自组装方法的操作。
[0148]
在一个实施例中,提供了一种存储介质,其中,所述存储介质存储有水面建造的并行自组装程序,所述水面建造的并行自组装程序被所述处理器执行时用于实现如上所述的水面建造的并行自组装方法的操作。
[0149]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一非易失性存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本发明所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。
[0150]
综上,本发明提供了一种水面建造的并行自组装方法、终端及存储介质,方法包括:根据输入的结构体形状生成自组装二叉树,并根据自组装二叉树确定组装过程的组装顺序决策规则;根据组装顺序决策规则对各机器人进行自组装规划,并根据规划的进度控制各机器人执行对应的状态;对处于导航状态的机器人进行路径规划,并根据规划的路径控制对应的机器人将携带的模块或子结构搬运至指定位置,以组装结构体形状中对应的结构。本发明将无动力建筑模块和并行化策略引入了自组装规划,通过引入低成本的建筑模块,使得进行大规模建造成为可能,以及通过采用并行化拼接的策略,充分利用了机器人的运载能力,提高了自组装的执行效率。
[0151]
应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可
以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1