To highly precisely recognize a pole position of a rotor of a synchronous motor by slightly turning the motor for avoiding the influence of disturbances such as a gravitational load, etc.
A first displacement information data V0C of a rotor pole, whose d-axis angle obtained by dividing into d-q axes is different from a reference phase θ0, determined by an exciting current applied to an armature coil of a synchronous motor, by an angle θ when a field phase command is the reference phase θ0, is detected (step 3). A displacement information data V180, when the field phase command is (θ+180°), is detected (step 4). A displacement information data V-90, when the field phase command is (θ-90°), is detected (step 5). A displacement information data V+90, when the field phase command is (θ+90°), is detected (step 6). The difference Δ1 between the displacement data V180 and the displacement data V0 and the difference Δ2 between the displacement data V+90 and the displacement data V-90 are obtained (steps 7 and 8). The angle θ is obtained from tan-1(Δ1/Δ2) (step 9). The pole position of the rotor is recognized as (θ0+θ) (step 13).
Next Patent: MOTOR DRIVE CONTROL METHOD, MOTOR DRIVE DEVICE, AND MOTOR DRIVE CONTROL PROGRAM