Motor control device and motor control method
The motor control system uses a virtual disturbance estimator to adjust torque signals based on inertia ratios, addressing stability issues in systems with varying inertias, ensuring stable control across a wide range.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- FUJI ELECTRIC CO LTD
- Filing Date
- 2025-07-17
- Publication Date
- 2026-04-14
AI Technical Summary
Conventional motor control methods struggle with stability issues due to varying inertia of mechanical systems, particularly when accurate inertia determination is difficult or impossible, leading to decreased control stability.
A motor control system that includes a virtual disturbance estimator to correct torque signals based on a virtual mechanical system, adjusting the time constant of the estimator according to the inertia ratio, thereby stabilizing control across a wider range of inertias.
The system achieves stable control over a broader range of inertias by precisely correcting torque signals, enhancing the stability of motor control despite varying mechanical system inertias.
Smart Images

Figure 0007845561000001_ABST
Abstract
Description
[Technical Field]
[0001] This disclosure relates to an electric motor control device and an electric motor control method. [Background technology]
[0002] When controlling the speed or position of an electric motor connected to a mechanical load, general control methods such as PI control alone are insufficient to achieve good control unless appropriate control gains are set according to the actual inertia of the mechanical system, including the motor and mechanical load. However, accurately determining the actual inertia of a mechanical system is not always easy, and it is particularly difficult to determine the inertia of a machine with changing inertia in a short time and set appropriate control gains accordingly. As a means of solving this problem, a technique is known that reduces the apparent inertia of the mechanical system as seen from the output of the PI adjustment means, thereby achieving good control even if appropriate control gains according to the actual inertia of the mechanical system are not set (see, for example, Patent Document 1). [Prior art documents] [Patent Documents]
[0003] [Patent Document 1] Patent No. 3582281 [Overview of the Initiative] [Problems that the invention aims to solve]
[0004] However, with conventional motor control, the stability of the control may decrease depending on the magnitude of the inertia of the mechanical system being controlled (including the motor and the mechanical load connected to it).
[0005] This disclosure provides a technology that can expand the range of inertia over which control is stable, with respect to the inertia of the mechanical system being controlled. [Means for solving the problem]
[0006] As one aspect of this disclosure, A controller that generates a first torque signal as a command to an electric motor to which a mechanical load is connected, The system includes a virtual disturbance estimator that estimates a virtual disturbance applied to a virtual mechanical system along with the torque corresponding to a second torque signal obtained by correcting the first torque signal with a torque correction value, and outputs the estimated value of the virtual disturbance as the torque correction value. An electric motor control device is provided that changes the time constant of the virtual disturbance estimator according to the ratio of the first torque signal and the second torque signal.
[0007] Another aspect of this disclosure is, A method for controlling an electric motor to which a mechanical load is connected, wherein a first torque signal, which is a command to the electric motor, is corrected by a torque correction value to obtain a second torque command, a virtual disturbance applied to a virtual mechanical system along with the torque corresponding to the second torque signal is estimated by a virtual disturbance estimator, and the estimated value of the virtual disturbance is output as the torque correction value, An electric motor control method is provided, which involves changing the time constant of the virtual disturbance estimator, which outputs an estimated value of the virtual disturbance as the torque correction value, according to the ratio of the first torque signal and the second torque signal. [Effects of the Invention]
[0008] According to this disclosure, it is possible to expand the range of inertia over which control is stable with respect to the inertia of the mechanical system being controlled. [Brief explanation of the drawing]
[0009] [Figure 1] This is a diagram illustrating an example of an electric motor control system. [Figure 2] This is a diagram illustrating an example of an electric motor control system that performs speed control. [Figure 3] This is a block diagram showing an example of a control device that performs speed control. [Figure 4] This is a diagram illustrating an example of detection delay. [Figure 5]Block diagram showing an example of an inertia ratio estimator. [Figure 6] This is a block diagram showing the first example of the first filter. [Figure 7] This is a block diagram showing a second example of the first filter. [Figure 8] This is a block diagram showing the first example of a virtual disturbance estimator. [Figure 9] This is a block diagram showing a second example of a virtual disturbance estimator. [Figure 10] This is a block diagram of the control system simulation model. [Figure 11] This figure shows an example of the simulation results (Comparative Example 1). [Figure 12] This figure shows an example of simulation results (comparative example 2). [Figure 13] This figure shows an example of the simulation results (an example). [Figure 14] This is a diagram illustrating an example of an electric motor control system that performs position and speed control. [Figure 15] This is a block diagram showing an example of a control device that performs position and speed control. [Modes for carrying out the invention]
[0010] The embodiments of this disclosure will be described below with reference to the drawings.
[0011] Figure 1 is a configuration diagram showing an example of an electric motor control system. The electric motor control system 200 shown in Figure 1 is a drive control device that controls the drive of the electric motor 2 for moving a mechanical load 3. The electric motor control system 200 drives the mechanical load 3 using the electric motor 2 by outputting three-phase or single-phase AC power from the electric motor control device 100 to the electric motor 2. The electric motor control system 200 comprises the electric motor 2 and the electric motor control device 100.
[0012] The electric motor 2 is mechanically connected to the mechanical load 3 and drives the mechanical load 3. The electric motor 2 is an AC motor, such as a synchronous motor or an induction motor.
[0013] The mechanical load 3 is, for example, mechanical equipment such as production equipment installed in a factory. For example, if the mechanical load 3 is a conveying device that uses a ball screw, the electric motor 2 can drive the conveying device, which is the mechanical load 3, by driving the ball screw.
[0014] The system including the electric motor 2 and the mechanical load 3 driven by the electric motor 2 is represented as the mechanical system 4.
[0015] The motor control device 100 is a power conversion device that converts input power from power source 1 into power to be supplied to motor 2. For example, if motor 2 is a synchronous motor, the motor control device 100 converts the three-phase AC power input from power source 1 into three-phase AC power having a predetermined voltage and phase corresponding to the rotational position, and drives motor 2 by supplying the three-phase AC power to motor 2.
[0016] The motor control device 100 includes a main circuit 10, a current sensor 18, a control device 30, and a drive circuit 20.
[0017] The main circuit 10 converts the input power from the power source 1 into power to be supplied to the motor 2, and drives the motor 2 by outputting the converted power to the motor 2. The main circuit 10 includes, for example, a converter circuit 11, a DC link 12, and an inverter circuit 14.
[0018] The converter circuit 11 converts the alternating current (AC) or direct current (DC) supplied from the power supply 1 into direct current (DC). The converter circuit 11 may also be a rectifier circuit that converts the AC supplied from the power supply 1 into DC. Specific examples of the converter circuit 11 include a diode bridge and a PWM converter.
[0019] The DC link 12 is a circuit that connects the converter circuit 11 and the inverter circuit 14. The DC link 12 includes, for example, a capacitor 13 that smooths the DC voltage input to the inverter circuit 14.
[0020] The inverter circuit 14 converts the DC input from the converter circuit 11 via the DC link 12 into AC, and supplies the converted AC to the motor 2. The inverter circuit 14 has a plurality of semiconductor devices 15. The semiconductor devices 15 have switching elements that turn on or off according to the corresponding drive signal SG among a plurality of drive signals SG supplied from the drive circuit 20.
[0021] The inverter circuit 14 is a power conversion circuit that converts the input DC into AC by switching the switching elements of each of the multiple semiconductor devices 15. The inverter circuit 14 supplies single-phase or three-phase AC current to the motor 2.
[0022] The semiconductor device 15 has semiconductor elements for power conversion. For example, multiple semiconductor devices 15 each have a transistor 16 and a diode 17 connected in antiparallel to the transistor 16. The transistor 16 is an example of a switching element. Specific examples of the transistor 16 include power semiconductors such as IGBTs (Insulated Gate Bipolar Transistors) and MOSFETs (Metal Oxide Semiconductor Field Effect Transistors). If a MOSFET is used as the transistor 16, the diode 17 may be a parasitic diode. The transistor 16 and the diode 17 may be provided on separate semiconductor devices 15.
[0023] The current sensor 18 detects the output current I from the motor control device 100 to the motor 2. In this example, the current sensor 18 detects the current value of the AC current output from the inverter circuit 14 to the motor 2, and the detected current value I represents the detected current value. detThe current sensor 18 outputs a current detection signal to the control device 30 accordingly. The current sensor 18 detects, for example, the current flowing through the output line connecting the inverter circuit 14 and the motor 2. The current detection signal output from the current sensor 18 is received by the control device 30 of the motor control device 100. As a result, the control device 30 determines the detected value of the output current I flowing through the motor 2 (current detection value I) based on the current detection signal from the current sensor 18. det ) can be obtained.
[0024] The rotation sensor 5 is installed on the electric motor 2 and detects the position (rotational position) or speed (rotational speed) of the electric motor 2. The rotation sensor 5 is, for example, an optical or magnetic encoder. The rotation sensor 5 detects the rotational position of the electric motor 2 (position detection value x det ) or detected value of rotational speed (speed detection value v det The motor 2 outputs a rotation detection signal corresponding to the rotation sensor 5. The rotation detection signal output from the rotation sensor 5 is taken up by the control device 30 of the motor control device 100. Based on the rotation detection signal from the rotation sensor 5, the control device 30 determines the magnetic pole position of the rotor of the motor 2 (position detection value x). det ) or detected value of rotational speed (speed detection value v det ) can be obtained. Speed detection value v det The position detection value x det This can also be obtained by differentiating it.
[0025] The control device 30 operates the inverter circuit 14 by operating the drive circuit 20 so that the current detection signal follows the current command generated based on the torque command, based on the current detection signal from the current sensor 18 and the rotation detection signal from the rotation sensor 5.
[0026] The control device 30 controls the operation of each of the multiple semiconductor devices 15 in the inverter circuit 14 based on current detection signals, etc. The control device 30 generates multiple control signals Sg to control the pulse voltage output by the inverter circuit 14 that generates AC power supplied to the motor 2, based on current detection signals, etc.
[0027] The control device 30 is an electronic circuit including, for example, a CPU (Central Processing Unit), an FPGA (Field Programmable Gate Array), or an ASIC (Application Specific Integrated Circuit). The control device 30 may be a computer having a memory and a processor. The control device 30 may be a programmable logic controller (PLC). The control device 30 executes various control operations described in this specification by executing a program such as instruction codes stored in a memory or by being circuit-designed for a specific application.
[0028] The drive circuit 20 generates a plurality of drive signals SG for driving the gates of the switching elements of each of the plurality of semiconductor devices 15 in the inverter circuit 14 according to a plurality of control signals Sg generated by the control device 30.
[0029] FIG. 2 is a configuration diagram showing an example of a motor control system that performs speed control. The motor control system 200A shown in FIG. 2 is an example of the above-described motor control system 200. FIG. 2 illustrates a case where the converter circuit 11 is a diode bridge, the inverter circuit 14 is a three-phase inverter circuit, and the motor 2 is a permanent magnet synchronous motor (PMSM). The motor control system 200A includes a control device 30A.
[0030] FIG. 2 shows each functional block of the control device 30A. The control device 30A shown in FIG. 2 is an example of the above-described control device 30. The control device 30A performs speed control of the mechanical system 4 by feedback-controlling the speed of the mechanical system 4 (for example, the rotational speed of the motor 2) based on the speed command v r . The mechanical system 4 is an object (control target) controlled by the control device 30A.
[0031] The control device 30A includes a controller 31, an adder 32, a virtual disturbance estimator 40, a current command calculator 61, a current coordinate converter 62, a current controller 63, a coordinate converter 64, a PWM generator 65, an inertia ratio estimator 50, and a reciprocal calculator 51.
[0032] Controller 31 of the control device 30A is a speed controller that controls the speed of the electric motor 2. Controller 31 receives the position detection value x det By differentiating this, the velocity detection value v det The controller 31 calculates the speed command v to the mechanical system 4. r and the speed detection value v of mechanical system 4 det This is a feedback control unit that generates a first torque signal T0 that brings the deviation from the given value closer to zero. The first torque signal T0 is an example of a first torque signal that is a command to the motor to which the mechanical load is connected. Examples of control for generating the first torque signal T0 in the controller 31 include P control, PI control, IP control, PID control, or I-PD control (P: proportional control, I: integral control, D: differential control).
[0033] The actual inertia (moment of inertia) of the mechanical system 4, which includes the electric motor 2 and mechanical load 3, is J, and the nominal inertia of the mechanical system 4 (the nominal value of inertia J) is J. n In this case, the control parameter of controller 31 is the nominal inertia J. n It is designed based on the nominal inertia J considered in the design of the controller 31. n This is the nominal inertia J used to estimate the actual inertia J in the inverse model 44 of the virtual disturbance estimator 40 described later. n It is basically the same value, but it may be slightly different.
[0034] For example, when controller 31 has a transfer function (K p (1+1 / T i In the case of a PI controller represented by s), the proportional gain K is one of the control parameters of the controller 31. p This is the nominal inertia J n It is determined accordingly. The controller 31 receives the speed command v r and speed detection value v det The deviation from the transfer function (K p (1+1 / T i When input to s), the first torque signal T0 is output. i represents the integral time, and s represents the Laplace operator.
[0035] The adder 32 adds a torque correction value T output by the virtual disturbance estimator 40 to the first torque signal T0 generated by the controller 31. cmp By adding this value, a corrected second torque signal T is generated. The second torque signal T is an example of a second torque signal obtained by correcting the first torque signal with a torque correction value. In an actual control device, torque control is performed to apply the torque corresponding to the second torque signal T by current control or direct torque control after the adder 32. However, assuming that this torque control can be controlled with sufficient precision, it is assumed that the torque according to the second torque signal T is applied to the machine with inertia J. Furthermore, the delay until the torque corresponding to the second torque signal T is actually applied is included in the detection delay 6 described later.
[0036] The virtual disturbance estimator 40 calculates a virtual disturbance torque (virtual disturbance torque T) for the mechanical system 4, along with the torque corresponding to the second torque signal T. dist Inertia J, which changes velocity due to being affected by ) n The virtual disturbance torque T when considered equivalent to the machine dist This is an estimator that estimates the virtual disturbance torque T. dist This is an example of a hypothetical disturbance applied to a hypothetical mechanical system along with a torque corresponding to the second torque signal T. The hypothetical mechanical system has an assumed inertia J n It has a virtual disturbance torque T. dist This is not an actual disturbance, but rather the inertia J of the mechanical system 4. n This refers to a virtual disturbance that appears to be applied when considered in this way. The virtual disturbance estimator 40 has a configuration similar to a so-called disturbance observer that estimates real disturbances, but this virtual disturbance estimator estimates the virtual disturbance torque T mentioned above. dist This does not estimate the disturbances that actually exist in the real machine.
[0037] The current command calculator 61 calculates a command value to control the current flowing to the motor 2 via the inverter circuit 14. The current command calculator 61 takes the second torque signal T and the speed detection value v as input. detBased on this, current command values Idref and Iqref are generated. Current command value Idref represents the command value for the d-axis current flowing in the d-axis direction of motor 2. Current command value Iqref represents the command value for the q-axis current flowing in the q-axis direction of motor 2.
[0038] The control device 30A controls the motor 2 using the dq axis, which is a Cartesian rotating coordinate axis that rotates in sync with the rotor of the motor 2. The d axis is an axis that extends in the real angular direction (the direction of the magnetic flux generated by the rotor's magnets) representing the actual magnetic pole position θm of the rotor, and the q axis is an axis that extends in the direction advanced by 90° in electrical angle from the d axis. The magnetic pole position θm of the rotor is expressed by the angle advanced by the d axis with respect to the position of the reference coil (e.g., the U-phase coil) of the motor 2.
[0039] The current coordinate converter 62 receives the position detection value x det (Detected value of magnetic pole position θm) is used to determine the current detection value I det The three-phase phase current detection values (iu, iv, iw) are converted to current detection values on the dq coordinate system (d-axis current detection value Id and q-axis current detection value Iq).
[0040] The current controller 63 calculates the d-axis current difference ΔId between the current command value Idref and the d-axis current detection value Id, and the q-axis current difference ΔIq between the current command value Iqref and the q-axis current detection value Iq. The current controller 63 uses PI control or the like to adjust the d-axis voltage command value Vd so that the d-axis current difference ΔId converges to zero. * It generates the q-axis current difference ΔIq and the q-axis voltage command value Vq so that it converges to zero. * This generates the current. The current controller 63 also performs non-interference control, which includes induced voltage compensation and de-interference control to eliminate dq-axis interference.
[0041] The coordinate converter 64 uses the position detection value x det (Detected value of magnetic pole position θm) is used to determine the voltage command value Vd on the dq coordinate. * ,Vq * The phase voltage command value of the three phases (U phase voltage command value Vu * V-phase voltage command value Vv * W-phase voltage command value Vw * Convert to ).
[0042] The PWM generator 65 outputs the three-phase phase voltage command value (U phase voltage command value Vu * V-phase voltage command value Vv * W-phase voltage command value Vw * Based on this, it generates PWM signals, which are multiple control signals Sg for switching the six upper and lower arms.
[0043] Figure 3 is a block diagram showing an example of a control device 30A that performs speed control.
[0044] The virtual disturbance estimator 40 in Figure 3 uses the velocity detection value v det Based on this, the acceleration torque estimate T is calculated using the inverse model 44 and filter 42. e Then, the third torque signal T output from the filter 41 in accordance with the corrected second torque signal T. f It has a subtractor 43 that calculates the difference with (filtered torque signal). Acceleration torque estimate T e is inertia J n This is a virtual acceleration torque estimate for a virtual mechanical system having the following characteristics. The virtual disturbance estimator 40 calculates the difference calculated by the subtractor 43 as the virtual disturbance torque T. dist It is estimated as follows. In this example, the virtual disturbance estimator 40 calculates the difference as the virtual disturbance torque T dist Torque correction value T compensates to offset the difference. c The output is as follows: The virtual disturbance estimator 40 calculates the torque correction value T according to the output difference between filter 41 and filter 42. cmp Adjust.
[0045] Filter 41 is a delay filter that delays the second torque signal T. Filter 41 filters the second torque signal T, thereby creating a filtered third torque signal T. f This is a delay element that outputs the signal. Filter 41 is an example of a first filter to which the second torque signal is input.
[0046] The inverse model 44 has nominal inertia J. n Transfer function using (J nThe inertia of the mechanical system 4, represented as s, is J n This is an inverse model concerning a hypothetical mechanical system. The inverse model 44 considers the velocity detection value v det When this is input, the torque applied to the mechanical system 4, including disturbances, is estimated, and the estimated torque is called Estimated Torque T a Output as follows: s represents the Laplace operator. Detection delay 6 is the velocity detection value v det This represents the delay element until the value is input into the inverse model 44. Estimated torque T a This is a hypothetical torque estimate.
[0047] Figure 4 is a diagram illustrating an example of detection delay 6. Detection delay 6 is the delay (torque application delay) from when the torque based on the second torque signal T is actually applied to the motor 2 until the speed is actually detected and the speed detection value v det This includes the delay until the input is given to the inverse model 44 (speed detection delay). The torque application delay includes, for example in Figure 2, the processing delay of the current command calculator 61, current controller 63, coordinate converter 64 and PWM generator 65, and the operation delay of the inverter circuit 14. The speed detection delay includes, for example in Figure 2, the transmission delay of the rotation detection signal output from the rotation sensor 5 and the position detection value x det and speed detection value v det This includes calculation delays, etc.
[0048] In Figure 3, filter 42 measures, for example, the estimated torque T. a This is a low-pass filter to reduce the noise contained in the signal, but this filter also introduces a delay. Filter 42 is the estimated torque T estimated by the inverse model 44. a By applying a filter, the estimated torque T after filtering is obtained. a Acceleration torque estimate T e This is a filter that outputs as follows. Filter 42 is an example of a second filter to which an estimated torque calculated based on the detected speed or position of the electric motor is input.
[0049] The inertia ratio estimator 50 calculates the virtual disturbance torque T distUsing the torque signals before and after compensation (first torque signal T0 and second torque signal T), the inertia ratio (J / J) is calculated. n Estimate the inertia ratio (J / J). n ) is the actual inertia J of the controlled mechanical system 4 and the nominal inertia J used in the inverse model 44 of the virtual disturbance estimator 40. n This is the ratio. When the electric motor 2 is controlled using the virtual disturbance estimator 40, the second torque signal T is approximately (J / J) relative to the first torque signal T0. n The value is multiplied by ). Therefore, the inertia ratio estimator 50 calculates the inertia ratio (J / J) based on the torque ratio (T / T0). n ) can be estimated.
[0050] The reciprocal arithmetic unit 51 calculates the inertia ratio (J / J) estimated by the inertia ratio estimator 50. n (J n Calculate (α=J) n / J).
[0051] The control device 30A controls the electric motor 2 using the virtual disturbance estimator 40, thereby utilizing the nominal inertia J used in the inverse model 44 of the virtual disturbance estimator 40. n Even if it does not exactly match the actual inertia J (true value) of the mechanical system 4, the speed or position of the electric motor 2 can be stably controlled. However, when controlling the electric motor 2 using the virtual disturbance estimator 40, the inertia ratio (J / J) n The larger the (value), the greater the phase lag, making it difficult to stably control the speed or position of the motor 2.
[0052] This problem will be explained in detail. The delay is calculated by combining the detection delay 6, which represents the delay from when the second torque signal T is given until the speed change corresponding to the torque equivalent to the second torque signal T is detected, and the delay caused by the filter 42, which is τ delay In addition, in filter 41, the above τ is used, as in the case of normal disturbance estimation. delay It is assumed that a certain delay is given, which causes a delay. In this case, the above torque correction value T c The results are as follows:
[0053]
Number
[0054]
Number
[0055]
Number
[0056] Therefore, the second torque signal T has a greater phase lag with respect to the first torque signal T0 as the inertia ratio (J / J n ) increases. Since this phase lag acts as the delay of the previous speed control loop, it becomes difficult to stably control the motor 2.
[0057] To solve such a problem, the control device 30A changes the parameter of the filter 41, which is one of the parameters of the virtual disturbance estimator 40, according to the inertia ratio (J / J n ) (in this example, for the sake of convenience, according to its reciprocal (J n / J)). Thereby, the control device 30A can adjust the torque correction value T n according to the inertia ratio (J / J c ), so that the motor 2 can be stably controlled even when the inertia ratio (J / J n ) increases.
[0058] Thus, the motor control device 100 includes a control device 30A that changes the parameter of the virtual disturbance estimator 40 (particularly, the time constant of the filter 41) according to the ratio between the first torque signal T0 and the second torque signal T. Thereby, the inertial range in which the control is stable can be expanded with respect to the actual inertia J of the mechanical system 4 that is the control target.
[0059] As described above, when the filter 41 is a filter that generates a delay, the inertia ratio (J / J n) increases, the phase delay of the second torque signal T with respect to the first torque signal T0 increases. The control device 30A makes the time constant of the filter 41 smaller so that the delay of the filter 41 becomes smaller as the inertia ratio (J / J n ) increases (as the reciprocal (J n / J) decreases). Thereby, even when the inertia ratio (J / J n ) increases, the control device 30A can stabilize the control of the motor 2 over a wide inertia range by making the time constant of the filter 41 smaller and thereby increasing the response of the second torque signal T with respect to the first torque signal T0.
[0060] The reason why reducing the time constant of the filter 41 can increase the response of T with respect to T0 will be described later.
[0061] The control device 30A changes the time constant of the filter 41 so that as (J n / J) approaches 1, the delay of the filter 41 approaches the delay from when the second torque signal T is applied until the speed change caused by the torque corresponding to the second torque signal T appears in the output of the filter 42. Thereby, when (J n / J) is 1, the delay of the filter 41 can be made equal to the delay from when the second torque signal T is applied until the speed change caused by the torque corresponding to the second torque signal T appears in the output of the filter 42.
[0062] FIG. 5 is a block diagram showing an example of an inertia ratio estimator. When the motor 2 is accelerated or decelerated with the value obtained by adding the compensation torque (torque correction value T c ), which is the output of the virtual disturbance estimator 40, to the first torque signal T0 (signal before adding the compensation torque), which is the speed control output, as the torque command (second torque signal T), the second torque signal T becomes approximately (J / J n ) times the first torque signal T0. Therefore, the inertia ratio estimator 50 can estimate the inertia ratio (J / J n ) based on the torque ratio (T / T0) during the acceleration or deceleration of the motor 2.
[0063] If the first torque signal T0 before adding the compensatory torque is too small, the inertia ratio (J / J) n The estimation accuracy of ) decreases. When the second torque signal T and the first torque signal T0 do not have the same sign, using "T" and "T0" will result in a lower inertia ratio (J / J). n ) is highly likely to be incorrectly estimated. Inertia ratio (J / J n When the estimation accuracy of ) decreases, the inertia ratio (J / J) n α (=J) is the reciprocal of ) n The accuracy of / J) decreases, and consequently, the inertia range in which the motor 2 can be stably controlled narrows.
[0064] The inertia ratio estimator 50 uses T0 and T when all of the following conditions are met: the absolute value of T0 is greater than a predetermined threshold (condition a), T0 and T have the same sign (condition b), and the motor 2 is accelerating or decelerating (condition c), to calculate (J / J n We estimate (J / J) using T0 and T when conditions a, b, and c are all true. Figure 5 shows (J / J) n Let's take an example of estimating (J / J). The reciprocal arithmetic unit 51 is estimated using T0 and T when all conditions a, b, and c are true. n α (=J) is the reciprocal of ) n Perform the calculation / J).
[0065] By using T0 and T when conditions a, b, and c are all true, the inertia ratio (J / J) can be calculated. n The decrease in estimation accuracy of ) is suppressed, and α(=J n The decrease in accuracy of / J) is suppressed. Therefore, the motor 2 can be controlled stably over a wide range of inertia.
[0066] In Figure 5, "abs" represents an arithmetic unit that outputs the absolute value of the input value, "÷" represents a divider, and "and" represents a logical AND gate.
[0067] The inertia ratio estimator 50 calculates the inertia ratio (J / J) by either limiting the rate of change of (|T| / |T0|) or by applying a low-pass filter to (|T| / |T0|). n This can also be used as an estimate of the inertia ratio (J / J). nThe variability of the estimated values is reduced.
[0068] Figure 6 is a block diagram showing a first example of the first filter. Figure 7 is a block diagram showing a second example of the first filter. Filter 41 can be configured, for example, as shown in Figure 6 or Figure 7. α(=J) n / J) is a value greater than 0 and less than or equal to 1, corresponding to (|T0| / |T|) (0 < α ≤ 1). F d This represents the delay element from the application of the second torque signal T until the resulting change appears in the output of filter 42.
[0069] The filter 41 shown in Figure 6 or Figure 7, when α is 1, sets the second torque signal T to 1 (=F d ) is given a delay to the third torque signal T f The filtered torque signal is output, and as α approaches zero, the third torque signal T has almost no delay relative to the second torque signal T. f Outputs.
[0070] Next, we will explain why reducing the time constant of filter 41 can speed up the response of T to T0.
[0071] First, filter 41 is constructed using a block diagram as shown in Figure 6 or Figure 7 (expressed as an equation, "1-α(1-F d Explain why it is good to do so.
[0072] Figure 8 is a block diagram showing the first example of a virtual disturbance estimator. The transfer function F represents the product of multiple delay elements from the time a second torque signal T is given until the velocity change caused by the torque corresponding to the second torque signal T appears at the output of filter 42. d Let's assume that the delay element of the filter 41, which filters the second torque signal T, is the transfer function F1. In this case, equation 1 holds true according to the block diagram shown in Figure 8. By rearranging equation 1, we obtain equation 2.
[0073]
number
[0074] On the other hand, virtual disturbance torque T dist Precise torque correction value T that fully compensates for the loss. c In the ideal control state from which this equation is derived, it can be said that equation 3 holds true.
[0075]
number
[0076] To find the desired F1, substituting equation 3 into equation 2 yields equation 4.
[0077]
number
[0078] By rearranging Equation 4, we obtain Equation 5. Therefore, if filter 41 has a delay element represented by the transfer function F1 that satisfies Equation 5, the virtual disturbance estimator is the virtual disturbance torque T dist The precise torque correction value T compensates for this. cmp This can be generated in T0. cmp The value T, which is the sum of (J) in equation 5, is given by n If / J) is close to its true value, then equation 3 is satisfied without any delay with respect to T0.
[0079] (J in equation 5) n α(=J) obtained during the operation of the electric motor 2 by the inertia ratio estimator 50 and the reciprocal calculator 51 is calculated by the inertia ratio estimator 50 and the reciprocal calculator 51. n The control device 30A is updated according to α(=J) obtained during the operation of the electric motor 2 by the inertia ratio estimator 50 and the reciprocal calculator 51. n Depending on / J), the delay element of filter 41 can be updated.
[0080] α(=J nThe primary effect of using ( / J) is the improvement of the stability of the virtual disturbance estimator. If α is given in a way that maintains stability, the virtual disturbance estimator can achieve good velocity control. For this reason, the actual inertia J of the mechanical system 4 does not necessarily need to be estimated with high accuracy.
[0081] Figure 9 is a block diagram showing a second example of a virtual disturbance estimator. The virtual disturbance estimator 40 described above may be replaced with a virtual disturbance estimator 40A in the form shown in Figure 9.
[0082] The virtual disturbance estimator 40A calculates the virtual disturbance torque T acting on the mechanical system 4. dist This is an estimator that estimates the velocity detection value v. The virtual disturbance estimator 40A estimates the velocity detection value v. det The estimated torque T is derived by the inverse model 44 based on this. a Then, based on the corrected second torque signal T, the third torque signal T is derived by the delay simulation filter 45. f It has a subtractor 43 that calculates the difference with the estimated torque T. a This is a virtual torque estimate. The virtual disturbance estimator 40A calculates the difference calculated by the subtractor 43 as the virtual disturbance torque T. dist This is estimated as follows. In this example, the virtual disturbance estimator 40A uses the value obtained by delaying the difference with the low-pass filter 46 to estimate the virtual disturbance torque T. dist Torque correction value T to compensate for cmp Output as follows.
[0083] The virtual disturbance estimator 40A uses the output value of the delay simulation filter 45 to which the second torque signal T is input, and the speed detection value v det Estimated torque T calculated based on a The virtual disturbance estimator 40A has a low-pass filter 46 to which the difference between the two values is input. The virtual disturbance estimator 40A calculates the torque correction value T according to the output of the low-pass filter 46. cmp Adjust.
[0084] The control device 30A has an inertia ratio (J / J n ) in accordance with (the reciprocal of (J nDepending on the inertia ratio (J / J), the time constant of the delay simulation filter 45, which is one of the parameters of the virtual disturbance estimator 40A, is changed. As a result, the control device 30A changes the inertia ratio (J / J). n Torque correction value T according to ) cmp Since the inertia ratio (J / J) can be adjusted, n Even if the ) increases, the motor 2 can be controlled stably. The delay simulation filter 45 is an example of a first filter to which the second torque signal is input.
[0085] Thus, the motor control device 100 may include a control device 30A that changes the parameters of the virtual disturbance estimator 40A (in particular, the time constant of the delay simulation filter 45) according to the ratio of the first torque signal T0 to the second torque signal T. This expands the inertia range over which control is stable with respect to the actual inertia J of the mechanical system 4 that is being controlled.
[0086] The virtual disturbance estimator 40A shown in Figure 9 changes the time constant of the delay simulation filter 45 according to the reciprocal of the inertia ratio α, and further processes it with a low-pass filter 46 at the final stage of this block to obtain a torque correction value T. cmp This outputs [the specified output]. However, in this case, the low-pass filter 46 adds a new phase delay, and that phase delay remains in the speed control loop.
[0087] On the other hand, in the virtual disturbance estimator 40 shown in Figure 3, etc., a low-pass filter does not need to be provided at the final stage of the estimator. The virtual disturbance estimator 40 has a filter 42 on the inverse model 44 side, and the transfer function F takes into account the delay of the filter 42. d and the reciprocal of the inertia ratio, α (=J) n The delay (time constant) of filter 41 is determined using (J). By adopting this configuration, the stability of speed control can be further improved compared to the configuration in Figure 9.
[0088] Not only in cases where virtual disturbances are estimated and compensated for, as in the present invention, a low-pass filter placed within the loop of a disturbance observer, including disturbance compensation, can cause a phase lag in the speed control loop, leading to instability in speed or position control. In such cases, it is preferable to eliminate the low-pass filter as much as possible, or to shorten the time constant of the low-pass filter. However, the acceleration signal generated when differentiated in the inverse model 44 often contains a large amount of noise, so it cannot be fed back directly. Therefore, in the case of the virtual disturbance estimator 40 shown in Figure 3, a filter 42 is provided on the inverse model 44 side. Transfer function F that also takes into account the delay of filter 42 d and the reciprocal of the inertia ratio, α (=J) n Using / J), the delay element of filter 41 is expressed by the transfer function F1(=1-α(1-F d By expressing it as ), it is possible to reduce the noise superimposed on the acceleration signal generated in the inverse model 44 while suppressing the delay in the speed control loop.
[0089] Figure 10 is a block diagram of the simulation model of the control device. The simulation model shown in Figure 10 is the model of the control device 30A (Figure 3) used in the simulation.
[0090] The simulation conditions are: • Time constant τ d Wasted time: 0.2ms • Controller 31: Nominal inertia J n In this case, proportional gain k p =1000rad / s, integration time T i Control set to =6ms • Acceleration of motor 2: Accelerates to a speed command of 100 rad / s in an acceleration time of 10 ms. That's what I decided.
[0091] Figure 11-13 shows the simulation results using the simulation model shown in Figure 10 under the simulation conditions described above. In Figure 11-13, the horizontal axis represents time, and the vertical axis represents the velocity detection value v. det This represents the four different inertia ratios (J / J).n This shows the result of trying the following:
[0092] Figure 11 shows a comparative example when α=1 (fixed value). When the same dead time as for speed detection is applied to the second torque signal T, the inertia ratio (J / J) is obtained. n In a large inertia range of 20 or more, the control becomes unstable.
[0093] Figure 12 shows a comparative example when α = 0.25 (fixed value). When α is fixed to a small value (0.25) in preparation for stable control of the high-inertia mechanical system 4, the inertia ratio (J / J) n ) becomes uncontrollable within a small range of inertia.
[0094] Figure 13 shows the estimated inertia ratio (J / J). n An example is shown in which the parameters of filter 41 are changed according to the reciprocal α of ). In this case, stable control is achieved over a wide range of inertia.
[0095] Figure 14 is a configuration diagram showing an example of an electric motor control system that performs position and speed control. The electric motor control system 200B shown in Figure 14 is an example of the electric motor control system 200 described above. The explanation of the configuration, operation, and effects of the electric motor control system 200B, which are the same as those of the electric motor control system 200A described above, will be omitted by referring to the explanation above. The electric motor control system 200B includes a control device 30B.
[0096] Figure 14 shows the functional blocks of the control device 30B. The control device 30B shown in Figure 14 is an example of the control device 30 described above. The control device 30B receives the position command x r The position of the mechanical system 4 (for example, the rotational position of the electric motor 2) is controlled by feedback control based on this, thereby controlling the position of the mechanical system 4. The mechanical system 4 is the object (controlled object) controlled by the control device 30B. The description of the control device 30B, which has the same configuration, operation, and effect as the control device 30A described above, is omitted by referring to the description above.
[0097] The controller 31 of the control device 30B is a position and speed controller that controls the position and speed of the electric motor 2. The controller 31 receives position commands x from the mechanical system 4. r and the position detection value x of mechanical system 4 det This is a feedback control unit that generates a first torque signal T0 that brings the deviation closer to zero. The controller 31 includes a position controller 33 and a speed controller 34.
[0098] The position controller 33 issues a position command x to the mechanical system 4. r and the position detection value x of mechanical system 4 det A speed command v that brings the deviation from zero closer to zero. r This is a feedback control unit that generates the speed command v in the position controller 33. r Examples of control methods for generating [the desired result] include P control and PI control.
[0099] The speed controller 34 receives the speed command v r and speed detection value v det This is a feedback control unit that generates a first torque signal T0 that brings the deviation with the position detection value x closer to zero. The controller 31 receives the position detection value x det By differentiating this, the velocity detection value v det Calculate.
[0100] Figure 15 is a block diagram showing an example of a control device 30B that performs position and speed control.
[0101] The virtual disturbance estimator 40 in Figure 15 has a configuration in which the inverse model 44 of the control device 30A described above is replaced with the inverse model 47. The inverse model 47 is nominal inertia J n Transfer function using (J n s 2 The nominal inertia J is represented by ). n This is an inverse model of the position / torque transfer function for a hypothetical mechanical system having x. The inverse model 47 is a position-detected value x det When this is input, the nominal inertia J n The torque applied to a virtual mechanical system having is estimated, and the estimated torque is called Estimated Torque T a Output as follows: s represents the Laplace operator. Detection delay 6 is the position detection value x.det This represents the delay element until it is input into the inverse model 47.
[0102] Thus, the control device 30B, like the control device 30A, changes the parameters of the virtual disturbance estimator 40 (in particular, the time constant of the filter 41) according to the ratio of the first torque signal T0 to the second torque signal T. This expands the inertia range over which control is stable with respect to the actual inertia J of the mechanical system 4 that is being controlled.
[0103] The present invention is not limited by the embodiments described above. The embodiments can be implemented in various other forms, and various combinations, omissions, substitutions, and modifications are possible without departing from the spirit of the invention. These embodiments and their variations are included in the scope and spirit of the invention, as well as in the claims of the invention and its equivalents. [Explanation of Symbols]
[0104] 2 electric motor 3 Mechanical load 4. Mechanical Engineering 5. Rotation sensor 10 Main circuit 20 Drive circuit 30, 30A, 30B control devices 31 Controller 40 Virtual Disturbance Estimator 100 Electric motor control device 200, 200A, 200B Electric Motor Control System
Claims
1. A controller that generates a first torque signal as a command to an electric motor to which a mechanical load is connected, The system includes a virtual disturbance estimator that estimates a virtual disturbance applied to a virtual mechanical system along with the torque corresponding to the second torque signal obtained by correcting the first torque signal with a torque correction value, and outputs the estimated value of the virtual disturbance as the torque correction value. The virtual disturbance estimator is, A first filter that outputs a third torque signal which has been filtered to delay the second torque signal, An inverse model that estimates a virtual acceleration torque for the virtual mechanical system based on the detected position or speed of the electric motor, It includes a second filter that outputs an estimated acceleration torque for the virtual mechanical system based on the virtual acceleration torque estimated by the inverse model, The torque correction value is adjusted according to the difference between the third torque signal and the estimated acceleration torque. An electric motor control device that changes the time constant of the first filter according to the ratio of the first torque signal and the second torque signal.
2. T 0 Let be the first torque signal, T be the second torque signal, (|T 0 When α is a value greater than 0 and less than or equal to 1 corresponding to | / |T|, The motor control device according to claim 1, wherein the time constant of the first filter is changed according to α.
3. The motor control device according to claim 2, wherein the time constant of the first filter is changed such that the delay of the first filter decreases as α becomes less than 1.
4. Said T 0 The absolute value of is greater than a predetermined threshold, the T 0 The above T is the same sign, and the above motor is either accelerating or decelerating when all of these conditions are met. 0 The electric motor control device according to claim 2, wherein α is calculated using the above T.
5. The motor control device according to claim 1, wherein the second filter causes a delay in the virtual acceleration torque estimated by the inverse model.
6. The motor control device according to claim 1, wherein the second filter reduces noise included in the virtual acceleration torque estimated by the inverse model.
7. T 0 Let be the first torque signal, T be the second torque signal, (|T 0 When α is a value greater than 0 and less than or equal to 1 corresponding to | / |T|, The motor control device according to claim 1, wherein the time constant of the first filter is changed such that the closer α is to 1, the closer the delay of the first filter is to the delay from when the second torque signal is applied until the change caused by the second torque signal appears at the output of the second filter.
8. A controller that generates a first torque signal as a command to an electric motor to which a mechanical load is connected, The system includes a virtual disturbance estimator that estimates a virtual disturbance applied to a virtual mechanical system along with the torque corresponding to the second torque signal obtained by correcting the first torque signal with a torque correction value, and outputs the estimated value of the virtual disturbance as the torque correction value. The virtual disturbance estimator is, A first filter that outputs a third torque signal which has been filtered to delay the second torque signal, An inverse model that estimates a virtual acceleration torque for the virtual mechanical system based on the detected position or speed of the electric motor, The system includes a low-pass filter to which the difference between the output value of the first filter and the virtual acceleration torque estimated by the inverse model is input, The torque correction value is adjusted according to the output of the low-pass filter. An electric motor control device that changes the time constant of the first filter according to the ratio of the first torque signal and the second torque signal.
9. The motor control device according to any one of claims 1 to 7, wherein the second filter is a low-pass filter.
10. The motor control device according to any one of claims 1 to 8, wherein the controller performs speed control of the motor or position control and speed control of the motor.
11. The motor control device according to any one of claims 1 to 8, comprising a main circuit for driving the aforementioned motor.
12. A method for controlling an electric motor to which a mechanical load is connected, wherein a first torque signal, which is a command to the electric motor, is corrected by a torque correction value to obtain a second torque signal, a virtual disturbance applied to a virtual mechanical system along with the torque corresponding to the second torque signal is estimated by a virtual disturbance estimator, and the estimated value of the virtual disturbance is output as the torque correction value, The virtual disturbance estimator is, A first filter that outputs a third torque signal which has been filtered to delay the second torque signal, An inverse model that estimates a virtual acceleration torque for the virtual mechanical system based on the detected position or speed of the electric motor, It includes a second filter that outputs an estimated acceleration torque for the virtual mechanical system based on the virtual acceleration torque estimated by the inverse model, The torque correction value is adjusted according to the difference between the third torque signal and the estimated acceleration torque. An electric motor control method that changes the time constant of the first filter according to the ratio of the first torque signal and the second torque signal.
Citation Information
Patent Citations
Variable structure control method
JP1994035506A
Motor controller
JP2013055751A
Motor controller
JP2021191071A
motor speed controller
JP3582281B2