Clustered manufacturing-oriented multi-robot task and motion online planning method and system
Patent Information
- Application Number
- CN202611068664.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2026-07-17
- Publication Date
- 2026-09-29
- Estimated Expiration
- 2046-07-17
AI Technical Summary
[0005]针对现有技术的以上缺陷或改进需求,本发明提供了一种面向集群制造的多机器人任务与运动在线规划方法及系统,解决现有多机器人协同加工中集中式规划扩展性差、任务分配与运动规划解耦、分布式决策易产生任务冲突以及动态工况下响应迟缓的问题
1. 本发明提供的面向集群机器人协同加工的任务与运动在线规划方法,通过邻近机器人之间广播流言信息,实现异步信息交互,任务树状图更新、工位工序分配优化、路径重构和安全运动控制,从而提高集群机器人在多工位并行加工场景下的运行效率、鲁棒性和动态适应能力,有效解决现有多机器人协同加工中集中式规划扩展性差、任务分配与运动规划解耦、分布式决策易产生任务冲突以及动态工况下响应迟缓的问题。
Smart Images

Figure CN122560072B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of robotics technology, and more specifically, relates to a method and system for online planning of multi-robot tasks and motions in cluster manufacturing. Background Technology
[0002] With the continuous expansion of the scale of aerospace, shipbuilding, and large equipment manufacturing tasks, traditional fixed robotic workstations are increasingly unable to meet the demands of parallel manufacturing of multiple varieties, small batches, and complex processes in terms of operational coverage, production line reconfiguration capabilities, and dynamic adaptability. Mobile robots, equipped with robotic arms, drilling end effectors, measuring equipment, or transport platforms, can autonomously move between multiple workstations and perform tasks such as processing, measurement, assembly, and transportation. Therefore, a swarm robot collaborative processing system composed of multiple mobile robots can improve workstation coverage, parallel operation efficiency, and manufacturing system flexibility. However, in the process of swarm robot collaborative processing, task allocation and motion planning are highly coupled. On the one hand, the choice of target workstation by different robots directly affects their movement paths, traffic conflicts, and the degree of local congestion; on the other hand, obstacles, tooling, components to be processed, and other mobile robots in the confined workspace, in turn, affect the task execution cost and task allocation results. Especially in scenarios such as parallel assembly of aircraft panels, the panel placement, measurement completion, and drilling requirements often do not occur simultaneously, but are dynamically released as the production line operates; robot malfunctions, unstable communication, local congestion, and task insertions can also change the original task execution plan.
[0003] In existing technologies, multi-robot collaborative processing systems typically employ centralized scheduling or offline pre-planning methods. A central node collects the states of all robots and tasks, then uniformly solves for task allocation and motion paths. These methods achieve good planning results when the number of robots is small, the task scale is limited, and environmental changes are minimal. However, as the number of robots, workstations, and task dependencies increase, centralized methods require frequent aggregation of global information and unified solution of discrete task allocation and continuous trajectory planning problems, resulting in high computational complexity, significant communication pressure, and the risk of central node failure. Some distributed methods reduce central node dependence through local communication or neighborhood negotiation, but typically separate task allocation from motion planning. For example, task allocation is first determined based on distance or task benefits, and then each robot independently plans its path. Such methods struggle to fully consider the impact of changes in task selection on path feasibility, motion safety, and local congestion. When multiple robots simultaneously select the same workstation, or when a robot's actual motion cost increases significantly due to obstacle avoidance, the system is prone to task conflicts, path interference, local congestion, and even motion deadlock.
[0004] Therefore, it is necessary to propose an online task and motion planning method for collaborative processing of swarm robots, enabling each robot to make autonomous decisions based on local information under limited communication conditions, and to achieve task status synchronization, workstation allocation optimization, path segment reconstruction, and safe motion control through asynchronous information interaction between neighboring robots, thereby improving the operating efficiency, robustness, and dynamic adaptability of swarm robots in multi-workstation parallel processing scenarios. Summary of the Invention
[0005] To address the aforementioned deficiencies or improvement needs of existing technologies, this invention provides a method and system for online multi-robot task and motion planning in cluster manufacturing. This solves the problems of poor scalability of centralized planning, decoupling of task allocation and motion planning, task conflicts arising from distributed decision-making, and slow response under dynamic conditions in existing multi-robot collaborative processing. To achieve the above objectives, according to one aspect of this invention, a method for online multi-robot task and motion planning in cluster manufacturing is provided, comprising the following steps: Set an initial root node, use the process as the node, arrange the processes at each workstation in sequence to form a branch starting from the root node, thus forming a tree-like task graph, and broadcast the tree-like task graph to each robot. Each robot selects its current task from its own tree-structured task graph; each robot broadcasts its rumors to neighboring robots, and merges the rumors of two neighboring robots with its own rumors to update the task tree graph and confidence level of the two neighboring robots. If the updated task tree diagram does not apply to the current tasks of two neighboring robots, the robot tasks are coordinated; the robot's motion path is planned according to the coordinated task, thus realizing online planning of tasks and motions for the swarm robots.
[0006] More preferably, when selecting the current task, the task score corresponding to the unassigned task node in the outermost leaf node is calculated, and the node with the highest score is selected as the current task.
[0007] More preferably, the calculation formula for the task score is as follows:
[0008] in, Represents robots Select task Task rating, This is the robot's current position. The target workstation location for the task. Used to estimate obstacle density along a straight path. For the value of the task, These are the weighting coefficients.
[0009] More preferably, updating the task tree diagram of two neighboring robots includes the following aspects: (1) Merge completed / failed task branches: In the merged task tree diagram, take the union of completed / failed tasks in two neighboring robots; (2) Delete completed process nodes: In the merged task tree diagram, delete any completed process node that is adjacent to a robot; (3) Adding new task branches: If a new task branch exists in any neighboring robot, add the new task branch to the merged task tree diagram; (4) Prune failed branches: In the merged task tree diagram, delete the task branches in the completed / failed tasks; (5) Update the task status of leaf nodes: Update the status of the same nodes in the task tree diagram of two neighboring robots. If the node status is already assigned, change it to already assigned. (6) Confidence update: When the node is an assigned node, the confidence is decayed according to the preset method; when the node is the current task node: the confidence is the preset maximum confidence; when the node is an unassigned node, the confidence is 0; when the confidence of an assigned node is less than 0, the node status is changed from assigned to unassigned.
[0010] More preferably, the preset method for attenuating confidence attenuation is as follows:
[0011] in, This indicates that the message receiver has assigned a task. The new confidence level, This indicates that the message receiver has assigned a task. The original confidence level, This indicates that the sender has assigned a task. The original confidence level, It is a preset step size. This is the maximum value operator.
[0012] More preferably, the robot's task coordination method is as follows: (1) Task failure: If the robot's current task is not in the updated tree task graph, the robot will select a new task. (2) Task conflict: Two adjacent robots have the same current task. The robot with the smaller path movement cost retains its current task, while the other robot chooses a new task. (3) Task exchange: If the path movement cost of two adjacent robots after exchanging their current tasks is less than a preset threshold and the movement paths after exchanging tasks do not collide, then the current tasks of the two adjacent robots are exchanged. (4) Task transfer: If one of the adjacent robots is idle and the other has a current task, and the path movement cost is reduced and the movement path is feasible after the two robots exchange tasks, then the current tasks of the adjacent robots are exchanged and the idle robot selects a new task. (5) Task arrival: When the robot arrives at the neighborhood of the target workstation and meets the processing posture requirements, the robot enters the processing state. After processing is completed, the robot deletes the node from the updated task tree diagram.
[0013] More preferably, the formula for calculating the path movement cost is as follows:
[0014] in, For robots Select task The path movement cost, Let Lyapunov be the control function between two states. This is the robot's current state. This is the first path point. To iterate through the index subscripts, , This represents the r-th and (r+1)-th path points in the entire path. This represents the total number of path points.
[0015] More preferably, during task exchange or task transfer, the two neighboring robots plan candidate paths in the following manner, and then calculate the path motion cost using the candidate paths: For current robots The path to its current task. and neighboring robots Movement to its current task path Delete path The remaining path after the destination is used as a path segment. ,path As a path fragment ; In path segment With path fragments Search for connection path pairs that satisfy collision-free constraints. ,in For path fragments One of the path points, For path fragments One of the path points; Connect path fragments From the starting point to , to , To path segment The endpoint forms the candidate path for the current robot, where, When empty, task switching or task transfer is prohibited.
[0016] More preferably, the motion path of the robot is planned according to the coordinated task, and the planning of the motion path is performed according to the following model:
[0017]
[0018]
[0019]
[0020]
[0021] in, This represents the actual control input of the robot. Indicates the robot's reference control input. To optimize the target weight coefficient, To control input limits. This is the current state of the robot. The state of the neighboring robot. Indicates surrounding obstacles. For the current waypoint, The safe distance function between robots A safety function between the robot and obstacles. As slack variables, For non-negative control parameters, This represents the control Lyapunov function. This represents the differential of the control Lyapunov function.
[0022] According to another aspect of the present invention, a multi-robot task and motion online planning system for cluster manufacturing is provided. This system includes a tree-structured task graph generation module, a task selection module, a rumor information fusion module, a task coordination module, and a motion path planning module, wherein: The tree-structured task graph generation module is used to generate an initial tree-structured task graph based on the processing station of each robot and the processing steps on the station, and broadcast the generated tree-structured task graph to each robot. The task selection module is used to select the current task for each robot; The rumor information fusion module is used to fuse rumor information from neighboring robots; The task coordination module is used to coordinate tasks when the updated task tree diagram does not apply to the current tasks of two neighboring robots. The motion path planning module is used to plan the robot's motion path.
[0023] In summary, the technical solutions conceived by this invention have the following beneficial effects compared with the prior art: 1. The online task and motion planning method for collaborative processing of swarm robots provided by this invention achieves asynchronous information interaction, task tree diagram updates, workstation process allocation optimization, path reconstruction, and safe motion control by broadcasting rumors between neighboring robots. This improves the operating efficiency, robustness, and dynamic adaptability of swarm robots in multi-workstation parallel processing scenarios, and effectively solves the problems of poor scalability of centralized planning, decoupling of task allocation and motion planning, task conflict caused by distributed decision-making, and slow response under dynamic conditions in existing multi-robot collaborative processing.
[0024] 2. This invention integrates the gossip information of two neighboring robots to achieve task merging, deletion, supplementation, pruning, and updating. This enables swarm robots to gradually obtain a consistent understanding of task status under conditions of limited communication and asynchronous information propagation, avoiding task duplication, task omission, and disruption of process dependencies.
[0025] 3. This invention coordinates situations where the updated task tree diagram does not apply to the current tasks of two adjacent robots, resolving task failures, conflicts, exchanges, and transfers. This enables robots to adjust their target workstations in a timely manner based on the updated task tree diagram and local motion costs, thereby improving the rationality of task allocation and the efficiency of parallel operations of cluster robots.
[0026] 4. The present invention replans the robot's motion path according to the coordinated task. The path planning adopts the path segment reconstruction method. This method generates candidate paths by reusing the existing path segments of the current robot and the verified path segments of neighboring robots, and performs collision-free constraint judgment on the connecting paths. This can reduce the computational overhead of online path replanning, improve the executability and safety of the motion path after task adjustment, and realize the synchronous online update of the target workstation and the motion path. Attached Figure Description
[0027] Figure 1 This is a flowchart of the distributed task and motion online planning method of the present invention constructed according to a preferred embodiment of the present invention.
[0028] Figure 2 This is a schematic diagram of the tree-like task graph structure of the present invention constructed according to a preferred embodiment of the present invention.
[0029] Figure 3 This is a schematic diagram of the rumor information aggregation and task graph pruning and alignment process of the present invention, constructed according to a preferred embodiment of the present invention.
[0030] Figure 4 This is a schematic diagram of the reconstruction of neighboring robot path segments and task exchange according to a preferred embodiment of the present invention.
[0031] Figure 5 This is a schematic diagram of a multi-robot collaborative processing scenario in the parallel assembly of aircraft panels, constructed according to a preferred embodiment of the present invention.
[0032] Figure 6 This is a schematic diagram of the robot's cross-station flow in a parallel assembly embodiment of the machine wall panel constructed according to a preferred embodiment of the present invention. Detailed Implementation
[0033] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the invention. Furthermore, the technical features involved in the various embodiments of this invention described below can be combined with each other as long as they do not conflict with each other.
[0034] like Figure 1 As shown, an online planning method for task and motion in collaborative processing of swarm robots includes the following steps: S1 creates a task tree diagram on the server and broadcasts it to all robots. The edge server encodes the processing tasks into a tree-like task diagram based on the workstation layout and process dependencies, represented as follows:
[0035] in, This is a set of task nodes, each representing an atomic machining task, containing the following attributes: 1) a unique task identifier, such as A1, A2, B1, B2; 2) a task type, such as transportation, measurement, drilling, riveting, or inspection; 3) the workstation location and the task target orientation; 4) the task value; 5) the task status, including at least unassigned, assigned, and failed states; and 6) a confidence counter. This is a set of task-dependent edges, where each edge represents the sequence of processes. This is a virtual terminating root node. Each branch originating from the terminating root node represents a processing step at a certain workstation; the number of branches is the same as the number of workstations. Each node in a branch represents a processing step, and edges represent the sequence of processing steps. If a task node... Point to task node ,express Must Execution can only proceed after completion; the outermost layer of the task tree diagram is called the leaf node. The server broadcasts the preset task tree diagram to each robot, and each robot copies the task tree diagram in its local memory module and initializes all task nodes to an unassigned state. A task tree diagram is shown below. Figure 2 As shown.
[0036] The S2 robot independently selects executable tasks based on its local tree-structured task graph. Each robot selects unassigned tasks from the outermost leaf nodes based on task scores, and the selected tasks are marked as assigned. Task scores are calculated based on task value, distance to the target workstation, path obstacle density, and the robot's current state. Specifically, let the robot... The set of candidate leaf node tasks is The set of unassigned leaf nodes is The robot performs each candidate task. Calculate the task score:
[0037] in This is the robot's current position. The target workstation location for the task. Used to estimate obstacle density along a straight path. For the value of the task, These are the weighting coefficients. This evaluation function is a case study; other forms do not affect the algorithm's implementation. The robot selects the task with the highest score as the target task.
[0038] robot Mark the selected task node as assigned and set the confidence counter for that task node. Set to maximum value When the robot has no selectable leaf node tasks, it enters an idle state; when the tree task graph has only a virtual termination root node remaining, it indicates that the task has terminated.
[0039] Collision-free path planning for the S3 robot to the target workstation The robot invokes the path planning module to generate a discrete sequence of path points leading to the target workstation based on its current pose, target workstation coordinates, static obstacles, known restricted areas, and local environmental information. This path point sequence can be generated by A... D Asymptotically Optimal Fast Randomized Expanding Tree Algorithm (RRT) It can be generated by probabilistic path map (PRM) algorithm or other local path planning algorithms.
[0040] The S4 robot broadcasts local task and motion information via rumor communication. Each robot broadcasts rumor messages to neighboring robots within a finite communication radius at a set frequency. The set of neighboring robots can be defined as follows:
[0041] in, The communication radius is preset. The rumor message is denoted as... , can be represented as:
[0042] in, Give the robot a unique number. For message timestamps, For the robot's pose, For robot speed, This is a local tree-structured task graph. For the set of failed task branches, The set of task states for leaf nodes. For a set of confidence counters, For the robot's current target task, This is the current path point sequence.
[0043] S5 Robot Received from nearby robots After receiving the rumors, perform an information fusion operation:
[0044] in, The robot in the rumor Local understanding, This refers to the robots carried in the rumors. cognition, This represents the information aggregation operator. The fusion process can be understood as the pruning and alignment of a tree-like task graph, specifically including the following steps: The fusion process includes the following steps: Merge failed task branch sets: This will merge the robot's... Completed / invalid task branches in the message are merged into the robot. A set of completed / invalid task branches. For example... Figure 3 Branch B in the middle.
[0045] (1) Delete completed task nodes: If the neighboring task graph shows that a task node has been completed and pruned, but the local task graph still retains the node, then the robot... Delete the redundant node. For example... Figure 3 Node A1 in the diagram.
[0046] (2) Adding new task branches: If a new task branch that is missing in the local task graph exists in the neighbor task graph, and the branch is not marked as invalid, then the robot Add this branch to the local task tree graph. For example... Figure 3 Branch D in the middle.
[0047] (3) Pruning failed branches: For task sequences that have entered the set of failed task branches, the robot Delete the corresponding branch from the local tree-structured task graph. For example... Figure 3 Branch B in the middle.
[0048] (4) Update leaf node task status: For leaf node tasks shared by two task graphs, update them according to task status priority. Optionally, task status priority is: assigned tasks are higher than unassigned tasks, and completed tasks are indicated by pruning and deletion. Figure 3 Nodes A2 and C2 in the example.
[0049] (5) Update confidence counters: For task nodes marked as assigned in the new tree task graph, update the confidence counters according to the set step size. The confidence level is decayed, and the update formula is:
[0050] in, This indicates that the message receiver has assigned a task. The original confidence level, ; This indicates that the sender has assigned a task. The original confidence level, ; This indicates the updated confidence level. If the task node... For the robot's current target task node, the confidence level is directly set to... When the confidence level of a task is less than 0 after an update, the robot changes the assigned state of the task to an unassigned state.
[0051] Using the pruning and alignment methods described above, even if the robot receives duplicate or out-of-order messages, the task tree structure will not oscillate repeatedly. Completed tasks will not reappear after being pruned; failed branches will continue to propagate after being merged; new task branches can gradually spread to other robots through rumor propagation. In addition, the confidence-based error correction mechanism enables the system to release tasks within a limited number of propagation rounds after robot failure or task failure, avoiding long-term task lock-up.
[0052] S6 performs local tasks and path negotiation based on rumor-triggered events.
[0053] After information aggregation, the robot determines whether to trigger task and motion coordination based on its own and the source robot's task status, the target workstation, and the path motion cost. Triggering events include task conflict, task exchange, task transfer, task failure, and task arrival. To ensure that task allocation and motion execution are coordinated under the same evaluation criterion, this invention defines path motion cost. Optionally, the robot will move along the path... The control Lyapunov function value is accumulated to reflect the closed-loop execution cost of the robot from the current state to the target workstation. For the path The cost is:
[0054] in, This is the control Lyapunov function between two states. This cost is used by neighboring robots to determine whether to perform task exchange or task transfer. The approach to local task and motion negotiation is to first determine if the task is invalid, then if there is a task conflict, and finally if the task can be optimized. Specifically, it is as follows: (1) Task failure If the robot's current target task is no longer a valid leaf node in the local tree task graph, for example, if the task has been completed by another robot, the branch it belongs to has been pruned, or the confidence of the task has decayed and become invalid, then the robot releases the current target and selects a new task.
[0055] (2) Task conflict resolution If the robot With robots Select the same task If this happens, task conflict resolution is triggered. The system calculates the distance between the two tasks. Path movement cost and .like Then the robot Retain task, robot Release the task and reselect; otherwise, the robot Retain the task.
[0056] (3) Task exchange If the robot Current task ,robot Current task ,and Then the system constructs candidate paths after the swap task and calculates the joint cost before and after the swap: Cost before the exchange:
[0057] Cost after the exchange:
[0058] in, Represents robots Change to execute task The cost of the candidate path at that time Represents robots Change to execute task The cost of the candidate path at that time.
[0059] If the following conditions are met:
[0060] And if both candidate paths after the swap satisfy the requirement of collision-free feasibility, then the robot... and Exchange target tasks and update paths. Among these, It is a positive threshold used to avoid frequent task switching when the cost changes too little.
[0061] like Figure 4 As shown, the robot's path before the task exchange is the existing movement path points in the rumor information and local information, while the movement path after the task exchange is obtained by the fast path reconstruction method proposed in this invention. Let the robot... The current path is ,robot The current path is .
[0062] (2) The current path Path segments that do not contain the original target task endpoint are identified as the preceding path segments. The neighboring robot paths Determined to be the latter path segment and in the preceding path segment With the aforementioned subsequent path segment Search for connection path pairs that satisfy collision-free constraints. ,in , , , and path points and The connecting sections between them shall not collide with obstacles, safety boundaries, or restricted areas; (3) Based on the connection path points Generate robots To the target task path of exchange or transfer .
[0063] (4) If there are no connected waypoint pairs that satisfy the collision-free constraint If the candidate path is deemed infeasible, then the corresponding task exchange or task transfer will be prohibited.
[0064] When the robot An assessment is needed to determine whether to switch to an execution robot. target task At that time, from the robot Extract the prefix segment closest to the current position from the current path of the robot. Extract the path to the task The suffix fragment. The system searches for connectable waypoint pairs between the prefix and suffix fragments. .
[0065] If a straight line connecting two points does not collide with obstacles, safety boundaries, or restricted areas, then a candidate path is constructed:
[0066] Connecting waypoint pairs are determined using a reverse nearest neighbor search method. This involves backtracking from the target end of a neighboring robot's validated path back to the path's starting point, selecting the nearest waypoint in the current robot's preceding path for direct, collision-free connection detection, until a pair of waypoints satisfying the collision-free constraint is obtained. To improve search efficiency, a KD-tree can be built for the current path prefix, and the nearest neighbor point can be queried in reverse order from the end of the neighboring path suffix. Once the first set of feasible connecting points is found, the search stops and candidate paths are generated. Subsequently, the system simplifies the candidate paths: if a waypoint can directly connect to a more distant successor waypoint and satisfies the collision-free constraint, redundant intermediate waypoints are deleted. If no feasible connecting point pair is found, the candidate path construction is considered a failure, and the corresponding task exchange or task transfer is not executed. If the candidate path construction is successful, the motion cost of the candidate path needs to be further calculated and compared with the cost before the exchange; only if the cost reduction condition is met is the path update accepted.
[0067] (4) Task transfer If the robot Currently performing a task ,robot If the system is in an idle state, it will determine whether to assign a task. Transfer to robot Can the cost be reduced? If the robot... To the mission The candidate path is feasible, and its cost is less than that of the robot. The cost of continuing the task at present is then the task is transferred to the robot. ,robot Release the task and reselect or enter standby mode. The path generation method after task transfer is the same as the path generation method after task exchange.
[0068] (5) Mission complete If the robot reaches the vicinity of the target workstation and meets the processing posture requirements, the robot enters the processing state, that is: ,in This is the error threshold. After processing is complete, the robot removes the task node from the local task tree.
[0069] S7 performs path tracking and collision avoidance based on the local safety controller.
[0070] As the robot moves along the updated path point sequence, the motion module generates velocity input and constrains this input through a local collision avoidance controller. Optionally, a quadratic programming controller combining a Lyapunov control function and an obstacle control function is used to ensure the robot converges to the target waypoint while satisfying safe distance constraints between robots and between robots and obstacles. The motion controller further generates robot control inputs for movement along the path points. Let the robot... The nominal control input is The actual control input is The controller employs a secondary optimization approach:
[0071] satisfy: (1) Input saturation constraint:
[0072] (2) Waypoint convergence constraints:
[0073] (3) Robot-robot safety constraints:
[0074] (4) Robot-obstacle safety constraints:
[0075] in, This represents the actual control input of the robot. Indicates the robot's reference control input. To optimize the target weight coefficient, To control input limits. This is the current state of the robot. The state of the neighboring robot. Indicates surrounding obstacles. For the current waypoint, The safe distance function between robots A safety function between the robot and obstacles. As slack variables, For non-negative control parameters, This represents the control Lyapunov function. This represents the differential of the control Lyapunov function.
[0076] S8 process execution, task graph update, and cycle planning.
[0077] After reaching the target workstation, the robot enters the processing state, performing drilling, riveting, measurement, grinding, or other processing operations. Upon completion, the robot removes the corresponding task node from its local tree-like task graph. If deleting the node releases a new leaf node task, the new leaf node enters the set of assignable tasks. If all subtrees corresponding to a task sequence are completed, the branch is added to the set of failed task branches and synchronized to other robots via subsequent rumor propagation. The robot then returns to step S2 to continue the next round of task selection, path planning, rumor interaction, and safe motion control until only a virtual termination root node remains in the tree-like task graph.
[0078] The following will use the parallel assembly of aircraft panels as an example to illustrate the specific implementation process of this invention.
[0079] 1. Scene Setup like Figure 5 As shown, in the aircraft panel assembly line, multiple panels to be assembled are distributed on both sides of the line. A mobile transport robot is responsible for transporting the panels to designated workstations, a mobile measurement robot is responsible for positioning and measuring the panels, and a mobile operation robot is responsible for performing drilling, hole making, or connector assembly tasks. The mobile operation robot needs to move back and forth between multiple panel workstations and dynamically select the target workstation based on the panel's arrival status, measurement completion status, and drilling task release status.
[0080] In one implementation, several panel-making stations are arranged on-site, denoted as station A, station B, station C, ..., station J. Each station includes both measurement and drilling tasks, with the drilling task only performed after the measurement task is completed. Multiple mobile robots are deployed on-site, for example, six mobile drilling robots. Each robot is initially parked in a rest area or the middle area of the production line, and the robots communicate locally via a wireless local area network.
[0081] 2. Task Graph Creation The edge server establishes a tree-like task graph based on the panel assembly process. For workstation A, task A1 can be set for panel arrival confirmation, task A2 for measurement and positioning, and task A3 for drilling. For workstation B, tasks B1, B2, and B3 can be set; other workstations are similar. If some panels have already been transported and measured, their drilling tasks become leaf nodes and can be selected by the mobile robot; if a panel has not yet been measured, its drilling tasks are not included in the selectable set.
[0082] The edge server broadcasts the initial task tree to all mobile job robots. Each robot replicates the task tree locally and sets all unexecuted tasks to an unassigned state.
[0083] 3. Initial Task Selection and Path Generation Each mobile robot calculates a score for its drilling task at each workstation based on the set of executable leaf nodes in its local task tree. The score considers the distance from the robot's current position to the workstation, obstacle density in the path, task priority at the workstation, estimated drilling time, and task value. The robot selects the workstation with the best score as its target workstation and marks that task as assigned. For example, robot R1 selects the drilling task at workstation A, robot R2 selects the drilling task at workstation C, and robot R3 selects the drilling task at workstation D. Each robot then calls its path planning module to generate a sequence of path points leading to the target workstation and begins moving along the path.
[0084] 4. Rumor propagation is synchronized with task status. During robot movement, each robot periodically broadcasts rumor messages. These messages include the robot's current target workstation, path point sequence, local task tree summary, assigned task status, and confidence counter.
[0085] When robots R1 and R2 enter each other's communication range, R1 receives messages from R2 and aggregates R2's task tree with its own task tree. If R2 is aware that a task at a certain workstation has been completed, but R1 is not, R1 deletes that task node through pruning alignment. If R2 receives a new panel task issued by the server, but R1 has not yet received it, R1 supplements the task branch through rumor aggregation. If a task is incorrectly marked as assigned but the corresponding confidence has decayed to zero, R1 releases the task to an unassigned state.
[0086] 5. Resolving workstation allocation conflicts If R1 and R2 both select the drilling task at workstation A due to local information asynchrony, a task conflict event will be triggered after they enter the communication range and exchange rumors. The system calculates the path movement cost from R1 to workstation A and the path movement cost from R2 to workstation A respectively. If the cost of R1 is lower, R1 retains the task at workstation A, while R2 releases the task and selects another workstation from the set of executable leaf nodes in its local task tree. This avoids the two robots repeatedly going to the same workstation.
[0087] 6. Workstation Exchange and Path Segment Reconstruction At a certain moment, R1 is performing task A at workstation A, and R2 is performing task C at workstation C. Due to partitions, measuring robots, and other operational robots occupying a portion of the aisle, R1 needs to detour to reach workstation A, while R2 also experiences localized congestion to reach workstation C. After receiving a message from R2, R1 assesses whether exchanging target workstations could reduce the cost of their joint movement.
[0088] The system first extracts the prefix segment of the current path of R1, then extracts the suffix segment of R2 leading to workstation C. It then uses a nearest neighbor query to find connectable waypoint pairs and constructs candidate paths for R1 to workstation C. Similarly, it constructs candidate paths for R2 to workstation A. If neither candidate path collidees, and the combined motion cost after the exchange is lower than the combined motion cost before the exchange by more than a threshold, then R1 and R2 exchange target workstations and update their paths accordingly. If the candidate paths are infeasible or the cost reduction is insufficient, then both paths retain their original tasks.
[0089] This process achieves coupled optimization of task allocation and motion path. The robot does not simply determine the task based on the distance to the workstation, but rather decides whether to adjust the workstation allocation based on the executable path and the local motion cost.
[0090] 7. Dynamic Task Release During the parallel assembly of aircraft panels, new drilling tasks are dynamically released as the panels are positioned and measurements are completed. For example, after the measurement task at workstation E is completed, the server or measurement robot adds the drilling task at workstation E as a new leaf node to the task graph and propagates it via a message. Upon receiving this task, a nearby idle mobile robot can immediately calculate the task score and select the task; if multiple robots select the task simultaneously, the final executor is determined through a task conflict resolution mechanism.
[0091] 8. Robot Fault Recovery If robot R4 has declared its intention to perform task F at workstation F, but malfunctions during its movement and stops sending rumor messages, the confidence level of task F will no longer be updated by R4. Other robots will gradually decrease their confidence level for this task during subsequent propagation. When the confidence level drops below a threshold, task F at workstation F is released to an unassigned state. Idle robot R5 or a robot with lower cost will then select the task and replan its path to workstation F to perform the drilling operation. This ensures that a single robot malfunction will not cause a prolonged halt to the corresponding workstation task.
[0092] 9. Safe execution of the exercise like Figure 6 As shown, the robot needs to avoid wall panels, tooling, measuring robots, transport robots, and other mobile robots during its movement across workstations. Each robot generates a nominal velocity based on its current path point and corrects the velocity input through a local safety controller. When the distance between robots approaches a safety threshold, the control obstacle function constraint restricts the robot from continuing to approach; when a robot deviates from its target waypoint, the control Lyapunov function constraint drives the robot to continue converging to the path point. When multiple robots block each other at the entrance of a narrow passage, the system detects a continuous decrease in velocity and obstruction of the target direction, triggering a deadlock avoidance mechanism. This mechanism modulates the movement direction of some robots through guiding force modulation, causing them to give way or detour, thereby restoring the system's fluidity.
[0093] 10. Processing Completion and Task Termination Once the robot reaches the target panel station and meets the drilling posture requirements, it enters the operation phase. After completing the drilling task, the robot deletes the corresponding task node from the local tree task graph and broadcasts the task completion status. After the task node is deleted, if a subsequent re-inspection task is released, the re-inspection task becomes the new leaf node; if all tasks at this station are completed, the branch at this station is pruned and added to the set of failed branches.
[0094] As tasks are completed, the number of task nodes in the tree-like task diagram gradually decreases. When all tasks at all panel workstations are completed, only a virtual termination root node remains on the task diagram, and each mobile robot returns to the rest area or standby area, thus ending the parallel assembly task of the aircraft panels.
[0095] As can be seen from the above embodiments, the present invention can realize dynamic workstation allocation, online path adjustment, task conflict resolution, robot fault recovery, and safe cross-workstation movement during the parallel assembly of aircraft panels, thereby improving the parallel efficiency and operational stability of the multi-robot collaborative processing system under dynamic task conditions.
[0096] Those skilled in the art will readily understand that the above description is merely a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention should be included within the scope of protection of the present invention.
Claims
1. A method for online planning of multi-robot tasks and motion in cluster manufacturing, characterized in that, The method includes the following steps: Set an initial root node, use the process as the node, arrange the processes at each workstation in sequence to form a branch starting from the root node, thus forming a tree-like task graph, and broadcast the tree-like task graph to each robot. Each robot selects its current task from its own tree-structured task graph; each robot broadcasts its rumors to neighboring robots, and merges the rumors of neighboring robots with its own rumors to update the task tree graphs and confidence levels of the two neighboring robots. If the updated task tree diagram does not apply to the current tasks of two neighboring robots, the robot tasks are coordinated; the robot's motion path is planned according to the coordinated task, thus realizing online planning of tasks and motions for the swarm robots. The robot's task coordination method is as follows: (1) Task failure: If the robot's current task is not in the updated tree task graph, the robot will select a new task. (2) Task conflict: Two adjacent robots have the same current task. The robot with the smaller path movement cost retains its current task, while the other robot chooses a new task. (3) Task exchange: If the path movement cost of two adjacent robots after exchanging their current tasks is less than a preset threshold and the movement paths after exchanging tasks do not collide, then the current tasks of the two adjacent robots are exchanged. (4) Task transfer: If one of the adjacent robots is idle and the other has a current task, and the path movement cost is reduced and the movement path is feasible after the two robots exchange tasks, then the current tasks of the adjacent robots are exchanged and the idle robot selects a new task. (5) Task arrival: When the robot arrives at the neighborhood of the target workstation and meets the processing posture requirements, the robot enters the processing state. After processing is completed, the robot deletes the node from the updated task tree diagram.
2. The online multi-robot task and motion planning method for cluster manufacturing as described in claim 1, characterized in that, When selecting the current task, the task score corresponding to the unassigned task in the outermost leaf nodes is calculated, and the node with the highest score is selected as the current task.
3. The online multi-robot task and motion planning method for cluster manufacturing as described in claim 2, characterized in that, The formula for calculating the task score is as follows: in, Represents robots Select task Task rating, This is the robot's current position. The target workstation location for the task. Used to estimate obstacle density along a straight path. For the value of the task, These are the weighting coefficients.
4. A multi-robot task and motion online planning method for cluster manufacturing as described in claim 1 or 3, characterized in that, The updating of the task tree diagram of two neighboring robots includes the following aspects: (1) Merge completed / failed task branches: In the merged task tree diagram, take the union of completed / failed tasks in two neighboring robots; (2) Delete completed process nodes: In the merged task tree diagram, delete any completed process nodes that are adjacent to a robot; (3) Adding new task branches: If a new task branch exists in any neighboring robot, add the new task branch to the merged task tree diagram; (4) Prune failed branches: In the merged task tree diagram, delete the task branches in the completed / failed tasks; (5) Update the task status of leaf nodes: Update the status of the same nodes in the task tree diagram of two neighboring robots. If the node status is already assigned, change it to already assigned. (6) Confidence update: When the node is an assigned node, the confidence is decayed according to the preset method; when the node is the current task node: the confidence is the preset maximum confidence; when the node is an unassigned node, the confidence is 0; when the confidence of an assigned node is less than 0, the node status is changed from assigned to unassigned.
5. The online multi-robot task and motion planning method for cluster manufacturing as described in claim 4, characterized in that, The preset method for attenuating confidence levels is calculated using the following formula: in, This indicates that the recipient of the message is aware of the assigned task. The new confidence level, This indicates that the recipient of the message is aware of the assigned task. The original confidence level, This indicates that the sender has assigned a task. The original confidence level, It is the preset decay step size.
6. The online multi-robot task and motion planning method for cluster manufacturing as described in claim 1, characterized in that, The formula for calculating the path movement cost is as follows: in, For robots Select task The path movement cost, Let Lyapunov be the control function between two states. This is the robot's current state. This is the first path point. Number the path points. , This represents the r-th and (r+1)-th path points in the entire path. This represents the total number of path points.
7. The online multi-robot task and motion planning method for cluster manufacturing as described in claim 1, characterized in that, During task exchange or task transfer, two neighboring robots plan candidate paths in the following manner, and then calculate the path motion cost using the candidate paths: For current robots The path to its current task. and neighboring robots Movement to its current task path Delete path The remaining path after the destination is used as a path segment. ,path As a path fragment ; In path segment With path fragments Search for connection path pairs that satisfy collision-free constraints. ,in For path fragments One of the path points, For path fragments One of the path points; Connect path fragments From the starting point to , to , To path segment The endpoint forms the candidate path for the current robot, where, When empty, task switching or task transfer is prohibited.
8. A multi-robot task and motion online planning method for cluster manufacturing as described in claim 1 or 7, characterized in that, The robot's motion path is planned according to the coordinated task, and the execution of the motion path is performed according to the following model: in, For the actual control input of the robot, For robot reference control input, To optimize the target weight coefficient, To control input limits, This is the current state of the robot. The state of the neighboring robot. Indicates surrounding obstacles. For the current waypoint, The safe distance function between robots, Let the safe distance function be between the robot and the obstacle. As slack variables, For non-negative control parameters, To control the Lyapunov function, To control the differential of the Lyapunov function.
9. A system for planning using the online multi-robot task and motion planning method for cluster manufacturing as described in any one of claims 1-8, characterized in that, The system includes a tree-structured task graph generation module, a task selection module, a rumor information fusion module, a task coordination module, and a motion path planning module, among which: The tree-structured task graph generation module is used to generate an initial tree-structured task graph based on the processing station of each robot and the processing steps on the station, and broadcast the generated tree-structured task graph to each robot. The task selection module is used to select the current task for each robot; The rumor information fusion module is used to fuse rumor information from neighboring robots; The task coordination module is used to coordinate tasks when the updated task tree diagram does not apply to the current tasks of two neighboring robots. The motion path planning module is used to plan the robot's motion path.
Citation Information
Patent Citations
A cluster robot system for disaster rescue and a method of searching and transporting objects in a disaster environment using it
KR102771512B1
Four-network integration architecture for unmanned swarm system
WO2025246603A1