WO2020100234A1 - Motor control device, actuator device, and motor control method - Google Patents
Motor control device, actuator device, and motor control method Download PDFInfo
- Publication number
- WO2020100234A1 WO2020100234A1 PCT/JP2018/042146 JP2018042146W WO2020100234A1 WO 2020100234 A1 WO2020100234 A1 WO 2020100234A1 JP 2018042146 W JP2018042146 W JP 2018042146W WO 2020100234 A1 WO2020100234 A1 WO 2020100234A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- calculation unit
- motor
- voltage
- command
- control device
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02P—CONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
- H02P21/00—Arrangements or methods for the control of electric machines by vector control, e.g. by control of field orientation
- H02P21/06—Rotor flux based control involving the use of rotor position or rotor speed sensors
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02P—CONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
- H02P6/00—Arrangements for controlling synchronous motors or other dynamo-electric motors using electronic commutation dependent on the rotor position; Electronic commutators therefor
- H02P6/14—Electronic commutators
- H02P6/16—Circuit arrangements for detecting position
Definitions
- the present invention relates to a motor control device, an actuator device, and a motor control method.
- valve devices such as an EGR (Exhaust Gas Recirculation) valve, a wastegate valve, and a VVT (Variable Valve Timing) are mounted on a vehicle.
- An electric actuator device is used to control the opening degree of these valve devices, and a brushless DC (Direct Current) motor is used for this actuator device.
- the control method of the drive current of the brushless DC motor includes so-called “120-degree rectangular wave energization control" and "vector control".
- Patent Document 1 discloses a technique of controlling the drive current of a brushless DC motor by vector control that does not require a current sensor, that is, vector control of a current sensorless system.
- Patent Document 1 uses a so-called “observer” to estimate the current in the brushless DC motor, more specifically, the current in the q-axis. This eliminates the need for a current sensor.
- the poles of the observer are placed on the left half plane of the complex plane. Further, from the viewpoint of improving the responsiveness of the estimation by the observer, it is preferable to arrange the observer poles at a position far from the origin on the complex plane. That is, from the viewpoint of improving the accuracy of estimation by the observer, it is preferable to arrange the observer pole at a position far from the origin on the left half plane of the complex plane.
- the estimation by the observer is restricted by the control period based on the so-called “sampling theorem”. Therefore, from the viewpoint of improving the reproducibility in the estimation by the observer, that is, the accuracy of the estimation by the observer, it is preferable to shorten the control cycle of the control device including the observer.
- the estimation by the observer (observer 1) in the technique described in Patent Document 1 uses the measured value of the angular velocity of the rotor in the brushless DC motor (synchronous electric motor 11). Therefore, even when the resolution of the sensor (speed detection unit 14) that detects the angular velocity is low, the same problem as described above occurs. That is, there is a problem in that the accuracy of estimation by the observer (observer 1) decreases, and thus the accuracy of control by the control device (current control unit 7) including the observer (observer 1) decreases.
- the present invention has been made to solve the above problems, and when controlling the drive current of a brushless DC motor by vector control of a current sensorless system, the accuracy of the control is performed by using a low-resolution position sensor.
- the purpose is to improve.
- a motor control device of the present invention is a motor control device for controlling a drive current for a brushless DC motor having a rotor position sensor by vector control of a current sensorless system, and uses a position pulse signal corresponding to the output of the position sensor.
- Rotation status calculation unit that calculates the rotor position and rotor speed, and a plurality of correction positions are sequentially calculated by temporally interpolating the value of the electrical angle based on the speed, and brushless based on each correction position.
- a voltage command calculator that generates a three-phase voltage command for the drive circuit for the DC motor.
- the present invention since it is configured as described above, when controlling the drive current of the brushless DC motor by the vector control of the current sensorless system, it is possible to improve the accuracy of the control by using the low-resolution position sensor. it can.
- FIG. 3 is a block diagram showing a main part of an actuator device including the motor control device according to the first embodiment.
- FIG. 3 is a block diagram showing a main part of a rotation state calculation unit in the motor control device according to the first embodiment.
- FIG. 3 is a block diagram showing a main part of a control command calculation unit in the motor control device according to the first embodiment.
- FIG. 3 is a block diagram showing a main part of a voltage command calculation unit in the motor control device according to the first embodiment. It is a timing chart which shows the example of a U-phase position pulse signal, a V-phase position pulse signal, a W-phase position pulse signal, and an update pulse signal.
- FIG. 8A is an explanatory diagram showing a hardware configuration of the motor control device according to the first embodiment.
- FIG. 8B is an explanatory diagram showing another hardware configuration of the motor control device according to the first embodiment.
- 5 is a flowchart showing an operation of a current command generation unit in the motor control device according to the first embodiment.
- 5 is a flowchart showing an operation of a control command generation unit in the motor control device according to the first embodiment.
- 5 is a flowchart showing an operation of a corrected position calculation unit in the motor control device according to the first embodiment.
- 5 is a flowchart showing an operation of a voltage command generation unit in the motor control device according to the first embodiment.
- 5 is a block diagram showing a main part of an actuator device including a motor control device according to a second embodiment.
- FIG. FIG. 6 is a block diagram showing a main part of a control command calculation unit in the motor control device according to the second embodiment.
- FIG. 7 is a flowchart showing an operation of a control command generation unit in the motor control device according to the second embodiment.
- 7 is a block diagram showing a main part of an actuator device including a motor control device according to a third embodiment.
- FIG. FIG. 11 is a block diagram showing a main part of a control command calculation unit in the motor control device according to the third embodiment.
- 9 is a flowchart showing an operation of a control command generation unit in the motor control device according to the third embodiment.
- FIG. 11 is a block diagram showing a main part of another actuator device including the motor control device according to the third embodiment.
- FIG. 11 is a block diagram showing a main part of another actuator device including the motor control device according to the third embodiment.
- FIG. 4 is a block diagram showing a main part of an actuator device including a motor control device according to Reference Example 1.
- FIG. 6 is a block diagram showing a main part of a rotation state calculation unit in the motor control device according to Reference Example 1.
- FIG. 6 is a block diagram showing a main part of a control command calculation unit in the motor control device according to Reference Example 1.
- FIG. 6 is a block diagram showing a main part of a voltage command calculation unit in the motor control device according to Reference Example 1.
- FIG. 1 is a block diagram showing a main part of an actuator device including a motor control device according to the first embodiment.
- FIG. 2 is a block diagram showing a main part of the rotation state calculation unit in the motor control device according to the first embodiment.
- FIG. 3 is a block diagram showing a main part of a control command calculation unit in the motor control device according to the first embodiment.
- FIG. 4 is a block diagram showing a main part of the voltage command calculation unit in the motor control device according to the first embodiment.
- the motor control device 100 and the actuator device 200 according to the first embodiment will be described with reference to FIGS. 1 to 4.
- the valve device 1 is a valve device.
- the valve device 1 is composed of, for example, an EGR valve, a waste gate valve or a VVT.
- the valve device 1 has a biasing member (not shown) such as a return spring.
- the valve device 1 is configured to be held at a predetermined opening by the biasing torque of the biasing member when the driving torque of the actuator device 200 is not supplied. More specifically, the valve opening state, the valve closing state, or the intermediate state between the valve opening state and the valve closing state is maintained.
- the actuator device 200 controls the opening degree of the valve device 1 by supplying a drive torque to the valve device 1.
- the brushless DC motor 2 has a rotor (not shown) and a stator (not shown).
- the stator includes a winding corresponding to the U phase (hereinafter referred to as “U phase winding”), a winding corresponding to the V phase (hereinafter referred to as “V phase winding”), and a winding corresponding to the W phase (hereinafter referred to as “w”). "W-phase winding”).
- the drive circuit 3 supplies a drive current to each of the U-phase winding, the V-phase winding, and the W-phase winding to generate a drive torque for the valve device 1.
- the U-phase winding, the V-phase winding, and the W-phase winding may be collectively referred to as “three-phase winding” or “armature winding”.
- the drive circuit 3 is composed of a so-called "inverter". That is, the drive circuit 3 has a switching element corresponding to the U phase, a switching element corresponding to the V phase, and a switching element corresponding to the W phase.
- the switching element corresponding to each phase is composed of a so-called "power semiconductor”.
- the drive circuit 3 supplies a drive current to the three-phase winding by switching on / off of the switching element corresponding to each phase in time.
- the drive circuit 3 is configured to supply a current according to a voltage command (hereinafter, referred to as “U-phase voltage command”) v u * corresponding to the U-phase to the U-phase winding. Further, the drive circuit 3 is configured to supply a current according to a voltage command (hereinafter, referred to as “V phase voltage command”) v v * corresponding to the V phase to the V phase winding. Further, the drive circuit 3 is configured to supply a current according to a voltage command corresponding to the W phase (hereinafter referred to as “W phase voltage command”) v w * to the W phase winding.
- U-phase voltage command v u * corresponding to the U-phase to the U-phase winding.
- V phase voltage command v v * corresponding to the V phase to the V phase winding.
- W phase voltage command v w * to the W phase winding.
- the U-phase voltage command v u * , the V-phase voltage command v v *, and the W-phase voltage command v w * may be collectively referred to as “three-phase voltage command”.
- the three-phase voltage commands v u * , v v * , v w * are voltage commands for realizing, for example, so-called “maximum torque control”.
- the brushless DC motor 2 has a rotor position sensor 4.
- the position sensor 4 includes, for example, a Hall IC (Integrated Circuit) corresponding to the U phase, a Hall IC corresponding to the V phase, and a Hall IC corresponding to the W phase.
- the Hall IC corresponding to each phase outputs a continuous pulse signal (hereinafter referred to as "position pulse signal") according to the rotation of the rotor.
- the position pulse signal corresponding to the U phase may be referred to as “U phase position pulse signal”
- the position pulse signal corresponding to the V phase may be referred to as “V phase position pulse signal”
- the position corresponding to the W phase The pulse signal may be referred to as a "W-phase position pulse signal”.
- individual pulses in the U-phase position pulse signal may be referred to as “U-phase position pulse”
- individual pulses in the V-phase position pulse signal may be referred to as “V-phase position pulse”
- W-phase position pulse signal Each pulse may be referred to as a "W-phase position pulse”.
- the U-phase position pulse, the V-phase position pulse, and the W-phase position pulse may be collectively referred to as "position pulse”.
- the position pulse signal corresponding to each phase is such that at least one pulse is output during one rotation of the rotor.
- the position pulse signal corresponding to each phase may be output every time the rotor rotates by a mechanical angle of 360 degrees, every time the rotor rotates by an electrical angle of 60 degrees, every time the rotor rotates by an electrical angle of 30 degrees, or One pulse is output each time is rotated by an electrical angle of 15 degrees. That is, the position sensor 4 has a lower resolution than a general position sensor (optical encoder, resolver, or the like) used for vector control.
- the edge detection unit 11 receives an input of a position pulse signal.
- the edge detection unit 11 detects each edge in the input position pulse signal. That is, the edge detector 11 detects each up edge in the U-phase position pulse signal, each up edge in the V-phase position pulse signal, and each up edge in the W-phase position pulse signal.
- the edge detector 11 detects individual down edges in the U-phase position pulse signal, individual down edges in the V-phase position pulse signal, and individual down edges in the W-phase position pulse signal.
- the edge detection unit 11 may include individual up edges and individual down edges in the U-phase position pulse signal, individual up edges and individual down edges in the V phase position pulse signal, and individual up edges in the W phase position pulse signal. Edges and individual down edges are detected.
- the edge detection unit 11 outputs a single pulse signal (hereinafter referred to as “update pulse signal”) in response to the detection of these edges. That is, each pulse in the update pulse signal corresponds to each edge in the position pulse signal.
- each pulse in the update pulse signal may be referred to as "update pulse”.
- FIG. 5 shows an example of the U-phase position pulse signal, the V-phase position pulse signal, the W-phase position pulse signal, and the update pulse signal.
- the output cycle of the position pulse corresponding to each phase is 360 electrical degrees
- the output cycle of the update pulse is 60 electrical degrees.
- the indefinite period position calculation unit 12 receives the input of the update pulse signal.
- the indefinite cycle position calculation unit 12 calculates the magnetic pole position (hereinafter, simply referred to as “position”) ⁇ e of the rotor every time the value of the input update pulse signal becomes 1.
- position the magnetic pole position (hereinafter, simply referred to as “position”)
- ⁇ e is an electrical angle
- ⁇ e is radian (rad).
- the indefinite period position calculation unit 12 stores in advance information indicating the absolute value
- the indefinite cycle position calculation unit 12 determines the rotation direction of the rotor based on the output order of the U-phase position pulse, the V-phase position pulse, and the W-phase position pulse.
- the indefinite period position calculating unit 12 adds or subtracts the value
- the position ⁇ e at the time of outputting the current update pulse is calculated.
- the indefinite cycle position calculation unit 12 holds the calculated position ⁇ e , that is, the position ⁇ e at the time of outputting the current update pulse for output until the position ⁇ e at the time of outputting the next update pulse is calculated. To do.
- the indefinite period speed calculation unit 13 receives the input of the update pulse signal.
- the indefinite cycle speed calculation unit 13 uncertains the calculated position ⁇ e each time the value of the input update pulse signal becomes 1, that is, every time the indefinite cycle position calculation unit 12 calculates the position ⁇ e . It is acquired from the periodic position calculation unit 12.
- the indefinite cycle speed calculation unit 13 calculates the rotor speed ⁇ e_ave every time the position ⁇ e is acquired.
- ⁇ e_ave is the average value of the electrical angular velocity ⁇ e in the section from the time of the output of the previous update pulse to the output of the current update pulse
- the unit of ⁇ e_ave is radian per second (rad / s).
- the indefinite cycle speed calculation unit 13 stores in advance information indicating the resolution ⁇ e — res of the position sensor 4.
- the indefinite cycle speed calculation unit 13 calculates the time T ⁇ e from the output of the previous update pulse to the output of the current update pulse.
- the indefinite cycle speed calculation unit 13 calculates the speed ⁇ e_ave by the following formula (1) based on the positive / negative of the change amount d ⁇ e in the section from the output of the previous update pulse to the output of the current update pulse. Note that sgn ( ⁇ ) in the equation (1) is a sign function.
- the indefinite period speed calculation unit 13 holds the calculated speed ⁇ e_ave , that is, the speed ⁇ e_ave at the time of outputting the current update pulse for output until the speed ⁇ e_ave at the time of outputting the next update pulse is calculated. To do.
- the output cycle of the update pulse fluctuates according to the rotation speed of the rotor. Therefore, the calculation processing of the position ⁇ e by the indefinite cycle position calculation unit 12 and the calculation processing of the speed ⁇ e_ave by the indefinite cycle speed calculation unit 13 are both executed in an indefinite cycle. Since the indefinite cycle position calculation unit 12 calculates the position ⁇ e in an indefinite cycle, detection leakage of the magnetic pole position of the rotor is less than that in the case where the indefinite cycle position calculation unit 12 calculates the position ⁇ e in a definite cycle. It is possible to suppress the occurrence.
- indefinite period speed calculating section 13 calculates the velocity omega E_ave indefinite period, if compared with the case where indefinite period speed calculating section 13 calculates the velocity omega E_ave to periodic, from the time the output of the previous update pulse It is possible to accurately calculate the average value of the electrical angular velocities ⁇ e , that is, the velocity ⁇ e_ave in the section until the output of the update pulse this time.
- the edge detection unit 11, the indefinite cycle position calculation unit 12, and the indefinite cycle speed calculation unit 13 constitute a rotation state calculation unit 10.
- the processing executed by the rotation state calculation unit 10 includes the processing executed in an indefinite cycle. Therefore, the control cycle of the rotation state calculation unit 10 is indefinite.
- the current command generation unit 21 acquires from the ECU 5 the position command ⁇ e_dir generated by a higher-order electronic control unit (hereinafter referred to as “ECU”) 5 for the motor control device 100. Further, the current command generation unit 21 acquires the position ⁇ e calculated by the indefinite period position calculation unit 12 from the indefinite period position calculation unit 12.
- ECU electronice control unit
- the current command generation unit 21 performs a so-called “classical control” on the basis of the acquired position command ⁇ e_dir and position ⁇ e , and a difference value of the position ⁇ e with respect to the position command ⁇ e_dir (hereinafter referred to as “position deviation”) ⁇ .
- position deviation a difference value of the position ⁇ e with respect to the position command ⁇ e_dir
- a current command for making e close to zero is generated. More specifically, the current command generation unit 21 generates a current command for the q-axis (hereinafter referred to as “q-axis current command”) i q * by PID (Proportional Integral Differential) control.
- the control command generation unit 22 acquires the q-axis current command i q * generated by the current command generation unit 21 from the current command generation unit 21. Further, the control command generation unit 22 acquires a current command for the d-axis (hereinafter referred to as “d-axis current command”) i d * from the current command generation unit 21. Further, the control command generation unit 22 acquires the position ⁇ e calculated by the indefinite period position calculation unit 12 from the indefinite period position calculation unit 12.
- the d-axis current command id * is set to a predetermined value.
- the d-axis current command id * is set to zero.
- the d-axis current command id * is not limited to a zero value, and may be a positive value or a negative value.
- the d-axis current command id * may be a fixed value or a variable value.
- the d-axis current command i d * and the q-axis current command i q * may be collectively referred to as “dq-axis current command”.
- Control command generating unit 22 the acquired dq axis current command i d *, based on i q * and the position theta e, the control command to the voltage command calculation unit 30 (hereinafter simply referred to as "control command”.) To produce a It is a thing.
- dq coordinate system the voltage equation of the brushless DC motor 2 in the coordinate system based on the d-axis and the q-axis
- v d * is a voltage command on the d-axis (hereinafter referred to as “d-axis voltage command”), and the unit of v d * is volt (V).
- v q * is a voltage command on the q-axis (hereinafter referred to as “q-axis voltage command”), and the unit of v q * is volt (V).
- the d-axis voltage command v d * and the q-axis voltage command v q * may be collectively referred to as “dq-axis voltage command”.
- i d * is a d-axis current command
- the unit of i d * is ampere (A)
- i q * is the q-axis current command
- i q * units are ampere (A).
- R a is the armature winding resistance, and the unit of R a is ohm ( ⁇ ).
- L d is the inductance on the d-axis (hereinafter referred to as “d-axis inductance”), and the unit of L d is Henry (H).
- L q is the inductance on the q-axis (hereinafter referred to as “q-axis inductance”), and the unit of L q is Henry (H).
- the d-axis inductance L d and the q-axis inductance L q may be collectively referred to as “dq-axis inductance”.
- the dq-axis inductances L d and L q have the same value.
- ⁇ e is an electrical angular velocity, and the unit of ⁇ e is radian per second (rad / s). Note that ⁇ e corresponds to the time differential value of ⁇ e .
- ⁇ is the number of flux linkages in the armature winding, and the unit of ⁇ is radians per volt (Vs / rad).
- the armature winding resistance R a , the d-axis inductance L d , the q-axis inductance L q, and the armature winding interlinkage magnetic flux number ⁇ are constants according to the specifications of the brushless DC motor 2.
- the armature winding resistance R a , the d-axis inductance L d , the q-axis inductance L q, and the armature winding interlinkage magnetic flux number ⁇ may be collectively referred to as a “motor constant”.
- the electrical angular velocity ⁇ e is calculated by the following equation (4).
- ⁇ e (n ⁇ 1) is the position ⁇ e previously acquired by the control command generation unit 22
- ⁇ e (n) is the position ⁇ e acquired this time by the control command generation unit 22. That is, n is a sample number related to the acquisition of the position ⁇ e by the control command generation unit 22.
- dT p is a control cycle of the control command calculation unit 20. That is, the control command calculator 20 has a predetermined control cycle dT p .
- the period dT p is set to 4 milliseconds (ms), for example.
- this cycle dT p may be referred to as “first cycle”.
- the control command generation unit 22 Based on the above contents, the control command generation unit 22 generates a control command as follows. That is, the control command generation unit 22 stores in advance information indicating the specifications of the brushless DC motor 2. The control command generator 22 sets the values of the motor constants R a , L d , L q , and ⁇ used in the calculation of the above equation (3) based on the specifications indicated by the stored information.
- control command generation unit 22 stores in advance information indicating the first cycle dT p . Based on the first cycle dT p indicated by the stored information, the position ⁇ e (n) acquired this time, and the position ⁇ e (n ⁇ 1) acquired last time, the control command generation unit 22 calculates the above formula ( The electric angular velocity ⁇ e is calculated according to 4). At this time, the control command generation unit 22 may calculate the electrical angular velocity ⁇ e using a so-called “pseudo differentiator”.
- control command generation unit 22 sets the set motor constants R a , L d , L q , ⁇ , the calculated electrical angular velocity ⁇ e, and the dq axis current commands i d * , i q * acquired this time .
- the dq axis voltage commands v d * , v q * are generated by the above equation (3).
- control command generator 22 calculates the voltage vector V r * in the dq coordinate system by the following equation (5) based on the generated dq axis voltage commands v d * , v q * . Further, the control command generation unit 22 calculates the voltage phase ⁇ dq in the dq coordinate system by the following formula (6) based on the generated dq axis voltage commands v d * , v q * .
- the voltage vector V r * and the voltage phase ⁇ dq corresponding to the dq-axis voltage commands v d * , v q * and the dq-axis voltage commands v d * , v q * are displayed in polar coordinates on the dq coordinate system.
- ⁇ indicates the electrical angle by ⁇ dq + ⁇ e .
- the control command generation unit 22 generates a control command including the magnitude of the calculated voltage vector V r * and the voltage phase ⁇ dq .
- the current command generator 21 and the control command generator 22 constitute a control command calculator 20.
- the control command calculator 20 has a predetermined control cycle dT p . That is, the current command generation unit 21 acquires the position command ⁇ e — dir and the position ⁇ e , the current command generation unit 21 generates the q-axis current command i q * , and the control command generation unit 22 controls the dq-axis current command i.
- the process of acquiring d * , i q * and the position ⁇ e , the process of generating the control command by the control command generation unit 22, and the like are executed every first cycle dT p .
- the corrected position calculation unit 31 acquires the control command generated by the control command generation unit 22 from the control command generation unit 22. Further, the correction position calculation unit 31 acquires the position ⁇ e calculated by the indefinite cycle position calculation unit 12 from the indefinite cycle position calculation unit 12, and also calculates the speed ⁇ e_ave calculated by the indefinite cycle speed calculation unit 13 in the indefinite cycle. It is acquired from the speed calculation unit 13. Further, the corrected position calculation unit 31 receives the input of the update pulse signal.
- the corrected position calculation unit 31 calculates the following equation based on the voltage phase ⁇ dq included in the acquired control command, the acquired position ⁇ e and the speed ⁇ e_ave , and the value of the input update pulse signal.
- the calculation according to 7) and the calculation according to the following equation (8) are executed.
- dT c is the control cycle of the voltage command calculation unit 30. That is, the voltage command computation unit 30 are those having a predetermined control cycle dT c.
- the calculation by the above formula (7) and the calculation by the above formula (8) are executed for each period dT c .
- the period dT c is set to 0.5 milliseconds (ms), for example.
- this cycle dT c may be referred to as a “second cycle”.
- the second period dT c is shorter than the first period dT p (for example, 4 ms). Further, the second cycle dT c can be shorter than the output cycle of the update pulse.
- i is a variable in which 1 is added (that is, incremented) every time the second period dT c elapses within each first period dT p , and the value of the update pulse signal is 1 Is a variable that is reset to zero every time (i.e., whenever an update pulse is output).
- the variable i can take an integer value of 0 or more and 7 or less.
- the upper limit value and the lower limit value of ⁇ dq are values according to the specifications of the position pulse signal. For example, when the output cycle of the update pulse is an electrical angle of 60 degrees (see FIG. 5), the upper limit value of ⁇ dq is + ⁇ / 3rad and the lower limit value of ⁇ dq is ⁇ / 3rad.
- an SR (Set Reset) flip-flop is used to determine whether or not the variable i needs to be incremented. That is, the update pulse signal and the continuous pulse signal corresponding to the second period dT c are input to the SR flip-flop.
- the corrected position calculation unit 31 determines whether or not the variable i needs to be incremented in each second cycle dT c based on the output value of the SR flip-flop.
- the determination of whether or not the variable i needs to be incremented is also a determination of whether or not the position ⁇ e and the velocity ⁇ e_ave need to be acquired.
- the corrected position calculation unit 31 acquires the position ⁇ e and the speed ⁇ e_ave each time the update pulse is output, that is, each time the variable i is incremented.
- the corrected position calculation unit 31 holds the acquired speed ⁇ e — ave for calculation by the above equation (7) and outputs the acquired position ⁇ e until the next update pulse is output. ) For calculation.
- the value of the electrical angle ⁇ (see FIG. 6) corresponding to the voltage phase ⁇ dq is temporally calculated for each second period dT c within each first period dT p .
- a plurality of positions (hereinafter sometimes referred to as “correction positions”) ⁇ e * are sequentially calculated.
- the calculation by the above formula (7) is to calculate a value (hereinafter referred to as “interpolation value”) ⁇ dq used for the interpolation for each second cycle dT c .
- the interpolation is based on the position ⁇ e and the interpolation value ⁇ dq , and the interpolation value ⁇ dq is based on the speed ⁇ e_ave .
- Each of the plurality of correction positions ⁇ e * is used to generate the three-phase voltage commands v u * , v v * , v w * .
- the position ⁇ e * used for generating the three-phase voltage commands v u * , v v * , v w * is made to have a high resolution by software even though the position sensor 4 has a low resolution. You can As a result, the accuracy of vector control by the motor control device 100 can be improved. Further, while the position ⁇ e * is set to a high resolution, the control cycle (for example, the control cycle dT p of the control command calculation unit 20) of the portion of the motor control device 100 except the voltage command calculation unit 30 is set to the voltage command calculation unit 30. The control period dT c can be made longer. As a result, the calculation load on the motor control device 100 can be reduced.
- the voltage command generation unit 32 acquires the individual correction positions ⁇ e * calculated by the correction position calculation unit 31 from the correction position calculation unit 31. Further, the voltage command generation unit 32 acquires the control command generated by the control command generation unit 22 from the control command generation unit 22. The voltage command generation unit 32 calculates the three-phase voltage by the following equation (9) based on the acquired individual correction position ⁇ e * and the magnitude of the voltage vector V r * included in the acquired control command. The commands v u * , v v * , v w * are generated.
- each of v u_normal * and v v_normal * is a voltage command in which the maximum value of one-sided amplitude is normalized to 1 (hereinafter referred to as “normalized voltage command”).
- the voltage command generation unit 32 shows the correspondence between the value of the correction position ⁇ e * and the values of the normalized voltage commands v u_normal * , v v_normal * over the angular range of electrical angle 0 to 2 ⁇ radian (rad).
- the table is stored in advance.
- the voltage command generation unit 32 uses the stored table to normalize the calculation of the above equation (9) according to the value of each correction position ⁇ e * calculated by the correction position calculation unit 31.
- FIG. 7 shows an example of the correspondence relationship between the value of the corrected position ⁇ e * and the values of the normalized voltage commands v u_normal * , v v_normal * .
- the voltage command generator 32 outputs the generated three-phase voltage commands v u * , v v * , v w * to the drive circuit 3.
- the drive circuit 3 supplies a current according to the three-phase voltage commands v u * , v v * , v w * to the three-phase winding.
- the corrected position calculation unit 31 and the voltage command generation unit 32 form a voltage command calculation unit 30.
- the control command calculator 20 has a predetermined control cycle dT c . That is, the correction position calculation unit 31 calculates the interpolation value ⁇ dq by the above formula (7), the correction position calculation unit 31 calculates the correction position ⁇ e * by the above formula (8), and the voltage command generation unit.
- the process of 32 generating the three-phase voltage commands v u * , v v * , v w * by the above equation (9) is executed every second cycle dT c .
- the rotation state calculation unit 10, the control command calculation unit 20, and the voltage command calculation unit 30 form a main part of the motor control device 100.
- the brushless DC motor 2, the drive circuit 3, the position sensor 4, and the motor control device 100 constitute a main part of the actuator device 200.
- the motor control device 100 has a processor 41 and a memory 42.
- the memory 42 stores a program for realizing the functions of the rotation state calculation unit 10, the control command calculation unit 20, and the voltage command calculation unit 30.
- the functions of the rotation state calculation unit 10, the control command calculation unit 20, and the voltage command calculation unit 30 are realized by the processor 41 reading and executing the program stored in the memory 42.
- the motor control device 100 has a processing circuit 43.
- the functions of the rotation state calculation unit 10, the control command calculation unit 20, and the voltage command calculation unit 30 are realized by the dedicated processing circuit 43.
- the motor control device 100 has a processor 41, a memory 42, and a processing circuit 43 (not shown).
- some of the functions of the rotation state calculation unit 10, the control command calculation unit 20, and the voltage command calculation unit 30 are implemented by the processor 41 and the memory 42, and the remaining functions are performed by the dedicated processing circuit 43. Will be realized.
- the processor 41 uses, for example, at least one of a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a microprocessor, a microcontroller, and a DSP (Digital Signal Processor).
- a CPU Central Processing Unit
- GPU Graphics Processing Unit
- microprocessor a microcontroller
- DSP Digital Signal Processor
- the memory 42 uses, for example, at least one of a semiconductor memory and a magnetic disk. More specifically, the memory 42 includes a RAM (Random Access Memory), a ROM (Read Only Memory), a flash memory, an EPROM (Erasable Programmable Read Only Memory-Memory), and an EEPROM (Electrically Integrated Memory). At least one of State Drive) or HDD (Hard Disk Drive) is used.
- RAM Random Access Memory
- ROM Read Only Memory
- flash memory an EPROM (Erasable Programmable Read Only Memory-Memory)
- EEPROM Electrically Integrated Memory
- At least one of State Drive) or HDD (Hard Disk Drive) is used.
- the processing circuit 43 may be, for example, an ASIC (Application Specific Integrated Circuit), a PLD (Programmable Logic Device), an FPGA (Field-Programmable Gate Array), or a SoC (Sonication) system. At least one of the above is used.
- ASIC Application Specific Integrated Circuit
- PLD Programmable Logic Device
- FPGA Field-Programmable Gate Array
- SoC SoC
- each processing by the rotation state calculation unit 10 is executed in the background of the processing shown in FIG. 9. That is, the output processing of the update pulse signal by the edge detection unit 11 is continuously executed, the calculation processing of the position ⁇ e by the indefinite cycle position calculation unit 12 is executed indefinitely, and the indefinite cycle is also generated. The calculation processing of the speed ⁇ e_ave by the speed calculation unit 13 is executed in an indefinite cycle.
- FIG. 9A shows the operation of the current command generator 21 in each first cycle dT p (for example, 4 ms).
- the current command generation unit 21 acquires the position command ⁇ e_dir generated by the ECU 5 from the ECU 5, and at the same time calculates the position ⁇ e calculated by the non-fixed cycle position calculation unit 12 in the non-fixed cycle position calculation unit 12.
- the current command generation unit 21 performs q to bring the position deviation ⁇ e close to a zero value by classical control (for example, PID control) based on the acquired position command ⁇ e_dir and position ⁇ e.
- the axis current command i q * is generated.
- FIG. 9B shows the operation of the control command generation unit 22 in each first cycle dT p (for example, 4 ms).
- the control command generation unit 22 outputs the q-axis current command i q * generated by the current command generation unit 21 (that is, the q-axis current command i q * generated in step ST2) as a current command.
- the d-axis current command i d * having a predetermined value (for example, zero value) is acquired from the generation unit 21 and the current command generation unit 21.
- the control command generation unit 22 acquires the position ⁇ e calculated by the indefinite period position calculation unit 12 from the indefinite period position calculation unit 12.
- the control command generation unit 22 sets the values of the motor constants R a , L d , L q , and ⁇ used in the calculation of the above formula (3).
- control command generator 22 acquires the acquired dq axis current commands i d * , i q * , the acquired position ⁇ e (more specifically, the position ⁇ e acquired in the previous step ST11).
- a control command is generated based on (n ⁇ 1) and the position ⁇ e (n) acquired in step ST11 this time, and the set motor constants R a , L d , L q , and ⁇ .
- control command generator 22 calculates the electrical angular velocity ⁇ e by the above equation (4) (step ST13).
- the control command generating unit 22 generates the dq axis voltage commands v d * , v q * by the above equation (3) (step ST14).
- the control command generation unit 22 calculates the voltage vector V r * by the above equation (5) and calculates the voltage phase ⁇ dq by the above equation (6) (step ST15).
- the control command generation unit 22 generates a control command including the magnitude of the calculated voltage vector V r * and the voltage phase ⁇ dq (step ST16).
- FIG. 9C shows the operation of the correction position calculation unit 31 in each first cycle dT p (for example, 4 ms).
- the corrected position calculation unit 31 acquires the control command generated by the control command generation unit 22 (that is, the control command generated in step ST16) from the control command generation unit 22.
- the corrected position calculation unit 31 repeatedly executes the processing of steps ST22 to ST24 described below every second cycle dT c (for example, 0.5 ms).
- step ST22 when the value of the update pulse signal is 1 (that is, when the update pulse is output), the corrected position calculation unit 31 calculates the position ⁇ e calculated by the indefinite cycle position calculation unit 12 as the indefinite cycle position calculation.
- the speed ⁇ e — ave calculated by the indefinite period speed calculation unit 13 is acquired from the unit 12 as well as the indefinite period speed calculation unit 13 (step ST22).
- the process of step ST22 is skipped.
- the correction position calculation unit 31 calculates the interpolation value ⁇ dq by the above equation (7) (step ST23).
- Speed omega E_ave used in the calculation of the formula (7) is obtained this time in the second period dT rate acquired at step ST22 in the c ⁇ e_ave, or previous step ST22 in a previous second cycle dT c Is the velocity ⁇ e — ave that is retained for calculation.
- the correction position calculation unit 31 calculates the correction position ⁇ e * by the above equation (8) (step ST24).
- the voltage phase ⁇ dq used in the calculation of the equation (8) is included in the control command acquired in step ST21.
- the position ⁇ e used in the calculation of the equation (8) is acquired at the position ⁇ e acquired in step ST22 in the second cycle dT c this time or in step ST22 in the second cycle dT c before the previous cycle. Position ⁇ e held for calculation.
- FIG. 9D shows the operation of the voltage command generator 32 in each first cycle dT p (for example, 4 ms).
- the voltage command generator 32 acquires the control command generated by the control command generator 22 (that is, the control command generated in step ST16) from the control command generator 22.
- the voltage command generation unit 32 repeatedly executes the processing of steps ST32 to ST34 described below every second cycle dT c (for example, 0.5 ms).
- the voltage command generation unit 32 calculates the corrected position ⁇ e * calculated by the corrected position calculation unit 31 (that is, the corrected position ⁇ e * generated in step ST24 in the second cycle dT c this time). It is acquired from the unit 31 (step ST32). Next, the voltage command generating unit 32, based on the table stored in advance, according to the value of the acquired correction position ⁇ e * , the normalized voltage command v u_normal * used in the calculation of the above formula (9) . , V v_normal * are set (step ST33). Next, the voltage command generation unit 32 generates the three-phase voltage commands v u * , v v * , v w * by the equation (9) (step ST34). The magnitude of the voltage vector V r * used in the calculation of the equation (9) is included in the control command acquired in step ST31.
- the first cycle dT p may be any cycle longer than the second cycle dT c and is not limited to 4 milliseconds.
- the first period dT p may be set to 2 milliseconds.
- the second period dT c may be any period shorter than the first period dT p , and is not limited to 0.5 ms.
- the use of the actuator device 200 is not limited to the opening control of the vehicle-mounted valve device 1.
- the actuator device 200 can be used in various applications similar to the conventional actuator device.
- the use of the motor control device 100 is not limited to the control of the brushless DC motor 2 in the actuator device 200.
- the brushless DC motor 2 can be used in various devices similar to the conventional brushless DC motor.
- the motor control device 100 can be used to control the brushless DC motor 2 in the various devices.
- the motor control device 100 may be used for so-called "rotation speed control".
- the motor control device 100 may be used for control that makes the dq axis current commands i d * , i q * constant without relying on feedback.
- the motor control device 100 may be used for control of continuously rotating the brushless DC motor 2.
- the motor control device 100 can improve the accuracy of vector control by using the low-resolution position sensor 4, and control the parts other than the voltage command calculation unit 30. The cycle can be lengthened. For this reason, in controlling the opening degree of the vehicle-mounted valve device 1, it is particularly preferable to use the motor control device 100 and the actuator device 200 according to the first embodiment.
- the control command calculation unit 20 may be provided inside the actuator device 200 and outside the motor control device 100. That is, the main part of the motor control device 100 may be configured by the rotation state calculation unit 10 and the voltage command calculation unit 30.
- the motor control device 100 is the motor control device 100 that controls the drive current for the brushless DC motor 2 having the rotor position sensor 4 by the vector control of the current sensorless system.
- a rotation state calculation unit 10 that calculates a rotor position ⁇ e and a rotor speed ⁇ e_ave using a position pulse signal corresponding to the output of the position sensor 4, and a value of an electrical angle ⁇ is temporally interpolated based on the speed ⁇ e_ave.
- the control cycle (for example, the control cycle dT p of the control command calculation unit 20) of the portion of the motor control device 100 excluding the voltage command calculation unit 30 is set to the voltage command calculation unit 30.
- the control period dT c can be made longer. As a result, the calculation load on the motor control device 100 can be reduced.
- the rotation state calculation unit 10 detects an edge in the position pulse signal and outputs an update pulse signal including an update pulse corresponding to the edge, and an edge detection unit 11 that outputs the update pulse signal at an indefinite cycle according to the output of the update pulse. It has an indefinite cycle position calculation unit 12 that calculates ⁇ e, and an indefinite cycle speed calculation unit 13 that calculates the speed ⁇ e_ave in an indefinite cycle according to the output of the update pulse. By calculating the position ⁇ e in an indefinite cycle by the indefinite cycle position calculating unit 12, it is possible to suppress the omission of detection of the magnetic pole position of the rotor.
- the indefinite cycle speed calculation unit 13 By calculating the speed ⁇ e_ave in an indefinite cycle by the indefinite cycle speed calculation unit 13, the average value of the electrical angular speed ⁇ e in the section from the output of the previous update pulse to the output of the current update pulse, that is, the speed ⁇ e_ave Can be accurately calculated.
- the position pulse signal is such that at least one pulse is output during one rotation of the rotor.
- the motor control device 100 includes a control command calculation unit 20 that generates a control command including a voltage phase ⁇ dq according to a difference value (position deviation ⁇ e ) of the position ⁇ e with respect to the position command ⁇ e_dir , and the voltage command calculation is performed.
- the unit 30 temporally interpolates the value of the electrical angle ⁇ corresponding to the voltage phase ⁇ dq based on the position ⁇ e and the speed ⁇ e_ave to sequentially calculate a plurality of correction positions ⁇ e * . Thereby, vector control according to the position deviation ⁇ e can be realized.
- the position command ⁇ e_dir is output by a higher-order electronic control unit (ECU 5) for the motor control device 100, and the control command calculator 20 determines the q-axis current corresponding to the difference value (position deviation ⁇ e ).
- a current command generation unit 21 which generates a command i q *, dq axis current command including a q-axis current command i q * i d *, a control command generation unit 22 that generates a control command corresponding to i q *, a Have.
- the control command generation unit 22 also generates a control command using the voltage equation of the brushless DC motor 2.
- a control command using the voltage equation of the brushless DC motor 2, vector control by feedforward can be realized for the drive current of the brushless DC motor 2.
- control command includes the magnitude of the voltage vector V r * according to the difference value (positional deviation ⁇ e ), and the voltage command calculation unit 30 sequentially calculates a plurality of correction positions ⁇ e *.
- a correction position calculation unit 31, and a voltage command generation unit 32 that generates three-phase voltage commands v u * , v v * , v w * based on the magnitude of the voltage vector V r * and each correction position ⁇ e * .
- the voltage command calculation unit 30 calculates the formula (7), the formula (8), and the formula (9). Calculation can be realized.
- the actuator device 200 includes the motor control device 100, the brushless DC motor 2, the drive circuit 3, and the position sensor 4. Thereby, the actuator device 200 using the motor control device 100 can be realized.
- the actuator device 200 is used for controlling the opening degree of the valve device 1 mounted on the vehicle. As described above, it is particularly preferable to use the motor control device 100 and the actuator device 200 in controlling the opening degree of the vehicle-mounted valve device 1.
- the motor control method according to the first embodiment is a motor control method in which the drive current for the brushless DC motor 2 having the position sensor 4 for the rotor is controlled by vector control of the current sensorless type, and the rotation state calculation unit 10 Calculates the rotor position ⁇ e and the rotor speed ⁇ e_ave using the position pulse signal corresponding to the output of the position sensor 4, and the voltage command calculator 30 determines the value of the electrical angle ⁇ based on the speed ⁇ e_ave .
- a plurality of correction positions ⁇ e * are sequentially calculated by temporal interpolation, and the three-phase voltage commands v u * , v v to the drive circuit 3 for the brushless DC motor 2 are calculated based on the individual correction positions ⁇ e *. Generate * , v w * . As a result, it is possible to obtain the same effect as the above effect by the motor control device 100.
- FIG. 10 is a block diagram showing a main part of an actuator device including the motor control device according to the second embodiment.
- FIG. 11 is a block diagram showing a main part of a control command calculation unit in the motor control device according to the second embodiment.
- a motor control device 100a and an actuator device 200a according to the second embodiment will be described with reference to FIGS. 10 and 11.
- FIG. 10 the same blocks as those shown in FIG. 1 are designated by the same reference numerals and the description thereof will be omitted. Also, in FIG. 11, the same blocks as the blocks shown in FIG.
- the motor control device 100a according to the second embodiment is different from the motor control device 100 according to the first embodiment in the voltage equation used for generating the dq axis voltage commands v d * , v q * . That is, the control command generator 22 in the motor control device 100 uses the voltage equation shown in the above equation (2) to generate the dq axis voltage commands v d * , v q * . On the other hand, the control command generation unit 22a in the motor control device 100a uses the voltage equation represented by the following Expression (10) to generate the dq axis voltage commands v d * , v q * .
- T c is a current response time constant in the dq coordinate system. That is, the voltage equation shown in the equation (10) is obtained by adding a filter based on “1 / (1 + T c s)” to the voltage equation shown in the equation (2).
- T c By setting the value of the current response time constant T c , it is possible to realize an arbitrary time response in controlling the drive current of the brushless DC motor 2.
- the current command generator 21 and the control command generator 22a form a control command calculator 20a.
- the rotation state calculation unit 10, the control command calculation unit 20a, and the voltage command calculation unit 30 form a main part of the motor control device 100a.
- the brushless DC motor 2, the drive circuit 3, the position sensor 4, and the motor control device 100a constitute a main part of the actuator device 200a.
- the hardware configuration of the main part of the motor control device 100a is the same as that described in Embodiment 1 with reference to FIG. 8, illustration and description thereof will be omitted. That is, the functions of the rotation state calculation unit 10, the control command calculation unit 20a, and the voltage command calculation unit 30 may be realized by the processor 41 and the memory 42, or by a dedicated processing circuit 43. It may be one.
- the operation of the current command generator 21 is the same as that described in Embodiment 1 with reference to FIG. 9A, and therefore illustration and description thereof will be omitted.
- the operation of the corrected position calculation unit 31 is the same as that described in the first embodiment with reference to FIG. 9C, and therefore, illustration and description thereof will be omitted.
- the operation of the voltage command generator 32 is the same as that described in the first embodiment with reference to FIG. 9D, and therefore, illustration and description thereof will be omitted.
- FIG. 12 shows the operation of the control command generator 22a in each first cycle dT p (for example, 4 ms).
- the control command generation unit 22a acquires the q-axis current command i q * generated by the current command generation unit 21 from the current command generation unit 21 and sets a predetermined value (for example, zero value) d.
- the axis current command i d * is acquired from the current command generation unit 21.
- the control command generation unit 22a acquires the position ⁇ e calculated by the indefinite period position calculation unit 12 from the indefinite period position calculation unit 12.
- step ST12a the control command generating unit 22a, the motor constants R a to be used in the calculation of the equation (10), L d, L q, sets the value of phi, the calculation of the equation (10) The value of the current response time constant T c used for is set.
- control command generation unit 22a determines the acquired dq axis current commands i d * , i q * , the acquired position ⁇ e (more specifically, the position ⁇ e acquired in the previous step ST11). (N ⁇ 1) and the position ⁇ e (n) acquired in step ST11 this time, the set motor constants R a , L d , L q , and ⁇ , and the set current response time constant T.
- a control command is generated based on c .
- control command generator 22a calculates the electrical angular velocity ⁇ e by the above equation (4) (step ST13).
- the control command generator 22a generates the dq axis voltage commands v d * , v q * by the above equation (10) (step ST14a).
- the control command generation unit 22a calculates the voltage vector V r * by the equation (5) and the voltage phase ⁇ dq by the equation (6) (step ST15).
- the control command generation unit 22a generates a control command including the magnitude of the calculated voltage vector V r * and the voltage phase ⁇ dq (step ST16).
- motor control device 100a can employ various modifications similar to those described in the first embodiment, that is, various modifications similar to the motor control device 100.
- the voltage equation includes the filter according to the current response time constant T c .
- FIG. 13 is a block diagram showing a main part of an actuator device including the motor control device according to the third embodiment.
- FIG. 14 is a block diagram showing a main part of a control command calculation unit in the motor control device according to the third embodiment.
- a motor control device 100b and an actuator device 200b according to the third embodiment will be described with reference to FIGS. 13 and 14. Note that, in FIG. 13, the same blocks as the blocks shown in FIG. Also, in FIG. 14, the same blocks as the blocks shown in FIG. 3 are denoted by the same reference numerals, and description thereof will be omitted.
- the brushless DC motor 2 is provided with a temperature sensor 6.
- the temperature sensor 6 detects the temperature Temp of the armature winding in the brushless DC motor 2.
- the control command generation unit 22b acquires the dq axis current commands i d * , i q * and the position ⁇ e similarly to the control command generation unit 22 in the motor control device 100 according to the first embodiment. In addition to this, the control command generation unit 22b acquires the temperature Temp detected by the temperature sensor 6 from the temperature sensor 6. The control command generator 22b uses the voltage equation shown in the following equation (11) instead of the voltage equation shown in the above equation (2) to generate the dq axis voltage instructions v d * , v q * .
- each of the armature winding resistance R a , the d-axis inductance L d , the q-axis inductance L q, and the armature winding interlinkage magnetic flux number ⁇ is a function of the temperature Temp. Is. Therefore, the control command generation unit 22b sets the values of the motor constants R a , L d , L q , and ⁇ used in the calculation of the above formula (11) as follows.
- the control command generation unit 22b stores in advance a map showing the correspondence between the value of the temperature Temp and the value of the armature winding resistance R a , that is, the map showing the function R a (Temp).
- the control command generation unit 22b sets the value of the motor constant R a used for the calculation of the above formula (11) according to the value of the temperature Temp detected by the temperature sensor 6 based on the stored map. ..
- control command generator 22b stores in advance a map showing the correspondence between the value of the temperature Temp and the value of the d-axis inductance L d , that is, the map showing the function L d (Temp).
- the control command generation unit 22b sets the value of the motor constant L d used for the calculation of the above formula (11) according to the value of the temperature Temp detected by the temperature sensor 6 based on the stored map. ..
- control command generation unit 22b stores in advance a map showing the correspondence relationship between the value of the temperature Temp and the value of the q-axis inductance L q , that is, the map showing the function L q (Temp).
- the control command generation unit 22b sets the value of the motor constant L q used for the calculation of the above formula (11) according to the value of the temperature Temp detected by the temperature sensor 6 based on the stored map. ..
- control command generator 22b stores in advance a map showing the correspondence between the value of the temperature Temp and the value of the armature winding interlinkage magnetic flux number ⁇ , that is, the function ⁇ (Temp). .
- the control command generation unit 22b sets the value of the motor constant ⁇ used for the calculation of the above formula (11) according to the value of the temperature Temp detected by the temperature sensor 6 based on the stored map.
- the current command generator 21 and the control command generator 22b constitute a control command calculator 20b.
- the rotation state calculation unit 10, the control command calculation unit 20b, and the voltage command calculation unit 30 form a main part of the motor control device 100b.
- the brushless DC motor 2, the drive circuit 3, the position sensor 4, the temperature sensor 6, and the motor control device 100b constitute a main part of the actuator device 200b.
- the hardware configuration of the main part of the motor control device 100b is the same as that described in Embodiment 1 with reference to FIG. 8, illustration and description thereof will be omitted. That is, the functions of the rotation state calculation unit 10, the control command calculation unit 20b, and the voltage command calculation unit 30 may be realized by the processor 41 and the memory 42, or by a dedicated processing circuit 43. It may be one.
- the operation of the current command generator 21 is the same as that described in Embodiment 1 with reference to FIG. 9A, and therefore illustration and description thereof will be omitted.
- the operation of the corrected position calculation unit 31 is the same as that described in the first embodiment with reference to FIG. 9C, and therefore, illustration and description thereof will be omitted.
- the operation of the voltage command generator 32 is the same as that described in the first embodiment with reference to FIG. 9D, and therefore, illustration and description thereof will be omitted.
- FIG. 15 shows the operation of the control command generator 22b in each first cycle dT p (for example, 4 ms).
- the control command generation unit 22b acquires the q-axis current command i q * generated by the current command generation unit 21 from the current command generation unit 21, and at the same time, sets a predetermined value (for example, zero value) d.
- the axis current command i d * is acquired from the current command generation unit 21.
- the control command generation unit 22b acquires the position ⁇ e calculated by the indefinite period position calculation unit 12 from the indefinite period position calculation unit 12.
- the control command generator 22b acquires the temperature Temp detected by the temperature sensor 6 from the temperature sensor 6.
- step ST12b the control command generation unit 22b determines the values of the motor constants R a , L d , L q , and ⁇ used in the calculation of the equation (11) according to the value of the acquired temperature Temp. To set.
- control command generation unit 22b acquires the acquired dq axis current commands i d * , i q * , the acquired position ⁇ e (more specifically, the position ⁇ e acquired in the previous step ST11b).
- a control command is generated based on (n-1) and the position ⁇ e (n) acquired in step ST11b this time, and the set motor constants R a , L d , L q , and ⁇ .
- control command generator 22b calculates the electrical angular velocity ⁇ e by the above equation (4) (step ST13).
- the control command generator 22b generates the dq axis voltage commands v d * , v q * by the above equation (11) (step ST14b).
- the control command generation unit 22b calculates the voltage vector V r * by the equation (5) and the voltage phase ⁇ dq by the equation (6) (step ST15).
- the control command generation unit 22b generates a control command including the magnitude voltage phase ⁇ dq of the calculated voltage vector V r * (step ST16).
- the temperature sensor 6 may be provided in the drive circuit 3 instead of the brushless DC motor 2.
- the temperature sensor 6 may detect the temperature Temp of the power semiconductor in the drive circuit 3, that is, the temperature Temp of the switching element corresponding to the three phases.
- the temperature sensor 6 may be provided in the valve device 1 instead of the brushless DC motor 2. In this case, the temperature sensor 6 may detect the temperature Temp in the flow path of the valve device 1.
- the temperature sensor 6 may be provided in each of two or more of the valve device 1, the brushless DC motor 2, and the drive circuit 3 (not shown).
- the control command generator 22b may estimate the operating environment temperature of the valve device 1, that is, the operating environment temperature of the actuator device 200b, based on the temperature Temp detected by the temperature sensor 6.
- the control command generation unit 22b may set the values of the motor constants R a , L d , L q , and ⁇ according to the estimated temperature value.
- control command generation unit 22b may execute the same process as control command generation unit 22a in motor control device 100a according to the second embodiment. That is, the control command generator 22b may set the value of the current response time constant Tc .
- the control command generation unit 22b uses the voltage equation shown in the following equation (12) instead of the voltage equation shown in the above equation (11) to generate the dq axis voltage instructions v d * , v q *. Is also good.
- the voltage equation shown in the equation (12) is obtained by adding a filter based on “1 / (1 + T c s)” to the voltage equation shown in the equation (11).
- the motor control device 100b can adopt various modifications similar to those described in the first embodiment, that is, various modifications similar to the motor control device 100.
- the brushless DC motor 2 is provided with the temperature sensor 6, and the control command generation unit 22b causes the value of the temperature Temp detected by the temperature sensor 6.
- the values of the motor constants R a , L d , L q , and ⁇ in the voltage equation are set according to As a result, in the control of the drive current of the brushless DC motor 2, it is possible to suppress the occurrence of variations in current response due to the operating environment temperature of the actuator device 200, that is, the operating environment temperature of the valve device 1.
- FIG. 18 is a block diagram showing a main part of an actuator device including the motor control device according to the first reference example.
- FIG. 19 is a block diagram illustrating a main part of a rotation state calculation unit in the motor control device according to the first reference example.
- FIG. 20 is a block diagram showing a main part of a control command calculation unit in the motor control device according to the first reference example.
- FIG. 21 is a block diagram showing a main part of a voltage command calculation unit in the motor control device according to the first reference example.
- a motor control device 100c and an actuator device 200c according to Reference Example 1 will be described with reference to FIGS. 18 to 21, the same blocks as the blocks shown in FIGS. 1 to 4 are designated by the same reference numerals, and the description thereof will be omitted.
- the rotation state calculation unit 10c has an edge detection unit 11 and an indefinite period position calculation unit 12. That is, the rotation state calculation unit 10c does not include the indefinite period speed calculation unit 13. As a result, the calculation load on the rotation state calculation unit 10c can be reduced.
- the control command generation unit 22c acquires the q-axis current command i q * generated by the current command generation unit 21 from the current command generation unit 21 and also outputs the d-axis current command i d * having a predetermined value (for example, zero value). It is acquired from the current command generator 21.
- the control command generator 22c sets the values of the motor constants R a and L q and also sets the value of the current response time constant T c .
- the control command generation unit 22 c calculates Equation 13 is used to calculate v d_dummy * and v q_dummy * . That is, the control command generation unit 22c calculates v d_dummy * and v q_dummy * by calculating only the term that does not include the speed ⁇ e_ave in the voltage equation shown in the above equation (10).
- the control command generation unit 22c is configured to generate a control command including the calculated v d_dummy * and v q_dummy * .
- the voltage command generation unit 32 c acquires the position ⁇ e calculated by the indefinite period position calculation unit 12 from the indefinite period position calculation unit 12.
- the voltage command generator 32c calculates the rotor speed ⁇ e by the following equation (14) based on the acquired position ⁇ e .
- ⁇ e is an electrical angular velocity
- the unit of ⁇ e is radian per second (rad / s).
- ⁇ e (n ⁇ 1) is the position ⁇ e previously acquired by the voltage command generation unit 32c
- ⁇ e (n) is the position ⁇ e acquired this time by the voltage command generation unit 32c. That is, n is a sample number related to the acquisition of the position ⁇ e by the voltage command generation unit 32c.
- dT c is a control cycle (for example, 0.5 seconds) of the voltage command calculation unit 30c.
- the calculation by the above formula (14) is to calculate the rotor speed ⁇ e by differentiating the rotor position ⁇ e with respect to each second period dT c .
- the voltage command generator 32c may use a pseudo differentiator for the calculation of the equation (14).
- the voltage command generation unit 32c acquires the control command generated by the control command generation unit 22c from the control command generation unit 22c.
- the voltage command generator 32c sets the value of the motor constant ⁇ .
- the voltage command generation unit 32c calculates the following based on v d_dummy * and v q_dummy * included in the acquired control command, the set motor constant ⁇ , and the speed ⁇ e calculated by the above equation (14).
- the dq axis voltage commands v d * and v q * are generated by the equation (15).
- the two-axis three-phase conversion unit 33 acquires the dq-axis voltage commands v d * , v q * generated by the voltage command generation unit 32 c from the voltage command generation unit 32 c.
- the 2-axis 3-phase conversion unit 33 converts the acquired dq-axis voltage commands v d * , v q * into 3-phase voltage commands v u * , v v * , v w * by using a predetermined conversion example. It is to convert.
- a conversion matrix for converting the dq axis voltage commands v d * , v q * into the three-phase voltage commands v u * , v v * , v w * is known. Therefore, detailed description of the conversion matrix is omitted.
- the two-axis / three-phase conversion unit 33 outputs the converted three-phase voltage commands v u * , v v * , v w * to the drive circuit 3.
- the drive circuit 3 supplies a current according to the three-phase voltage commands v u * , v v * , v w * to the three-phase winding.
- the edge detection unit 11 and the indefinite period position calculation unit 12 constitute a rotation state calculation unit 10c.
- the current command generator 21 and the control command generator 22c constitute a control command calculator 20c.
- the voltage command generator 32c and the biaxial three-phase converter 33 configure a voltage command calculator 30c.
- the rotation state calculation unit 10c, the control command generation unit 22c, and the voltage command calculation unit 30c constitute a main part of the motor control device 100c.
- the brushless DC motor 2, the drive circuit 3, the position sensor 4, and the motor control device 100c constitute a main part of the actuator device 200c.
- the hardware configuration of the main part of the motor control device 100c is the same as that described in Embodiment 1 with reference to FIG. 8, illustration and description thereof will be omitted. That is, the functions of the rotation state calculation unit 10c, the control command calculation unit 20c, and the voltage command calculation unit 30c may be realized by the processor 41 and the memory 42, or by a dedicated processing circuit 43. It may be one.
- the motor control device 100c can eliminate the need for the rotation state calculation unit 10c to perform the process of calculating the rotor speed ⁇ e_ave in an indefinite cycle. As a result, the calculation load on the rotation state calculation unit 10c can be reduced. Further, in the voltage command calculation unit 30c, the process of temporally interpolating the value of the electrical angle ⁇ corresponding to the voltage phase ⁇ dq can be eliminated. As a result, the calculation load on the voltage command calculation unit 30c can be reduced.
- the invention of the present application is capable of freely combining the embodiments, modifying any constituent element of each embodiment, or omitting any constituent element in each embodiment. ..
- the motor control device and the motor control method of the present invention can be used, for example, for controlling a brushless DC motor in an actuator device.
- the actuator device of the present invention can be used, for example, for controlling the opening of a vehicle-mounted valve device.
- valve device 1 valve device, 2 brushless DC motor, 3 drive circuit, 4 position sensor, 5 electronic control unit (ECU), 6 temperature sensor, 10 and 10c rotation state calculation unit, 11 edge detection unit, 12 indeterminate cycle position calculation unit, 13 Indefinite cycle speed calculator, 20, 20a, 20b, 20c control command calculator, 21 current command generator, 22, 22a, 22b, 22c control command generator, 30, 30c voltage command calculator, 31 correction position calculator, 32, 32c voltage command generation unit, 33 2-axis 3-phase conversion unit, 41 processor, 42 memory, 43 processing circuit, 100, 100a, 100b, 100c motor control device, 200, 200a, 200b, 200c actuator device.
Landscapes
- Engineering & Computer Science (AREA)
- Power Engineering (AREA)
- Control Of Ac Motors In General (AREA)
- Control Of Motors That Do Not Use Commutators (AREA)
Abstract
This motor control device (100) is provided with: a rotation state calculation unit (10) which calculates a rotor position (θe) and a rotor speed (ωe_ave) using a position pulse signal corresponding to the output of a position sensor (4); and a voltage command calculation unit (30) which calculates a plurality of corrected positions (θe
*) sequentially by temporally interpolating the value of an electrical angle (θ) on the basis of the speed (ωe_ave), and generates three-phase voltage commands (vu
*, vv
*, vw
*) to a drive circuit (3) for a brushless DC motor (2) on the basis of each of the corrected positions (θe
*).
Description
本発明は、モータ制御装置、アクチュエータ装置及びモータ制御方法に関する。
The present invention relates to a motor control device, an actuator device, and a motor control method.
従来、EGR(Exhaust Gas Recirculation)バルブ、ウェイストゲートバルブ及びVVT(Variable Valve Timing)などの種々のバルブ装置が車両に搭載されている。これらのバルブ装置の開度制御に電動式のアクチュエータ装置が用いられており、このアクチュエータ装置にブラシレスDC(Direct Current)モータが用いられている。ブラシレスDCモータの駆動電流の制御方式には、いわゆる「120度矩形波通電制御」及び「ベクトル制御」などがある。
Conventionally, various valve devices such as an EGR (Exhaust Gas Recirculation) valve, a wastegate valve, and a VVT (Variable Valve Timing) are mounted on a vehicle. An electric actuator device is used to control the opening degree of these valve devices, and a brushless DC (Direct Current) motor is used for this actuator device. The control method of the drive current of the brushless DC motor includes so-called "120-degree rectangular wave energization control" and "vector control".
通常、ベクトル制御においては、シャント抵抗器などの電流センサを用いてブラシレスDCモータの駆動電流を検出することが求められる。これに対して、特許文献1には、電流センサを不要としたベクトル制御、すなわち電流センサレス方式のベクトル制御によりブラシレスDCモータの駆動電流を制御する技術が開示されている。
Normally, in vector control, it is required to detect the drive current of the brushless DC motor using a current sensor such as a shunt resistor. On the other hand, Patent Document 1 discloses a technique of controlling the drive current of a brushless DC motor by vector control that does not require a current sensor, that is, vector control of a current sensorless system.
特許文献1記載の技術は、いわゆる「オブザーバ」を用いて、ブラシレスDCモータにおける電流、より具体的にはq軸における電流を推定するものである。これにより、電流センサを不要としたものである。
The technique described in Patent Document 1 uses a so-called “observer” to estimate the current in the brushless DC motor, more specifically, the current in the q-axis. This eliminates the need for a current sensor.
一般に、オブザーバによる推定を安定させる観点から、オブザーバの極は複素数平面のうちの左半平面に配置するのが好適である。また、オブザーバによる推定の応答性を向上する観点から、オブザーバの極は複素数平面における原点から遠い位置に配置するのが好適である。すなわち、オブザーバによる推定の精度を向上する観点から、オブザーバの極は複素数平面のうちの左半平面における原点から遠い位置に配置するのが好適である。他方、オブザーバによる推定は、いわゆる「サンプリング定理」に基づく制御周期の制約を受ける。このため、オブザーバによる推定における再現性を向上する観点から、すなわちオブザーバによる推定の精度を向上する観点から、オブザーバを含む制御装置の制御周期は短くするのが好適である。
Generally, from the viewpoint of stabilizing the estimation by the observer, it is preferable to place the poles of the observer on the left half plane of the complex plane. Further, from the viewpoint of improving the responsiveness of the estimation by the observer, it is preferable to arrange the observer poles at a position far from the origin on the complex plane. That is, from the viewpoint of improving the accuracy of estimation by the observer, it is preferable to arrange the observer pole at a position far from the origin on the left half plane of the complex plane. On the other hand, the estimation by the observer is restricted by the control period based on the so-called “sampling theorem”. Therefore, from the viewpoint of improving the reproducibility in the estimation by the observer, that is, the accuracy of the estimation by the observer, it is preferable to shorten the control cycle of the control device including the observer.
特許文献1記載の技術は、仮にオブザーバ(オブザーバ1)の極を上記のように配置したとしても、オブザーバ(オブザーバ1)を含む制御装置(電流制御部7)の制御周期が長い場合、オブザーバ(オブザーバ1)による推定の精度が低下する問題があった。この結果、オブザーバ(オブザーバ1)を含む制御装置(電流制御部7)による制御の精度が低下する問題があった。
In the technique described in Patent Document 1, even if the poles of the observer (observer 1) are arranged as described above, if the control cycle of the control device (current control unit 7) including the observer (observer 1) is long, the observer ( There was a problem that the accuracy of the estimation by the observer 1) decreased. As a result, there is a problem that the accuracy of control by the control device (current control unit 7) including the observer (observer 1) decreases.
また、特許文献1記載の技術におけるオブザーバ(オブザーバ1)による推定は、ブラシレスDCモータ(同期電動機11)におけるロータの角速度の実測値を用いるものである。このため、当該角速度を検出するセンサ(速度検出部14)の分解能が低い場合も上記と同様の問題があった。すなわち、オブザーバ(オブザーバ1)による推定の精度が低下することにより、オブザーバ(オブザーバ1)を含む制御装置(電流制御部7)による制御の精度が低下する問題があった。
The estimation by the observer (observer 1) in the technique described in Patent Document 1 uses the measured value of the angular velocity of the rotor in the brushless DC motor (synchronous electric motor 11). Therefore, even when the resolution of the sensor (speed detection unit 14) that detects the angular velocity is low, the same problem as described above occurs. That is, there is a problem in that the accuracy of estimation by the observer (observer 1) decreases, and thus the accuracy of control by the control device (current control unit 7) including the observer (observer 1) decreases.
本発明は、上記のような課題を解決するためになされたものであり、ブラシレスDCモータの駆動電流を電流センサレス方式のベクトル制御により制御するとき、低分解能な位置センサを用いて当該制御の精度の向上を図ることを目的とする。
The present invention has been made to solve the above problems, and when controlling the drive current of a brushless DC motor by vector control of a current sensorless system, the accuracy of the control is performed by using a low-resolution position sensor. The purpose is to improve.
本発明のモータ制御装置は、ロータ用の位置センサを有するブラシレスDCモータに対する駆動電流を電流センサレス方式のベクトル制御により制御するモータ制御装置であって、位置センサの出力に対応する位置パルス信号を用いてロータの位置及びロータの速度を算出する回転状態演算部と、電気角の値を速度に基づき時間的に補間することにより複数個の補正位置を順次算出するとともに、個々の補正位置に基づきブラシレスDCモータ用の駆動回路に対する3相電圧指令を生成する電圧指令演算部と、を備えるものである。
A motor control device of the present invention is a motor control device for controlling a drive current for a brushless DC motor having a rotor position sensor by vector control of a current sensorless system, and uses a position pulse signal corresponding to the output of the position sensor. Rotation status calculation unit that calculates the rotor position and rotor speed, and a plurality of correction positions are sequentially calculated by temporally interpolating the value of the electrical angle based on the speed, and brushless based on each correction position. And a voltage command calculator that generates a three-phase voltage command for the drive circuit for the DC motor.
本発明によれば、上記のように構成したので、ブラシレスDCモータの駆動電流を電流センサレス方式のベクトル制御により制御するとき、低分解能な位置センサを用いて当該制御の精度の向上を図ることができる。
According to the present invention, since it is configured as described above, when controlling the drive current of the brushless DC motor by the vector control of the current sensorless system, it is possible to improve the accuracy of the control by using the low-resolution position sensor. it can.
以下、この発明をより詳細に説明するために、この発明を実施するための形態について、添付の図面に従って説明する。
Hereinafter, in order to explain the present invention in more detail, modes for carrying out the present invention will be described with reference to the accompanying drawings.
実施の形態1.
図1は、実施の形態1に係るモータ制御装置を含むアクチュエータ装置の要部を示すブロック図である。図2は、実施の形態1に係るモータ制御装置における回転状態演算部の要部を示すブロック図である。図3は、実施の形態1に係るモータ制御装置における制御指令演算部の要部を示すブロック図である。図4は、実施の形態1に係るモータ制御装置における電圧指令演算部の要部を示すブロック図である。図1~図4を参照して、実施の形態1に係るモータ制御装置100及びアクチュエータ装置200について説明する。Embodiment 1.
FIG. 1 is a block diagram showing a main part of an actuator device including a motor control device according to the first embodiment. FIG. 2 is a block diagram showing a main part of the rotation state calculation unit in the motor control device according to the first embodiment. FIG. 3 is a block diagram showing a main part of a control command calculation unit in the motor control device according to the first embodiment. FIG. 4 is a block diagram showing a main part of the voltage command calculation unit in the motor control device according to the first embodiment. Themotor control device 100 and the actuator device 200 according to the first embodiment will be described with reference to FIGS. 1 to 4.
図1は、実施の形態1に係るモータ制御装置を含むアクチュエータ装置の要部を示すブロック図である。図2は、実施の形態1に係るモータ制御装置における回転状態演算部の要部を示すブロック図である。図3は、実施の形態1に係るモータ制御装置における制御指令演算部の要部を示すブロック図である。図4は、実施の形態1に係るモータ制御装置における電圧指令演算部の要部を示すブロック図である。図1~図4を参照して、実施の形態1に係るモータ制御装置100及びアクチュエータ装置200について説明する。
FIG. 1 is a block diagram showing a main part of an actuator device including a motor control device according to the first embodiment. FIG. 2 is a block diagram showing a main part of the rotation state calculation unit in the motor control device according to the first embodiment. FIG. 3 is a block diagram showing a main part of a control command calculation unit in the motor control device according to the first embodiment. FIG. 4 is a block diagram showing a main part of the voltage command calculation unit in the motor control device according to the first embodiment. The
図中、1はバルブ装置である。バルブ装置1は、例えば、EGRバルブ、ウェイストゲートバルブ又はVVTにより構成されている。バルブ装置1は、リターンスプリングなどの付勢部材(不図示)を有している。バルブ装置1は、アクチュエータ装置200による駆動トルクが供給されていないとき、付勢部材による付勢トルクにより、所定の開度に保持されるようになっている。より具体的には、開弁状態、閉弁状態又は開弁状態と閉弁状態との中間状態に保持されるようになっている。
In the figure, 1 is a valve device. The valve device 1 is composed of, for example, an EGR valve, a waste gate valve or a VVT. The valve device 1 has a biasing member (not shown) such as a return spring. The valve device 1 is configured to be held at a predetermined opening by the biasing torque of the biasing member when the driving torque of the actuator device 200 is not supplied. More specifically, the valve opening state, the valve closing state, or the intermediate state between the valve opening state and the valve closing state is maintained.
アクチュエータ装置200は、バルブ装置1に駆動トルクを供給することにより、バルブ装置1の開度を制御するものである。すなわち、ブラシレスDCモータ2は、ロータ(不図示)及びステータ(不図示)を有している。ステータは、U相に対応する巻線(以下「U相巻線」という。)、V相に対応する巻線(以下「V相巻線」という。)及びW相に対応する巻線(以下「W相巻線」という。)を有している。駆動回路3がU相巻線、V相巻線及びW相巻線の各々に駆動電流を供給することにより、バルブ装置1に対する駆動トルクが発生する。以下、U相巻線、V相巻線及びW相巻線を総称して「三相巻線」又は「電機子巻線」ということがある。
The actuator device 200 controls the opening degree of the valve device 1 by supplying a drive torque to the valve device 1. That is, the brushless DC motor 2 has a rotor (not shown) and a stator (not shown). The stator includes a winding corresponding to the U phase (hereinafter referred to as “U phase winding”), a winding corresponding to the V phase (hereinafter referred to as “V phase winding”), and a winding corresponding to the W phase (hereinafter referred to as “w”). "W-phase winding"). The drive circuit 3 supplies a drive current to each of the U-phase winding, the V-phase winding, and the W-phase winding to generate a drive torque for the valve device 1. Hereinafter, the U-phase winding, the V-phase winding, and the W-phase winding may be collectively referred to as “three-phase winding” or “armature winding”.
駆動回路3は、いわゆる「インバータ」により構成されている。すなわち、駆動回路3は、U相に対応するスイッチング素子、V相に対応するスイッチング素子及びW相に対応するスイッチング素子を有している。各相に対応するスイッチング素子は、いわゆる「パワー半導体」により構成されている。駆動回路3は、各相に対応するスイッチング素子のオンオフを時間的に切り替えることにより、三相巻線に駆動電流を供給するものである。
The drive circuit 3 is composed of a so-called "inverter". That is, the drive circuit 3 has a switching element corresponding to the U phase, a switching element corresponding to the V phase, and a switching element corresponding to the W phase. The switching element corresponding to each phase is composed of a so-called "power semiconductor". The drive circuit 3 supplies a drive current to the three-phase winding by switching on / off of the switching element corresponding to each phase in time.
ここで、駆動回路3は、U相に対応する電圧指令(以下「U相電圧指令」という。)vu
*に応じた電流をU相巻線に供給するようになっている。また、駆動回路3は、V相に対応する電圧指令(以下「V相電圧指令」という。)vv
*に応じた電流をV相巻線に供給するようになっている。さらに、駆動回路3は、W相に対応する電圧指令(以下「W相電圧指令」という。)vw
*に応じた電流をW相巻線に供給するようになっている。以下、U相電圧指令vu
*、V相電圧指令vv
*及びW相電圧指令vw
*を総称して「3相電圧指令」ということがある。3相電圧指令vu
*,vv
*,vw
*は、例えば、いわゆる「最大トルク制御」を実現するための電圧指令である。
Here, the drive circuit 3 is configured to supply a current according to a voltage command (hereinafter, referred to as “U-phase voltage command”) v u * corresponding to the U-phase to the U-phase winding. Further, the drive circuit 3 is configured to supply a current according to a voltage command (hereinafter, referred to as “V phase voltage command”) v v * corresponding to the V phase to the V phase winding. Further, the drive circuit 3 is configured to supply a current according to a voltage command corresponding to the W phase (hereinafter referred to as “W phase voltage command”) v w * to the W phase winding. Hereinafter, the U-phase voltage command v u * , the V-phase voltage command v v *, and the W-phase voltage command v w * may be collectively referred to as “three-phase voltage command”. The three-phase voltage commands v u * , v v * , v w * are voltage commands for realizing, for example, so-called “maximum torque control”.
ブラシレスDCモータ2は、ロータ用の位置センサ4を有している。位置センサ4は、例えば、U相に対応するホールIC(Integrated Circuit)、V相に対応するホールIC及びW相に対応するホールICにより構成されている。各相に対応するホールICは、ロータの回転に応じて、連続パルス状の信号(以下「位置パルス信号」という。)を出力するものである。
The brushless DC motor 2 has a rotor position sensor 4. The position sensor 4 includes, for example, a Hall IC (Integrated Circuit) corresponding to the U phase, a Hall IC corresponding to the V phase, and a Hall IC corresponding to the W phase. The Hall IC corresponding to each phase outputs a continuous pulse signal (hereinafter referred to as "position pulse signal") according to the rotation of the rotor.
以下、U相に対応する位置パルス信号を「U相位置パルス信号」ということがあり、V相に対応する位置パルス信号を「V相位置パルス信号」ということがあり、W相に対応する位置パルス信号を「W相位置パルス信号」ということがある。また、U相位置パルス信号における個々のパルスを「U相位置パルス」ということがあり、V相位置パルス信号における個々のパルスを「V相位置パルス」ということがあり、W相位置パルス信号における個々のパルスを「W相位置パルス」ということがある。また、U相位置パルス、V相位置パルス及びW相位置パルスを総称して「位置パルス」ということがある。
Hereinafter, the position pulse signal corresponding to the U phase may be referred to as “U phase position pulse signal”, the position pulse signal corresponding to the V phase may be referred to as “V phase position pulse signal”, and the position corresponding to the W phase The pulse signal may be referred to as a "W-phase position pulse signal". Further, individual pulses in the U-phase position pulse signal may be referred to as “U-phase position pulse”, individual pulses in the V-phase position pulse signal may be referred to as “V-phase position pulse”, and W-phase position pulse signal Each pulse may be referred to as a "W-phase position pulse". Further, the U-phase position pulse, the V-phase position pulse, and the W-phase position pulse may be collectively referred to as "position pulse".
各相に対応する位置パルス信号は、ロータが1回転する間に少なくとも1パルスが出力されるものである。例えば、各相に対応する位置パルス信号は、ロータが機械角360度分回転する毎に、ロータが電気角60度分回転する毎に、ロータが電気角30度分回転する毎に、又はロータが電気角15度分回転する毎に1パルスが出力されるものである。すなわち、位置センサ4は、ベクトル制御に用いられる一般的な位置センサ(光学式エンコーダ又はレゾルバなど)に比して低分解能なものである。
∙ The position pulse signal corresponding to each phase is such that at least one pulse is output during one rotation of the rotor. For example, the position pulse signal corresponding to each phase may be output every time the rotor rotates by a mechanical angle of 360 degrees, every time the rotor rotates by an electrical angle of 60 degrees, every time the rotor rotates by an electrical angle of 30 degrees, or One pulse is output each time is rotated by an electrical angle of 15 degrees. That is, the position sensor 4 has a lower resolution than a general position sensor (optical encoder, resolver, or the like) used for vector control.
エッジ検出部11は、位置パルス信号の入力を受け付けるものである。エッジ検出部11は、当該入力された位置パルス信号における個々のエッジを検出するものである。すなわち、エッジ検出部11は、U相位置パルス信号における個々のアップエッジ、V相位置パルス信号における個々のアップエッジ、及びW相位置パルス信号における個々のアップエッジを検出するものである。または、エッジ検出部11は、U相位置パルス信号における個々のダウンエッジ、V相位置パルス信号における個々のダウンエッジ、及びW相位置パルス信号における個々のダウンエッジを検出するものである。または、エッジ検出部11は、U相位置パルス信号における個々のアップエッジ及び個々のダウンエッジ、V相位置パルス信号における個々のアップエッジ及び個々のダウンエッジ、並びにW相位置パルス信号における個々のアップエッジ及び個々のダウンエッジを検出するものである。
The edge detection unit 11 receives an input of a position pulse signal. The edge detection unit 11 detects each edge in the input position pulse signal. That is, the edge detector 11 detects each up edge in the U-phase position pulse signal, each up edge in the V-phase position pulse signal, and each up edge in the W-phase position pulse signal. Alternatively, the edge detector 11 detects individual down edges in the U-phase position pulse signal, individual down edges in the V-phase position pulse signal, and individual down edges in the W-phase position pulse signal. Alternatively, the edge detection unit 11 may include individual up edges and individual down edges in the U-phase position pulse signal, individual up edges and individual down edges in the V phase position pulse signal, and individual up edges in the W phase position pulse signal. Edges and individual down edges are detected.
エッジ検出部11は、これらのエッジの検出に応じて、単発パルス状の信号(以下「更新パルス信号」という。)を出力するものである。すなわち、更新パルス信号における個々のパルスは、位置パルス信号における個々のエッジに対応するものである。以下、更新パルス信号における個々のパルスを「更新パルス」ということがある。図5は、U相位置パルス信号、V相位置パルス信号、W相位置パルス信号及び更新パルス信号の例を示している。図5に示す例においては、各相に対応する位置パルスの出力周期が電気角360度であるのに対して、更新パルスの出力周期が電気角60度である。
The edge detection unit 11 outputs a single pulse signal (hereinafter referred to as “update pulse signal”) in response to the detection of these edges. That is, each pulse in the update pulse signal corresponds to each edge in the position pulse signal. Hereinafter, each pulse in the update pulse signal may be referred to as "update pulse". FIG. 5 shows an example of the U-phase position pulse signal, the V-phase position pulse signal, the W-phase position pulse signal, and the update pulse signal. In the example shown in FIG. 5, the output cycle of the position pulse corresponding to each phase is 360 electrical degrees, whereas the output cycle of the update pulse is 60 electrical degrees.
不定周期位置算出部12は、更新パルス信号の入力を受け付けるものである。不定周期位置算出部12は、当該入力された更新パルス信号の値が1となる度に、ロータの磁極位置(以下単に「位置」ということがある。)θeを算出するものである。ここで、θeは電気角であり、θeの単位はラジアン(rad)である。
The indefinite period position calculation unit 12 receives the input of the update pulse signal. The indefinite cycle position calculation unit 12 calculates the magnetic pole position (hereinafter, simply referred to as “position”) θ e of the rotor every time the value of the input update pulse signal becomes 1. Here, θ e is an electrical angle, and the unit of θ e is radian (rad).
すなわち、不定周期位置算出部12には、互いに連続する各2個の更新パルス間の区間における位置θeの変化量dθeの絶対値|dθe|を示す情報が予め記憶されている。不定周期位置算出部12は、U相位置パルス、V相位置パルス及びW相位置パルスの出力順に基づき、ロータの回転方向を判定する。不定周期位置算出部12は、前回の更新パルスの出力時における位置θeに対して、当該記憶されている情報が示す値|dθe|を当該判定の結果に応じて加算又は減算することにより、今回の更新パルスの出力時における位置θeを算出する。不定周期位置算出部12は、次回の更新パルスの出力時における位置θeが算出されるまで、当該算出された位置θe、すなわち今回の更新パルスの出力時における位置θeを出力用に保持する。
That is, the indefinite period position calculation unit 12 stores in advance information indicating the absolute value | dθ e | of the change amount dθ e of the position θ e in the interval between each two consecutive update pulses. The indefinite cycle position calculation unit 12 determines the rotation direction of the rotor based on the output order of the U-phase position pulse, the V-phase position pulse, and the W-phase position pulse. The indefinite period position calculating unit 12 adds or subtracts the value | dθ e | indicated by the stored information to or from the position θ e at the time of outputting the previous update pulse according to the result of the determination. , The position θ e at the time of outputting the current update pulse is calculated. The indefinite cycle position calculation unit 12 holds the calculated position θ e , that is, the position θ e at the time of outputting the current update pulse for output until the position θ e at the time of outputting the next update pulse is calculated. To do.
不定周期速度算出部13は、更新パルス信号の入力を受け付けるものである。不定周期速度算出部13は、当該入力された更新パルス信号の値が1となる度に、すなわち不定周期位置算出部12が位置θeを算出する度に、当該算出された位置θeを不定周期位置算出部12から取得するものである。不定周期速度算出部13は、位置θeを取得する度に、ロータの速度ωe_aveを算出するものである。ここで、ωe_aveは前回の更新パルスの出力時から今回の更新パルスの出力時までの区間における電気角速度ωeの平均値であり、ωe_aveの単位はラジアン毎秒(rad/s)である。
The indefinite period speed calculation unit 13 receives the input of the update pulse signal. The indefinite cycle speed calculation unit 13 uncertains the calculated position θ e each time the value of the input update pulse signal becomes 1, that is, every time the indefinite cycle position calculation unit 12 calculates the position θ e . It is acquired from the periodic position calculation unit 12. The indefinite cycle speed calculation unit 13 calculates the rotor speed ω e_ave every time the position θ e is acquired. Here, ω e_ave is the average value of the electrical angular velocity ω e in the section from the time of the output of the previous update pulse to the output of the current update pulse, and the unit of ω e_ave is radian per second (rad / s).
すなわち、不定周期速度算出部13には、位置センサ4の分解能θe_resを示す情報が予め記憶されている。不定周期速度算出部13は、前回の更新パルスの出力時から今回の更新パルスの出力時までの時間Tωeを算出する。不定周期速度算出部13は、前回の更新パルスの出力時から今回の更新パルスの出力時までの区間における変化量dθeの正負に基づき、以下の式(1)により速度ωe_aveを算出する。なお、当該式(1)におけるsgn(・)は符号関数である。不定周期速度算出部13は、次回の更新パルスの出力時における速度ωe_aveが算出されるまで、当該算出された速度ωe_ave、すなわち今回の更新パルスの出力時における速度ωe_aveを出力用に保持する。
That is, the indefinite cycle speed calculation unit 13 stores in advance information indicating the resolution θ e — res of the position sensor 4. The indefinite cycle speed calculation unit 13 calculates the time T ωe from the output of the previous update pulse to the output of the current update pulse. The indefinite cycle speed calculation unit 13 calculates the speed ω e_ave by the following formula (1) based on the positive / negative of the change amount dθ e in the section from the output of the previous update pulse to the output of the current update pulse. Note that sgn (·) in the equation (1) is a sign function. The indefinite period speed calculation unit 13 holds the calculated speed ω e_ave , that is, the speed ω e_ave at the time of outputting the current update pulse for output until the speed ω e_ave at the time of outputting the next update pulse is calculated. To do.
ここで、アクチュエータ装置200が動作しているとき、更新パルスの出力周期はロータの回転速度に応じて変動する。このため、不定周期位置算出部12による位置θeの算出処理及び不定周期速度算出部13による速度ωe_aveの算出処理は、いずれも不定周期に実行されるものである。不定周期位置算出部12が位置θeを不定周期に算出することにより、仮に不定周期位置算出部12が位置θeを定周期に算出する場合に比して、ロータの磁極位置の検出漏れが発生するのを抑制することができる。不定周期速度算出部13が速度ωe_aveを不定周期に算出することにより、仮に不定周期速度算出部13が速度ωe_aveを定周期に算出する場合に比して、前回の更新パルスの出力時から今回の更新パルスの出力時までの区間における電気角速度ωeの平均値、すなわち速度ωe_aveを正確に算出することができる。
Here, when the actuator device 200 is operating, the output cycle of the update pulse fluctuates according to the rotation speed of the rotor. Therefore, the calculation processing of the position θ e by the indefinite cycle position calculation unit 12 and the calculation processing of the speed ω e_ave by the indefinite cycle speed calculation unit 13 are both executed in an indefinite cycle. Since the indefinite cycle position calculation unit 12 calculates the position θ e in an indefinite cycle, detection leakage of the magnetic pole position of the rotor is less than that in the case where the indefinite cycle position calculation unit 12 calculates the position θ e in a definite cycle. It is possible to suppress the occurrence. By indefinite period speed calculating section 13 calculates the velocity omega E_ave indefinite period, if compared with the case where indefinite period speed calculating section 13 calculates the velocity omega E_ave to periodic, from the time the output of the previous update pulse It is possible to accurately calculate the average value of the electrical angular velocities ω e , that is, the velocity ω e_ave in the section until the output of the update pulse this time.
エッジ検出部11、不定周期位置算出部12及び不定周期速度算出部13により、回転状態演算部10が構成されている。上記のとおり、回転状態演算部10により実行される処理は、不定周期に実行される処理を含むものである。このため、回転状態演算部10の制御周期は不定である。
The edge detection unit 11, the indefinite cycle position calculation unit 12, and the indefinite cycle speed calculation unit 13 constitute a rotation state calculation unit 10. As described above, the processing executed by the rotation state calculation unit 10 includes the processing executed in an indefinite cycle. Therefore, the control cycle of the rotation state calculation unit 10 is indefinite.
電流指令生成部21は、モータ制御装置100に対する上位の電子制御ユニット(以下「ECU」と記載する。)5により生成された位置指令θe_dirをECU5から取得するものである。また、電流指令生成部21は、不定周期位置算出部12により算出された位置θeを不定周期位置算出部12から取得するものである。
The current command generation unit 21 acquires from the ECU 5 the position command θ e_dir generated by a higher-order electronic control unit (hereinafter referred to as “ECU”) 5 for the motor control device 100. Further, the current command generation unit 21 acquires the position θ e calculated by the indefinite period position calculation unit 12 from the indefinite period position calculation unit 12.
電流指令生成部21は、当該取得された位置指令θe_dir及び位置θeに基づき、いわゆる「古典制御」により、位置指令θe_dirに対する位置θeの差分値(以下「位置偏差」という。)δθeを零値に近づけるための電流指令を生成するものである。より具体的には、電流指令生成部21は、PID(Proportional Integral Differential)制御により、q軸における電流指令(以下「q軸電流指令」という。)iq
*を生成するものである。
The current command generation unit 21 performs a so-called “classical control” on the basis of the acquired position command θ e_dir and position θ e , and a difference value of the position θ e with respect to the position command θ e_dir (hereinafter referred to as “position deviation”) δθ. A current command for making e close to zero is generated. More specifically, the current command generation unit 21 generates a current command for the q-axis (hereinafter referred to as “q-axis current command”) i q * by PID (Proportional Integral Differential) control.
制御指令生成部22は、電流指令生成部21により生成されたq軸電流指令iq
*を電流指令生成部21から取得するものである。また、制御指令生成部22は、d軸における電流指令(以下「d軸電流指令」という。)id
*を電流指令生成部21から取得するものである。さらに、制御指令生成部22は、不定周期位置算出部12により算出された位置θeを不定周期位置算出部12から取得するものである。
The control command generation unit 22 acquires the q-axis current command i q * generated by the current command generation unit 21 from the current command generation unit 21. Further, the control command generation unit 22 acquires a current command for the d-axis (hereinafter referred to as “d-axis current command”) i d * from the current command generation unit 21. Further, the control command generation unit 22 acquires the position θ e calculated by the indefinite period position calculation unit 12 from the indefinite period position calculation unit 12.
ここで、d軸電流指令id
*は所定値に設定されている。例えば、d軸電流指令id
*は零値に設定されている。ただし、d軸電流指令id
*は零値に限定されるものではなく、正値又は負値であっても良い。また、d軸電流指令id
*は固定値であっても良く、又は可変値であっても良い。以下、d軸電流指令id
*及びq軸電流指令iq
*を総称して「dq軸電流指令」ということがある。
Here, the d-axis current command id * is set to a predetermined value. For example, the d-axis current command id * is set to zero. However, the d-axis current command id * is not limited to a zero value, and may be a positive value or a negative value. Further, the d-axis current command id * may be a fixed value or a variable value. Hereinafter, the d-axis current command i d * and the q-axis current command i q * may be collectively referred to as “dq-axis current command”.
制御指令生成部22は、当該取得されたdq軸電流指令id
*,iq
*及び位置θeに基づき、電圧指令演算部30に対する制御指令(以下単に「制御指令」という。)を生成するものである。
Control command generating unit 22, the acquired dq axis current command i d *, based on i q * and the position theta e, the control command to the voltage command calculation unit 30 (hereinafter simply referred to as "control command".) To produce a It is a thing.
すなわち、d軸及びq軸による座標系(以下「dq座標系」という。)におけるブラシレスDCモータ2の電圧方程式は、以下の式(2)により与えられる。
That is, the voltage equation of the brushless DC motor 2 in the coordinate system based on the d-axis and the q-axis (hereinafter referred to as “dq coordinate system”) is given by the following equation (2).
ここで、vd
*はd軸における電圧指令(以下「d軸電圧指令」という。)であり、vd
*の単位はボルト(V)である。vq
*はq軸における電圧指令(以下「q軸電圧指令」という。)であり、vq
*の単位はボルト(V)である。以下、d軸電圧指令vd
*及びq軸電圧指令vq
*を総称して「dq軸電圧指令」ということがある。
Here, v d * is a voltage command on the d-axis (hereinafter referred to as “d-axis voltage command”), and the unit of v d * is volt (V). v q * is a voltage command on the q-axis (hereinafter referred to as “q-axis voltage command”), and the unit of v q * is volt (V). Hereinafter, the d-axis voltage command v d * and the q-axis voltage command v q * may be collectively referred to as “dq-axis voltage command”.
また、id
*はd軸電流指令であり、id
*の単位はアンペア(A)である。iq
*はq軸電流指令であり、iq
*の単位はアンペア(A)である。
Further, i d * is a d-axis current command, and the unit of i d * is ampere (A). i q * is the q-axis current command, i q * units are ampere (A).
また、Raは電機子巻線抵抗であり、Raの単位はオーム(Ω)である。
R a is the armature winding resistance, and the unit of R a is ohm (Ω).
また、Ldはd軸におけるインダクタンス(以下「d軸インダクタンス」という。)であり、Ldの単位はヘンリー(H)である。Lqはq軸におけるインダクタンス(以下「q軸インダクタンス」という。)であり、Lqの単位はヘンリー(H)である。以下、d軸インダクタンスLd及びq軸インダクタンスLqを総称して「dq軸インダクタンス」ということがある。なお、ブラシレスDCモータ2が表面磁石型である場合、dq軸インダクタンスLd,Lqは互いに同等の値である。
Further, L d is the inductance on the d-axis (hereinafter referred to as “d-axis inductance”), and the unit of L d is Henry (H). L q is the inductance on the q-axis (hereinafter referred to as “q-axis inductance”), and the unit of L q is Henry (H). Hereinafter, the d-axis inductance L d and the q-axis inductance L q may be collectively referred to as “dq-axis inductance”. When the brushless DC motor 2 is a surface magnet type, the dq-axis inductances L d and L q have the same value.
また、ωeは電気角速度であり、ωeの単位はラジアン毎秒(rad/s)である。なお、ωeはθeの時間微分値に対応するものである。
Further, ω e is an electrical angular velocity, and the unit of ω e is radian per second (rad / s). Note that ω e corresponds to the time differential value of θ e .
また、φは電機子巻線鎖交磁束数であり、φの単位はボルト秒毎ラジアン(Vs/rad)である。
Φ is the number of flux linkages in the armature winding, and the unit of Φ is radians per volt (Vs / rad).
電機子巻線抵抗Ra、d軸インダクタンスLd、q軸インダクタンスLq及び電機子巻線鎖交磁束数φの各々は、ブラシレスDCモータ2の仕様に応じた定数である。以下、電機子巻線抵抗Ra、d軸インダクタンスLd、q軸インダクタンスLq及び電機子巻線鎖交磁束数φを総称して「モータ定数」ということがある。
The armature winding resistance R a , the d-axis inductance L d , the q-axis inductance L q, and the armature winding interlinkage magnetic flux number φ are constants according to the specifications of the brushless DC motor 2. Hereinafter, the armature winding resistance R a , the d-axis inductance L d , the q-axis inductance L q, and the armature winding interlinkage magnetic flux number φ may be collectively referred to as a “motor constant”.
d軸電流指令id
*が零値に設定されている場合(すなわちid
*=0である場合)、上記式(2)を整理することにより、以下の式(3)が得られる。
When the d-axis current command id * is set to a zero value (that is, when id * = 0), the following equation (3) is obtained by rearranging the above equation (2).
電気角速度ωeは、以下の式(4)により算出される。
The electrical angular velocity ω e is calculated by the following equation (4).
ここで、θe(n-1)は制御指令生成部22により前回取得された位置θeであり、θe(n)は制御指令生成部22により今回取得された位置θeである。すなわち、nは、制御指令生成部22による位置θeの取得に係るサンプル番号である。
Here, θ e (n−1) is the position θ e previously acquired by the control command generation unit 22, and θ e (n) is the position θ e acquired this time by the control command generation unit 22. That is, n is a sample number related to the acquisition of the position θ e by the control command generation unit 22.
また、dTpは制御指令演算部20の制御周期である。すなわち、制御指令演算部20は所定の制御周期dTpを有するものである。この周期dTpは、例えば、4ミリ秒(ms)に設定されている。以下、この周期dTpを「第1周期」ということがある。
Further, dT p is a control cycle of the control command calculation unit 20. That is, the control command calculator 20 has a predetermined control cycle dT p . The period dT p is set to 4 milliseconds (ms), for example. Hereinafter, this cycle dT p may be referred to as “first cycle”.
以上の内容を踏まえて、制御指令生成部22は、以下のように制御指令を生成する。すなわち、制御指令生成部22には、ブラシレスDCモータ2の仕様を示す情報が予め記憶されている。制御指令生成部22は、当該記憶されている情報が示す仕様に基づき、上記式(3)の計算に用いられるモータ定数Ra,Ld,Lq,φの値を設定する。
Based on the above contents, the control command generation unit 22 generates a control command as follows. That is, the control command generation unit 22 stores in advance information indicating the specifications of the brushless DC motor 2. The control command generator 22 sets the values of the motor constants R a , L d , L q , and φ used in the calculation of the above equation (3) based on the specifications indicated by the stored information.
また、制御指令生成部22には、第1周期dTpを示す情報が予め記憶されている。制御指令生成部22は、当該記憶されている情報が示す第1周期dTp、今回取得された位置θe(n)及び前回取得された位置θe(n-1)に基づき、上記式(4)により電気角速度ωeを算出する。このとき、制御指令生成部22は、いわゆる「疑似微分器」を用いて電気角速度ωeを算出するものであっても良い。
In addition, the control command generation unit 22 stores in advance information indicating the first cycle dT p . Based on the first cycle dT p indicated by the stored information, the position θ e (n) acquired this time, and the position θ e (n−1) acquired last time, the control command generation unit 22 calculates the above formula ( The electric angular velocity ω e is calculated according to 4). At this time, the control command generation unit 22 may calculate the electrical angular velocity ω e using a so-called “pseudo differentiator”.
次いで、制御指令生成部22は、当該設定されたモータ定数Ra,Ld,Lq,φ、当該算出された電気角速度ωe及び今回取得されたdq軸電流指令id
*,iq
*に基づき、上記式(3)によりdq軸電圧指令vd
*,vq
*を生成する。
Next, the control command generation unit 22 sets the set motor constants R a , L d , L q , φ, the calculated electrical angular velocity ω e, and the dq axis current commands i d * , i q * acquired this time . Based on the above, the dq axis voltage commands v d * , v q * are generated by the above equation (3).
次いで、制御指令生成部22は、当該生成されたdq軸電圧指令vd
*,vq
*に基づき、以下の式(5)により、dq座標系における電圧ベクトルVr
*を算出する。また、制御指令生成部22は、当該生成されたdq軸電圧指令vd
*,vq
*に基づき、以下の式(6)により、dq座標系における電圧位相θdqを算出する。
Next, the control command generator 22 calculates the voltage vector V r * in the dq coordinate system by the following equation (5) based on the generated dq axis voltage commands v d * , v q * . Further, the control command generation unit 22 calculates the voltage phase θ dq in the dq coordinate system by the following formula (6) based on the generated dq axis voltage commands v d * , v q * .
図6は、dq軸電圧指令vd
*,vq
*並びにdq軸電圧指令vd
*,vq
*に対応する電圧ベクトルVr
*及び電圧位相θdqがdq座標系にて極座標表示された状態の例を示す説明図である。なお、図中θは、θdq+θeによる電気角を示している。制御指令生成部22は、当該算出された電圧ベクトルVr
*の大きさ及び電圧位相θdqを含む制御指令を生成する。
In FIG. 6, the voltage vector V r * and the voltage phase θ dq corresponding to the dq-axis voltage commands v d * , v q * and the dq-axis voltage commands v d * , v q * are displayed in polar coordinates on the dq coordinate system. It is explanatory drawing which shows the example of a state. In the figure, θ indicates the electrical angle by θ dq + θ e . The control command generation unit 22 generates a control command including the magnitude of the calculated voltage vector V r * and the voltage phase θ dq .
このように、ブラシレスDCモータ2の電圧方程式を用いることにより、dq軸電圧指令vd
*,vq
*を生成するにあたり、ブラシレスDCモータ2の駆動電流の検出を不要とすることができるのはもちろんのこと、ブラシレスDCモータ2の駆動電流の推定も不要とすることができる。この結果、ブラシレスDCモータ2の駆動電流について、フィードフォワードによるベクトル制御を実現することができる。
As described above, by using the voltage equation of the brushless DC motor 2, it is not necessary to detect the drive current of the brushless DC motor 2 when generating the dq axis voltage commands v d * , v q *. Needless to say, it is not necessary to estimate the drive current of the brushless DC motor 2. As a result, the feed-forward vector control of the drive current of the brushless DC motor 2 can be realized.
電流指令生成部21及び制御指令生成部22により、制御指令演算部20が構成されている。上記のとおり、制御指令演算部20は所定の制御周期dTpを有するものである。すなわち、電流指令生成部21が位置指令θe_dir及び位置θeを取得する処理、電流指令生成部21がq軸電流指令iq
*を生成する処理、制御指令生成部22がdq軸電流指令id
*,iq
*及び位置θeを取得する処理、並びに制御指令生成部22が制御指令を生成する処理などは、第1周期dTp毎に実行されるものである。
The current command generator 21 and the control command generator 22 constitute a control command calculator 20. As described above, the control command calculator 20 has a predetermined control cycle dT p . That is, the current command generation unit 21 acquires the position command θ e — dir and the position θ e , the current command generation unit 21 generates the q-axis current command i q * , and the control command generation unit 22 controls the dq-axis current command i. The process of acquiring d * , i q * and the position θ e , the process of generating the control command by the control command generation unit 22, and the like are executed every first cycle dT p .
補正位置算出部31は、制御指令生成部22により生成された制御指令を制御指令生成部22から取得するものである。また、補正位置算出部31は、不定周期位置算出部12により算出された位置θeを不定周期位置算出部12から取得するとともに、不定周期速度算出部13により算出された速度ωe_aveを不定周期速度算出部13から取得するものである。さらに、補正位置算出部31は、更新パルス信号の入力を受け付けるものである。
The corrected position calculation unit 31 acquires the control command generated by the control command generation unit 22 from the control command generation unit 22. Further, the correction position calculation unit 31 acquires the position θ e calculated by the indefinite cycle position calculation unit 12 from the indefinite cycle position calculation unit 12, and also calculates the speed ω e_ave calculated by the indefinite cycle speed calculation unit 13 in the indefinite cycle. It is acquired from the speed calculation unit 13. Further, the corrected position calculation unit 31 receives the input of the update pulse signal.
補正位置算出部31は、当該取得された制御指令に含まれる電圧位相θdq、当該取得された位置θe及び速度ωe_ave、並びに当該入力された更新パルス信号の値に基づき、以下の式(7)による計算及び以下の式(8)による計算を実行するものである。
The corrected position calculation unit 31 calculates the following equation based on the voltage phase θ dq included in the acquired control command, the acquired position θ e and the speed ω e_ave , and the value of the input update pulse signal. The calculation according to 7) and the calculation according to the following equation (8) are executed.
ここで、dTcは電圧指令演算部30の制御周期である。すなわち、電圧指令演算部30は所定の制御周期dTcを有するものである。上記式(7)による計算及び上記式(8)による計算は、この周期dTc毎に実行されるものである。この周期dTcは、例えば、0.5ミリ秒(ms)に設定されている。以下、この周期dTcを「第2周期」ということがある。第2周期dTcは、第1周期dTp(例えば4ms)に比して短いものである。また、第2周期dTcは、更新パルスの出力周期に比して短くなり得るものである。
Here, dT c is the control cycle of the voltage command calculation unit 30. That is, the voltage command computation unit 30 are those having a predetermined control cycle dT c. The calculation by the above formula (7) and the calculation by the above formula (8) are executed for each period dT c . The period dT c is set to 0.5 milliseconds (ms), for example. Hereinafter, this cycle dT c may be referred to as a “second cycle”. The second period dT c is shorter than the first period dT p (for example, 4 ms). Further, the second cycle dT c can be shorter than the output cycle of the update pulse.
また、iは、個々の第1周期dTp内にて、第2周期dTcが経過する度に1が加算される(すなわちインクリメントされる)変数であり、かつ、更新パルス信号の値が1となる度に(すなわち更新パルスが出力される度に)零値にリセットされる変数である。例えば、第1周期dTpが4msに設定されており、かつ、第2周期dTcが0.5msに設定されている場合、変数iは0以上7以下の整数値を取り得るものである。また、Δθdqの上限値及び下限値は、位置パルス信号の仕様に応じた値である。例えば、更新パルスの出力周期が電気角60度である場合(図5参照)、Δθdqの上限値は+π/3radであり、Δθdqの下限値は-π/3radである。
Further, i is a variable in which 1 is added (that is, incremented) every time the second period dT c elapses within each first period dT p , and the value of the update pulse signal is 1 Is a variable that is reset to zero every time (i.e., whenever an update pulse is output). For example, when the first period dT p is set to 4 ms and the second period dT c is set to 0.5 ms, the variable i can take an integer value of 0 or more and 7 or less. The upper limit value and the lower limit value of Δθ dq are values according to the specifications of the position pulse signal. For example, when the output cycle of the update pulse is an electrical angle of 60 degrees (see FIG. 5), the upper limit value of Δθ dq is + π / 3rad and the lower limit value of Δθ dq is −π / 3rad.
変数iのインクリメントの要否の判定には、例えば、SR(Set Reset)フリップフロップが用いられる。すなわち、当該SRフリップフロップには、更新パルス信号と、第2周期dTcに対応する連続パルス状の信号とが入力される。補正位置算出部31は、個々の第2周期dTcにおいて、当該SRフリップフロップの出力値に基づき、変数iのインクリメントの要否を判定する。
For example, an SR (Set Reset) flip-flop is used to determine whether or not the variable i needs to be incremented. That is, the update pulse signal and the continuous pulse signal corresponding to the second period dT c are input to the SR flip-flop. The corrected position calculation unit 31 determines whether or not the variable i needs to be incremented in each second cycle dT c based on the output value of the SR flip-flop.
また、変数iのインクリメントの要否の判定は、位置θe及び速度ωe_aveの取得の要否の判定でもある。補正位置算出部31は、更新パルスが出力される度に、すなわち変数iがインクリメントされる度に、位置θe及び速度ωe_aveを取得する。補正位置算出部31は、次回の更新パルスが出力されるまで、当該取得された速度ωe_aveを上記式(7)による計算用に保持するともに、当該取得された位置θeを上記式(8)による計算用に保持する。
The determination of whether or not the variable i needs to be incremented is also a determination of whether or not the position θ e and the velocity ω e_ave need to be acquired. The corrected position calculation unit 31 acquires the position θ e and the speed ω e_ave each time the update pulse is output, that is, each time the variable i is incremented. The corrected position calculation unit 31 holds the acquired speed ω e — ave for calculation by the above equation (7) and outputs the acquired position θ e until the next update pulse is output. ) For calculation.
すなわち、上記式(8)による計算は、個々の第1周期dTp内にて、電圧位相θdqに対応する電気角θ(図6参照)の値を第2周期dTc毎に時間的に補間することにより、複数個の位置(以下「補正位置」ということがある。)θe
*を順次算出するものである。また、上記式(7)による計算は、当該補間に用いられる値(以下「補間値」という。)Δθdqを第2周期dTc毎に算出するものである。当該補間は位置θe及び補間値Δθdqに基づくものであり、補間値Δθdqは速度ωe_aveに基づくものである。当該複数個の補正位置θe
*の各々は、3相電圧指令vu
*,vv
*,vw
*の生成に用いられるものである。
That is, in the calculation by the above equation (8), the value of the electrical angle θ (see FIG. 6) corresponding to the voltage phase θ dq is temporally calculated for each second period dT c within each first period dT p . By interpolating, a plurality of positions (hereinafter sometimes referred to as “correction positions”) θ e * are sequentially calculated. In addition, the calculation by the above formula (7) is to calculate a value (hereinafter referred to as “interpolation value”) Δθ dq used for the interpolation for each second cycle dT c . The interpolation is based on the position θ e and the interpolation value Δθ dq , and the interpolation value Δθ dq is based on the speed ω e_ave . Each of the plurality of correction positions θ e * is used to generate the three-phase voltage commands v u * , v v * , v w * .
当該補間により、位置センサ4が低分解能であるにもかかわらず、3相電圧指令vu
*,vv
*,vw
*の生成に用いられる位置θe
*をソフトウェア的に高分解能にすることができる。この結果、モータ制御装置100によるベクトル制御の精度の向上を図ることができる。また、この位置θe
*を高分解能にしつつ、モータ制御装置100のうちの電圧指令演算部30を除く部位の制御周期(例えば制御指令演算部20の制御周期dTp)を電圧指令演算部30の制御周期dTcに比して長くすることができる。この結果、モータ制御装置100における演算負荷を低減することができる。
Due to the interpolation, the position θ e * used for generating the three-phase voltage commands v u * , v v * , v w * is made to have a high resolution by software even though the position sensor 4 has a low resolution. You can As a result, the accuracy of vector control by the motor control device 100 can be improved. Further, while the position θ e * is set to a high resolution, the control cycle (for example, the control cycle dT p of the control command calculation unit 20) of the portion of the motor control device 100 except the voltage command calculation unit 30 is set to the voltage command calculation unit 30. The control period dT c can be made longer. As a result, the calculation load on the motor control device 100 can be reduced.
電圧指令生成部32は、補正位置算出部31により算出された個々の補正位置θe
*を補正位置算出部31から取得するものである。また、電圧指令生成部32は、制御指令生成部22により生成された制御指令を制御指令生成部22から取得するものである。電圧指令生成部32は、当該取得された個々の補正位置θe
*、及び当該取得された制御指令に含まれる電圧ベクトルVr
*の大きさに基づき、以下の式(9)により3相電圧指令vu
*,vv
*,vw
*を生成するものである。
The voltage command generation unit 32 acquires the individual correction positions θ e * calculated by the correction position calculation unit 31 from the correction position calculation unit 31. Further, the voltage command generation unit 32 acquires the control command generated by the control command generation unit 22 from the control command generation unit 22. The voltage command generation unit 32 calculates the three-phase voltage by the following equation (9) based on the acquired individual correction position θ e * and the magnitude of the voltage vector V r * included in the acquired control command. The commands v u * , v v * , v w * are generated.
ここで、vu_normal
*及びvv_normal
*の各々は、片振幅の最大値が1に正規化された電圧指令(以下「正規化電圧指令」という。)である。電圧指令生成部32には、電気角0~2πラジアン(rad)の角度範囲に亘る、補正位置θe
*の値と正規化電圧指令vu_normal
*,vv_normal
*の値との対応関係を示すテーブルが予め記憶されている。電圧指令生成部32は、当該記憶されているテーブルに基づき、補正位置算出部31により算出された個々の補正位置θe
*の値に応じて、上記式(9)の計算に用いられる正規化電圧指令vu_normal
*,vv_normal
*の値を設定する。図7は、補正位置θe
*の値と正規化電圧指令vu_normal
*,vv_normal
*の値との対応関係の例を示している。
Here, each of v u_normal * and v v_normal * is a voltage command in which the maximum value of one-sided amplitude is normalized to 1 (hereinafter referred to as “normalized voltage command”). The voltage command generation unit 32 shows the correspondence between the value of the correction position θ e * and the values of the normalized voltage commands v u_normal * , v v_normal * over the angular range of electrical angle 0 to 2π radian (rad). The table is stored in advance. The voltage command generation unit 32 uses the stored table to normalize the calculation of the above equation (9) according to the value of each correction position θ e * calculated by the correction position calculation unit 31. The values of the voltage commands v u_normal * and v v_normal * are set. FIG. 7 shows an example of the correspondence relationship between the value of the corrected position θ e * and the values of the normalized voltage commands v u_normal * , v v_normal * .
電圧指令生成部32は、当該生成された3相電圧指令vu
*,vv
*,vw
*を駆動回路3に出力するものである。駆動回路3は、上記のとおり、3相電圧指令vu
*,vv
*,vw
*に応じた電流を三相巻線に供給するものである。
The voltage command generator 32 outputs the generated three-phase voltage commands v u * , v v * , v w * to the drive circuit 3. As described above, the drive circuit 3 supplies a current according to the three-phase voltage commands v u * , v v * , v w * to the three-phase winding.
補正位置算出部31及び電圧指令生成部32により、電圧指令演算部30が構成されている。上記のとおり、制御指令演算部20は所定の制御周期dTcを有するものである。すなわち、補正位置算出部31が上記式(7)により補間値Δθdqを算出する処理、補正位置算出部31が上記式(8)により補正位置θe
*を算出する処理、及び電圧指令生成部32が上記式(9)により3相電圧指令vu
*,vv
*,vw
*を生成する処理などは、第2周期dTc毎に実行されるものである。
The corrected position calculation unit 31 and the voltage command generation unit 32 form a voltage command calculation unit 30. As described above, the control command calculator 20 has a predetermined control cycle dT c . That is, the correction position calculation unit 31 calculates the interpolation value Δθ dq by the above formula (7), the correction position calculation unit 31 calculates the correction position θ e * by the above formula (8), and the voltage command generation unit. The process of 32 generating the three-phase voltage commands v u * , v v * , v w * by the above equation (9) is executed every second cycle dT c .
回転状態演算部10、制御指令演算部20及び電圧指令演算部30により、モータ制御装置100の要部が構成されている。ブラシレスDCモータ2、駆動回路3、位置センサ4及びモータ制御装置100により、アクチュエータ装置200の要部が構成されている。
The rotation state calculation unit 10, the control command calculation unit 20, and the voltage command calculation unit 30 form a main part of the motor control device 100. The brushless DC motor 2, the drive circuit 3, the position sensor 4, and the motor control device 100 constitute a main part of the actuator device 200.
次に、図8を参照して、モータ制御装置100の要部のハードウェア構成について説明する。
Next, with reference to FIG. 8, a hardware configuration of a main part of the motor control device 100 will be described.
図8Aに示す如く、モータ制御装置100はプロセッサ41及びメモリ42を有している。メモリ42には、回転状態演算部10、制御指令演算部20及び電圧指令演算部30の機能を実現するためのプログラムが記憶されている。メモリ42に記憶されているプログラムをプロセッサ41が読み出して実行することにより、回転状態演算部10、制御指令演算部20及び電圧指令演算部30の機能が実現される。
As shown in FIG. 8A, the motor control device 100 has a processor 41 and a memory 42. The memory 42 stores a program for realizing the functions of the rotation state calculation unit 10, the control command calculation unit 20, and the voltage command calculation unit 30. The functions of the rotation state calculation unit 10, the control command calculation unit 20, and the voltage command calculation unit 30 are realized by the processor 41 reading and executing the program stored in the memory 42.
または、図8Bに示す如く、モータ制御装置100は処理回路43を有している。この場合、回転状態演算部10、制御指令演算部20及び電圧指令演算部30の機能が専用の処理回路43により実現される。
Alternatively, as shown in FIG. 8B, the motor control device 100 has a processing circuit 43. In this case, the functions of the rotation state calculation unit 10, the control command calculation unit 20, and the voltage command calculation unit 30 are realized by the dedicated processing circuit 43.
または、モータ制御装置100はプロセッサ41、メモリ42及び処理回路43を有している(不図示)。この場合、回転状態演算部10、制御指令演算部20及び電圧指令演算部30の機能のうちの一部の機能がプロセッサ41及びメモリ42により実現されて、残余の機能が専用の処理回路43により実現される。
Alternatively, the motor control device 100 has a processor 41, a memory 42, and a processing circuit 43 (not shown). In this case, some of the functions of the rotation state calculation unit 10, the control command calculation unit 20, and the voltage command calculation unit 30 are implemented by the processor 41 and the memory 42, and the remaining functions are performed by the dedicated processing circuit 43. Will be realized.
プロセッサ41は、例えば、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、マイクロプロセッサ、マイクロコントローラ又はDSP(Digital Signal Processor)のうちの少なくとも一つを用いたものである。
The processor 41 uses, for example, at least one of a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a microprocessor, a microcontroller, and a DSP (Digital Signal Processor).
メモリ42は、例えば、半導体メモリ又は磁気ディスクのうちの少なくとも一方を用いたものである。より具体的には、メモリ42は、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、EPROM(Erasable Programmable Read Only Memory)、EEPROM(Electrically Erasable Programmable Read-Only Memory)、SSD(Solid State Drive)又はHDD(Hard Disk Drive)のうちの少なくとも一つを用いたものである。
The memory 42 uses, for example, at least one of a semiconductor memory and a magnetic disk. More specifically, the memory 42 includes a RAM (Random Access Memory), a ROM (Read Only Memory), a flash memory, an EPROM (Erasable Programmable Read Only Memory-Memory), and an EEPROM (Electrically Integrated Memory). At least one of State Drive) or HDD (Hard Disk Drive) is used.
処理回路43は、例えば、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)、FPGA(Field-Programmable Gate Array)、SoC(System-on-a-Chip)又はシステムLSI(Large-Scale Integration)のうちの少なくとも一つを用いたものである。
The processing circuit 43 may be, for example, an ASIC (Application Specific Integrated Circuit), a PLD (Programmable Logic Device), an FPGA (Field-Programmable Gate Array), or a SoC (Sonication) system. At least one of the above is used.
次に、図9のフローチャートを参照して、モータ制御装置100の動作について、制御指令演算部20及び電圧指令演算部30の動作を中心に説明する。
Next, with reference to the flowchart of FIG. 9, the operation of the motor control device 100 will be described focusing on the operation of the control command calculation unit 20 and the voltage command calculation unit 30.
なお、図9に示す処理のバックグラウンドにて、回転状態演算部10による各処理が実行されている。すなわち、エッジ検出部11による更新パルス信号の出力処理が連続的に実行されており、かつ、不定周期位置算出部12による位置θeの算出処理が不定周期に実行されており、かつ、不定周期速度算出部13による速度ωe_aveの算出処理が不定周期に実行されている。
It should be noted that each processing by the rotation state calculation unit 10 is executed in the background of the processing shown in FIG. 9. That is, the output processing of the update pulse signal by the edge detection unit 11 is continuously executed, the calculation processing of the position θ e by the indefinite cycle position calculation unit 12 is executed indefinitely, and the indefinite cycle is also generated. The calculation processing of the speed ω e_ave by the speed calculation unit 13 is executed in an indefinite cycle.
図9Aは、個々の第1周期dTp(例えば4ms)における電流指令生成部21の動作を示している。まず、ステップST1にて、電流指令生成部21は、ECU5により生成された位置指令θe_dirをECU5から取得するとともに、不定周期位置算出部12により算出された位置θeを不定周期位置算出部12から取得する。次いで、ステップST2にて、電流指令生成部21は、当該取得された位置指令θe_dir及び位置θeに基づき、古典制御(例えばPID制御)により、位置偏差δθeを零値に近づけるためのq軸電流指令iq
*を生成する。
FIG. 9A shows the operation of the current command generator 21 in each first cycle dT p (for example, 4 ms). First, in step ST1, the current command generation unit 21 acquires the position command θ e_dir generated by the ECU 5 from the ECU 5, and at the same time calculates the position θ e calculated by the non-fixed cycle position calculation unit 12 in the non-fixed cycle position calculation unit 12. To get from. Next, in step ST2, the current command generation unit 21 performs q to bring the position deviation δθ e close to a zero value by classical control (for example, PID control) based on the acquired position command θ e_dir and position θ e. The axis current command i q * is generated.
図9Bは、個々の第1周期dTp(例えば4ms)における制御指令生成部22の動作を示している。まず、ステップST11にて、制御指令生成部22は、電流指令生成部21により生成されたq軸電流指令iq
*(すなわちステップST2にて生成されたq軸電流指令iq
*)を電流指令生成部21から取得するとともに、所定値(例えば零値)のd軸電流指令id
*を電流指令生成部21から取得する。また、ステップST11にて、制御指令生成部22は、不定周期位置算出部12により算出された位置θeを不定周期位置算出部12から取得する。また、ステップST12にて、制御指令生成部22は、上記式(3)の計算に用いられるモータ定数Ra,Ld,Lq,φの値を設定する。
FIG. 9B shows the operation of the control command generation unit 22 in each first cycle dT p (for example, 4 ms). First, in step ST11, the control command generation unit 22 outputs the q-axis current command i q * generated by the current command generation unit 21 (that is, the q-axis current command i q * generated in step ST2) as a current command. The d-axis current command i d * having a predetermined value (for example, zero value) is acquired from the generation unit 21 and the current command generation unit 21. In step ST11, the control command generation unit 22 acquires the position θ e calculated by the indefinite period position calculation unit 12 from the indefinite period position calculation unit 12. Further, in step ST12, the control command generation unit 22 sets the values of the motor constants R a , L d , L q , and φ used in the calculation of the above formula (3).
次いで、制御指令生成部22は、当該取得されたdq軸電流指令id
*,iq
*、当該取得された位置θe(より具体的には前回のステップST11にて取得された位置θe(n-1)及び今回のステップST11にて取得された位置θe(n))、並びに当該設定されたモータ定数Ra,Ld,Lq,φに基づき、制御指令を生成する。
Next, the control command generator 22 acquires the acquired dq axis current commands i d * , i q * , the acquired position θ e (more specifically, the position θ e acquired in the previous step ST11). A control command is generated based on (n−1) and the position θ e (n) acquired in step ST11 this time, and the set motor constants R a , L d , L q , and φ.
すなわち、制御指令生成部22は、上記式(4)により電気角速度ωeを算出する(ステップST13)。次いで、制御指令生成部22は、上記式(3)によりdq軸電圧指令vd
*,vq
*を生成する(ステップST14)。次いで、制御指令生成部22は、上記式(5)により電圧ベクトルVr
*を算出するとともに、上記式(6)により電圧位相θdqを算出する(ステップST15)。次いで、制御指令生成部22は、当該算出された電圧ベクトルVr
*の大きさ及び電圧位相θdqを含む制御指令を生成する(ステップST16)。
That is, the control command generator 22 calculates the electrical angular velocity ω e by the above equation (4) (step ST13). Next, the control command generating unit 22 generates the dq axis voltage commands v d * , v q * by the above equation (3) (step ST14). Next, the control command generation unit 22 calculates the voltage vector V r * by the above equation (5) and calculates the voltage phase θ dq by the above equation (6) (step ST15). Next, the control command generation unit 22 generates a control command including the magnitude of the calculated voltage vector V r * and the voltage phase θ dq (step ST16).
図9Cは、個々の第1周期dTp(例えば4ms)における補正位置算出部31の動作を示している。まず、ステップST21にて、補正位置算出部31は、制御指令生成部22により生成された制御指令(すなわちステップST16にて生成された制御指令)を制御指令生成部22から取得する。次いで、補正位置算出部31は、以下のステップST22~ST24の処理を第2周期dTc(例えば0.5ms)毎に繰り返し実行する。
FIG. 9C shows the operation of the correction position calculation unit 31 in each first cycle dT p (for example, 4 ms). First, in step ST21, the corrected position calculation unit 31 acquires the control command generated by the control command generation unit 22 (that is, the control command generated in step ST16) from the control command generation unit 22. Next, the corrected position calculation unit 31 repeatedly executes the processing of steps ST22 to ST24 described below every second cycle dT c (for example, 0.5 ms).
すなわち、補正位置算出部31は、更新パルス信号の値が1となった場合(すなわち更新パルスの出力があった場合)、不定周期位置算出部12により算出された位置θeを不定周期位置算出部12から取得するとともに、不定周期速度算出部13により算出された速度ωe_aveを不定周期速度算出部13から取得する(ステップST22)。なお、更新パルス信号の値が0のままである場合(すなわち更新パルスの出力がなかった場合)、ステップST22の処理はスキップされる。
That is, when the value of the update pulse signal is 1 (that is, when the update pulse is output), the corrected position calculation unit 31 calculates the position θ e calculated by the indefinite cycle position calculation unit 12 as the indefinite cycle position calculation. The speed ω e — ave calculated by the indefinite period speed calculation unit 13 is acquired from the unit 12 as well as the indefinite period speed calculation unit 13 (step ST22). When the value of the update pulse signal remains 0 (that is, when the update pulse is not output), the process of step ST22 is skipped.
次いで、補正位置算出部31は、上記式(7)により補間値Δθdqを算出する(ステップST23)。当該式(7)の計算に用いられる速度ωe_aveは、今回の第2周期dTcにおけるステップST22にて取得された速度ωe_ave、又は前回以前の第2周期dTcにおけるステップST22にて取得されて計算用に保持されている速度ωe_aveである。
Next, the correction position calculation unit 31 calculates the interpolation value Δθ dq by the above equation (7) (step ST23). Speed omega E_ave used in the calculation of the formula (7) is obtained this time in the second period dT rate acquired at step ST22 in the c ω e_ave, or previous step ST22 in a previous second cycle dT c Is the velocity ω e — ave that is retained for calculation.
次いで、補正位置算出部31は、上記式(8)により補正位置θe
*を算出する(ステップST24)。当該式(8)の計算に用いられる電圧位相θdqは、ステップST21にて取得された制御指令に含まれるものである。当該式(8)の計算に用いられる位置θeは、今回の第2周期dTcにおけるステップST22にて取得された位置θe、又は前回以前の第2周期dTcにおけるステップST22にて取得されて計算用に保持されている位置θeである。
Next, the correction position calculation unit 31 calculates the correction position θ e * by the above equation (8) (step ST24). The voltage phase θ dq used in the calculation of the equation (8) is included in the control command acquired in step ST21. The position θ e used in the calculation of the equation (8) is acquired at the position θ e acquired in step ST22 in the second cycle dT c this time or in step ST22 in the second cycle dT c before the previous cycle. Position θ e held for calculation.
図9Dは、個々の第1周期dTp(例えば4ms)における電圧指令生成部32の動作を示している。まず、ステップST31にて、電圧指令生成部32は、制御指令生成部22により生成された制御指令(すなわちステップST16にて生成された制御指令)を制御指令生成部22から取得する。次いで、電圧指令生成部32は、以下のステップST32~ST34の処理を第2周期dTc(例えば0.5ms)毎に繰り返し実行する。
FIG. 9D shows the operation of the voltage command generator 32 in each first cycle dT p (for example, 4 ms). First, in step ST31, the voltage command generator 32 acquires the control command generated by the control command generator 22 (that is, the control command generated in step ST16) from the control command generator 22. Next, the voltage command generation unit 32 repeatedly executes the processing of steps ST32 to ST34 described below every second cycle dT c (for example, 0.5 ms).
すなわち、電圧指令生成部32は、補正位置算出部31により算出された補正位置θe
*(すなわち今回の第2周期dTcにおけるステップST24にて生成された補正位置θe
*)を補正位置算出部31から取得する(ステップST32)。次いで、電圧指令生成部32は、予め記憶されているテーブルに基づき、当該取得された補正位置θe
*の値に応じて、上記式(9)の計算に用いられる正規化電圧指令vu_normal
*,vv_normal
*の値を設定する(ステップST33)。次いで、電圧指令生成部32は、当該式(9)により3相電圧指令vu
*,vv
*,vw
*を生成する(ステップST34)。当該式(9)の計算に用いられる電圧ベクトルVr
*の大きさは、ステップST31にて取得された制御指令に含まれるものである。
That is, the voltage command generation unit 32 calculates the corrected position θ e * calculated by the corrected position calculation unit 31 (that is, the corrected position θ e * generated in step ST24 in the second cycle dT c this time). It is acquired from the unit 31 (step ST32). Next, the voltage command generating unit 32, based on the table stored in advance, according to the value of the acquired correction position θ e * , the normalized voltage command v u_normal * used in the calculation of the above formula (9) . , V v_normal * are set (step ST33). Next, the voltage command generation unit 32 generates the three-phase voltage commands v u * , v v * , v w * by the equation (9) (step ST34). The magnitude of the voltage vector V r * used in the calculation of the equation (9) is included in the control command acquired in step ST31.
なお、第1周期dTpは第2周期dTcに比して長い周期であれば良く、4ミリ秒に限定されるものではない。例えば、第1周期dTpは2ミリ秒に設定されているものであっても良い。また、第2周期dTcは第1周期dTpに比して短い周期であれば良く、0.5ミリ秒に限定されるものではない。
The first cycle dT p may be any cycle longer than the second cycle dT c and is not limited to 4 milliseconds. For example, the first period dT p may be set to 2 milliseconds. The second period dT c may be any period shorter than the first period dT p , and is not limited to 0.5 ms.
また、アクチュエータ装置200の用途は、車載用のバルブ装置1の開度制御に限定されるものではない。アクチュエータ装置200は、従来のアクチュエータ装置と同様の種々の用途に用いることができる。
Further, the use of the actuator device 200 is not limited to the opening control of the vehicle-mounted valve device 1. The actuator device 200 can be used in various applications similar to the conventional actuator device.
また、モータ制御装置100の用途は、アクチュエータ装置200におけるブラシレスDCモータ2の制御に限定されるものではない。ブラシレスDCモータ2は、従来のブラシレスDCモータと同様の種々の装置に用いることができる。モータ制御装置100は、当該種々の装置におけるブラシレスDCモータ2の制御に用いることができる。例えば、モータ制御装置100は、いわゆる「回転数制御」に用いられるものであっても良い。または、例えば、モータ制御装置100は、フィードバックによらずにdq軸電流指令id
*,iq
*を一定にする制御に用いられるものであっても良い。または、例えば、モータ制御装置100は、ブラシレスDCモータ2を連続回転させる制御に用いられるものであっても良い。
Further, the use of the motor control device 100 is not limited to the control of the brushless DC motor 2 in the actuator device 200. The brushless DC motor 2 can be used in various devices similar to the conventional brushless DC motor. The motor control device 100 can be used to control the brushless DC motor 2 in the various devices. For example, the motor control device 100 may be used for so-called "rotation speed control". Alternatively, for example, the motor control device 100 may be used for control that makes the dq axis current commands i d * , i q * constant without relying on feedback. Alternatively, for example, the motor control device 100 may be used for control of continuously rotating the brushless DC motor 2.
ただし、車載用のバルブ装置1の開度制御においては、アクチュエータ装置200を安価に実現する観点から、低分解能な位置センサ4を用いることが要求される。また、制御周期の長い(すなわち処理速度の低い)プロセッサ41又は処理回路43を用いることが要求される。これに対して、実施の形態1に係るモータ制御装置100は、低分解能な位置センサ4を用いてベクトル制御の精度の向上を図ることができ、かつ、電圧指令演算部30を除く部位の制御周期を長くすることができる。このため、車載用のバルブ装置1の開度制御においては、実施の形態1に係るモータ制御装置100及びアクチュエータ装置200を用いるのが特に好適である。
However, in controlling the opening degree of the vehicle-mounted valve device 1, it is required to use the low-resolution position sensor 4 from the viewpoint of realizing the actuator device 200 at a low cost. Further, it is required to use the processor 41 or the processing circuit 43 having a long control cycle (that is, a low processing speed). On the other hand, the motor control device 100 according to the first embodiment can improve the accuracy of vector control by using the low-resolution position sensor 4, and control the parts other than the voltage command calculation unit 30. The cycle can be lengthened. For this reason, in controlling the opening degree of the vehicle-mounted valve device 1, it is particularly preferable to use the motor control device 100 and the actuator device 200 according to the first embodiment.
また、制御指令演算部20は、アクチュエータ装置200内にてモータ制御装置100外に設けられているものであっても良い。すなわち、回転状態演算部10及び電圧指令演算部30によりモータ制御装置100の要部が構成されているものであっても良い。
The control command calculation unit 20 may be provided inside the actuator device 200 and outside the motor control device 100. That is, the main part of the motor control device 100 may be configured by the rotation state calculation unit 10 and the voltage command calculation unit 30.
以上のように、実施の形態1に係るモータ制御装置100は、ロータ用の位置センサ4を有するブラシレスDCモータ2に対する駆動電流を電流センサレス方式のベクトル制御により制御するモータ制御装置100であって、位置センサ4の出力に対応する位置パルス信号を用いてロータの位置θe及びロータの速度ωe_aveを算出する回転状態演算部10と、電気角θの値を速度ωe_aveに基づき時間的に補間することにより複数個の補正位置θe
*を順次算出するとともに、個々の補正位置θe
*に基づきブラシレスDCモータ2用の駆動回路3に対する3相電圧指令vu
*,vv
*,vw
*を生成する電圧指令演算部30と、を備える。当該補間により、位置センサ4が低分解能であっても、3相電圧指令vu
*,vv
*,vw
*の生成に用いられる位置θe
*をソフトウェア的に高分解能にすることができる。この結果、低分解能な位置センサ4を用いて、モータ制御装置100によるベクトル制御の精度の向上を図ることができる。また、この位置θe
*を高分解能にしつつ、モータ制御装置100のうちの電圧指令演算部30を除く部位の制御周期(例えば制御指令演算部20の制御周期dTp)を電圧指令演算部30の制御周期dTcに比して長くすることができる。この結果、モータ制御装置100における演算負荷を低減することができる。
As described above, the motor control device 100 according to the first embodiment is the motor control device 100 that controls the drive current for the brushless DC motor 2 having the rotor position sensor 4 by the vector control of the current sensorless system. A rotation state calculation unit 10 that calculates a rotor position θ e and a rotor speed ω e_ave using a position pulse signal corresponding to the output of the position sensor 4, and a value of an electrical angle θ is temporally interpolated based on the speed ω e_ave. By doing so, a plurality of correction positions θ e * are sequentially calculated, and three-phase voltage commands v u * , v v * , v w for the drive circuit 3 for the brushless DC motor 2 are calculated based on the individual correction positions θ e *. And a voltage command calculation unit 30 that generates * . By the interpolation, even if the position sensor 4 has a low resolution, the position θ e * used for generating the three-phase voltage commands v u * , v v * , v w * can have a high resolution by software. .. As a result, the precision of vector control by the motor control device 100 can be improved by using the low-resolution position sensor 4. Further, while the position θ e * is set to a high resolution, the control cycle (for example, the control cycle dT p of the control command calculation unit 20) of the portion of the motor control device 100 excluding the voltage command calculation unit 30 is set to the voltage command calculation unit 30. The control period dT c can be made longer. As a result, the calculation load on the motor control device 100 can be reduced.
また、回転状態演算部10は、位置パルス信号におけるエッジを検出して、エッジに対応する更新パルスを含む更新パルス信号を出力するエッジ検出部11と、更新パルスの出力に応じて不定周期に位置θeを算出する不定周期位置算出部12と、更新パルスの出力に応じて不定周期に速度ωe_aveを算出する不定周期速度算出部13と、を有する。不定周期位置算出部12が位置θeを不定周期に算出することにより、ロータの磁極位置の検出漏れが発生するのを抑制することができる。不定周期速度算出部13が速度ωe_aveを不定周期に算出することにより、前回の更新パルスの出力時から今回の更新パルスの出力時までの区間における電気角速度ωeの平均値、すなわち速度ωe_aveを正確に算出することができる。
In addition, the rotation state calculation unit 10 detects an edge in the position pulse signal and outputs an update pulse signal including an update pulse corresponding to the edge, and an edge detection unit 11 that outputs the update pulse signal at an indefinite cycle according to the output of the update pulse. It has an indefinite cycle position calculation unit 12 that calculates θ e, and an indefinite cycle speed calculation unit 13 that calculates the speed ω e_ave in an indefinite cycle according to the output of the update pulse. By calculating the position θ e in an indefinite cycle by the indefinite cycle position calculating unit 12, it is possible to suppress the omission of detection of the magnetic pole position of the rotor. By calculating the speed ω e_ave in an indefinite cycle by the indefinite cycle speed calculation unit 13, the average value of the electrical angular speed ω e in the section from the output of the previous update pulse to the output of the current update pulse, that is, the speed ω e_ave Can be accurately calculated.
また、位置パルス信号は、ロータが1回転する間に少なくとも1パルスが出力されるものである。かかる低分解能な位置センサ4を用いることにより、アクチュエータ装置200を安価に実現することができる。
Also, the position pulse signal is such that at least one pulse is output during one rotation of the rotor. By using such a low-resolution position sensor 4, the actuator device 200 can be realized at low cost.
また、モータ制御装置100は、位置指令θe_dirに対する位置θeの差分値(位置偏差δθe)に応じた電圧位相θdqを含む制御指令を生成する制御指令演算部20を備え、電圧指令演算部30は、電圧位相θdqに対応する電気角θの値を位置θe及び速度ωe_aveに基づき時間的に補間することにより複数個の補正位置θe
*を順次算出する。これにより、位置偏差δθeに応じたベクトル制御を実現することができる。
Further, the motor control device 100 includes a control command calculation unit 20 that generates a control command including a voltage phase θ dq according to a difference value (position deviation δθ e ) of the position θ e with respect to the position command θ e_dir , and the voltage command calculation is performed. The unit 30 temporally interpolates the value of the electrical angle θ corresponding to the voltage phase θ dq based on the position θ e and the speed ω e_ave to sequentially calculate a plurality of correction positions θ e * . Thereby, vector control according to the position deviation δθ e can be realized.
また、位置指令θe_dirは、モータ制御装置100に対する上位の電子制御ユニット(ECU5)により出力されるものであり、制御指令演算部20は、差分値(位置偏差δθe)に応じたq軸電流指令iq
*を生成する電流指令生成部21と、q軸電流指令iq
*を含むdq軸電流指令id
*,iq
*に応じた制御指令を生成する制御指令生成部22と、を有する。ECU5により出力された位置指令θe_dirを用いることにより、最大トルク制御などの任意の制御を実現することができる。
Further, the position command θ e_dir is output by a higher-order electronic control unit (ECU 5) for the motor control device 100, and the control command calculator 20 determines the q-axis current corresponding to the difference value (position deviation δθ e ). a current command generation unit 21 which generates a command i q *, dq axis current command including a q-axis current command i q * i d *, a control command generation unit 22 that generates a control command corresponding to i q *, a Have. By using the position command θ e — dir output by the ECU 5, it is possible to realize arbitrary control such as maximum torque control.
また、制御指令生成部22は、ブラシレスDCモータ2の電圧方程式を用いて制御指令を生成する。ブラシレスDCモータ2の電圧方程式を用いることにより、ブラシレスDCモータ2の駆動電流について、フィードフォワードによるベクトル制御を実現することができる。
The control command generation unit 22 also generates a control command using the voltage equation of the brushless DC motor 2. By using the voltage equation of the brushless DC motor 2, vector control by feedforward can be realized for the drive current of the brushless DC motor 2.
また、制御指令は、差分値(位置偏差δθe)に応じた電圧ベクトルVr
*の大きさを含むものであり、電圧指令演算部30は、複数個の補正位置θe
*を順次算出する補正位置算出部31と、電圧ベクトルVr
*の大きさ及び個々の補正位置θe
*に基づき3相電圧指令vu
*,vv
*,vw
*を生成する電圧指令生成部32と、を有する。電圧ベクトルVr
*の大きさ及び電圧位相θdqを含む制御指令を用いることにより、電圧指令演算部30による上記式(7)の計算、上記式(8)の計算及び上記式(9)の計算を実現することができる。
Further, the control command includes the magnitude of the voltage vector V r * according to the difference value (positional deviation δθ e ), and the voltage command calculation unit 30 sequentially calculates a plurality of correction positions θ e *. A correction position calculation unit 31, and a voltage command generation unit 32 that generates three-phase voltage commands v u * , v v * , v w * based on the magnitude of the voltage vector V r * and each correction position θ e * . Have. By using the control command including the magnitude of the voltage vector V r * and the voltage phase θ dq , the voltage command calculation unit 30 calculates the formula (7), the formula (8), and the formula (9). Calculation can be realized.
また、実施の形態1に係るアクチュエータ装置200は、モータ制御装置100と、ブラシレスDCモータ2と、駆動回路3と、位置センサ4を、を備える。これにより、モータ制御装置100を用いたアクチュエータ装置200を実現することができる。
Further, the actuator device 200 according to the first embodiment includes the motor control device 100, the brushless DC motor 2, the drive circuit 3, and the position sensor 4. Thereby, the actuator device 200 using the motor control device 100 can be realized.
また、アクチュエータ装置200は、車載用のバルブ装置1の開度制御に用いられるものである。上記のとおり、車載用のバルブ装置1の開度制御においては、モータ制御装置100及びアクチュエータ装置200を用いるのが特に好適である。
Further, the actuator device 200 is used for controlling the opening degree of the valve device 1 mounted on the vehicle. As described above, it is particularly preferable to use the motor control device 100 and the actuator device 200 in controlling the opening degree of the vehicle-mounted valve device 1.
また、実施の形態1に係るモータ制御方法は、ロータ用の位置センサ4を有するブラシレスDCモータ2に対する駆動電流を電流センサレス方式のベクトル制御により制御するモータ制御方法であって、回転状態演算部10が、位置センサ4の出力に対応する位置パルス信号を用いて、ロータの位置θe及びロータの速度ωe_aveを算出し、電圧指令演算部30が、電気角θの値を速度ωe_aveに基づき時間的に補間することにより複数個の補正位置θe
*を順次算出するとともに、個々の補正位置θe
*に基づきブラシレスDCモータ2用の駆動回路3に対する3相電圧指令vu
*,vv
*,vw
*を生成する。これにより、モータ制御装置100による上記効果と同様の効果を得ることができる。
Further, the motor control method according to the first embodiment is a motor control method in which the drive current for the brushless DC motor 2 having the position sensor 4 for the rotor is controlled by vector control of the current sensorless type, and the rotation state calculation unit 10 Calculates the rotor position θ e and the rotor speed ω e_ave using the position pulse signal corresponding to the output of the position sensor 4, and the voltage command calculator 30 determines the value of the electrical angle θ based on the speed ω e_ave . A plurality of correction positions θ e * are sequentially calculated by temporal interpolation, and the three-phase voltage commands v u * , v v to the drive circuit 3 for the brushless DC motor 2 are calculated based on the individual correction positions θ e *. Generate * , v w * . As a result, it is possible to obtain the same effect as the above effect by the motor control device 100.
実施の形態2.
図10は、実施の形態2に係るモータ制御装置を含むアクチュエータ装置の要部を示すブロック図である。図11は、実施の形態2に係るモータ制御装置における制御指令演算部の要部を示すブロック図である。図10及び図11を参照して、実施の形態2に係るモータ制御装置100a及びアクチュエータ装置200aについて説明する。なお、図10において、図1に示すブロックと同様のブロックには同一符号を付して説明を省略する。また、図11において、図3に示すブロックと同様のブロックには同一符号を付して説明を省略する。Embodiment 2.
FIG. 10 is a block diagram showing a main part of an actuator device including the motor control device according to the second embodiment. FIG. 11 is a block diagram showing a main part of a control command calculation unit in the motor control device according to the second embodiment. Amotor control device 100a and an actuator device 200a according to the second embodiment will be described with reference to FIGS. 10 and 11. In FIG. 10, the same blocks as those shown in FIG. 1 are designated by the same reference numerals and the description thereof will be omitted. Also, in FIG. 11, the same blocks as the blocks shown in FIG.
図10は、実施の形態2に係るモータ制御装置を含むアクチュエータ装置の要部を示すブロック図である。図11は、実施の形態2に係るモータ制御装置における制御指令演算部の要部を示すブロック図である。図10及び図11を参照して、実施の形態2に係るモータ制御装置100a及びアクチュエータ装置200aについて説明する。なお、図10において、図1に示すブロックと同様のブロックには同一符号を付して説明を省略する。また、図11において、図3に示すブロックと同様のブロックには同一符号を付して説明を省略する。
FIG. 10 is a block diagram showing a main part of an actuator device including the motor control device according to the second embodiment. FIG. 11 is a block diagram showing a main part of a control command calculation unit in the motor control device according to the second embodiment. A
実施の形態2に係るモータ制御装置100aは、実施の形態1に係るモータ制御装置100に対して、dq軸電圧指令vd
*,vq
*の生成に用いられる電圧方程式が異なるものである。すなわち、モータ制御装置100における制御指令生成部22は、上記式(2)に示す電圧方程式をdq軸電圧指令vd
*,vq
*の生成に用いるものであった。これに対して、モータ制御装置100aにおける制御指令生成部22aは、以下の式(10)に示す電圧方程式をdq軸電圧指令vd
*,vq
*の生成に用いるものである。
The motor control device 100a according to the second embodiment is different from the motor control device 100 according to the first embodiment in the voltage equation used for generating the dq axis voltage commands v d * , v q * . That is, the control command generator 22 in the motor control device 100 uses the voltage equation shown in the above equation (2) to generate the dq axis voltage commands v d * , v q * . On the other hand, the control command generation unit 22a in the motor control device 100a uses the voltage equation represented by the following Expression (10) to generate the dq axis voltage commands v d * , v q * .
ここで、Tcは、dq座標系における電流応答時定数である。すなわち、上記式(10)に示す電圧方程式は、上記式(2)に示す電圧方程式に対して、「1/(1+Tcs)」によるフィルタが追加されたものである。電流応答時定数Tcの値を設定することにより、ブラシレスDCモータ2の駆動電流の制御において、任意の時間応答を実現することができる。
Here, T c is a current response time constant in the dq coordinate system. That is, the voltage equation shown in the equation (10) is obtained by adding a filter based on “1 / (1 + T c s)” to the voltage equation shown in the equation (2). By setting the value of the current response time constant T c , it is possible to realize an arbitrary time response in controlling the drive current of the brushless DC motor 2.
電流指令生成部21及び制御指令生成部22aにより、制御指令演算部20aが構成されている。回転状態演算部10、制御指令演算部20a及び電圧指令演算部30により、モータ制御装置100aの要部が構成されている。ブラシレスDCモータ2、駆動回路3、位置センサ4及びモータ制御装置100aにより、アクチュエータ装置200aの要部が構成されている。
The current command generator 21 and the control command generator 22a form a control command calculator 20a. The rotation state calculation unit 10, the control command calculation unit 20a, and the voltage command calculation unit 30 form a main part of the motor control device 100a. The brushless DC motor 2, the drive circuit 3, the position sensor 4, and the motor control device 100a constitute a main part of the actuator device 200a.
モータ制御装置100aの要部のハードウェア構成は、実施の形態1にて図8を参照して説明したものと同様であるため、図示及び説明を省略する。すなわち、回転状態演算部10、制御指令演算部20a及び電圧指令演算部30の各々の機能は、プロセッサ41及びメモリ42により実現されるものであっても良く、又は専用の処理回路43により実現されるものであっても良い。
Since the hardware configuration of the main part of the motor control device 100a is the same as that described in Embodiment 1 with reference to FIG. 8, illustration and description thereof will be omitted. That is, the functions of the rotation state calculation unit 10, the control command calculation unit 20a, and the voltage command calculation unit 30 may be realized by the processor 41 and the memory 42, or by a dedicated processing circuit 43. It may be one.
次に、図12のフローチャートを参照して、モータ制御装置100aの動作について、制御指令生成部22aの動作を中心に説明する。
Next, the operation of the motor control device 100a will be described focusing on the operation of the control command generation unit 22a with reference to the flowchart in FIG.
なお、電流指令生成部21の動作は、実施の形態1にて図9Aを参照して説明したものと同様であるため、図示及び説明を省略する。補正位置算出部31の動作は、実施の形態1にて図9Cを参照して説明したものと同様であるため、図示及び説明を省略する。電圧指令生成部32の動作は、実施の形態1にて図9Dを参照して説明したものと同様であるため、図示及び説明を省略する。
Note that the operation of the current command generator 21 is the same as that described in Embodiment 1 with reference to FIG. 9A, and therefore illustration and description thereof will be omitted. The operation of the corrected position calculation unit 31 is the same as that described in the first embodiment with reference to FIG. 9C, and therefore, illustration and description thereof will be omitted. The operation of the voltage command generator 32 is the same as that described in the first embodiment with reference to FIG. 9D, and therefore, illustration and description thereof will be omitted.
図12は、個々の第1周期dTp(例えば4ms)における制御指令生成部22aの動作を示している。まず、ステップST11にて、制御指令生成部22aは、電流指令生成部21により生成されたq軸電流指令iq
*を電流指令生成部21から取得するとともに、所定値(例えば零値)のd軸電流指令id
*を電流指令生成部21から取得する。また、ステップST11にて、制御指令生成部22aは、不定周期位置算出部12により算出された位置θeを不定周期位置算出部12から取得する。また、ステップST12aにて、制御指令生成部22aは、上記式(10)の計算に用いられるモータ定数Ra,Ld,Lq,φの値を設定するとともに、上記式(10)の計算に用いられる電流応答時定数Tcの値を設定する。
FIG. 12 shows the operation of the control command generator 22a in each first cycle dT p (for example, 4 ms). First, in step ST11, the control command generation unit 22a acquires the q-axis current command i q * generated by the current command generation unit 21 from the current command generation unit 21 and sets a predetermined value (for example, zero value) d. The axis current command i d * is acquired from the current command generation unit 21. In step ST11, the control command generation unit 22a acquires the position θ e calculated by the indefinite period position calculation unit 12 from the indefinite period position calculation unit 12. Further, in step ST12a, the control command generating unit 22a, the motor constants R a to be used in the calculation of the equation (10), L d, L q, sets the value of phi, the calculation of the equation (10) The value of the current response time constant T c used for is set.
次いで、制御指令生成部22aは、当該取得されたdq軸電流指令id
*,iq
*、当該取得された位置θe(より具体的には前回のステップST11にて取得された位置θe(n-1)及び今回のステップST11にて取得された位置θe(n))、当該設定されたモータ定数Ra,Ld,Lq,φ、並びに当該設定された電流応答時定数Tcに基づき、制御指令を生成する。
Next, the control command generation unit 22a determines the acquired dq axis current commands i d * , i q * , the acquired position θ e (more specifically, the position θ e acquired in the previous step ST11). (N−1) and the position θ e (n) acquired in step ST11 this time, the set motor constants R a , L d , L q , and φ, and the set current response time constant T. A control command is generated based on c .
すなわち、制御指令生成部22aは、上記式(4)により電気角速度ωeを算出する(ステップST13)。次いで、制御指令生成部22aは、上記式(10)によりdq軸電圧指令vd
*,vq
*を生成する(ステップST14a)。次いで、制御指令生成部22aは、上記式(5)により電圧ベクトルVr
*を算出するとともに、上記式(6)により電圧位相θdqを算出する(ステップST15)。次いで、制御指令生成部22aは、当該算出された電圧ベクトルVr
*の大きさ及び電圧位相θdqを含む制御指令を生成する(ステップST16)。
That is, the control command generator 22a calculates the electrical angular velocity ω e by the above equation (4) (step ST13). Next, the control command generator 22a generates the dq axis voltage commands v d * , v q * by the above equation (10) (step ST14a). Next, the control command generation unit 22a calculates the voltage vector V r * by the equation (5) and the voltage phase θ dq by the equation (6) (step ST15). Next, the control command generation unit 22a generates a control command including the magnitude of the calculated voltage vector V r * and the voltage phase θ dq (step ST16).
なお、モータ制御装置100aは、実施の形態1にて説明したものと同様の種々の変形例、すなわちモータ制御装置100と同様の種々の変形例を採用することができる。
Note that the motor control device 100a can employ various modifications similar to those described in the first embodiment, that is, various modifications similar to the motor control device 100.
以上のように、実施の形態2に係るモータ制御装置100aにおいて、電圧方程式は、電流応答時定数Tcに応じたフィルタを含むものである。電流応答時定数Tcの値を設定することにより、ブラシレスDCモータ2の駆動電流の制御において、任意の時間応答を実現することができる。
As described above, in the motor control device 100a according to the second embodiment, the voltage equation includes the filter according to the current response time constant T c . By setting the value of the current response time constant T c , it is possible to realize an arbitrary time response in controlling the drive current of the brushless DC motor 2.
実施の形態3.
図13は、実施の形態3に係るモータ制御装置を含むアクチュエータ装置の要部を示すブロック図である。図14は、実施の形態3に係るモータ制御装置における制御指令演算部の要部を示すブロック図である。図13及び図14を参照して、実施の形態3に係るモータ制御装置100b及びアクチュエータ装置200bについて説明する。なお、図13において、図1に示すブロックと同様のブロックには同一符号を付して説明を省略する。また、図14において、図3に示すブロックと同様のブロックには同一符号を付して説明を省略する。Embodiment 3.
FIG. 13 is a block diagram showing a main part of an actuator device including the motor control device according to the third embodiment. FIG. 14 is a block diagram showing a main part of a control command calculation unit in the motor control device according to the third embodiment. Amotor control device 100b and an actuator device 200b according to the third embodiment will be described with reference to FIGS. 13 and 14. Note that, in FIG. 13, the same blocks as the blocks shown in FIG. Also, in FIG. 14, the same blocks as the blocks shown in FIG. 3 are denoted by the same reference numerals, and description thereof will be omitted.
図13は、実施の形態3に係るモータ制御装置を含むアクチュエータ装置の要部を示すブロック図である。図14は、実施の形態3に係るモータ制御装置における制御指令演算部の要部を示すブロック図である。図13及び図14を参照して、実施の形態3に係るモータ制御装置100b及びアクチュエータ装置200bについて説明する。なお、図13において、図1に示すブロックと同様のブロックには同一符号を付して説明を省略する。また、図14において、図3に示すブロックと同様のブロックには同一符号を付して説明を省略する。
FIG. 13 is a block diagram showing a main part of an actuator device including the motor control device according to the third embodiment. FIG. 14 is a block diagram showing a main part of a control command calculation unit in the motor control device according to the third embodiment. A
図13に示す如く、ブラシレスDCモータ2に温度センサ6が設けられている。温度センサ6は、ブラシレスDCモータ2における電機子巻線の温度Tempを検出するものである。
As shown in FIG. 13, the brushless DC motor 2 is provided with a temperature sensor 6. The temperature sensor 6 detects the temperature Temp of the armature winding in the brushless DC motor 2.
制御指令生成部22bは、実施の形態1に係るモータ制御装置100における制御指令生成部22と同様に、dq軸電流指令id
*,iq
*及び位置θeを取得するものである。これに加えて、制御指令生成部22bは、温度センサ6により検出された温度Tempを温度センサ6から取得するものである。制御指令生成部22bは、上記式(2)に示す電圧方程式に代えて、以下の式(11)に示す電圧方程式をdq軸電圧指令vd
*,vq
*の生成に用いるものである。
The control command generation unit 22b acquires the dq axis current commands i d * , i q * and the position θ e similarly to the control command generation unit 22 in the motor control device 100 according to the first embodiment. In addition to this, the control command generation unit 22b acquires the temperature Temp detected by the temperature sensor 6 from the temperature sensor 6. The control command generator 22b uses the voltage equation shown in the following equation (11) instead of the voltage equation shown in the above equation (2) to generate the dq axis voltage instructions v d * , v q * .
すなわち、上記式(11)に示す電圧方程式においては、電機子巻線抵抗Ra、d軸インダクタンスLd、q軸インダクタンスLq及び電機子巻線鎖交磁束数φの各々が温度Tempの関数である。そこで、制御指令生成部22bは、以下のように、上記式(11)の計算に用いられるモータ定数Ra,Ld,Lq,φの値を設定する。
That is, in the voltage equation shown in the above equation (11), each of the armature winding resistance R a , the d-axis inductance L d , the q-axis inductance L q, and the armature winding interlinkage magnetic flux number φ is a function of the temperature Temp. Is. Therefore, the control command generation unit 22b sets the values of the motor constants R a , L d , L q , and φ used in the calculation of the above formula (11) as follows.
制御指令生成部22bには、温度Tempの値と電機子巻線抵抗Raの値との対応関係を示すマップ、すなわち関数Ra(Temp)を示すマップが予め記憶されている。制御指令生成部22bは、当該記憶されているマップに基づき、温度センサ6により検出された温度Tempの値に応じて、上記式(11)の計算に用いられるモータ定数Raの値を設定する。
The control command generation unit 22b stores in advance a map showing the correspondence between the value of the temperature Temp and the value of the armature winding resistance R a , that is, the map showing the function R a (Temp). The control command generation unit 22b sets the value of the motor constant R a used for the calculation of the above formula (11) according to the value of the temperature Temp detected by the temperature sensor 6 based on the stored map. ..
同様に、制御指令生成部22bには、温度Tempの値とd軸インダクタンスLdの値との対応関係を示すマップ、すなわち関数Ld(Temp)を示すマップが予め記憶されている。制御指令生成部22bは、当該記憶されているマップに基づき、温度センサ6により検出された温度Tempの値に応じて、上記式(11)の計算に用いられるモータ定数Ldの値を設定する。
Similarly, the control command generator 22b stores in advance a map showing the correspondence between the value of the temperature Temp and the value of the d-axis inductance L d , that is, the map showing the function L d (Temp). The control command generation unit 22b sets the value of the motor constant L d used for the calculation of the above formula (11) according to the value of the temperature Temp detected by the temperature sensor 6 based on the stored map. ..
同様に、制御指令生成部22bには、温度Tempの値とq軸インダクタンスLqの値との対応関係を示すマップ、すなわち関数Lq(Temp)を示すマップが予め記憶されている。制御指令生成部22bは、当該記憶されているマップに基づき、温度センサ6により検出された温度Tempの値に応じて、上記式(11)の計算に用いられるモータ定数Lqの値を設定する。
Similarly, the control command generation unit 22b stores in advance a map showing the correspondence relationship between the value of the temperature Temp and the value of the q-axis inductance L q , that is, the map showing the function L q (Temp). The control command generation unit 22b sets the value of the motor constant L q used for the calculation of the above formula (11) according to the value of the temperature Temp detected by the temperature sensor 6 based on the stored map. ..
同様に、制御指令生成部22bには、温度Tempの値と電機子巻線鎖交磁束数φの値との対応関係を示すマップ、すなわち関数φ(Temp)を示すマップが予め記憶されている。制御指令生成部22bは、当該記憶されているマップに基づき、温度センサ6により検出された温度Tempの値に応じて、上記式(11)の計算に用いられるモータ定数φの値を設定する。
Similarly, the control command generator 22b stores in advance a map showing the correspondence between the value of the temperature Temp and the value of the armature winding interlinkage magnetic flux number φ, that is, the function φ (Temp). . The control command generation unit 22b sets the value of the motor constant φ used for the calculation of the above formula (11) according to the value of the temperature Temp detected by the temperature sensor 6 based on the stored map.
電流指令生成部21及び制御指令生成部22bにより、制御指令演算部20bが構成されている。回転状態演算部10、制御指令演算部20b及び電圧指令演算部30により、モータ制御装置100bの要部が構成されている。ブラシレスDCモータ2、駆動回路3、位置センサ4、温度センサ6及びモータ制御装置100bにより、アクチュエータ装置200bの要部が構成されている。
The current command generator 21 and the control command generator 22b constitute a control command calculator 20b. The rotation state calculation unit 10, the control command calculation unit 20b, and the voltage command calculation unit 30 form a main part of the motor control device 100b. The brushless DC motor 2, the drive circuit 3, the position sensor 4, the temperature sensor 6, and the motor control device 100b constitute a main part of the actuator device 200b.
モータ制御装置100bの要部のハードウェア構成は、実施の形態1にて図8を参照して説明したものと同様であるため、図示及び説明を省略する。すなわち、回転状態演算部10、制御指令演算部20b及び電圧指令演算部30の各々の機能は、プロセッサ41及びメモリ42により実現されるものであっても良く、又は専用の処理回路43により実現されるものであっても良い。
Since the hardware configuration of the main part of the motor control device 100b is the same as that described in Embodiment 1 with reference to FIG. 8, illustration and description thereof will be omitted. That is, the functions of the rotation state calculation unit 10, the control command calculation unit 20b, and the voltage command calculation unit 30 may be realized by the processor 41 and the memory 42, or by a dedicated processing circuit 43. It may be one.
次に、図15のフローチャートを参照して、モータ制御装置100bの動作について、制御指令生成部22bの動作を中心に説明する。
Next, the operation of the motor control device 100b will be described focusing on the operation of the control command generation unit 22b with reference to the flowchart of FIG.
なお、電流指令生成部21の動作は、実施の形態1にて図9Aを参照して説明したものと同様であるため、図示及び説明を省略する。補正位置算出部31の動作は、実施の形態1にて図9Cを参照して説明したものと同様であるため、図示及び説明を省略する。電圧指令生成部32の動作は、実施の形態1にて図9Dを参照して説明したものと同様であるため、図示及び説明を省略する。
Note that the operation of the current command generator 21 is the same as that described in Embodiment 1 with reference to FIG. 9A, and therefore illustration and description thereof will be omitted. The operation of the corrected position calculation unit 31 is the same as that described in the first embodiment with reference to FIG. 9C, and therefore, illustration and description thereof will be omitted. The operation of the voltage command generator 32 is the same as that described in the first embodiment with reference to FIG. 9D, and therefore, illustration and description thereof will be omitted.
図15は、個々の第1周期dTp(例えば4ms)における制御指令生成部22bの動作を示している。まず、ステップST11bにて、制御指令生成部22bは、電流指令生成部21により生成されたq軸電流指令iq
*を電流指令生成部21から取得するとともに、所定値(例えば零値)のd軸電流指令id
*を電流指令生成部21から取得する。また、ステップST11bにて、制御指令生成部22bは、不定周期位置算出部12により算出された位置θeを不定周期位置算出部12から取得する。さらに、ステップST11bにて、制御指令生成部22bは、温度センサ6により検出された温度Tempを温度センサ6から取得する。
FIG. 15 shows the operation of the control command generator 22b in each first cycle dT p (for example, 4 ms). First, in step ST11b, the control command generation unit 22b acquires the q-axis current command i q * generated by the current command generation unit 21 from the current command generation unit 21, and at the same time, sets a predetermined value (for example, zero value) d. The axis current command i d * is acquired from the current command generation unit 21. In step ST11b, the control command generation unit 22b acquires the position θ e calculated by the indefinite period position calculation unit 12 from the indefinite period position calculation unit 12. Furthermore, in step ST11b, the control command generator 22b acquires the temperature Temp detected by the temperature sensor 6 from the temperature sensor 6.
次いで、ステップST12bにて、制御指令生成部22bは、当該取得された温度Tempの値に応じて、上記式(11)の計算に用いられるモータ定数Ra,Ld,Lq,φの値を設定する。
Next, in step ST12b, the control command generation unit 22b determines the values of the motor constants R a , L d , L q , and φ used in the calculation of the equation (11) according to the value of the acquired temperature Temp. To set.
次いで、制御指令生成部22bは、当該取得されたdq軸電流指令id
*,iq
*、当該取得された位置θe(より具体的には前回のステップST11bにて取得された位置θe(n-1)及び今回のステップST11bにて取得された位置θe(n))、並びに当該設定されたモータ定数Ra,Ld,Lq,φに基づき、制御指令を生成する。
Next, the control command generation unit 22b acquires the acquired dq axis current commands i d * , i q * , the acquired position θ e (more specifically, the position θ e acquired in the previous step ST11b). A control command is generated based on (n-1) and the position θ e (n) acquired in step ST11b this time, and the set motor constants R a , L d , L q , and φ.
すなわち、制御指令生成部22bは、上記式(4)により電気角速度ωeを算出する(ステップST13)。次いで、制御指令生成部22bは、上記式(11)によりdq軸電圧指令vd
*,vq
*を生成する(ステップST14b)。次いで、制御指令生成部22bは、上記式(5)により電圧ベクトルVr
*を算出するとともに、上記式(6)により電圧位相θdqを算出する(ステップST15)。次いで、制御指令生成部22bは、当該算出された電圧ベクトルVr
*の大きさ電圧位相θdqを含む制御指令を生成する(ステップST16)。
That is, the control command generator 22b calculates the electrical angular velocity ω e by the above equation (4) (step ST13). Next, the control command generator 22b generates the dq axis voltage commands v d * , v q * by the above equation (11) (step ST14b). Next, the control command generation unit 22b calculates the voltage vector V r * by the equation (5) and the voltage phase θ dq by the equation (6) (step ST15). Next, the control command generation unit 22b generates a control command including the magnitude voltage phase θ dq of the calculated voltage vector V r * (step ST16).
なお、図16に示す如く、ブラシレスDCモータ2に代えて駆動回路3に温度センサ6が設けられているものであっても良い。この場合、温度センサ6は、駆動回路3におけるパワー半導体の温度Temp、すなわち3相に対応するスイッチング素子の温度Tempを検出するものであっても良い。
Note that as shown in FIG. 16, the temperature sensor 6 may be provided in the drive circuit 3 instead of the brushless DC motor 2. In this case, the temperature sensor 6 may detect the temperature Temp of the power semiconductor in the drive circuit 3, that is, the temperature Temp of the switching element corresponding to the three phases.
また、図17に示す如く、ブラシレスDCモータ2に代えてバルブ装置1に温度センサ6が設けられているものであっても良い。この場合、温度センサ6は、バルブ装置1における流路内の温度Tempを検出するものであっても良い。
Further, as shown in FIG. 17, the temperature sensor 6 may be provided in the valve device 1 instead of the brushless DC motor 2. In this case, the temperature sensor 6 may detect the temperature Temp in the flow path of the valve device 1.
また、バルブ装置1、ブラシレスDCモータ2又は駆動回路3のうちのいずれか二つ以上の各々に温度センサ6が設けられているものであっても良い(不図示)。この場合、制御指令生成部22bは、これらの温度センサ6により検出された温度Tempに基づき、バルブ装置1の使用環境温度、すなわちアクチュエータ装置200bの使用環境温度を推定するものであっても良い。制御指令生成部22bは、当該推定された温度の値に応じて、モータ定数Ra,Ld,Lq,φの値を設定するものであっても良い。
Further, the temperature sensor 6 may be provided in each of two or more of the valve device 1, the brushless DC motor 2, and the drive circuit 3 (not shown). In this case, the control command generator 22b may estimate the operating environment temperature of the valve device 1, that is, the operating environment temperature of the actuator device 200b, based on the temperature Temp detected by the temperature sensor 6. The control command generation unit 22b may set the values of the motor constants R a , L d , L q , and φ according to the estimated temperature value.
また、制御指令生成部22bは、実施の形態2に係るモータ制御装置100aにおける制御指令生成部22aと同様の処理を実行するものであっても良い。すなわち、制御指令生成部22bは、電流応答時定数Tcの値を設定するものであっても良い。制御指令生成部22bは、上記式(11)に示す電圧方程式に代えて、以下の式(12)に示す電圧方程式をdq軸電圧指令vd
*,vq
*の生成に用いるものであっても良い。当該式(12)に示す電圧方程式は、上記式(11)に示す電圧方程式に対して、「1/(1+Tcs)」によるフィルタが追加されたものである。
Further, control command generation unit 22b may execute the same process as control command generation unit 22a in motor control device 100a according to the second embodiment. That is, the control command generator 22b may set the value of the current response time constant Tc . The control command generation unit 22b uses the voltage equation shown in the following equation (12) instead of the voltage equation shown in the above equation (11) to generate the dq axis voltage instructions v d * , v q *. Is also good. The voltage equation shown in the equation (12) is obtained by adding a filter based on “1 / (1 + T c s)” to the voltage equation shown in the equation (11).
また、モータ制御装置100bは、実施の形態1にて説明したものと同様の種々の変形例、すなわちモータ制御装置100と同様の種々の変形例を採用することができる。
Further, the motor control device 100b can adopt various modifications similar to those described in the first embodiment, that is, various modifications similar to the motor control device 100.
以上のように、実施の形態3に係るモータ制御装置100bにおいては、ブラシレスDCモータ2に温度センサ6が設けられており、制御指令生成部22bは、温度センサ6により検出された温度Tempの値に応じて電圧方程式におけるモータ定数Ra,Ld,Lq,φの値を設定する。これにより、ブラシレスDCモータ2の駆動電流の制御において、アクチュエータ装置200の使用環境温度、すなわちバルブ装置1の使用環境温度による電流応答のばらつきが発生するのを抑制することができる。
As described above, in the motor control device 100b according to the third embodiment, the brushless DC motor 2 is provided with the temperature sensor 6, and the control command generation unit 22b causes the value of the temperature Temp detected by the temperature sensor 6. The values of the motor constants R a , L d , L q , and φ in the voltage equation are set according to As a result, in the control of the drive current of the brushless DC motor 2, it is possible to suppress the occurrence of variations in current response due to the operating environment temperature of the actuator device 200, that is, the operating environment temperature of the valve device 1.
参考例1.
図18は、参考例1に係るモータ制御装置を含むアクチュエータ装置の要部を示すブロック図である。図19は、参考例1に係るモータ制御装置における回転状態演算部の要部を示すブロック図である。図20は、参考例1に係るモータ制御装置における制御指令演算部の要部を示すブロック図である。図21は、参考例1に係るモータ制御装置における電圧指令演算部の要部を示すブロック図である。図18~図21を参照して、参考例1に係るモータ制御装置100c及びアクチュエータ装置200cについて説明する。なお、図18~図21において、図1~図4に示すブロックと同様のブロックには同一符号を付して説明を省略する。 Reference example 1.
FIG. 18 is a block diagram showing a main part of an actuator device including the motor control device according to the first reference example. FIG. 19 is a block diagram illustrating a main part of a rotation state calculation unit in the motor control device according to the first reference example. FIG. 20 is a block diagram showing a main part of a control command calculation unit in the motor control device according to the first reference example. FIG. 21 is a block diagram showing a main part of a voltage command calculation unit in the motor control device according to the first reference example. Amotor control device 100c and an actuator device 200c according to Reference Example 1 will be described with reference to FIGS. 18 to 21, the same blocks as the blocks shown in FIGS. 1 to 4 are designated by the same reference numerals, and the description thereof will be omitted.
図18は、参考例1に係るモータ制御装置を含むアクチュエータ装置の要部を示すブロック図である。図19は、参考例1に係るモータ制御装置における回転状態演算部の要部を示すブロック図である。図20は、参考例1に係るモータ制御装置における制御指令演算部の要部を示すブロック図である。図21は、参考例1に係るモータ制御装置における電圧指令演算部の要部を示すブロック図である。図18~図21を参照して、参考例1に係るモータ制御装置100c及びアクチュエータ装置200cについて説明する。なお、図18~図21において、図1~図4に示すブロックと同様のブロックには同一符号を付して説明を省略する。 Reference example 1.
FIG. 18 is a block diagram showing a main part of an actuator device including the motor control device according to the first reference example. FIG. 19 is a block diagram illustrating a main part of a rotation state calculation unit in the motor control device according to the first reference example. FIG. 20 is a block diagram showing a main part of a control command calculation unit in the motor control device according to the first reference example. FIG. 21 is a block diagram showing a main part of a voltage command calculation unit in the motor control device according to the first reference example. A
図19に示す如く、回転状態演算部10cはエッジ検出部11及び不定周期位置算出部12を有するものである。すなわち、回転状態演算部10cは不定周期速度算出部13を有しないものである。これにより、回転状態演算部10cにおける演算負荷を低減することができる。
As shown in FIG. 19, the rotation state calculation unit 10c has an edge detection unit 11 and an indefinite period position calculation unit 12. That is, the rotation state calculation unit 10c does not include the indefinite period speed calculation unit 13. As a result, the calculation load on the rotation state calculation unit 10c can be reduced.
制御指令生成部22cは、電流指令生成部21により生成されたq軸電流指令iq
*を電流指令生成部21から取得するとともに、所定値(例えば零値)のd軸電流指令id
*を電流指令生成部21から取得するものである。制御指令生成部22cは、モータ定数Ra,Lqの値を設定するとともに、電流応答時定数Tcの値を設定するものである。
The control command generation unit 22c acquires the q-axis current command i q * generated by the current command generation unit 21 from the current command generation unit 21 and also outputs the d-axis current command i d * having a predetermined value (for example, zero value). It is acquired from the current command generator 21. The control command generator 22c sets the values of the motor constants R a and L q and also sets the value of the current response time constant T c .
制御指令生成部22cは、当該取得されたdq軸電流指令id
*,iq
*、当該設定されたモータ定数Ra,Lq、及び当該設定された電流応答時定数Tcに基づき、以下の式(13)によりvd_dummy
*及びvq_dummy
*を算出するものである。すなわち、制御指令生成部22cは、上記式(10)に示す電圧方程式のうちの速度ωe_aveを含まない項のみを計算することにより、vd_dummy
*及びvq_dummy
*を算出するものである。なお、当該式(13)は、id
*=0の場合における式である。また、当該式(13)は、ブラシレスDCモータ2における突極性が小さい場合、すなわちLq≒Ldの場合を想定した式である。
Based on the acquired dq axis current commands i d * , i q * , the set motor constants R a , L q , and the set current response time constant T c , the control command generation unit 22 c calculates Equation 13 is used to calculate v d_dummy * and v q_dummy * . That is, the control command generation unit 22c calculates v d_dummy * and v q_dummy * by calculating only the term that does not include the speed ω e_ave in the voltage equation shown in the above equation (10). The equation (13) is an equation in the case of i d * = 0. Further, the equation (13) is an equation assuming a case where the brushless DC motor 2 has a small saliency, that is, L q ≈L d .
制御指令生成部22cは、当該算出されたvd_dummy
*及びvq_dummy
*を含む制御指令を生成するものである。
The control command generation unit 22c is configured to generate a control command including the calculated v d_dummy * and v q_dummy * .
電圧指令生成部32cは、不定周期位置算出部12により算出された位置θeを不定周期位置算出部12から取得するものである。電圧指令生成部32cは、当該取得された位置θeに基づき、以下の式(14)により、ロータの速度ωeを算出するものである。ここで、ωeは電気角速度であり、ωeの単位はラジアン毎秒(rad/s)である。
The voltage command generation unit 32 c acquires the position θ e calculated by the indefinite period position calculation unit 12 from the indefinite period position calculation unit 12. The voltage command generator 32c calculates the rotor speed ω e by the following equation (14) based on the acquired position θ e . Here, ω e is an electrical angular velocity, and the unit of ω e is radian per second (rad / s).
ここで、θe(n-1)は電圧指令生成部32cにより前回取得された位置θeであり、θe(n)は電圧指令生成部32cにより今回取得された位置θeである。すなわち、nは、電圧指令生成部32cによる位置θeの取得に係るサンプル番号である。また、dTcは電圧指令演算部30cの制御周期(例えば0.5秒)である。
Here, θ e (n−1) is the position θ e previously acquired by the voltage command generation unit 32c, and θ e (n) is the position θ e acquired this time by the voltage command generation unit 32c. That is, n is a sample number related to the acquisition of the position θ e by the voltage command generation unit 32c. Further, dT c is a control cycle (for example, 0.5 seconds) of the voltage command calculation unit 30c.
すなわち、上記式(14)による計算は、ロータの位置θeを第2周期dTc毎に時間微分することにより、ロータの速度ωeを算出するものである。なお、電圧指令生成部32cは、当該式(14)の計算に疑似微分器を用いるものであっても良い。
That is, the calculation by the above formula (14) is to calculate the rotor speed ω e by differentiating the rotor position θ e with respect to each second period dT c . The voltage command generator 32c may use a pseudo differentiator for the calculation of the equation (14).
また、電圧指令生成部32cは、制御指令生成部22cにより生成された制御指令を制御指令生成部22cから取得するものである。電圧指令生成部32cは、モータ定数φの値を設定するものである。電圧指令生成部32cは、当該取得された制御指令に含まれるvd_dummy
*及びvq_dummy
*、当該設定されたモータ定数φ、並びに上記式(14)により算出された速度ωeに基づき、以下の式(15)により、dq軸電圧指令vd
*,vq
*を生成するものである。
In addition, the voltage command generation unit 32c acquires the control command generated by the control command generation unit 22c from the control command generation unit 22c. The voltage command generator 32c sets the value of the motor constant φ. The voltage command generation unit 32c calculates the following based on v d_dummy * and v q_dummy * included in the acquired control command, the set motor constant φ, and the speed ω e calculated by the above equation (14). The dq axis voltage commands v d * and v q * are generated by the equation (15).
2軸3相変換部33は、電圧指令生成部32cにより生成されたdq軸電圧指令vd
*,vq
*を電圧指令生成部32cから取得するものである。2軸3相変換部33は、所定の変換行例を用いて、当該取得されたdq軸電圧指令vd
*,vq
*を3相電圧指令vu
*,vv
*,vw
*に変換するものである。dq軸電圧指令vd
*,vq
*を3相電圧指令vu
*,vv
*,vw
*に変換するための変換行列は公知である。このため、当該変換行列についての詳細な説明は省略する。
The two-axis three-phase conversion unit 33 acquires the dq-axis voltage commands v d * , v q * generated by the voltage command generation unit 32 c from the voltage command generation unit 32 c. The 2-axis 3-phase conversion unit 33 converts the acquired dq-axis voltage commands v d * , v q * into 3-phase voltage commands v u * , v v * , v w * by using a predetermined conversion example. It is to convert. A conversion matrix for converting the dq axis voltage commands v d * , v q * into the three-phase voltage commands v u * , v v * , v w * is known. Therefore, detailed description of the conversion matrix is omitted.
2軸3相変換部33は、当該変換された3相電圧指令vu
*,vv
*,vw
*を駆動回路3に出力するものである。駆動回路3は、上記のとおり、3相電圧指令vu
*,vv
*,vw
*に応じた電流を三相巻線に供給するものである。
The two-axis / three-phase conversion unit 33 outputs the converted three-phase voltage commands v u * , v v * , v w * to the drive circuit 3. As described above, the drive circuit 3 supplies a current according to the three-phase voltage commands v u * , v v * , v w * to the three-phase winding.
エッジ検出部11及び不定周期位置算出部12により、回転状態演算部10cが構成されている。電流指令生成部21及び制御指令生成部22cにより、制御指令演算部20cが構成されている。電圧指令生成部32c及び2軸3相変換部33により、電圧指令演算部30cが構成されている。回転状態演算部10c、制御指令生成部22c及び電圧指令演算部30cにより、モータ制御装置100cの要部が構成されている。ブラシレスDCモータ2、駆動回路3、位置センサ4及びモータ制御装置100cにより、アクチュエータ装置200cの要部が構成されている。
The edge detection unit 11 and the indefinite period position calculation unit 12 constitute a rotation state calculation unit 10c. The current command generator 21 and the control command generator 22c constitute a control command calculator 20c. The voltage command generator 32c and the biaxial three-phase converter 33 configure a voltage command calculator 30c. The rotation state calculation unit 10c, the control command generation unit 22c, and the voltage command calculation unit 30c constitute a main part of the motor control device 100c. The brushless DC motor 2, the drive circuit 3, the position sensor 4, and the motor control device 100c constitute a main part of the actuator device 200c.
モータ制御装置100cの要部のハードウェア構成は、実施の形態1にて図8を参照して説明したものと同様であるため、図示及び説明を省略する。すなわち、回転状態演算部10c、制御指令演算部20c及び電圧指令演算部30cの各々の機能は、プロセッサ41及びメモリ42により実現されるものであっても良く、又は専用の処理回路43により実現されるものであっても良い。
Since the hardware configuration of the main part of the motor control device 100c is the same as that described in Embodiment 1 with reference to FIG. 8, illustration and description thereof will be omitted. That is, the functions of the rotation state calculation unit 10c, the control command calculation unit 20c, and the voltage command calculation unit 30c may be realized by the processor 41 and the memory 42, or by a dedicated processing circuit 43. It may be one.
参考例1に係るモータ制御装置100cは、上記のとおり、回転状態演算部10cにおいて、ロータの速度ωe_aveを不定周期に算出する処理を不要とすることができる。これにより、回転状態演算部10cにおける演算負荷を低減することができる。また、電圧指令演算部30cにおいて、電圧位相θdqに対応する電気角θの値を時間的に補間する処理を不要とすることができる。この結果、電圧指令演算部30cにおける演算負荷を低減することができる。
As described above, the motor control device 100c according to Reference Example 1 can eliminate the need for the rotation state calculation unit 10c to perform the process of calculating the rotor speed ω e_ave in an indefinite cycle. As a result, the calculation load on the rotation state calculation unit 10c can be reduced. Further, in the voltage command calculation unit 30c, the process of temporally interpolating the value of the electrical angle θ corresponding to the voltage phase θ dq can be eliminated. As a result, the calculation load on the voltage command calculation unit 30c can be reduced.
なお、本願発明はその発明の範囲内において、各実施の形態の自由な組み合わせ、あるいは各実施の形態の任意の構成要素の変形、もしくは各実施の形態において任意の構成要素の省略が可能である。
It should be noted that, within the scope of the invention, the invention of the present application is capable of freely combining the embodiments, modifying any constituent element of each embodiment, or omitting any constituent element in each embodiment. ..
本発明のモータ制御装置及びモータ制御方法は、例えば、アクチュエータ装置におけるブラシレスDCモータの制御に用いることができる。本発明のアクチュエータ装置は、例えば、車載用のバルブ装置の開度制御に用いることができる。
The motor control device and the motor control method of the present invention can be used, for example, for controlling a brushless DC motor in an actuator device. The actuator device of the present invention can be used, for example, for controlling the opening of a vehicle-mounted valve device.
1 バルブ装置、2 ブラシレスDCモータ、3 駆動回路、4 位置センサ、5 電子制御ユニット(ECU)、6 温度センサ、10,10c 回転状態演算部、11 エッジ検出部、12 不定周期位置算出部、13 不定周期速度算出部、20,20a,20b,20c 制御指令演算部、21 電流指令生成部、22,22a,22b,22c 制御指令生成部、30,30c 電圧指令演算部、31 補正位置算出部、32,32c 電圧指令生成部、33 2軸3相変換部、41 プロセッサ、42 メモリ、43 処理回路、100,100a,100b,100c モータ制御装置、200,200a,200b,200c アクチュエータ装置。
1 valve device, 2 brushless DC motor, 3 drive circuit, 4 position sensor, 5 electronic control unit (ECU), 6 temperature sensor, 10 and 10c rotation state calculation unit, 11 edge detection unit, 12 indeterminate cycle position calculation unit, 13 Indefinite cycle speed calculator, 20, 20a, 20b, 20c control command calculator, 21 current command generator, 22, 22a, 22b, 22c control command generator, 30, 30c voltage command calculator, 31 correction position calculator, 32, 32c voltage command generation unit, 33 2-axis 3-phase conversion unit, 41 processor, 42 memory, 43 processing circuit, 100, 100a, 100b, 100c motor control device, 200, 200a, 200b, 200c actuator device.
Claims (12)
- ロータ用の位置センサを有するブラシレスDCモータに対する駆動電流を電流センサレス方式のベクトル制御により制御するモータ制御装置であって、
前記位置センサの出力に対応する位置パルス信号を用いて前記ロータの位置及び前記ロータの速度を算出する回転状態演算部と、
電気角の値を前記速度に基づき時間的に補間することにより複数個の補正位置を順次算出するとともに、個々の前記補正位置に基づき前記ブラシレスDCモータ用の駆動回路に対する3相電圧指令を生成する電圧指令演算部と、
を備えることを特徴とするモータ制御装置。 A motor control device for controlling a drive current for a brushless DC motor having a position sensor for a rotor by vector control of a current sensorless system,
A rotation state calculator that calculates the position of the rotor and the speed of the rotor using a position pulse signal corresponding to the output of the position sensor;
A plurality of correction positions are sequentially calculated by temporally interpolating the value of the electrical angle based on the speed, and a three-phase voltage command to the drive circuit for the brushless DC motor is generated based on each of the correction positions. A voltage command calculator,
A motor control device comprising: - 前記回転状態演算部は、
前記位置パルス信号におけるエッジを検出して、前記エッジに対応する更新パルスを含む更新パルス信号を出力するエッジ検出部と、
前記更新パルスの出力に応じて不定周期に前記位置を算出する不定周期位置算出部と、
前記更新パルスの出力に応じて不定周期に前記速度を算出する不定周期速度算出部と、を有する
ことを特徴とする請求項1記載のモータ制御装置。 The rotation state calculation unit,
An edge detection unit that detects an edge in the position pulse signal and outputs an update pulse signal including an update pulse corresponding to the edge,
An indefinite cycle position calculation unit that calculates the position in an indefinite cycle according to the output of the update pulse,
The motor control device according to claim 1, further comprising an indefinite period speed calculation unit that calculates the speed in an indefinite period according to the output of the update pulse. - 前記位置パルス信号は、前記ロータが1回転する間に少なくとも1パルスが出力されるものであることを特徴とする請求項1記載のモータ制御装置。 The motor control device according to claim 1, wherein the position pulse signal outputs at least one pulse during one rotation of the rotor.
- 位置指令に対する前記位置の差分値に応じた電圧位相を含む制御指令を生成する制御指令演算部を備え、
前記電圧指令演算部は、前記電圧位相に対応する前記電気角の値を前記位置及び前記速度に基づき時間的に補間することにより複数個の前記補正位置を順次算出する
ことを特徴とする請求項1記載のモータ制御装置。 A control command calculation unit that generates a control command including a voltage phase according to a difference value of the position with respect to the position command;
The voltage command calculation unit sequentially calculates a plurality of the correction positions by temporally interpolating the value of the electrical angle corresponding to the voltage phase based on the position and the speed. 1. The motor control device according to 1. - 前記位置指令は、当該モータ制御装置に対する上位の電子制御ユニットにより出力されるものであり、
前記制御指令演算部は、
前記差分値に応じたq軸電流指令を生成する電流指令生成部と、
前記q軸電流指令を含むdq軸電流指令に応じた前記制御指令を生成する制御指令生成部と、を有する
ことを特徴とする請求項4記載のモータ制御装置。 The position command is output by a higher-order electronic control unit for the motor control device,
The control command calculation unit,
A current command generator that generates a q-axis current command according to the difference value;
The motor control device according to claim 4, further comprising: a control command generation unit that generates the control command in accordance with a dq-axis current command including the q-axis current command. - 前記制御指令生成部は、前記ブラシレスDCモータの電圧方程式を用いて前記制御指令を生成することを特徴とする請求項5記載のモータ制御装置。 The motor control device according to claim 5, wherein the control command generation unit generates the control command using a voltage equation of the brushless DC motor.
- 前記電圧方程式は、電流応答時定数に応じたフィルタを含むものであることを特徴とする請求項6記載のモータ制御装置。 7. The motor control device according to claim 6, wherein the voltage equation includes a filter according to a current response time constant.
- 前記ブラシレスDCモータに温度センサが設けられており、
前記制御指令生成部は、前記温度センサにより検出された温度の値に応じて前記電圧方程式におけるモータ定数の値を設定する
ことを特徴とする請求項6又は請求項7記載のモータ制御装置。 The brushless DC motor is provided with a temperature sensor,
The motor control device according to claim 6 or 7, wherein the control command generation unit sets the value of the motor constant in the voltage equation in accordance with the value of the temperature detected by the temperature sensor. - 前記制御指令は、前記差分値に応じた電圧ベクトルの大きさを含むものであり、
前記電圧指令演算部は、
複数個の前記補正位置を順次算出する補正位置算出部と、
前記電圧ベクトルの大きさ及び個々の前記補正位置に基づき前記3相電圧指令を生成する電圧指令生成部と、を有する
ことを特徴とする請求項4記載のモータ制御装置。 The control command includes a magnitude of a voltage vector according to the difference value,
The voltage command calculation unit,
A correction position calculation unit that sequentially calculates a plurality of correction positions;
The motor control device according to claim 4, further comprising: a voltage command generation unit that generates the three-phase voltage command based on the magnitude of the voltage vector and each of the correction positions. - 請求項1から請求項4のうちのいずれか1項記載のモータ制御装置と、前記ブラシレスDCモータと、前記駆動回路と、前記位置センサと、を備えることを特徴とするアクチュエータ装置。 An actuator device comprising the motor control device according to any one of claims 1 to 4, the brushless DC motor, the drive circuit, and the position sensor.
- 車載用のバルブ装置の開度制御に用いられるものであることを特徴とする請求項10記載のアクチュエータ装置。 11. The actuator device according to claim 10, wherein the actuator device is used for controlling the opening of a valve device mounted on a vehicle.
- ロータ用の位置センサを有するブラシレスDCモータに対する駆動電流を電流センサレス方式のベクトル制御により制御するモータ制御方法であって、
回転状態演算部が、前記位置センサの出力に対応する位置パルス信号を用いて前記ロータの位置及び前記ロータの速度を算出し、
電圧指令演算部が、電気角の値を前記速度に基づき時間的に補間することにより複数個の補正位置を順次算出するとともに、個々の前記補正位置に基づき前記ブラシレスDCモータ用の駆動回路に対する3相電圧指令を生成する
ことを特徴とするモータ制御方法。 A motor control method for controlling a drive current for a brushless DC motor having a position sensor for a rotor by current sensorless type vector control,
The rotation state calculation unit calculates the position of the rotor and the speed of the rotor using the position pulse signal corresponding to the output of the position sensor,
The voltage command calculation unit sequentially calculates a plurality of correction positions by temporally interpolating the value of the electrical angle based on the speed, and 3 for the drive circuit for the brushless DC motor based on each of the correction positions. A motor control method characterized by generating a phase voltage command.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2018/042146 WO2020100234A1 (en) | 2018-11-14 | 2018-11-14 | Motor control device, actuator device, and motor control method |
JP2020551443A JP6800394B2 (en) | 2018-11-14 | 2018-11-14 | Motor control device, actuator device and motor control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2018/042146 WO2020100234A1 (en) | 2018-11-14 | 2018-11-14 | Motor control device, actuator device, and motor control method |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020100234A1 true WO2020100234A1 (en) | 2020-05-22 |
Family
ID=70730947
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2018/042146 WO2020100234A1 (en) | 2018-11-14 | 2018-11-14 | Motor control device, actuator device, and motor control method |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP6800394B2 (en) |
WO (1) | WO2020100234A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023276724A1 (en) * | 2021-06-30 | 2023-01-05 | 株式会社デンソー | Control device, and manufacturing method therefor |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011120442A (en) * | 2009-11-05 | 2011-06-16 | Okuma Corp | Method of correcting magnetic pole position of motor |
JP2014039407A (en) * | 2012-08-17 | 2014-02-27 | Okuma Corp | Magnetic pole position detection method and device for synchronous motor |
US20180287537A1 (en) * | 2017-03-29 | 2018-10-04 | Delta Electronics, Inc. | Motor system with current sensorless control and method of controlling the same |
-
2018
- 2018-11-14 JP JP2020551443A patent/JP6800394B2/en active Active
- 2018-11-14 WO PCT/JP2018/042146 patent/WO2020100234A1/en active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011120442A (en) * | 2009-11-05 | 2011-06-16 | Okuma Corp | Method of correcting magnetic pole position of motor |
JP2014039407A (en) * | 2012-08-17 | 2014-02-27 | Okuma Corp | Magnetic pole position detection method and device for synchronous motor |
US20180287537A1 (en) * | 2017-03-29 | 2018-10-04 | Delta Electronics, Inc. | Motor system with current sensorless control and method of controlling the same |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023276724A1 (en) * | 2021-06-30 | 2023-01-05 | 株式会社デンソー | Control device, and manufacturing method therefor |
Also Published As
Publication number | Publication date |
---|---|
JP6800394B2 (en) | 2020-12-16 |
JPWO2020100234A1 (en) | 2021-02-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4909797B2 (en) | Motor control device | |
JP4434184B2 (en) | Method and apparatus for feedback control of electric motor | |
US6781333B2 (en) | Drive control apparatus and method of alternating current motor | |
JP3972124B2 (en) | Synchronous motor speed control device | |
US6674261B2 (en) | Motor control apparatus | |
JP6658554B2 (en) | AC motor control device | |
US20140225540A1 (en) | Control apparatus for ac motor | |
US9419554B2 (en) | Control device of AC motor | |
JP2013172594A (en) | Controller for ac motor | |
TW201601445A (en) | System, method and apparatus of sensor-less field oriented control for permanent magnet motor | |
JP2002238278A (en) | Electric motor controller | |
JP3397013B2 (en) | Control device for synchronous motor | |
WO2013125183A1 (en) | Motor control device and motor control method | |
JP2017038442A (en) | Control device for AC rotary electric machine | |
US9154070B2 (en) | Controller for AC motor | |
JP4781933B2 (en) | Electric motor control device | |
JP4722002B2 (en) | PWM inverter control device, PWM inverter control method, and refrigeration air conditioner | |
WO2020100234A1 (en) | Motor control device, actuator device, and motor control method | |
JP6424773B2 (en) | Control device of AC rotating electric machine | |
JP2019033582A (en) | Control device and control method | |
JP2004289927A (en) | Motor controller | |
CN110649850B (en) | Method for determining stator flux linkage of dual-mode voltage model | |
JP5652701B2 (en) | Motor drive control device | |
JP2017038444A (en) | Control device for AC rotary electric machine | |
JP5186352B2 (en) | Electric motor magnetic pole position estimation device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 18940387 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2020551443 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 18940387 Country of ref document: EP Kind code of ref document: A1 |