A method, device and robot for determining the phase angle of a servo motor

By performing brake braking and particle size adjustment during operation of the servo motor, the failure of phase angle measurement of the servo motor under one-way stress is solved, and accurate and safe phase angle determination is achieved.

CN115118094BActive Publication Date: 2025-01-10合肥欣奕华智能机器股份有限公司
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202110286743.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-03-17
Publication Date
2025-01-10
Estimated Expiration
2041-03-17

AI Technical Summary

Technical Problem

In the case of unidirectional stress on the servo motor, traditional phase angle measurement methods may cause the motor shaft to fall, causing the problem of failure to determine the phase angle.

Method used

By setting the phase angle, the servo motor is controlled to operate and brake when the rotation angle is greater than the preset threshold, coarse-grained and fine-grained adjustment are performed, and the current changes are recorded to determine the target phase angle to avoid falling of the motor shaft.

Benefits of technology

It effectively avoids falling of the motor shaft, ensures that the servo driver determines the phase angle while the servo motor position is maintained, and improves the accuracy and efficiency of the measurement process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115118094B_ABST
    Figure CN115118094B_ABST
Patent Text Reader

Abstract

The embodiment of the present application discloses a method, device and robot for determining the phase angle of a servo motor, the method comprising: controlling the operation of the servo motor according to the set phase angle; if the rotation angle of the servo motor during operation is greater than or equal to the preset angle threshold, controlling the servo motor to brake; coarse-grained adjustment of the set phase angle, and controlling the servo motor to release the brake, and controlling the servo motor to operate according to the coarse-grained adjusted set phase angle; performing multiple fine-grained adjustments on the coarse-grained adjusted set phase angle, and recording each fine-grained adjusted phase angle and the current when the servo driver is running at each fine-grained adjusted phase angle; determining the target phase angle of the servo motor according to the fine-grained adjusted phase angle and the current when the servo driver is running at the fine-grained adjusted phase angle during operation. The problem of failure to determine the phase angle of the servo motor caused by the motor shaft falling during the process of determining the phase angle of the servo motor is solved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of robot control technology, and in particular to a method, device and robot for determining the phase angle of a servo motor. Background Art

[0002] Servo drive, also known as "servo controller" or "servo amplifier", is a controller used to control servo motors. It is part of the servo system and is mainly used in high-precision positioning systems. Generally, the servo motor is controlled by position, speed and torque to achieve high-precision transmission system positioning.

[0003] Phase angle is an important parameter for AC servo motors. The servo drive controls the motor movement according to the phase angle. When the servo motor is produced, it will be assembled according to a certain phase angle. For the assembled motor, if the servo drive is broken, after replacing a new servo drive, if the new servo drive model or manufacturer cannot provide its operating phase angle, then the phase angle needs to be measured so that the servo drive can control the motor operation according to the measured phase angle.

[0004] The phase angle measurement methods in the related art are all performed when the motor is not subjected to external force. However, in actual applications, many AC servo motors used in automation equipment, machine tools or industrial robots are subject to unidirectional force. If the phase angle of the motor needs to be determined at this time, the methods in the related art may cause the motor shaft to fall, resulting in failure to determine the phase angle. Summary of the invention

[0005] The embodiments of the present application provide a method, device and robot for determining the phase angle of a servo motor, so as to solve the problem of determination failure caused by the motor shaft falling during the process of determining the phase angle of the servo motor.

[0006] In a first aspect, an embodiment of the present application provides a method for determining a phase angle of a servo motor, comprising:

[0007] According to the set phase angle, the servo motor is controlled to operate by the servo driver;

[0008] If the rotation angle of the servo motor during operation is greater than or equal to a preset angle threshold, controlling the servo motor to brake;

[0009] Performing coarse-grained adjustment on the set phase angle, controlling the servo motor to release the brake, and controlling the servo motor to operate according to the coarse-grained adjusted set phase angle;

[0010] Performing multiple fine-grained adjustments on the set phase angle after the coarse-grained adjustment, and recording each fine-grained adjusted phase angle and the current of the servo driver when operating with each fine-grained adjusted phase angle;

[0011] The target phase angle of the servo motor is determined according to the fine-grained adjusted phase angle and the current of the servo driver when the servo driver operates with the fine-grained adjusted phase angle during operation.

[0012] In an embodiment of the present application, when the operation of the servo motor is controlled by a servo driver according to a set phase angle, the rotation angle of the servo motor during operation is monitored. When the rotation angle is greater than a preset angle threshold, which may cause the motor shaft to fall, the servo motor brake is controlled to prevent the motor shaft from falling; then the set phase angle is coarse-grainedly adjusted to ensure that the position of the motor shaft can be maintained when the motor is operated according to the set phase angle after the coarse-grained adjustment; when the position of the motor shaft can be maintained, the phase angle after the coarse-grained adjustment is adjusted multiple times in fine-grained form, and the target phase angle of the servo motor is determined by the fine-grained phase angle and the current when the fine-grained phase angle is applied during operation, thereby avoiding the problem of failure in determining the phase angle caused by the motor shaft falling during the process of determining the phase angle of the servo motor, and enabling the servo driver to determine the phase angle while maintaining the position of the servo motor.

[0013] In some exemplary embodiments, after controlling the servo motor to run by the servo driver according to the set phase angle, the method further includes:

[0014] If the rotation angle of the servo motor is less than a preset angle threshold, multiple fine-grained adjustment steps are performed.

[0015] In the above embodiment, if the rotation angle of the servo motor is less than the preset angle threshold, it indicates that the motor shaft will not fall. At this time, there is no need to perform coarse-grained adjustment, and the process of determining the phase angle by multiple fine-grained adjustments is directly performed, thereby improving the efficiency of the process of determining the phase angle.

[0016] In some exemplary embodiments, the coarse-grained adjustment of the set phase angle includes:

[0017] If the movement acceleration of the controlled component of the servo motor represented by the rotation angle of the servo motor is greater than the preset acceleration, adjusting the set phase angle by a first preset angle;

[0018] If the movement acceleration of the controlled component of the servo motor represented by the rotation angle of the servo motor is less than or equal to the preset acceleration, the set phase angle is adjusted to a second preset angle.

[0019] In the above embodiment, during the coarse-grained adjustment process, different preset angles are used for coarse-grained adjustment according to different phenomena characterized by the rotation angle of the servo motor to ensure that the position of the motor shaft is maintained, thereby providing conditions for determining the phase angle.

[0020] In some exemplary embodiments, the step of performing multiple fine-grained adjustments on the set phase angle after the coarse-grained adjustment, and recording each fine-grained adjusted phase angle and the current of the servo drive when the servo drive operates with each fine-grained adjusted phase angle, includes:

[0021] Applying a correction angle to correct the set phase angle after the coarse-grained adjustment;

[0022] If the current of the servo drive when operating with the corrected phase angle is less than the current when operating with the phase angle before correction, continue to correct the phase angle with the correction angle until the current of the servo drive no longer decreases; or

[0023] If the current of the servo drive when operating with the corrected phase angle is greater than or equal to the current when operating with the phase angle before correction, the negative value of the correction angle is applied to correct the set phase angle, and if the current of the servo drive decreases, the negative value of the correction angle is used again to correct the phase angle until the current of the servo drive no longer decreases;

[0024] The adjusted phase angle and the current of the servo drive when the servo drive is operated with the adjusted phase angle are recorded.

[0025] In the above embodiment, the process of determining the phase angle by performing multiple fine-grained adjustments on the set phase angle after the coarse-grained adjustment is to apply the correction angle to correct the phase angle, and record the current change of the servo drive during the correction process; if the current during the correction process increases, it indicates that the correction direction is wrong, and the negative value of the correction angle is applied to correct it again, so that the current of the servo drive no longer decreases. The phase angles in the whole process and the currents when these phase angles are applied are recorded to determine the process application of the phase angle.

[0026] In some exemplary embodiments, determining the target phase angle of the servo motor according to the fine-grained adjusted phase angle and the current of the servo drive when the servo drive is operated with the fine-grained adjusted phase angle during operation includes:

[0027] Selecting the smallest first current value and the smallest second current value from the current when the phase angle after the fine-grained adjustment is applied;

[0028] Determine a first phase angle corresponding to the first current value and a second phase angle corresponding to the second current value;

[0029] Determine an average of the first phase angle and the second phase angle as an intermediate phase angle;

[0030] A target phase angle is determined according to the intermediate phase angle.

[0031] In the above embodiment, in the process of determining the target phase angle by applying the fine-grained adjusted phase angle and the current when the servo drive is running with the fine-grained adjusted phase angle, the dichotomy method is applied to continue to correct these fine-grained adjusted phase angles so that the determined target phase angle is more accurate.

[0032] In some exemplary embodiments, determining the target phase angle according to the intermediate phase angle includes:

[0033] Determine a third current value corresponding to the intermediate phase angle;

[0034] Selecting the two smallest currents among the first current value, the second current value and the third current value;

[0035] Determine the phase angles corresponding to the two selected minimum currents and the average of the two phase angles as the second intermediate phase angle;

[0036] If the second intermediate phase angle is within a preset accuracy range, determining the second intermediate phase angle as a target phase angle;

[0037] If the second intermediate phase angle is not within the preset accuracy range, continue to perform the operations of selecting the two smallest currents and determining the intermediate phase angles corresponding to the two smallest currents until the determined intermediate phase angle is within the preset accuracy range;

[0038] The intermediate phase angle within the preset accuracy range is determined as a target phase angle.

[0039] In the above embodiment, in the process of continuously correcting the phase angle using the dichotomy method, the relationship between the intermediate phase angle in each correction process and the preset accuracy range is compared. If the preset accuracy range is met, the intermediate phase angle in this correction process can be used as the target phase angle. If the preset accuracy range is not met, the dichotomy method is continued to be applied for adjustment, and finally the intermediate phase angle within the preset accuracy range is determined as the target phase angle. In this way, the accuracy of the determined target phase angle is guaranteed.

[0040] In some exemplary embodiments, the rotation angle of the servo motor during operation is obtained in the following manner:

[0041] Reading the position of the encoder of the servo motor;

[0042] The rotation angle of the servo motor is determined according to the position of the encoder.

[0043] In the above embodiment, the rotation angle of the servo motor is determined by the encoder of the servo motor, so that the rotation determination is subsequently compared with a preset angle threshold to determine whether the position of the motor shaft can be maintained, and then decide whether braking is required, so that the process of determining the phase angle is carried out while the motor shaft position is maintained.

[0044] In a second aspect, an embodiment of the present application provides a device for determining a phase angle of a servo motor, wherein the servo motor includes a servo driver, the servo motor is applied to a robot, the device is integrated in a controller of the robot, and the device includes:

[0045] A control module, used for controlling the operation of the servo motor through the servo driver according to the set phase angle;

[0046] A braking module, used for controlling the servo motor to brake when the rotation angle of the servo motor during operation is greater than or equal to a preset angle threshold;

[0047] A coarse-grained adjustment module, used to perform coarse-grained adjustment on the set phase angle, control the servo motor to release the brake, and control the servo motor to run according to the set phase angle after the coarse-grained adjustment;

[0048] A fine-grained adjustment module, used to perform multiple fine-grained adjustments on the set phase angle after the coarse-grained adjustment, and record the phase angle after each fine-grained adjustment and the current when the servo drive operates with each fine-grained adjusted phase angle;

[0049] The phase angle determination module is used to determine the target phase angle of the servo motor according to the fine-grained adjusted phase angle and the current of the servo driver when the servo driver applies the fine-grained adjusted phase angle during operation.

[0050] In some exemplary embodiments, the method further includes an execution module for:

[0051] After controlling the servo motor to run by the servo driver according to the set phase angle, the method further includes:

[0052] If the rotation angle of the servo motor is less than a preset angle threshold, multiple fine-grained adjustment steps are performed.

[0053] In some exemplary embodiments, the coarse-grained adjustment module is specifically used to:

[0054] If the movement acceleration of the controlled component of the servo motor represented by the rotation angle of the servo motor is greater than the preset acceleration, adjusting the set phase angle by a first preset angle;

[0055] If the movement acceleration of the controlled component of the servo motor represented by the rotation angle of the servo motor is less than or equal to the preset acceleration, the set phase angle is adjusted to a second preset angle.

[0056] In some exemplary implementations, the fine-grained adjustment module is specifically used to:

[0057] Applying a correction angle to correct the set phase angle after the coarse-grained adjustment;

[0058] If the current of the servo drive when operating with the corrected phase angle is less than the current when operating with the phase angle before correction, continue to correct the phase angle with the correction angle until the current of the servo drive no longer decreases; or

[0059] If the current of the servo drive when operating with the corrected phase angle is greater than or equal to the current when operating with the phase angle before correction, the negative value of the correction angle is applied to correct the set phase angle, and if the current of the servo drive decreases, the negative value of the correction angle is used again to correct the phase angle until the current of the servo drive no longer decreases;

[0060] The adjusted phase angle and the current of the servo drive when the servo drive is operated with the adjusted phase angle are recorded.

[0061] In some exemplary embodiments, the phase angle determination module is specifically configured to:

[0062] Selecting the smallest first current value and the smallest second current value from the current when the phase angle after the fine-grained adjustment is applied;

[0063] Determine a first phase angle corresponding to the first current value and a second phase angle corresponding to the second current value;

[0064] Determine an average of the first phase angle and the second phase angle as an intermediate phase angle;

[0065] A target phase angle is determined according to the intermediate phase angle.

[0066] In some exemplary embodiments, the phase angle determination module is specifically configured to:

[0067] Determine a third current value corresponding to the intermediate phase angle;

[0068] Selecting the two smallest currents among the first current value, the second current value and the third current value;

[0069] Determine the phase angles corresponding to the two selected minimum currents and the average of the two phase angles as the second intermediate phase angle;

[0070] If the second intermediate phase angle is within a preset accuracy range, determining the second intermediate phase angle as a target phase angle;

[0071] If the second intermediate phase angle is not within the preset accuracy range, continue to perform the operations of selecting the two smallest currents and determining the intermediate phase angles corresponding to the two smallest currents until the determined intermediate phase angle is within the preset accuracy range;

[0072] The intermediate phase angle within the preset accuracy range is determined as a target phase angle.

[0073] In some exemplary embodiments, a rotation angle determination module is further included, which is used to:

[0074] Reading the position of the encoder of the servo motor;

[0075] The rotation angle of the servo motor is determined according to the position of the encoder.

[0076] In a third aspect, an embodiment of the present application provides a robot, comprising a memory, a controller, and a computer program stored in the memory and executable on the controller, wherein the controller implements the steps of any of the above methods when executing the computer program. BRIEF DESCRIPTION OF THE DRAWINGS

[0077] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required for use in the embodiments of the present application will be briefly introduced below. Obviously, the drawings introduced below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.

[0078] Figure 1 A schematic diagram of the structure of a robot provided in one embodiment of the present application;

[0079] Figure 2 A schematic structural diagram of a basic glass handling robot provided in one embodiment of the present application;

[0080] Figure 3 A schematic flow chart of a method for determining a phase angle of a servo motor provided in one embodiment of the present application;

[0081] Figure 4 A schematic diagram of the relationship between a phase angle and a servo motor position state provided in an embodiment of the present application;

[0082] Figure 5 A schematic diagram of a phase angle correction process provided by an embodiment of the present application;

[0083] Figure 6 A flow chart of a phase determination process of a servo motor provided in one embodiment of the present application;

[0084] Figure 7 A schematic diagram of the structure of a device for determining the phase angle of a servo motor provided in one embodiment of the present application;

[0085] Figure 8 A schematic diagram of the structure of a robot provided in one embodiment of the present application. DETAILED DESCRIPTION

[0086] In order to make the purpose, technical solutions and advantages of the embodiments of the present application clearer, the technical solutions in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application.

[0087] For ease of understanding, the terms involved in the embodiments of the present application are explained below:

[0088] Phase and phase angle: The AC servo motor consists of a stator and a rotor. The stator has two windings, namely the excitation winding and the control winding. The magnetic pole position of the motor's rotor is the phase. The phase angle is the angular difference between the magnetic pole position of the motor's rotor and the reference position.

[0089] Any number of elements in the drawings is for illustration and not limitation, and any naming is for distinction only and does not have any limiting meaning.

[0090] Phase angle is an important parameter for AC servo motors. The servo driver needs to know the phase angle of the servo motor to control the motor. During production, the servo motor will be assembled according to a certain phase angle. The servo driver can control the servo motor according to the phase angle determined during the assembly process.

[0091] Servo motors are an indispensable part of robots, and robots are increasingly being used. For example, LCD handling robots used in LCD panel companies usually face the problem of long service life and more and more failures, among which the most common type of failure is servo drive failure. If the manufacturer of the original servo drive of the robot no longer provides the servo drive, the robot can only be replaced, but the cost is high. You can continue to use the robot body and replace the robot servo drive. However, when the servo drive fails and a new servo drive is replaced, the phase angle needs to be remeasured. However, the common methods for determining the phase angle are all performed when the motor is not subjected to external force. In many automation equipment, machine tools, and industrial robots, the AC servo motors used will have the situation where the motor is subjected to unidirectional force. If the phase angle of the motor needs to be determined at this time, the traditional method of determining the phase angle may cause the motor shaft to fall, which not only fails to complete the process of determining the phase angle, but also can cause damage to related components, posing safety issues.

[0092] like Figure 1 In the robot shown in the figure, the L-axis and U-axis are the motor axes that are subjected to force, and the R-axis, V-axis, S-axis, and T-axis are the motor axes that are not subjected to force. If the servo motor of the robot is powered on, the motor cannot output force when the phase angle needs to be determined. At this time, the L-axis, U-axis, etc. will drag the motor to rotate under the action of gravity, causing it to fall. Not only will the phase angle determination fail, but a long-distance fall will also bring safety hazards.

[0093] To this end, the present application provides a method for determining the phase angle of a servo motor, which can be applied to the case where the servo motor is subjected to unidirectional force. By assuming that different phase angles are tried and position control is performed, current measurement is performed under the condition that position control can be achieved; the current measured by multiple attempts at different phase angles is compared to determine the phase angle of the servo motor. The situation where the output force cannot offset the load is judged based on position feedback, and the situation is handled by brake braking to ensure that no safety accident of the load object falling occurs; so as to accurately find the phase angle.

[0094] After introducing the design ideas of the embodiments of the present application, the following briefly introduces the application scenarios to which the technical solutions of the embodiments of the present application can be applied. It should be noted that the application scenarios introduced below are only used to illustrate the embodiments of the present application and are not limited. In specific implementation, the technical solutions provided by the embodiments of the present application can be flexibly applied according to actual needs.

[0095] refer to Figure 2, which is a schematic diagram of the structure of the basic glass handling robot provided in the embodiment of the present application. For example, the lifting shaft motor shaft of the handling robot in the large glass substrate is the controlled component of the motor, and the motor shaft can also be called the motor shaft. Its load is relatively large. If the phase angle of the motor shaft servo motor is unknown, the servo drive cannot work normally. Reference Figure 2 , including a horizontal moving axis, an arm telescopic axis, a rotating axis and a vertical lifting axis. Among these axes, the vertical lifting axis is subjected to force, and the other three axes are not subjected to force. Taking the servo motor of the vertical lifting axis as an example, the phase angle determination method of an embodiment of the present application is explained.

[0096] Of course, the method provided in the embodiment of the present application is not limited to Figure 1 The application scenarios shown can also be used in other possible application scenarios, and the embodiments of the present application are not limited thereto. Figure 1 The functions that can be implemented by each device in the application scenario shown will be described in the subsequent method embodiments, and will not be described in detail here.

[0097] To further illustrate the technical solution provided by the embodiment of the present application, this is described in detail below in conjunction with the accompanying drawings and specific implementation methods. Although the embodiment of the present application provides the method operation steps shown in the following embodiments or drawings, more or fewer operation steps may be included in the method based on routine or no creative labor. In the steps where there is no necessary causal relationship logically, the execution order of these steps is not limited to the execution order provided in the embodiment of the present application.

[0098] Combine the following Figure 2 The application scenario shown illustrates the technical solution provided by the embodiment of the present application.

[0099] refer to Figure 3 The embodiment of the present application provides a method for determining the phase angle of a servo motor, which is applied to a controller of a robot. The servo motor includes a servo driver. The servo motor is applied to a robot, such as a handling robot. The method includes the following steps:

[0100] S301, controlling the operation of the servo motor through the servo driver according to the set phase angle.

[0101] S302: If the rotation angle of the servo motor during operation is greater than or equal to a preset angle threshold, the servo motor is controlled to brake.

[0102] S303, coarse-grained adjustment is performed on the set phase angle, and the servo motor is controlled to release the brake, and the servo motor is controlled to run according to the coarse-grained adjusted set phase angle.

[0103] S304, performing multiple fine-grained adjustments on the set phase angle after the coarse-grained adjustment, and recording each fine-grained adjusted phase angle and the current when the servo driver operates with each fine-grained adjusted phase angle.

[0104] S305 , determining a target phase angle of the servo motor according to the fine-grained adjusted phase angle and the current of the servo driver when the servo driver is running with the fine-grained adjusted phase angle.

[0105] In an embodiment of the present application, when the operation of the servo motor is controlled by a servo driver according to a set phase angle, the rotation angle of the servo motor during operation is monitored. When it is greater than a preset angle threshold and may cause the motor shaft to fall, the servo motor brake is controlled to prevent the motor shaft from falling; then the set phase angle is coarse-grainedly adjusted to ensure that the position of the motor shaft can be maintained when the motor is operated according to the set phase angle after the coarse-grained adjustment; when the motor shaft position can be maintained, the phase angle after the coarse-grained adjustment is adjusted multiple times in fine-grained form, and the target phase angle of the servo motor is determined by the fine-grained phase angle and the current when the fine-grained phase angle is applied during operation, thereby avoiding the problem of failure to determine the phase angle caused by the motor shaft falling during the process of determining the phase angle of the servo motor, and enabling the servo driver to determine the phase angle while maintaining the position of the servo motor.

[0106] In relation to S301, the motor phase angle ranges from 0 to 360 degrees. If the phase angle is set incorrectly, the motor can output force when the difference is less than 90 degrees. If the phase angle difference is greater than 90 degrees, the motor outputs a reverse force, and the motor spins out of control. In the process of determining the phase angle, the robot controller gives the servo driver a set phase angle, powers on the servo driver, and then releases the brake. In this way, according to the set phase angle, the robot controller controls the servo motor to run through the servo driver.

[0107] For example, Figure 4 A schematic diagram showing the relationship between the phase angle and the position state of the servo motor is shown. Figure 4 This is an example of whether the position of the motor shaft can be maintained. Figure 4 From the example, it can be seen that areas Q1 and Q4 can maintain the motor position. If the current is small, such as in area Q4, it indicates that the set phase angle is close to the actual value. If the motor position can be maintained but the current is large, such as in area Q1, it indicates that the set phase angle is far away from the actual value. Areas Q2 and Q5 indicate that the phase angle setting value deviates greatly from the actual value, but the difference is within ±90 degrees. The motor can maintain the motor position, but the output force corresponding to the maximum current cannot provide enough force to maintain the motor position. Area Q3 cannot maintain the motor position, indicating that the phase angle setting value differs from the actual value by more than ±90 degrees.

[0108] In relation to S302, the rotation angle of the servo motor is measured during operation. Specifically, the rotation angle of the servo motor during operation can be obtained in the following manner: reading the position of the encoder of the servo motor; determining the rotation angle of the servo motor according to the position of the encoder. Specifically, an encoder is a device suitable for compiling and converting signals (such as bit streams) or data on an electric motor into a signal form that can be used for communication, transmission and storage, and the servo drive and encoder are two necessary components of a servo system. The control part of the servo drive is obtained by reading the encoder, such as the rotor speed, rotor position and mechanical position. Therefore, the rotation angle of the servo motor is determined by the position of the encoder and the corresponding relationship between the position of the encoder and the rotation angle of the motor.

[0109] Determine the relationship between the rotation angle of the servo motor during operation and the preset angle threshold. Since the rotation angle of the servo motor corresponds to the position movement of the controlled component of the motor (such as the motor shaft), if the rotation angle of the servo motor during operation is greater than or equal to the preset angle threshold, it indicates that the rotation of the servo motor is abnormal and the position change of the motor shaft is abnormal. At this time, the motor shaft may fall, causing damage to the equipment. At the same time, there is also danger. In order to prevent the motor shaft from falling, control the servo motor brake. In a specific example, the preset angle threshold can be 90 degrees, which represents a 1 / 4 turn of the servo motor.

[0110] In S303, when the rotation angle of the servo motor during operation is greater than or equal to the preset angle threshold, the servo motor is controlled to brake. This means that the difference between the set phase angle and the actual phase angle is large. At this time, the set phase angle needs to be adjusted to ensure that the motor shaft position is maintained and does not fall.

[0111] In order to ensure that the motor shaft position is maintained and does not fall, first, the set phase angle is coarse-grained adjusted, so that a set phase angle with a smaller difference from the actual phase angle can be obtained. At this time, the servo motor is controlled to release the brake and the servo motor is controlled to run according to the set phase angle after coarse-grained adjustment.

[0112] In a specific example, coarse-grained adjustment can be implemented in the following way:

[0113] The rotation angle of the servo motor indicates the change in the motion position and motion acceleration of its controlled component (such as the motor shaft). For example, if the rotation angle of the motor is a, the change in the motion position of its controlled component is lo, and the corresponding motion acceleration is ac. That is, lo and ac can both be calculated through a.

[0114] If the robot is a liquid crystal handling robot, the preset acceleration compared with the motion acceleration is the gravity acceleration; if a six-joint serial robot is taken as an example, the axis rotates around the joint, and the preset acceleration is not the gravity acceleration, but other types of acceleration related to it. It can be set here according to actual conditions and the details are not elaborated here.

[0115] Therefore, if the movement acceleration of the controlled component of the servo motor represented by the rotation angle of the servo motor is greater than the acceleration of gravity, it means that the current set phase angle cannot maintain the motor position, and the reverse output force accelerates the fall, so the set phase angle is adjusted to the first preset angle. Figure 4 In a specific example, in order to improve the accuracy of determining the phase angle, in this case, the magnitude of the motion acceleration can be further divided. For example, when the motion acceleration of the controlled component of the servo motor is greater than 2 times the gravity acceleration, refer to Figure 4 The first preset angle of area Q2 in the diagram can be 180 degrees. Specifically, acceleration greater than gravity acceleration is a sign of opposites repelling each other. Combined with the working principle of the servo motor, it can be seen that the position of the magnetic pole is exactly 180 degrees opposite. At this time, adjusting the set phase angle by 180 degrees can overcome the problem of the motor shaft accelerating downward due to acceleration greater than gravity acceleration. In addition, when the motion acceleration of the controlled component of the servo motor is greater than gravity acceleration and less than 2 times gravity acceleration, the first preset angle can be 90 degrees. In this case, refer to Figure 4 In the region Q5, at this time, the phase angle is adjusted by 90 degrees, which can overcome the problem of the motor shaft accelerating down. It should be noted that the above 2 times acceleration is an example, and in actual application, it can be set according to specific circumstances.

[0116] Continue to refer Figure 4 If the motion acceleration of the controlled component of the servo motor represented by the rotation angle of the servo motor is less than the acceleration of gravity, it means that the current phase angle cannot maintain the motor position, and the phase angle deviation is large, but does not exceed 90 degrees. Therefore, the phase angle is set to adjust the second preset angle. In a specific example, the second preset angle can be 90 degrees. In this way, the deviation between the current phase angle and the actual phase angle can be reduced as soon as possible.

[0117] After the coarse-grained adjustment of the set phase angle is completed, an adjusted set phase angle is obtained, and the deviation between the adjusted set phase angle and the actual phase angle has been reduced. At this time, the servo motor is controlled to release the brake, and the servo motor is controlled to operate according to the coarse-grained adjusted set phase angle. According to the operating principle of the servo motor and the coarse-grained adjustment process, when the coarse-grained adjusted set phase angle is used to control the servo motor, the rotation angle of the servo motor will be less than the preset angle threshold. In this way, the phase angle at which the motor can output force and maintain position is found by no more than two methods.

[0118] Next, the phase angle is repeatedly corrected and the exact phase angle is determined by the change in the servo motor current under a fixed load.

[0119] In S304, the set phase angle after the coarse-grained adjustment is fine-grained for multiple times, and the phase angle after each fine-grained adjustment and the current when the servo driver is running with each fine-grained adjusted phase angle are recorded.

[0120] Exemplarily, a correction angle is applied to correct the set phase angle after coarse-grained adjustment; if the current of the servo drive when operating with the corrected phase angle is less than the current when operating with the phase angle before correction, the correction angle continues to be applied to correct the phase angle until the current of the servo drive no longer decreases; or, if the current of the servo drive when operating with the corrected phase angle is greater than or equal to the current when operating according to the phase angle before correction, the negative value of the correction angle is applied to correct the set phase angle, and if the current of the servo drive decreases, the negative value of the correction angle is used again to correct the phase angle until the current of the servo drive no longer decreases.

[0121] Specifically, taking 15 degrees as an example of the phase angle after coarse-grained adjustment and 1 degree as an example of the correction angle, measure the current when running at a phase angle of 16 degrees. If the current when running at a phase angle of 16 degrees is less than the current when running at a phase angle of 15 degrees, continue to measure the current when running at a phase angle of 17 degrees. In this way, for example, the current at a phase angle of 17 degrees is I, the current at a phase angle of 18 degrees is also I, and the current at a phase angle of 19 degrees is also I, indicating that the current of the servo drive is no longer decreasing and correction is stopped.

[0122] In addition, taking 15 degrees as an example of the phase angle after coarse-grained adjustment and 1 degree as an example of the correction angle, measure the current when running at a phase angle of 16 degrees. If the current when running at a phase angle of 16 degrees is greater than the current when running at a phase angle of 15 degrees, it means that the correction direction is wrong. Then, use the negative value of the correction angle -1 degree for correction. For example, measure the current at a phase angle of 14 degrees, and then measure the current at a phase angle of 13 degrees, until the measured current no longer decreases and stop the correction.

[0123] In the above-mentioned fine-grained correction process, the phase angle after each fine-grained adjustment and the current when the servo drive is running with each fine-grained adjusted phase angle are recorded.

[0124] Next, the target phase angle of the servo motor is determined based on the fine-grained adjusted phase angle and the current of the servo drive when the fine-grained adjusted phase angle is applied during operation. This can be achieved in the following ways:

[0125] In the current when the phase angle is operated after fine-grained adjustment, the minimum first current value and the second current value are selected; a first phase angle corresponding to the first current value and a second phase angle corresponding to the second current value are determined; an average value of the first phase angle and the second phase angle is determined as an intermediate phase angle; and a target phase angle is determined based on the intermediate phase angle.

[0126] In a specific example, among the recorded currents when the phase angles after various fine-grained adjustments are applied, the smallest first current value Ix and second current value Iy are selected. If the actual phase angle is between the phase angles corresponding to these two currents, the first phase angle Ax corresponding to the first current value Ix and the second phase angle Ay corresponding to the second current value Iy are determined, and the average value Az of the first phase angle Ax and the second phase angle Ay is determined to be (Ax+Ay) / 2, and Az is recorded as the intermediate phase angle.

[0127] Determining the target phase angle through the intermediate phase angle can be achieved in the following way:

[0128] Determine a third current value corresponding to the intermediate phase angle; select the two smallest currents from the first current value, the second current value and the third current value; determine the phase angles corresponding to the two selected smallest currents and the average of the two phase angles as the second intermediate phase angle; if the second intermediate phase angle is within a preset accuracy range, determine the second intermediate phase angle as the target phase angle; if the second intermediate phase angle is not within the preset accuracy range, continue to perform the operations of selecting the two smallest currents and determining the intermediate phase angles corresponding to the two smallest currents until the determined intermediate phase angle is within the preset accuracy range; determine the intermediate phase angle within the preset accuracy range as the target phase angle.

[0129] In a specific example, the binary search method is then used to reduce the aforementioned phase angle correction value. For example, the third current Iz corresponding to the intermediate phase angle Az is determined. At this time, two smaller currents are selected between Iz, Ix and Iy. For example, the two smaller currents are Ix and Iz, then the actual phase angle is between Ax and Az, and the second intermediate phase angle Am = (Ax + Az) / 2 is calculated. If Am is within the preset accuracy range, Am is directly determined as the target phase angle. If Am is not within the preset accuracy range, the operation of selecting the two smallest currents and determining the intermediate phase angle corresponding to the two smallest currents is continued until the determined intermediate phase angle is within the preset accuracy range.

[0130] For example, if the preset accuracy range is less than 1 degree, Am is within the preset accuracy range, which means that the difference between Ax and Az used to determine Am is less than 0.2 degrees; Am is not within the preset accuracy range, which means that the difference between Ax and Az used to determine Am is greater than 0.2 degrees. In this way, the binary search method is repeatedly used to improve the accuracy of determining the target phase angle.

[0131] In addition, in the actual application process, among the currents when the fine-grained phase angle is operated, a phase angle corresponding to the minimum current is directly selected as the target phase angle. However, compared with the phase angle determined by the aforementioned dichotomy method, the accuracy of the determined target phase angle is lower.

[0132] In the above example, the rotation angle of the servo motor during operation is greater than or equal to the preset angle threshold. In this case, after the servo motor is controlled to brake, the set phase angle is first adjusted coarsely to determine the phase angle while keeping the motor position. In actual applications, there is another case where the set phase angle can keep the servo motor in position, but the current required may be large. In this case, there is no need to perform coarse-grained adjustment, and multiple fine-grained adjustment steps are directly performed to determine the accurate target phase angle.

[0133] In order to make the technical solution of the present application easier to understand, a complete process example is used below to illustrate the method for determining the phase angle of the servo motor in the embodiment of the present application.

[0134] See also Figure 5, assuming that the phase angle A1=0 is used as the set phase angle of the motor, the following two situations may occur: Situation 1, the servo motor shaft position is maintained; Situation 2, the motor shaft position cannot be maintained. For Situation 1, if the set phase angle is not much different from the actual phase angle, then use this phase angle, the servo drive controls the motor output torque to ensure that the motor shaft maintains its position and does not fall, and record the current I1 at this time. In Situation 2, if the phase angle is significantly different from the actual phase angle, the motor cannot output force correctly, the motor shaft falls, and the motor rotates driven by the motor shaft.

[0135] If situation 1 occurs, correct the set phase angle, use the correction value B to correct the set phase angle to obtain A2 as the motor phase angle, A2 = A1 + B. If the position can be maintained in situation 1, then record the current I2 at this time. If I2 is greater than I1, it means that the actual phase angle is less than A2, and the phase angle is determined in the reverse direction from the set phase angle A1, A2` = A1-B. If I2 is less than I1, continue to determine the phase angle in this direction until the current no longer increases.

[0136] If the position cannot be maintained in situation 2, the motor shaft brake closes and brakes to prevent the motor shaft from falling. Modify the set phase angle, use the new set phase angle, and restart the phase angle determination.

[0137] It should be noted that in Figure 5 In the process of determining the phase angle in the forward direction, A1, A2, A3, A4 and A1', A2', A3' in the process of determining the phase angle in the reverse direction are examples, and their number and the value of each phase angle are not specifically limited. In the actual application process, the target phase angle is determined until it meets the preset accuracy. In addition, if the actual phase angle is A1 = 0 degrees, the set phase angle is 180 degrees, then Figure 5 In the example, the servo motor cannot bear the load weight at 180 degrees, that is, the servo motor position cannot be maintained. At this time, it is necessary to re-select and set the phase angle, that is, the coarse-grained adjustment process of the above embodiment can be performed. In the case of A1, A2, A3, A4 and A1', A2', A3', the servo motor can show that the torque remains stationary, the phase angle is continuously corrected, the current corresponding to each phase angle is measured, and the phase angle corresponding to the minimum current is determined as the target phase angle.

[0138] See also Figure 6 , the complete process of determining the phase angle is described.

[0139] S601, start by determining the phase angle, power the servo motor, release the brake, and let the motor output torque to bear the load and maintain the position; read the position of the motor shaft through the feedback signal of the servo motor.

[0140] S602. Determine whether the acceleration of the motor shaft during the falling process is increasing or decreasing according to the position of the motor shaft. If the acceleration of the motor shaft during the falling process is increasing, execute S603. If the acceleration of the motor shaft during the falling process is decreasing, execute S604.

[0141] S603, determine that the motor torque output is in the reverse direction, apply the brake, cut off the power supply to the motor to brake the motor shaft, and increase the phase angle used this time by 180 degrees for the next use.

[0142] S604, using 1 / 4 turn of the servo motor (90 degree rotation angle of the servo motor) as the threshold, when the servo motor rotates beyond the threshold, the brake closes and switches the motor power supply to the motor shaft for braking, and the phase angle used this time is increased by 90 degrees for the next use.

[0143] S605. When the motor shaft maintains its position and does not fall, the phase angle is corrected using correction angle B in combination with the recorded current in S602. B can be 1 degree, and the current is measured again.

[0144] S606, determine the magnitude relationship between the measured current and the original current before correction, if the measured current is smaller than the original current, execute S607, if the measured current is larger than the original current, execute S608.

[0145] S607. Continue to use B to correct the phase angle and measure the current again until the measured current no longer decreases.

[0146] S608. Use -B to correct the phase angle and measure the current. If the current decreases, use -B again to correct the phase angle and measure the current until the current stops decreasing.

[0147] S609, select the two smallest currents Ix and Iy, and the actual phase angle is between the phase angles Ax and Ay corresponding to the two currents.

[0148] S610, use the binary method to reduce the phase angle correction value, use the phase angle A = (Ax + Ay) / 2, confirm the current I when using this phase angle, select the smaller of the two currents from I, Ix, and Iy, and the actual phase angle is between the phase angles corresponding to these two currents. Repeat this method until the accuracy requirements are met.

[0149] In this way, the accuracy of the found phase angle can be improved.

[0150] In the embodiment of the present application, the method of setting the value of the phase angle, attempting to perform position control and measuring the current, determines the accurate phase angle of the servo motor when the motor is loaded; uses the dichotomy method to improve the accuracy of determining the phase angle; proposes a method for judging the fall of the motor shaft, and brakes to ensure safety when the motor shaft falls; the process of determining the phase angle first outputs the current, then releases the brake, and if the motor shaft falls and the falling acceleration increases, closes the brake; if the motor shaft falls more than 1 / 4 turn, close the brake. In summary, there is no need to remove the load, and the phase angle is determined while ensuring that the load motor control object falls within the controlled range and ensuring safety.

[0151] In addition, it should be noted that the method for determining the phase angle of a servo motor provided in the embodiment of the present application is executed by a controller of a robot, and the function of the method can also be integrated into a servo drive and completed by the servo drive.

[0152] like Figure 7 As shown, based on the same inventive concept as the above-mentioned method for determining the phase angle of a servo motor, an embodiment of the present application also provides a device for determining the phase angle of a servo motor, the servo motor includes a servo drive, the servo motor is applied to a robot, the device is integrated in the controller of the robot, and the device includes a control module 701, a braking module 702, a coarse-grained adjustment module 703, a fine-grained adjustment module 704 and a phase angle determination module 705.

[0153] Among them, the control module 701 is used to control the operation of the servo motor through the servo driver according to the set phase angle; the braking module 702 is used to control the servo motor to brake when the rotation angle of the servo motor during operation is greater than or equal to the preset angle threshold; the coarse-grained adjustment module 703 is used to perform coarse-grained adjustment on the set phase angle, control the servo motor to release the brake, and control the operation of the servo motor according to the set phase angle after the coarse-grained adjustment; the fine-grained adjustment module 704 is used to perform multiple fine-grained adjustments on the set phase angle after the coarse-grained adjustment, and record each fine-grained adjusted phase angle and the current when the servo driver applies each fine-grained adjusted phase angle to operate; the phase angle determination module 705 is used to determine the target phase angle of the servo motor according to the fine-grained adjusted phase angle and the current when the servo driver applies the fine-grained adjusted phase angle during operation.

[0154] In some exemplary embodiments, the method further includes an execution module for:

[0155] After the servo motor is controlled by the servo driver according to the set phase angle, it also includes:

[0156] If the rotation angle of the servo motor is less than the preset angle threshold, multiple fine-grained adjustment steps are performed.

[0157] In some exemplary implementations, the coarse-grained adjustment module 703 is specifically configured to:

[0158] If the motion acceleration of the controlled component of the servo motor represented by the rotation angle of the servo motor is greater than the preset acceleration, the set phase angle is adjusted to a first preset angle;

[0159] If the movement acceleration of the controlled component of the servo motor represented by the rotation angle of the servo motor is less than or equal to the preset acceleration, the set phase angle is adjusted to a second preset angle.

[0160] In some exemplary implementations, the fine-grained adjustment module 704 is specifically configured to:

[0161] Applying a correction angle to correct the set phase angle after the coarse-grained adjustment;

[0162] If the current of the servo drive when operating with the corrected phase angle is less than the current when operating with the phase angle before correction, continue to correct the phase angle with the correction angle until the current of the servo drive no longer decreases; or

[0163] If the current of the servo drive when operating with the corrected phase angle is greater than or equal to the current when operating with the phase angle before correction, the negative value of the correction angle is used to correct the set phase angle. If the current of the servo drive decreases, the negative value of the correction angle is used again to correct the phase angle until the current of the servo drive no longer decreases.

[0164] Record the adjusted phase angle and the current when the servo drive is running with the adjusted phase angle during operation.

[0165] In some exemplary implementations, the phase angle determination module 705 is specifically configured to:

[0166] Selecting the smallest first current value and second current value among the currents when the phase angle is operated after applying the fine-grained adjustment;

[0167] Determine a first phase angle corresponding to the first current value and a second phase angle corresponding to the second current value;

[0168] Determine an average of the first phase angle and the second phase angle as an intermediate phase angle;

[0169] The target phase angle is determined according to the intermediate phase angle.

[0170] In some exemplary implementations, the phase angle determination module 705 is specifically configured to:

[0171] Determine a third current value corresponding to the intermediate phase angle;

[0172] Selecting the smallest two currents among the first current value, the second current value and the third current value;

[0173] Determine the phase angles corresponding to the two selected minimum currents and the average of the two phase angles as the second intermediate phase angle;

[0174] If the second intermediate phase angle is within a preset accuracy range, determining the second intermediate phase angle as a target phase angle;

[0175] If the second intermediate phase angle is not within the preset accuracy range, continue to perform the operations of selecting the two smallest currents and determining the intermediate phase angles corresponding to the two smallest currents until the determined intermediate phase angle is within the preset accuracy range;

[0176] The middle phase angle within a preset accuracy range is determined as the target phase angle.

[0177] In some exemplary embodiments, a rotation angle determination module is further included, which is used to:

[0178] Read the position of the servo motor's encoder;

[0179] According to the position of the encoder, the rotation angle of the servo motor is determined.

[0180] The device for determining the phase angle of a servo motor provided in the embodiment of the present application adopts the same inventive concept as the method for determining the phase angle of a servo motor described above, and can achieve the same beneficial effects, which will not be described in detail herein.

[0181] Based on the same inventive concept as the above method for determining the phase angle of a servo motor, the present application embodiment further provides a robot that may include a controller 801 and a memory 802. For example, the robot may be a transport robot. Figure 8 , the controller 801 can be a general controller, such as a central processing unit (CPU), a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, which can implement or execute the methods, steps and logic block diagrams disclosed in the embodiments of the present application. The general controller can be a microcontroller or any conventional controller, etc. The steps of the method disclosed in the embodiments of the present application can be directly embodied as a hardware controller to be executed, or can be executed by a combination of hardware and software modules in the controller.

[0182] The memory 802 is a non-volatile computer-readable storage medium that can be used to store non-volatile software programs, non-volatile computer executable programs and modules. The memory may include at least one type of storage medium, such as a flash memory, a hard disk, a multimedia card, a card-type memory, a random access memory (Random Access Memory, RAM), a static random access memory (Static Random Access Memory, SRAM), a programmable read-only memory (Programmable Read Only Memory, PROM), a read-only memory (Read Only Memory, ROM), an electrically erasable programmable read-only memory (Electrically Erasable Programmable Read-Only Memory, EEPROM), a magnetic memory, a disk, an optical disk, etc. The memory is any other medium that can be used to carry or store a desired program code in the form of an instruction or data structure and can be accessed by a computer, but is not limited thereto. The memory 802 in the embodiment of the present application can also be a circuit or any other device that can realize a storage function, for storing program instructions and / or data.

[0183] A person of ordinary skill in the art can understand that: all or part of the steps of implementing the above method embodiments can be completed by hardware related to program instructions, and the aforementioned program can be stored in a computer-readable storage medium. When the program is executed, it executes the steps of the above method embodiments; the above computer storage medium can be any available medium or data storage device that can be accessed by a computer, including but not limited to: mobile storage devices, random access memory (RAM, Random Access Memory), magnetic storage (such as floppy disks, hard disks, magnetic tapes, magneto-optical disks (MO)), optical storage (such as CD, DVD, BD, HVD, etc.), and semiconductor storage (such as ROM, EPROM, EEPROM, non-volatile memory (NAND FLASH), solid-state drive (SSD)) and other media that can store program codes.

[0184] Alternatively, if the above-mentioned integrated unit of the present application is implemented in the form of a software function module and sold or used as an independent product, it can also be stored in a computer-readable storage medium. Based on such an understanding, the technical solution of the embodiment of the present application is essentially or the part that contributes to the prior art can be embodied in the form of a software product, which is stored in a storage medium, including several instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the methods of each embodiment of the present application. The aforementioned storage medium includes: a mobile storage device, a random access memory (RAM, Random Access Memory), a magnetic storage device (such as a floppy disk, a hard disk, a magnetic tape, a magneto-optical disk (MO), etc.), an optical storage device (such as CD, DVD, BD, HVD, etc.), and a semiconductor memory (such as ROM, EPROM, EEPROM, non-volatile memory (NAND FLASH), a solid-state drive (SSD)) and other various media that can store program codes.

[0185] The above embodiments are only used to introduce the technical solutions of the present application in detail, but the description of the above embodiments is only used to help understand the methods of the embodiments of the present application and should not be understood as limiting the embodiments of the present application. Any changes or substitutions that can be easily thought of by technicians in this technical field should be included in the protection scope of the embodiments of the present application.

Claims

1. A method for determining the phase angle of a servo motor, applied to a controller of a robot, wherein the servo motor comprises a servo driver, and the servo motor is applied to the robot, characterized in that: The method comprises: According to the set phase angle, the servo motor is controlled to run by the servo driver; If the rotation angle of the servo motor during operation is greater than or equal to a preset angle threshold, controlling the servo motor to brake; Performing coarse-grained adjustment on the set phase angle, controlling the servo motor to release the brake, and controlling the servo motor to operate according to the coarse-grained adjusted set phase angle; Performing multiple fine-grained adjustments on the set phase angle after the coarse-grained adjustment, and recording each fine-grained adjusted phase angle and the current of the servo driver when operating with each fine-grained adjusted phase angle; Determining a target phase angle of the servo motor according to the fine-grained adjusted phase angle and the current of the servo driver when the servo driver is running with the fine-grained adjusted phase angle; The step of performing multiple fine-grained adjustments on the set phase angle after the coarse-grained adjustment, and recording each fine-grained adjusted phase angle and the current of the servo driver when the servo driver operates with each fine-grained adjusted phase angle, includes: Applying a correction angle to correct the set phase angle after the coarse-grained adjustment; If the current of the servo drive when operating with the corrected phase angle is less than the current when operating with the phase angle before correction, continue to correct the phase angle with the correction angle until the current of the servo drive no longer decreases; or If the current of the servo drive when operating with the corrected phase angle is greater than or equal to the current when operating with the phase angle before correction, the negative value of the correction angle is applied to correct the set phase angle, and if the current of the servo drive decreases, the negative value of the correction angle is used again to correct the phase angle until the current of the servo drive no longer decreases; The adjusted phase angle and the current of the servo drive when the servo drive is operated with the adjusted phase angle are recorded.

2. The method according to claim 1, characterized in that After the servo motor is controlled to run by the servo driver according to the set phase angle, the method further includes: If the rotation angle of the servo motor is less than a preset angle threshold, multiple fine-grained adjustment steps are performed.

3. The method according to claim 1, characterized in that The coarse-grained adjustment of the set phase angle comprises: If the movement acceleration of the controlled component of the servo motor represented by the rotation angle of the servo motor is greater than the preset acceleration, adjusting the set phase angle by a first preset angle; If the movement acceleration of the controlled component of the servo motor represented by the rotation angle of the servo motor is less than or equal to the preset acceleration, the set phase angle is adjusted to a second preset angle.

4. The method according to claim 1, characterized in that: Determining the target phase angle of the servo motor according to the fine-grained adjusted phase angle and the current of the servo driver when the servo driver is running with the fine-grained adjusted phase angle during operation includes: Selecting the smallest first current value and the smallest second current value from the current when the phase angle after the fine-grained adjustment is applied; Determine a first phase angle corresponding to the first current value and a second phase angle corresponding to the second current value; Determine an average of the first phase angle and the second phase angle as an intermediate phase angle; A target phase angle is determined according to the intermediate phase angle.

5. The method according to claim 4, characterized in that Determining the target phase angle according to the intermediate phase angle comprises: Determine a third current value corresponding to the intermediate phase angle; Selecting the two smallest currents among the first current value, the second current value and the third current value; Determine the phase angles corresponding to the two selected minimum currents and the average of the two phase angles as the second intermediate phase angle; If the second intermediate phase angle is within a preset accuracy range, determining the second intermediate phase angle as a target phase angle; If the second intermediate phase angle is not within the preset accuracy range, continue to perform the operations of selecting the two smallest currents and determining the intermediate phase angles corresponding to the two smallest currents until the determined intermediate phase angle is within the preset accuracy range; The intermediate phase angle within the preset accuracy range is determined as a target phase angle.

6. The method according to any one of claims 1 to 5, characterized in that: The rotation angle of the servo motor during operation is obtained in the following manner: Reading the position of the encoder of the servo motor; The rotation angle of the servo motor is determined according to the position of the encoder.

7. A device for determining the phase angle of a servo motor, the servo motor comprising a servo driver, the servo motor being applied to a robot, the device being integrated into a controller of the robot, characterized in that: The device comprises: A control module, used for controlling the operation of the servo motor through the servo driver according to a set phase angle; A braking module, used for controlling the servo motor to brake when the rotation angle of the servo motor during operation is greater than or equal to a preset angle threshold; A coarse-grained adjustment module, used to perform coarse-grained adjustment on the set phase angle, control the servo motor to release the brake, and control the servo motor to run according to the set phase angle after the coarse-grained adjustment; A fine-grained adjustment module, used to perform multiple fine-grained adjustments on the set phase angle after the coarse-grained adjustment, and record the phase angle after each fine-grained adjustment and the current when the servo drive operates with each fine-grained adjusted phase angle; A phase angle determination module, used to determine the target phase angle of the servo motor according to the fine-grained adjusted phase angle and the current of the servo driver when the servo driver is running with the fine-grained adjusted phase angle; The fine-grained adjustment module is specifically used for: Applying a correction angle to correct the set phase angle after the coarse-grained adjustment; If the current of the servo drive when operating with the corrected phase angle is less than the current when operating with the phase angle before correction, continue to correct the phase angle with the correction angle until the current of the servo drive no longer decreases; or If the current of the servo drive when operating with the corrected phase angle is greater than or equal to the current when operating with the phase angle before correction, the negative value of the correction angle is applied to correct the set phase angle, and if the current of the servo drive decreases, the negative value of the correction angle is used again to correct the phase angle until the current of the servo drive no longer decreases; The adjusted phase angle and the current of the servo drive when the servo drive is operated with the adjusted phase angle are recorded.

8. The device according to claim 7, characterized in that After controlling the servo motor to run by the servo driver according to the set phase angle, the method further includes: If the rotation angle of the servo motor is less than a preset angle threshold, multiple fine-grained adjustment steps are performed.

9. A robot, characterized in that: The robot comprises a memory, a controller and a computer program stored in the memory and executable on the controller, wherein the controller implements the steps of the method according to any one of claims 1 to 6 when executing the computer program.

Citation Information

Patent Citations

  • Vibration elimination method and device for generator of wind turbine generator system

    CN109386436A