Robot motion control method, electronic device, storage medium
Patent Information
- Application Number
- CN202511849516.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-09
- Publication Date
- 2026-11-03
- Estimated Expiration
- 2045-12-09
AI Technical Summary
Traditional robot motion control methods struggle to achieve multi-task coordination in complex environments while ensuring safety. In particular, existing technologies are ill-equipped to handle the dynamic conflicts between accurately tracking the end effector trajectory, maintaining waist posture balance, and avoiding self-collision risks in complex environments.
By acquiring collision distance definition data, motion control task reference data, and motion control constraints, a collision distance regression network is used for offline training to build a structural feature vector library. This enables multi-task analysis and impedance control, thereby achieving precise control of robot motion.
It achieves safe and adaptable robot movement in complex environments, improves the efficiency and safety of collision detection, and exhibits better global performance in multi-task environments.
Smart Images

Figure CN121670637B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of robot control technology, and in particular to a robot motion control method, electronic device, and storage medium. Background Technology
[0002] In the field of traditional robot motion control, in order to effectively avoid damage to the mechanical body or workpiece from rigid collisions and improve operational safety and physical interaction adaptability, it is necessary to predict the collision distance through collision detection. Then, impedance control is performed to establish a dynamic mapping between force and position deviation by simulating a virtual spring-damping system, so that the robot exhibits the expected compliance at the moment of contact. Its core advantage lies in not directly controlling the position or force, but rather allowing the robot to "actively yield" or "absorb" the impact by adjusting the impedance parameters.
[0003] However, the limitation of a single compliant control framework lies in its inability to independently handle the increasingly complex multi-tasking requirements of modern robotic systems. In real-world scenarios, robots are often required to accurately track the end effector trajectory while simultaneously maintaining waist posture balance to ensure overall stability, ensuring that the movements of each joint do not exceed physical limits, and avoiding self-collision risks in real time. These objectives often conflict with each other in the task space. Traditional fixed-priority control laws or weighting mechanisms appear rigid in the face of such dynamic conflicts, making it difficult to demonstrate good global performance while ensuring a safety baseline. Summary of the Invention
[0004] This application aims to address at least one of the technical problems existing in the prior art. To this end, this application proposes a robot motion control method, electronic device, and storage medium that can exhibit better global performance while ensuring a safety baseline.
[0005] The robot motion control method according to the first aspect of this application includes: Acquire collision distance definition data, motion control task reference data, and motion control constraints for the target robot; The motion parameters of the target robot are collected in real time to obtain the measured motion parameters; Based on the motion control task reference data, the measured motion parameters, and the collision distance definition data, multi-task analysis is performed to obtain branch objective functions that match multiple branch tasks; By integrating the objective functions of each of the aforementioned branch tasks, a multi-task comprehensive objective function is obtained; The multi-task integrated objective function is solved based on the motion control constraints to obtain the desired motion control parameters; Impedance control analysis is performed based on the measured motion parameters and the desired motion control parameters to obtain the target driving command; The target robot is controlled to perform motion operations by means of the target driving command.
[0006] According to some embodiments of this application, obtaining the collision distance definition data corresponding to the target robot includes: The collision distance regression network, the first type of representation modeling corresponding to various robot parts, and the second type of representation modeling corresponding to various environmental obstacles are obtained; wherein, the robot parts refer to the components of the target robot, and the environmental obstacles refer to the obstacles existing in the environment in which the target robot is located; The encoder of the collision distance regression network performs encoding operations on the first type of representation modeling and the second type of representation modeling to construct a structural feature vector library. The collision distance regression network uses a regressor to perform collision distance regression prediction based on the structural feature vector library, thereby obtaining the collision distance definition data.
[0007] According to some embodiments of this application, the step of performing encoding operations on the first type of representation modeling and the second type of representation modeling through the encoder of the collision distance regression network to construct a structural feature vector library includes: Uniform sampling is performed on the triangular mesh surface corresponding to the first type of representation modeling to obtain the first type of point cloud data; Dynamic graph convolution operations are performed on the first type of point cloud data to obtain the component structure feature vectors of various robot components. Uniform sampling is performed on the triangular mesh surface corresponding to the second type of representation modeling to obtain the second type of point cloud data; Based on the second type of point cloud data, dynamic graph convolution operation is performed to obtain the obstacle structure feature vectors of various environmental obstacles; The structural feature vector library is obtained by integrating the component structural feature vectors of various robot parts and the obstacle structural feature vectors of various environmental obstacles.
[0008] According to some embodiments of this application, the step of performing collision distance regression prediction based on the structural feature vector library to obtain the collision distance delimitation data includes: For any two potential collision structures in the structural feature vector library, collision distance regression prediction is performed to obtain the collision spacing value between the two potential collision structures; wherein, the potential collision structures include various robot components and various environmental obstacles; The collision distance definition data is obtained by integrating the collision spacing values between any two potential collision structures.
[0009] According to some embodiments of this application, the step of performing multi-task analysis based on the motion control task reference data, the measured motion parameters, and the collision distance definition data to obtain a branch objective function matching multiple branch tasks includes: Based on the motion control task reference data and the measured motion parameters, multi-task deviation analysis is performed to obtain motion control deviation items for multiple branch tasks; Based on the task type of the branch task, a corresponding branch objective function is constructed for the corresponding motion control deviation term.
[0010] According to some embodiments of this application, the integration of the branch objective functions of each of the branch tasks to obtain a multi-task comprehensive objective function includes: Based on the task type of each branch task, determine the real-time priority information of each branch task; Based on the real-time priority information of each branch task, the real-time weight of the task function of each multi-task comprehensive objective function is determined. Based on the real-time weights of each task function, the branch objective functions of each branch task are integrated to obtain the real-time multi-task comprehensive objective function.
[0011] According to some embodiments of this application, the step of solving the multi-task integrated objective function based on motion control constraints to obtain the desired motion control parameters includes: Construct the constraint barrier function corresponding to each of the aforementioned motion control constraints; Based on the constraint barrier function, with minimizing the motion control deviation term as the solution objective, the multi-task integrated objective function is solved to obtain the desired motion control parameters.
[0012] According to some embodiments of this application, before performing impedance control analysis based on the measured motion parameters and the desired motion control parameters to obtain the target driving command, the method further includes: The measured motion parameters are processed by a first-order Kalman filter to obtain reliable measured parameters. The measured reliable parameters are processed using the dynamic model to make a forward prediction of the motion trend of the target robot and obtain a coarse estimate of the motion acceleration. An advanced Kalman filter is applied to the coarse estimate of motion acceleration to obtain a fine estimate of motion acceleration. The impedance control analysis based on the measured motion parameters and the desired motion control parameters to obtain the target driving command includes: Impedance control analysis is performed based on the measured motion parameters, the desired motion control parameters, and the precise value of the motion acceleration to obtain the target driving command.
[0013] According to some embodiments of this application, the branch tasks include a left-hand pose control task, a right-hand pose control task, and a waist posture stabilization control task. The multi-task analysis based on the motion control task reference data, the measured motion parameters, and the collision distance definition data yields a branch objective function matching multiple branch tasks, including: Based on the motion control task reference data, the measured motion parameters, and the collision distance definition data, the left-hand pose control is analyzed to obtain the left-hand control objective function corresponding to the left-hand pose control task. Based on the motion control task reference data, the measured motion parameters, and the collision distance definition data, the right hand pose control is analyzed to obtain the right hand control objective function corresponding to the right hand pose control task; Based on the motion control task reference data, the measured motion parameters, and the collision distance definition data, the waist posture stability control is analyzed to obtain the waist control objective function corresponding to the waist posture stability control task.
[0014] Secondly, embodiments of this application provide an electronic device, including: a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the robot motion control method as described in any one of the embodiments of the first aspect of this application.
[0015] Thirdly, embodiments of this application provide a computer-readable storage medium storing a program that is executed by a processor to implement the robot motion control method as described in any one of the embodiments of the first aspect of this application.
[0016] The robot motion control method, electronic device, and storage medium according to the embodiments of this application have at least the following beneficial effects: According to the robot motion control method of this application, it is necessary to first obtain the collision distance definition data, motion control task reference data, and motion control constraints corresponding to the target robot; collect the motion parameters of the target robot in real time to obtain the measured motion parameters; perform multi-task analysis based on the motion control task reference data, measured motion parameters, and collision distance definition data to obtain branch objective functions matching multiple branch tasks; integrate the branch objective functions of each branch task to obtain the multi-task comprehensive objective function; solve the multi-task comprehensive objective function based on the motion control constraints to obtain the expected motion control parameters; perform impedance control analysis based on the measured motion parameters and the expected motion control parameters to obtain the target driving command; and control the target robot to perform motion operations through the target driving command. In this way, better global performance can be achieved while ensuring a safety baseline.
[0017] Additional aspects and advantages of this application will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of this application. Attached Figure Description
[0018] The above and / or additional aspects and advantages of this application will become apparent and readily understood from the description of the embodiments taken in conjunction with the following drawings, in which: Figure 1 This is a schematic flowchart of a robot motion control method provided in an embodiment of this application; Figure 2 This is another schematic flowchart of the robot motion control method provided in the embodiments of this application; Figure 3 This is another schematic flowchart of the robot motion control method provided in the embodiments of this application; Figure 4 This is another schematic flowchart of the robot motion control method provided in the embodiments of this application; Figure 5 This is another schematic flowchart of the robot motion control method provided in the embodiments of this application; Figure 6 This is another schematic flowchart of the robot motion control method provided in the embodiments of this application; Figure 7 This is another schematic flowchart of the robot motion control method provided in the embodiments of this application; Figure 8 This is another schematic flowchart of the robot motion control method provided in the embodiments of this application; Figure 9 This is a schematic diagram of the hardware structure of the electronic device provided in the embodiments of this application. Detailed Implementation
[0019] The embodiments of this application are described in detail below. Examples of the embodiments are shown in the accompanying drawings, wherein the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and are only used to explain this application, and should not be construed as limiting this application.
[0020] In the description of this application, "several" means one or more, "more than" means two or more, "greater than," "less than," and "exceeding" are understood to exclude the stated number, while "above," "below," and "within" are understood to include the stated number. The use of "first" and "second" in the description is merely for distinguishing technical features and should not be construed as indicating or implying relative importance, or implicitly indicating the number of indicated technical features, or implicitly indicating the order of the indicated technical features.
[0021] In the description of this application, it should be understood that the orientation descriptions, such as up, down, left, right, front, and back, are based on the orientation or positional relationship shown in the accompanying drawings. They are only for the convenience of describing this application and simplifying the description, and do not indicate or imply that the device or element referred to must have a specific orientation, or be constructed and operated in a specific orientation. Therefore, they should not be construed as limitations on this application.
[0022] In the description of this specification, the references to terms such as "one embodiment," "some embodiments," "illustrative embodiment," "example," "specific example," or "some examples," etc., indicate that a specific feature, structure, material, or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of this application. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples.
[0023] In the description of this application, it should be noted that, unless otherwise explicitly defined, terms such as "setting," "installation," and "connection" should be interpreted broadly. Those skilled in the art can reasonably determine the specific meaning of the above terms in this application based on the specific content of the technical solution. Furthermore, the identification of specific steps in the following text does not imply a limitation on the order of steps or execution logic. The execution order and logic between each step should be understood and inferred from the content described in the embodiments.
[0024] In the field of traditional robot motion control, collision detection has always been a computationally intensive core task.
[0025] In robotics, STL mesh models are the "language" for describing the three-dimensional shape of robots and their environment. This file format originates from stereolithography, and its core idea is to approximate complex curved surfaces by piecing together a large number of tiny triangular facets, much like using countless small planes to fit a smooth sphere. The more facets, the more precise the approximation. The robot's robotic arm, torso, and surrounding workpieces and obstacles are all modeled as such sets of triangular meshes. The advantage of this representation method is its strong compatibility; complex CAD designs can be converted into STL format. However, its limitations are also obvious: collision detection is no longer a simple mathematical calculation but requires traversing all triangular facets and checking whether the triangles on different object surfaces intersect or are too close together.
[0026] FCL and HPP-FCL are dedicated geometry libraries for handling this type of collision calculation. FCL (Flexible Collision Library) is a widely used collision detection engine in the open-source community, while HPP-FCL is a more efficient and optimized version. Their working principle is as follows: given the spatial poses of two STL mesh models, they use sophisticated spatial segmentation algorithms (such as bounding volume hierarchical trees) to accelerate the search and accurately calculate the minimum Euclidean distance between the two sets of triangular facets. When this distance is less than a safety threshold, a collision or near-collision is determined.
[0027] Current technologies primarily rely on geometry libraries such as FCL and HPP-FCL to determine collision states by accurately calculating the minimum distance between STL mesh models. While these methods are reliable in terms of accuracy, their computational cost is extremely high, especially in high-degree-of-freedom robot systems. As the degrees of freedom of components such as the robotic arm, torso, and mobile base increase, the number of collision pairs to be detected explodes, leading to a linear accumulation of computation time. This computational demand contradicts the stringent requirement of millisecond-level response in real-time control. Even with high-performance computing platforms, it remains difficult to complete all geometric calculations within the control loop cycle.
[0028] To alleviate this bottleneck, engineering practice has adopted a model simplification strategy, approximating complex triangular meshes as basic geometric elements such as spheres, capsules, or bounding boxes. While this can reduce the amount of computation to some extent, it inevitably introduces approximation errors, which may lead to missed collisions in tiny gaps or misjudgments in intensive working environments. Moreover, there is always an irreconcilable trade-off between simplification and safety.
[0029] Impedance control establishes a dynamic mapping between force and position deviation by simulating a virtual spring-damping system, enabling the robot to exhibit the expected compliance at the moment of contact. Its core advantage lies in not directly controlling position or force, but rather allowing the robot to "actively yield" or "absorb" impact by adjusting impedance parameters, thereby effectively avoiding damage to the mechanical body or workpiece from rigid collisions and improving operational safety and physical interaction adaptability.
[0030] However, the limitation of a single compliant control framework lies in its inability to independently handle the increasingly complex multi-tasking requirements of modern robotic systems. In real-world scenarios, robots are often required to accurately track the end effector trajectory while simultaneously maintaining waist posture balance to ensure overall stability, ensuring that the movement of each joint does not exceed physical limits, and avoiding self-collision risks in real time. These objectives often conflict with each other in the task space—for example, adjusting the arm posture to avoid sudden obstacles may compromise end effector tracking accuracy, or sacrificing obstacle avoidance flexibility to maintain waist stability. Traditional fixed-priority control laws or weighting mechanisms appear rigid in the face of such dynamic conflicts, making it difficult to demonstrate good global performance while ensuring a safety baseline.
[0031] Therefore, the core technical problem that this technical solution aims to solve lies in how to systematically overcome the triple constraints of computing power, security, and multi-task coordination.
[0032] First, we must fundamentally innovate the collision detection paradigm for high-degree-of-freedom robots, shifting the computational burden from the online real-time stage to the offline training stage, and transforming millisecond-level geometric calculations into microsecond-level network inference without sacrificing accuracy or even improving predictive capabilities.
[0033] Secondly, a unified and scalable whole-body control framework needs to be constructed, which can dynamically balance multiple competing tasks such as end-effector tracking, attitude maintenance, and obstacle avoidance within the velocity space, and strictly transform hard constraints such as collision distance and joint limits into mathematically provable safety guarantees to eliminate the risks of self-collision and exceeding limits.
[0034] Finally, at the execution level, a smooth transition from high-level speed commands to low-level torque outputs needs to be achieved. Vibration is suppressed through state prediction and active damping injection, ensuring that the final motion not only responds quickly to the upper-level decisions but also maintains physical compliance and torque stability. This fundamentally realizes the theoretical and engineering closed loop of autonomous, safe, and efficient robot operation in complex environments.
[0035] This application aims to address at least one of the technical problems existing in the prior art. To this end, this application proposes a robot motion control method, electronic device, and storage medium that can exhibit better global performance while ensuring a safety baseline.
[0036] The following explanation is based on the accompanying drawings.
[0037] Reference Figure 1 The robot motion control method according to the embodiments of this application may include: Step S101: Obtain the collision distance definition data, motion control task reference data, and motion control constraints corresponding to the target robot; Step S102: Real-time acquisition of motion parameters of the target robot to obtain measured motion parameters; Step S103: Based on motion control task reference data, measured motion parameters and collision distance definition data, perform multi-task analysis to obtain branch objective functions that match multiple branch tasks; Step S104: Integrate the branch objective functions of each branch task to obtain the multi-task comprehensive objective function; Step S105: Solve the multi-task integrated objective function based on the motion control constraints to obtain the desired motion control parameters; Step S106: Based on the measured motion parameters and the desired motion control parameters, perform impedance control analysis to obtain the target driving command; Step S107: Control the target robot to perform motion operations through target drive commands.
[0038] The robot motion control method of this application achieves precise control of robot motion through a series of steps, while ensuring operational safety and adaptability. This method not only considers the dynamics of robot motion but also takes into account various constraints that may be encountered when operating in complex environments.
[0039] In some embodiments, step S101 involves obtaining collision distance definition data, motion control task reference data, and motion control constraints corresponding to the target robot. It should be noted that this application embodiment requires obtaining collision distance definition data, motion control task reference data, and motion control constraints for the target robot. The collision distance definition data is obtained in advance through an offline collision detection network, providing the robot with information on collision points to avoid during operation. The motion control task reference data includes the task objectives the robot needs to perform, such as end-effector trajectory tracking and attitude maintenance. The motion control constraints include the physical limitations the robot must adhere to during operation, such as joint angle limitations and speed limits. This data provides the foundational information for the subsequent control process.
[0040] Reference Figure 2 According to some embodiments of this application, step S101, obtaining the collision distance definition data corresponding to the target robot, may include: Step S201: Obtain the collision distance regression network, the first type of representation modeling corresponding to various robot parts, and the second type of representation modeling corresponding to various environmental obstacles; wherein, robot parts refer to the components of the target robot, and environmental obstacles refer to the obstacles existing in the environment in which the target robot is located. Step S202: The encoder of the collision distance regression network performs encoding operations on the first type of representation modeling and the second type of representation modeling to construct a structural feature vector library. Step S203: Using the regressor of the collision distance regression network, collision distance regression prediction is performed based on the structural feature vector library to obtain collision distance definition data.
[0041] In some embodiments of this application, the process of obtaining collision distance definition data corresponding to the target robot is a key technology. It involves accurate geometric modeling of robot components and environmental obstacles, as well as using machine learning techniques to predict possible collision distances. This process not only improves the efficiency of collision detection but also enhances the robot's adaptability and safety in complex environments.
[0042] In some embodiments, step S201 involves obtaining a collision distance regression network, a first type of representation modeling corresponding to various robot components, and a second type of representation modeling corresponding to various environmental obstacles; wherein, robot components refer to the constituent parts of the target robot, and environmental obstacles refer to obstacles existing in the environment in which the target robot is located. It's important to note that acquiring the collision distance regression network, the first-class representation modeling for various robot components, and the second-class representation modeling for various environmental obstacles are fundamental to the entire process. Here, "robot components" refers to the parts that make up the robot, which can include arms, torso, legs, etc., while "environmental obstacles" refers to any object the robot might encounter in its operating environment, such as furniture, equipment, or other robots. The purpose of modeling these components and obstacles is to reproduce their geometry in the digital world for collision detection.
[0043] In the embodiments of this application, in order to obtain the collision distance definition data corresponding to the target robot, it is necessary to perform characterization modeling on the robot components and environmental obstacles. Here, "first type of characterization modeling" and "second type of characterization modeling" refer to two different models used to represent the geometric features of the robot components and environmental obstacles.
[0044] The first type of representation modeling is specifically designed for the component parts of the target robot. Because the shapes and structures of robot parts are relatively regular, this type of modeling can employ parametric geometric representations, such as combinations of basic shapes like cylinders and cuboids. These models can capture the main geometric features of robot parts in a compact form while maintaining sufficient accuracy to describe the relative positions and orientations between parts. The goal of this first type of representation modeling is to create a structured geometric representation for each part of the robot to facilitate subsequent collision detection and motion planning.
[0045] The second type of representation modeling targets obstacles in the environment. Compared to robot parts, environmental obstacles can have more complex and irregular shapes and structures. Therefore, this type of model may employ mesh-based representation methods, such as STL meshes or point clouds. These models approximate the actual geometry of the obstacle using a large number of discrete points or patches, thus enabling a detailed description of the obstacle's surface features. The goal of this second type of representation modeling is to create a high-precision geometric representation for each obstacle in the environment to ensure the accuracy of collision detection.
[0046] In step S202 of some embodiments, the encoder of the collision distance regression network performs encoding operations on the first type of representation modeling and the second type of representation modeling to construct a structural feature vector library. It should be noted that the encoder of the collision distance regression network performs encoding operations on the first type of representation modeling and the second type of mesh representation modeling to construct a structural feature vector library. The encoder's role is to convert the two representation models into a unified feature representation, namely structural feature vectors. These vectors capture key geometric information of robot parts and environmental obstacles and store them in a compact form in the feature vector library. The structural feature vector library provides the necessary input data for subsequent collision distance prediction.
[0047] Reference Figure 3 According to some embodiments of this application, step S202, through the encoder of the collision distance regression network, performs encoding operations on the first type of representation modeling and the second type of representation modeling to construct a structural feature vector library, and may include: Step S301: Uniformly sample the triangular mesh surface corresponding to the first type of representation modeling to obtain the first type of point cloud data; Step S302: Perform dynamic graph convolution operation on the first type of point cloud data to obtain the component structure feature vectors of various robot parts. Step S303: Uniformly sample the triangular mesh surface corresponding to the second type of representation modeling to obtain the second type of point cloud data; Step S304: Perform dynamic graph convolution operation based on the second type of point cloud data to obtain obstacle structure feature vectors of various environmental obstacles; Step S305: Integrate the component structure feature vectors of various robot parts and the obstacle structure feature vectors of various environmental obstacles to obtain a structure feature vector library.
[0048] In the embodiments of this application, the process of constructing the structural feature vector library is accomplished through the encoder of the collision distance regression network. This process involves encoding the geometric modeling of robot parts and environmental obstacles to extract their key structural features. This process is crucial for subsequent collision distance prediction because it provides the foundational data for training and inference of the collision distance regression network.
[0049] First, steps S301 and S303 describe the process of uniformly sampling the triangular mesh surfaces corresponding to the first and second type of representation modeling. Triangular meshing is a commonly used 3D geometric modeling method, forming a mesh by connecting a series of vertices; the mesh surface consists of many small triangular facets. Uniform sampling means selecting a certain number of points from these triangular mesh surfaces, where these points are evenly distributed across the entire surface to ensure that the sampled point cloud data represents the features of the entire surface. For robot parts and environmental obstacles, the first and second type point cloud data obtained through sampling provide the foundation for subsequent feature extraction.
[0050] Next, the dynamic graph convolution operation mentioned in steps S302 and S304 is a crucial step in feature extraction. Dynamic graph convolution is a graph neural network operation that performs convolution operations on graph-structured data. In this case, point cloud data can be viewed as a graph structure, where each point is a node in the graph, and the connections (edges) between nodes can be dynamically constructed based on the spatial proximity between points. Through dynamic graph convolution, local geometric features can be extracted from point cloud data, reflecting the local structural information around each point in the point cloud. Performing dynamic graph convolution operations on robot parts and environmental obstacles respectively yields their part structure feature vectors and obstacle structure feature vectors.
[0051] Finally, step S305 describes the process of integrating the component structural feature vectors of various robot parts and the obstacle structural feature vectors of various environmental obstacles to form a structural feature vector library. This structural feature vector library contains the structural features of all objects that need to be collision detected, and these feature vectors are the input data for the collision distance regression network. By integrating these feature vectors, a comprehensive database can be built to train the collision distance regression network, enabling it to learn the geometric relationships between different objects and predict their collision distances.
[0052] In summary, this process extracts key structural features from the triangular mesh model of robot parts and environmental obstacles through uniform sampling and dynamic graph convolution operations, and integrates these features into a structural feature vector library. This library provides the necessary input data for the collision distance regression network, enabling it to perform effective collision distance prediction. This method not only improves the efficiency of collision detection but also enhances the robot's adaptability and safety in complex environments by learning the geometric features of objects.
[0053] In step S203 of some embodiments, collision distance regression prediction is performed based on the structural feature vector library by the regressor of the collision distance regression network to obtain collision distance definition data.
[0054] It should be noted that the regressor in the collision distance regression network performs collision distance regression prediction based on a structural feature vector library to obtain collision distance definition data. The regressor uses data from the structural feature vector library to learn the geometric relationships between robot parts and environmental obstacles, and predicts the minimum collision distance between them accordingly. This data-driven prediction method can quickly provide estimates of collision distances, thus providing crucial safety information for robot motion control.
[0055] In summary, the first and second types of representation modeling target robot parts and environmental obstacles respectively, employing different geometric representation methods to capture their features. Through encoding and regression operations in a collision distance regression network, key geometric information can be extracted from these models and used to predict collision distances. This approach not only improves the efficiency of collision detection but also enhances the robot's adaptability and safety in complex environments.
[0056] Reference Figure 4 According to some embodiments of this application, step S203, which involves performing collision distance regression prediction based on a structural feature vector library to obtain collision distance delimitation data, may include: Step S401: For any two potential collision structures in the structural feature vector library, perform collision distance regression prediction to obtain the collision distance value between the two potential collision structures; wherein, the potential collision structures include various robot parts and various environmental obstacles. Step S402: Integrate the collision distance values between any two potential collision structures to obtain collision distance definition data.
[0057] According to the embodiments of this application, the core task of step S203 is to use the constructed structural feature vector library to predict the distances between all potential collision pairs through a regression network, forming complete collision distance demarcation data. This process transforms offline extracted geometric features into online usable safety constraint information, serving as a bridge connecting geometric perception and motion control.
[0058] In step S401 of some embodiments, collision distance regression prediction is performed on the structural feature vectors of any two potential collision structures in the structural feature vector library to obtain the collision distance value between the two potential collision structures; wherein, the potential collision structures include various robot parts and various environmental obstacles; It's important to note that "potential collision structures" can include both the robot's own links and joints, and environmental obstacles such as tables, walls, and tools within the workspace. For these structures, their feature vectors need to be combined pairwise to form input pairs for collision detection. Specifically, a feature vector from one robot component is randomly selected from the structural feature vector library, along with the feature vector from another robot component or environmental obstacle. These two vectors, along with their real-time relative transformation matrix, are then input into the regressor of the regression network. The regressor, through a nonlinear mapping of four fully connected layers, directly outputs the minimum collision distance between these two structures in their current relative pose—the collision spacing value. This distance is a scalar value representing the Euclidean distance between the two structural surfaces; a positive value indicates no collision, while a smaller value indicates a closer proximity to a collision. The "any two" combination means that all possible collision pairs need to be traversed. For example, a seven-DOF robot needs to detect self-collision combinations such as the upper arm and forearm, forearm and wrist, and wrist and torso, while simultaneously detecting mutual collision combinations between the robot and every surrounding obstacle to ensure no one is missed.
[0059] In step S402 of some embodiments, the collision distance values between any two potential collision structures are integrated to obtain collision distance definition data.
[0060] It should be noted that all the collision distance values calculated from pairwise combinations in step S401 are organized into collision distance definition data according to a fixed data structure. This integration is not a simple numerical accumulation, but rather the creation of an indexed lookup table or matrix, enabling the controller to quickly locate the distance information of specific collision pairs. For example, a hash table structure can be used, with the key being the combination identifier of "part A-part B" and the value being the corresponding collision distance; or a symmetric matrix can be constructed, with row and column indices corresponding to structure numbers, and matrix elements storing distance values. This integration method makes the collision distance definition data a readily available safety information database. The controller does not need to repeatedly call the network for inference during runtime; it only needs to query the distance value of the corresponding collision pair based on the current robot configuration, significantly reducing the amount of real-time computation.
[0061] In summary, through regression prediction and data integration, the abstract geometric information in the structural feature vector library is transformed into physical quantities that can be directly used for motion planning. The key to this process is that it transforms the complex geometric calculations that would otherwise be repeated in each control cycle into a one-time network inference and offline library construction operation. During online operation, the controller only needs to query the integrated collision distance definition data to quickly obtain the distance information of all key collision pairs, providing real-time input for upper-level constraint optimization. This design not only ensures the integrity and accuracy of collision detection but also provides the necessary data foundation for the constraint-based solution in the subsequent step S105, enabling the robot to efficiently perform multi-task operations while ensuring safety.
[0062] In step S102 of some embodiments, the motion parameters of the target robot are collected in real time to obtain the measured motion parameters; It should be noted that the embodiments of this application collect the motion parameters of the target robot in real time to obtain measured motion parameters. These measured motion parameters include information such as the current position and speed of each joint of the robot. They are indispensable real-time data in the control process, used to reflect the current state of the robot.
[0063] In step S103 of some embodiments, multi-task analysis is performed based on motion control task reference data, measured motion parameters and collision distance definition data to obtain branch objective functions that match multiple branch tasks; It should be noted that multi-task analysis is performed based on motion control task reference data, measured motion parameters, and collision distance definition data to obtain branch objective functions matching multiple branch tasks. This step decomposes high-level task objectives into actionable low-level objectives, with each branch objective function corresponding to a specific task, such as precise arm positioning or body balance. This decomposition allows each task to be optimized independently while also considering coordination with other tasks.
[0064] Reference Figure 5 According to some embodiments of this application, step S103 performs multi-task analysis based on motion control task reference data, measured motion parameters, and collision distance definition data to obtain branch objective functions matching multiple branch tasks, which may include: Step S501: Perform multi-task deviation analysis based on motion control task reference data and measured motion parameters to obtain motion control deviation terms for multiple branch tasks; Step S502: Based on the task type of the branch task, construct the corresponding branch objective function for the corresponding motion control deviation term.
[0065] According to the embodiments of this application, the core task of step S103 is to transform the high-level motion control objective into a computable mathematical form, laying the foundation for subsequent optimization solutions. This step receives three types of input data: motion control task reference data defines the ideal state that the robot needs to achieve, measured motion parameters reflect the robot's current actual state, and collision distance definition data provides quantitative information on safety constraints. Through comprehensive analysis of these data, the embodiments of this application can simultaneously establish independent evaluation criteria, i.e., branch objective functions, for multiple parallel subtasks.
[0066] In some embodiments, step S501 involves performing multi-task deviation analysis based on motion control task reference data and measured motion parameters to obtain motion control deviation terms for multiple branch tasks. It should be noted that multi-task deviation analysis is performed first. In this embodiment, for each branch task, the difference between its reference state and the measured state is calculated. Taking a wheeled humanoid robot as an example, branch tasks may include position tracking of the left-hand end effector, position tracking of the right-hand end effector, and maintenance of waist posture. For each task, this embodiment extracts the desired pose, velocity, and other information from the motion control task reference data, and simultaneously obtains data such as the current joint angle and angular velocity from the measured motion parameters. Then, through forward kinematics calculations and coordinate transformations, the actual state of each task in Cartesian space or joint space is obtained. The deviation term is the vector difference between the desired state and the actual state, such as the position error vector or posture error vector of the end effector. These deviation terms directly quantify the degree of completion of each task in the current state and serve as the direct basis for subsequent optimization.
[0067] In step S502 of some embodiments, based on the task type of the branch task, a corresponding branch objective function is constructed for the corresponding motion control deviation term.
[0068] It should be noted that, based on the task type of each branch task, a corresponding branch objective function is constructed for its motion control deviation term. The task type determines the calculation method of the deviation and the form of the objective function. For position tracking tasks, the objective function typically uses the quadratic norm of the deviation, i.e., the sum of squared errors, to penalize larger tracking errors; for attitude maintenance tasks, attitude errors may be represented by rotation matrices or quaternions, and a special metric function is designed. The role of collision distance definition data at this stage is to provide a quantitative indicator of safety constraints. Although it does not directly constitute task deviation, it affects the weight of the objective function or the feasibility judgment. The process of constructing the objective function is essentially transforming the control requirements of the physical world into cost terms in a mathematical optimization problem, preparing for the integration and synthesis of the objective function in step S104.
[0069] It should be understood that the importance of this analytical process in the embodiments of this application lies in its decomposition of complex whole-body coordination tasks into independently computable yet interconnected mathematical expressions. Each branch objective function clearly corresponds to a specific operational requirement, enabling the subsequent optimizer to clearly identify the differences in importance of each task and achieve dynamic priority allocation through weight adjustment. Simultaneously, the precise calculation of the deviation term ensures the controller's sensitivity to task execution effects; any minute tracking error can be promptly captured and fed back into the optimization process, thereby guaranteeing the accuracy of robot motion. This structured analytical method also provides a foundation for handling task conflicts: when the deviation trends of different tasks contradict each other, their respective objective functions will compete in the comprehensive optimization, and the solver will ultimately provide a balanced solution based on constraints and weight configuration.
[0070] Reference Figure 6 According to some embodiments of this application, the branch tasks include a left-hand pose control task, a right-hand pose control task, and a waist posture stabilization control task. Step S103 performs multi-task analysis based on motion control task reference data, measured motion parameters, and collision distance definition data to obtain branch objective functions matching multiple branch tasks, which may include: Step S601: Based on the motion control task reference data, measured motion parameters and collision distance definition data, perform left-hand pose control analysis to obtain the left-hand control objective function corresponding to the left-hand pose control task. Step S602: Based on the motion control task reference data, measured motion parameters and collision distance definition data, perform right-hand pose control analysis to obtain the right-hand control objective function corresponding to the right-hand pose control task; Step S603: Based on the motion control task reference data, measured motion parameters and collision distance definition data, perform waist posture stability control analysis to obtain the waist control objective function corresponding to the waist posture stability control task.
[0071] According to the embodiments of this application, the specific analytical process for the three core branch tasks of a wheeled humanoid robot is described in detail. These three tasks together constitute the basis of whole-body coordinated movement. Their analytical processes are both independent and interconnected, and each requires deviation calculation and objective function construction based on the same external input data.
[0072] In step S601 of some embodiments, left-hand pose control is analyzed based on motion control task reference data, measured motion parameters and collision distance definition data to obtain the left-hand control objective function corresponding to the left-hand pose control task. It should be noted that in the left-hand pose control analysis, this embodiment first extracts the desired pose of the left-hand end effector from the motion control task reference data, including three-dimensional spatial coordinates and three-dimensional posture information. Combining the joint angle data from the measured motion parameters, the actual pose of each link of the left arm is calculated through robot forward kinematics, thereby deducing the current actual pose of the left hand. The deviation analysis stage calculates the six-dimensional error vector between the desired pose and the actual pose, where the three-dimensional position error is measured using Euclidean distance, and the three-dimensional posture error is calculated using rotation matrix or quaternion differences. Collision distance definition data plays a crucial role in this process: when the collision distance between the left hand and other parts of itself (such as the torso or right arm) or environmental obstacles is less than a preset threshold, this embodiment dynamically adjusts the weights of the left-hand control objective function or introduces an obstacle avoidance sub-term, forcing the left-hand movement to prioritize safety constraints. The final generated left-hand control objective function is typically expressed as a quadratic form of the pose deviation, ensuring strong penalties for large errors while also considering the coordinated optimization of position and posture.
[0073] In step S602 of some embodiments, right-hand pose control is analyzed based on motion control task reference data, measured motion parameters and collision distance definition data to obtain the right-hand control objective function corresponding to the right-hand pose control task; It should be noted that the right-hand pose control analysis is symmetrical to the left-hand logic, but has unique coordination considerations. This embodiment also obtains the desired right-hand pose from the task reference data and calculates the actual pose by combining it with the current joint state, resulting in a six-dimensional deviation vector. Since the two hands may work collaboratively or have overlapping workspaces, the right-hand analysis process must additionally consider its relative relationship with the left hand. The collision distance definition data here includes not only the self-collision distance between the right hand and the environment, and between the right arm and the left arm, but also the mutual collision distance between the two hands. When the two hands approach each other, even if their respective pose tracking errors are small, the collision distance constraint will force a modification to the right-hand objective function, introducing a penalty term for the distance between the two hands to avoid collisions caused by excessive pursuit of individual trajectory accuracy. This design ensures the safety of the two end effectors during collaborative operation, allowing the right-hand control objective function to implicitly possess a global coordination response capability while pursuing its own tracking accuracy.
[0074] In step S603 of some embodiments, waist posture stabilization control is analyzed based on motion control task reference data, measured motion parameters and collision distance definition data to obtain the waist control objective function corresponding to the waist posture stabilization control task.
[0075] It should be noted that the waist posture stabilization control analysis differs from the previous two methods. Its objective is to maintain the overall balance of the robot rather than spatial positioning. This embodiment extracts the desired waist posture from the motion control task reference data, typically the pitch and roll angles relative to the horizontal plane, to ensure the robot's center of gravity remains stable during movement or operation. Combining the waist joint angles and inertial measurement unit data from the measured motion parameters, the three-dimensional angular deviation between the current actual waist posture and the desired posture is calculated. Since waist movement directly affects the reachability of the arms and the overall stability of the robot, the construction of its objective function must specifically consider dynamic balance constraints. The collision distance definition data acts as an indirect constraint here: when collision constraints force the arms to make large obstacle avoidance movements, the waist posture deviation may increase. In this case, the waist control objective function will actively sacrifice some posture accuracy through weight adjustment to prioritize ensuring the arms complete the obstacle avoidance task. This analytically generated waist control objective function focuses on posture deviation but maintains dynamic coupling with the arm objective function through a weighting mechanism, ensuring the coordination and stability of the overall robot motion.
[0076] It should be understood that the parsing processes of the three branch tasks share the same input data source, but each is processed independently to generate its own objective function. This parallel processing mechanism enables the system to clearly distinguish the error sources of different tasks, providing an independently adjustable cost term for the integration of the comprehensive objective function in step S104. Simultaneously, the collision distance defining data applies uniformly to the three parsing processes, ensuring that each objective function implicitly incorporates safety constraints during construction, laying a mathematical foundation that balances accuracy and safety for subsequent optimization solutions.
[0077] In some embodiments, step S104 integrates the branch objective functions of each branch task to obtain a multi-task comprehensive objective function; It should be noted that integrating the objective functions of each branch task yields a multi-task composite objective function. This step merges all branch objective functions into a single, unified objective function that reflects the overall requirements of all tasks. During the integration process, the priorities and interactions between different tasks need to be considered to ensure that the final objective function comprehensively reflects the needs of all tasks.
[0078] Reference Figure 7 According to some embodiments of this application, step S104 integrates the branch objective functions of each branch task to obtain a multi-task comprehensive objective function, which may include: Step S701: Determine the real-time priority information of each branch task based on the task type of each branch task; Step S702: Based on the real-time priority information of each branch task, determine the real-time weight of the task function of each multi-task comprehensive objective function; Step S703: Based on the real-time weights of each task function, integrate the branch objective functions of each branch task to obtain the real-time multi-task comprehensive objective function.
[0079] It should be noted that the core function of step S104 is to integrate multiple branch objective functions into a single comprehensive objective function, enabling the optimization solver to handle all tasks uniformly. The key to this process lies in dynamically determining the weight of each task, ensuring that the system can flexibly adjust priorities according to real-time operating conditions, and avoiding the rigid performance of traditional fixed-weight mechanisms when task conflicts occur.
[0080] In some embodiments, step S701 involves determining the real-time priority information of each branch task based on the task type of each branch task. It should be noted that the embodiments of this application determine real-time priority information based on the task type of each branch task. Task type distinguishes the essential attributes of different control objectives. For example, the left-hand pose control task involves precise positioning of the end effector, requiring high tracking accuracy; the right-hand pose control task may involve collaborative operation, requiring both its own accuracy and hand-eye coordination; the waist posture stabilization control task focuses on overall machine balance and is sensitive to dynamic disturbances. The determination of real-time priority information is not a static preset, but rather a dynamic evaluation based on the current state: when the collision distance boundary data shows that a robotic arm is about to approach an obstacle, the priority of the corresponding pose control task is dynamically increased, forcing the system to prioritize obstacle avoidance; when the end-effector tracking error continues to increase, the priority of the tracking task is correspondingly increased to correct the trajectory. This mechanism transforms the abstract "importance" into a quantifiable priority value by real-time monitoring of the task execution status and safety boundaries.
[0081] In some embodiments, step S702 involves determining the real-time weight of the task function for each multi-task integrated objective function based on the real-time priority information of each branch task. It should be noted that the real-time priority information obtained in step S701 is mapped to specific task function weights. The mapping process follows the basic principle that the higher the priority, the greater the weight, but normalization is required to ensure a reasonable weight distribution. For example, if the priorities of the three tasks—left hand, right hand, and waist—are [0.5, 0.3, 0.2] after evaluation, this embodiment may convert them into a weight vector of [0.5, 0.3, 0.2] or, after normalization, [0.45, 0.35, 0.2]. The specific conversion function can be designed according to the control performance requirements. The weight allocation directly affects the optimization tendency of the comprehensive objective function: the deviation term corresponding to the high-weight task dominates the total cost, and the solver will prioritize reducing the error of this term; the error of the low-weight task is allowed to exist within a certain range. When two robotic arms need to pass through a narrow space, even if the tracking errors of both are small, the collision distance constraint will increase the priority of the obstacle avoidance subtask of the two arms, making its weight temporarily exceed that of the pure tracking task, thereby ensuring that the optimization direction of the comprehensive objective function first meets the safety requirements.
[0082] In step S703 of some embodiments, based on the real-time weights of each task function, the branch objective functions of each branch task are integrated to obtain a real-time multi-task comprehensive objective function.
[0083] It should be noted that the branch objective functions are weighted and integrated based on the real-time weights of each task. Specifically, a weighted summation method is used: each branch objective function is multiplied by its corresponding task function's real-time weight, and then summed to form a single scalar function. For example, the left-hand control objective function J_left, the right-hand control objective function J_right, and the waist control objective function J_waist are multiplied by their respective weights w_left, w_right, and w_waist, resulting in the combined objective function J_total = w_left × J_left + w_right × J_right + w_waist × J_waist. This combined function serves as the cost in the optimization problem, and the solver searches for the joint velocity command that minimizes J_total under constraints. The essence of weighted integration is to transform multi-objective optimization into single-objective optimization, allowing tasks to compete and coordinate at the mathematical level. As the weights change dynamically, the surface shape of the combined objective function changes accordingly, guiding the solver to search for the optimal solution in the direction best suited to the current state under different operating conditions. The final output expected parameters naturally balance accuracy, stability, and safety.
[0084] It should be understood that the entire dynamic weight integration mechanism effectively solves the coordination problem of multi-task control. Traditional methods, due to fixed weights, make it difficult to flexibly trade off between tracking accuracy and obstacle avoidance safety; this solution, by evaluating task priorities and adjusting weights in real time, enables the system to fully optimize tracking performance when the safety boundary is relaxed, and automatically switch to a safety-priority mode when approaching obstacles, thus achieving adaptive optimization of global performance.
[0085] In some embodiments, step S105 involves solving the multi-task integrated objective function based on motion control constraints to obtain the desired motion control parameters. It should be noted that the multi-task integrated objective function is solved based on motion control constraints to obtain the desired motion control parameters. This step involves solving the integrated objective function using an optimization algorithm while satisfying all motion control constraints. This process may involve complex mathematical calculations, but the goal is to find an optimal solution, i.e., a set of desired parameters, that enables the robot to complete as many tasks as possible while satisfying all constraints.
[0086] According to some embodiments of this application, step S105, which solves the multi-task integrated objective function based on motion control constraints to obtain the desired motion control parameters, may include: Construct the constraint barrier function corresponding to each motion control constraint condition; Based on the constraint barrier function, the desired motion control parameters are obtained by solving the multi-task integrated objective function with the goal of minimizing the motion control deviation term.
[0087] It should be noted that the core task of step S105 is to find the optimal solution for the multi-task integrated objective function while satisfying all physical constraints, thereby generating safe and efficient motion control desired parameters. This process transforms the originally abstract safety requirements into rigorously verifiable mathematical constraints in the optimization problem by introducing a control barrier function.
[0088] It should be noted that constructing the constraint barrier function corresponding to each motion control constraint is fundamental to this step. Motion control constraints may include upper and lower limits for joint angles, upper and lower limits for joint velocities, self-collision distance thresholds, and human-machine collision distance thresholds. For joint limit constraints, the barrier function is defined as a monotonic function of the joint angle and its limit value, in the form of h(q) = q_max - q or h(q) = q - q_min. When the joint angle approaches its limit, the function value approaches zero. For collision distance constraints, the barrier function uses the difference between the collision distance Edistance and the safety threshold, i.e., h(x) = Edistance - δ_safe. When the distance is greater than the threshold, the function value is positive, indicating a safe state. The construction of each barrier function follows a unified principle: the function value is positive within the safe set, zero at the boundary, and negative outside the safe set, thus providing a differentiable constraint index for the optimization problem.
[0089] It should be noted that the optimization process based on constraint barrier functions essentially combines the multi-task integrated objective function with barrier function constraints to form a constrained quadratic programming problem. The solution objective, "minimizing the motion control deviation term," corresponds to minimizing the value of the integrated objective function, i.e., minimizing the tracking errors of each branch task and improving performance indicators such as end-effector positioning accuracy and waist posture stability. Simultaneously, all barrier functions are embedded in the optimization problem in the form of inequality constraints. For example, some embodiments require that the product of the derivative of each barrier function and the joint velocity satisfy a specific inequality. The physical meaning of this inequality is that the generated joint velocity commands must drive the system state to change in the direction of increasing the barrier function value, i.e., moving away from the danger boundary. When searching for the optimal solution, the solver can only explore the velocity space region that satisfies all inequalities; any solution that violates the constraints is directly excluded, thus ensuring that the output expected parameters will necessarily keep the robot in a safe state.
[0090] In some implementations, the optimization algorithm can perform one numerical iteration within each control cycle during the specific solution process. Inputs may include the current joint states `cur_q` and `cur_dq`, the weight matrix of the multi-task integrated objective function, and the gradient information of all barrier functions. For example, the solver first linearizes the barrier function constraints at the current state, forming a locally feasible velocity space polyhedron, and then searches within this polyhedron for the joint velocity `dq_cmd` that minimizes the quadratic objective function. This process is computationally efficient; a standard quadratic programming solver can complete it in microseconds. The resulting desired motion control parameters `dq_cmd` achieve optimal tracking of the multi-task objective while strictly satisfying joint constraints and collision avoidance requirements. These parameters are transmitted as velocity commands to the underlying impedance controller, guiding the robot's movement and completing a full closed loop from constraint perception and optimization decision-making to safe execution.
[0091] In some embodiments, step S106 involves performing impedance control analysis based on measured motion parameters and desired motion control parameters to obtain target driving commands. It should be noted that the target driving commands are obtained by impedance control analysis based on measured motion parameters and desired motion control parameters. Impedance control is a control method that simulates physical impedance (such as springs and dampers), allowing the robot to exhibit compliance in contact with the environment. Through impedance control analysis, the embodiments of this application can calculate a set of target driving commands that will guide the robot on how to adjust its motion to adapt to the environment while maintaining task execution.
[0092] Reference Figure 8 According to some embodiments of this application, before step S106, which involves impedance control analysis based on measured motion parameters and desired motion control parameters to obtain the target driving command, the following may also be included: Step S801: Perform initial Kalman filtering on the measured motion parameters to obtain the measured reliable parameters; Step S802: The measured reliable parameters are processed using a dynamic model to make a forward prediction of the motion trend of the target robot and obtain a rough estimate of the motion acceleration. Step S803: Perform advanced Kalman filtering on the coarse estimate of motion acceleration to obtain the fine estimate of motion acceleration; In step S106, impedance control analysis is performed based on the measured motion parameters and the desired motion control parameters to obtain the target driving command, which may include: Step S804: Based on the measured motion parameters, expected motion control parameters, and precise motion acceleration estimates, impedance control analysis is performed to obtain the target driving command.
[0093] It should be noted that the multi-stage Kalman filtering process introduced before impedance control analysis aims to solve the core challenge of acceleration estimation. The joint velocity signals in the measured motion parameters originate from encoders or resolvers, inherently carrying quantization noise and electromagnetic interference. If acceleration is directly calculated using numerical differentiation, high-frequency noise is drastically amplified, leading to severe distortion of the acceleration signal, rendering it unusable for accurate dynamic compensation and state prediction. Therefore, a progressive estimation process must be designed to extract a smooth and physically consistent acceleration estimate from the noise-contaminated signal.
[0094] It should be noted that the initial Kalman filter performs the first stage of noise reduction on the original measured motion parameters. This filter treats joint position and velocity as state variables, uses a simple kinematic model (such as the assumption of uniform velocity) to predict the state at the next moment, and then weights and fuses the actual observed position and velocity values with the predicted values to filter out measurement noise and output reliable measured parameters. The core of this step is to sacrifice a small amount of real-time performance for a significant improvement in the signal-to-noise ratio, ensuring that subsequent processing is based on a clean input.
[0095] On the other hand, the dynamic model, which processes reliable measured parameters for forward prediction, introduces physical constraints to guide state estimation. The robot dynamic model describes the precise relationship between force, mass, inertia, Coriolis force, and acceleration. Using reliable position and velocity after initial filtering, the model can predict the acceleration trend of the robot under external torque, obtaining a rough estimate of the motion acceleration. This estimate closely matches the actual dynamic behavior, but due to the model's simplification assumptions (such as inaccurate friction modeling and failure to consider flexible deformation), systematic errors still exist. The significance of forward prediction lies in providing a "baseline" for acceleration estimation that conforms to physical laws, avoiding unreasonable estimates that violate dynamics from purely data-driven methods.
[0096] Furthermore, the advanced Kalman filter is a secondary fusion of dynamic prediction and observation residuals. This filter receives a coarse estimate of motion acceleration from the dynamic model as the prediction input, and simultaneously calculates the residual—the difference between the model-predicted velocity and the actual velocity—using reliable measured parameters. By dynamically adjusting the weights through the Kalman gain, the filter corrects the acceleration estimate at each step, ensuring it both conforms to the dynamic trend and is faithful to actual observations. The gain design of the advanced filter typically differs from that of the initial filter, focusing more on a rapid response to model errors to capture the subtle changes in true acceleration. The final output, a refined estimate of motion acceleration, is the optimal estimate that integrates prior model knowledge and posterior observation information, exhibiting the smallest error covariance, the highest signal-to-noise ratio, and consistency with the robot's actual dynamic behavior.
[0097] Incorporating precise acceleration estimation into the impedance control analysis stage is crucial for achieving forward-looking control. The impedance controller not only needs to track the desired velocity and position but also predict future states to compensate for system delays. Using accurate acceleration estimation, the controller can pre-calculate the desired joint position at the next moment through Runge-Kutta integral (RK4), allowing for earlier response to motor torque commands and significantly improving dynamic tracking performance. Simultaneously, the acceleration estimation is used in the calculation of dynamic compensation terms, accurately offsetting nonlinear disturbances such as gravity and inertial forces, enabling the robot to exhibit ideal virtual impedance characteristics. Without this precise estimation, directly using noisy acceleration will introduce additional disturbances into dynamic compensation, thus reducing control accuracy and stability.
[0098] The entire multi-stage filtering and prediction process essentially breaks down the state estimation problem into three levels: "observation denoising—physical prediction—error correction." Initial filtering ensures clean input, the dynamic model provides a reasonable trend, and advanced filtering achieves fine calibration, ultimately providing high-quality acceleration information for impedance control. This layered design not only improves the accuracy of acceleration estimation but also makes the system doubly robust to model uncertainties and sensor noise, ensuring smooth and accurate target-driven commands even under complex conditions, achieving safe, compliant, and rapidly responsive coordinated body motion.
[0099] In some embodiments, step S107 involves controlling the target robot to perform motion operations via target drive commands.
[0100] It should be noted that target-driven commands control the target robot to perform motion operations. This step involves sending the calculated target-driven commands to the robot's actuators, such as motors or hydraulic systems, to drive the robot to move in the desired manner. This process is the final output of the entire control flow, and it directly affects the robot's operational performance.
[0101] This application provides a safe, efficient, and highly adaptable motion control strategy for robots through precise collision detection, multi-task optimization, and impedance control. It not only ensures the robot's safe operation in complex environments but also allows for flexible adjustment of the robot's motion according to task requirements and environmental changes, thereby improving the robot's operational performance and adaptability.
[0102] Reference Figure 9 , Figure 9 This illustration shows the hardware structure of an electronic device according to another embodiment. The electronic device may include: The processor 901 can be implemented using a general-purpose CPU (Central Processing Unit), microprocessor, application-specific integrated circuit (ASIC), or one or more integrated circuits, and is used to execute relevant programs to implement the technical solutions provided in the embodiments of this application. The memory 902 can be implemented as a read-only memory (ROM), a static storage device, a dynamic storage device, or a random access memory (RAM). The memory 902 can store the operating system and other application programs. When the technical solutions provided in the embodiments of this specification are implemented through software or firmware, the relevant program code is stored in the memory 902 and is called and executed by the processor 901 to execute the robot motion control method of the embodiments of this application. The input / output interface 903 is used to implement information input and output; The communication interface 904 is used to enable communication and interaction between this device and other devices. Communication can be achieved through wired means (such as USB, Ethernet cable, etc.) or wireless means (such as mobile network, WIFI, Bluetooth, etc.). Bus 905 transmits information between various components of the device (e.g., processor 901, memory 902, input / output interface 903, and communication interface 904); The processor 901, memory 902, input / output interface 903, and communication interface 904 are connected to each other within the device via bus 905.
[0103] This application also provides a computer program product, which includes a computer program. A processor of a computer device reads and executes the computer program, causing the computer device to perform the robot motion control method described above.
[0104] The terms “first,” “second,” “third,” “fourth,” etc. (if present) in this disclosure and the foregoing drawings are used to distinguish similar objects and are not necessarily used to describe a particular order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this disclosure described herein can be implemented, for example, in orders other than those illustrated or described herein. Furthermore, the terms “comprising” and “including,” and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that includes 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 apparatuses.
[0105] It should be understood that in this disclosure, "at least one item" means one or more, and "more than one" means two or more. "And / or" is used to describe the relationship between related objects, indicating that three relationships can exist. For example, "A and / or B" can represent three cases: only A exists, only B exists, and both A and B exist simultaneously, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, or c can represent: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, and c can be single or multiple.
[0106] It should be understood that in the description of the embodiments of this application, "multiple" means two or more, "greater than", "less than", "exceeding" etc. are understood to exclude the number itself, and "above", "below", "within" etc. are understood to include the number itself.
[0107] In the several embodiments provided in this disclosure, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces, indirect coupling or communication connection between apparatuses or units, and may be electrical, mechanical, or other forms.
[0108] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0109] Furthermore, the functional units in the various embodiments of this disclosure can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0110] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this disclosure, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this disclosure. The aforementioned storage medium may include: a USB flash drive, a portable hard drive, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, and other media capable of storing program code.
[0111] It should also be understood that the various implementation methods provided in this application can be combined arbitrarily to achieve different technical effects.
[0112] The above is a detailed description of the embodiments of this disclosure. However, this disclosure is not limited to the above embodiments. Those skilled in the art can make various equivalent modifications or substitutions without departing from the spirit of this disclosure. All such equivalent modifications or substitutions are included within the scope defined by the claims of this disclosure.
Claims
1. A robot motion control method, characterized in that, include: Acquire collision distance definition data, motion control task reference data, and motion control constraints for the target robot; The motion parameters of the target robot are collected in real time to obtain the measured motion parameters; Based on the motion control task reference data, the measured motion parameters, and the collision distance definition data, multi-task analysis is performed to obtain branch objective functions that match multiple branch tasks; By integrating the objective functions of each of the aforementioned branch tasks, a multi-task comprehensive objective function is obtained; The multi-task integrated objective function is solved based on the motion control constraints to obtain the desired motion control parameters; Impedance control analysis is performed based on the measured motion parameters and the desired motion control parameters to obtain the target driving command; The target robot is controlled to perform motion operations by the target driving command; The acquisition of collision distance definition data corresponding to the target robot includes: The collision distance regression network, the first type of representation modeling corresponding to various robot parts, and the second type of representation modeling corresponding to various environmental obstacles are obtained; wherein, the robot parts refer to the components of the target robot, and the environmental obstacles refer to the obstacles existing in the environment in which the target robot is located; The encoder of the collision distance regression network performs encoding operations on the first type of representation modeling and the second type of representation modeling to convert the first type of representation modeling and the second type of representation modeling into a unified feature representation and construct a structural feature vector library. The collision distance regression network uses a regressor to perform collision distance regression prediction based on the structural feature vector library to obtain the collision distance definition data; wherein, the regressor is used to predict the collision distance based on the geometric relationship between the robot component and the environmental obstacle.
2. The method according to claim 1, characterized in that, The encoder of the collision distance regression network performs encoding operations on the first type of representation modeling and the second type of representation modeling to construct a structural feature vector library, including: Uniform sampling is performed on the triangular mesh surface corresponding to the first type of representation modeling to obtain the first type of point cloud data; Based on the first type of point cloud data, a dynamic graph convolution operation is performed to obtain the component structure feature vectors of various robot components. Uniform sampling is performed on the triangular mesh surface corresponding to the second type of representation modeling to obtain the second type of point cloud data; Based on the second type of point cloud data, dynamic graph convolution operation is performed to obtain obstacle structure feature vectors of various environmental obstacles; The structural feature vector library is obtained by integrating the component structural feature vectors of various robot parts and the obstacle structural feature vectors of various environmental obstacles.
3. The method according to claim 1, characterized in that, The collision distance regression prediction based on the structural feature vector library, to obtain the collision distance definition data, includes: For any two potential collision structures in the structural feature vector library, collision distance regression prediction is performed to obtain the collision spacing value between the two potential collision structures; wherein, the potential collision structures include various robot components and various environmental obstacles; The collision distance definition data is obtained by integrating the collision spacing values between any two potential collision structures.
4. The method according to claim 1, characterized in that, The process involves multi-task analysis based on the motion control task reference data, the measured motion parameters, and the collision distance definition data to obtain branch objective functions matching multiple branch tasks, including: Based on the motion control task reference data and the measured motion parameters, multi-task deviation analysis is performed to obtain motion control deviation items for multiple branch tasks; Based on the task type of the branch task, a corresponding branch objective function is constructed for the corresponding motion control deviation term.
5. The method according to claim 4, characterized in that, The integration of the branch objective functions of each of the branch tasks yields a multi-task comprehensive objective function, including: Based on the task type of each branch task, determine the real-time priority information of each branch task; Based on the real-time priority information of each branch task, the real-time weight of the task function of each multi-task comprehensive objective function is determined. Based on the real-time weights of each task function, the branch objective functions of each branch task are integrated to obtain a real-time multi-task comprehensive objective function.
6. The method according to claim 4, characterized in that, The process of solving the multi-task integrated objective function based on motion control constraints yields the desired motion control parameters, including: Construct the constraint barrier function corresponding to each of the aforementioned motion control constraints; Based on the constraint barrier function, with minimizing the motion control deviation term as the solution objective, the multi-task integrated objective function is solved to obtain the desired motion control parameters.
7. The method according to claim 1, characterized in that, Before performing impedance control analysis based on the measured motion parameters and the desired motion control parameters to obtain the target drive command, the method further includes: The measured motion parameters are processed by a first-order Kalman filter to obtain reliable measured parameters. The measured reliable parameters are processed using a dynamic model to make a forward prediction of the motion trend of the target robot and obtain a coarse estimate of the motion acceleration. An advanced Kalman filter is applied to the coarse estimate of motion acceleration to obtain a fine estimate of motion acceleration. The impedance control analysis based on the measured motion parameters and the desired motion control parameters to obtain the target driving command includes: Impedance control analysis is performed based on the measured motion parameters, the desired motion control parameters, and the precise value of the motion acceleration to obtain the target driving command.
8. An electronic device, characterized in that, include: The system includes a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the robot motion control method as described in any one of claims 1 to 6.
9. A computer-readable storage medium, characterized in that, The storage medium stores a program that is executed by a processor to implement the robot motion control method as described in any one of claims 1 to 6.
Citation Information
Patent Citations
Mechanical arm joint space trajectory planning method based on model prediction path integration
CN118752484A
Collision identification method and device of window cleaning robot
CN120686849A
