(57)【要約】【課題】モータが急停止した場合や高負荷で回転していたモータの回転方向が急激に変化する場合に、過電流異常が発生することや応答遅れが生じること、及びインバータに供給される電圧かが低下した場合等にトルクリップル、異音、振動が生じることを抑えることができるモータ制御装置を提供する。【解決手段】上位コントローラ１０より制御周期毎に電流指令値を入力し、該電流指令値とモータ５０の巻線に流れる実電流値との電流偏差を積算し、該積算値に応じて電圧指令値を演算する電圧指令値演算部を備えたモータ制御装置ＥＣＵにおいて、前記電圧指令値演算部は、前記電流偏差積算値を前記インバータ回路３０からモータ５０に出力可能な電圧の最大値（電圧制限値）に応じた値以下に制限する。【選択図】  図１
2004229487.tif 000002
【特許請求の範囲】
【請求項１】
制御周期毎に電流指令値を入力し、該電流指令値とモータの巻線に流れる実電流値との電流偏差を積算して電流偏差積算値を演算し、少なくとも該電流偏差積算値に応じて電圧指令値を演算する電圧指令値演算手段と、直流の電源電圧を出力する直流電源部と、前記電源電圧をスイッチング素子によりスイッチングして生成したパルス電圧を前記モータに出力するインバータ回路と、前記電圧指令値に基づいて前記スイッチング素子のスイッチングタイミングを制御する制御手段とを備えたモータ制御装置において、
前記電圧指令値演算手段が演算した電圧指令値が、前記インバータ回路の出力可能な電圧の範囲を超えて、電圧飽和するか否かを判定する電圧飽和判定手段を備え、
前記電圧指令値演算手段は、前記電圧飽和判定手段が電圧飽和すると判定したときは、前記電流偏差積算値の前記電流偏差の積算を制限することを特徴とすることを特徴とするモータ制御装置。
【請求項２】
請求項１記載のモータ制御装置において、
前記直流電源部が出力する電源電圧を昇圧して前記インバータ回路に出力する昇圧回路と、
前記モータの負荷量に応じて前記昇圧回路の出力電圧を制御する昇圧回路制御手段とを備え、
前記インバータ回路は、前記昇圧回路の出力電圧をスイッチング素子によりスイッチングして生成したパルス電圧を、前記モータに印加することを特徴とするモータ制御装置。
【請求項３】
請求項１又は請求項２記載のモータ制御装置において、
電圧飽和判定のための、前記インバータ回路に関連した物理量に基づいて電圧制限値を設定する電圧制限値設定手段を備え、
前記電圧飽和判定手段は、制御周期毎に、前記電圧指令値に基づく値と、前記電圧制限値設定手段が設定した電圧制限値とを比較して、前記電圧指令値に基づく値の方が、前記電圧制限値より大きい場合には電圧飽和と判定し、
前記電圧指令値演算手段は、前記電圧飽和判定手段にて電圧飽和と判定された場合にはその次の制御周期において電流偏差積算値をさらに増大させる電流偏差の積算を停止することを特徴とするモータ制御装置。
【請求項４】
請求項３記載のモータ制御装置において、
前記電流指令値、前記実電流値、前記電流偏差、前記電流偏差積算値、及び前記電圧指令値は、それぞれ回転座標系の直交２軸に関するものであり、
前記電圧制限値は、前記直交２軸の軸方向に、前記インバータ回路から前記モータに出力可能な電圧の最大値であり、
前記電圧飽和判定手段は、前記回転座標系の直交２軸のそれぞれの電圧指令値と、前記電圧制限値とを比較して、該電圧指令値の方が前記電圧制限値より大きい場合には電圧飽和と判定するものであることを特徴とするモータ制御装置。
【請求項５】
請求項３記載のモータ制御装置において、
前記電流指令値、前記実電流値、前記電流偏差、前記電流偏差積算値、及び前記電圧指令値は、それぞれ回転座標系の直交２軸に関するものであり、
前記電圧制限値は、インバータ回路が出力可能な相電圧の最大値であり、
前記電圧飽和判定手段は、前記回転座標系の直交２軸のそれぞれの電圧指令値をベクトル合成した値と、前記電圧制限値とを比較して、該前記ベクトル合成した値の方が、前記電圧制限値より大きい場合には電圧飽和と判定するものであることを特徴とするモータ制御装置。
【請求項６】
請求項４又は請求項５記載のモータ制御装置において、
前記電圧指令値演算手段は、前記電圧飽和判定手段にて電圧飽和と判定された場合であって、前記各軸の電流偏差積算値と、電流偏差とが同符号のときにはその次の制御周期において前記直交２軸の電流偏差積算値をさらに増大させる電流偏差の積算を停止することを特徴とするモータ制御装置。
【請求項７】
請求項６記載のモータ制御装置において、
前記電圧飽和判定手段にて電圧飽和と判定された場合、前記電圧指令値演算手段にて演算した前記直交２軸の電圧指令値をベクトル合成した値が、前記インバータ回路の出力可能な電圧範囲を超えないように、少なくとも一方の軸に関する電圧指令値を補正する補正手段を備えたことを特徴とするモータ制御装置。
【請求項８】
請求項７記載のモータ制御装置において、
前記直交２軸は、ｄ軸とｑ軸であり、
前記補正手段はトルク重視の補正を行うためにｄ軸に関する電圧指令値の補正を行うことを特徴とするモータ制御装置。
【請求項９】
請求項７記載のモータ制御装置において、
前記直交２軸は、ｄ軸とｑ軸であり、
前記補正手段は速度重視の補正を行うためにｑ軸に関する電圧指令値の補正を行うことを特徴とするモータ制御装置。
【請求項１０】
請求項７記載のモータ制御装置において、前記直交２軸は、ｄ軸とｑ軸であり、
前記補正手段は、両軸に関する電圧指令値の補正を行うこと特徴とするモータ制御装置。
【請求項１１】
制御周期毎に電流指令値を入力し、該電流指令値とモータの巻線に流れる実電流値との電流偏差を積算して電流偏差積算値を演算し、少なくとも該電流偏差積算値に応じて電圧指令値を演算し、該電圧指令値に基づいてインバータ回路のスイッチング素子により直流の電源電圧をスイッチングして生成したパルス電圧を前記モータに出力するモータ制御方法において、
前記演算した電圧指令値が、前記インバータ回路の出力可能な電圧の範囲を超えて、電圧飽和するか否かを判定し、
電圧飽和すると判定したときは、前記電流偏差積算値の前記電流偏差の積算を制限することを特徴とすることを特徴とするモータ制御方法。
【請求項１２】
請求項１１記載のモータ制御方法において、
前記モータの負荷量に応じて前記インバータ回路に供給される電源電圧を昇圧することを特徴とするモータ制御方法。
【請求項１３】
請求項１１又は請求項１２記載のモータ制御方法において、
電圧飽和判定のために前記インバータ回路に関連した物理量に基づいて電圧制限値を設定し、
制御周期毎に、前記電圧指令値に基づく値と前記設定した電圧制限値とを比較して、前記電圧指令値に基づく値の方が大きい場合には電圧飽和と判定し、その次の制御周期において電流偏差積算値をさらに増大させる電流偏差の積算を停止することを特徴とするモータ制御方法。
【請求項１４】
請求項１３記載のモータ制御方法において、
前記電流指令値、前記実電流値、前記電流偏差、前記電流偏差積算値、及び前記電圧指令値は、それぞれ回転座標系の直交２軸に関するものであり、
前記電圧制限値は、前記直交２軸の軸方向に、前記インバータ回路から前記モータに出力可能な電圧の最大値であり、
前記電圧飽和判定を行う際は、前記回転座標系の直交２軸のそれぞれの電圧指令値と、電圧制限値とを比較して、該電圧指令値の方が前記電圧制限値より大きい場合には電圧飽和と判定するものであることを特徴とするモータ制御方法。
【請求項１５】
請求項１３記載のモータ制御方法において、
前記電流指令値、前記実電流値、前記電流偏差、前記電流偏差積算値、及び前記電圧指令値は、それぞれ回転座標系の直交２軸に関するものであり、
前記電圧制限値は、インバータ回路が出力可能な相電圧の最大値であり、
前記電圧飽和判定を行う際は、前記回転座標系の直交２軸のそれぞれの電圧指令値をベクトル合成した値と、前記電圧制限値とを比較して、該電圧指令値をベクトル合成した値の方が、前記電圧制限値より大きい場合には電圧飽和と判定するものであることを特徴とするモータ制御方法。
【請求項１６】
請求項１４又は請求項１５記載のモータ制御方法において、
前記電圧指令値を演算する際、前記電圧飽和と判定された場合であって、前記各軸の電流偏差積算値と、電流偏差とが同符号のときにはその次の制御周期において前記直交２軸の電流偏差積算値をさらに増大させる電流偏差の積算を停止することを特徴とするモータ制御方法。
【請求項１７】
請求項１６記載のモータ制御方法において、
前記電圧飽和と判定された場合、前記演算した前記直交２軸の電圧指令値をベクトル合成した値が、前記インバータ回路の出力可能な電圧範囲を超えないように、少なくとも一方の軸に関する電圧指令値を補正することを特徴とするモータ制御方法。
【請求項１８】
請求項１７記載のモータ制御方法において、
前記直交２軸は、ｄ軸とｑ軸であり、前記補正はトルク重視の補正を行うためにｄ軸に関する電圧指令値の補正を行うことを特徴とするモータ制御方法。
【請求項１９】
請求項１７記載のモータ制御方法において、
前記直交２軸は、ｄ軸とｑ軸であり、前記補正は速度重視の補正を行うためにｑ軸に関する電圧指令値の補正を行うことを特徴とするモータ制御方法。
【請求項２０】
請求項１７記載のモータ制御方法において、
前記直交２軸は、ｄ軸とｑ軸であり、両軸に関する電圧指令値の補正を行うこと特徴とするモータ制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、少なくとも電流偏差積算値に基づいて電圧指令値を演算し、モータを制御するモータ制御装置及びモータ制御方法に関する。
【０００２】
【従来の技術】
ブラシレスモータやブラシ付きＤＣモータ、誘導電動機等のモータを駆動制御するモータ制御装置では、所定間隔（例えば１ｍｓ）の制御周期毎に上位コントローラから電流指令値を入力し、該電流指令値に基づいて電圧指令値を演算し、電圧指令値に応じた駆動電圧を生成してモータの巻線に供給している。このようなモータ制御装置では、モータの巻線に流れる実電流値を電流センサにより検出し、実電流値と電流指令値との電流偏差を求め、少なくともこの電流偏差の積算値（電流偏差積算値）に所定の演算処理を施して電圧指令値を求めている。こうして求めた電圧指令値はＰＷＭ（Ｐｕｌｓｅ  Ｗｉｄｔｈ  Ｍｏｄｕｌａｔｉｏｎ）制御部に送られる。ＰＷＭ制御部では、直流電源部から供給される直流電圧をインバータ回路のスイッチング素子によりスイッチングしてＰＷＭパルスを生成しモータに出力する。
【０００３】
また、制御の容易化のため、３相ＤＣモータでは３相２相変換した電流指令をモータ制御装置に入力し、ＰＷＭパターンを決定する際に逆変換（２相３相変換）を行うことが広く行われている。
【０００４】
【発明が解決しようとする課題】
従来のモータ制御装置では、制御周期毎に実電流値と電流指令値との電流偏差を積算し、少なくともこの積算値（電流偏差積算値）に基づいて電圧指令値を求めている。しかしながら、ＰＷＭパルスによりモータに供給できる電圧はインバータ回路の構成に起因する制限がある。
【０００５】
即ち、インバータ回路からモータ巻線に供給できる電圧は、瞬時的には直流電源から供給される電圧（オン）又は０Ｖ（オフ）の何れかでしかない。従って、スイッチング素子のスイッチングにより一制御周期内のオン時間とオフ時間を調整し、全体として目的の出力電圧となるようにしている。また、モータ巻線に略正弦波状の電流を供給する場合には、モータ電流の位相によって出力する電圧を調整しなければならない。
【０００６】
一方、電流偏差積算値はモータの負荷や動作状況により、モータに供給できる電圧（ＰＷＭパルスの平均電圧）とは無関係に増大する、いわゆるワインドアップ現象が生ずる場合がある。このため、モータが急停止した場合や高負荷で回転していたモータの回転方向が急激に変化する場合等の制御に問題があった。例えば、非常停止によるメカブレーキの作動や、モータの被駆動部材が障害物に当たって急停止する場合等には、モータの回転により発生していた逆起電力が急激に消滅するので、余分な電流偏差積算値により過電圧が加わり、過電流異常が発生する場合があった。また、高負荷で回転していたモータの回転方向が急激に反転する場合や急減速する場合には、電流偏差積算値が適正値に戻るまでは電流偏差積算値を減らす方向（それまでの回転方向と同方向）へ回転するように制御が働くので、応答遅れが発生する場合があった。
【０００７】
又、インバータに供給される電圧が低下した場合に、電圧指令値がインバータの出力可能な範囲を超えた状態となり、正弦波通電ができずにモータにトルクリップルを生むことになり振動、異音が発生する問題があった。
【０００８】
本発明はこのような課題に鑑み、モータが急停止したり回転方向が逆転する場合やインバータに供給される電圧が低下したりする場合等にも異常が発生することなく応答遅れやトルクリップル、振動、異音の少ないモータ制御装置を提供することを目的とする。
【０００９】
【課題を解決するための手段】
上記課題を解決するために、請求項１に記載の発明は、制御周期毎に電流指令値を入力し、該電流指令値とモータの巻線に流れる実電流値との電流偏差を積算して電流偏差積算値を演算し、少なくとも該電流偏差積算値に応じて電圧指令値を演算する電圧指令値演算手段と、直流の電源電圧を出力する直流電源部と、前記電源電圧をスイッチング素子によりスイッチングして生成したパルス電圧を前記モータに出力するインバータ回路と、前記電圧指令値に基づいて前記スイッチング素子のスイッチングタイミングを制御する制御手段とを備えたモータ制御装置において、前記電圧指令値演算手段が演算した電圧指令値が、前記インバータ回路の出力可能な電圧の範囲を超えて、電圧飽和するか否かを判定する電圧飽和判定手段を備え、前記電圧指令値演算手段は、前記電圧飽和判定手段が電圧飽和すると判定したときは、前記電流偏差積算値の前記電流偏差の積算を制限することを特徴とすることを特徴とするモータ制御装置を要旨とするものである。
【００１０】
請求項２の発明は、請求項１において、前記直流電源部が出力する電源電圧を昇圧して前記インバータ回路に出力する昇圧回路と、前記モータの負荷量に応じて前記昇圧回路の出力電圧を制御する昇圧回路制御手段とを備え、前記インバータ回路は、前記昇圧回路の出力電圧をスイッチング素子によりスイッチングして生成したパルス電圧を、前記モータに印加することを特徴とする。
【００１１】
請求項３の発明は、請求項１又は請求項２において、電圧飽和判定のための、前記インバータ回路に関連した物理量に基づいて電圧制限値を設定する電圧制限値設定手段を備え、前記電圧飽和判定手段は、制御周期毎に、前記電圧指令値に基づく値と、前記電圧制限値設定手段が設定した電圧制限値とを比較して、前記電圧指令値に基づく値の方が、前記電圧制限値より大きい場合には電圧飽和と判定し、前記電圧指令値演算手段は、前記電圧飽和判定手段にて電圧飽和と判定された場合にはその次の制御周期において電流偏差積算値をさらに増大させる電流偏差の積算を停止することを特徴とする。
【００１２】
請求項４の発明は、請求項３において、前記電流指令値、前記実電流値、前記電流偏差、前記電流偏差積算値、及び前記電圧指令値は、それぞれ回転座標系の直交２軸に関するものであり、前記電圧制限値は、前記直交２軸の軸方向に、前記インバータ回路から前記モータに出力可能な電圧の最大値であり、前記電圧飽和判定手段は、前記回転座標系の直交２軸のそれぞれの電圧指令値と、前記電圧制限値とを比較して、該電圧指令値に基づく値の方が、前記電圧制限値より大きい場合には電圧飽和と判定するものであることを特徴とする。
【００１３】
請求項５の発明は、請求項３において、前記電流指令値、前記実電流値、前記電流偏差、前記電流偏差積算値、及び前記電圧指令値は、それぞれ回転座標系の直交２軸に関するものであり、前記電圧制限値は、インバータ回路が出力可能な相電圧の最大値であり、前記電圧飽和判定手段は、前記回転座標系の直交２軸のそれぞれの電圧指令値をベクトル合成した値と、前記電圧制限値とを比較して、該前記ベクトル合成した値の方が、前記電圧制限値）より大きい場合には電圧飽和と判定するものであることを特徴とする。
【００１４】
請求項６の発明は、請求項４又は請求項５において、前記電圧指令値演算手段は、前記電圧飽和判定手段にて電圧飽和と判定された場合であって、前記各軸の電流偏差積算値と、電流偏差とが同符号のときにはその次の制御周期において前記直交２軸の電流偏差積算値をさらに増大させる電流偏差の積算を停止することを特徴とする。
【００１５】
請求項７の発明は、請求項６において、前記電圧飽和判定手段にて電圧飽和と判定された場合、前記電圧指令値演算手段にて演算した前記直交２軸の電圧指令値をベクトル合成した値が、前記インバータ回路の出力可能な電圧範囲を超えないように、少なくとも一方の軸に関する電圧指令値を補正する補正手段を備えたことを特徴とする。
【００１６】
請求項８の発明は、請求項７において、前記直交２軸は、ｄ軸とｑ軸であり、前記補正手段はトルク重視の補正を行うためにｄ軸に関する電圧指令値の補正を行うことを特徴とする。
【００１７】
請求項９の発明は、請求項７において、前記直交２軸は、ｄ軸とｑ軸であり、前記補正手段は速度重視の補正を行うためにｑ軸に関する電圧指令値の補正を行うことを特徴とする。
【００１８】
請求項１０の発明は、請求項７において、前記直交２軸は、ｄ軸とｑ軸であり、  前記補正手段は、両軸に関する電圧指令値の補正を行うこと特徴とする。
請求項１１の発明は、制御周期毎に電流指令値を入力し、該電流指令値とモータの巻線に流れる実電流値との電流偏差を積算して電流偏差積算値を演算し、少なくとも該電流偏差積算値に応じて電圧指令値を演算し、該電圧指令値に基づいてインバータ回路のスイッチング素子により直流の電源電圧をスイッチングして生成したパルス電圧を前記モータに出力するモータ制御方法において、前記演算した電圧指令値が、前記インバータ回路の出力可能な電圧の範囲を超えて、電圧飽和するか否かを判定し、電圧飽和すると判定したときは、前記電流偏差積算値の前記電流偏差の積算を制限することを特徴とすることを特徴とするモータ制御方法を要旨とするものである。
【００１９】
請求項１２の発明は、請求項１１において、前記モータの負荷量に応じて前記インバータ回路に供給される電源電圧を昇圧することを特徴とする。
請求項１３の発明は、請求項１１又は請求項１２において、電圧飽和判定のために前記インバータ回路に関連した物理量に基づいて電圧制限値を設定し、
制御周期毎に、前記電圧指令値に基づく値と前記設定した電圧制限値とを比較して、前記電圧指令値に基づく値の方が大きい場合には電圧飽和と判定し、その次の制御周期において電流偏差積算値をさらに増大させる電流偏差の積算を停止することを特徴とする。
【００２０】
請求項１４の発明は、請求項１３において、前記電流指令値、前記実電流値、前記電流偏差、前記電流偏差積算値、及び前記電圧指令値は、それぞれ回転座標系の直交２軸に関するものであり、前記電圧制限値は、前記直交２軸の軸方向に、前記インバータ回路から前記モータに出力可能な電圧の最大値であり、前記電圧飽和判定を行う際は、前記回転座標系の直交２軸のそれぞれの電圧指令値と、電圧制限値とを比較して、該電圧指令値の方が、前記電圧制限値より大きい場合には電圧飽和と判定するものであることを特徴とする。
【００２１】
請求項１５の発明は、請求項１３において、前記電流指令値、前記実電流値、前記電流偏差、前記電流偏差積算値、及び前記電圧指令値は、それぞれ回転座標系の直交２軸に関するものであり、前記電圧制限値は、インバータ回路が出力可能な相電圧の最大値であり、前記電圧飽和判定を行う際は、前記回転座標系の直交２軸のそれぞれの電圧指令値をベクトル合成した値と、前記電圧制限値とを比較して、該電圧指令値をベクトル合成した値の方が、前記電圧制限値より大きい場合には電圧飽和と判定するものであることを特徴とする。
【００２２】
請求項１６の発明は、請求項１４又は請求項１５において、前記電圧指令値を演算する際、前記電圧飽和と判定された場合であって、前記各軸の電流偏差積算値と、電流偏差とが同符号のときにはその次の制御周期において前記直交２軸の電流偏差積算値をさらに増大させる電流偏差の積算を停止することを特徴とする。
【００２３】
請求項１７の発明は、請求項１６において、前記電圧飽和と判定された場合、前記演算した前記直交２軸の電圧指令値をベクトル合成した値が、前記インバータ回路の出力可能な電圧範囲を超えないように、少なくとも一方の軸に関する電圧指令値を補正することを特徴とする。
【００２４】
請求項１８の発明は、請求項１７において、前記直交２軸は、ｄ軸とｑ軸であり、前記補正はトルク重視の補正を行うためにｄ軸に関する電圧指令値の補正を行うことを特徴とする。
【００２５】
請求項１９の発明は、請求項１７において、前記直交２軸は、ｄ軸とｑ軸であり、前記補正は速度重視の補正を行うためにｑ軸に関する電圧指令値の補正を行うことを特徴とする。
【００２６】
請求項２０の発明は、請求項１７において、前記直交２軸は、ｄ軸とｑ軸であり、両軸に関する電圧指令値の補正を行うこと特徴とする。
【００２７】
【発明の実施の形態】
（第１実施形態）
以下、本発明をブラシレス三相ＤＣモータの制御装置に適用した第１実施形態について図１〜図６を参照して説明する。
【００２８】
図１はモータ制御システムの概要構成を示している。上位コントローラ１０はブラシレス三相ＤＣモータであるモータ５０に供給すべき電流の指令値を電流指令として制御装置ＥＣＵの制御手段としての制御部２０に出力する。制御部２０では、入力された電流指令に基づいて電圧指令値を演算し、ＰＷＭ制御によりＵ，Ｖ，Ｗ各相のＰＷＭ出力パターンを決定する。このＰＷＭ出力パターンはインバータ回路３０に送られる。インバータ回路３０には直流電源部４０から直流の電源電圧Ｖｂが供給されており、この電源電圧Ｖｂは電源電圧検出手段としての電圧センサ４０ｖで検出可能である。インバータ回路３０はこの電源電圧をＰＷＭ出力パターンに基づいてスイッチングしてＰＷＭパルスを生成し、モータ５０に供給する。Ｕ相実電流Ｉｕ及びＷ相実電流ＩｗはホールＣＴ等の電流センサ５０ｕ及び電流センサ５０ｗによってアナログ信号として検出され、制御部２０にフィードバックされる。Ｖ相実電流ＩｖはＵ相実電流Ｉｕ及びＷ相実電流Ｉｗに基づいて制御部２０の演算により求められる。モータ５０にはモータ５０の回転子回転角度を検出するエンコーダ５０ｅが設けられ、回転子回転角度の情報が制御部２０を介して上位コントローラ１０にフィードバックされる。
【００２９】
制御部２０は、中央演算処理装置であるＣＰＵ２１を中心として、ＣＰＵ２１で実行すべきプログラムを記憶したＲＯＭ２２、プログラムの実行に必要な情報を記憶するＲＡＭ２３、及び周辺回路から構成されている。周辺回路には、上位コントローラ１０とのインタフェース回路Ｉ／Ｆ２４、インバータ回路３０とのインタフェース回路Ｉ／Ｆ２５、エンコーダ５０ｅとのインタフェース回路Ｉ／Ｆ２９及び各種Ａ／Ｄ変換器が含まれる。各種Ａ／Ｄ変換器には、電流センサ５０ｕ，５０ｗからのアナログ信号をＡ／Ｄ変換するＡ／Ｄ変換器２６，２７、電圧センサ４０ｖからのアナログ信号をＡ／Ｄ変換するＡ／Ｄ変換器２８、がある。
【００３０】
図２は、モータ制御システムの機能に着目してその構成とデータの流れを示した図である。電流指令値演算部１１０は上位コントローラ１０の機能として実現されるものであり、図略の他の制御装置から入力される電流指令値Ｉ＊及びエンコーダ５０ｅから得られる回転子回転角度等に基づいて３相２相変換を行い、ｄ軸電流指令値Ｉｄ＊，ｑ軸電流指令値Ｉｑ＊を演算する。ｄ軸電流指令値Ｉｄ＊，ｑ軸電流偏差ΔＩｑ＊は、モータ５０の巻線に流すべき電流を、回転子上の永久磁石が作り出す回転磁束と同期した回転座標系において回転磁束と同一方向のｄ軸及びこれに直交したｑ軸成分の電流として表現した電流指令値である。ｄ軸成分の電流指令値がＩｄ＊、ｑ軸成分の電流指令値がＩｑ＊である。Ｉｄ＊，Ｉｑ＊は電圧指令値演算手段としての電圧指令値演算部１２０に出力される。
【００３１】
電圧指令値演算部１２０は、ｄ軸電流指令値Ｉｄ＊，ｑ軸電流指令値Ｉｑ＊及び電流センサから得られるＵ，Ｖ，Ｗ各相の実電流から３相２相変換により求めるｄ軸実電流Ｉｄならびにｑ軸実電流Ｉｑに基づいて、ｄ軸成分であるｄ軸電圧指令値Ｖｄ＊及びｑ軸成分であるｑ軸電圧指令値Ｖｑ＊を演算する。Ｖｄ＊及びＶｑ＊は、２相３相変換部１３０にて公知の演算方法によりＵ相電圧指令値Ｖｕ＊，Ｖ相電圧指令値Ｖｖ＊，Ｗ相電圧指令値Ｖｗ＊に変換される。
【００３２】
各相の電圧指令値はＰＷＭ制御部１４０に入力される。ＰＷＭ制御部１４０では、各相の電圧指令値に基づいてインバータ回路３０のＵ，Ｖ，Ｗ各相のスイッチング素子の一制御周期内でのオン時間／オフ時間を演算し、この演算結果に基づいてスイッチング制御信号ＰＷＭｕ，ＰＷＭｖ，ＰＷＭｗを生成し、インバータ回路３０に出力する。インバータ回路３０では、このスイッチング制御信号ＰＷＭｕ，ＰＷＭｖ，ＰＷＭｗに従ってスイッチング素子をスイッチングし、生成したＰＷＭパルスをモータ５０に出力する。
【００３３】
なお、電圧指令値演算部１２０，２相３相変換部１３０，ＰＷＭ制御部１４０は、制御部２０の機能として実現される。
以上のように構成された本実施形態のモータ制御システムにおいて、本実施形態の特徴である電圧指令値演算部１２０の処理内容について図３及び図４のフローチャートに基づいて以下詳細に説明する。又、２相３相変換部１３０，ＰＷＭ制御部１４０での処理を図６のフローチャートを参照して説明する。なお、図３〜図６のフローチャート（制御プログラム）は所定の制御周期毎に１回ずつ繰り返し実行される処理である。
【００３４】
図３は、ｄ軸電圧指令値Ｖｄ＊，ｑ軸電圧指令値Ｖｑ＊を求める前段階の処理のフローチャートである。Ｓ１０２は上位コントローラからｄ軸電流指令値Ｉｄ＊，ｑ軸電流指令値Ｉｑ＊をインタフェース回路Ｉ／Ｆ２４を介して読み込む処理である。Ｓ１０４はＡ／Ｄ変換器２６，２７を介して電流センサ５０ｕ，５０ｗからＵ相実電流Ｉｕ，Ｗ相実電流Ｉｗを読み込むとともにＶ相実電流Ｉｖを演算して求める処理である。Ｓ１０６はインタフェース回路Ｉ／Ｆ２９を介してエンコーダ５０ｅから回転子回転角度を読み込む処理である。Ｓ１０８はＵ相実電流Ｉｕ，Ｖ相実電流Ｉｖ，Ｗ相実電流Ｉｗを回転子回転角度に基づいて３相２相変換し、ｄ軸実電流Ｉｄ及びｑ軸実電流Ｉｑを求める処理である。Ｓ１１０はＡ／Ｄ変換器２８を介して電圧センサ４０ｖからの電源電圧Ｖｂを読み込む処理である。Ｓ１１２は、電源電圧Ｖｂを基にして、モータのｄ軸及びｑ軸方向にインバータ回路３０から出力可能な電圧の最大値（以下、積算値最大値ＶＯという）を演算する処理である。前記積算値最大値ＶＯは電圧制限値に相当する。
【００３５】
具体的には、
ＶＯ＝Ｖｂ／２×√（３／２）×ｋ    …（１）
という公知の演算式によりＶＯを求める。ここで、ｋはインバータの最大電圧利用率であり、インバータのｄｕｔｙの制限に応じた利用率を示す定数である。前記電源電圧Ｖｂ及び利用率ｋは、インバータ回路３０に関連する物理量に相当する。
【００３６】
図４は、ｑ軸の電圧指令値を演算する処理のフローチャートである。Ｓ２０２ではｑ軸電流偏差ΔＩｑを演算により求める。
具体的には、ΔＩｑ＝Ｉｑ＊  −Ｉｑ    …（２）
の演算式によりΔＩｑを求める。Ｓ２０４はｑ軸電圧が＋飽和しておらずかつｑ軸電流偏差ΔＩｑが正の値であるか、又は、ｑ軸電圧が−飽和しておらずかつｑ軸電流偏差ΔＩｑが負の値であるかを判定する処理である。この判定の結果がＹｅｓであればＳ２０６〜Ｓ２１０の処理を行い、ＮｏであればＳ２０６〜Ｓ２１０の処理をジャンプしてＳ２１２の処理を行う。なお、ｑ軸電圧の＋飽和／−飽和であるか否かは、Ｓ２１８又はＳ２２４でセットされる「ｑ軸電圧＋飽和フラグ」／「ｑ軸電圧−飽和フラグ」により判断する。
【００３７】
Ｓ２０６はｑ軸電流偏差積算値ΣΔＩｑ（今回値）を演算する処理である。
具体的には、
ΣΔＩｑ（今回値）＝ΣΔＩｑ（前回値）＋ΔＩｑ×Ｇｉｑ×Ｔ  …（３）
の演算を行う。ここで、Ｇｉｑはｑ軸電流偏差積分ゲインであり、Ｔは制御周期である。Ｓ２０８はｑ軸電流偏差積算値ΣΔＩｑの絶対値がガード値である積算値最大値ＶＯを超えたかを判定する処理である。この判定の結果がＹｅｓである（ｑ軸電流偏差積算値ΣΔＩｑの絶対値が積算値最大値ＶＯを超えた）場合に限り、Ｓ２１０の処理を実行する。Ｓ２１０はｑ軸電流偏差積算値ΣΔＩｑの絶対値をガード値である積算値最大値ＶＯ以下に制限する処理であり、具体的には、
ΣΔＩｑ＝ｓｉｇｎ（ΣΔＩｑ）×ＶＯ    …（４）
の演算を行う。ここで、ｓｉｇｎ（）は符号判定を行う関数で、”＋１”又は”−１”の値を返すものである。
【００３８】
Ｓ２１２はｑ軸電圧指令値Ｖｑ＊を演算する処理である。
Ｖｑ＊は、
Ｖｑ＊  ＝ΔＩｑ×Ｇｐｑ＋ΣΔＩｑ    …（５）
という公知の演算式により求められる。ここで、Ｇｐｑはｑ軸電流偏差比例ゲインである。なお、Ｓ２０４からＳ２１２に移行した場合には、Ｓ２１２では前回値（前回制御周期で算出した値）であるΣΔＩｑを使用する。
【００３９】
Ｓ２１４は「ｑ軸電圧＋飽和フラグ」及び「ｑ軸電圧−飽和フラグ」をクリアする処理である。Ｓ２１６はＳ２１２で算出したｑ軸電圧指令値が＋側に電圧飽和しているか、即ち、Ｖｑ＊＞ＶＯであるかを判定する処理である。この判定の結果がＹｅｓであればＳ２１８及びＳ２２０の処理を行い、ＮｏであればＳ２２２の処理に移行する。
【００４０】
Ｓ２１８は「ｑ軸電圧＋飽和フラグ」をセットする処理である。この「ｑ軸電圧＋飽和フラグ」は次の制御周期におけるＳ２０４の処理で参照される。Ｓ２２０はｑ軸電圧指令値Ｖｑ＊を積算値最大値ＶＯ以下に制限する処理である。Ｓ２２０は、ｑ軸電圧指令値Ｖｑ＊が＋側に飽和している場合に実行される処理なので、Ｖｑ＊  ＝ＶＯとすることにより、Ｖｑ＊をＶＯ以下に制限する。なお、Ｓ２０８及びＳ２１０の処理でｑ軸電流偏差積算値ΣΔＩｑの絶対値はＶＯ以下に制限されているが、Ｓ２１２の処理でΣΔＩｑにΔＩｑ×Ｇｐｑが加算されてＶｑ＊となるため、Ｖｑ＊の絶対値がＶＯを超える場合が生じ得る。Ｓ２２０はこの場合でもＶｑ＊の絶対値がＶＯを超えないようにするための処理である。
【００４１】
Ｓ２２０の処理後、図５に示すフローチャートのＳ３０２に移行する。
Ｓ２２２は、ｑ軸電圧指令値が−側に電圧飽和しているか、即ち、Ｖｑ＊＜−ＶＯであるかを判定する処理である。この判定の結果がＹｅｓである場合に限りＳ２２４及びＳ２２６の処理を行う。Ｓ２２４は「ｑ軸電圧−飽和フラグ」をセットする処理である。この「ｑ軸電圧−飽和フラグ」は、「ｑ軸電圧＋飽和フラグ」と同様、次の制御周期におけるＳ２０４の処理で参照される。Ｓ２２６はＳ２２０と同様にＶｑ＊の値を制限する処理であり、Ｖｑ＊  ＝−ＶＯとする処理が行われ、図５に示すフローチャートのＳ３０２に移行する。
【００４２】
また、Ｓ２２２でＮＯと判定されると、Ｓ３０２に移行する。
以上、図４のフローチャートの処理が終了すると、図５に示すフローチャートの処理を実行する。図５はｄ軸電圧指令値Ｖｄ＊を演算する処理のフローチャートである。ｄ軸電圧指令値Ｖｄ＊はｑ軸電圧指令値Ｖｑ＊と同様の処置手順によって求められるため、詳細な説明は省略する。
【００４３】
すなわち、図４のフローチャートを参照して説明した上記説明中、「ｑ」と記載した部分を「ｄ」と読み替えすればよいため、説明を省略する。又、図５における各ステップには、図４のＳ２０２〜Ｓ２２６の各ステップに相当するステップには、「百」の桁を「３」の数とし、下２桁については、同じ数値を付す。
【００４４】
なお、図５に示すΔＩｄはｄ軸電流偏差、ΣΔＩｄはｄ軸電流偏差積算値である。
２相３相変換部１３０，ＰＷＭ制御部１４０での処理を図６のフローチャートを参照して説明する。
【００４５】
図６はｑ軸電圧指令値Ｖｑ＊及びｄ軸電圧指令値Ｖｄ＊に基づいて、インバータ回路３０に出力するスイッチング制御信号ＰＷＭｕ，ＰＷＭｖ，ＰＷＭｗを公知の手順により求める処理のフローチャートである。Ｓ５０２はＶｑ＊，Ｖｄ＊を２相３相変換し、Ｕ相電圧指令値Ｖｕ＊，Ｖ相電圧指令値Ｖｖ＊，Ｗ相電圧指令値Ｖｗ＊を求める処理である。Ｓ５０４はＶｕ＊，Ｖｖ＊，Ｖｗ＊をＰＷＭ変換し、ＰＷＭｕ，ＰＷＭｖ，ＰＷＭｗを求める処理である。Ｓ５０６ではＰＷＭｕ，ＰＷＭｖ，ＰＷＭｗをインバータ回路３０に出力し、インバータ回路３０を駆動する処理である。
【００４６】
以上の処理により、上位コントローラ１０から入力されるｄ軸電流指令値Ｉｄ＊及びｑ軸電流指令値Ｉｑ＊に基づいてインバータ回路３０が駆動され、モータ５０にＰＷＭ制御されたパルス電圧（ＰＷＭ信号）が供給される。
【００４７】
なお、ＣＰＵ２１は請求項における、電圧制限値設定手段、電圧指令値演算手段及び電圧飽和判定手段に相当する。電圧制限値設定手段の処理内容としては、図３のＳ１１２に示した処理が相当する。電圧指令値演算手段の処理内容としては図４のＳ２０２〜Ｓ２１２及び図５のＳ３０２〜Ｓ３１２に示した処理が該当する。又、ＣＰＵ２１は請求項における電圧飽和判定手段に相当する。電圧飽和判定手段の処理内容としては図４のＳ２１４〜Ｓ２１８，Ｓ２２２〜Ｓ２２４及び図５のＳ３１４〜Ｓ３１８，Ｓ３２２〜Ｓ３２４に示した処理が該当する。
【００４８】
以上説明した第１実施形態の制御装置によれば、以下に示す効果がある。
（１）  第１実施形態のモータ制御装置のＣＰＵ２１により、演算したｄ軸電圧指令値Ｖｄ＊，ｑ軸電圧指令値Ｖｑ＊（電圧指令値）が、インバータ回路３０の出力可能な電圧の範囲を超えて、電圧飽和するか否かを判定するようにした。又、ＣＰＵ２１（電圧指令値演算手段）により、電圧飽和すると判定したときは、電流偏差積算値の電流偏差の積算を制限するようにした。又、モータ制御方法では、上述のように電圧飽和の判定及び電流偏差積算値の電流偏差の積算を制限するようにした。
【００４９】
この結果、第１実施形態では、ｑ軸電流偏差積算値ΣΔＩｑ及びｄ軸電流偏差積算値ΣΔＩｄが積算値最大値ＶＯ以下に制限されるので、直流電源部４０及びインバータ回路３０の電圧出力能力を超えて電流偏差積算値が増大することがなく、ワインドアップ現象を防止することができる。このため、モータ５０が急停止する際に過電流等の異常の発生を抑えることができ、また、モータ５０の回転方向が急激に反転したり急減速する際にも応答遅れを改善することができる。
【００５０】
（２）図４のＳ２１２及び図５のＳ３１２で演算したｑ軸電圧指令値Ｖｑ＊，ｄ軸電圧指令値Ｖｄ＊と電圧制限値である積算値最大値ＶＯとの比較結果により電圧飽和を示すフラグをセットし、このフラグによって次の制御周期で電流偏差を積算するか否かを判断する。このため、簡単な処理により確実に電流偏差積算値を積算値最大値ＶＯ以下に制限することができる。この結果、ＣＰＵ２１に負担をかけることがなく、短い制御周期を実現することができるので、モータ５０を精度良く制御できる。
【００５１】
（３）制御周期毎に電圧センサ４０ｖで直流電源部４０の電源電圧Ｖｂを読み込み（図３のＳ１１０）、この電源電圧Ｖｂを基にして積算値最大値ＶＯを演算する（図３のＳ１１２）ので、電源電圧Ｖｂが変動しても電流偏差積算値を適切に制限することができる。
【００５２】
（４）  第１実施形態によれば、ＣＰＵ２１（電圧飽和判定手段）は、前記回転座標系の直交２軸（ｄ軸，ｑ軸）のそれぞれの電圧指令値と、電圧飽和判定のための電圧制限値である積算値最大値ＶＯとを比較して、該電圧指令値の方が、積算値最大値ＶＯより大きい場合には電圧飽和と判定するようにした。又、積算値最大値ＶＯは、直交２軸の軸方向に、インバータ回路３０からモータ５０に出力可能な電圧の最大値とした。
【００５３】
この結果、直交２軸の軸方向において、ｄ軸電圧指令値Ｖｄ＊及びｑ軸電圧指令値Ｖｑ＊を、積算値最大値ＶＯ以下にすることができ、上記（１）の作用効果を容易に実現できる。
【００５４】
（５）  第１実施形態によれば、ＣＰＵ２１は、Ｓ２１４〜Ｓ２１８，Ｓ２２２〜Ｓ２２４及びＳ３１４〜Ｓ３１８，Ｓ３２２〜Ｓ３２４にて各軸の電圧指令値が電圧飽和か否かを判定するようにした。そして、電圧飽和していると判定すると、Ｓ２０４，Ｓ３０４において、それぞれｑ軸電流偏差積算値ΣΔＩｑ，ｄ軸電流偏差積算値ΣΔＩｄと、ｑ軸電流偏差ΔＩｑ，ｄ軸電流偏差ΔＩｄとが同符号のとき、次の制御周期において各軸の電流偏差積算値をさらに増大させる電流偏差の積算を停止するようにした。
【００５５】
この結果、上記（１）の作用効果を容易に実現できる効果を奏する。
（第２実施形態）
次に、本発明の第２実施形態を図７に基づいて説明する。なお、この第２実施形態は、前記第１実施形態において、直流電源部４０が出力する電源電圧を昇圧してインバータ回路３０に出力する昇圧回路４１、及び、昇圧回路４１を制御する昇圧回路制御手段としての昇圧回路制御部４２を設けたものであり、その他の点では第１実施形態と同一の構成になっている。以下では昇圧回路４１及び昇圧回路制御部４２についてのみ説明することとし、第１実施形態と共通する構成部分については図面上に同一符号を付すこととして重複した説明を省略する。
【００５６】
図７に示すように、第２実施形態では直流電源部４０とインバータ回路３０との間に昇圧回路４１が設けられ、昇圧回路４１にはこれを制御する昇圧回路制御部４２が設けられている。昇圧回路制御部４２は制御部２０のインタフェース回路Ｉ／Ｆ２５ａを介してＣＰＵ２１と接続されている。
【００５７】
昇圧回路４１は、直流電源部４０から出力される電圧を昇圧してインバータ回路３０に出力するものであり、コイルＬ１，電界効果トランジスタＦＥＴ１，ダイオードＤ１，コンデンサＣ１から構成される。電界効果トランジスタＦＥＴ１のオン／オフは昇圧回路制御部４２により制御される。電界効果トランジスタＦＥＴ１のオン時間／オフ時間を変えることにより、電源電圧Ｖｂを可変とすることができる。昇圧回路制御部４２はＣＰＵ２１からの指示により電界効果トランジスタＦＥＴ１のオン時間／オフ時間を調整する。即ち、ＣＰＵ２１からの指示に応じた電源電圧Ｖｂを昇圧回路４１からインバータ回路３０に出力することができる。
【００５８】
以上のように構成された第２実施形態の作用及び効果を説明する。第１実施形態の構成による場合でも、直流電源部４０から出力される電圧がモータ５０に要求される負荷量に比較して十分大きい場合には問題はない。しかし、例えば車両のバッテリー（ＤＣ１２Ｖ／ＤＣ２４Ｖ）を直流電源部４０とし該車両のパワーステアリングのパワーアシスト用にモータ５０を駆動するような場合には、モータ５０に供給される電圧が不足して電流を流し込めないために必要なモータ出力（トルク及び回転数）を得られない場合がある。仮にこのような場合でもモータ５０から必要なモータ出力を得られるようにするためには、モータ巻線の巻数を多くしなければならず、モータ重量が増すとともにコストが上昇するという問題がある。
【００５９】
第２実施形態によれば、昇圧回路４１でインバータ回路３０に供給される電源電圧Ｖｂを昇圧し、モータ５０に供給される電圧を高くすることにより、この問題を解決することができる。即ち、モータ５０の負荷が大きく、直流電源部４０から出力される電圧のままでは負荷の駆動に必要なモータ出力を得られない場合には、ＣＰＵ２１の指示により電源電圧Ｖｂをモータ５０の負荷量に応じた値まで昇圧する。これにより、モータ５０から必要なモータ出力を得ることができる。
【００６０】
なお、昇圧回路４１の出力電圧の目標値は、モータ５０の負荷量の段階ごとに必要となる電圧値を予め計算してＲＯＭ２２等に記憶した対応表によって求めるものでもよく、モータ５０の負荷量に基づいて制御周期毎に演算して求めるものでもよい。また、モータ５０の負荷量はインバータ回路３０のスイッチング素子の一制御周期内でのオン時間（＋電圧の出力時間）の割合とほぼ比例するので、この割合に基づいて負荷量を推定し昇圧回路４１の出力電圧の目標値を求めるようにしてもよい。モータ５０の負荷量はＵ，Ｖ，Ｗ相の実電流値又はｄ軸実電流Ｉｄ，ｑ軸実電流Ｉｑ等により検出可能である。
【００６１】
一方、モータ５０の負荷が小さく、直流電源部４０から出力される電圧のままでも負荷の駆動に必要なモータ出力を得られる場合には、昇圧回路４１での昇圧を行わないことにより、高精度な制御が可能となる。即ち、電源電圧Ｖｂに対してモータ５０の負荷が小さい場合には、インバータ回路３０のスイッチング素子のスイッチングの頻度が減少し、モータ５０の各相の巻線に供給される電流の高調波が大きくなる。このためモータ巻線の電流波形が正弦波状にならなくなり、高精度な制御ができない。そこで、このような場合には昇圧回路４１での昇圧を行わないようにし、適当な頻度でインバータ回路３０のスイッチング素子のスイッチングが行われるようにすることにより、高精度なモータ５０の制御が可能となる。
【００６２】
従って、第２実施形態によれば、第１実施形態の効果（１）〜（３）に加え、昇圧回路４１により直流電源部４０の出力電圧を昇圧してインバータ回路３０に出力することにより、直流電源部４０の出力電圧をそのままインバータ回路３０に出力した場合以上のモータ出力をモータ５０から得ることができる。また、直流電源部４０の出力電圧を昇圧しなくてもモータ５０から必要なモータ出力を得られる場合には昇圧をしないことにより、モータ５０を高精度に制御できるという効果もある。
【００６３】
（第３実施形態）
次に、第３実施形態を図８〜図１１を参照して説明する。
なお、第３実施形態は、第１実施形態のハード構成については同じであるため、第１実施形態と同一構成及び相当する構成については、同一符号を付して、その説明を省略し、異なるところを中心に説明する。
【００６４】
図８、図９は、第３実施形態のＣＰＵ２１が実行するフローチャートであり、所定の制御周期毎に１回ずつ繰り返し実行される処理である。このフローチャート中、Ｓ１０２〜Ｓ１１２、Ｓ２０２〜Ｓ２１２、Ｓ３０２〜Ｓ３１２、及びＳ５０２〜Ｓ５０６の処理は、第１実施形態のフローチャートと同じ処理であるため、同一ステップ番号を付して、その説明を省略する。なお、Ｓ２０２〜Ｓ２１２は、以下、ｑ軸電圧指令値演算ルーチンＳ２００といい、Ｓ３０２〜Ｓ３１２は，以下、ｄ軸電圧指令値演算ルーチンＳ３００という。又、Ｓ５０２〜Ｓ５０６は、Ｓ５００のルーチンとし、変換・出力処理ルーチンという。
【００６５】
Ｓ１１２の後に行われるＳ１１３は電圧飽和閾値演算処理であり、下記式（６）で電圧飽和閾値Ｖｍａｘを演算する。
Ｖｍａｘ＝ｇ（Ｖｂ）
＝（Ｖｂ／２）×ｋ    …（６）
ここで、ｋはインバータ回路３０の最大電圧利用率であり、インバータ回路３０のｄｕｔｙの制限に応じた利用率を示す定数である。前記電圧飽和閾値Ｖｍａｘは、電圧制限値に相当し、インバータ回路３０が出力可能な相電圧の最大値である。電源電圧Ｖｂ及び利用率ｋは、インバータ回路３０に関連する物理量に相当する。
【００６６】
この処理の後、ｑ軸電圧指令値演算ルーチンＳ２００を実行し、Ｓ２００の処理の後、ｄ軸電圧指令値演算ルーチンＳ３００を実行する。又、Ｓ３００の処理の後、Ｓ４００の電圧飽和判定ルーチンを実行する。
【００６７】
図９は、Ｓ４００の電圧飽和判定ルーチンのフローチャートを示している。
Ｓ４０２は、「ｑ軸電圧＋飽和フラグ」、「ｑ軸電圧−飽和フラグ」、「ｄ軸電圧＋飽和フラグ」及び「ｄ軸電圧−飽和フラグ」をクリアする処理である。Ｓ４０４は、電圧飽和判定処理である。具体的には、ｑ軸電圧指令値Ｖｑ＊及びｄ軸電圧指令値Ｖｄ＊のベクトル合成した値が下記の条件を満たしているか否かを判定する。
【００６８】
√（２／３）×√（Ｖｄ＊＾２＋Ｖｑ＊＾２）≦Ｖｍａｘ（電圧飽和閾値）…（７）
なお、上記式中、「＾」はべき乗を示している。
【００６９】
ここで、上記式（７）の根拠について説明する。
ｄ軸電圧指令値，及びｑ軸電圧指令値をＶｄ＊、Ｖｑ＊としたときに、２相３相変換された後の各相の電圧指令値は、下記の通りとなる。
【００７０】
Ｖｕ＊＝√（２／３）×｛Ｖｄ＊×ｃｏｓθ−Ｖｑ＊×ｓｉｎθ｝  …（８）
Ｖｖ＊＝√（２／３）×｛Ｖｄ＊×ｃｏｓ（θ−１２０°）−Ｖｑ＊×ｓｉｎ（θ−１２０°）｝        …（９）
Ｖｗ＊＝√（２／３）×｛Ｖｄ＊×ｃｏｓ（θ−２４０°）−Ｖｑ＊×ｓｉｎ（θ−２４０°）｝        …（１０）
従って、各相電圧指令値の振幅は、下記式となる。
｜各相電圧指令値｜＝√（２／３）×√（Ｖｄ＊＾２＋Ｖｑ＊＾２）…（１１）
ここで、インバータ回路３０が出力可能な最大電圧利用率をβ［％］とすると、インバータ回路３０は、
（−Ｖｂ／２）×β／１００〜（Ｖｂ／２）×β／１００
の範囲しか電圧を出力できない。従って、相電圧指令値としては、
√（２／３）×√（Ｖｄ＊＾２＋Ｖｑ＊＾２）≦（Ｖｂ／２）×β／１００
を満足する必要がある。
【００７１】
ここで、β／１００＝ｋとすると、Ｖｍａｘ（電圧飽和閾値）＝（Ｖｂ／２）×β／１００となる。
従って、式（７）となる。
【００７２】
この条件を満足しない場合、各相電圧の頂点付近が飽和してクランプされ、きれいな正弦波で通電できず、その結果、電流波形が歪むことになる。図１０は、相電圧を示した説明図であり、電圧飽和が発生し、クランプされた場合の相電圧波形を示している。Ｕ，Ｖ，Ｗはそれぞれ各相の電圧波形を示している。
【００７３】
このような、条件を満足しないときとは、例えば、電動パワーステアリング制御装置においては、逆起電力が大きく電流が欲しい急操舵時の場合に発生しやすい。このような場合、各軸のｄ軸電圧指令値Ｖｄ＊，ｑ軸電圧指令値Ｖｑ＊が大きいため、相電圧波形が歪む結果、相電流波形が歪み、異音の発生がある。
【００７４】
Ｓ４０４において、ｑ軸電圧指令値Ｖｑ＊及びｄ軸電圧指令値Ｖｄ＊のベクトル合成した値が式（７）を満足している場合、すなわち、この判定の結果がＹｅｓであればＳ４０６の処理を行い、Ｎｏであればこのルーチンを終了し、Ｓ５００に移行する。
【００７５】
Ｓ４０８は、ｄ軸電圧指令値Ｖｄ＊の符号が正か否かを判定する処理である。正であれば、Ｓ４０８に移行した後、Ｓ４１２に移行する。又、負であれば、Ｓ４１０に移行した後、Ｓ４１２に移行する。Ｓ４０８及びＳ４１０は、それぞれ「ｄ軸電圧＋飽和フラグ」、「ｄ軸電圧−飽和フラグ」をセットする処理である。この「ｄ軸電圧＋飽和フラグ」及び「ｄ軸電圧−飽和フラグ」は、Ｓ３０４で参照される。
【００７６】
Ｓ４１２は、ｑ軸電圧指令値Ｖｑ＊の符号が正か否かを判定する処理である。正であれば、Ｓ４１４に移行した後、Ｓ４１８に移行する。又、負であれば、Ｓ４１６に移行した後、Ｓ４１８に移行する。Ｓ４１４及びＳ４１６は、それぞれ「ｑ軸電圧＋飽和フラグ」、「ｑ軸電圧−飽和フラグ」をセットする処理である。この「ｑ軸電圧＋飽和フラグ」及び「ｑ軸電圧−飽和フラグ」は、Ｓ２０４で参照される。
【００７７】
Ｓ４１８は、ｄ軸電圧指令値Ｖｄ＊，ｑ軸電圧指令値Ｖｑ＊の調整処理、すなわち、補正処理である。この補正処理により、前記式（７）を満足するようにする。補正処理は、具体的には、ｄ軸電圧指令値Ｖｄ＊のみの補正処理、ｑ軸電圧指令値Ｖｑ＊のみの補正処理、又は、ｄ軸電圧指令値Ｖｄ＊とｑ軸電圧指令値Ｖｑ＊の両軸の電圧指令値の補正処理がある。Ｓ４１８では、これらの補正処理のうち、いずれかの補正処理を行う。
【００７８】
前記各補正処理について説明する。
１）  ｄ軸電圧指令値Ｖｄ＊のみの補正処理は、下記の演算式（１２）にて行う。
【００７９】
Ｖｄ＊（補正後）＝α１×Ｖｄ＊（補正前）    …（１２）
なお、α１＝√（３／２）×√（Ｖｍａｘ＾２−Ｖｑ＊＾２）／Ｖｄ＊（補正前）である。
【００８０】
２）  ｑ軸電圧指令値Ｖｑ＊のみの補正処理は、下記の演算式（１３）にて行う。
Ｖｑ＊（補正後）＝α２×Ｖｑ＊（補正前）    …（１３）
なお、α２＝√（３／２）×√（Ｖｍａｘ＾２−Ｖｄ＊＾２）／Ｖｑ＊（補正前）である。
【００８１】
３）  ｄ軸電圧指令値Ｖｄ＊とｑ軸電圧指令値Ｖｑ＊の補正処理は、下記の演算式（１４）及び演算式（１５）にて行う。
Ｖｄ＊（補正後）＝α３×Ｖｄ＊（補正前）    …（１４）
Ｖｑ＊（補正後）＝α３×Ｖｑ＊（補正前）    …（１５）
なお、α３＝√（３／２）×（Ｖｍａｘ／√（Ｖｄ＊（補正前）＾２＋Ｖｑ＊（補正前）＾２）である。
【００８２】
前記１）のｄ軸電圧指令値Ｖｄ＊のみの補正処理は、トルク重視の補正処理である。２）のｑ軸電圧指令値Ｖｑ＊のみの補正処理は、速度重視の補正処理である。又、３）のｄ軸電圧指令値Ｖｄ＊とｑ軸電圧指令値Ｖｑ＊の補正処理は、トルク及び速度ともバランスがとれた補正処理となる。
【００８３】
本実施形態では、３）のｄ軸電圧指令値Ｖｄ＊とｑ軸電圧指令値Ｖｑ＊の補正処理を行う。
Ｓ４１８の処理の後、Ｓ５００の変換・出力処理ルーチンに移行する。Ｓ４１８の補正処理により、式（７）を満足することになり、直交２軸の電圧指令値をベクトル合成した値が、インバータ回路３０の出力可能な電圧範囲を超えないようになる。
【００８４】
第３実施形態では、ＣＰＵ２１は請求項における電圧制限値設定手段、電圧指令値演算手段、電圧飽和判定手段、及び補正手段に相当する。電圧制限値設定手段の処理内容としては、第１実施形態とは異なり、図８のＳ１１３に示した処理が相当する。電圧指令値演算手段の処理内容としては図８のＳ２０２〜Ｓ２１２及びＳ３０２〜Ｓ３１２に示した処理が該当する。又、ＣＰＵ２１は請求項における電圧飽和判定手段に相当する。電圧飽和判定手段の処理内容としては、第１実施形態とは異なり、図９のＳ４０２〜Ｓ４１６に示した処理が該当する。補正手段の処理内容としては、Ｓ４１８に示した処理が相当する。
【００８５】
第３実施形態によれば、第１実施形態の（１）、及び（３）の効果の他、下記の作用効果を奏する。
（１）  第３実施形態のモータ制御装置及びモータ制御方法では、電圧制限値を、電圧飽和閾値Ｖｍａｘとした。すなわち、電圧制限値をインバータ回路３０が可能な最大値の相電圧とした。そして、ＣＰＵ２１は、回転座標系の直交２軸であるｄ軸，ｑ軸電圧指令値をベクトル合成した値と、電圧制限値である電圧飽和閾値Ｖｍａｘとを比較して、ベクトル合成した値の方が、電圧飽和閾値Ｖｍａｘより大きい場合に、電圧飽和と判定するようにした。
【００８６】
第３実施形態では、第１実施形態と異なり、直交する２軸の軸方向に、ｄ軸，ｑ軸の電圧指令値の個々について、それぞれ電圧飽和を判定しておらず、ベクトル合成した値が、電圧制限値を超えるか否かで判定しているため、より精度が高い判定ができる。
【００８７】
（２）  第３実施形態では、ＣＰＵ２１が、電圧飽和と判定した場合、演算した直交２軸の電圧指令値をベクトル合成した値が、インバータ回路３０の出力可能な電圧範囲として、電圧飽和閾値Ｖｍａｘを超えないように、ｄ軸電圧指令値Ｖｄ＊とｑ軸電圧指令値Ｖｑ＊の補正処理を行うようにした。
【００８８】
なお、この補正をしない場合、例えば、図１１（ｂ）の場合が生ずることがある。図１１（ｂ）は、ｑ軸電圧指令値Ｖｑ，ｄ軸電圧指令値Ｖｄは、積算値最大値ＶＯ以内であるが、ベクトル合成した値が、電圧飽和閾値Ｖｍａｘを超える場合である。この場合には、式（７）を満足しないため、２相３相変換された際、各相電圧の頂点付近が飽和してクランプされ、きれいな正弦波で通電できず、その結果、電流波形が歪み、相電圧波形が歪む結果、相電流波形が歪み、異音の発生がある。しかし、本実施形態ではこのようなことはなく、図１１（ｃ）のようにベクトル合成した値が、電圧飽和閾値Ｖｍａｘを超えないようなるため、正弦波通電が可能となり、トルクリップルや、振動、異音発生等を低減することができる。
【００８９】
なお、図１１（ａ）は、ｑ軸電圧指令値Ｖｑ，ｄ軸電圧指令値Ｖｄは、積算値最大値ＶＯ以内であって、両軸の電圧指令値をベクトル合成した値が、電圧飽和閾値Ｖｍａｘ以内の場合である。
【００９０】
なお、前記各実施形態は、以下のような別形態にして変更して実施することも可能である。
（１）  前記各実施形態ではブラシレス三相ＤＣモータを制御する場合について説明したが、ブラシレス三相ＤＣモータに限られず、誘導電動機やブラシ付きＤＣモータに適用してもよい。また、直線移動するリニアモータに適用することも可能である。
【００９１】
（２）  インバータ回路３０からモータ５０に出力するパルス電圧のパルス幅を一定にし、電源電圧Ｖｂを制御することにより、ブラシ付きＤＣモータを制御するものでもよい。即ち、ＰＡＭ制御（Ｐｕｌｓｅ  Ａｍｐｌｉｔｕｄｅ  Ｍｏｄｕｌａｔｉｏｎ、パルス電圧振幅制御方式）によりモータ５０を制御するものでもよい。
【００９２】
（３）  第３実施形態では、補正手段Ｓ４１８の補正処理では、３）の処理を行ったが、Ｓ４１８の補正処理として、前記１）のｄ軸電圧指令値Ｖｄ＊のみの補正処理を行ってもよい。この場合、トルク重視の補正処理となる。
【００９３】
（４）  第３実施形態では、Ｓ４１８の補正処理では、３）の処理を行ったが、前記２）のｑ軸電圧指令値Ｖｑ＊のみの補正処理を行ってもよい。この場合、速度重視（モータ回転速度重視）の補正処理となる。
【００９４】
【発明の効果】
請求項１乃至請求項２０記載の発明によれば、インバータ回路の電圧出力能力を超えて電流偏差積算値が増大することがないので、モータの急停止、急減速、急反転時の異常発生又は応答遅れを抑えることができる。
【００９５】
請求項２、請求項１２記載の発明によれば、前記請求項１記載の発明の効果に加え、直流電源部から出力される電源電圧をそのままインバータ回路に供給する場合よりも、大きなモータ出力を得ることができる。
【００９６】
請求項３、請求項１３記載の発明によれば、簡単な処理により確実に電流偏差積算値が電圧制限値を超えないように制限することができる。
請求項４、請求項１４記載の発明によれば、回転座標系の直交２軸のそれぞれの電圧指令値と、電圧制限値との比較により、電圧飽和の判定を行うことができる。
【００９７】
請求項５、請求項１５記載の発明によれば、回転座標系の直交２軸のそれぞれの電圧指令値をベクトル合成した値と、電圧制限値との比較により、電圧飽和の判定をより精度高く行うことができる。
【００９８】
請求項６、請求項１６記載の発明によれば、モータの急停止、急減速、急反転時の異常発生又は応答遅れの抑制の効果を容易に実現できる。
請求項７乃至請求項１０、及び請求項１７乃至請求項２０記載の発明によれば、直交２軸の電圧指令値をベクトル合成した値が、インバータ回路の出力可能な電圧範囲を超えないように確実に実現することができ、トルクリップル、振動、異音を低減することができる。
【００９９】
請求項８、請求項１８記載の発明によれば、トルク重視の電圧指令値の補正を行うことができる。
請求項９、請求項１９記載の発明によれば、速度重視（モータ回転速度重視）電圧指令値の補正を行うことができる。
【０１００】
請求項１０、請求項２０記載の発明によれば、トルク重視や、速度重視とならず、バランスのよい電圧指令値の補正を行うことができる。
【図面の簡単な説明】
【図１】第１実施形態におけるモータ制御システムの概要構成図。
【図２】同じくモータ制御システムの機能に着目した構成図。
【図３】同じく制御部２０の処理内容を示すフローチャート。
【図４】同じく制御部２０の処理内容を示すフローチャート。
【図５】同じく制御部２０の処理内容を示すフローチャート。
【図６】同じく制御部２０の処理内容を示すフローチャート。
【図７】第２実施形態におけるモータ制御システムの概要構成図。
【図８】第３実施形態における制御部２０の処理内容を示すフローチャート。
【図９】同じく制御部２０の処理内容を示すフローチャート。
【図１０】同じく各相電圧がクランプされた状態を示す説明図。
【図１１】（ａ）〜（ｃ）は同じく各軸の電圧指令値とベクトル合成した値と、電圧飽和閾値Ｖｍａｘとの説明図。
【符号の説明】
１０…上位コントローラ
ＥＣＵ…制御装置
２０…制御部（制御手段）
２１…ＣＰＵ（電圧指令値演算手段、電圧飽和判定手段、補正手段、電圧制限値設定手段）
３０…インバータ回路
４０…直流電源部
４１…昇圧回路
４２…昇圧回路制御部（昇圧回路制御手段）
５０…モータ
【図１】
2004229487.tif 000003
【図２】
2004229487.tif 000004
【図３】
2004229487.tif 000005
【図４】
2004229487.tif 000006
【図５】
2004229487.tif 000007
【図６】
2004229487.tif 000008
【図７】
2004229487.tif 000009
【図８】
2004229487.tif 000010
【図９】
2004229487.tif 000011
【図１０】
2004229487.tif 000012
【図１１】
2004229487.tif 000013