Electric motor control device
The motor control device addresses voltage estimation inaccuracies by using PI control and gain calculations to accurately determine motor coil temperature and resistance.
Patent Information
- Application Number
- JP2024031210
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-03-01
- Publication Date
- 2025-09-11
- Estimated Expiration
- 2044-03-01
AI Technical Summary
Existing motor control devices face inaccuracies in estimating motor coil temperature due to errors between commanded and actual voltage values, leading to incorrect resistance calculations.
A motor control device that utilizes PI control to generate voltage commands, calculates PI gains for accurate current response, estimates bus voltage, and uses these to determine electrical resistance for precise temperature estimation.
Enables accurate estimation of motor coil temperature despite voltage errors, ensuring precise resistance and temperature determination.
Smart Images

Figure 2025133322000001_ABST
Abstract
Description
[Technical Field]
[0001] The present disclosure relates to a control device for controlling an electric motor. [Background technology]
[0002] For example, Patent Document 1 describes a motor control device that has a function of protecting the coil by grasping the temperature of the coil in an elevator door motor. The control device described in Patent Document 1 estimates the resistance value of the motor based on the value of the current flowing through the motor and the value of the voltage applied to the motor, and estimates the temperature of the coil of the motor based on the estimated resistance value. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Application Laid-Open No. 2006-290507 Summary of the Invention [Problem to be solved by the invention]
[0004] There is an error between the command value of the voltage to be applied to the motor and the value of the voltage actually applied to the motor. With the coil temperature estimation method of Patent Document 1, this error causes an error in the calculated motor resistance value, making it difficult to accurately estimate the coil temperature. Therefore, with the temperature estimation method of Patent Document 1, it is difficult to accurately estimate the motor coil temperature.
[0005] The present disclosure has been made to solve the above-mentioned problems, and aims to provide an improved motor control device that can estimate the temperature of the motor coil with high accuracy. [Means for solving the problem]
[0006] The electric motor control device of the present disclosure includes a voltage command unit that generates a voltage command value by PI control so that the value of the current flowing through the electric motor follows the current command value; a gain calculation unit that calculates a PI gain of the PI control so that the response from the current command value to the value of the current flowing through the electric motor matches the ideal response; an estimation unit that uses the PI gain to estimate a bus voltage value supplied to an inverter for driving the electric motor and estimates an electrical resistance value of the electric motor using the PI gain and the bus voltage value; and a temperature estimation unit that estimates the temperature of the coil of the electric motor using the electrical resistance value estimated by the estimation unit. [Effects of the Invention]
[0007] The electrical resistance value is estimated using the bus voltage value estimated from the PI gain. Therefore, even if there is an error between the voltage command value and the voltage actually applied to the motor, the voltage resistance value and coil temperature can be estimated with higher accuracy. [Brief explanation of the drawings]
[0008] [Figure 1] 1 is a block diagram showing an example configuration of a control device for an electric motor according to a first embodiment of the present disclosure. [Figure 2] 4A to 4C are diagrams illustrating an example of a test current command value generated by a current command generating unit according to the first embodiment of the present disclosure, and actual current values and voltage command values at that time. [Figure 3] FIG. 2 is a diagram illustrating a model of a current control loop of the control device according to the first embodiment of the present disclosure, focusing on the d-axis while the electric motor is stopped. [Figure 4] 4 is a flowchart showing a control operation for temperature estimation executed by the control device according to the first embodiment of the present disclosure. [Figure 5] 3 is a block diagram illustrating a first exemplary configuration of a gain calculation unit of the control device according to the first embodiment of the present disclosure. FIG. [Figure 6] FIG. 4 is a block diagram illustrating a second exemplary configuration of the gain calculation unit of the control device according to the first embodiment of the present disclosure. [Figure 7] FIG. 10 is a block diagram illustrating a third exemplary configuration of the gain calculation unit of the control device according to the first embodiment of the present disclosure. [Figure 8] FIG. 10 is a schematic diagram showing the configuration of a control device for an elevator door device and its peripheral devices according to a second embodiment of the present disclosure. [Figure 9] 10 is a flowchart for explaining a control operation of temperature estimation when an elevator door is open according to a second embodiment of the present disclosure. [Figure 10] 10 is a flowchart for explaining a control operation of temperature estimation when an elevator door is closed according to a second embodiment of the present disclosure. [Figure 11] FIG. 11 is a schematic diagram showing the overall configuration of a system including an elevator and a control device according to a third embodiment of the present disclosure. [Figure 12] 11 is a flowchart showing an example of a control operation for estimating the temperature of the electric motor of the elevator hoisting machine according to the third embodiment of the present disclosure. DETAILED DESCRIPTION OF THE INVENTION
[0009] Hereinafter, embodiments of the present disclosure will be described with reference to the drawings. In each drawing, the same or corresponding parts are denoted by the same reference numerals, and the description thereof will be simplified or omitted.
[0010] Embodiment 1 FIG. 1 is a block diagram showing an example of the configuration of a control device for an electric motor according to a first embodiment. The control device of FIG. 1 controls the operation of an electric motor 1. The electric motor 1 shown in FIG. 1 is a permanent magnet synchronous motor that is rotationally driven by three-phase AC. The electric motor 1 includes coils corresponding to the phases of the three-phase AC. That is, the electric motor 1 includes a U-phase coil, a V-phase coil, and a W-phase coil. The rotational position θ, rotational speed, rotational torque, etc. of the electric motor 1 are controlled by the power supplied to the electric motor 1.
[0011] The electric motor 1 is equipped with a rotation sensor 2. The rotation sensor 2 detects the rotation position θ of the electric motor 1. An encoder or a resolver is used as the rotation sensor 2. Other types of rotation sensors may also be used as the rotation sensor 2. Information about the rotation position θ detected by the rotation sensor 2 is used to control the rotation position and rotation speed, as a control standard for current, and the like.
[0012] The control device includes a d-axis current command unit 3, a d-axis current control unit 4, a q-axis current control unit 8, coordinate converters 9 and 10, a duty calculation unit 11, a power conversion unit 12, a current sensor 13, a gain calculation unit 14, an estimation unit 15, a temperature estimation unit 16, and a state detection unit 17.
[0013] The state detection unit 17 detects the state of the electric motor 1 and outputs a gain calculation command. The states of the electric motor 1 detected by the state detection unit 17 may include, for example, a rotating state, a stopped state, and other states. The rotating state indicates that the electric motor 1 is not stopped, but is rotating at a speed greater than 0, or is being rotated by the load of the electric motor 1. The stopped state is a state in which the electric motor 1 is completely stopped with a speed of 0. The stopped state may also be a state in which the electric motor 1 is mechanically stopped by a brake that stops the rotation of the electric motor 1, or by a load on the electric motor.
[0014] Any method may be used by the state detection unit 17 to detect the state of the electric motor 1. As an example, the state detection unit 17 detects the state based on the rotational position θ and speed detected by the rotation sensor 2. The state detection unit 17 may also detect the state based on a brake that brakes the electric motor 1 or information on the load side.
[0015] The d-axis current command unit 3 calculates and outputs the d-axis current command value Id* of the electric motor 1. The d-axis current of the electric motor 1 is a current value that does not contribute, or contributes very little, to the rotational torque. When controlling the electric motor 1, which is a permanent magnet synchronous motor, the d-axis current command unit 3 normally sets the current command value Id* to 0. However, when operating the electric motor 1 in a specific operating range with high speed and high torque, the current command value Id* may be set to a value other than 0 in order to perform flux-weakening control.
[0016] The d-axis current control unit 4 includes a P gain 5, an I gain 6, and an integrator 7. The d-axis current control unit 4 functions as a voltage command unit and generates a voltage command value Vd* by PI control so that the d-axis current flowing through the electric motor 1 follows the current command value Id*. The d-axis current control unit 4 receives the current command value Id* from the d-axis current command unit 3 and the d-axis actual current value Id from a coordinate converter 10 (described later). The d-axis current control unit 4 generates a d-axis voltage command value Vd* so that the actual current value Id flowing through the electric motor 1 follows the current command value Id*. Here, the P gain 5 is set to P gain = ωc × L using the inductance L of the electric motor 1, and the I gain 6 is set to I gain = ωc × R using the electrical resistance value R of the electric motor 1. Here, ωc is the current control band.
[0017] When the inductance L set in P gain 5 and the electrical resistance R set in I gain 6 are equal to the inductance and resistance of the electric motor 1, the closed-loop characteristics of the actual current value Id relative to the current command value Id*, which is the output of the d-axis current command unit 3, are a first-order lag system. Hereinafter, this will be referred to as the ideal response. Conversely, when the characteristics from the current command value Id* to the actual current value Id are not a first-order lag, this indicates that the inductance L of P gain 5 and the electrical resistance R of I gain 6 are different from the inductance and resistance of the electric motor 1. Therefore, if it is possible to determine the P gain 5 and I gain 6 that result in the ideal response, it is possible to know the resistance of the electric motor 1, and therefore the temperature of the electric motor 1.
[0018] The q-axis current control unit 8 controls the q-axis current flowing through the electric motor 1. For example, the q-axis current control unit 8 controls the q-axis current by PI control, similar to the d-axis current control unit 4. The q-axis current control unit 8 is not limited to PI control and may be realized by any control such as PID control. The q-axis current control unit 8 may also include position control for controlling the rotational position of the electric motor 1 and speed control for controlling the rotational speed.
[0019] The current sensor 13 detects the value of the current flowing through each phase of the electric motor 1. That is, the current sensor 13 detects the value of the current flowing through the U phase, the value of the current flowing through the V phase, and the value of the current flowing through the W phase of the electric motor 1. Hereinafter, the value of the current flowing through the U phase, the value of the current flowing through the V phase, and the value of the current flowing through the W phase detected by the current sensor 13 will also be referred to as the actual current value Iu, the actual current value Iv, and the actual current value Iw, respectively. Only two of the actual current values Iu, Iv, and Iw may be detected by the current sensor 13. The actual current values Iu, Iv, and Iw may be used as feedback signals for current control of the electric motor 1.
[0020] The coordinate converter 10 receives the rotational position θ detected by the rotation sensor 2 and the actual current values Iu, Iv, and Iw detected by the current sensor 13. Based on the rotational position θ, the coordinate converter 10 converts the coordinate system of the actual current values Iu, Iv, and Iw into a dq coordinate system. That is, based on the input rotational position θ and actual current values Iu, Iv, and Iw, the coordinate converter 10 calculates and outputs the corresponding d-axis actual current value Id and q-axis actual current value Iq. The output d-axis actual current value Id is input to the d-axis current control unit 4 and the gain calculation unit 14, and the q-axis actual current value Iq is input to the q-axis current control unit 8 and the gain calculation unit 14.
[0021] The coordinate converter 9 receives as input the value of the rotational position θ detected by the rotation sensor 2, the d-axis voltage command value Vd* generated by the d-axis current control unit 4, and the q-axis voltage command value Vq* generated by the q-axis current control unit 8. Based on the rotational position θ, the coordinate converter 9 converts the coordinate system of the voltage command values Vd* and Vq* into a UVW coordinate system. That is, based on the input rotational position θ and voltage command values Vd* and Vq*, the coordinate converter 9 calculates and outputs the corresponding U-phase voltage command value Vu*, V-phase voltage command value Vv*, and W-phase voltage command value Vw*.
[0022] Duty calculation unit 11 calculates and outputs a U-phase duty ratio Du*, a V-phase duty ratio Dv*, and a W-phase duty ratio Dw* using a U-phase voltage command value Vu*, a V-phase voltage command value Vv*, and a W-phase voltage command value Vw* that are outputs of coordinate converter 9, and a bus voltage design value Vdc* that is a design value of the bus voltage Vdc supplied to power conversion unit 12. Specifically, duty calculation unit 11 calculates and outputs a U-phase duty ratio Du*, a V-phase duty ratio Dv*, and a W-phase duty ratio Dw* by dividing each of the voltage command values Vu*, Vv*, and Vw* by the bus voltage design value Vdc*.
[0023] The power conversion unit 12 is an amplifier that supplies power for controlling the electric motor 1. As an example, the power conversion unit 12 has a function of a PWM inverter. The power conversion unit 12 is supplied with a bus voltage Vdc from a power supply system. The power conversion unit 12 generates a corresponding PWM signal by performing carrier comparison of the duty ratios Du*, Dv*, and Dw* from the duty calculation unit 11. The power conversion unit 12 uses the generated PWM signal as a switching command for the switching elements of the inverter. The power conversion unit 12 converts power from an operating power source based on the switching command and supplies the power to the electric motor 1.
[0024] Here, the bus voltage Vdc supplied to the power conversion unit 12 varies depending on the system power supply and the operating state of the electric motor 1. For example, if the power conversion unit 12 uses a diode rectifier as a rectifier, the rectified voltage, i.e., the bus voltage Vdc, varies as the system voltage varies. Furthermore, when the electric motor 1 is in power running operation, power is supplied to the electric motor 1, so the bus voltage Vdc decreases, and conversely, when the electric motor is in regenerative operation, power is returned to the power conversion unit 12, so the bus voltage Vdc increases.
[0025] Although it is conceivable that the bus voltage Vdc may change in this way, the duty calculation unit 11 calculates the duty ratio using the bus voltage design value Vdc*. If the actual bus voltage Vdc changes, an error occurs in the duty ratio, resulting in a difference between the actual voltage and the command voltage. If the bus voltage Vdc is measured and used in the duty calculation unit 11, the difference between the actual voltage and the command voltage can be reduced, but there are cases where it is not possible to install a sensor to measure the bus voltage due to cost or other reasons.
[0026] The blocks involved in estimating the temperature of the electric motor 1 will be described below. First, the operation of the d-axis current command unit 3 when estimating the temperature of the coils of the electric motor 1 will be described. The d-axis current command unit 3 outputs the test current command value Id* when the state detection unit 17 detects a stopped state and outputs a gain calculation command. In other words, the test current command value Id* is generated when the electric motor 1 is stopped. In normal control, the d-axis current command value Id* is often set to 0. However, when estimating the temperature of the electric motor 1, the d-axis current command unit 3 sets the test current command value Id* to a value other than 0.
[0027] Specifically, the d-axis current command unit 3 generates a test current command value Id* having a waveform such as a pulse wave, a triangular wave, a sawtooth wave, a sweep sine wave, or an M-sequence signal. The test current command value Id* may be generated so as to be added to a constant current command value. The test current command value Id* is generated so as to include a sufficient number of frequency components required when the gain calculation unit 14 calculates the gain.
[0028] FIG. 2 is a diagram showing an example of a test current command value Id* generated by the current command generation unit according to this embodiment, and the actual current value and voltage command value at that time. In the example of FIG. 2, a pulse wave is given as the test current command value Id*. In order for the gain calculation unit 14, which will be described later, to calculate a PI gain that matches the ideal response characteristic from the current command value to the actual current Id, it is desirable that the test current command value Id* include various frequency components. While FIG. 2 shows an example of a pulse wave, various test current command values Id*, such as a triangular wave, a sawtooth wave, or an M-sequence signal, can be used.
[0029] In the power conversion unit 12, a dead time is provided to prevent short circuits between the upper and lower arms. This is generally corrected using control software, but it is known that this correction is difficult when the current is near zero. If the dead time correction is not performed properly, a difference will occur between the command voltage value Vd* and the actual voltage value Vd, which will result in an error in the gain calculated by the gain calculation unit 14. To avoid this, an offset current may be applied in advance and a test current command value Id* such as a pulse wave or triangular wave may be added to it. By applying the offset current, the gain calculation unit 14 can adjust the gain without using data when the current is near zero, i.e., by avoiding situations where an error occurs between the actual voltage and the command voltage.
[0030] The gain calculation unit 14 calculates a P gain and an I gain such that the response characteristic from the d-axis current command value Id* to the d-axis actual current value Id becomes an ideal response, based on the d-axis voltage command value Vd*, the d-axis actual current value Id, and a gain calculation command from the state detection unit 17. The gain calculation unit 14 determines whether or not to adjust the gain based on the output of the state detection unit 17.
[0031] Specifically, when the state detection unit 17 detects the stopped state of the electric motor 1 and outputs a gain adjustment command, the gain calculation unit 14 performs gain calculation. As described above, the d-axis current command unit 3 generates the test current command value Id* at this time, and therefore the gain calculation unit 14 performs gain adjustment using the test current command value Id*. At this time, the gain calculation unit 14 calculates a P gain and an I gain such that the characteristic from the current command value Id*, which is the output of the d-axis current command unit 3, to the actual current Id becomes an ideal response.
[0032] Here, when the bus voltage Vdc supplied to the power conversion unit 12 varies from the bus voltage design value Vdc*, a difference occurs between the command voltage and the actual voltage. In other words, the voltage command value Vd* that is the output of the d-axis current control unit 4 becomes a value that differs from the voltage actually applied to the motor 1. Since the gain calculation unit 14 calculates the gain using the voltage command value Vd*, the calculated gain may include an error between the bus voltage design value Vdc* and the actual bus voltage Vdc.
[0033] The estimation unit 15 calculates the error between the bus voltage design value Vdc* and the actual bus voltage Vdc, and calculates the bus voltage estimate value Vdc^. The estimation unit 15 also estimates the resistance estimate value R^ using the calculation result of the gain calculation unit 14 and the bus voltage estimate value Vdc^. By using the bus voltage estimate value Vdc^, the error between the bus voltage design value Vdc* and the actual bus voltage Vdc, which is included in the calculation result of the gain calculation unit 14, is corrected, and the resistance estimate value R^ can be estimated more accurately.
[0034] The temperature estimation unit 16 receives the estimated bus voltage value Vdc^ and the estimated resistance value R^ from the estimation unit 15. The temperature estimation unit 16 estimates the coil temperature T according to the corrected estimated resistance value R^ and the estimated bus voltage value Vdc^.
[0035] The gain calculation unit 14, the estimation unit 15, and the temperature estimation unit 16 estimate the bus voltage estimate Vdc^ and use this to calculate the resistance estimate R^, thereby improving the accuracy of estimating the resistance value. This makes it possible to accurately determine the resistance value of the motor 1, and thereby to grasp the temperature of the motor 1 with high accuracy.
[0036] The principle of temperature estimation will be explained below. Figure 3 shows a model of the current control loop focusing on the d-axis in Figure 1 when motor 1 is stopped. When motor 1 is stopped, the d-axis and q-axis of motor 1 can be considered independently, and motor 1, which is the object of control, exhibits first-order lag characteristics determined by inductance L and electrical resistance value R. Here, ωc is the control band of the current control, L' is the design value of the inductance set for a P gain of 5, and R' is the design value of the resistance set for an I gain of 6. Using Figure 3 to determine the open-loop characteristic Gop(s) of d-axis current control, we obtain equation (1).
number
[0037] Here, when L'=L, R'=R, and Vdc*=Vdc, that is, when considering an ideal situation where there is no error between the parameter setting values of the control system and the actual parameters of the motor 1, the ideal open-loop characteristic Gop*(s) is expressed by the following equation (2).
number
[0038] The gain calculation unit 14 calculates a PI gain such that the loop characteristic of equation (1) becomes the ideal response of equation (2). p and I gain K I satisfies the relationships of the following equations (3) and (4).
number
number
[0039] The estimation unit 15 obtains the bus voltage by equation (5) derived from equation (3) above, and sets this as the bus voltage estimated value Vdc^.
number
[0040] Here, P gain Kp is the calculation result by gain calculation unit 14, Vdc* is the bus voltage design value, and ωc is the current control band, all of which can be treated as known quantities. Meanwhile, L indicates the true value of the inductance of motor 1, but since the inductance of motor 1 has little temperature dependency, it can be treated as a known quantity independent of temperature. This can be done by measuring it in advance using a measuring instrument such as an LCR meter. Therefore, the estimated bus voltage value Vdc^ can be obtained from the relationship in equation (5).
[0041] Next, the relationship (6) is derived from equations (4) and (5).
number
[0042] The estimation unit 15 can obtain the resistance estimate value R^ by equation (6). Here, since the actual value of the bus voltage Vdc supplied to the power conversion unit 12 is unknown, the calculation is performed using the bus voltage estimate value Vdc^, which is the estimation result of equation (5).
[0043] In this way, by finding a PI gain that matches the ideal response, the bus voltage and resistance value R can be found simultaneously. This makes it possible to estimate the resistance value of the motor 1 with high accuracy even when the bus voltage is unknown, i.e., when the voltage command value Vd* and the actual voltage value Vd do not match, or when the voltage is not measured. The estimated resistance value R^ found here is the resistance value of each phase coil of the motor 1 converted to the d-axis. This is the average value of the U-, V-, and W-phase coil resistance values. Therefore, what can be found using equation (6) is an estimate of the average resistance value of the U-, V-, and W-phase coils.
[0044] If the resistance value is known, the temperature of the coil of the electric motor 1 can be calculated using a temperature mathematical model that shows the relationship between resistance and coil temperature. The commonly known relational equation of the temperature mathematical model that shows the relationship between resistance and temperature is equation (7).
number
[0045] where R T is the resistance value at temperature T, and R0 is the resistance value at temperature T0. The resistance value R0 at temperature T0 is measured in advance. Transforming equation (7) gives the resistance value R T By using the estimated resistance value R^ as the resistance, the temperature estimation unit 16 can obtain the temperature T of the coil of the electric motor 1 at that time. As described above, the resistance value is obtained by the average value of the U-, V-, and W-phase coils, and therefore the temperature in equation (7) indicates the average value of the temperatures of the U-, V-, and W-phase coils.
[0046] The method for calculating the temperature from the resistance value is not limited to equation (7). The relational equation for calculating the temperature from the resistance may be any other relational equation, such as an experimentally derived equation.
[0047] 4 is a flowchart showing the temperature estimation operation executed by the control device according to this embodiment. The temperature estimation operation will be described below with reference to FIG.
[0048] In the control operation of Fig. 4, first, in step S001, it is determined whether or not the electric motor 1 is stopped. This determination is made by the state detection unit 17. If it is determined in step S001 that the electric motor 1 is not stopped, the temperature estimation is not performed and the current processing ends.
[0049] On the other hand, if the state detection unit 17 determines in step S001 that the electric motor 1 is stopped, then in step S002, the d-axis current command unit 3 generates a test current command value Id*. After the test current command value Id* is generated, then in step S003, the gain calculation unit 14 calculates a PI gain that makes the current control loop have an ideal response. After the calculation of the PI gain is completed, then in step S004, the estimation unit 15 calculates a bus voltage estimate value Vdc^ and a resistance estimate value R^. After the calculation of the bus voltage and resistance value is completed, then in step S005, the temperature estimation unit 16 estimates the coil temperature of the electric motor 1. Then, the current processing ends.
[0050] As described above, according to the control device of the electric motor 1 of this embodiment, while the electric motor 1 is stopped, a test current command value Id* is generated on the d-axis that is unrelated to the torque of the electric motor 1, thereby making it possible to estimate the temperature without operating the electric motor 1.
[0051] Note that various methods can be used for the gain calculation unit 14 as long as they can calculate the P gain and I gain such that the characteristic from the current command value Id* to the actual current value Id becomes an ideal response. An example of the configuration of the gain calculation unit 14 will be described below.
[0052] Fig. 5 is a block diagram showing a first example of the configuration of a gain calculation unit. Gain calculation unit 14A in Fig. 5 stores data on the voltage command value Vd* and the actual current value Id, and calculates the PI gain by processing the stored data offline. One method of gain adjustment is called data-driven control, and gain calculation unit 14A in Fig. 5 uses this method to adjust the gain. In data-driven control, the gain can be adjusted by performing optimization calculations using input and output data.
[0053] Specifically, the gain calculation unit 14A of the first configuration example includes a data storage unit 141, a data processing unit 142, and an optimization calculation unit 143.
[0054] The data storage unit 141 of the gain calculation unit 14A stores the d-axis actual current value Id, i.e., output data, and the d-axis voltage command value Vd*, i.e., input data, for multiple sampling periods. The length of time for storage is, for example, the time during which the d-axis current command unit 3 generates the test current command value Id*. Furthermore, the sampling for storing the data must be appropriately set according to the period of the test current command value Id* and the control band to be adjusted. The input data stored at this time is designated u0, and the output data is designated y0. These data are sent to the data processing unit 142.
[0055] The data processing unit 142 performs filtering. This filtering cuts out high-frequency noise that is not necessary for adjusting the PI gain and cuts out low-frequency offsets, and uses information on the ideal response. Filtering in the data processing unit 142 improves the adjustment accuracy of the PI gain. The filtered signal is sent to the optimization calculator 143.
[0056] The optimization method of the optimization calculator 143 is not limited, but the least squares method may be used simply. The gain calculation unit 14A in FIG. 5 uses the lumped least squares method because it stores and calculates data. The optimization calculator 143 can use various methods, and methods other than the lumped least squares method may be used as long as they can perform offline optimization calculations. This series of operations makes it possible to find the PI gain that will make the response from the current command value Id* to the actual current value Id match the ideal response.
[0057] Fig. 6 is a block diagram showing a second exemplary configuration of a gain calculation unit. The gain calculation unit 14B in Fig. 6 includes a data processing unit 144 and an optimization calculator 145. The data processing unit 144 receives the d-axis actual current value Id, i.e., output data, and the d-axis voltage command value Vd*, i.e., input data. The data processing unit 144 filters the input actual current value Id and voltage command value Vd* online. The effect of the filtering process by the data processing unit 144 is the same as the filtering process by the data processing unit 142 described above. The filtered signal is sent to the optimization calculator 145.
[0058] The optimization method used by the optimization calculator 145 is not limited, but the least squares method may be used simply. In the gain calculator 14B of FIG. 6, since the calculation is performed online without saving data, the recursive least squares method, for example, is used. Note that the optimization calculator 145 can use various methods, and a method other than the recursive least squares method may be used as long as the optimization calculation can be performed online. Through this series of operations, it is possible to find the PI gain that makes the response from the current command value Id* to the actual current value Id match the ideal response.
[0059] Fig. 7 is a diagram showing a third example of the configuration of a gain calculation unit. While the method using data-driven control has been described in Fig. 5 and Fig. 6, gain calculation unit 14C in Fig. 7 shows a method using an arbitrary optimization algorithm. As shown in Fig. 7, gain calculation unit 14C includes an optimization calculator 146.
[0060] The optimization calculator 146 receives the d-axis voltage command value Vd* and the actual current value Id as input, and calculates, using an optimization algorithm, P gain and I gain that make the characteristic from the current command value Id* to the actual current value Id an ideal response. The optimization algorithm can be realized by various methods such as PSO (Particle Swarm Optimization) and CMAES (Covariance Matrix Adaptation Evolution Strategy). Note that these optimization algorithms may also be used in the optimization calculator 143 in FIG. 5 and the optimization calculator 145 in FIG. 6.
[0061] In the following description, when there is no need to particularly distinguish between the gain calculation units 14A to 14C, they will simply be referred to as "gain calculation unit 14."
[0062] The P gain and I gain calculated by the gain calculation unit 14 are used to make the characteristics from the current command value Id* to the actual current value Id into an ideal response, so the P gain 5 and I gain 6 of the d-axis current control unit 4 may be rewritten using the calculation results of the gain calculation unit 14. This makes it possible to control the current with an optimal gain for the situation in which the PI gain was calculated, that is, the temperature and bus voltage of the motor 1 when the gain was calculated.
[0063] In addition, in this embodiment, a gain calculation method focusing on the d-axis current control loop has been described. This method determines the bus voltage of the power conversion unit 12 and the resistance value of the electric motor 1, which are values that do not depend on the d-axis and q-axis of the electric motor 1. Therefore, the calculation result of the gain calculation unit 14 may be used to update the control gain of the q-axis current control unit 8. Furthermore, the calculation result of the gain calculation unit 14 may be used for other control gains.
[0064] In addition, in this embodiment, the case has been described in which the estimation unit 15 calculates the resistance estimated value R^ using the bus voltage estimated value Vdc^, and estimates the coil temperature T based on this. However, this embodiment is not limited to this, and the estimation unit 15 may be configured to estimate the resistance value R without using the bus voltage estimated value Vdc^, and correct the resistance value R estimated by the temperature estimation unit 16 with a correction value according to the bus voltage estimated value Vdc^.
[0065] Specifically, for example, the estimation unit 15 calculates the resistance value R based on the relationship I gain = ωc × R. Then, the temperature estimation unit 16 may be configured to calculate a corrected resistance value by multiplying the calculated resistance value R by a correction coefficient defined as the ratio (Vdc^ / Vdc*) of the estimated bus voltage value Vdc^ to the set bus voltage value Vdc*. This makes it possible to reduce the error included in the estimated resistance value even when the bus voltage Vdc supplied to the power conversion unit 12 varies from the set bus voltage value Vdc*, causing a difference between the command voltage and the actual voltage.
[0066] Embodiment 2 Fig. 8 is a schematic diagram showing the configuration of a control device for an elevator door device and its peripheral devices according to embodiment 2. In embodiment 2, the control device of embodiment 1 is applied to an electric motor 1 used in an elevator door device, and performs temperature estimation of the electric motor 1. The same parts as those in embodiment 1 are given the same reference numerals, and the description thereof will be simplified or omitted.
[0067] Door 18 is an elevator car door. Motor 1 drives door 18 to open and close it. Motor 1 is equipped with a rotation sensor 2. Rotation sensor 2 may be configured to detect the position of door 18 based on the rotation position θ of motor 1. Information on the position of door 18 detected by rotation sensor 2 is used to determine, for example, the acceleration position and deceleration position of door 18.
[0068] The state detection unit 17 detects the state of the motor 1 or the door 18 and outputs a gain calculation command. The state of the motor 1 detected by the state detection unit 17 may include, for example, a rotating state, a stopped state, and other states. The rotating state indicates that the motor 1 is not stopped, but is rotating at a speed greater than 0, or is being rotated by the load of the motor 1. The stopped state is a state in which the motor 1 is completely stopped with a speed of 0. The stopped state may also be a state in which the motor 1 is mechanically stopped by a brake that stops the rotation of the motor 1 or by the load of the motor 1.
[0069] Furthermore, the state of the door 18 detected by the state detection unit 17 may include, for example, a fully open state, a fully closed state, an operating state, and other states. The operating state may include an opening operation state and a closing operation state. The opening operation state is a state in which the door 18 is moving in an opening direction. For example, the period from when the door 18 in a fully closed state starts to open until it reaches the fully open state is the opening operation state. The closing operation state is a state in which the door 18 is moving in a closing direction. For example, the period from when the door 18 in a fully open state starts to close until it reaches the fully closed state is the closing operation state. The state detection unit 17 may detect the state of the door 18 in any manner. For example, the state detection unit 17 detects the state based on the rotation position θ detected by the rotation sensor 2. The state detection unit 17 may also perform state detection using a sensor attached at the fully closed position and a sensor attached at the fully open position.
[0070] The d-axis current command unit 3 calculates and outputs a d-axis current command value Id* of the electric motor 1. The d-axis current of the electric motor 1 is a current value that does not contribute to, or contributes little to, the rotational torque. Typically, the d-axis current command unit 3 sets the current command value Id* to 0 when performing control to open the door 18, control to close the door 18, control to maintain the door 18 in a fully open state, and control to maintain the door 18 in a fully closed state. Note that when operating the electric motor 1 in a specific operating range of high speed and high torque to open or close the door 18, the current command value Id* may be set to a value other than 0 in order to perform flux-weakening control.
[0071] Here, the operation of the d-axis current command unit 3 when performing temperature estimation of the electric motor 1 of the door device will be described. Normally, the current command value Id* is set to 0 in the fully open or fully closed state, but when performing temperature estimation of the electric motor 1, the current command value Id* is set to a value other than 0. Specifically, the test current command value Id* is generated as a pulse wave, triangular wave, sawtooth wave, sweep sine, M-sequence signal, or the like. The test current command value Id* is generated so as to include a sufficient number of frequency components required when the gain calculation unit 14 adjusts the gain.
[0072] Whether or not to generate the test current command value Id* is determined based on the detection signal of the state detection unit 17. Specifically, when the state detection unit 17 determines that the door 18 is in a fully open state or a fully closed state, the d-axis current command unit 3 generates the test current command value Id* for gain adjustment.
[0073] The q-axis current control unit 8 controls the q-axis current flowing through the electric motor 1, and for example, controls the q-axis current by PI control, similar to the d-axis current control unit 4. The q-axis current control unit 8 is not limited to PI control and can be realized by any control such as PID control. Since the operation of the door 18 requires position control and speed control of the door, the q-axis current control unit 8 in the second embodiment is assumed to include position control and speed control of the door 18.
[0074] 9 is a flowchart for explaining the control operation of temperature estimation when the door is open. In the control operation of FIG. 9, first, in step S101, it is determined whether or not the door 18 has started to open. This determination is made using, for example, a signal from the rotation sensor 2 or a position sensor attached to the door device. If the door 18 has not started to open, the current processing ends.
[0075] When the door-opening operation is performed and it is determined in step S101 that the door opening has started, it is then determined in step S102 whether the door 18 is fully open. If the door 18 is not fully open, the door-opening operation continues, and the process returns to step S102, where it is repeatedly determined at predetermined control intervals whether the door 18 is fully open. In elevator service, this is the operation performed when passengers get on and off.
[0076] When the door 18 is in a fully open state and is determined to be fully open in step S102, the d-axis current command unit 3 then generates a test current command value Id* in step S103. This process is performed while the door 18 is fully open, for example, while passengers are getting on and off the elevator.
[0077] Once the test current command value Id* is generated, the gain calculation unit 14 adjusts the PI gain in step S104. After the calculation of the PI gain is completed, the estimation unit 15 calculates the bus voltage estimated value Vdc^ and the resistance estimated value R^ in step S105. After the calculation of the bus voltage and resistance values is completed, the temperature estimation unit 16 estimates the coil temperature T of the motor 1 in step S106. Then, the current processing ends.
[0078] In this way, by generating a test current command value Id* on the d-axis that is unrelated to the torque of the electric motor 1 while the door 18 is fully open and stopped, the temperature can be estimated without operating the electric motor 1, i.e., without operating the door 18.
[0079] Fig. 10 is a flowchart showing an example of the operation of estimating temperature when the door is closed. In the example shown in Fig. 10, first, in step S201, it is determined whether or not the door 18 has started closing. This determination is made using, for example, a signal from the rotation sensor 2 or a position sensor attached to the door device. If it is determined in step S201 that the door has not started closing, the current processing ends.
[0080] If it is determined in step S201 that the doors have started to close, it is then determined in step S202 whether the doors 18 are fully closed. If it is determined in step S202 that the doors are not fully closed, the process returns to step S202, the door closing operation continues, and it is repeatedly determined at predetermined control intervals whether the doors 18 are fully closed. In elevator service, this is an operation that is performed after passengers have boarded and disembarked and before the elevator starts moving.
[0081] When the door 18 is in a fully closed state and it is determined in step S202 that the door 18 is fully closed, it is then determined in step S203 whether the elevator is running. If there are no passengers in the elevator or if there are no calls from any floor, the elevator is not running, and the determination in step S203 is "NO." At this time, the door 18 does not operate, and the electric motor 1 is in a stopped state, so temperature estimation is not necessary. Therefore, if the determination result in step S203 is "NO," the current process ends. However, it is also possible to perform temperature estimation of the electric motor 1 even when the elevator is stopped without performing the determination in step S203.
[0082] If the determination result in step S203 is "YES", that is, if it is determined that the elevator is traveling, then in step S204, the d-axis current command unit 3 generates a test current command value Id*. This process is executed while the elevator is traveling.
[0083] After the test current command value Id* is generated, the gain calculation unit 14 adjusts the PI gain in step S205. After the calculation of the PI gain is completed, the estimation unit 15 calculates the bus voltage estimated value Vdc^ and the resistance estimated value R^ in step S206. After the calculation of the bus voltage and resistance values is completed, the temperature estimation unit 16 estimates the coil temperature T of the motor 1 in step S207. Then, the current processing ends.
[0084] As described above, in this embodiment, when the elevator door 18 is not being opened or closed while the elevator is in service, the test current command value Id* is generated on the d-axis, which is unrelated to the torque of the electric motor 1. This makes it possible to estimate the resistance value and the coil temperature without operating the electric motor 1, i.e., without operating the door 18. This makes it possible to estimate the temperature of the electric motor 1 without causing discomfort to elevator passengers.
[0085] Embodiment 3 In the third embodiment, the control device for the motor 1 of the first embodiment is applied to the motor 1 of an elevator hoisting machine, and a case will be described in which the temperature of the motor 1 is estimated. FIG. 11 is a schematic diagram showing the overall configuration of a system including an elevator and a control device of the third embodiment. In the example shown in the third embodiment, the motor 1 functions as the motor of the elevator hoisting machine, and the control device estimates the temperature of the motor 1. The same parts as those in the first and second embodiments are given the same reference numerals, and their explanations will be simplified or omitted.
[0086] The elevator car 19 moves up and down due to the rotation of the electric motor 1, and moves to the destination floor. The electric motor 1 raises and lowers the car 19 via a sheave and rope. A brake 20 is installed on the sheave 21, and braking by the brake 20 is released while the elevator is running, and when it arrives at a floor, the brake 20 brakes the sheave 21 to maintain a stopped state. The electric motor 1, rotation sensor 2, sheave 21, and brake 20 are sometimes collectively called the hoisting machine.
[0087] The state detection unit 17 detects the state of the electric motor 1 or the brake 20 and outputs a gain calculation command. The state of the electric motor 1 detected by the state detection unit 17 can include, for example, a rotating state, a stopped state, and other states. The rotating state indicates that the electric motor 1 is not stopped, but is rotating at a speed greater than 0. The stopped state is a state in which the electric motor 1 is completely stopped with a speed of 0. The stopped state may also be a state in which the electric motor 1 is mechanically stopped by a brake that stops the rotation of the electric motor 1, or by a load on the electric motor.
[0088] The state of the brake 20 detected by the state detection unit 17 may include, for example, a braking state, a released state, and other states. The braking state includes a state in which the motor 1 is braked by the brake 20 via the sheave 21 when the elevator car 19 has arrived at the destination floor or when the elevator is not moving. The released state is a state in which the elevator is moving.
[0089] Any method may be used for detecting the state by the state detection unit 17. As an example, the state detection unit 17 detects the state based on the rotational position θ detected by the rotation sensor 2. The state detection unit 17 may also detect the braking or stop state using a sensor that detects the position of the brake 20.
[0090] The d-axis current command unit 3 calculates and outputs the d-axis current command value Id* of the electric motor 1. The d-axis current of the electric motor 1 is a current value that does not contribute, or contributes very little, to the rotational torque. Normally, the d-axis current command unit 3 sets the current command value Id* to 0 while the elevator is running. On the other hand, when the weight of the passengers and the weight of the counterweight are balanced and there is a margin of torque, the elevator increases its running speed. At this time, the current command value Id* may be set to a value other than 0 in order to perform flux-weakening control.
[0091] Here, the operation of the d-axis current command unit 3 when performing temperature estimation of the elevator motor 1 will be described. Normally, when the elevator is running, the current command value Id* is set to 0 or a value based on flux-weakening control, but when performing temperature estimation of the motor 1, the current command value Id* is set to a value other than 0. Specifically, a test current command value Id* such as a pulse wave, triangular wave, sawtooth wave, sweep sine, or M-sequence signal is generated. The test current command value Id* is generated so as to include a sufficient number of frequency components required when the gain calculation unit 14 adjusts the gain.
[0092] Whether or not to generate the test current command value Id* is determined based on the detection signal of the state detection unit 17. Specifically, when the state detection unit 17 determines that the elevator is in a stopped state, it generates the test current command value Id* for gain adjustment.
[0093] The q-axis current control unit 8 controls the q-axis current flowing through the motor 1, and for example, controls the q-axis current by PI control, similar to the d-axis current control unit 4. Furthermore, the q-axis current control unit 8 is not limited to PI control and can be realized by any control such as PID control. Since the operation of the elevator requires position control and speed control of the car 19, the q-axis current control unit 8 in the third embodiment is assumed to include position control and speed control.
[0094] Next, a control operation for estimating the temperature of the electric motor of the elevator hoisting machine will be described. Fig. 12 is a flowchart showing an example of a control operation for estimating the temperature of the electric motor of the elevator hoisting machine according to this embodiment.
[0095] In Fig. 12, first, in step S301, it is determined whether the elevator is stopped. This determination is made by the state detection unit 17. That is, it is determined whether the electric motor 1 is stopped or whether the brake 20 is in a braking state. If it is determined in step S301 that the elevator is not stopped, the temperature estimation is not performed and the current processing ends.
[0096] On the other hand, if it is determined in step S301 that the elevator is stopped, then in step S302, the d-axis current command unit 3 generates a test current command value Id*. After the test current command value Id* is generated, the gain calculation unit 14 then calculates a PI gain that makes the current control loop have an ideal response in step S303. After the calculation of the PI gain is completed, the estimation unit 15 calculates the bus voltage estimated value Vdc^ and the resistance estimated value R^ in step S304. After the calculation of the bus voltage and resistance values is completed, the temperature estimation unit 16 estimates the temperature T of the coil of the electric motor 1 in step S305.
[0097] As described above, according to this embodiment, when the elevator is in service and stopped, the d-axis current command unit 3 generates the test current command value Id* on the d-axis that is unrelated to the torque of the electric motor 1. This makes it possible to estimate the resistance value and temperature without operating the electric motor 1. Therefore, it is possible to estimate the temperature without operating the electric motor 1.
[0098] Although the preferred embodiments have been described in detail above, the present invention is not limited to the above-described embodiments, and various modifications and substitutions can be made to the above-described embodiments without departing from the scope of the claims.
[0099] Various aspects of the present disclosure are summarized below as appendices. (Appendix 1) a voltage command unit that generates a voltage command value by PI control so that the value of a current flowing through the electric motor follows the current command value; a gain calculation unit that calculates a PI gain of the PI control so that a response from the current command value to a current value flowing through the electric motor coincides with an ideal response; an estimation unit that estimates a bus voltage value supplied to an inverter for driving the electric motor using the PI gain, and estimates an electrical resistance value of the electric motor using the PI gain and the bus voltage value; a temperature estimation unit that estimates a temperature of a coil of the electric motor using the electrical resistance value estimated by the estimation unit; A control device for an electric motor comprising: (Appendix 2) a state detection unit that detects a state of the electric motor; a current command unit that generates the current command value, the current command unit generates a test current command value for estimating a temperature of the coil when the state detection unit detects that the electric motor is in a stopped state; the voltage command unit generates the voltage command value based on the test current command value; The gain calculation unit calculates the PI gain using the voltage command value, a current value flowing through the electric motor, and information on the ideal response. A control device for an electric motor as set forth in Appendix 1. (Appendix 3) The estimation unit estimating the bus voltage value using a P gain of the PI gain calculated by the gain calculation unit; an I gain of the PI gain and the estimated bus voltage value are used to estimate an electrical resistance value of the motor; 3. A control device for an electric motor according to claim 1 or 2. (Appendix 4) the temperature estimation unit estimates the temperature of the coil based on a temperature mathematical model that indicates a relationship between the electrical resistance value of the electric motor and a temperature of the coil; 4. A control device for an electric motor according to any one of appendices 1 to 3. (Appendix 5) The gain calculation unit calculates a PI gain using data-driven control. 5. A control device for an electric motor according to any one of appendices 1 to 4. (Appendix 6) The ideal response is a closed-loop characteristic when the inductance and electrical resistance values of the motor match the inductance and resistance values set in the voltage command unit. A motor control device according to any one of appendices 1 to 5. (Appendix 7) The electric motor is an electric motor for opening and closing elevator doors. 7. A control device for an electric motor according to any one of appendices 1 to 6. (Appendix 8) The electric motor is an electric motor that drives an elevator hoist. 8. A control device for an electric motor according to any one of appendices 1 to 7.
[0100] In the above embodiments, when the number, quantity, amount, range, etc. of each element is mentioned, the control device of this disclosure is not limited to the mentioned number unless it is specifically stated or clearly specified in principle. Furthermore, the structures, etc. described in this embodiment are not necessarily essential unless it is specifically stated or clearly specified in principle. [Explanation of symbols]
[0101] REFERENCE SIGNS LIST 1 electric motor, 2 rotation sensor, 3 d-axis current command unit, 4 d-axis current control unit, 5 P gain, 6 I gain, 7 integrator, 8 q-axis current control unit, 9, 10 coordinate converter, 11 duty calculation unit, 12 power conversion unit, 13 current sensor, 14, 14A, 14B, 14C gain calculation unit, 141 data storage unit, 142, 144 data processing unit, 143, 145, 146 optimization calculation unit, 15 estimation unit, 16 temperature estimation unit, 17 state detection unit, 18 door, 20 brake, 21 sheave
Claims
1. a voltage command unit that generates a voltage command value by PI control so that a current value flowing through the electric motor follows a current command value; a gain calculation unit that calculates a PI gain of the PI control so that a response from the current command value to a current value flowing through the electric motor coincides with an ideal response; an estimation unit that estimates a bus voltage value supplied to an inverter for driving the electric motor using the PI gain, and estimates an electrical resistance value of the electric motor using the PI gain and the bus voltage value; a temperature estimation unit that estimates a temperature of a coil of the electric motor using the electrical resistance value estimated by the estimation unit; A control device for an electric motor comprising:
2. a state detection unit that detects a state of the electric motor; a current command unit that generates the current command value, the current command unit generates a test current command value for estimating a temperature of the coil when the state detection unit detects that the electric motor is in a stopped state; the voltage command unit generates the voltage command value based on the test current command value; The gain calculation unit calculates the PI gain using the voltage command value, a current value flowing through the electric motor, and information on the ideal response. The motor control device according to claim 1.
3. The estimation unit estimating the bus voltage value using a P gain of the PI gain calculated by the gain calculation unit; an I gain of the PI gain and the estimated bus voltage value are used to estimate an electrical resistance value of the motor; The motor control device according to claim 1 or 2.
4. the temperature estimation unit estimates the temperature of the coil based on a temperature mathematical model that indicates a relationship between the electrical resistance value of the electric motor and a temperature of the coil; The motor control device according to claim 1 or 2.
5. The gain calculation unit calculates a PI gain using data-driven control. The motor control device according to claim 1 or 2.
6. The ideal response is a closed-loop characteristic when the inductance and electrical resistance values of the motor match the inductance and resistance values set in the voltage command unit.
3. A motor control device according to claim 1 or 2.
7. The electric motor is an electric motor for opening and closing elevator doors. The motor control device according to claim 1 or 2.
8. The electric motor is an electric motor that drives an elevator hoist. The motor control device according to claim 1 or 2.
Citation Information
Patent Citations
Control device for elevator
JP2006290507A