Object control method and device, computer equipment, readable storage medium and program product
By acquiring real-time robot motion characteristic data and force information, dynamically analyzing the force transmission direction and positional relationship of joint structures, decomposing and mapping external forces to each joint structure, and combining friction compensation, the problem of insufficient control accuracy in traditional robot teaching is solved, achieving higher control precision for the robotic arm.
Patent Information
- Application Number
- CN202512021933.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-30
- Publication Date
- 2026-03-06
AI Technical Summary
In traditional robot teaching, the fixed distribution ratio of external forces to each joint leads to poor control accuracy of the robotic arm, and the actual trajectory does not match the expected trajectory.
By acquiring real-time motion characteristic data of the target object and target force information of external forces, the dynamic torque mapping relationship is determined, and the target force information is decomposed and mapped based on this relationship to obtain the target torque corresponding to each joint structure. Combined with dynamic friction and static friction for compensation, precise control of the target object is achieved.
This improves the flexibility of each joint structure in responding to external forces, enabling the actual trajectory to match the desired trajectory and enhancing the accuracy of robotic arm control.
Smart Images

Figure CN121608153A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of robotics, and in particular to an object control method, apparatus, computer device, computer-readable storage medium, and computer program product. Background Technology
[0002] With the development of robotics technology, robots are being used more and more in the production and manufacturing fields. Before a robot can be used, it needs to be taught.
[0003] In traditional technology, during the robot drag teaching process, after the robot's end effector is subjected to an external force, the external force is directly distributed to each joint of the robot arm according to a fixed proportion or weight to obtain the target torque corresponding to each joint.
[0004] However, since the proportion of external force distribution to each joint is fixed, the actual trajectory of each joint under target torque control is inconsistent with the expected trajectory, resulting in poor control accuracy of the robotic arm. Summary of the Invention
[0005] Therefore, it is necessary to provide an object control method, apparatus, computer device, computer-readable storage medium, and computer program product to address the aforementioned technical problems.
[0006] Firstly, this application provides an object control method, including:
[0007] Acquire real-time motion characteristic data of the target object and the target force information of external forces within each time period;
[0008] For each time period, the force transmission direction and relative position relationship of each joint structure of the target object in the current pose are determined according to the real-time motion feature data, and the dynamic torque mapping relationship is determined according to the force transmission direction and the relative position relationship.
[0009] Based on the dynamic torque mapping relationship within each time period, the target force information is decomposed and mapped to obtain the first target torque corresponding to each joint structure.
[0010] The target object is controlled based on the first target torque within each of the aforementioned time periods.
[0011] In one embodiment, determining the dynamic torque mapping relationship based on the force transmission direction and the relative position relationship includes:
[0012] Based on the force transmission direction and the relative position relationship, the target force information in the first space is mapped to the joint space of each joint structure, the torque response sensitivity distribution of the external force to each joint structure is determined, and the dynamic torque mapping relationship is obtained.
[0013] In one embodiment, the step of decomposing and mapping the target force information based on the dynamic torque mapping relationship within each time period to obtain the first target torque corresponding to each joint structure includes:
[0014] Based on the dynamic torque mapping relationship, the target force information is decomposed to determine the equivalent torque weight of each joint structure in each time period;
[0015] For each time period, the target force information is mapped to each joint structure according to the equivalent torque weight to obtain the first target torque corresponding to each joint structure.
[0016] In one embodiment, controlling the target object based on the first target torque within each of the said time periods includes:
[0017] Based on the kinematic characteristic data of the target object, the dynamic inertial coupling relationship, nonlinear dynamic torque and gravitational torque of each joint structure are dynamically modeled to obtain the dynamic feedforward torque;
[0018] The dynamic friction force is calculated based on the real-time motion characteristic data, and the static friction force is determined based on the target force information and the dynamic torque mapping relationship.
[0019] The first target torque is compensated based on the dynamic friction, the static friction, and the dynamic feedforward torque to obtain the second target torque, and the target object is controlled based on the second target torque.
[0020] In one embodiment, calculating the kinetic friction force based on the real-time motion characteristic data includes:
[0021] Based on the velocity of each joint structure and the preset friction coefficient in the real-time motion characteristics, the dynamic friction force of each joint structure is determined.
[0022] In one embodiment, determining the static friction force based on the target force information and the dynamic torque mapping relationship includes:
[0023] Based on the target force information, determine the first motion trend corresponding to the point of application of the external force;
[0024] Based on the first motion trend and the dynamic torque mapping relationship, the second motion trend corresponding to each joint structure is determined, and the static friction force is determined according to the second motion trend and the preset static friction force corresponding to each joint structure.
[0025] Secondly, this application also provides an object control device, comprising:
[0026] The acquisition module is used to acquire real-time motion characteristic data of the target object and the target force information of external forces within each time period;
[0027] The torque transmission analysis module is used to determine the force transmission direction and relative position relationship of each joint structure of the target object in the current pose under the external force based on the real-time motion feature data for each time period, and to determine the dynamic torque mapping relationship based on the force transmission direction and the relative position relationship.
[0028] The torque mapping module is used to decompose and map the target force information based on the dynamic torque mapping relationship within each time period to obtain the first target torque corresponding to each joint structure.
[0029] The control module is used to control the target object based on the first target torque within each of the time periods.
[0030] In one embodiment, the torque transmission analysis module is specifically used to map the state of the target force information in the first space to the joint space of each joint structure according to the force transmission direction and the relative position relationship, determine the torque response sensitivity distribution of the external force to each joint structure, and obtain the dynamic torque mapping relationship.
[0031] In one embodiment, the torque mapping module is specifically used to decompose the target force information based on the dynamic torque mapping relationship and determine the equivalent torque weights corresponding to each joint structure in each time period;
[0032] For each time period, the target force information is mapped to each joint structure according to the equivalent torque weight to obtain the first target torque corresponding to each joint structure.
[0033] In one embodiment, the control module is specifically used to dynamically model the dynamic inertial coupling relationship, nonlinear dynamic torque, and gravitational torque of each joint structure based on the kinematic characteristic data of the target object, so as to obtain the dynamic feedforward torque;
[0034] The dynamic friction force is calculated based on the real-time motion characteristic data, and the static friction force is determined based on the target force information and the dynamic torque mapping relationship.
[0035] The first target torque is compensated based on the dynamic friction, the static friction, and the dynamic feedforward torque to obtain the second target torque, and the target object is controlled based on the second target torque.
[0036] In one embodiment, the control module is specifically used to determine the dynamic friction force of each joint structure based on the speed of each joint structure and the preset friction coefficient in the real-time motion characteristics.
[0037] In one embodiment, the control module is specifically used to determine the first motion trend corresponding to the point of application of the external force based on the target force information;
[0038] Based on the first motion trend and the dynamic torque mapping relationship, the second motion trend corresponding to each joint structure is determined, and the static friction force is determined according to the second motion trend and the preset static friction force corresponding to each joint structure.
[0039] Thirdly, this application also provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to perform the following steps:
[0040] Acquire real-time motion characteristic data of the target object and the target force information of external forces within each time period;
[0041] For each time period, the force transmission direction and relative position relationship of each joint structure of the target object in the current pose are determined according to the real-time motion feature data, and the dynamic torque mapping relationship is determined according to the force transmission direction and the relative position relationship.
[0042] Based on the dynamic torque mapping relationship within each time period, the target force information is decomposed and mapped to obtain the first target torque corresponding to each joint structure.
[0043] The target object is controlled based on the first target torque within each of the aforementioned time periods.
[0044] Fourthly, this application also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, performs the following steps:
[0045] Acquire real-time motion characteristic data of the target object and the target force information of external forces within each time period;
[0046] For each time period, the force transmission direction and relative position relationship of each joint structure of the target object in the current pose are determined according to the real-time motion feature data, and the dynamic torque mapping relationship is determined according to the force transmission direction and the relative position relationship.
[0047] Based on the dynamic torque mapping relationship within each time period, the target force information is decomposed and mapped to obtain the first target torque corresponding to each joint structure.
[0048] The target object is controlled based on the first target torque within each of the aforementioned time periods.
[0049] Fifthly, this application also provides a computer program product, including a computer program that, when executed by a processor, performs the following steps:
[0050] Acquire real-time motion characteristic data of the target object and the target force information of external forces within each time period;
[0051] For each time period, the force transmission direction and relative position relationship of each joint structure of the target object in the current pose are determined according to the real-time motion feature data, and the dynamic torque mapping relationship is determined according to the force transmission direction and the relative position relationship.
[0052] Based on the dynamic torque mapping relationship within each time period, the target force information is decomposed and mapped to obtain the first target torque corresponding to each joint structure.
[0053] The target object is controlled based on the first target torque within each of the aforementioned time periods.
[0054] The aforementioned object control method, device, computer equipment, computer-readable storage medium, and computer program product, through real-time motion characteristic data and target force information, realize dynamic analysis of the real-time state of the target object according to time periods. Based on the force transmission direction and relative positional relationship of each structural component of the target object in different poses within different time periods, it can reflect the velocity contribution of the external force to each structural component in different directions. This yields a dynamic torque mapping relationship that varies with the target object's configuration within different time periods. Through this dynamic torque mapping relationship, the external force is decomposed and mapped to each joint structure of the target object to obtain the first target torque, which serves as the basis for object control. This improves the flexibility of each joint structure in responding to external forces, ensuring that the actual trajectory of each joint under target torque control matches the desired trajectory, thereby improving the accuracy of object control. Attached Figure Description
[0055] To more clearly illustrate the technical solutions in the embodiments of this application or related technologies, the drawings used in the description of the embodiments of this application or related technologies will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.
[0056] Figure 1 This is a flowchart illustrating an object control method in one embodiment;
[0057] Figure 2 This is a schematic diagram illustrating the response of each joint structure to external forces in one embodiment;
[0058] Figure 3 This is a flowchart illustrating the process of determining the first target torque of each joint structure based on a dynamic torque mapping relationship in one embodiment.
[0059] Figure 4 This is a schematic diagram of a process in one embodiment to compensate for the first target torque based on the dynamic feedforward torque, dynamic friction, and static friction to obtain the second target torque;
[0060] Figure 5 This is a schematic diagram illustrating the relationship between kinetic friction and velocity in one embodiment;
[0061] Figure 6 This is a flowchart illustrating the process based on a first motion trend and a second motion trend in one embodiment.
[0062] Figure 7 This is a schematic diagram of static friction in one embodiment;
[0063] Figure 8 This is a flowchart illustrating an example of an object control method in one embodiment;
[0064] Figure 9 This is a structural block diagram of an object control device in one embodiment;
[0065] Figure 10 This is an internal structural diagram of a computer device in one embodiment. Detailed Implementation
[0066] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.
[0067] It should be noted that the terms "first," "second," etc., used in this application can be used to describe various elements, but these elements are not limited by these terms. These terms are only used to distinguish the first element from the second element. The terms "comprising" and "having," and any variations thereof, used in this application, are intended to cover non-exclusive inclusion. The term "multiple" used in this application refers to two or more. The term "and / or" used in this application refers to one of the embodiments, or any combination of multiple embodiments.
[0068] In traditional current loop drive systems, the robotic arm is driven by joint space. Unlike six-dimensional force drive, if only the end effector is dragged during current loop drive, the force applied by the dragging arm is difficult to directly become the torque for joint drive due to the influence of the lever arm.
[0069] Based on this, in one embodiment, such as Figure 1 As shown, an object control method is provided. This embodiment illustrates the application of this method to a terminal controlling a robotic arm. It is understood that this method can also be applied to a server, or to a system including both a terminal and a server, and implemented through interaction between the terminal and the server. In this embodiment, the method includes the following steps:
[0070] Step 102: Obtain real-time motion characteristic data of the target object and the target force information of external forces in each time period.
[0071] In this embodiment, the target object can be a robotic arm, which can be a six-degree-of-freedom robotic arm. In this embodiment and the following embodiments, the target object is a robotic arm as an example. The terminal includes a pre-set time period, for example, 1 ms. Within each 1 ms time period, the terminal reads the force information of the external force through a six-dimensional force sensor installed in the target object, and obtains real-time motion characteristic data of the target object through sensors in the target object. This real-time motion characteristic data includes the angles of each link in each robotic arm and the angular velocities of the joint structures corresponding to each link. For example, the real-time motion characteristic data of the target object can be obtained through the DH matrix (Denavit-Hartenberg Matrix, a robot kinematics modeling method) of the target object.
[0072] In this embodiment, the terminal reads the sensor parameters of the robotic arm according to a preset time period to obtain real-time motion feature data and target force information of external forces. The real-time motion feature data includes kinematic data such as the position, posture, angular velocity and acceleration of each joint. The target force information can be six-dimensional force information, such as the magnitude of the force and torque components corresponding to each direction dimension.
[0073] Step 104: For each time period, determine the force transmission direction and relative position relationship of each joint structure of the target object in the current pose under external force based on real-time motion feature data, and determine the dynamic torque mapping relationship based on the force transmission direction and relative position relationship.
[0074] In this embodiment, during the operation of the robotic arm, the terminal constructs a force transmission model corresponding to the state of the robotic arm in the current time period for each time cycle. Specifically, the terminal analyzes the force response characteristics of each joint structure of the target object to external forces in the current pose based on real-time motion feature data. Specifically, the terminal first analyzes the direction of the motion degrees of freedom of each joint (e.g., the direction of rotation axis or translation) and its spatial geometric relationship with the point of force application, determines the equivalent force arm and force projection direction of the external force on each joint structure in the transmission path, and obtains the force transmission direction and relative positional relationship.
[0075] In one embodiment, the terminal further performs derivation calculations based on the force transmission direction and relative position relationship to determine the response sensitivity distribution of each joint structure to external forces. This response sensitivity distribution can reflect the dynamic torque mapping relationship of the external forces received by the end of the robotic arm as equivalent torque requirements of each joint structure. The dynamic torque mapping relationship is updated in real time with the configuration of the robotic arm in the current time period (i.e., the real-time posture of the robotic arm in the current time period), which can reflect the differences in the transmission of external forces by the robotic arm in different postures, thereby enabling dynamic analysis of the response of each joint structure to external forces.
[0076] Step 106: Decompose and map the target force information based on the dynamic torque mapping relationship within each time period to obtain the first target torque corresponding to each joint structure.
[0077] In this embodiment, within each time period, the terminal uses the dynamic torque mapping relationship corresponding to each time period as the transmission weight of the external force, decomposes and maps the target acceptance information of the external force in real time, and determines the torque contribution of the external force to each joint structure under the current configuration of the robotic arm through the dynamic torque mapping relationship. This realizes the conversion of the torque of the external force at the end of the robotic arm in the Cartesian coordinate system into the torque and degree of freedom distribution to the joint space coordinate system of each joint structure, thereby calculating the first target torque required for each joint structure to respond to the external force.
[0078] In one specific embodiment, the external force acting on the end effector of the robotic arm can be the force applied to the end effector by the instructor during the teaching process. The robotic arm's dragging mode is current loop dragging, which means that the robotic arm, in a current servo state, can generate current to maintain its balance. When subjected to an external force, the motors of each joint structure will rotate accordingly based on the torque direction of the external force. At this time, the robotic arm needs to respond to the external force as a whole. For example, if the external force acting on the end effector is horizontal to the right, and the desired motion trajectory of the end effector is taken as horizontal to the right, the influence of the nonlinear mechanical characteristics of the coupling between the links in the robotic arm should be avoided, which could cause the end effector to jitter or deviate in the vertical direction. Therefore, the terminal calculates the first target torque required for the coordinated output of each joint structure to achieve the desired trajectory of "horizontal rightward movement of the end effector" by comprehensively considering the transmission efficiency of each joint structure to the external force, the effective lever arm length, and the projection relationship between the motion axis direction and the external force direction under the current robotic arm configuration. The first target torque can compensate for the coupling relationship between the links. For example, if the current attitude of link 1 is vertical, the movement of link 1 will cause the end of the robot arm to have a stronger motion trajectory influence in the vertical component. Then other links need to compensate for the motion trajectory influence of the vertical component so that the movement of the end of the robot arm avoids the vertical deviation, thereby keeping the actual motion trajectory of the end of the robot arm consistent with the expected trajectory of "the end of the robot arm moving horizontally to the right".
[0079] Step 108: Control the target object based on the first target torque within each time period.
[0080] In this embodiment, after obtaining the first target torque corresponding to each joint in each time period, the first target torque is used as an additional control input to participate in the execution decision, enabling the terminal to control the target object based on the first target torque in each time period. Specifically, the terminal superimposes the first target torque as a feedforward compensation term onto the original output torque of each joint structure; it can also be used as the target output of compliant control to achieve low-impedance human-machine interaction response; it can also be used in an overload warning mechanism to trigger protective actions such as deceleration, reversal, or emergency stop when the first target torque exceeds a safety threshold.
[0081] In one specific embodiment, the terminal maps the external forces within each time period to obtain the first target torque of each joint structure within each time period, which is mapped to the output current of the servo motor in each joint structure. Then, the output current is sent to each servo motor to realize the control of the robotic arm.
[0082] In the aforementioned object control method, dynamic analysis of the real-time state of the target object is achieved according to time cycles through real-time motion characteristic data and target force information. Based on the force transmission direction and relative positional relationship of each structural component of the target object in different poses within different time cycles, the method reflects the velocity contribution of the external force to each structural component in different directions. This yields a dynamic torque mapping relationship that varies with the target object's configuration within different time cycles. The external force is then decomposed and mapped to each joint structure of the target object through this dynamic torque mapping relationship, resulting in a first target torque. This first target torque serves as the basis for object control, improving the flexibility of each joint structure in responding to external forces. This ensures that the actual trajectory of each joint structure under target torque control matches the desired trajectory, thereby improving the accuracy of object control.
[0083] In one exemplary embodiment, step 104 includes step 1041. Wherein:
[0084] Step 1041: Based on the force transmission direction and relative position relationship, map the target force information in the first space to the joint space of each joint structure, determine the torque response sensitivity distribution of external forces to each joint structure, and obtain the dynamic torque mapping relationship.
[0085] The first space can be the Cartesian space at the end of the robotic arm.
[0086] In this embodiment, the terminal, based on the force transmission direction and relative positional relationship between the robotic arm end effector and each joint structure, maps the target force information of the external force from the state in Cartesian space to the joint space of each joint structure in order to analyze the influence of the external force on each joint structure. Taking a six-degree-of-freedom robotic arm as an example, the target force information is measured by a six-dimensional force sensor at the robotic arm end effector. The resultant external force vector of this target force information in the Cartesian coordinate system of the robotic arm end effector can be expressed as: This includes forces along the spatial coordinate system and moments about the coordinate system. Furthermore, the terminal calculates the kinematic Jacobian matrix of the robotic arm based on the pose acquired in real-time for the current time period. As shown in the following formula (1):
[0087] (1)
[0088] The Jacobian matrix has n columns, where n represents the number of degrees of freedom of the robotic arm. to These represent the poses of the robotic arm links corresponding to each degree of freedom, which can be represented by the angles of the robotic arm links. Each joint structure is characterized by its linear velocity in the joint space. Each joint structure is characterized by its angular velocity in the joint space. Let n be the contribution of the joint structure to the linear velocity of the robotic arm's end effector in the X direction during its movement. Let n be the contribution of the joint structure to the linear velocity of the robotic arm's end effector in the Y direction during its movement. The contribution of joint structure n to the linear velocity of the robotic arm's end effector in the Z direction during movement. Let n be the contribution of the joint structure to the angular velocity of the robotic arm's end effector in the X direction during its movement. Let n be the contribution of the joint structure to the angular velocity of the robotic arm's end effector in the Y direction during its movement. Let n be the contribution of the joint structure n to the angular velocity of the robotic arm end effector in the X direction during its movement.
[0089] Since the Jacobian matrix can map the velocity in joint space to Cartesian space, and the specific mapping method is shown in the following formula (2):
[0090] (2)
[0091] in, Let be the angular velocity of each joint structure in the joint space. Let be the velocity of the robotic arm's end effector in Cartesian space, which is generated by the external force acting on the end effector.
[0092] Therefore, the terminal can map the velocity in Cartesian space to the joint space, and the mapping relationship is shown in the following formula (3):
[0093] (3)
[0094] The terminal can then map the target force information in the first space to the joint space of each joint structure using the Jacobian matrix. The first target torque corresponding to each joint structure depends not only on the strength of the external force itself but also on the joint structure's "response capability" to the direction of the external force in the current posture of the robotic arm. For example, if the motion axis of a joint structure forms a favorable lever arm with the direction of the external force, its torque response is larger, and vice versa. Therefore, the terminal determines the torque response sensitivity distribution of each joint structure to external forces in the current robotic arm configuration based on the current force transmission direction (determined by the Jacobian matrix) and the relative position of each joint structure to the end effector point of the robotic arm (determined by the link length and joint angle). This torque response sensitivity distribution then constitutes a dynamic torque mapping relationship, i.e., the Jacobian matrix transpose is adaptively and dynamically adjusted according to the changes in the robotic arm's posture in each time period to form a dynamic torque mapping relationship.
[0095] In this embodiment, by analyzing the force transmission direction and relative position relationship, the target force information in the first space is mapped to the joint space of each joint structure. The torque response sensitivity distribution of external forces to each joint structure is determined, and a dynamic torque mapping relationship is obtained. This enables dynamic analysis of the changes in the robot arm configuration within different time periods. It also allows obtaining the dynamic torque mapping relationship between each joint structure and the end effector of the robot arm under different configurations in different time periods. This enables real-time analysis of the torque response of each joint structure of the robot arm to external forces, improving the flexibility of each joint structure in response to external forces and thus improving the accuracy of robot arm control.
[0096] In one exemplary embodiment, such as Figure 3 As shown, step 106 includes steps 302 to 304. Wherein:
[0097] Step 302: Decompose the target force information based on the dynamic torque mapping relationship and determine the equivalent torque weights of each joint structure in each time period.
[0098] The dynamic torque mapping relationship can be the transpose of the Jacobian matrix.
[0099] In this embodiment, the terminal determines the transpose of the Jacobian matrix based on the configuration of the robotic arm within each time period, and dynamically decomposes the target force information according to the transpose of the Jacobian matrix, using each element in the transpose of the Jacobian matrix as the equivalent torque weight corresponding to each joint structure.
[0100] Step 304: For each time period, the target force information is mapped to each joint structure according to the equivalent torque weight to obtain the first target torque corresponding to each joint structure.
[0101] In this embodiment, the terminal uses the equivalent moment weight as a mapping operator to map the external force. Projecting the force onto each joint structure, we obtain the equivalent torque of each joint structure under the influence of the external force, which is used as the first target torque. The projection process is shown in the following formula (4):
[0102] (4)
[0103] In this embodiment, as Figure 2 As shown, an external force is applied to the end of the robotic arm. Subsequently, the terminal maps the target force information in the first space to the joint space of each joint structure by the force transmission direction and relative position relationship, determines the torque response sensitivity distribution of external forces to each joint structure, obtains the dynamic torque mapping relationship, and then obtains the first target torque of all joint structures in the robotic arm. Based on the first target torque, the robotic arm is controlled, which can realize the coordinated control of the overall joint structure of the robotic arm. Under the coordinated control of each joint structure, the actual motion trajectory of the robotic arm end is kept consistent with the expected motion trajectory, thus improving the accuracy of robotic arm control.
[0104] In one exemplary embodiment, such as Figure 4 As shown, step 108 includes steps 402 to 406. Wherein:
[0105] Step 402: Based on the kinematic characteristic data of the target object, the dynamic inertial coupling relationship, nonlinear dynamic torque and gravitational torque of each joint structure are dynamically modeled to obtain the dynamic feedforward torque.
[0106] In this embodiment, the dynamic feedforward torque of the target object (i.e., the robotic arm) reflects the torque required by each joint structure to maintain the robotic arm's motion state when there is no external interference. The dynamic inertial coupling relationship can be quantified using the mass matrix, the nonlinear dynamic torque can be quantified using centrifugal force and Coriolis force vectors, and the gravitational torque can be quantified using the gravity vector. Specifically, the dynamic feedforward torque of the robotic arm... The corresponding basic dynamic model is shown in the following formula (5):
[0107] (5)
[0108] in, Let n be the mass matrix of the n×1 robotic arm, where n is the number of degrees of freedom of the robotic arm. It is the angular velocity acceleration of the links of each degree of freedom in the robotic arm in the joint space. Let n be the centrifugal force and Coriolis force vectors, which are related to velocity and position. These are the joint angles of the links in the robotic arm, representing the positions of each link in the robotic arm. ω represents the angular velocity of each link in the robotic arm in the joint space, used to characterize the velocity of each link in the robotic arm. It is an n×1 gravity vector. The output torque vector for the n×1 joint structure is used as the dynamic feedforward torque.
[0109] Step 404: Calculate the dynamic friction force based on the real-time motion characteristic data, and determine the static friction force based on the target force information and the dynamic torque mapping relationship.
[0110] In this embodiment, the terminal calculates the dynamic friction force by analyzing the angular velocity of each joint structure in the real-time motion characteristic data of the robotic arm, and determines the motion trend of each joint structure by combining the target force information and the dynamic torque mapping relationship. Then, the static friction force of each joint structure is derived by taking motion data, thereby realizing the dynamic identification and compensation of the overall friction force, providing a data basis for accurate torque compensation and high-precision force control.
[0111] Step 406: The first target torque is compensated based on dynamic friction, static friction, and dynamic feedforward torque to obtain the second target torque, and the target object is controlled based on the second target torque.
[0112] In this embodiment, the terminal compensates for the first target torque based on dynamic friction, static friction, and dynamic feedforward torque to obtain the second target torque. It can calculate the first target torque, which compensates for the response of each joint structure to external forces during the current loop dragging process of the robotic arm, using dynamic friction, static friction, and dynamic feedforward torque. Taking into account the influence of friction and dynamic feedforward torque on the robotic arm control, the second target torque is obtained. Furthermore, the terminal maps the second target torque to the target current required for the servo motors of each joint structure to output the second target torque. The calculation of the target current I is shown in the following formula (6):
[0113] (6)
[0114] in, For dynamic feedforward torque, For static friction, For kinetic friction, If the first target torque is... The second target torque represents the compensation of the first target torque by dynamic friction, static friction, and dynamic feedforward torque. This is the torque coefficient. It is a constant used to map the second target torque to the target current.
[0115] In this embodiment, by comprehensively compensating for dynamic friction, static friction, and dynamic feedforward torque, the control accuracy of the first target torque is improved, and the force control error caused by factors such as nonlinear friction is reduced. Controlling the target object based on the compensated second target torque enables higher precision robotic arm control, ensuring that the actual trajectory of each joint under target torque control matches the desired trajectory, thereby improving the accuracy of robotic arm control.
[0116] In an exemplary embodiment, step 404 includes step 4041. Wherein:
[0117] Step 4041: Determine the dynamic friction force of each joint structure based on the velocity of each joint structure and the preset friction coefficient in the real-time motion characteristics.
[0118] The preset friction coefficients are the Coulomb friction coefficient and the viscous friction coefficient.
[0119] In this embodiment, the dynamic friction force is generated to overcome joint movement; therefore, the direction of the dynamic friction force is related to the joint velocity. Figure 5 As shown, Figure 5 To establish the relationship between kinetic friction and velocity, the terminal determines the kinetic friction of each joint structure based on the velocity of each joint structure in the real-time motion characteristics and the preset friction coefficient. The calculation is shown in the following formula (7):
[0120] (7)
[0121] in, Let be the Coulomb friction coefficient. The coefficient of viscous friction, Let ω be the angular velocity corresponding to joint structure j.
[0122] In this embodiment, by combining Coulomb friction and viscous friction models, the dynamic friction force of each joint structure is calculated, which can reflect the nonlinear friction characteristics in the low-speed segment and the speed-related losses in the high-speed segment. The friction compensation amount is dynamically adjusted according to the real-time angular velocity, which improves the accuracy of friction force estimation and the accuracy of compensation for the first target torque, thereby improving the accuracy of robotic arm control.
[0123] In one exemplary embodiment, due to the presence of friction, when the torque of the external force applied to the motor is very small, the static friction cannot be overcome, resulting in the inability to drive the movement of certain joint structures even when force is applied. Macroscopically, this manifests as the dragging direction of the robotic arm's end effector being inconsistent with the actual movement direction of the robotic arm. Therefore, this embodiment also considers compensation for static friction, such as... Figure 6 As shown, step 404 includes steps 602 to 604. Wherein:
[0124] Step 602: Determine the first motion trend corresponding to the point of application of the external force based on the target force information.
[0125] In this embodiment, the point of application of the external force is the end effector of the robotic arm. The terminal determines the first motion trend corresponding to the point of application of the external force based on the target force information, and uses the external force as six-dimensional force data. Taking an example, the motion direction matrix of the robotic arm in Cartesian space is explained. As the primary motion trend at the end effector of the robotic arm, among which:
[0126] (8)
[0127] Where sign is the sign function, if If it is a six-dimensional force, then The matrix is a 6×1 matrix, and the value inside is 1. The sign depends on the data of each direction of the six-dimensional force. If the Fe data is 0, the corresponding Dc data is also 0.
[0128] Step 604: Determine the second motion trend corresponding to each joint structure based on the first motion trend and the dynamic torque mapping relationship, and determine the static friction force according to the second motion trend and the preset static friction force corresponding to each joint structure.
[0129] In the embodiments of this application, such as Figure 7 As shown, when the (angular) velocity of the joint structure is zero, at least Only a sufficient driving force can overcome static friction and cause the joint structure to move. The terminal analyzes the dynamic torque mapping relationship corresponding to the robot arm configuration within the current time period, and determines the velocity direction of the torque to be output by each joint structure under the influence of external forces in the current time period. Based on this velocity direction, the second motion trend of each joint structure is determined, and the static friction is determined based on the second motion trend.
[0130] In a specific embodiment, when an external force acts on the six-dimensional end effector of the robotic arm, the terminal can calculate the second motion trend of each joint structure based on the velocity direction generated by the external force, as shown in the following formula (9):
[0131] (9)
[0132] in, It is the inverse of the Jacobian matrix, with a size of n×6. Let be the joint velocity direction matrix in joint space, and the size of this matrix is... , used to characterize the second movement trend.
[0133] Then, the terminal calculates the magnitude of the static friction force that needs to be compensated based on the preset static friction force corresponding to each joint structure. In summary, this embodiment compensates for the static friction force in each joint structure. The calculation is shown in the following formula (10):
[0134] (10)
[0135] in, This is the preset static friction force corresponding to the i-th joint structure, with a magnitude of n×1. The actual angular velocity of the i-th joint structure. The magnitude of the torque required to compensate for static friction for the i-th joint structure.
[0136] To obtain the preset static friction force corresponding to each joint structure, the terminal acquires multiple initial preset static friction forces for each joint structure, performs feedforward compensation tests based on each initial preset static friction force, and obtains the motion threshold torque of each preset static friction force; the initial preset static friction forces are then filtered based on the motion threshold torque to obtain the preset static friction force corresponding to each joint structure.
[0137] In this embodiment, the estimation and quantification of static friction in each joint structure are realized through the second motion trend corresponding to each joint structure, which improves the accuracy of friction compensation, thereby improving the accuracy of compensation for the first target torque, thus improving the accuracy of the second target torque, and thus improving the accuracy of robotic arm control.
[0138] In one exemplary embodiment, such as Figure 8 As shown, an example of an object control method is provided, wherein:
[0139] Step 801: The terminal collects external force data through a six-dimensional force sensor. .
[0140] Step 802: The terminal calculates the dynamic feedforward torque using the dynamic model. .
[0141] Step 803: The terminal calculates the second motion trend of each joint structure. As the direction of static friction.
[0142] Step 804, the terminal determines the direction of static friction. Calculate the static friction force that needs to be compensated. .
[0143] Step 805: The terminal calculates the dynamic friction force that needs to be compensated based on the speed of the joint structure. .
[0144] Step 806: The terminal calculates the first target torque generated by the external force on each joint structure. , as the external torque of the joint.
[0145] Step 807, the terminal will... The total torque is converted into the output current of the motors in each joint structure.
[0146] In step 808, the terminal sends the calculated current to each motor to control the robotic arm.
[0147] It should be understood that although the steps in the flowcharts of the embodiments described above are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the embodiments described above may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages in other steps. It is understood that the steps in different embodiments can be freely combined as needed, and all non-contradictory solutions formed by such combinations are within the scope of protection of this application.
[0148] Based on the same inventive concept, this application also provides an object control device for implementing the object control method described above. The solution provided by this device is similar to the implementation scheme described in the above method; therefore, the specific limitations in one or more object control device embodiments provided below can be found in the limitations of the object control method described above, and will not be repeated here.
[0149] In one exemplary embodiment, such as Figure 9 As shown, an object control device 900 is provided, including: an acquisition module 901, a torque transmission analysis module 902, a torque mapping module 903, and a control module 904, wherein:
[0150] The acquisition module 901 is used to acquire real-time motion characteristic data of the target object and the target force information of external forces in each time period;
[0151] The torque transmission analysis module 902 is used to determine the force transmission direction and relative position relationship of each joint structure of the target object under the current pose in response to external forces based on real-time motion characteristic data for each time period, and to determine the dynamic torque mapping relationship based on the force transmission direction and relative position relationship.
[0152] The torque mapping module 903 is used to decompose and map the target force information based on the dynamic torque mapping relationship in each time period to obtain the first target torque corresponding to each joint structure.
[0153] The control module 904 is used to control the target object based on the first target torque in each time period.
[0154] In one embodiment, the torque transmission analysis module 902 is specifically used to map the state of the target force information in the first space to the joint space of each joint structure according to the force transmission direction and relative position relationship, determine the torque response sensitivity distribution of the external force to each joint structure, and obtain the dynamic torque mapping relationship.
[0155] In one embodiment, the torque mapping module 903 is specifically used to decompose the target force information based on the dynamic torque mapping relationship and determine the equivalent torque weights of each joint structure in each time period.
[0156] For each time period, the target force information is mapped to each joint structure according to the equivalent torque weight, and the first target torque corresponding to each joint structure is obtained.
[0157] In one embodiment, the control module 904 is specifically used to dynamically model the dynamic inertial coupling relationship, nonlinear dynamic torque and gravitational torque of each joint structure based on the kinematic characteristic data of the target object, so as to obtain the dynamic feedforward torque;
[0158] Dynamic friction is calculated based on real-time motion characteristic data, and static friction is determined based on target force information and dynamic torque mapping relationship.
[0159] The first target torque is compensated based on dynamic friction, static friction, and dynamic feedforward torque to obtain the second target torque, and the target object is controlled based on the second target torque.
[0160] In one embodiment, the control module 904 is specifically used to determine the dynamic friction force of each joint structure based on the speed of each joint structure and the preset friction coefficient in the real-time motion characteristics.
[0161] In one embodiment, the control module 904 is specifically used to determine the first motion trend corresponding to the point of application of the external force based on the target force information;
[0162] The second motion trend corresponding to each joint structure is determined based on the first motion trend and the dynamic torque mapping relationship, and the static friction force is determined according to the second motion trend and the preset static friction force corresponding to each joint structure.
[0163] Each module in the aforementioned object control device can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in or independent of the processor in a computer device in hardware form, or stored in the memory of a computer device in software form, so that the processor can call and execute the operations corresponding to each module.
[0164] In one exemplary embodiment, a computer device is provided, which may be a terminal, and its internal structure diagram may be as follows: Figure 10 As shown, the computer device includes a processor, memory, input / output interfaces, a communication interface, a display unit, and an input device. The processor, memory, and input / output interfaces are connected via a system bus, and the communication interface, display unit, and input device are also connected to the system bus via the input / output interfaces. The processor provides computing and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The input / output interfaces are used for exchanging information between the processor and external devices. The communication interface is used for wired or wireless communication with external terminals; wireless communication can be achieved through Wi-Fi, mobile cellular networks, Near Field Communication (NFC), or other technologies. When the computer program is executed by the processor, it implements an object control method. The display unit is used to form a visually visible image and can be a display screen, a projection device, or a virtual reality imaging device. The display screen can be an LCD screen or an e-ink screen. The input device of the computer device can be a touch layer covering the display screen, or buttons, trackballs, or touchpads set on the casing of the computer device, or external keyboards, touchpads, or mice, etc.
[0165] Those skilled in the art will understand that Figure 10 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.
[0166] In one exemplary embodiment, a computer device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to perform the following steps:
[0167] Acquire real-time motion characteristic data of the target object and the target force information of external forces within each time period;
[0168] For each time period, the direction of force transmission and relative position of each joint structure of the target object in the current pose are determined based on real-time motion feature data, and the dynamic torque mapping relationship is determined based on the direction of force transmission and relative position.
[0169] Based on the dynamic torque mapping relationship within each time period, the target force information is decomposed and mapped to obtain the first target torque corresponding to each joint structure.
[0170] The target object is controlled based on the first target torque within each time period.
[0171] In one embodiment, the processor, when executing a computer program, also performs the following steps:
[0172] Based on the force transmission direction and relative position relationship, the target force information in the first space is mapped to the joint space of each joint structure, the torque response sensitivity distribution of external force to each joint structure is determined, and the dynamic torque mapping relationship is obtained.
[0173] In one embodiment, the processor, when executing a computer program, also performs the following steps:
[0174] Based on the dynamic torque mapping relationship, the target force information is decomposed to determine the equivalent torque weight of each joint structure in each time period.
[0175] For each time period, the target force information is mapped to each joint structure according to the equivalent torque weight, and the first target torque corresponding to each joint structure is obtained.
[0176] In one embodiment, the processor, when executing a computer program, also performs the following steps:
[0177] Based on the kinematic characteristic data of the target object, the dynamic inertial coupling relationship, nonlinear dynamic torque and gravitational torque of each joint structure are dynamically modeled to obtain the dynamic feedforward torque;
[0178] Dynamic friction is calculated based on real-time motion characteristic data, and static friction is determined based on target force information and dynamic torque mapping relationship.
[0179] The first target torque is compensated based on dynamic friction, static friction, and dynamic feedforward torque to obtain the second target torque, and the target object is controlled based on the second target torque.
[0180] In one embodiment, the processor, when executing a computer program, also performs the following steps:
[0181] The dynamic friction force of each joint structure is determined based on the velocity of each joint structure in the real-time motion characteristics and the preset friction coefficient.
[0182] In one embodiment, the processor, when executing a computer program, also performs the following steps:
[0183] Determine the first motion trend corresponding to the point of application of external force based on the target force information;
[0184] The second motion trend corresponding to each joint structure is determined based on the first motion trend and the dynamic torque mapping relationship, and the static friction force is determined according to the second motion trend and the preset static friction force corresponding to each joint structure.
[0185] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements the steps in the above method embodiments.
[0186] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps in the above method embodiments.
[0187] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of the relevant data must comply with relevant regulations.
[0188] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, artificial intelligence (AI) processors, etc., and are not limited to these.
[0189] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this application.
[0190] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.
Claims
1. An object control method characterized by, The method comprises: acquiring real-time motion characteristic data of a target object in each time period and target force information of an external force acting on the target object; for each time period, determining a force transmission direction and a relative position relationship of each joint structure of the target object under a current pose with respect to the external force according to the real-time motion characteristic data, and determining a dynamic torque mapping relationship according to the force transmission direction and the relative position relationship; based on the dynamic torque mapping relationship in each time period, decomposing and mapping the target force information to obtain a first target torque corresponding to each joint structure; controlling the target object based on the first target torque in each time period.
2. The method of claim 1, wherein, The dynamic torque mapping relationship is determined according to the force transmission direction and the relative position relationship, comprising: According to the force transmission direction and the relative position relationship, the state of the target force information in the first space is mapped to the joint space of each joint structure, the torque response sensitivity distribution of the external force with respect to each joint structure is determined, and the dynamic torque mapping relationship is obtained.
3. The method of claim 1, wherein, Based on the dynamic torque mapping relationship in each time period, the target force information is decomposed and mapped to obtain a first target torque corresponding to each joint structure, comprising: Based on the dynamic torque mapping relationship, the target force information is decomposed to determine the equivalent torque weight corresponding to each joint structure in each time period; for each time period, the target force information is mapped to each joint structure according to the equivalent torque weight to obtain a first target torque corresponding to each joint structure.
4. The method of claim 1, wherein, The control of the target object based on the first target torque in each time period comprises: According to the kinematic characteristic data of the target object, the dynamic inertia coupling relationship, the nonlinear dynamic torque and the gravity torque of each joint structure are dynamically modeled to obtain a dynamic feedforward torque; According to the real-time motion characteristic data, the dynamic friction is calculated, the static friction is determined according to the target force information and the dynamic torque mapping relationship; Based on the dynamic friction, the static friction, the dynamic feedforward torque, the first target torque is compensated to obtain a second target torque, and the target object is controlled based on the second target torque.
5. The method of claim 4, wherein, The dynamic friction is calculated according to the real-time motion characteristic data, comprising: According to the speed of each joint structure in the real-time motion characteristic and the preset friction coefficient, the dynamic friction of each joint structure is determined.
6. The method of claim 4, wherein, The static friction is determined according to the target force information and the dynamic torque mapping relationship, comprising: According to the target force information, a first motion trend corresponding to the force point of the external force is determined; Based on the first motion trend and the dynamic torque mapping relationship, a second motion trend corresponding to each joint structure is determined, and a static friction is determined according to the second motion trend and a preset static friction corresponding to each joint structure.
7. An object control device, characterized by comprising: The device comprises: An acquisition module is configured to acquire real-time motion characteristic data of a target object in each time period and target force information of an external force acting on the target object; A torque transmission analysis module is configured to, for each time period, determine, according to the real-time motion characteristic data, a force transmission direction and a relative position relationship of each joint structure of the target object in a current pose with respect to the external force, and determine a dynamic torque mapping relationship according to the force transmission direction and the relative position relationship; A torque mapping module is configured to decompose and map the target force information based on the dynamic torque mapping relationship in each time period, to obtain a first target torque corresponding to each joint structure; A control module is configured to control the target object based on the first target torque in each time period.
8. A computer device comprising a memory and a processor, the memory storing a computer program, characterized in that, The processor executes the computer program to implement the steps of the method in any one of claims 1 to 6.
9. A computer-readable storage medium having stored thereon a computer program, characterized in that, The computer program is executed by the processor to implement the steps of the method in any one of claims 1 to 6.
10. A computer program product comprising a computer program, characterized in that, The computer program is executed by the processor to implement the steps of the method in any one of claims 1 to 6.