Parallel self-assembly method, terminal and storage medium for water surface construction
By adopting parallel self-assembly method in water surface construction, the self-assembly binary tree parallel planning robot state and path are generated, which solves the problem of low efficiency of traditional self-assembly planning and achieves low-cost and efficient large-scale surface construction.
Patent Information
- Application Number
- CN202211253797.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-10-13
- Publication Date
- 2025-08-29
- Estimated Expiration
- 2042-10-13
AI Technical Summary
Existing self-assembly planning methods are inefficient in water surface construction, traditional module structure is complex and costly, and existing algorithms assume that each robot can carry only one module and adopt a serial strategy, resulting in poor assembly efficiency.
By adopting the parallel self-assembly method, the assembly sequence decision rules are determined by generating a self-assembly binary tree. The robot can carry multiple modules in parallel, combining path planning and state control to achieve efficient handling and assembly of modules.
It reduces the difficulty of module design and manufacturing, realizes efficient parallel assembly of large-scale surface construction, makes full use of the robot's carrying capacity, and improves self-assembly efficiency.
Smart Images

Figure CN115648207B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of robotics technology, and in particular to a parallel self-assembly method, terminal and storage medium for water surface construction. Background Art
[0002] Traditional surface construction technologies for floating houses, pontoons, and large floating platforms present challenges such as complex environments, cramped construction spaces, high construction difficulty, and difficult maintenance that urgently need to be addressed. Urgent situations such as flood rescue also place demands on construction timelines. The self-assembly technology of modular unmanned boats enables the rapid and fully autonomous construction of surface platforms, offering advantages such as safety, efficiency, ease of construction and maintenance, and minimal weather impact. On the one hand, the unmanned boats' carrying capacity and maneuverability can reduce the number of construction workers, preventing them from being exposed to hazardous environments (e.g., floods, tides, etc.), significantly reducing safety risks. On the other hand, through scheduling using self-assembly algorithms, the unmanned boats optimize the assembly sequence and travel along the shortest path, significantly improving construction efficiency.
[0003] Existing self-assembly planning methods generally assume that the building blocks are self-powered and can autonomously move to their target locations for active docking. However, such modules are complex and costly, making them unsuitable for large-scale construction. Furthermore, existing planning algorithms (robot-only or robot-plus-modules) assume that each robot can only carry one module and employ a serial strategy to assemble the modules onto the target structure one by one. Given the low resistance of the water surface, this assumption is clearly unreasonable, resulting in low assembly efficiency in existing self-assembly planning methods.
[0004] Therefore, the existing technology needs to be improved. Summary of the Invention
[0005] The technical problem to be solved by the present invention is that, in response to the defects of the existing technology, the present invention provides a parallel self-assembly method, terminal and storage medium for surface construction to solve the technical problem of low assembly efficiency of traditional self-assembly planning methods.
[0006] The technical solutions adopted by the present invention to solve the technical problems are as follows:
[0007] In a first aspect, the present invention provides a parallel self-assembly method for surface construction, comprising:
[0008] Generating a self-assembly binary tree according to the input structure shape, and determining an assembly sequence decision rule of the assembly process according to the self-assembly binary tree;
[0009] Performing self-assembly planning for each robot according to the assembly sequence decision rule, and controlling each robot to execute a corresponding state according to the planned progress, wherein the corresponding states include: a gripping module state, a navigation state, and a docking state;
[0010] Path planning is performed on the robot in the navigation state, and the corresponding robot is controlled according to the planned path to move the carried modules or substructures to the designated location to assemble the corresponding structure in the structural shape.
[0011] In one implementation, generating a self-assembly binary tree according to an input structure shape includes:
[0012] Representing each node in the self-assembly binary tree as an assembly target group according to the input structure shape;
[0013] Determining the maximum parallel efficiency of each assembly target group, and setting the corresponding number of robots according to the maximum parallel efficiency;
[0014] Traversing each of the assembly target groups, constructing a substructure of the structure shape, and determining the number of dominant targets based on the constructed substructure;
[0015] The self-assembly binary tree is obtained according to the number of the dominant targets.
[0016] In one implementation, representing each node in the self-assembly binary tree as an assembly target group according to the input structure shape includes:
[0017] Represent the child nodes under each non-leaf node as the assembly target group for splitting;
[0018] The extended separation is performed along a direction perpendicular to the splitting line of each assembly target group according to a preset distance.
[0019] In one implementation, traversing each of the assembly target groups, constructing a substructure of the structure shape, and determining the number of dominant targets based on the constructed substructures includes:
[0020] Traversing each of the assembly target groups to obtain the starting dominant target node and the ending node;
[0021] Finding the shortest path between the starting dominant target node and the ending node, and determining a common ancestor node of the starting dominant target node and the ending node;
[0022] Taking the common ancestor node as a candidate node for the root node of the largest subtree;
[0023] Judging the candidate node, and selecting a replacement node adjacent to the candidate node that meets the node requirements according to the judgment result;
[0024] The number of dominant targets is determined based on the replacement nodes.
[0025] In one implementation, performing self-assembly planning on each robot according to the assembly sequence decision rule, and controlling each robot to execute a corresponding state according to the planned progress, includes:
[0026] Determine the assembly progress corresponding to each robot according to the assembly sequence decision rule;
[0027] Determining to take a module or substructure according to the assembly progress;
[0028] The robot plans the corresponding execution actions for the grasping module or substructure.
[0029] In one implementation, the robot planning the corresponding execution action for the grasping module or substructure includes:
[0030] If the current robot will block the docking action of the next robot, the docking surface between the current robot and the module will be switched to a non-conflicting docking mode;
[0031] If the current target position is occupied by another robot, the target is changed according to the assembly order specified by the self-assembly tree;
[0032] If the docking of the two robots is completed, the state of one of the docking robots is changed to the module acquisition state, and the state of the other robot is changed to the state of carrying the assembled substructure to the target group docking state of the parent node.
[0033] In one implementation, the path planning of the robot in the navigation state and the control of the corresponding robot to move the carried module or substructure to a designated location according to the planned path to assemble the corresponding structure in the structural shape include:
[0034] Each robot and the modules or substructures it carries are defined as an assembly group;
[0035] Detect obstacles at each robot's current position;
[0036] If there are no obstacles, a feasible path is found from the location of the carried module or substructure to the corresponding target location;
[0037] If there are obstacles, the assembly group is treated as a single robot with a larger size, and the safety distance of the obstacle expansion is adjusted accordingly, and a detour path is planned based on the adjusted safety distance;
[0038] According to the planned path, the corresponding robot is controlled to move the carried modules or substructures to the designated location to assemble the corresponding structure in the structural shape.
[0039] In one implementation, the method further includes:
[0040] Assign different priorities to each robot according to its working status;
[0041] Adjust the lower-priority robots to an avoidance state and plan corresponding detour paths to avoid the higher-priority robots;
[0042] The plurality of robots are controlled to coordinate according to the set priorities to assemble the corresponding substructure or the entire structure in the structural shape.
[0043] In a second aspect, the present invention also provides a terminal comprising: a processor and a memory, wherein the memory stores a parallel self-assembly program for surface construction, and when the parallel self-assembly program for surface construction is executed by the processor, it is used to implement the operation of the parallel self-assembly method for surface construction as described in the first aspect.
[0044] In a third aspect, the present invention also provides a storage medium, which is a computer-readable storage medium, and which stores a parallel self-assembly program for water surface construction. When the parallel self-assembly program for water surface construction is executed by a processor, it is used to implement the operation of the parallel self-assembly method for water surface construction as described in the first aspect.
[0045] The present invention adopts the above technical solution to achieve the following effects:
[0046] The present invention generates a self-assembly binary tree based on the input structure shape, which can determine the assembly sequence decision rules for the assembly process. Furthermore, each robot is self-assembled according to the assembly sequence decision rules, and each robot can be controlled to execute the corresponding state. By performing path planning on the robot in the navigation state, the corresponding robot can be controlled to transport the modules or substructures it carries to a designated location to assemble the corresponding structure in the structure shape. The present invention incorporates unpowered building modules and parallelization strategies into self-assembly planning. By introducing low-cost building modules, large-scale construction is possible. By adopting a parallelization strategy, the robot's carrying capacity is fully utilized, improving the efficiency of self-assembly execution. BRIEF DESCRIPTION OF THE DRAWINGS
[0047] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on the structures shown in these drawings without paying any creative work.
[0048] Figure 1 It is a flow chart of a parallel self-assembly method for surface construction in one implementation of the present invention.
[0049] Figure 2 This is a flow chart of an algorithm for parallel module self-assembly on water in one implementation of the present invention.
[0050] Figure 3 It is a schematic diagram of a self-assembly binary tree used to represent the assembly order in one implementation of the present invention.
[0051] Figure 4 It is a schematic diagram of a target expansion process related to a self-assembled binary tree in one implementation of the present invention.
[0052] Figure 5 It is a schematic diagram of Algorithm 1 of the maximum subtree generator in one implementation of the present invention.
[0053] Figure 6 It is a schematic diagram of the execution process of the maximum subtree generator in one implementation of the present invention.
[0054] Figure 7 It is a schematic diagram of the self-assembly planning algorithm 2 in one implementation of the present invention.
[0055] Figure 8 It is a planning diagram of a separate assembly group in robot path planning in one implementation of the present invention.
[0056] Figure 9 This is a schematic diagram of the interaction between multiple robot groups in robot path planning in one implementation of the present invention.
[0057] Figure 10 It is a schematic diagram of Algorithm 3 for path planning of the assembly group as a whole in one implementation of the present invention.
[0058] Figure 11 It is a schematic diagram of an example of a self-assembly process in one implementation of the present invention.
[0059] Figure 12 It is a functional principle diagram of a terminal in one implementation of the present invention.
[0060] The purpose, features and advantages of the present invention will be further described with reference to the accompanying drawings and in conjunction with the embodiments. DETAILED DESCRIPTION
[0061] In order to make the purpose, technical solutions and advantages of the present invention more clear and distinct, the present invention is further described in detail below with reference to the accompanying drawings and examples. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not intended to limit the present invention.
[0062] Exemplary Methods
[0063] Existing self-assembly planning methods generally assume that the building blocks are self-powered and can autonomously move to their target locations for active docking. However, such modules are complex and costly, making them unsuitable for large-scale construction. Furthermore, existing planning algorithms (robot-only or robot-plus-modules) assume that each robot can only carry one module and employ a serial strategy to assemble the modules onto the target structure one by one. Given the low resistance of the water surface, this assumption is clearly unreasonable, resulting in low assembly efficiency in existing self-assembly planning methods.
[0064] To address the above technical issues, an embodiment of the present invention provides a parallel self-assembly method for surface construction. The method proposed in this invention improves existing self-assembly planning algorithms in two ways. On the one hand, it proposes that robots (i.e., unmanned boats) carry unpowered building modules for construction, greatly reducing costs. On the other hand, it proposes that each robot can simultaneously carry multiple connected modules, thereby achieving parallel splicing. As the scale increases, the efficiency of this parallelization strategy is much higher than that of serial construction.
[0065] like Figure 1 As shown, an embodiment of the present invention provides a parallel self-assembly method for surface construction, comprising the following steps:
[0066] Step S100 , generating a self-assembly binary tree according to the input structure shape, and determining an assembly sequence decision rule of an assembly process according to the self-assembly binary tree.
[0067] In this embodiment, the parallel self-assembly method for surface construction is applied to a terminal, which includes but is not limited to: a robot, a computer, a mobile terminal and other devices; wherein the computer and the mobile terminal and other devices are control devices of the robot.
[0068] This embodiment introduces unpowered building modules and parallelization strategies into self-assembly planning, and proposes a parallel self-assembly planning algorithm based on robot-carried modules. This self-assembly planning algorithm has the following advantages:
[0069] 1. By introducing low-cost building modules, the difficulty of module design and manufacturing is reduced, making large-scale construction possible;
[0070] 2. By adopting a parallel splicing strategy, the robot's carrying capacity is fully utilized, greatly improving the execution efficiency of self-assembly.
[0071] In this embodiment, a robot executes a self-assembly algorithm to assemble underactuated floating modules (hereinafter referred to as modules) equipped with docking devices into a planar structure specified by user input. The algorithm inputs the shape of the desired structure (i.e., the coordinates of all target points in the workspace). The robot executes the self-assembly algorithm to determine the appropriate assembly sequence and connect the modules together according to the input specified shape. The constructed structure can be divided into a series of squares, each of which is called a target point and will be occupied by a floating module after construction is completed. A group of interconnected target points that can represent a substructure or the entire structure is called a target group.
[0072] During module assembly, the following constraints and assumptions must be met: First, docking between robots and modules, between modules, and between modules and immovable docking points must be one-to-one; no single object can dock with two or more objects simultaneously. All robots and modules have self-aligning connectors (docking heads) on the front, back, left, and right sides. Furthermore, all docking heads are active, meaning that both the robot and the module can decide whether to dock with a nearby docking mechanism. Other assumptions and constraints are stated as properties of the robots and modules, respectively.
[0073] In this embodiment, it is assumed that all robots have the same physical characteristics and are labeled with different IDs for identification. At the same time, the positions of all robots are fully controllable and will not be affected by water flow, but the robots can only move in four directions: forward, backward, left, and right, and cannot rotate. The robot can obtain its own position information in the workspace and navigate to the target position without colliding with any static obstacles or moving objects. At the same time, each robot maintains a cognitive map of its own in the workspace to record the positions of neighboring robots, modules, substructures, and obstacles within the robot's line of sight. The robot can communicate wirelessly with neighboring robots or communicate wired with the modules it carries.
[0074] All modules are square and interchangeable, and their position is highly uncertain unless they are attached directly to the robot or to a module pack carried by the robot. The modules have four-sided ranging capabilities to detect potential collisions with nearby objects and can transmit this ranging information to the connected robot via wired communication.
[0075] In this embodiment, a self-assembly planning algorithm for building floating structures on water is proposed. The process of the self-assembly planning algorithm is as follows: Figure 2 shown.
[0076] Specifically, in one implementation of this embodiment, step S100 includes the following steps:
[0077] Step S101, representing each node in the self-assembly binary tree as an assembly target group according to the input structure shape;
[0078] Step S102, determining the maximum parallel efficiency of each assembly target group, and setting the corresponding number of robots according to the maximum parallel efficiency;
[0079] Step S103, traversing each of the assembly target groups, constructing a substructure of the structural shape, and determining the number of dominant targets according to the constructed substructure;
[0080] Step S104: obtaining the self-assembly binary tree according to the number of the dominant targets.
[0081] In this embodiment, to determine the appropriate assembly sequence, before assembling the structure, a self-assembly binary tree is first generated based on the input structure shape. This tree represents the assembly process and sets the assembly sequence decision rules. The robot then completes the self-assembly process for a specific input shape according to the sequence in the self-assembly binary tree. The corresponding planning algorithm can be divided into upper-level self-assembly planning and lower-level path planning.
[0082] Specifically, in one implementation of this embodiment, step S101 includes the following steps:
[0083] Step S101a, representing the child nodes under each non-leaf node as an assembly target group for splitting;
[0084] Step S101b: performing expansion separation along a direction perpendicular to the splitting line of each assembly target group according to a preset distance.
[0085] In this embodiment, the self-assembled binary tree It is a binary tree structure used to represent the connection between target points, such as Figure 3 shown. Each node in represents a target group. For a non-leaf node with two child nodes, its child nodes represent a method for splitting the target group represented by the node and expanding it to a separated state.
[0086] For example, Figure 3 The self-assembly binary tree in Figure 4 ( Figure 4 The hollow blue square represents the target position before expansion, and the solid blue square represents the target position after full expansion. The expansion interval is 3 grids. The root node represents the complete target group consisting of target points 1-9, and the target groups stored in its child nodes are composed of target points 1-3 and target points 4-9 respectively. At the same time, the target group (see Figure 3 ) will also expand and separate along the direction perpendicular to the split line when splitting into child nodes until the target groups are separated by a preset distance d( Figure 3 In contrast, Starting from the leaf node and tracing back upwards, the parallel assembly process can be obtained.
[0087] In this embodiment, given the high uncertainty of the floating module's position within the workspace, robots are required to carry the modules and control their motion to ensure they are constructed according to the docking scheme proposed by the self-assembling binary tree. When the number of robots is less than the total number of modules required to construct a complete structure, the robots must first collaborate to construct smaller substructures, which are then assembled to form the desired shape. The construction process of any substructure corresponds to a subtree in the self-assembling binary tree.
[0088] For example, Figure 3 The dark subtree on the center right corresponds to the target group formed by targets 5, 6, 8, and 9, and the process of expanding and docking to form a 2×2 square structure. To ensure smooth assembly and maximize parallel efficiency, the robot first constructs a substructure by traversing the target group from left to right through the leaf nodes of the self-assembly binary tree. The size of this subtree is determined by the following formula 1:
[0089]
[0090] in represents the number of dominant targets in the ith subtree (N R represents the total number of robots in the workspace), and the principle target refers to the Starting from the leaf node, trace back upwards, the first parent node that appears contains a node with more than 2 target points. The dominant target is usually a target group containing one or two target points. It can be a leaf node in the self-assembly tree or the parent node of a leaf node (depending on whether the self-assembly tree is balanced, such as Figure 3 ). Excluding the branches added to the self-assembly tree to ensure the balance of the tree, the dominant targets on other branches represent the minimum unit that can be docked by two robots. Formula 1 is obtained by limiting This ensures that at least one robot can move freely with the module, to prevent a deadlock situation where all robots carry modules at different target locations and wait for other modules to complete docking.
[0091] In this embodiment, according to the total number of robots N in a given workspace R , to determine the number of dominant targets that can be completed in parallel, and the number of dominant targets determines the size of the subtree that can be built.
[0092] For example: Assume that the current task is to have 3 robots (N R =3) Complete the construction of a floating structure, wherein the construction process of the structure can be Figure 3 The self-assembly tree in the figure is represented. For building a floating structure containing 9 modules, it is impossible to use only 3 robots to completely parallelize and backtrack and complete the assembly according to the self-assembly tree. Therefore, it is necessary to split the large task (completing the structure containing 9 modules) into a series of small tasks that can be completed independently (completing the substructure composed of 2 / 3 / 4 modules, and then connecting these substructures to complete the large task). How "small" the small task is to achieve parallel operation needs to be determined by formula (1). At this time, N R =3, then The maximum value can only be 2, so we get Figure 3 The subtree splits shown are represented by different colors.
[0093] In this embodiment, when After confirmation, the subtree The scale is also determined accordingly. Figure 3 Shows when NR =3, the subtrees obtained according to Formula 1 (marked with different colors).
[0094] For a given N R and There is a maximum value that satisfies Formula 1, which can be obtained by executing Figure 5 The algorithm 1 in the above formula is obtained. Figure 6 This example illustrates the principle of Algorithm 1. Since the leaf nodes of the self-assembly tree have no effect on this part, Figure 6The leaf nodes are omitted to better focus on the structure of the upper level of the self-assembly tree.
[0095] Specifically, in one implementation of this embodiment, step S103 includes the following steps:
[0096] Step S103a, traversing each of the assembly target groups to obtain the starting dominant target node and the ending node;
[0097] Step S103b, finding the shortest path between the starting dominant target node and the ending node, and determining a common ancestor node of the starting dominant target node and the ending node;
[0098] Step S103c, taking the common ancestor node as a candidate node for the root node of the largest subtree;
[0099] Step S103d, judging the candidate node, and selecting a replacement node adjacent to the candidate node that meets the node requirements according to the judgment result;
[0100] Step S103e: determining the number of the dominant targets according to the replacement nodes.
[0101] In this embodiment, it is assumed that Figure 6 The binary tree in represents the index of the elements in a self-assembling binary tree (the index of the nodes at the same depth can be increased by breadth-first search). R =4, so the subtree that can be completed has at most 3 dominant target nodes. Figure 6 As shown, in order to determine In this embodiment, the starting dominant target node 10 and the ending node 12 obtained by traversing according to Formula 1 determine their common ancestor node 1 by finding the shortest path between the two, and use node 1 as a candidate for the root node of the largest subtree. It can be determined through algorithmic judgment that the index of the ending node (node 15) of the subtree under node 1 is greater than the ending node (node 12) required by Formula 1. Therefore, in this embodiment, the child node (node 2) on the left side of node 1 replaces node 1 as a candidate for the root node of the largest subtree. For node 2, the requirement of the ending node has been met, but the index of the starting node (node 8) of the subtree under node 2 is less than the starting node (node 10) under the current loop. Therefore, in this embodiment, the child node (node 5) on the right side of node 2 replaces node 2 as a candidate for the root node of the largest subtree. At this point, the requirements of both the ending node and the starting node are met. It can then be determined.
[0102] In this embodiment, a self-assembly binary tree is generated according to the input structure shape, and the assembly order decision rules of the assembly process are determined according to the self-assembly binary tree. The robot can complete the self-assembly process for a specific input shape according to the order of the self-assembly binary tree, realizing a parallel splicing strategy, making full use of the robot's carrying capacity, and greatly improving the execution efficiency of self-assembly.
[0103] like Figure 1 As shown, in one implementation of the embodiment of the present invention, the parallel self-assembly method for surface construction further includes the following steps:
[0104] Step S200 , performing self-assembly planning on each robot according to the assembly sequence decision rule, and controlling each robot to execute a corresponding state according to the planned progress.
[0105] In this embodiment, after obtaining the self-assembly binary tree, each robot switches between three states for its self-assembly plan: the grasping module state, the navigation state (navigating to the target), and the docking state. Each robot records its progress according to the self-assembly sequence (i.e., which substructure the robot is currently building and which target point / group it is responsible for).
[0106] Specifically, in one implementation of this embodiment, step S200 includes the following steps:
[0107] Step S201, determining the assembly progress corresponding to each robot according to the assembly sequence decision rule;
[0108] Step S202, determining a module or substructure to be taken according to the assembly progress;
[0109] Step S203: planning corresponding execution actions for the robot to grasp the module or substructure.
[0110] In this embodiment, when the robot is in the state of grabbing a module, it will decide whether to take the module or the substructure based on its recorded assembly progress. Once the robot completes grabbing the module, it will navigate to the current target location and perform the corresponding action.
[0111] Specifically, in one implementation of this embodiment, step S203 includes the following steps:
[0112] Step S203a: If the current robot will block the docking action of the next robot, the docking surface between the current robot and the module is switched to a non-conflicting docking mode;
[0113] Step S203b, if the current target position is occupied by another robot, change the target according to the assembly sequence specified by the self-assembly tree;
[0114] Step S203c: If the docking of the two robots is completed, the state of one of the docked robots is changed to the module acquisition state, and the state of the other robot is changed to the state of carrying the assembled substructure to the target group docking state of the parent node.
[0115] In this embodiment, when planning the corresponding execution action for the robot grasping the module or substructure, the following actions are performed:
[0116] (1) If the robot will block the next docking action (because the robot is not allowed to rotate), it switches the docking surface between the module to a non-conflicting docking mode;
[0117] Or (2) if its current target position is already occupied by another robot, it will change the target according to the assembly order specified by the self-assembly tree. Once the robot reaches the target position, it will wait for the other robot carrying the module to arrive and enter the docking state.
[0118] After the docking is completed, one of the two robots will leave and transform into the module acquisition state, and the other will carry the assembled substructure, go to the target group of the parent node and dock until the structure represented by the root node of the assembly subtree is assembled. Figure 7 Algorithm 2 can be used to complete the robot's self-assembly planning. When the entire structure is completed, the planner will terminate.
[0119] like Figure 1 As shown, in one implementation of the embodiment of the present invention, the parallel self-assembly method for surface construction further includes the following steps:
[0120] In step S300 , a path is planned for the robot in the navigation state, and the corresponding robot is controlled according to the planned path to move the carried modules or substructures to a designated location to assemble the corresponding structure in the structural shape.
[0121] In this embodiment, it is assumed that the robot should be able to navigate to a specific target location in the workspace. The A* search algorithm can be used to plan the robot's path. Because there are other moving objects in the robot's environment, the robot will continuously replan its path in each time period. Based on the A* search algorithm, some adjustments are made in this embodiment to ensure collision-free planning and prevent interference between multiple robots. In this embodiment, a group consisting of a robot and the modules carried by the robot is defined as an assembly group. The assembly group will be considered as a whole for path planning below.
[0122] Specifically, in one implementation of this embodiment, step S300 includes the following steps:
[0123] Step S301, defining each robot and the modules or substructures it carries as an assembly group;
[0124] Step S302, detecting obstacles at the current position of each robot;
[0125] Step S303 , if there are no obstacles, then searching for a feasible path from the location of the carried module or substructure to the corresponding target location;
[0126] Step S304: If there is an obstacle, the assembly group is treated as a single robot with a larger size, and the safety distance of the obstacle expansion is adjusted accordingly, and a detour path is planned based on the adjusted safety distance;
[0127] Step S305 , controlling the corresponding robot according to the planned path to move the carried modules or substructures to a designated location to assemble the corresponding structure in the structural shape.
[0128] In this embodiment, the robot's size cannot be ignored, so the robot should maintain a safe distance d from surrounding obstacles. This is ensured by obstacle inflation. That is, the robot will consider the positions of all detected obstacles and their surroundings with a width equal to d as occupied in its cognitive map and use this map for path planning.
[0129] However, for the movement of an assembly group as a whole, it is not enough to simply ensure collision-free planning of the robot (e.g. Figure 8 in ). An assembly group moves one step along its planned path at a time step. The validity of its planned path is determined by examining only the group's position at the next step in the planned path. Due to the presence of other moving objects, the robot regenerates its future path at each time step. If the group's position at the next time step is not valid for the assembly group as a whole, the robot has two options for finding a feasible path:
[0130] a) The modules carried by the robot plan the path in turn, that is, find a feasible path from the module position to the corresponding target position. Then, the assembly group will check whether there is a valid path for the entire group (for example, when the obstacle (II) does not exist, Figure 8 in is valid);
[0131] b) The assembly group is treated as a single robot with a larger size and the safety distance for obstacle expansion is adjusted accordingly (e.g. Figure 8 in is valid when Obstacle II is present, and and are invalid).
[0132] Although method b) can ensure that the proposed future path is valid for the entire group, it also ignores potential shorter feasible paths because an assembly group may not be a regular shape and the expansion of obstacles prohibits it from going to some legal positions. In contrast, method a) can find shortcuts through narrow passages, but when the passage is too narrow for the entire assembly group, method a) cannot plan a detour path. Therefore, this embodiment integrates the above two methods and Figure 10 The implementation of the above path planning is summarized in Algorithm 3.
[0133] In one implementation of the embodiment of the present invention, the parallel self-assembly method for surface construction further includes the following steps:
[0134] Step S400, assigning different priorities to each robot according to its working status;
[0135] Step S500: Adjust the robot with lower priority to an avoidance state and plan a corresponding detour path to avoid the robot with higher priority;
[0136] Step S600 , controlling multiple robots to coordinate according to set priorities to assemble corresponding substructures or the entire structure in the structural shape.
[0137] In this embodiment, when more than one assembly group appears in the work area during the robot operation, coordination between the assembly groups is necessary. In this embodiment, all robots are marked with different IDs, denoted as R i , i=1,...,N R , where the subscript i represents the robot R i The smaller the value of i, the higher the planning priority.
[0138] If two robots (or equivalently two assembly groups) R i and R j Meet, and i < (the robot can obtain priority information through local communication), then R i When planning its future path, R j and the existence of the modules it carries, while R j R i and the modules it carries are considered as obstacles to complete the planning. j Will bypass R i . R i Either move forward directly or stop at your position and wait for R j Complete the detour (such as Figure 9As shown in Figure 2), for assembly groups waiting for docking at the target location, they are temporarily assigned the highest priority i=0, which means that all other passing robots should make way for them.
[0139] In this embodiment, Figure 11 A detailed example of the algorithm's operation is shown in ; Figure 11 Figure a shows that robots 1, 2, and 3 collaborate to assemble modules 1, 2, 3, and 4 according to the algorithm, resulting in substructure 1 (module 2 + module 4) and substructure 2 (module 1 + module 3). Figure 11 Middle b shows a schematic diagram of robots 1 and 3 assembling substructure 1 and substructure 2 to obtain the overall structure; and robots 1, 2 and 3 returning to their positions after completing the work.
[0140] It is worth mentioning that the algorithm proposed in this embodiment will degenerate into a serial strategy algorithm when there is only one robot; the robot size in the algorithm in this embodiment can be smaller than the module size; when planning the path during the movement of the robot, in addition to the A* algorithm, path planning algorithms such as RRT and Dijkstra can be used; in actual application scenarios, the technical solution in this embodiment can also be used for water surface construction tasks such as the rapid construction of temporary floating bridges and the splicing of water floating platforms.
[0141] This embodiment achieves the following technical effects through the above technical solution:
[0142] This embodiment generates a self-assembly binary tree based on the input structure shape, determining the assembly sequence decision rules for the assembly process. Furthermore, each robot is self-assembled according to the assembly sequence decision rules, controlling each robot to execute the corresponding state. By performing path planning on the robot in the navigation state, the corresponding robot can be controlled to transport the modules or substructures it carries to a designated location to assemble the corresponding structure in the structure shape. This embodiment incorporates unpowered building modules and parallelization strategies into self-assembly planning. By introducing low-cost building modules, large-scale construction is possible. By employing a parallelized assembly strategy, the robot's carrying capacity is fully utilized, improving the efficiency of self-assembly execution.
[0143] Exemplary devices
[0144] Based on the above embodiments, the present invention also provides a terminal, comprising: a processor, a memory, an interface, a display screen, and a communication module connected via a system bus; wherein the processor is used to provide computing and control capabilities; the memory includes a storage medium and an internal memory; the storage medium stores an operating system and a computer program; the internal memory provides an environment for the operation of the operating system and computer program in the storage medium; the interface is used to connect to external devices, such as mobile terminals and computers; the display screen is used to display corresponding information; and the communication module is used to communicate with a cloud server or a mobile terminal.
[0145] When the computer program is executed by the processor, it is used to implement the operation of a parallel self-assembly method for surface construction.
[0146] It will be understood by those skilled in the art that Figure 12 The principle block diagram shown in the figure is only a block diagram of a partial structure related to the solution of the present invention, and does not constitute a limitation on the terminal to which the solution of the present invention is applied. The specific terminal may include more or fewer components than shown in the figure, or combine certain components, or have a different component arrangement.
[0147] In one embodiment, a terminal is provided, which includes: a processor and a memory, wherein the memory stores a parallel self-assembly program for surface construction, and when the parallel self-assembly program for surface construction is executed by the processor, it is used to implement the operation of the parallel self-assembly method for surface construction as described above.
[0148] In one embodiment, a storage medium is provided, wherein the storage medium stores a parallel self-assembly program for surface construction, and when the parallel self-assembly program for surface construction is executed by the processor, it is used to implement the operation of the parallel self-assembly method for surface construction as described above.
[0149] Those skilled in the art will appreciate that all or part of the processes in the above-described method embodiments can be implemented by instructing related hardware through a computer program. The computer program can be stored in a non-volatile storage medium. When executed, the computer program can include the processes in the above-described method embodiments. Any reference to memory, storage, database, or other media used in the various embodiments provided herein may include non-volatile and / or volatile memory.
[0150] In summary, the present invention provides a parallel self-assembly method, terminal, and storage medium for surface construction. The method includes: generating a self-assembly binary tree based on an input structural shape, and determining an assembly sequence decision rule for the assembly process based on the self-assembly binary tree; performing self-assembly planning for each robot based on the assembly sequence decision rule, and controlling each robot to execute a corresponding state based on the planned progress; performing path planning for robots in a navigation state, and controlling the corresponding robot to move the carried modules or substructures to a designated location based on the planned path to assemble the corresponding structure in the structural shape. The present invention introduces unpowered building modules and parallelization strategies into self-assembly planning. By introducing low-cost building modules, large-scale construction becomes possible. By adopting a parallelized splicing strategy, the carrying capacity of the robots is fully utilized, thereby improving the execution efficiency of self-assembly.
[0151] It should be understood that the application of the present invention is not limited to the above examples. For those skilled in the art, improvements or changes can be made based on the above description. All these improvements and changes should fall within the scope of protection of the claims attached to the present invention.
Claims
1. A parallel self-assembly method for surface construction, characterized in that: include: Generating a self-assembly binary tree according to the input structure shape, and determining an assembly sequence decision rule of the assembly process according to the self-assembly binary tree; Performing self-assembly planning for each robot according to the assembly sequence decision rule, and controlling each robot to execute a corresponding state according to the planned progress, wherein the corresponding states include: a gripping module state, a navigation state, and a docking state; Performing path planning for the robot in the navigation state, and controlling the corresponding robot according to the planned path to move the carried modules or substructures to a designated location to assemble the corresponding structure in the structural shape; The step of generating a self-assembly binary tree according to the input structure shape includes: Representing each node in the self-assembly binary tree as an assembly target group according to the input structure shape; Determining the maximum parallel efficiency of each assembly target group, and setting the corresponding number of robots according to the maximum parallel efficiency; Traversing each of the assembly target groups, constructing a substructure of the structure shape, and determining the number of dominant targets based on the constructed substructure; The self-assembly binary tree is obtained according to the number of the dominant targets.
2. The parallel self-assembly method for surface construction according to claim 1, characterized in that: The step of representing each node in the self-assembly binary tree as an assembly target group according to the input structure shape includes: Represent the child nodes under each non-leaf node as the assembly target group for splitting; The extended separation is performed along a direction perpendicular to the splitting line of each assembly target group according to a preset distance.
3. The parallel self-assembly method for surface construction according to claim 1, characterized in that: Traversing each of the assembly target groups, constructing a substructure of the structure shape, and determining the number of dominant targets based on the constructed substructure, including: Traversing each of the assembly target groups to obtain the starting dominant target node and the ending node; Finding the shortest path between the starting dominant target node and the ending node, and determining a common ancestor node of the starting dominant target node and the ending node; Taking the common ancestor node as a candidate node for the root node of the largest subtree; Judging the candidate node, and selecting a replacement node adjacent to the candidate node that meets the node requirements according to the judgment result; The number of dominant targets is determined based on the replacement nodes.
4. The parallel self-assembly method for surface construction according to claim 1, characterized in that: The self-assembly planning of each robot according to the assembly sequence decision rule and controlling each robot to execute a corresponding state according to the planned progress include: Determine the assembly progress corresponding to each robot according to the assembly sequence decision rule; determining a grab module or substructure based on the assembly progress; The robot plans the corresponding execution actions for the grasping module or substructure.
5. The parallel self-assembly method for surface construction according to claim 4, characterized in that: The execution actions corresponding to the robot planning of the grasping module or substructure include: If the current robot will block the docking action of the next robot, the docking surface between the current robot and the module will be switched to a non-conflicting docking mode; If the current target position is occupied by other robots, the target is changed according to the assembly order specified by the self-assembly binary tree; If the docking of the two robots is completed, the state of one of the docking robots is changed to the module acquisition state, and the state of the other robot is changed to the state of carrying the assembled substructure to the target group docking state of the parent node.
6. The parallel self-assembly method for surface construction according to claim 1, characterized in that: The robot in the navigation state is subjected to path planning, and the corresponding robot is controlled according to the planned path to carry the carried modules or substructures to a designated location to assemble the corresponding structure in the structural shape, including: Each robot and the modules or substructures it carries are defined as an assembly group; Detect obstacles at each robot's current position; If there are no obstacles, a feasible path is found from the location of the carried module or substructure to the corresponding target location; If there are obstacles, the assembly group is treated as a single robot with a larger size, and the safety distance of the obstacle expansion is adjusted accordingly, and a detour path is planned based on the adjusted safety distance; According to the planned path, the corresponding robot is controlled to move the carried modules or substructures to the designated location to assemble the corresponding structure in the structural shape.
7. The parallel self-assembly method for surface construction according to claim 1, characterized in that: Also includes: Assign different priorities to each robot according to its working status; Adjust the lower-priority robots to an avoidance state and plan corresponding detour paths to avoid the higher-priority robots; The plurality of robots are controlled to coordinate according to the set priorities to assemble the corresponding substructure or the entire structure in the structural shape.
8. A terminal, characterized in that: include: A processor and a memory, wherein the memory stores a parallel self-assembly program for surface construction, and when the parallel self-assembly program for surface construction is executed by the processor, it is used to implement the operation of the parallel self-assembly method for surface construction as described in any one of claims 1 to 7.
9. A storage medium, characterized in that: The storage medium is a computer-readable storage medium, which stores a parallel self-assembly program for surface construction. When the parallel self-assembly program for surface construction is executed by a processor, it is used to implement the operation of the parallel self-assembly method for surface construction as described in any one of claims 1-7.
Citation Information
Patent Citations
Method for converting aircraft assembly process tree by means of MBOM tree structure
CN111460575A
Intelligent assembly system and intelligent assembly method using repair workshop robot
CN111761347A