PROBLEM TO BE SOLVED: To suppress a decrease in a motor performance of a motor controller, which prevents a motor coil from overheating, due to limitation of a coil current by setting an upper limit of a coil temperature to a value sufficiently close to a guaranteed upper-limit temperature while guaranteeing that the coil temperature does not exceed the upper limit.SOLUTION: An upper-limit current calculation part 15 calculates an upper limit with which a coil temperature of each phase a first predetermined time later stays below an upper-limit temperature each time a second predetermined time passes based upon temperatures of respective phase coils that temperature sensors 6u, 6v, and 6w detect. A vector processing part 16 corrects a length of a target vector corresponding to a target coil current to within a length corresponding to a minimum upper-limit value among upper-limit values of the respective phases that the upper-limit current calculation part 15 calculates. A phase current conversion part 17 calculates each phase current value based upon a target vector after correction, and controls respective phase currents of a motor 2 through an inverter 3.COPYRIGHT: (C)2013,JPO&INPIT【課題】モータコイルの過熱を防止するモータ制御装置において、コイル温度が上限を超えないことを保証しつつ、コイル温度の上限を保証上限温度に十分近い値に設定して、コイル電流の制限に因るモータ性能の低下を抑止する。【解決手段】上限電流算出部15は、温度センサ6u,6v,6wが検出した各相コイルの温度に基づいて各相において第1の所定時間後のコイル温度が上限温度以下に留まる上限値を、第1の所定時間より短い第2の所定時間の経過ごとに算出する。ベクトル処理部16は、目標コイル電流に対応する目標ベクトルの長さを、上限電流算出部15が算出した各相の上限値の内の最小のものに対応する長さ以内になるように補正する。相電流変換部17は、補正後の目標ベクトルに基づいて各相電流値を算出し、インバータ3を介してモータ2の各相電流を制御する。【選択図】図1