A controller for controlling a three-phase brushless motor, the controller comprising: a three-phase/two-phase converter for converting values of three-phase currents ( Iu, Iv, Iw) provided to the brushless motor to generate two-phase current values ( Id, Iq) including a d-axis current value ( Id) and a q-axis current value (Iq); a two-phase/three-phase converter for converting a d-axis voltage command value ( Vd*) and a q-axis voltage command value ( Vq*) to three-phase voltage command values ( Vu*, Vv*, Vw*), the d-axis voltage command value ( Vd*) being corresponding to the difference ( ΔId) between the d-axis current value ( Id) and a d-axis current command value ( Id*), and the q-axis voltage command value ( Vq*) being corresponding to the difference ( ΔIq) between the q-axis current value ( Iq) and a q-axis current command value ( Iq*); an angular velocity calculator for calculating angular velocity ( ω) of the brushless motor; characterized by a condition determination circuit for determining whether absolute value of the angular velocity ( ω) is equal to or greater than a predetermined value ( ω0); and a command determination circuit for determining the d-axis current command value ( Id*) and the q-axis current command value ( Iq*) based on the determination of the condition determination circuit, wherein the command determination circuit: determines the d-axis current command value ( Id*) and the q-axis current command value ( Iq*) from the equations of Id ∗ = − Iq 0 × sin ⁢ Φ 0 and Iq ∗ = Iq 0 × cos ⁢ Φ 0 if the absolute value of the angular velocity ( ω) is greater than or equal to the predetermined value ( ω0), where Id* represents the d-axis current command value ( Id*), Iq* represents the q-axis current command value ( Iq*), Iq0 represents the input q-axis current command value, and Φ0 represents the predetermined phase advancing angle (Φ0); and determines zero as the d-axis current command value ( Id*) and Iq0 as the q-axis current command value ( Iq*) if the absolute value of the angular velocity ( ω) is smaller than the predetermined value ( ω0). a three-phase/two-phase converter for converting values of three-phase currents ( Iu, Iv, Iw) provided to the brushless motor to generate two-phase current values ( Id, Iq) including a d-axis current value ( Id) and a q-axis current value (Iq); a two-phase/three-phase converter for converting a d-axis voltage command value ( Vd*) and a q-axis voltage command value ( Vq*) to three-phase voltage command values ( Vu*, Vv*, Vw*), the d-axis voltage command value ( Vd*) being corresponding to the difference ( ΔId) between the d-axis current value ( Id) and a d-axis current command value ( Id*), and the q-axis voltage command value ( Vq*) being corresponding to the difference ( ΔIq) between the q-axis current value ( Iq) and a q-axis current command value ( Iq*); an angular velocity calculator for calculating angular velocity ( ω) of the brushless motor; characterized by a condition determination circuit for determining whether absolute value of the angular velocity ( ω) is equal to or greater than a predetermined value ( ω0); and a command determination circuit for determining the d-axis current command value ( Id*) and the q-axis current command value ( Iq*) based on the determination of the condition determination circuit, wherein the command determination circuit: determines the d-axis current command value ( Id*) and the q-axis current command value ( Iq*) from the equations of Id ∗ = − Iq 0 × sin ⁢ Φ 0 and Iq ∗ = Iq 0 × cos ⁢ Φ 0 if the absolute value of the angular velocity ( ω) is greater than or equal to the predetermined value ( ω0), where Id* represents the d-axis current command value ( Id*), Iq* represents the q-axis current command value ( Iq*), Iq0 represents the input q-axis current command value, and Φ0 represents the predetermined phase advancing angle (Φ0); and determines zero as the d-axis current command value ( Id*) and Iq0 as the q-axis current command value ( Iq*) if the absolute value of the angular velocity ( ω) is smaller than the predetermined value ( ω0).