A hybrid control method of robot joint force and position based on command current

The robot joint force-position hybrid control method addresses computational complexity and cost issues by using command current adjustments to manage joint forces, ensuring accurate and efficient operation without additional sensors.

CN118682761BActive Publication Date: 2024-12-24SHENZHEN RUIYAN INTELLIGENT CONTROL CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410892104.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-07-04
Publication Date
2024-12-24
Estimated Expiration
2044-07-04

AI Technical Summary

Technical Problem

The introduction of multiple sensors for feedback loops in industrial robots increases computational complexity and cost, while existing force sensors are expensive, limiting widespread adoption.

Method used

A robot joint force-position hybrid control method based on command current, which involves real-time acquisition of target positions, generating current instructions, and adjusting output limits based on motor current deviations to manage joint forces without additional sensors.

Benefits of technology

Reduces computational complexity and cost by eliminating the need for additional sensors, while maintaining accurate control and efficient operation within allowable current limits.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118682761B_ABST
    Figure CN118682761B_ABST
Patent Text Reader

Abstract

The invention discloses a robot joint force-position hybrid control method based on command current, belongs to the field of robot control technology, and specifically comprises: acquiring a target position in real time and generating a corresponding point command, generating a joint speed command according to the point command, generating a force control command according to the joint speed command, and generating a first current command according to the force control command; acquiring a real-time current of a drive unit, subtracting a maximum current It from the real-time current to obtain a deviation Ie, if the deviation Ie is greater than 0 and MAX is less than MAX-INIT, correcting the output limit value to MAX+N; if the deviation Ie is less than 0 and MAX is greater than 0, correcting the output limit value of a unit control end to MAX-M; correcting the current command of the drive unit according to the output limit value and inputting it to the drive unit end; the invention realizes a safe and efficient robot joint force-position hybrid control method by limiting the output amplitude of a drive unit controller.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of robot control, and in particular to a robot joint force-position hybrid control method based on command current. Background Art

[0002] Industrial robots are multi-joint manipulators or multi-degree-of-freedom machine devices widely used in industrial fields. They have a certain degree of automation and can rely on their own power and control capabilities to achieve various industrial processing and manufacturing functions. They are widely used in various industrial fields such as electronics, logistics, and chemicals.

[0003] To achieve dexterous manipulator manipulation (such as grasping an egg, holding a pen, or shaking hands with a person), existing industrial robots primarily employ displacement, velocity, and force sensors at each joint of the robotic arm. These sensors provide feedback to precisely control each joint individually. However, the introduction of multiple sensors into the feedback loop significantly increases the computational complexity of the robotic system's control loop. These algorithms require real-time computation by the upper-level control system, placing significant demands on computing power and communication bandwidth, thus increasing system complexity and cost. Furthermore, existing force sensors are relatively expensive, and adding a force sensor to each joint of a multi-jointed robotic arm would increase the cost of the entire robotic system, limiting its widespread adoption and application. Summary of the Invention

[0004] The purpose of the present invention is to provide a robot joint force-position hybrid control method based on command current to solve the following technical problems:

[0005] Introducing multiple sensors to form feedback loops significantly increases the computational complexity of the robotic system's control loop. These algorithms require real-time computation by the upper-level control system, placing significant demands on computing resources and communication bandwidth, thereby increasing system complexity and cost. Furthermore, existing force sensors are expensive, and adding a force sensor to each joint of a multi-jointed robotic arm would increase the cost of the entire robotic system, limiting its widespread adoption and application.

[0006] The purpose of the present invention can be achieved through the following technical solutions:

[0007] A robot joint force-position hybrid control method based on command current, the method comprising the following steps:

[0008] S1, real-time acquisition of the target position and generation of corresponding point position instructions, performing inverse kinematics solution on the robot motion based on the point position instructions, and generating the first current instructions for all joint drive units;

[0009] S2: Preset a maximum current It and obtain the real-time current I of the drive unit. Subtract the maximum current It from the real-time current I to obtain an offset Ie. If the offset Ie is greater than 0, obtain the current output limit value MAX of the drive unit control terminal. If MAX is less than MAX-INIT, where MAX-INIT is the maximum output limit of the drive unit control terminal, correct the current output limit value of the drive unit control terminal to MAX+N, where N is the preset recovery step size of the drive unit control terminal.

[0010] S3, if the deviation Ie is less than 0, obtain the output limit value MAX of the current drive unit control end; if MAX is greater than 0, correct the output limit value MAX of the current drive unit control end to MAX-M, where M is the limit step size of the preset drive unit control end;

[0011] S4, correcting the first current instruction of the joint driving unit by the deviation Ie to obtain the second current instruction I' of all joint driving units, and inputting the second current instruction to the driving unit end.

[0012] As a further solution of the present invention: In S1, the specific process of generating the first current instruction is:

[0013] The motion trajectory of the robot system is planned according to the point position instruction, the target motion posture is obtained and a motion model is established, the motion inverse solution is performed on the motion model to generate the joint target position of each joint; according to the point position instruction and the joint target position, a joint speed instruction is generated; according to the joint speed instruction and the joint position information, a joint force control instruction is generated; according to the joint force control instruction, a first current instruction of the corresponding joint drive unit is generated.

[0014] As a further solution of the present invention: the above S2 further includes maintaining the output limit value MAX of the current drive unit control terminal if Ie is equal to 0.

[0015] As a further solution of the present invention: the step S2 further includes correcting the output limit value of the control terminal of the drive unit to MAX-INIT if MAX is greater than or equal to MAX-INIT.

[0016] As a further solution of the present invention: in S2, if MAX+N is greater than or equal to MAX-INIT, the output limit value of the control terminal of the drive unit is corrected to MAX-INIT.

[0017] As a further solution of the present invention: the above S3 further includes correcting the output limit value MAX of the current drive unit control terminal to 0 if MAX is less than or equal to 0.

[0018] As a further solution of the present invention: the above S3 further includes correcting the output limit value MAX of the control terminal of the driving unit to 0 if MAX-M is less than or equal to 0.

[0019] As a further solution of the present invention: in S4, the process of correcting the first current instruction is:

[0020] Obtain the current joint target position command Pt and the actual joint position P, calculate the real-time position deviation Pe, calculate the position correction value Pout based on the position deviation Pe, correct the joint current I based on the position correction value Pout to obtain the pre-input current, and if the pre-input current is greater than or equal to the output limit value MAX, correct the pre-input current value to the output limit value MAX to obtain the second current command I'; if the pre-input current is less than the output limit value MAX, calibrate the pre-input current to the second current command I';

[0021]

[0022] Among them, Kp is the proportional coefficient of the position PID controller, Ki is the integral coefficient, Kd is the differential coefficient, and t is time.

[0023] Beneficial effects of the present invention:

[0024] The present invention obtains the target position and generates the corresponding point position instruction in real time, generates the first current instruction of the drive unit, and obtains the deviation Ie. If Ie is greater than 0, it means that the current actual current of the motor is less than the maximum allowable current in the instruction. Therefore, it is necessary to increase the current drive unit output limit value MAX to increase the system response time, reduce the deviation and reduce the control time at the same time; if the deviation Ie is less than 0 and MAX is greater than 0, it means that the current drive unit end is in an overload state. At this time, the output limit value MAX of the drive unit control end should be further limited; when the joint output current does not reach the maximum allowable current, the joint is executed in position mode, that is, the current drive unit output limit value MAX is obtained, and a preset recovery step size N is added, and the response speed of the drive unit control end is achieved by gradually increasing the output limit value while reducing the actual deviation; when the joint output current reaches the maximum allowable current, the joint is executed in force control mode, that is, the deviation Ie is less than 0 and MAX is greater than 0, and the output limit value is gradually reduced. When the limit value is 0, the drive unit stops running, ensuring that the current in the entire movement process does not exceed the maximum allowable current in the key control parameters. If the joint current reaches the maximum allowable current parameter value, the joint controller can maintain the maximum allowable current output. When the external object is removed or the resistance disappears, the joint can continue to move to the final target position within the maximum allowable current output range. By applying the robot joint force-position hybrid control method based on command current proposed in this invention, it is possible to solve the problems existing in the existing technology from the source, bringing the following advantages:

[0025] (1) The controller output amplitude is limited based on the relationship between the motor current and the maximum allowable current of the command current, thereby achieving the function of limiting the final joint output force. No additional force or torque sensor is required, which is low-cost.

[0026] (2) The maximum output force is limited by the joint driver, and the upper-level algorithm only needs to provide the maximum allowable current, which reduces the amount of calculation of the upper-level algorithm. At the same time, the upper-level algorithm does not need to know the real-time current status of the current joint, which can further save communication bandwidth resources;

[0027] (3) The present invention does not require complex calibration of the sensor in advance as is required for force or torque sensor solutions, and only requires simple addition, subtraction and logical judgment operations, making it easy to apply in actual engineering work. BRIEF DESCRIPTION OF THE DRAWINGS

[0028] The present invention will be further described below with reference to the accompanying drawings.

[0029] Figure 1 It is a flow chart of a robot joint force-position hybrid control method based on command current of the present invention. DETAILED DESCRIPTION

[0030] The following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making any creative efforts shall fall within the scope of protection of the present invention.

[0031] See also Figure 1 As shown, the present invention is a robot joint force-position hybrid control method based on command current, the method comprising the following steps:

[0032] S1, real-time acquisition of the target position and generation of corresponding point position instructions, performing inverse kinematics solution on the robot motion based on the point position instructions, and generating the first current instructions for all joint drive units;

[0033] S2: Preset a maximum current It and obtain the real-time current I of the drive unit. Subtract the maximum current It from the real-time current I to obtain an offset Ie. If the offset Ie is greater than 0, obtain the current output limit value MAX of the drive unit control terminal. If MAX is less than MAX-INIT, where MAX-INIT is the maximum output limit of the drive unit control terminal, correct the current output limit value of the drive unit control terminal to MAX+N, where N is the preset recovery step size of the drive unit control terminal.

[0034] S3, if the deviation Ie is less than 0, obtain the output limit value MAX of the current drive unit control end; if MAX is greater than 0, correct the output limit value MAX of the current drive unit control end to MAX-M, where M is the limit step size of the preset drive unit control end;

[0035] S4, correcting the first current instruction of the joint driving unit by the deviation Ie to obtain the second current instruction I' of all joint driving units, and inputting the second current instruction to the driving unit end.

[0036] The present invention obtains the target position and generates the corresponding point position instruction in real time, generates the first current instruction of the drive unit, and obtains the deviation Ie. If Ie is greater than 0, it means that the current actual current of the motor is less than the maximum allowable current in the instruction. Therefore, it is necessary to increase the current drive unit output limit value MAX to increase the system response time, reduce the deviation and reduce the control time at the same time; if the deviation Ie is less than 0 and MAX is greater than 0, it means that the current drive unit end is in an overload state. At this time, the output limit value MAX of the drive unit control end should be further limited; when the joint output current does not reach the maximum allowable current, the joint is executed in position mode, that is, the current drive unit output limit value MAX is obtained, and a preset recovery step size N is added, and the response speed of the drive unit control end is achieved by gradually increasing the output limit value while reducing the actual deviation; when the joint output current reaches the maximum allowable current, the joint is executed in force control mode, that is, the deviation Ie is less than 0 and MAX is greater than 0, and the output limit value is gradually reduced. When the limit value is 0, the drive unit stops running, ensuring that the current in the entire movement process does not exceed the maximum allowable current in the key control parameters. If the joint current reaches the maximum allowable current parameter value, the joint controller can maintain the maximum allowable current output. When the external object is removed or the resistance disappears, the joint can continue to move to the final target position within the maximum allowable current output range. By applying the robot joint force-position hybrid control method based on command current proposed in this invention, it is possible to solve the problems existing in the existing technology from the source, bringing the following advantages:

[0037] (1) The controller output amplitude is limited based on the relationship between the motor current and the maximum allowable current of the command current, thereby achieving the function of limiting the final joint output force. No additional force or torque sensor is required, which is low-cost.

[0038] (2) The maximum output force is limited by the joint driver, and the upper-level algorithm only needs to provide the maximum allowable current, which reduces the computational complexity of the upper-level algorithm. At the same time, the upper-level algorithm does not need to know the real-time current status of the current joint, which can further save communication bandwidth resources.

[0039] (3) The present invention does not require complex calibration of the sensor in advance as is required for force or torque sensor solutions, and only requires simple addition, subtraction and logical judgment operations, making it easy to apply in actual engineering work.

[0040] In a preferred embodiment of the present invention, the specific process of generating the first current instruction is as follows:

[0041] The motion trajectory of the robot system is planned according to the point position instruction, the target motion posture is obtained and a motion model is established, the motion inverse solution is performed on the motion model to generate the joint target position of each joint; according to the point position instruction and the joint target position, a joint speed instruction is generated; according to the joint speed instruction and the joint position information, a joint force control instruction is generated; according to the joint force control instruction, a first current instruction of the corresponding joint drive unit is generated.

[0042] First, through the inverse kinematic solution, the target position that each joint of the robot needs to reach can be obtained, thereby ensuring that the robot's end effector can accurately reach the predetermined position and posture, and the average running speed is determined according to the position and posture. The force control instruction of the joint drive unit is calculated based on the average speed and position information, and the first current instruction is generated according to the force control instruction, so that the robot can respond quickly and improve work efficiency.

[0043] In a preferred embodiment of the present invention, the step S2 further includes maintaining the output limit value MAX of the current drive unit control terminal if Ie is equal to 0.

[0044] When the deviation is 0, it indicates that the actual current is equal to the preset maximum current, and there is no need to change the output limit value. Maintaining the current output limit value ensures stable system operation.

[0045] In a preferred embodiment of the present invention, if MAX+N is greater than MAX-INIT, the output limit value MAX of the control terminal of the drive unit is corrected to MAX-INIT.

[0046] The present invention gradually restores performance by fine-tuning the output limit value (MAX+N) without exceeding the maximum current limit, thereby improving the overall performance of the system without sacrificing efficiency. If MAX+N is greater than MAX-INIT, the output limit value MAX of the drive unit control end needs to be corrected to MAX-INIT to prevent the robot from oscillating and being unstable during actual operation due to an excessively large limit value.

[0047] In a preferred embodiment of the present invention, if MAX+N is greater than or equal to MAX-INIT, the output limit value of the control terminal of the driving unit is corrected to MAX-INIT.

[0048] In a preferred embodiment of the present invention, if MAX is less than 0, the output limit value MAX of the current drive unit control terminal is corrected to 0.

[0049] In a preferred embodiment of the present invention, if MAX-M is less than or equal to 0, the output limit value MAX of the control terminal of the driving unit is corrected to 0.

[0050] In a preferred embodiment of the present invention, in S4, the process of correcting the first current instruction is:

[0051] Obtain the current joint target position command Pt and the actual joint position P, calculate the real-time position deviation Pe, calculate the position correction value Pout based on the position deviation Pe, correct the joint current I based on the position correction value Pout to obtain the pre-input current, and if the pre-input current is greater than or equal to the output limit value MAX, correct the pre-input current value to the output limit value MAX to obtain the second current command I'; if the pre-input current is less than the output limit value MAX, calibrate the pre-input current to the second current command I';

[0052]

[0053] Among them, Kp is the proportional coefficient of the position PID controller, Ki is the integral coefficient, Kd is the differential coefficient, and t is time.

[0054] If the second current instruction I' is greater than or equal to the output limit value MAX, the value of the second current instruction I' is corrected to the output limit value MAX and input to the drive unit end. By correcting the current instruction, the instability of the control system caused by the sudden change of current can be avoided, which helps to maintain the smoothness of the robot movement and improve the accuracy of motion control. When I' is greater than or equal to the output limit value MAX, the current current instruction may be affected by the external environment, resulting in a current overload instruction. The value of the second current instruction I' is corrected to the output limit value MAX, ensuring the safe and stable operation of the drive unit.

[0055] The above is a detailed description of an embodiment of the present invention. However, the content described is only a preferred embodiment of the present invention and should not be considered to limit the scope of the present invention. All equivalent changes and improvements made within the scope of the present invention should still fall within the scope of the patent coverage of the present invention.

Claims

1. A robot joint force-position hybrid control method based on command current, characterized in that: The method comprises the following steps: S1, acquiring the target position in real time and generating corresponding point position instructions, performing kinematic inverse solution on the robot motion based on the point position instructions, and generating the first current instructions for all joint drive units; S2, preset the maximum current It and obtain the real-time current I of the drive unit, and make a difference between the maximum current It and the real-time current I to obtain the deviation Ie. If the deviation Ie is greater than 0, obtain the output limit value MAX of the current drive unit control end. If MAX is less than MAX-INIT, MAX-INIT is the maximum output limit value of the drive unit control end, then correct the output limit value of the current drive unit control end to MAX+N, where N is the preset recovery step length of the drive unit control end; S3, if the deviation Ie is less than 0, the output limit value MAX of the current drive unit control end is obtained; if MAX is greater than 0, the output limit value MAX of the current drive unit control end is corrected to MAX-M, where M is the limit step size of the preset drive unit control end; S4, correcting the first current command of the joint drive unit by the deviation Ie to obtain the second current command I' of all joint drive units, and inputting the second current command to the drive unit end; The specific generation process of the first current instruction is: According to the point position instruction, the motion trajectory of the robot system is planned to obtain the target motion posture and establish a motion model, and the motion inverse solution is performed on the motion model to generate the joint target position of each joint; according to the point position instruction and the joint target position, a joint speed instruction is generated; according to the joint speed instruction and the joint position information, a joint force control instruction is generated; according to the joint force control instruction, a first current instruction of the corresponding joint drive unit is generated; The process of correcting the first current command is: Obtain the current joint target position command Pt and the actual joint position P, calculate the real-time position deviation Pe, calculate the position correction value Pout according to the position deviation Pe, correct the joint current I according to the position correction value Pout to obtain the pre-input current, if the pre-input current is greater than or equal to the output limit value MAX, correct the pre-input current value to the output limit value MAX, and obtain the second current command I'; if the pre-input current is less than the output limit value MAX, calibrate the pre-input current to the second current command I'; ; Among them, Kp is the proportional coefficient of the position PID controller, Ki is the integral coefficient, Kd is the differential coefficient, and t is the time.

2. A robot joint force-position hybrid control method based on command current according to claim 1, characterized in that: The S2 also includes that if Ie is equal to 0, the output limit value MAX of the current drive unit control terminal is maintained.

3. The robot joint force-position hybrid control method based on command current according to claim 1 is characterized in that: The step S2 further includes correcting the output limit value of the control terminal of the drive unit to MAX-INIT if MAX is greater than or equal to MAX-INIT.

4. The robot joint force-position hybrid control method based on command current according to claim 1, characterized in that: In S2, if MAX+N is greater than or equal to MAX-INIT, the output limit value of the control terminal of the drive unit is corrected to MAX-INIT.

5. The method for controlling the force and position of a robot joint based on command current according to claim 1, characterized in that: The step S3 further includes correcting the output limit value MAX of the current drive unit control terminal to 0 if MAX is less than or equal to 0.

6. The robot joint force-position hybrid control method based on command current according to claim 1, characterized in that: The step S3 further includes correcting the output limit value MAX of the control terminal of the drive unit to 0 if MAX-M is less than or equal to 0.