Aerial work robot task planning method and system

Through two-level collision risk detection and interactive task planning, the problems of high collision risk and low efficiency in task planning of aerial work robots are solved, efficient and accurate multi-robot collaborative operation is achieved, and the visualization and interactivity of the system are improved.

CN120558245BActive Publication Date: 2025-09-26WESTLAKE UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202511070052.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-07-31
Publication Date
2025-09-26
Estimated Expiration
2045-07-31

AI Technical Summary

Technical Problem

Existing aerial work robot task planning technology has problems such as high collision risk, low efficiency, poor visualization and interactivity when multiple robots work together, making it difficult to meet the safety and high efficiency requirements in complex work scenarios.

Method used

A two-level collision risk detection mechanism is adopted. First, potential collision nodes are screened out through user-set height information. Then, detailed position timing is generated through position prediction for precise detection. The task script file is generated by combining the job type matching script template, and interactive task planning is carried out using the three-dimensional virtual scene display interface.

Benefits of technology

It improves the efficiency and accuracy of task planning, reduces the requirements for user expertise, enhances the flexibility and adaptability of the system, and ensures the safety and efficiency of multi-robot collaborative operations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120558245B_ABST
    Figure CN120558245B_ABST
Patent Text Reader

Abstract

The present application provides a method and system for planning aerial work robot tasks, which belongs to the field of robot task planning. The method includes: selecting a target planning work robot from multiple work robots in a virtual task planning scene; setting the current position task node status information and multiple target task nodes of the target planning work robot; generating the work task planning results under the virtual task planning scene; determining the time information corresponding to each task node in each work task planning result; screening a set of candidate task nodes that have a collision risk at the same time; generating a position sequence; screening and confirming the position with a collision risk as the collision position; correcting the work task planning results; and generating a task script file for the target planning work robot. The method and system for planning aerial work robot tasks provided by the present application can solve the problems of high collision risk, low efficiency, poor visualization and interactivity in multi-robot task planning.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of robot task planning, and in particular to a method and system for planning tasks of an aerial work robot. Background Art

[0002] Aerial robots, thanks to their flexibility and efficiency, have found widespread application in numerous fields, including modern industry, agriculture, and logistics. They can perform diverse tasks, such as cargo transportation, environmental monitoring, and agricultural plant protection, significantly improving operational efficiency and reducing labor costs. However, with the increasing complexity of application scenarios and the expansion of operational scale, existing task planning technologies are no longer able to meet real-world needs.

[0003] Currently, existing aerial robot task planning technologies face numerous challenges. Traditional task planning methods often lack effective management of multi-robot collaborative operations. In complex operational scenarios, they struggle to accurately predict and avoid collision risks between robots, resulting in inadequate operational safety. Furthermore, manual task planning methods are inefficient and prone to errors, making them inefficient in meeting the demands of large-scale, high-efficiency operations. Furthermore, existing task planning systems lack visualization, making user operations less intuitive and convenient. This inability to obtain timely information on robot status and task execution status hinders real-time adjustments to task plans. Summary of the Invention

[0004] In view of this, the present application provides an aerial work robot task planning method and system to solve the problems of high collision risk, low efficiency, poor visualization and interactivity in multi-robot task planning in the prior art.

[0005] Specifically, this application is implemented through the following technical solutions:

[0006] A first aspect of the present application provides a method for planning a task of an aerial work robot, the method comprising:

[0007] Selecting a target planning operation robot from multiple operation robots in a virtual task planning scenario;

[0008] Setting the current position task node state information and multiple target task nodes of the target planning operation robot;

[0009] Based on the multiple target task nodes, generating an operation task planning result in a virtual task planning scenario;

[0010] Traverse each task planning result and determine the time information corresponding to each task node in each task planning result;

[0011] Based on the height information of each task node, a set of candidate task nodes with collision risks at the same time is screened;

[0012] For each candidate task node, the three-dimensional coordinates of the corresponding target planning operation robot at each moment are calculated according to the preset cycle to generate a position time series;

[0013] According to the position time sequence, a position with a collision risk is screened and confirmed as a collision position;

[0014] Adjust the coordinates of the collision location and correct the task planning results;

[0015] Based on the corrected task node status information and spatial position information, combined with the job type of the target planning operation robot, the corresponding script template is matched to generate the task script file of the target planning operation robot.

[0016] The second aspect of the present application provides an aerial work robot task planning system, which includes a three-dimensional virtual work scene display interface and a task planning module; the three-dimensional virtual work scene display interface is used to display the working environment of multiple aerial work robots, and the user completes the task planning of the aerial work robot in the three-dimensional virtual work scene display interface through interaction; the task planning module is used to plan tasks for multiple aerial work robots, detect whether there is a collision risk between aerial work robots, and generate task script files corresponding to the aerial work robots.

[0017] The aerial work robot task planning method and system provided by this application, in terms of task planning methods, achieves high-efficiency and high-accuracy collision detection through a two-level collision risk detection mechanism, thereby improving the efficiency and scientific nature of task planning. Specifically, the first level only uses the height information of the task node set by the user during planning for collision risk detection. After completing the initial task planning, the information generated by the planning algorithm is not used, and the most accurate information set by the user is used to quickly screen out candidate nodes with collision risks, thereby improving the efficiency of task planning and ensuring the accuracy of the screening results. In the second level, the density of risk detection points is increased through position prediction. By predicting the time-series position points in the path, the collision risk of each position point during the flight process is detected, thereby improving the accuracy of collision detection.

[0018] In terms of the planning system, the present invention adopts software interactive task planning, which reduces the requirements for the user's professional level and simplifies the task planning process. After the task planning is completed, the task script file is generated by matching the corresponding script template with the target planning work robot's work type, so that the method can adapt to a variety of different types of work tasks and has strong flexibility and adaptability. BRIEF DESCRIPTION OF THE DRAWINGS

[0019] Figure 1 This is a flowchart of Example 1 of the aerial work robot task planning method provided in this application;

[0020] Figure 2 This is a schematic diagram of the structure of the second embodiment of the aerial work robot task planning system provided by this application;

[0021] Figure 3 This is a schematic diagram of the structure of the aerial work robot task planning device provided in this application. DETAILED DESCRIPTION

[0022] Exemplary embodiments are described in detail herein, with examples illustrated in the accompanying drawings. When the following description refers to the drawings, identical numerals in different drawings represent identical or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments are not intended to represent all embodiments consistent with this application.

[0023] The terms used in this application are for the purpose of describing specific embodiments only and are not intended to limit this application. The singular forms "a," "the," and "the" used in this application are also intended to include the plural forms unless the context clearly indicates otherwise. It should also be understood that the term "and / or" as used herein refers to and includes any or all possible combinations of one or more of the associated listed items.

[0024] It should be understood that although the terms first, second, third, etc. may be used in this application to describe various information, such information should not be limited to these terms. These terms are only used to distinguish information of the same type from each other. For example, without departing from the scope of this application, first information may also be referred to as second information, and similarly, second information may also be referred to as first information. Depending on the context, the word "if" as used herein may be interpreted as "at the time of" or "when" or "in response to determining".

[0025] Specific embodiments are given below to introduce the technical solutions of the present application in detail.

[0026] Example 1:

[0027] Figure 1 This is a flowchart of the first embodiment of the aerial work robot task planning method provided in this application. Figure 1 The method provided in this embodiment may include:

[0028] S101. Select a target planning operation robot from multiple operation robots in a virtual task planning scene.

[0029] It should be noted that the aerial work robot task planning method provided by this invention is implemented using task planning system software. The system includes an interactive display interface that supports interactive task planning, enabling complex task planning processes to be completed through simple operations such as clicking, selecting, and moving. A virtual task planning scene refers to a digital work environment constructed using 3D modeling technology, specifically using Unity3D or Unreal Engine, to visualize the robot's motion trajectory and task node distribution.

[0030] Among them, the multiple working robots displayed in the virtual task planning scene are presented in the display interface in the form of models, and each model is associated with the relevant attribute information of the robot, such as model, performance parameters, etc.

[0031] In specific implementations, operators interact with the 3D virtual work scene display interface using interactive devices (such as a mouse or touchscreen). For example, when an operator moves the mouse pointer over a work robot model, the system displays relevant information about the robot by highlighting it or popping up an information box. After the operator confirms their selection, they click the left mouse button, sending a selection instruction to the task planning system. Upon receiving the instruction, the task planning system marks the robot as the target work robot and records the relevant information.

[0032] There are multiple working robots in the virtual scene, and task planning can select one or more robots in turn for task planning.

[0033] S102: Setting the current position task node status information and multiple target task nodes of the target planning operation robot.

[0034] It should be noted that the current position task node represents the position of the target planning operation robot at the start time of the task and is the starting point of the entire task planning path.

[0035] Specifically, the current position task node status information and multiple target task nodes of the target planning operation robot are set, including: loading a virtual task planning scene graph in a task planning module and displaying the scene graph; based on user cursor operation, selecting a position point in the scene graph to set the target task node; for each target task node, extracting the two-dimensional coordinates of the target task node as XY axis position parameters; configuring the status information of the task node, and recording the status information until all target task node status information is recorded, the status information including spatial position parameters, task attribute parameters and end effector control parameters.

[0036] In specific implementation, upon receiving a command to set a task node, the mission planning module reads the virtual mission planning scene graph data from system storage devices (such as hard disks or databases), renders it using a graphics rendering engine, and displays it on the user interface. The operator uses an input device, such as a mouse, to position the cursor at the desired location in the virtual mission planning scene graph. Then, by clicking the left mouse button, for example, they send a location selection command to the mission planning module. Upon receiving the command, the module marks that location as the target task node.

[0037] The mission planning module then generates the coordinate information of the target mission node on the scene graph plane based on the graphical coordinate system of the virtual mission planning scene. It then automatically extracts the horizontal (X-axis) and vertical (Y-axis) values ​​and stores them as XY-axis position parameters, laying the foundation for subsequent precise positioning of the mission node. After selecting the target mission node, the system responds quickly, popping up a dedicated parameter configuration window or presenting a specific configuration area in the taskbar, providing the operator with a convenient entry point for parameter settings.

[0038] Operators carry out a series of operations in the corresponding setting area based on actual operational needs. In terms of spatial position parameter settings, the precise Z-axis height value can be manually input, or the Z-axis height can be flexibly set using the slider adjustment method to determine the vertical position of the task node. For task attribute parameters, the system provides a rich drop-down menu options from which operators can select the appropriate task type, such as cargo handling, environmental monitoring, etc., and set the hold time of the task node as needed to ensure the continuity and accuracy of task execution. In the end effector control parameter setting area, operators can make detailed adjustments to various states and functions of the end effector, including selecting the end effector type, accurately setting the end effector state before, during, and after the task, and reasonably adjusting the end position compensation, deciding whether to replace the end effector after docking, and setting the time required to fly from the previous operation point to the current operation point.

[0039] The task planning module responds to each setting operation of the operator in real time, accurately converts these settings into corresponding digital records, and stores them within the system, providing key data support for the subsequent generation of detailed and accurate work task planning results. Furthermore, the task planning module stores the status information of the configured target task node in the system's data structure and associates it with the XY axis position parameters of the node. The operator then repeats all the above steps starting from the selected location point and continues to set other target task nodes until all task planning settings for the target planning work robot are completed. The above parameters can complete the entire process of describing a task of an operating drone. In addition, if a task point is added incorrectly, you can select the work point in the task bar and click the delete row button on the right to complete the deletion of the task point.

[0040] It should be noted that in this step, by loading the virtual task planning scene graph in the task planning module, using cursor operations to set the target task node, and configuring and recording relevant status information, accurate task execution information is provided to the robot, so that the target planning operation robot can obtain detailed and accurate task node information, clarify the operation location and specific operation requirements at each node, and provide guarantees for the subsequent generation of scientific and reasonable operation task planning results, thereby improving the accuracy, standardization and task completion efficiency of the robot's operation, and ensuring that it can effectively perform tasks according to predetermined goals in complex environments.

[0041] As an optional embodiment, for any target planning work robot, after completing the setting of the current node, taking the current position point as the starting point, predict multiple next task nodes based on the work type of the target planning work robot; determine the target task node from the multiple next task nodes; predict the predicted state information of reaching the target task node based on the current position node status information and the target planning work robot's work flight model; determine whether the work task of the target planning work robot is planned, and if not, take the target task node as the new current position point and return to the step of predicting multiple next task nodes.

[0042] It should be noted that after completing the current node setting, the task planning module predicts multiple possible next task nodes based on the target planning robot's task type, the current task scenario, historical task data, and other information. For example, if the task type is logistics delivery, multiple possible delivery points may be predicted as the next task node based on factors such as the cargo storage location and delivery route. Then, from these predicted next task nodes, one is determined as the target task node based on specific rules or strategies. These rules may include closest distance, highest task priority, and lowest resource consumption. For example, in logistics delivery, the delivery point closest to the current location and with the highest cargo urgency is selected as the target task node. Furthermore, based on the current location node status information (such as the robot's speed, battery power, and payload) and the target planning robot's flight model (including its dynamics model and energy consumption model), the robot's state information upon arrival at the target task node is predicted, including arrival time, remaining battery power, and whether resupply is required. Finally, the module checks whether the current task has been fully planned. If the planning is not completed, the target task node is used as the new current location point, and the steps of predicting multiple next task nodes are restarted to continue task planning; if the planning is completed, the task planning process is ended.

[0043] It should be noted that this step is based on the iterative concept of task planning. By continuously predicting, selecting, and updating the current location, the entire task planning is gradually completed. By utilizing information such as the task type and flight model, the next task node and arrival status can be more accurately predicted, improving the rationality and feasibility of task planning. Specifically, by predicting the arrival status information of the target task node, resource allocation and scheduling can be planned in advance. For example, when the battery is low, charging points can be planned in advance to avoid unexpected situations during task execution and improve the efficiency and success rate of task execution. The entire process is an automatic and iterative process, which reduces human intervention, improves the degree of automation of task planning, and saves manpower and time costs.

[0044] S103: Generate an operation task planning result in a virtual task planning scenario based on the multiple target task nodes.

[0045] It's important to note that the mission planning module uses a path planning algorithm (such as the A* algorithm or Dijkstra algorithm, though custom algorithms are also available based on actual needs). Using the target mission node as a navigation point, the module combines environmental information such as the obstacle distribution in the virtual mission planning scene graph to calculate the optimal path for the robot to reach each target mission node in sequence, starting from the current mission node. For example, during path planning, the algorithm considers avoiding obstacles and selecting paths with shorter distances and lower energy consumption.

[0046] The task execution order is sorted based on the target task node's task attribute parameters (such as task priority, task start and end time requirements, etc.). For example, high-priority tasks are scheduled for execution first, and time-limited tasks are arranged in a reasonable order based on the time window.

[0047] Based on the robot's performance parameters (such as maximum flight speed), the distance between task nodes, and the task attributes, the robot's dwell time at each task node and the flight speed for each segment along the path are calculated. For example, if a task node requires the robot to perform a lengthy data collection or cargo handling operation, the dwell time at that node will be increased accordingly. On obstacle-free, long-distance paths, the robot can increase its flight speed to improve operational efficiency.

[0048] The motion path, task execution sequence, dwell time, speed planning and other information calculated above are integrated to generate a detailed task planning plan, which includes the robot's motion trajectory (represented by a series of coordinate points and path curves), a list of task execution sequences, the estimated dwell time for each task node, the speed setting for each path segment, and other contents.

[0049] Preferably, after setting all target task nodes of all working robots, click the "Collision Check" button in the interface, the system will automatically complete the working task planning of each working robot and enter the two-level collision check link.

[0050] S104: traverse each operation task planning result to determine the time information corresponding to each task node in each operation task planning result.

[0051] It should be noted that the task planning module generates and sequentially accesses each task node for each robot in a specific order (e.g., generation order or task execution order). For each task planning result, the task planning module identifies the individual task nodes. This can be determined by traversing the task node list or based on the task execution order.

[0052] Specifically, based on the robot's motion path and preset speed (which can be an average speed or set to varying speeds depending on the path segment, taking into account the robot's performance parameters and the actual path), the estimated time it takes for the robot to reach each task node from its current position (or previous task node) is calculated. The robot's dwell time at each task node is then determined based on the task attribute parameters of the task node (e.g., task type; for cargo handling tasks, loading and unloading operations may require a certain amount of time; for data collection tasks, the collection time may be determined based on the amount of data collected). Finally, the calculated time information, including the arrival time and dwell time for each task node, is associated with the corresponding task node and stored.

[0053] Each task node in each task planning result is associated with corresponding time information to form a complete task time schedule. Preferably, the time schedule can be displayed on the system interface in the form of a list, chart, etc., which is convenient for operators to view and adjust.

[0054] It's important to note that the task planning module traverses the task planning results, calculates and determines time information such as the arrival time and dwell time of each task node, and provides precise time scheduling for the robot's task execution. This helps to properly dispatch the robot, avoid time conflicts, and reduce collision risks. At the same time, reasonable time scheduling can improve work efficiency, ensure that tasks can be successfully completed within the specified time, and optimize time management for the entire work process.

[0055] S105 . Filter a set of candidate task nodes that have a collision risk at the same time based on the height information of each task node.

[0056] It should be noted that after determining the time information corresponding to each task node in each job task planning result, in order to discover and deal with potential collision problems in advance, it is necessary to screen out a set of candidate task nodes that have collision risks at the same time (in this step, the initial judgment is only based on the height value of the task node).

[0057] Specifically, based on the height information of each task node, a set of candidate task nodes with collision risks at the same time is screened, including:

[0058] (1) Traverse all time points in the task planning results of all jobs and obtain multiple task nodes to be detected at each time point.

[0059] It should be noted that the task planning module begins at the start time of task execution and traverses all task execution time points at a certain time interval (such as every second or shorter, which can be set according to actual needs). For each traversed time point, the task nodes that the robot may arrive at or stay at at that moment are screened from all task planning results as the task nodes to be detected. For example, if the arrival time plus the stay time of a task node covers the currently traversed time point, then this task node is the task node to be detected. For example, if the task execution time of task robot 1 is 9:00-12:00 on a certain day, and the task execution time of task robot 2 is 10:00-14:00 on the same day, then the traversed time range is 9:00-14:00 on that day. In other words, the traversed time range is the union of the start and end times in all task planning results, and the traversed time range includes the start and end times of each task planning result.

[0060] (2) Obtain the height information of each task node to be detected.

[0061] For each task node to be detected, its height information is extracted. This height information is stored in numerical form, representing the vertical position of the task node in three-dimensional space.

[0062] (3) Calculate the height difference between any two task nodes to be detected.

[0063] Specifically, the vertical distance difference between the two is obtained by subtracting the height value of one task node from the height value of another task node.

[0064] (4) If the height difference is less than the preset safety height threshold, it is determined that there is a collision risk, and the corresponding task node to be detected is added to the candidate task node set as a candidate node with a collision risk; if the height difference is greater than or equal to the preset safety height threshold, it is marked as no collision risk.

[0065] The calculated height difference is compared with a preset safe height threshold. This threshold is a value pre-set based on factors such as the robot's size, flight performance, and operating environment. It is used to determine whether the height difference between task nodes is within a safe range. If the height difference is less than the preset safe height threshold, the two task nodes are considered to have a collision risk at the same time and are added to the candidate task node set. If the height difference is greater than or equal to the preset safe height threshold, the nodes are marked as non-collision risk and are not added to the set.

[0066] Through the above operations, a set of candidate task nodes is obtained, and the set includes task nodes that may have a collision risk based on the preliminary judgment of the height information at the same time. This set provides a basis for further accurate detection of collision risks in the future, reduces the number of task nodes that need detailed analysis, and improves the efficiency of collision detection. At the same time, the task node information in the set can be displayed in a list or other visual form on the interface of the task planning system, which is convenient for operators to view and process. In the first-level screening process, the present invention only selects the nodes set by the user to judge the height information. On the one hand, it simplifies the number of nodes that need to be judged. On the other hand, it directly uses the setting information without the need to use prediction information, thereby improving the accuracy of the judgment and reducing the amount of calculation required for the preliminary preparation of the judgment.

[0067] S106. For each candidate task node, calculate the three-dimensional coordinates of the corresponding target planning working robot at each moment according to a preset period to generate a position time series.

[0068] It should be noted that the preset period is a pre-set time interval used to determine the time granularity for calculating the three-dimensional coordinates of the target planning operation robot. For example, a preset period of 0.1 seconds means that the three-dimensional coordinates of the robot are calculated every 0.1 seconds.

[0069] After obtaining the set of candidate task nodes, in order to more accurately analyze whether these nodes actually pose a collision risk, it is necessary to calculate the three-dimensional coordinates of the corresponding target planning work robot at each moment and generate a position time series (in the task planning result generated in S103, the path between task points is only the node sequence and preliminary trajectory, and does not include the moment-by-moment position point estimation, so the trajectory needs to be refined through interpolation calculation). Specifically, for each candidate task node, the three-dimensional coordinates of the corresponding target planning work robot at each moment are calculated according to a preset period to generate a position time series, including:

[0070] (1) Obtain the three-dimensional position information and corresponding flight speed information of the target planning operation robot at the starting time.

[0071] From the database of the task planning module, for each candidate task node corresponding to the target planning working robot, its three-dimensional position information and flight speed information at the starting time are extracted.

[0072] (2) Based on the linear interpolation model, the three-dimensional coordinates of the target planning operation robot at each time point are calculated in combination with each time point within the preset period, the starting time, the three-dimensional position information and the flight speed information.

[0073] It should be noted that the linear interpolation model is a mathematical method used to estimate the value of other data points between two known data points. In this application, based on the target planning working robot's position and speed information at the starting time, its position at each moment within a preset period is estimated through a linear relationship.

[0074] Specifically, according to the principle of linear interpolation, at each time point t within the preset period, the three-dimensional coordinates of the target planning working robot are It can be calculated by the following formula:

[0075] ;

[0076] in, is the take-off time of the drone, is the initial position of the UAV, is the velocity vector of the UAV. Further, for any two operating UAVs and , at every moment , the relative distance between two operating drones can be calculated .

[0077] (3) Within the preset period, based on the calculated three-dimensional coordinates, a trajectory point sequence of the target planning operation robot that changes with time is generated, and a corresponding position time series is constructed.

[0078] It should be noted that a trajectory point sequence is an ordered set of the 3D coordinates of the target planning robot at different moments within a preset period. Each coordinate point represents the robot's position at that moment and reflects the robot's motion trajectory during that period. Within the preset period, the 3D coordinates of each moment are calculated sequentially according to the above method. These coordinates are arranged in chronological order to form a trajectory point sequence. This sequence is the time series of the target planning robot's position over time.

[0079] By acquiring the robot's starting information and applying a linear interpolation model to calculate the robot's 3D coordinates at each moment within a preset cycle, this generates a position time series and records the robot's motion trajectory in detail. This provides detailed and accurate position information for accurately determining collision risks, improving the reliability of collision detection. Based on the position time series, operators can proactively identify potential collision risks and promptly adjust the robot's motion path or task schedule, ensuring the safety and efficiency of multi-robot collaborative operations.

[0080] S107 : Screen and confirm locations with collision risks based on the location time sequence, and use them as collision locations.

[0081] It should be noted that collision locations refer to specific spatial locations in multi-robot operation scenarios where different robots are in close proximity at the same time, potentially leading to collisions. In practice, locations with collision risks can be identified and designated as such by analyzing the time series of positions.

[0082] Specifically, according to the position sequence, the position where there is a collision risk is screened and confirmed as the collision position, including: traversing each moment of all position sequences, obtaining the three-dimensional coordinates in each position sequence at the current traversal moment; calculating the Euclidean distance based on the three-dimensional coordinates of any two target planning work robots at the same traversal moment; if the Euclidean distance is less than the preset safety distance threshold, it is determined that there is a collision risk between the two target planning work robots at the current traversal moment, and the positions of the two target planning work robots at the current traversal moment are recorded as collision positions; if the Euclidean distance is greater than or equal to the preset safety distance threshold, it is marked as no collision risk.

[0083] Each position sequence corresponds to a segment or entire mission planning result for a working robot. A position sequence corresponds to a single working robot, but a position sequence can be discontinuous, representing multiple routes, or continuous, representing only one route. For each position sequence, the union of the start and end times of all position sequences is traversed. The 3D coordinates of any point in the position sequence that has position information at the current moment are obtained at each traversal moment. The Euclidean distance between these two 3D coordinates is then determined, enabling collision risk analysis at each moment.

[0084] It should be noted that the task planning module starts from the start of the preset cycle and traverses each time point in chronological order. For example, if the preset cycle is 10 seconds and the time interval is 0.1 seconds, the time points of 0 seconds, 0.1 seconds, 0.2 seconds...10 seconds will be processed in sequence. At each time point, the three-dimensional coordinate information of all target planning robots that need to be judged for collision risk at the current moment is obtained. For example, at a certain moment, the coordinates of robot A are obtained as follows: , the coordinates of robot B are , then for any two target planning robots (here taking robots A and B as an example), the Euclidean distance is calculated based on their three-dimensional coordinates. The Euclidean distance formula is:

[0085] ;

[0086] For example, if the coordinates of robot A are (10, 10, 10) and the coordinates of robot B are (12, 10, 10), then the Euclidean distance between them is d=2.

[0087] The calculated Euclidean distance is compared with a preset safety distance threshold. If the Euclidean distance is less than the preset safety distance threshold, a collision risk is determined at that time and location, and the location is recorded as a collision location. If the Euclidean distance is greater than or equal to the preset safety distance threshold, the location is marked as non-collision risk and is not recorded. For example, if the preset safety distance threshold is 3 meters and the calculated Euclidean distance is 2 meters, which is less than the threshold, the location is determined to be a collision location.

[0088] Preferably, after the locations with collision risks are determined, a collision location list is generated. This collision location information is stored in the mission planning module in the form of data and can be displayed visually on the interface of the mission planning system, such as highlighting the collision location in the virtual mission planning scene diagram, to facilitate operator viewing and processing.

[0089] This step analyzes the time series of the target task robot positions, calculates the Euclidean distance between different robots, and compares it with a preset safety distance threshold to screen locations with collision risks. This accurately determines the collision location and provides a clear basis for subsequent task planning adjustments. Based on this collision location information, operators can adjust the robot's motion path, task execution sequence, or other parameters, effectively preventing robot collisions and improving the safety and efficiency of multi-robot collaborative operations.

[0090] S108. Adjust the coordinates of the collision position and correct the task planning result.

[0091] It should be noted that after determining the collision location, in order to eliminate the collision risk, the task planning results need to be corrected to ensure that the robot can perform the task safely and efficiently. Specifically, the coordinates of the collision location are adjusted and the task planning results are corrected, including:

[0092] (1) Determine the curve segment where the collision position is located in the task planning path of the target planning working robot, and extract the geometric features of the curve segment.

[0093] It should be noted that by analyzing the path node sequence, it is possible to determine on which path segment between two adjacent task nodes the collision location is located. Furthermore, for the determined curve segment, its geometric features, such as the curve's curvature, tangent direction, length, and other information, are extracted.

[0094] (2) Based on the path continuity constraint and the operation efficiency constraint, the adjustable range of each target task node in the area where the collision risk exists is calculated.

[0095] For example, to ensure path continuity, node coordinate adjustments must avoid sharp turns in the path; to meet operational efficiency constraints, the increase in path length after adjustment must be kept within a certain range. During calculations, the maximum adjustment range for each node in the X, Y, and Z axes is determined based on the geometric characteristics of the curve segment and the constraints.

[0096] (3) Within the adjustable range, the adjustment amount of each curve segment is calculated with the goal of minimizing the total amount of path shape change of all curve segments.

[0097] Specifically, an optimization algorithm (such as gradient descent or genetic algorithm) can be used to calculate the adjustment amount for each curve segment. By continuously trying different adjustment schemes and comparing the path shape changes, the adjustment method that minimizes the total path shape change can be found to determine the coordinate adjustment value for each task node.

[0098] Then, based on the calculated adjustment amount, the coordinates of the relevant task nodes in the original task planning result are adjusted, and information such as the task execution order and time schedule is updated to form a revised task planning result. For example, if the position of a task node is adjusted, the arrival time of subsequent nodes and the robot's movement speed will be adjusted accordingly.

[0099] This step corrects the original task planning results by identifying the curve segment where the collision occurs, extracting geometric features, and calculating adjustments based on constraints. This effectively eliminates collision risks and ensures safe multi-robot operation. Furthermore, the paths are adjusted within the constraints to minimize the impact on operational efficiency, enabling the robots to efficiently complete the task according to the new planning results, improving overall operational quality and efficiency.

[0100] In addition, after adjusting the coordinates at the collision position and correcting the work task planning results, it also includes: obtaining the three-dimensional coordinates of the adjusted target planning work robot at the collision moment; calculating the Euclidean distance of any two target planning work robots at the same collision moment; if the calculation result is less than the preset safety distance threshold, it is determined that there is still a collision risk; if there is still a collision risk, the adjusted target task node is used as the current position node, and the task planning process is re-executed, including task node setting, trajectory generation and collision detection, until the calculation result is greater than or equal to the preset safety distance threshold.

[0101] It should be noted that after adjusting the coordinates at the collision location and revising the task planning results, the adjusted planning results need to be rechecked to ensure that the collision risk has been eliminated. Specifically, based on the adjusted task planning results, the three-dimensional coordinates of the target planning robot at the time of collision are extracted. For any two target planning robots at the same collision time, the distance between them is calculated using the Euclidean distance formula. The calculated Euclidean distance is compared with the preset safety distance threshold. If the calculated Euclidean distance is less than the preset safety distance threshold, it is determined that the collision risk still exists; otherwise, it is determined that the collision risk has been eliminated. If it is determined that the collision risk still exists, the adjusted target task node is used as the current location node, and the entire task planning process is restarted, including setting the task node, generating the trajectory, and performing collision detection. This process is repeated until the calculated Euclidean distance is greater than or equal to the preset safety distance threshold, indicating that the collision risk has been eliminated.

[0102] Specifically, if there are multiple candidate adjustment schemes, multiple candidate adjustment methods that can achieve the minimization goal can be provided on the interactive interface for the user to select and confirm. After confirmation, the collision risk will be automatically re-checked.

[0103] In a preferred embodiment, if after adjusting the coordinates at the collision location and revising the task planning results, a collision risk is still detected, the system obtains the adjusted three-dimensional coordinates of the target planning robot at the time of collision. For any two target planning robots, the Euclidean distance is calculated at the same collision time. If the calculated result is less than a preset safety distance threshold, the following measures can be taken: First, the task planning system prominently alerts the operator on the interactive interface that a collision risk still exists, displaying detailed information such as the collision location and the target planning robots involved, allowing the operator to quickly understand the problem. For example, in the virtual task planning scene diagram, the area with a collision risk is highlighted in red, and a prompt box appears displaying the relevant robot number and the coordinates of the collision location. Second, based on preset rules and algorithms, the system generates multiple candidate adjustment plans for the current collision risk. These plans are based on different adjustment strategies, such as prioritizing task execution order or optimizing path length. These candidate adjustment plans are then presented on the interactive interface for the user to select and confirm. Each candidate adjustment plan demonstrates its impact on the task planning results in an intuitive way, such as through an animation demonstrating the robot's motion trajectory after adjusting the path according to the plan, or listing in detail the adjustment of each task node coordinate, the change in task execution order, and the impact on operation time in the form of a list.

[0104] Furthermore, the operator selects the most appropriate solution from multiple candidate adjustment options based on actual needs and understanding of the task. After confirming the selection, the system automatically applies the selected solution to the task planning results, re-executing the entire task planning process, including task node setup, trajectory generation, and collision detection, using the adjusted target task node as the current location node. Finally, after re-executing the task planning, the system performs another collision detection. This involves re-obtaining the 3D coordinates of the adjusted target task robot at the time of collision, calculating the Euclidean distance between any two target task robots at the same collision time, and comparing it with a preset safety distance threshold. As long as the calculated result is still less than the preset safety distance threshold, the collision risk persists. The system will continue to repeat the above process of feedback prompts, displaying multiple adjustment options, user selection, re-planning, and re-detection until the calculated result is greater than or equal to the preset safety distance threshold. At this point, the collision risk is determined to have been successfully eliminated and the task planning results meet safety requirements. The system then outputs the final task planning solution and task script file to guide the target task robots in executing the task.

[0105] S109: Based on the corrected task node status information and spatial position information, combined with the operation type of the target planning operation robot, matching the corresponding script template, and generating a task script file for the target planning operation robot.

[0106] It should be noted that after completing the correction of the task planning results and ensuring the safety and rationality of the robot's operation, these planning information are further converted into task scripts that can be executed by the robot.

[0107] Specifically, the process of instantiating a script template into a task script file includes: pre-setting multiple script templates for target planning work robots of different job types, wherein the script templates include configurable parameter placeholders; selecting the corresponding script template according to the job type of the target planning work robot; filling the adjusted job task planning node status information and node position information into the parameter placeholders in the selected script template; performing semantic checking and instruction legitimacy verification on the filled script, and outputting an executable task script file after passing the verification.

[0108] Among them, the script template refers to a predefined file containing a task execution instruction framework and parameter placeholders. Specifically, it can be constructed in XML or JSON format, and standardized adaptation of different job types can be achieved through predefined instruction structures. Parameter placeholders refer to position markers in the template used to dynamically replace task planning parameters. Specifically, they can be identified by specific symbols or labels, supporting the automatic filling of task node status and location information. Semantic checking refers to the verification of the logical structure and grammatical rules of script instructions. Specifically, it can be implemented using regular expressions or state machine models to ensure that the instruction format complies with the robot parsing specifications. Instruction legitimacy verification refers to the review of the execution permissions and operation scope of the filled script content. Specifically, it can be achieved through a preset robot action whitelist to prevent instructions that exceed hardware performance or security limitations from being executed.

[0109] It should be noted that the task planning module searches the template library for a corresponding script template based on the target planning robot's task type. For example, if the task type is logistics handling, the script template for logistics handling is selected. The selected script template is then populated with the revised task node status and spatial position information. For example, the 3D coordinate information of the task node is populated into the relevant portion of the robot's motion path in the template, and the task node status information (such as whether a stop is required and the duration of the stop) is populated into the corresponding operation steps. The logic in the script template is adjusted as necessary based on the specific task requirements and the revised planning results. For example, if the execution order of a task node changes in the revised plan, the logical order of task execution in the script is adjusted accordingly. After completing the information population and logic adjustments, a task script file for the target planning robot is generated. This file is typically written in a specific programming language (such as Python or C++) and contains the complete instruction sequence required for the robot to complete the task. This file is stored in the task planning system and can be transmitted to the target planning robot, which can then execute the corresponding task according to the instructions in the script file. At the same time, the contents of the task script file can be viewed and edited on the system interface, making it convenient for operators to make further adjustments and optimizations.

[0110] This step automatically generates a task script file by combining the revised task information with a pre-designed script template. This converts the task planning information into robot-executable instructions, improving the feasibility of task planning and enabling the target-planning robot to accurately complete the task as planned. Furthermore, automated generation using script templates reduces the workload and error rate of manual script writing, improving the efficiency and quality of task planning. Furthermore, the editability of the task script file allows operators to flexibly adjust it based on actual circumstances, further optimizing task execution.

[0111] It should also be noted that the generation process of the task script file specifically includes:

[0112] (1) Extract the time information, status information and three-dimensional space coordinates of each task node from the revised task planning results.

[0113] For example, the estimated arrival time, task type, coordinate location and other information of each task node are obtained from the planning results, and the information is stored in a specific data structure.

[0114] (2) According to the sequence of the time information of each task node, the state information and three-dimensional space coordinate information of the task node are mapped to the corresponding task execution parameter position in the preset script template.

[0115] The status information of the task node can be filled into the parameter position representing the task attribute in the script template, and the three-dimensional space coordinate information can be filled into the parameter position representing the position.

[0116] (3) Based on the mapping results, a standard format task script file is generated that can be recognized and parsed by the target planning operation robot.

[0117] Based on the information mapping results, the task planning module generates a standard-format task script file that the target planning robot can recognize and parse. Based on the structure of the script template and the information filled in, it is converted into a file in a specific format, such as text or binary.

[0118] (4) Perform consistency check and field integrity check on the generated standard format task script file.

[0119] The task planning module checks whether the information in the file complies with the preset rules and logic, and verifies whether the data in each field is complete. If any problems are found, it will make corresponding corrections or prompt the operator to handle them.

[0120] Specifically, the task planning module generates task script files based on data extraction, mapping, and verification techniques. This module extracts information from the revised task planning results, maps this information using a pre-set script template, and converts the task planning information into parameter values ​​within the script template to generate the task script file. Furthermore, consistency checks and field integrity checks ensure the accuracy and completeness of the generated task script file, providing a reliable basis for robot execution.

[0121] The method provided in this embodiment, during the task planning process, first screens out a set of candidate task nodes that may have a collision risk at the same time based on the task node height information, and then generates a position sequence by calculating the three-dimensional coordinates of the target planning operation robot at each time, and further screens and confirms the collision position. This multi-step collision detection mechanism can accurately locate the position where a collision may occur, greatly improving the accuracy of collision risk identification. After determining the collision position, based on the path continuity and operation efficiency constraints, the calculation node can adjust the range and adjustment amount to correct the operation task planning result. And after the correction, check again, and if there is still a collision risk, re-plan until the risk is eliminated. This series of operations further ensures the safety of the robot when performing tasks and effectively avoids the occurrence of collision accidents.

[0122] In the virtual task planning scenario diagram, the operator can freely set the current position task node status information and multiple target task nodes of the target planning robot through cursor operation. Furthermore, various task node parameters, such as spatial position, task attributes, and end-effector control parameters, can be configured according to actual operation requirements, enabling task planning to adapt to different operation scenarios and requirements. Based on the target planning robot's operation type, a corresponding script template is selected, and the modified task information is entered into the template to generate a task script file. This approach enables the method to flexibly handle a variety of different types of operations, demonstrating its high versatility and adaptability.

[0123] Furthermore, the entire process, from generating task planning results to determining task node timings, collision detection, and task script file generation, is now automated. This reduces manual intervention, avoids potential errors in manual planning, and significantly improves task planning efficiency. By traversing the task planning results to determine task node timings, the robot's dwell time and flight speed at each task node are optimally arranged. The generated task script provides clear guidance for the robot's task execution, optimizing the task execution process and ensuring efficient task completion.

[0124] In addition, the visual display of virtual task planning scene diagrams, task schedules, collision locations and other information on the system interface allows operators to intuitively understand the robot's operating environment, task planning status and potential collision risks, making it easier to detect problems and make decisions in a timely manner.

[0125] Example 2:

[0126] Corresponding to the aforementioned embodiment of an aerial work robot task planning method, the present application also provides an embodiment of an aerial work robot task planning system.

[0127] Figure 2 This is a structural diagram of the second embodiment of the aerial work robot task planning system provided by this application. Figure 2 The system provided in this embodiment includes a three-dimensional virtual work scene display interface and a task planning module; the three-dimensional virtual work scene display interface is used to display the working environment of multiple aerial work robots, and the user completes the task planning of the aerial work robots in the three-dimensional virtual work scene display interface through interaction; the task planning module is used to plan tasks for multiple aerial work robots, detect whether there is a collision risk between aerial work robots, and generate task script files corresponding to the aerial work robots.

[0128] This application also provides a task planning device for an aerial work robot. Figure 3 For the schematic diagram of the aerial work robot task planning device provided in this application, please refer to Figure 3 , the apparatus includes a selection module 310, a setting module 320, a generation module 330, a determination module 340, a screening module 350 and a correction module 360;

[0129] The selection module 310 is used to select a target planning operation robot from multiple operation robots in the virtual task planning scene;

[0130] The setting module 320 is used to set the current position task node status information and multiple target task nodes of the target planning operation robot;

[0131] The generating module 330 is configured to generate a task planning result in a virtual task planning scenario based on the multiple target task nodes;

[0132] The determination module 340 is used to traverse each task planning result and determine the time information corresponding to each task node in each task planning result;

[0133] The screening module 350 is used to screen a set of candidate task nodes that have a collision risk at the same time based on the height information of each task node;

[0134] The generation module 330 is further configured to calculate the three-dimensional coordinates of the corresponding target planning operation robot at each moment according to a preset period for each candidate task node, and generate a position time series;

[0135] The screening module 350 is further configured to screen locations with collision risks according to the location time sequence, as collision locations;

[0136] The correction module 360 ​​is used to adjust the coordinates of the collision position and correct the operation task planning result;

[0137] The generation module 330 is further used to match the corresponding script template based on the corrected task node status information and spatial position information, combined with the operation type of the target planning operation robot, to generate a task script file for the target planning operation robot.

[0138] The system of this embodiment can be used to perform Figure 1 The steps, specific implementation principles and implementation processes of the method embodiment shown are similar and will not be repeated here.

[0139] The above description is only a preferred embodiment of the present application and is not intended to limit the present application. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present application shall be included in the scope of protection of the present application.

Claims

1. A task planning method for an aerial work robot, characterized in that: The method comprises: Selecting a target planning operation robot from multiple operation robots in a virtual task planning scenario; Setting the current position task node state information and multiple target task nodes of the target planning operation robot; Based on the multiple target task nodes, generating an operation task planning result in a virtual task planning scenario; Traverse each task planning result and determine the time information corresponding to each task node in each task planning result; Based on the height information of each task node, a set of candidate task nodes with collision risks at the same time is screened; For each candidate task node, the three-dimensional coordinates of the corresponding target planning operation robot at each moment are calculated according to the preset cycle to generate a position time series; According to the position time sequence, a position with a collision risk is screened and confirmed as a collision position; Adjust the coordinates of the collision location and correct the task planning results; Based on the corrected task node status information and spatial position information, combined with the job type of the target planning operation robot, the corresponding script template is matched to generate the task script file of the target planning operation robot.

2. The method according to claim 1, characterized in that The method of screening a set of candidate task nodes that have a collision risk at the same time based on the height information of each task node includes: Traverse all time points in the task planning results of all jobs and obtain multiple task nodes to be tested at each time point; Get the height information of each task node to be detected; Calculate the height difference between any two task nodes to be detected; If the height difference is less than the preset safety height threshold, it is determined that there is a collision risk, and the corresponding task node to be detected is added to the candidate task node set as a candidate node with collision risk; if the height difference is greater than or equal to the preset safety height threshold, it is marked as no collision risk.

3. The method according to claim 1, characterized in that For each candidate task node, the three-dimensional coordinates of the corresponding target planning operation robot at each moment are calculated according to a preset period to generate a position time series, including: Obtaining the three-dimensional position information and corresponding flight speed information of the target planning operation robot at the starting time; Based on a linear interpolation model, the three-dimensional coordinates of the target planning operation robot at each time point are calculated in combination with each time point within a preset period, the starting time, the three-dimensional position information, and the flight speed information; In the preset period, based on the calculated three-dimensional coordinates, a trajectory point sequence of the target planning working robot that changes with time is generated to construct a corresponding position time series.

4. The method according to claim 1, wherein The step of screening and confirming a location with a collision risk as a collision location based on the location time sequence includes: Traverse all moments of all position time series and obtain the three-dimensional coordinates of each position time series at the current traversal moment; Calculate the Euclidean distance based on the three-dimensional coordinates of any two target planning working robots at the same traversal time; If the Euclidean distance is less than the preset safety distance threshold, it is determined that there is a collision risk between the two target planning working robots at the current traversal moment, and the positions of the two target planning working robots at the current traversal moment are recorded as the collision position; If the Euclidean distance is greater than or equal to the preset safety distance threshold, it is marked as no collision risk.

5. The method according to claim 1, wherein The setting of the current position task node status information and multiple target task nodes of the target planning operation robot includes: Loading a virtual mission planning scene graph in a mission planning module and displaying the scene graph; Based on the user's cursor operation, selecting a location point in the scene graph to set a target task node; For each target task node, extract the two-dimensional coordinates of the target task node as XY axis position parameters; The status information of the task nodes is configured and recorded until the status information of all target task nodes is recorded. The status information includes spatial position parameters, task attribute parameters and end effector control parameters.

6. The method according to claim 1, characterized in that The adjusting of the coordinates at the collision position and correcting the task planning result include: Determine the curve segment where the collision position is located in the task planning path of the target planning operation robot, and extract the geometric features of the curve segment; Calculating the adjustable range of each target task node in the area with collision risk based on the path continuity constraint and the work efficiency constraint; Within the adjustable range, the adjustment amount of each curve segment is calculated with the goal of minimizing the total amount of path shape change of all curve segments.

7. The method according to claim 6, characterized in that After adjusting the coordinates of the collision position and correcting the task planning result, the method further includes: Obtain the adjusted three-dimensional coordinates of the target planning working robot at the time of collision; For any two target planning operation robots, calculate the Euclidean distance at the same collision moment; If the calculated result is less than the preset safety distance threshold, it is determined that there is still a collision risk; If there is still a collision risk, the adjusted target task node is used as the current position node, and the task planning process is re-executed, including task node setting, trajectory generation and collision detection, until the calculation result is greater than or equal to the preset safety distance threshold.

8. The method according to claim 1, characterized in that The generation of the task script file includes: Extract the time information, status information and three-dimensional space coordinates of each task node from the revised task planning results; Mapping the status information and three-dimensional space coordinate information of each task node to the corresponding task execution parameter position in the preset script template according to the sequence of the time information of each task node; Based on the mapping results, a standard format task script file is generated that can be recognized and parsed by the target planning operation robot; Perform consistency check and field integrity check on the generated standard format task script file.

9. The method according to claim 1, characterized in that The process of instantiating a script template into a task script file includes: Presetting multiple script templates for target planning robots of different types of operations, wherein the script templates include configurable parameter placeholders; Select the corresponding script template based on the target planning operation robot's operation type; Fill the adjusted job task planning node status information and node location information into the parameter placeholders in the selected script template; Perform semantic checking and instruction legitimacy verification on the completed script, and output an executable task script file after passing the verification.

10. A task planning system for an aerial work robot, characterized in that: The aerial work robot task planning system includes a three-dimensional virtual work scene display interface and a task planning module; the three-dimensional virtual work scene display interface is used to display the working environment of multiple aerial work robots, and the user completes the task planning of the aerial work robot in the three-dimensional virtual work scene display interface through interaction; the task planning module is used to implement the method described in any one of claims 1-9 to generate a task script file corresponding to the aerial work robot.

Citation Information

Patent Citations

  • Multi-agent system task planning method

    CN108830483A

  • Real-time rescoring method suitable for unmanned aerial vehicle cluster operation tasks

    CN117726153A