制御演算によりモータの電流を制御するための各相Duty指令値を算出し、前記各相Duty指令値に応じたPWM波形を形成し、前記PWM波形に基づいてインバータにより前記モータを駆動するモータ制御装置において、前記インバータの電源入力側又は電源出力側に単一の電流検出器を接続し、前記各相Duty指令値の差を保持したまま一律増減させるDutyシフト機能と、各相PWM信号の出力位置を決定するPWM出力位置変更機能を備え、1相のみ、又は2相同時に、PWM信号がONとなるタイミングをPWM周期の固定位置に発生させ、モータ電流を検出することを特徴とするモータ制御装置。前記PWM出力位置変更機能は、前記各相Duty指令値の大きさ関係によって、最大Duty相、中間Duty相、及び最小Duty相のPWM信号出力開始位置となるPWM信号出力基準点を変更する請求項1に記載のモータ制御装置。前記PWM出力位置変更機能は、前記PWM信号出力基準点を、PWM周期の開始点、PWM周期の中心、PWM周期の終了点の何れか1つから選択する請求項2に記載のモータ制御装置。前記Dutyシフト機能は、前記各相Duty指令値の大きさ関係によって、Dutyシフト量を変更する請求項1乃至請求項3のいずれか1つに記載のモータ制御装置。前記各相Duty指令値が均衡する場合は、最大Duty相、中間Duty相、最小Duty相を任意の相に固定する請求項1乃至請求項4のいずれか1つに記載のモータ制御装置。請求項1乃至請求項5のいずれか1つに記載のモータ制御装置を搭載したことを特徴とする電動パワーステアリング装置。しかしながら、図4に示すような単一の電流検出器で構成されたインバータでは、各FETのON直後に電流検出器60に電流が流れる事により発生するリギングノイズ等のノイズ成分を除去しながら正確に電流検出するためには、一定の検出時間が必要となる。そのため、1相ONの状態、及び2相ONの状態を電流検出に必要な時間だけ継続する必要があるが、各相Duty指令値が均衡する場合、つまり、各相Dutyが近似している場合は、その時間を確保することができないという問題点がある。この問題点を解決するために、例えば、特許文献1及び特許文献2に記載された先行技術がある。特許文献1には、空間ベクトル技法を使用する単一電流センサによるモータ駆動装置が開示されており、その構成は、電流検出必要時間だけ1相ON状態、及び2相ON状態となるようなPWMパターンPWM信号を各相Duty指令値の大小関係と空間ベクトル手法により決定し、決定したPWMパターンPWM信号を出力する構成となっている。しかし、特許文献1では、空間ベクトル手法によるPWMパターンを実際に出力するには、PWM周期の任意の位置でPWM信号のON/OFFを設定できる空間ベクトル対応のマイコンを用いる必要があり、キャリアを用いた一般的なPWMタイマーを用いることができず、さらに、電流検出タイミングを可変とする必要があるため、電流検出が容易ではない。一方、特許文献2には、電動機駆動装置及びそれを用いた冷凍装置が開示されており、その構成は、1相ON状態、及び2相ON状態となる時間を、電流検出必要時間分だけ確保できるようにDuty指令値を補正し、次キャリア周期で補正による増減分を調整し、平均値が元のDuty指令値と同値となるようにする構成となっている。このように、特許文献2に開示された装置では、PWM周期毎のDuty変更で、1相ON状態及び2相ON状態を実現するため、キャリアを用いた一般的なPWMタイマーでも実現可能である。しかしながら、特許文献2では、Duty指令値を変更し、変更した分は、次キャリア周期で補正するとなっているため、2PWM周期内でのDuty変更によりモータ電流が振動を起こし、結果的に、トルクリップル性能や作動音性能の悪化を招く可能性が高く、且つ、電流検出タイミングが可変でなくてはならず、電流検出が容易ではない。本発明は、上述のような事情よりなされたものであり、本発明の目的は、上述した従来問題点を解決できるようにし、コンパクト化、軽量化及びコストダウンを図った上で電流検出可能となるDuty範囲を最大限とした、単一の電流センサで構成されるモータ制御装置、及びそれを用いた電動パワーステアリング装置を提供することにある。本発明は、制御演算によりモータの電流を制御するための各相Duty指令値を算出し、前記各相Duty指令値に応じたPWM波形を形成し、前記PWM波形に基づいてインバータにより前記モータを駆動するモータ制御装置に関するものであり、本発明の上記目的は、前記インバータの電源入力側又は電源出力側に単一の電流検出器を接続し、前記各相Duty指令値の差を保持したまま一律増減させるDutyシフト機能と、各相PWM信号の出力位置を決定するPWM出力位置変更機能を備え、1相のみ、又は2相同時に、PWM信号がONとなるタイミングをPWM周期の固定位置に発生させ、モータ電流を検出することにより達成される。また、本発明の上記目的は、前記PWM出力位置変更機能は、前記各相Duty指令値の大きさ関係によって、最大Duty相、中間Duty相、及び最小Duty相のPWM信号出力開始位置となるPWM信号出力基準点を変更することにより、或いは前記PWM出力位置変更機能は、前記PWM信号出力基準点を、PWM周期の開始点、PWM周期の中心、PWM周期の終了点の何れか1つから選択することにより、或いは前記Dutyシフト機能は、前記各相Duty指令値の大きさ関係によって、Dutyシフト量を変更することにより、或いは前記各相Duty指令値が均衡する場合は、最大Duty相、中間Duty相、最小Duty相を任意の相に固定することにより、より効果的に達成される。本発明に係るモータ制御装置では、PWM制御インバータの電源入力側又は電源出力側接地側に単一の電流検出器例えば、1つのシャント抵抗を配設してPWM制御すると共に、各相Duty指令値の差を保持したまま一律増減させるDutyシフト機能と、各相PWM信号の出力位置の変更を行うPWM出力位置変更機能を備え、1相のみ、又は2相同時にPWM信号がONとなるタイミング電流検出タイミングをPWM周期の固定位置に発生させ、モータの各相電流を検出するようにしているので、本発明によれば、コンパクト化、軽量化及びコストダウンを図った上で、電流検出可能となるDuty範囲を最大限とすることができる。本発明では、PWM信号の出力開始位置を、PWM周期の開始点、PWM周期の中心、PWM周期の終了点の何れか1つから選択するようにしているため、例えば、三角波キャリアを用いた汎用マイコンタイマー構成にて容易に実現が可能になる。また、本発明では、各相Duty差を保持したまま、各相Duty指令値を変更しているため、Duty指令値変更によるモータ電流への影響が無く、トルクリップル性能や作動音性能の劣化を抑制でき、且つ、Dutyシフト機能とPWM出力位置変更機能を組み合わせることで、1相のみ、又は2相同時にPWM信号がONとなるタイミング電流検出タイミングをPWM周期の固定位置に発生させるようにしているため、電流検出A/D機構の構成が容易となる。更に、本発明では、各相Duty指令値が均衡する場合に、最大Duty相、中間Duty相、最小Duty相を任意の相に固定する構成としているため、PWM信号の出力位置のハンチングを防ぎ、トルクリップル性能及び作動音性能の劣化を防止できる。本発明は、制御演算によりモータの電流を制御するための各相Duty指令値を算出し、各相Duty指令値に応じたPWM波形PWM信号を形成し、PWM制御インバータにてモータに指令電流電圧を与えて駆動する、電流センサ電流検出器が単一化されたモータ制御装置と、そのモータ制御装置を用いて車両のステアリング機構にモータによるアシストトルクを付与するようにした電動パワーステアリング装置とに関する。本発明に係るモータ制御装置では、PWM制御インバータの電源入力側又は電源出力側接地側に単一の電流検出器単一の電流センサを配設してPWM制御すると共に、各相Duty指令値の差各相Duty差を保持したまま一律増減させるDutyシフト機能と、各相PWM信号の出力位置出力開始位置及び出力終了位置の変更を行うPWM出力位置変更機能を備え、1相のみ、又は2相同時にPWM信号がONとなるタイミングPWM信号ONタイミングをPWM周期の固定位置に発生させ、モータ電流を検出することで、コンパクト化、軽量化及びコストダウンを図った上で、電流検出可能となるDuty範囲を最大限とすることができる。本発明に係るモータ制御装置では、各相Duty指令値に一律の値以下、Dutyシフト量を言う。を増減させることで、各相間のDuty差各相Duty差を保持したまま、各相Duty指令値を変更するDutyシフト機能Dutyシフト部と、各相PWM信号の出力開始位置及び出力終了位置の変更を行うPWM出力位置変更機能PWM出力位置変更部を備え、Dutyシフト部及びPWM出力位置変更部にての処理を行うことにより、PWM周期の固定位置で即ち、固定の電流検出位置で、電流検出を行えるPWM信号を生成できる。以下、固定の電流検出位置は、単に、固定の電流検出タイミングとも言う。本発明では、Dutyシフト量、PWM信号の出力開始位置及び出力終了位置を決定するために、3相Duty指令値よりDutyの大きさを判定する必要がある。換言すれば、本発明では、3相Duty指令値の大きさ関係により、PWM信号の出力位置PWM信号の出力開始位置及び出力終了位置とDutyシフト量を変更決定するようにしているので、本発明によれば、電流検出可能となるDuty範囲を最大限とすることが可能になる。本発明では、各相Duty指令値のうち、最大Duty指令値を最大Duty値とし、中間Duty指令値を中間Duty値とし、最小Duty指令値を最小Duty値とする。また、最大Duty値を有する相を最大Duty相とし、中間Duty値を有する相を中間Duty相とし、最小Duty値を有する相を最小Duty相とする。本発明に係るモータ制御装置では、各相Duty指令値の大小関係により、最大Duty値、中間Duty値、最小Duty値、最大Duty相、中間Duty相、及び最小Duty相を判定するDuty判定機能Duty判定部を備えている。なお、Duty判定部では、各相Duty指令値が均衡すると判定した場合において、最大Duty相、中間Duty相、最小Duty相の判定をせずに、最大Duty相、中間Duty相、最小Duty相を任意の相に固定する構成とする。本発明では、PWM出力位置変更部は、Duty判定部にて判定された各Duty相最大Duty相、中間Duty相、最小Duty相のPWM信号の出力開始位置を、PWM周期の開始点、PWM周期の中心、PWM周期の終了点の何れか1つから選択する構成となっている。以下、PWM信号の出力開始位置は、単に、PWM信号出力基準点とも言う。本発明では、PWM信号の出力開始位置を、PWM周期の開始点、PWM周期の中心、PWM周期の終了点の何れか1つから選択するようにしているため、例えば、三角波キャリアを用いた汎用マイコンタイマー構成にて容易に実現が可能になる。また、本発明では、各相間のDuty差各相Duty差を保持したまま、各相Duty指令値を変更しているため、Duty指令値変更によるモータ電流への影響が無く、トルクリップル性能や作動音性能の劣化を抑制でき、且つ、Dutyシフト機能とPWM出力位置変更機能を組み合わせることで、1相のみ、又は2相同時にPWM信号がONとなるタイミング電流検出タイミングをPWM周期の固定位置に発生させるため、電流検出A/D機構の構成が容易となる。更に、各相Duty指令値が均衡する場合では、Duty指令値の大きさ判定が、PWM信号の出力位置のハンチングを起こす可能性があり、それによりPWM信号の出力位置が頻繁に変更されることにより、作動音性能の劣化を招く問題点がある。しかし、本発明では、各相Duty指令値が均衡する場合に、最大Duty相、中間Duty相、最小Duty相を任意の相に固定する構成としているため、PWM信号の出力位置のハンチングを防ぎ、トルクリップル性能及び作動音性能の劣化を防止することが可能になり、この問題点を回避できる。以下に、図面を参照しながら、本発明の実施形態を詳細に説明する。図7は、本発明に係るモータ制御装置の全体制御と、Dutyシフト機能及びPWM出力位置変更機能を含めた各種機能を実現する装置の構成例を示すブロック図である。また、図8は、図7に示す装置の動作例を示すフローチャートである。なお、以下の説明では、電流検出必要時間に相当するDuty量、即ち、電流検出に必要な時間を確保するための電流検出必要Duty量をτとする。図7に示すように、モータ制御装置の全体制御や演算処理等を行うCPU70を具備しており、CPU70には、電流制御値Eを入力して各相Duty指令値を演算するDuty演算部71と、Duty演算部71で演算された各相Duty指令値に基づき、最大Duty値、中間Duty値、最小Duty値、最大Duty相、中間Duty相、及び最小Duty相を判定するDuty判定部72と、Duty判定部72で判定された最大Duty値、中間Duty値、最小Duty値、最大Duty相、中間Duty相、及び最小Duty相に基づき、所定の選択条件よりPWM信号出力パターンを判定するパターン判定部73と、パターン判定部73で判定されたPWM信号出力パターンに基づき、Dutyシフト量を決定し、決定したDutyシフト量に基づき、各相Duty指令値を変更シフトするDutyシフト部74と、Dutyシフト部74で変更された各相Duty指令値以下、単に、シフト後各相Duty指令値とも言う。と、パターン判定部73で判定されたPWM信号出力パターンに基づき、各相PWM信号の出力開始位置及び出力終了位置の変更を行い、各相PWM信号の出力パターンを生成するPWM出力位置変更部75とが接続されている。CPU70には更に、電流検出必要Duty量τをパラメータとして設定する電流検出必要Duty量設定部80と、後述するPWM信号出力パターン1~PWM信号出力パターン4に係る処理により生成された各相PWM信号の出力パターンに基づき、各相PWM信号を出力してゲート駆動部82に与えるPWM出力部81と、電流検出器60で検出された電流を入力する電流入力部61とが接続されている。このような構成において動作がスタートすると、Duty演算部71は、電流制御値Eに基づいて各相Duty指令値を演算して入力し、Duty判定部72は、まず、最大Duty値、中間Duty値、及び最小Duty値を判定するステップS10。Duty判定部72では、判定された最大Duty値、中間Duty値、及び最小Duty値より、各相Duty指令値が均衡すると判定した場合においてステップS11、最大Duty相、中間Duty相、最小Duty相の判定をせずに、最大Duty相、中間Duty相、最小Duty相を任意の相に固定するようにしステップS12、各相Duty指令値が均衡しないと判定した場合においてステップS11、最大Duty相、中間Duty相、最小Duty相の判定を行うステップS13。続いて、パターン判定部73は、Duty判定部72で判定された最大Duty値、中間Duty値、最小Duty値、最大Duty相、中間Duty相、及び最小Duty相に基づき、所定の選択条件よりPWM信号出力パターンを判定する。具体的に、各相Duty指令値が第1選択条件を満たすか否かを判断しステップS14、Duty指令値が第1選択条件を満たしたと判断された場合に、PWM信号出力パターン1に係る処理を行いステップS15、Duty指令値が第1選択条件を満たしていないと判断された場合に、各相Duty指令値が第2選択条件を満たすか否かを判断するステップS16。Duty指令値が第2選択条件を満たしたと判断された場合に、各相Duty指令値が第3選択条件を満たすか否かを判断しステップS17、Duty指令値が第2選択条件を満たしていないと判断された場合に、各相Duty指令値が第4選択条件を満たすか否かを判断するステップS22。Duty指令値が第3選択条件を満たしたと判断された場合に、PWM信号出力パターン2に係る処理を行いステップS18、Duty指令値が第3選択条件を満たしていないと判断された場合に、各相Duty指令値が第5選択条件を満たすか否かを判断するステップS19。Duty指令値が第5選択条件を満たしたと判断された場合に、PWM信号出力パターン4に係る処理を行いステップS20、Duty指令値が第5選択条件を満たしていないと判断された場合に、電流検出が不可能になると判定されるステップS21。Duty指令値が第4選択条件を満たしたと判断された場合に、PWM信号出力パターン3に係る処理を行いステップS23、Duty指令値が第4選択条件を満たしていないと判断された場合に、電流検出が不可能になると判定されるステップS24。ここで、第1選択条件~第5選択条件、及び、PWM信号出力パターン1~PWM信号出力パターン4について詳細に説明する。本発明では、判定された3相Duty指令値の大きさ関係に応じて、所定の選択条件第1選択条件~第5選択条件に基づき、PWM信号出力パターン1~PWM信号出力パターン4に係る処理Dutyシフト処理及びPWM信号出力位置変更処理を行う。なお、以下の説明では、電流検出タイミング電流検出A/Dタイミングは、以下の2点とする。第1電流検出位置第1電流検出タイミングは、PWM周期の開始点から電流検出必要時間τ経過後である。また、第2電流検出位置第2電流検出タイミングは、PWM周期の中心になる。<PWM信号出力パターン1>後述するPWM信号出力パターン2、PWM信号出力パターン3、及びPWM信号出力パターン4では、各相Duty値の大きさに応じて各相のPWM出力位置を変更するが、各相Duty値が均衡する場合では、最大Duty相、中間Duty相、最小Duty相の判定がハンチングするため、PWM出力位置が頻繁に切替え、作動音性能が劣化する可能性がある。そのため、本発明では、前述したように、各相Duty値が均衡する場合では、最大Duty相、中間Duty相、最小Duty相の判定をせずに、最大Duty相、中間Duty相、最小Duty相を任意の相に固定するようにし、つまり、各相のPWM出力位置を固定するようにする。Dutyシフト処理後の最大Duty値が50-τ以下であるように、第1選択条件を最大Duty値-最小Duty値≦50-2×τとする。つまり、本発明に係るモータ制御装置では、最大Duty値-最小Duty値≦50-2×τが成立すれば、Duty指令値が第1選択条件を満たしたと判断し、PWM信号出力パターン1に係る処理を行い、最大Duty値-最小Duty値≦50-2×τが成立しなければ、Duty指令値が第1選択条件を満たしていないと判断し、続いて、各相Duty指令値が第2選択条件を満たすか否かを判断する。PWM信号出力パターン1に係る処理は、第1Dutyシフト量に基づき、各相Duty指令値を変更する第1Dutyシフト処理と、各相PWM信号の出力開始位置及び出力終了位置の変更を行う第1PWM出力位置変更処理で構成される。第1Dutyシフト処理では、Dutyシフト処理後の3相Duty指令値の最小値がτとなるように、第1Dutyシフト量最小Duty値τに基づき、各相Duty指令値をシフトする。第1Dutyシフト処理後の最小Duty値がτであるため、電流検出必要時間τを確保することが可能になる。第1Dutyシフト処理より、下記式で表す関係が成立する。第1Dutyシフト処理後のA相Duty値=A相Duty値-最小Duty値τ第1Dutyシフト処理後のB相Duty値=B相Duty値-最小Duty値τ第1Dutyシフト処理後のC相Duty値=C相Duty値-最小Duty値τ図9を参照しながら、第1PWM出力位置変更処理を説明する。第1PWM出力位置変更処理では、次のように、各相PWM信号の出力開始位置及び出力終了位置を決定する。A相PWM信号は、PWM周期の中心をPWM信号出力基準点PWM信号の出力開始位置として、PWM周期の終了点方向に配置される。また、B相PWM信号は、PWM周期の中心をPWM信号出力基準点PWM信号の出力開始位置として、PWM周期の開始点方向に配置される。PWM周期の中心までに、B相PWM信号の出力を完了させる。そして、C相PWM信号は、PWM周期の開始点をPWM信号出力基準点PWM信号の出力開始位置として、PWM周期の終了点方向に配置される。上記のようなPWM信号出力を行うことで、第1電流検出位置では、C相の電流が検出可能になり、第2電流検出位置では、B相の電流が検出可能になる。なお、第1PWM出力位置変更処理では、PWM信号の出力位置と相の関係は、上述した通りに限定されるものではなく、例えば、A相PWM信号は、PWM周期の開始点をPWM信号出力基準点として、PWM周期の終了点方向に配置され、B相PWM信号は、PWM周期の中心をPWM信号出力基準点として、PWM周期の終了点方向に配置され、C相PWM信号は、PWM周期の中心をPWM信号出力基準点として、PWM周期の開始点方向に配置されるPWM周期の中心までに、C相PWM信号の出力を完了させるようにしても良く、この場合は、第1電流検出位置では、A相の電流が検出可能になり、第2電流検出位置では、C相の電流が検出可能になる。<PWM信号出力パターン2>前述したように、本発明に係るモータ制御装置では、Duty指令値が第1選択条件を満たしていないと判断し、続いて、各相Duty指令値が第2選択条件を満たすか否かを判断する。Duty指令値が第2選択条件を満たしたと判断された場合に、各相Duty指令値が第3選択条件を満たすか否かを判断する。Duty指令値が第3選択条件を満たしたと判断された場合に、PWM信号出力パターン2に係る処理を行う。1相単独ON状態、2相同時ON状態を固定の電流検出タイミングで発生させるため第2選択条件は中間Duty値が100-τ以下である。また、第3選択条件は中間Duty値がτ以上である。PWM信号出力パターン2に係る処理は、各Duty指令値の大きさに応じて各相PWM信号の出力開始位置及び出力終了位置の変更を行う第2PWM出力位置変更処理のみで構成され、1相単独ON状態、2相同時ON状態を固定の電流検出タイミングで発生させる。ちなみに、PWM信号出力パターン2に係る処理では、Dutyシフト処理は行わない。図10を参照しながら、第2PWM出力位置変更処理を説明する。第2PWM出力位置変更処理では、次のように、各相PWM信号の出力開始位置及び出力終了位置を決定する。最小Duty相のPWM信号は、PWM周期の中心をPWM信号出力基準点PWM信号の出力開始位置として、PWM周期の終了点方向に配置される。また、中間Duty相のPWM信号は、PWM周期の中心をPWM信号出力基準点PWM信号の出力開始位置とし、そのPWM信号出力基準点から-τ位置までを含んで出力する。中間Duty相がτを超える場合に、中間Duty相のPWM信号は、PWM周期の中心をPWM信号出力基準点とし、PWM周期の開始点方向に配置され、50-τを超えた分は、PWM周期の中心からPWM周期の終了点方向に出力配置される。そして、最大Duty相のPWM信号は、PWM周期の開始点をPWM信号出力基準点PWM信号の出力開始位置として、PWM周期の終了点方向に配置される。上記のようなPWM信号出力を行うことで、第1電流検出位置では、最大Duty相の電流が検出可能になり、第2電流検出位置では、最大Duty相の電流と中間Duty相の電流の合計値即ち、最小Duty相の電流の符号反転した値が検出可能になる。<PWM信号出力パターン3>前述したように、本発明に係るモータ制御装置では、Duty指令値が第2選択条件を満たしていないと判断された場合に、各相Duty指令値が第4選択条件を満たすか否かを判断し、Duty指令値が第4選択条件を満たしたと判断された場合に、PWM信号出力パターン3に係る処理を行い、Duty指令値が第4選択条件を満たしていないと判断された場合に、電流検出が不可能になると判定される。Dutyシフト処理後の中間Duty値が100-τ以下であるように、第4選択条件を中間Duty値-最小Duty値≦100-τとする。つまり、本発明に係るモータ制御装置では、中間Duty値-最小Duty値≦100-τが成立すれば、Duty指令値が第4選択条件を満たしたと判断し、PWM信号出力パターン3に係る処理を行い、中間Duty値-最小Duty値≦100-τが成立しなければ、Duty指令値が第4選択条件を満たしていないと判断し、電流検出が不可能になると判定される。つまり、PWM信号出力パターン3は、中間Duty値が100-τを超えたため、第1電流検出位置にて、1相単独ON状態を電流検出に必要な時間分τ確保できない状態時に選択される。PWM信号出力パターン3に係る処理は、第3Dutyシフト量に基づき、各相Duty指令値を変更する第3Dutyシフト処理と、各相PWM信号の出力開始位置及び出力終了位置の変更を行う第3PWM出力位置変更処理で構成される。第3Dutyシフト処理を行うことにより、各相Duty差を保ちつつ、可能な限り中間Duty値を小さくすることで、電流検出可能となるDuty領域を拡大する。第3Dutyシフト処理では、Dutyシフト処理後の3相Duty指令値の最小値が0となるように、第3Dutyシフト量最小Duty値に基づき、各相Duty指令値をシフトする。第3Dutyシフト処理より、下記式で表す関係が成立する。第3Dutyシフト処理後のA相Duty値=A相Duty値-最小Duty値第3Dutyシフト処理後のB相Duty値=B相Duty値-最小Duty値第3Dutyシフト処理後のC相Duty値=C相Duty値-最小Duty値図11を参照しながら、第3PWM出力位置変更処理を説明する。第3PWM出力位置変更処理では、次のように、各相PWM信号の出力開始位置及び出力終了位置を決定する。最小Duty相のPWM信号は、PWM周期の中心をPWM信号出力基準点PWM信号の出力開始位置として、PWM周期の終了点方向に配置される。また、中間Duty相のPWM信号は、PWM周期の中心をPWM信号出力基準点PWM信号の出力開始位置とし、そのPWM信号出力基準点から-τ位置までを含んで出力する。中間Duty相がτを超える場合に、中間Duty相のPWM信号は、PWM周期の中心をPWM信号出力基準点とし、PWM周期の開始点方向に配置され、50-τを超えた分は、PWM周期の中心からPWM周期の終了点方向に出力配置される。そして、最大Duty相のPWM信号は、PWM周期の開始点をPWM信号出力基準点PWM信号の出力開始位置として、PWM周期の終了点方向に配置される。上記のようなPWM信号出力を行うことで、第1電流検出位置では、最大Duty相の電流が検出可能になり、第2電流検出位置では、最大Duty相の電流と中間Duty相の電流の合計値即ち、最小Duty相の電流の符号反転した値が検出可能になる。<PWM信号出力パターン4>前述したように、本発明に係るモータ制御装置では、Duty指令値が第3選択条件を満たしていないと判断された場合に、各相Duty指令値が第5選択条件を満たすか否かを判断し、Duty指令値が第5選択条件を満たしたと判断された場合に、PWM信号出力パターン4に係る処理を行い、Duty指令値が第5選択条件を満たしていないと判断された場合に、電流検出が不可能になると判定される。Dutyシフト処理後の中間Duty値がτ以上であるように、第5選択条件を最大Duty値-中間Duty値≦100-τとする。つまり、本発明に係るモータ制御装置では、最大Duty値-中間Duty値≦100-τが成立すれば、Duty指令値が第5選択条件を満たしたと判断し、PWM信号出力パターン4に係る処理を行い、最大Duty値-中間Duty値≦100-τが成立しなければ、Duty指令値が第5選択条件を満たしていないと判断し、電流検出が不可能になると判定される。つまり、PWM信号出力パターン4は、中間Duty値がτを下回るため、第2電流検出位置にて、2相同時ON状態を電流検出に必要な時間分τ確保できない状態時に選択される。PWM信号出力パターン4に係る処理は、第4Dutyシフト量に基づき、各相Duty指令値を変更する第4Dutyシフト処理と、各相PWM信号の出力開始位置及び出力終了位置の変更を行う第4PWM出力位置変更処理で構成される。第4Dutyシフト処理を行うことにより、各相Duty差を保ちつつ、可能な限り中間Duty値を大きくすることで、電流検出可能となるDuty領域を拡大する。第4Dutyシフト処理では、Dutyシフト処理後の3相Duty指令値の最大値が100となるように、第4Dutyシフト量最大Duty値100に基づき、各相Duty指令値をシフトする。第4Dutyシフト処理より、下記式で表す関係が成立する。第4Dutyシフト処理後のA相Duty値=A相Duty値-最大Duty値100第4Dutyシフト処理後のB相Duty値=B相Duty値-最大Duty値100第4Dutyシフト処理後のC相Duty値=C相Duty値-最大Duty値100図12を参照しながら、第4PWM出力位置変更処理を説明する。第4PWM出力位置変更処理では、次のように、各相PWM信号の出力開始位置及び出力終了位置を決定する。最小Duty相のPWM信号は、PWM周期の中心をPWM信号出力基準点PWM信号の出力開始位置として、PWM周期の終了点方向に配置される。また、中間Duty相のPWM信号は、PWM周期の中心をPWM信号出力基準点PWM信号の出力開始位置とし、そのPWM信号出力基準点から-τ位置までを含んで出力する。中間Duty相がτを超える場合に、中間Duty相のPWM信号は、PWM周期の中心をPWM信号出力基準点とし、PWM周期の開始点方向に配置され、50-τを超えた分は、PWM周期の中心からPWM周期の終了点方向に出力配置される。そして、最大Duty相のPWM信号は、PWM周期の開始点をPWM信号出力基準点PWM信号の出力開始位置として、PWM周期の終了点方向に配置される。上記のようなPWM信号出力を行うことで、第1電流検出位置では、最大Duty相の電流が検出可能になり、第2電流検出位置では、最大Duty相の電流と中間Duty相の電流の合計値即ち、最小Duty相の電流の符号反転した値が検出可能になる。本発明に係るモータ制御装置では、上述した4つのPWM信号出力パターンPWM信号出力パターン1~PWM信号出力パターン4に係る処理を行うことで、広範囲のDuty領域で単一の電流検出器による電流検出を行うことを可能にした。第1Dutyシフト処理、第3Dutyシフト処理、及び第4Dutyシフト処理は、Dutyシフト部74にて行われる。また、第1PWM出力位置変更処理、第2PWM出力位置変更処理、第3PWM出力位置変更処理、及び第4PWM出力位置変更処理は、PWM出力位置変更部75にて行われる。なお、上述した実施形態では、電流検出タイミングをPWM周期の前半に2回PWM周期の開始点から電流検出必要時間τ経過後である第1電流検出位置、とPWM周期の中心になる第2電流検出位置としているが、本発明はこれに限定されるものでなく、例えば、電流検出タイミングをPWM周期の後半に2回としても良い、その場合、各PWM信号出力パターンのPWM信号の出力開始位置をPWM周期中心からミラー反転させた配置とすれば良い。また、上述した実施形態では、PWM信号出力パターン1ではA相が、PWM信号出力パターン2~PWM信号出力パターン4では最小Duty相が、電流検出タイミングでON状態にならなければ良く、例えば、PWM周期の終了点をPWM信号出力基準点とし、PWM周期の中心方向へPWM配置しても良い。