Robot task scheduling method and device, electronic equipment and readable storage medium

CN122746989APending Publication Date: 2026-09-15CHONGQING PHOENIX TECHNOLOGY CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510263520.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-06
Publication Date
2026-09-15

AI Technical Summary

Technical Problem

[0004]有鉴于此,本申请实施例提供了一种机器人任务编排方法、装置、电子设备及可读存储介质,以解决现有技术中机器人的调度和管理不够灵活的问题

Benefits of technology

[0017] The beneficial effects of this application embodiment compared with the prior art are as follows: By creating detailed node information for each task node, the node information corresponding to each task node is obtained, which helps to accurately identify and call these nodes in the future; based on the task information of the current task to be executed and the node information of each task node, at least one target node corresponding to the current task to be executed is selected from each task node, and the target robot for executing the current task to be executed is determined, dynamically matching task requirements and selecting the most suitable robot to execute the task, increasing the flexibility of scheduling and making more efficient use of resources; based on the robot identification information of the target robot and the node information of at least one target node, the task requirements are bound with the robot capabilities to generate an executable task data package; the task data package is sent to the target robot so that the target robot can parse the task data package and execute the current task to be executed, so that the target robot can independently and correctly execute its assigned task. By editing and processing each task node for subsequent task dispatch, and dynamically filtering node information and binding it to the robot based on the task information of the current task to be executed, the robot can flexibly switch roles and dynamically adapt to different task requirements. Combined with task data packages and automated dispatch mechanisms, this improves scheduling efficiency and maximizes robot utilization, thereby avoiding resource waste. It solves the problem of insufficient flexibility of traditional robot task orchestration methods in large-scale scenarios, and significantly improves the efficiency and adaptability of task orchestration.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122746989A_ABST
    Figure CN122746989A_ABST
Patent Text Reader

Abstract

The application relates to the technical field of robots, and provides a robot task arrangement method and device, electronic equipment and a readable storage medium. The method comprises the following steps: information editing is performed on each task node to obtain node information corresponding to each task node; at least one target node corresponding to a current to-be-executed task is selected from the task nodes according to task information of the current to-be-executed task and the node information of the task nodes, and a target robot used for executing the current to-be-executed task is determined; a task data packet is determined according to robot identification information of the target robot and the node information of the at least one target node; and the task data packet is sent to the target robot, so that the target robot analyzes the task data packet and executes the current to-be-executed task, thereby solving the problem of insufficient flexibility of a traditional robot task arrangement method in a large-scale scene, and significantly improving the efficiency and adaptability of task arrangement.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of robotics technology, and in particular to a robot task scheduling method, apparatus, electronic device, and readable storage medium. Background Technology

[0002] Currently, the robotics industry primarily focuses on the hardware components of the robot body, including design, materials, sensors, and actuators, as well as motion control. Although significant progress has been made in robot hardware and control technology in recent years, efficient management and operation of robots for large-scale applications remains a challenge.

[0003] Robot operation and management solutions in related technologies are often inflexible and struggle to cope with complex and ever-changing task requirements. In scenarios involving large-scale robot task orchestration, robots typically need to perform multiple tasks, and these tasks may have dependencies on each other. Currently, there is a lack of a method for efficiently and rationally scheduling robots to perform tasks. Summary of the Invention

[0004] In view of this, embodiments of this application provide a robot task orchestration method, apparatus, electronic device, and readable storage medium to solve the problem of insufficient flexibility in robot scheduling and management in the prior art.

[0005] A first aspect of this application provides a robot task orchestration method, including:

[0006] Edit the information of each task node to obtain the node information corresponding to each task node, including node identification information and relevant information of the task corresponding to the node;

[0007] Based on the task information of the current task to be executed and the node information of each task node, at least one target node corresponding to the current task to be executed is selected from each task node, and the target robot for executing the current task to be executed is determined.

[0008] The task data packet is determined based on the robot identification information of the target robot and the node information of at least one target node;

[0009] The task data packet is sent to the target robot so that the target robot can parse the task data packet and execute the current task to be executed.

[0010] A second aspect of this application provides a robot task orchestration apparatus, comprising:

[0011] The task editing module allows you to edit the information of each task node to obtain the node information corresponding to each task node. The node information includes node identification information and relevant information about the task to which the node corresponds.

[0012] The filtering module, based on the task information of the current task to be executed and the node information of each task node, filters out at least one target node corresponding to the current task to be executed from each task node, and determines the target robot for executing the current task to be executed.

[0013] The determination module determines the task data packet based on the robot identification information of the target robot and the node information of at least one target node;

[0014] The execution module sends the task data packet to the target robot, enabling the target robot to parse the task data packet and execute the currently pending task.

[0015] A third aspect of this application provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the steps of the above-described method.

[0016] A fourth aspect of this application provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the steps of the above-described method.

[0017] The beneficial effects of this application embodiment compared with the prior art are as follows: By creating detailed node information for each task node, the node information corresponding to each task node is obtained, which helps to accurately identify and call these nodes in the future; based on the task information of the current task to be executed and the node information of each task node, at least one target node corresponding to the current task to be executed is selected from each task node, and the target robot for executing the current task to be executed is determined, dynamically matching task requirements and selecting the most suitable robot to execute the task, increasing the flexibility of scheduling and making more efficient use of resources; based on the robot identification information of the target robot and the node information of at least one target node, the task requirements are bound with the robot capabilities to generate an executable task data package; the task data package is sent to the target robot so that the target robot can parse the task data package and execute the current task to be executed, so that the target robot can independently and correctly execute its assigned task. By editing and processing each task node for subsequent task dispatch, and dynamically filtering node information and binding it to the robot based on the task information of the current task to be executed, the robot can flexibly switch roles and dynamically adapt to different task requirements. Combined with task data packages and automated dispatch mechanisms, this improves scheduling efficiency and maximizes robot utilization, thereby avoiding resource waste. It solves the problem of insufficient flexibility of traditional robot task orchestration methods in large-scale scenarios, and significantly improves the efficiency and adaptability of task orchestration. Attached Figure Description

[0018] To more clearly illustrate the technical solutions in the embodiments of this application, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0019] Figure 1 This is a flowchart illustrating a robot task orchestration method provided in an embodiment of this application;

[0020] Figure 2 This is an architecture diagram of a robot task orchestration system provided in an embodiment of this application;

[0021] Figure 3 This is a system block diagram of a robot task orchestration system provided in an embodiment of this application;

[0022] Figure 4 This is a flowchart illustrating the editing process of task node information provided in an embodiment of this application;

[0023] Figure 5 This is a schematic diagram of the structure of a robot task orchestration device provided in an embodiment of this application;

[0024] Figure 6 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Detailed Implementation

[0025] In the following description, specific details such as particular system architectures and techniques are set forth for illustrative purposes and not for limitation, in order to provide a thorough understanding of the embodiments of this application. However, those skilled in the art will understand that this application may also be implemented in other embodiments without these specific details. In other instances, detailed descriptions of well-known systems, apparatuses, circuits, and methods have been omitted so as not to obscure the description of this application with unnecessary detail.

[0026] In related technologies, the robotics industry primarily focuses on the design, materials, sensors, actuators, and other hardware components of the robot body, as well as its motion control. The robot's structure and hardware are fundamental to its task execution, directly determining its physical capabilities, such as load capacity, accuracy, and speed. Motion control is one of the core technologies for task execution, involving path planning, obstacle avoidance, and dynamics control, and determining whether the robot can complete tasks efficiently and accurately. Although significant progress has been made in robot hardware and control technologies in recent years, efficient management and operation of robots in large-scale applications remains a challenge. Existing robot operation and management solutions are often inflexible and struggle to cope with complex and changing task requirements. In scenarios involving large-scale robot task orchestration, robots typically need to perform multiple tasks, and these tasks may have dependencies; currently, there is a lack of a method for efficiently and rationally scheduling robots to perform tasks.

[0027] To address the aforementioned scenario, this application provides a robot task orchestration method. By creating detailed node information for each task node, including identification information and related task details such as task type and parameters, the method obtains the corresponding node information for each task node, facilitating accurate identification and invocation of these nodes subsequently. Based on the task information of the currently pending task and the node information of each task node, at least one target node corresponding to the currently pending task is selected from the task nodes, and a target robot for executing the currently pending task is determined. This dynamic matching of task requirements and selection of the most suitable robot increases scheduling flexibility and allows for more efficient resource utilization. Based on the robot identification information of the target robot and the node information of at least one target node, task requirements are bound to robot capabilities to generate an executable task data package. This task data package is then sent to the target robot, enabling the target robot to parse the task data package and execute the currently pending task, allowing the target robot to independently and correctly execute its assigned task. By editing and processing each task node for subsequent task dispatch, and dynamically filtering node information and binding it to the robot based on the task information of the current task to be executed, the robot can flexibly switch roles and dynamically adapt to different task requirements. Combined with task data packages and automated dispatch mechanisms, the scheduling efficiency of the robot is improved and the utilization rate of the robot is maximized, thereby avoiding resource waste. This solves the problem of insufficient flexibility of traditional robot task orchestration methods in large-scale scenarios, and significantly improves the efficiency and adaptability of task orchestration and execution.

[0028] The following will describe in detail, with reference to the accompanying drawings, a robot task orchestration method and apparatus according to an embodiment of this application.

[0029] Figure 1This is a flowchart illustrating a robot task orchestration method provided in an embodiment of this application. Figure 1 As shown, the robot task orchestration method includes:

[0030] Step 101: Edit the information of each task node to obtain the node information corresponding to each task node, wherein the node information includes node identification information and relevant information of the task corresponding to the node.

[0031] In some embodiments, a task node can be a resident service conforming to the Robot Operating System (ROS) standard. It serves as the smallest execution unit of a task, capable of executing individual subtasks within a task and returning the subtask status. Each task node is responsible for an independent function, such as navigation, grasping, or visual recognition. Furthermore, task nodes run continuously during task execution, awaiting invocation from the scheduler. Upon completion, the task node returns the task status. For example, as a case study, a robot grasping algorithm, based on the Robot Operating System standard, activates its standard capabilities and becomes resident in the system, thus becoming a grasping task node (Grasp Ros Node).

[0032] Node identification information may include the identification information of the executing entity used to perform the task and the location information of the task node. The location information of the task node can also be understood as the location information required by the executing entity when executing the task corresponding to the node. In addition, node identification information may also include the node's name information. The relevant information of the task corresponding to the node defines the specific task content of the node.

[0033] For example, node identification information may include the subject of the task node, and the relevant information of the task corresponding to the node may include the target object to be operated, the action corresponding to the task, and the parameter information of the action. The parameters may include "action intensity" and "action location". The action can also be understood as the capability required by the task node.

[0034] As an example, for a task node "Grab", the node identification information can be defined as {"Subject":{"subjectName":"arm","location":3,2,1}}, that is, the name of the execution subject of the task node (subjectName) is the robotic arm (arm), and the location of the task node (location) is "3,2,1"; the relevant information of the task corresponding to the node can be defined as: {"Object":{"name":"screw","loc":3,3,6},"Action":{"id":"graspID","repeatNum":"3"}}, that is, the name of the target object (Object) (Name) is "screw", the location (loc) of "screw" (loc) is "3,3,6", the identifier (id) of the action (Action) (id) is the grab ID (graspID), and the number of repetitions of the action (repeatNum) is 3.

[0035] Editing the information of each task node to obtain its corresponding node information is the foundation for building a flexible and efficient robot task orchestration system. This allows for the creation of multiple independent task nodes, each of which can be independently developed, tested, and optimized. This facilitates flexible combination and adjustment of task nodes, improving the reliability of task execution. Furthermore, the node information obtained through editing provides structured data for task orchestration, simplifying the addition of new tasks, modification of existing tasks, and monitoring of task status.

[0036] Step 102: Based on the task information of the current task to be executed and the node information of each task node, at least one target node corresponding to the current task to be executed is selected from each task node, and the target robot for executing the current task to be executed is determined.

[0037] In some embodiments, task information of the currently pending task can be obtained. The task information of the currently pending task may include the specific task content of the currently pending task (such as "sorting screws in area A", "moving apples from work A to work station B", etc.), the priority of the currently pending task, the time requirement of the currently pending task, etc.

[0038] The task information of the current task to be executed is analyzed, and the target nodes that meet the requirements are selected from the task nodes in combination with the node information corresponding to each task node. For example, as an example, if the current task to be executed is "sorting screws in area A", then the target nodes need to include "navigation", "location recognition", "screw recognition", "screw gripping", etc.

[0039] Furthermore, based on the task information of the current task to be performed and the information of each robot, the most suitable target robot for performing the task can be selected from among the robots. For example, assuming that the hardware configuration of the handling robot 01 includes a robotic arm and various sensors, and its software capabilities include the ability to call navigation algorithms, grasping algorithms, etc., then the handling robot 01 is suitable for the current task to be performed and can be used as the target robot.

[0040] Based on the node information of each task node and the task information of the currently pending task, the system dynamically filters target nodes and target robots according to task requirements, achieving automated intelligent task-to-robot allocation. This not only improves the accuracy and efficiency of task execution but also enhances the flexibility and adaptability of the entire robot task orchestration system, enabling it to better cope with complex and ever-changing task environments and improving system adaptability and response speed. Furthermore, accurate task-robot matching maximizes resource utilization, helping to reduce robot idleness and overuse.

[0041] Step 103: Determine the task data packet based on the robot identification information of the target robot and the node information of at least one target node.

[0042] In some embodiments, robot identification information may be an identification sequence or name that uniquely identifies the target robot, such as a robot identification sequence of 001.

[0043] Based on the robot identification information of the target robot and the node information of at least one target node, a structured task data packet is generated. The task data packet may contain all the information required to execute the task, such as the robot identification information of the target robot, the node information of the target node, the map environment information corresponding to the task to be executed, the calling order of at least one target node, and the robot capability information required for the task to be executed, so as to facilitate the target robot to parse and execute.

[0044] Step 104: Send the task data packet to the target robot so that the target robot can parse the task data packet and execute the current task to be executed.

[0045] In some embodiments, task data packets can be sent to the target robot via a message channel, which can be Message Queuing Telemetry Transport (MQTT). The target robot receives the task data packet, parses its contents to obtain the specific task assigned to it, and performs corresponding operations based on the parsed information until the task is completed. This flexible and efficient scheduling scheme overcomes the limitations of related technologies, enabling the robot task orchestration system to maintain efficient operation in complex and ever-changing environments.

[0046] Based on the robot task orchestration method provided in this application, each task node is edited for selection by subsequent task dispatch. The node information of the target node is dynamically filtered and bound to the robot according to the task information of the current task to be executed and the node information of each task node. This allows the robot to flexibly switch roles and dynamically adapt to different task requirements. Combined with task data packages, automated dispatching mechanisms, and robot autonomous parsing and execution, scheduling efficiency is improved and robot utilization is maximized, thereby avoiding resource waste. This solves the problem of insufficient flexibility of traditional robot task orchestration methods in large-scale scenarios and significantly improves the efficiency and adaptability of task orchestration and execution.

[0047] In some embodiments, after editing and obtaining the node information corresponding to each task node, the node information can be stored in a task node library, thereby supporting repeated calls to task nodes and improving task orchestration efficiency. Additionally, optionally, when storing node information in the task node library, descriptive information can be added to the node information and uniquely encoded before being entered into the task node library, thereby improving the efficiency of node information retrieval.

[0048] In this way, the node information corresponding to each task node is stored in the task node library. When a task needs to be executed, at least one node information corresponding to that task can be directly called. This not only improves the execution efficiency of a single task, but also optimizes the overall system performance.

[0049] In some embodiments, information editing is performed on each task node to obtain node information corresponding to each task node, including:

[0050] Receive node definition operations input by the user on the visual interface, where the node definition operations are used to define each task node;

[0051] Node information is generated based on the node definition.

[0052] As an example, the users mentioned above can be engineers, schedulers, or other relevant personnel. Users can define or modify task nodes through the system's visual interface.

[0053] Node definition operations can include forms, drag-and-drop operations, etc. By receiving user input on the visual interface, node information for task nodes can be defined and generated. For example, as an example, the node information for the "Grab" node can be defined as:

[0054] {

[0055] "Subject":{"subjectName":"arm","location":[3,2,1]},

[0056] "Object":{"name":"Screw","loc":[3,3,6]},

[0057] "Action":{"id":"graspID","repeatNum":3}

[0058] }

[0059] The visual interface provides an intuitive way for users to easily define task nodes. Based on user input, the system automatically generates node information that includes the node's own attributes and the corresponding task content. This enables users to flexibly define complex tasks by receiving manual arrangements from the user, facilitating subsequent task allocation and execution.

[0060] In some embodiments, information editing is performed on each task node to obtain node information corresponding to each task node, including:

[0061] Obtain the information that needs to be edited for any task node, and convert the information into formatted information that conforms to the input format of the preset language model;

[0062] Input the formatted information and the task instructions corresponding to the task nodes into the preset language model to obtain the node information of the task nodes output by the preset language model.

[0063] As an example, the aforementioned preset language model can be a Large Language Model (LLM), which can be used for natural language processing and generation. The information that any task node needs to edit can be formatted information about the task subject, target object, and action / capability obtained through an external interface. For example, assuming the task description of the node is "the task of picking up screws," the formatted information and the corresponding task instructions for the task node can be assembled into a prompt word and passed to the preset language model according to the following prompt word format:

[0064]

[0065]

[0066] The generated prompt words are input into a preset language model to obtain the node information of the task node output by the preset language model. The node information of the task node output by the preset language model can be:

[0067] {

[0068] "Node ID":"grasp_1",

[0069] "Subject":{"subjectName":"arm","location":[3,2,1]},

[0070] "Object":{"name":"Screw","loc":[3,3,6]},

[0071] "Action":{"id":"graspID","repeatNum":3}

[0072] }

[0073] In this way, the information to be edited is transformed into formatted information that conforms to the input format of the preset language model, resulting in unified structured data, which can avoid model misunderstandings due to differences in expression. In addition, based on the preset prompt word template, combined with the formatted information and task instructions, prompt words can be obtained and input into the preset language model to obtain the node information corresponding to the task node.

[0074] By editing the information of each task node through a large language model, the node information corresponding to each task node is obtained, and the high-level task description is automatically converted into low-level execution instructions, which reduces the possibility of human error and the workload of manually configuring nodes, thus improving the efficiency of task node editing.

[0075] In some embodiments, after inputting the formatting information and the task instructions corresponding to the task node into a preset language model to obtain the node information of the task node output by the preset language model, the method further includes:

[0076] Obtain the node information of the task node, which is defined manually;

[0077] By using the manually defined node information of the task node, the preset language model is fine-tuned to increase the accuracy of task editing for the corresponding work scenario of the task node.

[0078] In some examples, the results of manually orchestrated task nodes can be processed according to the input format based on the language model's ability to call the external world (i.e., function call) and thought chain (i.e., the model's ability to receive tasks and plan and execute action steps), persisted in the database, and used to fine-tune the language model in the task orchestration scenario, so that the language model performs better and better in the scenario.

[0079] As an example, after obtaining the task node information generated by the preset language model based on formatted information and task instructions, node information for the same task node, manually defined by humans based on experience and professional knowledge, is collected. This manually defined node information, derived from practical experience, is more accurate. The manually defined node information is used as training data to fine-tune the preset language model. By adjusting the weights of the preset language model using this high-quality manually labeled data, a more suitable preset language model for editing task node information is obtained. This increases the accuracy of the preset language model in editing tasks within the corresponding work scenario, enabling the preset language model to learn task arrangement rules for specific scenarios, generate more accurate node information subsequently, and improve the preset language model's understanding and output accuracy for specific tasks.

[0080] Furthermore, as an example, in some embodiments, this application provides a robot task orchestration system, the architecture of which is shown in the figure below. Figure 2As shown, the robot task orchestration system includes: a preset language model 201, an algorithm library 202, a task orchestration front-end interface 203, a task orchestration system 204, a robot task data packet parsing program 205, a robot body scheduling program 206, and target task nodes 207. The preset language model 201 receives prompt words and converts them into node information for task nodes. The prompt words are obtained by assembling formatted information conforming to the input format of the preset language model with a prompt word template. The formatted information conforming to the input format of the preset language model is obtained by converting the information required for editing the task nodes. The task orchestration front-end interface 203 provides a user interface that supports two task definition methods: natural language input and manual orchestration. Manual orchestration involves manually editing the information of each task node through forms, dragging and dropping nodes, etc., to obtain the node information corresponding to the task node. Natural language input allows the user to directly input the task instructions corresponding to the task nodes on the task orchestration front-end interface 203. The task orchestration front-end interface 203 receives the task instructions (i.e., natural language input) input by the user and transmits the task instructions to the task orchestration system 204. The task orchestration system 204 integrates the task instructions corresponding to the task nodes input by the task orchestration front-end interface 203 with the information that any task node needs to be edited, to obtain formatted information conforming to the input format of a preset language model. It then combines this formatted information with a prompt word template to obtain prompt words. Based on the task information of the task to be executed, it filters from each task node to obtain at least one target node corresponding to the current task to be executed, determines the target robot to execute the current task, and determines the task data package based on the robot identification information of the target robot and the node information of at least one target node. The algorithm library 202 stores the execution code of standardized capability modules (such as grasping, navigation, and visual recognition), providing basic capability support for task orchestration and execution. The robot task package parsing program 205 receives the task data package, parses the task nodes and dependencies within it, and calls the corresponding target task node 207 according to the task requirements. The target task node 207 includes a first target task node, a second target task node, and a third target task node, each running independently. The robot body scheduler 206 can be used to coordinate the execution order of multiple target task nodes, monitor task status (such as successful / failed grasping), and provide real-time feedback to the task orchestration system 204.

[0081] In some embodiments, the task data packet is determined based on the robot identification information of the target robot and the node information of the at least one target node, including:

[0082] Based on the task information of the current task to be executed, the map environment information corresponding to the current task to be executed and the calling order of at least one target node are obtained through analysis;

[0083] Based on the node information of at least one target node, determine the robot capability information required for the current task to be performed;

[0084] A task data package is generated based on the target robot's robot identification information, map environment information, node information of at least one target node, the calling order of at least one target node, and robot capability information.

[0085] In some embodiments, the task information of the current task to be executed may include the specific requirements of the current task, the priority of the current task, the time requirement of the current task, and the subtasks of the current task. The task information of the current task to be executed is analyzed to identify all relevant subtasks and their dependencies, thereby obtaining the map environment information corresponding to the current task and the calling order of at least one target node corresponding to the current task. For example, if the current task to be executed is sorting screws, the calling order of at least one target node could be: move to area A → identify screws → grab screws → place in area B.

[0086] Furthermore, when determining the calling order of at least one target node, a specific calling sequence can be generated based on the execution order of at least one target node. That is, the calling order of at least one target node transforms the abstract execution order into a specific sequence of operation instructions, ensuring that each node is called in the correct order, so that the subsequent target robot executes the task nodes in sequence.

[0087] Furthermore, based on the node information of at least one target node, the required robot capabilities for each target node can be determined, thereby enabling the determination of the robot capability information required for the current task to be performed. By determining the robot capability information, the target robot can self-check whether it possesses the capability to perform the task.

[0088] Finally, the robot identification information of the target robot, map environment information, node information of the target nodes and their calling order, and robot capability information are integrated into a unified data packet, namely the task data packet. The task data packet serves as the final task instruction set, directly guiding the robot to execute the task.

[0089] Optionally, when generating the task data packet, the robot identification information and the target node identification information can be hashed to generate the hash value of the task data packet. The hash value of the task data packet is then used as the identification information of the task data packet, thereby ensuring the validity and security of the task data.

[0090] This embodiment achieves precise control over task logic by analyzing the map environment, the calling order of target nodes, and assembling task data packets. This ensures that target nodes are executed in the correct order, avoids logical errors, and achieves efficient matching based on robot capabilities and task requirements.

[0091] In some embodiments, it also includes:

[0092] Receive the task update instruction sent by the target robot; based on the task update instruction, if it is detected that the current task node does not include the task node required by the task update instruction, edit the node information of the task node required by the task update instruction;

[0093] Based on the robot identification information of the target robot and the node information of the task nodes required by the task update instruction, determine the task data packet corresponding to the task update instruction;

[0094] The task data packet corresponding to the task update instruction is sent to the target robot so that the target robot can parse the task data packet corresponding to the task update instruction, terminate the current task, and execute the task corresponding to the task update instruction.

[0095] As an example, the target robot may encounter unexpected situations during task execution, such as environmental changes, equipment failures, or adjustments to task priorities, requiring dynamic adjustments to the task flow. In this case, the target robot can send an update request to the system through a communication protocol, such as MQTT.

[0096] After receiving a task update instruction, the system checks whether the current task node already contains the node required by the instruction. If not, it edits the node information of the required node, allowing operations such as adding, modifying, or deleting nodes. Conversely, if the current task node already contains the required node, it can directly access that node information.

[0097] In addition, a new task data packet, namely the task data packet corresponding to the task update instruction, can be generated based on the identification information of the target robot and the node information of the task nodes required by the task update instruction. The task data packet corresponding to the task update instruction contains the content information required to execute the updated task.

[0098] The generated task update instruction corresponding to the task data packet is sent back to the target robot. After parsing the data packet, the target robot will stop the ongoing task and execute the task corresponding to the task update instruction.

[0099] By using task update instructions, the target robot can flexibly adjust its tasks according to actual conditions during execution, improving the system's adaptability and responsiveness. At the same time, timely task updates help avoid unnecessary operations, allowing the robot to directly switch to more important tasks, optimizing resource utilization, and improving overall work efficiency.

[0100] In some embodiments, the node identification information includes the identification information of the execution entity for performing the task and the location information of the task node; the relevant information of the task corresponding to the node includes at least one of the following: the identification information of the target object to be operated, the location information of the target object to be operated, and the parameter information of the action corresponding to the task.

[0101] Optionally, the node identification information may also include node name information. The action parameter information may include action identification information, action repetition count information, etc.

[0102] Node name information can be a specific name or identity sequence for each task node, used to uniquely identify the task node in the system. For example, on an automated production line, a task node responsible for assembling parts can be named "Assembly_01". The location information of a task node can also be understood as the location information required by the executing entity when performing the task corresponding to the node, which can refer to the physical location (such as coordinates), network location, or logical location of the task node.

[0103] The relevant information for the task corresponding to the node refers to the relevant information needed to complete a specific task, including at least one or more of the following:

[0104] Identification information of the target object to be operated on: such as information about the material that the node will process, such as material number, type, etc., to ensure that the correct material is processed correctly.

[0105] Location information of the target object to be operated: The specific location of the target object in space helps the robot or other execution device to accurately find and process the target object.

[0106] The parameter information of the action corresponding to the task: Define the specific action to be performed, such as grabbing, moving, assembling, etc., which helps to determine the specific execution steps; you can also define the number of times the action is executed. For example, if a task requires moving the same type of material to different locations three times, the number of repetitions is 3.

[0107] In some embodiments, this application provides a robot task orchestration system, the system block diagram of which is shown below. Figure 3As shown, the system includes: a capability management module 301, a task management module 302, a task orchestration module 303, a task binding module 304, a robot management module 305, and a robot body parsing and execution module 306. The capability management module 301 manages the addition, deletion, modification, and query operations of standard functions (or capabilities) developed by engineers. The capability library stores standardized capability execution code, providing a centralized database for storing and retrieving various capabilities that the robot can execute. The task management module 302 provides the core functions of task orchestration and supports routine addition, deletion, modification, and query operations after orchestration. It defines the task flow and nodes, supports manual and automatic orchestration, and combines multiple task nodes into a complete task pipeline to achieve flexible task definition and management. The task orchestration module 303 defines each node of a task and combines nodes to form a task library, achieving flexible task definition and management. The task library stores the orchestrated pipeline relationships. Each task pipeline contains combinations of multiple task nodes and their execution order. The task pipelines and task nodes in the task library can be called and reused multiple times. The task node library stores node information corresponding to each task node in the task pipeline, providing basic node support for task orchestration and facilitating quick task definition by users. The task binding module 304 binds the task pipeline in the task library to robot identification information and verifies whether the robot possesses the necessary capabilities to execute the task, ensuring that the robot can successfully execute the task during assignment and avoiding task failure due to insufficient capabilities. The robot management module 305 encodes individual robots and, in conjunction with the capability management module 301, binds the robot's capabilities, ensuring that the robot possesses the necessary capabilities to execute the task during assignment. The task data packet contains all the information required for task execution and serves as the basic unit for task assignment, being sent to the robot for execution. The robot body parsing and execution module 306 receives the task data packet, parses the task, calls the corresponding capability module to execute the task, monitors the task execution status, and provides real-time feedback to the system.

[0108] In some embodiments, this application provides a task node information editing process, the flowchart of which is shown below. Figure 4 As shown, the first task node is the first node in the task node flow information editing process, the second task node is the second node in the task node flow information editing process and is executed after the first task node is completed, and the third task node is the third node in the task node flow information editing process and is executed after the second task node is completed. Information editing is performed on each task node, including: defining the target object, defining the execution subject, defining the action corresponding to the node, and defining the number of times the action is repeated, etc.

[0109] All of the above-mentioned optional technical solutions can be combined in any way to form the optional embodiments of this application, and will not be described in detail here.

[0110] The following are embodiments of the apparatus described in this application, which can be used to execute the embodiments of the method described in this application. For details not disclosed in the apparatus embodiments of this application, please refer to the embodiments of the method described in this application.

[0111] Figure 5 This is a schematic diagram of a robot task orchestration device provided in an embodiment of this application. Figure 5 As shown, the robot task orchestration device includes:

[0112] The task editing module 501 is configured to edit the information of each task node to obtain the node information corresponding to each task node, wherein the node information includes node identification information and relevant information of the task corresponding to the node.

[0113] The filtering module 502 is configured to filter at least one target node corresponding to the current task to be executed from each task node based on the task information of the current task to be executed and the node information of each task node, and determine the target robot to be executed for the current task to be executed.

[0114] The determination module 503 is configured to determine the task data packet based on the robot identification information of the target robot and the node information of at least one target node;

[0115] The execution module 504 is configured to send a task data packet to the target robot so that the target robot can parse the task data packet and execute the currently pending task.

[0116] In some embodiments, the task editing module 501 is configured to receive node definition operations input by the user on the visual interface, wherein the node definition operations are used to define each task node; and to generate node information based on the node definition operations.

[0117] In some embodiments, the task editing module 501 is configured to acquire the information to be edited for any task node, and convert the information to be edited into formatted information that conforms to the input format of a preset language model; input the formatted information and the task instructions corresponding to the task node into the preset language model to obtain the node information of the task node output by the preset language model.

[0118] In some embodiments, the task editing module 501 is further configured to obtain node information of the task node defined by the user; and to fine-tune the preset language model using the node information of the task node defined by the user, so as to increase the accuracy of the preset language model in task editing for the work scenario corresponding to the task node.

[0119] In some embodiments, the determining module 503 is configured to analyze the map environment information corresponding to the current task to be executed and the calling order of at least one target node based on the task information of the current task to be executed; determine the robot capability information required for the current task to be executed based on the node information of at least one target node; and generate a task data package based on the robot identification information of the target robot, the map environment information, the node information of at least one target node, the calling order of at least one target node, and the robot capability information.

[0120] In some embodiments, the task editing module 501 is further configured to receive a task update instruction sent by the target robot; edit the node information of the task node required by the task update instruction if it is detected that the current task node does not include the task node required by the task update instruction; determine the task data packet corresponding to the task update instruction based on the robot identification information of the target robot and the node information of the task node required by the task update instruction; and send the task data packet corresponding to the task update instruction to the target robot so that the target robot can parse the task data packet corresponding to the task update instruction to terminate the current task and execute the task corresponding to the task update instruction.

[0121] In some embodiments, the node identification information includes the identification information of the execution entity for performing the task and the location information of the task node; the relevant information of the task corresponding to the node includes at least one of the following: the identification information of the target object to be operated, the location information of the target object to be operated, and the parameter information of the action corresponding to the task.

[0122] It should be understood that the sequence number of each step in the above embodiments does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.

[0123] Figure 6 This is a schematic diagram of the electronic device 6 provided in an embodiment of this application. Figure 6 As shown, the electronic device 6 of this embodiment includes a processor 601, a memory 602, and a computer program 603 stored in the memory 602 and executable on the processor 601. When the processor 601 executes the computer program 603, it implements the steps in the various method embodiments described above. Alternatively, when the processor 601 executes the computer program 603, it implements the functions of each module / unit in the various device embodiments described above.

[0124] Electronic device 6 can be a desktop computer, laptop, handheld computer, cloud server, or other electronic device. Electronic device 6 may include, but is not limited to, processor 601 and memory 602. Those skilled in the art will understand that... Figure 6This is merely an example of electronic device 6 and does not constitute a limitation on electronic device 6. It may include more or fewer components than shown, or different components.

[0125] The processor 601 may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.

[0126] The memory 602 can be an internal storage unit of the electronic device 6, such as a hard disk or RAM of the electronic device 6. The memory 602 can also be an external storage device of the electronic device 6, such as a plug-in hard disk, Smart Media Card (SMC), Secure Digital (SD) card, Flash Card, etc., equipped on the electronic device 6. The memory 602 can also include both internal and external storage units of the electronic device 6. The memory 602 is used to store computer programs and other programs and data required by the electronic device.

[0127] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the above-described division of functional units and modules is merely an example. In practical applications, the above functions can be assigned to different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiments can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.

[0128] If an integrated module / unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a readable storage medium. Based on this understanding, all or part of the processes in the methods of the above embodiments can also be implemented by a computer program instructing related hardware. The computer program can be stored in a readable storage medium, and when executed by a processor, it can implement the steps of the various method embodiments described above. The computer program may include computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. A computer-readable medium may include: any entity or device capable of carrying computer program code, recording media, USB flash drives, portable hard drives, magnetic disks, optical disks, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signals, telecommunication signals, and software distribution media, etc. It should be noted that the content included in a computer-readable medium can be appropriately added to or subtracted according to the requirements of legislation and patent practice in a jurisdiction. For example, in some jurisdictions, according to legislation and patent practice, computer-readable media do not include electrical carrier signals and telecommunication signals.

[0129] The above embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application, and should all be included within the protection scope of this application.

Claims

1. A robot task orchestration method, characterized in that, include: Edit the information of each task node to obtain the node information corresponding to each task node, wherein the node information includes node identification information and relevant information of the task corresponding to the node; Based on the task information of the current task to be executed and the node information of each task node, at least one target node corresponding to the current task to be executed is selected from each task node, and the target robot for executing the current task to be executed is determined. The task data packet is determined based on the robot identification information of the target robot and the node information of the at least one target node; The task data packet is sent to the target robot so that the target robot can parse the task data packet and execute the currently pending task.

2. The robot task orchestration method according to claim 1, characterized in that, The process of editing information for each task node to obtain the corresponding node information includes: Receive node definition operations input by the user on the visual interface, wherein the node definition operations are used to define the task nodes; The node information is generated based on the node definition operation.

3. The robot task orchestration method according to claim 1, characterized in that, The process of editing information for each task node to obtain the corresponding node information includes: Obtain the information that needs to be edited for any task node, and convert the information into formatted information that conforms to the input format of a preset language model; The formatting information and the task instructions corresponding to the task node are input into a preset language model to obtain the node information of the task node output by the preset language model.

4. The robot task orchestration method according to claim 3, characterized in that, After inputting the formatted information and the task instructions corresponding to the task node into a preset language model to obtain the node information of the task node output by the preset language model, the method further includes: Obtain the node information of the task node, which is defined manually; By using the node information of the manually defined task node, the preset language model is fine-tuned to increase the accuracy of task editing for the corresponding work scenario of the task node.

5. The robot task orchestration method according to claim 1, characterized in that, The step of determining the task data packet based on the robot identification information of the target robot and the node information of the at least one target node includes: Based on the task information of the current task to be executed, the map environment information corresponding to the current task to be executed and the calling order of the at least one target node are analyzed. Based on the node information of the at least one target node, determine the robot capability information required for the current task to be performed; The task data package is generated based on the robot identification information of the target robot, map environment information, node information of at least one target node, calling order of at least one target node, and robot capability information.

6. The robot task orchestration method according to claim 1, characterized in that, Also includes: Receive the task update instruction sent by the target robot; According to the task update instruction, if it is detected that the current task node does not include the task node required by the task update instruction, the node information of the task node required by the task update instruction is edited. Based on the robot identification information of the target robot and the node information of the task nodes required by the task update instruction, determine the task data packet corresponding to the task update instruction; The task data packet corresponding to the task update instruction is sent to the target robot so that the target robot can parse the task data packet corresponding to the task update instruction, terminate the current task, and execute the task corresponding to the task update instruction.

7. The robot task orchestration method according to any one of claims 1 to 6, characterized in that, The node identification information includes the identification information of the executing entity used to perform the task and the location information of the task node; the relevant information of the task corresponding to the node includes at least one of the following: the identification information of the target object to be operated, the location information of the target object to be operated, and the parameter information of the action corresponding to the task.

8. A robot task orchestration device, characterized in that, include: The task editing module is configured to edit the information of each task node to obtain the node information corresponding to each task node, wherein the node information includes node identification information and relevant information of the task corresponding to the node; The filtering module is configured to filter at least one target node corresponding to the current task to be executed from each task node based on the task information of the current task to be executed and the node information of each task node, and determine the target robot for executing the current task to be executed. The determination module is configured to determine the task data packet based on the robot identification information of the target robot and the node information of the at least one target node; The execution module is configured to send the task data packet to the target robot, so that the target robot parses the task data packet and executes the currently pending task.

9. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the steps of the method as described in any one of claims 1 to 7.

10. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method as described in any one of claims 1 to 7.