Robot control method and device and electronic equipment

By constructing a target matrix that includes feedback torques in both driving and non-driving directions, and combining inertial parameters to calculate the theoretical forces acting on the robot, the actual external forces in the external environment are accurately identified, thus solving the problems of low control accuracy and large motion deviation in traditional robots and achieving high-precision robot motion control.

CN121798604APending Publication Date: 2026-04-07SHANGHAI JIEKA ROBOT TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-12-30
Publication Date
2026-04-07

AI Technical Summary

Technical Problem

Traditional robot control methods suffer from low control precision and large motion deviations. They are particularly difficult to cope with sudden changes in environmental contact forces and unknown physical interactions in unstructured environments, leading to task failure, workpiece damage, and safety accidents.

Method used

By acquiring feedback torque data of the driving direction and feedback force data of the robot joints, a target matrix containing inertial parameters is constructed. Combined with predetermined link inertial parameters, the theoretical force required for the robot to maintain its current motion is calculated. The actual external force applied by the external environment is separated by the measured total force, thus achieving precise control.

Benefits of technology

It improves the accuracy of robot motion control, reduces motion deviation, enhances adaptability and safety in complex environments, and realizes a leap from position control to force interaction control.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121798604A_ABST
    Figure CN121798604A_ABST
Patent Text Reader

Abstract

The invention discloses a robot control method and device and electronic equipment. The method comprises the following steps: acquiring feedback data corresponding to robot joints; constructing a target matrix according to the feedback data; according to the target matrix and preset connecting rod inertial parameters of the robot, theoretical stress of the robot for maintaining the current motion is determined; according to the theoretical stress and the actually measured total force, the actual external force applied to the robot by the external environment is obtained; and controlling the robot according to the actual external force. According to the invention, the technical problems of low robot control precision and large motion deviation when the robot is controlled in the prior art are solved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of robot control, and more specifically, to a robot control method, apparatus, and electronic device. Background Technology

[0002] With the rapid development of industrial automation and intelligent technologies, the application of robots is gradually expanding from repetitive tasks in traditional structured environments to precision and interactive tasks in unstructured environments, such as precision assembly, polishing, medical surgery, and human-robot collaboration. In these highly dynamic and uncertain scenarios, traditional position-based robots, due to their inherent rigidity, struggle to cope with sudden changes in environmental contact forces and unknown physical interactions, easily leading to task failure, workpiece damage, or even safety accidents. It is evident that related technologies for robot control suffer from low control precision and large motion deviations.

[0003] There is currently no effective solution to the above problems. Summary of the Invention

[0004] This invention provides a robot control method, device, and electronic device to at least solve the technical problems of low robot control accuracy and large motion deviation in related technologies.

[0005] According to one aspect of the present invention, a robot control method is provided, comprising: acquiring feedback data corresponding to robot joints, wherein the feedback data includes drive direction feedback torque data corresponding to multiple joints of the robot, and non-drive direction feedback force data corresponding to a target joint, wherein the target joint is a joint whose corresponding non-drive direction feedback force index is greater than a predetermined index, and the robot is a serial robot; constructing a target matrix based on the feedback data, wherein the target matrix includes multiple rows and multiple columns, wherein the multiple rows represent rows including drive direction feedback torque data corresponding to multiple joints, and non-drive direction feedback force data corresponding to the target joint. The motion direction feedback force is generated by a matrix consisting of multiple columns, each containing an inertial parameter column corresponding to a link. Elements in the matrix represent the contribution index of the corresponding link's inertial parameter to the corresponding data. Multiple joints correspond one-to-one with the multiple links and are alternately connected in series. Each joint drives the corresponding link to move around its joint axis. Based on the target matrix and the robot's predetermined link inertial parameters, the theoretical force required to maintain the robot's current motion is determined. Based on the theoretical force and the measured total force, the actual external force exerted on the robot by the external environment is obtained, where the measured total force represents the total force actually measured on the robot. The robot is then controlled based on the actual external force.

[0006] Optionally, determining the theoretical force required for the robot to maintain its current motion based on the target matrix and the robot's predetermined link inertia parameters includes: performing matrix structure analysis on the target matrix to obtain target columns corresponding to the target matrix, wherein the target columns include linear combination columns and nonlinear combination columns, the linear combination columns representing columns with linear dependencies between parameters, and the nonlinear combination columns representing columns with no dependencies between parameters; performing column linear combination operations on the linear combination columns to obtain updated columns after linear combination and corresponding updated combination parameters; integrating the nonlinear combination columns and the updated columns to obtain an integrated matrix; and determining the theoretical force based on the integrated matrix and the robot's predetermined link inertia parameters.

[0007] Optionally, determining the theoretical force based on the integrated matrix and the robot's predetermined link inertia parameters includes: performing an identifiable parameter mapping operation on the integrated matrix to obtain a target parameter set, wherein the target parameter set includes identifiable parameters, which are values ​​that can be uniquely determined based on actual measurement data; obtaining a target equation with the theoretical force as a variable based on the target parameter set and the dynamic equation corresponding to the robot, wherein the dynamic equation includes at least one of the following: joint torque equation, external force equation; and solving the target equation based on the robot's real-time motion data to obtain the theoretical force.

[0008] Optionally, performing matrix structure analysis on the target matrix to obtain target columns corresponding to the target matrix includes: performing matrix structure analysis on the target matrix to obtain all-zero columns in the target matrix, wherein the all-zero columns represent columns that do not contribute to the identification of dynamic parameters; performing a removal operation on the all-zero columns to obtain an intermediate matrix; and performing matrix structure analysis on the intermediate matrix to obtain the target columns in the intermediate matrix.

[0009] Optionally, controlling the robot based on the actual external force includes: when the actual external force includes a first sub-external force corresponding to a first joint, retrieving an admittance control loop corresponding to the robot, wherein the admittance control loop is used to characterize the mapping relationship between the joint external force parameter input and the motion parameter output, and the first joint is the joint with the highest motion transmission efficiency among the plurality of joints; determining the target end effector motion parameters corresponding to the end effector of the robot based on the first sub-external force and the admittance control loop; performing inverse kinematics operation based on the target end effector motion parameters to obtain the target joint motion parameters of a predetermined joint, wherein the predetermined joint is the joint corresponding to the end effector and includes the first joint; performing joint trajectory planning operation based on the real-time motion state of the predetermined joint and the target joint motion parameters to obtain a smooth motion trajectory corresponding to the predetermined joint; and sending a position control command to the actuator corresponding to the predetermined joint to perform joint driving operation, wherein the position control command carries the smooth motion trajectory.

[0010] Optionally, controlling the robot based on the actual external force includes: when the actual external force includes a second sub-external force corresponding to the second joint, retrieving the link elasticity model corresponding to the robot, wherein the second joint is the joint that contributes the most to the error among the plurality of joints; determining the elastic deformation corresponding to the second joint based on the second sub-external force and the link elasticity model; determining the end-effector positioning error caused by deformation of the robot's end effector based on the elastic deformation; performing an inverse error decomposition operation based on the end-effector positioning error to obtain the error compensation amount corresponding to each of the plurality of joints; determining the reverse compensation position command corresponding to each of the plurality of joints based on the error compensation amount corresponding to each of the plurality of joints and the current real-time position; and sending the corresponding reverse compensation position command to the driver corresponding to each of the plurality of joints to perform joint position adjustment operation.

[0011] Optionally, controlling the robot based on the actual external force includes: when the actual external force includes a third sub-external force corresponding to the third joint, retrieving a collision threshold corresponding to the target joint of the robot, wherein the third joint is the joint among the plurality of joints whose collision index is greater than a predetermined threshold; and determining a collision detection result as to whether the robot is subjected to a collision based on the third sub-external force and the collision threshold.

[0012] According to one aspect of the present invention, a robot control device is provided, comprising: an acquisition module, configured to acquire feedback data corresponding to robot joints, wherein the feedback data includes drive direction feedback torque data corresponding to multiple joints of the robot, and non-drive direction feedback force data corresponding to a target joint, wherein the target joint is a joint whose corresponding non-drive direction feedback force index is greater than a predetermined index, and the robot is a serial robot; and a construction module, configured to construct a target matrix based on the feedback data, wherein the target matrix includes multiple rows and multiple columns, wherein the multiple rows represent rows including drive direction feedback torque data corresponding to multiple joints and non-drive direction feedback force data corresponding to the target joint. The matrix comprises multiple columns, each containing columns of inertial parameters corresponding to multiple links. Elements in the matrix represent the contribution index of the corresponding link's inertial parameter to the corresponding data. Multiple joints correspond one-to-one with the multiple links and are alternately connected in series. A corresponding joint drives the corresponding link to move around its joint axis. A first determining module determines the theoretical force required for the robot to maintain its current motion based on the target matrix and the robot's predetermined link inertial parameters. A second determining module obtains the actual external force exerted on the robot by the external environment based on the theoretical force and the measured total force, where the measured total force represents the total force actually measured on the robot. A control module controls the robot based on the actual external force.

[0013] According to one aspect of the present invention, an electronic device is provided, comprising: a processor; a memory for storing processor-executable instructions; wherein the processor is configured to execute the instructions to implement a robot control method as described in any of the preceding claims.

[0014] According to one aspect of the present invention, a computer-readable storage medium is provided that, when the instructions in the computer-readable storage medium are executed by a processor of an electronic device, enables the electronic device to perform the robot control method as described in any of the preceding claims.

[0015] In this embodiment of the invention, feedback data corresponding to robot joints is obtained. This feedback data includes driving direction feedback torque data corresponding to multiple robot joints, and non-driving direction feedback force data corresponding to a target joint. The target joint is the joint whose corresponding non-driving direction feedback force index is greater than a predetermined index. The robot is a serial robot. Based on the feedback data, a target matrix is ​​constructed. This target matrix includes multiple rows and multiple columns. The multiple rows represent rows of driving direction feedback torque corresponding to multiple joints and rows of non-driving direction feedback forces corresponding to the target joint. The multiple columns include columns of inertial parameters corresponding to multiple links. Elements in the matrix represent the contribution index of the corresponding link inertial parameter to the corresponding data. Multiple joints and multiple links correspond one-to-one and are alternately connected in series. The corresponding joint is used to drive the corresponding link to move around the joint axis. Based on the target matrix and the robot's predetermined link inertial parameters, the theoretical force required for the robot to maintain its current motion is determined. Based on the theoretical force and the measured total force, the actual external force exerted on the robot by the external environment is obtained. The measured total force represents the total force actually measured on the robot. The robot is controlled based on the actual external force. This paper adopts a non-drive direction force sensing method. By collecting drive direction feedback torque data of multiple joints of a serial robot and non-drive direction feedback force data of target joints with a non-drive direction feedback force index greater than a predetermined index, a target matrix is ​​constructed, including a drive direction feedback torque row, a non-drive direction feedback force row, and a link inertia parameter column. Combined with the predetermined link inertia parameters, the theoretical force on the robot to maintain its current motion is determined. The actual external force applied by the external environment is calculated by combining the theoretical force with the measured total force. Finally, the robot is controlled based on the actual external force. This achieves the core objective of accurately identifying the actual external force and clarifying the deviation between the theoretical force and the actual force on the robot. This improves the robot's motion control accuracy and reduces motion deviation, thus solving the technical problems of low robot control accuracy and large motion deviation in related technologies. Attached Figure Description

[0016] The accompanying drawings, which are included to provide a further understanding of the invention and form part of this application, illustrate exemplary embodiments of the invention and, together with their description, serve to explain the invention and do not constitute an undue limitation thereof. In the drawings:

[0017] Figure 1 This is a flowchart of a robot control method according to an embodiment of the present invention;

[0018] Figure 2 This is a schematic diagram of the configuration of a serial 6-DOF robot and the local coordinate system of each joint actuator according to an optional embodiment of the present invention.

[0019] Figure 3 This is a structural block diagram of a robot control device according to an embodiment of the present invention. Detailed Implementation

[0020] To enable those skilled in the art to better understand the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of the present invention.

[0021] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that embodiments of the invention described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "including" and "having," 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 explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0022] Example 1

[0023] According to an embodiment of the present invention, an embodiment of a robot control method is provided. It should be noted that the steps shown in the flowchart in the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions. Furthermore, although a logical order is shown in the flowchart, in some cases, the steps shown or described may be executed in a different order than that shown here.

[0024] Figure 1 This is a flowchart of a robot control method according to an embodiment of the present invention, such as... Figure 1 As shown, the method includes the following steps:

[0025] Step S102: Obtain feedback data corresponding to robot joints. The feedback data includes feedback torque data in the driving direction corresponding to multiple joints of the robot, and feedback force data in the non-driving direction corresponding to the target joint. The target joint is the joint whose non-driving direction feedback force index is greater than a predetermined index. The robot is a serial robot.

[0026] In step S102 of this application, feedback data of robot joints is obtained. This data includes feedback torque data of driving directions of multiple joints and feedback force data of non-driving directions of the target joint. The target joint is determined based on the comparison result of the non-driving direction feedback force index and the predetermined index. The robot type is a serial robot. The data source and composition are clearly defined, providing an input basis for subsequent dynamic modeling and control.

[0027] This involves feedback data, which is real-time measurement information collected from the robot's joints. It can include feedback position, feedback velocity, feedback acceleration, feedback force (torque), etc., of the joint actuators. It is used to reflect the robot's motion state and force conditions and is the core input for dynamic parameter identification and external force perception.

[0028] This includes drive direction feedback torque data, which is the torque or force of the joint in the drive direction measured by the sensor. For rotary joints, it refers to the torque in the direction of rotation around the joint axis, and for linear joints, it refers to the force in the direction of movement along the joint axis. This data is directly related to the output of the joint actuator.

[0029] This involves target joints, which are joints in a serial robot whose non-driving direction feedback force index is greater than a predetermined index. The non-driving direction feedback force index represents the contribution of the non-driving direction force data of the joint to the identification of dynamic parameters. The predetermined index is a pre-set threshold used to screen joints that are key to improving model accuracy.

[0030] This includes non-driving direction feedback force data, which is the force or torque of the joint in the non-driving direction measured by the sensor. For rotary joints, it can include force and torque in the non-rotation direction, and for linear joints, it can include force and torque in the non-movement direction. This data is used to eliminate blind spots in external force perception.

[0031] This includes the non-driving direction feedback force index, which is an indicator that quantifies the contribution of non-driving direction force data to the identification of dynamic parameters. It is calculated based on the linear independence of force data in the dynamic matrix and the degree of increase in identifiable parameters. The higher the index, the more important the data is to improving the accuracy of the model.

[0032] This involves a predetermined index, which is a pre-set threshold used to compare the feedback force index in the non-driving direction to determine the target joint. This threshold is determined through experiments or simulations based on the robot configuration, sensor configuration, and accuracy requirements to ensure that the selected joint can effectively improve model recognition.

[0033] Among them, serial robots are a common type of industrial or collaborative robotic arm mechanism, which consists of multiple joints and links connected in alternating series. Each joint drives the movement of a link and has an open-chain structure, making it the application object of this method.

[0034] This step clarifies the composition and source of the feedback data, especially including driving direction torque and non-driving direction force data, providing accurate input for target joint selection and subsequent dynamic matrix construction, avoiding model errors caused by incomplete data, and laying the foundation for eliminating blind spots in external force perception and improving control accuracy.

[0035] Step S104: Based on the feedback data, a target matrix is ​​constructed. The target matrix includes multiple rows and multiple columns. The multiple rows represent the driving direction feedback torque rows corresponding to multiple joints and the non-driving direction feedback force rows corresponding to the target joints. The multiple columns include the inertial parameter columns corresponding to multiple links. The elements in the matrix represent the contribution index of the corresponding link inertial parameter to the corresponding data. Multiple joints and multiple links correspond one-to-one and are connected in series alternately. The corresponding joint is used to drive the corresponding link to move around the joint axis.

[0036] In step S104 of this application, a target matrix is ​​constructed based on the feedback data including driving direction torque data and non-driving direction force data obtained in step S102. The rows of the matrix consist of driving direction feedback torque data of multiple joints and non-driving direction feedback force data of the target joint, and the columns consist of inertial parameters of multiple links. The matrix elements characterize the degree of contribution of specific link inertial parameters to specific measurement data, thereby forming an extended dynamic observation matrix.

[0037] This involves a target matrix, which is an observation matrix constructed based on feedback data. In addition to the traditional joint driving direction torque row, it expands to include the non-driving direction feedback force row of the target joint, which is used to establish the mapping relationship between robot measurement data and link inertial parameters.

[0038] This involves the driving direction feedback torque row, which is a row vector in the target matrix corresponding to the driving direction torque measurement of each joint. Each element in the row represents the theoretical contribution value of the inertial parameters of each link to the driving direction torque of that joint, and is a core component of the traditional dynamics matrix.

[0039] This involves non-driving direction feedback force vectors, which are new row vectors in the target matrix corresponding to the non-driving direction force measurement of the target joint. Each row element represents the theoretical contribution value of each link inertial parameter to the non-driving direction force, which is a key new part that expands the matrix dimension and improves the identifiability of parameters.

[0040] This involves an inertial parameter column, which is a column vector in the target matrix corresponding to the inertial parameters of each link. It can contain parameters that describe the mass distribution characteristics of the link, such as mass, center of mass coordinates, inertial tensor, etc., and are the basic physical parameters of the dynamic model.

[0041] This involves the contribution index, which is a specific numerical value of the target matrix element. It represents the amount of change in the measured data caused by the change in the unit link inertia parameter. It can be derived from the dynamic equation and reflects the sensitivity relationship between the parameter and the measured value.

[0042] This step integrates the driving direction torque data and the non-driving direction force data into a unified target matrix, expanding the dimension of the traditional dynamic observation matrix, increasing the amount of observation information of the dynamic system, providing a mathematical basis for identifying more inertial parameters and establishing a more accurate dynamic model, and solving the technical problem that some parameters cannot be independently identified due to insufficient observation information.

[0043] Step S106: Determine the theoretical force required for the robot to maintain its current motion based on the target matrix and the robot's predetermined link inertia parameters;

[0044] In step S106 of this application, the target matrix constructed in step S104 and the robot link inertial parameters obtained in advance through dynamic parameters are used to calculate the theoretical force value that the robot should generate at each measurement part due to its own movement.

[0045] This involves predetermined link inertial parameters, which are a set of physical parameters that describe the mass distribution characteristics of each link of the robot, determined through the previous excitation trajectory and parameter identification process. These parameters may include the mass, centroid coordinates, and inertial tensor of each link, and are inherent attribute parameters of the robot's dynamic model, used to accurately calculate the theoretical forces.

[0046] This involves theoretical forces, which are calculated based on the robot's dynamics model. Given a real-time motion state (position, velocity, acceleration) and predetermined link inertial parameters, the theoretical forces are the force / torque values ​​that should be measured at the joint actuators and target joint force sensors when the robot maintains its current motion. These values ​​characterize the internal forces generated by the robot's own motion, excluding external forces applied by the external environment.

[0047] Through this step, based on the expanded target matrix and the accurately identified link inertia parameters, a more comprehensive and accurate theoretical force value can be calculated. This value includes not only the theoretical torque in the driving direction but also the theoretical force in the non-driving direction. This provides a reliable comparison benchmark for accurately separating the actual external force applied by the external environment from the measured total force, and is a key step in achieving high-precision external force sensing.

[0048] Step S108: Based on the theoretical force and the measured total force, obtain the actual external force exerted on the robot by the external environment, where the measured total force represents the total force actually measured on the robot;

[0049] In step S108 provided in this application, the theoretical force vector calculated in step S106 can be subtracted from the actual total force vector collected in real time by the sensor system by subtracting corresponding elements, thereby eliminating the influence of the robot's own dynamics from the total measured value and separating and obtaining the actual external force vector purely applied to the robot by the external environment.

[0050] This involves the measured total force, which is a vector of force / torque measurements actually collected synchronously by torque sensors installed at the actuators of each joint of the robot and multi-dimensional force sensors added at the target joint. This vector contains both the internal force component generated by the robot's own motion and the external force component applied by the external environment, and is the raw force perception information obtained by the control system.

[0051] This involves actual external forces, which are the net external force vector obtained by subtracting the theoretical force vector from the measured total force vector. This vector accurately represents the real physical interaction force between the environment and the robot's mechanical structure after excluding the robot's own gravity, inertial force, Coriolis force and other internal dynamic effects. It is the direct basis for achieving precise and compliant control.

[0052] This step utilizes the theoretical force calculated based on the extended dynamics model, which includes non-driving direction components, to accurately compensate for the measured total force, which also includes non-driving direction measurements. This eliminates the blind spots in external force perception caused by incomplete dynamics models in traditional solutions, enabling the effective detection and quantification of external forces acting on the robot's mechanical links in non-driving directions such as the lateral and axial directions. This provides a reliable foundation of external force information for achieving precise force control across the entire arm range, sensitive collision detection, and novel drag teaching applications.

[0053] Step S110: Control the robot based on the actual external force.

[0054] In step S110 of this application, the actual external force obtained in step S108 is used as the input of the control system. According to the preset control strategy and application scenario, corresponding control commands are generated and sent to the joint actuators of the robot to realize real-time adjustment and precise control of the robot's motion state.

[0055] This step applies the precisely sensed external force to the robot's control loop in real time, enabling the robot to respond quickly and appropriately to changes in the external environment. It achieves a leap from traditional simple position control to true force interaction control, effectively improving the robot's adaptability, safety, and accuracy in complex interactive tasks such as precision assembly, drag teaching, and collision safety. It also solves the technical problems of low control accuracy and large motion deviation caused by incomplete and inaccurate external force sensing in traditional control methods.

[0056] Through steps S102-S110 above, feedback data corresponding to the robot joints is obtained. This feedback data includes drive direction feedback torque data for multiple robot joints and non-drive direction feedback force data for a target joint. The target joint is the joint whose non-drive direction feedback force index is greater than a predetermined index. The robot is a serial robot. Based on the feedback data, a target matrix is ​​constructed. This matrix includes multiple rows and columns. The rows represent rows of drive direction feedback torques for multiple joints and rows of non-drive direction feedback forces for the target joint. The columns represent columns of inertial parameters for multiple links. Each element in the matrix represents the contribution index of the corresponding link's inertial parameter to the corresponding data. Multiple joints and multiple links correspond one-to-one and are alternately connected in series. The corresponding joint is used to drive the corresponding link to move around the joint axis. Based on the target matrix and the robot's predetermined link inertial parameters, the theoretical force required for the robot to maintain its current motion is determined. Based on the theoretical force and the measured total force, the actual external force exerted on the robot by the external environment is obtained. The measured total force represents the total force actually measured on the robot. The robot is then controlled based on the actual external force. This paper adopts a non-drive direction force sensing method. By collecting drive direction feedback torque data of multiple joints of a serial robot and non-drive direction feedback force data of target joints with a non-drive direction feedback force index greater than a predetermined index, a target matrix is ​​constructed, including a drive direction feedback torque row, a non-drive direction feedback force row, and a link inertia parameter column. Combined with the predetermined link inertia parameters, the theoretical force on the robot to maintain its current motion is determined. The actual external force applied by the external environment is calculated by combining the theoretical force with the measured total force. Finally, the robot is controlled based on the actual external force. This achieves the core objective of accurately identifying the actual external force and clarifying the deviation between the theoretical force and the actual force on the robot. This improves the robot's motion control accuracy and reduces motion deviation, thus solving the technical problems of low robot control accuracy and large motion deviation in related technologies.

[0057] As an optional embodiment, the theoretical forces required for the robot to maintain its current motion are determined based on the target matrix and the robot's predetermined link inertia parameters. This includes: performing matrix structure analysis on the target matrix to obtain target columns corresponding to the target matrix, wherein the target columns include linear combination columns and nonlinear combination columns. Linear combination columns represent columns where there is a linear dependency between parameters, and nonlinear combination columns represent columns where there is no dependency between parameters; performing column linear combination operations on the linear combination columns to obtain updated columns after linear combination and corresponding updated combination parameters; integrating the nonlinear combination columns and the updated columns to obtain an integrated matrix; and determining the theoretical forces based on the integrated matrix and the robot's predetermined link inertia parameters.

[0058] This embodiment illustrates a specific implementation method for determining the theoretical force by optimizing the target matrix structure.

[0059] This involves target columns, which are a set of column vectors that require special processing, identified through matrix structure analysis. These can include both linear and nonlinear combination columns, and are the core processing object of matrix optimization operations.

[0060] This involves linear combination columns, which are column vectors in the target matrix that have a linear dependency relationship with other columns. The inertial parameters corresponding to these columns cannot be identified independently and need to be formed into new composite parameters through linear combination.

[0061] This involves nonlinear combination columns, which are column vectors in the target matrix that are linearly independent of other columns. The inertia parameters corresponding to these columns can be independently identified and will be directly retained during the matrix optimization process.

[0062] This involves updating columns, which are new column vectors obtained by performing linear combination operations on linear combination columns. These columns, together with nonlinear combination columns, form a linearly independent group of column vectors.

[0063] This involves updating the combined parameters, which are composite inertial parameters corresponding to the updated columns. These parameters are composed of multiple original linearly related inertial parameters combined according to specific weights and appear as a whole in the dynamic model.

[0064] This involves an integration matrix, which is a new observation matrix formed by integrating the nonlinear combination column and the update column. This matrix has full rank columns and all column vectors are linearly independent, and can be used to uniquely determine all identifiable parameters.

[0065] In this step, the target matrix is ​​first structurally analyzed to identify linear and nonlinear combination columns. Then, linear combination operations are performed on the linear combination columns to generate update columns and corresponding update combination parameters. Next, the nonlinear combination columns are integrated with the update columns to form a full-rank integrated matrix. Finally, based on the integrated matrix and the predetermined link inertia parameters, the theoretical force value is determined through matrix operations.

[0066] This method eliminates linear dependence in the target matrix. By analyzing the matrix structure to identify linearly dependent columns and performing reasonable linear combinations of these columns, it effectively eliminates the matrix singularity problem caused by parameter linear dependence in traditional dynamic identification, providing favorable numerical conditions for parameter identification. It can construct the maximum identifiable parameter set by transforming linear combination columns into updated columns and integrating them with the original nonlinear combination columns to form a full-rank matrix, thus constructing a parameter set containing the maximum number of independently identifiable parameters and fully utilizing all available observation information. It improves the accuracy of theoretical force calculations by calculating theoretical forces based on the integrated matrix, avoiding numerical calculation errors caused by unsuitable matrices, making the calculation of theoretical force values ​​more accurate and reliable, and providing a more precise benchmark reference for subsequent external force sensing. It is particularly suitable for extended dynamic models. This method is specifically designed for extended target matrices that include measurements of non-driving directional forces, effectively handling the linear dependence problem that may be exacerbated by the increase in matrix dimension, ensuring that the extended dynamic model is more theoretically and numerically adapted.

[0067] As an optional embodiment, the theoretical force is determined based on the integrated matrix and the robot's predetermined link inertia parameters, including: performing an identifiable parameter mapping operation on the integrated matrix to obtain a target parameter set, wherein the target parameter set includes identifiable parameters, which are values ​​that can be uniquely determined based on actual measurement data; obtaining a target equation with the theoretical force as a variable based on the target parameter set and the corresponding dynamic equation of the robot, wherein the dynamic equation includes at least one of the following: joint torque equation, external force equation; and solving the target equation based on the robot's real-time motion data to obtain the theoretical force.

[0068] In this embodiment, a specific implementation method for solving theoretical forces based on an identifiable parameter set is described.

[0069] This involves a target parameter set, which is a set of all inertial parameters that can be uniquely determined based on actual measurement data, obtained through identifiable parameter mapping operations. This set includes all independently identifiable basic and composite parameters in the robot dynamics model.

[0070] This involves identifiable parameters, which are elements in the target parameter set. These are inertial parameter values ​​that can be uniquely determined through actual measurement data. They can include basic inertial parameters and composite parameters formed by linear combination. These parameters together constitute a complete description of the robot's dynamic characteristics.

[0071] This involves dynamic equations, which are mathematical equations describing the physical relationship between the robot's motion state, inertial parameters, and joint forces. They may include joint torque equations, such as equations describing the relationship between driving direction torque and motion state, and / or external force equations, such as equations describing the relationship between non-driving direction force and motion state. These equations form the theoretical basis for establishing the target equations.

[0072] This involves the objective equation, which is an equation or set of equations constructed based on the dynamic equation and the identifiable parameter set, with the theoretical force as the unknown quantity. This equation establishes a quantitative calculation relationship between the theoretical force and the identifiable parameters under a given motion state.

[0073] This involves real-time motion data, which is motion state information collected in real time during the robot's operation. It can include data such as the position, velocity, and acceleration of each joint. These data are input as known quantities into the objective equation to solve for the theoretical forces.

[0074] In this step, the integrated matrix is ​​first subjected to identifiable parameter mapping to determine the composition of the target parameter set; then, based on the target parameter set and the robot dynamics equations, a target equation with theoretical forces as variables is constructed; finally, the robot's real-time motion data is substituted into the target equations, and the specific values ​​of the theoretical forces are obtained through numerical solution.

[0075] This method enables the establishment of an accurate theoretical force calculation model. By mapping identifiable parameters, it ensures that all inertial parameters used are uniquely determinable, avoiding the model uncertainty caused by the use of unidentifiable parameters in traditional methods. This results in a more accurate and reliable theoretical force calculation model. Real-time and efficient calculation of theoretical forces is achieved. Based on a pre-determined set of target parameters, target equations are constructed. During actual control, only real-time motion data needs to be substituted to quickly solve for the theoretical forces, resulting in high computational efficiency and meeting the timeliness requirements of robot real-time control. It fully leverages the advantages of extended dynamic models. This method is designed for extended dynamic models that include measurements of forces in non-driving directions. The constructed target equations simultaneously consider the theoretical calculations of driving direction torques and non-driving direction forces, ensuring the completeness and accuracy of the theoretical force values. The reliability of external force sensing is improved. This rigorous theoretical force calculation method based on identifiable parameters provides more accurate and reliable benchmark values ​​for subsequent external force separation, significantly improving the accuracy and reliability of actual external force sensing.

[0076] As an optional embodiment, a matrix structure analysis operation is performed on the target matrix to obtain the target column corresponding to the target matrix, including: performing a matrix structure analysis operation on the target matrix to obtain a column of all zeros in the target matrix, wherein the column of all zeros represents a column that does not contribute to the identification of dynamic parameters; performing a removal operation on the column of all zeros to obtain an intermediate matrix; and performing a matrix structure analysis operation on the intermediate matrix to obtain the target column in the intermediate matrix.

[0077] This embodiment illustrates a specific implementation method for optimizing the matrix structure by eliminating columns filled with zeros.

[0078] Among them, all-zero columns are involved. All-zero columns are column vectors in the target matrix where all element values ​​are zero. The inertial parameters corresponding to these columns have no effect on the current measurement data and cannot provide any effective information in dynamic parameter identification. They are completely unidentifiable parameters.

[0079] This involves an intermediate matrix, which is a new matrix obtained after removing all zero columns. This matrix retains all column vectors in the target matrix that contribute to parameter identification and forms the basis for subsequent linear correlation analysis.

[0080] In this step, the original target matrix is ​​first subjected to structural analysis to identify the columns containing all zeros; then these columns containing all zeros are removed from the matrix to obtain the intermediate matrix with reduced dimensions; finally, the intermediate matrix is ​​subjected to structural analysis again to identify the linear combination columns and nonlinear combination columns, i.e., the target columns.

[0081] This method effectively eliminates the influence of invalid parameters. By identifying and removing all-zero columns, it excludes inertial parameters that have no impact on the current measurement configuration, avoiding unnecessary processing of these invalid parameters in subsequent calculations and improving computational efficiency. It simplifies the matrix structure for subsequent analysis; the dimensionality of the intermediate matrix is ​​significantly reduced after removing all-zero columns, decreasing the complexity and computational cost of subsequent linear correlation analysis, making the matrix structure clearer and facilitating the identification of true linear correlation problems. It improves the numerical stability of parameter identification; the presence of all-zero columns leads to a deterioration in the matrix condition number. Removing these columns improves the numerical characteristics of the matrix, enhancing the stability and reliability of subsequent parameter identification algorithms. It is particularly suitable for extended measurement configurations. In extended target matrices containing non-driving direction force measurements, new all-zero columns may appear due to the increased measurement information. This method effectively identifies and handles these situations, ensuring the reasonable structure of the extended dynamic model. It lays the foundation for accurate dynamic modeling. Through this progressively refined matrix processing, it ensures that the final matrix used for parameter identification contains only truly contributing column vectors, providing a sound mathematical foundation for establishing an accurate dynamic model.

[0082] As an optional embodiment, the robot is controlled based on the actual external force, including: when the actual external force includes a first sub-external force corresponding to the first joint, retrieving the admittance control loop corresponding to the robot, wherein the admittance control loop is used to characterize the mapping relationship between the joint external force parameter input and the motion parameter output, and the first joint is the joint with the highest motion transmission efficiency among multiple joints; determining the target end effector motion parameters corresponding to the end effector of the robot based on the first sub-external force and the admittance control loop; performing inverse kinematics operation based on the target end effector motion parameters to obtain the target joint motion parameters of a predetermined joint, wherein the predetermined joint is the joint corresponding to the end effector and includes the first joint; performing joint trajectory planning operation based on the real-time motion state of the predetermined joint and the target joint motion parameters to obtain a smooth motion trajectory corresponding to the predetermined joint; and sending a position control command to the actuator corresponding to the predetermined joint to perform joint driving operation, wherein the position control command carries the smooth motion trajectory.

[0083] In this embodiment, a specific implementation of drag teaching based on admittance control is described.

[0084] This involves the first sub-external force, which is the component of the actual external force acting on the first joint. It is the force / torque value acting on a specific joint obtained by decomposing the external force, and is used to trigger the admittance control response corresponding to that joint.

[0085] This involves an admittance control loop, which is a control system based on the admittance control principle. By simulating dynamic characteristics, it converts the input external force into the desired motion response. For example, it can simulate the dynamic characteristics of mass, spring, and damping systems to achieve compliant motion control of robots.

[0086] This involves the joints with the highest motion transmission efficiency. The joints with the highest motion transmission efficiency are those whose motion changes have the most significant impact on the end-effector pose in the current configuration of the robot. They are usually determined through Jacobian matrix analysis. Selecting such joints can improve the sensitivity and control efficiency of drag teaching.

[0087] This involves target end-effector motion parameters, which are the desired motion state of the robot's end effector calculated through admittance control. These parameters can include end-effector position, velocity, and acceleration, providing target values ​​for subsequent motion planning.

[0088] This involves predetermined joints, which are the set of all joints involved in the current control, including the first joint and all subsequent joints, which together determine the motion state of the end effector.

[0089] This involves target joint motion parameters, which are the desired motion states of each predetermined joint obtained through inverse kinematics calculations, and may include parameters such as joint angles, angular velocities, and angular accelerations.

[0090] This involves smooth motion trajectories, which are the motion paths of each joint generated through trajectory planning. These trajectories are continuously differentiable in terms of position, velocity, and acceleration, thus avoiding impacts and vibrations during the motion process.

[0091] This involves position control commands, which are control signals sent to the joint actuators and contain information on a planned smooth motion trajectory. The actuators then drive the robot to move along the predetermined trajectory according to these commands.

[0092] In this step, the first sub-external force acting on the first joint is first detected; then the admittance control loop is invoked to calculate the target end motion parameters based on the first sub-external force; next, the target joint motion parameters of each predetermined joint are obtained through inverse kinematics; then, joint trajectory planning is performed to generate a smooth motion trajectory; finally, position control commands containing the smooth trajectory are sent to the joint actuator to realize the robot's compliant movement.

[0093] This method enables direct force control at the non-end-effector. By detecting external forces at the first joint and directly applying them to admittance control, it achieves the ability to perform drag teaching at any position on the robot arm, overcoming the limitation of traditional methods that can only drag at the end-effector. Based on the external force and motion mapping relationship of admittance control, it ensures the smoothness and accuracy of motion. Through the combination of inverse kinematics and trajectory planning, it ensures that the robot's motion conforms to both the operational intent and dynamic constraints throughout the entire process from external force input to final motion, resulting in smooth and precise motion. Since it eliminates the need for bulky force sensors at the end-effector, it reduces the size and weight of the end-effector, allowing the robot to better perform drag teaching tasks in space-constrained environments. It improves the flexibility of drag teaching by selecting the joint with the highest motion transmission efficiency as the force control input point, optimizing the sensitivity and response characteristics of force control, and enabling effective robot control with smaller force transmissions.

[0094] As an optional embodiment, the robot is controlled based on the actual external force, including: when the actual external force includes a second sub-external force corresponding to the second joint, retrieving the link elasticity model corresponding to the robot, wherein the second joint is the joint that contributes the most to the error among multiple joints; determining the elastic deformation corresponding to the second joint based on the second sub-external force and the link elasticity model; determining the end-effector positioning error caused by deformation of the robot's end effector based on the elastic deformation; performing an inverse error decomposition operation based on the end-effector positioning error to obtain the error compensation amount corresponding to each of the multiple joints; determining the reverse compensation position command corresponding to each of the multiple joints based on the error compensation amount corresponding to each of the multiple joints and the current real-time position; and sending the corresponding reverse compensation position command to the actuator corresponding to each of the multiple joints to perform joint position adjustment operation.

[0095] This embodiment illustrates a specific implementation method for accuracy improvement control based on linkage elastic deformation compensation.

[0096] This involves a second sub-external force, which is the component of the actual external force acting on the second joint. It is the force / torque value acting on the specific joint obtained by decomposing the external force, and is used to trigger the elastic deformation compensation control corresponding to the joint.

[0097] This involves the link elasticity model, which is a mathematical model that describes the elastic deformation of a robot link under external load. This model can establish a quantitative relationship between external force and link deformation, and is the theoretical basis for deformation compensation.

[0098] This involves the second joint, which is the joint that contributes the most to the error. The joint that contributes the most to the error is the joint whose deformation has the most significant impact on the end-effector positioning error under the current configuration and stress state of the robot. It is usually determined through sensitivity analysis or experimental calibration. Prioritizing compensation for this type of joint can most effectively improve accuracy.

[0099] This involves elastic deformation, which is the actual deformation of the connecting rod under the action of a second external force. It can include deformation forms such as bending and torsion, and is calculated by substituting the measured external force into the elastic model of the connecting rod.

[0100] This involves end-effector positioning error, which is the deviation between the actual position and the theoretical position of the robot's end-effector caused by the elastic deformation of the link. It is calculated using the elastic deformation and the robot's kinematic model.

[0101] This involves error compensation, which is the amount of motion that each joint needs to be adjusted, obtained through inverse error decomposition, to offset the end-positioning error caused by elastic deformation.

[0102] This involves a reverse compensation position command, which is a control signal sent to the joint actuator. This command adds an error compensation amount to the current target position of the joint and cancels out the deformation effect through reverse movement.

[0103] In this step, the second sub-external force acting on the second joint is first detected; then the link elastic model is retrieved, and the elastic deformation at the joint is calculated based on the second sub-external force; next, the end-positioning error is calculated based on the elastic deformation; the error compensation amount of each joint is obtained through inverse error decomposition; a reverse compensation position command is generated based on the error compensation amount and the current real-time position; finally, commands are sent to each joint actuator to complete the position adjustment.

[0104] This method enables precision compensation based on actual measurements. By directly measuring external forces in non-driving directions and calculating deformation based on an elastic model, it compensates for lateral deformation that traditional methods cannot consider, significantly improving the comprehensiveness and accuracy of precision compensation. It can selectively compensate for major error sources by prioritizing compensation for the joints that contribute the most to the error, achieving maximum precision improvement with minimal control overhead and improving compensation efficiency. It can adapt to dynamically changing load conditions by monitoring changes in external forces in real time and dynamically adjusting the compensation amount, enabling the robot to maintain high precision under different load conditions and enhancing the system's adaptability. It is particularly suitable for high-load, high-precision scenarios. Under heavy loads or high-speed motion, the elastic deformation of links becomes the main error source. This method can effectively compensate for these errors, achieving fully automated processing from perception and deformation calculation to error allocation and position compensation.

[0105] As an optional embodiment, the robot is controlled based on the actual external force, including: when the actual external force includes a third sub-external force corresponding to the third joint, retrieving a collision threshold corresponding to the target joint of the robot, wherein the third joint is a joint among multiple joints whose collision index is greater than a predetermined threshold; and determining a collision detection result as to whether the robot is subjected to a collision based on the third sub-external force and the collision threshold.

[0106] In this embodiment, a specific implementation method for collision detection based on non-driving directional force perception is described.

[0107] This involves a third sub-external force, which is the component of the actual external force acting on the third joint. It is the force / torque value acting on the specific joint obtained by decomposing the external force, and is specifically used to determine the collision state of the joint.

[0108] This involves a collision threshold, which is a pre-set force / torque threshold used to determine whether a collision has occurred. It is determined through experimental calibration based on the structural strength of different joints and the safety requirements of the working environment. When the measured external force exceeds this threshold, collision protection is triggered.

[0109] This includes the collision index, which is an assessment indicator that quantifies the probability and risk of collisions at each joint. It can be calculated based on factors such as the degree of structural protrusion of the joint, movement speed, and workspace location, and is used to identify the key joints most prone to collisions.

[0110] This involves a predetermined threshold, which is a critical index value used to screen joints with high collision risk. It is determined through statistical analysis of historical collision data and risk assessment. Joints with a collision index higher than this value are listed as key monitoring targets.

[0111] This involves collision detection results, which are binary judgment results derived from comparing the third external force with the collision threshold. These results include two states: collision occurred and no collision occurred, which are used to trigger corresponding safety protection measures.

[0112] In this step, the third sub-external force acting on the third joint is first identified from the actual external forces; then the collision threshold preset for the joint is retrieved; next, the third sub-external force is compared with the collision threshold in real time; finally, the collision detection result is determined based on the comparison result, and a collision is determined when the third sub-external force exceeds the collision threshold.

[0113] This method enables collision detection across the entire arm. By monitoring non-driving forces at key locations such as the third joint, it effectively detects lateral and axial collisions that are impossible with traditional methods, expanding the coverage of collision detection. It provides earlier collision warnings; the third joint is a high-risk collision location, and direct detection of collisions there, compared to indirect judgments based on the middle or base joints, allows for earlier detection of collision events and provides more response time for safety protection. It accurately identifies collision locations by differentiating external forces at different joints and setting independent thresholds. This not only detects collisions but also precisely locates the specific joint where the collision occurred, providing more detailed information for subsequent processing. It is particularly suitable for safety protection in complex environments. In narrow, crowded working environments, accidental contact is more likely to occur in the middle of the robot arm; this method effectively detects such collisions, significantly improving the safety of human-robot collaboration. By monitoring non-driving forces, it can detect collisions that do not generate driving torque, eliminating blind spots in traditional collision detection and solving the perception blind spot problem of traditional joint torque-based collision detection methods.

[0114] Based on the above embodiments and optional embodiments, an optional implementation method is provided, which is described in detail below.

[0115] In related technologies, external force sensing is a crucial prerequisite for achieving effective active compliant robot control. Existing active compliant robot control technologies are mainly divided into two types: sensor-based external force sensing and algorithm-based force observation based on joint actuators. Sensor-based external force sensing can be further divided into three categories. Joint sensor-based solutions, which add sensors to the joint actuators to measure the driving force, significantly simplify the robot's joint physical model, ignoring external forces that may affect the robot joints beyond the driving direction. End-effector sensor-based solutions also have significant limitations: the sensor's sensitive area is very limited, only measuring forces at the end effector, failing to achieve force sensing across the entire arm. Furthermore, installing sensors increases the weight and size of the end effector, potentially affecting the robot's ability to operate in confined spaces. External sensor-based solutions typically suffer from large data volumes, high processing latency, and susceptibility to interference from ambient light and occlusion. Their control loop frequency is much lower than that of force sensor-based solutions, making it difficult to meet the demands of high-dynamic interactive tasks requiring millisecond-level real-time force feedback. They are mostly used as auxiliary and supplementary to the aforementioned force control solutions.

[0116] In related technologies, joint sensor-based solutions, which involve adding sensors to the joint actuators to measure the driving force, essentially simplify the physical model of the robot joints significantly, ignoring external forces that may act on the robot joints besides the driving direction. End-effector sensor-based solutions have very limited sensor sensitivity, only measuring forces at the end effector and unable to achieve force sensing across the entire arm. Furthermore, installing sensors increases the weight and size of the end effector, potentially affecting the robot's ability to operate in confined spaces. External sensor-based solutions typically suffer from large data volumes, high processing latency, and susceptibility to interference from ambient light and occlusion. Their control loop frequency is much lower than that of force sensor-based solutions, making it difficult to meet the demands of highly dynamic interactive tasks requiring millisecond-level real-time force feedback. These solutions are mostly used as auxiliary and supplementary to the aforementioned force control solutions.

[0117] In view of this, an optional embodiment of the present invention provides a novel compliant control method that incorporates external forces other than the driving direction of the robot joint actuator into the sensing and control loop, thereby achieving more precise compliant control. Figure 2 This is a schematic diagram of the configuration of a serial 6-DOF robot and the local coordinate system of each joint actuator according to an optional embodiment of the present invention, which will be described below.

[0118] This invention proposes a serial robot compliant control algorithm based on external force sensing, including the driving direction of the joint actuators. The main processing flow is as follows:

[0119] Based on the dynamic model of a serial robot, more accurate robot dynamic parameters are identified by utilizing the feedback driving force of the joint actuators (feedback torque data corresponding to the driving directions of the aforementioned joints) and the forces (torques) measured by sensors located at each joint actuator in directions other than the driving direction (feedback force data corresponding to the non-driving direction of the aforementioned target joint). The feedback position q, feedback velocity qd, and feedback acceleration qdd of each joint actuator are obtained; the feedback force (torque) W of each joint actuator is also obtained. fb The feedback force (torque) is measured by a sensor and can be multi-dimensional, up to 6-dimensional, and includes the feedback force (torque) outside the direction of the joint actuator. For example, for a rotary joint, if the rotation direction in its local coordinate system is denoted as rotation around the positive z-axis, then the feedback torque in the direction of the joint actuator is Mz, and the feedback force outside the direction of the joint actuator is Fx / Fy / Fz / Mx / My.

[0120] Under the same coordinate definition, if it is a linear joint, the feedback force in the direction of the joint actuator is Fz, and the feedback force outside the direction of the joint actuator is Fx / Fy / Mx / My / Mz; using q, qd, qdd and the identified robot dynamic parameters, the theoretical force T of each joint actuator of the robot is calculated. ff and the measured total force T fb Calculate the external force T=T fb -T ff Force compliance control is achieved by substituting T into the force compliance control model.

[0121] This embodiment uses a serial 6-DOF robot as an example, where all joints are rotary joints. Its configuration, local coordinate systems of each joint actuator, and MDH parameters are defined according to the MDH modeling method as follows, with the gravity direction being... Direction, such as Figure 2 As shown, Table 1 is the parameter table for the serial 6-DOF robot MDH.

[0122] Table 1

[0123]

[0124] A three-dimensional force sensor is installed at the output end of the robot's 3rd joint (i=3) to measure the force components Fx / Fy / Fz of the force exerted by the 3rd joint on the 4th joint under the definition of the 3rd joint's local coordinate system. In addition, the output torque τ=[τ1,τ2,τ3,τ4,τ5,τ6] of all joint actuators is measured from the output torque of the joint motors. The feedback data obtainable from the robot's joint actuators include: the feedback position q, feedback velocity qd, and feedback acceleration qdd of each joint actuator (all 6-dimensional arrays); and a 9-dimensional array T=[τ1,τ2,τ3,τ4,τ5,τ6, Fx3,Fy3,Fz3] composed of the feedback torque at each actuator and the feedback force measured by the 3rd joint three-dimensional force sensor, where Fx3 is the force component of the 3rd joint in the x-direction, Fy3 is the force component of the 3rd joint in the y-direction, and Fz3 is the force component of the 3rd joint in the z-direction.

[0125] First, due to the addition of 3-joint sensors, the robot's dynamics model has changed compared to the traditional dynamics model, requiring dynamic modeling of this robot. Since this is only an example, to simplify the calculation process, only the link inertia parameters are considered here. In practical applications, more parameters, such as friction, need to be considered. The robot's dynamics equations can be written as: Where H represents the robot's dynamic link inertial parameters, a 60-dimensional vector containing 10 inertial parameters for each link: Ixx, Ixy, Ixz, Iyy, Iyz, Izz, Mx, My, Mz, M. W(q,qd,qdd) is 9 A 60-dimensional matrix (same as the target matrix above) can be written as:

[0126]

[0127] Compared to traditional dynamic models, only (6) For the 60-dimensional matrix part, due to the addition of the extra measurable force from the 3-joint sensor (T expands from 6-dimensional to 9-dimensional), W(q,qd,qdd) is also expanded accordingly. (3) (part of a 60-dimensional matrix).

[0128] Secondly, due to the row expansion of the W matrix, its all-zero columns and linearly combinable columns change. These all-zero columns and linearly combinable columns correspond to the parts of all dynamic parameters that cannot be independently identified. By eliminating and linearly combining the columns of the W matrix, the largest identifiable parameter set in H can be obtained.

[0129] Calculations show that the addition of the 3-joint sensors increases the number of identifiable parameters in H by two compared to the traditional dynamic model. The remaining maximum identifiable parameter set after elimination... It is a 38-dimensional array. 9 A 38-dimensional matrix.

[0130] After the removal is completed, the robot runs the excitation trajectory and records the total number of iterations n (n is much larger than...) during the process. Given q, qd, qdd, and T at several time points (the dimension of the equation is given), and using q, qd, and qdd to calculate W(q, qd, qdd), we can obtain the following formula:

[0131]

[0132] Finally, calculate The pseudo-inverse of a matrix and left multiplication to The identification value of H can be obtained, and the identification of dynamic parameters is now complete.

[0133] During the application, real-time feedback of q, qd, and qdd is used to calculate the W matrix, which is then substituted into T=W(q,qd,qdd).H to obtain the theoretical value of T at this time. By comparing the real-time feedback torque of the joint actuator with the real-time force measured by the 3-joint 3D force sensor, the actual external force T can be obtained, including external forces other than the joint rotation torque of the 3 joints. .

[0134] get In the future, it can be used in various control loops to achieve different effects. Here are three different application methods:

[0135] Applied to collision detection loops: Set a threshold, when If the time limit is exceeded, a collision is considered detected.

[0136] Specifically, as mentioned above, when the actual external force includes the third sub-external force corresponding to the third joint, the collision threshold corresponding to the target joint of the robot can be retrieved. Here, the third joint is the joint among multiple joints whose collision index is greater than a predetermined threshold. Based on the third sub-external force and the collision threshold, the collision detection result of whether the robot is collided can be determined.

[0137] Apply to drag-and-drop teaching: Applied in admittance control loops, enabling the robot end effector to... The size and direction of the movement are adapted to the movement, thereby achieving the effect of "remotely controlling" the robot's end effector to move at any position between the 3rd and 6th joints;

[0138] Specifically, as described above, when the actual external force includes the first sub-external force corresponding to the first joint, the admittance control loop corresponding to the robot is invoked. The admittance control loop characterizes the mapping relationship between the joint external force parameter input and the motion parameter output. The first joint is the joint with the highest motion transmission efficiency among multiple joints. Based on the first sub-external force and the admittance control loop, the target end effector motion parameters corresponding to the robot's end effector are determined. Based on the target end effector motion parameters, inverse kinematics is performed to obtain the target joint motion parameters of a predetermined joint, where the predetermined joint is the joint corresponding to the end effector and includes the first joint. Based on the real-time motion state of the predetermined joint and the target joint motion parameters, joint trajectory planning is performed to obtain a smooth motion trajectory corresponding to the predetermined joint. A position control command is sent to the actuator corresponding to the predetermined joint to perform joint driving operations, where the position control command carries the smooth motion trajectory.

[0139] Application to improve accuracy: Applied to the precision compensation loop, the elastic deformation of the three joints caused by external forces is calculated using the elastic model of the robot links. Then, the positioning error caused by the deformation of the end beam is calculated. Finally, reverse commands are sent to each joint to compensate for this positioning error, thereby improving the positioning accuracy of the robot.

[0140] Specifically, as described above, when the actual external force includes the second sub-external force corresponding to the second joint, the link elasticity model corresponding to the robot is retrieved, where the second joint is the joint that contributes the most to the error among multiple joints. Based on the second sub-external force and the link elasticity model, the elastic deformation corresponding to the second joint is determined. Based on the elastic deformation, the end-effector positioning error caused by deformation is determined. Based on the end-effector positioning error, an inverse error decomposition operation is performed to obtain the error compensation amount corresponding to each of the multiple joints. Based on the error compensation amount corresponding to each of the multiple joints and the current real-time position, the reverse compensation position command corresponding to each of the multiple joints is determined. The corresponding reverse compensation position command is sent to the actuator corresponding to each of the multiple joints to perform joint position adjustment operations.

[0141] The above optional implementation methods can achieve at least the following beneficial effects:

[0142] (1) The force-sensing compliant control method proposed in this embodiment, which includes directions other than the drive direction of the actuator, can identify more robot dynamic parameters and establish a more accurate dynamic model compared with the control method that only uses the joint actuator directional torque feedback and the method that uses the end sensor.

[0143] (2) Obtain the external force directly applied to the robot's mechanical structure rather than the actuator, thus eliminating the blind spot in external force observation;

[0144] (3) Compared with end sensors, it can achieve a wider range of force observation sensitivity, thus making compliant control not limited to the end.

[0145] It should be noted that, for the sake of simplicity, the foregoing method embodiments are all described as a series of actions. However, those skilled in the art should understand that the present invention is not limited to the described order of actions, because according to the present invention, some steps can be performed in other orders or simultaneously. Furthermore, those skilled in the art should also understand that the embodiments described in the specification are preferred embodiments, and the actions and modules involved are not necessarily essential to the present invention.

[0146] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods according to the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) and includes several instructions to cause a terminal device (which may be a mobile phone, computer, server, or network device, etc.) to execute the methods of the various embodiments of the present invention.

[0147] Example 2

[0148] According to embodiments of the present invention, an apparatus for implementing the above-described robot control method is also provided. Figure 3 This is a structural block diagram of a robot control device according to an embodiment of the present invention, such as... Figure 3 As shown, the device includes: an acquisition module 302, a construction module 304, a first determination module 306, a second determination module 308, and a control module 310. The device will be described in detail below.

[0149] The acquisition module 302 is used to acquire feedback data corresponding to robot joints. The feedback data includes drive direction feedback torque data corresponding to multiple joints of the robot, and non-drive direction feedback force data corresponding to a target joint. The target joint is a joint whose corresponding non-drive direction feedback force index is greater than a predetermined index. The robot is a serial robot. The construction module 304, connected to the acquisition module 302, is used to construct a target matrix based on the feedback data. The target matrix includes multiple rows and multiple columns. The multiple rows represent rows of drive direction feedback torque corresponding to multiple joints and rows of non-drive direction feedback forces corresponding to the target joint. The multiple columns include columns of inertial parameters corresponding to multiple links. The elements in the matrix represent the feedback torque data of multiple links. The contribution index of the link inertia parameters to the corresponding data is used to determine the contribution index of the link inertia parameters to the corresponding data. The multiple joints correspond one-to-one with the multiple links and are connected in series alternately. The corresponding joint is used to drive the corresponding link to move around the joint axis. The first determining module 306 is connected to the above-mentioned construction module 304 and is used to determine the theoretical force of the robot to maintain the current motion based on the target matrix and the predetermined link inertia parameters of the robot. The second determining module 308 is connected to the above-mentioned first determining module 306 and is used to obtain the actual external force exerted on the robot by the external environment based on the theoretical force and the measured total force, wherein the measured total force represents the total force actually measured on the robot. The control module 310 is connected to the above-mentioned second determining module 308 and is used to control the robot based on the actual external force.

[0150] It should be noted here that the above-mentioned acquisition module 302, construction module 304, first determination module 306, second determination module 308 and control module 310 correspond to steps S102 to S110 in the robot control method. The multiple modules and the corresponding steps implement the same instances and application scenarios, but are not limited to the content disclosed in the above embodiment 1.

[0151] Example 3

[0152] According to another aspect of the present invention, an electronic device is also provided, comprising: a processor; and a memory for storing processor-executable instructions, wherein the processor is configured to execute instructions to implement the robot control method of any of the above embodiments.

[0153] Example 4

[0154] According to another aspect of the present invention, a computer-readable storage medium is also provided, which, when the instructions in the computer-readable storage medium are executed by a processor of an electronic device, enables the electronic device to perform the robot control method described above.

[0155] The sequence numbers of the above embodiments of the present invention are for descriptive purposes only and do not represent the superiority or inferiority of the embodiments.

[0156] In the above embodiments of the present invention, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions of other embodiments.

[0157] In the several embodiments provided in this application, it should be understood that the disclosed technical content can be implemented in other ways. The device embodiments described above are merely illustrative; for example, the division of units can be a logical functional division, and in actual implementation, there may be other division methods. For instance, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the displayed or discussed mutual coupling, direct coupling, or communication connection may be through some interfaces; the indirect coupling or communication connection between units or modules may be electrical or other forms.

[0158] 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 units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0159] Furthermore, the functional units in the various embodiments of the present invention 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.

[0160] 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 the present invention, 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 described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, read-only memory (ROM), random access memory (RAM), portable hard drives, magnetic disks, or optical disks.

[0161] The above description is only a preferred embodiment of the present invention. It should be noted that for those skilled in the art, several improvements and modifications can be made without departing from the principle of the present invention, and these improvements and modifications should also be considered within the scope of protection of the present invention.

Claims

1. A method for controlling a robot, characterized in that, include: The feedback data corresponding to the robot joints is obtained, wherein the feedback data includes the driving direction feedback torque data corresponding to multiple joints of the robot, and the non-driving direction feedback force data corresponding to the target joint, wherein the target joint is the joint whose corresponding non-driving direction feedback force index is greater than a predetermined index, and the robot is a serial robot. Based on the feedback data, a target matrix is ​​constructed, wherein the target matrix includes multiple rows and multiple columns. The multiple rows represent rows of driving direction feedback torque corresponding to multiple joints and rows of non-driving direction feedback force corresponding to the target joint. The multiple columns include columns of inertial parameters corresponding to multiple links. The elements in the matrix represent the contribution index of the corresponding link inertial parameter to the corresponding data. The multiple joints and the multiple links correspond one-to-one and are connected in series alternately. The corresponding joint is used to drive the corresponding link to move around the joint axis. Based on the target matrix and the robot's predetermined link inertia parameters, the theoretical forces required for the robot to maintain its current motion are determined. Based on the theoretical force and the measured total force, the actual external force exerted on the robot by the external environment is obtained, wherein the measured total force represents the total force actually measured on the robot; The robot is controlled based on the actual external force.

2. The method according to claim 1, characterized in that, Based on the target matrix and the robot's predetermined link inertia parameters, the theoretical forces acting on the robot to maintain its current motion are determined, including: Perform matrix structure analysis on the target matrix to obtain the target columns corresponding to the target matrix. The target columns include linear combination columns and nonlinear combination columns. The linear combination columns represent columns in which there is a linear dependency between parameters, and the nonlinear combination columns represent columns in which there is no dependency between parameters. Perform a column linear combination operation on the linear combination column to obtain the updated column after linear combination and the corresponding updated combination parameters; Integrating the nonlinear combination column with the updated column yields the integrated matrix; The theoretical force is determined based on the integrated matrix and the predetermined link inertia parameters of the robot.

3. The method according to claim 2, characterized in that, Based on the integrated matrix and the robot's predetermined link inertia parameters, the theoretical forces are determined, including: The integrated matrix is ​​subjected to an identifiable parameter mapping operation to obtain a target parameter set, wherein the target parameter set includes identifiable parameters, which are values ​​that can be uniquely determined based on actual measurement data; Based on the target parameter set and the dynamic equations corresponding to the robot, a target equation with theoretical forces as variables is obtained, wherein the dynamic equation includes at least one of the following: joint torque equation, external force equation; Based on the robot's real-time motion data, the objective equation is solved to obtain the theoretical force.

4. The method according to claim 1, characterized in that, Perform matrix structure analysis on the target matrix to obtain the target columns corresponding to the target matrix, including: Perform matrix structure analysis on the target matrix to obtain all-zero columns in the target matrix, wherein the all-zero columns represent columns that do not contribute to the identification of dynamic parameters; The intermediate matrix is ​​obtained by removing the columns containing all zeros. Perform matrix structure analysis on the intermediate matrix to obtain the target column in the intermediate matrix.

5. The method according to claim 1, characterized in that, Controlling the robot based on the actual external force includes: When the actual external force includes the first sub-external force corresponding to the first joint, the admittance control loop corresponding to the robot is invoked. The admittance control loop is used to characterize the mapping relationship between the joint external force parameter input and the motion parameter output. The first joint is the joint with the highest motion transmission efficiency among the plurality of joints. Based on the first external force and the admittance control loop, the target end motion parameters corresponding to the end part of the robot are determined; Based on the target end-effector motion parameters, an inverse kinematics operation is performed to obtain the target joint motion parameters of a predetermined joint, wherein the predetermined joint is the joint corresponding to the end-effector and the predetermined joint includes the first joint; Based on the real-time motion state of the predetermined joint and the motion parameters of the target joint, a joint trajectory planning operation is performed to obtain a smooth motion trajectory corresponding to the predetermined joint. A position control command is sent to the actuator corresponding to the predetermined joint to perform joint driving operation, wherein the position control command carries the smooth motion trajectory.

6. The method according to claim 1, characterized in that, Controlling the robot based on the actual external force includes: When the actual external force includes the second sub-external force corresponding to the second joint, the link elasticity model corresponding to the robot is retrieved, wherein the second joint is the joint that contributes the most to the error among the plurality of joints; Based on the second external force and the elastic model of the connecting rod, determine the elastic deformation corresponding to the second joint; Based on the elastic deformation, determine the end-effector positioning error caused by the deformation of the robot's end-effector. Based on the end-positioning error, an inverse error decomposition operation is performed to obtain the error compensation amount corresponding to each of the multiple joints; Based on the error compensation amount corresponding to each of the multiple joints and the current real-time position, determine the reverse compensation position command corresponding to each of the multiple joints; Send corresponding reverse compensation position commands to the drivers corresponding to the plurality of joints respectively to perform joint position adjustment operations.

7. The method according to any one of claims 1 to 6, characterized in that, Controlling the robot based on the actual external force includes: When the actual external force includes the third sub-external force corresponding to the third joint, the collision threshold corresponding to the target joint of the robot is retrieved, wherein the third joint is the joint among the plurality of joints whose collision index is greater than a predetermined threshold; Based on the third external force and the collision threshold, a collision detection result is determined to determine whether the robot has been collided with.

8. A control device for a robot, characterized in that, include: The acquisition module is used to acquire feedback data corresponding to robot joints. The feedback data includes drive direction feedback torque data corresponding to multiple joints of the robot, and non-drive direction feedback force data corresponding to a target joint. The target joint is a joint whose corresponding non-drive direction feedback force index is greater than a predetermined index. The robot is a serial robot. The construction module is used to construct a target matrix based on the feedback data. The target matrix includes multiple rows and multiple columns. The multiple rows represent rows of driving direction feedback torque corresponding to multiple joints and rows of non-driving direction feedback force corresponding to the target joint. The multiple columns include columns of inertial parameters corresponding to multiple links. The elements in the matrix represent the contribution index of the corresponding link inertial parameter to the corresponding data. The multiple joints and the multiple links correspond one-to-one and are connected in series alternately. The corresponding joint is used to drive the corresponding link to move around the joint axis. The first determining module is used to determine the theoretical force required for the robot to maintain its current motion based on the target matrix and the robot's predetermined link inertia parameters; The second determining module is used to obtain the actual external force exerted on the robot by the external environment based on the theoretical force and the measured total force, wherein the measured total force represents the total force actually measured on the robot; The control module is used to control the robot based on the actual external force.

9. An electronic device, characterized in that, include: processor; Memory used to store the processor's executable instructions; The processor is configured to execute the instructions to implement the robot control method as described in any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that, When the instructions in the computer-readable storage medium are executed by the processor of the electronic device, the electronic device is able to perform the robot control method as described in any one of claims 1 to 7.