Servo motor control device and computer-readable storage medium
The servo motor control device addresses the challenge of torque ripple suppression in three-phase AC motors by applying a corrective torque command with phase and amplitude adjustments, achieving efficient ripple cancellation across different motor conditions.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- FANUC LTD
- Filing Date
- 2024-11-20
- Publication Date
- 2026-05-28
Smart Images

Figure JP2024041198_28052026_PF_FP_ABST
Abstract
Description
Servo Motor Control Device and Computer-Readable Storage Medium
[0001] The present disclosure relates to a servo motor control device and a computer-readable storage medium.
[0002] When driving a three-phase AC motor with a sinusoidal current, torque pulsation (torque ripple) may occur, which may inhibit smooth rotation. When driving the motor, in addition to the original torque command, it is known that by giving a torque command (hereinafter referred to as ripple correction) that cancels the torque ripple, smooth rotation can be realized. For example, in Patent Document 1, the torque ripple is obtained from the rotor phase, which is the electrical positional relationship between the rotor magnet of the servo motor, and the current value flowing through the electric winding, and a torque command such as the reverse phase of the torque command is given to suppress the torque ripple.
[0003] Japanese Patent Application Laid-Open No. 7-284286
[0004] As described above, conventionally, there is a method of correcting the torque command to suppress the torque ripple. However, since the torque ripple is not simply proportional to the current and is generated by a combination of multiple factors, it is difficult to calculate.
[0005] It is desired to appropriately suppress the torque ripple of the motor.
[0006] The servo motor control device according to the present disclosure includes a torque command correction unit that uses the current applied to the three-phase AC motor and the combination of the phase and amplitude of the correction amount that cancels the torque ripple generated when the current is applied to the three-phase AC motor, and applies the correction amount to the current to suppress the generation of torque ripple.
[0007] This is a block diagram of the control system including the servo motor control device. This is a block diagram of the servo motor control device. This is a diagram illustrating torque ripple caused by harmonic components of magnetic flux. This is a diagram illustrating torque ripple caused by inductance energy. This is a diagram illustrating the search for phase and amplitude. This is a diagram showing the relationship between the amplitude T of the correction amount that cancels out torque ripple and the motor current I. This is a diagram showing the relationship between the phase θ of the correction amount that cancels out torque ripple and the motor current I. This is a diagram showing the relationship between the amplitude T of the correction amount that cancels out torque ripple and the motor current I. This is a diagram showing the relationship between the phase θ of the correction amount that cancels out torque ripple and the motor current I. This is a hardware configuration diagram of the servo motor control device 100.
[0008] Embodiments of this disclosure will be described below with reference to the drawings. In the following description, components having the same or similar functions will be denoted by the same reference numerals. Duplication of these components may be omitted.
[0009] In this application, "based on XX" means "based on at least XX," and includes cases where it is based on another element in addition to XX. Furthermore, "based on XX" is not limited to cases where XX is used directly, but also includes cases where it is based on something that has been calculated or processed. "XX" is any element (for example, any information).
[0010] The servo motor control device 100 will now be described. The servo motor control device 100 is included in control devices for controlling industrial machinery, simulation devices for virtually realizing the operation of industrial machinery, and so on.
[0011] The servo motor control device 100 will be described with reference to Figures 1 and 2. Figure 1 is a block diagram of the control system including the servo motor control device 100. This control system controls industrial machinery. The control system includes a higher-level control device 20, the servo motor control device 100, a servo amplifier 30, a motor 40, and a speed detector 50.
[0012] The control device 20 is a control device for industrial machinery, such as a numerical control device or a robot controller. The control device 20 commands the servo motor control device 100 to control position, speed, and other parameters in order to drive the industrial equipment.
[0013] The servo motor control device 100 consists of a CPU 111, RAM 113, non-volatile memory 114, etc., which will be described later, and controls the position, speed, and current of the motor 40 according to commands from the control device 200.
[0014] The speed detector 50 detects the rotational position and speed of the motor 40 and provides feedback to the servo motor control device 100.
[0015] Figure 2 is a block diagram of the servo motor control device 100. The servo motor control device 100 includes a speed loop correction unit 11, a torque constant unit 12, a position control unit 13, an integration unit 14, and a torque command correction unit 15.
[0016] The position control unit 13 is the position loop gain. The speed loop correction unit 11 includes an integral gain k1 and a proportional gain k2. The torque constant of the torque constant unit 12 is Kt. The integration unit 14 calculates the position by integrating the speed. The motor output is negatively fed back as speed feedback vfb and input to the speed loop correction unit 11 together with the speed command Vcmd to form a position loop. The position output of the integration unit 14 is also negatively fed back as position feedback and input to the position control unit 13 together with the position command θd to form a position loop. The position deviation is calculated by subtracting the position detected by a position detector (not shown) from the position command θd. The integration unit 14 calculates the speed command vcmd by multiplying the position deviation by the position loop gain Kp, calculates the speed deviation by subtracting the actual speed vfd detected by a speed detector from the speed command, and integrates the speed deviation.
[0017] The speed loop correction unit 11 calculates the torque command (current command I) Tc (hereinafter referred to as the torque command) by adding the integral value multiplied by the integral gain k1 to the speed loop correction unit 11. The torque command correction unit 15 outputs a corrected torque command Tc', which is the corrected version of the torque command Tc. The torque constant unit 12 multiplies the torque command by the torque constant and outputs it to the motor 40. The corrected torque command Tc' is corrected to cancel out the torque ripple generated in the motor 40. Therefore, the motor 40 operates according to the torque command Tc before correction.
[0018] [Explanation of Torque Ripple] The torque command correction unit 15 corrects the torque command Tc by applying the opposite phase of the torque ripple.
[0019] In this embodiment, instead of suppressing torque ripple for each individual cause, multiple torque ripples are suppressed simultaneously. The reason for this is explained below. Torque ripple has multiple causes. Two causes are described below.
[0020] The first is torque ripple caused by the harmonic components of magnetic flux. In torque ripple caused by the harmonic components of magnetic flux, as shown in Figure 3, the 5th harmonic and 7th harmonic components generate a torque ripple of 6 times. When the magnitude of the current changes, it is thought that the distortion of the magnetic flux changes depending on the current, due to magnetic saturation, etc. However, torque ripple does not simply correlate with the current in response to the distortion of the magnetic flux; even if the distortion increases, the torque ripple decreases or becomes out of phase. The 5th harmonic and 7th harmonic components increase or decrease with the current, and the torque ripple increases or decreases accordingly.
[0021] The second type of torque ripple is caused by inductance energy. In reluctance motors, torque ripple occurs due to changes in inductance energy. In other words, the harmonic components of the inductance change are the cause of torque ripple. Figure 4 shows torque ripple due to inductance. Inductance represents the resistance of flux linkage to pass through, and as the current increases, the inductance decreases due to magnetic saturation. Since the inductance is thought to change at twice the current period, even components are considered. In synchronous motors using magnets, similar torque ripple is thought to exist if the inductance changes periodically.
[0022] The two torque ripples described above are both 6x ripples. While these torque ripples occur equally many times per revolution, their phases differ. Furthermore, the magnitudes of the two torque ripples vary individually depending on the current. Suppressing torque ripple based on its specific cause is difficult.
[0023] [Analysis of Combined Ripple] Therefore, in this embodiment, the combined ripple caused by multiple factors was measured. In measuring the combined ripple, a weight is lifted by a motor and moved at an extremely low speed. Torque ripple appears when the load on the motor 40 increases. A corrective sine wave is applied to the motor while changing the phase θ and amplitude T in response to the appearing torque ripple. Furthermore, the observation of the torque ripple is repeated while changing the phase θ and amplitude T to search for a combination in which the torque ripple is suppressed. The search for the phase θ and amplitude T will be explained with reference to Figure 5. Figure 5 is a table of combinations of phase θ and amplitude T. A corrective current is applied while changing the phase θ and amplitude T to search for a combination in which the torque ripple is suppressed. Torque ripple suppression does not necessarily mean suppressing the torque ripple to zero; an index of 10 levels or so may be set. The phase θ and amplitude T that suppress the torque ripple to a low level may be selected.
[0024] Figures 6 and 7 are graphs plotting the search results for amplitude T and phase θ. Figure 6 is a graph showing the relationship between current I and amplitude T. The changes in the graph are irregular overall, but the absolute value generally increases sharply from medium to large currents. Figure 7 is a graph showing the relationship between current I and phase θ. The absolute value of phase θ increases later than that of amplitude T, but there is a tendency for it to break down once before increasing. This was found from the analysis results.
[0025] The amplitude T and current I shown in Figures 6 and 7 are called ripple correction coefficients. The torque command correction unit 15 stores the graphs in Figures 6 and 7 and adds a correction amount (denoted as α(θ, T)) of the amplitude T and phase θ of the ripple correction coefficient to the motor current I. As a result, torque ripple is canceled out and suppressed.
[0026] Furthermore, the torque command correction unit 15 may determine the correction amount using a graph obtained by linearly approximating the graphs in Figures 6 and 7. As shown in Figure 6, the amplitude T changes little when the current I is small, and its absolute value increases sharply from medium to large currents. Therefore, it can be approximated as a single-fold straight line (two straight lines). Also, as shown in Figure 7, the phase θ is a relatively high value when the current I is small, and after becoming small, it increases. Therefore, it can be approximated as a double-fold straight line (three straight lines). It is desirable that the phase θ be approximated by two or more straight lines, not just the example in Figure 7. Also, linear approximation does not include a straight line connecting two adjacent points on the graph. Linear approximation means a straight line generated based on data from at least three points on the graph.
[0027] Approximating with a straight line reduces memory capacity and the computational complexity of the ripple correction coefficient. Since linear approximation is an existing technique, its explanation will be omitted.
[0028] As described above, the servo motor control device 100 of this embodiment includes a torque command correction unit 15 for correcting torque ripple. The torque command correction unit 15 stores a waveform α(θ, T) of a correction amount that cancels out the summation of multiple torque ripples. The correction coefficient (phase θ and amplitude T) of the correction amount α(θ, T) changes according to the current I supplied to the motor 40. The torque command correction unit 15 calculates the correction amount α(θ, T) based on the current I supplied to the motor 40 and corrects the current I. This suppresses the torque ripple T1(θ, I).
[0029] Figures 8 and 9 are graphs plotting the search results for amplitude T and phase θ for different motor types than those shown in Figures 6 and 7. As can be seen, the search results vary greatly depending on the motor type, but it can be seen that the torque ripple T1(θ,I) can be suppressed even with different motor types by linearly approximating the correction amount α(θ,T) of the combined torque ripple.
[0030] By storing a correction amount α(θ, T) for suppressing torque ripple and adding this correction amount α(θ, T) according to the current I, torque ripple can be effectively suppressed with minimal computation.
[0031] Conventionally, a fixed correction amount was applied, but while a fixed correction amount provides good correction within a certain range, a discrepancy occurs when the current increases. In torque ripple correction, as the current applied to the motor 40 increases, it is necessary to correct the amplitude and change the phase significantly. In this embodiment, torque ripple can be effectively suppressed by changing the correction amount α(θ, T) according to the current.
[0032] Furthermore, by approximating the correction amount α(θ, T) with a straight line, the correction coefficient for the correction amount α(θ, T) can be calculated simply by solving a linear function, thus further reducing the amount of computation.
[0033] In this embodiment, the correction amount α(θ, T) was determined for one motor 40, but the correction amount α(θ, T) may also be determined for each size of motor 40. When the size of the motor 40 changes, the size of the magnets and the teeth of the stator core change, which changes the magnetic flux. Since magnetic saturation is related to torque ripple, preparing correction amounts α(θ, T) for motors 40 of different sizes will allow for compatibility with a variety of industrial machines.
[0034] The hardware configuration of the servo motor control device 100 to which this disclosure is applied will be described below. Figure 10 is a hardware configuration diagram of the servo motor control device 100. As shown in Figure 10, the servo motor control device 100 includes a CPU 111 that controls the servo motor control device 100 as a whole, a ROM 112 that stores programs and data, and a RAM 113 for temporarily expanding data. The CPU 111 reads the system program stored in the ROM 112 via the bus.
[0035] The non-volatile memory 114 is backed up, for example, by a battery (not shown), so that its stored state is maintained even when the power to the servo motor control device 100 is turned off. The non-volatile memory 114 stores various data, such as programs read from an external device 120 via interfaces 115, 118, and 119, and operation inputs input via the input device 21. The non-volatile memory 114 may also store programs and data for running the servo motor control device 100 of this embodiment.
[0036] Interface 115 is an interface for connecting the servo motor control device 100 to an external device 120 such as an adapter. Programs and various parameters are read from the external device 120. Interface 118 is an interface for connecting the servo motor control device 100 to a display device 31 such as a liquid crystal display. The display device 31 displays data read into memory, data obtained as a result of executing programs, etc. Interface 119 is an interface for connecting the servo motor control device 100 to an input device 21 such as a keyboard or pointing device. The input device 21 passes commands, data, etc. based on operator operations to the CPU 111 via interface 119.
[0037] While embodiments of this disclosure have been described in detail above, this disclosure is not limited to the individual embodiments described above. These embodiments can be added, replaced, modified, partially deleted, etc., in any way that does not depart from the spirit of the invention or from the idea and intent of this disclosure derived from the claims and their equivalents. For example, the order of operations and processes in the embodiments described above are shown as examples only and are not limited thereto. The same applies when numerical values or mathematical formulas are used in the description of the embodiments described above.
[0038] The following are annotations relating to embodiments of the present disclosure. (Annotation 1) A servo motor control device (100) according to one aspect of the present disclosure includes a torque command correction unit (15) that applies a correction amount to a current supplied to a three-phase AC motor, using a combination of the phase and amplitude of a correction amount that cancels out the torque ripple generated when the current is supplied to the three-phase AC motor, thereby suppressing the generation of torque ripple. (Annotation 2) The torque ripple is 6n times the period of the current. (Annotation 3) The torque command correction unit (15) determines a combination of phase and amplitude from a straight line that approximates the graph of the current and phase, and the graph of the current and amplitude. (Annotation 4) The straight line approximates data from at least three points on the graph. (Annotation 5) The number of bends in the straight line is at least two. (Annotation 6) The torque command correction unit (15) determines a combination of the phase and amplitude of a correction amount that cancels out torque ripple for each size of the three-phase AC motor. (Note 7) A computer-readable storage medium (112, 113, 114) according to one aspect of the present disclosure records a program that causes a computer (111) to operate as a torque command correction unit (15) that applies a correction amount to the current to suppress the generation of torque ripple, using a combination of the phase and amplitude of a correction amount that cancels out the torque ripple that occurs when the current is applied to the three-phase AC motor.
[0039] 100 Servo motor control device 11 Speed loop correction unit 12 Torque constant unit 13 Position control unit 14 Integrator unit 15 Torque command correction unit 111 CPU 112 ROM 113 RAM 114 Non-volatile memory
Claims
1. A servo motor control device comprising a torque command correction unit that suppresses the generation of torque ripple by applying a correction amount to the current supplied to a three-phase AC motor, using a combination of the phase and amplitude of a correction amount that cancels out the torque ripple generated when the current is supplied to the three-phase AC motor.
2. The servo motor control device according to claim 1, wherein the torque ripple is 6n times the period of the current.
3. The servo motor control device according to claim 1, wherein the torque command correction unit determines a combination of phase and amplitude from the straight line based on a straight line that approximates the graph of current and phase, and the graph of current and amplitude.
4. The servo motor control device according to claim 3, wherein the straight line approximates data from at least three points on the graph.
5. The servo motor control device according to claim 3, wherein the number of bends in the straight line is at least two.
6. The servo motor control device according to claim 1, wherein the torque command correction unit determines a combination of phase and amplitude of a correction amount to cancel out torque ripple for each size of the three-phase AC motor.
7. A computer-readable storage medium containing a program that causes the computer to operate as a torque command correction unit, which uses a combination of the current supplied to a three-phase AC motor and the phase and amplitude of a correction amount that cancels out the torque ripple generated when the current is supplied to the three-phase AC motor, and applies the correction amount to the current to suppress the generation of torque ripple.
Citation Information
Patent Citations
Motor control method and controlling equipment
JP2004215399A
Three-phase rotary machine control device
JP2014050150A
Rotary electric machine control system
JP2022042224A
Control device for ac rotating electric machine, and electric power steering device
WO2021019662A1