Joint motor control method and device, robot and storage medium
The adaptive controller updates the control parameters of the joint motor, which solves the problem of insufficient robustness and adaptability of the robot joint motor, improves dynamic response ability and control accuracy, and achieves the completion of more complex actions.
Patent Information
- Application Number
- CN202410046533.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-01-11
- Publication Date
- 2025-07-11
AI Technical Summary
The robot's joint motor is poor in robustness and adaptability during control, resulting in insufficient dynamic response capabilities and inability to complete complex actions.
The adaptive controller is used to determine the intersection axis and the direct axis control current according to the desired joint torque, and through adaptive parameter update and filtering processing, the intersection axis and the direct axis control voltage are generated to control the joint motor movement.
It improves the robustness and adaptability of joint motors, enhances the dynamic response and control accuracy of the robot, and can complete more complex actions.
Smart Images

Figure CN120301263A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of robotics, and in particular, to a method and apparatus for controlling a joint motor, a robot, and a storage medium. Background Art
[0002] In recent years, the technology of robotics has been continuously developing, becoming more and more intelligent and automated, and the richness, stability, and flexibility of movements have been improved to varying degrees. A bionic robot has multiple joints, and a joint motor is provided at each joint. The joint motor can drive the parts on both sides of the joint to perform relative movement, and it is precisely by the movement of these joint motors that the robot can complete various actions. However, in related technologies, the robustness and adaptability of the joint motors of the robot during control are poor, resulting in poor dynamic response capabilities of the joint motors, and the robot cannot complete relatively complex actions. Summary of the Invention
[0003] To overcome the problems existing in related technologies, embodiments of the present disclosure provide a method and apparatus for controlling a joint motor, a robot, and a storage medium to solve the defects in related technologies.
[0004] According to a first aspect of an embodiment of the present disclosure, a method for controlling a joint motor is provided, and the method includes:
[0005] Determine a quadrature-axis control current according to a desired joint torque;
[0006] Input the quadrature-axis control current, the direct-axis control current, the quadrature-axis actual current and the direct-axis actual current fed back by the joint motor into an adaptive controller to obtain the quadrature-axis control voltage and the direct-axis control voltage output by the adaptive controller, where the adaptive controller is used to update the adaptive parameters according to the quadrature-axis actual current, the direct-axis actual current, the quadrature-axis estimated current, and the direct-axis estimated current in the previous control frame in each control frame, and determine the quadrature-axis control voltage and the direct-axis control voltage of the current control frame by using the updated adaptive parameters;
[0007] Control the joint motor to move according to the quadrature-axis control voltage and the direct-axis control voltage.
[0008] In an embodiment of the present disclosure, the determining a quadrature-axis control current according to a desired joint torque includes:
[0009] Determine a quadrature-axis control current according to a desired joint torque, the amplitude of the permanent magnet flux linkage of the joint motor, and the number of pole pairs.
[0010] In one embodiment of the present disclosure, the adaptive controller is further configured to use the updated adaptive parameters in each control frame to determine the quadrature-axis estimated current and the direct-axis estimated current of the current frame according to the quadrature-axis control voltage and the direct-axis control voltage of the current control frame.
[0011] In one embodiment of the present disclosure, the adaptive controller is configured to update the adaptive parameters according to the quadrature-axis current error and the direct-axis current error in each control frame, where the quadrature-axis current error is the error between the quadrature-axis actual current and the quadrature-axis estimated current of the previous control frame, and the direct-axis current error is the error between the direct-axis actual current and the direct-axis estimated current of the previous control frame.
[0012] In one embodiment of the present disclosure, the adaptive controller is further configured to perform filtering processing on the quadrature-axis control voltage and the direct-axis control voltage;
[0013] Controlling the joint motor to move according to the quadrature-axis control voltage and the direct-axis control voltage includes:
[0014] Controlling the joint motor to move according to the filtering result of the quadrature-axis control voltage and the filtering result of the direct-axis control voltage.
[0015] In one embodiment of the present disclosure, the method further includes:
[0016] Constructing the adaptive controller according to the quadrature-axis current equation and the direct-axis current equation, where the quadrature-axis current equation is used to characterize the relative relationship between the differential of the quadrature-axis current and the quadrature-axis voltage, the quadrature-axis current, and the mechanical angular velocity, and the direct-axis current equation is used to characterize the relative relationship between the differential of the direct-axis current and the direct-axis voltage, the direct-axis current, and the mechanical angular velocity.
[0017] In one embodiment of the present disclosure, the method further includes:
[0018] Inputting the desired joint state in the motion control instruction and the actual joint state feedback by the joint motor into an impedance controller to obtain the desired joint torque output by the impedance controller.
[0019] In one embodiment of the present disclosure, the desired joint state includes a desired joint position and a desired joint velocity; and / or,
[0020] The actual joint state includes an actual joint position and an actual joint velocity.
[0021] In one embodiment of the present disclosure, the method further includes:
[0022] Obtaining the actual joint state, the actual joint torque, the quadrature-axis actual current, and the direct-axis actual current feedback by the joint motor.
[0023] According to a second aspect of the embodiments of the present disclosure, a joint motor control device is provided, and the device includes:
[0024] A current module for determining a quadrature-axis control current according to a desired joint torque;
[0025] A voltage module for inputting the quadrature-axis control current, the direct-axis control current, the quadrature-axis actual current and the direct-axis actual current fed back by the joint motor into an adaptive controller to obtain a quadrature-axis control voltage and a direct-axis control voltage output by the adaptive controller, wherein the adaptive controller is used to update adaptive parameters according to the quadrature-axis actual current, the direct-axis actual current, the quadrature-axis estimated current and the direct-axis estimated current of the previous control frame in each control frame, and determine the quadrature-axis control voltage and the direct-axis control voltage of the current control frame by using the updated adaptive parameters;
[0026] A control module for controlling the joint motor to move according to the quadrature-axis control voltage and the direct-axis control voltage.
[0027] In an embodiment of the present disclosure, the current module is used for:
[0028] Determining a quadrature-axis control current according to a desired joint torque, the amplitude of the permanent magnet flux linkage of the joint motor, and the number of pole pairs.
[0029] In an embodiment of the present disclosure, the adaptive controller is further used to determine a quadrature-axis estimated current and a direct-axis estimated current of the current frame according to the quadrature-axis control voltage and the direct-axis control voltage of the current control frame by using the updated adaptive parameters in each control frame.
[0030] In an embodiment of the present disclosure, the adaptive controller is used to update adaptive parameters according to a quadrature-axis current error and a direct-axis current error in each control frame, wherein the quadrature-axis current error is the error between the quadrature-axis actual current and the quadrature-axis estimated current of the previous control frame, and the direct-axis current error is the error between the direct-axis actual current and the direct-axis estimated current of the previous control frame.
[0031] In an embodiment of the present disclosure, the adaptive controller is further used to perform filtering processing on the quadrature-axis control voltage and the direct-axis control voltage;
[0032] The control module is used for:
[0033] Controlling the joint motor to move according to the filtering processing result of the quadrature-axis control voltage and the filtering processing result of the direct-axis control voltage.
[0034] In an embodiment of the present disclosure, the device further includes a construction module, and the construction module is used for:
[0035] Construct the adaptive controller according to the quadrature-axis current equation and the direct-axis current equation, where the quadrature-axis current equation is used to characterize the relative relationship between the differential of the quadrature-axis current, the quadrature-axis voltage, the quadrature-axis current, and the mechanical angular velocity, and the direct-axis current equation is used to characterize the relative relationship between the differential of the direct-axis current, the direct-axis voltage, the direct-axis current, and the mechanical angular velocity.
[0036] In an embodiment of the present disclosure, the device further includes a torque module for:
[0037] Input the desired joint state in the motion control instruction and the actual joint state feedback by the joint motor into an impedance controller to obtain the desired joint torque output by the impedance controller.
[0038] In an embodiment of the present disclosure, the desired joint state includes a desired joint position and a desired joint velocity; and / or,
[0039] The actual joint state includes an actual joint position and an actual joint velocity.
[0040] In an embodiment of the present disclosure, the device further includes an acquisition module, and the acquisition module is used for:
[0041] Acquire the actual joint state, the actual joint torque, the quadrature-axis actual current, and the direct-axis actual current feedback by the joint motor.
[0042] According to a third aspect of the embodiments of the present disclosure, there is provided a robot, which includes a memory and a processor. The memory is used to store computer instructions that can be run on the processor, and the processor is used to implement the joint motor control method described in the first aspect when executing the computer instructions.
[0043] According to a fourth aspect of the embodiments of the present disclosure, there is provided a computer-readable storage medium, on which a computer program is stored, and when the program is executed by a processor, the method described in the first aspect is implemented.
[0044] The technical solutions provided by the embodiments of the present disclosure may include the following beneficial effects:
[0045] The joint motor control method provided by the embodiments of the present disclosure first determines the quadrature-axis control current according to the desired joint torque; then inputs the quadrature-axis control current, the direct-axis control current, the actual quadrature-axis current and the actual direct-axis current feedback by the joint motor into an adaptive controller to obtain the quadrature-axis control voltage and the direct-axis control voltage output by the adaptive controller; finally, controls the joint motor to move according to the quadrature-axis control voltage and the direct-axis control voltage. Since the adaptive controller is used to update the adaptive parameters according to the actual quadrature-axis current, the actual direct-axis current, the estimated quadrature-axis current and the estimated direct-axis current of the previous control frame in each control frame, and determines the quadrature-axis control voltage and the direct-axis control voltage of the current control frame by using the updated adaptive parameters, the robustness and self-adaptability of the joint motor in the control process can be improved, and the dynamic response ability of the robot, as well as the control accuracy and motion complexity of the robot can be improved. Description of the Drawings
[0046] The drawings herein are incorporated into the specification and form a part of the specification, showing embodiments consistent with the present invention, and are used together with the specification to explain the principles of the present invention.
[0047] Figure 1 is a flowchart of the joint motor control method shown in an exemplary embodiment of the present disclosure;
[0048] Figure 2 is a schematic structural diagram of the adaptive controller shown in an exemplary embodiment of the present disclosure;
[0049] Figure 3 is a flowchart of the joint motor control method shown in an exemplary embodiment of the present disclosure;
[0050] Figure 4 is a schematic structural diagram of the joint motor control device shown in an exemplary embodiment of the present disclosure;
[0051] Figure 5 is a structural block diagram of the robot shown in an exemplary embodiment of the present disclosure. Detailed Embodiments
[0052] Here, the exemplary embodiments will be described in detail, and the examples are shown in the drawings. When the following description refers to the drawings, unless otherwise indicated, the same numbers in different drawings represent the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present disclosure. On the contrary, they are merely examples of devices and methods consistent with some aspects of the present disclosure as detailed in the appended claims.
[0053] The terms used in this disclosure are for the purpose of describing specific embodiments only and are not intended to limit the disclosure. The singular forms "a", "the", and "said" used in this disclosure and the appended claims are also intended to include the plural forms unless the context clearly dictates otherwise. It should also be understood that the term "and / or" as used herein refers to and encompasses any and all possible combinations of one or more of the associated listed items.
[0054] It should be understood that although the terms first, second, third, etc. may be used in this disclosure to describe various information, such information should not be limited to these terms. These terms are only used to distinguish information of the same type from each other. For example, without departing from the scope of this disclosure, the first information may also be referred to as the second information, and similarly, the second information may also be referred to as the first information. Depending on the context, the word "if" as used herein may be interpreted as "when" or "while" or "in response to determining".
[0055] In recent years, the technology of robotics has been continuously developing, becoming more and more intelligent and automated, and the richness, stability, and flexibility of movements have all been improved to varying degrees. A bionic robot has multiple joints, and at each joint, there is a joint motor. The joint motor can drive the parts on both sides of the joint to perform relative movements. It is precisely by the movements of these joint motors that the robot can complete various actions. However, in related technologies, the robustness and adaptability of the joint motors of the robot are relatively poor during control, resulting in a relatively poor dynamic response ability of the joint motors, and the robot cannot complete relatively complex actions.
[0056] Based on this, in a first aspect, at least one embodiment of this disclosure provides a method for controlling a joint motor. Please refer to the attached Figure 1 , which shows the flow of the method, including steps S101 to S103.
[0057] Among them, this method can be applied to a robot, such as a legged robot like a bipedal robot or a quadruped robot; the robot has multiple joints, and each joint is provided with a joint motor. This method can be applied to each joint motor of the robot, that is, this method is used to drive the joint motor to move to complete the desired joint state obtained by the upper-level motion control according to the desired action.
[0058] In step S101, the quadrature-axis control current is determined according to the desired joint torque.
[0059] Among them, the desired joint torque can be determined in advance in the following manner: input the desired joint state in the motion control instruction and the actual joint state feedback by the joint motor into an impedance controller to obtain the desired joint torque output by the impedance controller.
[0060] The desired joint state may be the desired state of the joints controlled by this method determined by the upper-level motion control according to the desired motion of the robot. When the joint motor is in motion, it can feedback the joint state at a certain frequency, and this state is the actual joint state. Therefore, before performing this step, the actual joint state feedback by the joint motor can be obtained. Exemplarily, the desired joint state includes the desired joint position and the desired joint velocity, and the actual joint state includes the actual joint position and the actual joint velocity. The position error can be determined according to the desired joint position and the actual joint position, and the velocity error can be determined according to the desired joint velocity and the actual joint velocity. Then, the position error and the velocity error are input into the impedance controller; the impedance controller can determine the desired joint torque based on the position error and the velocity error, combined with its internal parameters and the feedforward torque, etc.
[0061] Exemplarily, in this step, the quadrature-axis control current can be determined according to the desired joint torque, and the permanent magnet flux linkage amplitude and the number of pole pairs of the joint motor. For example, the quadrature-axis control current is determined according to the following formula 1:
[0062]
[0063] In the above formula, is the desired joint torque, is the quadrature-axis control current, ψ f is the permanent magnet flux linkage amplitude, n p is the number of pole pairs.
[0064] In step S102, the quadrature-axis control current, the direct-axis control current, and the quadrature-axis actual current and the direct-axis actual current feedback by the joint motor are input into the adaptive controller to obtain the quadrature-axis control voltage and the direct-axis control voltage output by the adaptive controller. Among them, the adaptive controller is used to update the adaptive parameters according to the quadrature-axis actual current, the direct-axis actual current, the quadrature-axis estimated current, and the direct-axis estimated current in the previous control frame in each control frame, and use the updated adaptive parameters to determine the quadrature-axis control voltage and the direct-axis control voltage in the current control frame.
[0065] Optionally, before performing this step, the direct-axis actual current and the quadrature-axis actual current feedback by the joint motor in the previous control frame can be obtained. The direct-axis actual current refers to the current value actually reached by the joint motor on the direct axis, and the quadrature-axis actual current refers to the current value actually reached by the joint motor on the quadrature axis. In other words, the direct-axis actual current and the quadrature-axis actual current are the current values actually reached by the joint motor on the direct axis and the quadrature axis after controlling the joint motor with the quadrature-axis control voltage and the direct-axis control voltage determined in the previous control frame.
[0066] Optionally, before performing this step, the quadrature-axis estimated current and the direct-axis estimated current of the previous control frame can be obtained. The quadrature-axis estimated current and the direct-axis estimated current are related to the quadrature-axis control voltage and the direct-axis control voltage determined in the previous control frame, that is, the quadrature-axis estimated current and the direct-axis estimated current are the current values that can be achieved on the quadrature-axis and the direct-axis after estimating the action of the quadrature-axis control voltage and the direct-axis control voltage determined in the previous control frame on the joint motor. Exemplarily, the adaptive controller is further configured to use the updated adaptive parameters in each control frame to determine the quadrature-axis estimated current and the direct-axis estimated current of the current frame according to the quadrature-axis control voltage and the direct-axis control voltage of the current frame. That is to say, after the adaptive controller updates the adaptive parameters and determines the quadrature-axis control voltage and the direct-axis control voltage in the previous control frame, it can further use the adaptive parameters to determine the quadrature-axis estimated current and the direct-axis estimated current of the previous control frame according to the quadrature-axis control voltage and the direct-axis control voltage of the previous control frame for use when updating the adaptive parameters in the current control frame.
[0067] For example, the adaptive controller is provided with a state predictor as shown in Equation 1 below for determining the quadrature-axis estimated current and the direct-axis estimated current of the current frame according to the quadrature-axis control voltage and the direct-axis control voltage of the current frame:
[0068]
[0069] In the above formula, is the estimated value of the state variable x; are the estimated values of the adaptive parameters θ and ξ, that is, the updated adaptive parameters. Specifically, θ is the internal parameter perturbation, and ξ is the composite disturbance; c is a preset parameter;
[0070] i q is the quadrature-axis current, i d is the direct-axis current, U q is the quadrature-axis control voltage, U d is the direct-axis control voltage, R s is the stator resistance, L is the stator inductance, n p is the number of pole pairs, ω r is the mechanical angular velocity.
[0071] Exemplarily, the adaptive controller is configured to update the adaptive parameters according to the quadrature-axis current error and the direct-axis current error in each control frame, where the quadrature-axis current error is the error between the quadrature-axis actual current and the quadrature-axis estimated current of the previous control frame, and the direct-axis current error is the error between the direct-axis actual current and the direct-axis estimated current of the previous control frame. For example, the adaptive controller is provided with an adaptation rate as shown in Equation 2 below for updating the adaptive parameters according to the quadrature-axis current error and the direct-axis current error in each control frame, that is, for determining the estimated values of the adaptive parameters θ and ξ
[0072]
[0073]
[0074] In the above formula, Γ θ >0,Γ ξ >0 is adaptive gain, is the prediction error, P = P T >0 is the Lyapunov equation A T The solution of P+PA=-Q, Proj is the projection operator.
[0075] Understandably, The reason why it is marked with The control frame synchronization is because Although it is used in the current control frame, the estimation is completed by using the estimated values (i.e., the cross-axis estimated current, the direct-axis estimated current) and actual values (i.e., the cross-axis actual current, the direct-axis actual current) of the previous control frame. Therefore, it should belong to the result of the previous control frame, and its use in the current control frame happens to form a frame-by-frame iteration.
[0076] The input and operation process of the projection operator Proj is as follows:
[0077] Input: ε, z, φ, z max ,z min , where 0<ε<1 is a constant, z max is the maximum value of the estimated parameter z, min is the minimum value of the estimated parameter z
[0078] Running process:
[0079] 1. Calculate f d =(z max -z min ) 2 ;
[0080] 2. Calculation
[0081] 3. Calculation
[0082] 4. Define the value of φ
[0083] 5. If Then output = φ*(f z +1);
[0084] 6. Return the output.
[0085] For example, the adaptive controller is set with an adaptive control rate as shown in Equation 3 below, which is used to determine the quadrature-axis control voltage and the direct-axis control voltage of the current control frame according to the updated adaptive parameters, the quadrature-axis control current and the direct-axis control current, and the quadrature-axis actual current and the direct-axis actual current fed back by the joint motor:
[0086]
[0087] In the above formula, is the output of the adaptive control rate, such as the quadrature-axis control voltage and the direct-axis control voltage in this embodiment; G(s) is the transfer function, and s represents the frequency domain; I is the identity matrix; other parameters have been introduced above and will not be repeated here.
[0088] Furthermore, the adaptive controller is also used to perform filtering processing on the quadrature-axis control voltage and the direct-axis control voltage. For example, the adaptive controller is set with a filter as shown in Equation 4 below, which is used to perform filtering processing on the quadrature-axis control voltage and the direct-axis control voltage:
[0089]
[0090] In the above formula, is a low-pass filter, and ω0 is the characteristic angular frequency.
[0091] In this case, when the adaptive controller controls the joint motor to move according to the quadrature-axis control voltage and the direct-axis control voltage, it can control the joint motor to move according to the filtering processing results of the quadrature-axis control voltage and the direct-axis control voltage.
[0092] In this case, when the adaptive controller determines the quadrature-axis estimated current and the direct-axis estimated current of the current frame according to the quadrature-axis control voltage and the direct-axis control voltage of the current control frame by using the updated adaptive parameters in each control frame, it can determine the quadrature-axis estimated current and the direct-axis estimated current of the current frame according to the filtering processing results of the quadrature-axis control voltage and the direct-axis control voltage of the current control frame by using the updated adaptive parameters in each control frame.
[0093] Combining the above multiple embodiments, it can be seen that the adaptive controller can be in the form of Figure 2The shown architecture form can at least include an adaptive control rate, a low-pass filter, an adaptation rate, and a state predictor; at the first control frame, the adaptive parameters are (randomly) initialized, and the adaptive control rate uses the adaptive parameters to determine the quadrature-axis control voltage and the direct-axis control voltage according to the parameter inputs (i.e., the (random) initial values of the quadrature-axis control current, the direct-axis control current, the quadrature-axis actual current, and the direct-axis actual current in this embodiment), and then uses the low-pass filter to filter the quadrature-axis control voltage and the direct-axis control voltage to obtain the filtering result u ab , and the filtering result u ab is applied to the controlled object to generate the feedback value of the state variable, that is, according to the filtering result u ab controls the joint motor to move and obtains the quadrature-axis actual current and the direct-axis actual current feedback by the joint motor, and inputs the filtering result u ab to the state predictor, so that the state predictor uses the adaptive parameters to determine the estimated value of the state variable according to the filtering result u ab , that is, the quadrature-axis estimated current and the direct-axis estimated current.
[0094] At the second control frame, the adaptive controller determines the error value according to the estimated value and the feedback value of the state variable obtained in the first control frame, and inputs the error value to the adaptation rate, so that the adaptation rate updates the adaptive parameters according to the error value. The adaptive control rate uses the updated adaptive parameters to determine the quadrature-axis control voltage and the direct-axis control voltage according to the parameter inputs (i.e., the quadrature-axis control current, the direct-axis control current, the quadrature-axis actual current, and the direct-axis actual current in this embodiment, where the quadrature-axis actual current and the direct-axis actual current are the feedback values in the first control frame), and then uses the low-pass filter to filter the quadrature-axis control voltage and the direct-axis control voltage to obtain the filtering result u ab , and the filtering result u ab is applied to the controlled object to generate the feedback value of the state variable, that is, according to the filtering result u ab controls the joint motor to move and obtains the quadrature-axis actual current and the direct-axis actual current feedback by the joint motor, and inputs the filtering result u ab to the state predictor, so that the state predictor uses the adaptive parameters to determine the estimated value of the state variable according to the filtering result u ab , that is, the quadrature-axis estimated current and the direct-axis estimated current.
[0095] And so on, each subsequent control frame runs according to the control process of the second control frame to form a frame-by-frame iterative control process.
[0096] In step S103, according to the quadrature-axis control voltage and the direct-axis control voltage, control the joint motor to move.
[0097] The joint motor control method provided by the embodiments of the present disclosure first determines the quadrature-axis control current according to the desired joint torque; then inputs the quadrature-axis control current, the direct-axis control current, the actual quadrature-axis current and the actual direct-axis current fed back by the joint motor into an adaptive controller to obtain the quadrature-axis control voltage and the direct-axis control voltage output by the adaptive controller; finally, controls the joint motor to move according to the quadrature-axis control voltage and the direct-axis control voltage. Since the adaptive controller is used to update the adaptive parameters according to the actual quadrature-axis current and the actual direct-axis current in the previous control frame, as well as the estimated quadrature-axis current and the estimated direct-axis current in each control frame, and determines the quadrature-axis control voltage and the direct-axis control voltage of the current control frame by using the updated adaptive parameters, the robustness and self-adaptability of the joint motor in the control process can be improved, and the dynamic response ability of the robot, as well as the control accuracy and motion complexity of the robot can be improved.
[0098] Please refer to the attached Figure 3 , which exemplarily shows the flowchart of the joint motor control method obtained by combining the above-mentioned multiple embodiments. Among them, the upper-layer motion control issues the desired joint position θ d , the desired joint velocity v d , the impedance controller parameters K p , K d and the feedback torque τ ff . Combining the actual joint position θ and the actual joint velocity v fed back by the joint motor, the desired joint torque is obtained through the impedance controller The quadrature-axis control current is obtained through the relationship between torque and current (such as the relationship shown in Equation 1 above) Combining with the preset direct-axis control current (for example ), combining the actual quadrature-axis current i q and the actual direct-axis current i d fed back by the joint motor, the quadrature-axis and direct-axis control voltages are obtained through the L1 adaptive controller The three-phase voltage is obtained through pulse width modulation and the motor is driven to operate by the inverter.
[0099] In this method, L1 adaptive control combines a low-pass filter in the process of control law design, ensuring the separation of control law design and adaptive law design, improving the fast response ability of the system, and enhancing the robustness of the system. L1 adaptive control is applicable to systems with uncertain system models, and the adaptive law can compensate for internal and external disturbances of the system in real time, so as to satisfy the normal actions of the biped robot. Exemplarily, the adaptive controller can be constructed in advance according to the quadrature-axis current equation and the direct-axis current equation, where the quadrature-axis current equation is used to characterize the relative relationship between the differential of the quadrature-axis current, the quadrature-axis voltage, the quadrature-axis current, and the mechanical angular velocity, and the direct-axis current equation is used to characterize the relative relationship between the differential of the direct-axis current, the direct-axis voltage, the direct-axis current, and the mechanical angular velocity.
[0100] The current equation composed of the quadrature-axis current equation and the direct-axis current equation is shown in Equation 5:
[0101]
[0102]
[0103] In the above formula, is the differential of the quadrature-axis current, is the differential of the direct-axis current.
[0104] Convert the above Equation 5 into the form shown in the following Equation 6:
[0105]
[0106] In the above formula,
[0107] When considering parameter perturbation and external disturbance, the above Equation 6 can be converted into the form shown in the following Equation 7:
[0108]
[0109] In the above formula, d is the external disturbance.
[0110] Furthermore, the above Equation 7 can be converted into the form shown in the following Equation 8:
[0111]
[0112] In the above formula, θ is the internal parameter perturbation, and ξ is the composite disturbance.
[0113] Finally, construct the state predictor shown in the above Equation 1, the adaptive rate shown in the above Equation 2, the adaptive control rate shown in the above Equation 3, and the filter shown in the above Equation 4 according to the above Equation 8, and combine the above state predictor, adaptive rate, adaptive control rate, and filter into an attachment Figure 2The shown architecture form, thus obtaining the attached Figure 2 The shown adaptive controller.
[0114] It should be understood that the same symbols appearing in this disclosure represent the same meanings of parameters.
[0115] According to the second aspect of the embodiments of this disclosure, a joint motor control device is provided. Please refer to the attached Figure 4 , and the device includes:
[0116] A current module 401, configured to determine a quadrature-axis control current according to a desired joint torque;
[0117] A voltage module 402, configured to input the quadrature-axis control current, the direct-axis control current, the quadrature-axis actual current and the direct-axis actual current fed back by the joint motor into an adaptive controller, and obtain the quadrature-axis control voltage and the direct-axis control voltage output by the adaptive controller, where the adaptive controller is configured to update adaptive parameters according to the quadrature-axis actual current, the direct-axis actual current, the quadrature-axis estimated current and the direct-axis estimated current of the previous control frame in each control frame, and determine the quadrature-axis control voltage and the direct-axis control voltage of the current control frame by using the updated adaptive parameters;
[0118] A control module 403, configured to control the joint motor to move according to the quadrature-axis control voltage and the direct-axis control voltage.
[0119] In an embodiment of this disclosure, the current module is configured to:
[0120] Determine a quadrature-axis control current according to a desired joint torque, the permanent magnet flux linkage amplitude and the number of pole pairs of the joint motor.
[0121] In an embodiment of this disclosure, the adaptive controller is further configured to use the updated adaptive parameters in each control frame to determine the quadrature-axis estimated current and the direct-axis estimated current of the current frame according to the quadrature-axis control voltage and the direct-axis control voltage of the current control frame.
[0122] In an embodiment of this disclosure, the adaptive controller is configured to update adaptive parameters according to the quadrature-axis current error and the direct-axis current error in each control frame, where the quadrature-axis current error is the error between the quadrature-axis actual current and the quadrature-axis estimated current of the previous control frame, and the direct-axis current error is the error between the direct-axis actual current and the direct-axis estimated current of the previous control frame.
[0123] In an embodiment of this disclosure, the adaptive controller is further configured to perform filtering processing on the quadrature-axis control voltage and the direct-axis control voltage;
[0124] The control module is configured to:
[0125] Control the joint motor to move according to the filtering processing result of the quadrature-axis control voltage and the filtering processing result of the direct-axis control voltage.
[0126] In an embodiment of the present disclosure, the device further includes a construction module, and the construction module is configured to:
[0127] Construct the adaptive controller according to the quadrature-axis current equation and the direct-axis current equation, where the quadrature-axis current equation is used to characterize the relative relationship between the differential of the quadrature-axis current, the quadrature-axis voltage, the quadrature-axis current, and the mechanical angular velocity, and the direct-axis current equation is used to characterize the relative relationship between the differential of the direct-axis current, the direct-axis voltage, the direct-axis current, and the mechanical angular velocity.
[0128] In an embodiment of the present disclosure, the device further includes a torque module, which is used to:
[0129] Input the desired joint state in the motion control instruction and the actual joint state feedback by the joint motor into an impedance controller to obtain the desired joint torque output by the impedance controller.
[0130] In an embodiment of the present disclosure, the desired joint state includes a desired joint position and a desired joint velocity; and / or,
[0131] The actual joint state includes an actual joint position and an actual joint velocity.
[0132] In an embodiment of the present disclosure, the device further includes an acquisition module, and the acquisition module is configured to:
[0133] Acquire the actual joint state, the actual joint torque, the actual quadrature-axis current, and the actual direct-axis current feedback by the joint motor.
[0134] In a third aspect, at least one embodiment of the present disclosure provides a robot. Please refer to the appendix Figure 5 , which shows the structure of the robot. The robot includes a memory and a processor. The memory is used to store computer instructions that can run on the processor, and the processor is used to control the joint motor based on the method according to any one of the first aspect when executing the computer instructions.
[0135] In a fourth aspect, at least one embodiment of the present disclosure provides a computer-readable storage medium, on which a computer program is stored. When the program is executed by a processor, the method according to any one of the first aspect is implemented.
[0136] Other embodiments of the present disclosure will be readily apparent to those skilled in the art upon consideration of the specification and practice of the disclosure herein. This application is intended to cover any variations, uses, or adaptations of the present disclosure that follow the general principles of the present disclosure and include known common general knowledge or conventional technical means in the technical field not disclosed herein. The specification and examples are only to be considered as exemplary, and the true scope and spirit of the present disclosure are pointed out by the following claims.
[0137] It should be understood that the present disclosure is not limited to the exact structures described above and shown in the drawings, and various modifications and changes can be made without departing from its scope. The scope of the present disclosure is only limited by the appended claims.
Claims
1. A method for controlling a joint motor, characterized in that, The method includes: Determining a quadrature-axis control current according to a desired joint torque; Inputting the quadrature-axis control current, the direct-axis control current, the actual quadrature-axis current and the actual direct-axis current feedback by the joint motor into an adaptive controller to obtain a quadrature-axis control voltage and a direct-axis control voltage output by the adaptive controller, where the adaptive controller is configured to update adaptive parameters according to the actual quadrature-axis current, the actual direct-axis current, the estimated quadrature-axis current and the estimated direct-axis current of the previous control frame in each control frame, and determine the quadrature-axis control voltage and the direct-axis control voltage of the current control frame by using the updated adaptive parameters; Controlling the joint motor to move according to the quadrature-axis control voltage and the direct-axis control voltage.
2. The joint motor control method according to claim 1, wherein The determining the quadrature-axis control current according to the desired joint torque includes: Determining the quadrature-axis control current according to the desired joint torque, the amplitude of the permanent magnet flux linkage of the joint motor and the number of pole pairs.
3. The joint motor control method according to claim 1, wherein The adaptive controller is further configured to determine the estimated quadrature-axis current and the estimated direct-axis current of the current frame according to the quadrature-axis control voltage and the direct-axis control voltage of the current control frame by using the updated adaptive parameters in each control frame.
4. The joint motor control method according to claim 1, characterized in that, The adaptive controller is configured to update the adaptive parameters according to the quadrature-axis current error and the direct-axis current error in each control frame, where the quadrature-axis current error is the error between the actual quadrature-axis current and the estimated quadrature-axis current of the previous control frame, and the direct-axis current error is the error between the actual direct-axis current and the estimated direct-axis current of the previous control frame.
5. The joint motor control method according to claim 1, wherein The adaptive controller is further configured to perform filtering processing on the quadrature-axis control voltage and the direct-axis control voltage; The controlling the joint motor to move according to the quadrature-axis control voltage and the direct-axis control voltage includes: Controlling the joint motor to move according to the filtering result of the quadrature-axis control voltage and the filtering result of the direct-axis control voltage.
6. The joint motor control method according to claim 1, wherein The method further includes: Constructing the adaptive controller according to a quadrature-axis current equation and a direct-axis current equation, where the quadrature-axis current equation is used to characterize the relative relationship between the differential of the quadrature-axis current and the quadrature-axis voltage, the quadrature-axis current and the mechanical angular velocity, and the direct-axis current equation is used to characterize the relative relationship between the differential of the direct-axis current and the direct-axis voltage, the direct-axis current and the mechanical angular velocity.
7. The joint motor control method according to claim 1, wherein The method further includes: Inputting the desired joint state in the motion control instruction and the actual joint state feedback by the joint motor into an impedance controller to obtain the desired joint torque output by the impedance controller.
8. The joint motor control method according to claim 7, wherein The desired joint state includes a desired joint position and a desired joint velocity; and / or, The actual joint state includes an actual joint position and an actual joint velocity.
9. The joint motor control method according to claim 7, wherein, The method further includes: Obtaining the actual joint state, the actual joint torque, the actual quadrature-axis current and the actual direct-axis current feedback by the joint motor.
10. An articulated motor control device, characterized in that, The device includes: A current module, configured to determine a quadrature-axis control current according to a desired joint torque; A voltage module, configured to input the quadrature-axis control current, the direct-axis control current, the quadrature-axis actual current and the direct-axis actual current feedback by the joint motor into an adaptive controller, so as to obtain the quadrature-axis control voltage and the direct-axis control voltage output by the adaptive controller, wherein the adaptive controller is configured to update adaptive parameters according to the quadrature-axis actual current, the direct-axis actual current, the quadrature-axis estimated current and the direct-axis estimated current of the previous control frame in each control frame, and determine the quadrature-axis control voltage and the direct-axis control voltage of the current control frame by using the updated adaptive parameters; A control module, configured to control the joint motor to move according to the quadrature-axis control voltage and the direct-axis control voltage.
11. A robot, characterized in that, The robot includes a memory and a processor, the memory is configured to store computer instructions that can be run on the processor, and the processor is configured to implement the joint motor control method according to any one of claims 1 to 9 when executing the computer instructions.
12. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the program is executed by the processor, the method according to any one of claims 1 to 9 is implemented.