(57)【要約】      （修正有）【課題】従来の弱め磁束制御領域を電圧位相制御部（矩形波制御部）がカバーするとともに損失を抑制したモータ制御装置及びモータ制御方法を提供する。【解決手段】このモータ制御装置１００及びモータ制御方法は、電流位相制御部、ｄ軸電流制御部からの電圧指令値｜Ｖａ｜が上限リミット値｜Ｖａ｜ＭＡＸと下限リミット値｜Ｖａ｜ＭＩＮの範囲内にあるときは、目標電流位相θｉ（ｂａｓｅ）と同等な電流位相θｉをとるように制御される。このため、ＰＭモータ１０を損失の少ない効率の良い状態で動作させることができる。また、電圧位相制御部５０が弱め磁束制御の領域をカバーすることで制御方式の切替数が減少するとともに、制御系の構成を簡易化でき、その分、マイコン等の制御部のコストの削減を図ることができる。【選択図】図１
2020043719.tif 000002
【特許請求の範囲】
【請求項１】
ＰＭモータに３相交流の駆動電流を流下させるインバータと、
前記駆動電流の値を取得する駆動電流取得部と、
前記ＰＭモータの電気角を取得する角度取得部と、
前記電気角に基づいて前記駆動電流取得部が取得した前記駆動電流をｄ軸フィードバック電流値Ｉｄ、ｑ軸フィードバック電流値Ｉｑに変換する３相／ｄｑ変換部と、
外部からのトルク指令値に応じた電圧位相θｖと電圧指令値｜Ｖａ｜とを設定しｄ軸電圧指令値Ｖｄ、ｑ軸電圧指令値Ｖｑを生成する電圧位相制御部と、
前記ｄ軸電圧指令値Ｖｄ、ｑ軸電圧指令値Ｖｑを三相電圧指令値に変換するｄｑ／３相変換部と、搬送波生成部とを備え、前記搬送波生成部で生成された搬送波と前記三相電圧指令値とを比較して前記インバータをスイッチングする駆動信号を生成する制御信号生成部と、を有するモータ制御装置において、
前記電圧位相制御部は、
前記トルク指令値に基づいて電圧位相θｖを設定する電圧位相設定部と、
所定の上限リミット値未満の領域で前記トルク指令値と略同一のトルクを出力するのに最小の電流をとる電圧指令値｜Ｖａ｜を取得する電圧指令設定部と、前記電圧位相θｖと電圧指令値｜Ｖａ｜とに基づいてｄ軸電圧指令値Ｖｄ、ｑ軸電圧指令値Ｖｑを生成する電圧指令値生成部と、を有することを特徴とするモータ制御装置。
【請求項２】
電圧指令設定部が、
トルク指令値と略同一のトルクを出力するのに最小の電流をとるｄ軸電流値Ｉｄ（ｒｅｆ）を取得するＩｄ（ｒｅｆ）取得部と、
前記ｄ軸電流値Ｉｄ（ｒｅｆ）とｄ軸フィードバック電流値Ｉｄとの差分ΔＩｄを取得するＩｄ減算部と、
前記差分ΔＩｄが負のときは電圧指令値｜Ｖａ｜を小さくし、前記差分ΔＩｄが正のときは電圧指令値｜Ｖａ｜を大きくして電圧指令値生成部に出力するｄ軸電流制御部と、を有することを特徴とする請求項１記載のモータ制御装置。
【請求項３】
Ｉｄ（ｒｅｆ）取得部が、ｑ軸フィードバック電流値Ｉｑ、もしくは、ｑ軸フィードバック電流値Ｉｑの絶対値｜Ｉｑ｜に基づいてｄ軸電流値Ｉｄ（ｒｅｆ）を取得することを特徴とする請求項２記載のモータ制御装置。
【請求項４】
Ｉｄ（ｒｅｆ）取得部が、ｑ軸フィードバック電流値Ｉｑ、もしくは、ｑ軸フィードバック電流値Ｉｑの絶対値｜Ｉｑ｜と対応しｄ軸電流値Ｉｄ（ｒｅｆ）とｑ軸フィードバック電流値Ｉｑとの比である係数Ｋ（Ｉｄ／Ｉｑ）を取得し、さらに前記係数Ｋ（Ｉｄ／Ｉｑ）に前記ｑ軸フィードバック電流値Ｉｑ、もしくは、前記絶対値｜Ｉｑ｜を掛けて負の値とすることでｄ軸電流値Ｉｄ（ｒｅｆ）を取得することを特徴とする請求項２記載のモータ制御装置。
【請求項５】
Ｉｄ（ｒｅｆ）取得部が、トルク指令値と略同一のトルクを出力するのに最小の電流をとる目標電流位相θｉ（ｂａｓｅ）を取得し、ｄ軸フィードバック電流値Ｉｄ及びｑ軸フィードバック電流値Ｉｑから求められる電流ベクトルの大きさ｜Ｉａ｜もしくはｑ軸フィードバック電流値の絶対値｜Ｉｑ｜とから下記式
Ｉｄ（ｒｅｆ）＝−｜Ｉａ｜・ｓｉｎ（θｉ（ｂａｓｅ））
もしくは下記式
Ｉｄ（ｒｅｆ）＝−｜Ｉｑ｜・ｔａｎ（θｉ（ｂａｓｅ））
に基づいて電流値Ｉｄ（ｒｅｆ）を取得することを特徴とする請求項２記載のモータ制御装置。
【請求項６】
Ｉｄ（ｒｅｆ）取得部が、トルク指令値、もしくは、トルク指令値の絶対値に基づいてｄ軸電流値Ｉｄ（ｒｅｆ）を取得することを特徴とする請求項２記載のモータ制御装置。
【請求項７】
電圧指令設定部が、電流位相演算部と、θｉ減算部と、電流位相制御部と、を有し、
前記電流位相演算部は、ｄ軸フィードバック電流値Ｉｄとｑ軸フィードバック電流値Ｉｑとから下記式に基づいて電流ベクトルの大きさ｜Ｉａ｜を取得するＩａ絶対値演算部と、
｜Ｉａ｜＝（Ｉｄ２＋Ｉｑ２）１／２
前記ｄ軸フィードバック電流値Ｉｄとｑ軸フィードバック電流値Ｉｑとから下記式に基づいて電流位相θｉを算出する位相演算部と、
θｉ＝ｔａｎ−１（−Ｉｄ／Ｉｑ）
を備え、
前記電流ベクトルの大きさ｜Ｉａ｜と対応しトルク指令値と略同一のトルクを出力するのに最小の電流をとる目標電流位相θｉ（ｂａｓｅ）を取得するとともに、
前記θｉ減算部は、前記目標電流位相θｉ（ｂａｓｅ）から前記電流位相θｉを引いて差分Δθｉを取得し前記電流位相制御部に出力し、
前記電流位相制御部は、
ｑ軸フィードバック電流値Ｉｑが正で且つ前記差分Δθｉが正の場合に電圧指令値｜Ｖａ｜を小さくし、
ｑ軸フィードバック電流値Ｉｑが正で且つ前記差分Δθｉが負の場合に電圧指令値｜Ｖａ｜を大きくし、
ｑ軸フィードバック電流値Ｉｑが負で且つ前記差分Δθｉが負の場合に電圧指令値｜Ｖａ｜を小さくし、
ｑ軸フィードバック電流値Ｉｑが負で且つ前記差分Δθｉが正の場合に電圧指令値｜Ｖａ｜を大きくすることを特徴とする請求項１記載のモータ制御装置。
【請求項８】
電圧指令設定部が、ｑ軸フィードバック電流値Ｉｑがゼロ近傍の値であるか否かを判定するｑ軸電流判定部と、ｑ軸フィードバック電流値Ｉｑがゼロ近傍の値であると判定された場合に電流位相制御部への入力を差分Δθｉからｄ軸フィードバック電流値Ｉｄに切り替える入力切替部と、をさらに備え、
前記電流位相制御部は、
前記ｄ軸フィードバック電流値Ｉｄが正の場合に電圧指令値｜Ｖａ｜を小さくし、
前記ｄ軸フィードバック電流値Ｉｄが負の場合に電圧指令値｜Ｖａ｜を大きくすることを特徴とする請求項７記載のモータ制御装置。
【請求項９】
電圧指令設定部が、トルク指令値を監視する変動監視部をさらに有し、
前記トルク指令値が予め設定された閾値を超えて減少したことを前記変動監視部が検知し、且つ電流位相制御部またはｄ軸電流制御部の積分制御の積分値が予め設定された閾値よりも大きい場合に、前記積分値を減少させて電圧指令値｜Ｖａ｜を生成することを特徴とする請求項２乃至請求項８のいずれかに記載のモータ制御装置。
【請求項１０】
電圧指令設定部が、電圧位相θｖを監視する変動監視部をさらに有し、
前記変動監視部は、前記電圧位相θｖが予め設定された上限リミット値もしくはその近傍となった場合に、電流位相制御部またはｄ軸電流制御部の制御ゲインもしくは積分制御の積分値のいずれか一方もしくは双方を増加させることを特徴とする請求項２乃至請求項８のいずれかに記載のモータ制御装置。
【請求項１１】
電圧指令設定部が、差分ΔＩｄもしくは差分Δθｉを監視する変動監視部をさらに有し、
前記変動監視部は、前記差分ΔＩｄもしくは差分Δθｉが予め設定された値を超えた場合に、電流位相制御部またはｄ軸電流制御部の制御ゲインを増加させることを特徴とする請求項２乃至請求項８のいずれかに記載のモータ制御装置。
【請求項１２】
電圧指令設定部が、電流位相制御部またはｄ軸電流制御部の出力する電圧指令値｜Ｖａ｜をローパスフィルタを通して電圧指令値生成部に出力することを特徴とする請求項９乃至請求項１１のいずれかに記載のモータ制御装置。
【請求項１３】
電圧位相制御部がキャリア設定部をさらに有し、前記キャリア設定部は電圧位相θｖと電気角と電気角速度に基づいてキャリア設定情報を生成し、前記キャリア設定情報は搬送波生成部の生成する搬送波の立ち下がりの中央位置が三相電圧指令値の立ち上がりのゼロ位置と交差し、さらに前記搬送波の周波数を前記三相電圧指令値の奇数の３の整数倍に維持することを特徴とする請求項１乃至請求項１２のいずれかに記載のモータ制御装置。
【請求項１４】
電圧位相制御部が、オフセット補正部をさらに有し、
前記オフセット補正部は、ｄ軸フィードバック電流値Ｉｄ、ｑ軸フィードバック電流値Ｉｑに基づいてｄ軸補正電圧ΔＶｄ、ｑ軸補正電圧ΔＶｑをそれぞれ生成し、電圧指令値生成部が生成したｄ軸電圧指令値Ｖｄ、ｑ軸電圧指令値Ｖｑに前記ｄ軸補正電圧ΔＶｄ、ｑ軸補正電圧ΔＶｑをそれぞれ加算して制御信号生成部に出力することを特徴とする請求項１乃至請求項１３のいずれかに記載のモータ制御装置。
【請求項１５】
ＰＭモータに３相交流の駆動電流を流下させるインバータと、
前記駆動電流の値を取得する駆動電流取得部と、
前記ＰＭモータの電気角を取得する角度取得部と、
前記電気角に基づいて前記駆動電流取得部が取得した前記駆動電流をｄ軸フィードバック電流値Ｉｄ、ｑ軸フィードバック電流値Ｉｑに変換する３相／ｄｑ変換部と、
外部からのトルク指令値に応じた電圧位相θｖと電圧指令値｜Ｖａ｜とを設定しｄ軸電圧指令値Ｖｄ、ｑ軸電圧指令値Ｖｑを生成する電圧位相制御部と、
前記ｄ軸電圧指令値Ｖｄ、ｑ軸電圧指令値Ｖｑを三相電圧指令値に変換するｄｑ／３相変換部と、搬送波生成部とを備え、前記搬送波生成部で生成された搬送波と前記三相電圧指令値とを比較して前記インバータをスイッチングする駆動信号を生成する制御信号生成部と、を有するモータ制御装置のモータ制御方法であって、
前記電圧位相制御部が、
前記トルク指令値に基づいて電圧位相θｖを設定する電圧位相設定ステップと、
所定の上限リミット値未満の領域で前記トルク指令値と略同一のトルクを出力するのに最小の電流をとる電圧指令値｜Ｖａ｜を取得する電圧指令設定ステップと、
前記電圧位相θｖと電圧指令値｜Ｖａ｜とに基づいてｄ軸電圧指令値Ｖｄ、ｑ軸電圧指令値Ｖｑを生成するｄ軸ｑ軸電圧指令値生成ステップと、を有することを特徴とするモータ制御方法。
【請求項１６】
電圧指令設定ステップが、
トルク指令値と略同一のトルクを出力するのに最小の電流をとるｄ軸電流値Ｉｄ（ｒｅｆ）を取得するＩｄ（ｒｅｆ）取得ステップと、
前記ｄ軸電流値Ｉｄ（ｒｅｆ）とｄ軸フィードバック電流値Ｉｄとの差分ΔＩｄを取得するΔＩｄ取得ステップと、
前記差分ΔＩｄが負のときは電圧指令値｜Ｖａ｜を小さくし、前記差分ΔＩｄが正のときは電圧指令値｜Ｖａ｜を大きくして電圧指令値｜Ｖａ｜を生成する電圧指令生成ステップと、を有することを特徴とする請求項１５記載のモータ制御方法。
【請求項１７】
Ｉｄ（ｒｅｆ）取得ステップが、ｑ軸フィードバック電流値Ｉｑ、もしくは、ｑ軸フィードバック電流値Ｉｑの絶対値｜Ｉｑ｜に基づいてｄ軸電流値Ｉｄ（ｒｅｆ）を取得することを特徴とする請求項１６記載のモータ制御方法。
【請求項１８】
Ｉｄ（ｒｅｆ）取得ステップが、ｑ軸フィードバック電流値Ｉｑ、もしくは、ｑ軸フィードバック電流値Ｉｑの絶対値｜Ｉｑ｜と対応しｄ軸電流値Ｉｄ（ｒｅｆ）とｑ軸フィードバック電流値Ｉｑとの比である係数Ｋ（Ｉｄ／Ｉｑ）を取得し、さらに前記係数Ｋ（Ｉｄ／Ｉｑ）に前記ｑ軸フィードバック電流値Ｉｑ、もしくは、前記絶対値｜Ｉｑ｜を掛けて負の値とすることでｄ軸電流値Ｉｄ（ｒｅｆ）を取得することを特徴とする請求項１６記載のモータ制御方法。
【請求項１９】
Ｉｄ（ｒｅｆ）取得ステップが、トルク指令値と略同一のトルクを出力するのに最小の電流をとる目標電流位相θｉ（ｂａｓｅ）を取得し、ｄ軸フィードバック電流値Ｉｄ及びｑ軸フィードバック電流値Ｉｑから求められる電流ベクトルの大きさ｜Ｉａ｜もしくはｑ軸フィードバック電流値の絶対値｜Ｉｑ｜とから下記式
Ｉｄ（ｒｅｆ）＝−｜Ｉａ｜・ｓｉｎ（θｉ（ｂａｓｅ））
もしくは下記式
Ｉｄ（ｒｅｆ）＝−｜Ｉｑ｜・ｔａｎ（θｉ（ｂａｓｅ））
に基づいて電流値Ｉｄ（ｒｅｆ）を取得することを特徴とする請求項１６記載のモータ制御方法。
【請求項２０】
Ｉｄ（ｒｅｆ）取得ステップが、トルク指令値、もしくは、トルク指令値の絶対値に基づいてｄ軸電流値Ｉｄ（ｒｅｆ）を取得することを特徴とする請求項１６記載のモータ制御方法。
【請求項２１】
電圧指令設定ステップが、電流位相演算ステップと、θｉ減算ステップと、電流位相制御ステップと、を有し、
前記電流位相演算ステップは、ｄ軸フィードバック電流値Ｉｄとｑ軸フィードバック電流値Ｉｑとから下記式に基づいて電流ベクトルの大きさ｜Ｉａ｜を取得するとともに、
｜Ｉａ｜＝（Ｉｄ２＋Ｉｑ２）１／２
前記ｄ軸フィードバック電流値Ｉｄとｑ軸フィードバック電流値Ｉｑとから下記式に基づいて電流位相θｉを算出し、
θｉ＝ｔａｎ−１（−Ｉｄ／Ｉｑ）
前記電流ベクトルの大きさ｜Ｉａ｜と対応しトルク指令値と略同一のトルクを出力するのに最小の電流をとる目標電流位相θｉ（ｂａｓｅ）を取得するとともに、
前記θｉ減算ステップは、前記目標電流位相θｉ（ｂａｓｅ）から前記電流位相θｉを引いて差分Δθｉを取得し、
前記電流位相制御ステップは、
ｑ軸フィードバック電流値Ｉｑが正で且つ前記差分Δθｉが正の場合に電圧指令値｜Ｖａ｜を小さくし、
ｑ軸フィードバック電流値Ｉｑが正で且つ前記差分Δθｉが負の場合に電圧指令値｜Ｖａ｜を大きくし、
ｑ軸フィードバック電流値Ｉｑが負で且つ前記差分Δθｉが負の場合に電圧指令値｜Ｖａ｜を小さくし、
ｑ軸フィードバック電流値Ｉｑが負で且つ前記差分Δθｉが正の場合に電圧指令値｜Ｖａ｜を大きくすることを特徴とする請求項１５記載のモータ制御方法。
【請求項２２】
電圧指令設定ステップが、ｑ軸フィードバック電流値Ｉｑがゼロ近傍の値であるか否かを判定するｑ軸電流判定ステップと、ｑ軸フィードバック電流値Ｉｑがゼロ近傍の値であると判定された場合に電流位相制御部への入力を差分Δθｉからｄ軸フィードバック電流値Ｉｄに切り替える入力切替ステップと、をさらに備え、
電流位相制御ステップが、
前記ｄ軸フィードバック電流値Ｉｄが正の場合に電圧指令値｜Ｖａ｜を小さくし、
前記ｄ軸フィードバック電流値Ｉｄが負の場合に電圧指令値｜Ｖａ｜を大きくすることを特徴とする請求項２１記載のモータ制御方法。
【請求項２３】
電圧指令設定ステップが、
トルク指令値が予め設定された閾値を超えて減少することを検知する変動監視ステップと、
前記トルク指令値が予め設定された閾値を超えて減少し且つ電流位相制御部またはｄ軸電流制御部の積分制御の積分値が予め設定された閾値よりも大きい場合に、前記積分値を減少させる高速応答ステップと、をさらに有することを特徴とする請求項１６乃至請求項２２のいずれかに記載のモータ制御方法。
【請求項２４】
電圧指令設定ステップが、
電圧位相θｖが予め設定された上限リミット値もしくはその近傍となったことを検知する変動監視ステップと、
前記電圧位相θｖが予め設定された上限リミット値もしくはその近傍となった場合に、電流位相制御部またはｄ軸電流制御部の制御ゲインもしくは積分制御の積分値のいずれか一方もしくは双方を増加させる高速応答ステップと、をさらに有することを特徴とする請求項１６乃至請求項２２のいずれかに記載のモータ制御方法。
【請求項２５】
電圧指令設定ステップが、
差分ΔＩｄもしくは差分Δθｉが予め設定された値を超えたことを検知する変動監視ステップと、
前記差分ΔＩｄもしくは差分Δθｉが予め設定された値を超えた場合に、電流位相制御部またはｄ軸電流制御部の制御ゲインを増加させる高速応答ステップと、をさらに有することを特徴とする請求項１６乃至請求項２２のいずれかに記載のモータ制御方法。
【請求項２６】
電圧指令設定ステップが、電流位相制御部またはｄ軸電流制御部の出力する電圧指令値｜Ｖａ｜をローパスフィルタを通して電圧指令値生成部に出力することを特徴とする請求項２３乃至請求項２５のいずれかに記載のモータ制御方法。
【請求項２７】
電圧位相制御部がキャリア設定部をさらに有し、前記キャリア設定部は電圧位相θｖと電気角と電気角速度に基づいてキャリア設定情報を生成し、前記キャリア設定情報は搬送波生成部の生成する搬送波の立ち下がりの中央位置が三相電圧指令値の立ち上がりのゼロ位置と交差し、さらに前記搬送波の周波数を前記三相電圧指令値の奇数の３の整数倍に維持することを特徴とする請求項１５乃至請求項２６のいずれかに記載のモータ制御方法。
【請求項２８】
オフセット補正ステップをさらに有し、
前記オフセット補正ステップは、ｄ軸フィードバック電流値Ｉｄ、ｑ軸フィードバック電流値Ｉｑに基づいてｄ軸補正電圧ΔＶｄ、ｑ軸補正電圧ΔＶｑをそれぞれ生成し、電圧指令値生成部が生成したｄ軸電圧指令値Ｖｄ、ｑ軸電圧指令値Ｖｑに前記ｄ軸補正電圧ΔＶｄ、ｑ軸補正電圧ΔＶｑをそれぞれ加算して制御信号生成部に出力することを特徴とする請求項１５乃至請求項２７のいずれかに記載のモータ制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、特に従来の弱め磁束制御領域を電圧位相制御部が低損失で制御するモータ制御装置及びモータ制御方法に関する。
【背景技術】
【０００２】
多くの家電や機械設備の動力源として電動モータが使用されている。このうち、回転子側に永久磁石を設け、固定子側に電機子巻線を設け、この電機子巻線の磁界を制御することで回転子を回転させるＰＭ（Ｐｅｒｍａｎｅｎｔ  Ｍａｇｎｅｔ）モータ（永久磁石モータ）は、界磁損失が存在しないため低損失、高効率であり、近年の省エネルギー化の流れから大型の機械機器にも多く採用されている。そして、このＰＭモータの制御方法としては、インバータをスイッチング動作する３相の駆動信号Ｓｕ、Ｓｖ、Ｓｗをトルク指令値に応じて変化させて行う事が一般的である。そして、この駆動信号Ｓｕ、Ｓｖ、Ｓｗの生成は、ＰＭモータの運転状況に応じて正弦波制御と矩形波制御とを切り替えて行うものが多い。この制御方法では、一般的に中・低速回転の動作領域ではモータ効率の高い正弦波パターンを用いた正弦波制御（ＰＷＭ制御）によって動作制御を行い、高速回転・高トルクの動作領域では出力電圧が高く高出力が可能な矩形波パターンを用いた矩形波制御にて動作制御を行う。
【０００３】
そして、このようなモータ制御装置の一つとして、例えば下記［特許文献１］に記載の発明があげられる。この［特許文献１］に記載のモータ制御装置は、前述の正弦波制御と矩形波制御に加え、正弦波制御による弱め磁束制御を行う構成を備えるとともに、ロータ（回転子）の磁極位置を示すコミュテーションセンサ（ＣＳ）を用いてモータが急可変速した場合でも安定的な動作制御を可能としている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００１−２６８９７３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、［特許文献１］に記載の発明は、矩形波制御、正弦波制御及び、正弦波制御による弱め磁束制御を行うため、制御方式が多く切替時のトルクショックの発生や、応答に遅延が生じる虞がある。また、正弦波制御により弱め磁束制御を行うための制御系が必要となり、制御系の構成が複雑化して制御に使用するマイコン等のコストアップを招く虞がある。
【０００６】
本発明は上記事情に鑑みてなされたものであり、従来の弱め磁束制御領域を電圧位相制御部（矩形波制御部）がカバーするとともに損失を抑制したモータ制御装置及びモータ制御方法の提供を目的とする。
【課題を解決するための手段】
【０００７】
本発明は、
（１）ＰＭモータ１０に３相交流の駆動電流Ｉｕ、Ｉｖ、（Ｉｗ）を流下させるインバータ２０と、前記駆動電流Ｉｕ、Ｉｖ、（Ｉｗ）の値を取得する駆動電流取得部１２ｕ、１２ｖと、前記ＰＭモータ１０の電気角θを取得する角度取得部１４と、前記電気角θに基づいて前記駆動電流取得部１２ｕ、１２ｖが取得した前記駆動電流Ｉｕ、Ｉｖ、（Ｉｗ）をｄ軸フィードバック電流値Ｉｄ、ｑ軸フィードバック電流値Ｉｑに変換する３相／ｄｑ変換部２２と、外部からのトルク指令値Ｔ＊に応じた電圧位相θｖと電圧指令値｜Ｖａ｜とを設定しｄ軸電圧指令値Ｖｄ、ｑ軸電圧指令値Ｖｑを生成する電圧位相制御部５０と、前記ｄ軸電圧指令値Ｖｄ、ｑ軸電圧指令値Ｖｑを三相電圧指令値Ｖｕ、Ｖｖ、Ｖｗに変換するｄｑ／３相変換部３２と、搬送波生成部３４とを備え、前記搬送波生成部３４で生成された搬送波と前記三相電圧指令値Ｖｕ、Ｖｖ、Ｖｗとを比較して前記インバータ２０をスイッチングする駆動信号Ｓｕ、Ｓｖ、Ｓｗを生成する制御信号生成部３０と、を有するモータ制御装置１００において、
前記電圧位相制御部５０は、
前記トルク指令値Ｔ＊に基づいて電圧位相θｖを設定する電圧位相設定部５０２と、
所定の上限リミット値｜Ｖａ｜ＭＡＸ未満の領域で前記トルク指令値Ｔ＊と略同一のトルクＴを出力するのに最小の電流をとる電圧指令値｜Ｖａ｜を取得する電圧指令設定部６０と、前記電圧位相θｖと電圧指令値｜Ｖａ｜とに基づいてｄ軸電圧指令値Ｖｄ、ｑ軸電圧指令値Ｖｑを生成する電圧指令値生成部５１６と、を有することを特徴とするモータ制御装置１００を提供することにより、上記課題を解決する。
（２）電圧指令設定部６０ｂが、
トルク指令値Ｔ＊と略同一のトルクＴを出力するのに最小の電流をとるｄ軸電流値Ｉｄ（ｒｅｆ）を取得するＩｄ（ｒｅｆ）取得部６４４ａ〜６４４ｄと、
前記ｄ軸電流値Ｉｄ（ｒｅｆ）とｄ軸フィードバック電流値Ｉｄとの差分ΔＩｄを取得するＩｄ減算部６４８と、
前記差分ΔＩｄが負のときは電圧指令値｜Ｖａ｜を小さくし、前記差分ΔＩｄが正のときは電圧指令値｜Ｖａ｜を大きくして電圧指令値生成部５１６に出力するｄ軸電流制御部６６と、を有することを特徴とする上記（１）記載のモータ制御装置１００を提供することにより、上記課題を解決する。
（３）Ｉｄ（ｒｅｆ）取得部６４４ａが、ｑ軸フィードバック電流値Ｉｑ、もしくは、ｑ軸フィードバック電流値Ｉｑの絶対値｜Ｉｑ｜に基づいてｄ軸電流値Ｉｄ（ｒｅｆ）を取得することを特徴とする上記（２）記載のモータ制御装置１００を提供することにより、上記課題を解決する。
（４）Ｉｄ（ｒｅｆ）取得部６４４ｂが、ｑ軸フィードバック電流値Ｉｑ、もしくは、ｑ軸フィードバック電流値Ｉｑの絶対値｜Ｉｑ｜と対応しｄ軸電流値Ｉｄ（ｒｅｆ）とｑ軸フィードバック電流値Ｉｑとの比である係数Ｋ（Ｉｄ／Ｉｑ）を取得し、さらに前記係数Ｋ（Ｉｄ／Ｉｑ）に前記ｑ軸フィードバック電流値Ｉｑ、もしくは、前記絶対値｜Ｉｑ｜を掛けて負の値とすることでｄ軸電流値Ｉｄ（ｒｅｆ）を取得することを特徴とする上記（２）記載のモータ制御装置１００を提供することにより、上記課題を解決する。
（５）Ｉｄ（ｒｅｆ）取得部６４４ｃが、トルク指令値Ｔ＊と略同一のトルクＴを出力するのに最小の電流をとる目標電流位相θｉ（ｂａｓｅ）を取得し、ｄ軸フィードバック電流値Ｉｄ及びｑ軸フィードバック電流値Ｉｑから求められる電流ベクトルの大きさ｜Ｉａ｜もしくはｑ軸フィードバック電流値Ｉｑの絶対値｜Ｉｑ｜とから下記式
Ｉｄ（ｒｅｆ）＝−｜Ｉａ｜・ｓｉｎ（θｉ（ｂａｓｅ））
もしくは下記式
Ｉｄ（ｒｅｆ）＝−｜Ｉｑ｜・ｔａｎ（θｉ（ｂａｓｅ））
に基づいて電流値Ｉｄ（ｒｅｆ）を取得することを特徴とする上記（２）記載のモータ制御装置１００を提供することにより、上記課題を解決する。
（６）Ｉｄ（ｒｅｆ）取得部６４４ｄが、トルク指令値Ｔ＊、もしくは、トルク指令値Ｔ＊の絶対値｜Ｔ＊｜に基づいてｄ軸電流値Ｉｄ（ｒｅｆ）を取得することを特徴とする上記（２）記載のモータ制御装置１００を提供することにより、上記課題を解決する。
（７）電圧指令設定部６０ａが、電流位相演算部６２と、θｉ減算部６３と、電流位相制御部６４と、を有し、
前記電流位相演算部６２は、ｄ軸フィードバック電流値Ｉｄとｑ軸フィードバック電流値Ｉｑとから下記式に基づいて電流ベクトルの大きさ｜Ｉａ｜を取得するＩａ絶対値演算部６２２と、
｜Ｉａ｜＝（Ｉｄ２＋Ｉｑ２）１／２
前記ｄ軸フィードバック電流値Ｉｄとｑ軸フィードバック電流値Ｉｑとから下記式に基づいて電流位相θｉを算出する位相演算部６２４と、
θｉ＝ｔａｎ−１（−Ｉｄ／Ｉｑ）
を備え、
前記電流ベクトルの大きさ｜Ｉａ｜と対応しトルク指令値Ｔ＊と略同一のトルクＴを出力するのに最小の電流をとる目標電流位相θｉ（ｂａｓｅ）を取得するとともに、
前記θｉ減算部６３は、前記目標電流位相θｉ（ｂａｓｅ）から前記電流位相θｉを引いて差分Δθｉを取得し前記電流位相制御部６４に出力し、
前記電流位相制御部６４は、
ｑ軸フィードバック電流値Ｉｑが正で且つ前記差分Δθｉが正の場合に電圧指令値｜Ｖａ｜を小さくし、ｑ軸フィードバック電流値Ｉｑが正で且つ前記差分Δθｉが負の場合に電圧指令値｜Ｖａ｜を大きくし、ｑ軸フィードバック電流値Ｉｑが負で且つ前記差分Δθｉが負の場合に電圧指令値｜Ｖａ｜を小さくし、ｑ軸フィードバック電流値Ｉｑが負で且つ前記差分Δθｉが正の場合に電圧指令値｜Ｖａ｜を大きくすることを特徴とする上記（１）記載のモータ制御装置１００を提供することにより、上記課題を解決する。
（８）電圧指令設定部６０ａが、ｑ軸フィードバック電流値Ｉｑがゼロ近傍の値であるか否かを判定するｑ軸電流判定部６２６と、ｑ軸フィードバック電流値Ｉｑがゼロ近傍の値であると判定された場合に電流位相制御部６４への入力を差分Δθｉからｄ軸フィードバック電流値Ｉｄに切り替える入力切替部６２８と、をさらに備え、
前記電流位相制御部６４は、
前記ｄ軸フィードバック電流値Ｉｄが正の場合に電圧指令値｜Ｖａ｜を小さくし、前記ｄ軸フィードバック電流値Ｉｄが負の場合に電圧指令値｜Ｖａ｜を大きくすることを特徴とする上記（７）記載のモータ制御装置１００を提供することにより、上記課題を解決する。
（９）電圧指令設定部６０ａ、６０ｂが、トルク指令値Ｔ＊を監視する変動監視部６５０ａをさらに有し、前記トルク指令値Ｔ＊が予め設定された閾値を超えて減少したことを前記変動監視部６５０ａが検知し、且つ電流位相制御部６４またはｄ軸電流制御部６６の積分制御の積分値が予め設定された閾値よりも大きい場合に、前記積分値を減少させて電圧指令値｜Ｖａ｜を生成することを特徴とする上記（２）乃至（８）のいずれかに記載のモータ制御装置１００を提供することにより、上記課題を解決する。
（１０）電圧指令設定部６０ａ、６０ｂが、電圧位相θｖを監視する変動監視部６５０ｂをさらに有し、前記変動監視部６５０ｂは、前記電圧位相θｖが予め設定された上限リミット値もしくはその近傍となった場合に、電流位相制御部６４またはｄ軸電流制御部６６の制御ゲインもしくは積分制御の積分値のいずれか一方もしくは双方を増加させることを特徴とする上記（２）乃至（８）のいずれかに記載のモータ制御装置１００を提供することにより、上記課題を解決する。
（１１）電圧指令設定部６０ａ、６０ｂが、差分ΔＩｄもしくは差分Δθｉを監視する変動監視部６５０ｃをさらに有し、前記変動監視部６５０ｃは、前記差分ΔＩｄもしくは差分Δθｉが予め設定された値を超えた場合に、電流位相制御部６４またはｄ軸電流制御部６６の制御ゲインを増加させることを特徴とする上記（２）乃至（８）のいずれかに記載のモータ制御装置１００を提供することにより、上記課題を解決する。
（１２）電圧指令設定部６０ａ、６０ｂが、電流位相制御部６４またはｄ軸電流制御部６６の出力する電圧指令値｜Ｖａ｜をローパスフィルタ６５２を通して電圧指令値生成部５１６に出力することを特徴とする上記（９）乃至（１１）のいずれかに記載のモータ制御装置１００を提供することにより、上記課題を解決する。
（１３）電圧位相制御部５０がキャリア設定部５２０をさらに有し、前記キャリア設定部５２０は電圧位相θｖと電気角θと電気角速度ωに基づいてキャリア設定情報Ｓｃを生成し、前記キャリア設定情報Ｓｃは搬送波生成部３４の生成する搬送波の立ち下がりの中央位置が三相電圧指令値Ｖｕ、Ｖｖ、Ｖｗの立ち上がりのゼロ位置と交差し、さらに前記搬送波の周波数を前記三相電圧指令値Ｖｕ、Ｖｖ、Ｖｗの奇数の３の整数倍に維持することを特徴とする上記（１）乃至（１２）のいずれかに記載のモータ制御装置１００を提供することにより、上記課題を解決する。
（１４）電圧位相制御部５０が、オフセット補正部７０をさらに有し、前記オフセット補正部７０は、ｄ軸フィードバック電流値Ｉｄ、ｑ軸フィードバック電流値Ｉｑに基づいてｄ軸補正電圧ΔＶｄ、ｑ軸補正電圧ΔＶｑをそれぞれ生成し、電圧指令値生成部５１６が生成したｄ軸電圧指令値Ｖｄ、ｑ軸電圧指令値Ｖｑに前記ｄ軸補正電圧ΔＶｄ、ｑ軸補正電圧ΔＶｑをそれぞれ加算して制御信号生成部３０に出力することを特徴とする上記（１）乃至（１３）のいずれかに記載のモータ制御装置１００を提供することにより、上記課題を解決する。
（１５）ＰＭモータ１０に３相交流の駆動電流Ｉｕ、Ｉｖ、（Ｉｗ）を流下させるインバータ２０と、前記駆動電流Ｉｕ、Ｉｖ、（Ｉｗ）の値を取得する駆動電流取得部１２ｕ、１２ｖと、前記ＰＭモータ１０の電気角θを取得する角度取得部１４と、前記電気角θに基づいて前記駆動電流取得部１２ｕ、１２ｖが取得した前記駆動電流Ｉｕ、Ｉｖ、（Ｉｗ）をｄ軸フィードバック電流値Ｉｄ、ｑ軸フィードバック電流値Ｉｑに変換する３相／ｄｑ変換部２２と、外部からのトルク指令値Ｔ＊に応じた電圧位相θｖと電圧指令値｜Ｖａ｜とを設定しｄ軸電圧指令値Ｖｄ、ｑ軸電圧指令値Ｖｑを生成する電圧位相制御部５０と、前記ｄ軸電圧指令値Ｖｄ、ｑ軸電圧指令値Ｖｑを三相電圧指令値Ｖｕ、Ｖｖ、Ｖｗに変換するｄｑ／３相変換部３２と、搬送波生成部３４とを備え、前記搬送波生成部３４で生成された搬送波と前記三相電圧指令値Ｖｕ、Ｖｖ、Ｖｗとを比較して前記インバータ２０をスイッチングする駆動信号Ｓｕ、Ｓｖ、Ｓｗを生成する制御信号生成部３０と、を有するモータ制御装置１００のモータ制御方法であって、
前記電圧位相制御部５０が、
前記トルク指令値Ｔ＊に基づいて電圧位相θｖを設定する電圧位相設定ステップと、
所定の上限リミット値｜Ｖａ｜ＭＡＸ未満の領域で前記トルク指令値Ｔ＊と略同一のトルクＴを出力するのに最小の電流をとる電圧指令値｜Ｖａ｜を取得する電圧指令設定ステップと、
前記電圧位相θｖと電圧指令値｜Ｖａ｜とに基づいてｄ軸電圧指令値Ｖｄ、ｑ軸電圧指令値Ｖｑを生成するｄ軸ｑ軸電圧指令値生成ステップと、を有することを特徴とするモータ制御方法を提供することにより、上記課題を解決する。
（１６）電圧指令設定ステップが、
トルク指令値Ｔ＊と略同一のトルクを出力するのに最小の電流をとるｄ軸電流値Ｉｄ（ｒｅｆ）を取得するＩｄ（ｒｅｆ）取得ステップと、
前記ｄ軸電流値Ｉｄ（ｒｅｆ）とｄ軸フィードバック電流値Ｉｄとの差分ΔＩｄを取得するΔＩｄ取得ステップと、
前記差分ΔＩｄが負のときは電圧指令値｜Ｖａ｜を小さくし、前記差分ΔＩｄが正のときは電圧指令値｜Ｖａ｜を大きくして電圧指令値｜Ｖａ｜を生成する電圧指令生成ステップと、を有することを特徴とする上記（１５）記載のモータ制御方法を提供することにより、上記課題を解決する。
（１７）Ｉｄ（ｒｅｆ）取得ステップが、ｑ軸フィードバック電流値Ｉｑ、もしくは、ｑ軸フィードバック電流値Ｉｑの絶対値｜Ｉｑ｜に基づいてｄ軸電流値Ｉｄ（ｒｅｆ）を取得することを特徴とする上記（１６）記載のモータ制御方法を提供することにより、上記課題を解決する。
（１８）Ｉｄ（ｒｅｆ）取得ステップが、ｑ軸フィードバック電流値Ｉｑ、もしくは、ｑ軸フィードバック電流値Ｉｑの絶対値｜Ｉｑ｜と対応しｄ軸電流値Ｉｄ（ｒｅｆ）とｑ軸フィードバック電流値Ｉｑとの比である係数Ｋ（Ｉｄ／Ｉｑ）を取得し、さらに前記係数Ｋ（Ｉｄ／Ｉｑ）に前記ｑ軸フィードバック電流値Ｉｑ、もしくは、前記絶対値｜Ｉｑ｜を掛けて負の値とすることでｄ軸電流値Ｉｄ（ｒｅｆ）を取得することを特徴とする上記（１６）記載のモータ制御方法を提供することにより、上記課題を解決する。
（１９）Ｉｄ（ｒｅｆ）取得ステップが、トルク指令値Ｔ＊と略同一のトルＴを出力するのに最小の電流をとる目標電流位相θｉ（ｂａｓｅ）を取得し、ｄ軸フィードバック電流値Ｉｄ及びｑ軸フィードバック電流値Ｉｑから求められる電流ベクトルの大きさ｜Ｉａ｜もしくはｑ軸フィードバック電流値Ｉｑの絶対値｜Ｉｑ｜とから下記式
Ｉｄ（ｒｅｆ）＝−｜Ｉａ｜・ｓｉｎ（θｉ（ｂａｓｅ））
もしくは下記式
Ｉｄ（ｒｅｆ）＝−｜Ｉｑ｜・ｔａｎ（θｉ（ｂａｓｅ））
に基づいて電流値Ｉｄ（ｒｅｆ）を取得することを特徴とする上記（１６）記載のモータ制御方法を提供することにより、上記課題を解決する。
（２０）Ｉｄ（ｒｅｆ）取得ステップが、トルク指令値Ｔ＊、もしくは、トルク指令値Ｔ＊の絶対値｜Ｔ＊｜に基づいてｄ軸電流値Ｉｄ（ｒｅｆ）を取得することを特徴とする上記（１６）記載のモータ制御方法を提供することにより、上記課題を解決する。
（２１）電圧指令設定ステップが、電流位相演算ステップと、θｉ減算ステップと、電流位相制御ステップと、を有し、
前記電流位相演算ステップは、ｄ軸フィードバック電流値Ｉｄとｑ軸フィードバック電流値Ｉｑとから下記式に基づいて電流ベクトルの大きさ｜Ｉａ｜を取得するとともに、
｜Ｉａ｜＝（Ｉｄ２＋Ｉｑ２）１／２
前記ｄ軸フィードバック電流値Ｉｄとｑ軸フィードバック電流値Ｉｑとから下記式に基づいて電流位相θｉを算出し、
θｉ＝ｔａｎ−１（−Ｉｄ／Ｉｑ）
前記電流ベクトルの大きさ｜Ｉａ｜と対応しトルク指令値Ｔ＊と略同一のトルクＴを出力するのに最小の電流をとる目標電流位相θｉ（ｂａｓｅ）を取得するとともに、
前記θｉ減算ステップは、前記目標電流位相θｉ（ｂａｓｅ）から前記電流位相θｉを引いて差分Δθｉを取得し、
前記電流位相制御ステップは、ｑ軸フィードバック電流値Ｉｑが正で且つ前記差分Δθｉが正の場合に電圧指令値｜Ｖａ｜を小さくし、ｑ軸フィードバック電流値Ｉｑが正で且つ前記差分Δθｉが負の場合に電圧指令値｜Ｖａ｜を大きくし、ｑ軸フィードバック電流値Ｉｑが負で且つ前記差分Δθｉが負の場合に電圧指令値｜Ｖａ｜を小さくし、ｑ軸フィードバック電流値Ｉｑが負で且つ前記差分Δθｉが正の場合に電圧指令値｜Ｖａ｜を大きくすることを特徴とする上記（１５）記載のモータ制御方法を提供することにより、上記課題を解決する。
（２２）電圧指令設定ステップが、ｑ軸フィードバック電流値Ｉｑがゼロ近傍の値であるか否かを判定するｑ軸電流判定ステップと、ｑ軸フィードバック電流値Ｉｑがゼロ近傍の値であると判定された場合に電流位相制御部６４への入力を差分Δθｉからｄ軸フィードバック電流値Ｉｄに切り替える入力切替ステップと、をさらに備え、
電流位相制御ステップが、前記ｄ軸フィードバック電流値Ｉｄが正の場合に電圧指令値｜Ｖａ｜を小さくし、前記ｄ軸フィードバック電流値Ｉｄが負の場合に電圧指令値｜Ｖａ｜を大きくすることを特徴とする上記（２１）記載のモータ制御方法を提供することにより、上記課題を解決する。
（２３）電圧指令設定ステップが、
トルク指令値Ｔ＊が予め設定された閾値を超えて減少することを検知する変動監視ステップと、
前記トルク指令値Ｔ＊が予め設定された閾値を超えて減少し且つ電流位相制御部６４またはｄ軸電流制御部６６の積分制御の積分値が予め設定された閾値よりも大きい場合に、前記積分値を減少させる高速応答ステップと、をさらに有することを特徴とする上記（１６）乃至（２２）のいずれかに記載のモータ制御方法を提供することにより、上記課題を解決する。
（２４）電圧指令設定ステップが、
電圧位相θｖが予め設定された上限リミット値もしくはその近傍となったことを検知する変動監視ステップと、
前記電圧位相θｖが予め設定された上限リミット値もしくはその近傍となった場合に、電流位相制御部６４またはｄ軸電流制御部６６の制御ゲインもしくは積分制御の積分値のいずれか一方もしくは双方を増加させる高速応答ステップと、をさらに有することを特徴とする上記（１６）乃至（２２）のいずれかに記載のモータ制御方法を提供することにより、上記課題を解決する。
（２５）電圧指令設定ステップが、
差分ΔＩｄもしくは差分Δθｉが予め設定された値を超えたことを検知する変動監視ステップと、
前記差分ΔＩｄもしくは差分Δθｉが予め設定された値を超えた場合に、電流位相制御部６４またはｄ軸電流制御部６６の制御ゲインを増加させる高速応答ステップと、をさらに有することを特徴とする上記（１６）乃至（２２）のいずれかに記載のモータ制御方法を提供することにより、上記課題を解決する。
（２６）電圧指令設定ステップが、電流位相制御部６４またはｄ軸電流制御部６６の出力する電圧指令値｜Ｖａ｜をローパスフィルタ６５２を通して電圧指令値生成部５１６に出力することを特徴とする上記（２３）乃至（２５）のいずれかに記載のモータ制御方法を提供することにより、上記課題を解決する。
（２７）電圧位相制御部５０がキャリア設定部５２０をさらに有し、前記キャリア設定部５２０は電圧位相θｖと電気角θと電気角速度ωに基づいてキャリア設定情報Ｓｃを生成し、前記キャリア設定情報Ｓｃは搬送波生成部３４の生成する搬送波の立ち下がりの中央位置が三相電圧指令値Ｖｕ、Ｖｖ、Ｖｗの立ち上がりのゼロ位置と交差し、さらに前記搬送波の周波数を前記三相電圧指令値Ｖｕ、Ｖｖ、Ｖｗの奇数の３の整数倍に維持することを特徴とする上記（１５）乃至（２６）のいずれかに記載のモータ制御方法を提供することにより、上記課題を解決する。
（２８）オフセット補正ステップをさらに有し、
前記オフセット補正ステップは、ｄ軸フィードバック電流値Ｉｄ、ｑ軸フィードバック電流値Ｉｑに基づいてｄ軸補正電圧ΔＶｄ、ｑ軸補正電圧ΔＶｑをそれぞれ生成し、電圧指令値生成部５１６が生成したｄ軸電圧指令値Ｖｄ、ｑ軸電圧指令値Ｖｑに前記ｄ軸補正電圧ΔＶｄ、ｑ軸補正電圧ΔＶｑをそれぞれ加算して制御信号生成部３０に出力することを特徴とする上記（１５）乃至（２７）のいずれかに記載のモータ制御方法を提供することにより、上記課題を解決する。
【発明の効果】
【０００８】
本発明に係るモータ制御装置及びモータ制御方法は、従来の弱め磁束制御領域を電圧位相制御部が動作制御する。このため、制御系が少なく切替時のトルクショックの発生や応答の遅延を抑制することができる。また、制御系の構成が簡略化しコスト削減を図ることができる。
また、本発明に係るモータ制御装置及びモータ制御方法は、電圧指令値｜Ｖａ｜が上限リミット値未満の領域において、トルク指令値Ｔ＊と同一のトルクＴを出力するのに最小の電流値｜Ｉａ｜をとる目標電流位相θｉ（ｂａｓｅ）となるように動作制御を行う。このため、ＰＭモータを損失の少ない効率の良い状態で動作させることができる。また、正弦波制御部を有する場合、目標電流位相θｉ（ｂａｓｅ）と同等な電流位相θｉで電圧位相制御部から正弦波制御部への切り替えが行われるため、トルクショックの少ないスムーズな切替動作が可能となる。
【図面の簡単な説明】
【０００９】
【図１】本発明に係るモータ制御装置のブロック図である。
【図２】本発明に係るモータ制御装置の搬送波の周期を説明する図である。
【図３】本発明に係るモータ制御装置の第１の形態の電圧指令設定部を示すブロック図である。
【図４】本発明に係るｄ軸電流値Ｉｄ（ｒｅｆ）を説明するベクトル図である。
【図５】本発明に係るモータ制御装置の第２の形態の電圧指令設定部を示すブロック図である。
【図６】本発明に係るモータ制御装置の第２の形態の電圧指令設定部の他の例を示すブロック図である。
【図７】補正電圧演算部を備えた本発明に係るモータ制御装置の電圧指令設定部の例を示すブロック図である。
【図８】変動監視部を備えた本発明に係るモータ制御装置の電圧指令設定部を示すブロック図である。
【発明を実施するための形態】
【００１０】
本発明に係るモータ制御装置１００及びモータ制御方法の実施の形態について図面に基づいて説明する。ここで、図１は本発明に係るモータ制御装置１００のブロック図である。尚、ここでは正弦波制御部４０を備えたモータ制御装置１００を用いて説明を行うが、本発明に係るモータ制御装置１００及びモータ制御方法は、ＰＭモータ１０の仕様や能力、用途によっては、後述の電圧指令値｜Ｖａ｜の下限リミット値｜Ｖａ｜ＭＩＮを最適化することで正弦波制御部４０を有さない構成とすることもできる。
【００１１】
先ず、本発明に係るモータ制御装置１００は、ＰＭモータ（永久磁石モータ）１０の動作を制御するものであり、このＰＭモータ１０に３相交流の駆動電流Ｉｕ、Ｉｖ、Ｉｗを流下させるインバータ２０と、この駆動電流Ｉｕ、Ｉｖ、（Ｉｗ）の値を取得する駆動電流取得部１２ｕ、１２ｖと、ＰＭモータ１０の電気角θを取得する角度取得部１４と、駆動電流取得部１２ｕ、１２ｖが取得した駆動電流Ｉｕ、Ｉｖ、（Ｉｗ）をｄ軸フィードバック電流値Ｉｄ、ｑ軸フィードバック電流値Ｉｑに変換する３相／ｄｑ変換部２２と、外部（システムの上位の制御部等）から指示されるトルク指令値Ｔ＊に応じて電圧位相θｖと電圧指令値｜Ｖａ｜とを設定し電圧位相制御モードにおけるｄ軸電圧指令値Ｖｄ、ｑ軸電圧指令値Ｖｑを生成する電圧位相制御部５０と、このｄ軸電圧指令値Ｖｄ、ｑ軸電圧指令値Ｖｑに基づいてインバータ２０をスイッチングする駆動信号Ｓｕ、Ｓｖ、Ｓｗを生成する制御信号生成部３０と、を有している。また、モータ制御装置１００が正弦波制御部４０を有する構成では、外部から指示されるトルク指令値Ｔ＊に応じてｄ軸電流指令値Ｉｄ＊、ｑ軸電流指令値Ｉｑ＊を設定し正弦波制御モードにおけるｄ軸電圧指令値Ｖｄ、ｑ軸電圧指令値Ｖｑを生成する正弦波制御部４０と、ＰＭモータ１０の制御を正弦波制御部４０と電圧位相制御部５０とで切り替える切替部２４と、を有している。また、上記の制御信号生成部３０は、電圧指令値｜Ｖａ｜に基づいてｄ軸電圧指令値Ｖｄ、ｑ軸電圧指令値Ｖｑを線形補正する線形補正部３８と、線形補正されたｄ軸電圧指令値Ｖｄ、ｑ軸電圧指令値ＶｑをＵ相、Ｖ相、Ｗ相の三相電圧指令値Ｖｕ、Ｖｖ、Ｖｗに変換するｄｑ／３相変換部３２と、後述のキャリア設定情報Ｓｃに基づく周期の搬送波を生成する搬送波生成部３４と、ｄｑ／３相変換部３２から出力された三相電圧指令値Ｖｕ、Ｖｖ、Ｖｗと搬送波生成部３４から出力された搬送波とを比較してインバータ２０をスイッチングする駆動信号Ｓｕ、Ｓｖ、Ｓｗを生成する駆動信号生成部３６と、を有している。
【００１２】
また、モータ制御装置１００を構成するインバータ２０は駆動信号生成部３６から出力されるＨｉ−Ｌｏｗの駆動信号Ｓｕ、Ｓｖ、Ｓｗによってスイッチング動作して、バッテリ等の周知の直流電源部１８からの直流電力を駆動信号Ｓｕ、Ｓｖ、Ｓｗに基づく３相の交流電圧に変換して出力する。これにより、ＰＭモータ１０の電機子巻線には位相が１／３周期（２／３π（ｒａｄ））づつずれた３相の駆動電流Ｉｕ、Ｉｖ、Ｉｗがそれぞれ流下する。
【００１３】
また、ＰＭモータ１０は、前述のように回転子側に永久磁石を設けるとともに、固定子側に３相の電機子巻線を設け、この３相の電機子巻線に前述の駆動電流Ｉｕ、Ｉｖ、Ｉｗをそれぞれ流下させることで各電機子巻線の磁極及び磁束を連続的に変化させ、回転子を回転させるものである。尚、ＰＭモータ１０としては永久磁石を回転子に埋め込んだＩＰＭ（Ｉｎｔｅｒｉｏｒ  Ｐｅｒｍａｎｅｎｔ  Ｍａｇｎｅｔ）モータを用いることが好ましい。
【００１４】
また、駆動電流取得部１２ｕ、１２ｖはインバータ２０のスイッチング動作によって流下する駆動電流Ｉｕ、Ｉｖ、Ｉｗを非接触で取得可能な周知の電流センサを用いることができる。また、駆動電流取得部は総駆動電流等から演算によって駆動電流Ｉｕ、Ｉｖ、Ｉｗを取得する電流センサレス制御の構成としても良い。尚、本例では周知の電流センサを用い駆動電流Ｉｕ、Ｉｖ、Ｉｗのうちの２つの駆動電流Ｉｕ、Ｉｖを取得し、ｄ軸、ｑ軸フィードバック電流値Ｉｄ、Ｉｑに変換する例を示している。
【００１５】
また、角度取得部１４としては、回転子の角度を取得可能な周知の角度センサを用いても良いし、電圧指令値等から演算により角度を取得する角度センサレス制御の構成としても良い。中でも特にレゾルバ回転角センサを用いて、ＰＭモータ１０の電気角θを取得することが好ましい。尚、上記の電気角θと駆動電流Ｉｕ、Ｉｖの取得は、特に搬送波が三角波の場合には、三角波の頂点と谷の両方のタイミングで行い、三角波の半周期毎にモータ制御装置１００の各部にて使用することが好ましい。そして、角度取得部１４が取得した電気角θは角速度演算部１６にも出力され、この角速度演算部１６は入力した電気角θから電気角速度ω（ｒａｄ／ｓ）を算出し、モータ制御装置１００の各部に出力する。
【００１６】
また、ＰＭモータ１０には周知の冷却機構１０１を設けることが好ましい。ここで、冷却機構１０１は、例えばＰＭモータ１０の周囲に設けられ冷却水を流下することでＰＭモータ１０を冷却するウォータージャケット１０２と、冷却水の水温Ｔｗを取得する周知の温度取得手段１０８と、を有している。また、ＰＭモータ１０の電機子巻線には例えばサーミスタ等の温度センサが設けられ巻線温度Ｔａが取得される。そして、水温Ｔｗと巻線温度Ｔａとはモータパラメータ設定部１１０に出力され、このモータパラメータ設定部１１０は、水温ＴｗからＰＭモータ１０の永久磁石の温度を間接的に取得するとともに、この永久磁石温度と巻線温度Ｔａとに対応したモータパラメータ（誘起電圧定数φａ、ｄ軸インダクタンスＬｄ、ｑ軸インダクタンスＬｑ）を例えばデータテーブル等から取得してトルク計算部４０４、５０４などに出力する。
【００１７】
また、３相／ｄｑ変換部２２は、角度取得部１４が取得したＰＭモータ１０の電気角θ（ｒａｄ）に基づいて駆動電流取得部１２ｕ、１２ｖが取得した駆動電流Ｉｕ、Ｉｖ、（Ｉｗ）の値に対する３相２相変換及び回転座標変換を行い、駆動電流Ｉｕ、Ｉｖ、（Ｉｗ）をｄ軸電流値Ｉｄ（磁束分電流値）とｑ軸電流値Ｉｑ（トルク分電流値）とに変換する。そして、これらをｄ軸フィードバック電流値Ｉｄ、ｑ軸フィードバック電流値Ｉｑとして切替部２４に出力する。
【００１８】
切替部２４はＰＭモータ１０の運転状況に応じてｄ軸電圧指令値Ｖｄ、ｑ軸電圧指令値Ｖｑの生成方法を切り替える切り替え回路であり、例えば、ＰＭモータ１０が所定の低速度領域で動作する場合には正弦波制御部４０による正弦波制御モードによってＰＭモータ１０を動作させ、また、ＰＭモータ１０が所定の高回転速度、高トルクで動作する場合にはＰＭモータ１０の制御を電圧位相制御部５０に切り替えて電圧位相制御モードによって動作させる。尚、本発明に係るモータ制御装置１００は、従来の弱め磁界制御領域（過変調ＰＷＭ制御領域）も電圧位相制御部５０が動作制御する。よって、切替の判断を電圧指令値｜Ｖａ｜で行う場合には、従来の弱め磁界制御領域を含む電圧指令値｜Ｖａ｜で切替を行う。また、切替の判断を電圧指令値｜Ｖａ｜と電気角速度ωとを組み合わせて行い、電圧指令値｜Ｖａ｜と電気角速度ωとが共に所定の閾値を上回った場合に電圧位相制御部５０へ切り替えを行うことが更に好ましい。また、これらの切り替えの閾値は、電源電圧Ｖｄｃ及び他の閾値と組み合わせて設定するようにしても良い。尚、正弦波制御部４０から電圧位相制御部５０への切り替え時の閾値と、電圧位相制御部５０から正弦波制御部４０への切り替え時の閾値とにはヒステリシス幅を付与し、閾値境界での頻繁な切り替え動作を防止することが好ましい。
【００１９】
また、正弦波制御部４０から電圧位相制御部５０への切り替え時には、正弦波制御部４０での切替直前の電圧指令値｜Ｖａ｜を電圧位相制御部５０を構成する電圧指令設定部６０に出力し、後述の電流位相制御部６４もしくはｄ軸電流制御部６６における初期値及び積分制御の積分値として使用する。また、正弦波制御部４０での切替直前の電圧位相θｖは電圧位相制御部５０を構成する電圧位相設定部５０２に出力し、電圧位相設定部５０２における初期値と積分制御の積分値として使用する。さらに、正弦波制御部４０での切替直前の電流位相θｉを後述の位相演算部６２４に出力して電流位相θｉの初期値としても良い。このように、正弦波制御部４０から電圧位相制御部５０への切り替え時に正弦波制御部４０の電圧指令値｜Ｖａ｜と電圧位相θｖとを電圧位相制御部５０の所定のブロックに出力し初期値や積分値とすることで切り替え前後での数値が引き継がれ、トルクショックの小さい切替動作を行うことができる。さらに、これらの電圧指令値｜Ｖａ｜、電圧位相θｖ、電流位相θｉは、上記のように切替直前の値をそのまま引継いでも良いし、ローパスフィルタ等を用いて（正弦波制御部４０による制御期間中に）平滑化した値を電圧位相制御部５０に引き継ぐようにしても良い。この構成では、短期的な変動が除去された平滑化した値を引き継ぎに用いるため、さらに安定した引き継ぎ動作を行うことができる。
【００２０】
また、電圧位相制御部５０から正弦波制御部４０への切り替え時には、電圧位相制御部５０で生成された切替直前のｄ軸、ｑ軸フィードバック電流値Ｉｄ、Ｉｑが電流指令値設定部４０２に出力され電流指令値Ｉａ＊の初期値及び積分制御の積分値として使用される。また、正弦波制御部４０がｄ軸ローパスフィルタ４９０Ａ、ｑ軸ローパスフィルタ４９０Ｂを有する場合には、ｄ軸、ｑ軸フィードバック電流値Ｉｄ、Ｉｑはこれらローパスフィルタ４９０Ａ、４９０Ｂの初期値及び蓄積値としても使用される。また、電圧位相制御部５０で生成された切替直前のｄ軸、ｑ軸電圧指令値Ｖｄ、Ｖｑは、正弦波制御部４０のｄ軸、ｑ軸電圧指令値Ｖｄ、Ｖｑの初期値として使用されるとともに、このｄ軸、ｑ軸電圧指令値Ｖｄ、Ｖｑから後述の非干渉制御部４１４が算出する干渉項Ｖｄ’、Ｖｑ’をそれぞれ引いた値を電流積分制御部４１０ａの積分値として使用する。このように、電圧位相制御部５０から正弦波制御部４０への切り替え時には電圧位相制御部５０のｄ軸、ｑ軸フィードバック電流値Ｉｄ、Ｉｑ、及びｄ軸、ｑ軸電圧指令値Ｖｄ、Ｖｑが正弦波制御部４０の所定のブロックに出力し初期値や積分値とされる。また、後述するように電圧位相制御部５０は電圧指令値｜Ｖａ｜が上限リミット値未満の領域において電流位相θｉを目標電流位相θｉ（ｂａｓｅ）と同等の値になるように制御し、正弦波制御部４０への切り替えはこの状態で行われる。このため、切り替え前後のｄ軸、ｑ軸電流値Ｉｄ、Ｉｑはほぼ同等の値となり、トルクショックの小さい切替動作を行うことができる。
【００２１】
次に、正弦波制御部４０の構成及び動作を説明する。尚、以下で説明する正弦波制御部４０の構成は本発明に好適な一例であるから、下記の構成に限定されるわけではなく、他の如何なる正弦波制御機構を用いても良い。
【００２２】
先ず、図示しない上位システムの制御部等からトルク指令値Ｔ＊が出力される。このトルク指令値Ｔ＊はＰＭモータ１０の動作目標となるトルクである。そして、このトルク指令値Ｔ＊は切替部２４が正弦波制御部４０を選択している場合、ローパスフィルタＬＰＦを介して正弦波制御部４０の電流指令値設定部４０２に入力する。
【００２３】
また、正弦波制御部４０のトルク計算部４０４にはモータパラメータ設定部１１０から永久磁石温度と巻線温度Ｔａに応じたモータパラメータ（φａ、Ｌｄ、Ｌｑ）が入力する。また、電流指令値生成部４０６から出力されるｄ軸、ｑ軸電流指令値Ｉｄ＊、Ｉｑ＊が入力する。そして、トルク計算部４０４はこれらの入力値に基づいてＰＭモータ１０の現在のトルクＴを算出し、電流指令値設定部４０２に出力する。
【００２４】
そして、電流指令値設定部４０２はローパスフィルタＬＰＦを介して入力したトルク指令値Ｔ＊とトルク計算部４０４から入力したトルクＴとの差分がゼロとなるような電流指令値Ｉａ＊を積分制御、比例制御等の周知の演算処理により算出し、電流指令値生成部４０６に出力する。
【００２５】
電流指令値生成部４０６は、電流指令値設定部４０２から入力した電流指令値Ｉａ＊の大きさ｜Ｉａ＊｜に基づいて例えば電流−位相角データマップ６２０を参照し、この｜Ｉａ＊｜と対応する目標電流位相θｉ（ｂａｓｅ）を取得する。尚、目標電流位相θｉ（ｂａｓｅ）は、入力された電流指令値Ｉａ＊の大きさ｜Ｉａ＊｜毎にトルクＴが最大となる電流位相角度であり、予め実験等により求められ、例えばテーブルデータ化されて電流−位相角データマップ６２０に記録されている。
【００２６】
次に、電流指令値生成部４０６は取得された｜Ｉａ＊｜と目標電流位相θｉ（ｂａｓｅ）とから、下記式に基づいてｄ軸電流指令値Ｉｄ＊、ｑ軸電流指令値Ｉｑ＊を算出する。
Ｉｄ＊＝Ｉａ＊・ｓｉｎ（θｉ（ｂａｓｅ））
Ｉｑ＊＝Ｉａ＊・ｃｏｓ（θｉ（ｂａｓｅ））
尚、ｄ軸電流指令値Ｉｄ＊は常に負の値をとり、またｑ軸電流指令値Ｉｑ＊は電流指令値Ｉａ＊と同符号の値をとる。
【００２７】
電流指令値生成部４０６によって生成されたｄ軸電流指令値Ｉｄ＊、ｑ軸電流指令値Ｉｑ＊は、ｄ軸ローパスフィルタ４９０Ａ及びｑ軸ローパスフィルタ４９０Ｂが存在する場合には、それぞれｄ軸ローパスフィルタ４９０Ａ及びｑ軸ローパスフィルタ４９０Ｂに入力する。このとき、ｄ軸電流指令値Ｉｄ＊の絶対値｜Ｉｄ＊｜が増加する際のｄ軸ローパスフィルタ４９０Ａの時定数をτｄ（ｕｐ）とし、減少する際の時定数をτｄ（ｄｏｗｎ）とし、ｑ軸電流指令値Ｉｑ＊の絶対値｜Ｉｑ＊｜が増加する際のｑ軸ローパスフィルタ４９０Ｂの時定数をτｑ（ｕｐ）とし、減少する際の時定数をτｑ（ｄｏｗｎ）としたときに、
τｄ（ｄｏｗｎ）＞τｑ（ｕｐ）＞（τｑ（ｄｏｗｎ）、τｄ（ｕｐ））
とすることが好ましい。
この構成によれば、絶対値｜Ｉｄ＊｜が増加する際もしくは絶対値｜Ｉｑ＊｜が減少する際にはＰＭモータ１０の制御に大きな遅延が生じないようｄ軸電流指令値Ｉｄ＊もしくはｑ軸電流指令値Ｉｑ＊を迅速に伝達するとともに、ｑ絶対値｜Ｉｑ＊｜が増加する際にはトルクＴの応答性が満足できる範囲内で遅らせて出力し、また絶対値｜Ｉｄ＊｜が減少する際にはその減少速度をｑ軸電流指令値Ｉｑ＊の増加速度よりも遅らせて出力する。これにより、弱め磁束電流となるｄ軸電流指令値Ｉｄ＊をｑ軸電流指令値Ｉｑ＊よりも優先して生成することが可能となり、電流指令値Ｉａ＊が変化するトルク応答などの際にｑ軸電流Ｉｑに対してｄ軸電流Ｉｄが不足しないようにＰＭモータ１０を制御することができる。
【００２８】
また、ｄ軸、ｑ軸ローパスフィルタ４９０Ａ、４９０Ｂを通過したｄ軸、ｑ軸電流指令値Ｉｄ＊、Ｉｑ＊は、次に電圧指令値生成部４１６に入力する。ここで、電圧指令値生成部４１６の好適な一例を説明する。先ず、電圧指令値生成部４１６に入力したｄ軸、ｑ軸電流指令値Ｉｄ＊、Ｉｑ＊は２分岐して、一方は非干渉制御部４１４に入力する。また、他方はｄ軸、ｑ軸フィードバック電流値Ｉｄ、Ｉｑが減算されて偏差ΔＩｄ、ΔＩｑとされた後、電流制御部４１０に入力する。また、非干渉制御部４１４にはモータパラメータ（φａ、Ｌｄ、Ｌｑ）と、電気角速度ωが入力し、ｄ軸、ｑ軸間での干渉項Ｖｄ’、Ｖｑ’が算出される。
【００２９】
また、電流制御部４１０は、例えば電流積分制御部４１０ａと電流比例制御部４１０ｂとを有しており、電流制御部４１０に入力した偏差ΔＩｄ、ΔＩｑは２分岐して、電流積分制御部４１０ａと電流比例制御部４１０ｂとのそれぞれに入力する。そして、電流積分制御部４１０ａ、電流比例制御部４１０ｂにおいて偏差ΔＩｄ及び偏差ΔＩｑがそれぞれゼロとなるように周知の電流積分制御、電流比例制御が施される。そして、電流積分制御部４１０ａの出力に非干渉制御部４１４からの干渉項Ｖｄ’、Ｖｑ’が加算された後、電流比例制御部４１０ｂからの出力が加算されることで、ｄ軸ｑ軸間の干渉成分の影響が考慮されたｄ軸電圧指令値Ｖｄ、ｑ軸電圧指令値Ｖｑが生成される。このｄ軸電圧指令値Ｖｄ、ｑ軸電圧指令値Ｖｑは切替部２４を介して制御信号生成部３０に出力される。
【００３０】
また、電流比例制御部４１０ｂの出力が加算される前段のｄ軸、ｑ軸電圧指令値Ｖｄ’’、Ｖｑ’’は正弦波制御部４０の極座標変換部４１８に出力され、この極座標変換部４１８において極座標変換が施され電圧位相θｖと、電圧指令値｜Ｖａ｜とが取得される。そして、電圧位相θｖはキャリア設定部４２０に出力される。また、電圧指令値｜Ｖａ｜は切替部２４を介して制御信号生成部３０の線形補正部３８に出力される。
【００３１】
また、キャリア設定部４２０は、極座標変換部４１８で得られた電圧位相θｖと電気角速度ωと電気角θとに応じてキャリア設定情報Ｓｃを生成する。尚、キャリア設定情報Ｓｃとは搬送波生成部３４にて生成される搬送波を後述の適切な周波数及び状態に維持するための情報である。ただし、ＰＭモータ１０が停止状態や低速で回転する低速度領域では、キャリア設定部４２０は予め設定された一定周期の値（固定値）をキャリア設定情報Ｓｃとする。よって、この領域では制御信号生成部３０は非同期制御状態で搬送波と三相電圧指令値Ｖｕ、Ｖｖ、Ｖｗとの比較動作を行い駆動信号Ｓｕ、Ｓｖ、Ｓｗを生成する。尚、比較動作に関しては後述する。これにより、ＰＭモータ１０は非同期制御で回転制御される。また、電気角速度ωが予め設定された回転速度以上となった場合、キャリア設定部４２０は同期制御のためのキャリア設定情報Ｓｃを生成して搬送波生成部３４に出力する。これにより、ＰＭモータ１０は同期制御される。尚、同期制御から非同期制御に切り替わる回転速度と、非同期制御から同期制御に切り替わる回転速度とにはヒステリシス幅を持たせ、切り替え境界の回転速度における頻繁な切り替わりを防止することが好ましい。
【００３２】
ここで、キャリア設定情報Ｓｃに関して説明を行う。先ず、このキャリア設定情報Ｓｃは搬送波生成部３４で生成される搬送波を適切な周波数及び状態に維持するものである。尚、搬送波の適切な周波数及び状態とは、例えば搬送波が図２（ａ）に示すような三角波の場合には、図２（ａ）中の点Ａに示すように、搬送波の立ち下がりの中央位置が三相電圧指令値Ｖｕ、Ｖｖ、Ｖｗ（点ＡではＶｕ）の立ち上がりのゼロ位置と交差し、さらに搬送波の周波数が三相電圧指令値Ｖｕ、Ｖｖ、Ｖｗの周波数の奇数の３の整数倍、即ち、９、１５、２１、２７倍等（以後、この倍数を同期数とする）となるものである。また、例えば搬送波が図２（ｂ）に示すような、横軸に対して立ち上りのノコギリ波と立ち下りのノコギリ波とを組み合わせた波形の場合には、図２（ｂ）の点Ａに示すように、搬送波の立ち下がりの中央位置が三相電圧指令値Ｖｕ、Ｖｖ、Ｖｗ（点ＡではＶｕ）の立ち上がりのゼロ位置と交差し、さらにノコギリ波２個分を１周期とした搬送波の周波数が三相電圧指令値Ｖｕ、Ｖｖ、Ｖｗの周波数の奇数の３の整数倍、即ち、９、１５、２１、２７倍等となるものである。そして、キャリア設定情報Ｓｃは電気角速度ωの変化に連動して変化し、搬送波を上記の状態に維持する。また、電気角速度ωが予め設定された所定の値を超えて増加もしくは減少した場合、同期数を１段階上下して搬送波を上記の状態に維持する。これにより、搬送波生成部３４で生成される搬送波は同期制御時において常に上記の状態を満たした周波数に維持される。そして、この構成を有する本発明に係るモータ制御装置１００及びモータ制御方法は、駆動信号Ｓｕ、Ｓｖ、Ｓｗが正弦波パターン（過変調パターン）から矩形波パターンへと変化する際の連続性が良好に維持され安定した駆動信号Ｓｕ、Ｓｖ、Ｓｗを生成することができる。また、出力線間電圧Ｖｕｖ、Ｖｖｗ、Ｖｗｕは対称性を備え、ＰＭモータ１０の安定した制御が可能となる。
【００３３】
次に、電圧位相制御部５０の構成及び動作を説明する。尚、本発明に係る電圧位相制御部５０はこの制御構成によって弱め磁束領域の制御をも可能とするものである。
【００３４】
先ず、正弦波制御部４０における電圧指令値｜Ｖａ｜もしくは電気角速度ωが上昇して予め設定されている上限の閾値を越えた場合、切替部２４はＰＭモータ１０の制御を正弦波制御部４０から電圧位相制御部５０に切り替える。このとき、正弦波制御部４０での切替直前の電圧指令値｜Ｖａ｜は前述のように電流位相制御部６４もしくはｄ軸電流制御部６６に出力され、電流位相制御部６４もしくはｄ軸電流制御部６６における初期値及び積分制御の積分値として使用される。また、正弦波制御部４０での切替直前の電圧位相θｖは電圧位相設定部５０２に出力され、電圧位相設定部５０２における初期値と積分制御の積分値として使用される。尚、これらの引き継ぎ値は前述のように平滑化した値を用いても良い。
【００３５】
尚、正弦波制御部４０から電圧位相制御部５０への切り替えは、例えば正弦波制御部４０による電圧指令値｜Ｖａ｜が予め設定された閾値以上となったときに行うようにしても良い。また、このときの電圧指令値｜Ｖａ｜の閾値は、出力電圧の電圧利用率が正弦波制御の上限値近傍となるときの値としても良い。また、正弦波制御部４０による制御では出力電圧が不足するようなトルク指令値Ｔ＊が入力されるか、または、そのようなトルクを出力する場合や、そのような電気角速度となる場合に切り替えを行うようにしても良い。さらに、これらの切り替えの閾値は電源電圧Ｖｄｃ及び他の閾値と組み合わせて設定するようにしても良い。
【００３６】
そして、切替部２４の切り替え動作により、トルク指令値Ｔ＊はローパスフィルタＬＰＦを介して電圧位相制御部５０の電圧位相設定部５０２に入力する。また、電圧位相制御部５０のトルク計算部５０４にはモータパラメータ設定部１１０からＰＭモータ１０のモータパラメータ（φａ、Ｌｄ、Ｌｑ）が入力するとともに、３相／ｄｑ変換部２２からのｄ軸、ｑ軸フィードバック電流値Ｉｄ、Ｉｑが入力する。そして、トルク計算部５０４はこれらモータパラメータとｄ軸、ｑ軸フィードバック電流値Ｉｄ、ＩｑとからＰＭモータ１０の現在のトルクＴを算出して、電圧位相設定部５０２に出力する。
【００３７】
そして、電圧位相設定部５０２は、入力したトルク指令値Ｔ＊とトルクＴとの差がゼロとなるような電圧位相θｖを積分制御、比例制御などの周知の演算により生成する（電圧位相設定ステップ）。尚、電圧位相設定部５０２には電源電圧Ｖｄｃ及び電気角速度ωと対応した電圧位相θｖの上限リミット値が設定されており、電圧位相設定部５０２はこの上限リミット値の範囲内で電圧位相θｖを生成する。そして、生成した電圧位相θｖを電圧位相制御部５０の電圧指令値生成部５１６とキャリア設定部５２０に出力する。そして、キャリア設定部５２０は電圧位相θｖと電気角速度ωと電気角θとから前述のキャリア設定部４２０と同様のキャリア設定情報Ｓｃを生成し、搬送波生成部３４に出力する。
【００３８】
また、電圧位相制御部５０は電圧指令設定部６０を有しており、この電圧指令設定部６０にはｄ軸、ｑ軸フィードバック電流値Ｉｄ、Ｉｑの双方もしくは一方が入力し、電圧指令値｜Ｖａ｜が上限リミット値｜Ｖａ｜ＭＡＸと下限リミット値｜Ｖａ｜ＭＩＮの範囲内にあるときは、後述の手法に基づいてトルク指令値Ｔ＊と略同一のトルクＴを出力するのに最小の電流をとるような電圧指令値｜Ｖａ｜を取得して電圧指令値生成部５１６及び線形補正部３８に出力する（電圧指令設定ステップ）。また、電圧指令値｜Ｖａ｜が上限リミット値｜Ｖａ｜ＭＡＸの場合には、ＰＭモータ１０は最大の出力電圧で電圧位相θｖによる電圧位相制御が行われる。このとき、トルク指令値Ｔ＊と略同一のトルクＴを出力するために電圧位相θｖが大きくなると、これに伴ってｄ軸電流Ｉｄは負方向に大きくなり、これにより弱め磁束領域の制御が可能となる。特に、上限リミット値｜Ｖａ｜ＭＡＸを、例えば図２（ａ）に示すように搬送波と三相電圧指令Ｖｕ、Ｖｖ、Ｖｗとが、電圧指令Ｖｕ、Ｖｖ、Ｖｗの１周期の間で２回交差する矩形波形成電圧値｜Ｖａ’｜とした場合には、これら搬送波と電圧指令値Ｖｕ、Ｖｖ、Ｖｗとの比較動作により生成される駆動信号Ｓｕ、Ｓｖ、Ｓｗは１パルスの矩形波となり、ＰＭモータ１０はこの矩形波パターンによって制御される。尚、電圧指令設定部６０の構成及び動作に関しては後に詳しく説明する。
【００３９】
また、電圧指令値生成部５１６は、電圧位相設定部５０２から入力した電圧位相θｖと、電圧指令設定部６０から入力した電圧指令値｜Ｖａ｜とからｄ軸電圧指令値Ｖｄ、ｑ軸電圧指令値Ｖｑを生成する（ｄ軸ｑ軸電圧指令値生成ステップ）。
【００４０】
尚、電圧位相制御部５０は角度取得部１４の取得した電気角θのずれ等によって駆動電流Ｉｕ、Ｉｖ、Ｉｗに生ずるオフセットを補正するオフセット補正部７０を有していても良い。ここで、オフセット補正部７０の一例を以下に示す。
【００４１】
本例に示すオフセット補正部７０は、平滑部７２と、補正電流生成部７４と、補正電圧生成部７６と、電圧指令値補正部７８と、を有している。そして、オフセット補正部７０の平滑部７２は、切替部２４を介して入力したｄ軸、ｑ軸フィードバック電流値Ｉｄ、Ｉｑを例えば移動平均処理もしくはなまし処理を行ってそれぞれ平滑化する。尚、ここでのなまし処理とは、入力信号（ｄ軸、ｑ軸フィードバック電流Ｉｄ、Ｉｑ）に対し、任意の周期ごとに下記式に基づいて演算を行い平滑化する処理を意味する。
Ｃ＝Ｂ（１−Ｋ）＋Ｋ×Ａ
ここで、Ａは入力値（ｄ軸、ｑ軸フィードバック電流Ｉｄ、Ｉｑ）であり、Ｂは直前の周期のなまし処理後の出力値であり、Ｋはなまし定数であり、Ｃが出力値（後述の推定ｄ軸、ｑ軸電流指令Ｉｄ＊、Ｉｑ＊）である。
【００４２】
この平滑化処理により、駆動電流Ｉｕ、Ｉｖ、Ｉｗのオフセットや振幅アンバランスに起因する変動成分が平滑化された疑似的な推定ｄ軸電流指令値Ｉｄ＊、推定ｑ軸電流指令値Ｉｑ＊が生成される。そして、これら推定ｄ軸、ｑ軸電流指令値Ｉｄ＊、Ｉｑ＊は補正電流生成部７４に出力される。
【００４３】
また、補正電流生成部７４にはｄ軸フィードバック電流値Ｉｄ、ｑ軸フィードバック電流値Ｉｑがそれぞれ入力しており、補正電流生成部７４は平滑部７２で生成された推定ｄ軸電流指令値Ｉｄ＊、推定ｑ軸電流指令値Ｉｑ＊からｄ軸フィードバック電流値Ｉｄ、ｑ軸フィードバック電流値Ｉｑをそれぞれ減算する。これにより、変動成分としてのｄ軸補正電流ΔＩｄ、ｑ軸補正電流ΔＩｑが生成される。そして、これらｄ軸補正電流ΔＩｄ、ｑ軸補正電流ΔＩｑを補正電圧生成部７６に出力する。尚、このｄ軸補正電流ΔＩｄ、ｑ軸補正電流ΔＩｑは、オフセットや振幅アンバランスの成分（変動成分）が平滑化した推定ｄ軸、ｑ軸電流指令値Ｉｄ＊、Ｉｑ＊からオフセットや振幅アンバランスの成分（変動成分）を含むｄ軸、ｑ軸フィードバック電流値Ｉｄ、Ｉｑをそれぞれ減算したものであるから、基本的に変動成分の逆相をとる。
【００４４】
また、補正電圧生成部７６は、補正電流生成部７４から入力したｄ軸補正電流ΔＩｄ、ｑ軸補正電流ΔＩｑから、例えば所定の補正ゲインによる比例制御等によりｄ軸補正電圧ΔＶｄ、ｑ軸補正電圧ΔＶｑを生成し、電圧指令値補正部７８に出力する。
【００４５】
電圧指令値補正部７８は、補正電圧生成部７６から入力したｄ軸補正電圧ΔＶｄ、ｑ軸補正電圧ΔＶｑを電圧指令値生成部５１６から出力したｄ軸電圧指令値Ｖｄ、ｑ軸電圧指令値Ｖｑにそれぞれ加算する。よってこれにより生成されたｄ軸、ｑ軸電圧指令値Ｖｄ、Ｖｑには駆動電流Ｉｕ、Ｉｖ、Ｉｗに生じるオフセットや振幅アンバランス成分の逆の電圧（ｄ軸、ｑ軸補正電圧ΔＶｄ、ΔＶｑ）が加味されたものとなる。そして、これらｄ軸電圧指令値Ｖｄ、ｑ軸電圧指令値Ｖｑは切替部２４を介して制御信号生成部３０の線形補正部３８に入力する。尚、上記のオフセット補正部７０により補正されたｄ軸電圧指令値Ｖｄ、ｑ軸電圧指令値Ｖｑは上記のようにオフセットや振幅アンバランス成分の逆の電圧が加味されているから、これにより駆動するＰＭモータ１０のオフセット等は補正され解消される（オフセット補正ステップ）。
【００４６】
次に、制御信号生成部３０の構成と動作とを説明する。先ず、正弦波制御部４０による制御時では、制御信号生成部３０の線形補正部３８に極座標変換部４１８からの電圧指令値｜Ｖａ｜と電圧指令値生成部４１６で生成されたｄ軸、ｑ軸電圧指令値Ｖｄ、Ｖｑとが入力する。また、電圧位相制御部５０による制御時には電圧指令設定部６０で取得された電圧指令値｜Ｖａ｜と電圧指令値生成部５１６で生成されたｄ軸、ｑ軸電圧指令値Ｖｄ、Ｖｑとが入力する。また、線形補正部３８には電圧指令値｜Ｖａ｜を引数とした倍率のテーブルデータが予め設定されており、線形補正部３８は入力した電圧指令値｜Ｖａ｜に応じた倍数を読み出しｄ軸電圧指令値Ｖｄ、ｑ軸電圧指令値Ｖｑに掛けることで線形補正を行う。この線形補正により、電圧指令値｜Ｖａ｜の変化とインバータ２０が出力する電圧との非線形性が補正され線形化する。
【００４７】
また、制御信号生成部３０を構成するｄｑ／３相変換部３２には角度取得部１４からの電気角θと角速度演算部１６からの電気角速度ωが入力し、この電気角θと電気角速度ωとに基づいてインバータ２０がスイッチング動作を行う新たなタイミングの予測電気角θ’を算出し、この予測電気角θ’に基づいてｄ軸、ｑ軸電圧指令値Ｖｄ、Ｖｑを三相電圧指令値Ｖｕ、Ｖｖ、Ｖｗに変換し、駆動信号生成部３６に出力する。
【００４８】
また、駆動信号生成部３６は搬送波生成部３４を有しており、この搬送波生成部３４にはキャリア設定情報Ｓｃが入力して、このキャリア設定情報Ｓｃに基づいて前述した周期の搬送波を生成する。そして、駆動信号生成部３６はこの搬送波と三相電圧指令値Ｖｕ、Ｖｖ、Ｖｗとをそれぞれ比較動作し、これによりＨｉ−Ｌｏｗの駆動信号Ｓｕ、Ｓｖ、Ｓｗを生成する。尚、比較動作とは、駆動信号生成部３６において搬送波と三相電圧指令Ｖｕ、Ｖｖ、Ｖｗのそれぞれの大きさを比較し、その大小関係により各駆動信号Ｓｕ、Ｓｖ、ＳｗのＨｉ−Ｌｏｗを設定する動作であり、これにより搬送波と三相電圧指令Ｖｕ、Ｖｖ、Ｖｗとのそれぞれの交点でＨｉ−Ｌｏｗが切り替わる駆動信号Ｓｕ、Ｓｖ、Ｓｗが生成される。
【００４９】
そして、インバータ２０は駆動信号生成部３６から出力される駆動信号Ｓｕ、Ｓｖ、Ｓｗにより内部のスイッチング素子がオン・オフし、直流電源部１８からの直流電力を駆動信号Ｓｕ、Ｓｖ、Ｓｗに基づく交流電圧に変換して出力する。これにより、ＰＭモータ１０の電機子巻線には位相が１／３周期（２／３π（ｒａｄ））づつずれた交流の駆動電流Ｉｕ、Ｉｖ、Ｉｗがそれぞれ流下する。これにより、ＰＭモータ１０がトルク指令値Ｔ＊に応じたトルクで回転動作する。
【００５０】
次に、本発明に係るモータ制御装置１００及びモータ制御方法の特徴的な構成である電圧指令設定部６０及び電圧指令設定ステップに関して説明を行う。先ず、電圧指令設定部６０は、前述のように電圧指令値｜Ｖａ｜が上限リミット値｜Ｖａ｜ＭＡＸと下限リミット値｜Ｖａ｜ＭＩＮの範囲内にあるときは、トルク指令値Ｔ＊と同一のトルクＴを出力するのに最小の電流値｜Ｉａ｜をとる電圧指令値｜Ｖａ｜を取得して電圧指令値生成部５１６及び線形補正部３８に出力する。また、電圧指令値｜Ｖａ｜が上限リミット値｜Ｖａ｜ＭＡＸをとる場合（上限リミット値｜Ｖａ｜ＭＡＸで制限されている場合）には、一般的な電圧位相制御部５０と同様に最大の出力電圧で電圧位相θｖによる電圧位相制御を行う。
【００５１】
次に、本願の請求項７、８及び請求項２１、２２に対応する第１の形態の電圧指令設定部６０ａの構成を図３を用いて説明する。図３に示す本発明に係る第１の形態の電圧指令設定部６０ａは、電流位相演算部６２と、電流位相制御部６４と、ｑ軸電流判定部６２６と、入力切替部６２８と、を有している。また、電流位相演算部６２は、Ｉａ絶対値演算部６２２と、位相演算部６２４と、θｉ減算部６３と、を有している。そして、Ｉａ絶対値演算部６２２には３相／ｄｑ変換部２２からのｄ軸フィードバック電流値Ｉｄ、ｑ軸フィードバック電流値Ｉｑが入力し、Ｉａ絶対値演算部６２２はこの入力したｄ軸、ｑ軸フィードバック電流値Ｉｄ、Ｉｑから下記式（１）に基づいて電流ベクトルの大きさ｜Ｉａ｜を算出する。
｜Ｉａ｜＝（Ｉｄ２＋Ｉｑ２）１／２・・・（１）
【００５２】
また、位相演算部６２４にもｄ軸フィードバック電流値Ｉｄ、ｑ軸フィードバック電流値Ｉｑが入力し、位相演算部６２４はこの入力したｄ軸、ｑ軸フィードバック電流値Ｉｄ、Ｉｑに基づいて下記（２）式により電流位相θｉを算出する。
θｉ＝ｔａｎ−１（−Ｉｄ／Ｉｑ）・・・（２）
尚、第１の形態の電圧指令設定部６０ａ及び後述の第２、第３の形態の電圧指令設定部６０ｂ、６０ｃに入力するｄ軸、ｑ軸フィードバック電流値Ｉｄ、Ｉｑはローパスフィルタや平均化処理により予め平滑化された値を用いても良い。
【００５３】
次に、電流位相演算部６２は、Ｉａ絶対値演算部６２２で取得された｜Ｉａ｜を引数として電流−位相角データマップ６２０を参照し、この｜Ｉａ｜と対応する目標電流位相θｉ（ｂａｓｅ）を読み出して取得する。また、この目標電流位相θｉ（ｂａｓｅ）は絶対値｜Ｉａ｜の関数とした目標電流位相θｉ（ｂａｓｅ）の算出式を用い演算により取得しても良い（以上が電流位相演算ステップに相当する）。尚、目標電流位相θｉ（ｂａｓｅ）をデータマップから読み出して取得する場合、前述のように電流−位相角データマップ６２０には電流指令値Ｉａ＊の大きさ｜Ｉａ＊｜毎にトルクＴが最大となる目標電流位相θｉ（ｂａｓｅ）がテーブルデータ化されて記録されており、電流−位相角データマップ６２０から直接目標電流位相θｉ（ｂａｓｅ）を読み出して取得することができる。また、目標電流位相θｉ（ｂａｓｅ）を演算により取得する場合には、電流位相演算部６２は目標電流位相θｉ（ｂａｓｅ）の算出式を有し、この算出式は例えば予め実験等により取得された｜Ｉａ｜と目標電流位相θｉ（ｂａｓｅ）とのデータに基づいて｜Ｉａ｜の関数とした目標電流位相θｉ（ｂａｓｅ）の算出式を周知の手法により予め作成して電流位相演算部６２等に記録しておき、この算出式にＩａ絶対値演算部６２２で取得された｜Ｉａ｜の値を代入することで目標電流位相θｉ（ｂａｓｅ）を取得する。尚、算出式の作成方法としては、例えば｜Ｉａ｜を複数の区間に分割した上で、これらの各区間ごとに｜Ｉａ｜の１次関数で目標電流位相θｉ（ｂａｓｅ）の算出式を作成し、これらをＩａ絶対値演算部６２２で取得された｜Ｉａ｜の値（の区間）に応じて選択して使用するようにしても良い。また、例えば｜Ｉａ｜と目標電流位相θｉ（ｂａｓｅ）とをグラフ上にプロットし、このプロットに対する近似曲線の式（一般的に高次の多項式関数となる）を目標電流位相θｉ（ｂａｓｅ）の算出式としても良い。
【００５４】
次に、電流位相演算部６２はｑ軸フィードバック電流値Ｉｑの符号（正負）を確認し、目標電流位相θｉ（ｂａｓｅ）の符号をｑ軸フィードバック電流値Ｉｑと同じとする。尚、電流位相θｉおよび目標電流位相θｉ（ｂａｓｅ）の符号は、後述の図４においてｑ軸電流Ｉｑを基準にして反時計回りの方向を正、時計回りの方向を負とする。
【００５５】
次に、目標電流位相θｉ（ｂａｓｅ）と電流位相θｉとはθｉ減算部６３に入力し、下記式に示すように、目標電流位相θｉ（ｂａｓｅ）から電流位相θｉが差し引かれ、その差分Δθｉが算出される（θｉ減算ステップ）。
Δθｉ＝θｉ（ｂａｓｅ）−θｉ
そして、この差分Δθｉは入力切替部６２８に出力される。
【００５６】
また、ｑ軸電流判定部６２６にはｑ軸フィードバック電流値Ｉｑが入力し、ｑ軸電流判定部６２６は入力したｑ軸フィードバック電流値Ｉｑが予め設定されたゼロ近傍の値の範囲内にあるか否かを判定する（ｑ軸電流判定ステップ）。そして、ｑ軸フィードバック電流値Ｉｑがゼロ近傍の値の範囲内にないと判定された場合、入力切替部６２８は差分Δθｉを電流位相制御部６４に出力する。そして、電流位相制御部６４は後述の差分Δθｉに基づく電圧指令値｜Ｖａ｜の取得処理を行う。また、ｑ軸フィードバック電流値Ｉｑがゼロ近傍の値の範囲内にあると判定された場合、入力切替部６２８は電流位相制御部６４への出力を差分Δθｉからｄ軸フィードバック電流値Ｉｄに切り替える（入力切替ステップ）。そして、電流位相制御部６４は後述のゼロ近傍処理に基づく電圧指令値｜Ｖａ｜の取得処理を行う。
【００５７】
次に、差分Δθｉに基づく電圧指令値｜Ｖａ｜の取得処理に関して説明する。先ず、ＰＭモータ１０の制御が正弦波制御部４０から電圧位相制御部５０へ切り替わると、正弦波制御部４０の切替直前もしくは平滑化された電圧指令値｜Ｖａ｜が電流位相制御部６４に初期値として入力する。また、電流位相制御部６４には、ｑ軸フィードバック電流値Ｉｑが入力し、電流位相制御部６４はこのｑ軸フィードバック電流値Ｉｑの正負を確認する。
【００５８】
また、電流位相制御部６４には電圧指令値｜Ｖａ｜の上限リミット値｜Ｖａ｜ＭＡＸ、下限リミット値｜Ｖａ｜ＭＩＮが設定されており、これら上限リミット値｜Ｖａ｜ＭＡＸ、下限リミット値｜Ｖａ｜ＭＩＮは電流位相制御部６４の積分制御における積分値の上限リミット値、下限リミット値としても用いられる。尚、これら上限リミット値｜Ｖａ｜ＭＡＸ、下限リミット値｜Ｖａ｜ＭＩＮは、ＰＭモータ１０の仕様や要求される能力、性能等により設定される。例えば、上限リミット値｜Ｖａ｜ＭＡＸは駆動信号Ｓｕ、Ｓｖ、Ｓｗが１パルスの矩形波パターンとなるような矩形波形成電圧値｜Ｖａ’｜としても良いし、ＰＭモータ１０を矩形波パターンで制御しない場合には矩形波形成電圧値｜Ｖａ’｜よりも低い値としても良い。尚、上限リミット値｜Ｖａ｜ＭＡＸを矩形波形成電圧値｜Ｖａ’｜に基づいて設定する場合、上限リミット値｜Ｖａ｜ＭＡＸは同期数に応じて変化する。また、直流電源部１８の電源電圧Ｖｄｃ、電気角速度ω毎に上限リミット値｜Ｖａ｜ＭＡＸのデータマップを作成し、このデータマップを読み出して設定しても良い。さらに、これらの上限リミット値｜Ｖａ｜ＭＡＸの設定方法を適宜組み合わせ用いても良い。また、下限リミット値｜Ｖａ｜ＭＩＮは、固定値としても良いし、電源電圧Ｖｄｃ、電気角速度ω毎に下限リミット値｜Ｖａ｜ＭＩＮのデータマップを作成し、このデータマップを読み出して設定しても良い。尚、回転子による誘起電圧とインバータ２０の出力電圧とが等しくなる値を下限リミット値｜Ｖａ｜ＭＩＮとしてテーブルデータ化して設定すれば、電圧指令値｜Ｖａ｜が下限リミット値｜Ｖａ｜ＭＩＮに減少した状態においてｄ軸電流（弱め磁束電流）を最小とすることが可能となる。これにより、この動作領域における損失を抑制することができる。
【００５９】
そして、電流位相演算部６２から差分Δθｉが入力すると、電流位相制御部６４は差分Δθｉの値に基づく周知の比例制御及び積分制御を行いｑ軸フィードバック電流値Ｉｑの符号が正で差分Δθｉの符号が正の場合、電圧指令値｜Ｖａ｜を下限リミット値｜Ｖａ｜ＭＩＮの範囲内で減少させる処理を行う。また、ｑ軸フィードバック電流値Ｉｑの符号が正で差分Δθｉの符号が負の場合、電圧指令値｜Ｖａ｜を上限リミット値｜Ｖａ｜ＭＡＸの範囲内で増加させる処理を行う。また、ｑ軸フィードバック電流値Ｉｑの符号が負で差分Δθｉの符号が負の場合、電圧指令値｜Ｖａ｜を下限リミット値｜Ｖａ｜ＭＩＮの範囲内で減少させる処理を行う。また、ｑ軸フィードバック電流値Ｉｑの符号が負で差分Δθｉの符号が正の場合、電圧指令値｜Ｖａ｜を上限リミット値｜Ｖａ｜ＭＡＸの範囲内で増加させる処理を行う（電流位相制御ステップ・差分Δθｉ入力時）。そして、この電圧指令値｜Ｖａ｜を電圧指令値生成部５１６及び線形補正部３８に出力する。
【００６０】
ここで、例えば、ｑ軸フィードバック電流値Ｉｑの符号が正で差分Δθｉの符号が正の場合、電流位相θｉが目標電流位相θｉ（ｂａｓｅ）よりもｑ軸側に位置する状態にある。この状態は最小の目標電流位相θｉ（ｂａｓｅ）よりも大きな電流が流下していることを意味し、特にトルク指令値Ｔ＊が小さい低負荷時において銅損が大きく好ましい状態ではない。このような状態となる理由はインバータ２０の出力電圧が大きいことが原因と考えられ、単純に電流位相θｉを現状の｜Ｉａ｜のまま目標電流位相θｉ（ｂａｓｅ）とするとトルクＴがトルク指令値Ｔ＊より大きくなることが想定される。このため、電圧指令値｜Ｖａ｜を減少することで｜Ｉａ｜を小さくし電圧位相θｖをｄ軸側に移動させることで、電流位相θｉを目標電流位相θｉ（ｂａｓｅ）と同等とする。
【００６１】
このように、電流位相制御部６４は、ｑ軸フィードバック電流値Ｉｑの正負、差分Δθｉの正負に応じて電圧指令値｜Ｖａ｜を増減し、この電圧指令値｜Ｖａ｜の増減に応じてｄ軸電流Ｉｄとｑ軸電流Ｉｑとが変化し、これに応じてトルクＴが変化する。そして、電圧位相設定部５０２はこのトルクＴがトルク指令値Ｔ＊と一致するように電圧位相θｖを増減し、この電圧指令値｜Ｖａ｜と電圧位相θｖとに対応したｄ軸電流Ｉｄとｑ軸電流Ｉｑとによる電流位相θｉは目標電流位相θｉ（ｂａｓｅ）に近づくよう変化する。これにより、ｄ軸、ｑ軸電圧指令値Ｖｄ、Ｖｑはトルク指令値Ｔ＊と同一のトルクＴを出力するのに最小の電流値｜Ｉａ｜をとる目標電流位相θｉ（ｂａｓｅ）と同等な電流位相θｉとなるように制御され、その結果、ＰＭモータ１０は損失の少ない効率の良い状態で動作する。
【００６２】
また、ｑ軸電流判定部６２６においてｑ軸フィードバック電流値Ｉｑがゼロ近傍の値の範囲内にあると判定された場合、入力切替部６２８は電流位相制御部６４への出力を差分Δθｉからｄ軸フィードバック電流値Ｉｄに切り替える。尚、ｑ軸電流判定部６２６における判定閾値はヒステリシス幅を持たせ、境界点における頻繁な切り替わりを防止することが好ましい。また、この切り替えの際、電流位相制御部６４における比例制御、積分制御等の制御ゲインをゼロ近傍処理時のものに切り替えても良い。
【００６３】
ここで、差分Δθｉに基づく電圧指令値｜Ｖａ｜の取得処理では上記（２）式によって電流位相θｉを算出する。しかしながら、上記（２）式では（−Ｉｄ／Ｉｑ）の項が存在するため、分母となるｑ軸フィードバック電流値Ｉｑがゼロもしくはゼロ近傍となる場合、この項の数値が無限大にまで増大し演算上の不具合が生じる。また、ｑ軸フィードバック電流値Ｉｑがゼロ近傍の場合にｄ軸フィードバック電流値Ｉｄもゼロ近傍で正負を行き来する場合、その正負に対応して上記（２）式によって算出した電流位相θｉが約−９０°と約＋９０°との間で行き来し電圧指令値｜Ｖａ｜がハンチングする虞がある。よってｑ軸フィードバック電流値Ｉｑがゼロ近傍の場合にはｑ軸電流判定部６２６と入力切替部６２８とが電流位相制御部６４への出力を差分Δθｉからｄ軸フィードバック電流値Ｉｄに切り替えて、電流位相θｉを用いずに電圧指令値｜Ｖａ｜の生成を行う。これにより、（−Ｉｄ／Ｉｑ）の項は電流位相制御部６４の動作に関与せず、演算上の不具合を回避することができる。
【００６４】
そして、ゼロ近傍処理の場合、電流位相制御部６４は入力したｄ軸フィードバック電流値Ｉｄの値に基づく周知の比例制御及び積分制御を行って、ｄ軸フィードバック電流値Ｉｄの符号が正の場合、電圧指令値｜Ｖａ｜を下限リミット値｜Ｖａ｜ＭＩＮの範囲内で減少させる。また、ｄ軸フィードバック電流値Ｉｄの符号が負の場合、電圧指令値｜Ｖａ｜を上限リミット値｜Ｖａ｜ＭＡＸの範囲内で増加させる（電流位相制御ステップ・ゼロ近傍処理）。そして、電圧指令値生成部５１６及び線形補正部３８に出力する。
【００６５】
ここで、ｑ軸フィードバック電流値Ｉｑがゼロ近傍の場合、弱め磁束電流としてのｄ軸電流を流す必要がある。しかしながら、ｄ軸フィードバック電流値Ｉｄの符号が正の場合、ロータ磁石（回転子の永久磁石）による誘起電圧よりもインバータ２０の出力電圧が大きい状態であり、ｄ軸電流は磁束を強めてモータ電圧を大きくする電流となる。このとき電流位相制御部６４は電圧指令値｜Ｖａ｜を減少させるよう動作する。これにより、ｄ軸電流が下がり特に下限リミット値｜Ｖａ｜ＭＩＮとなった際にはＰＭモータ１０を最小のｄ軸電流（弱め磁束電流）で損失の少ない効率の良い状態で動作させることができる。また、ｄ軸フィードバック電流値Ｉｄの符号が負の場合、電流位相制御部６４は電圧指令値｜Ｖａ｜を上げることでインバータ２０の出力電圧を上げ、過剰なｄ軸電流（弱め磁束電流）を抑制する。これにより、ＰＭモータ１０を損失の少ない効率の良い状態で動作させることができる。尚、ここで示した構成ではｑ軸フィードバック電流値Ｉｑ、ｄ軸フィードバック電流値Ｉｄがともにゼロ近傍の値をとる場合でも正弦波制御部４０に切り替わらず、電圧位相制御部５０に継続して動作制御を行わせることができる。これにより、連続的かつスムーズな動作制御を行うことができる。
【００６６】
さらに、ゼロ近傍処理ではｄ軸フィードバック電流値Ｉｄもゼロ近傍の所定の範囲内の値にあるときは電圧指令値｜Ｖａ｜を変化させずそのまま維持するようにしても良い。ここで、ゼロ近傍処理ではｄ軸フィードバック電流値Ｉｄの正負によって電圧指令値｜Ｖａ｜の増減方向が変化する。よって、ｄ軸フィードバック電流値Ｉｄがゼロ近傍で正負を行き来すると、これに応じて電圧指令値｜Ｖａ｜に対する増加処理と減少処理とが頻繁に切り替わることとなる。この点、ｄ軸フィードバック電流値Ｉｄ（及びｑ軸フィードバック電流値Ｉｑ）がゼロ近傍にあるときに電圧指令値｜Ｖａ｜を変化させず元の値で維持する構成では、電圧指令値｜Ｖａ｜の無用な変動を抑制でき、ＰＭモータ１０のトルク変化を防止することが可能となる。
【００６７】
また、図３（ｂ）に示すように、電流位相制御部６４に入力するｄ軸フィードバック電流値Ｉｄにオフセット値（−ａ）を加算し、ｄ軸フィードバック電流値Ｉｄのゼロ近傍の判定閾値をこのオフセット値（−ａ）に対応してシフトさせても良い。この構成によれば、オフセット値（−ａ）の値を最適化することで、ｑ軸フィードバック電流値Ｉｑがゼロ近傍の値をとるときに、電流位相制御部６４に入力するｄ軸フィードバック電流値Ｉｄを常に負の値とすることができる。そして、この構成では電流位相制御部６４への入力がｄ軸フィードバック電流値Ｉｄと差分Δθｉとで切り替わる際に、切り替え直後の電流位相θｉがオフセット値（−ａ）の分、目標電流位相θｉ（ｂａｓｅ）に近い状態にあり比較的スムーズな切り替えを行うことができる。
【００６８】
次に、本願の請求項１〜６及び請求項１５〜２０に対応する本発明に係る第２の形態の電圧指令設定部６０ｂの構成を説明する。尚、第２の形態の電圧指令設定部６０ｂは、目標電流位相θｉ（ｂａｓｅ）の替わりに図４のベクトル図に示す目標電流位相θｉ（ｂａｓｅ）をとるようなｄ軸電流値Ｉｄ（ｒｅｆ）を用いて電圧指令値｜Ｖａ｜を変化させる構成である。
【００６９】
本発明に係る第２の形態の電圧指令設定部６０ｂは、図５（ａ）〜（ｄ）、図６に示すように、トルク指令値Ｔ＊と略同一のトルクＴを出力するのに最小の電流｜Ｉａ｜をとる目標電流位相θｉ（ｂａｓｅ）の時のｄ軸電流値Ｉｄ（ｒｅｆ）を取得するＩｄ（ｒｅｆ）取得部６４４ａ〜６４４ｄと、このＩｄ（ｒｅｆ）取得部６４４ａ〜６４４ｄが取得したｄ軸電流値Ｉｄ（ｒｅｆ）からｄ軸フィードバック電流値Ｉｄを減算し差分ΔＩｄを取得するＩｄ減算部６４８と、この差分ΔＩｄの値に基づいて電圧指令値｜Ｖａ｜を変化させるｄ軸電流制御部６６と、を有している。尚、ｄ軸電流値Ｉｄ（ｒｅｆ）は基本的に負の値を示す。
【００７０】
尚、ここではＩｄ（ｒｅｆ）、係数Ｋ（Ｉｄ／Ｉｑ）、目標電流位相θｉ（ｂａｓｅ）等をデータマップから読み出して取得する例を説明するが、これらの値は算出式を用い演算により取得しても良い。この場合、Ｉｄ（ｒｅｆ）取得部６４４ａ〜６４４ｄはＩｄ（ｒｅｆ）、係数Ｋ（Ｉｄ／Ｉｑ）、目標電流位相θｉ（ｂａｓｅ）等の算出式を有し、これらの算出式は予め実験等により取得されたデータに基づいて、電流位相演算部６２の時と同様、複数の区間における１次関数を連結して構成したり、近似曲線の式から求めるなどの周知の手法により作成し記録しておくことが好ましい。
【００７１】
ここで、第１の形態のＩｄ（ｒｅｆ）取得部６４４ａは、例えばＩｄ（ｒｅｆ）データマップ部６４６ａを有しており、このＩｄ（ｒｅｆ）データマップ部６４６ａはｑ軸フィードバック電流値Ｉｑ、もしくは、その絶対値｜Ｉｑ｜を引数にしてｄ軸電流値Ｉｄ（ｒｅｆ）を読み出して取得する。尚、Ｉｄ（ｒｅｆ）データマップ部６４６ａがｑ軸フィードバック電流値Ｉｑの絶対値｜Ｉｑ｜を引数にしてｄ軸電流値Ｉｄ（ｒｅｆ）を読み出す場合、第１の形態のＩｄ（ｒｅｆ）取得部６４４ａは図５（ａ）に示すように、ｑ軸フィードバック電流値Ｉｑの絶対値｜Ｉｑ｜を算出するＩｑ絶対値演算部６４２を有する。この場合、Ｉｄ（ｒｅｆ）データマップ部６４６ａは、各絶対値｜Ｉｑ｜毎に目標電流位相θｉ（ｂａｓｅ）をとるｄ軸電流値Ｉｄ（ｒｅｆ）のテーブルデータを有しており、Ｉｑ絶対値演算部６４２から入力した絶対値｜Ｉｑ｜からｄ軸電流値Ｉｄ（ｒｅｆ）を読み出して取得する。また、Ｉｄ（ｒｅｆ）データマップ部６４６ａがｑ軸フィードバック電流値Ｉｑそのものを引数としてｄ軸電流値Ｉｄ（ｒｅｆ）を読み出す場合、Ｉｄ（ｒｅｆ）データマップ部６４６ａは正負双方のｑ軸フィードバック電流値Ｉｑに対応したｄ軸電流値Ｉｄ（ｒｅｆ）のテーブルデータを有する。そして、Ｉｄ（ｒｅｆ）データマップ部６４６ａはＩｄ（ｒｅｆ）取得部６４４ａに入力したｑ軸フィードバック電流値Ｉｑを直接引数にしてｄ軸電流値Ｉｄ（ｒｅｆ）を読み出して取得する。
【００７２】
尚、これらのＩｄ（ｒｅｆ）データマップ部６４６ａのテーブルデータは、｜Ｉａ｜と目標電流位相θｉ（ｂａｓｅ）とのデータを実験等により取得し、これらの値と下記式を用いてｑ軸フィードバック電流値Ｉｑもしくは絶対値｜Ｉｑ｜とｄ軸電流値Ｉｄ（ｒｅｆ）との関係を求めテーブルデータ化することで取得が可能である。
Ｉｑ＝｜Ｉａ｜・ｃｏｓ（θｉ（ｂａｓｅ））
Ｉｄ（ｒｅｆ）＝−｜Ｉａ｜・ｓｉｎ（θｉ（ｂａｓｅ））
そして、この第１の形態のＩｄ（ｒｅｆ）取得部６４４ａの構成によれば、ｑ軸フィードバック電流値Ｉｑもしくはその絶対値｜Ｉｑ｜を引数にして直接ｄ軸電流値Ｉｄ（ｒｅｆ）を読み出すためｄ軸電流値Ｉｄ（ｒｅｆ）の取得に係る演算処理の負荷を軽減することができる。尚、Ｉｄ（ｒｅｆ）取得部６４４ａは、ｑ軸フィードバック電流値Ｉｑもしくはその絶対値｜Ｉｑ｜の関数としたｄ軸電流値Ｉｄ（ｒｅｆ）の算出式を用い、前述したように演算によってｄ軸電流値Ｉｄ（ｒｅｆ）を取得するようにしても良い。
【００７３】
また、第２の形態のＩｄ（ｒｅｆ）取得部６４４ｂは、例えば、ｑ軸フィードバック電流値Ｉｑ、もしくは、その絶対値｜Ｉｑ｜と対応し、目標電流位相θｉ（ｂａｓｅ）をとるときのｑ軸電流値Ｉｑとｄ軸電流値Ｉｄ（ｒｅｆ）の比である係数Ｋ（Ｉｄ／Ｉｑ）のテーブルデータを備えた係数データマップ部６４６ｂを有している。尚、係数データマップ部６４６ｂは前述のＩｄ（ｒｅｆ）のテーブルデータと同様にしてｑ軸電流値Ｉｑとｄ軸電流値Ｉｄ（ｒｅｆ）とを求めｄ軸電流値Ｉｄ（ｒｅｆ）をｑ軸電流値Ｉｑで割って係数Ｋ（Ｉｄ／Ｉｑ）を算出し、これをテーブルデータ化することで取得が可能である。そして、係数データマップ部６４６ｂがｑ軸フィードバック電流値Ｉｑの絶対値｜Ｉｑ｜を引数にして係数Ｋ（Ｉｄ／Ｉｑ）を読み出す場合、第２の形態のＩｄ（ｒｅｆ）取得部６４４ｂは図５（ｂ）に示すように、ｑ軸フィードバック電流値Ｉｑの絶対値｜Ｉｑ｜を算出するＩｑ絶対値演算部６４２を有し、このＩｑ絶対値演算部６４２はｑ軸フィードバック電流値Ｉｑの絶対値｜Ｉｑ｜を算出して出力するとともに、係数データマップ部６４６ｂはＩｑ絶対値演算部６４２から入力した絶対値｜Ｉｑ｜を引数にして係数Ｋ（Ｉｄ／Ｉｑ）を読み出す。そして、Ｉｄ（ｒｅｆ）取得部６４４ｂは読み出された係数Ｋ（Ｉｄ／Ｉｑ）にＩｑ絶対値演算部６４２で算出された絶対値｜Ｉｑ｜を掛けることでｄ軸電流値Ｉｄ（ｒｅｆ）を取得する。
【００７４】
また、係数データマップ部６４６ｂがｑ軸フィードバック電流値Ｉｑそのものを引数にして係数Ｋ（Ｉｄ／Ｉｑ）を読み出す場合、係数データマップ部６４６ｂは正負双方のｑ軸フィードバック電流値Ｉｑに対応した係数Ｋ（Ｉｄ／Ｉｑ）のテーブルデータを有する。そして、係数データマップ部６４６ｂはＩｄ（ｒｅｆ）取得部６４４ｂに入力したｑ軸フィードバック電流値Ｉｑを直接引数にして係数Ｋ（Ｉｄ／Ｉｑ）を読み出して取得する。そして、Ｉｄ（ｒｅｆ）取得部６４４ｂは読み出された係数Ｋ（Ｉｄ／Ｉｑ）にｑ軸フィードバック電流値Ｉｑを掛けることでｄ軸電流値Ｉｄ（ｒｅｆ）を取得する。
【００７５】
尚、引数がいずれの場合においてもｄ軸電流値Ｉｄ（ｒｅｆ）は負の値とする必要がある。よって、演算上、ｄ軸電流値Ｉｄ（ｒｅｆ）が正の値となるときは、−１を掛けて負の値とするか、もしくは正の値となる領域の係数Ｋ（Ｉｄ／Ｉｑ）を負の値で記録しておくことが好ましい。そして、この第２の形態のＩｄ（ｒｅｆ）取得部６４４ｂの構成では第１の形態のＩｄ（ｒｅｆ）取得部６４４ａよりも演算処理の数が増えるものの、絶対値｜Ｉｑ｜の値が小さい領域では係数Ｋ（Ｉｄ／Ｉｑ）が概ね比例関係をとるため、この領域で係数Ｋ（Ｉｄ／Ｉｑ）のデータを間引く事が可能となり、係数データマップ部６４６ｂのテーブルデータの容量を削減することが可能となる。尚、Ｉｄ（ｒｅｆ）取得部６４４ｂは、ｑ軸フィードバック電流値Ｉｑもしくはその絶対値｜Ｉｑ｜の関数とした係数Ｋ（Ｉｄ／Ｉｑ）の算出式を用い、前述したように演算によって係数Ｋ（Ｉｄ／Ｉｑ）を取得するようにしても良い。
【００７６】
また、図５（ｃ）に示す第３の形態のＩｄ（ｒｅｆ）取得部６４４ｃは、Ｉａ絶対値演算部６２２’と、Ｉｑ絶対値演算部６４２と、Ｉｄ（ｒｅｆ）演算部６４６ｃと、を有している。そして、Ｉａ絶対値演算部６２２’は第１の形態の電圧指令設定部６０ａのＩａ絶対値演算部６２２と同様にしてｄ軸、ｑ軸フィードバック電流値Ｉｄ、Ｉｑから式（１）により電流ベクトルの大きさ｜Ｉａ｜を算出する。そして、例えば電流−位相角データマップ６２０を用い、｜Ｉａ｜を引数にして目標電流位相θｉ（ｂａｓｅ）を読み出しＩｄ（ｒｅｆ）演算部６４６ｃに出力する。また、Ｉｑ絶対値演算部６４２はｑ軸フィードバック電流値Ｉｑの絶対値｜Ｉｑ｜を算出してＩｄ（ｒｅｆ）演算部６４６ｃに出力する。そして、Ｉｄ（ｒｅｆ）演算部６４６ｃは下記式に基づいてｄ軸電流値Ｉｄ（ｒｅｆ）を算出する。
Ｉｄ（ｒｅｆ）＝−｜Ｉｑ｜・ｔａｎ（θｉ（ｂａｓｅ））・・・（３）
もしくは、Ｉｑ絶対値演算部６４２を設けずに下記式に基づいてｄ軸電流値Ｉｄ（ｒｅｆ）を算出しても良い。
Ｉｄ（ｒｅｆ）＝−｜Ｉａ｜・ｓｉｎ（θｉ（ｂａｓｅ））
この第３の形態のＩｄ（ｒｅｆ）取得部６４４ｃでは、電流−位相角データマップ６２０を用いることでｄ軸電流値Ｉｄ（ｒｅｆ）の取得のためのデータマップが不要となり装置全体としての記憶容量の低減を図ることができる。
【００７７】
さらに、第３の形態のＩｄ（ｒｅｆ）取得部６４４ｃ’は、例えば図５（ｄ）に示すように、ｑ軸フィードバック電流値Ｉｑの絶対値｜Ｉｑ｜を引数とした目標電流位相θｉ（ｂａｓｅ）のデータマップ６２１を設け、Ｉｑ絶対値演算部６４２が算出した絶対値｜Ｉｑ｜を引数にして目標電流位相θｉ（ｂａｓｅ）を読み出し、上記（３）式を用いてｄ軸電流値Ｉｄ（ｒｅｆ）を算出するようにしても良い。また、正負のｑ軸フィードバック電流値Ｉｑを引数とした目標電流位相θｉ（ｂａｓｅ）のデータマップを設け、ｑ軸フィードバック電流値Ｉｑを直接引数にして目標電流位相θｉ（ｂａｓｅ）を読み出すとともに、上記（３）式を用いてｄ軸電流値Ｉｄ（ｒｅｆ）を算出するようにしても良い。尚、Ｉｄ（ｒｅｆ）取得部６４４ｃ、６４４ｃ’は、電流ベクトルの大きさ｜Ｉａ｜もしくはｑ軸フィードバック電流値Ｉｑもしくはその絶対値｜Ｉｑ｜の関数とした目標電流位相θｉ（ｂａｓｅ）の算出式を用い、前述したように演算によって目標電流位相θｉ（ｂａｓｅ）を取得するようにしても良い。
【００７８】
また、第４の形態のＩｄ（ｒｅｆ）取得部６４４ｄは、例えばトルク指令値Ｔ＊もしくはその絶対値｜Ｔ＊｜を引数としてｄ軸電流値Ｉｄ（ｒｅｆ）を読み出して取得するＴ−Ｉｄ（ｒｅｆ）データマップ部４６９を有している。そして、Ｔ−Ｉｄ（ｒｅｆ）データマップ部４６９がトルク指令値Ｔ＊の絶対値｜Ｔ＊｜を引数にしてｄ軸電流値Ｉｄ（ｒｅｆ）を読み出す場合、第４の形態のＩｄ（ｒｅｆ）取得部６４４ｄは図６に示すように、トルク指令値Ｔ＊の絶対値｜Ｔ＊｜を算出するトルク絶対値演算部６４３を有する。この場合、Ｔ−Ｉｄ（ｒｅｆ）データマップ部４６９は、各絶対値｜Ｔ＊｜のときに目標電流位相θｉ（ｂａｓｅ）をとるｄ軸電流値Ｉｄ（ｒｅｆ）のテーブルデータを有しており、トルク絶対値演算部６４３から入力した絶対値｜Ｔ＊｜を引数にしてｄ軸電流値Ｉｄ（ｒｅｆ）を読み出して取得し、Ｉｄ減算部６４８に出力する。また、Ｔ−Ｉｄ（ｒｅｆ）データマップ部４６９がトルク指令値Ｔ＊そのものを引数にしてｄ軸電流値Ｉｄ（ｒｅｆ）を読み出す場合、Ｔ−Ｉｄ（ｒｅｆ）データマップ部４６９は例えば正負双方のトルク指令値Ｔ＊に対応したテーブルデータや力行動作のトルク指令値Ｔ＊、回生動作のトルク指令値Ｔ＊毎のテーブルデータを有しており、Ｉｄ（ｒｅｆ）取得部６４４ｄに入力した各トルク指令値Ｔ＊を直接引数にしてＩｄ（ｒｅｆ）を読み出して取得する。尚、Ｔ−Ｉｄ（ｒｅｆ）のテーブルデータは予め実験等により取得しておく。尚、Ｉｄ（ｒｅｆ）取得部６４４ｄは、トルク指令値Ｔ＊もしくはその絶対値｜Ｔ＊｜の関数としたｄ軸電流値Ｉｄ（ｒｅｆ）の算出式を用い、前述したように演算によってｄ軸電流値Ｉｄ（ｒｅｆ）を取得するようにしても良い。そして、これらのＩｄ（ｒｅｆ）取得部６４４ａ〜６４４ｄの動作がＩｄ（ｒｅｆ）取得ステップに相当する。
【００７９】
このようにして取得されたｄ軸電流値Ｉｄ（ｒｅｆ）は、Ｉｄ減算部６４８に入力しｄ軸フィードバック電流値Ｉｄが減算され差分ΔＩｄとなる（ΔＩｄ取得ステップ）。Ｉｄ減算部６４８で算出された差分ΔＩｄはｄ軸電流制御部６６に入力し、このｄ軸電流制御部６６は差分ΔＩｄの値に基づく周知の比例制御及び積分制御を行って、差分ΔＩｄの符号が負の場合、電圧指令値｜Ｖａ｜を下限リミット値｜Ｖａ｜ＭＩＮの範囲内で減少させるように動作する。また、差分ΔＩｄの符号が正の場合、電圧指令値｜Ｖａ｜を上限リミット値｜Ｖａ｜ＭＡＸの範囲内で増加させるように動作する（電圧指令生成ステップ）。この動作は第１の形態の電圧指令設定部６０ａと同様に電流位相θｉを目標電流位相θｉ（ｂａｓｅ）に近づけるものであり、この結果、ＰＭモータ１０はトルク指令値Ｔ＊と同一のトルクＴを出力するのに最小の電流値｜Ｉａ｜をとる目標電流位相θｉ（ｂａｓｅ）と同等な電流位相θｉで動作制御され、損失の少ない効率の良い状態で動作制御される。尚、上限リミット値｜Ｖａ｜ＭＡＸ、下限リミット値｜Ｖａ｜ＭＩＮは電流位相制御部６４と同様にＰＭモータ１０によって適宜設定される。また、これら上限リミット値｜Ｖａ｜ＭＡＸ、下限リミット値｜Ｖａ｜ＭＩＮはｄ軸電流制御部６６の積分制御における積分値の上限リミット値、下限リミット値としても用いられる。
【００８０】
ここで、第２の形態の電圧指令設定部６０ｂは第１の形態の電圧指令設定部６０ａの構成とは異なり電流位相θｉを用いない。よって、ｑ軸フィードバック電流値Ｉｑがゼロ近傍の値をとる際の特別な制御への切替動作が不要となり制御系を簡略化することができる。また、差分ΔＩｄを用いた同一の構成で一貫した制御を行うことができるため、信号の連続性が維持され円滑な制御を行うことができる。
【００８１】
また、第１、第２の形態の電圧指令設定部６０ａ、６０ｂは、図７に示すように補正電圧演算部５１５を備えた構成としても良い。ここで、補正電圧演算部５１５を備えた電圧指令設定部６０ａ、６０ｂは、補正電圧演算部５１５が補正電圧｜Ｖａ’’｜を生成し電流位相制御部６４、ｄ軸電流制御部６６に出力する。そして、電流位相制御部６４、ｄ軸電流制御部６６は自身が生成した電圧指令値に補正電圧｜Ｖａ’’｜を合算して最終的な電圧指令値｜Ｖａ｜とし、電圧指令値生成部５１６に出力する。この際、電流位相制御部６４、ｄ軸電流制御部６６の積分制御における積分値の上下限のリミット値は、本来の上下限リミット値から補正電圧｜Ｖａ’’｜を差し引いた値により積分値の制限を行う。また、電圧指令設定部６０ａ、６０ｂの上限リミット値｜Ｖａ｜ＭＡＸ、下限リミット値｜Ｖａ｜ＭＩＮは、補正電圧｜Ｖａ’’｜が合算された最終的な電圧指令値｜Ｖａ｜に対して制限を行う。
【００８２】
また、補正電圧演算部５１５による補正電圧｜Ｖａ’’｜の生成方法は、例えば永久磁石の誘起電圧定数φａもしくはｄ軸電流値Ｉｄ（ｄ軸フィードバック電流値Ｉｄ）もしくはｑ軸電流値Ｉｑ（ｑ軸フィードバック電流値Ｉｑ）のうちの少なくとも一つと電気角速度ωとに基づいて生成することが好ましい。ここで、補正電圧｜Ｖａ’’｜の具体的な生成方法としては、例えば電気角速度ωの変化に対応した永久磁石の誘起電圧を考慮した下記式に基づいて算出しても良いし、
｜Ｖａ’’｜＝｜ω・φａ｜
ｑ軸電流値Ｉｑを考慮した下記式に基づいて算出しても良い。
｜Ｖａ’’｜＝｜ω・Ｌｑ・Ｉｑ｜        （Ｌｑ：ｑ軸インダクタンス）
また、永久磁石による誘起電圧に対してｄ軸電流値Ｉｄによる弱め磁束制御を考慮した下記式に基づいて算出しても良い。
｜Ｖａ’’｜＝｜ω・φａ＋ω・Ｌｄ・Ｉｄ｜        （Ｌｄ：ｄ軸インダクタンス）
またさらに、上記の式を総合し正弦波制御部４０の非干渉制御部４１４における干渉項Ｖｄ’、Ｖｑ’の算出式と同様の下記式に基づいて補正電圧｜Ｖａ’’｜を算出するようにしても良い。
Ｖｄ’＝−ω・Ｌｑ・Ｉｑ
Ｖｑ’＝ω・φａ＋ω・Ｌｄ・Ｉｄ
｜Ｖａ’’｜＝（Ｖｄ’２＋Ｖｑ’２）１／２
尚、これらの式におけるｄ軸電流値Ｉｄとｑ軸電流値Ｉｑは、各フィードバック電流値Ｉｄ、Ｉｑにそれぞれローパスフィルタ等による平滑化処理を行った値を用いても良い。
【００８３】
そして、これらの補正電圧演算部５１５を備えた図７の構成では、電気角速度ωに基づいて補正電圧｜Ｖａ’’｜が生成され、この補正電圧｜Ｖａ’’｜を合算して電圧指令値｜Ｖａ｜を生成するため、比例制御と積分制御のみで生成される電圧指令値と比較して電気角速度ωの変化に対応したより適切な電圧指令値｜Ｖａ｜の生成を行うことができる。さらに、ｄ軸電流値Ｉｄ（ｒｅｆ）を取得可能な構成では、上記の式のうちｄ軸電流値Ｉｄに替えてＩｄ（ｒｅｆ）を用いて補正電圧｜Ｖａ’’｜を算出しても良い。この構成では、目標値であるｄ軸電流値Ｉｄ（ｒｅｆ）の値に対応した補正電圧｜Ｖａ’’｜を生成することが可能となり、ｄ軸電流値ＩｄをＩｄ（ｒｅｆ）に制御するためのさらに適切な電圧指令値｜Ｖａ｜を生成することができる。特に、図６に示す第２の形態の電圧指令設定部６０ｂを用いた構成では、トルク指令値Ｔ＊に基づいて生成される安定したｄ軸電流値Ｉｄ（ｒｅｆ）を用いて補正電圧｜Ｖａ’’｜を生成することができるため、さらに適切な電圧指令値｜Ｖａ｜の生成が可能となる。尚、補正電圧演算部５１５を備えた構成では、正弦波制御部４０から電圧位相制御部５０への切り替え時に、正弦波制御部４０での電圧指令値｜Ｖａ｜から補正電圧｜Ｖａ’’｜を差し引いた値を電流位相制御部６４もしくはｄ軸電流制御部６６の初期値及び積分制御の積分値として使用するようにしても良い。
【００８４】
またさらに、第１、第２の形態の電圧指令設定部６０ａ、６０ｂの電流位相制御部６４、ｄ軸電流制御部６６は、トルク指令値Ｔ＊に対して現在のトルク値Ｔが不足している場合には、電圧指令値｜Ｖａ｜を低減する動作を行わないようにしても良い。この構成ではトルクＴを増やす際など、現状よりも大きい電圧指令値｜Ｖａ｜が必要となる場合には電圧指令値｜Ｖａ｜の低減動作を行わない。このため、特にＰＭモータ１０のトルクＴが不足している場合に、電流位相制御部６４、ｄ軸電流制御部６６の処理によるトルクＴの応答の遅延を防止することが可能となる。また、電流位相制御部６４、ｄ軸電流制御部６６は、トルク指令値Ｔ＊に対して現在のトルク値Ｔが過剰な場合に、電圧指令値｜Ｖａ｜を増加する動作を行わないようにしても良い。この構成ではトルクＴを減らす際など、現状よりも小さい電圧指令値｜Ｖａ｜が必要となる場合には電圧指令値｜Ｖａ｜の増加動作を行わない。これにより、特にＰＭモータ１０のトルクＴが過剰な場合に、電流位相制御部６４、ｄ軸電流制御部６６の処理によるトルクＴの応答の遅延を防止することが可能となる。
【００８５】
さらに、電流位相制御部６４、ｄ軸電流制御部６６は、入力した値が同等の値の場合でも、出力となる電圧指令値｜Ｖａ｜の１制御周期あたりの変化幅をそのときの電気角速度ωの値に応じて変化させるようにしても良い。即ち、電気角速度ωが低い場合には電圧指令値｜Ｖａ｜の変化幅を小さくし、電気角速度ωが高い場合には電圧指令値｜Ｖａ｜の変化幅を大きくする。この構成では、低い電気角速度ωにおいては電圧指令値｜Ｖａ｜の変化量が小さくなるため、低速回転時における動作制御を安定的に行うことができる。また、高い電気角速度ωの場合には電圧指令値｜Ｖａ｜の変化量が大きくなるため、高速回転時における電圧指令値｜Ｖａ｜の応答速度の向上を図ることができる。これにより、低い電気角速度ωから高い電気角速度ωまで安定した制御を行うことができる。尚、電圧指令値｜Ｖａ｜の変化幅を変更する手法としては、例えば、電気角速度ωに応じて比例制御、積分制御の各制御ゲインを増減させる手法が挙げられる。また、例えば電流位相制御部６４、ｄ軸電流制御部６６に入力する差分Δθｉもしくは差分ΔＩｄに電気角速度ωに応じて増減する係数を乗じて補正し、この補正された差分Δθｉもしくは差分ΔＩｄに基づいて電圧指令値｜Ｖａ｜を算出する手法が挙げられる。また、例えば電流位相制御部６４、ｄ軸電流制御部６６の比例制御、積分制御の１制御周期毎の変化幅にリミッタを設けて、このリミッタの制限値を電気角速度ωに応じて増減する手法などが挙げられる。
【００８６】
またさらに、第１、第２の形態の電圧指令設定部６０ａ、６０ｂの電流位相制御部６４、ｄ軸電流制御部６６は、トルク指令値Ｔ＊の急激な変化に対する応答性を向上するために、以下の構成を備えていても良い。先ず、第１の構成としては、図８（ａ）に示すように、電圧指令設定部６０ａ、６０ｂに設けられた変動監視部６５０ａがトルク指令値Ｔ＊をモニタし、トルク指令値Ｔ＊が予め設定した閾値を超えて減少することを検知する（第１の形態の変動監視ステップ）。尚、このときのトルク指令値Ｔ＊の閾値は固定値としても良いし、電源電圧Ｖｄｃと電気角速度ωのいずれか、もしくは双方に対応して設定しても良い。また、変動監視部６５０ａが検知する低負荷のトルク指令値Ｔ＊は回生動作を行うトルク指令値Ｔ＊であっても構わない。この際、トルク指令値Ｔ＊の閾値を力行のトルク指令値Ｔ＊の場合と回生のトルク指令値Ｔ＊の場合とで異なる値に設定しても良いし、双方で共通の値に設定しても良い。
【００８７】
そして、変動監視部６５０ａがトルク指令値Ｔ＊の閾値を超えた減少を検知すると、電流位相制御部６４、ｄ軸電流制御部６６は自身の積分制御の積分値を確認し、この積分値が所定の閾値よりも大きいときに所定の手法に基づいてこの積分値を減少させる（高速応答ステップ）。例えば、トルク指令値Ｔ＊がある程度高く且つ電流位相制御部６４、ｄ軸電流制御部６６の積分値が上限リミット値｜Ｖａ｜ＭＡＸの９０％よりも大きな値の状態で予め設定された閾値を超える低負荷のトルク指令値Ｔ＊が入力したときに、電流位相制御部６４、ｄ軸電流制御部６６は予め設定された小さな値、例えば上限リミット値｜Ｖａ｜ＭＡＸの９０％の値を積分値として代入し電圧指令値｜Ｖａ｜の演算を行う。尚、代入する積分値は固定値でも良いし、上限リミット値｜Ｖａ｜ＭＡＸに基づいて設定しても良い。また、トルク指令値Ｔ＊、電源電圧Ｖｄｃ、電気角速度ωの全てに対応して設定しても良いし、トルク指令値Ｔ＊と電気角速度ω、またはトルク指令値Ｔ＊と電源電圧Ｖｄｃ等に応じて設定しても良い。さらに、上限リミット値｜Ｖａ｜ＭＡＸが同期数で変化する場合には、これらのパラメータに同期数を考慮した上で積分値を設定しても良い。またさらに、積分値を変化させる替わりに上限リミット値｜Ｖａ｜ＭＡＸを上記の積分値の設定方法と同様にして低下させ、この低下した上限リミット値｜Ｖａ｜ＭＡＸにより積分値及び電圧指令値｜Ｖａ｜を小さな値に制限して、積分値及び電圧指令値｜Ｖａ｜を減少させるようにしても良い。そして、変動監視部６５０ａを有する上記の構成によれば、トルク指令値Ｔ＊が閾値を超えて減少し且つ積分値が大きな場合に、積分値を減少して電圧指令値｜Ｖａ｜を算出する。これにより、電圧指令値｜Ｖａ｜の値を迅速に減少させることができ、ＰＭモータ１０を速やかに損失の少ない効率の良い状態で運転させることができる。
【００８８】
尚、トルク指令値Ｔ＊が変動監視部６５０ａの閾値近傍の値をとった時の電流位相制御部６４もしくはｄ軸電流制御部６６の積分値は上記の積分値の閾値よりも十分に小さい値となるようにトルク指令値Ｔ＊の閾値を設定することが好ましい。この構成では、トルク指令値Ｔ＊が閾値の近傍にあった時にこの閾値を超えて減少した場合は（電流位相制御部６４もしくはｄ軸電流制御部６６の積分値が閾値よりも小さいため）積分値の減少動作は行われない。即ち、トルク指令値Ｔ＊が閾値前後を行き来する場合には積分値は通常の積分制御により算出され、頻繁な減少動作の発生を回避する。これにより、ＰＭモータ１０の制御の不安定化やトルク変動の発生を防止することができる。
【００８９】
また、第２の構成としては、図８（ｂ）に示すように、電圧指令設定部６０ａ、６０ｂに設けられた変動監視部６５０ｂが電圧位相設定部５０２から出力する電圧位相θｖをモニタし、この電圧位相θｖがθｖの上限リミット値もしくは上限リミット値の近傍となったときに（第２の形態の変動監視ステップ）、電流位相制御部６４、ｄ軸電流制御部６６の制御ゲイン（積分制御、比例制御の一方もしくは両方）もしくは、電流位相制御部６４、ｄ軸電流制御部６６の積分制御の積分値、もしくは、これら制御ゲインと積分値の双方を増加させる（高速応答ステップ）。尚、電流位相制御部６４、ｄ軸電流制御部６６の積分値を増加させる場合、積分値の１制御周期あたりの増加幅は固定値としても良いし、トルク指令値Ｔ＊と現在のトルクＴとの差に基づいて設定しても良い。また、トルク指令値Ｔ＊に対して現在のトルクＴが小さく両者の差が大きいときには積分値の増加幅を大きくするようにしても良い。さらに、積分値を増加させる際には、電流位相制御部６４、ｄ軸電流制御部６６の比例制御の出力と積分制御による積分値の変化は無視するようにしても良い。
【００９０】
ここで、例えばトルク指令値Ｔ＊が低負荷の指令値にあるとき、電圧指令設定部６０ａ、６０ｂが出力する電圧指令値｜Ｖａ｜は低い値となっている。この状態で高負荷のトルク指令値Ｔ＊が入力した場合、電圧指令値｜Ｖａ｜は即応できず電圧位相θｖが急増し上限リミット値で制限される。この場合、電圧指令値｜Ｖａ｜がトルク指令値Ｔ＊に追従するまでＰＭモータ１０はトルク不足の状態で動作する。しかしながら、変動監視部６５０ｂを有する構成では、電圧位相θｖが上限リミット値もしくは上限リミット値の近傍となったときに電流位相制御部６４、ｄ軸電流制御部６６の例えば積分制御のゲインを大きくする、もしくは積分制御の積分値を増加させて動作する。これにより、電圧指令値｜Ｖａ｜の増加速度は大きくなり、電圧指令値｜Ｖａ｜の応答性が向上する。これにより、ＰＭモータ１０がトルク不足で動作する時間を短縮することができる。そして、電圧位相θｖが上限リミット値からある程度低下すると、変動監視部６５０ｂはこれを検知し、電流位相制御部６４、ｄ軸電流制御部６６の制御ゲインもしくは積分値に対する処理は通常のものに復帰する。これにより、電圧指令値｜Ｖａ｜の変動は小さくなり安定的な制御が行われる。
【００９１】
また、第３の構成としては、図８（ｃ）に示すように、電圧指令設定部６０ａ、６０ｂに設けられた変動監視部６５０ｃがθｉ減算部６３もしくはＩｄ減算部６４８が出力する差分Δθｉもしくは差分ΔＩｄの値を監視し、この差分Δθｉもしくは差分ΔＩｄの絶対値が予め設定した閾値よりも大きな値を示した時に（第３の形態の変動監視ステップ）、電流位相制御部６４、ｄ軸電流制御部６６の制御ゲインを増加させる（高速応答ステップ）。ここで、トルク指令値Ｔ＊が大きく変化したり電源電圧Ｖｄｃや電気角速度ωが急変した場合、差分Δθｉもしくは差分ΔＩｄの増減幅が大きくなる。ここで、電流位相制御部６４、ｄ軸電流制御部６６の応答速度が遅い場合、電圧指令値｜Ｖａ｜が追従するまでの間、トルク不足が生じたり、損失の大きな状態が生じる。しかしながら、変動監視部６５０ｃを有する電圧指令設定部６０ａ、６０ｂでは、差分Δθｉもしくは差分ΔＩｄの絶対値が予め設定した閾値よりも大きな値を示した時に、電流位相制御部６４、ｄ軸電流制御部６６の制御ゲインを大きくするため、電圧指令値｜Ｖａ｜の応答性が速くなり、上記の好ましくない動作状態を速やかに解消してＰＭモータ１０を損失の少ない効率の良い状態で動作させることができる。そして、差分Δθｉもしくは差分ΔＩｄの増減幅がある程度低下すると、変動監視部６５０ｃはこれを検知し、電流位相制御部６４、ｄ軸電流制御部６６の制御ゲインは通常のものに復帰する。これにより、電圧指令値｜Ｖａ｜の変動は小さくなり安定的な制御が行われる。
【００９２】
尚、変動監視部６５０ａ〜６５０ｃを備えた構成では、電流位相制御部６４、ｄ軸電流制御部６６の出力にローパスフィルタ６５２をさらに設け、このローパスフィルタ６５２を通して電圧指令値｜Ｖａ｜を電圧指令値生成部５１６に出力することが好ましい。ここで、変動監視部６５０ａ〜６５０ｃを備えた構成では、トルク指令値Ｔ＊等が急変した場合に積分値や制御ゲインを変化させて電圧指令値｜Ｖａ｜の応答性を向上する。このため、この動作領域では電圧指令値｜Ｖａ｜の変動幅が大きくなり、その結果、ＰＭモータ１０の駆動電流Ｉｕ、Ｉｖ、Ｉｗやトルクの変動が大きくなる。この点、上記のローパスフィルタ６５２を設けた構成では、このローパスフィルタ６５２が電圧指令値｜Ｖａ｜の急激な変化を抑制するため、変動監視部６５０ａ〜６５０ｃによる優れた応答性を確保しながら、電圧指令値｜Ｖａ｜の急変動を抑制することができる。これにより、変動監視部６５０ａ〜６５０ｃをより効果的に機能させることができる。
【００９３】
以上のように、本発明に係るモータ制御装置１００及びモータ制御方法は、電流位相制御部６４、ｄ軸電流制御部６６からの電圧指令値｜Ｖａ｜が上限リミット値｜Ｖａ｜ＭＡＸと下限リミット値｜Ｖａ｜ＭＩＮの範囲内にあるときは、目標電流位相θｉ（ｂａｓｅ）と同等な電流位相θｉをとるように制御される。このため、ＰＭモータ１０を損失の少ない効率の良い状態で動作させることができる。また、このときは過変調パターン（または正弦波パターン）の出力電圧となるため、特に低負荷時において従来の矩形波制御よりも電流波形の歪みが改善しトルクの振動や騒音の発生を抑制することができる。さらに、電圧位相制御部５０が弱め磁束制御の領域をカバーすることで制御方式の切替数が減少するとともに、制御系の構成を簡易化でき、その分、マイコン等の制御部のコストの削減を図ることができる。またさらに、電圧位相制御部５０（電流位相制御部６４、ｄ軸電流制御部６６）の電圧指令値｜Ｖａ｜の上限リミット値｜Ｖａ｜ＭＡＸを矩形波形成電圧値｜Ｖａ’｜とし、下限リミット値｜Ｖａ｜ＭＩＮを低負荷や回生動作のトルク指令値Ｔ＊に対応した値に設定することで、高回転速度、高トルクの矩形波パターンを用いる矩形波制御の領域から、弱め磁束制御領域及び過変調パターンを用いる過変調制御領域、さらには低負荷の正弦波パターンを用いる正弦波制御領域までを同一の制御方式でカバーすることが可能となる。これにより、制御方式の切替数が減少し、切替時のトルクショックや応答遅延の発生を減少することができる。
【００９４】
また、電流位相θｉは目標電流位相θｉ（ｂａｓｅ）と同等となるように制御されるため、電圧位相制御部５０から正弦波制御部４０への切り替え前後で電流位相θｉは同等となり、トルクショックの少ないスムーズな切替動作が可能となる。
【００９５】
尚、本例で示したモータ制御装置１００及びモータ制御方法は一例であり、制御信号生成部３０、正弦波制御部４０、電圧位相制御部５０、電圧指令設定部６０等の各部の構成、動作、及び各ステップの構成等は本発明の要旨を逸脱しない範囲で変更して実施することが可能である。
【符号の説明】
【００９６】
１０    ＰＭモータ
１２ｕ、１２ｖ  駆動電流取得部
１４    角度取得部
２０    インバータ
２２    ３相／ｄｑ変換部
３０    制御信号生成部
３２    ｄｑ／３相変換部
３４    搬送波生成部
５０    電圧位相制御部
５０２  電圧位相設定部
５１６  電圧指令値生成部
５２０  キャリア設定部
６０、６０ａ、６０ｂ  電圧指令設定部
６２    電流位相演算部
６３    θｉ減算部
６４    電流位相制御部
６６    ｄ軸電流制御部
６２４  位相演算部
６２６  ｑ軸電流判定部
６２８  入力切替部
６４４ａ〜６４４ｄ  Ｉｄ（ｒｅｆ）取得部
６４８  Ｉｄ減算部
６５０ａ〜６５０ｃ  変動監視部
６５２  ローパスフィルタ
７０    オフセット補正部
１００  モータ制御装置
Ｉｄ    ｄ軸フィードバック電流値
Ｉｑ    ｑ軸フィードバック電流値
Ｓｃ    キャリア設定情報
Ｔ＊    トルク指令値
｜Ｖａ｜  電圧指令値
Ｖｄ    ｄ軸電圧指令値
Ｖｑ    ｑ軸電圧指令値
θｉ    電流位相
θｉ（ｂａｓｅ）  目標電流位相
θｖ    電圧位相
Δθｉ  差分
ΔＩｄ  差分
【図１】
2020043719.tif 000003
【図２】
2020043719.tif 000004
【図３】
2020043719.tif 000005
【図４】
2020043719.tif 000006
【図５】
2020043719.tif 000007
【図６】
2020043719.tif 000008
【図７】
2020043719.tif 000009
【図８】
2020043719.tif 000010