Real-time planning method and system for multi-joint collaboration and path optimization of industrial humanoid robot
By dynamically dividing contact responsibilities and spatially adjusting joint groups, constructing differentiated feasible domains and performing collaborative path planning, the problems of contact force fluctuations and path non-executability in multi-joint path planning are solved, thereby improving the operational stability and real-time performance of industrial humanoid robots.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- SHANGHAI GUOKE EMBODIED INTELLIGENT ROBOT CO LTD
- Filing Date
- 2026-02-05
- Publication Date
- 2026-05-26
AI Technical Summary
Existing multi-joint path planning methods do not distinguish the functional roles of joints in contact states, leading to mutual interference between contact-related joints and spatial adjustment joints. Path planning is not effectively integrated with contact constraints, which can easily cause contact force fluctuations and path non-executability, making it difficult to meet the stability and real-time requirements of industrial applications.
By dynamically dividing the contact responsibility joint group and the spatial adjustment joint group, differentiated motion feasible domains are constructed respectively. A collaborative path planning method is adopted to generate motion paths for each joint of the robot. A dynamic adjustment mechanism ensures smooth path connection when the contact state changes.
It effectively reduces the risk of end contact force fluctuation and micro-slippage, improves contact stability, avoids excessive shrinkage of planning space, improves the success rate of path planning, and meets the complex working conditions of narrow space and high-precision assembly.
Smart Images

Figure CN122077611A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of industrial robot control technology, and more specifically, to a real-time planning method and system for multi-joint collaboration and path optimization of industrial humanoid robots. Background Technology
[0002] Industrial humanoid robots are widely used in modern manufacturing for complex tasks such as precision gripping, insertion, fitting, and collaborative assembly. These tasks often require the robot's end effector to make stable contact with the workpiece or environment, and then complete posture adjustment, spatial obstacle avoidance, and redundancy degree of freedom elimination through multi-joint collaboration.
[0003] Existing multi-joint path planning methods have significant shortcomings in contact states: they fail to distinguish the functional roles of joints and impose uniform motion constraints and optimization objectives on all joints, leading to mutual interference between contact-related joints and spatially adjustable joints; path planning is still based on solving the overall free space and does not effectively integrate contact constraints into the feasible domain modeling, which can easily cause contact force fluctuations, micro-slippage, or unexecutable paths; in scenarios such as confined spaces and high-precision assembly, uniformly tightening or widening the range of motion of all joints results in excessive shrinkage of the planning space or insufficient real-time performance, making it difficult to meet the dual requirements of stability and real-time performance in industrial applications. Summary of the Invention
[0004] In response, this application provides a real-time planning method and system for multi-joint collaboration and path optimization of industrial humanoid robots, so as to at least partially solve the above-mentioned technical problems.
[0005] This application provides a real-time planning method for multi-joint collaboration and path optimization in industrial humanoid robots, including the following steps:
[0006] Acquire the robot's current joint motion state, the current pose of the end effector, and the target motion information of the task to be performed;
[0007] The system acquires contact status data between the end effector and the outside world, and determines whether the robot is in an end-effector contact state based on the contact status data.
[0008] When determining that the end effector is in contact state, based on the robot's kinematic model, the multiple joints involved in the movement are dynamically divided into a contact responsibility joint group and a spatial adjustment joint group. The contact responsibility joint group refers to the set of joints that have a direct impact on the stability of the end effector's contact state with the outside world and are located near the end effector. The spatial adjustment joint group refers to the set of joints that are mainly used for overall pose adjustment, obstacle avoidance, and redundancy degree of freedom resolution.
[0009] Based on the division results of the contact responsibility joint group and the spatial adjustment joint group, differentiated kinematic feasible domains are constructed for the contact responsibility joint group and the spatial adjustment joint group respectively; wherein, the kinematic feasible domain constructed for the contact responsibility joint group includes: the range of joint angle changes obtained by kinematic mapping transformation after applying contact constraints centered on the contact point of the end effector in the task space; the kinematic feasible domain constructed for the spatial adjustment joint group includes: the range of joint angle changes obtained by adjusting the collision constraints while retaining the inherent joint motion range of the spatial adjustment joint group;
[0010] Based on the differentiated motion feasible domain, collaborative path planning is performed on the contact responsibility joint group and the spatial adjustment joint group to generate motion paths for each joint of the robot.
[0011] In one possible embodiment, the joint groups are dynamically divided based on the robot's kinematic model, specifically including: calculating the sensitivity coefficient of each joint to the pose change of the end effector based on the robot's kinematic model; and based on the calculated sensitivity coefficient and a preset sensitivity coefficient threshold, dividing the joints with sensitivity coefficients greater than or equal to the sensitivity coefficient threshold into the contact responsibility joint group, and dividing the joints with sensitivity coefficients less than the sensitivity coefficient threshold into the spatial adjustment joint group.
[0012] In one possible embodiment, the contact constraints upon which the feasible motion domain for the contact responsibility joint group is based include at least one of the following: displacement constraints on the end effector along the contact normal, displacement constraints along the contact tangent, and motion rate constraints along the contact tangent.
[0013] In one possible embodiment, collaborative path planning is performed on the contact responsibility joint group and the spatial adjustment joint group, specifically including: planning the motion path of the contact responsibility joint group within the feasible motion domain corresponding to the contact responsibility joint group with the goal of minimizing end-effector contact force fluctuation; and planning the motion path of the spatial adjustment joint group within the feasible motion domain corresponding to the spatial adjustment joint group with the goal of at least one of overall obstacle avoidance, path smoothing, and redundancy degree of freedom reduction, and the motion path of the spatial adjustment joint group is coordinated with the motion path of the contact responsibility joint group to achieve the overall motion goal of the end effector.
[0014] In one possible embodiment, the motion path of the contact responsibility joint group is planned using a spline curve-based interpolation method, wherein the determination of the control points is constrained by the motion feasible region corresponding to the contact responsibility joint group.
[0015] In one possible embodiment, the motion path of the spatially adjustable joint group is planned using a quadratic programming method, the objective function of which includes at least an obstacle avoidance penalty term, a joint motion smoothness penalty term, and a redundant degree of freedom resolution penalty term.
[0016] In one possible embodiment, during the robot's execution of the motion path, changes in the contact state data are monitored in real time; when a change in the contact state data is detected, the division results of the contact responsibility joint group and the spatial adjustment joint group are updated, and the motion path of each joint of the robot is updated based on the updated division results.
[0017] In another aspect, this application also provides a real-time planning system for multi-joint collaboration and path optimization of industrial humanoid robots, comprising:
[0018] The state acquisition module is used to acquire the robot's current joint motion state, the current pose of the end effector, and the target motion information of the task to be performed;
[0019] The contact state determination module is used to acquire contact state data between the end effector and the outside world, and determine whether the robot is in an end-effector contact state based on the contact state data.
[0020] The joint dynamic grouping module is used to dynamically divide multiple joints involved in the movement into a contact responsibility joint group and a spatial adjustment joint group based on the robot's kinematic model when it is determined to be in an end-effector contact state. The contact responsibility joint group refers to the set of joints located near the end-effector that have a direct impact on the stability of the contact state between the end-effector and the outside world. The spatial adjustment joint group refers to the set of joints mainly used for overall pose adjustment, obstacle avoidance, and redundancy degree of freedom resolution.
[0021] The differentiated feasible domain construction module is used to construct differentiated kinematic feasible domains for the contact responsibility joint group and the spatial adjustment joint group based on the division results of the contact responsibility joint group and the spatial adjustment joint group, respectively. The kinematic feasible domain constructed for the contact responsibility joint group includes: the range of joint angle changes obtained through kinematic mapping transformation after applying contact constraints centered on the contact point of the end effector in the task space; the kinematic feasible domain constructed for the spatial adjustment joint group includes: the range of joint angle changes obtained by adjusting for collision constraints while retaining the inherent joint motion range of the spatial adjustment joint group.
[0022] The collaborative path planning module is used to perform collaborative path planning for the contact responsibility joint group and the spatial adjustment joint group based on the differentiated motion feasible domain, and generate motion paths for each joint of the robot.
[0023] This application also provides an electronic device comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to perform the real-time planning method for multi-joint collaboration and path optimization of industrial humanoid robots as described above.
[0024] In another aspect, this application provides a computer-readable storage medium having stored thereon computer program instructions that can be executed by a processor to implement the real-time planning method for multi-joint collaboration and path optimization of industrial humanoid robots as described above.
[0025] Another aspect of this application provides a computer program product, including a computer program that, when executed by a processor, implements the real-time planning method for multi-joint collaboration and path optimization of an industrial humanoid robot as described above.
[0026] This application achieves real-time multi-joint path planning for industrial humanoid robots in contact states through contact state-driven joint dynamic grouping, differentiated feasible domain modeling, hierarchical collaborative planning, and dynamic adjustment mechanisms. Specifically, the strong constraint design of the contact responsibility joint group effectively reduces end-effector contact force fluctuations and micro-slippage risks, significantly improving contact stability; the relaxed constraints and redundant degrees of freedom utilization of the spatial adjustment joint group prevent excessive shrinkage of the planning space, greatly improving the path planning success rate; the constraint optimization focusing on the contact responsibility joint group narrows the search range, reducing planning time and meeting real-time requirements; the dynamic adjustment mechanism ensures smooth path transitions when contact states change, enhancing adaptability in complex working conditions such as confined spaces and high-precision assembly, thus comprehensively improving the operational stability and reliability of industrial humanoid robots in contact-related tasks and addressing the core pain points of existing technologies. Attached Figure Description
[0027] To more clearly illustrate the technical solutions of the embodiments of this application, the accompanying drawings used in the embodiments will be briefly introduced below. It should be understood that the following drawings only show some embodiments of this application and should not be regarded as a limitation of the scope. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.
[0028] Other features, objects, and advantages of this application will become more apparent from the following detailed description of non-limiting embodiments with reference to the accompanying drawings:
[0029] Figure 1This is a schematic diagram of a real-time planning method for multi-joint collaboration and path optimization of an industrial humanoid robot, provided in an embodiment of this application.
[0030] Figure 2 This is a schematic diagram of the joint division process provided in an embodiment of this application.
[0031] Figure 3 This is a schematic diagram of the path generation process provided in an embodiment of this application.
[0032] Figure 4 This is a schematic diagram of the control point determination process provided in an embodiment of this application.
[0033] Figure 5 This is a schematic diagram of the structure of a real-time planning system for multi-joint collaboration and path optimization of an industrial humanoid robot provided in an embodiment of this application.
[0034] Figure 6 This is a schematic diagram of the structure of a device provided in an embodiment of this application. Detailed Implementation
[0035] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0036] It should be noted that all user information (including but not limited to user device information, user personal information, object information corresponding to device usage data, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, device usage data, etc.) involved in all embodiments of this application are information and data authorized by the user or fully authorized by all parties.
[0037] This method is applicable to industrial humanoid robots with multi-degree-of-freedom joint structures. It is primarily suited for tasks such as precise grasping, insertion, fitting, pressing, collaborative assembly, and human-robot collaboration. The application condition is that after the robot's end effector makes contact with the workpiece or external environment, it still needs to perform actions such as posture adjustment, obstacle avoidance, and release of redundant degrees of freedom. In essence, the robot is equipped with an end-effector contact sensing device (such as electronic skin) to collect contact force data. The control system includes a motion control unit, a path planning unit, and a state feedback module. These modules can be integrated into the same controller or a distributed system to work collaboratively. The robot has a pre-stored kinematic model to support joint kinematic mapping and sensitivity coefficient calculation.
[0038] The following detailed description, in conjunction with specific embodiments, illustrates the implementation process of the real-time planning method for multi-joint collaboration and path optimization of industrial humanoid robots described in this application. It should be noted that these embodiments are merely for explaining this application and not for limiting its scope of protection. Any conventional adjustments or substitutions made by those skilled in the art to the steps without departing from the concept of this application should be included within the scope of protection of this application.
[0039] like Figure 1 As shown in the figure, this application discloses a real-time planning method 100 for multi-joint collaboration and path optimization of an industrial humanoid robot, including the following method steps:
[0040] S1, acquire the robot's current joint motion state, the current pose of the end effector, and the target motion information of the task to be performed;
[0041] S2, acquire the contact state data between the end effector and the outside world, and determine whether the robot is in the end contact state based on the contact state data;
[0042] S3, when it is determined that the end effector is in contact state, based on the robot's kinematic model, the multiple joints involved in the movement are dynamically divided into contact responsibility joint group and spatial adjustment joint group; wherein, the contact responsibility joint group refers to the set of joints that have a direct impact on the stability of the contact state between the end effector and the outside world and are located near the end effector, and the spatial adjustment joint group refers to the set of joints that are mainly used for overall pose adjustment, obstacle avoidance and redundancy degree of freedom elimination.
[0043] S4, based on the division results of the contact responsibility joint group and the spatial adjustment joint group, construct differentiated kinematic feasible domains for the contact responsibility joint group and the spatial adjustment joint group respectively; wherein, the kinematic feasible domain constructed for the contact responsibility joint group includes: the range of joint angle changes obtained by kinematic mapping transformation after applying contact constraints centered on the contact point of the end effector in the task space; the kinematic feasible domain constructed for the spatial adjustment joint group includes: the range of joint angle changes obtained by adjusting the collision constraints while retaining the inherent joint motion range of the spatial adjustment joint group;
[0044] S5. Based on the differentiated motion feasible domain, perform collaborative path planning for the contact responsibility joint group and the spatial adjustment joint group to generate motion paths for each joint of the robot.
[0045] In some embodiments, for step S1, specifically, when the method is started, the robot control system automatically collects relevant data through its internally integrated state feedback module. The current joint motion state includes the current joint angle, joint angular velocity, and joint range of motion for each joint. The joint angle is collected by a joint encoder, and the joint angular velocity is obtained by an angular velocity sensor. The collection frequency can be configured from 100Hz to 1000Hz, for example, 500Hz. The joint range of motion is a preset physical limit parameter of the robot's mechanical structure, stored in the parameter database of the control system. The current pose of the end effector is collected collaboratively by a vision sensor, a laser positioning module, or an inertial measurement unit. The position measurement accuracy can be optionally set to ±0.01mm-±0.1mm, and the pose measurement accuracy can be configured to ±0.01°-±0.1°. The collected pose data is represented by coordinate values and attitude angles in the task space coordinate system. The target motion information of the task to be performed is obtained by the operator through input from a host computer or by the system's preset task parameters, including the target pose (clearly defining the coordinate values and attitude angles in the task space) or the target path segment (including the path node sequence and motion constraints between nodes).
[0046] Optionally, after data collection, all data is stored in the local cache unit of the path planning module. The data storage format adopts the standardized industrial robot data exchange format to ensure that it can be quickly read and called during subsequent planning calculations. In addition, the integrity is ensured by the cyclic redundancy check algorithm during data transmission to avoid the planning results being affected by data loss or errors.
[0047] In some embodiments, for step S2, the contact state data between the end effector and the outside world is obtained, and the robot is determined to be in an end-effector contact state based on the contact state data.
[0048] In the specific implementation process, the path planning module first acquires contact state data through contact sensing devices (such as electronic skin or six-dimensional force sensors) mounted on the robot's end effector. This data includes the normal contact force, tangential contact force, and the trend of contact force changes experienced by the end effector. The normal contact force is the force perpendicular to the contact surface, and the tangential contact force is the force parallel to the contact surface. The acquisition frequency of the contact force data is consistent with the acquisition frequency of the joint motion state data, for example, both are configured at 500Hz. The contact force measurement range can be set according to task requirements, for example, 0N-500N, and the measurement accuracy can be optionally set to ±0.01N-±0.1N. The trend of contact force changes is obtained by performing sliding window analysis on the continuously acquired contact force data. The sliding window size can be configured to 5-20 data points, for example, 10 data points. By calculating the mean, variance, and rate of change of the contact force within the window, the stable or dynamic characteristics of the contact force are determined.
[0049] Subsequently, the path planning module compares the collected contact state data with preset contact judgment thresholds to determine the end-effector contact state. The contact judgment thresholds include a contact trigger threshold and a stable contact threshold, both pre-configured based on the robot model, task type, and workpiece characteristics. For example, the contact trigger threshold can be set to 1N-5N, and the stable contact threshold can be set to 1.2-2 times the contact trigger threshold. When the normal contact force on the end-effector is greater than or equal to the contact trigger threshold, and the variance of the contact force is less than a preset variance threshold (e.g., 0.01N²-0.1N²) within a preset number of consecutive acquisition cycles (e.g., 5-10), the robot is determined to be in an end-effector contact state. When the contact force is lower than the contact trigger threshold, or no continuous contact characteristics are detected within a preset number of consecutive acquisition cycles, the robot is determined not to be in an end-effector contact state. When the contact force fluctuates around the stable contact threshold, and the fluctuation amplitude exceeds a preset fluctuation threshold (e.g., ±20% of the stable contact threshold), the contact state data is determined to have changed, providing a basis for subsequent dynamic adjustments.
[0050] The contact status judgment result is stored in the path planning module in the form of status flag bits, where the non-contact status flag is 0, the end contact status flag is 1, and the contact status change flag is 2. This flag bit is directly used as the trigger condition for whether to execute joint grouping in the subsequent S3 step, ensuring that the planning strategy and the contact status are accurately matched.
[0051] In some embodiments, step S3 addresses the motion interference problem caused by the lack of differentiation of joint functional roles and uniform constraints on all joints in the prior art. Through dynamic grouping based on kinematic models, the core responsibilities of each joint in the contact state are clarified, laying the foundation for the construction of differentiated feasible domains and collaborative planning. The principle is to quantify the influence of each joint on end-effector contact stability using kinematic models, achieving precise classification of joint functions and ensuring that contact-related constraints only apply to key joints, reducing interference from irrelevant joints.
[0052] Please see Figure 2 , Figure 2 This is a schematic diagram of the joint division process provided in an embodiment of this application. The specific implementation process is as follows:
[0053] In S201, the robot kinematics model is invoked. First, the path planning module calls the robot kinematics model pre-stored in the control system. This model can be established using the DH parameter method and includes the structural parameters of each joint of the robot (link length, link twist angle, joint offset, joint angle) and the connection relationships between joints. Its forward kinematic equations can be expressed as:
[0054]
[0055] in, Let be the homogeneous transformation matrix of the end effector relative to the robot's base coordinate system. Let be the homogeneous transformation matrix of the i-th joint relative to the (i-1)-th joint, and its expression is:
[0056]
[0057] In the formula, Let be the joint angle of the i-th joint. Let be the offset of the i-th joint. Let be the link length of the i-th joint. Let be the link torsion angle of the i-th joint. This matrix can be used to establish a mapping relationship between the joint space and the task space, providing a basis for subsequent sensitivity coefficient calculation.
[0058] In S202, the sensitivity coefficients of each joint to changes in the end effector's pose are calculated based on the aforementioned kinematic model. These sensitivity coefficients quantify the influence of individual joint movements on the position and orientation changes of the end effector, and their calculation is derived using the Jacobian matrix. (Jacobi matrix) Defined as the mapping relationship between the linear and angular velocity vectors of the end effector in the task space and the joint angular velocity vector, the expression is:
[0059]
[0060] in, This is the composite vector of the linear and angular velocities of the end effector in the task space. Let m be the angular velocity vector of all joints involved in the motion, where m is the total number of joints involved in the motion. It is a 6×m matrix, and its elements are... This indicates the degree of influence of the j-th joint angular velocity on the i-th motion component of the end effector.
[0061] Among them, based on the Jacobian matrix Calculate the sensitivity coefficient of each joint. Sensitivity coefficient Defined as the mean of the moduli of the elements in the j-th column of the Jacobian matrix, i.e.:
[0062]
[0063] In the formula, i=1 to 3 correspond to the linear velocity components (x, y, z directions) of the end effector, and i=4 to 6 correspond to the angular velocity components (α, β, γ directions) of the end effector. This formula can quantify the influence of each joint on the end effector pose change into a single value. The larger the sensitivity coefficient, the more significant the influence of the joint on the end effector pose change, and thus the more direct the influence on the stability of the end contact state.
[0064] Subsequently, in S203, joint groups are divided based on the calculated sensitivity coefficients and a preset sensitivity coefficient threshold. The preset sensitivity coefficient threshold... Pre-configured based on robot structural characteristics, joint distribution, and task type, for example, configured as 1.5 to 2.5 times the average sensitivity coefficient of all joints. This threshold is stored in the parameter configuration unit of the path planning module, supporting subsequent adjustments based on changes in contact state. The division rule is: [The text abruptly ends here, likely due to an incomplete sentence or missing information.] Furthermore, in the kinematic chain, joints located proximal to the end effector (e.g., the first 3-5 joints) are classified as contact responsibility joint groups. The joint movements of this group directly affect end-effector contact stability and are primarily responsible for maintaining and regulating the end-effector contact state; the sensitivity coefficient is... Joints that are far from the end effector and are mainly used to adjust the overall posture of the robot are divided into spatial adjustment joint groups. These joint groups have a smaller direct impact on the end contact force and take priority in tasks such as overall pose transfer, spatial obstacle avoidance, and redundancy degree of freedom resolution.
[0065] Optionally, the joint group division results are stored in the path planning module in the form of a set of joint indexes. For example, the set of indexes for contact responsibility joint groups is {4,5,6}, and the set of indexes for spatial adjustment joint groups is {1,2,3}. At the same time, a type identifier is added to each joint (0 represents a spatial adjustment joint, and 1 represents a contact responsibility joint) to facilitate quick identification and retrieval by the subsequent feasible domain modeling module.
[0066] The core of this step lies in the "dynamic division" feature. The joint group division result is not static and fixed, but will be adaptively updated according to the changes in contact state data. This solves the problem that static grouping in the prior art cannot adapt to dynamic changes in contact state, ensuring that joint responsibilities and contact state are always matched, and providing a foundation for balancing contact stability and path feasibility.
[0067] In some embodiments, for step S4, based on the division results of the contact responsibility joint group and the spatial adjustment joint group, differentiated motion feasible domains are constructed for the contact responsibility joint group and the spatial adjustment joint group respectively. This step solves the technical problems of excessively restricted planning space and insufficient real-time performance caused by the overall feasible domain shrinkage in the prior art. By applying differentiated constraints to the two types of joint groups, sufficient planning space is retained while ensuring contact stability. The principle is to set motion constraint boundaries specifically according to the differences in the responsibilities of the joint groups, so as to achieve a synergy between contact stability and path flexibility.
[0068] Specifically, (1) Construction of the kinematic feasible domain of the contact responsibility joint group. The construction of the kinematic feasible domain of the contact responsibility joint group takes maintaining end-effector contact stability as the core objective. By applying contact constraints in the task space and then converting them into the range of joint angle changes through kinematic mapping, it is ensured that the movement of the contact responsibility joint will not cause contact force fluctuations or microslippage.
[0069] First, the path planning module determines the normal and tangential directions of the contact surface based on the end-contact point location information obtained in step S2. The contact point location information is obtained through the fusion of the end-contact sensing device and the vision positioning module. For example, the coordinates of the center point of the contact area are detected by electronic skin detection, and combined with the 3D model of the workpiece surface obtained by the vision sensor, the coordinates of the contact point in the task space coordinate system are determined. ; Normal vector of the contact surface The tangential vector is calculated from the surface normal of the 3D model of the workpiece surface, satisfying the characteristic of being perpendicular to the contact surface; the tangential vector includes two mutually perpendicular directions. and And satisfy , and This constitutes a complete local coordinate system for the contact surface.
[0070] Subsequently, contact constraints are applied in the task space. These contact constraints include at least the displacement constraints of the end effector along the contact normal, the displacement constraints along the contact tangent, and the motion rate constraints along the contact tangent, as specifically set as follows:
[0071] Displacement constraint along the contact normal: Limits the displacement range of the end along the normal direction to prevent sudden changes in contact force due to contact detachment or excessive compression. The allowable range of normal displacement is set as follows: ,in This is the maximum allowable displacement in the normal direction, preset according to the contact task type, such as in a fine-fitting task. It can be configured from 0.01mm to 0.1mm, and from 0.1mm to 0.5mm in insertion tasks. Actual displacement of the end along the normal direction. Must meet ,in , This represents the real-time position of the end effector in the task space.
[0072] Displacement constraint along the contact tangential direction: Small, continuous movements of the end effector along the tangential direction are permitted to accommodate minute attitude adjustments, but the displacement amplitude is strictly limited. The permissible range of tangential displacement is... and ,in and These represent the maximum permissible displacement in the two tangential directions, optionally set to 0.05mm-0.5mm, for example, configured as 0.2mm. The actual displacement of the end along the tangential direction. and They need to be satisfied separately. and ,in , .
[0073] Motion rate constraint along the contact tangential direction: To prevent excessively rapid tangential motion from causing micro-slippage, the tangential motion rate constraint is set as follows. and ,in and These represent the motion speeds in the two tangential directions, The maximum permissible tangential velocity can be configured from 0.1 mm / s to 1 mm / s, for example, 0.5 mm / s. Simultaneously, to ensure smooth motion, the acceleration constraint for tangential motion is set to... and , The maximum permissible tangential acceleration is configured, for example, as 0.5 mm / s²-2 mm / s².
[0074] The contact constraints in the aforementioned task space need to be converted into the range of joint angle variations of the contact responsibility joint group through kinematic mapping. According to the robot's kinematic model, there is a mapping relationship between the pose of the end effector and the joint angles of the contact responsibility joints, i.e. ,in This is the pose vector of the end effector. Let k be the joint angle vector of the contact responsibility joint group, and k be the number of contact responsibility joints. Let be the forward kinematics function. By inverting this mapping relationship and combining it with the constraints in the task space, the range of joint angle constraints for the contact responsibility joints can be obtained.
[0075] Specifically, the joint angle constraint range can be solved using a numerical iteration method: first, determine the initial joint angle of the contact responsibility joint. The initial pose of the corresponding end effector is calculated based on the forward kinematics solution. Then, based on the normal and tangential constraints in the task space, the allowable pose variation range of the end effector is determined. Finally, by iteratively adjusting the joint angles of the contact responsibility joints and calculating the corresponding end-effector pose, until the end-effector pose satisfies all constraints, the range of joint angles at this point represents the initial feasible motion range of the contact responsibility joint group. .
[0076] During the iteration process, the iteration step size is set according to the joint accuracy requirements, for example, 0.001 rad - 0.01 rad. The iteration convergence condition is set as the deviation between the end-effector pose and the constraint boundary being less than a preset deviation threshold, for example, 0.001 mm (position deviation) and 0.001° (attitude deviation). To improve computational efficiency, the Jacobian matrix pseudo-inverse method can be used to accelerate the iteration process. Approximate solution of joint angle adjustment amount ,in The adjustment amount is the end-effector pose, and the process is iterated step by step until the constraints are met.
[0077] For example, for contact joints 4, 5, and 6, their initial joint angles are respectively , , The corresponding end pose The contact constraint is satisfied. Based on the task space constraints, the maximum permissible displacement in the end-effector normal direction is... Maximum permissible tangential displacement Tangential maximum permissible rate Through kinematic mapping transformation, the angular constraint range of joint 4 is obtained as follows: The angular constraint range of joint 5 is The angular constraint range of joint 6 is This range is the initial feasible range of motion for the contact joint group.
[0078] Finally, by combining the physical constraints of the contact joint itself, such as joint angle limits, angular velocity limits, and acceleration limits, the preliminary feasible motion range is modified. The intersection of the preliminary feasible motion range and the physical constraint range is taken to obtain the final feasible motion domain of the contact joint group, thus avoiding equipment damage caused by joint movement exceeding physical limits.
[0079] (2) Construction of the feasible motion domain of the spatially adjustable joint group. The core objective of constructing the feasible motion domain of the spatially adjustable joint group is to preserve the degrees of freedom of motion and undertake the tasks of obstacle avoidance and posture adjustment. Under the premise of not violating the robot's structure and safety constraints, we try to preserve its inherent joint range of motion and reduce unnecessary constraints.
[0080] First, the path planning module obtains the inherent motion constraints of the spatially adjustable joint group from the parameter database of the control system, including joint angle limits. and Joint angular velocity limit and joint acceleration limit These constraints are determined by the robot's mechanical structure design; for example, the angular limit of joint 1 is... Angular velocity limit is Acceleration limit is .
[0081] Subsequently, by combining the robot's structural and safety constraints, the inherent range of motion is adjusted to form the feasible motion domain of the spatially adjustable joint group. Structural constraints mainly refer to collision constraints between joints, that is, the movement of the spatially adjustable joints must not cause collisions between the robot's own links or joints; safety constraints include safety distance constraints between the robot and the surrounding environment, workpieces, and operators, for example, setting a safety distance threshold of 5mm-50mm to ensure that the movement of the spatially adjustable joints will not cause safety accidents.
[0082] Specifically, the motion range can be verified and adjusted using collision detection algorithms: Based on the robot's 3D model, collision bodies such as capsules or cuboids are constructed for the links of the spatially adjustable joints, with the size of the collision bodies matching the actual size of the links; through kinematic simulation, all possible motion states of the spatially adjustable joints within their inherent motion range are simulated, and the bounding box hierarchical tree (AABB Tree) algorithm is used to detect whether collisions occur between collision bodies and between collision bodies and the environment or workpieces; if there is a collision risk within a certain joint angle range, that angle range is removed from the feasible region, ultimately obtaining a collision-free feasible motion range. .
[0083] The accuracy of collision detection is set according to task requirements. For example, the minimum distance threshold for collision detection is 0.1mm-1mm to ensure the accuracy of the detection results. Unlike the contact-responsible joint group, the feasible region of the spatial adjustment joint group is not subject to additional contraction constraints. It only eliminates collision and unsafe motion ranges, retaining most of the inherent range of motion, enabling it to flexibly undertake overall pose transfer, obstacle avoidance, and redundant degree of freedom resolution tasks.
[0084] In addition, the feasible domain of the spatial adjustment joint group can be dynamically optimized according to the mission objectives. For example, when the obstacle avoidance requirement is high, the search range of the feasible domain can be appropriately expanded within the safety constraints; when the attitude adjustment requirement is low, the default feasible domain range can be maintained to ensure that the feasible domain is accurately adapted to the mission requirements.
[0085] In some embodiments, for step S5, under the differentiated motion feasible domain constraints, collaborative path planning is performed on the contact responsibility joint group and the spatial adjustment joint group to generate motion paths for each joint of the robot. This step solves the technical problem of balancing contact stability and path feasibility in multi-joint collaborative planning in the prior art. It achieves collaborative motion of the two types of joint groups through a hierarchical optimization strategy. The principle is based on the division of responsibilities among joint groups. Under the premise of ensuring that the constraints of the contact responsibility joint group are satisfied, the redundant degrees of freedom of the spatial adjustment joint group are used to optimize the overall path, taking into account both contact stability and the achievement of motion goals.
[0086] Please see Figure 3 , Figure 3 This is a schematic diagram of the path generation process provided in an embodiment of this application. In S301, path planning for the contact responsibility joint group is performed. The core objective of path planning for the contact responsibility joint group is to minimize end-effector contact force fluctuations. Within its feasible motion domain, a spline curve-based interpolation method is used to generate the motion path, ensuring smooth joint movement without violating constraints.
[0087] Among them, cubic B-spline curves are selected because they are continuous, smooth, and easy to adjust, ensuring the continuity of angular velocity and acceleration of joint motion and reducing contact force fluctuations. The expression for a cubic B-spline curve is as follows:
[0088]
[0089] in, The joint angle of the contact joint at time t. These are the control points of the spline curve (i=0,1,2,3). Let be cubic B-spline basis functions, t∈[0,1] be parameter variables, and the basis functions be... The expression is:
[0090]
[0091]
[0092]
[0093]
[0094] Please see Figure 4 , Figure 4 This is a schematic diagram of the control point determination process provided in an embodiment of this application. The process of determining control points is subject to the kinematic feasible domain corresponding to the contact responsibility joint group. The specific steps are as follows:
[0095] In S3010, the start and end control points are determined. This is based on the initial joint angle of the contact responsibility joint. and target joint angle (Originated from the overall motion target decomposition), set the starting control points of the spline curve. and endpoint control point Ensure that the starting point of the path is consistent with the current joint state, and that the ending point of the path meets the overall motion target requirements.
[0096] In S3011, the range of intermediate control points is determined. This is based on the feasible motion domain of the contact joint assembly. Based on the characteristics of cubic B-spline curves, intermediate control points are determined. and The range of values is determined to ensure that the spline curve lies within the feasible region throughout its entire length, without violating normal, tangential, and joint physical constraints.
[0097] In S3012, the intermediate control points are optimized. The objective function is to minimize the end-contact force fluctuation. and The specific numerical value. The objective function is defined as:
[0098]
[0099] in, The end contact force at time t is collected in real time by the end contact sensing device. The objective function is to minimize the relative fluctuation of the contact force (a preset stable contact force value) and T is the path execution time.
[0100] Numerical optimization algorithms (such as gradient descent and particle swarm optimization) can be used to solve for the minimum value of the objective function, thereby obtaining the optimal intermediate control point. and During the optimization process, the constraints are that the end pose of the spline curve satisfies the contact constraints in step S4.1, and the joint angle, angular velocity, and acceleration do not exceed the physical limits.
[0101] In S302, path planning for the spatial adjustment joint group is performed. The core objectives of path planning for the spatial adjustment joint group are overall obstacle avoidance, path smoothing, and elimination of redundant degrees of freedom. Within its feasible motion domain, a quadratic planning method is used to generate motion paths, and these paths must be coordinated with the motion paths of the contact responsibility joint groups to ensure that the overall motion objectives of the end effector are achieved.
[0102] First, the path planning module generates a global reference path for the robot's end effector based on the task objective and environmental information. (t∈[0,T]), this reference path satisfies the target pose requirements and obstacle avoidance constraints. It can be generated by traditional path planning algorithms (such as A algorithm and RRT algorithm) and serves only as a guide for the overall motion. The specific end pose is determined by the motion of the two types of joint groups.
[0103] Subsequently, based on the robot's kinematic model, a mapping relationship between the spatially adjustable joint angles and the end effector reference path is established. Since the robot has redundant degrees of freedom (the total joint degrees of freedom are greater than the motion degrees of freedom of the end effector), the motion of the spatially adjustable joints has multiple feasible solutions. The optimal solution is found using a quadratic programming algorithm, and its optimization objective function is defined as:
[0104]
[0105] In the formula: The obstacle avoidance objective function is defined as the reciprocal of the minimum distance between the robot and the obstacle, i.e. , This function represents the minimum distance between the robot and obstacles, and is used to maximize the distance between the robot and obstacles to avoid collisions. The objective function for path smoothness is defined as the integral of the sum of squares of the spatially adjusted joint angular velocities, i.e. m is the number of spatially adjustable joints. This function is used to ensure smooth joint movement and reduce mechanical wear. The objective function for eliminating redundant degrees of freedom is defined as the sum of squares of the deviations between the spatially adjustable joint angles and their intermediate positions, i.e. , This function is used to adjust the mid-angle position of the joint in space (the comfortable position of the mechanical structure), so that the joint movement is as close as possible to the comfortable position and the mechanical stress is reduced.
[0106] , , Let be the weighting coefficient, satisfying It can be adjusted according to task requirements, for example, when obstacle avoidance is a high priority. , , When path smoothing has a high priority, , , .
[0107] The constraints of quadratic programming may include:
[0108] Motion feasible domain constraints of spatially adjustable joint groups (j=1 to m); Joint angular velocity constraints and acceleration constraints Cooperative constraints: By spatially adjusting the movement of the joints to compensate for the movement of the contact responsibility joints, the actual pose of the end effector is ensured. With global reference path The deviation satisfies ,in The maximum permissible deviation is preset, for example, 0.1mm-0.5mm.
[0109] The above optimization problem is solved using a quadratic programming algorithm, which can efficiently handle constrained optimization problems and meet real-time requirements. During the solution process, the motion path of the contact responsibility joint group is determined. Substituting these known quantities into the robot's kinematic model, we can calculate the optimal motion trajectory of the spatially adjustable joints. .
[0110] In S303, the two types of joint groups undergo collaborative verification. After obtaining the motion paths of the contact responsibility joint group and the spatial adjustment joint group respectively, collaborative verification can be performed to ensure that the overall path meets all constraints and optimization objectives, and to avoid inter-joint motion interference.
[0111] Collaborative verification includes the following:
[0112] Contact stability verification: Through kinematic simulation and contact force simulation, calculate the end-effector contact force variation curve corresponding to the overall path to verify whether the contact force fluctuation is within the preset threshold (e.g., ±5%-±10%) and whether there is a risk of micro-slippage. If the contact force fluctuation exceeds the threshold, adjust the spline curve control points of the contact responsibility joint group and re-optimize the local path;
[0113] Obstacle avoidance verification: Using a collision detection algorithm, the robot's overall posture changes during movement are simulated to detect whether it collides with obstacles or the environment. If a collision risk exists, the weight coefficients of the spatial adjustment joint group optimization objective function are adjusted to increase the weight of the obstacle avoidance objective function, and the global path is re-solved.
[0114] Motion smoothness verification: Verify whether the angular velocity and acceleration curves of all joints are continuous and whether they exceed physical limits. If discontinuities or exceed limits exist, adjust the control points of the spline curves or the constraints of the quadratic programming to ensure smooth motion.
[0115] Target achievement verification: Verify whether the actual motion trajectory of the end effector meets the task target requirements, including target pose accuracy and path execution time. If the target achievement accuracy is insufficient, adjust the path optimization parameters of the two types of joint groups and replan.
[0116] After the verification is passed, the path planning module integrates the optimal motion paths of the two types of joint groups into a complete multi-joint collaborative path, and outputs it in the form of joint space path or joint control command. The joint control command adopts pulse command or analog command to adapt to the robot's drive system and ensure that each joint can accurately execute the planned path.
[0117] In some embodiments, the method further includes real-time monitoring of changes in the contact state data during the robot's execution of the motion path. Real-time capture of dynamic changes in the contact state provides trigger signals for subsequent dynamic adjustments, ensuring that path planning can adapt to changes in the contact state in a timely manner and avoiding motion instability caused by changes in the contact state.
[0118] In practice, while the robot executes the planned path, the path planning module continuously collects contact state data through the end-effector contact sensing device. The collection frequency is consistent with step S2, for example, 500Hz. The collected data includes the end-effector normal contact force, tangential contact force, and the trend of contact force changes. Simultaneously, the path planning module has a built-in state monitoring unit that analyzes the collected contact state data in real time, calculates the mean, variance, and rate of change of the contact force, and compares it with a preset state change judgment threshold to determine whether the contact state has changed.
[0119] The threshold for determining changes in contact state includes the variance threshold. and rate of change threshold For example, the variance threshold can be configured to 0.01N²-0.1N², and the rate of change threshold can be configured to 1N / s-5N / s. When the contact force variance... or rate of change of contact force If the average contact force exceeds the stable contact range, the contact state data is determined to have changed. The state monitoring unit sends an adjustment trigger signal to the path planning module to start the dynamic adjustment process. If the contact state data remains stable, the current planned path continues to be executed without adjustment.
[0120] In some embodiments, the method further includes updating the division results of the contact responsibility joint group and the spatial adjustment joint group when a change in the contact state data is detected, and re-executing steps S4 and S5 based on the updated division results.
[0121] This step addresses the technical problems of path abrupt changes and contact instability caused by changes in contact state in existing technologies. By dynamically updating joint groups and feasible regions and smoothly connecting paths, it ensures that the robot can smoothly cope with changes in contact state. Its principle is based on the changing trend of contact state, adaptively adjusting joint responsibilities and constraints to achieve dynamic adaptation of planning strategies.
[0122] Specifically, (1) updating the joint group division results. When a change in the contact state data is detected, the preset sensitivity coefficient threshold is first adjusted according to the trend of the change in the contact state data. Then, based on the adjusted threshold, the S3 step of the segmentation process is re-executed to update the joint group segmentation results.
[0123] Among them, adjusting the sensitivity coefficient threshold The rules are as follows:
[0124] When contact constraints are strengthened (e.g., increased contact force, expanded contact area), it indicates that the importance of end-effector contact stability increases, requiring an expansion of the contact responsibility joint group to enhance constraints. In this case, the sensitivity coefficient threshold should be lowered. The reduction range can be configured from 10% to 30%. For example, if the original threshold is 1.0, it can be reduced to 0.7-0.9.
[0125] When contact constraints are weakened (e.g., reduced contact force or smaller contact area), it indicates a decrease in the requirement for end-effector contact stability. The range of the contact responsibility joint group can be reduced to release more degrees of freedom of movement. In this case, the sensitivity coefficient threshold should be increased. The adjustment range can be configured from 10% to 30%. For example, if the original threshold is 1.0, the adjusted threshold will be 1.1-1.3.
[0126] When contact is released (e.g., the contact force drops below the trigger threshold), it indicates that there is no longer any need to constrain contact stability, and the sensitivity coefficient threshold can be significantly increased at this point. This minimizes the range of the contact responsibility joint group (or even makes it an empty set), allowing the spatial adjustment joint group to undertake all the motion tasks.
[0127] In one example, the original contact responsibility joint group is {4,5,6}, the spatial adjustment joint group is {1,2,3}, and the preset sensitivity coefficient threshold is... When an increase in contact force is detected, it is determined that the contact constraint has been strengthened, and... The sensitivity coefficient of each joint was lowered to 0.8 and the sensitivity coefficient of each joint was recalculated. It was found that the sensitivity coefficient of joint 3 increased from 0.8 to 1.0 (due to the increased contact force, its influence on the end contact state was enhanced). At this time, joint 3 was classified as the contact responsibility joint, and the joint group classification result was updated to contact responsibility joint group {3,4,5,6} and spatial adjustment joint group {1,2}.
[0128] (2) Update of the differentiated motion feasible domain. Based on the updated joint group division results, step S4 is re-executed to adjust the motion feasible domains of the two types of joint groups:
[0129] For the updated contact responsibility joint group, if the contact constraints are enhanced, the maximum permissible normal displacement is reduced. (For example, reduce by 20%-30%), reduce the maximum permissible tangential rate. (For example, reduce by 20%-30%), tighten the joint angle constraint range; if the contact constraint is weakened, expand the maximum allowable normal displacement. (For example, increase by 20%-30%), increase the maximum permissible tangential rate. (For example, increase by 20%-30%), and relax the range of joint angle constraints;
[0130] For the updated spatial adjustment joint group, if the contact constraint is enhanced, the feasible range should be appropriately reduced (e.g., reduced by 10%-15%) to avoid its movement interfering with the contact responsibility joint group; if the contact constraint is weakened, the feasible range should be expanded (e.g., expanded by 10%-15%) to enhance its obstacle avoidance and posture adjustment capabilities.
[0131] The feasible region adjustment process adopts a gradual strategy to avoid path planning anomalies caused by abrupt changes in constraints. For example, when the contact constraint is enhanced, the maximum allowable normal displacement is gradually reduced from 0.1 mm to 0.07 mm. The adjustment process lasts for 3 planning cycles (10 ms per cycle), with a reduction of 0.01 mm per cycle, ensuring a smooth transition in constraint adjustment.
[0132] (3) Update and smooth transition of motion path. Based on the updated joint group division results and feasible region constraints, the collaborative path planning in step S5 is re-executed to generate a new multi-joint collaborative path. To avoid abrupt changes between the new path and the currently executing path, a preset transition interval is used for smooth transition.
[0133] The length of the transition interval is set according to the drastic change in contact state. For example, when the contact force changes slowly, the transition interval is 5 planning cycles (50ms); when the contact force changes rapidly, the transition interval is 3 planning cycles (30ms). Within the transition interval, the path planning module can use linear interpolation to gradually transition the currently executing path to the newly planned path. The interpolation formula is:
[0134]
[0135] in, For joint angles within the transition range, From the perspective of the currently executing path, From the perspective of the newly planned route, The transition begins at this time. This marks the end of the transition period.
[0136] For example, when the contact constraint is enhanced, the original path of the contact responsibility joint 4 is adjusted from 30° to 30.2°, and the new path requires adjustment to 30.1°. The transition interval is 3 planning cycles (30ms). In the first cycle, the path is 30°→30.15°, in the second cycle it is 30.15°→30.12°, and in the third cycle it is 30.12°→30.1°, achieving a smooth transition and avoiding sudden changes in contact force.
[0137] The updated path is sent to the motion control unit to drive the robot to continue performing the task. At the same time, the status feedback module continuously collects status data to form a closed-loop dynamic adjustment mechanism, ensuring that the robot maintains contact stability and movement feasibility throughout the entire process of contact state changes.
[0138] Therefore, this method achieves real-time multi-joint path planning for industrial humanoid robots in contact states through contact state-driven joint dynamic grouping, differentiated feasible domain modeling, hierarchical collaborative planning, and dynamic adjustment mechanisms. Specifically, the strong constraint design of the contact responsibility joint group effectively reduces end-effector contact force fluctuations and micro-slippage risks, significantly improving contact stability; the relaxed constraints and redundant degrees of freedom utilization of the spatial adjustment joint group avoid excessive shrinkage of the planning space, greatly improving the path planning success rate; the constraint optimization focusing on the contact responsibility joint group narrows the search range, reducing planning time and meeting real-time requirements; the dynamic adjustment mechanism ensures smooth path transitions when contact states change, enhancing adaptability in complex working conditions such as confined spaces and high-precision assembly, thus comprehensively improving the operational stability and reliability of industrial humanoid robots in contact-related tasks and addressing the core pain points of existing technologies.
[0139] Please see Figure 5 , Figure 5 This is a schematic diagram of the structure of a real-time planning system for multi-joint collaboration and path optimization of an industrial humanoid robot, as provided in an embodiment of this application. Figure 5 As shown, system 500 includes:
[0140] The state acquisition module 501 is used to acquire the current joint motion state of the robot, the current pose of the end effector, and the target motion information of the task to be performed.
[0141] The contact state determination module 502 is used to acquire contact state data between the end effector and the outside world, and determine whether the robot is in an end-effector contact state based on the contact state data.
[0142] The joint dynamic grouping module 503 is used to dynamically divide multiple joints involved in the motion into a contact responsibility joint group and a spatial adjustment joint group based on the robot's kinematic model when it is determined that the end effector is in a contact state. The contact responsibility joint group refers to the set of joints that have a direct impact on the stability of the contact state between the end effector and the outside world and are located near the end effector. The spatial adjustment joint group refers to the set of joints that are mainly used for overall pose adjustment, obstacle avoidance and redundancy degree of freedom resolution.
[0143] The differentiated feasible domain construction module 504 is used to construct differentiated kinematic feasible domains for the contact responsibility joint group and the spatial adjustment joint group based on the division results of the contact responsibility joint group and the spatial adjustment joint group, respectively; wherein, the kinematic feasible domain constructed for the contact responsibility joint group includes: the range of joint angle changes obtained by kinematic mapping transformation after applying contact constraints centered on the contact point of the end effector in the task space; the kinematic feasible domain constructed for the spatial adjustment joint group includes: the range of joint angle changes obtained by adjusting the collision constraints while retaining the inherent joint motion range of the spatial adjustment joint group.
[0144] The collaborative path planning module 505 is used to perform collaborative path planning for the contact responsibility joint group and the spatial adjustment joint group based on the differentiated motion feasible domain, and generate motion paths for each joint of the robot.
[0145] Those skilled in the art will clearly understand that the technical solutions of the embodiments of this application can be implemented by means of software and / or hardware. In this specification, "unit" and "module" refer to software and / or hardware that can independently complete or cooperate with other components to complete a specific function, wherein the hardware may be, for example, a field-programmable gate array (FPGA), an integrated circuit (IC), etc.
[0146] Each processing unit and / or module in the embodiments of this application can be implemented by an analog circuit that implements the functions described in the embodiments of this application, or by software that executes the functions described in the embodiments of this application.
[0147] Please see Figure 6 It shows a schematic diagram of the structure of an electronic device according to an embodiment of this application, which can be used to implement... Figure 1 The method in the illustrated embodiment. (As shown) Figure 6 As shown, the electronic device 600 may include:
[0148] The system includes at least one processor 601, at least one network interface 604, a user interface 603, a memory 605, and at least one communication bus 602. The communication bus 602 is used to enable connection and communication between the components. The user interface 603 may include buttons, and optionally include a standard wired or wireless interface. The network interface 604 may include, but is not limited to, a Bluetooth module, an NFC module, a Wi-Fi module, etc.
[0149] The processor 601 may include one or more processing cores and connect to various parts within the device 600 via various interfaces and lines. It implements the various functions and data processing of the device 600 by running or executing instructions, programs, code sets, or instruction sets stored in the memory 605, and by accessing data in the memory 605. Optionally, the processor 601 may be implemented using at least one hardware form of DSP, FPGA, or PLA. The processor 601 may also integrate one or more combinations of CPU, GPU, and modem. The CPU is mainly used to handle the operating system, user interface, and applications; the GPU is responsible for rendering and drawing the content required for display; and the modem is used for wireless communication. It is understood that the modem may not be integrated into the processor 601, but may be implemented through a separate chip.
[0150] Memory 605 may include random access memory (RAM) or read-only memory (ROM). Optionally, memory 605 includes a non-transitory computer-readable medium for storing instructions, programs, code, code sets, or instruction sets. Memory 605 may be divided into a program storage area and a data storage area, wherein the program storage area may be used to store instructions for implementing an operating system, instructions for implementing at least one function (such as touch functionality, audio playback functionality, image playback functionality, etc.), and instructions for implementing the foregoing method embodiments; the data storage area may be used to store data involved in the relevant method embodiments. Memory 605 may also be at least one storage device located remotely from processor 601. Figure 6 As shown, the memory 605, which serves as a computer storage medium, may contain an operating system, a network communication module, a user interface module, and program instructions.
[0151] In particular, the methods and / or embodiments in this application can be implemented as computer software programs. For example, the embodiments disclosed in this application include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowchart. When the computer program is executed by processor 601, it performs the functions defined in the methods of this application.
[0152] Another embodiment of this application provides a computer-readable storage medium having computer program instructions stored thereon, which can be executed by a processor to implement the methods and / or technical solutions of any one or more embodiments of this application described above.
[0153] The computer-readable storage medium may include, but is not limited to, any type of disk, including floppy disks, optical disks, DVDs, CD-ROMs, microdrives, as well as magneto-optical disks, ROMs, RAMs, EPROMs, EEPROMs, DRAMs, VRAMs, flash memory devices, magnetic cards or optical cards, nanosystems (including molecular memory ICs), or any type of medium or device suitable for storing instructions and / or data.
[0154] In the above embodiments, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions in other embodiments.
Claims
1. A real-time planning method for multi-joint collaboration and path optimization in industrial humanoid robots, characterized in that, include: Acquire the robot's current joint motion state, the current pose of the end effector, and the target motion information of the task to be performed; The system acquires contact status data between the end effector and the outside world, and determines whether the robot is in an end-effector contact state based on the contact status data. When determining that the end effector is in contact state, based on the robot's kinematic model, the multiple joints involved in the movement are dynamically divided into a contact responsibility joint group and a spatial adjustment joint group. The contact responsibility joint group refers to the set of joints that have a direct impact on the stability of the end effector's contact state with the outside world and are located near the end effector. The spatial adjustment joint group refers to the set of joints that are mainly used for overall pose adjustment, obstacle avoidance, and redundancy degree of freedom resolution. Based on the division results of the contact responsibility joint group and the spatial adjustment joint group, differentiated kinematic feasible domains are constructed for the contact responsibility joint group and the spatial adjustment joint group respectively; wherein, the kinematic feasible domain constructed for the contact responsibility joint group includes: the range of joint angle changes obtained by kinematic mapping transformation after applying contact constraints centered on the contact point of the end effector in the task space; the kinematic feasible domain constructed for the spatial adjustment joint group includes: the range of joint angle changes obtained by adjusting the collision constraints while retaining the inherent joint motion range of the spatial adjustment joint group; Based on the differentiated motion feasible domain, collaborative path planning is performed on the contact responsibility joint group and the spatial adjustment joint group to generate motion paths for each joint of the robot.
2. The real-time planning method for multi-joint collaboration and path optimization of an industrial humanoid robot according to claim 1, characterized in that, The dynamic division of joint groups based on the robot's kinematic model specifically includes: calculating the sensitivity coefficient of each joint to the pose change of the end effector based on the robot's kinematic model; and based on the calculated sensitivity coefficient and a preset sensitivity coefficient threshold, dividing joints with sensitivity coefficients greater than or equal to the sensitivity coefficient threshold into the contact responsibility joint group, and dividing joints with sensitivity coefficients less than the sensitivity coefficient threshold into the spatial adjustment joint group.
3. The real-time planning method for multi-joint collaboration and path optimization of an industrial humanoid robot according to claim 1, characterized in that: The contact constraints upon which the feasible motion domain for the contact responsibility joint group is constructed include at least one of the following: displacement constraints on the end effector along the contact normal, displacement constraints along the contact tangent, and motion rate constraints along the contact tangent.
4. The real-time planning method for multi-joint collaboration and path optimization of an industrial humanoid robot according to claim 1, characterized in that, Cooperative path planning is performed on the contact responsibility joint group and the spatial adjustment joint group, specifically including: With the goal of minimizing end contact force fluctuations, the motion path of the contact responsibility joint group is planned within the feasible motion domain corresponding to the contact responsibility joint group; With the goal of at least one of overall obstacle avoidance, path smoothing, and redundancy degree of freedom reduction, the motion path of the spatial adjustment joint group is planned within the motion feasible domain corresponding to the spatial adjustment joint group, and the motion path of the spatial adjustment joint group is coordinated with the motion path of the contact responsibility joint group to achieve the overall motion goal of the end effector.
5. The real-time planning method for multi-joint collaboration and path optimization of an industrial humanoid robot according to claim 4, characterized in that, The motion path of the contact responsibility joint group is planned using a spline curve-based interpolation method, wherein the determination of the control points is constrained by the motion feasible region corresponding to the contact responsibility joint group.
6. The real-time planning method for multi-joint collaboration and path optimization of an industrial humanoid robot according to claim 4, characterized in that, The motion path of the spatially adjustable joint group is planned using a quadratic programming method, and its optimization objective function includes at least an obstacle avoidance penalty term, a joint motion smoothness penalty term, and a redundant degree of freedom elimination penalty term.
7. The real-time planning method for multi-joint collaboration and path optimization of an industrial humanoid robot according to claim 1, characterized in that, During the robot's execution of the motion path, the changes in the contact state data are monitored in real time. When a change in the contact state data is detected, the division results of the contact responsibility joint group and the spatial adjustment joint group are updated, and the motion path of each joint of the robot is updated based on the updated division results.
8. A real-time planning system for multi-joint collaboration and path optimization in an industrial humanoid robot, characterized in that, include: The state acquisition module is used to acquire the robot's current joint motion state, the current pose of the end effector, and the target motion information of the task to be performed; The contact state determination module is used to acquire contact state data between the end effector and the outside world, and determine whether the robot is in an end-effector contact state based on the contact state data. The joint dynamic grouping module is used to dynamically divide multiple joints involved in the movement into a contact responsibility joint group and a spatial adjustment joint group based on the robot's kinematic model when it is determined to be in an end-effector contact state. The contact responsibility joint group refers to the set of joints located near the end-effector that have a direct impact on the stability of the contact state between the end-effector and the outside world. The spatial adjustment joint group refers to the set of joints mainly used for overall pose adjustment, obstacle avoidance, and redundancy degree of freedom resolution. The differentiated feasible domain construction module is used to construct differentiated kinematic feasible domains for the contact responsibility joint group and the spatial adjustment joint group based on the division results of the contact responsibility joint group and the spatial adjustment joint group, respectively. The kinematic feasible domain constructed for the contact responsibility joint group includes: the range of joint angle changes obtained through kinematic mapping transformation after applying contact constraints centered on the contact point of the end effector in the task space; the kinematic feasible domain constructed for the spatial adjustment joint group includes: the range of joint angle changes obtained by adjusting for collision constraints while retaining the inherent joint motion range of the spatial adjustment joint group. The collaborative path planning module is used to perform collaborative path planning for the contact responsibility joint group and the spatial adjustment joint group based on the differentiated motion feasible domain, and generate motion paths for each joint of the robot.
9. An electronic device, characterized in that, include: At least one processor; and a memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor to enable the at least one processor to perform the method of any one of claims 1 to 7.
10. A computer-readable storage medium having computer program instructions stored thereon, characterized in that, The computer program instructions can be executed by a processor to implement the method as described in any one of claims 1 to 7.