ROTARY MACHINE CONTROL DEVICE

20230198438 · 2023-06-22

    Inventors

    Cpc classification

    International classification

    Abstract

    A rotary machine control device includes: a magnetization characteristics determiner that determines a magnet phase of a magnet flux based on an estimated magnetic flux and a detection current, and determines a qm-axis magnetic flux of the estimated magnetic flux, a qm-axis current of the detection current, and a harmonic component of a magnet phase using a dm-qm coordinate system with a dm axis representing the magnet phase and a qm axis representing a phase shifted by 90 degrees from the magnet phase; a ripple compensation determiner that determines a ripple compensation phase using a ripple compensation torque obtained based on the qm-axis current and the harmonic component; a command phase determiner that determines a command phase based on the ripple compensation phase and a torque command; and a command magnetic flux generator that generates a command magnetic flux based on a command amplitude and the command phase.

    Claims

    1. A rotary machine control device comprising: a magnetic flux estimator that estimates a rotary machine magnetic flux that is a magnetic flux of a synchronous rotary machine; a command amplitude generator that generates a command amplitude that is an amplitude of a command magnetic flux by executing feedback control that uses a first inner product or a second inner product, the first inner product being a product of an estimated magnetic flux that is the rotary machine magnetic flux estimated and a detection current of the synchronous rotary machine, the second inner product being a product of the detection current and an estimated magnet flux of a permanent magnet included in the synchronous rotary machine; a magnetization characteristics determiner that determines a magnet phase that is a phase of the magnet flux based on the estimated magnetic flux and the detection current, and also determines a qm-axis magnetic flux of the estimated magnetic flux, a qm-axis current of the detection current, and a harmonic component of the magnet phase by using a dm-qm coordinate system with a dm axis representing the magnet phase and a qm axis representing a phase shifted by 90 degrees from the magnet phase; a ripple compensation determiner that determines a ripple compensation phase by using a ripple compensation torque obtained based on the qm-axis current and the harmonic component; a command phase determiner that determines a command magnetic flux vector phase based on (i) the ripple compensation phase and (ii) a torque command or a rotation speed command; and a command magnetic flux generator that generates the command magnetic flux based on the command amplitude and the command magnetic flux vector phase.

    2. A rotary machine control device comprising: a magnetic flux estimator that estimates a rotary machine magnetic flux that is a magnetic flux of a synchronous rotary machine; a command amplitude generator that generates a command amplitude that is an amplitude of a command magnetic flux by executing feedback control that uses a first inner product or a second inner product, the first inner product being a product of an estimated magnetic flux that is the rotary machine magnetic flux estimated and a detection current of the synchronous rotary machine, the second inner product being a product of the detection current and an estimated magnet flux of a permanent magnet included in the synchronous rotary machine; a magnetization characteristics determiner that determines a magnet phase that is a phase of the magnet flux based on the estimated magnetic flux and the detection current, and also determines a qm-axis magnetic flux of the estimated magnetic flux, a qm-axis current of the detection current, and a harmonic component of the magnet phase by using a dm-qm coordinate system with a dm axis representing the magnet phase and a qm axis representing a phase shifted by 90 degrees from the magnet phase; a ripple compensation determiner that determines a ripple compensation torque based on the qm-axis current and the harmonic component; a command phase determiner that determines a command magnetic flux vector phase based on (i) a ripple compensation phase and (ii) a torque command or a rotation speed command, the ripple compensation phase being determined by a resonator based on the ripple compensation torque; and a command magnetic flux generator that generates the command magnetic flux based on the command amplitude and the command magnetic flux vector phase.

    3. A rotary machine control device comprising: a magnetic flux estimator that estimates a rotary machine magnetic flux that is a magnetic flux of a synchronous rotary machine; a command amplitude generator that generates a command amplitude that is an amplitude of a command magnetic flux by executing feedback control that uses a first inner product or a second inner product, the first inner product being a product of an estimated magnetic flux that is the rotary machine magnetic flux estimated and a detection current of the synchronous rotary machine, the second inner product being a product of the detection current and an estimated magnet flux of a permanent magnet included in the synchronous rotary machine; a ripple compensation determiner that determines a magnet phase that is a phase of the magnet flux based on the estimated magnetic flux and the detection current, and also determines a ripple compensation phase by using a resonator based on a ripple compensation torque that includes a pulsation of a qm-axis current of the detection current by using a dm-qm coordinate system with a dm axis representing the magnet phase and a qm axis representing a phase shifted by 90 degrees from the magnet phase; a command phase determiner that determines a command magnetic flux vector phase based on (i) the ripple compensation phase and (ii) a torque command or a rotation speed command; and a command magnetic flux generator that generates the command magnetic flux based on the command amplitude and the command magnetic flux vector phase.

    4. The rotary machine control device according to claim 1, further comprising: a phase determiner that determines an estimated phase based on the estimated magnetic flux, the estimated phase being a phase of the estimated magnetic flux; and a torque estimator that computes an estimated torque based on the estimated magnetic flux and the detection current, wherein the command phase determiner determines the command magnetic flux vector phase by adding a torque phase for converging the estimated torque on a command torque, the ripple compensation phase, and the estimated phase.

    5. The rotary machine control device according to claim 1, wherein the command phase determiner: (i) determines a movement amount of an estimated phase of the estimated magnetic flux for each control cycle by which the estimated phase needs to move by using the rotation speed command input to the synchronous rotary machine; and (ii) determines the command magnetic flux vector phase by using the movement amount determined and the ripple compensation phase.

    6. The rotary machine control device according to claim 1, further comprising: a phase determiner that determines an estimated phase based on the estimated magnetic flux, the estimated phase being a phase of the estimated magnetic flux, wherein the command phase determiner: (i) determines a movement amount of the estimated phase for each control cycle by which the estimated phase needs to move by using the rotation speed command input to the synchronous rotary machine; and (ii) determines the command magnetic flux vector phase by using the movement amount determined, the ripple compensation phase, and the estimated phase.

    7. The rotary machine control device according to claim 5, further comprising: a torque estimator that computes an estimated torque based on the estimated magnetic flux and the detection current, wherein the command phase determiner determines the command magnetic flux vector phase by further using the estimated torque.

    8. The rotary machine control device according to claim 6, further comprising: a torque estimator that computes an estimated torque based on the estimated magnetic flux and the detection current, wherein the command phase determiner determines the command magnetic flux vector phase by further using the estimated torque.

    9. The rotary machine control device according to claim 1, wherein the command amplitude generator sets a target value of a result of computation of the first inner product or the second inner product to zero.

    10. The rotary machine control device according to claim 2, further comprising: a phase determiner that determines an estimated phase based on the estimated magnetic flux, the estimated phase being a phase of the estimated magnetic flux; and a torque estimator that computes an estimated torque based on the estimated magnetic flux and the detection current, wherein the command phase determiner determines the command magnetic flux vector phase by adding a torque phase for converging the estimated torque on a command torque, the ripple compensation phase, and the estimated phase.

    11. The rotary machine control device according to claim 2, wherein the command phase determiner: (i) determines a movement amount of an estimated phase of the estimated magnetic flux for each control cycle by which the estimated phase needs to move by using the rotation speed command input to the synchronous rotary machine; and (ii) determines the command magnetic flux vector phase by using the movement amount determined and the ripple compensation phase.

    12. The rotary machine control device according to claim 2, further comprising: a phase determiner that determines an estimated phase based on the estimated magnetic flux, the estimated phase being a phase of the estimated magnetic flux, wherein the command phase determiner: (i) determines a movement amount of the estimated phase for each control cycle by which the estimated phase needs to move by using the rotation speed command input to the synchronous rotary machine; and (ii) determines the command magnetic flux vector phase by using the movement amount determined, the ripple compensation phase, and the estimated phase.

    13. The rotary machine control device according to claim 2, wherein the command amplitude generator sets a target value of a result of computation of the first inner product or the second inner product to zero.

    14. The rotary machine control device according to claim 3, further comprising: a phase determiner that determines an estimated phase based on the estimated magnetic flux, the estimated phase being a phase of the estimated magnetic flux; and a torque estimator that computes an estimated torque based on the estimated magnetic flux and the detection current, wherein the command phase determiner determines the command magnetic flux vector phase by adding a torque phase for converging the estimated torque on a command torque, the ripple compensation phase, and the estimated phase.

    15. The rotary machine control device according to claim 3, wherein the command phase determiner: (i) determines a movement amount of an estimated phase of the estimated magnetic flux for each control cycle by which the estimated phase needs to move by using the rotation speed command input to the synchronous rotary machine; and (ii) determines the command magnetic flux vector phase by using the movement amount determined and the ripple compensation phase.

    16. The rotary machine control device according to claim 3, further comprising: a phase determiner that determines an estimated phase based on the estimated magnetic flux, the estimated phase being a phase of the estimated magnetic flux, wherein the command phase determiner: (i) determines a movement amount of the estimated phase for each control cycle by which the estimated phase needs to move by using the rotation speed command input to the synchronous rotary machine; and (ii) determines the command magnetic flux vector phase by using the movement amount determined, the ripple compensation phase, and the estimated phase.

    17. The rotary machine control device according to claim 3, wherein the command amplitude generator sets a target value of a result of computation of the first inner product or the second inner product to zero.

    Description

    BRIEF DESCRIPTION OF DRAWINGS

    [0015] These and other advantages and features of the present disclosure will become apparent from the following description thereof taken in conjunction with the accompanying drawings that illustrate a specific embodiment of the present disclosure.

    [0016] FIG. 1 is a block diagram of a rotary machine control device and the like according to Embodiment 1.

    [0017] FIG. 2 is a diagram illustrating a α-β coordinate system, a d-q coordinate system, and a dm-qm coordinate system.

    [0018] FIG. 3 is a block diagram of a position sensorless controller included in the rotary machine control device shown in FIG. 1.

    [0019] FIG. 4 is a block diagram of a command amplitude generator included in the position sensorless controller shown in FIG. 3.

    [0020] FIG. 5 is a block diagram of a magnetization characteristics determiner included in the position sensorless controller shown in FIG. 3.

    [0021] FIG. 6 is a block diagram of a fourier transformer included in the magnetization characteristics determiner shown in FIG. 5.

    [0022] FIG. 7 is a diagram showing a magnetic energy table generated by the magnetization characteristics determiner shown in FIG. 5.

    [0023] FIG. 8 is a block diagram of a ripple compensation determiner included in the position sensorless controller shown in FIG. 3.

    [0024] FIG. 9 is a block diagram of a ripple torque determiner included in the ripple compensation determiner shown in FIG. 8.

    [0025] FIG. 10 is a block diagram of a ripple phase determiner included in the ripple compensation determiner shown in FIG. 8.

    [0026] FIG. 11 is a block diagram of a command phase determiner included in the position sensorless controller shown in FIG. 3.

    [0027] FIG. 12 is a block diagram of a command amplitude generator included in a rotary machine control device according to Embodiment 2.

    [0028] FIG. 13 is a block diagram of a magnetization characteristics determiner included in a rotary machine control device according to Embodiment 3.

    [0029] FIG. 14 is a block diagram of another magnetization characteristics determiner included in the rotary machine control device according to Embodiment 3.

    [0030] FIG. 15 is a block diagram of a position sensorless controller included in a rotary machine control device according to Embodiment 4.

    [0031] FIG. 16 is a block diagram of a command phase determiner included in the position sensorless controller shown in FIG. 15.

    [0032] FIG. 17 is a block diagram of a command phase determiner included in a rotary machine control device according to Embodiment 5.

    [0033] FIG. 18 is a block diagram of a command phase determiner included in a rotary machine control device according to Embodiment 6.

    [0034] FIG. 19 is a block diagram of a command phase determiner included in a rotary machine control device according to Embodiment 7.

    [0035] FIG. 20 is a block diagram of a command phase determiner included in a rotary machine control device according to Embodiment 8.

    [0036] FIG. 21 is a block diagram of a command phase determiner included in a rotary machine control device according to Embodiment 9.

    [0037] FIG. 22 is a block diagram of a rotary machine control device and the like according to Embodiment 10.

    [0038] FIG. 23 is a block diagram of a position sensorless controller included in the rotary machine control device shown in FIG. 22.

    [0039] FIG. 24 is a block diagram of a ripple compensation determiner included in the position sensorless controller shown in FIG. 23.

    [0040] FIG. 25 is a block diagram of a command phase determiner included in the position sensorless controller shown in FIG. 23.

    [0041] FIG. 26 is a block diagram of a position sensorless controller included in a rotary machine control device according to Embodiment 13.

    [0042] FIG. 27 is a block diagram of a command phase determiner included in the position sensorless controller shown in FIG. 26.

    [0043] FIG. 28 is a block diagram of a command phase determiner included in a rotary machine control device according to Embodiment 14.

    [0044] FIG. 29 is a block diagram of a command phase determiner included in a rotary machine control device according to Embodiment 15.

    [0045] FIG. 30 is a block diagram of a command phase determiner included in a rotary machine control device according to Embodiment 16.

    [0046] FIG. 31 is a block diagram of a command phase determiner included in a rotary machine control device according to Embodiment 17.

    [0047] FIG. 32 is a block diagram of a command phase determiner included in a rotary machine control device according to Embodiment 18.

    [0048] FIG. 33 is a block diagram of a rotary machine control device and the like according to Embodiment 19.

    [0049] FIG. 34 is a block diagram of a position sensorless controller included in the rotary machine control device shown in FIG. 33.

    [0050] FIG. 35 is a block diagram of a ripple compensation determiner included in the position sensorless controller shown in FIG. 34.

    [0051] FIG. 36 is a graph showing a torque waveform in a rotary machine.

    DESCRIPTION OF EMBODIMENTS

    [0052] Hereinafter, specific examples of rotary machine control devices according to aspects of the present disclosure will be described with reference to the drawings. The embodiments described in the specification of the present application show specific examples of the present disclosure. Accordingly, the numerical values, shapes, structural elements, the arrangement and connection of the structural elements, steps, the order of the steps, and the like shown in the following embodiments are merely examples, and therefore are not intended to limit the scope of the present disclosure. In addition, the diagrams are schematic representations, and thus are not necessarily true to scale.

    [0053] General and specific aspects of the present disclosure may be implemented using a system, a method, an integrated circuit, a computer program, or a computer-readable recording medium such as a CD-ROM, or any combination of systems, methods, integrated circuits, computer programs, or computer-readable recording media.

    Embodiment 1

    [0054] As shown in FIG. 1, rotary machine control device 100 includes first current sensor 102, second current sensor 104, position sensorless controller 106, and duty generator 108. Rotary machine control device 100 is connected to PWM (Pulse Width Modulation) inverter 300 and synchronous rotary machine 400.

    [0055] Position sensorless controller 106 performs position sensorless magnetic flux control on synchronous rotary machine 400. Position sensorless controller 106 is configured to execute a position sensorless magnetic flux control operation for synchronous rotary machine 400. In the present embodiment, during a period in which the position sensorless magnetic flux control operation is performed, the rotation speed (the number of rotations) of a rotor of synchronous rotary machine 400 matches the rotation speed (synchronous speed) of a rotary machine current that is applied to synchronous rotary machine 400. The position sensorless magnetic flux control operation is an operation performed without using an encoder and a position sensor such as a resolver. In the specification of the present application, for the sake of convenience of the description, an operation of controlling a rotary machine magnetic flux by using the phase of an estimated rotary machine magnetic flux will be referred to as a “magnetic flux control operation”. The rotary machine magnetic flux conceptually includes both an armature interlinkage magnetic flux on a three-phase AC coordinate that is applied to synchronous rotary machine 400 and a magnetic flux obtained by coordinate converting the armature interlinkage magnetic flux. In the specification of the present application, the term “amplitude” may also simply refer to a magnitude (absolute value).

    [0056] Some or all of the structural elements of rotary machine control device 100 may be provided by a control application executed by a DSP (Digital Signal Processor) or a microcomputer. The DSP or the microcomputer may include a core, a memory, an A/D conversion circuit, and peripheral devices such as a communication port. Also, some or all of the structural elements of rotary machine control device 100 may be configured using a logic circuit.

    Overview of Control of Rotary Machine Control Device 100

    [0057] Rotary machine control device 100 generates duties D.sub.u, D.sub.v, and D.sub.w from command torque T.sub.e* and phase currents i.sub.u and i.sub.w. Voltage vectors v.sub.u, v.sub.v, and v.sub.w to be applied to synchronous rotary machine 400 are generated from duties D.sub.u, D.sub.v, and D.sub.w by PWM inverter 300. Command torque T.sub.e* is input from an upper control device to rotary machine control device 100. Command torque T.sub.e* represents a torque to be followed by a motor torque.

    [0058] Hereinafter, an overview of an operation performed by rotary machine control device 100 will be described. Phase currents i.sub.u and i.sub.w are detected by current sensors 102 and 104 (first current sensor 102 and second current sensor 104). During the operation of the position sensorless magnetic flux control operation, command voltage vectors v.sub.u*, v.sub.v*, and v.sub.w* are generated from command torque T.sub.e* and phase currents i.sub.u and i.sub.w by position sensorless controller 106. The components of command voltage vectors v.sub.u*, v.sub.v*, and v.sub.w* correspond to a U-phase voltage, a V-phase voltage, and a W-phase voltage on the three-phase AC coordinate, respectively. Duties D.sub.u, D.sub.v, and D.sub.w are generated from command voltage vectors v.sub.u*, v.sub.v*, and v.sub.w* by duty generator 108. Duties D.sub.u, D.sub.v, and D.sub.w are input to PWM inverter 300. By performing control as described above, synchronous rotary machine 400 is controlled such that the torque follows command torque T.sub.e*.

    [0059] Hereinafter, rotary machine control device 100 may be described based on a α-β coordinate system. Also, rotary machine control device 100 may also be described based on a d-q coordinate system. Also, rotary machine control device 100 may also be described based on a dm-qm coordinate system. FIG. 2 shows the α-β coordinate system, the d-q coordinate system, and the dm-qm coordinate system. The α-β coordinate system is a fixed coordinate system. The α-β coordinate system may also be called a stationary coordinate system or an AC coordinate system. The α axis is set as the axis extending in the same direction as a U axis (not shown in FIG. 2). The U axis corresponds to U-phase winding of rotary machine control device 100. The β axis is orthogonal to the α axis. The d-q coordinate system is a rotating coordinate system. The d-q coordinate system is a coordinate system with the d axis representing the phase of the rotor of synchronous rotary machine 400 and the q axis representing a phase shifted by 90 degrees from the phase of the rotor of synchronous rotary machine 400. The dm-qm coordinate system is a rotating coordinate system. The dm-qm coordinate system is a coordinate system with the dm axis representing magnet phase θ.sub.dm that is the phase of magnet flux ψ.sub.am that is an estimated magnetic flux of a permanent magnet included in synchronous rotary machine 400 and the qm axis representing a phase shifted by 90 degrees from magnet phase θ.sub.dm.

    Position Sensorless Controller 106

    [0060] Referring back to FIG. 1, position sensorless controller 106 performs the position sensorless magnetic flux control operation to set a command amplitude such that the amplitude of the rotary machine magnetic flux converges on a target amplitude. The position sensorless magnetic flux control operation is performed by referencing command phase θ.sub.s* determined from the phase (estimated phase θ.sub.s) of the rotary machine magnetic flux estimated based on magnetic flux estimator 112 (described later). The target amplitude is an amplitude to be finally reached by the amplitude of the rotary machine magnetic flux. The command amplitude is an amplitude to be followed by the amplitude of the rotary machine magnetic flux.

    [0061] As shown in FIG. 3, position sensorless controller 106 includes u, w/a, β converter 110, magnetic flux estimator 112, phase determiner 114, torque estimator 116, command amplitude generator 118, magnetization characteristics determiner 120, ripple compensation determiner 122, command phase determiner 124, command magnetic flux generator 126, voltage command generator 128, and α, β/u, v, w converter 130.

    [0062] In position sensorless controller 106, phase currents i.sub.u and i.sub.w are converted to axis currents i.sub.α and i.sub.β by u, w/a, β converter 110. The expression “axis currents i.sub.α and i.sub.β” is a collective expression for α-axis current i.sub.α and β-axis current i.sub.β on the α-β coordinate system of synchronous rotary machine 400. The rotary machine magnetic flux is estimated (estimated magnetic flux ψ.sub.s is determined) by magnetic flux estimator 112. The α-axis component and the β-axis component of estimated magnetic flux ψ.sub.s will be referred to as “estimated magnetic flux ψ.sub.α” and “estimated magnetic flux ψ.sub.β”, respectively. The phase of the rotary machine magnetic flux is estimated (estimated phase θ.sub.s of estimated magnetic flux ψ.sub.s is determined) from estimated magnetic flux ψ.sub.s by phase determiner 114. The motor torque is estimated (estimated torque T.sub.e is determined) from estimated magnetic flux ψ.sub.s and axis currents i.sub.α and i.sub.β by torque estimator 116. Command amplitude |ψ.sub.s*| is generated from estimated magnetic flux ψ.sub.s and axis currents i.sub.α and i.sub.β by command amplitude generator 118. Here, qm-axis current i.sub.qm and harmonic component nθ.sub.dm of magnet phase θ.sub.dm are determined from estimated magnetic flux ψ.sub.s and axis currents i.sub.α and i.sub.β by magnetization characteristics determiner 120. Ripple compensation phase θ.sub.ripple is determined from qm-axis current i.sub.qm and harmonic component nθ.sub.dm by ripple compensation determiner 122. Command phase (command magnetic flux vector phase) θ.sub.s* of command magnetic flux vector ψ.sub.s* is determined from estimated phase θ.sub.s of estimated magnetic flux ψ.sub.s, command torque T.sub.e*, estimated torque T.sub.e, and ripple compensation phase θ.sub.ripple by command phase determiner 124. Command magnetic flux vector ψ.sub.s* is determined from command amplitude |ψ.sub.s*| and command phase θ.sub.s* by command magnetic flux generator 126. The α-axis component and the β-axis component of command magnetic flux vector ψ.sub.s* will be referred to as “a-axis command magnetic flux ψ.sub.α*” and “β-axis command magnetic flux ψ.sub.β*”, respectively. Command axis voltages v.sub.α* and v.sub.β* are determined from command magnetic fluxes ψ.sub.α* and ψ.sub.β*, estimated magnetic fluxes ψ.sub.α and ψ.sub.β, and axis currents i.sub.α and i.sub.β by voltage command generator 128. The expression “command axis voltages v.sub.α* and vp*” is a collective expression for α-axis command axis voltage v.sub.α* and β-axis command axis voltage v.sub.β* on the α-β coordinate system of synchronous rotary machine 400. Command axis voltages v.sub.α* and v.sub.β* are converted to command voltage vectors v.sub.u*, v.sub.v*, and v.sub.w* by α, β/u, v, w converter 130.

    [0063] In the position sensorless magnetic flux control operation, by performing control as described above, the motor torque follows command torque T.sub.e*, and the rotary machine magnetic flux follows command magnetic flux vector ψ.sub.s*. As a result, the speed of synchronous rotary machine 400 follows command speed ω.sub.ref*. In the case where the expression “position sensorless controller 106 performs the position sensorless magnetic flux control operation to set a command amplitude such that the amplitude of the rotary machine magnetic flux converges on a target amplitude” described above is used, the target amplitude corresponds to command amplitude | ψ.sub.s*|. By taking this into consideration, in the following description, command amplitude |ψ.sub.s*| may also be referred to as “target amplitude |ψ.sub.s*|”.

    [0064] In the specification of the present application, axis currents i.sub.α and i.sub.β mean current values that are transmitted as information, rather than electric currents that actually flow through synchronous rotary machine 400. Command axis voltages v.sub.α* and v.sub.β*, estimated magnetic flux ψ.sub.s, estimated phase θ.sub.s, command phase θ.sub.s*, estimated torque T.sub.e, command torque T.sub.e*, command amplitude |ψ.sub.s*| (target amplitude | ψ.sub.s*|), command magnetic flux vector ψ.sub.s*, command voltage vectors v.sub.u*, v.sub.v*, and v.sub.w*, command speed ω.sub.ref*, magnet phase θ.sub.dm, harmonic component nθ.sub.dm, qm-axis current i.sub.qm, and the like also mean values that are transmitted as information.

    [0065] The structural elements of position sensorless controller 106 shown in FIG. 3 will be described below.

    U, W/a, Β Converter 110

    [0066] u, w/a, β converter 110 converts phase currents i.sub.u and i.sub.w to axis currents i.sub.α and ip. Specifically, u, w/a, β converter 110 converts phase currents i.sub.u and i.sub.w to axis currents i.sub.α and i.sub.β by using Equation (1) and Equation (2), and outputs axis currents i.sub.α and i.sub.α.

    [00001]iα=32iu

    [00002]iβ=12iu2iw

    Magnetic Flux Estimator 112

    [0067] Magnetic flux estimator 112 estimates the rotary machine magnetic flux that is the magnetic flux of synchronous rotary machine 400, and outputs estimated magnetic flux ψ.sub.s (estimated magnetic fluxes ψ.sub.α and ψ.sub.β) that is the estimated rotary machine magnetic flux. During the operation of the position sensorless magnetic flux control operation, magnetic flux estimator 112 determines estimated magnetic flux ψ.sub.s from axis currents i.sub.α and i.sub.β and command axis voltages v.sub.α* and v.sub.β*. Specifically, magnetic flux estimator 112 determines estimated magnetic fluxes ψ.sub.α and ψ.sub.β by using Equation (3) and Equation (4). In Equation (3) and Equation (4), ψ.sub.α|.sub.t=0 and ψ.sub.β|.sub.t=0 are initial values of estimated magnetic fluxes ψ.sub.α and ψ.sub.β, respectively. In Equation (3) and Equation (4), R represents the winding resistance of the winding resistance of synchronous rotary machine 400. In the case where magnetic flux estimator 112 is included in a digital control device such as a DSP or a microcomputer, a discrete integrator may be used as the integrator required to perform computation in Equation (3) and Equation (4). In this case, a value derived from the current control cycle may be added or subtracted with respect to estimated magnetic fluxes ψ.sub.α and ψ.sub.β of the previous control cycle.

    [00003]Ψα=vα*Riαdt + Ψαt=0

    [00004]Ψβ=vβ*Riβdt + Ψβt=0

    Phase Determiner 114

    [0068] Phase determiner 114 determines estimated phase θ.sub.s that is the phase of estimated magnetic flux ψ.sub.s based on estimated magnetic flux ψ.sub.s (estimated magnetic fluxes ψ.sub.α and ψ.sub.β). In the present embodiment, phase determiner 114 determines estimated phase θ.sub.s from estimated magnetic flux ψ.sub.s. Specifically, phase determiner 114 determines estimated phase θ.sub.s from estimated magnetic flux ψ.sub.s by using Equation (5). For example, phase determiner 114 is a known phase estimator device.

    [00005]θs=tan1ΨβΨα

    Torque Estimator 116

    [0069] Torque estimator 116 computes estimated torque T.sub.e based on estimated magnetic flux ψ.sub.s (estimated magnetic fluxes ψ.sub.α and ψ.sub.β) and detection current i. In the present embodiment, detection current i means axis currents i.sub.α and i.sub.β, and torque estimator 116 determines estimated torque T.sub.e from estimated magnetic flux ψ.sub.s and axis currents i.sub.α and ip. Specifically, torque estimator 116 determines estimated torque T.sub.e from estimated magnetic flux ψ.sub.s and axis currents i.sub.α and i.sub.β by using Equation (6). In Equation (6), P represents the number of pole pairs of synchronous rotary machine 400.

    [00006]Te=PΨαiβΨβiα

    Command Amplitude Generator 118

    [0070] Command amplitude generator 118 generates command amplitude | ψ.sub.s*| that is the amplitude of command magnetic flux by executing feedback control that uses a first inner product or a second inner product, the first inner product being a product of estimated magnetic flux ψ.sub.s (estimated magnetic fluxes ψ.sub.α and ψ.sub.β) that is the estimated rotary machine magnetic flux and detection current i of synchronous rotary machine 400, the second inner product being a product of detection current i and estimated magnet flux ψ.sub.am of the permanent magnet included in synchronous rotary machine 400. As shown in FIG. 4, in the present embodiment, command amplitude generator 118 generates command amplitude |ψ.sub.s*| by executing feedback control that uses the second inner product.

    [0071] Command amplitude generator 118 computes error variable ε that indicates a reactive power component by using virtual inductance (the inductance of synchronous rotary machine 400) L.sub.qm, axis currents i.sub.α and i.sub.β, and estimated magnetic flux ψ.sub.s (estimated magnetic fluxes ψ.sub.α and ψ.sub.β). Specifically, first, command amplitude generator 118 estimates an armature reaction magnetic flux (determines estimated armature reaction magnetic flux L.sub.qmi). The α-axis component and the β-axis component of estimated armature reaction magnetic flux L.sub.qmi will be referred to as “estimated armature reaction magnetic flux L.sub.qmi.sub.α” and “estimated armature reaction magnetic flux L.sub.qmi.sub.β”, respectively. Estimated armature reaction magnetic flux L.sub.qmi.sub.α is a product of virtual inductance L.sub.qm and axis current i.sub.α, and estimated armature reaction magnetic flux L.sub.qmi.sub.β is a product of virtual inductance L.sub.qm and axis current i.sub.β. Next, command amplitude generator 118 determines estimated magnet flux ψ.sub.am of the permanent magnet of synchronous rotary machine 400 from estimated magnetic flux ψ.sub.s (estimated magnetic fluxes ψ.sub.α and ψ.sub.β) and estimated armature reaction magnetic flux L.sub.qmi (estimated armature reaction magnetic fluxes L.sub.qmi.sub.α and L.sub.qmi.sub.β). The α-axis component and the β-axis component of magnet flux ψ.sub.am will be referred to as “estimated magnet flux ψ.sub.amα” and “estimated magnet flux ψ.sub.am .sub.β”, respectively. Specifically, as shown in Equation (7), command amplitude generator 118 determines magnet flux ψ.sub.amα by subtracting estimated armature reaction magnetic flux L.sub.qmi.sub.α from estimated magnetic flux ψ.sub.α. Also, as shown in Equation (8), command amplitude generator 118 determines magnet flux ψ.sub.amβ by subtracting estimated armature reaction magnetic flux L.sub.qmi.sub.β from estimated magnetic flux ψ.sub.β. Next, command amplitude generator 118 calculates error variable ε from magnet fluxes ψ.sub.amα and ψ.sub.amβ and axis currents i.sub.α and i.sub.β as shown in Equation (9).

    [00007]Ψamα=ΨαLqmiα

    [00008]Ψamβ=ΨβLqmiβ

    [00009]ε=PΨamαiα+Ψamβiβ

    [0072] As shown in Equation (9) and FIG. 4, command amplitude generator 118 computes, as error variable ε, an inner product (second inner product) of estimated magnet flux ψ.sub.am of the permanent magnet of synchronous rotary machine 400 and detection current i of synchronous rotary machine 400.

    [0073] Error variable ε may also be determined by computing an inner product (first inner product) of estimated magnetic flux ψ.sub.am of synchronous rotary machine 400 and detection current i of synchronous rotary machine 400.

    [0074] Accordingly, as shown in Equation (10), command amplitude generator 118 may be configured to compute, as error variable ε, an inner product (first inner product) of estimated magnetic flux ψ.sub.s of synchronous rotary machine 400 and detection current i of synchronous rotary machine 400, instead of the second inner product.

    [00010]ε=Ψαiα+ΨβiβLqmiα2+iβ2

    [0075] As shown in FIG. 4, command amplitude generator 118 includes subtracter 132, P gain 134, I gain 136, integrator 138, adder 140, and adder 142. Command amplitude generator 118 sets the target value of error variable ε, or in other words, target value ε* of the result of computation of the first inner product or the second inner product. Here, command amplitude generator 118 sets target value ε* of the result of computation of the first inner product or the second inner to zero. Adder 142 generates command amplitude |ψ.sub.s*| by adding absolute value |Δψ| of calculated magnetic flux deviation Δψ and ψ.sub.a_nominal that is a nominal value of estimated magnetic flux ψ.sub.am.

    [0076] In the manner as described above, command amplitude generator 118 generates command amplitude |ψ.sub.s*| by executing feedback control that uses error variable ε.

    Magnetization Characteristics Determiner 120

    [0077] As shown in FIG. 5, magnetization characteristics determiner 120 determines magnet phase θ.sub.dm that is the phase of magnet flux ψ.sub.am (see FIG. 2) based on estimated magnetic flux ψ.sub.s and detection current i, and also determines qm-axis magnetic flux ψ.sub.qm of estimated magnetic flux ψ.sub.s, qm-axis current i.sub.qm of detection current i, and harmonic component nθ.sub.dm of magnet phase θ.sub.dm by using a dm-qm coordinate system with the dm-axis representing magnet phase θ.sub.dm and the qm axis representing a phase shifted by 90 degrees from magnet phase θ.sub.dm. Qm-axis magnetic flux ψ.sub.qm is the qm-axis component of estimated magnetic flux ψ.sub.s, and qm-axis current i.sub.qm is the qm-axis component of detection current i.

    [0078] Magnetization characteristics determiner 120 includes magnet flux determiner 144, magnet phase determiner 146, α, β/qm converter 148, α, β/qm converter 150, harmonic component determiner 152, fourier transformer 154, and magnetic energy determiner 156.

    [0079] Magnet flux determiner 144 determines magnet flux ψ.sub.am based on virtual inductance (the inductance of synchronous rotary machine 400) L.sub.qm, axis currents i.sub.α and i.sub.β, and estimated magnetic flux ψ.sub.s (estimated magnetic fluxes ψ.sub.α and ψ.sub.β). Specifically, magnet flux determiner 144 determines magnet flux ψ.sub.amα by using Equation (11), and determines magnet flux ψ.sub.amβ by using Equation (12). As shown in FIG. 2, magnet flux ψ.sub.amα is the α-axis component of magnet flux ψ.sub.am, and magnet flux ψ.sub.amβ is the β-axis component of magnet flux ψ.sub.am.

    [00011]Ψamα=ΨαLqmiα

    [00012]Ψamββ-Lqmiβ

    [0080] Magnet phase determiner 146 determines magnet phase θ.sub.dm from magnet flux ψ.sub.amα and magnet flux ψ.sub.amβ by using Equation (13).

    [00013]θdm=tan1ΨamβΨamα

    [0081] α, β/qm converter 148 converts axis currents i.sub.α and i.sub.β to qm-axis current i.sub.qm. Specifically, α, β/qm converter 148 converts axis currents i.sub.α and i.sub.β to qm-axis current i.sub.qm by using Equation (14), and outputs qm-axis current i.sub.qm.

    [00014]iqm=iαsinθdm+iβcosθdm

    [0082] α, β/qm converter 150 converts estimated magnetic flux ψ.sub.s (estimated magnetic fluxes ψ.sub.α and ψ.sub.β) to qm-axis magnetic flux ψ.sub.qm. Specifically, α, β/qm converter 150 converts estimated magnetic flux ψ.sub.s (estimated magnetic fluxes ψ.sub.α and ψ.sub.β) to qm-axis magnetic flux ψ.sub.qm by using Equation (15), and outputs qm-axis magnetic flux ψ.sub.qm.

    [00015]Ψqm=Ψαsinθdm+Ψβcosθdm

    [0083] Harmonic component determiner 152 determines harmonic component nθ.sub.dm of magnet phase θ.sub.dm. Specifically, harmonic component determiner 152 determines harmonic component nθ.sub.dm by multiplying magnet phase θ.sub.dm by order n, and outputs harmonic component nθ.sub.dm.

    [0084] Fourier transformer 154 determines magnetic flux ψ.sub.qmcn and magnetic flux ψ.sub.qmsn from qm-axis magnetic flux ψ.sub.qm and harmonic component nθ.sub.dm.

    [0085] As shown in FIG. 6, fourier transformer 154 includes amplifier 158, multiplier 160, low-pass filter 162, multiplier 164, and low-pass filter 166.

    [0086] Amplifier 158 amplifies qm-axis magnetic flux ψ.sub.qm by 2-fold.

    [0087] Multiplier 160 multiplies qm-axis magnetic flux ψ.sub.qm amplified by 2-fold by cosnθ.sub.dm.

    [0088] Low-pass filter 162 outputs magnetic flux ψ.sub.qmcn from qm-axis magnetic flux ψ.sub.qm amplified by 2-fold and multiplied by cosnθ.sub.dm.

    [0089] Multiplier 164 multiplies qm-axis magnetic flux ψ.sub.qm amplified by 2-fold by sinn θ.sub.dm.

    [0090] Low-pass filter 166 outputs magnetic flux ψ.sub.qmsn from qm-axis magnetic flux ψ.sub.qm amplified by 2-fold and multiplied by sinn θ.sub.dm.

    [0091] Referring back to FIG. 5, magnetic energy determiner 156 determines magnetic energy W′.sub.qmcn from magnetic flux ψ.sub.qmcn by using Equation (16), and determines magnetic energy W′.sub.qmsn from magnetic flux ψ.sub.qmsn by using Equation (17).

    [00016]Wqmcn=0iqmΨqmcn0,iqmdiqm

    [00017]Wqmsn=0iqmΨqmsn0,iqmdiqm

    [0092] Magnetic energy determiner 156 creates magnetic energy table 168 as shown in FIG. 7 by using the obtained results. (a) in FIG. 7 shows a table showing the values of magnetic energy W′.sub.qmcn that correspond to the values of qm-axis current i.sub.qm. (b) in FIG. 7 shows a table showing the values of magnetic energy W′.sub.qmsn that correspond to the values of qm-axis current i.sub.qm.

    Ripple Compensation Determiner 122

    [0093] As shown in FIG. 8, ripple compensation determiner 122 determines ripple compensation phase θ.sub.ripple by using ripple compensation torque T.sub.ripple obtained based on qm-axis current i.sub.qm and harmonic component nθ.sub.dm. Ripple compensation determiner 122 includes magnetic energy table 168, ripple torque determiner 170, and ripple phase determiner 172.

    [0094] Ripple compensation determiner 122 determines magnetic energy W′.sub.qmcn and magnetic energy W′.sub.qmsn by using qm-axis current i.sub.qm output from α, β/qm converter 148 and magnetic energy table 168 created by magnetic energy determiner 156. Specifically, ripple compensation determiner 122 selects, from magnetic energy table 168, a value of magnetic energy W′.sub.qmcn that corresponds to the value of qm-axis current i.sub.qm output from α, β/qm converter 148, and outputs the selected value. Also, ripple compensation determiner 122 selects, from magnetic energy table 168, a value of magnetic energy W′.sub.qmsn that corresponds to the value of qm-axis current i.sub.qm output from α, β/qm converter 148, and outputs the selected value.

    [0095] As shown in FIG. 9, ripple torque determiner 170 includes adder 174, multiplier 176, multiplier 178, subtracter 180, and multiplier 182.

    [0096] Adder 174 adds harmonic component nθ.sub.dm of magnet phase θ.sub.dm and adjustment phase Δθ. For example, adjustment phase Δθ is input from the outside.

    [0097] Multiplier 176 multiplies W′.sub.qmsn by cos(nθ.sub.dm+Δθ) Multiplier 178 multiplies W′.sub.qmcn by sin(nθ.sub.dm+Δθ).

    [0098] Subtracter 180 subtracts W′.sub.qmcnsin(nθ.sub.dm+Δθ) from W′.sub.qmsncos(nθ.sub.dm+Δθ).

    [0099] Multiplier 182 determines ripple compensation torque T.sub.ripple by using Equation (18), where n represents order, and P represents the number of pole pairs of synchronous rotary machine 400.

    [00018]Tripple=nPWqmsncosnθdm+ΔθWqmcnsinnθdm+Δθ

    (18)

    [0100] As shown in FIG. 10, ripple phase determiner 172 includes multiplier 184.

    [0101] Multiplier 184 determines ripple compensation phase θ.sub.ripple by using ripple compensation torque T.sub.ripple and adjustment gain K.sub.ripple based on Equation (19). Adjustment gain K.sub.ripple is a known constant. Also, T.sub.s represents a motor time constant, and T.sub.ss represents a differential operator.

    [00019]θripple=TrippleKrippleτss+1

    Command Phase Determiner 124

    [0102] Referring back to FIG. 3, command phase determiner 124 determines the command magnetic flux vector phase based on ripple compensation phase θ.sub.ripple and a torque command or a rotation speed command. Here, an example will be described in which the command magnetic flux vector phase is determined based on the torque command. The command magnetic flux vector phase is command phase θ.sub.s*. That is, in the present embodiment, as shown in FIG. 2, command phase θ.sub.s* is the phase of command magnetic flux vector ψ.sub.s*. In the present embodiment, command phase determiner 124 determines command phase θ.sub.s* by adding torque phase Δθ.sub.S for converging estimated torque T.sub.e on command torque T.sub.e*, ripple compensation phase θ.sub.ripple, and estimated phase θ.sub.S. That is, command phase determiner 124 determines command phase θ.sub.s* by using torque phase Δθ.sub.S, ripple compensation phase θ.sub.ripple, and estimated phase θ.sub.S.

    [0103] As shown in FIG. 11, command phase determiner 124 includes subtracter 186, PI compensator 188, adder 190, and adder 192.

    [0104] Subtracter 186 determines a deviation by subtracting estimated torque T.sub.e from command torque T.sub.e*.

    [0105] PI compensator 188 determines torque phase Δθ.sub.S by performing proportional-integral control for converging the deviation determined by subtracter 186 on 0.

    [0106] Adder 190 adds torque phase Δθ.sub.S and ripple compensation phase θ.sub.ripple.

    [0107] Adder 192 determines command phase θ.sub.s* by further adding estimated phase θ.sub.s to torque phase Δθ.sub.S and ripple compensation phase θ.sub.ripple.

    Command Magnetic Flux Generator 126

    [0108] Referring back to FIG. 3, command magnetic flux generator 126 generates command magnetic fluxes ω.sub.α* and ψ.sub.β* based on command amplitude |ψ.sub.s*| and command phase θ.sub.s*. In the present embodiment, command magnetic flux generator 126 determines command magnetic flux vector ψ.sub.s* (command magnetic fluxes ψ.sub.α* and ψ.sub.β*) based on command amplitude | ψ.sub.s*| and command phase θ.sub.s*. In the present embodiment, command magnetic flux generator 126 determines command magnetic flux vector ψ.sub.s* (command magnetic fluxes ψ.sub.α* and ψ.sub.β*) from command amplitude | ψ.sub.s*| and command phase θ.sub.s*. Specifically, command magnetic flux generator 126 determines command magnetic fluxes ψ.sub.α* and ψ.sub.β* by using Equations (20) and (21).

    [00020]Ψα*=Ψs*cosθs*

    [00021]Ψβ*=Ψs*sinθs*

    Voltage Command Generator 128

    [0109] Voltage command generator 128 determines command axis voltages v.sub.α* and v.sub.β* by using estimated magnetic flux ψ.sub.s (estimated magnetic fluxes ψ.sub.α and ψ.sub.β), axis currents i.sub.α and i.sub.β, and command magnetic flux vector ψ.sub.s* (command magnetic fluxes ψ.sub.α* and ψ.sub.β*). First, voltage command generator 128 subtracts estimated magnetic flux ψ.sub.α from command magnetic flux ψ.sub.α* to determine a deviation between estimated magnetic flux ψ.sub.α and command magnetic flux ψ.sub.α* (magnetic flux deviation Δψ.sub.α: ψ.sub.α*-ψ.sub.α). Also, voltage command generator 128 subtracts estimated magnetic flux ψ.sub.β from command magnetic flux ψ.sub.β* to determine a deviation between estimated magnetic flux ψ.sub.β and command magnetic flux ψ.sub.β* (magnetic flux deviation Δψ.sub.β: ψ.sub.β*-ψ.sub.β). Then, voltage command generator 128 determines command axis voltages v.sub.α* and v.sub.β* by using magnetic flux deviations Δψ.sub.α and Δψ.sub.β and axis currents i.sub.α and i.sub.β. Specifically, voltage command generator 128 determines α-axis command axis voltage v.sub.α* by using magnetic flux deviation Δψ.sub.α and axis current i.sub.α based on Equation (22). Also, voltage command generator 128 determines β-axis command axis voltage v.sub.β* by using magnetic flux deviation Δψ.sub.β and axis current i.sub.β based on Equation (23). Here, T.sub.s represents a control cycle.

    [00022]vα*=ΔΨαTS+Riα

    [00023]vβ*=ΔΨβTS+Riβ

    α, β/U, V, W Converter 130

    [0110] α, β/u, v, w converter 130 converts command axis voltages v.sub.α* and v.sub.β* to command voltage vectors v.sub.u*, v.sub.v*, and v.sub.w*. Specifically, α, β/u, v, w converter 130 converts command axis voltages v.sub.α* and v.sub.β* to command voltage vectors v.sub.u*, v.sub.v*, and v.sub.w* by using Equation (24), and outputs command voltage vectors v.sub.u*, v.sub.v*, and v.sub.w*.

    [00024]vu*vv*vw*=23016121612vα*vβ*

    [0111] Referring back to FIG. 1, the remaining structural elements of rotary machine control device 100 and structural elements that are connected to rotary machine control device 100 will be described below.

    First Current Sensor 102 and Second Current Sensor 104

    [0112] As first current sensor 102 and second current sensor 104, known sensors can be used. In the present embodiment, first current sensor 102 is provided to measure phase current i.sub.u that flows through a u phase. Second current sensor 104 is provided to measure phase current i.sub.w that flows through a w phase. However, first current sensor 102 and second current sensor 104 may be provided to measure electric currents of two phases other than the combination of the u phase and the w phase.

    Duty Generator 108

    [0113] Duty generator 108 generates duties D.sub.u, D.sub.v, and D.sub.w from command voltage vectors v.sub.u*, v.sub.v*, and v.sub.w*. In the present embodiment, duty generator 108 converts the components of command voltage vectors v.sub.u*, v.sub.v*, and v.sub.w* to duties D.sub.u, D.sub.v, and D.sub.w of three phases. As the method for generating duties D.sub.u, D.sub.v, and D.sub.w, an ordinary method that is used for a voltage PWM inverter may be used. For example, duties D.sub.u, D.sub.v, and D.sub.w may be determined by dividing command voltage vectors v.sub.u*, v.sub.v*, and v.sub.w* by a half value of voltage value V.sub.dc of a DC power supply of PWM inverter 300, which will be described later. In this case, duty D.sub.u is 2 x .sub.Vu*/V.sub.dc. Duty D.sub.v is 2 x v.sub.v*/V.sub.dc. Duty D.sub.w is 2 x v.sub.w*/V.sub.dc. Duty generator 108 outputs duties D.sub.u, D.sub.v, and D.sub.w.

    PWM Inverter 300

    [0114] PWM inverter 300 includes a DC power supply and a conversion circuit. The conversion circuit converts DC voltage to voltage vectors v.sub.u, v.sub.v, and v.sub.w through PWM control. PWM inverter 300 applies voltage vectors v.sub.u, v.sub.v, and v.sub.w obtained as a result of the conversion to synchronous rotary machine 400.

    Synchronous Rotary Machine 400

    [0115] Synchronous rotary machine 400 is a target to be controlled by rotary machine control device 100. The voltage vectors are applied to synchronous rotary machine 400 by PWM inverter 300. As used herein, the expression “the voltage vectors are applied to synchronous rotary machine 400” means that voltage is applied to each of three phases (a U phase, a V phase, and a W phase) on a three-phase AC coordinate system that is applied to synchronous rotary machine 400. In the present embodiment, synchronous rotary machine 400 is controlled such that each of the three phases (a U phase, a V phase, and a W phase) is selected from the following two types: a high-voltage phase that has a relatively high voltage; and a low-voltage phase that has a relatively low voltage.

    [0116] Synchronous rotary machine 400 is, for example, a permanent magnetic synchronous motor. Examples of the permanent magnetic synchronous motor include an interior permanent magnet synchronous motor (IPMSM) and a surface permanent magnet synchronous motor (SPMSM). The IPMSM has saliency in which d-axis inductance Ld and q-axis inductance Lq are different (generally, inverse saliency of Lq > Ld), and reluctance torque may also be used in addition to magnet torque. For this reason, the IPMSM has an extremely high driving efficiency. As synchronous rotary machine 400, it is also possible to use a synchronous reluctance motor.

    Advantageous Effects, Etc

    [0117] Rotary machine control device 100 according to Embodiment 1 includes: magnetic flux estimator 112 that estimates a rotary machine magnetic flux that is a magnetic flux of synchronous rotary machine 400; command amplitude generator 118 that generates command amplitude | Ψs* | that is an amplitude of command magnetic fluxes Ψa* and Ψβ* by executing feedback control that uses a first inner product or a second inner product, the first inner product being a product of estimated magnetic flux Ψs that is an estimated rotary machine magnetic flux and detection current i of synchronous rotary machine 400, the second inner product being a product of detection current i and estimated magnet flux Ψam of a permanent magnet included in synchronous rotary machine 400; magnetization characteristics determiner 120 that determines magnet phase θ.sub.dm that is a phase of magnet flux Ψam based on estimated magnetic flux Ψs and detection current i, and also determines qm-axis magnetic flux Ψ.sub.qm of estimated magnetic flux Ψ.sub.s, qm-axis current i.sub.qm of detection current i, and harmonic component nθ.sub.dm of magnet phase θ.sub.dm by using a dm-qm coordinate system with the dm axis representing magnet phase θ.sub.dm and the qm axis representing a phase shifted by 90 degrees from magnet phase θ.sub.dm; ripple compensation determiner 122 that determines ripple compensation phase θ.sub.ripple by using ripple compensation torque T.sub.ripple obtained based on qm-axis current i.sub.qm and harmonic component nθ.sub.dm; command phase determiner 124 that determines command phase θ.sub.S* based on ripple compensation phase θ.sub.ripple and a torque command or a rotation speed command; and command magnetic flux generator 126 that generates command magnetic fluxes Ψ.sub.a* and Ψβ* based on command amplitude | Ψ.sub.s* | and command phase θ.sub.s*.

    [0118] With this configuration, it is possible to: determine magnet phase θ.sub.dm; determine qm-axis magnetic flux Ψ.sub.qm of estimated magnetic flux Ψ.sub.s, qm-axis current i.sub.qm of detection current i, and harmonic component nθ.sub.dm of magnet phase θ.sub.dm by using a dm-qm coordinate system with the dm axis representing magnet phase θ.sub.dm and the qm axis representing a phase shifted by 90 degrees from magnet phase θ.sub.dm; determine ripple compensation phase θ.sub.ripple by using ripple compensation torque T.sub.ripple obtained based on qm-axis current i.sub.qm and harmonic component nθ.sub.dm; and determine command phase θ.sub.S* based on ripple compensation phase θ.sub.ripple and a torque command or a rotation speed command. Accordingly, in the position sensorless magnetic flux control, the torque ripple can be effectively reduced.

    [0119] Also, rotary machine control device 100 according to Embodiment 1 further includes: phase determiner 114 that determines estimated phase θ.sub.S that is a phase of estimated magnetic flux Ψs based on estimated magnetic flux Ψ.sub.s; and torque estimator 116 that computes estimated torque T.sub.e based on estimated magnetic flux Ψ.sub.s and detection current i. Command phase determiner 124 determines command phase θ.sub.S* by adding torque phase Δθ.sub.S for converging estimated torque T.sub.e on command torque T.sub.e*, ripple compensation phase θ.sub.ripple, and estimated phase θs,

    [0120] With this configuration, command phase θ.sub.S* can be determined by adding torque phase Δθ.sub.S for converging estimated torque T.sub.e on command torque T.sub.e*, ripple compensation phase θ.sub.ripple, and estimated phase θ.sub.S. Accordingly, in the position sensorless magnetic flux control, the torque ripple can be more effectively reduced.

    [0121] Also, in rotary machine control device 100 according to Embodiment 1, command amplitude generator 118 sets a target value of a result of computation of the first inner product or the second inner product to zero.

    [0122] With this configuration, it is possible to cause electric current that generates a field magnetic flux in the direction of magnet flux Ψam of the permanent magnet of synchronous rotary machine 400 to flow. Accordingly, the torque ripple can be more effectively reduced.

    Embodiment 2

    [0123] Hereinafter, a rotary machine control device according to Embodiment 2 that is configured by changing a portion of rotary machine control device 100 according to Embodiment 1 will be described. Here, in the rotary machine control device according to Embodiment 2, structural elements that are the same as those of rotary machine control device 100 are given the same reference numerals, and a detailed description thereof will be omitted because they have already been described above. Accordingly, the following description will be given focusing on a difference from rotary machine control device 100.

    [0124] FIG. 12 is a block diagram of command amplitude generator 118a included in the rotary machine control device according to Embodiment 2.

    [0125] As shown in FIG. 12, the rotary machine control device according to Embodiment 2 is configured by replacing command amplitude generator 118 of rotary machine control device 100 according to Embodiment 1 with command amplitude generator 118a.

    [0126] Command amplitude generator 118a is different from command amplitude generator 118 mainly in that command amplitude generator 118a does not include adder 142. Command amplitude generator 118a outputs the value determined by adder 140 as command amplitude | Ψ.sub.s* | .

    [0127] As described above, command amplitude generator 118a does not necessarily need to include adder 142.

    Embodiment 3

    [0128] Hereinafter, a rotary machine control device according to Embodiment 3 that is configured by changing a portion of rotary machine control device 100 according to Embodiment 1 will be described. Here, in the rotary machine control device according to Embodiment 3, structural elements that are the same as those of rotary machine control device 100 are given the same reference numerals, and a detailed description thereof will be omitted because they have already been described above. Accordingly, the following description will be given focusing on differences from rotary machine control device 100.

    [0129] FIG. 13 is a block diagram of magnetization characteristics determiner 120b included in the rotary machine control device according to Embodiment 3. FIG. 14 is a block diagram of magnetization characteristics determiner 120c that is another magnetization characteristics determiner included in the rotary machine control device according to Embodiment 3.

    [0130] As shown in FIG. 13, the rotary machine control device according to Embodiment 3 is configured by replacing magnetization characteristics determiner 120 of rotary machine control device 100 according to Embodiment 1 with magnetization characteristics determiner 120b.

    [0131] Magnetization characteristics determiner 120b is different from magnetization characteristics determiner 120 mainly in that magnetization characteristics determiner 120b further includes armature reaction magnetic flux determiner 194.

    [0132] Armature reaction magnetic flux determiner 194 multiplies axis current i.sub.a by virtual inductance L.sub.qm to determine estimated armature reaction magnetic flux L.sub.qmi.sub.a and outputs estimated armature reaction magnetic flux L.sub.qmi.sub.a, and also multiplies axis current i.sub.β by virtual inductance L.sub.qm to determine estimated armature reaction magnetic flux L.sub.qmi.sub.β and outputs estimated armature reaction magnetic flux L.sub.qmi.sub.β.

    [0133] a, β/qm converter 150 converts estimated armature reaction magnetic fluxes L.sub.qmi.sub.a and L.sub.qmi.sub.β to qm-axis magnetic flux Ψ.sub.qm. Specifically, a, β/qm converter 150 converts estimated armature reaction magnetic fluxes L.sub.qmi.sub.a and L.sub.qmi.sub.β to qm-axis magnetic flux Ψ.sub.qm by using Equation (25), and outputs qm-axis magnetic flux Ψ.sub.qm.

    [00025]Ψqm=Lqmiαsinθdm+Lqmiβcosθdm

    [0134] As described above, magnetization characteristics determiner 120b may further include armature reaction magnetic flux determiner 194.

    [0135] Magnetization characteristics determiner 120b shown in FIG. 13 may be replaced with magnetization characteristics determiner 120c shown in FIG. 14.

    [0136] As shown in FIG. 14, magnetization characteristics determiner 120c is different from magnetization characteristics determiner 120b mainly in that magnetization characteristics determiner 120c includes armature reaction magnetic flux determiner 194c, instead of armature reaction magnetic flux determiner 194. That is, armature reaction magnetic flux determiner 194c is provided downstream of a, β/qm converter 148. Armature reaction magnetic flux determiner 194c multiplies qm-axis current i.sub.qm output from a, β/qm converter 148 by virtual inductance L.sub.qm, and outputs qm-axis magnetic flux Ψ.sub.qm. Accordingly, with magnetization characteristics determiner 120c, it is unnecessary to provide a, β/qm converter 150, and thus magnetization characteristics determiner 120c can have a simpler configuration than magnetization characteristics determiner 120b.

    [0137] As described above, magnetization characteristics determiner 120b may be replaced with magnetization characteristics determiner 120c that includes armature reaction magnetic flux determiner 194c.

    Embodiment 4

    [0138] Hereinafter, a rotary machine control device according to Embodiment 4 that is configured by changing a portion of rotary machine control device 100 according to Embodiment 1 will be described. Here, in the rotary machine control device according to Embodiment 4, structural elements that are the same as those of rotary machine control device 100 are given the same reference numerals, and a detailed description thereof will be omitted because they have already been described above. Accordingly, the following description will be given focusing on differences from rotary machine control device 100.

    [0139] FIG. 15 is a block diagram of position sensorless controller 106c included in the rotary machine control device according to Embodiment 4. FIG. 16 is a block diagram of command phase determiner 124c included in position sensorless controller 106c shown in FIG. 15.

    [0140] As shown in FIG. 15, the rotary machine control device according to Embodiment 4 is configured by replacing position sensorless controller 106 of rotary machine control device 100 according to Embodiment 1 with position sensorless controller 106c.

    [0141] Position sensorless controller 106c is different from position sensorless controller 106 mainly in that position sensorless controller 106c includes command phase determiner 124c, instead of command phase determiner 124.

    [0142] In the present embodiment, command speed w.sub.ref* is input to position sensorless controller 106c. Command speed w.sub.ref* represents a speed to be followed by synchronous rotary machine 400. Position sensorless controller 106c generates command voltage vectors v.sub.u*, v.sub.v*, and v.sub.w* from command speed w.sub.ref* and phase currents i.sub.u and i.sub.w. By performing control as described above, synchronous rotary machine 400 is controlled such that the speed of synchronous rotary machine 400 follows command speed w.sub.ref*.

    [0143] As shown in FIG. 16, command phase determiner 124c includes integrator 200 and adder 202. Command phase determiner 124c determines command phase θ.sub.S* based on ripple compensation phase θ.sub.ripple and a rotation speed command.

    [0144] Integrator 200 integrates command speed .sub.Wref*.

    [0145] Adder 202 adds ripple compensation phase θ.sub.ripple to the value determined by integrator 200 to determine command phase θ.sub.S*.

    [0146] As described above, the rotary machine control device may include position sensorless controller 106c instead of position sensorless controller 106.

    Embodiment 5

    [0147] Hereinafter, a rotary machine control device according to Embodiment 5 that is configured by changing a portion of the rotary machine control device according to Embodiment 4 will be described. Here, in the rotary machine control device according to Embodiment 5, structural elements that are the same as those of the rotary machine control device according to Embodiment 4 are given the same reference numerals, and a detailed description thereof will be omitted because they have already been described above. Accordingly, the following description will be given focusing on a difference from the rotary machine control device according to Embodiment 4.

    [0148] FIG. 17 is a block diagram of command phase determiner 124d included in the rotary machine control device according to Embodiment 5.

    [0149] As shown in FIG. 17, the rotary machine control device according to Embodiment 5 is configured by replacing command phase determiner 124c of the rotary machine control device according to Embodiment 4 with command phase determiner 124d.

    [0150] Command phase determiner 124d: (i) determines movement amount Δθ of estimated phase θ.sub.S of estimated magnetic flux Ψs for each control cycle by which estimated phase θ.sub.S needs to move by using a rotation speed command input to synchronous rotary machine 400; and (ii) determines command phase θ.sub.s* by using determined movement amount Δθ and ripple compensation phase θ.sub.ripple. Command phase determiner 124d includes adder 202, multiplier 204, and adder 206.

    [0151] Multiplier 204 multiplies command speed w.sub.ref* by T.sub.s to determine movement amount Δθ. Here, T.sub.s represents a control cycle.

    [0152] Adder 202 adds ripple compensation phase θ.sub.ripple to movement amount Δθ.

    [0153] Adder 206 adds estimated phase θ.sub.S to the value determined by adder 202 to determine command phase θ.sub.s*.

    [0154] As described above, command phase determiner 124d may include adder 202, multiplier 204, and adder 206.

    [0155] The rotary machine control device according to Embodiment 5 further include phase determiner 114 that determines estimated phase θ.sub.S that is the phase of estimated magnetic flux Ψs based on estimated magnetic flux Ψ.sub.s. Command phase determiner 124d: (i) determines movement amount Δθ of estimated phase Ψs for each control cycle by which estimated phase Ψs needs to move by using a rotation speed command input to synchronous rotary machine 400; and (ii) determines command phase θ.sub.S* by using determined movement amount Δθ, ripple compensation phase θ.sub.ripple. and estimated phase θ.sub.s.

    [0156] With this configuration, command phase θ.sub.S* can be determined by using movement amount Δθ of estimated phase Ψs for each control cycle by which estimated phase Ψs needs to move, ripple compensation phase θ.sub.ripple, and estimated phase θ.sub.S. Accordingly, in the position sensorless magnetic flux control, the torque ripple can be more effectively reduced.

    Embodiment 6

    [0157] Hereinafter, a rotary machine control device according to Embodiment 6 that is configured by changing a portion of the rotary machine control device according to Embodiment 5 will be described. Here, in the rotary machine control device according to Embodiment 6, structural elements that are the same as those of the rotary machine control device according to Embodiment 5 are given the same reference numerals, and a detailed description thereof will be omitted because they have already been described above. Accordingly, the following description will be given focusing on a difference from the rotary machine control device according to Embodiment 5.

    [0158] FIG. 18 is a block diagram of command phase determiner 124e included in the rotary machine control device according to Embodiment 6.

    [0159] As shown in FIG. 18, the rotary machine control device according to Embodiment 6 is configured by replacing command phase determiner 124d of the rotary machine control device according to Embodiment 5 with command phase determiner 124e.

    [0160] Command phase determiner 124e determines command phase θ.sub.S* by further using estimated torque T.sub.e. Command phase determiner 124e includes adder 202, adder 206, multiplier 208, high-pass filter 210, sign inverter 212, PI compensator 214, and adder 216.

    [0161] Multiplier 208 multiplies command speed (ω.sub.ref* by T.sub.s to determine (ω.sub.ref*T.sub.s.

    [0162] High-pass filter 210 outputs torque T.sub.H from estimated torque Te.

    [0163] Sign inverter 212 inverts the sign of torque T.sub.H.

    [0164] PI compensator 214 determines Δω.sub.ref*T.sub.s from torque -T.sub.H.

    [0165] Adder 216 adds (ω.sub.ref*T.sub.s determined by multiplier 208 and Δω.sub.ref*T.sub.s determined by PI compensator 214 to determine torque phase Δθ.sub.s.

    [0166] Adder 202 adds ripple compensation phase θ.sub.ripple to torque phase Δθ.sub.s.

    [0167] Adder 206 adds estimated phase θ.sub.S to the value determined by adder 202 to determine command phase θ.sub.s*.

    [0168] As described above, command phase determiner 124e may include adder 202, adder 206, multiplier 208, high-pass filter 210, sign inverter 212, PI compensator 214, and adder 216.

    [0169] The rotary machine control device according to Embodiment 6 may further include torque estimator 116 that computes estimated torque T.sub.e based on estimated magnetic flux Ψs and detection current i. Command phase determiner 124e determines command phase θ.sub.S* by further using estimated torque T.sub.e.

    [0170] With this configuration, command phase θ.sub.S* can be determined by further using estimated torque T.sub.e. Accordingly, in the position sensorless magnetic flux control, the torque ripple can be more effectively reduced.

    Embodiment 7

    [0171] Hereinafter, a rotary machine control device according to Embodiment 7 that is configured by changing a portion of the rotary machine control device according to Embodiment 4 will be described. Here, in the rotary machine control device according to Embodiment 7, structural elements that are the same as those of the rotary machine control device according to Embodiment 4 are given the same reference numerals, and a detailed description thereof will be omitted because they have already been described above. Accordingly, the following description will be given focusing on a difference from the rotary machine control device according to Embodiment 4.

    [0172] FIG. 19 is a block diagram of command phase determiner 124f included in the rotary machine control device according to Embodiment 7.

    [0173] As shown in FIG. 19, the rotary machine control device according to Embodiment 7 is configured by replacing command phase determiner 124c of the rotary machine control device according to Embodiment 4 with command phase determiner 124f.

    [0174] Command phase determiner 124f includes integrator 200, adder 202, high-pass filter 218, gain multiplier 220, and subtracter 222.

    [0175] High-pass filter 218 outputs torque T.sub.H from estimated torque Te.

    [0176] Gain multiplier 220 multiplies torque T.sub.H by gain K.sub.1.

    [0177] Subtracter 222 subtracts K.sub.1T.sub.H from command speed .sub.Wref*.

    [0178] Integrator 200 integrates the value determined by subtracter 222.

    [0179] Adder 202 adds ripple compensation phase θ.sub.ripple to the value determined by integrator 200 to determine command phase θ.sub.S*.

    [0180] As described above, command phase determiner 124f may include integrator 200, adder 202, high-pass filter 218, gain multiplier 220, and subtracter 222.

    Embodiment 8

    [0181] Hereinafter, a rotary machine control device according to Embodiment 8 that is configured by changing a portion of the rotary machine control device according to Embodiment 7 will be described. Here, in the rotary machine control device according to Embodiment 8, structural elements that are the same as those of the rotary machine control device according to Embodiment 7 are given the same reference numerals, and a detailed description thereof will be omitted because they have already been described above. Accordingly, the following description will be given focusing on a difference from the rotary machine control device according to Embodiment 7.

    [0182] FIG. 20 is a block diagram of command phase determiner 124 g included in the rotary machine control device according to Embodiment 8.

    [0183] As shown in FIG. 20, the rotary machine control device according to Embodiment 8 is configured by replacing command phase determiner 124f of the rotary machine control device according to Embodiment 7 with command phase determiner 124 g.

    [0184] Command phase determiner 124 g includes adder 202, multiplier 204, adder 206, high-pass filter 218, gain multiplier 220, and subtracter 222.

    [0185] Adder 202 adds ripple compensation phase θ.sub.ripple to movement amount Δθ determined by multiplier 204.

    [0186] Adder 206 adds estimated phase θ.sub.S to the value determined by adder 202 to determine command phase θ.sub.s*.

    [0187] As described above, command phase determiner 124 g may include adder 202, multiplier 204, adder 206, high-pass filter 218, gain multiplier 220, and subtracter 222.

    Embodiment 9

    [0188] Hereinafter, a rotary machine control device according to Embodiment 9 that is configured by changing a portion of the rotary machine control device according to Embodiment 8 will be described. Here, in the rotary machine control device according to Embodiment 9, structural elements that are the same as those of the rotary machine control device according to Embodiment 8 are given the same reference numerals, and a detailed description thereof will be omitted because they have already been described above. Accordingly, the following description will be given focusing on a difference from the rotary machine control device according to Embodiment 8.

    [0189] FIG. 21 is a block diagram of command phase determiner 124h included in the rotary machine control device according to Embodiment 9.

    [0190] As shown in FIG. 21, the rotary machine control device according to Embodiment 9 is configured by replacing command phase determiner 124 g of the rotary machine control device according to Embodiment 8 with command phase determiner 124h.

    [0191] Command phase determiner 124h includes adder 202, adder 206, multiplier 208, PI compensator 214, adder 216, low-pass filter 224, and subtracter 226.

    [0192] Multiplier 208 multiplies command speed w.sub.ref* by T.sub.s to determine (ω.sub.ref*T.sub.s.

    [0193] Low-pass filter 224 outputs torque T.sub.L from estimated torque Te.

    [0194] Subtracter 226 subtracts estimated torque T.sub.e from torque T.sub.L to determine torque -T.sub.H.

    [0195] PI compensator 214 determines Δω.sub.ref*T.sub.s from torque -T.sub.H.

    [0196] Adder 216 adds (ω.sub.ref*T.sub.s determined by multiplier 208 and Δω.sub.ref*T.sub.s determined by PI compensator 214 to determine torque phase Δθ.sub.s.

    [0197] Adder 202 adds ripple compensation phase θ.sub.ripple to torque phase Δθ.sub.S determined by adder 216.

    [0198] Adder 206 adds estimated phase θ.sub.S to the value determined by adder 202 to determine command phase θ.sub.s*.

    [0199] As described above, command phase determiner 124h may include adder 202, adder 206, multiplier 208, PI compensator 214, adder 216, low-pass filter 224, and subtracter 226.

    Embodiment 10

    [0200] Hereinafter, rotary machine control device 100j according to Embodiment 10 that is configured by changing a portion of rotary machine control device 100 according to Embodiment 1 will be described. Here, in rotary machine control device 100j according to Embodiment 10, structural elements that are the same as those of rotary machine control device 100 are given the same reference numerals, and a detailed description thereof will be omitted because they have already been described above. Accordingly, the following description will be given focusing on a difference from rotary machine control device 100.

    [0201] As shown in FIG. 22, rotary machine control device 100j includes first current sensor 102, second current sensor 104, position sensorless controller 106j, and duty generator 108. Rotary machine control device 100j is connected to PWM (Pulse Width Modulation) inverter 300 and synchronous rotary machine 400.

    [0202] Position sensorless controller 106j performs position sensorless magnetic flux control of synchronous rotary machine 400. Position sensorless controller 106j is configured to perform the position sensorless magnetic flux control operation of synchronous rotary machine 400. In the present embodiment, during a period in which the position sensorless magnetic flux control operation is performed, the rotation speed (the number of rotations) of the rotor of synchronous rotary machine 400 matches the rotation speed (synchronous speed) of a rotary machine current that is applied to synchronous rotary machine 400. The position sensorless magnetic flux control operation is an operation performed without using an encoder and a position sensor such as a resolver. In the specification of the present application, for the sake of convenience of the description, an operation of controlling a rotary machine magnetic flux by using the phase of an estimated rotary machine magnetic flux will be referred to as a “magnetic flux control operation”. The rotary machine magnetic flux conceptually includes both an armature interlinkage magnetic flux in a three-phase AC coordinate system that is applied to synchronous rotary machine 400 and a magnetic flux obtained by coordinate converting the armature interlinkage magnetic flux. In the specification of the present application, the term “amplitude” may also simply indicate magnitude (absolute value).

    [0203] Some or all of the structural elements of rotary machine control device 100j may be provided by a control application executed by a DSP (Digital Signal Processor) or a microcomputer. The DSP or the microcomputer may include a core, a memory, an A/D conversion circuit, and peripheral devices such as a communication port. Also, some or all of the structural elements of rotary machine control device 100j may be configured using a logic circuit.

    Overview of Control of Rotary Machine Control Device 100j

    [0204] Rotary machine control device 100j generates duties D.sub.u, D.sub.v, and D.sub.w from command torque T.sub.e* and phase currents i.sub.u and i.sub.w. Voltage vectors v.sub.u, v.sub.v, and v.sub.w to be applied to synchronous rotary machine 400 are generated from duties D.sub.u, D.sub.v, and D.sub.w by PWM inverter 300. Command torque T.sub.e* is input from an upper control device to rotary machine control device 100j. Command torque T.sub.e* represents a torque to be followed by a motor torque.

    [0205] Hereinafter, an overview of an operation performed by rotary machine control device 100j will be described. Phase currents i.sub.u and i.sub.w are detected by current sensors 102 and 104 (first current sensor 102 and second current sensor 104). During the operation of the position sensorless magnetic flux control operation, command voltage vectors v.sub.u*, v.sub.v*, and v.sub.w* are generated from command torque T.sub.e* and phase currents i.sub.u and i.sub.w by position sensorless controller 106j. The components of command voltage vectors v.sub.u*, v.sub.v*, and v.sub.w* correspond to a U-phase voltage, a V-phase voltage, and a W-phase voltage on the three-phase AC coordinate, respectively. Duties D.sub.u, D.sub.v, and D.sub.w are generated from command voltage vectors v.sub.u*, v.sub.v*, and v.sub.w* by duty generator 108. Duties D.sub.u, D.sub.v, and D.sub.w are input to PWM inverter 300. By performing control as described above, synchronous rotary machine 400 is controlled such that the torque follows command torque T.sub.e*.

    [0206] Hereinafter, rotary machine control device 100j may be described based on a a-β coordinate system. Also, rotary machine control device 100j may also be described based on a d-q coordinate system. Also, rotary machine control device 100j may also be described based on a dm-qm coordinate system. FIG. 2 shows the a-β coordinate system, the d-q coordinate system, and the dm-qm coordinate system. The a-β coordinate system is a fixed coordinate system. The a-β coordinate system may also be called a stationary coordinate system or an AC coordinate system. The a axis is set as the axis extending in the same direction as the U axis (not shown in FIG. 2). The U axis corresponds to U-phase winding of rotary machine control device 100. The β axis is orthogonal to the a axis. The d-q coordinate system is a rotating coordinate system. The d-q coordinate system is a coordinate system with the d axis representing the phase of the rotor of synchronous rotary machine 400 and the q axis representing a phase shifted by 90 degrees from the phase of the rotor of synchronous rotary machine 400. The dm-qm coordinate system is a rotating coordinate system. The dm-qm coordinate system is a coordinate system with the dm axis representing magnet phase θ.sub.dm that is the phase of magnet flux Ψ.sub.m that is an estimated magnetic flux of a permanent magnet included in synchronous rotary machine 400 and the qm axis representing a phase shifted by 90 degrees from magnet phase θ.sub.dm.

    Position Sensorless Controller 106j

    [0207] Referring back to FIG. 22, position sensorless controller 106j performs the position sensorless magnetic flux control operation to set a command amplitude such that the amplitude of the rotary machine magnetic flux converges on a target amplitude. The position sensorless magnetic flux control operation is performed by referencing command phase θ.sub.S* determined from the phase (estimated phase θ.sub.S) of the rotary machine magnetic flux estimated based on magnetic flux estimator 112 (described later). The target amplitude is an amplitude to be finally reached by the amplitude of the rotary machine magnetic flux. The command amplitude is an amplitude to be followed by the amplitude of the rotary machine magnetic flux.

    [0208] As shown in FIG. 23, position sensorless controller 106j includes u, w/a, β converter 110, magnetic flux estimator 112, phase determiner 114, torque estimator 116, command amplitude generator 118, magnetization characteristics determiner 120, ripple compensation determiner 122j, command phase determiner 124j, command magnetic flux generator 126, voltage command generator 128, and a, β/u , v, w converter 130.

    [0209] In position sensorless controller 106j, phase currents i.sub.u and i.sub.w are converted to axis currents i.sub.a and i.sub.β by u, w/a, β converter 110. The expression “axis currents i.sub.a and i.sub.β” is a collective expression for a-axis current i.sub.a and β-axis current i.sub.β on the a-β coordinate system of synchronous rotary machine 400. The rotary machine magnetic flux is estimated (estimated magnetic flux Ψs is determined) by magnetic flux estimator 112. The a-axis component and the β-axis component of estimate magnetic flux Ψs will be referred to as “estimated magnetic flux Ψa” and “estimated magnetic flux Ψ.sub.β”, respectively. The phase of the rotary machine magnetic flux is estimated (estimated phase θ.sub.S of estimated magnetic flux Ψs is determined) from estimated magnetic flux Ψs by phase determiner 114. The motor torque is estimated (estimated torque T.sub.e is determined) from estimated magnetic flux Ψs and axis currents i.sub.a and i.sub.β by torque estimator 116. Command amplitude |Ψ.sub.s* | is generated from estimated magnetic flux Ψs and axis currents i.sub.a and i.sub.β by command amplitude generator 118. Qm-axis current i.sub.qm and harmonic component nθ.sub.dm of magnet phase θ.sub.dm are determined from estimated magnetic flux Ψs and axis currents i.sub.aand i.sub.β by magnetization characteristics determiner 120. Ripple compensation torque T.sub.ripple is determined from qm-axis current i.sub.qm and harmonic component nθ.sub.dm by ripple compensation determiner 122j. The command phase (command magnetic flux vector phase) θ.sub.s* of command magnetic flux vector Ψ.sub.s* is determined from estimated phase θ.sub.S of estimated magnetic flux Ψ.sub.s, command torque T.sub.e*, estimated torque T.sub.e, and ripple compensation torque T.sub.ripple by command phase determiner 124j. Command magnetic flux vector Ψ.sub.s* is determined from command amplitude |Ψ.sub.S* | and command phase θ.sub.S* by command magnetic flux generator 126. The a-axis component and the β-axis component of command magnetic flux vector Ψ.sub.s* will be referred to as “a-axis command magnetic flux Ψa*” and “β-axis command magnetic flux Ψβ*”, respectively. Command axis voltages v.sub.a* and vβ* are determined from command magnetic fluxes Ψ.sub.a* and Ψ.sub.β*, estimated magnetic fluxes Ψ.sub.a and Ψ.sub.β, and axis currents i.sub.aand i.sub.β by voltage command generator 128. The expression “command axis voltages v.sub.a* and vp*” is a collective expression for a-axis command axis voltage v.sub.a* and β-axis command axis voltage V.sub.β* on the a - β coordinate system of synchronous rotary machine 400. Command axis voltages v.sub.a* and V.sub.β* are converted to command voltage vectors v.sub.u*, v.sub.v*, and V.sub.w* by a, β/u, v, w converter 130.

    [0210] In the position sensorless magnetic flux control operation, by performing control as described above, the motor torque follows command torque T.sub.e*, the rotary machine magnetic flux follows command magnetic flux vector Ψ.sub.s*. As a result, the speed of synchronous rotary machine 400 follows command speed .sub.Wref*. In the above-described expression “position sensorless controller 106j performs the position sensorless magnetic flux control operation to set a command amplitude such that the amplitude of the rotary machine magnetic flux converges on a target amplitude”, the target amplitude corresponds to command amplitude |Ψ.sub.s* | . By taking this into consideration, in the following description, command amplitude |Ψ.sub.S* | may also be referred to as “target amplitude |Ψ.sub.S* |”.

    [0211] In the specification of the present application, axis currents i.sub.a and i.sub.β mean current values that are transmitted as information, rather than electric currents that actually flow through synchronous rotary machine 400. Command axis voltages v.sub.a* and V.sub.β*, estimated magnetic flux Ψ.sub.s, estimated phase θs, command phase θ.sub.s*, estimated torque T.sub.e, command torque T.sub.e*, command amplitude | Ψ.sub.s* | (target amplitude | Ψ.sub.s* |), command magnetic flux vector Ψs*, command voltage vectors v.sub.u*, v.sub.v*, and V.sub.w*, command speed ω.sub.ref*, magnet phase θ.sub.dm, harmonic component nθ.sub.dm, and qm-axis current i.sub.qm, and the like also mean values that are transmitted as information.

    [0212] The structural elements of position sensorless controller 106j shown in FIG. 23 will be described below.

    Ripple Compensation Determiner 122j

    [0213] As shown in FIG. 24, ripple compensation determiner 122j determines ripple compensation torque T.sub.ripple based on qm-axis current i.sub.qm and harmonic component nθ.sub.dm. Ripple compensation determiner 122j includes magnetic energy table 168 and ripple torque determiner 170.

    [0214] Ripple compensation determiner 122j determines magnetic energy W’.sub.qmcn and magnetic energy W’.sub.qmsn by using qm-axis current i.sub.qm output from a, β/qm converter 148 and magnetic energy table 168 (see FIG. 7) created by magnetic energy determiner 156. Specifically, ripple compensation determiner 122j selects, from magnetic energy table 168, a value of magnetic energy W’.sub.qmcn that corresponds to the value of qm-axis current i.sub.qm output from a, β/qm converter 148, and outputs the selected value. Also, ripple compensation determiner 122j selects, from magnetic energy table 168, a value of magnetic energy W’.sub.qmsn that corresponds to the value of qm-axis current i.sub.qm output from a, β/qm converter 148, and outputs the selected value.

    Command Phase Determiner 124j

    [0215] Referring back to FIG. 23, command phase determiner 124j determines the command magnetic flux vector phase based on ripple compensation phase θ.sub.ripple determined based on ripple compensation torque T.sub.ripple by resonator 189 (described later) and a torque command or a rotation speed command. Here, an example will be described in which the command magnetic flux vector phase is determined by using the torque command. The command magnetic flux vector phase is command phase θ.sub.s*. That is, in the present embodiment, as shown in FIG. 2, command phase θ.sub.S* is the phase of command magnetic flux vector Ψ.sub.s*. In the present embodiment, command phase determiner 124j determines command phase θ.sub.S* by adding torque phase Δθ.sub.S for converging estimated torque T.sub.e on command torque T.sub.e*, ripple compensation phase θ.sub.ripple, and estimated phase θ.sub.S. That is, command phase determiner 124j determines command phase θ.sub.S* by using torque phase Δθ.sub.S, ripple compensation phase θ.sub.ripple, and estimated phase θ.sub.S.

    [0216] As shown in FIG. 25, command phase determiner 124j includes subtracter 186, PI compensator 188, resonator 189, adder 190, and adder 192.

    [0217] Subtracter 186 subtracts estimated torque T.sub.e and ripple compensation torque T.sub.ripple from command torque T.sub.e* to determine deviation ΔT.

    [0218] PI compensator 188 determines torque phase Δθ.sub.S by performing proportional-integral control for converging deviation ΔT determined by subtracter 186 on 0.

    [0219] Resonator 189 determines ripple compensation phase θ.sub.ripple by using deviation ΔT based on Equation (26). Here, b.sub.0 represents a coefficient, and is a preset constant. Also, ξ represents a damping coefficient, ω.sub.n represents a natural frequency, and s represents a transfer function.

    [00026]θripple=b0ΔTs2+2ξωns+ωn2

    [0220] In the manner as described above, resonator 189 determines ripple compensation phase θ.sub.ripple based on ripple compensation torque T.sub.ripple. For example, resonator 189 is a resonator device.

    [0221] Adder 190 adds torque phase Δθ.sub.S and ripple compensation phase θ.sub.ripple.

    [0222] Adder 192 further adds estimated phase θ.sub.S to torque phase Δθ.sub.S and ripple compensation phase θ.sub.ripple to determine command phase θ.sub.S*.

    Advantageous Effects, Etc

    [0223] Rotary machine control device 100j according to Embodiment 10 includes: magnetic flux estimator 112 that estimates a rotary machine magnetic flux that is a magnetic flux of synchronous rotary machine 400; command amplitude generator 118 that generates command amplitude | Ψ.sub.s* | that is an amplitude of command magnetic fluxes Ψ.sub.a* and Ψ.sub.β* by executing feedback control that uses a first inner product or a second inner product, the first inner product being a product of estimated magnetic flux Ψ.sub.s that is the estimated rotary machine magnetic flux and detection current i of synchronous rotary machine 400, the second inner product being a product of detection current i of synchronous rotary machine 400 and estimated magnet flux Ψ.sub.am of a permanent magnet included in synchronous rotary machine 400; magnetization characteristics determiner 120 that determines magnet phase θ.sub.dm that is a phase of magnet flux Ψ.sub.am based on estimated magnetic flux Ψ.sub.s and detection current i, and also determines qm-axis magnetic flux Ψ.sub.qm of estimated magnetic flux Ψ.sub.s, qm-axis current i.sub.qm of detection current i, and harmonic component nθ.sub.dm of magnet phase θ.sub.dm by using a dm-qm coordinate system with the dm axis representing magnet phase θ.sub.dm and the qm axis representing a phase shifted by 90 degrees from magnet phase θ.sub.dm; ripple compensation determiner 122j that determines ripple compensation torque T.sub.ripple based on qm-axis current i.sub.qm and harmonic component nθ.sub.dm; command phase determiner 124j that determines command phase θ.sub.S* based on ripple compensation phase θ.sub.ripple determined based on ripple compensation torque T.sub.ripple by resonator 189 and a torque command or a rotation speed command; and command magnetic flux generator 126 that generates command magnetic fluxes Ψ.sub.a* and Ψ.sub.β* based on command amplitude |Ψ.sub.S* | and command phase 6.sub.s*.

    [0224] With this configuration, magnet phase θ.sub.dm can be determined; qm-axis magnetic flux Ψ.sub.qm of estimated magnetic flux Ψ.sub.s, qm-axis current i.sub.qm of detection current i, and harmonic component nθ.sub.dm of magnet phase θ.sub.dm can be determined by using a dm-qm coordinate system with the dm axis representing magnet phase θ.sub.dm and the qm axis representing a phase shifted by 90 degrees from magnet phase θ.sub.dm; ripple compensation torque T.sub.ripple can be determined based on qm-axis current i.sub.qm and harmonic component nθ.sub.dm; and command phase θ.sub.S* can be determined based on ripple compensation phase θ.sub.ripple determined based on ripple compensation torque T.sub.ripple and a torque command or a rotation speed command. Accordingly, in the position sensorless magnetic flux control, the torque ripple can be effectively reduced.

    [0225] Also, in Embodiment 10, as described with reference to FIG. 25, ripple compensation phase θ.sub.ripple is determined by using estimated torque T.sub.e, and thus the torque ripple can be reduced with high accuracy.

    [0226] Also, rotary machine control device 100j according to Embodiment 10 further includes: phase determiner 114 that determines estimated phase θ.sub.S that is a phase of estimated magnetic flux Ψs based on estimated magnetic flux Ψ.sub.s; and torque estimator 116 that computes estimated torque T.sub.e based on estimated magnetic flux Ψs and detection current i. Command phase determiner 124j determines command phase θ.sub.S* by adding torque phase Δθ.sub.S for converging estimated torque T.sub.e on command torque T.sub.e*, ripple compensation phase θ.sub.ripple, and estimated phase θ.sub.s.

    [0227] With this configuration, command phase θ.sub.S* can be determined by adding torque phase Δθ.sub.S for converging estimated torque T.sub.e on command torque T.sub.e*, ripple compensation phase θ.sub.ripple, and estimated phase θs, and thus, in the position sensorless magnetic flux control, the torque ripple can be more effectively reduced.

    [0228] Also, in rotary machine control device 100j according to Embodiment 10, command amplitude generator 118 sets a target value of a result of computation of the first inner product or the second inner product to zero.

    [0229] With this configuration, it is possible to cause electric current that generates a field magnetic flux in the direction of magnet flux Ψam of the permanent magnet of synchronous rotary machine 400 to flow. Accordingly, the torque ripple can be more effectively reduced.

    Embodiment 11

    [0230] Hereinafter, a rotary machine control device according to Embodiment 11 that is configured by changing a portion of rotary machine control device 100j according to Embodiment 10 will be described. Here, in the rotary machine control device according to Embodiment 11, structural elements that are the same as those of rotary machine control device 100j are given the same reference numerals, and a detailed description thereof will be omitted because they have already been described above. Accordingly, the following description will be given focusing on a difference from rotary machine control device 100j.

    [0231] FIG. 12 is a block diagram of command amplitude generator 118a included in the rotary machine control device according to Embodiment 2.

    [0232] As shown in FIG. 12, the rotary machine control device according to Embodiment 11 is configured by replacing command amplitude generator 118 of rotary machine control device 100j according to Embodiment 10 with command amplitude generator 118a.

    Embodiment 12

    [0233] Hereinafter, a rotary machine control device according to Embodiment 12 that is configured by changing a portion of rotary machine control device 100j according to Embodiment 10 will be described. Here, in the rotary machine control device according to Embodiment 12, structural elements that are the same as those of rotary machine control device 100j are given the same reference numerals, and a detailed description thereof will be omitted because they have already been described above. Accordingly, the following description will be given focusing on a difference from rotary machine control device 100j.

    [0234] FIG. 13 is a block diagram of magnetization characteristics determiner 120b included in the rotary machine control device according to Embodiment 3. FIG. 14 is a block diagram of magnetization characteristics determiner 120c that is another magnetization characteristics determiner included in the rotary machine control device according to Embodiment 3.

    [0235] As shown in FIG. 13, the rotary machine control device according to Embodiment 12 is configured by replacing magnetization characteristics determiner 120 of rotary machine control device 100j according to Embodiment 10 with magnetization characteristics determiner 120b.

    [0236] Magnetization characteristics determiner 120b shown in FIG. 13 may be replaced with magnetization characteristics determiner 120c shown in FIG. 14.

    Embodiment 13

    [0237] Hereinafter, a rotary machine control device according to Embodiment 13 that is configured by changing a portion of rotary machine control device 100j according to Embodiment 10 will be described. Here, in the rotary machine control device according to Embodiment 13, structural elements that are the same as those of rotary machine control device 100j are given the same reference numerals, and a detailed description thereof will be omitted because they have already been described above. Accordingly, the following description will be given focusing on a difference from rotary machine control device 100j.

    [0238] FIG. 26 is a block diagram of position sensorless controller 106k included in the rotary machine control device according to Embodiment 13. FIG. 27 is a block diagram of command phase determiner 124k included in position sensorless controller 106k shown in FIG. 26.

    [0239] As shown in FIG. 26, the rotary machine control device according to Embodiment 13 is configured by replacing position sensorless controller 106j of rotary machine control device 100j according to Embodiment 10 with position sensorless controller 106k.

    [0240] Position sensorless controller 106k is different from position sensorless controller 106j mainly in that position sensorless controller 106k includes command phase determiner 124k, instead of command phase determiner 124j.

    [0241] In the present embodiment, command speed w.sub.ref* is input to position sensorless controller 106k. Command speed w.sub.ref* represents a speed to be followed by synchronous rotary machine 400. Position sensorless controller 106k generates command voltage vectors v.sub.u*, v.sub.v*, and V.sub.w* from command speed w.sub.ref* and phase currents i.sub.u and i.sub.w. By performing control as described above, synchronous rotary machine 400 is controlled such that the speed of synchronous rotary machine 400 follows command speed w.sub.ref*.

    [0242] As shown in FIG. 27, command phase determiner 124k includes resonator 189, integrator 200, and adder 202. Command phase determiner 124k determines command phase θ.sub.S* based on ripple compensation phase θ.sub.ripple and a rotation speed command.

    [0243] Resonator 189 determines ripple compensation phase θ.sub.ripple based on ripple compensation torque T.sub.ripple. For example, resonator 189 determines ripple compensation phase θ.sub.ripple through calculation performed by replacing ΔT in Equation (26) described above with T.sub.ripple.

    [0244] Integrator 200 integrates command speed .sub.Wref*.

    [0245] Adder 202 adds ripple compensation phase θ.sub.ripple to the value determined by integrator 200 to determine command phase θ.sub.S*.

    [0246] As described above, the rotary machine control device may include position sensorless controller 106k instead of position sensorless controller 106j.

    Embodiment 14

    [0247] Hereinafter, a rotary machine control device according to Embodiment 14 that is configured by changing a portion of the rotary machine control device according to Embodiment 13 will be described. Here, in the rotary machine control device according to Embodiment 14, structural elements that are the same as those of the rotary machine control device according to Embodiment 13 are given the same reference numerals, and a detailed description thereof will be omitted because they have already been described above. Accordingly, the following description will be given focusing on a difference from the rotary machine control device according to Embodiment 13.

    [0248] FIG. 28 is a block diagram of command phase determiner 124I included in the rotary machine control device according to Embodiment 14.

    [0249] As shown in FIG. 28, the rotary machine control device according to Embodiment 14 is configured by replacing command phase determiner 124k of the rotary machine control device according to Embodiment 13 with command phase determiner 124I.

    [0250] Command phase determiner 124I: (i) determines movement amount Δθ of estimated phase θ.sub.S of estimated magnetic flux Ψs for each control cycle by which estimated phase θ.sub.S needs to move by using a rotation speed command input to synchronous rotary machine 400; and (ii) determines command phase θ.sub.s* by using determined movement amount Δθ and ripple compensation phase θ.sub.ripple. Command phase determiner 124I includes resonator 189, adder 202, multiplier 204, and adder 206.

    [0251] Multiplier 204 multiplies command speed w.sub.ref* by T.sub.s to determine movement amount Δθ. Here, T.sub.s represents a control cycle.

    [0252] Adder 202 adds ripple compensation phase θ.sub.ripple to movement amount Δθ.

    [0253] Adder 206 adds estimated phase θ.sub.S to the value determined by adder 202 to determine command phase θ.sub.s*.

    [0254] As described above, command phase determiner 124I may include resonator 189, adder 202, multiplier 204, and adder 206.

    [0255] The rotary machine control device according to Embodiment 14 further includes phase determiner 114 that determines estimated phase θ.sub.S that is the phase of estimated magnetic flux Ψs based on estimated magnetic flux Ψ.sub.s. Command phase determiner 124I: (i) determines movement amount Δθ of estimated phase Ψs for each control cycle by which estimated phase ψ.sub.s needs to move by using a rotation speed command input to synchronous rotary machine 400; and (ii) determines command phase θ.sub.s* by using determined movement amount Δθ, ripple compensation phase θ.sub.ripple, and estimated phase θ.sub.s.

    [0256] With this configuration, command phase θ.sub.s* can be determined by using movement amount Δθ of estimated phase ψ.sub.s for each control cycle by which estimated phase ψ.sub.s needs to move, ripple compensation phase θ.sub.ripple, and estimated phase θ.sub.s. Accordingly, in the position sensorless magnetic flux control, the torque ripple can be more effectively reduced.

    Embodiment 15

    [0257] Hereinafter, a rotary machine control device according to Embodiment 15 that is configured by changing a portion of the rotary machine control device according to Embodiment 14 will be described. Here, in the rotary machine control device according to Embodiment 15, structural elements that are the same as those of the rotary machine control device according to Embodiment 14 are given the same reference numerals, and a detailed description thereof will be omitted because they have already been described above. Accordingly, the following description will be given focusing on a difference from the rotary machine control device according to Embodiment 14.

    [0258] FIG. 29 is a block diagram of command phase determiner 124m included in the rotary machine control device according to Embodiment 15.

    [0259] As shown in FIG. 29, the rotary machine control device according to Embodiment 15 is configured by replacing command phase determiner 124I of the rotary machine control device according to Embodiment 14 with command phase determiner 124m.

    [0260] Command phase determiner 124m determines command phase θ.sub.s* by further using estimated torque T.sub.e. Command phase determiner 124m includes resonator 189, adder 202, adder 206, multiplier 208, high-pass filter 210, sign inverter 212, PI compensator 214, adder 216, and subtracter 217.

    [0261] Multiplier 208 multiplies command speed ω.sub.ref* by T.sub.s to determine ω.sub.ref*T.sub.s.

    [0262] High-pass filter 210 outputs torque T.sub.H from estimated torque T.sub.e.

    [0263] Sign inverter 212 inverts the sign of torque T.sub.H.

    [0264] PI compensator 214 determines Δω.sub.ref*T.sub.s from torque -T.sub.H.

    [0265] Adder 216 adds ω.sub.ref*T.sub.s determined by multiplier 208 and Δω.sub.ref*T.sub.s determined by PI compensator 214 to determine torque phase Δθ.sub.s.

    [0266] Subtracter 217 subtracts T.sub.e from -T.sub.ripple.

    [0267] Resonator 189 determines ripple compensation phase θ.sub.ripple based on ripple compensation torque T.sub.ripple. For example, resonator 189 determines ripple compensation phase θ.sub.ripple through calculation performed by replacing ΔT in Equation (26) described above with -T.sub.ripple-T.sub.e.

    [0268] Adder 202 adds ripple compensation phase θ.sub.ripple to torque phase Δθ.sub.s.

    [0269] Adder 206 adds estimated phase θ.sub.s to the value determined by adder 202 to determine command phase θ.sub.s*.

    [0270] As described above, command phase determiner 124m may include resonator 189, adder 202, adder 206, multiplier 208, high-pass filter 210, sign inverter 212, PI compensator 214, adder 216, and subtracter 217.

    [0271] The rotary machine control device according to Embodiment 15 further includes torque estimator 116 that computes estimated torque T.sub.e based on estimated magnetic flux ψ.sub.s and detection current i, and command phase determiner 124m determines command phase θ.sub.s* by further using estimated torque T.sub.e.

    [0272] With this configuration, command phase θ.sub.s* can be determined by further using estimated torque T.sub.e. Accordingly, in the position sensorless magnetic flux control, the torque ripple can be more effectively reduced.

    Embodiment 16

    [0273] Hereinafter, a rotary machine control device according to Embodiment 16 that is configured by changing a portion of the rotary machine control device according to Embodiment 13 will be described. Here, in the rotary machine control device according to Embodiment 16, structural elements that are the same as those of the rotary machine control device according to Embodiment 13 are given the same reference numerals, and a detailed description thereof will be omitted because they have already been described above. Accordingly, the following description will be given focusing on a difference from the rotary machine control device according to Embodiment 13.

    [0274] FIG. 30 is a block diagram of command phase determiner 124n included in the rotary machine control device according to Embodiment 16.

    [0275] As shown in FIG. 30, the rotary machine control device according to Embodiment 16 is configured by replacing command phase determiner 124k of the rotary machine control device according to Embodiment 13 with command phase determiner 124n.

    [0276] Command phase determiner 124n includes resonator 189, integrator 200, adder 202, subtracter 217, high-pass filter 218, gain multiplier 220, and subtracter 222.

    [0277] High-pass filter 218 outputs torque T.sub.H from estimated torque T.sub.e.

    [0278] Gain multiplier 220 multiplies torque T.sub.H by gain K.sub.1.

    [0279] Subtracter 222 subtracts K.sub.1T.sub.H from command speed ω.sub.ref*

    [0280] Integrator 200 integrates the value determined by subtracter 222.

    [0281] Subtracter 217 subtracts T.sub.e from -T.sub.ripple.

    [0282] Resonator 189 determines ripple compensation phase θ.sub.ripple based on ripple compensation torque T.sub.ripple. For example, resonator 189 determines ripple compensation phase θ.sub.ripple through calculation performed by replacing ΔT in Equation (26) described above with -T.sub.ripple-T.sub.e.

    [0283] Adder 202 adds ripple compensation phase θ.sub.ripple to the value determined by integrator 200 to determine command phase θ.sub.s*.

    [0284] As described above, command phase determiner 124n may include resonator 189, integrator 200, adder 202, subtracter 217, high-pass filter 218, gain multiplier 220, and subtracter 222.

    Embodiment 17

    [0285] Hereinafter, a rotary machine control device according to Embodiment 17 that is configured by changing a portion of the rotary machine control device according to Embodiment 16 will be described. Here, in the rotary machine control device according to Embodiment 17, structural elements that are the same as those of the rotary machine control device according to Embodiment 16 are given the same reference numerals, and a detailed description thereof will be omitted because they have already been described above. Accordingly, the following description will be given focusing on a difference from the rotary machine control device according to Embodiment 16.

    [0286] FIG. 31 is a block diagram of command phase determiner 124p included in the rotary machine control device according to Embodiment 17.

    [0287] As shown in FIG. 31, the rotary machine control device according to Embodiment 17 is configured by replacing command phase determiner 124n of the rotary machine control device according to Embodiment 16 with command phase determiner 124p.

    [0288] Command phase determiner 124p includes resonator 189, adder 202, multiplier 204, adder 206, subtracter 217, high-pass filter 218, gain multiplier 220, and subtracter 222.

    [0289] Adder 202 adds ripple compensation phase θ.sub.ripple to movement amount Δθ determined by multiplier 204.

    [0290] Adder 206 adds estimated phase θ.sub.s to the value determined by adder 202 to determine command phase θ.sub.s*.

    [0291] As described above, command phase determiner 124p may include resonator 189, adder 202, multiplier 204, adder 206, subtracter 217, high-pass filter 218, gain multiplier 220, and subtracter 222.

    Embodiment 18

    [0292] Hereinafter, a rotary machine control device according to Embodiment 18 that is configured by changing a portion of the rotary machine control device according to Embodiment 17 will be described. Here, in the rotary machine control device according to Embodiment 18, structural elements that are the same as those of the rotary machine control device according to Embodiment 17 are given the same reference numerals, and a detailed description thereof will be omitted because they have already been described above. Accordingly, the following description will be given focusing on a difference from the rotary machine control device according to Embodiment 17.

    [0293] FIG. 32 is a block diagram of command phase determiner 124q included in the rotary machine control device according to Embodiment 18.

    [0294] As shown in FIG. 32, the rotary machine control device according to Embodiment 18 is configured by replacing command phase determiner 124p of the rotary machine control device according to Embodiment 17 with command phase determiner 124q.

    [0295] Command phase determiner 124q includes resonator 189, adder 202, adder 206, multiplier 208, PI compensator 214, adder 216, subtracter 217, low-pass filter 224, and subtracter 226.

    [0296] Multiplier 208 multiplies command speed ω.sub.ref* by T.sub.s to determine ω.sub.ref*T.sub.s.

    [0297] Low-pass filter 224 outputs torque T.sub.L from estimated torque T.sub.e.

    [0298] Subtracter 226 subtracts estimated torque T.sub.e from torque T.sub.L to determine torque -T.sub.H.

    [0299] PI compensator 214 determines Δω.sub.ref*T.sub.s from torque -T.sub.H.

    [0300] Adder 216 adds ω.sub.ref*T.sub.s determined by multiplier 208 and Δω.sub.ref*T.sub.s determined by PI compensator 214 to determine torque phase Δθ.sub.s.

    [0301] Adder 202 adds ripple compensation phase θ.sub.ripple to torque phase Δθ.sub.s determined by adder 216.

    [0302] Adder 206 adds estimated phase θ.sub.s to the value determined by adder 202 to determine command phase θ.sub.s*.

    [0303] As described above, command phase determiner 124q may include resonator 189, adder 202, adder 206, multiplier 208, PI compensator 214, adder 216, subtracter 217, low-pass filter 224, and subtracter 226.

    Embodiment 19

    [0304] Hereinafter, rotary machine control device 100r according to Embodiment 19 that is configured by changing a portion of rotary machine control device 100 according to Embodiment 1 will be described. Here, in rotary machine control device 100r according to Embodiment 19, structural elements that are the same as those of rotary machine control device 100 are given the same reference numerals, and a detailed description thereof will be omitted because they have already been described above. Accordingly, the following description will be given focusing on a difference from rotary machine control device 100.

    [0305] As shown in FIG. 33, rotary machine control device 100r is configured by replacing position sensorless controller 106 of rotary machine control device 100 according to Embodiment 1 with position sensorless controller 106r.

    [0306] As shown in FIG. 34, position sensorless controller 106r is configured by replacing magnetization characteristics determiner 120 and ripple compensation determiner 122 of position sensorless controller 106 with ripple compensation determiner 122r.

    [0307] As shown in FIG. 35, ripple compensation determiner 122r determines magnet phase θ.sub.dm that is the phase of magnet flux ψ.sub.am based on estimated magnetic flux ψ.sub.s and detection current i, and also determines ripple compensation phase θ.sub.ripple, by using resonator 189, based on ripple compensation torque T.sub.ripple that includes the pulsation of qm-axis current i.sub.qm of detection current i by using a dm-qm coordinate system with the dm axis representing magnet phase θ.sub.dm and the qm axis representing a phase shifted by 90 degrees from magnet phase θ.sub.dm. Specifically, ripple compensation determiner 122r determines magnet phase θ.sub.dm that is the phase of magnet flux ψ.sub.am based on estimated magnetic flux ψ.sub.s and detection current i. Then, ripple compensation determiner 122r determines qm-axis current i.sub.qm of detection current i by using a dm-qm coordinate system with the dm axis representing magnet phase θ.sub.dm and the qm axis representing a phase shifted by 90 degrees from magnet phase θ.sub.dm. Then, ripple compensation determiner 122r determines ripple compensation torque T.sub.ripple that includes the pulsation of qm-axis current i.sub.qm of detection current i. Then, ripple compensation determiner 122r determines ripple compensation phase θ.sub.ripple, by using resonator 189, based on ripple compensation torque T.sub.ripple that includes the pulsation of qm-axis current i.sub.qm of detection current i. Ripple compensation determiner 122r includes magnet flux determiner 144, magnet phase determiner 146, a, β/qm converter 148, torque component determiner 228, and resonator 189.

    [0308] Torque component determiner 228 determines ripple compensation torque T.sub.ripple that includes the pulsation of qm-axis current i.sub.qm. Specifically, torque component determiner 228 determines ripple compensation torque T.sub.ripple that includes the pulsation of qm-axis current i.sub.qm by using Equation (27).

    [00027]Tripple=Ψamiqm

    [0309] Resonator 189 determines ripple compensation phase θ.sub.ripple based on ripple compensation torque T.sub.ripple that includes the pulsation of qm-axis current i.sub.qm. Specifically, resonator 189 determines ripple compensation phase θ.sub.ripple based on ripple compensation torque T.sub.ripple that includes the pulsation of qm-axis current i.sub.qm by using Equation (28). Here, b.sub.0 represents a coefficient, and is a preset constant. Also, ξ represents a damping coefficient, ω.sub.n represents a natural frequency, and s represents a transfer function.

    [00028]θripple=b0s2+2ξωns+ωn2Tripple

    [0310] In the manner as described above, resonator 189 determines ripple compensation phase θ.sub.ripple based on ripple compensation torque T.sub.ripple that includes the pulsation of qm-axis current i.sub.qm. For example, resonator 189 is a resonator device.

    [0311] For example, position sensorless controller 106r may include command amplitude generator 118a instead of command amplitude generator 118. Also, for example, position sensorless controller 106r may include, instead of command phase determiner 124, command phase determiner 124c, command phase determiner 124d, command phase determiner 124e, command phase determiner 124f, command phase determiner 124g, or command phase determiner 124h, and command speed ω.sub.ref* may be input to position sensorless controller 106r.

    [0312] FIG. 36 is a graph showing a torque waveform in a rotary machine. Specifically, FIG. 36 is a graph showing the torque of a rotary machine obtained by simulating control on the rotary machine by using a rotary machine control device. In this example, the rotary machine was controlled by driving the rotary machine control device in accordance with a method according to a comparative example, and thereafter, the rotary machine was controlled by driving the rotary machine control device in accordance with a method according to an embodiment. As the rotary machine, a motor whose magnet flux has a harmonic component was used, and the rotary machine was controlled to cause the rotation speed to be 3600 r/min and 50% of the rated load. The method of the comparative example is the same method as the method disclosed in NPL 1, and the method according to the embodiment is the same method as the method performed by rotary machine control device 100r.

    [0313] As shown in FIG. 36, when the rotary machine control device was driven by using the method of the embodiment, it was possible to reduce the torque ripple rate by about 22% as compared with that of when the rotary machine control device was driven by using the method of the comparative example. The torque ripple rate is determined by (maximum torque - minimum torque) / average torque.

    [0314] Also, when the rotary machine control device was driven by using the same method as the method performed by rotary machine control device 100 of Embodiment 1, and when the rotary machine control device was driven by using the same method as the method performed by rotary machine control device 100j of Embodiment 10 as well, it was possible to reduce the torque ripple rate as compared with that of when the rotary machine control device was driven by using the method of the comparative example.

    Advantageous Effects, Etc

    [0315] Rotary machine control device 100r according to Embodiment 19 includes: magnetic flux estimator 112 that estimates a rotary machine magnetic flux that is a flux of synchronous rotary machine 400; command amplitude generator 118 that generates command amplitude | ψ.sub.s* | that is an amplitude of command magnetic fluxes ψ.sub.α* and ψ.sub.β* by executing feedback control that uses a first inner product or a second inner product, the first inner product being a product of estimated magnetic flux ψ.sub.s that is the estimated rotary machine magnetic flux and detection current i of synchronous rotary machine 400, the second inner product being a product of detection current i and estimated magnet flux ψ.sub.am of a permanent magnet included in synchronous rotary machine 400; ripple compensation determiner 122r that determines magnet phase θ.sub.dm that is a phase of magnet flux ψ.sub.am based on estimated magnetic flux ψ.sub.s and detection current i, and also determines ripple compensation phase θ.sub.ripple by using resonator 189 based on ripple compensation torque T.sub.ripple that includes the pulsation of qm-axis current i.sub.qm of detection current I by using a dm-qm coordinate system with the dm axis representing magnet phase θ.sub.dm and the qm axis representing a phase shifted by 90 degrees from magnet phase θ.sub.dm; command phase determiner 124 that determines command phase θ.sub.s* based on ripple compensation phase θ.sub.ripple and a torque command or a rotation speed command; and command magnetic flux generator 126 that generates command magnetic fluxes ψ.sub.α* and ψ.sub.β* based on command amplitude | ψ.sub.s* | and command phase θ.sub.s*.

    [0316] With this configuration, magnet phase θ.sub.dm can be determined; qm-axis magnetic flux ψ.sub.qm of estimated magnetic flux ψ.sub.s and qm-axis current i.sub.qm of detection current i can be determined by using a dm-qm coordinate system with the dm axis representing magnet phase θ.sub.dm and the qm axis representing a phase shifted by 90 degrees from magnet phase θ.sub.dm; ripple compensation phase θ.sub.ripple can be determined based on ripple compensation torque T.sub.ripple that includes the pulsation of qm-axis current i.sub.qm of detection current i; and command phase θ.sub.s* can be determined based on ripple compensation phase θ.sub.ripple and a torque command or a rotation speed command. Accordingly, in the position sensorless magnetic flux control, the torque ripple can be effectively reduced.

    Other Embodiments, Etc

    [0317] The rotary machine control device according to one or more aspects of the present disclosure has been described above based on Embodiments 1 to 19. However, the present disclosure is not limited to these embodiments. Other embodiments obtained by making various modifications that can be conceived by a person having ordinary skill in the art to the above embodiments as well as embodiments constructed by combining structural elements of different embodiments without departing from the scope of the present disclosure are also included within the scope of the one or more aspects of the present disclosure.

    [0318] In Embodiment 1 described above, an example has been described in which rotary machine control device 100 includes torque estimator 116 and phase determiner 114. However, the configuration is not limited thereto. For example, the rotary machine control device does not necessarily need to include torque estimator 116 and phase determiner 114. In this case, for example, the rotary machine control device may acquire estimated torque T.sub.e and estimated phase θ.sub.s from the outside. Also, for example, as shown in FIG. 16, command phase θ.sub.s* may be determined without using estimated torque T.sub.e and estimated phase θ.sub.s.

    [0319] Also, in Embodiment 1, an example has been described in which rotary machine control device 100 includes torque estimator 116, but the configuration is not limited thereto. For example, the rotary machine control device does not necessarily need to include torque estimator 116. In this case, for example, the rotary machine control device may acquire estimated torque T.sub.e from outside. Also, for example, as shown in FIG. 17, command phase θ.sub.s* may be determined without using estimated torque T.sub.e. The same applies to Embodiments 2 to 9.

    [0320] In the embodiments described above, the structural elements may be configured by using dedicated hardware, or may be implemented by executing a software program suitable for the structural elements. The structural elements may be implemented by a program executor such as a CPU (Central Processing Unit) or a processor reading and executing a software program recorded in a recording medium such as a hard disk or a semiconductor memory.

    [0321] The present disclosure also encompasses the following cases.

    [0322] Each of the devices described above is, specifically, a computer system that includes a microprocessor, a ROM, a RAM, a hard disk unit, a display unit, a keyboard, a mouse, and the like. A computer program is stored in the RAM or the hard disk unit. The functions of the device are implemented as a result of the microprocessor operating in accordance with the computer program. Here, the computer program is composed of a combination of a plurality of instruction codes that indicate instructions for the computer to achieve predetermined functions.

    [0323] Some or all of the structural elements that constitute each of the devices described above may be composed of a single system LSI (Large Scale Integration). The system LSI is a super multifunctional LSI manufactured by integrating a plurality of structural elements on a single chip, and is specifically a computer system that includes a microprocessor, a ROM, a RAM, and the like. A computer program is stored in the RAM. The functions of the system LSI are implemented as a result of the microprocessor operating in accordance with the computer program.

    [0324] Some or all of the structural elements that constitute each of the devices described above may be composed of an IC card or a single module that can be attached and detached to and from the device. The IC card or the module is a computer system that includes a microprocessor, a ROM, a RAM, and the like. The IC card or the module may include the above-described super multifunctional LSI. The functions of the IC card or the module are implemented as a result of the microprocessor operating in accordance with a computer program. The IC card or the module may have tamper resistance.

    [0325] The present disclosure may be any of the methods described above. Alternatively, the present disclosure may be a computer program that implements any of the methods by using a computer, or may be a digital signal generated by the computer program.

    [0326] Also, the present disclosure may be implemented by recording the computer program or the digital signal in a computer readable recording medium such as, for example, a flexible disk, a hard disk, a CD-ROM, a MO, a DVD, a DVD-ROM, a DVD-RAM, a BD (Blu-ray (registered trademark) Disc), or a semiconductor memory. Also, the present disclosure may be the digital signal recorded in the recording medium.

    [0327] Also, the present disclosure may be implemented by transmitting the computer program or the digital signal via a telecommunication line, a wireless or wired communication line, a network as typified by the Internet, data broadcasting, or the like.

    [0328] Also, the present disclosure may be a computer system that includes a microprocessor and a memory. The memory stores the computer program described above, and the microprocessor may operate in accordance with the computer program.

    [0329] Also, the present disclosure may be implemented by another independent computer system by recording the program or the digital signal on the recording medium and transferring the program or the digital signal, or by transferring the program or the digital signal via the network described above or the like.

    [0330] The embodiments and other embodiments described above may be combined.

    [0331] While various embodiments have been described herein above, it is to be appreciated that various changes in form and detail may be made without departing from the spirit and scope of the present disclosure as presently or hereafter claimed.

    Further Information About Technical Background to this Application

    [0332] The disclosures of the following patent applications including specification, drawings, and claims are incorporated herein by reference in their entirety: Japanese Patent Application No. 2021-203816 filed on Dec. 16, 2021, Japanese Patent Application No. 2021-203968 filed on Dec. 16, 2021, and Japanese Patent Application No. 2022-085836 filed on May 26, 2022.

    Industrial Applicability

    [0333] The present invention is widely applicable to a rotary machine control device that controls a rotary machine, and the like.