Robot variable stiffness control method and device and storage medium
By using a PID controller to control the position and speed of the robot joint, the problems of complex and oscillating control of variable stiffness robots in the existing technology are solved, and the control logic is simplified and the control effect is improved.
Patent Information
- Application Number
- CN202210906271.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-07-29
- Publication Date
- 2025-10-24
- Estimated Expiration
- 2042-07-29
AI Technical Summary
The variable stiffness robot control method in the existing technology relies on the impedance control system model. The design process is cumbersome and prone to oscillation, resulting in poor control effect.
The proportional-integral-derivative (PID) controller is used to control the position and speed of the robot joints, including a proportional-differential (PD) controller and a proportional-integral (PI) controller, which communicate with the current controller respectively to simplify the control logic and avoid oscillations caused by inappropriate design of inertia, damping and stiffness coefficients.
The simplified control logic is achieved, the effect of variable stiffness control of the robot is improved, oscillation is avoided, and the flexibility and stability of the control are improved.
Smart Images

Figure CN115167112B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of robots, and in particular relates to a robot variable stiffness control method and device and a storage medium. BACKGROUND
[0002] With the emphasis on the safety of human-robot interaction, variable stiffness robots have become an important branch in the field of robots. Variable stiffness robots can greatly improve safety and environmental adaptability because their stiffness can be changed.
[0003] In the prior art, when the variable stiffness robot is controlled, the impedance control method is generally used. When the impedance control method is used, an accurate impedance control system model needs to be identified.
[0004] However, the design process of the impedance control system model is complicated, and when the inertia, damping and stiffness coefficients in the system model are not designed properly, the system may oscillate and the control effect is poor. SUMMARY
[0005] The present application aims to overcome the deficiencies in the prior art and provide a robot variable stiffness control method, device and storage medium, which can improve the buffering effect.
[0006] To achieve the above-mentioned purpose, the technical solutions adopted by the embodiments of the present application are as follows:
[0007] In a first aspect, the present application provides a robot variable stiffness control method, comprising:
[0008] obtaining actual position parameters and actual speed parameters of each joint in the robot;
[0009] controlling the position and speed of each joint based on a proportional-integral-derivative (PID) controller according to the actual position parameters, the actual speed parameters and the planned control trajectory of each joint, wherein the PID controller includes a proportional-derivative (PD) controller for position control of each joint and a proportional-integral (PI) controller for speed control of each joint, and the PD controller and the PI controller are respectively connected to a current controller.
[0010] In an optional embodiment, the controlling the position and speed of each joint based on the PID controller according to the actual position parameters, the actual speed parameters and the planned control trajectory of each joint comprises:
[0011] calculating the joint torque feedforward of each joint in the robot according to a preset dynamic algorithm;
[0012] determine a first proportional coefficient of a PD controller corresponding to each joint and a second proportional coefficient of a PI controller corresponding to each joint according to joint torque feedforward of each joint;
[0013] perform position and speed control on each joint based on a PID controller according to actual position parameters, actual speed parameters of each joint and planning control parameters corresponding to the planning control trajectory based on the first proportional coefficient and the second proportional coefficient corresponding to each joint.
[0014] In an optional implementation, the method further comprises:
[0015] obtain planning joint positions of each joint corresponding to the planning control trajectory and a preset external contact force trajectory;
[0016] obtain planning joint positions of each joint corresponding to the planning control trajectory and a preset external contact force trajectory;
[0017] In an optional implementation, the method further comprises:
[0018] perform position control on each joint based on a PD controller according to actual position parameters of each joint and planning position control parameters corresponding to the planning control trajectory based on the first proportional coefficient corresponding to each joint;
[0019] perform speed control on each joint based on a PI controller according to actual speed parameters of each joint and planning speed control parameters corresponding to the planning control trajectory based on the second proportional coefficient corresponding to each joint.
[0020] In an optional implementation, the method further comprises:
[0021] obtain a first initial maximum proportional coefficient and a first initial minimum proportional coefficient of a PD controller corresponding to each joint;
[0022] obtain a first initial maximum proportional coefficient and a first initial minimum proportional coefficient of a PD controller corresponding to each joint;
[0023] In an optional implementation, the method further comprises:
[0024] obtaining a second initial maximum proportional coefficient and a second initial minimum proportional coefficient of a PI controller corresponding to each joint;
[0025] calculating a second proportional coefficient of a PI controller corresponding to each joint according to the second initial maximum proportional coefficient, the second initial minimum proportional coefficient and a maximum joint torque corresponding to each joint.
[0026] In an optional implementation, the method further comprises:
[0027] controlling each joint position to remain unchanged, loading each joint with a preset load, and obtaining, as the first initial maximum proportional coefficient, a proportional coefficient of a PD controller corresponding to each joint when the robot is in a stable state and a stiffness parameter of each joint meets a first preset requirement, and obtaining, as the second initial maximum proportional coefficient, a proportional coefficient of a PI controller corresponding to each joint.
[0028] obtaining, as the first initial minimum proportional coefficient, a proportional coefficient of a PD controller corresponding to each joint when each joint of the robot is in an unloaded state, the robot is in a stable state and a stiffness parameter of each joint meets a second preset requirement, and obtaining, as the second initial minimum proportional coefficient, a proportional coefficient of a PI controller corresponding to each joint.
[0029] In a second aspect, the present application provides a robot variable stiffness control device, comprising:
[0030] an obtaining module configured to obtain actual position parameters and actual speed parameters of each joint in a robot;
[0031] a control module configured to control each joint based on a proportional integral differential (PID) controller according to the actual position parameters and the actual speed parameters of each joint and a planned control trajectory, the PID controller comprising a proportional differential (PD) controller for position control of each joint and a proportional integral (PI) controller for speed control of each joint, wherein the PD controller and the PI controller are in communication connection with a current controller.
[0032] In an optional implementation, the control module is specifically configured to calculate joint torque feedforward of each joint in the robot according to a preset dynamics algorithm.
[0033] determining a first proportional coefficient of a PD controller corresponding to each joint and a second proportional coefficient of a PI controller corresponding to each joint according to the joint torque feedforward of each joint.
[0034] According to actual position parameters and actual velocity parameters of each joint and the planning control parameters corresponding to the planning control trajectory, each joint is controlled in position and velocity respectively by a PID controller based on the first proportional coefficient and the second proportional coefficient corresponding to each joint.
[0035] In an optional implementation, the control module is specifically configured to acquire planning joint positions of each joint corresponding to the planning control trajectory and a preset external contact force trajectory.
[0036] According to a preset dynamics algorithm, joint torque feedforward of each joint in the robot is calculated based on the planning joint positions of each joint and the preset external contact force trajectory.
[0037] In an optional implementation, the control module is specifically configured to control each joint in position based on a PD controller according to actual position parameters of each joint and planning position control parameters corresponding to the planning control trajectory based on the first proportional coefficient corresponding to each joint.
[0038] According to actual velocity parameters of each joint and planning velocity control parameters corresponding to the planning control trajectory, each joint is controlled in velocity respectively by a PI controller based on the second proportional coefficient corresponding to each joint.
[0039] In an optional implementation, the robot variable stiffness control device further comprises a calculation module configured to acquire first initial maximum proportional coefficients and first initial minimum proportional coefficients of PD controllers corresponding to each joint.
[0040] According to the first initial maximum proportional coefficients, the first initial minimum proportional coefficients and maximum joint torques corresponding to each joint, first proportional coefficients of the PD controllers corresponding to each joint are calculated.
[0041] In an optional implementation, the calculation module is further configured to acquire second initial maximum proportional coefficients and second initial minimum proportional coefficients of PI controllers corresponding to each joint.
[0042] According to the second initial maximum proportional coefficients, the second initial minimum proportional coefficients and maximum joint torques corresponding to each joint, second proportional coefficients of the PI controllers corresponding to each joint are calculated.
[0043] In an optional implementation, the computing module is further configured to control each joint to remain unchanged, load each joint with a preset load, and obtain the first initial maximum proportional coefficient corresponding to the PD controller and the second initial maximum proportional coefficient corresponding to the PI controller when the robot is in a stable state and each joint stiffness parameter meets a first preset requirement.
[0044] The first initial minimum proportional coefficient corresponding to the PD controller and the second initial minimum proportional coefficient corresponding to the PI controller are obtained when each joint is in an unloaded state, the robot is in a stable state, and each joint stiffness parameter meets a second preset requirement.
[0045] In a third aspect, the present application provides an electronic device, comprising a processor, a storage medium, and a bus, the storage medium stores machine readable instructions executable by the processor, the processor and the storage medium communicate through the bus when the electronic device is running, and the processor executes the machine readable instructions to perform the steps of the robot variable stiffness control method according to any one of the preceding embodiments.
[0046] In a fourth aspect, the present application provides a computer readable storage medium, the computer readable storage medium stores a computer program, and the computer program performs the steps of the robot variable stiffness control method according to any one of the preceding embodiments when executed by a processor.
[0047] The present application has the following beneficial effects:
[0048] In the robot variable stiffness control method, device, and storage medium provided by the embodiments of the present application, the actual position parameters and actual speed parameters of each joint of the robot are obtained, and the position and speed of each joint are controlled based on a proportional integral differential (PID) controller according to the actual position parameters, actual speed parameters, and planned control trajectory of each joint. The PID controller includes a proportional differential (PD) controller for position control of each joint and a proportional integral (PI) controller for speed control of each joint. The PD controller and the PI controller are respectively connected to a current controller. Compared with the prior art, the embodiments of the present application can simplify the control logic and achieve variable stiffness control of the robot without designing an impedance control system model. In the control process, the vibration phenomenon caused by improper design of inertia, damping, and stiffness coefficient can be avoided, and the control effect can be effectively improved. BRIEF DESCRIPTION OF DRAWINGS
[0049] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the following will briefly introduce the drawings needed to be used in the embodiments. It should be understood that the following drawings only show some of the embodiments of the present application, and therefore should not be regarded as a limitation on the scope. For those skilled in the art, other related drawings can also be obtained without creative labor.
[0050] Figure 1 A robot variable stiffness control architecture provided by the embodiments of the present application;
[0051] Figure 2 A flowchart of a robot variable stiffness control method provided by the embodiments of the present application;
[0052] Figure 3 A flowchart of another robot variable stiffness control method provided by the embodiments of the present application;
[0053] Figure 4 A flowchart of another robot variable stiffness control method provided by the embodiments of the present application;
[0054] Figure 5 A flowchart of another robot variable stiffness control method provided by the embodiments of the present application;
[0055] Figure 6 A flowchart of another robot variable stiffness control method provided by the embodiments of the present application;
[0056] Figure 7 A flowchart of another robot variable stiffness control method provided by the embodiments of the present application;
[0057] Figure 8 A flowchart of another robot variable stiffness control method provided by the embodiments of the present application;
[0058] Figure 9 A functional module diagram of a robot variable stiffness control device provided by the embodiments of the present application;
[0059] Figure 10 An electronic device structure provided by the embodiments of the present application. DETAILED DESCRIPTION
[0060] In order to make the purpose, technical solutions and advantages of the embodiments of the present application more clear, the following will combine the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are some of the embodiments of the present application, not all the embodiments. The components of the embodiments of the present application described and shown in the drawings can be arranged and designed in various different configurations.
[0061] The following detailed description of embodiments of the application provided in the accompanying drawings is not intended to limit the scope of the application claimed, but merely represents selected embodiments of the application. Based upon the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the scope of the present application.
[0062] It should be noted that similar reference numbers and letters represent similar items in the following drawings, and therefore, once an item is defined in one drawing, it need not be further defined and explained in subsequent drawings.
[0063] When the foot-type robot walks, the foot is alternately lifted and landed. The existing foot-type robot with position control does not have a good shock absorption and buffering scheme. Generally, the impact of landing is indirectly reduced by improving the trajectory tracking accuracy of the foot-type robot, which has high cost and poor control effect.
[0064] Therefore, the embodiments of the present application provide a robot variable stiffness control method, which can improve the buffering effect.
[0065] Figure 1 A robot variable stiffness control architecture diagram provided by the embodiments of the present application is shown in FIG. 1, which is described in combination with FIG. 2. Figure 1 As shown in FIG. 2, the PID controller includes a proportional differential PD controller for position control of each joint and a proportional integral PI controller for speed control of each joint, wherein the PD controller and the PI controller are respectively in communication connection with a current controller, the current controller can be connected with the controlled joint, and is used to output a driving current to the controlled joint to control the controlled joint to execute a planned control trajectory. Optionally, in some embodiments, each joint can correspond to one PD controller and one PI controller, and is correspondingly arranged inside each joint. Of course, the specific arrangement manner is not limited thereto, and can be different according to actual application scenarios. Figure 1
[0066] A robot variable stiffness control method provided by the embodiments of the present application is shown in FIG. 3, and the execution subject of the method can be a robot including at least one joint, such as a foot-type robot, an industrial robot (including a mechanical arm), etc. Taking the foot-type robot as an example, the execution subject of the method can be specifically a processor in the foot-type robot. As shown in FIG. 3, the method can include the following steps. Figure 2 Figure 2
[0067] S101, acquiring actual position parameters and actual speed parameters of each joint in the robot.
[0068] Optionally, the preset positions of the joints can be provided with position sensors and speed sensors for collecting actual position parameters and actual speed parameters of the joints during movement of the joints. Of course, the application does not limit the frequency of collection here, which can be different according to the actual application scenario. In addition, it should be noted that the robot stiffness mentioned in the application refers to the stiffness of each joint in the robot, and the stiffness of each joint can represent the degree of compliance of the joint in executing the preset action when the end of the joint contacts an external object.
[0069] S102, according to the actual position parameters, actual speed parameters and planned control trajectories of the joints, respectively controlling the positions and speeds of the joints based on a proportional-integral-derivative (PID) controller.
[0070] The planned control trajectories of the joints, i.e., the expected control trajectories corresponding to the joints, can optionally include planned position control parameters, planned speed control parameters, planned acceleration control parameters, etc., corresponding to the joints, which are not limited here and can be different according to the actual application scenario.
[0071] In combination with the above description of the PID controller, it can be understood that in the actual control process, the positions of the joints can be controlled by the PD controller according to the actual position parameters and the planned control trajectories of the joints; the speeds of the joints can be controlled by the PI controller according to the actual speed parameters and the planned control trajectories of the joints. By applying the embodiment of the application, compared with the prior art, the control logic can be simplified, the impedance control system model does not need to be designed to achieve variable stiffness control of the robot, and in the control process, the shaking phenomenon caused by improper design of inertia, damping and stiffness coefficient can be avoided, and the control effect can be effectively improved.
[0072] In addition, by applying the embodiment of the application, the positions and speeds of the joints can be controlled respectively, the mutual influence of the two in the control process can be avoided, the decoupling control of the joint position and the joint speed can be achieved, better variable stiffness compliance control of the joints of the robot can be achieved, i.e., the control process of the joints of the robot can be more moderate.
[0073] In summary, the robot variable stiffness control method provided in the embodiments of the present application comprises: obtaining actual position parameters and actual speed parameters of each joint in the robot; performing position and speed control on each joint based on a proportional-integral-derivative (PID) controller according to the actual position parameters and the actual speed parameters of each joint and a planned control trajectory, wherein the PID controller comprises a proportional-derivative (PD) controller for position control of each joint and a proportional-integral (PI) controller for speed control of each joint, the PD controller and the PI controller are respectively in communication connection with a current controller, compared with the prior art, the embodiments of the present application can simplify the control logic, and the variable stiffness control of the robot can be implemented without designing an impedance control system model, and in the control process, the oscillation phenomenon caused by improper inertia, damping and stiffness coefficient design can be avoided, and the control effect can be effectively improved.
[0074] Figure 3 The flowchart of another robot variable stiffness control method provided in the embodiments of the present application is shown in FIG. 6. Optionally, as shown in FIG. 6, the above performing position and speed control on each joint based on the PID controller according to the actual position parameters and the actual speed parameters of each joint and the planned control trajectory comprises: Figure 3
[0075] S201, calculating joint torque feedforward of each joint in the robot according to a preset dynamics algorithm.
[0076] Optionally, each preset dynamics algorithm can be obtained based on the Lagrange method, which is not limited herein. The joint torque is the torque of joint torsion.
[0077] S202, determining a first proportional coefficient of a PD controller corresponding to each joint and a second proportional coefficient of a PI controller corresponding to each joint according to the joint torque feedforward of each joint.
[0078] The first proportional coefficient is the proportional coefficient in the PD controller, and the second proportional coefficient is the proportional coefficient in the PI controller. The joint torque feedforward can represent the adjustment feedback of the first proportional coefficient and the second proportional coefficient. The first proportional coefficient is taken as an example for description. Different first proportional coefficients can be obtained for different joint torque feedforward. Optionally, in some embodiments, the first proportional coefficient and the second proportional coefficient can be the same or different, which is not limited herein.
[0079] S203, performing position and speed control on each joint based on the PID controller according to the actual position parameters and the actual speed parameters of each joint and the planned control parameters corresponding to the planned control trajectory based on the first proportional coefficient and the second proportional coefficient corresponding to each joint.
[0080] According to the foregoing description, it can be understood that, based on the first proportional coefficient, the position of each joint can be controlled by the PD controller according to the actual position parameter of each joint and the planned control trajectory; and based on the second proportional coefficient, the speed of each joint can be controlled by the PI controller according to the actual speed of each joint and the planned control trajectory.
[0081] In addition, it can also be understood that, taking the PD controller as an example, if the first proportional coefficient changes, the control effect of the position of each joint controlled by the PD controller will also change. The first proportional coefficient is related to the joint torque feedforward of the joint, that is, when the joint torque feedforward of the joint changes, the corresponding first proportional coefficient will also change.
[0082] Figure 4 Another flowchart of a robot variable stiffness control method provided by an embodiment of the present application is provided. Optionally, as shown in Figure 4 The above calculation of the joint torque feedforward of each joint in the robot according to the preset dynamics algorithm includes:
[0083] S301, obtaining the planned joint position of each joint corresponding to the planned control trajectory and a preset external contact force trajectory.
[0084] The preset external contact force trajectory is the contact force of the external object when each joint executes the planned control trajectory. For example, taking a joint as a mechanical arm, in some embodiments, the preset external contact force trajectory corresponding to the mechanical arm can be a change curve of the contact force between the preset object and the mechanical arm when the mechanical arm clamps the preset object to perform a carrying operation.
[0085] S302, calculating the joint torque feedforward of each joint in the robot according to a preset dynamics algorithm based on the planned joint position of each joint and the preset external contact force trajectory.
[0086] In some embodiments, the preset dynamics algorithm can be represented by the following formula, and the joint torque feedforward of each joint can be obtained according to the following formula:
[0087]
[0088] q represents the planned position of the joint determined according to the planned control trajectory, v represents the planned speed of the joint determined according to the planned control trajectory, a represents the planned acceleration of the joint determined according to the planned control trajectory, λ is the preset external contact force trajectory, τ represents the joint torque feedforward, and the others are preset coefficient matrices, wherein H(q) represents the inertia matrix of the joint corresponding to the planned position, represents the sum of the system's Coriolis force, centrifugal force and gravity term corresponding to the joint at the planned position, represents the joint torque input matrix corresponding to the joint at the planned position (determined by the model corresponding to the joint), and represents the contact Jacobian matrix corresponding to the joint at the planned position.
[0089] Figure 5 Another flowchart of a robot variable stiffness control method is provided for the embodiments of the present application. Optionally, as shown in Figure 5 based on the actual position parameters of the joints, the actual velocity parameters of the joints and the planned control parameters corresponding to the planned control trajectory, the positions and velocities of the joints are controlled based on PID controllers according to the first proportional coefficients and the second proportional coefficients corresponding to the joints, including:
[0090] S401, based on the first proportional coefficients corresponding to the joints, the actual position parameters of the joints and the planned position control parameters corresponding to the planned control trajectory, the positions of the joints are controlled based on PD controllers.
[0091] S402, based on the second proportional coefficients corresponding to the joints, the actual velocity parameters of the joints and the planned velocity control parameters corresponding to the planned control trajectory, the velocities of the joints are controlled based on PI controllers.
[0092] Optionally, the planned control parameters can include planned position control parameters and planned velocity control parameters. In combination Figure 1 When the positions of the joints are controlled, the first proportional coefficients corresponding to the joints can be brought into the PD controllers corresponding to the joints, the position deviation values between the actual position parameters of the joints and the planned position control parameters corresponding to the joints are calculated based on the PD controllers, the first current instructions can be output to the current controllers according to the position deviation values, and the position control instructions can be output to the joints by the current controllers according to the first current instructions, so as to drive the joints to move to the corresponding positions, thereby achieving the purpose of controlling the positions of the joints.
[0093] In some embodiments, when the velocities of the joints are controlled, the second proportional coefficients corresponding to the joints can be brought into the PI controllers corresponding to the joints, the velocity deviation values between the actual velocity parameters of the joints and the planned velocity control parameters corresponding to the joints are calculated based on the PI controllers, the second current instructions can be output to the current controllers according to the velocity deviation values, and the velocity control instructions can be output to the joints by the current controllers according to the second current instructions, so as to adjust the moving velocities of the joints, thereby achieving the purpose of controlling the velocities of the joints.
[0094] Figure 6 Another flowchart of a robot variable stiffness control method is provided for the embodiments of the present application. Optionally, as shown in Figure 6As shown, the above method further comprises:
[0095] S501, acquiring a first initial maximum proportional coefficient and a first initial minimum proportional coefficient of a PD controller corresponding to each joint.
[0096] The first initial maximum proportional coefficient and the first initial minimum proportional coefficient corresponding to each joint can be obtained by debugging each joint.
[0097] S502, calculating a first proportional coefficient of the PD controller corresponding to each joint according to the first initial maximum proportional coefficient, the first initial minimum proportional coefficient, and a maximum joint torque corresponding to each joint.
[0098] In some embodiments, the first proportional coefficient of the PD controller corresponding to each joint can be calculated according to the following formula:
[0099]
[0100] wherein, represents the first initial maximum proportional coefficient corresponding to the joint, represents the first initial minimum proportional coefficient corresponding to the joint, τ max represents the maximum joint torque corresponding to the joint, τ represents the joint torque feedforward of the joint, kp pos represents the first proportional coefficient of the PD controller corresponding to the joint.
[0101] Figure 7 Another flowchart of a robot variable stiffness control method provided by the embodiments of the present application is shown in FIG. 6. Optionally, as shown in FIG. 6, the above method further comprises: Figure 7
[0102] S601, acquiring a second initial maximum proportional coefficient and a second initial minimum proportional coefficient of a PI controller corresponding to each joint.
[0103] The second initial maximum proportional coefficient and the second initial minimum proportional coefficient corresponding to each joint can be obtained by debugging each joint.
[0104] S602, calculating a second proportional coefficient of the PI controller corresponding to each joint according to the second initial maximum proportional coefficient, the second initial minimum proportional coefficient, and a maximum joint torque corresponding to each joint.
[0105] In some embodiments, the first proportional coefficient of the PI controller corresponding to each joint can be calculated according to the following formula:
[0106]
[0107] wherein, a second initial maximum proportional coefficient corresponding to the joint, a second initial minimum proportional coefficient corresponding to the joint, max a maximum joint torque corresponding to the joint, τ represents a joint torque feedforward of the joint, kp vel a second proportional coefficient of a PI controller corresponding to the joint.
[0108] Figure 8 A flowchart of another robot variable stiffness control method provided by an embodiment of the present application. Optionally, as shown in Figure 8 The above method further comprises:
[0109] S701, control the position of each joint to remain unchanged, load a preset load on each joint, and obtain, when the robot is in a stable state and the stiffness parameters of each joint meet a first preset requirement, a proportional coefficient of a PD controller as a first initial maximum proportional coefficient and a proportional coefficient of a PI controller as a second initial maximum proportional coefficient.
[0110] When the robot is in a stable state, the joints of the robot do not vibrate. In addition, when the preset load loaded on each joint is adjusted within a preset adjustment range, the joints of the robot also do not vibrate or shake. The stiffness parameter of each joint can represent the change in position and speed of each joint when the preset load loaded on each joint is adjusted within the preset adjustment range. When the stiffness parameter of each joint meets the first preset requirement, the position change of each joint is small, which can be less than a preset position threshold.
[0111] When the position of each joint is controlled to remain unchanged and a preset load is loaded on each joint, if it is determined that the robot is in a stable state and the stiffness parameters of each joint meet the first preset requirement, the proportional coefficient in the PD controller can be obtained at this time, and the proportional coefficient is taken as the first initial maximum proportional coefficient. The proportional coefficient in the PI controller is obtained, and the proportional coefficient is taken as the second initial maximum proportional coefficient.
[0112] S702, obtain, when each joint is in an unloaded state, the robot is in a stable state and the stiffness parameters of each joint meet a second preset requirement, a proportional coefficient of a PD controller as a first initial minimum proportional coefficient and a proportional coefficient of a PI controller as a second initial minimum proportional coefficient.
[0113] When each joint is in an unloaded state, that is, in a state where no pressure is applied to each joint. When the stiffness parameters of each joint meet the second preset requirement, the speed change of each joint is small, which can be less than a preset speed threshold. For the description of the stable state, refer to the description above, which will not be repeated here.
[0114] Based on the above description, that is, when it is determined that the robot is in a stable state and the stiffness parameters of each joint meet the second preset requirement when each joint is in an unloaded state, the proportional coefficient in the PD controller can be obtained at this time, and the proportional coefficient is taken as the first initial minimum proportional coefficient; the proportional coefficient in the PI controller is obtained, and the proportional coefficient is taken as the second initial minimum proportional coefficient.
[0115] In summary, the embodiment of the application can control the stiffness of each joint in the robot based on the stiffness decoupling PID control method of the position loop and the speed loop, and calculate the first proportional coefficient and the second proportional coefficient in real time according to the planned control trajectory, so as to realize the variable stiffness compliance control of each joint of the robot. On the one hand, the variable stiffness control of the robot can be realized without designing an impedance control system model, and on the other hand, the first proportional coefficient and the second proportional coefficient corresponding to each joint can be calculated in real time according to the planned control trajectory, so that better compliance control can be realized.
[0116] Figure 9 A functional module schematic diagram of a robot variable stiffness control device provided by the embodiment of the application is shown, and the basic principle and the technical effects generated by the device are the same as those of the corresponding method embodiments described above. For brief description, the parts not mentioned in the embodiment can refer to the corresponding contents in the method embodiments.
[0117] As shown in Figure 9 The robot variable stiffness control device 100 includes:
[0118] The acquisition module 110 is configured to acquire actual position parameters and actual speed parameters of each joint in the robot.
[0119] The control module 120 is configured to control each joint based on a proportional integral differential (PID) controller according to the actual position parameters, the actual speed parameters and the planned control trajectory of each joint, the PID controller including a proportional differential (PD) controller for position control of each joint and a proportional integral (PI) controller for speed control of each joint, wherein the PD controller and the PI controller are in communication connection with a current controller.
[0120] In an optional embodiment, the control module 120 is specifically configured to calculate joint torque feedforward of each joint in the robot according to a preset dynamics algorithm.
[0121] The control module 120 is configured to determine the first proportional coefficient of the PD controller corresponding to each joint and the second proportional coefficient of the PI controller corresponding to each joint according to the joint torque feedforward of each joint.
[0122] According to actual position parameters and actual velocity parameters of each joint and the planning control parameters corresponding to the planning control trajectory, each joint is controlled in position and velocity respectively by a PID controller based on the first proportional coefficient and the second proportional coefficient corresponding to each joint.
[0123] In an optional implementation, the control module 120 is specifically configured to acquire planning joint positions of each joint corresponding to the planning control trajectory and a preset external contact force trajectory.
[0124] According to a preset dynamics algorithm, joint torque feedforward of each joint in the robot is calculated based on the planning joint positions of each joint and the preset external contact force trajectory.
[0125] In an optional implementation, the control module 120 is specifically configured to control each joint in position based on a PD controller according to actual position parameters of each joint and planning position control parameters corresponding to the planning control trajectory based on the first proportional coefficient corresponding to each joint.
[0126] According to actual velocity parameters of each joint and planning velocity control parameters corresponding to the planning control trajectory, each joint is controlled in velocity respectively by a PI controller based on the second proportional coefficient corresponding to each joint.
[0127] In an optional implementation, the robot variable stiffness control device further comprises a calculation module configured to acquire first initial maximum proportional coefficients and first initial minimum proportional coefficients of PD controllers corresponding to each joint.
[0128] According to the first initial maximum proportional coefficients, the first initial minimum proportional coefficients and maximum joint torques corresponding to each joint, first proportional coefficients of the PD controllers corresponding to each joint are calculated.
[0129] In an optional implementation, the calculation module is further configured to acquire second initial maximum proportional coefficients and second initial minimum proportional coefficients of PI controllers corresponding to each joint.
[0130] According to the second initial maximum proportional coefficients, the second initial minimum proportional coefficients and maximum joint torques corresponding to each joint, second proportional coefficients of the PI controllers corresponding to each joint are calculated.
[0131] In an optional implementation, the computing module is further configured to control each joint to keep unchanged, load each joint with a preset load, and obtain the first initial maximum proportional coefficient corresponding to the PD controller and the second initial maximum proportional coefficient corresponding to the PI controller when the robot is in a stable state and each joint stiffness parameter meets a first preset requirement.
[0132] obtain the first initial minimum proportional coefficient corresponding to the PD controller and the second initial minimum proportional coefficient corresponding to the PI controller when each joint is in an empty state, the robot is in a stable state, and each joint stiffness parameter meets a second preset requirement.
[0133] The apparatus is configured to perform the method provided by the foregoing embodiments, and has similar implementation principles and technical effects, which will not be described here.
[0134] The modules can be one or more integrated circuits configured to implement the above method, for example, one or more application specific integrated circuits (ASICs), or one or more microprocessors, or one or more field programmable gate arrays (FPGAs), etc. For another example, when a certain module above is implemented in the form of a processing element scheduling code, the processing element can be a general-purpose processor, such as a central processing unit (CPU) or other processor that can invoke code. For another example, the modules can be integrated together to implement in the form of a system on a chip (SOC).
[0135] Figure 10 An electronic device structure diagram provided by an embodiment of the present application, the electronic device can be integrated into a control chip in a foot robot. As shown in the figure, the electronic device can include a processor 210, a storage medium 220, and a bus 230, the storage medium 220 stores machine readable instructions executable by the processor 210, when the electronic device is running, the processor 210 and the storage medium 220 communicate through the bus 230, the processor 210 executes the machine readable instructions to execute the steps of the above method embodiments. The specific implementation and technical effects are similar, which will not be described here. Figure 10
[0136] Optionally, the present application also provides a storage medium, and the storage medium stores the computer program, and the computer program is run by the processor to execute the steps of the method embodiments. The specific implementation and technical effects are similar, and will not be repeated here.
[0137] In several embodiments provided in the present application, it should be understood that the disclosed apparatus and method can be implemented in other manners. For example, the described apparatus embodiments are merely schematic. The division of the units is merely a logical function division. There can be another division manner for the actual implementation. For example, a plurality of units or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the displayed or discussed mutual couplings or direct couplings or communication connections can be indirect couplings or communication connections through some interfaces, devices or units, and can be electrical, mechanical or other forms.
[0138] The units described as separated components can or can not be physically separated, and the components displayed as units can or can not be physical units, i.e., can be located in one place, or can be distributed on a plurality of network units. Some or all of the units can be selected according to the actual needs to achieve the purposes of the embodiments.
[0139] In addition, each functional unit in the embodiments of the present application can be integrated in one processing unit, or each unit can exist physically, or two or more units can be integrated in one unit. The integrated unit can be implemented in the form of hardware, or in the form of hardware plus software function units.
[0140] The integrated unit implemented in the form of software function units can be stored in a computer readable storage medium. The software function unit stored in the storage medium includes a plurality of instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) or a processor (English: processor) to execute some steps of the embodiments of the present application. The foregoing storage medium includes a U disk, a mobile hard disk, a read-only memory (English: Read-Only Memory, abbreviated as: ROM), a random access memory (English: Random Access Memory, abbreviated as: RAM), a magnetic disk or an optical disk, and various program codes that can be stored.
[0141] It has to be explained that, in this document, relational terms are used only to estab- lish a relationship of one entity or action to another entity or action and do not necessarily imply that a real relationship exists or is ordered in any way, unless the order or relationship is explicitly stated. Such relational terms include, but are not limited to, the terms "first", "second", "top", "bottom", "over", "under", "above", "below", "middle", and "end".
[0142] The preferred embodiments of this application are described herein with reference to the drawings, in which like elements are referred to with like numerals throughout. The various embodiments of the application are described in this specification in order to provide a thorough and enabling disclosure of the application. These various embodiments are included within the scope of the present application. The present application is not limited to the embodiments described in this specification, but rather, the scope of the present application is defined only by the claims and equivalents thereof. Furthermore, many modifications and variations will be apparent to those of ordinary skill in the art once the principles of the present application have been art. Accordingly, the present application is intended to embrace all alternatives, modifications and variations that fall within the scope of the present application. Furthermore, the singular forms "a", "an" and "the" are used herein not to denote identity by singularity, but rather to denote "at least one". The use of the term "at least one" in this specification does not exclude the use of more than one, unless clearly indicated and / or dictated otherwise by the subject matter.
Claims
1. A robot variable stiffness control method, characterized by, The method comprises: obtaining actual position parameters and actual speed parameters of each joint in the robot; controlling each joint based on a proportional-integral-derivative (PID) controller according to the actual position parameters, the actual speed parameters and a planned control trajectory of each joint, wherein the PID controller comprises a proportional-derivative (PD) controller for position control of each joint and a proportional-integral (PI) controller for speed control of each joint, and the PD controller and the PI controller are respectively connected to a current controller; the controlling each joint based on the PID controller according to the actual position parameters, the actual speed parameters and the planned control trajectory of each joint comprises: calculating joint torque feedforward of each joint in the robot according to a preset dynamics algorithm; determining a first proportional coefficient of a PD controller corresponding to each joint and a second proportional coefficient of a PI controller corresponding to each joint according to the joint torque feedforward of each joint; controlling each joint based on the PID controller according to the actual position parameters, the actual speed parameters and a planned control parameter corresponding to the planned control trajectory of each joint based on the first proportional coefficient and the second proportional coefficient corresponding to each joint; the method further comprises: obtaining a second initial maximum proportional coefficient and a second initial minimum proportional coefficient of the PI controller corresponding to each joint; calculating the second proportional coefficient of the PI controller corresponding to each joint according to the second initial maximum proportional coefficient, the second initial minimum proportional coefficient and a maximum joint torque corresponding to each joint; the method further comprises: controlling each joint to remain unchanged, loading a preset load on each joint, and obtaining, when the robot is in a stable state and the stiffness parameters of each joint meet a first preset requirement, a proportional coefficient corresponding to the PD controller as the first initial maximum proportional coefficient and a proportional coefficient corresponding to the PI controller as the second initial maximum proportional coefficient; obtaining, when the robot is in a stable state and the stiffness parameters of each joint meet a second preset requirement, a proportional coefficient corresponding to the PD controller as the first initial minimum proportional coefficient and a proportional coefficient corresponding to the PI controller as the second initial minimum proportional coefficient.
2. The method of claim 1, wherein, the calculating joint torque feedforward of each joint in the robot according to a preset dynamics algorithm comprises: obtaining a planned joint position of each joint corresponding to the planned control trajectory and a preset external contact force trajectory; calculating joint torque feedforward of each joint in the robot according to a preset dynamics algorithm based on the planned joint position of each joint and the preset external contact force trajectory.
3. The method of claim 1, wherein, the controlling each joint based on the PID controller according to the actual position parameters, the actual speed parameters and a planned control parameter corresponding to the planned control trajectory of each joint based on the first proportional coefficient and the second proportional coefficient corresponding to each joint comprises: According to the actual position parameters and the planning position control parameters corresponding to the planning control trajectory of each joint, the first proportional coefficient of the PD controller corresponding to each joint is calculated based on the first initial maximum proportional coefficient, the first initial minimum proportional coefficient of each joint, and the maximum joint torque corresponding to each joint. According to the actual position parameters and the planning position control parameters corresponding to the planning control trajectory of each joint, the first proportional coefficient of the PD controller corresponding to each joint is calculated based on the first initial maximum proportional coefficient, the first initial minimum proportional coefficient of each joint, and the maximum joint torque corresponding to each joint.
4. The method of claim 1, wherein, The method further comprises: The first initial maximum proportional coefficient and the first initial minimum proportional coefficient of the PD controller corresponding to each joint are obtained. The first proportional coefficient of the PD controller corresponding to each joint is calculated based on the first initial maximum proportional coefficient, the first initial minimum proportional coefficient of each joint, and the maximum joint torque corresponding to each joint.
5. A robot variable stiffness control device, characterized by, The method further comprises: The actual position parameters and the actual speed parameters of each joint in the robot are obtained. The control module is configured to control the position and speed of each joint based on the proportional integral differential (PID) controller according to the actual position parameters, the actual speed parameters of each joint, and the planning control trajectory, wherein the PID controller comprises a proportional differential (PD) controller for position control and a proportional integral (PI) controller for speed control, and the PD controller and the PI controller are in communication connection with the current controller. The control module is specifically configured to calculate the joint torque feedforward of each joint in the robot according to a preset dynamic algorithm, determine the first proportional coefficient of the PD controller corresponding to each joint and the second proportional coefficient of the PI controller corresponding to each joint according to the joint torque feedforward of each joint, and control the position and speed of each joint based on the PID controller according to the actual position parameters, the actual speed parameters of each joint, and the planning control parameters corresponding to the planning control trajectory based on the first proportional coefficient and the second proportional coefficient corresponding to each joint. The calculation module is further configured to control the position of each joint to remain unchanged, load a preset load on each joint, and obtain the first initial maximum proportional coefficient corresponding to the PD controller and the second initial maximum proportional coefficient corresponding to the PI controller when the robot is in a stable state and the stiffness parameters of each joint meet a first preset requirement, and obtain the first initial minimum proportional coefficient corresponding to the PD controller and the second initial minimum proportional coefficient corresponding to the PI controller when each joint is in an unloaded state, the robot is in a stable state, and the stiffness parameters of each joint meet a second preset requirement. The calculation module is further configured to control the position of each joint to remain unchanged, load a preset load on each joint, and obtain the first initial maximum proportional coefficient corresponding to the PD controller and the second initial maximum proportional coefficient corresponding to the PI controller when the robot is in a stable state and the stiffness parameters of each joint meet a first preset requirement, and obtain the first initial minimum proportional coefficient corresponding to the PD controller and the second initial minimum proportional coefficient corresponding to the PI controller when each joint is in an unloaded state, the robot is in a stable state, and the stiffness parameters of each joint meet a second preset requirement.
6. An electronic device, comprising: The application provides a robot variable stiffness control method and device, and a computer readable storage medium. The computer readable storage medium stores a computer program, and the computer program is executed by the processor to perform the steps of the robot variable stiffness control method.
7. A computer-readable storage medium, characterized in that,
Citation Information
Patent Citations
Control method, device, system and storage medium of mechanical arm
CN111421543A