Motor drive and robot arm thereof

CN115733410BActive Publication Date: 2026-10-20TECHMAN ROBOT INC
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202210784557.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2021-08-25
Filing Date
2022-06-29
Publication Date
2026-10-20
Estimated Expiration
2042-06-29

AI Technical Summary

Technical Problem

[0002]一般马达由马达驱动器控制其马达电流与转动速度,然而,马达驱动器易受温度影响,致使电路间运作产生的数值或信号产生飘移,如此马达驱动器会误判从马达检测获得的马达电流数值,长久运作下来,马达性能越来越差,例如振动现象严重

Benefits of technology

[0004]本发明的目的提供一种马达驱动器及其机械手臂,马达驱动器可以及时侦错与动态补偿马达电流,而提升控制马达电流的准确度,达到马达的振动减少。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115733410B_ABST
    Figure CN115733410B_ABST
Patent Text Reader

Abstract

A motor driver and a robot arm thereof, the motor driver includes a current control module to detect two detection voltages, and to determine a compensation signal according to the two detection voltages. Thus, the motor driver outputs a motor control voltage according to the compensation signal to improve the performance of the motor.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to a motor driver and a robotic arm thereof, and more particularly to a motor driver that improves the accuracy of motor current, reduces motor torque ripple, and drives the motor and robotic arm with reduced vibration. Background Technology

[0002] A typical motor is controlled by a motor driver to control its motor current and rotation speed. However, motor drivers are susceptible to temperature fluctuations, which can cause the values ​​or signals generated by the circuitry to drift. As a result, the motor driver may misinterpret the motor current values ​​obtained from the motor sensor. Over time, the motor's performance deteriorates, leading to issues such as severe vibration.

[0003] In view of the above problems, the present invention provides a motor driver that can detect errors and dynamically compensate motor current in a timely manner, thereby improving the accuracy of motor current control, reducing motor torque ripple, and reducing motor vibration. Summary of the Invention

[0004] The purpose of this invention is to provide a motor driver and its robotic arm. The motor driver can detect errors and dynamically compensate for motor current in a timely manner, thereby improving the accuracy of motor current control and reducing motor vibration.

[0005] In order to achieve the aforementioned objective, the motor driver of the present invention includes a current control module that detects a detection voltage twice, determines a compensation signal based on the two detection voltages, and outputs a motor control voltage based on the compensation signal.

[0006] Furthermore, when the motor driver is not performing servo control, the current control module provides several voltage detections and several motor voltage readings. It calculates these voltage detections to obtain an average voltage, and then calculates an average motor voltage based on these average motor voltage readings. When the motor driver switches from not performing servo control to performing servo control, it detects the motor current to obtain a motor voltage and adjusts the motor voltage based on the average motor voltage. Then, the current control module detects two voltage detections, compares each voltage with the average voltage, determines a compensation signal, and adjusts the motor voltage again based on the compensation signal to generate the motor control voltage. Attached Figure Description

[0007] Figure 1 This is a circuit diagram of one embodiment of the motor driver controlling a motor according to the present invention.

[0008] Figure 2 This is a circuit diagram of one embodiment of the current control module of the present invention for detecting a motor.

[0009] Figure 3This is a flowchart illustrating one embodiment of the present invention for determining the compensation signal.

[0010] Figure 4 This is a waveform diagram of an embodiment of the present invention showing the rise of the detection voltage as the motor driver operates over time.

[0011] Figure 5 This is a comparison diagram of an embodiment of the present invention before and after the motor is driven to reduce vibration.

[0012] Figure label:

[0013] 10 Motor Drivers

[0014] 20 Position Commands

[0015] 30 Position control module

[0016] 31 First Operational Circuit

[0017] 32 position controller

[0018] 40 Speed ​​Control Module

[0019] 41 Second Operational Circuit

[0020] 42 Speed ​​Controller

[0021] 50 Current Control Module

[0022] 51 Current Calculation Circuit

[0023] 52 Current Controller

[0024] 53 Detection Circuit

[0025] 54 Current sensing circuit

[0026] 541 Current Sensor

[0027] 55 Digital-to-Analog Conversion Circuit

[0028] 56 microprocessors

[0029] 60 motors

[0030] 70 Speed ​​Calculator

[0031] 80 encoder

[0032] a Motor current

[0033] ADC1 digital-to-analog converter circuit

[0034] ADC2 digital-to-analog converter circuit

[0035] ADC3 Digital-to-Analog Conversion Circuit

[0036] ADC4 Digital-to-Analog Conversion Circuit

[0037] b Motor current

[0038] c Motor current

[0039] GND grounding voltage

[0040] Ref V Reference voltage

[0041] Ref V1 Reference voltage

[0042] Ref V2 Reference voltage

[0043] Ref V3 Reference Voltage

[0044] T time

[0045] T_Cri sets the time.

[0046] V31 First Operation Signal

[0047] V32 position control signal

[0048] V41 Second Operation Signal

[0049] V42 speed control signal

[0050] V51 Current Operation Signal

[0051] V52 Motor Control Voltage

[0052] V55 analog signal

[0053] V56 feedback signal

[0054] V70 motor position signal

[0055] V80 motor speed signal

[0056] Va Motor voltage

[0057] Va_avg Average Motor Voltage

[0058] Va_d voltage difference

[0059] Va_real motor voltage

[0060] Vb Motor Voltage

[0061] Vb_avg Average Motor Voltage

[0062] Vb_d voltage difference

[0063] Vb_real Motor Voltage

[0064] Vc motor voltage

[0065] Vc_avg Average motor voltage

[0066] Vc_d voltage difference

[0067] Vc_real Motor Voltage

[0068] Vcomp compensation signal

[0069] Vr detection voltage

[0070] Vr_d voltage difference

[0071] Vr_d1 First voltage difference

[0072] Vr_d2 Second voltage difference

[0073] Vr_avg Average Detected Voltage

[0074] Vr_Cri threshold voltage Detailed Implementation

[0075] The technical means and effects adopted by the present invention to achieve the above objectives are described below with reference to the embodiments and accompanying drawings.

[0076] Please see Figure 1 This is a circuit diagram of an embodiment of the motor driver controlling a motor according to the present invention. As shown in the figure, the motor driver 10 controls the operation of the motor 60. The motor driver 10 includes a current control module 50, which can detect a detection voltage Vr twice, determine a compensation signal Vcomp based on the two detection voltages Vr, and output a motor control voltage V52 based on the compensation signal Vcomp, thereby dynamically compensating the motor current and improving the accuracy of motor current control, thus reducing motor vibration. Please refer to the diagram for motor currents a, b, and c. Figure 2 This is a circuit diagram of an embodiment of the current control module of the present invention for detecting a motor. As shown in the figure, the motor currents a, b, and c include the three-phase currents of the motor 60, and the motor driver 10 detects currents of different phases using the same technology. Therefore, in this embodiment, motor current a is used to represent three different phases of current for illustrative purposes.

[0077] In other words, when the motor driver 10 performs servo control, the current control module 50 of the motor driver 10 detects the detection voltage Vr twice, and determines the compensation signal Vcomp based on the voltage difference between the two detection voltages Vr. As shown in the figure, the compensation signal Vcomp can be generated by the microprocessor 56 after processing. (See also...) Figure 1The current control module 50 includes a current calculation circuit 51, a current controller 52, a detection circuit 53, a current sensing circuit 54, an ADC circuit 55, and a microprocessor 56. The current calculation circuit 51 receives a feedback signal V56 and a speed control signal V42 to generate a current calculation signal V51. Furthermore, if three-phase current is detected, the current calculation circuit 51 receives multiple feedback signals V56. The current controller 52 is coupled to the current calculation circuit 51 and generates a motor control voltage V52 based on the current calculation signal V51, thereby controlling the motor current a (or b, c).

[0078] Therefore, the operating state of the motor 60 can be determined by the current sensing circuit 54 of the current control module 50, which senses the motor current a (or b, c) and generates the motor voltage Va. Similarly, if three-phase current is sensed, the current control module 50 can include multiple current sensing circuits 54 to generate multiple motor voltages, such as... Figure 2 The detection circuit 53 is coupled to a reference voltage RefV to generate a detection voltage Vr. The digital-to-analog converter 55 is coupled to the detection circuit 53 and the current sensing circuit 54, converting the detection voltage Vr and the motor voltage Va into different analog signals V55. Therefore, the microprocessor 56, coupled to the ADC circuit 55, processes multiple analog signals V55 to generate a feedback signal V56. The number of analog signals V55 and the feedback signal V56 are also related to the number of detected motor currents a, b, and c. Therefore, by timely detecting the motor current a (or b, c) of the motor 60 through the current sensing circuit 54, a compensation signal Vcomp is generated for feedback control, which can reduce the torque ripple of the motor 60 and decrease its vibration.

[0079] See also Figure 2 The detection circuit 53 is coupled between a reference voltage Ref V and a ground voltage GND. The detection circuit 53 includes multiple impedance elements connected in series, generating a detection voltage Vr at the nodes (i.e., voltage dividers) between these impedance elements, which is then sent to the ADC circuit 55. Furthermore, multiple current sensing circuits 54 are provided in the motor driver 10 to detect multiple motor currents a, b, and c. Each current sensing circuit 54 includes a current sensor 541 and multiple impedance elements to detect motor currents a, b, and c respectively, generating motor voltages Va, Vb, and Vc to the ADC circuit 55. Moreover, the current sensors 541 of these current sensing circuits 54 are respectively coupled to reference voltages Ref V1, Rer V2, and Rer V3 for operation. Figure 2 The four reference voltages shown, Ref V, Ref V1, Rer V2, and Rer V3, can be the same or different from each other; this is a design option. Therefore, in Figure 2The embodiment includes multiple ADC circuits 55, such as ADC1, ADC2, ADC3, and ADC4, from Figure 2 From top to bottom, the detection circuit 53 is coupled to three current sensing circuits 54. Furthermore, the ADC1, ADC2, ADC3, and ADC4 circuits are housed within the microprocessor 56, or can be configured as follows: Figure 1 The embodiments are set outside the microprocessor 56 and are all design options; the implementation of the present invention is not limited.

[0080] In addition, such as Figure 1 As shown, the motor driver 60 further includes a position control module 30, a speed control module 40, an encoder 70, and a speed calculator 80. The position control module 30 receives a position command 20 and a motor position signal V70 to generate a position control signal V32. The position control module 30 is coupled to the encoder 70 and includes a first arithmetic circuit 31 and a position controller 32. The first arithmetic circuit 31 receives the position command 20 and the motor position signal V70 to generate the first arithmetic signal V31. The position controller 32 is coupled to the first arithmetic circuit 31 and generates the position control signal V32 based on the first arithmetic signal V31. The speed control module 40 is coupled to the position control module 30 and the speed calculator 80, and receives the position control signal V32 and the motor speed signal V80 to generate a speed control signal V42. The speed control module 40 includes a second arithmetic circuit 41 and a speed controller 42. The second arithmetic circuit 41 is coupled to the position controller 32 and the speed calculator 80, and receives the position control signal V32 and the motor speed signal V80 to generate a second arithmetic signal V41. The speed controller 42 is coupled to the second arithmetic circuit 41 and receives the second arithmetic signal V41, and generates a speed control signal V42 based on the second arithmetic signal V41 to the current control module 50. The encoder 70 is disposed on the motor 60 to detect a motor rotation position, and generates a motor position signal V70 to the first arithmetic circuit 31. The speed calculator 80 is coupled to the encoder 70 to receive the motor position signal V70, and generates a motor speed signal V80 based on the motor position signal V70 to the second arithmetic circuit 41.

[0081] Therefore, after the motor driver 10 drives the motor 60 according to the position command 20, the encoder 70 obtains the controlled rotational position of the motor 60 in the feedback control, and the position control module 30 promptly detects and compensates for the rotational position of the motor 60. Furthermore, the rotational speed of the motor 60 is calculated based on its controlled rotational position, and the position control module 30 and speed control module 40 are used to readjust the rotational position and speed of the motor 60. Then, the current control module 50, based on the motor current a and the detection results from the position control module 30 and speed control module 40, re-outputs the motor control voltage V52 to adjust the operating state of the motor 60. In addition, the position control module 30 and speed control module 40 can also be integrated into the microprocessor 56, meaning the integrated microprocessor 56 has sufficient computing power to handle the needs of the position control module 30, speed control module 40, and ADC circuit 55. In other words, a single microprocessor 56 replacing the position control module 30, speed control module 40, and ADC circuit 55 is also a possible implementation method.

[0082] Please see Figure 3 This is a flowchart illustrating one embodiment of the present invention for determining the compensation signal. As shown in the figure, in applications requiring higher precision, such as when the motor driver 10 of the present invention controls the motor of a robotic arm to reduce vibration, the initial value of the current control module 50 can be obtained first through steps S1 to S10, and then the compensation signal Vcomp can be determined according to steps S11 to S15. Conversely, if lower precision is required, the level of the compensation signal Vcomp can be determined by operating only in steps S11 to S15; both methods are embodiments.

[0083] Following the above, after the initial calibration procedure 1 begins in step S1, the servo control of the motor driver 10 on the motor 60 is first released in step S2. That is, when the motor driver 10 is not performing servo control, the detection circuit 53 and the current sensing circuit 54 provide several (e.g., N) detection voltages Vr and several motor voltages Va (i.e., three motor voltages Va, Vb, and Vc). Here, the three motor voltages Va, Vb, and Vc are independent of the three-phase current when the motor 60 is operating. Thus, in step S3, the ADC circuit 55 converts the detection voltage Vr and the three motor voltages Va, Vb, and Vc several times. In step S4, the microprocessor 56 obtains the average detection voltage Vr_avg = Vr / N and the average motor voltage Va_avg = Va / N through several calculations, and similarly obtains Vb_avg = Vb / N and Vc_avg = Vc / N. In step S5, the relevant initial values ​​in the current control module 50, namely Vr_avg, Va_avg, Vb_avg and Vc_avg, are recorded.

[0084] After completing the initial numerical measurements of the system, the online compensation program 2 is entered in step S6, and begins in step S7. This is equivalent to step S8, when the motor driver 10 begins servo control of the motor 60, transitioning from non-servo control to servo control. In step S9, the detection circuit 53 detects the detection voltage Vr. This detection voltage Vr varies depending on the ambient temperature (or system temperature, such as the operating temperature of the motor driver 10). Furthermore, the current sensing circuit 54 detects the three-phase current of the motor 60 to obtain three motor voltages Va, Vb, and Vc. These three motor voltages Va, Vb, and Vc are related to the three-phase current of the motor 60 during operation, which differs from step S3. Therefore, the ADC circuit 55 also converts the detected detection voltage Vr with the three motor voltages Va, Vb, and Vc. In step S10, the microprocessor 56 calculates the voltage difference Vr_d = Vr_avg – Vr between the average detected voltage Vr_avg and the detected voltage Vr before and after servo control. The voltage difference Vr_d is calculated twice to obtain the first voltage difference Vr_d1 and the second voltage difference Vr_d2. The microprocessor 56 also calculates the voltage difference Va_d = Va_avg – Va between the average motor voltage Va_avg and the motor voltage Va before and after servo control for the three motor voltages Va, Vb, and Vc. Similarly, Vb_d = Vb_avg – Vb and Vc_d = Vc_avg – Vc are obtained through calculation. In other words, after servo control, the measured three motor voltages Va, Vb, and Vc are adjusted to Va_d, Vb_d, and Vc_d.

[0085] Furthermore, in step S11, it is determined whether the difference between the first voltage difference Vr_d1 and the second voltage difference Vr_d2 is less than a threshold voltage Vr_Cri. However, when only steps S11 to S15 are executed, and steps S1 to S10 are not executed, step S11 is changed to determine whether the voltage difference between the two detected voltages Vr is less than the threshold voltage Vr_Cri. That is, there is no comparison operation with the average detected voltage Vr_avg. Therefore, when the voltage difference between the two detected voltages Vr is less than the threshold voltage Vr_Cri, the second detected voltage Vr is used as the compensation signal Vcomp. When the voltage difference between the two detected voltages Vr is greater than the threshold voltage Vr_Cri, the level of the compensation signal Vcomp is equal to the threshold voltage Vr_Cri plus the second detected voltage Vr.

[0086] Furthermore, according to Figure 3In this embodiment, the current control module 50 compares the detected voltage Vr twice with the average detected voltage Vr_avg to obtain a first voltage difference Vr_d1 and a second voltage difference Vr_d2. When the difference between the first voltage difference Vr_d1 and the second voltage difference Vr_d2 is less than the threshold voltage Vr_Cri, the compensation signal Vcomp is the level of the second voltage difference Vr_d2, and the level of the compensation signal is recorded in step S121. When the difference between the first voltage difference Vr_d1 and the second voltage difference Vr_d2 is greater than or equal to the threshold voltage Vr_Cri, the compensation signal Vcomp is the level of the second voltage difference Vr_d2 plus the level of the threshold voltage Vr_Cri, and the level of the compensation signal is recorded in step S122. That is, the compensation signal Vcomp is determined based on the first voltage difference Vr_d1 and the second voltage difference Vr_d2, and the three motor voltages Va_d, Vb_d, and Vc_d are adjusted again based on the compensation signal Vcomp to generate the motor control voltage V52. In other words, after the three motor voltages Va_d, Vb_d, and Vc_d are corrected to Va_real, Vb_real, and Vc_real again using the compensation signal Vcomp, the microprocessor 56 calculates the corrected three motor voltages Va_real, Vb_real, and Vc_real according to the servo control algorithm in step S14, thereby generating multiple motor control voltages V52. Finally, the online compensation program 2 ends in step S15.

[0087] Additionally, in steps S121 and S122, when the microprocessor 56 determines that the level of the compensation signal Vcomp is greater than or equal to a compensation upper limit value, the motor driver 10 will execute a certain time recovery program to reset the level of the compensation signal. Alternatively, as... Figure 3In this embodiment, the online compensation program 2 automatically enters a timed recovery program during operation to automatically count the number of times or the time. When a set number of times or a set time is exceeded, the level of the compensation signal is reset to prevent the compensation signal level from being too high or too low. At this time, it is also possible to detect whether there is a hardware fault that causes the compensation signal level to be abnormal. Therefore, after steps S121 and S122, the timed recovery program in step S20 will also be entered. In step S21, the counter is cleared first, and then the timing starts. In step S22, it is determined whether the counter counting time T exceeds a set time T_Cri. If not, step S22 is executed again. If the set time T_Cri has been exceeded, the compensation signal Vcomp is reset, and the initial values ​​in the motor driver 10 are obtained again in the initial calibration program 1. Then, the online compensation program 2 is performed. The rest is similar and will not be repeated. In addition, in different embodiments, the time T can be the level of the compensation signal Vcomp, and the set time T_Cri can be replaced by the value of the magnitude of the compensation signal Vcomp level. That is, the motor driver 10 executes a timed recovery program to determine the level of the compensation signal Vcomp. When the level of the compensation signal Vcomp is greater than or equal to the upper limit of compensation, the level of the compensation signal Vcomp is reset.

[0088] Furthermore, when the motor driver 10 proceeds from step S22 to step S1 initial calibration procedure 1, the production line will automatically stop based on the information issued by the motor driver 10. Only after the production line is restarted by the operator will the motor driver 10 regain the relevant initial values. However, when the motor driver 10 is usable... Figure 3 The embodiment can be modified to first issue a warning to the staff, allowing them to decide when to stop the production line. In other words, step S22 runs to the warning stage first, instead of running to the initial correction procedure 1 in step S1. This is a variation of the embodiment and is not limited to the present invention.

[0089] Please see Figure 4 The figure shows a waveform diagram illustrating the rise of the detection voltage Vr as an embodiment of the present invention operates over the motor driver's operating time. As shown, when the motor driver 10 starts operating, the level of the detection voltage Vr increases with... Figure 2 The level of the reference voltage Ref V rises accordingly, and the level of the detected voltage Vr fluctuates with the ambient temperature. In other words, when the device is first powered on, the voltage difference Vr_d of the detected voltage Vr drifts between 0 and 20, while after the motor driver 10 has been operating stably, the voltage difference Vr_d of the detected voltage Vr drifts around 60. Therefore, the current control module 50 of the motor driver 10 can use the change in the detected voltage Vr to compensate for the influence of ambient temperature on the system (i.e., the motor driver 10), thereby improving the control accuracy of the motor driver 10.

[0090] Please see Figure 5 This is a comparison diagram of an embodiment of the present invention before and after the motor vibration is reduced. As shown in the figure, without the compensation signal Vcomp, the vibration amplitude of the motor voltage Va (or b, c) is between approximately 677 and 657, while after controlling the motor 60 according to the compensation signal Vcomp, the vibration amplitude of the motor voltage Va (or b, c) is between approximately 672 and 664. The vibration is reduced by approximately 50% compared to the previous method.

[0091] In summary, the motor driver of the present invention includes a current control module that detects a detection voltage twice, determines a compensation signal based on the two detection voltages, and outputs a motor control voltage based on the compensation signal.

[0092] Alternatively, when the motor driver is not performing servo control, the current control module provides several voltage detections and several motor voltage readings, calculates these voltage detections to obtain an average voltage detection, and performs calculations based on these motor voltage readings to obtain an average motor voltage. When the motor driver switches from not performing servo control to performing servo control, it detects the motor current to obtain a motor voltage and adjusts the motor voltage based on the average motor voltage. Then, the current control module detects two voltage detections, compares each of the two voltage detections with the average voltage detection to determine a compensation signal, and adjusts the motor voltage again based on the compensation signal to generate the motor control voltage.

[0093] Both of the above implementation methods can detect errors and dynamically compensate for motor current in a timely manner, thereby improving the accuracy of motor current control and reducing motor vibration. Moreover, when applied to robotic arms, they can also reduce arm vibration.

[0094] The above description is merely for the purpose of illustrating embodiments of the present invention. The scope of the present invention is not limited to these embodiments. Any modifications made in accordance with the present invention, without departing from the spirit of the present invention, shall fall within the scope of the patent application of the present invention.

Claims

1. A robotic arm, characterized in that, The robotic arm includes a motor driver, the motor driver comprising: A current control module is configured to: detect two detection voltages, determine a compensation signal based on the two detection voltages, and output a motor control voltage based on the compensation signal, wherein the current control module includes: The detection circuit includes multiple impedance elements connected in series and coupled between a reference voltage and a ground voltage to generate the detection voltage at a node between two adjacent impedance elements.

2. The robotic arm as described in claim 1, wherein, When the motor driver performs servo control, the current control module detects the detected voltage twice and determines the compensation signal based on the two detected voltages.

3. The robotic arm as described in claim 1, wherein, When the voltage difference between two detected voltages is less than the threshold voltage, the second detected voltage is used as the compensation signal.

4. The robotic arm as described in claim 1, wherein, When the voltage difference between two detected voltages is greater than the threshold voltage, the level of the compensation signal is equal to the threshold voltage plus the second detected voltage.

5. The robotic arm as described in claim 1, wherein, When the motor driver does not perform servo control, the current control module provides the detected voltage several times and detects the motor voltage several times, and obtains the average detected voltage by calculating the detected voltage several times, and obtains the average motor voltage by calculating based on the motor voltage several times.

6. The robotic arm as described in claim 5, wherein, When the motor driver switches from performing servo control to performing servo control, it detects the motor current to obtain the motor voltage and adjusts the motor voltage based on the average motor voltage.

7. The robotic arm as described in claim 6, wherein, When the motor driver performs the servo control, the current control module detects the detected voltage twice, compares the average detected voltage based on the two detected voltages to obtain a first voltage difference and a second voltage difference, determines the compensation signal based on the first voltage difference and the second voltage difference, and adjusts the motor voltage again based on the compensation signal to generate the motor control voltage.

8. The robotic arm as claimed in claim 1, wherein, The motor driver executes a timed recovery program, and resets the level of the compensation signal when the level of the compensation signal is greater than or equal to the upper limit of the compensation value.

9. The robotic arm of claim 1, wherein the current control module further comprises: Multiple current sensing circuits are configured to sense multiple currents in the motor and generate multiple motor voltages. Multiple digital-to-analog conversion circuits are configured to couple the detection circuit to the multiple current sensing circuits, and to convert the detected voltage and the multiple motor voltages into multiple analog signals; The microprocessor is configured to process the plurality of analog signals to generate a plurality of feedback signals; The current calculation circuit is configured to receive the plurality of feedback signals and the speed control signal to generate a current calculation signal; and The current controller is configured to generate the motor control voltage based on the current calculation signal, thereby controlling the plurality of currents.

10. The robotic arm as claimed in claim 9, wherein, The motor driver also includes: The encoder is configured to detect the rotational position of the motor and generate a motor position signal; A speed calculator is configured to be coupled to the encoder and generate a motor speed signal based on the motor position signal; The position control module includes a first arithmetic circuit and a position controller. The first arithmetic circuit receives a position command and the motor position signal to generate a first arithmetic signal. The position controller generates a position control signal based on the first arithmetic signal. The speed control module includes a second arithmetic circuit and a speed controller. The second arithmetic circuit receives the position control signal and the motor speed signal to generate a second arithmetic signal, and the speed controller generates the speed control signal based on the second arithmetic signal.

11. A robotic arm, characterized in that, The robotic arm includes a motor driver, the motor driver comprising: The current control module is configured to: detect two voltages, determine a compensation signal based on the two voltages, and output a motor control voltage based on the compensation signal. When the motor driver is not performing servo control, the current control module provides the detected voltage several times and detects the motor voltage several times, and obtains the average detected voltage by calculating the detected voltage several times, and obtains the average motor voltage by calculating based on the motor voltage several times. When the motor driver performs the servo control, the current control module detects the detected voltage twice, compares the average detected voltage based on the two detected voltages to obtain a first voltage difference and a second voltage difference, determines the compensation signal based on the first voltage difference and the second voltage difference, and adjusts the motor voltage under the servo control based on the compensation signal to generate the motor control voltage.

12. A robotic arm, characterized in that, The robotic arm includes a motor driver, the motor driver comprising: The current control module is configured to: detect two voltages, determine a compensation signal based on the two voltages, and output a motor control voltage based on the compensation signal. Specifically, when the motor driver switches from performing servo control to performing servo control, it detects the motor current to obtain the motor voltage and adjusts the motor voltage based on the average motor voltage. When the motor driver performs the servo control, the current control module detects the detection voltage twice, and compares the average detection voltage obtained by calculating the detection voltage several times with the two detection voltages to obtain a first voltage difference and a second voltage difference. The module then determines the compensation signal based on the first voltage difference and the second voltage difference, and adjusts the motor voltage again based on the compensation signal to generate the motor control voltage.

Citation Information

Patent Citations

  • Method for eliminating motor phase current temperature drift in real-time way

    CN103941080A

  • Motor drive device

    JP2012075307A

  • Method and apparatus for AC servo motor control

    US5780989A