Robot action scheduling method and device, and computer readable storage medium
Patent Information
- Application Number
- CN202610922014.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-06-24
- Publication Date
- 2026-10-30
AI Technical Summary
[0004]然而,上述编排和执行方式导致群体的动作编排开发调试效率较低,缺少差异任务执行能力,同时执行过程的容错率不足
[0011]本申请实施例的机器人动作调度方法、装置及计算机可读存储介质,根据目标结构树确定机器人执行的第一编排动作和第一编排动作的第一动作路径,其中,目标结构树以机器人动作方案为根节点,以组成机器人动作方案的方案时序调度组为根节点的子节点,以执行方案时序调度组中编排动作的至少一个机器人组为方案时序调度组的子节点,从而可以对各机器人进行差异化编排,控制程度较高,且扩展性强,根据第一编排动作和第一动作路径生成第一事件名称,关联第一编排动作、第一动作路径和第一事件名称,得到第一查询关系,从而能够根据第一查询关系直接在目标结构树中根据第一动作路径定位第一编排动作,按照预设消息头格式对第一编排动作和第一事件名称进行封装,生成第一控制指令,以便在机器人接收到第一控制指令时能够执行对应的第一编排动作,也可以基于第一事件名称返回对应的第一响应信息,形成第一编排动作下发和响应的闭环,在接收到机器人返回的第一响应信息的情况下,根据第一查询关系和第一响应信息中的第一事件名称,根据第一动作路径在目标结构树中确定第二编排动作和第二编排动作的第二动作路径,其中,第一响应信息用于表示机器人成功完成第一编排动作,第二编排动作是目标结构树中第一编排动作的下一编排动作,能够通过收集、反馈、同步本体的执行状态,驱动机器人执行编排动作,提高交互性,同时在接收到第一响应信息的情况下更新该机器人组的第二编排动作并记录第二编排动作对应的第二动作路径,能够提高机器人的容错率和协同性。
Smart Images

Figure CN123014004A_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of task scheduling technology, and in particular relates to a robot motion scheduling method, device and computer-readable storage medium. Background Technology
[0002] Existing technologies can choreograph and control the movements of multiple robots and perform collaborative task scheduling, which can be applied to scenarios such as exhibition halls and performances to enhance human-computer interaction and entertainment. During the robot movement scheduling process, the overall choreography scheme affects the final presentation effect. A complete set of choreographed movements requires multiple adjustments and modifications to achieve the ideal presentation effect, and it also places high demands on the robots' coordination and interactivity.
[0003] In existing technologies for robot programming and execution, from a scheme perspective, the programming scheme is executed by the robot itself. The programming actions are predefined in each robot body, and from the perspective of the programming actions themselves, each robot executes the same programming actions.
[0004] However, the above-mentioned orchestration and execution methods result in low efficiency in the development and debugging of group action orchestration, a lack of ability to execute differentiated tasks, and insufficient fault tolerance in the execution process. Summary of the Invention
[0005] This application provides a robot motion scheduling method, apparatus, and computer-readable storage medium, which can improve the differentiated task execution capabilities of individual robots in a robot group, while increasing the fault tolerance during the execution process, and making the motion choreography presented by the robots more coordinated.
[0006] In a first aspect, embodiments of this application provide a robot motion scheduling method, the method comprising: The first choreographed action and the first action path of the first choreographed action are determined based on the target structure tree. The target structure tree has the robot action plan as the root node, the scheme timing scheduling group that makes up the robot action plan as the child node of the root node, at least one robot group that executes the choreographed action in the scheme timing scheduling group as the child node of the scheme timing scheduling group, and the choreographed action executed by each robot group as the child node of the robot group. Generate the first event name based on the first orchestration action and the first action path; By associating the first orchestration action, the first action path, and the first event name, the first query relationship is obtained. The first orchestration action and the first event name are encapsulated according to the preset message header format to generate the first control command; Upon receiving the first response information returned by the robot, based on the first query relationship and the first event name in the first response information, the second choreography action and the second choreography action path are determined in the target structure tree based on the first action path. The first response information indicates that the robot has successfully completed the first choreography action, and the second choreography action is the next choreography action in the target structure tree after the first choreography action.
[0007] Secondly, embodiments of this application provide a robot motion scheduling device, the device comprising: The determination module is used to determine the first choreographed action and the first action path of the first choreographed action to be performed by the robot based on the target structure tree. The target structure tree has the robot action scheme as the root node, the scheme timing scheduling group that makes up the robot action scheme as the child node of the root node, at least one robot group that performs the choreographed action in the scheme timing scheduling group as the child node of the scheme timing scheduling group, and the choreographed action performed by each robot group as the child node of the robot group. The generation module is used to generate the first event name based on the first orchestration action and the first action path; The association module is used to associate the first orchestration action, the first action path, and the first event name to obtain the first query relationship; The encapsulation module is used to encapsulate the first orchestration action and the first event name according to a preset message header format, and generate the first control instruction; The driving module is used to, upon receiving the first response information returned by the robot, determine the second choreography action and the second choreography action path in the target structure tree based on the first action path according to the first query relationship and the first event name in the first response information. The first response information indicates that the robot has successfully completed the first choreography action, and the second choreography action is the next choreography action in the target structure tree after the first choreography action.
[0008] Thirdly, embodiments of this application provide a terminal device, the device including: a processor and a memory storing computer program instructions; the processor reads and executes the computer program instructions to implement the robot motion scheduling method as described in the first aspect.
[0009] Fourthly, embodiments of this application provide a computer-readable storage medium storing computer program instructions, which, when executed by a processor, implement the robot motion scheduling method of the first aspect.
[0010] Fifthly, embodiments of this application provide a computer program product, including a computer program that, when executed, implements the robot motion scheduling method as described in the first aspect.
[0011] The robot motion scheduling method, apparatus, and computer-readable storage medium of this application determine the first orchestrated motion and the first motion path of the first orchestrated motion based on a target structure tree. The target structure tree has a robot motion scheme as its root node, a scheme timing scheduling group comprising the robot motion scheme as its child nodes, and at least one robot group executing the orchestrated motions within the scheme timing scheduling group as its child nodes. This allows for differentiated orchestration of each robot, resulting in a high degree of control and strong scalability. A first event name is generated based on the first orchestrated motion and the first motion path. A first query relationship is obtained by associating the first orchestrated motion, the first motion path, and the first event name. This allows the first orchestrated motion to be located directly in the target structure tree based on the first motion path according to the first query relationship. The first orchestrated motion and the first event name are encapsulated according to a preset message header format to generate a first control instruction. This allows the robot to execute the corresponding first orchestrated action upon receiving the first control command. It can also return the corresponding first response information based on the first event name, forming a closed loop of first orchestrated action issuance and response. Upon receiving the first response information returned by the robot, the second orchestrated action and the second action path of the second orchestrated action are determined in the target structure tree based on the first query relationship and the first event name in the first response information, according to the first action path. The first response information indicates that the robot has successfully completed the first orchestrated action, and the second orchestrated action is the next orchestrated action in the target structure tree after the first orchestrated action. By collecting, feeding back, and synchronizing the execution status of the robot body, the robot can be driven to execute orchestrated actions, improving interactivity. At the same time, upon receiving the first response information, the second orchestrated action of the robot group is updated and the second action path corresponding to the second orchestrated action is recorded, which can improve the robot's fault tolerance and coordination. Attached Figure Description
[0012] To more clearly illustrate the technical solutions of the embodiments of this application, the accompanying drawings used in the embodiments of this application will be briefly introduced below. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0013] Figure 1 This is a flowchart illustrating a robot motion scheduling method provided in an embodiment of this application; Figure 2 This is a schematic diagram of a robot executing first response information according to an embodiment of this application; Figure 3 This is a schematic diagram of a target structure tree provided in an embodiment of this application; Figure 4 This is a schematic diagram of a cascaded storage structure provided in an embodiment of this application; Figure 5This is a schematic diagram of a streaming task-driven execution architecture provided in an embodiment of this application; Figure 6 This is a schematic diagram of the arrangement and structure of actions provided in an embodiment of this application; Figure 7 This is a schematic diagram of a robot motion scheduling device provided in an embodiment of this application; Figure 8 This is a schematic diagram of the structure of a terminal device provided in an embodiment of this application. Detailed Implementation
[0014] The features and exemplary embodiments of various aspects of this application will be described in detail below. To make the objectives, technical solutions, and advantages of this application clearer, the application will be further described in detail below with reference to the accompanying drawings and specific embodiments. It should be understood that the specific embodiments described herein are only intended to explain this application and not to limit it. For those skilled in the art, this application can be implemented without some of these specific details. The following description of the embodiments is merely to provide a better understanding of this application by illustrating examples.
[0015] It should be noted that, in this document, relational terms such as "first" and "second" are used merely to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising..." does not exclude the presence of additional identical elements in the process, method, article, or apparatus that includes said element.
[0016] It should be noted that the acquisition, storage, use, and processing of data in this application embodiment all comply with the relevant provisions of laws and regulations.
[0017] It should be noted that in the embodiments of this application, certain software, components, models and other existing solutions in the industry may be mentioned. These should be regarded as exemplary and are only intended to illustrate the feasibility of implementing the technical solution of this application. However, it does not mean that the applicant has used or necessarily used the solution.
[0018] In existing technologies, the motion choreography scheme affects the overall presentation effect during the execution of actions by a group of robots. The presentation of a complete motion requires multiple debugging and modification to achieve the ideal effect. A visual choreography interface is needed for the design and choreography of the cluster. Furthermore, when multiple robots are executing motion choreography, there are certain differences between the choreography actions that different robots need to perform. For example, at the same time, some robots in the cluster may execute choreography action A, while other robots execute choreography action B. The requirements for coordination and interaction between robots are also relatively high. The setting process of motion choreography often involves executing the next choreography action before or after the start of one choreography action. In addition, the unstable hardware and software status of the robots themselves can easily lead to incomplete execution of choreography tasks.
[0019] In existing technologies, target information can be pre-deployed on robots. After receiving instructions, the robots can execute corresponding operations based on the target name and time information. Alternatively, multiple robots can be pre-divided into cluster operation arrays into multiple work groups. A few robots can be selected from the work groups as auxiliary relay control servers to establish data communication connections with other robots and distribute work execution programs to other robots, thereby ensuring that consistent tasks can be completed in the cluster.
[0020] In the above implementation methods, at the scheme level, the scheme and choreographed actions to be executed by the robot body are all predefined, resulting in the lack of choreographing ability for the overall action scheme. The development and debugging efficiency of choreographed actions for the group is low. From the perspective of the choreographed actions themselves, the robots are all set with the same program and execute the same choreographed actions, lacking the ability to execute differentiated choreographed actions. From the perspective of the execution process, the robots lack the ability to interact. For example, interactive execution requirements such as "after the robot introduces itself, it commands the robot dogs to dance" or "after the action of device 1 is completed, all robot dogs lie down" are difficult to execute.
[0021] To address the issues of low choreography and debugging efficiency, limited task content, lack of interaction between robots, and insufficient fault tolerance in robot group dance scenarios, this application provides a one-stop method for motion choreography and execution. This method offers high operational efficiency, flexible choreography schemes, and strong extensibility of motion elements. It also enables mixed choreography and joint execution of robots across different forms and categories. During the execution of choreographic actions, each robot can interact with other robots on multiple devices, allowing each robot to perform differentiated tasks rather than executing actions and tasks uniformly across multiple devices, thus enriching the content of choreographic actions that can be presented.
[0022] To address the problems in the prior art, embodiments of this application provide a robot motion scheduling method, apparatus, and computer-readable storage medium.
[0023] The robot motion scheduling method provided in the embodiments of this application will be introduced first below.
[0024] Figure 1 A flowchart illustrating a robot motion scheduling method according to an embodiment of this application is shown. Figure 1 As shown, the method may include the following steps: S101: Determine the first choreographed action and the first motion path of the first choreographed action to be executed by the robot based on the target structure tree.
[0025] The target structure tree has the robot action plan as the root node, the plan timing scheduling group that makes up the robot action plan as the child node of the root node, the at least one robot group that executes the choreographed actions in the plan timing scheduling group as the child node of the plan timing scheduling group, and the choreographed actions executed by each robot group as the child node of the robot group.
[0026] Specifically, the first scheduled action to be executed by the robot is determined based on the target structure tree. The robot can be a robot corresponding to a specified robot group in the robot cluster. The robot group can be an independent execution unit consisting of one or more robots, which is managed by the scheme timing scheduling group.
[0027] The target structure tree is a hierarchical data structure composed of a multi-level tree topology. From top to bottom, it consists of the root node composed of robot action plans, the child nodes corresponding to the timing scheduling groups of the robot action plans, the child nodes corresponding to at least one robot group that performs the scheduled actions in the timing scheduling group, and the child nodes corresponding to the scheduled actions performed by each robot group.
[0028] Among them, the scheme timing scheduling group can break down the timing of the entire robot action scheme and control the execution timing of single-stage robot tasks, thereby enabling flexible arrangement of robot actions.
[0029] In addition, the first orchestration action is a leaf node of the target structure tree, and the first action path from the root node to the first orchestration action can be determined based on the target structure tree.
[0030] In this embodiment, the robot motion scheme is decomposed into multiple layers of nodes through the target structure tree. This allows the first choreographed action to be located in the target structure tree based on the timing of its choreographed actions, the robot group performing the action, and other relevant information. The first motion path corresponding to the first choreographed action is then determined, and the associated nodes are identified.
[0031] S102: Generate the first event name based on the first orchestration action and the first action path.
[0032] Specifically, based on the first orchestrated action and the first action path corresponding to the first orchestrated action, a corresponding first event name is generated, whereby the first event name is a unique identifier of the first orchestrated action and the first action path sent to the robot this time.
[0033] The first event name can be a string, used for identity matching and association in subsequent signaling requests and responses.
[0034] In this embodiment, a unique first event name is generated based on the first programmed action and the first action path, so that the first event name can uniquely identify the first programmed action and reduce the occurrence of overlapping identifiers when multiple robot action schemes are executed at the same time.
[0035] S103: Associate the first orchestration action, the first action path, and the first event name to obtain the first query relationship.
[0036] Specifically, the first orchestration action, the first action path, and the first event name are associated to obtain the first query relationship. The first query relationship can be stored in the form of a hash table, with the first event name as the key and the structure including the first action path and the first orchestration action as the value.
[0037] The embodiments of this application can bind the first event name, the first orchestration action, and the first action path through the first query relationship, so that the first orchestration action and the first action path that can be located in the target structure tree can be directly determined when the first event name is determined, thereby achieving accurate positioning of the first orchestration action.
[0038] S104: Encapsulate the first orchestration action and the first event name according to the preset message header format to generate the first control instruction.
[0039] Specifically, the first orchestrated action to be sent to the robot is taken as the message body. The first event name and the first orchestrated action as the message body are encapsulated according to the preset message header format to generate the first control instruction. The preset message header format includes device identifier, signaling field, signaling event name, event identifier and timestamp. The first event name is filled in the event identifier field.
[0040] The first control command with a preset message header format can be transmitted via a TCP long connection, which is bidirectional.
[0041] This application embodiment encapsulates the first orchestration action and the first event name into a first control instruction by using a preset message header format. This enables the robot to return the first response information corresponding to the first control instruction after completing the first orchestration action. Furthermore, the information in the first response information and the information in the first control instruction can be matched, which facilitates the determination of the source of the response message and its corresponding first event name in the parallel robot orchestration action task.
[0042] S105: Upon receiving the first response information returned by the robot, based on the first query relationship and the first event name in the first response information, determine the second choreography action and the second action path of the second choreography action in the target structure tree based on the first action path.
[0043] The first response information indicates that the robot has successfully completed the first choreography action, and the second choreography action is the next choreography action in the target structure tree after the first choreography action.
[0044] Specifically, the robot receives the first response information and parses the first event name from it. The first response information indicates that the robot has successfully completed the first programmed action and contains the same first event name as the first control command.
[0045] In addition, based on the first event name obtained from the parsing, the corresponding first query relationship is determined. Based on the first query relationship, the first action path and the first orchestration action corresponding to the first event name are determined. Thus, the first orchestration action is located in the target structure tree based on the first action path. The next orchestration action of the first orchestration action is obtained by searching along the temporal topology link of the target structure tree. This next orchestration action is taken as the second orchestration action. At the same time, the second action path of the second orchestration action in the target structure tree is determined.
[0046] Furthermore, if the first orchestration action is the last orchestration action under the robot group node, it is possible to trace back to the sub-node of the scheme timing scheduling group, find the first orchestration action in the next scheme timing scheduling group, and use it as the second orchestration action.
[0047] also, Figure 2 This is a schematic diagram of a robot executing first response information according to an embodiment of this application, such as... Figure 2 As shown, before returning the first response information, the robot performs the following steps: S201: Receive the first control command; S202: Based on the received first control instruction, call the local hardware driver, motor driver, software program and other operation instructions to execute the first arrangement action; S203: After the first programmed action is completed, return the execution result to the robot body; S204: According to the preset message header format, the message is encapsulated into an initial response message in combination with the first event name, and the initial response message is returned to the controller that sent the first control command.
[0048] In this embodiment, the first choreography is located in the target structure tree through the first motion path, which facilitates the determination of the second choreography, reduces search time, improves search efficiency, and enhances the interactivity of the robot. Moreover, when changing the robot's motion scheme, only the sequential relationship of the child nodes in the target structure tree needs to be modified, and their motion paths will be updated accordingly, making it easy to change the robot's motion scheme to debug the overall presentation effect.
[0049] This application embodiment establishes a query relationship between orchestrated actions, action paths, and event names through a target structure tree. By combining standardized instruction encapsulation and robot execution feedback, the robot can execute the pre-arranged content in the target structure tree completely, reducing the complexity of robot action program orchestration and improving scalability. When the robot executes orchestrated actions, the second orchestrated action and the second action path are updated through the first response information, improving the coordination between robots.
[0050] In some embodiments, receiving the first response information returned by the robot includes: Get the execution status of the robot group to which the robot belongs; Receive initial response information, including the robot's execution status, returned by the robot based on the first control command; If the execution state of any robot differs from that of the robot group, the execution state of the robot group is updated to the execution state of the robot, and the initial response information is determined as the first response information.
[0051] Specifically, each robot group needs to maintain a corresponding execution state, namely the robot group execution state, which is used to indicate the progress of the robot group. The robot group execution state can be, for example, idle, action A is being executed, action A has been completed, etc. At the same time, each robot in the robot group also has a corresponding robot execution state, which can be, for example, successfully completed action A, encountered an error, or is executing action A, etc.
[0052] Obtain the execution status of the robot group to which the robot belongs, receive the initial response information including the robot's execution status returned by the robot according to the first control command, and compare the robot's execution status with the robot group's execution status.
[0053] If the robot's execution state and the robot group's execution state are the same, it means that the robot's completion status corresponding to the initial response information has not exceeded the existing progress perception within the robot group, and this initial response information is not suitable as a valid signal to trigger subsequent actions.
[0054] When the robot's execution state and the robot group's execution state are different, it means that the robot's completion status corresponding to the initial response information exceeds the existing progress perception within the robot group. For example, the robot group's execution state is "Action A is being executed," while the robot's execution state in the initial response information is "Action A has been completed." The robot group's execution state is updated to the robot's execution state, and the initial response information is determined as the first response information. It should be noted that after confirming the receipt of the first response information, the robot group's first orchestrated action is updated to the second orchestrated action based on the first response information, and the initial response information corresponding to the first orchestrated action is no longer processed.
[0055] The above process can be represented as: St(Ds) = St(Gs) / St(Ds); ; Where St represents the robot execution state, Gs represents the robot group execution state, and Ds represents the parameters corresponding to the execution state. When the state driver receives the parameters of the robot execution state, it compares and distinguishes them with the parameters of the robot group execution state. If the robot group execution state and the robot execution state are inconsistent, the task scheduling service is notified to execute the task (i.e., the second orchestration action is determined in the target structure tree based on the first orchestration action and the first query relationship), and the current robot group execution state is updated to the execution state of the second orchestration action. If the robot group execution state and the robot execution state are the same, no operation is performed.
[0056] In this embodiment, any robot completes and reports a robot execution state that differs from the robot group's execution state. Based on this robot execution state, the first choreography action is updated to the second choreography action, and the second choreography action is sent to the robot group, causing each robot in the robot group to begin executing the second choreography action. This reduces the possibility of incoordination in the robot group's choreography actions due to abnormalities or slow execution of individual robots during the choreography process, improves the overall presentation effect, and enhances the fault tolerance and stability of the robot action plan execution.
[0057] In some embodiments, before determining the first choreographed action to be performed by the robot and the first action path of the first choreographed action based on the target structure tree, the method further includes: The robot's motion plan is used as the root node of the target structure tree; Map the time segments in the robot motion plan to plan timing groups, and use the plan timing groups as child nodes of the root node; According to the robot action plan, determine all robot groups corresponding to each plan timing group, and treat each robot group as a child node of the plan timing group. Each robot group includes at least one robot. Based on the robot motion scheme, the choreographed actions performed by each robot group are taken as the sub-nodes of the robot group; A target structure tree is constructed based on the root node, the scheme timing scheduling group, the robot group, and the choreographed actions.
[0058] Specifically, Figure 3 This is a schematic diagram of a target structure tree provided in an embodiment of this application, such as... Figure 3 As shown, the robot action plan is taken as the root node of the target structure tree, the time segments in the robot action plan are mapped to the plan timing scheduling group, and the plan timing scheduling group is taken as the child node of the root node. The quantity relationship between the robot action plan and the plan timing scheduling group can be 1:N.
[0059] Based on the robot action plan, determine all robot groups corresponding to each plan's timing scheduling group, and treat each robot group as a child node of the plan's timing scheduling group. Each robot group must contain at least one robot, and each plan's timing scheduling group must contain at least one robot group.
[0060] Robot groups are categorized into master robot groups and non-master robot groups. Each scheme timing group includes one master robot group. That is, if there is only one robot group in a scheme timing group, that robot group is designated as the master robot group. At the same time, if there are multiple robot groups in a scheme timing group, each scheme timing group includes one master robot group and at least one non-master robot group. In other words, regardless of how many robot groups are included in a scheme timing group, there must be one master robot group. The robot group marked with an asterisk is the master robot group.
[0061] According to the robot motion scheme, the choreographed actions performed by each robot group are taken as the child nodes of the robot group, and each robot group corresponds to at least one choreographed action.
[0062] In addition, a target structure tree is constructed based on the root node, the scheme timing scheduling group, the robot group, and the choreographed actions.
[0063] This application embodiment establishes a connection relationship between the elements in the robot motion scheme through a multi-level tree structure, so that the elements can be flexibly combined. When changing each node, it can be directly located and swapped according to its parent node and child node, thus improving high scalability.
[0064] In some embodiments, the target structure tree is stored through a cascaded storage structure, which includes a first cascaded storage structure and a second cascaded storage structure. The first cascaded storage structure represents the cascaded relationship between robot action plans and plan timing scheduling groups, plan timing scheduling groups and robot groups. The index of the first cascaded storage structure is the scheduling group identifier of the plan timing scheduling group. The second-level cascaded storage structure represents the cascaded relationship between the scheme timing scheduling group and robot group, and between robot group and orchestrated actions. The index of the second-level cascaded storage structure is the robot group identifier of the robot group.
[0065] Specifically, the target structure tree is stored using a cascaded storage structure, which includes a first cascaded storage structure and a second cascaded storage structure.
[0066] The first cascaded storage structure is used to represent the cascaded relationship from the root node down to the scheme timing scheduling group, and then from the scheme timing scheduling group down to the robot group. At the same time, the index of the first cascaded storage structure is the scheduling group identifier. Each scheduling group identifier is unique in the global scope. It is possible to look up the robot action scheme to which it belongs by using the scheduling group identifier, and it is also possible to traverse all robot groups included in the scheme timing scheduling group.
[0067] The second-level cascaded storage structure is used to represent the cascaded relationship from the scheme timing group down to the robot group, and then from the robot group down to the orchestration action. At the same time, the index of the second-level cascaded storage structure is the robot group identifier of the robot group. Each robot group identifier is unique in the global scope. It is possible to look up the scheme timing group to which the robot belongs by the robot group identifier, and it is also possible to traverse to the orchestration action corresponding to the robot group.
[0068] An index refers to the primary key or retrieval key of a data record. An index can be used to directly locate a set of nodes at a certain level. A cascading relationship represents the subordinate or corresponding binding relationship between parent and child nodes in the target tree structure. A cascading storage structure can realize both bottom-up and top-down query methods.
[0069] In practice, two cascaded storage structures can be implemented as two tables in a relational database or as key-value stores.
[0070] Figure 4 This is a schematic diagram of a cascaded storage structure provided in an embodiment of this application, such as... Figure 4 As shown, it includes: The cascading of robot motion plans and their timing scheduling groups (first-level cascading storage structure) is used to establish the timing schedules included under the same robot motion plan. Each timing schedule is uniquely identified by its scheduling group identifier. Multiple timing scheduling groups under the same robot motion plan are stored in list form, supporting fast location, query, and sequential traversal of timing schedules.
[0071] The cascading of scheme timing scheduling groups and robot groups (second-level cascading storage structure) is used to establish the binding relationship between robot groups and scheduled actions. A scheme timing scheduling group includes one or more robot groups. Each robot group is uniquely identified by its robot group identifier, and one robot group must be selected as the master robot group within each scheme timing scheduling group.
[0072] Each robot group is matched with a unique set of choreographed actions. A robot group may include at least one robot. Each robot and its choreographed actions form an independent execution unit, and the robot performs the corresponding choreographed actions.
[0073] Figure 4 The top-down query in the cascaded storage structure shown is used in the stage of choreographing robot motion schemes. Starting from the robot motion scheme, it constructs and displays a complete target structure tree and the interface of each level of elements. That is, starting from the robot motion scheme, it sequentially displays the hierarchical data such as the timing group, robot group, and choreographed actions of each scheme, and adjusts and displays the data elements such as the robot group and choreographed actions to which the robot motion scheme belongs in real time.
[0074] Bottom-up querying can be used during the execution phase to reverse-engineer the current and next orchestrated actions based on the robot's response information. This involves traversing each robot in the robot group, establishing execution binding relationships between the robots and their corresponding orchestrated actions, encapsulating these relationships into control commands with a preset message header format, and recording the association between the first event name, the robot action scheme identifier, and the first event name when issuing control commands. Upon receiving the first response information from the robot, the corresponding robot action scheme identifier and scheduling group identifier are located based on the first event name in the first response information. Then, based on the current scheduling group identifier, the next scheduled action scheme data to be executed is queried and located.
[0075] This application embodiment uses a two-level separate cascaded storage structure to carry the hierarchical relationship of the target structure tree. The scheduling group identifier and robot group identifier are used as their respective indexes to realize the storage and bidirectional retrieval of the target structure tree in a hierarchical manner. This satisfies the long-term storage requirements of robot action schemes and can also be used in scenarios where data management and task scheduling can be improved by traversing from top to bottom or tracing from bottom to top during the programming and execution stages.
[0076] In some embodiments, determining a second orchestration action and a second action path for the second orchestration action in the target structure tree based on a first action path, according to a first query relationship and a first event name in the first response information, includes: Based on the first query relationship, extract the first orchestration action and the first action path corresponding to the first event name; Locate the first choreography action in the target structure tree based on the first action path; Based on the target structure tree, the next choreography of the first choreography is determined as the second choreography and the second motion path of the second choreography.
[0077] Specifically, based on the first orchestration action and the first action path corresponding to the first event name stored in the first query relation, where the first action path can be a list of node identifiers, and its storage format can be a comma-separated string or an independent relation table record.
[0078] In addition, by using the first action path as the basis for hierarchical positioning, and matching the hierarchical nodes of the target structure tree level by level, the node positioning of the first choreography action can be obtained, thus determining the specific location of the first choreography action in the target structure tree.
[0079] Furthermore, based on the temporal arrangement of nodes in the target structure tree, the arrangement action of the next node in the tree structure of the first arrangement action is determined as the second arrangement action, and at the same time, the hierarchical link of the second arrangement action in the target structure tree is generated as the second action path.
[0080] This application embodiment extracts actions and paths from the first query relationship using the first event name as an index, reducing the overhead of traversing the target structure tree. The second orchestration action and the second action path are determined according to the node order of the target structure tree. The process of obtaining action entity and hierarchical belonging data at one time does not depend on external state or random factors, thus improving the accuracy of the second orchestration action.
[0081] In some embodiments, after determining the second orchestration action and the second action path of the second orchestration action in the target structure tree based on the first action path according to the first event name in the first query relationship and the first response information, the method further includes: A second event name is generated based on the second orchestration action and the second action path. The second query relationship is obtained by associating the second orchestration action, the second action path, and the second event name. The second orchestration action, the second action path, and the second event name are encapsulated according to the preset message header format to obtain the second control instruction; The second control command is sent to each robot, and the second response information corresponding to the second control command is received until all the programmed actions in the target structure tree are completed.
[0082] Specifically, a second event name is generated based on the second choreography and the second action path. The generation rule for the second event name is the same as that for the first event name to ensure the uniqueness of the second choreography in the current robot action plan.
[0083] In addition, the second orchestration action, the second action path, and the second event name are associated to obtain the second query relationship. The second query relationship is used for subsequent retrieval and tracing. The second query relationship is stored in the same way as the first query relationship.
[0084] In addition, the second orchestration action, the second action path, and the second event name are encapsulated according to a preset message header format to obtain the second control instruction. The preset message header format includes at least a device identifier field, a signaling field, a signaling event name field, an event identifier, and a timestamp. At the same time, the second orchestration action is encapsulated into the corresponding message body.
[0085] Furthermore, the second control command can be sent to each robot via a long TCP connection, either through broadcast or by broadcasting to each robot individually. The system then receives the second response information from each robot until all programmed actions in the target structure tree are completed.
[0086] The format of the second response information corresponds to the second control instruction, which includes the second event name. The third choreography action can be determined based on the second event name, and the third action path of the third choreography action can be determined. The above process is repeated until all choreography instructions in the target structure tree are sent to the robot.
[0087] In this embodiment, the second orchestration action and the second action path are determined and cyclically used to form a scheduling closed loop. The scheduling can flow under the drive of the event name, and each round of the loop can maintain the same pattern, ensuring logical consistency, reducing interaction overhead, and improving the continuity of the process.
[0088] In some embodiments, before determining the first choreographed action to be performed by the robot and the first action path of the first choreographed action based on the target structure tree, the method further includes: Receive voice commands, which are obtained by the robot recognizing voice information. A scheme identifier for determining robot action plans based on voice commands; The target structure tree is determined based on the scheme identifier.
[0089] Specifically, before determining the first choreographed action and the first action path of the first choreographed action by the robot based on the target structure tree, a pre-set designated robot collects and performs semantic recognition on the externally input voice information in real time. The robot then analyzes and recognizes the voice commands, and based on the intent and extracted fields in the voice commands, it matches and determines the scheme identifier of the robot action scheme to be executed from the voice commands. Using the scheme identifier as a retrieval index, the robot performs a matching search in the cascaded storage structure, and retrieves and loads the target structure tree that is uniquely bound to the scheme identifier.
[0090] The designated robot is used to prevent multiple robots from triggering robot actions simultaneously. One robot is selected as the designated robot, and a trigger word is set separately.
[0091] Furthermore, the scheme identifier can also be determined through H5 and WEB methods. In H5 and WEB, the central control service is notified to determine the scheme identifier and trigger the robot action scheme by clicking the trigger button on the page through API interface calls.
[0092] Figure 5 This is a schematic diagram of a streaming task-driven execution architecture provided in an embodiment of this application, such as... Figure 5 As shown, it includes the following scheme triggering module 510, control module 520, robot body module 530 and storage unit 540.
[0093] The scheme triggering module 510 includes an H5 / WEB terminal and a voice terminal. The H5 / WEB terminal initiates the scheme triggering request and connects to the central control service in the control module 520 via the API interface. The voice terminal is used to initiate voice command trigger requests and enter the link of the robot body module 530.
[0094] The control module 520 includes a state-driven service, a task scheduling service, and a central control service. The state-driven service is used to send control translation information to the central control service and state decision information to the task scheduling service. The task scheduling service is used to receive the status decision information from the status-driven service, store the current orchestration action, corresponding action path and query relationship data in the repository 540, obtain the next orchestration action, corresponding action path and associated data from the repository 540, and send parallel scheduling information to the central control service. The central control service is used to receive interactive information from API interfaces, state-driven services, and task scheduling services, and to send control instructions (such as first / second control instructions) in EventLinkAsync Req format and encapsulated in a preset message header format to the robot body module 530. The robot body module 530 includes a task execution module and an execution feedback module. The task execution module is used to receive control commands issued by the central control service and execute the corresponding programmed actions. The execution feedback module is used to return response information (such as first / second response information) in trigger notification / EventLinkAsync Resp format to the central control service. The feedback information is sent back to the central control service to complete the process loop.
[0095] This application embodiment uses voice triggering to retrieve robot motion plans and load target structure trees, eliminating the need for manual intervention in the programming interface and ensuring the uniqueness and accuracy of robot motion plan positioning.
[0096] In some embodiments, the robot motion scheme includes a dance scheme, each scheme timing group is a scene of the dance scheme, the robot group is the actor group corresponding to the dance scheme of each scene, and the motion choreography includes the dance steps, postures, expressions, actions, lighting, voice and delays of each robot group.
[0097] Specifically, an example of a robot motion scheme can be a dance scheme. The dance scheme serves as the root node of the target structure tree, encompassing the complete choreography rules, timing execution logic, and overall process control requirements for the entire robot group dance performance. Each scheme timing scheduling group corresponds to an independent act unit within the dance scheme; each scheme timing scheduling group is essentially an act within the dance scheme. The timing stages of the group dance performance are divided into acts, with each act unit sequentially connected to form a complete dance performance flow. Each act independently controls the execution rhythm of the choreographic movements within its corresponding timing interval.
[0098] The robot group is the actor group that executes the dance plan for the corresponding act. The robot group configured under each plan's timing group (i.e. each act) corresponds to the group of actors responsible for the dance movements in that act in the group dance performance. They are responsible for the implementation of all the choreographed movements in that act. Different robot groups can correspond to different roles and different positions in the group dance performance.
[0099] The choreography can include the dance steps, postures, expressions, movements, lighting, voice, and delayed content of the corresponding robot group. As the leaf node at the end of the target structure tree, it carries all the behavioral units that the robot group needs to execute in the corresponding act, covering multiple dimensions of execution requirements such as physical movement performance, facial expression control, sound and light coordination output, voice broadcast interaction, and timing waiting control, to ensure the complete presentation of the group dance performance.
[0100] Furthermore, choreography can also include rhythm / beat, that is, the forward and backward delays and durations of the choreography.
[0101] Figure 6 This is a schematic diagram of the arrangement and structure of actions provided in an embodiment of this application, as shown below. Figure 6 As shown, it includes an orchestration phase 610 and an execution phase 620.
[0102] The choreography stage 610 is used to construct a target structure tree by taking the dance script (i.e., an instance of the dance scheme of the robot's motion scheme) as input and breaking it down into motions. Specifically, the dance scheme is used as the root node, with each act of the dance scheme corresponding to a scheme timing group, each act corresponding to an actor group corresponding to a robot group, and each actor group's dance steps, postures, expressions, movements, lighting, voice, and delays corresponding to the choreography movements. This is constructed hierarchically into a tree structure. After construction, the data is stored in a database (i.e., a repository) using a two-level cascaded structure. The two-level cascaded structure is the cascaded storage structure, which includes a first cascaded storage structure and a second cascaded storage structure.
[0103] Phase 620 includes scheme triggering, service interaction, and robot interaction.
[0104] The scheme triggering is used to support three types of triggering methods to access the central control service, namely H5 touch screen triggering, WEB keyboard and mouse triggering, and voice triggering.
[0105] Service interaction is used to form a linkage between the central control service, the state-driven service, and the task scheduling service. Specifically, the state-driven service performs control translation to the central control service and sends a state decision to the task scheduling service. After receiving the state decision, the task scheduling service performs parallel scheduling to the central control service and interacts with the orchestration action-driven queue to complete the current state orchestration action location and the acquisition of the next orchestration action.
[0106] Robot interaction allows the central control service to issue control commands in EventLinkAsyncReq format (e.g., first / second control commands encapsulated in a preset message header format) to the robot body based on scheduling results. After the robot body performs the task, it returns trigger notification / EventLinkAsyncResp format response information (e.g., first / second response information) to the central control service, thus completing the process loop.
[0107] This application embodiment establishes a mapping between real-world dance and robot dance movements, making full use of existing motion resources. It choreographs the dance plan to be performed by the robot into choreographed movements for the robot to execute, and uses a two-level cascaded bidirectional page storage structure and streaming task-driven execution to perform the movements. This results in high operational efficiency and enables mixed choreography and collaborative dance execution of robots across different forms and categories. Each robot performs differentiated tasks, resulting in strong interactivity. It also enables efficient interaction between robots and determines the choreography movements based on the robot group, reducing the impact of individual noise on the overall dance progress and improving robustness and stability.
[0108] Figure 7 This is a schematic diagram of a robot motion scheduling device provided in an embodiment of this application. Figure 7As shown, the robot motion scheduling device may include a determination module 710, a generation module 720, an association module 730, an encapsulation module 740, and a drive module 750.
[0109] The determination module 710 is used to determine the first choreographed action and the first action path of the first choreographed action by the robot according to the target structure tree. The target structure tree has the robot action scheme as the root node, the scheme timing scheduling group that makes up the robot action scheme as the child node of the root node, at least one robot group that executes the choreographed action in the scheme timing scheduling group as the child node of the scheme timing scheduling group, and the choreographed action executed by each robot group as the child node of the robot group. Generation module 720 is used to generate a first event name based on the first orchestration action and the first action path; The association module 730 is used to associate the first orchestration action, the first action path, and the first event name to obtain the first query relationship; The encapsulation module 740 is used to encapsulate the first orchestration action and the first event name according to a preset message header format to generate the first control instruction; The drive module 750 is used to, upon receiving the first response information returned by the robot, determine the second choreography action and the second action path of the second choreography action in the target structure tree based on the first action path according to the first query relationship and the first event name in the first response information, wherein the first response information is used to indicate that the robot has successfully completed the first choreography action, and the second choreography action is the next choreography action of the first choreography action in the target structure tree.
[0110] In some embodiments, the drive module 750 receives the first response information returned by the robot and uses it to: Get the execution status of the robot group to which the robot belongs; Receive initial response information, including the robot's execution status, returned by the robot based on the first control command; If the execution state of any robot differs from that of the robot group, the execution state of the robot group is updated to the execution state of the robot, and the initial response information is determined as the first response information.
[0111] In some embodiments, before determining the first choreographed action to be performed by the robot and the first action path of the first choreographed action based on the target structure tree, the determining module 710 is further configured to: The robot's motion plan is used as the root node of the target structure tree; Map the time segments in the robot motion plan to plan timing groups, and use the plan timing groups as child nodes of the root node; According to the robot action plan, determine all robot groups corresponding to each plan timing group, and treat each robot group as a child node of the plan timing group. Each robot group includes at least one robot. Based on the robot motion scheme, the choreographed actions performed by each robot group are taken as the sub-nodes of the robot group; A target structure tree is constructed based on the root node, the scheme timing scheduling group, the robot group, and the choreographed actions.
[0112] In some embodiments, in the determining module 710, the target structure tree is stored through a cascaded storage structure, which includes a first cascaded storage structure and a second cascaded storage structure. The first cascaded storage structure represents the cascaded relationship between robot action plans and plan timing scheduling groups, plan timing scheduling groups and robot groups. The index of the first cascaded storage structure is the scheduling group identifier of the plan timing scheduling group. The second-level cascaded storage structure represents the cascaded relationship between the scheme timing scheduling group and robot group, and between robot group and orchestrated actions. The index of the second-level cascaded storage structure is the robot group identifier of the robot group.
[0113] In some embodiments, the driving module 750 determines the second orchestration action and the second action path of the second orchestration action in the target structure tree based on the first action path, according to the first event name in the first query relationship and the first response information, for the purpose of: Based on the first query relationship, extract the first orchestration action and the first action path corresponding to the first event name; Locate the first choreography action in the target structure tree based on the first action path; Based on the target structure tree, the next choreography of the first choreography is determined as the second choreography and the second motion path of the second choreography.
[0114] In some embodiments, after the driving module 750 determines the second orchestration action and the second action path of the second orchestration action in the target structure tree based on the first action path according to the first event name in the first query relationship and the first response information, it is further configured to: A second event name is generated based on the second orchestration action and the second action path. The second query relationship is obtained by associating the second orchestration action, the second action path, and the second event name. The second orchestration action, the second action path, and the second event name are encapsulated according to the preset message header format to obtain the second control instruction; The second control command is sent to each robot, and the second response information corresponding to the second control command is received until all the programmed actions in the target structure tree are completed.
[0115] In some embodiments, before determining the first choreographed action to be performed by the robot and the first action path of the first choreographed action based on the target structure tree, the determining module 710 is further configured to: Receive voice commands, which are obtained by the robot recognizing voice information. A scheme identifier for determining robot action plans based on voice commands; The target structure tree is determined based on the scheme identifier.
[0116] In some embodiments, the robot motion scheme includes a dance scheme, each scheme timing group is a scene of the dance scheme, the robot group is the actor group corresponding to the dance scheme of each scene, and the motion choreography includes the dance steps, postures, expressions, actions, lighting, voice and delays of each robot group.
[0117] Figure 8 A schematic diagram of the hardware structure of the terminal device provided in an embodiment of this application is shown.
[0118] The terminal device may include a processor 801 and a memory 802 storing computer program instructions.
[0119] Specifically, the processor 801 may include a central processing unit (CPU), an application specific integrated circuit (ASIC), or one or more integrated circuits that can be configured to implement the embodiments of this application.
[0120] Memory 802 may include mass storage for data or instructions. For example, and not limitingly, memory 802 may include a hard disk drive (HDD), floppy disk drive, flash memory, optical disk, magneto-optical disk, magnetic tape, or Universal Serial Bus (USB) drive, or a combination of two or more of these. In one instance, memory 802 may include removable or non-removable (or fixed) media, or memory 802 may be non-volatile solid-state memory. Memory 802 may be internal or external to the integrated gateway disaster recovery device.
[0121] In one instance, memory 802 may be read-only memory (ROM). In one instance, the ROM may be a mask-programmed ROM, a programmable ROM (PROM), an erasable PROM (EPROM), an electrically erasable PROM (EEPROM), an electrically rewritable ROM (EAROM), or flash memory, or a combination of two or more of these.
[0122] Memory 802 may include read-only memory (ROM), random access memory (RAM), disk storage media device, optical storage media device, flash memory device, electrical, optical, or other physical / tangible memory storage device. Therefore, generally, memory includes one or more tangible (non-transitory) computer-readable storage media (e.g., memory devices) encoded with software including computer-executable instructions, and when the software is executed (e.g., by one or more processors), it is operable to perform the operations described with reference to the method according to the first aspect of this disclosure.
[0123] The processor 801 reads and executes computer program instructions stored in the memory 802 to achieve... Figure 1 The robot motion scheduling method in the illustrated embodiment.
[0124] In one example, the terminal device may also include a communication interface 803 and a bus 804. Wherein, for example... Figure 8 As shown, the processor 801, memory 802, and communication interface 803 are connected through bus 804 and complete communication with each other.
[0125] The communication interface 803 is mainly used to realize communication between various modules, devices, units and / or equipment in the embodiments of this application.
[0126] Bus 804 includes hardware, software, or both, that couples components of an online data traffic metering device together. For example, and not as a limitation, the bus may include an Accelerated Graphics Port (AGP) or other graphics bus, an Extended Industry Standard Architecture (EISA) bus, a Front Side Bus (FSB), a Hyper Transport (HT) interconnect, an Industry Standard Architecture (ISA) bus, an Infinite Bandwidth Interconnect, a Low Pin Count (LPC) bus, a memory bus, a Microchannel Architecture (MCA) bus, a Peripheral Component Interconnect (PCI) bus, a PCI-Express (PCI-X) bus, a Serial Advanced Technology Attachment (SATA) bus, a Video Electronics Standards Association Local (VLB) bus, or other suitable buses, or combinations of two or more of these. Where appropriate, bus 804 may include one or more buses. Although specific buses are described and illustrated in embodiments of this application, this application contemplates any suitable bus or interconnect.
[0127] Furthermore, in conjunction with the robot motion scheduling methods in the above embodiments, this application embodiment can provide a computer-readable storage medium for implementation. This computer-readable storage medium stores computer program instructions; when these computer program instructions are executed by a processor, they implement any of the robot motion scheduling methods in the above embodiments.
[0128] This application also provides a computer program product, including a computer program that, when executed by a processor, implements any of the robot motion scheduling methods described in the above embodiments.
[0129] It should be clarified that this application is not limited to the specific configurations and processes described above and shown in the figures. For the sake of brevity, detailed descriptions of known methods are omitted here. In the above embodiments, several specific steps are described and shown as examples. However, the method process of this application is not limited to the specific steps described and shown. Those skilled in the art can make various changes, modifications, and additions, or change the order of steps, after understanding the spirit of this application.
[0130] The functional blocks shown in the above-described block diagram can be implemented as hardware, software, firmware, or a combination thereof. When implemented in hardware, they can be, for example, electronic circuits, application-specific integrated circuits (ASICs), appropriate firmware, plug-ins, function cards, etc. When implemented in software, the elements of this application are programs or code segments used to perform the required tasks. Programs or code segments can be stored on a machine-readable medium or transmitted over a transmission medium or communication link via data signals carried on a carrier wave. "Machine-readable medium" can include any medium capable of storing or transmitting information. Examples of machine-readable media include electronic circuits, semiconductor memory devices, read-only memory (ROM), flash memory, erasable read-only memory (EROM), floppy disks, compact disc read-only memory (CD-ROM), optical disks, hard disks, fiber optic media, radio frequency (RF) links, etc. Code segments can be downloaded via computer networks such as the Internet, intranets, etc.
[0131] It should also be noted that the exemplary embodiments mentioned in this application describe methods or systems based on a series of steps or apparatus. However, this application is not limited to the order of the above steps; that is, the steps can be performed in the order mentioned in the embodiments, or in a different order, or several steps can be performed simultaneously.
[0132] The aspects of this disclosure have been described above with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this disclosure. It should be understood that each block in the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that these instructions, executable via the processor of the computer or other programmable data processing apparatus, enable the implementation of the functions / actions specified in one or more blocks of the flowchart illustrations and / or block diagrams. Such a processor can be, but is not limited to, a general-purpose processor, a special-purpose processor, a special application processor, or a field-programmable logic circuit. It is also understood that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can also be implemented by special-purpose hardware performing the specified functions or actions, or can be implemented by a combination of special-purpose hardware and computer instructions.
[0133] The above description is merely a specific implementation of this application. Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, modules, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here. It should be understood that the protection scope of this application is not limited thereto. Any person skilled in the art can easily conceive of various equivalent modifications or substitutions within the technical scope disclosed in this application, and these modifications or substitutions should all be covered within the protection scope of this application.
Claims
1. A robot motion scheduling method, characterized in that, include: The first choreographed action and the first action path of the first choreographed action are determined according to the target structure tree. The target structure tree has the robot action scheme as the root node, the scheme timing scheduling group that makes up the robot action scheme as the child node of the root node, at least one robot group that executes the choreographed action in the scheme timing scheduling group as the child node of the scheme timing scheduling group, and the choreographed action executed by each robot group as the child node of the robot group. A first event name is generated based on the first orchestration action and the first action path; By associating the first orchestration action, the first action path, and the first event name, a first query relationship is obtained; The first orchestration action and the first event name are encapsulated according to a preset message header format to generate a first control instruction; Upon receiving the first response information returned by the robot, based on the first query relationship and the first event name in the first response information, a second choreography action and a second action path of the second choreography action are determined in the target structure tree based on the first action path, wherein the first response information is used to indicate that the robot has successfully completed the first choreography action, and the second choreography action is the next choreography action of the first choreography action in the target structure tree.
2. The method according to claim 1, characterized in that, The first response information received from the robot includes: Obtain the execution status of the robot group to which the robot belongs; Receive initial response information, including the robot's execution status, returned by the robot based on the first control command; If any of the robot execution states and the robot group execution states are different, the robot group execution state is updated to the robot execution state, and the initial response information is determined as the first response information.
3. The method according to claim 1, characterized in that, Before determining the first choreographed action to be performed by the robot and the first action path of the first choreographed action based on the target structure tree, the method further includes: The robot motion scheme is used as the root node of the target structure tree; The time segments in the robot action plan are mapped to plan timing groups, and the plan timing groups are used as child nodes of the root node. According to the robot action plan, determine all robot groups corresponding to each plan timing group, and take each robot group as a child node of the plan timing group. Each robot group includes at least one robot. Based on the robot motion scheme, the choreographed actions performed by each robot group are taken as the child nodes of the robot group; The target structure tree is constructed based on the root node, the scheme timing scheduling group, the robot group, and the orchestrated actions.
4. The method according to claim 3, characterized in that, The target structure tree is stored through a cascaded storage structure, which includes a first cascaded storage structure and a second cascaded storage structure. The first cascaded storage structure represents the cascaded relationship between the robot action plan and the plan timing scheduling group, and between the plan timing scheduling group and the robot group. The index of the first cascaded storage structure is the scheduling group identifier of the plan timing scheduling group. The second cascaded storage structure represents the cascaded relationship between the scheme timing scheduling group and the robot group, and between the robot group and the orchestrated actions. The index of the second cascaded storage structure is the robot group identifier of the robot group.
5. The method according to claim 1, characterized in that, The step of determining the second orchestration action and the second action path of the second orchestration action in the target structure tree based on the first action path, according to the first query relationship and the first event name in the first response information, includes: Based on the first query relationship, extract the first orchestration action and the first action path corresponding to the first event name; The first choreographed action is located in the target structure tree based on the first action path; Based on the target structure tree, the next scheduled action of the first scheduled action is determined as the second scheduled action and the second action path of the second scheduled action.
6. The method according to claim 1, characterized in that, After determining the second orchestration action and the second action path of the second orchestration action in the target structure tree based on the first action path according to the first event name in the first query relationship and the first response information, the method further includes: A second event name is generated based on the second orchestration action and the second action path. The second event name is associated with the second orchestration action, the second action path and the second event name to obtain a second query relationship. The second orchestration action, the second action path, and the second event name are encapsulated according to the preset message header format to obtain the second control instruction; The second control command is sent to each of the robots, and the second response information corresponding to the second control command is received until all the programmed actions in the target structure tree are completed.
7. The method according to claim 1, characterized in that, Before determining the first choreographed action to be performed by the robot and the first action path of the first choreographed action based on the target structure tree, the method further includes: Receive voice commands, wherein the voice commands are obtained by the robot recognizing voice information; The robot's action plan identifier is determined based on the voice command; The target structure tree is determined based on the scheme identifier.
8. The method according to claim 1, characterized in that, The robot motion scheme includes a dance scheme, each scheme timing group is a scene of the dance scheme, the robot group is the actor group corresponding to the dance scheme of each scene, and the motion choreography includes the dance steps, postures, expressions, actions, lighting, voice and delays of each robot group.
9. A robot motion scheduling device, characterized in that, The device includes: The determination module is used to determine the first choreographed action to be performed by the robot and the first action path of the first choreographed action according to the target structure tree. The target structure tree is rooted at the robot action scheme, with the scheme timing scheduling group that makes up the robot action scheme as the child node of the root node, at least one robot group that performs the choreographed action in the scheme timing scheduling group as the child node of the scheme timing scheduling group, and the choreographed action performed by each robot group as the child node of the robot group. The generation module is used to generate a first event name based on the first orchestration action and the first action path; The association module is used to associate the first orchestration action, the first action path, and the first event name to obtain the first query relationship; The encapsulation module is used to encapsulate the first orchestration action and the first event name according to a preset message header format to generate a first control instruction; The driving module is configured to, upon receiving the first response information returned by the robot, determine the second choreography action and the second action path of the second choreography action in the target structure tree based on the first action path, according to the first query relationship and the first event name in the first response information, wherein the first response information is used to indicate that the robot has successfully completed the first choreography action, and the second choreography action is the next choreography action of the first choreography action in the target structure tree.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer program instructions, which, when executed by a processor, implement the robot motion scheduling method as described in any one of claims 1-8.