A control device for rotary machine, which is adapted to control a rotary machine having windings for n phases (n is a natural number equal to or greater than 3), the control device comprising: - a voltage application section for applying a voltage vector based on a voltage vector instruction (Vr), to the rotary machine; - a current detection section for detecting current flowing in the winding for each phase of the rotary machine; - a voltage vector instruction calculation section for calculating, as the voltage vector instruction (Vr), 2n voltage vector instructions having the same amplitude, phases separated at equal intervals in one period (360°), and the same application time, and outputting the 2n voltage vector instructions to the voltage application section; - a storage section for storing, as stored current values, 2n × n currents detected for the respective phases by the current detection section when the 2n voltage vectors are applied, under the same condition thereamong; - a position estimation section for estimating a rotor position of the rotary machine in a stopped state, based on the stored current values from the storage section; and - an adjustment section for adjusting the application time to a minimum necessary application time Ta that allows the rotary machine to become a magnetically saturated state when the voltage vectors (Vr) are applied, so as to enable the estimation of the rotor position, wherein the adjustment section is adapted to calculate an adjustment evaluation value (|Δ Y|) and adjust the application time based on the adjustment evaluation value (|Δ Y|); characterized in that the calculated adjustment evaluation value (|Δ Y|) is based on the ratio between a voltage amplitude value of the voltage vector instructions (Vr) and the stored current values from the current detection section in the case where the voltage vector based on the voltage vector instruction (Vr) is applied with the application time being set to an arbitrary application time Tm, and in that the adjustment section is adapted to set, as the application time Ta, the application time Tm that causes the adjustment evaluation value (|Δ Y|) to become the minimum, in a range equal to or greater than a predetermined adjustment threshold value (Δ Ylev). - a voltage application section for applying a voltage vector based on a voltage vector instruction (Vr), to the rotary machine; - a current detection section for detecting current flowing in the winding for each phase of the rotary machine; - a voltage vector instruction calculation section for calculating, as the voltage vector instruction (Vr), 2n voltage vector instructions having the same amplitude, phases separated at equal intervals in one period (360°), and the same application time, and outputting the 2n voltage vector instructions to the voltage application section; - a storage section for storing, as stored current values, 2n × n currents detected for the respective phases by the current detection section when the 2n voltage vectors are applied, under the same condition thereamong; - a position estimation section for estimating a rotor position of the rotary machine in a stopped state, based on the stored current values from the storage section; and - an adjustment section for adjusting the application time to a minimum necessary application time Ta that allows the rotary machine to become a magnetically saturated state when the voltage vectors (Vr) are applied, so as to enable the estimation of the rotor position,