The atmosphere temperature calculator calculates an estimated atmosphere
temperature value by subtracting a temperature rise amount of a
temperature sensor which is calculated based on a motor drive detected
current value from a detected temperature value of the temperature
sensor. The overheating prevention calculator calculates estimated
temperature values of a plurality of protection objects to be protected
from overheating based on the estimated atmosphere temperature value and
the motor drive detected current value and determines an upper limit of
target current of driving a motor based on such estimated temperature
values. The temperature compensation calculator calculates a temperature
compensation current value to be added to a target current value in order
to compensate a temperature characteristic of a predetermined portion
based on the estimated atmosphere temperature value.