Hierarchical control system and method for robot
By decoupling the robot control system through a hierarchical control system, the system's stability and control accuracy are improved. This solves the problems of high module coupling and difficulty in expansion and upgrading, and realizes closed-loop control with independent functional expansion and full-domain state data support.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-03-25
- Publication Date
- 2026-05-19
AI Technical Summary
Existing robot control systems suffer from high coupling between modules, poor robustness, difficulty in independent expansion and upgrades, lack of global state data support for instruction execution, and insufficient control precision.
A hierarchical control system is adopted, which divides the robot control system into a drive functional domain, a control functional domain, and a decision functional domain. Each domain is decoupled through state data and commands to achieve closed-loop control.
It improves system stability, facilitates independent functional expansion and upgrades, and enhances the precision of robot control.
Smart Images

Figure CN122058362A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of robot control technology, and in particular to a hierarchical control system and method for robots. Background Technology
[0002] In the field of robot control technology, the application scenarios of humanoid and various intelligent robots are constantly expanding, which puts forward higher requirements for the functionality, stability and scalability of their control systems. Robot control systems need to realize the coordinated operation of multiple links such as environmental perception, motion control and command execution to ensure that the robot can complete various actions according to external commands and its own state.
[0003] In existing technologies, robot control systems mostly adopt an integrated or simple modular architecture design, with data interaction and instruction transmission directly between functional modules. The entire process of operation, from instruction reception and processing to actuator driving, is achieved through a single control link. Some systems complete information transmission between modules based on a basic communication framework, without a clear hierarchical division of control functions.
[0004] The existing control systems of this type have significant drawbacks. They exhibit high coupling between modules, making it easy for a failure in any module to cause blockage in the overall control chain, resulting in poor system robustness. Furthermore, the lack of clear hierarchical functional division makes it difficult to independently expand and upgrade individual functions, leading to insufficient system scalability. Additionally, the absence of comprehensive state data support during command execution can cause a mismatch between command execution and the robot's actual state, affecting control accuracy. Therefore, solutions to these technical problems are needed. Summary of the Invention
[0005] This invention provides a hierarchical control system and method for robots, which achieves hierarchical decoupling of the system, improves the stability of system operation, facilitates independent functional expansion and upgrading, and supports closed-loop control based on global state data, thereby improving the accuracy of robot control.
[0006] According to one aspect of the present invention, a hierarchical control system for a robot is provided, the system comprising a drive functional domain, a control functional domain, and a decision functional domain, wherein, The drive function domain is used to collect the status of sensors and actuators, obtain status data, and publish the status data for the decision function domain and the control function domain to subscribe to. The decision function domain is used to subscribe to the status data and receive user instructions, and generate action instructions based on the status data and user instructions, and send them to the control function domain. The control function domain is used to subscribe to the status data and receive the action instructions, convert the action instructions into control instructions based on the status data, and send them to the drive function domain; The drive function domain is also used to receive the control command and drive the actuator based on the control command.
[0007] According to another aspect of the present invention, a hierarchical control method for a robot is provided, comprising: The state data is obtained by acquiring the states of sensors and actuators through the driving functional domain, and the state data is published for the decision functional domain and the control functional domain to subscribe to. The decision function domain subscribes to the status data and receives user instructions, and generates action instructions based on the status data and user instructions, which are then sent to the control function domain. The control function domain subscribes to the status data and receives the action instructions, and converts the action instructions into control instructions based on the status data and sends them to the drive function domain. The control command is received through the drive function domain, and the actuator is driven and controlled based on the control command.
[0008] According to another aspect of the present invention, an electronic device is provided, the electronic device comprising: At least one processor; and memory that is communicatively connected to at least one processor; The memory stores a computer program that can be executed by at least one processor, which enables the at least one processor to execute the hierarchical control method of the robot according to any embodiment of the present invention.
[0009] According to another aspect of the present invention, a computer-readable storage medium is provided, which stores computer instructions for causing a processor to execute and implement a hierarchical control method for a robot according to any embodiment of the present invention.
[0010] The technical solution of this invention collects the states of sensors and actuators through the drive functional domain to obtain state data, and publishes the state data for the decision functional domain and control functional domain to subscribe to. The decision functional domain subscribes to the state data and receives user instructions, and generates action instructions based on the state data and user instructions, and sends them to the control functional domain. The control functional domain subscribes to the state data and receives action instructions, converts the action instructions into control instructions based on the state data, and sends them to the drive functional domain. The drive functional domain receives the control instructions and drives and controls the actuators based on the control instructions. This solves the problems of high module coupling, poor robustness, difficulty in functional expansion and upgrading, lack of full-domain state data support for instruction execution, and insufficient control accuracy in traditional robot control systems. It achieves layered decoupling of the system, improves the stability of system operation, facilitates independent functional expansion and upgrading, and realizes closed-loop control based on full-domain state data support, thereby improving the accuracy of robot control.
[0011] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of the present invention, nor is it intended to limit the scope of the invention. Other features of the invention will become readily apparent from the following description. Attached Figure Description
[0012] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0013] Figure 1 An architecture diagram of a hierarchical control system for a robot provided in an embodiment of the present invention; Figure 2 This is a schematic diagram of the data flow between different functional domains in the hierarchical control system of the robot of the present invention; Figure 3 An architecture diagram of a hierarchical control system for a humanoid robot provided in an embodiment of the present invention; Figure 4 This is a schematic diagram of the state transition of atomic services in the system described in this invention; Figure 5 A flowchart illustrating a hierarchical control method for a robot provided in an embodiment of the present invention; Figure 6 A flowchart illustrating a complete robot action target execution process is provided for an embodiment of the present invention. Figure 7 A schematic diagram of the structure of an electronic device for implementing a hierarchical control method for a robot according to an embodiment of the present invention. Detailed Implementation
[0014] To enable those skilled in the art to better understand the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of the present invention.
[0015] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of the invention described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover a non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0016] Figure 1 An architecture diagram of a hierarchical control system for a robot provided in an embodiment of the present invention is shown below. Figure 1 As shown, the system includes a driving functional domain, a control functional domain, and a decision functional domain; The drive function domain is used to collect the status of sensors and actuators, obtain status data, and publish the status data for the decision function domain and the control function domain to subscribe to. The decision function domain is used to subscribe to the status data and receive user instructions, and generate action instructions based on the status data and user instructions, and send them to the control function domain. The control function domain is used to subscribe to the status data and receive the action instructions, convert the action instructions into control instructions based on the status data, and send them to the drive function domain; The drive function domain is also used to receive the control command and drive the actuator based on the control command.
[0017] Among them, the state data can be various types of data reflecting sensor perception information and actuator operating status, the action command can be robot motion planning command generated by the decision function domain, and the control command can be the low-level command used to drive the actuator action.
[0018] In this embodiment of the invention, the drive functional domain can collect the perception status of various sensors of the robot and the operating status of the actuator in real time, and publish them as status data. The decision functional domain and the control functional domain can subscribe to the above status data.
[0019] In practical applications, the decision-making functional domain can achieve human-computer interaction through different interaction methods to receive user commands. After receiving user commands, the decision-making functional domain can analyze the subscribed state data and generate robot action commands that match the user's intentions. These action commands can then be sent to the control functional domain.
[0020] Furthermore, after receiving the action command, the control function domain can further transform and plan the action command based on the subscribed status data, generate control commands adapted to the drive function domain, and send them to the drive control domain. The drive function domain can then drive the corresponding actuators according to the control commands to complete the corresponding actions.
[0021] Figure 2 This is a schematic diagram of the data flow between different functional domains in the hierarchical control system of the robot of this invention, as shown below. Figure 2 As shown, it includes: (1) Command downflow: The navigation service, remote control service group or AI model service group of the decision function domain receives user commands, generates high-level action intent data, and sends it down to the control function domain through the service interface; (2) Control conversion flow: The service instance of the control function domain performs kinematic calculation and planning on the received action intention, generates control instructions for the underlying joints and components, and sends them to the drive function domain; (3) Signal execution flow: The service instances of the driving functional domain convert standardized control instructions into communication protocol signals specific to the hardware, driving the actuator to act; (4) Status upflow: The status service group of the driving functional domain continuously collects the status of sensors and actuators and publishes it as standardized status data for service subscription by the control functional domain and the decision functional domain, for closed-loop control and task decision-making; (5) System monitoring and arbitration: The system management service group of the decision function domain continuously monitors the status of all services (through system management service) and system resources, and arbitrates concurrent task requests according to the preset priority scheduling model (e.g.: remote operation service > navigation service > AI model service). At the same time, it triggers the aforementioned fault handling process when an anomaly is detected.
[0022] It should also be noted that the embodiments of the present invention do not limit the type of robot; all robots can be configured with the aforementioned hierarchical control system to control the robot. For example, the robot can be a humanoid robot or a non-humanoid robot.
[0023] In some possible implementations, the drive function domain includes a power management service, a drive-type service, a status-type service, and a sensor data service group. The power management service is used to implement data interaction and command execution related to the robot's power supply. The drive-type service is used to receive the control commands and convert the control execution into communication protocol signals corresponding to the actuator, so as to drive and control the actuator based on the communication protocol information. The status-type service is used to collect and publish the actuator's operating data. The sensor data service group is used to collect and publish the sensor's perception data. The status data includes both operating data and perception data.
[0024] Among them, power management service can be a functional unit for controlling the robot's power supply; drive service can convert control commands into hardware communication signals; status service can be a functional unit for collecting actuator operation data; sensor data service group can be a functional set for collecting various sensor perception data; operation data can be various status parameters of the actuator during operation; perception data can be the sensor's perception parameters of the external environment and the robot itself.
[0025] Specifically, power management services can control the robot's power supply, including starting and stopping, and monitoring battery levels. Drive services receive control commands from the control domain, convert them into communication protocol signals compatible with each actuator, and then drive the actuators accordingly. Status services collect and publish real-time operating data from each actuator, while sensor data services collect and publish real-time sensor data, forming a complete status data platform. In this way, the decision and control domains can make accurate decisions and implement control based on real-time status data.
[0026] In some possible implementations, the drive services include at least one of chassis drive services, trunk drive services, lower limb drive service groups, and upper limb drive service groups; the status services include at least one of chassis status services, trunk status services, lower limb status service groups, and upper limb status service groups; and the sensor data service groups include at least one of radar data service groups, camera data service groups, and inertial measurement unit (IMU) data service groups.
[0027] Specifically, the chassis drive service and torso drive service can be functional units used to drive the robot chassis and torso actuators, respectively. The lower limb drive service group and upper limb drive service group can be functional sets that drive the actuators of each joint of the robot's lower and upper limbs, respectively. The chassis status service and torso status service are functional units that collect operational data from the robot chassis and torso actuators, respectively. The lower limb status service group and upper limb status service group can be functional sets that collect operational data from the actuators of each joint of the robot's lower and upper limbs, respectively. The radar data service group, camera data service group, and IMU data service group can be functional units that collect sensor data from radar, camera, and IMU sensors, respectively.
[0028] It should be understood that, based on the robot's hardware configuration and actual control requirements, at least one of the following drive services can be selected from the drive service group: chassis drive service, torso drive service, lower limb drive service group, and upper limb drive service group to build a drive unit.
[0029] Furthermore, within the status services, at least one of the following groups—chassis status service, torso status service, lower limb status service, and upper limb status service—is selected to build an actuator data acquisition unit. Similarly, within the sensor data service groups, at least one of the following groups—radar data service, camera data service, and IMU data service—is selected to build a sensor data acquisition unit. The selected functional units then perform the corresponding driving and data acquisition tasks. The primary purpose of this is to adapt to robots with different hardware configurations and improve the flexibility and adaptability of the driving functional domain.
[0030] In some possible implementations, the decision-making functional domain includes a task instruction service group and a system management service group. The task instruction service group is used to receive user instructions and subscribe to the status data, and generate action instructions based on the user instructions and the status data and issue them to the control functional domain. The system management service group is used to subscribe to the status data, monitor the running status of all services in the system and the system resource usage in real time, perform priority arbitration on concurrent task requests of the system, and also detect system service anomalies and execute corresponding anomaly handling operations.
[0031] The task instruction service group can be understood as a set of functions in the decision function domain that generate robot action instructions. The task instruction service group can receive user instructions, subscribe to the status data published by the drive function domain, analyze and generate action instructions based on user instructions and status data, and send the action instructions to the control function domain.
[0032] Among them, system resource occupancy can be understood as the usage status of computing, storage, communication and other resources in the robot control system, and priority arbitration can be the operation of assigning execution priorities to concurrent tasks according to preset rules.
[0033] Specifically, the system management service group can subscribe to the status data of the driving functional domains, monitor the running status of all services and system resource usage in real time, and when multiple concurrent task requests occur in the system, it can arbitrate the priority of each task request to determine the execution order. For example, the priority could be remote control service > navigation service > AI model service.
[0034] In addition, the system management service group can also detect whether any services within the system are experiencing anomalies in real time. If an anomaly is detected, corresponding anomaly handling operations can be performed. For example, the system's built-in monitoring module (Monitor module) can periodically subscribe to the status messages of service nodes and comprehensively judge the health status of the service based on preset frequency thresholds, message timestamp differences, and the validity of message content.
[0035] In some possible implementations, the task instruction service group includes a navigation service, a remote control service group, and an AI model service group. The navigation service receives user instructions for automatic navigation and generates corresponding action instructions based on the status data. The remote control service group receives user instructions for remote operation and generates corresponding action instructions based on the status data. The remote control service group is configured with a remote operation data protocol interface for standardizing and encapsulating instructions from different remote operation input sources. The AI model service group receives user instructions for AI decision-making and generates corresponding action instructions based on the status data.
[0036] In this embodiment of the invention, the navigation service can receive automatic navigation user commands and, in conjunction with subscribed status data, plan the robot's navigation path, thereby generating corresponding action commands. The remote control service group can receive remote operation user commands, standardize and encapsulate commands from different remote operation input sources through a configured remote operation data protocol interface, and then generate corresponding action commands in conjunction with status data. The AI model service group receives external AI decision-making user commands, analyzes them based on the built-in AI model, and generates corresponding action commands in conjunction with status data. The action commands generated by the above services can be sent to the control function domain.
[0037] For example, by defining a unified teleoperation data protocol interface, instructions from different input sources such as VR devices, homogeneous robotic arm devices, and motion capture devices can be standardized and encapsulated to ensure that multiple teleoperation modes can be seamlessly accessed without conflict.
[0038] Understandably, a unified remote operation service group interface was designed in the decision domain, which can be compatible with and integrate various remote operation methods such as VR and motion capture equipment, and can solve the problems of single remote operation function and weak scalability of traditional systems.
[0039] In some possible implementations, the control function domain includes a motion control service and a control data recording service. The motion control service is used to receive the action command, perform kinematic calculations and planning on the action command in conjunction with the state data, and generate the control command. The control data recording service is used to record the action command received by the control function domain, the control command issued, and the state data received.
[0040] Specifically, the motion control service in the control function domain receives action commands from the decision function domain, and performs kinematic calculations and planning on the action commands in combination with state data, converting the abstract action commands into control commands that can drive the actuators, and then sending them to the drive function domain.
[0041] To save control operation records for easier debugging and troubleshooting, this embodiment can further record all instruction transmission processes and data interaction information within the control function domain by setting up a control data recording service, forming an operation record. Specifically, it can record the action instructions received, the control instructions issued, and the status data received by the control function domain.
[0042] In some possible implementations, the motion control services include at least one of chassis motion control services, trunk motion control services, lower limb joint motion control service groups, and upper limb joint motion control service groups.
[0043] Understandably, the chassis motion control service and the torso motion control service can perform kinematic calculations and planning for the robot's chassis and torso, respectively. The lower limb joint motion control service group and the upper limb joint motion control service group can perform kinematic calculations and planning for each joint of the robot's lower and upper limbs, respectively. In this way, the motion angles and paths of different parts of the robot can be planned, and then corresponding control commands can be generated and sent to the drive functional domain.
[0044] In a preferred embodiment, taking a humanoid robot as an example, the overall architecture of the hierarchical control system is described, such as... Figure 3 The diagram shown is an architecture diagram of a hierarchical control system for a humanoid robot provided in an embodiment of the present invention.
[0045] The system is divided into three functional domains: the drive domain, the control domain, and the decision domain. The drive domain maps to the robot's body, the control domain maps to the robot's cerebellum, and the decision domain maps to the robot's brain. Each domain contains several minimally functional service components.
[0046] (1) The driver functional domain is responsible for the bidirectional conversion and transmission of signals and service interface data from the connected actuators, sensors, power managers, and other electronic control components. It is referred to as the driver domain below. It includes power management services, chassis drive services, chassis status services, lower limb drive service group, lower limb status service group, torso drive service, torso status service, upper limb drive service group, upper limb status service group, radar data service group, camera data service group, and IMU data service group. A service group refers to multiple services with similar functions, each mapping to multiple hardware of the same type. The concept of other service groups is similar.
[0047] (2) The control function domain is responsible for processing the robot action commands released by the decision domain and ultimately converting them into signals that the drive domain can transmit to the actuators and power manager. It is referred to as the control domain below. It includes chassis motion control service, lower limb joint motion control service group, trunk motion control service, upper limb motion control service group, control; data recording service, and positioning service.
[0048] (3) The decision-making functional domain is responsible for understanding user input, judging the robot's state, and releasing robot action commands to the control domain. It is referred to as the decision-making domain. It includes navigation services, remote control services, AI model services, and system management services.
[0049] In some possible implementations, all functional units within the drive functional domain, the control functional domain, and the decision functional domain are atomic services; each atomic service is configured with a unique identifier and service interface, and the atomic services communicate and transmit instructions with each other through the Robot Operating System 2 (ROS2) middleware.
[0050] An atomic service is an independent process (node) with a single and minimal function, developed based on the ROS2 standard interface. Each atomic service has a unique identity and a clearly defined service interface. Services communicate loosely through ROS2 middleware, thereby enabling independent deployment, start-up, shutdown, and replacement of functions.
[0051] Specifically, all functional units within the drive, control, and decision-making functional domains are encapsulated as atomic services. Each atomic service is configured with a unique identifier and a standardized service interface. Each atomic service operates as an independent functional unit. When data communication or instruction transmission is required, each atomic service completes interactive operations through the ROS2 middleware based on its own service interface. This can achieve atomic decoupling of system functions, improve the independent operation capability of each functional unit, and enhance the scalability of the system.
[0052] Understandably, by adopting a minimal atomic service architecture based on ROS2, the system can quickly adapt to different hardware configurations and application scenarios through the combination and trimming of services, thus solving the problems of poor system scalability and configurability.
[0053] In some possible implementations, each of the atomic services is configured with an internal state machine; The internal state machine is used to maintain the running state of the atomic service and to perform the switching operation of the running state according to the running logic of the atomic service itself or the instructions issued by the system management service group. The operating states include ready state, working state, dormant state, and abnormal state. The internal state machine can be a control logic module within the atomic service used to maintain and switch operating states. The ready state is the state where the atomic service has started up and can receive instructions. The working state is the state where the atomic service executes preset functions. The dormant state is the state where the atomic service operates with low power when there are no task requirements. The abnormal state is the state where the atomic service stops working after detecting a fault or receiving an abnormal instruction.
[0054] Specifically, each atomic service is configured with an internal state machine, which can maintain the current running state of the atomic service in real time. When the atomic service detects that its running logic meets the state switching conditions, or receives a state switching instruction issued by the system management service group, the internal state machine immediately executes the corresponding running state switching operation. The running state of the atomic service only switches between ready, working, dormant, and abnormal states. In this way, fine-grained control over the running state of atomic services can be achieved, improving the system's ability to detect and handle service failures.
[0055] It should also be noted that, due to the isolation of service interfaces and the independence of functions, combined with state machine management and system-level monitoring, fault isolation and rapid self-recovery are achieved, avoiding system-level paralysis caused by a single module failure, and solving the problems of poor system robustness and lack of functional safety mechanisms.
[0056] For example, Figure 4 This is a schematic diagram illustrating the state transitions of atomic services in the system described in this invention. Each atomic service in the system maintains an internal state machine, whose states include ready, working, dormant, and abnormal. Services can switch between these states based on their own operational logic or instructions from the system management service. When a service detects a fault through self-checking or when the system management component discovers an anomaly through proactive diagnosis, the service will automatically switch to the abnormal state and notify the system management service. The system management service can then send a state switching instruction to the service or its associated services according to a preset strategy to trigger function recovery, function degradation, or service restart operations.
[0057] Figure 5 This is a flowchart illustrating a hierarchical control method for a robot according to an embodiment of the present invention. This method can be executed by a hierarchical control system for the robot. The device can be implemented in hardware and / or software and can be configured in an electronic device. Figure 5 As shown, the method specifically includes the following steps: S510. The state of sensors and actuators is collected through the drive function domain to obtain state data, and the state data is published for the decision function domain and the control function domain to subscribe to.
[0058] S520. Subscribe to the status data and receive user instructions through the decision function domain, and generate action instructions based on the status data and user instructions, and send them to the control function domain.
[0059] S530. Subscribe to the status data and receive the action instructions through the control function domain, convert the action instructions into control instructions according to the status data and send them to the drive function domain.
[0060] S540. Receive the control command through the drive function domain, and perform drive control on the actuator based on the control command.
[0061] Among them, the state data can be various types of data reflecting sensor perception information and actuator operating status, the action command can be robot motion planning command generated by the decision function domain, and the control command can be the low-level command used to drive the actuator action.
[0062] In this embodiment of the invention, the drive functional domain can collect the perception status of various sensors of the robot and the operating status of the actuator in real time, and publish them as status data. The decision functional domain and the control functional domain can subscribe to the above status data.
[0063] In practical applications, the decision-making functional domain can achieve human-computer interaction through different interaction methods to receive user commands. After receiving user commands, the decision-making functional domain can analyze the subscribed state data and generate robot action commands that match the user's intentions. These action commands can then be sent to the control functional domain.
[0064] Furthermore, after receiving the action command, the control function domain can further transform and plan the action command based on the subscribed status data, generate control commands adapted to the drive function domain, and send them to the drive control domain. The drive function domain can then drive the corresponding actuators according to the control commands to complete the corresponding actions. Figure 6 The present invention provides a complete flowchart of the robot's action target execution in an embodiment of the invention, through which user instructions can be completed.
[0065] The technical solution of this invention, through the drive functional domain, collects the states of sensors and actuators to obtain state data, and publishes the state data for the decision functional domain and control functional domain to subscribe to; the decision functional domain subscribes to the state data and receives user instructions, and generates action instructions based on the state data and user instructions, and sends them to the control functional domain; the control functional domain subscribes to the state data and receives action instructions, converts the action instructions into control instructions based on the state data, and sends them to the drive functional domain; the drive functional domain receives the control instructions and drives and controls the actuators based on the control instructions. This solves the problems of high module coupling, poor robustness, difficulty in functional expansion and upgrading, lack of full-domain state data support for instruction execution, and insufficient control accuracy in traditional robot control systems. It achieves layered decoupling of the system, improves system operational stability, facilitates independent functional expansion and upgrading, and achieves closed-loop control based on full-domain state data support, thereby improving robot control accuracy. The technical solution of this invention includes at least the following technical effects: (1) Modular componentization: Components in the driver area are completely independent of the hardware and have single and reusable functions through the hardware drivers and abstract hardware interfaces of the operating system. Service components in the control domain and decision domain are completely decoupled from the hardware by system configuration. The functions of services are independent and can be reused for different robot products.
[0066] (2) Hardware abstraction driver domain component design: The driver layer functions are completely atomized and encapsulated as hardware-independent components. Through standardized service interfaces, they interact with the upper layer, fundamentally decoupling the software functions from the specific hardware implementation.
[0067] (3) Priority scheduling concept for human-centered loop: Within the decision domain, a fixed priority response strategy of "remote control > navigation > AI" is established to ensure that in mixed decision scenarios, the direct human control commands have the highest real-time performance and reliability.
[0068] (4) Deeply atomized service architecture: Going beyond ordinary modularization, the system functions are broken down into atomic services with smaller granularity, single function, and isolated interface. This deep decoupling is the foundation for achieving high cohesion, low coupling, flexible tailoring, and independent deployment of the system.
[0069] (5) Flexible mechanism for separating configuration and strategy: The initial baseline for the service is provided by "read-only static configuration" and the runtime load and behavior are adjusted in real time by "variable dynamic strategy", so that a system can adapt to multiple scenarios and robot forms.
[0070] (6) Distributed functional safety control based on state machine: introduce a standardized state machine model for each atomic service and link it with the system-level management service so that the failure of a single service can be isolated and diagnosed, and trigger system-level recovery, degradation or reconstruction operations, thereby achieving functional safety in a distributed environment.
[0071] Figure 7 This is a schematic diagram of an electronic device for implementing a hierarchical control method for a robot according to an embodiment of the present invention. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workbenches, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital assistants, cellular phones, smartphones, wearable devices (e.g., helmets, glasses, watches, etc.), and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the invention described and / or claimed herein.
[0072] like Figure 7 As shown, the electronic device 10 includes at least one processor 11 and a memory, such as a read-only memory (ROM) 12 or a random access memory (RAM) 13, communicatively connected to the at least one processor 11. The memory stores computer programs executable by the at least one processor. The processor 11 can perform various appropriate actions and processes based on the computer program stored in the ROM 12 or loaded into the RAM 13 from storage unit 18. The RAM 13 can also store various programs and data required for the operation of the electronic device 10. The processor 11, ROM 12, and RAM 13 are interconnected via a bus 14. An input / output (I / O) interface 15 is also connected to the bus 14.
[0073] Multiple components in electronic device 10 are connected to I / O interface 15, including: input unit 16, such as keyboard, mouse, etc.; output unit 17, such as various types of displays, speakers, etc.; storage unit 18, such as disk, optical disk, etc.; and communication unit 19, such as network card, modem, wireless transceiver, etc. Communication unit 19 allows electronic device 10 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.
[0074] Processor 11 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, digital signal processors (DSPs), and any suitable processor, controller, microcontroller, etc. Processor 11 performs the various methods and processes described above, such as a hierarchical control method for a robot.
[0075] In some embodiments, a hierarchical control method for a robot may be implemented as a computer program tangibly contained in a computer-readable storage medium, such as storage unit 18. In some embodiments, part or all of the computer program may be loaded into and / or mounted on electronic device 10 via ROM 12 and / or communication unit 19. When the computer program is loaded into RAM 13 and executed by processor 11, one or more steps of the hierarchical control method for a robot described above may be performed. Alternatively, in other embodiments, processor 11 may be configured to perform a hierarchical control method for a robot by any other suitable means (e.g., by means of firmware).
[0076] Various implementations of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), complex programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various implementations may include: implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.
[0077] Computer programs used to implement the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when executed by the processor, the computer programs cause the functions / operations specified in the flowcharts and / or block diagrams to be performed. The computer programs may be executed entirely on a machine, partially on a machine, or as a standalone software package, partially on a machine and partially on a remote machine, or entirely on a remote machine or server.
[0078] In the context of this invention, a computer-readable storage medium can be a tangible medium that may contain or store a computer program for use by or in conjunction with an instruction execution system, apparatus, or device. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination thereof. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.
[0079] To provide interaction with a user, the systems and techniques described herein can be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the electronic device. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).
[0080] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as data servers), or middleware components (e.g., application servers), or frontend components (e.g., user computers with graphical user interfaces or web browsers through which users can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., communication networks). Examples of communication networks include local area networks (LANs), wide area networks (WANs), blockchain networks, and the Internet.
[0081] A computing system can include clients and servers. Clients and servers are generally located far apart and typically interact through communication networks. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. The server can be a cloud server, also known as a cloud computing server or cloud host, which is a hosting product within the cloud computing service system to address the shortcomings of traditional physical hosts and VPS services, such as high management difficulty and weak business scalability.
[0082] It should be understood that the various forms of processes shown above can be used, with steps reordered, added, or deleted. For example, the steps described in this invention can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution of this invention can be achieved, and this is not limited herein.
[0083] The specific embodiments described above do not constitute a limitation on the scope of protection of this invention. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this invention should be included within the scope of protection of this invention.
Claims
1. A hierarchical control system for a robot, characterized in that, The system includes a driving functional domain, a control functional domain, and a decision functional domain, wherein... The drive function domain is used to collect the status of sensors and actuators, obtain status data, and publish the status data for the decision function domain and the control function domain to subscribe to. The decision function domain is used to subscribe to the status data and receive user instructions, and generate action instructions based on the status data and user instructions, and send them to the control function domain. The control function domain is used to subscribe to the status data and receive the action instructions, convert the action instructions into control instructions based on the status data, and send them to the drive function domain; The drive function domain is also used to receive the control command and drive the actuator based on the control command.
2. The system according to claim 1, characterized in that, The driver functional domain includes power management services, driver services, status services, and a sensor data service group, among which... The power management service is used to realize data interaction and command execution related to robot power; The drive class service is used to receive the control command and convert the control execution into a communication protocol signal corresponding to the actuator, so as to drive and control the actuator based on the communication protocol information; The status service is used to collect and publish the operating data of the actuator; The sensor data service group is used to collect and publish the sensing data of the sensor; wherein, the status data includes operational data and the sensing data.
3. The system according to claim 2, characterized in that, The driving services include at least one of chassis driving services, trunk driving services, lower limb driving service group and upper limb driving service group; The status services include at least one of chassis status services, trunk status services, lower limb status service groups, and upper limb status service groups. The sensor data service group includes at least one of the following: radar data service group, camera data service group, and IMU data service group.
4. The system according to claim 1, characterized in that, The decision-making function domain includes a task instruction service group and a system management service group, wherein... The task instruction service group is used to receive the user instructions and subscribe to the status data, and generate the action instructions based on the user instructions and the status data and send them to the control function domain; The system management service group is used to subscribe to the status data, monitor the running status of all services and system resource usage in real time, perform priority arbitration on concurrent task requests of the system, and detect system service anomalies and execute corresponding anomaly handling operations.
5. The system according to claim 4, characterized in that, The task instruction service group includes a navigation service group, a remote control service group, and an AI model service group, among which... The navigation service is used to receive automatic navigation user instructions and generate corresponding action instructions based on the status data. The remote operation service group is used to receive remote operation user commands and generate corresponding action commands in combination with the status data. The remote operation service group is configured with a remote operation data protocol interface for standardized encapsulation of commands from different remote operation input sources. The AI model service group is used to receive AI decision-making user instructions and generate corresponding action instructions based on the status data.
6. The system according to claim 1, characterized in that, The control function domain includes motion control services and control data recording services, wherein... The motion control service is used to receive the action command, combine the state data to perform kinematic calculation and planning on the action command, and generate the control command. The control data recording service is used to record the action instructions received by the control function domain, the control instructions issued, and the status data received.
7. The system according to claim 6, characterized in that, The motion control services include at least one of the following: chassis motion control service, trunk motion control service, lower limb joint motion control service group, and upper limb joint motion control service group.
8. The system according to claim 1, characterized in that, All functional units within the driving functional domain, the control functional domain, and the decision functional domain are atomic services. Each of the atomic services is configured with a unique identity and service interface, and the atomic services communicate and transmit instructions with each other through the ROS2 middleware.
9. The system according to claim 8, characterized in that, Each of the atomic services is configured with an internal state machine; The internal state machine is used to maintain the running state of the atomic service and to perform the switching operation of the running state according to the running logic of the atomic service itself or the instructions issued by the system management service group. The operating states include ready state, working state, dormant state, and abnormal state.
10. A hierarchical control method for a robot, characterized in that, include: The state data is obtained by acquiring the states of sensors and actuators through the driving functional domain, and the state data is published for the decision functional domain and the control functional domain to subscribe to. The decision function domain subscribes to the status data and receives user instructions, and generates action instructions based on the status data and user instructions, and sends them to the control function domain. The control function domain subscribes to the status data and receives the action instructions, and converts the action instructions into control instructions based on the status data and sends them to the drive function domain. The control command is received through the drive function domain, and the actuator is driven and controlled based on the control command.