(57)【特許請求の範囲】
【請求項１】
外部から入力されるトルク指令値及びモータの回転速度に基づき基本電流指令値を演算する電流指令値演算手段と、
前記基本電流指令値を増幅させることで、前記モータのロータ磁束応答の遅れを補償する第１補償手段と、
補償後電流指令値を第１電流制限値で制限する第１電流指令値制限手段と、
前記第１補償手段により演算された電流増幅指令値と、前記第１電流指令値制限手段により演算された第１制限後電流指令値に基づき、前記電流増幅指令値の補償値を演算する第２補償手段と、
前記電流増幅指令値と前記補償値とを加算することで、前記補償後電流指令値を演算する加算手段と、
前記第１制限後電流指令値に基づき、前記モータを制御するモータ制御手段とを備え、
前記第２補償手段は、
前記電流増幅指令値のうち、前記第１電流制限値により制限を受けた分の指令値を前記補償値として演算する
ことを特徴とするモータ制御装置。
【請求項２】
請求項１記載のモータ制御装置において、
前記第２補償手段は、
前記電流増幅指令値と前記第１電流制限値との差分を積分することで、前記補償値を演算する
ことを特徴とするモータ制御装置。
【請求項３】
請求項１又は２記載のモータ制御装置において、
前記第２補償手段は、
前記電流増幅指令値と前記第１電流制限値との差分を積分した積分値に所定値のゲインを乗ずることで、前記補償値を演算する
ことを特徴とするモータ制御装置。
【請求項４】
請求項１〜３のいずれか一項に記載のモータ制御装置において、
前記第２補償手段は、
前記モータの出力トルクと前記トルク指令値との差に基づいて、前記補償値をリセットする
ことを特徴とするモータ制御装置。
【請求項５】
請求項１〜３のいずれか一項に記載のモータ制御装置において、
前記第２補償手段は、
前記基本電流指令値と前記電流増幅指令値との差に基づいて、前記補償値をリセットする
ことを特徴とするモータ制御装置。
【請求項６】
請求項１〜５のいずれか一項に記載のモータ制御装置において、
前記第１制限後電流指令値及び前記トルク指令値に基づき第２電流制限値を演算する第２電流制限値演算手段と、
電流指令値を前記第２電流制限値で制限する第２電流指令値制限手段とをさらに備え、
前記第１補償手段は、
前記モータの電流指令値に含まれる励磁電流指令値又はトルク電流指令値の何れか一方の電流指令値の前記基本電流指令値を補償することで、前記電流増幅指令値を演算し、
前記第２電流制限値演算手段は、
前記第１制限後電流指令値に基づき前記モータのロータ磁束推定値を演算し、
前記トルク指令値を、前記モータの定数により定まるゲインと前記ロータ磁束推定値とを乗算した値で、除算することで、前記第２電流制限値を演算し、
前記第２電流指令値制限手段は、
前記励磁電流指令値又は前記トルク電流指令値のうち、前記第１補償手段で補償されていない方の前記基本電流指令値を、前記第２電流制限値で制限することで、第２制限後電流指令値を演算し、
前記モータ制御手段は、前記第２制限後電流指令値に基づき、前記モータを制御する
ことを特徴とするモータ制御装置。
【請求項７】
請求項１〜６のいずれか一項に記載のモータ制御装置において、
前記第１電流制限値を演算する第１電流制限値演算手段をさらに備え、
前記第１補償手段は、
前記モータの電流指令値に含まれる励磁電流指令値又はトルク電流指令値の何れか一方の電流指令値の前記基本電流指令値を補償することで、前記電流増幅指令値を演算し、
前記第１電流制限値演算手段は、
前記励磁電流指令値又は前記トルク電流指令値のうち、前記第１補償手段で補償されていない方の前記基本電流指令値に基づき、前記第１補償手段で補償されていない方の電流値を推定し、推定された電流値に基づき前記第１電流制限値を演算する
ことを特徴とするモータ制御装置。
【請求項８】
請求項１〜６のいずれか一項に記載のモータ制御装置において、
前記第１電流制限値を演算する第１電流制限値演算手段をさらに備え、
前記第１補償手段は、
前記モータの電流指令値に含まれる励磁電流指令値又はトルク電流指令値の何れか一方の電流指令値の前記基本電流指令値を補償することで、前記電流増幅指令値を演算し、
前記第１電流制限値演算手段は、
前記励磁電流指令値又は前記トルク電流指令値のうち、前記第１補償手段で補償されていない方の電流指令値と、前記モータの定格電流を示す最大電流制限値に基づき前記第１電流制限値を演算する
ことを特徴とするモータ制御装置。
ただし、
0005862832.tif 000032
Ｉｌｉｍは前記第１電流制限値を示し、
Ｉｍａｘは前記最大電流制限値を示し、
Ｉａ＊は前記第１補償手段で補償されていない方の電流指令値を示す。
【請求項９】
外部から入力されるトルク指令値及びモータの回転速度に基づき基本電流指令値を演算し、
前記基本電流指令値を増幅させることで、前記モータのロータ磁束応答の遅れを補償して電流増幅指令値を演算し、
前記電流増幅指令値をさらに補償して補償後電流増幅指令値を演算し、
前記電流増幅指令値の大きさに応じた電流制限値で、前記補償後電流増幅指令値を制限し、
前記電流制限値で制限された後の指令値に基づき、前記モータを制御し、  
前記電流増幅指令値が前記電流制限値で制限された場合には、前記電流増幅指令値が前記電流制限値より小さくなった後に、前記電流制限値により制限を受けた分の指令値を前記電流増幅指令値に加える
ことを特徴とするモータの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータ制御装置及びモータ制御方法に関するものである。【０００２】
本出願は、２０１３年２月２６日に出願された日本国特許出願の特願２０１３―３５６３７号に基づく優先権を主張するものであり、文献の参照による組み込みが認められる指定国については、上記の出願に記載された内容を参照により本出願に組み込み、本出願の記載の一部とする。
【背景技術】
【０００３】
目標磁束を発生するための励磁電流指令値を演算する励磁電流指令値演算部と、励磁電流指令値の正負の上限値を制限する励磁電流リミッタ部を備えた誘導モータ制御装置において、励磁電流指令値演算部は、２次磁束の応答性を変化させるために励磁電流の値を大きく変化させるよう励磁電流指令値を演算し、励磁電流リミッタ部はインバータのドライブ回路を保護するために過度に大きな電流を流れないよう上記の上限値を設定するものが開示されている（特許文献１）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平８−１６３９００号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記のモータ制御装置では、磁束の応答性を高めるために、過渡的に大きな励磁電流を流すことで、当該励磁電流が上限値である定常の最大許容電流で制限された場合には、制限された分の励磁電流は流れないため、ロータ磁束が不足しトルクの応答性が悪くなるという問題があった。【０００６】
本発明が解決しようとする課題は、トルクの応答性を改善したモータ制御装置又はモータ制御方法を提供することである。
【課題を解決するための手段】
【０００７】
本発明は、トルク指令値に基づく基本電流指令値を増幅させることで、モータのロータ磁束応答の遅れを補償し、補償後電流指令値を第１電流制限値で制限し、電流増幅指令値と第１制限後電流指令値に基づき、電流増幅指令値の補償値を演算し、電流増幅指令値と補償値とを加算することで、補償後電流指令値を演算し、電流増幅指令値のうち、第１電流制限値により制限を受けた分の指令値を補償値として演算することによって上記課題を解決する。
【発明の効果】
【０００８】
本発明は、ロータ磁束応答の遅れを補償するための電流増幅指令値に対して電流制限値で制限された場合には、制限を受けた分の電流指令値を補償値として電流増幅指令値に加算することで、電流増幅指令値が電流制限値で制限されない値となった後に補償値により当該電流増幅指令値が補償されるため、トルクの応答性を改善することができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施形態に係る電動車両システムのブロック図である。
【図２】図１のモータトルク制御部で参照されるマップを説明するためのグラフであって、アクセル開度毎に設定された、モータ回転数とトルク指令値の相関性を示すグラフである。
【図３】図１の電流制御部のブロック図である。
【図４】図３の電流指令値演算器のブロック図である。
【図５】図４の励磁電流補償制御部のブロック図である。
【図６】図４のトルク電流補償制御部のブロック図である。
【図７】図１のモータコントローラの制御手順を示すフローチャートである。
【図８】図７のステップＳ４の制御手順を示すフローチャートである。
【図９】図８のステップＳ４５の制御手順を示すフローチャートである。
【図１０】比較例に係るモータ制御装置で制御されたモータのトルク応答を示すグラフである。
【図１１】本発明に係るモータ制御装置で制御されたモータのトルク応答を示すグラフである。
【図１２】本発明の他の実施形態に係るモータ制御装置の励磁電流補償制御部のブロック図である。
【図１３】本発明の他の実施形態に係るモータ制御装置のトルク電流補償制御部のブロック図である。
【図１４】本発明の他の実施形態に係るモータ制御装置の励磁電流補償制御部のブロック図である。
【図１５】本発明の他の実施形態に係るモータ制御装置のトルク電流補償制御部のブロック図である。
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態を図面に基づいて説明する。
【００１１】
《第１実施形態》
図１は、本発明の実施形態に係るモータ制御装置を搭載した電動車両システムの構成を示すブロック図である。以下、本例のモータ制御装置を電気自動車に適用した例を挙げて説明するが、本例のモータ制御装置は、例えばハイブリッド自動車（ＨＥＶ）等の電気自動車以外の車両にも適用可能である。
【００１２】
図１に示すように、本例のモータ制御装置を含む車両は、バッテリ１、インバータ２、モータ３、減速機４、ドライブシャフト（駆動軸）５、駆動輪６、７、電圧センサ８、電流センサ９、回転センサ１０、及びモータコントローラ２０を備えている。
【００１３】
バッテリ１は、車両の動力源であって、複数の二次電池を直列又は並列に接続することで構成されている。インバータ２は、ＩＧＢＴやＭＯＳＦＥＴ等の複数スイッチング素子を各相毎に２個接続した電力変換回路を有している。インバータ２は、モータコントローラ２０からの駆動信号により、当該スイッチング素子のオン、オフを切り替えることで、バッテリ１から出力される直流電力を交流電力に変換しモータ３に出力し、モータ３に対して所望の電流を流しモータ３を駆動させる。またインバータ２は、モータ３の回生により出力された交流電力を逆変換して、バッテリ１に出力する。
【００１４】
モータ３は、車両の駆動源であって、減速機４及びドライブシャフト５を介して駆動輪６、７に駆動力を伝達するための誘導モータである。モータ３は、車両の走行時に、駆動輪６、７に連れ回されて回転し、回生の駆動力を発生することで、車両の運動エネルギーを電気エネルギーとして回収する。これにより、バッテリ１は、モータ３の力行により放電され、モータ３の回生により充電される。
【００１５】
電圧センサ８は、バッテリ１の電圧を検出するセンサであり、バッテリ１とインバータ２の間に接続されている。電圧センサ８の検出電圧は、モータコントローラ２０に出力される。電流センサ９はモータ３の電流を検出するためのセンサであり、インバータ２とモータ３との間に接続されている。電流センサ９の検出電流は、モータコントローラ２０に出力される。回転センサ１０は、モータ３の回転数を検出するためのセンサであり、レゾルバ等で構成されている。回転センサ１０の検出値はモータコントローラ２０に出力される。
【００１６】
モータコントローラ２０は、車両の車速（Ｖ）、アクセル開度（ＡＰＯ）、モータ３の回転子位相（θｒｅ）、モータの電流、バッテリ１の電圧等に基づき、インバータ２を動作するためのＰＷＭ信号を生成し、インバータ２を動作させるドライブ回路（図示しない）に出力する。そして、当該ドライブ回路が、ＰＷＭ制御信号に基づき、インバータ２のスイッチング素子の駆動信号を制して、インバータ２に出力する。これにより、モータコントローラ２０は、インバータ２を動作させることで、モータ３を駆動させている。
【００１７】
モータコントローラ２０は、モータ３を制御するコントローラである。また、モータコントローラ２０は、モータトルク制御部２１、制振制御部２２及び電流制御部２３を有している。
【００１８】
モータトルク制御部２１は、モータコントローラ２０に入力される車両変数を示す車両情報の信号に基づき、ユーザの操作による要求トルク又はシステム上の要求トルクを、モータ３から出力させるためにトルク指令値（Ｔｍ１＊）を算出し、制振制御部２２に出力する。
【００１９】
モータトルク制御部２１には、図２の関係を示すトルクマップが予め記憶されている。図２は、アクセル開度毎に設定された、モータ回転数と基本目標トルク指令値の相関性を示すグラフである。トルクマップは、アクセル開度毎で、モータ３の回転数に対するトルク指令値の関係により予め設定されている。トルクマップは、アクセル開度及びモータ回転数に対して、モータ３から効率よくトルクを出力させるためのトルク指令値で設定されている。
【００２０】
モータ回転数は、回転センサ１０の検出値に基づき算出される。アクセル開度は、図示しないアクセル開度センサにより検出される。そして、モータトルク制御部２１は、トルクマップを参照し、入力されたアクセル開度（ＡＰＯ）及びモータ回転数に対応する基本目標トルク指令値（Ｔｍ１＊）を演算し、制振制御部２２に出力する。シフトレバーが、パーキングの位置及びニュートラルの位置に設定された場合に、基本目標トルク指令値（Ｔｍ１＊）はゼロになる。
【００２１】
なお、基本目標トルク指令値（Ｔｍ１＊）は、アクセル開度及びモータ回転数のみに限らず、例えば車速等を加えて演算してもよい。車速Ｖ［ｋｍ／ｈ］は、メータやブレーキコントローラ等の他のコントローラより通信にて取得するか、回転子機械角速度（ωｒｍ）にタイヤ動半径（Ｒ）を掛け、ファイナルギヤのギヤ比で割ることにより車両速度ｖ［ｍ／ｓ］を求め、［ｍ／ｓ］から［ｋｍ／ｈ］への単位変換係数（３６００／１０００）を乗ずることで求めればよい。
【００２２】
制振制御部２２は、基本モータトルク指令値Ｔｍ１＊及びモータ回転数Ｎｍを入力として、駆動軸トルクの応答を犠牲にすることなく、ドライブシャフト５（駆動軸）ねじり振動等により生じる駆動力伝達系の振動を抑制する制振制御後トルク指令値Ｔｍ２＊を演算する。制振制御部２２の詳細な制御は、例えば、日本国特許出願公開公報（特開２００１−４５６１３号公報及び特開２００３−９５５９号公報）を参照されたい。そして、制振制御部２２は、基本目標トルク指令値（Ｔｍ１＊）に基づき演算した、抑制する制振制御後トルク指令値Ｔｍ２＊を電流制御部２３に出力する。なお、制振制御部２２は、必ずしも必要ない。
【００２３】
図１に戻り、電流制御部２３は、トルク指令値（Ｔｍ２＊）に基づき、モータ３に流れる電流を制御する制御部である。以下、図３を用いて、電流制御部２３の構成について説明する。図３は、電流制御部２３及びバッテリ１等のブロック図である。
【００２４】
電流制御部２３は、電流指令値演算器３０、減算器４１、電流ＦＢ制御器４２、座標変換器４３、ＰＷＭ変換器４４、ＡＤ変換器４５、座標変換器４６、パルスカウンタ４７、角速度演算器４８、すべり角速度演算器４９、電源位相演算器５０及びモータ回転数演算器５１を有している。
【００２５】
電流指令値演算器３０には、制振制御部２２から入力される制振制御後トルク指令値（Ｔｍ２＊）と、モータ回転数演算器５１から入力されるモータ３の回転数（Ｎｍ）、及び、電圧センサ８の検出電圧（Ｖｄｃ）が入力され、γδ軸電流指令値（Ｉγ＊、Ｉδ＊）を演算し出力する。ここで、γδ軸は、回転座標系の成分を示している。
【００２６】
減算器４１は、γδ軸電流指令値（Ｉγ＊、Ｉδ＊）とγδ軸電流（Ｉγ＊、Ｉδ＊）との偏差を算出し、電流ＦＢ制御器４２に出力する。電流ＦＢ制御器４２は、γ軸電流（Ｉγ）及びδ軸電流（Ｉδ）を、γ軸電流指令値（Ｉγ）及びδ軸電流指令値（Ｉδ＊）にそれぞれ一致させるようフィードバック制御する制御器である。電流ＦＢ制御器４２は、γδ軸電流指令値（Ｉγ＊、Ｉδ＊）に対してγδ軸電流（Ｉγ、Ｉδ）を、定常的な偏差なく所定の応答性で追随させるよう制御演算を行い、γδ軸の電圧指令値（ｖγ＊、ｖδ＊）を、座標変換器４３に出力する。なお、γ軸の電流はモータ３の励磁電流を、σ軸の電流はモータ３のトルク電流を表す。また、減算器４１及び電流ＦＢ制御器４２の制御に非干渉制御を加えてもよい。
【００２７】
座標変換器４３は、γδ軸電圧指令値（ｖγ＊、ｖδ＊）及び電源位相演算器５０で演算される電源位相（θ）を入力として、γδ軸電圧指令値（ｖγ＊、ｖδ＊）を固定座標系のｕ、ｖ、ｗ軸の電圧指令値（ｖｕ＊、ｖｖ＊、ｖｗ＊）に変換し、ＰＷＭ変換器４４に出力する。
【００２８】
ＰＷＭ変換器４４は、入力される電圧指令値（Ｖｕ＊、Ｖｖ＊、Ｖｗ＊）に基づき、インバータ２のスイッチング素子のスイッチング信号（Ｄ＊ｕｕ、Ｄ＊ｕｌ、Ｄ＊ｖｕ、Ｄ＊ｖｌ、Ｄ＊ｗｕ、Ｄ＊ｗｌ）を生成し、インバータ２に出力する。
【００２９】
Ａ／Ｄ変換器４５は、電流センサ９の検出値である相電流（Ｉｕ、Ｉｖ）をサンプリングし、サンプリングされた相電流（Ｉｕｓ、Ｉｖｓ）を座標変換器４６に出力する。三相の電流値の合計がゼロになることから、ｗ相の電流は、電流センサ９により検出されず、代わりに、座標変換器４６は、入力された相電流（Ｉｕｓ、Ｉｖｓ）に基づき、ｗ相の相電流（Ｉｗｓ）を算出する。なお、ｗ相の相電流について、ｗ相に電流センサ９を設け、当該電流センサ９により検出してもよい。
【００３０】
座標変換器４６は、３相２相変換を行う変換器であり、電源位相（θ）を用いて、固定座標系の相電流（Ｉｕｓ、Ｉｖｓ、Ｉｗｓ）を回転座標系のγδ軸電流（Ｉγｓ、Ｉδｓ）に変換し、減算器４１に出力する。これにより、電流センサ９により検出される電流値がフィードバックされる。
【００３１】
パルスカウンタ４７は、回転センサ１０から出力されるパルスをカウントすることで、モータ３の回転子の位置情報である回転子位相（θｒｅ）（電気角）を得て、角速度演算器４８に出力する。
【００３２】
角速度演算器４８は、回転子位相（θｒｅ）を微分演算することで、回転子角速度（ωｒｅ）（電気角）を演算し、電源位相演算器５０に出力する。また、角速度演算器４８は、演算した回転子角速度（ωｒｅ)をモータ３の極対数pで割り、モータの機械的な角速度である回転子機械角速度（ωｒｍ）［ｒａｄ／ｓ］を演算し、モータ回転数演算器５１に出力する。
【００３３】
すべり角速度演算器４９は、励磁電流指令値（Ｉγ*）に対して、ロータ磁束応答遅れを考慮したロータ磁束推定値（φｅｓｔ）を、以下の式（１）により演算する。
【数１】
0005862832.tif 000002
ただし、Ｍは相互インダクタンスを、τφはロータ磁束の応答時定数である。なお、τφはＬｒ／Ｒｒで表され、Ｌｒはロータの自己インダクタンスを、Ｒｒはロータ抵抗を示す。
【００３４】
また、すべり角速度演算器４９は、式（２）で表されるように、トルク電流指令値（Ｉδ＊）と式（１）から求めたロータ磁束推定値（φｅｓｔ）との比に、モータの特性で決まる定数を除算することで、すべり角速度（ωｓｅ）を演算する。
【数２】
0005862832.tif 000003
なお、これらＭ、τφ、Ｍ・Ｒｒ／Ｌｒ等の値は、ロータ温度や電流値、トルク指令値に対して予め計算または実験により算出した値をテーブルに格納して使用してもよい。
【００３５】
そして、すべり角速度演算器４９は、上記により演算したすべり角速度（ωｓｅ）を電源位相演算器５０に出力する。このように、すべり角速度（ωｓｅ）を設定することで、出力トルクはトルク電流とロータ磁束の積で扱えるようになる。
【００３６】
電源位相演算器５０は、以下の式（３）で示されるように、回転子角速度（ωｒｅ）（電気角）に、すべり角速度（ωｓｅ）を加算しつつ、積分することで、電源位相（θ）を演算し、座標変換器４３、４６に出力する。
【数３】
0005862832.tif 000004
【００３７】
モータ回転数演算器５１は、回転子機械角速度（ωｒｍ）に、［ｒａｄ／ｓ］から［ｒｐｍ］への単位変換するための係数（６０／２π）を乗算することで、モータ回転数（Ｎｍ）を演算し、電流指令値演算器３０に出力する。
【００３８】
次に、図４を用いて、電流指令値演算器３０の構成について説明する。図４は、電流指令値演算器３０の構成を示すブロック図である。
【００３９】
電流指令値演算器３０は、基本電流指令値演算部３１、磁束応答補償部３２、励磁電流指令値変化量演算部３３、補償判定部３４、及び補償制御部３５を有している。
【００４０】
基本電流指令値演算部３１には、制振制御後トルク指令値（Ｔｍ２＊）、バッテリ１の電圧（Ｖｄｃ）及びモータ回転数（Ｎｍ）に対する基本γδ軸電流指令値（Ｉγ０＊、Ｉδ０＊）の関係を示すマップが予め記録されている。基本γδ軸電流指令値（Ｉγ０＊、Ｉδ０＊）は、制振制御後トルク指令値（Ｔｍ２＊）、バッテリ１の電圧（Ｖｄｃ）及びモータ回転数（Ｎｍ）に対して、インバータ２及びモータ３の総合効率を最適化させる電流指令値であり、実験又は計算で予め設定されている値である。そして、基本電流指令値演算部３１は、当該マップを参照して、制振制御後トルク指令値（Ｔｍ２＊）、バッテリ１の電圧（Ｖｄｃ）及びモータ回転数（Ｎｍ）に対応する基本γδ軸電流指令値（Ｉγ０＊、Ｉδ０＊）を演算し、磁束応答補償部３２及び励磁電流指令値変化量演算部３３に出力する。
【００４１】
磁束応答補償部３２は、ロータ磁束遅れを補償するために、遅れ分の位相を進ませることで、基本電流指令値を増幅するよう、磁束補償γ軸電流指令値（Ｉγ１＊）又は磁束補償σ軸電流指令値（Ｉσ１＊）の少なくとも何れか一方の電流指令値を演算する。
【００４２】
一般に、ロータ磁束の応答は、トルク電流の応答に比べて一桁以上、遅い。そして、モータ３の出力は、ロータ磁束とステータのトルク電流との積と比例する。そのため、ロータ磁束の応答遅れによって、トルク応答が遅れてしまう。磁束応答補償部３２は、このようなトルク応答の遅れを補償するよう、電流指令値を補償している。これにより、モータ３には、基本電流指令値が増加することで、過渡的に大きな励磁電流を流すことができるため、ロータ磁束応答を改善しつつ、トルク応答を改善することができる。
【００４３】
磁束応答補償部３２は、以下の式（４）で示されるように、基本γ軸電流指令値（Ｉγ０＊）に、ステータ電流の応答時定数（τｉ）及びロータ磁束の応答時定数（τφ）を含む係数を乗ずることで、磁束補償γ軸電流指令値（Ｉγ１＊）を演算し、補償制御部３５に出力する。
【数４】
0005862832.tif 000005
【００４４】
ステータ電流の応答時定数（τｉ）とロータ磁束の応答時定数（τφ）との間には、τｉ＜τφの関係が成立する。そのため、磁束応答補償部３２は、式（４）を用いて、磁束補償γ軸電流指令値（Ｉγ１＊）を演算することで、位相進み補償器として機能する。
【００４５】
また、磁束応答補償部３２は、トルク電流の応答を改善する際には、基本δ軸電流指令値（Ｉδ０＊）に、ステータ電流の応答時定数（τｉ）及びロータ磁束の応答時定数（τφ）を含む関数を乗ずることで、磁束補償δ軸電流指令値（Ｉδ１＊）を演算し、補償制御部３５に出力する。磁束補償δ軸電流指令値（Ｉδ１＊）の演算式は、以下の式（５）で表される。
【数５】
0005862832.tif 000006
【００４６】
励磁電流指令値変化量演算部３３は、以下の式（６）で示される近似式を用いて、入力される基本γ軸電流指令値（Ｉγ０＊）から、基本γ軸電流指令値の変化量（ｄＩγ０＊）を演算し、補償判定部３４に出力する。
【数６】
0005862832.tif 000007
ただし、τ０は、基本γ軸電流指令値（Ｉγ０＊）の変化を、どのぐらいの長さの時間で近似的に演算するかを示す設定値であって、設計または実験により予め設定されている。
【００４７】
なお、変化量（ｄＩγ０＊）は、前回の演算時の基本γ軸電流指令値（Ｉγ０＊）と、今回の演算時の基本γ軸電流指令値（Ｉγ０＊）との差分をとってもよい。モータコントローラ２０に含まれる、電流指令値演算器３０等の演算部は、所定の制御周期で、指令値等を演算している。前回の演算値の指令値は、今回の演算値の指令値に対して、所定の制御周期分だけ前のタイミングで演算された指令値を示す。
【００４８】
補償判定部３４は、基本γ軸電流指令値の変化量（ｄＩγ０＊）と判定閾値（Ｉ０）とを比較し、その比較結果に基づいて、励磁電流の追加補償を行うか、トルク電流の追加補償を行うかを判定する。
【００４９】
本例は、磁束応答補償部３２で、励磁電流又はトルク電流を補償しつつ、補償制御部３５で追加補償を行っている。そして、補償制御部３５は、励磁電流指令値の変化量に応じて、トルク高応答化のための補償を、励磁電流に行うか、トルク電流に行うか、選択的に行っている。そこで、補償判定部３４は、補償制御部３５における補償対象を選択するために、変化量（ｄＩγ０＊）と判定閾値（Ｉ０）との比較を行い、その比較結果を補償制御部３５に出力する。
【００５０】
判定閾値（Ｉ０）は、励磁電流に追加補償を行うか、トルク電流に追加補償するかを判定するための閾値であって、設計または実験により予め設定されている閾値である。
【００５１】
基本γ軸電流指令値の変化量（ｄＩγ０＊）が判定閾値（Ｉ０）より大きい場合には、補償判定部３４は、励磁電流が変化しており、励磁電流の応答速度を高めるために、励磁電流の追加補償を許可する旨の信号を、補償制御部３５に送信する。
【００５２】
一方、基本γ軸電流指令値の変化量（ｄＩγ０＊）が判定閾値（Ｉ０）以下である場合には、補償判定部３４は、励磁電流の変化量は小さく、励磁電流の応答速度を高める必要はないため、トルク電流の追加補償を許可する旨の信号を、補償制御部３５に送信する。
【００５３】
補償制御部３５は、トルクの応答速度を高めるために、補償判定部３４の判定結果に基づき、励磁電流の追加補償及びトルク電流の追加補償を選択的に行う制御部であって、励磁電流補償制御部１００及びトルク電流補償制御部２００を備えている。
【００５４】
補償判定部３４で励磁電流の追加補償が許可された場合には、補償制御部３５は、励磁電流補償制御部１００の制御により、トルクの応答速度を高める制御を行う。励磁電流補償制御部１００は、磁束応答補償部３２で補償された磁束補償γ軸電流指令値（Ｉγ１＊）、基本δ軸電流指令値（Ｉδ０＊）、及び制振制御後トルク指令値（Ｔｍ２＊）に基づき、γδ軸電流指令値（Ｉγ＊、Ｉδ＊）を演算し、減算器４１及びすべり角速度演算器４９に出力する。
【００５５】
補償判定部３４でトルク電流の追加補償が許可された場合には、補償制御部３５は、トルク電流補償制御部２００の制御により、トルクの応答速度を高める制御を行う。トルク電流補償制御部２００は、磁束応答補償部３２で補償された磁束補償δ軸電流指令値（Ｉδ１＊）、基本γ軸電流指令値（Ｉγ０＊）、及び制振制御後トルク指令値（Ｔｍ２＊）に基づき、γδ軸電流指令値（Ｉγ＊、Ｉδ＊）を演算し、減算器４１及びすべり角速度演算器４９に出力する。
【００５６】
次に、図５を用いて、励磁電流補償制御部１００の詳細な構成を説明する。図５は、磁束応答補償部３２及び励磁電流補償制御部１００の構成を示すブロック図である。
【００５７】
励磁電流補償制御部１００は、トルク電流制限部１０１、ロータ磁束推定部１０２、出力トルク推定部１０３、理想応答トルク演算部１０４、トルク偏差演算部１０５、積分リセット判定部１０６、励磁電流指令値偏差演算部１０７、追加補償値演算部１０８、加算器１０９、トルク電流推定部１１０、励磁電流制限値演算部１１１、及び励磁電流制限部１１２を有している。
【００５８】
トルク電流制限部１０１は、入力される基本δ軸電流指令値（Ｉδ０＊）に、電流制限値（±Imax＿δ）で制限をかけることで、δ軸電流指令値（Ｉδ）を演算する。電流制限値（±Imax＿δ）は上限値及び下限値で規定され、設計または実験により予め設定されている閾値である。
【００５９】
トルク電流制限部１０１は、基本δ軸電流指令値（Ｉδ０＊）が上限の電流制限値（＋Imax＿δ）より高い場合には、電流制限値（＋Imax＿δ）をδ軸電流指令値（Ｉδ）として演算する。トルク電流制限部１０１は、基本δ軸電流指令値（Ｉδ０＊）が下限の電流制限値（−Imax＿δ）より低い場合には、電流制限値（−Imax＿δ）をδ軸電流指令値（Ｉδ＊）として演算する。また、トルク電流制限部１０１は、基本δ軸電流指令値（Ｉδ０＊）が下限の電流制限値（−Imax＿δ）より高く、かつ、上限の電流制限値（＋Imax＿δ）より低い場合には、制限値による制限はなく、基本δ軸電流指令値（Ｉδ０＊）をδ軸電流指令値（Ｉδ＊）として演算する。
【００６０】
トルク電流制限部１０１は、演算したδ軸電流指令値（Ｉδ）を、出力トルク推定部１０３、トルク電流推定部１１０、及び減算器４１等に出力する。
【００６１】
ロータ磁束推定部１０２は、式（７）で示されるように、励磁電流制限部１１２で演算されたγ軸電流指令値（Ｉγ＊）の前回値（Ｉγ＿Ｚ＊）に、相互インダクタンスＭ及びロータ磁束の応答時定数（τφ）を含む関数を乗ずることで、ロータ磁束推定値（φｅｓｔ＿ｚ）を演算し、出力トルク推定部１０３に出力する。
【数７】
0005862832.tif 000008
【００６２】
ロータ磁束の応答時定数（τφ）は、Ｌｒ／Ｒｒで表され、Ｌｒはロータの自己インダクタンスを示し、Ｒｒはロータ抵抗を示す。Ｌｒ、Ｒｒは計算又は実験により予め設定される値である。
【００６３】
出力トルク推定部１０３は、数（８）で示されるように、ロータ磁束推定値（φｅｓｔ＿ｚ）、δ軸電流指令値（Ｉδ）、及びトルク定数（ＫＴｅ）を乗ずることで、出力トルク推定値（Ｔｍ＿ｅｓｔ）を演算し、トルク偏差演算部１０５に出力する。
【数８】
0005862832.tif 000009
ただし、トルク定数（ＫＴｅ）は、ｐ・Ｍ／Ｌｒで表され、ｐは極対数を示し、Ｍは相互インダクタンスを示し、Ｌｒはロータの自己インダクタンスを示す。ｐ、Ｍ、及びＬｒは計算又は実験により予め設定される値である。
【００６４】
理想応答トルク演算部１０４は、式（９）で示されるように、制振制御後トルク指令値（Ｔｍ２＊）に、時定数（τｍ）を含む関数を乗ずることで、トルク理想応答値（Ｔｍ＿ｒｅｆ）を演算し、トルク偏差演算部１０５に出力する。
【数９】
0005862832.tif 000010
ただし、時定数（τｍ）は、モータトルクの理想応答を決める時定数である。
【００６５】
出力トルクは、式（８）を参照し、ロータ磁束と電流応答値との積で表されるため非線形な値であるが、本例では、式（９）に示すように、一次遅れの応答に近似させた値で、理想応答における出力トルク（Ｔｍ＿ｒｅｆ）を演算している。
【００６６】
トルク偏差演算部１０５は、式（１０）で示されるように、出力トルク推定部（Ｔｍ＿ｅｓｔ）とトルク理想応答値（Ｔｍ＿ｒｅｆ）との差分を演算することで、モータトルク偏差（ΔＴｍ）を演算し、積分リセット判定部１０６に出力する。
【数１０】
0005862832.tif 000011
【００６７】
積分リセット判定部１０６は、モータトルク偏差（ΔＴｍ）に応じて、追加補償値演算部１０８の補償値をリセットするか否かを判定し、その判定結果を示すフラグ（ｆｌｇ＿ＩＲＳＴ）を、追加補償値演算部１０８に出力する。判定及びフラグの条件は、以下のように示される。
【数１１】
0005862832.tif 000012
なお、リセット判定閾値（ｄＴｍ０）は、出力トルクのオーバーシュートを抑制するように、予め設定された閾値であって、設計または実験より設定される値である。なお、出力トルクのオーバーシュートについては、後述する。
【００６８】
モータトルク偏差（ΔＴｍ）がリセット判定閾値（ｄＴｍ０）以上である場合には、補償値をリセットしないように、積分リセット判定部１０６は、フラグ（ｆｌｇ＿ＩＲＳＴ）を「０」に設定する。モータトルク偏差（ΔＴｍ）がリセット判定閾値（ｄＴｍ０）未満である場合には、補償値をリセットするように、積分リセット判定部１０６は、フラグ（ｆｌｇ＿ＩＲＳＴ）を「１」に設定する。
【００６９】
励磁電流指令値偏差演算部１０７は、式（１１）で示されるように、磁束補償γ軸電流指令値（Ｉγ１＊）とγ軸電流指令値の前回値（Ｉγ＿Ｚ＊）との差分をとることで、γ軸電流指令値偏差（ΔＩγ＊）を演算し、追加補償値演算部１０８に出力する。
【数１２】
0005862832.tif 000013
【００７０】
追加補償値演算部１０８は、フラグ（ｆｌｇ＿ＩＲＳＴ）の状態に応じて、式（１２）及び式（１３）で示されるように、γ軸電流指令値偏差（ΔＩγ＊）を積分し、所定のゲインを乗ずることで、補償値（Ｉγ＿ＦＢ）を演算し、加算器１０９に出力する。
【数１３】
0005862832.tif 000014
【数１４】
0005862832.tif 000015
【００７１】
ただし、１／Ｔｉは、積分値に対して所定の応答で補償値を放出するように設定された積分ゲインであり、設計または実験により予め設定されている値である。
【００７２】
加算器１０９は、式（１４）で示されるように、磁束補償γ軸電流指令値（Ｉγ１＊）と補償値（Ｉγ＿ＦＢ）とを加算することで、電流制限補正前のγ軸電流指令値（Ｉγ２＊）を演算し、励磁電流制限部１１２に出力する。
【数１５】
0005862832.tif 000016
【００７３】
このとき、加算器１０９に入力される指令値のうち、磁束応答補償部３２で補償された指令値は、磁束補償γ軸電流指令値（Ｉγ１＊）である。上述したとおり、図５に示す制御構成での補償制御は、補償判定部３４の判定結果により、励磁電流の応答速度を高める制御である。そのため、加算器１０９には、磁束応答補償部３２の補償後の指令値のうち、励磁電流指令値が入力される。一方、トルク電流側の指令値には、応答速度を速めるための補償は施されず、励磁電流の制限値の設定に用いられる。
【００７４】
トルク電流推定部１１０は、式（１５）で示されるように、δ軸電流指令値（Ｉδ＊）に、ステータ電流の応答時定数（τｉ）を含む関数を乗ずることで、δ軸電流推定値（Ｉδ＿ｅｓｔ＊）を演算し、励磁電流制限値演算部１１１に出力する。
【数１６】
0005862832.tif 000017
【００７５】
励磁電流制限値演算部１１１は、式（１６）で示されるように、最大電流制限値（Ｉｍａｘ）及びδ軸電流推定値（Ｉδ＿ｅｓｔ＊）に基づき、γ軸電流制限値（Ｉγｌｉｍ）を演算し、励磁電流制限部１１２に出力する。
【数１７】
0005862832.tif 000018
ただし、最大電流制限値（Ｉｍａｘ）は、モータ３の定格電流を示す電流値であって、設計段階で予め決まっている値である。
【００７６】
励磁電流制限部１１２は、入力されるγ軸電流指令値（Ｉγ２＊）に、γ軸電流制限値（±Ｉγｌｉｍ）で制限をかけることで、γ軸電流指令値（Ｉγ＊）を演算し、ロータ磁束推定部１０２及び減算器４１等の演算器に出力する。
【００７７】
励磁電流制限部１１２は、γ軸電流指令値（Ｉγ２＊）が上限のγ軸電流制限値（Ｉγｌｉｍ）より高い場合には、上限のγ軸電流制限値（＋Ｉγｌｉｍ）をγ軸電流指令値（Ｉγ＊）として演算する。トルク電流制限部１０１は、γ軸電流指令値（Ｉγ２＊）が下限のγ軸電流制限値（−Ｉγｌｉｍ）より低い場合には、電流制限値（−Imax＿δ）をγ軸電流指令値（Ｉγ＊）として演算する。また、トルク電流制限部１０１は、γ軸電流指令値（Ｉγ２＊）が下限の電流制限値（−Ｉγｌｉｍ）より高く、かつ、上限の電流制限値（＋Ｉγｌｉｍ）より低い場合には、制限値による制限はなく、γ軸電流指令値（Ｉγ２＊）をγ軸電流指令値（Ｉγ＊）としてとして演算する。
【００７８】
次に、図６を用いて、トルク電流補償制御部２００の詳細な構成を説明する。図６は、磁束応答補償部３２及びトルク電流補償制御部１００の構成を示すブロック図である。
【００７９】
トルク電流補償制御部２００は、励磁電流制限部２０１、ロータ磁束推定部２０２、出力トルク推定部２０３、理想応答トルク演算部２０４、トルク偏差演算部２０５、積分リセット判定部２０６、トルク電流指令値偏差演算部２０７、追加補償値演算部２０８、加算器２０９、励磁電流推定部２１０、トルク電流制限値演算部２１１、及びトルク電流制限部２１２を有している。
【００８０】
励磁電流制限部２０１は、入力される基本γ軸電流指令値（Ｉγ０＊）に、電流制限値（±Imax＿γ）で制限をかけることで、γ軸電流指令値（Ｉγ０）を演算する。電流制限値（±Imax＿γ）は上限値及び下限値で規定され、設計または実験により予め設定されている閾値である。
【００８１】
励磁電流制限部２０１は、演算したγ軸電流指令値（Ｉγ０）を、出力トルク推定部２０３、励磁電流推定部２１０、及び減算器４１等に出力する。
【００８２】
ロータ磁束推定部２０２は、ロータ磁束推定部１０２と同様に、γ軸電流指令値（Ｉγ＊）に基づき、ロータ磁束推定値（φｅｓｔ＿ｚ）を演算し、出力トルク推定部２０３に出力する。
【００８３】
出力トルク推定部２０３は、出力トルク推定部１０３と同様に、ロータ磁束推定値（φｅｓｔ＿ｚ）及びδ軸電流指令値（Ｉδ）に基づき出力トルク推定値（Ｔｍ＿ｅｓｔ）を演算し、トルク偏差演算部２０５に出力する。
【００８４】
理想応答トルク演算部２０４は、理想応答トルク演算部１０４と同様に、制振制御後トルク指令値（Ｔｍ２＊）に基づきトルク理想応答値（Ｔｍ＿ｒｅｆ）を演算し、トルク偏差演算部２０５に出力する。
【００８５】
トルク偏差演算部２０５は、トルク偏差演算部１０５と同様に、出力トルク推定部（Ｔｍ＿ｅｓｔ）及びトルク理想応答値（Ｔｍ＿ｒｅｆ）に基づき、モータトルク偏差（ΔＴｍ）を演算し、積分リセット判定部２０６に出力する。
【００８６】
積分リセット判定部２０６は、積分リセット判定部１０６と同様に、モータトルク偏差（ΔＴｍ）に応じて、追加補償値演算部２０８の補償値をリセットするか否かを判定し、その判定結果を示すフラグ（ｆｌｇ＿ＩＲＳＴ）を、追加補償演算部値２０８に出力する。
【００８７】
トルク電流指令値偏差演算部２０７は、式（１７）で示されるように、磁束補償δ軸電流指令値（Ｉδ１＊）とδ軸電流指令値の前回値（Ｉδ＿Ｚ＊）との差分をとることで、δ軸電流指令値偏差（ΔＩδ＊）を演算し、追加補償値演算部２０８に出力する。
【数１８】
0005862832.tif 000019
【００８８】
追加補償値演算部２０８は、フラグ（ｆｌｇ＿ＩＲＳＴ）の状態に応じて、式（１８）及び式（１９）で示されるように、δ軸電流指令値偏差（ΔＩδ＊）を積分し、所定のゲインを乗ずることで、補償値（Ｉδ＿ＦＢ）を演算し、加算器２０９に出力する。
【数１９】
0005862832.tif 000020
【数２０】
0005862832.tif 000021
【００８９】
ただし、１／Ｔｉは、積分値に対して所定の応答で補償値を放出するように設定された積分ゲインであり、設計または実験により予め設定されている値である。
【００９０】
加算器２０９は、式（２０）で示されるように、磁束補償δ軸電流指令値（Ｉδ１＊）と補償値（Ｉδ＿ＦＢ）とを加算することで、電流制限補正前のδ軸電流指令値（Ｉδ２＊）を演算し、トルク電流制限部２１２に出力する。
【数２１】
0005862832.tif 000022
【００９１】
このとき、加算器２０９に入力される指令値のうち、磁束応答補償部３２で補償された指令値は、磁束補償δ軸電流指令値である。上述したとおり、図６に示す制御構成での補償制御は、補償判定部３４の判定結果により、トルク電流の応答速度を高める制御である。そのため、加算器２０９には、磁束応答補償部３２の補償後の指令値のうち、トルク電流指令値が入力される。一方、励磁電流側の指令値には、応答速度を速めるための補償は施されず、トルク電流の制限値の設定に用いられる。
【００９２】
励磁電流推定部２１０は、式（２１）で示されるように、基本γ軸電流指令値（Ｉγ０＊）に、ステータ電流の応答時定数（τｉ）を含む関数を乗ずることで、γ軸電流推定値（Ｉγ＿ｅｓｔ＊）を演算し、トルク電流制限値演算部２１１に出力する。
【数２２】
0005862832.tif 000023
【００９３】
時定数（τｉ）の設定は、式（１５）と同様である。なお、本制御処理は、γ軸電流指令値が一定である場合には、省略してもよい。
【００９４】
トルク電流制限値演算部２１１は、式（２２）で示されるように、最大電流制限値（Ｉｍａｘ）及びγ軸電流推定値（Ｉγ＿ｅｓｔ＊）に基づき、δ軸電流制限値（Ｉδｌｉｍ）を演算し、トルク電流制限部２１２に出力する。
【数２３】
0005862832.tif 000024
【００９５】
トルク電流制限部２１２は、入力されるδ軸電流指令値（Ｉδ２＊）に、δ軸電流制限値（±Ｉδｌｉｍ）で制限をかけることで、δ軸電流指令値（Ｉδ＊）を演算し、ロータ磁束推定部２０２及び減算器４１等の演算器に出力する。
【００９６】
次に、補償制御部３５の制御のうち、励磁電流補償制御部１００の制御について、図５を用いて説明する。
【００９７】
補償判定部３４により、基本γ軸電流指令値の変化量（ｄＩγ０＊）が判定閾値（Ｉ０）より大きく、励磁電流の変化が大きいと判定された場合には、磁束応答補償部３２は、励磁電流の応答速度を速めるために、励磁電流指令値の位相を進ませるように、励磁電流指令値を増幅させることで、励磁電流指令値を補償する。
【００９８】
仮に（本例とは異なり）、増幅された励磁電流指令値に対して、励磁電流を最大電流制限値まで流した場合には、進み補償により過渡的に大きな励磁電流を流すことになる。しかしながら、モータへの過電流に対する保護の観点から、モータには最大電流制限値を超える電流を流すことはできない。励磁電流を最大電流制限値まで流した場合には、全ての電流が励磁電流に流れてしまい、トルク電流を流すことができなくなってしまう。その結果として、トルクを発生することできず、かえってトルク応答が遅れてしまう。
【００９９】
そのため、本例において、励磁電流補償制御部１００は、基本δ軸電流指令値（Ｉδ０＊）に基づき、トルク電流を推定し（δ軸電流推定値（Ｉδ＿ｅｓｔ＊）に相当）、推定されたトルク電流値に基づき、γ軸電流制限値（Ｉγｌｉｍ）を演算している。本制御は、図５の制御ブロックのうち、トルク電流推定部１１０及び励磁電流制限値演算部１１１の制御に相当する。
【０１００】
これにより、本例は、トルク電流がゼロにならないよう、増幅された励磁電流指令値に制限を加えることができるため、出力トルクがゼロになる無駄時間の発生を防ぐことができる。
【０１０１】
磁束応答補償部３２で増幅されたγ軸電流指令値（Ｉγ２＊）は、励磁電流制限部１１２で制限を受ける。増幅されたγ軸電流指令値（Ｉγ２＊）のうち、γ軸電流制限値（Ｉγｌｉｍ）で制限を受けた分の指令値は、励磁電流の補償に用いられていない。その一方で、γ軸電流制限値（Ｉγｌｉｍ）を超える励磁電流指令値で、モータ３を制御することは、上記の通り、トルク電流がゼロになるおそれがある。
【０１０２】
そのため、励磁電流補償制御部１００は、増幅されたγ軸電流指令値（Ｉγ２＊）のうち、γ軸電流制限値（Ｉγｌｉｍ）で制限を受けた分の指令値に基づき補償値を演算し、フィードバックをかけて、γ軸電流指令値（Ｉγ１＊）に加算している。また、励磁電流補償制御部１００は、制限を受けた分の指令値、すなわちγ軸電流指令値（Ｉγ１＊）とγ軸電流制限値（Ｉγｌｉｍ）との差分を、積分することで加算する補償値を演算している。
【０１０３】
増幅されたγ軸電流指令値（Ｉγ１＊）がγ軸電流制限値（Ｉγｌｉｍ）を超える状態が継続したとしても、γ軸電流制限値（Ｉγｌｉｍ）を超えた分の指令値は、積分により蓄積される。そして、γ軸電流指令値（Ｉγ１＊）がγ軸電流制限値（Ｉγｌｉｍ）より低くなると、蓄積されている補償値が、γ軸電流制限値（Ｉγｌｉｍ）より低いγ軸電流指令値（Ｉγ１＊）に加わる。本制御は、図５の制御ブロックのうち、励磁電流指令値偏差演算部１０７、追加補償値演算部１０８、加算器１０９、及び励磁電流制限部１１２の制御に相当する。
【０１０４】
これにより、γ軸電流指令値（Ｉγ１＊）がγ軸電流制限値（Ｉγｌｉｍ）より低くなった後（すなわち、γ軸電流指令値（Ｉγ１＊）に対する電流制限の解除後）に、電流制限により補償できなかった励磁電流の指令値分の電流を流すことができる。そして、γ軸電流指令値（Ｉγ１＊）に対する制限解除後に励磁電流が保持され、大きな励磁電流を維持することができる。その結果として、トルク応答を高めることができる。
【０１０５】
また、励磁電流補償制御部１００は、出力トルク推定値（Ｔｍ＿ｅｓｔ）とトルク理想応答値（Ｔｍ＿ｒｅｆ）と差を演算することで、モータ３の出力トルクとトルク指令値との差を演算し、当該差に基づいて、補償値をリセットするタイミングを設定している。なお、出力トルク推定値（Ｔｍ＿ｅｓｔ）が出力トルクに相当し、トルク理想応答値（Ｔｍ＿ｒｅｆ）がトルク指令値に相当する。本制御は、図５の制御ブロックのうち、ロータ磁束推定部１０２、出力トルク推定部１０３、理想応答トルク演算部１０４、トルク偏差演算部１０５、及び積分リセット判定部１０６に相当する。
【０１０６】
ここで、本例とは異なり、積分リセット判定部１０６の上記条件うち、｜ΔＴｍ｜  ＜  ｄＴｍ０の条件を満たす場合に、補償値のリセットを行わない場合について説明する。
【０１０７】
トルク理想応答値（Ｔｍ＿ｒｅｆ）に対して、出力トルク推定値（Ｔｍ＿ｅｓｔ）が小さく、モータトルク偏差（ΔＴｍ）がリセット判定閾値（ｄＴｍ０）未満となっている場合に、追加補償値演算部１０８による補償値をリセットせずに、追加補償を継続すると、モータ３はトルク理想応答値（Ｔｍ＿ｒｅｆ）に近いトルクを出力しているにもかかわらず、励磁電流は追加補償により上がり続けることになる。このとき、高トルクを定常的に出力していると、追加補償によって、出力トルクが目標トルクを超えてしまい、さらに、出力トルクのオーバーシュートが発生するおそれがある。
【０１０８】
そのため、本例において、励磁電流補償制御部１００は、このようなオーバーシュートを防ぐために、リセット判定閾値（ｄＴｍ０）を設定し、モータトルク偏差（ΔＴｍ）がリセット判定閾値未満である場合には、補償値をリセットするよう制御している。
【０１０９】
これにより、本例は、トルク指令値と出力トルクとの差が小さくなってから、補償値をゼロに収束させているため、追加補償した励磁電流の指令値を、磁束応答補償部３２で補償された指令値まで下げることができる。その結果として、実トルクのオーバーシュートを起こすことなく、実トルクをトルク指令値に一致させることができる。
【０１１０】
次に、補償制御部３５の制御のうち、トルク電流補償制御部２００の制御について、図６を用いて説明する。トルク電流補償制御部２００のトルク電流の制御は、励磁電流補償制御部１００の励磁電流の制御と同様であり、トルク電流補償制御部２００の励磁電流の制御は、励磁電流補償制御部１００のトルク電流の制御と同様である。
【０１１１】
トルク電流補償制御部２００は、基本γ軸電流指令値（Ｉγ０＊）に基づき、トルク電流を推定し（γ軸電流推定値（Ｉγ＿ｅｓｔ＊）に相当）、推定されたトルク電流値に基づき、δ軸電流制限値（Ｉδｌｉｍ）を演算している。本制御は、図６の制御ブロックのうち、励磁電流推定部２１０及び励磁電流制限値演算部２１１の制御に相当する。
【０１１２】
また、トルク電流補償制御部２００は、増幅されたδ軸電流指令値（Ｉδ２＊）のうち、δ軸電流制限値（Ｉδｌｉｍ）で制限を受けた分の指令値に基づき補償値を演算し、フィードバックをかけて、δ軸電流指令値（Ｉδ１＊）に加算している。また、トルク電流補償制御部２００は、制限を受けた分の指令値、すなわちδ軸電流指令値（Ｉδ１＊）とδ軸電流制限値（Ｉδｌｉｍ）との差分を、積分することで補償値を演算している。本制御は、図６の制御ブロックのうち、トルク電流指令値偏差演算部２０７、追加補償値演算部２０８、加算器２０９、及びトルク電流制限部２１２の制御に相当する。
【０１１３】
また、トルク電流補償制御部２００は、出力トルク推定値（Ｔｍ＿ｅｓｔ）とトルク理想応答値（Ｔｍ＿ｒｅｆ）と差を演算することで、モータ３の出力トルクとトルク指令値との差を演算し、当該差に基づいて、補償値をリセットするタイミングを設定している。本制御は、図６の制御ブロックのうち、ロータ磁束推定部２０２、出力トルク推定部２０３、理想応答トルク演算部２０４、トルク偏差演算部２０５、及び積分リセット判定部２０６に相当する。
【０１１４】
次に、図７を用いて、モータコントローラ２０の制御手順について説明する。図７は、モータコントローラ２０の制御手順を示すフローチャートである。なお、図７の制御フローは、所定の周期で繰り返し実行される。
【０１１５】
ステップＳ１にて、モータコントローラ２０、入力処理として、車速、アクセル開度等を取得する。ステップＳ２にて、モータトルク制御部２１は、入力されたアクセル開度等に基づき、トルク指令値（Ｔｍ１＊）を演算する。ステップＳ３にて、制振制御部２２は、トルク指令値（Ｔｍ１＊）等に基づき制振制御を行うことで、制振制御後トルク指令値（Ｔｍ２＊）を演算する。
【０１１６】
ステップＳ４にて、電流制御部２３に含まれる電流指令値演算器３０は、制振制御後トルク指令値（Ｔｍ２＊）等に基づき、γδ軸電流指令値（Ｉγ＊、Ｉδ＊）を演算する。なお、ステップＳ４の詳細な制御手順は後述する。
【０１１７】
そして、ステップＳ５にて、電流制御部２３に含まれる減算器４１等により、γδ軸電流指令値（Ｉγ＊、Ｉδ＊）をモータ３から出力させるよう、駆動信号（スイッチング信号）を生成し、インバータ２に出力することで、インバータ２を制御する。
【０１１８】
次に、図８を用いて、ステップＳ４の制御手順を説明する。図８は、ステップＳ４の制御手順を示すフローチャートである。
【０１１９】
ステップＳ３の制御の後、ステップＳ４１にて、基本電流指令値演算部３１は、制振制御後トルク指令値（Ｔｍ２＊）等に基づき、基本γδ軸電流指令値（Ｉγ０＊、Ｉδ０＊）を演算する。ステップＳ４２にて、磁束応答補償部３２は、基本γ軸電流指令値（Ｉγ０＊、Ｉδ０＊）を増幅させることで、駆動モータ３のロータ磁束応答の遅れを補償し、磁束補償γσ軸電流指令値（Ｉγ１＊、Ｉσ１＊）を演算する。
【０１２０】
ステップＳ４３にて、励磁電流指令値変化量演算部３３は、磁束補償γ軸電流指令値（Ｉγ１＊）に基づき、γ軸電流指令値の変化量（ｄＩγ０＊）を演算する。ステップＳ４４にて、補償判定部３４は、γ軸電流指令値の変化量（ｄＩγ０＊）と判定閾値（Ｉ０）とを比較する。
【０１２１】
γ軸電流指令値の変化量（ｄＩγ０＊）が判定閾値（Ｉ０）より大きい場合には、補償制御部３５は、励磁電流補償制御部１００により、励磁電流を追加補償するよう制御する（ステップＳ４５）。一方、γ軸電流指令値の変化量（ｄＩγ０＊）が判定閾値（Ｉ０）以下である場合には、補償制御部３５は、トルク電流補償制御部１００により、トルク電流を追加補償するよう制御する（ステップＳ４６）。そして、ステップＳ４５、ステップＳ４６の追加補償制御を終えると、ステップＳ４の制御フローを終えて、ステップＳ５に移る。
【０１２２】
次に、図９を用いて、ステップＳ４５の制御手順を説明する。図９は、ステップＳ４５の制御手順を示すフローチャートである。
【０１２３】
ステップＳ４５の制御では、まずステップＳ４５１にて、トルク電流制限部１０１は、基本δ軸電流指令値（Ｉδ０＊）に、電流制限値（±Imax＿δ）で制限をかけることで、δ軸電流指令値（Ｉδ）を演算する。
【０１２４】
トルク電流推定部１１０はδ軸電流指令値（Ｉδ）に基づき、δ軸電流推定値（Ｉδ＿ｅｓｔ＊）を推定する。また、励磁電流制限値演算部１１１は、δ軸電流推定値（Ｉδ＿ｅｓｔ＊）に基づきγ軸電流制限値（Ｉγｌｉｍ）を演算する（ステップＳ４５２）。
【０１２５】
ステップＳ４５３にて、理想応答トルク演算部１０４は、制振制御後トルク指令値（Ｔｍ２＊）に基づき、トルク理想応答値（Ｔｍ＿ｒｅｆ）を演算する。
【０１２６】
ロータ磁束推定部１０２は、γ軸電流指令値（Ｉγ＊）の前回値（Ｉγ＿Ｚ＊）に基づき、ロータ磁束推定値（φｅｓｔ＿ｚ）を演算する。また、出力トルク推定部１０３は、ロータ磁束推定値（φｅｓｔ＿ｚ）に基づき、出力トルク推定値（Ｔｍ＿ｅｓｔ）を演算する（ステップＳ４５４）。
【０１２７】
ステップＳ４５５にて、トルク偏差演算部１０５は、トルク理想応答値（Ｔｍ＿ｒｅｆ）と出力トルク推定値（Ｔｍ＿ｅｓｔ）との差分を演算することで、モータトルク偏差（ΔＴｍ）を演算する。ステップＳ４５６にて、積分リセット判定部１０６は、モータトルク偏差（ΔＴｍ）とリセット判定閾値（ｄＴｍ０）とを比較する。
【０１２８】
モータトルク偏差（ΔＴｍ）がリセット判定閾値（ｄＴｍ０）以上である場合には、積分リセット判定部１０６は、フラグ（ｆｌｇ＿ＩＲＳＴ）を「０（リセット禁止）」に設定する（ステップＳ４５７）。モータトルク偏差（ΔＴｍ）がリセット判定閾値（ｄＴｍ０）未満である場合には、積分リセット判定部１０６は、フラグ（ｆｌｇ＿ＩＲＳＴ）を「１（リセット実施）」に設定する（ステップＳ４５８）。
【０１２９】
ステップＳ４５９にて、励磁電流指令値偏差演算部１０７は、磁束補償γ軸電流指令値（Ｉγ１＊）とγ軸電流指令値の前回値（Ｉγ＿Ｚ＊）との差分を演算することで、γ軸電流指令値偏差（ΔＩγ＊）を演算する。ステップＳ４６０にて、追加補償値演算部１０８は、γ軸電流指令値偏差（ΔＩγ＊）を積分することで積分値を演算する。ステップＳ４６１にて、追加補償値演算部１０８は、当該積分値に所定のゲインを乗ずることで、補償値（Ｉγ＿ＦＢ）を演算する。
【０１３０】
ステップＳ４６２にて、追加補償値演算部１０８は、フラグ（ｆｌｇ＿ＩＲＳＴ）が「１」であるか否かを判定する。フラグ（ｆｌｇ＿ＩＲＳＴ）が「１」である場合には、ステップＳ４６３にて、追加補償値演算部１０８は、補償値（Ｉγ＿ＦＢ）をゼロにすることで、補償値（Ｉγ＿ＦＢ）をリセットする。一方、フラグ（ｆｌｇ＿ＩＲＳＴ）が「１」である場合には、補償値（Ｉγ＿ＦＢ）はリセットされず、ステップＳ４６４に移る。
【０１３１】
ステップＳ４６４にて、加算器１０９は、磁束補償γ軸電流指令値（Ｉγ１＊）と補償値（Ｉγ＿ＦＢ）とを加算することで、電流制限補正前のγ軸電流指令値（Ｉγ２＊）を演算する。
【０１３２】
ステップＳ４６５にて、励磁電流制限部１１２は、電流制限補正前のγ軸電流指令値（Ｉγ２＊）をγ軸電流制限値（Ｉγｌｉｍ）で制限をかけるために、γ軸電流指令値（Ｉγ２＊）とγ軸電流制限値（Ｉγｌｉｍ）との大小関係を比較する。
【０１３３】
γ軸電流指令値（Ｉγ２＊）が、負側の制限値（−Ｉγｌｉｍ）と正側の制限値（＋Ｉγｌｉｍ）との間の範囲内であれば、励磁電流制限部１１２は、指令値に制限をかけずに、γ軸電流指令値（Ｉγ２＊）を、γ軸電流指令値（Ｉγ＊）として出力する（ステップＳ４６６）。一方、γ軸電流指令値（Ｉγ２＊）が、負側の制限値（−Ｉγｌｉｍ）と正側の制限値（＋Ｉγｌｉｍ）との間の範囲外であれば、励磁電流制限部１１２は、指令値に制限をかけて、γ軸電流制限値（−Ｉγｌｉｍ又はＩγｌｉｍ）を、γ軸電流指令値（Ｉγ＊）として出力する（ステップＳ４６６）。そして、ステップＳ４６６、ステップＳ４６７の制御を終えると、ステップＳ４の制御フローを終えて、ステップＳ５に移る。
【０１３４】
ステップＳ４６７の後、次の演算周期の制御フローのステップＳ４５９にて、γ軸電流指令値の前回値（Ｉγ＿Ｚ＊）は、γ軸電流制限値（Ｉγｌｉｍ）となる。そして、磁束補償γ軸電流指令値（Ｉγ１＊）と、当該γ軸電流制限値（Ｉγｌｉｍ）との差分が、γ軸電流制限値（Ｉγｌｉｍ）で制限を受けた分の励磁電流の指令値となる。さらに、この差分を、ステップＳ４６０の制御で積分することで、励磁電流の補償に反映できなかった分の指令値を蓄積することができる。
【０１３５】
また、ステップＳ４６７の後、次の演算周期の制御フローで、磁束補償γ軸電流指令値（Ｉγ１＊）がγ軸電流制限値（Ｉγｌｉｍ）より小さい場合には、次の演算周期の制御フローのステップＳ４６４にて、補償値を、γ軸電流制限値（Ｉγｌｉｍ）より小さい励磁電流の指令値（Ｉγ１＊）に加算することとなる。これにより、γ軸電流制限値（Ｉγｌｉｍ）により制限を受けた分の励磁電流の指令値を、γ軸電流制限値（Ｉγｌｉｍ）により制限を受けなくなった後の指令値に対して加算することができる。
【０１３６】
なお、ステップＳ４６の制御フローは、図９に示すステップＳ４５１〜Ｓ４６７の制御において、励磁電流に係る制御とトルク電流制御とを入れ替えたものと、実質的に同様であるため、説明を省略する。
【０１３７】
次に、本発明に係るモータ制御装置の効果について、図１０及び図１１を用いて説明する。図１０は比較例の特性、図１１は本発明の特性を示す。図１０、１１の（ａ）は励磁電流（γ軸電流）の時間特性を、（ｂ）はトルク電流（δ軸電流）の時間特性を、（ｃ）はロータ磁束の時間特性を、（ｄ）トルクの時間特性を示すグラフである。また、図１０、図１１において、実トルク、実γ軸電流、及び実δ軸電流は、実際のモータ３の出力トルク、実際にモータ３に流れる電流を示している。
【０１３８】
比較例では、磁束応答補償部３２と同様に、γ軸電流指令値を増幅させることで、ロータ磁束応答を改善するための位相補償を行っている。そして、この位相補償により補償された励磁電流指令値に対して、最大電流制限値による制限をかけている。
【０１３９】
以下、図１０、１１を比較しつつ、発進加速等において停車状態からトルク指令値をステップ的に増加させた場合を例にとり、トルク応答性能について説明する。
【０１４０】
時刻ｔ１にて、停車状態からの発進加速として、ステップ的にトルク指令値が立ち上がり、基本γδ軸電流指令値もステップ的に立ち上がる。磁束応答補償部３２による、ロータ磁束応答を改善するための位相補償により、磁束補償γ軸電流指令値は過渡的に大きな値を示す。
【０１４１】
比較例は、最大電流制限値を電流振幅の上限値とした上で、δ軸電流に比べて、γ軸電流に対して電流を配分するように、励磁電流を増幅させている。そのため、比較例では、最大電流制限値までの電流は、γ軸電流指令値のみで使い切ってしまい、δ軸電流に使用できる電流値はゼロのまま推移し、トルクを発生させることができない無駄時間が発生してしまう（図１０のΔｔｎに相当）。また、γ軸電流が定格電流制限値（最大電流制限値に相当）で制限されてしまうので、ロータ磁束応答を改善するための所望の電流が流れず、所望のロータ磁束応答を実現することができない。
【０１４２】
そして、時刻ｔ１からｔ２の間の時刻で、磁束補償γ軸電流指令値が、下がり、最大電流制限値の値を下回ったところで、δ軸電流を流すことができるようになり、トルクが立ち上がり始める。
【０１４３】
時刻ｔ２の時点で、ロータ磁束は、定常値の７〜８割程度で立ち上るが、磁束補償γ軸電流指令値は、ほぼ基本γ軸電流指令値に収束する。時刻ｔ２以降、γ軸電流は一定値で維持することになり、ロータの特性で決まる時定数の遅れをもって、ロータ磁束が立ち上がっていく。その結果として、応答速度の遅い、緩慢なトルク応答となってしまい、最終的な実トルクのトルク指令値へ収束するまでの時間は、時刻ｔ５〜ｔ６までかかってしまう。
【０１４４】
本発明では、時刻ｔ１にて、ステップ的にトルク指令値が立ち上がり、基本γδ軸電流指令値もステップ的に立ち上がる。δ軸電流について、本発明は、δ軸電流指令値に最大電流制限値（電流制限値（±Imax＿δ）に相当）で制限をかけつつ、δ軸電流を流している。そのため、比較例で無駄時間を生じていた期間に、本発明はδ軸電流指令値がゼロにならず、δ軸電流を早く立ち上げることができている。その結果として、トルクも無駄時間なく時刻ｔ１から立ち上がっている。
【０１４５】
またγ軸電流について、磁束応答補償部３２による、ロータ磁束応答を改善するための位相補償により、磁束補償γ軸電流指令値は過渡的に大きな値に立ち上がっている。そして、磁束補償γ軸電流指令値に加わる制限値は、最大電流制限値を電流振幅とするように、最大電流制限値からδ軸電流指令値を差し引いた分で、γ軸電流制限値（電流制限値（±Ｉγｌｉｍ）に相当）が決まっている。そのため、δ軸電流指令値の立ち上がりに応じて、γ軸電流指令値が制限されてしまい落ち込む。
【０１４６】
これにより、時刻ｔ１直後のトルク応答は無駄時間を発生することなく、比較例に対して速くなっているが、時刻ｔ１からｔ２までの間において、実トルクの立ち上がり量が一時的には比較例よりも小さくなる時刻が存在する。しかしながら、時刻ｔ２時点では、実トルクの大きさは、ほぼ同等程度となっている。
【０１４７】
さらに、時刻ｔ１からｔ２の間において、磁束補償γ軸電流指令値が励磁電流の電流制限値を越える間、磁束補償γ軸電流指令値と電流制限値との差分を積分して蓄積しておくことで、指令値を補償し、追加補償γ軸電流指令値（励磁電流制限部１１２に入力されるγ軸電流指令値（Ｉγ２＊）に相当）を徐々に大きく増やしていくことになる。そして、磁束補償γ軸電流指令値が減少し、γ軸電流制限値を下回った場合、蓄積していた積分値により追加補償γ軸電流指令値は、磁束補償γ軸電流指令値よりも大きな値を保持することができる。そして、電流制限解除後に、電流制限で効果を発揮することができなかった磁束補償γ軸電流指令値分の電流を、電流制限解除のタイミングで施すことができるようになる。
【０１４８】
これにより、時刻ｔ２以降、比較例では急激にトルク応答が悪くなり指令値までの収束時間が長くかかってしまうところ、本発明では継続的にトルクを増やすことができ、時刻ｔ３に達する前に目標とする指令値まで達することができている。
【０１４９】
さらに、本発明は、時刻ｔ３に至る手前で、出力トルクがトルク指令値にほぼ一致することで、出力トルクの変化量が小さくなったことを検知し、補償値の積分値を０に収束させて、追加補償γ軸電流指令値を磁束補償γ軸電流指令値まで下げている。そのため、本発明は、実トルクのオーバーシュートを起こすことなく、実トルクをトルク指令値に一致させることができている。
【０１５０】
上記のように、本例は、基本γδ軸電流指令値（Ｉγ０＊、Ｉδ０＊）を増幅させることでモータ３のロータ磁束応答の遅れを補償することで磁束補償γδ軸電流指令値（Ｉγ１＊、Ｉδ１＊）を演算し、γδ軸電流指令値（Ｉγ２＊、Ｉδ２＊）をγδ軸電流制限値（Ｉγｌｉｍ、Ｉδｌｉｍ）で制限し、磁束補償γδ軸電流指令値（Ｉγ１＊、Ｉδ１＊）及びγδ軸電流制限値（Ｉγｌｉｍ、Ｉδｌｉｍ）で制限されたγδ軸電流指令値（Ｉγ＊、Ｉδ＊）に基づき、補償値（Ｉγ＿ＦＢ、Ｉδ＿ＦＢ）を演算し、磁束補償γδ軸電流指令値（Ｉγ１＊、Ｉδ１＊）と補償値（Ｉγ＿ＦＢ、Ｉδ＿ＦＢ）とを加算することで、γδ軸電流指令値（Ｉγ２＊、Ｉδ２＊）を演算し、磁束補償γδ軸電流指令値（Ｉγ１＊、Ｉδ１＊）のうちγδ軸電流制限値（Ｉγｌｉｍ、Ｉδｌｉｍ）で制限を受けた分の指令値を補償値（Ｉγ＿ＦＢ、Ｉδ＿ＦＢ）として演算する。これにより、磁束補償γδ軸電流指令値（Ｉγ１＊、Ｉδ１＊）の一部が制限値により制限された場合に、電流制限により出力できなかった磁束補償γδ軸電流指令値（Ｉγ１＊、Ｉδ１＊）の一部を、磁束補償γδ軸電流指令値（Ｉγ１＊、Ｉδ１＊）が制限値より小さくなったときに加算することで、追加して補償することができるため、トルクの応答性を高めることができる。
【０１５１】
また、本例は、磁束補償γδ軸電流指令値（Ｉγ１＊、Ｉδ１＊）とγδ軸電流制限値（Ｉγｌｉｍ、Ｉδｌｉｍ）との差分を積分することで、補償値（Ｉγ＿ＦＢ、Ｉδ＿ＦＢ）を演算する。これにより、電流制限により出力できなかった磁束補償γδ軸電流指令値（Ｉγ１＊、Ｉδ１＊）の一部が蓄積されるため、磁束補償γδ軸電流指令値（Ｉγ１＊、Ｉδ１＊）が制限値より小さくなった後に、蓄積した積分値を補償値として出力することができる。また、電流制限が解除された後も、励磁電流を高い状態で維持させることができるため、トルク指令値の急な変化に対して、実トルクを指令値まで早く収束させることができる。
【０１５２】
また、本例は、磁束補償γδ軸電流指令値（Ｉγ１＊、Ｉδ１＊）とγδ軸電流制限値（Ｉγｌｉｍ、Ｉδｌｉｍ）との差分を積分した積分値に、所定値のゲイン（１／Ｔｉ）を乗ずることで、補償値（Ｉγ＿ＦＢ、Ｉδ＿ＦＢ）を演算する。これにより、蓄積した積分値を所望の応答で出力することができる。
【０１５３】
また、本例は、電流制限解除後のγδ軸電流指令値（Ｉγ２＊、Ｉδ２＊）が、過渡的に高くならないように、上記のゲイン（１／Ｔｉ）を調整して、補償値（Ｉγ＿ＦＢ、Ｉδ＿ＦＢ）を抑えている。すなわち、本例では、電流制限が解除された後、積分値に蓄積された値を放出し、磁束補償γδ軸電流指令値（Ｉγ１＊、Ｉδ１＊）に加算することになる。そして、ロータ磁束の時定数により、実際のロータ磁束は、磁束補償γδ軸電流指令値（Ｉγ１＊、Ｉδ１＊）で想定するよりも遅れて立ち上がる。電流制限が解除されるまでの間に、ロータ磁束は幾分、立ち上がっており、ロータ磁束が立ち上がった状態で、積分値である補償値を、磁束補償γδ軸電流指令値（Ｉγ１＊、Ｉδ１＊）に加えることになる。そのため、ゲイン調整をせずに、積分値をそのまま放出し、磁束補償γδ軸電流指令値（Ｉγ１＊、Ｉδ１＊）に加算した場合には、過渡的に必要以上にロータ磁束を立ち上げることになってしまい、出力トルクのオーバーシュートとなるおそれがある。そこで、本例では、積分値に対してゲイン調整を行い、出力トルクのオーバーシュートを防止し、定常値は指令値通りで過渡応答のみ応答性を向上させるよう制御している。
【０１５４】
また本例は、制振制御後トルク指令値（Ｔｍ２＊）と出力トルクとの差に基づいて、補償値（Ｉγ＿ＦＢ、Ｉδ＿ＦＢ）をリセットする。これにより、ロータ磁束およびトルクの過渡的なオーバーシュートを回避することができる。
【０１５５】
また、本例は、磁束応答補償部３２により補償されていない方の基本γδ軸電流指令値（Ｉγ０＊、Ｉδ０＊）に基づき、補償されていない方の電流値を推定し、推定された電流値（Ｉγ＿ｅｓｔ＊、Ｉδ＿ｅｓｔ＊）に基づき、γδ軸電流制限値（Ｉγｌｉｍ、Ｉδｌｉｍ）を演算する。これにより、補償されていない方の電流指令値がゼロにならないように、追加補償する電流指令値の制限値を設定しているため、例えば、上記の比較例のような無駄時間の発生を防ぐことができる。
【０１５６】
また、本例は、磁束応答補償部３２により補償されていない方の電流指令値と、最大電流制限値（Ｉｍａｘ）に基づき、γδ軸電流制限値（Ｉγｌｉｍ、Ｉδｌｉｍ）を演算する。ただし、電流指令値、最大電流制限値（Ｉｍａｘ）、及び（Ｉγｌｉｍ、Ｉδｌｉｍ）の間には、式（１６）又は式（２２）を満たす。なお、式（１６）又は式（２２）は、γδ軸電流推定値（Ｉγ＿ｅｓｔ＊、Ｉδ＿ｅｓｔ＊）を含む式になっているが、当該推定値の代わりに、基本γδ軸電流指令値（Ｉγ０＊、Ｉδ０＊）としてもよい。
【０１５７】
これにより、高応答化処理の補償をしていない方の電流指令値を確実に流すことができ、γδ軸の一方の軸の電流を全く流せないことによるトルク応答の無駄時間を解消し、確実にトルクを出力することができる。
【０１５８】
また、本例は、基本γδ軸電流指令値（Ｉγ０＊、Ｉδ０＊）を増幅させることでモータ３のロータ磁束応答の遅れを補償して磁束補償γδ軸電流指令値（Ｉγ１＊、Ｉδ１＊）を演算し（第１の補償）、磁束補償γδ軸電流指令値（Ｉγ１＊、Ｉδ１＊）をさらに補償してγδ軸電流指令値（Ｉγ２＊、Ｉδ２＊）を演算し（第２の補償）、γδ軸電流指令値（Ｉγ２＊、Ｉδ２＊）をγδ軸電流制限値（Ｉγｌｉｍ、Ｉδｌｉｍ）で制限し、γδ軸電流制限値（Ｉγｌｉｍ、Ｉδｌｉｍ）で制限する際には、磁束補償γδ軸電流指令値（Ｉγ１＊、Ｉδ１＊）の大きさに応じて、γδ軸電流制限値（Ｉγｌｉｍ、Ｉδｌｉｍ）で制限し、第２の補償では、磁束補償γδ軸電流指令値（Ｉγ１＊、Ｉδ１＊）がγδ軸電流制限値（Ｉγｌｉｍ、Ｉδｌｉｍ）より小さくなった後に、γδ軸電流制限値（Ｉγｌｉｍ、Ｉδｌｉｍ）で制限を受けた分の指令値を、磁束補償γδ軸電流指令値（Ｉγ１＊、Ｉδ１＊）に加える。これにより、磁束補償γδ軸電流指令値（Ｉγ１＊、Ｉδ１＊）の一部が制限値により制限された場合に、電流制限により出力できなかった磁束補償γδ軸電流指令値（Ｉγ１＊、Ｉδ１＊）の一部を、磁束補償γδ軸電流指令値（Ｉγ１＊、Ｉδ１＊）が制限値より小さくなったときに加えることで、追加して補償することができるため、トルクの応答性を高めることができる。
【０１５９】
なお、本例において、すべり角速度演算器４９は、すべり角速度ωｓｅの計算する際に、電流指令値Ｉγ＊、Ｉδ＊を使用する代わりに、電流計測値の前回値Ｉγ＿ｚ、Ｉδ＿ｚを用いて計算をしてもよい。
【０１６０】
なお、本例において、理想応答トルク演算部１０４は、トルク理想応答値（Ｔｍ＿ｒｅｆ）を演算する際の指令値として、前回の演算タイミングで演算した制振制御後トルク指令値（Ｔｍ２＊）を用いてもよい。上記のとおり、ロータ磁束推定部１０２は、前回の演算タイミングで取得したγ軸電流指令値（Ｉγ＿Ｚ＊）を用いて、ロータ磁束推定値（φｅｓｔ＿ｚ）を演算している。そのため、理想応答トルク演算部１０４においても、前回の演算タイミングで演算した制振制御後トルク指令値（Ｔｍ２＊）を用いて、トルク理想応答値（Ｔｍ＿ｒｅｆ）を演算することで、位相を合わせることができる。
【０１６１】
なお、追加補償値演算部１０８は、積分リセット判定部１０６で設定されたフラグが「０」から「１」に変化し、補償値をリセットする場合には、フラグが「０」から「１」に変化してから、所定の時間の経過に伴って、補償値がゼロになるように、収束させてもよい。
【０１６２】
なお、トルク電流推定部１１０は、制御演算による遅れを鑑みて、基本δ軸電流指令値（Ｉδ０＊）の代わりに、前回値の基本δ軸電流指令値（Ｉδ０＿Ｚ＊）を用いてもよい。または、トルク電流推定部１１０は、実際にセンサで検出したトルク電流の検出値を用いてもよい。
【０１６３】
上記の基本電流指令値演算部３１が本発明の「電流指令値演算手段」に相当し、磁束応答補償部３２が本発明の「第１補償手段」に、励磁電流制限部１１２又はトルク電流制限部２１２が本発明の「第１電流指令値制限手段」に、励磁電流指令値偏差演算部１０７、トルク電流指令値偏差演算部２０７、及び追加補償値演算部１０８、２０８が本発明の「第２補償手段」に、加算器１０９、２０９が「加算手段」に、励磁電流制限値演算部１１１及びトルク電流制限値演算部２１１が本発明の「第１電流制限値演算手段」に相当する。
【０１６４】
《第２実施形態》
図１２は発明の他の実施形態に係るモータ制御装置の励磁電流補償制御部１００のブロック図を示し、図１３はモータ制御装置のトルク電流補償制御部２００のブロック図である。本例では上述した第１実施形態に対して、励磁電流補償制御部１００の一部の構成、及び、トルク電流補償制御部２００の一部の構成が異なる。これ以外の構成は上述した第１実施形態と同じであるため、その記載を適宜、援用する。
【０１６５】
図１２に示すように、励磁電流補償制御部１００は、トルク電流制限部１０１、積分リセット判定部１０６、励磁電流指令値偏差演算部１０７、追加補償値演算部１０８、加算器１０９、トルク電流推定部１１０、励磁電流制限値演算部１１１、励磁電流制限部１１２、及び励磁電流偏差演算部１１３を有している。
【０１６６】
励磁電流偏差演算部１１３は、式（２３）で示されるように、基本γ軸電流指令値（Ｉγ０＊）と磁束補償γ軸電流指令値（Ｉγ１＊）との差分を演算することで、励磁電流指令値の偏差（ΔＩγ１０＊）を演算し、積分リセット判定部１０６に出力する。
【数２４】
0005862832.tif 000025
【０１６７】
積分リセット判定部１０６は、励磁電流指令値の偏差（ΔＩγ１０＊）に応じて、追加補償値演算部１０８の補償値をリセットするか否かを判定し、その判定結果を示すフラグ（ｆｌｇ＿ＩＲＳＴ）を、追加補償演算部値１０８に出力する。判定及びフラグの条件は、以下のように示される。
【数２５】
0005862832.tif 000026
なお、リセット判定閾値（ｄＩγ１０＊）は、出力トルクのオーバーシュートを抑制するように、予め設定された閾値であって、設計または実験より設定される値である。
【０１６８】
追加補償値演算部１０８は、基本γ軸電流指令値（Ｉγ０＊）と磁束補償γ軸電流指令値（Ｉγ１）との差に基づいて、補償値（Ｉγ＿ＦＢ）をリセットしている。基本γ軸電流指令値（Ｉγ０＊）と磁束補正γ軸電流指令値（Ｉγ１）との差は、磁束応答補償部３２のロータ磁束応答の補償により、指令値を増幅させた分に相当する。
【０１６９】
そのため、磁束応答補償部３２で増幅させた分の指令値がリセット判定閾値以上になっている期間で、追加補償値演算部１０８及び加算部１０９は、励磁電流の追加補償を行っている。そして、磁束応答補償部３２で増幅させた分の指令値がリセット判定閾値より低くなると、追加補償値演算部１０８により補償値がリセットされることで、励磁電流の追加補償が終了する。
【０１７０】
図１３に示すように、トルク電流補償制御部２００は、励磁電流制限部２０１、積分リセット判定部２０６、トルク電流指令値偏差演算部２０７、追加補償値演算部２０８、加算器２０９、励磁電流推定部２１０、トルク電流制限値演算部２１１、トルク電流制限部２１２、及びトルク電流偏差演算部２１３を有している。
【０１７１】
トルク電流偏差演算部２１３は、式（２４）で示されるように、基本δ軸電流指令値（Ｉδ０＊）と磁束補償δ軸電流指令値（Ｉδ１＊）との差分を演算することで、トルク電流指令値の偏差（ΔＩδ１０＊）を演算し、積分リセット判定部１０６に出力する。
【数２６】
0005862832.tif 000027
【０１７２】
積分リセット判定部２０６は、トルク電流指令値の偏差（ΔＩδ１０＊）に応じて、追加補償値演算部２０８の補償値をリセットするか否かを判定し、その判定結果を示すフラグ（ｆｌｇ＿ＩＲＳＴ）を、追加補償演算部２０８に出力する。判定及びフラグの条件は、以下のように示される。
【数２７】
0005862832.tif 000028
なお、リセット判定閾値（ｄＩδ１０＊）は、出力トルクのオーバーシュートを抑制するように、予め設定された閾値であって、設計または実験より設定される値である。
【０１７３】
上記のように、本例は、基本γδ軸電流指令値（Ｉγ０＊、Ｉδ０＊）と磁束補正γδ軸電流指令値（Ｉγ１＊、Ｉδ１＊）との差に基づいて、補償値（Ｉγ＿ＦＢ、Ｉδ＿ＦＢ）をリセットする。これにより、磁束応答補償部３２による電流指令値の増加分が所定値（リセット判定閾値（ｄＩγ１０＊、ｄＩδ１０＊））より高い期間では追加補償を行い、当該電流指令値の増加分が当該所定値より低い期間では追加補償を行わないよう、制御することができる。その結果として、トルク応答性を高めつつ、出力トルクのオーバーシュートを抑制することができる。
【０１７４】
《第３実施形態》
図１４は発明の他の実施形態に係るモータ制御装置の励磁電流補償制御部１００のブロック図を示し、図１５はモータ制御装置のトルク電流補償制御部２００のブロック図である。本例では上述した第１実施形態に対して、励磁電流補償制御部１００の一部の構成、及び、トルク電流補償制御部２００の一部の構成が異なる。これ以外の構成は上述した第１実施形態と同じであり、第１実施形態及び第２実施形態の記載を適宜、援用する。
【０１７５】
図１４に示すように、励磁電流補償制御部１００は、トルク電流制限部１０１、ロータ磁束推定部１０２、励磁電流指令値偏差演算部１０７、追加補償値演算部１０８、加算器１０９、トルク電流推定部１１０、励磁電流制限値演算部１１１、励磁電流制限部１１２、トルク電流制限値演算部１１４、及びトルク電流制限部１１５を有している。
【０１７６】
トルク電流制限値演算部１１４は、式（２５）で示されるように、制振制御後トルク指令値（Ｔｍ２＊）を、トルク定数（ＫＴｅ）とロータ磁束推定値（φｅｓｔ）とを乗算した値で、除算することでδ軸電流制限値（Ｉδｌｉｍ）を演算し、トルク電流制限部１１５に出力する。
【数２８】
0005862832.tif 000029
【０１７７】
トルク電流制限部１１５は、トルク電流制限部１０１で演算されたトルク電流指令値を、正負のδ軸電流制限値（±Ｉδｌｉｍ）で制限することで、δ軸電流指令値（Ｉδ）を演算する。
【０１７８】
トルク電流補償制御部２００は、磁束応答補償部３２で補償されていないδ軸電流指令値に基づきγ軸電流指令値用の制限値を演算し、磁束応答補償部３２で補償されたγ軸電流指令値に対して、追加補償を行い、γ軸電流の制限値による制限を加えている。さらに、γ軸電流の制限値による制限を受けたγ軸電流指令値に基づいて、δ軸電流指令値用の制限値を演算し、δ軸電流指令値に対して制限を加えている。これにより、磁束応答補償部３２による補償、及び、励磁電流補償制御部１００による補償により、電流指令値がどのような値になっても、出力トルクをトルク指令値の理想応答に近づけることができる。
【０１７９】
図１５に示すように、トルク電流補償制御部２００は、励磁電流制限部２０１、ロータ磁束推定部２０２、出力トルク推定部２０３、理想応答トルク演算部２０４、トルク偏差演算部２０５、積分リセット判定部２０６、トルク電流指令値偏差演算部２０７、追加補償値演算部２０８、加算器２０９、励磁電流推定部２１０、トルク電流制限値演算部２１１、トルク電流制限部２１２、励磁電流制限値演算部２１４、制限値補正部２１５、及び励磁電流制限部２１６を有している。
【０１８０】
励磁電流制限値演算部２１４は、式（２６）で示されるように、制振制御後トルク指令値（Ｔｍ２＊）を、モータトルク定数（Ｋ１）とδ軸電流指令値（Ｉδ＊）とを乗算した値で、除算することでγ軸電流制限値（Ｉγｌｉｍ’）を演算し、制限値補正部２１５に出力する。
【数２９】
0005862832.tif 000030
ただし、モータトルク定数（Ｋ１）は、Ｍ・ＫＴｅで表される。そして、上記のとおり、トルク定数（ＫＴｅ）はｐ・Ｍ／Ｌｒで表されるため、モータトルク定数（Ｋ１）は、Ｋ１＝ｐ・Ｍ２／Ｌｒで表される。モータトルク定数（Ｋ１）は予め計算又は実験により予め設定される値である。
【０１８１】
制限値補正部２１５は、式（２７）で示されるように、γ軸電流制限値（Ｉγｌｉｍ’）に、時定数（τｍ）及び時定数（τφ）を含む関数を乗ずることで、γ軸電流制限値（Ｉγｌｉｍ’）を補正し、γ軸電流制限値（Ｉγｌｉｍ）を演算する。
【数３０】
0005862832.tif 000031
【０１８２】
なお、制限値補正部２１５による補正処理は、ロータ磁束応答とトルク応答に対して、近似的に補償した処理になる。
【０１８３】
励磁電流制限部２１６は、励磁電流制限部２０１で演算された励磁電流指令値を、正負のγ軸電流制限値（±Ｉγｌｉｍ）で制限することで、γ軸電流指令値（Ｉγ）を演算する。
【０１８４】
上記のように、本例は、磁束応答補償部３２により補償された指令値に基づき、式（２５）又は式（２６）を用いて制限値を演算し、磁束応答補償部３２により補償されていない方の電流指令値を当該制限値で制限する。これにより、磁束応答補償部３２による補償、及び、励磁電流補償制御部１００又はトルク電流補償制御部２００による補償により、電流指令値がどのような値になっても、出力トルクをトルク指令値の理想応答に近づけることができる。
【０１８５】
上記のトルク電流制限値演算部１１４は本発明の「第２電流制限値演算手段」に相当し、トルク電流制限部１１５は本発明の「第２電流指令値制限手段」に相当する。
【符号の説明】
【０１８６】
２０…モータコントローラ
２１…モータトルク制御部
２２…制振制御部
２３…電流制御部
３０…電流指令値演算器
３１…基本電流指令値演算部
３２…磁束応答補償部
３３…励磁電流指令値変化量演算部
３４…補償判定部
３５…補償制御部
１００…励磁電流補償制御部
１０１…トルク電流制限部
１０２、２０２…ロータ磁束推定部
１０３、２０３…出力トルク推定部
１０４、２０４…理想応答トルク演算部
１０５、２０５…トルク偏差演算部
１０６、２０６…積分リセット判定部
１０７…励磁電流指令値偏差演算部
１０８、２０８追加補償値演算部
１０９、２０９…加算器
１１０…トルク電流推定部
１１１、２１４…励磁電流制限値演算部
１１２、２０１、２１６…励磁電流制限部
１１３…励磁電流偏差演算部
１１４、２１１…トルク電流制限値演算部
１１５、２１２…トルク電流制限部
２０７…トルク電流指令値偏差演算部
２１０…励磁電流推定部
２１６…制限値補正部
【図１】
0005862832.tif 000033
【図２】
0005862832.tif 000034
【図３】
0005862832.tif 000035
【図４】
0005862832.tif 000036
【図５】
0005862832.tif 000037
【図６】
0005862832.tif 000038
【図７】
0005862832.tif 000039
【図８】
0005862832.tif 000040
【図９】
0005862832.tif 000041
【図１０】
0005862832.tif 000042
【図１１】
0005862832.tif 000043
【図１２】
0005862832.tif 000044
【図１３】
0005862832.tif 000045
【図１４】
0005862832.tif 000046
【図１５】
0005862832.tif 000047