(57)【要約】【課題】負荷変動を有するモータを電圧飽和領域でトルク制御する際に、制振効果の向上と効率改善、ならびに通常制御領域との間での状態遷移時の切り替えショックを抑制する。【解決手段】モータ制御装置は、速度指令値とモータの速度とからモータの電流指令値を生成する電流指令値算出器、モータの現在の制御領域が電圧飽和領域および電圧飽和領域以外の通常制御領域の何れであるかを判定する判定部を備える。電流指令値算出器は、判定部によりモータの現在の制御領域が通常制御領域であると判定された場合には、モータの電流指令値を、モータの定トルク曲線とモータの最大トルク／電流曲線の交点に基づいて生成する通常制御を実行し、判定部によりモータの現在の制御領域が電圧飽和領域であると判定された場合には、出力電圧の位相が、出力電圧限界値以下で変動する振幅となるように、モータの電流指令値を、モータの定トルク曲線とモータの定誘起電圧楕円の交点に基づいて生成する。【選択図】図３
2019201471.tif 000002
【特許請求の範囲】
【請求項１】
速度指令値とモータの速度とからモータの電流指令値を生成する電流指令値算出器を備えたモータ制御装置において、
前記モータの現在の制御領域が電圧飽和領域および電圧飽和領域以外の通常制御領域の何れであるかを判定する判定部を備え、
前記電流指令値算出器は、
前記判定部により前記モータの現在の制御領域が通常制御領域であると判定された場合には、前記モータの電流指令値を、前記モータの定トルク曲線と前記モータの最大トルク／電流曲線の交点に基づいて生成する通常制御を実行し、
前記判定部により前記モータの現在の制御領域が電圧飽和領域であると判定された場合には、モータに印加する出力電圧がモータへの出力可能な最大電圧の限界値である出力電圧限界値以下で変動する振幅となるように、前記モータの電流指令値を、前記モータの定トルク曲線と前記モータの定誘起電圧楕円の交点に基づいて生成する、
ことを特徴とするモータ制御装置。
【請求項２】
前記電流指令値算出器は、
前記判定部により前記モータの現在の制御領域が電圧飽和領域であると判定された場合、出力電圧の位相が前記通常制御領域における制御と同一の位相となる、
ことを特徴とする請求項１に記載のモータ制御装置。
【請求項３】
前記電流指令値算出器は、
前記モータを流れるｄ軸電流およびｑ軸電流と、前記モータの所定の出力電圧限界値と、前記モータを駆動するための変動成分を含むトルク指令値と、前記モータの機械角位相と、モータの推定角速度である電気角推定角速度に応じた可変値の出力電圧制限指令値を生成する出力電圧制限指令値生成器と、
前記出力電圧制限指令値生成器により生成された前記出力電圧制限指令値と、前記ｄ軸電流および前記ｑ軸電流と、前記モータの現在の推定速度と、前記機械角位相とに基づいて、前記出力電圧制限指令値に相当する出力電圧を得るための誘起電圧指令値を生成する誘起電圧指令値生成器と、
前記モータの電流指令値を、前記トルク指令値と、前記推定速度と、前記誘起電圧指令値生成器により生成された前記誘起電圧指令値とから求まる前記モータの定トルク曲線と前記モータの定誘起電圧楕円の交点に基づいて生成する電流指令値算出器と、
を備えることを特徴とする請求項１または２に記載のモータ制御装置。
【請求項４】
前記速度指令値と前記モータの速度の偏差に基づいて前記モータのトルク指令値を補正するための補正トルクを生成する補正トルク生成器をさらに備えることを特徴とする請求項１〜３の何れか１項に記載のモータ制御装置。
【請求項５】
前記補正トルク生成器は、前記モータの振動が許容できる範囲を示す速度変動許容値に応じて前記補正トルクを生成することを特徴とする請求項４に記載のモータ制御装置。
【請求項６】
前記電流指令値算出器は、前記モータの電流指令値のうち、ｑ軸電流指令値Ｉｑ＊を、モータのトルクおよび誘起電圧を規定する各数式から導出される下記（１）式から算出することを特徴とする請求項４または５に記載のモータ制御装置。
【数１】
2019201471.tif 000052
ただし、上記（１）式において、ｑ軸電流指令値Ｉｑ＊は“Ｉｑ”に該当し、“ΔＬ”は“Ｌｄ−Ｌｑ”であり、“Ψａ”はモータの鎖交磁束であり、“Ｖｏ”はモータの誘起電圧であり、“ω”はモータの速度であり、“Ｔ”はモータの駆動トルクであり、“Ｐｎ”はモータの極対数であり、“Ｌｄ”はモータのｄ軸インダクタンスであり、“Ｌｑ”はモータのｑ軸インダクタンスである。
【請求項７】
前記電流指令値算出器は、前記モータの電流指令値のうち、ｄ軸電流指令値Ｉｄ＊を下記（２）式から算出することを特徴とする請求項６に記載のモータ制御装置。
【数２】
2019201471.tif 000053
ただし、上記（２）式において、ｄ軸電流指令値Ｉｄ＊は“Ｉｄ”に該当し、ｑ軸電流指令値Ｉｑ＊は“Ｉｑ”に該当し、“Ψａ”はモータの鎖交磁束であり、“Ｖｏ”はモータの誘起電圧であり、“ω”はモータの速度であり、“Ｌｄ”はモータのｄ軸インダクタンスであり、“Ｌｑ”はモータのｑ軸インダクタンスである。
【請求項８】
前記電流指令値算出器は、上記（２）式から算出された正負のｄ軸電流指令値Ｉｄ＊のうち、Ｔ＊≦Ｔ_ＭおよびＴ＊＞Ｔ_Ｍの何れかに応じて、下記（３）式に基づいて正負のｄ軸電流指令値Ｉｄ＊の何れか１つを前記モータの電流指令値として算出することを特徴とする請求項７に記載のモータ制御装置。
【数３】
2019201471.tif 000054
ただし、上記（３）式において、“Ｔ＊”は合計トルク指令値であり、“Ｔ_Ｍ”はモータの定誘起電圧楕円上のＭ点におけるトルクであるＭ点境界上トルク（ただし、“Ｍ点”は、モータの定誘起電圧楕円の中心）である。
【請求項９】
前記補正トルク生成器は、前記モータの通常制御領域と電圧飽和領域とで同一の制御器を用いることを特徴とする請求項４〜８の何れか１項に記載のモータ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータ制御装置に関する。
【背景技術】
【０００２】
空気調和装置等に用いられる圧縮機は、圧縮機を駆動するモータのロータの１回転中において負荷トルクが周期的に変動する。この負荷トルク変動は、吸入、圧縮、吐出の各行程におけるガス冷媒の圧力変化に起因する。この周期的な負荷トルク変動は、モータの回転速度の変動を生じさせ、振動や騒音を発生させる要因となる。特に、シングルロータリー圧縮機では、低回転領域で振動が大きくなる傾向にある。このようなロータの１回転中の負荷トルク変動を有する圧縮機を駆動する場合、モータの速度変動を抑えるためにトルク制御（周期的外乱抑制制御）が行われる。
【０００３】
通常、振動が顕著に現れるのは低回転時（例えば、モータ最大トルク／電流制御が行われる通常制御領域）であるが、インバータやモータの仕様および負荷条件によっては、高回転時（例えば、弱め磁束制御が行われる電圧飽和領域）でも振動が発生し、それに起因してモータのピーク電流振幅が増大する。そして、振動の増加は、空気調和装置等において配管へのダメージや騒音を生じさせ、モータのピーク電流増加による効率低下や圧縮機モータの減磁、また、減磁を防止するためのインバータの保護機能が動作してモータが停止等に陥る。
【０００４】
そこで、特許文献１および特許文献２では、電圧飽和領域でのトルク制御として、出力電圧をインバータが出力可能な直流電圧に制限しつつ、電圧ベクトル角（δ角）を速度変動に同期して脈動させている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１７−１５８４１４号公報
【特許文献２】特開２０１７−１５８４１５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１および特許文献２には、電圧ベクトル角変動と速度変動の変動位相や変動振幅の関係については明示されておらず、チューニングによって速度変動に対する電圧ベクトル角変動の位相を調整するといった工数を要する。このため、ある条件下で、電圧ベクトル角変動の変動位相のチューニングがなされて制振効果が得られたとしても、インバータやモータの仕様、負荷条件等が変われば最適な出力トルクを発生するための電圧ベクトル角変動とならずに制振効果を十分に発揮できないという問題がある。
【０００７】
また、特許文献２では、図１（ａ）で示すように通常制御領域から電圧飽和領域へ移行した直後（制御状態Ｂ）では、モータに印加する出力電圧がモータへの出力可能な限界値である出力電圧限界値を超えないようにするため、出力電圧を一定の傾きで増加（実線に相当）させる。言い換えれば、出力電圧を図１（ａ）の破線のように脈動させたりしない。しかし、出力電圧を脈動させないことにより、トルク制御が不十分となりモータの振動を抑えることができない。
【０００８】
本発明は、上記に鑑みてなされたものであって、電圧飽和領域の中で通常制御領域から移行した後から出力電圧が出力電圧限界値に達するまでの領域（制御状態Ｂの領域）におけるモータの振動を抑制（制振効果の向上）するモータ制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上述の課題を解決するため、本発明の実施形態の一例は、速度指令値とモータの速度とからモータの電流指令値を生成する電流指令値算出器を備えたモータ制御装置において、前記モータの現在の制御領域が電圧飽和領域および電圧飽和領域以外の通常制御領域の何れであるかを判定する判定部を備え、前記電流指令値算出器は、前記判定部により前記モータの現在の制御領域が通常制御領域であると判定された場合には、前記モータの電流指令値を、前記モータの定トルク曲線と前記モータの最大トルク／電流曲線の交点に基づいて生成する通常制御を実行し、前記判定部により前記モータの現在の制御領域が電圧飽和領域であると判定された場合には、モータに印加する出力電圧がモータへの出力可能な最大電圧の限界値である出力電圧限界値以下で変動する振幅となるように、前記モータの電流指令値を、前記モータの定トルク曲線と前記モータの定誘起電圧楕円の交点に基づいて生成する。
【発明の効果】
【００１０】
本発明の実施形態の一例によれば、電圧飽和領域の中で通常制御領域から移行した後から出力電圧が出力電圧限界値に達するまでの領域（制御状態Ｂの領域）におけるモータの振動を抑制（制振効果の向上）することができる。
【図面の簡単な説明】
【００１１】
【図１】図１は、従来技術および実施形態の出力電圧の波形の一例を示す概略図である。
【図２】図２は、実施形態のトルク制御による電流ベクトルの一例を示す図である。
【図３】図３は、実施形態のモータ制御装置の一例を示すブロック図である。
【図４】図４は、実施形態の制御切替判定部の一例を示すブロック図である。
【図５】図５は、実施形態の補正トルク生成器の一例を示すブロック図である。
【図６】図６は、実施形態の電流指令値算出器の一例を示すブロック図である。
【図７】図７は、実施形態の出力電圧制限指令値生成器の一例を示すブロック図である。
【図８】図８は、実施形態の出力電圧制限指令値生成方法を説明するための概略図である。
【図９】図９は、実施形態のｄ軸電流設定の一例を説明するための図である。
【図１０】図１０は、実施形態の電流誤差補正値生成器の一例を示すブロック図である。
【発明を実施するための形態】
【００１２】
以下に添付図面を参照して開示の技術にかかるモータ制御装置の実施形態の一例について説明する。以下の実施形態は、周期的な負荷トルク変動を有する圧縮機を駆動する永久磁石同期モータ（ＰＭＳＭ（Permanent  Magnet  Synchronous  Motor））のトルク制御を、位置センサレスベクトル制御により行う、例えば空気調和装置または低温保存装置等のモータ制御装置に関する。しかし、開示の技術は、周期的な負荷トルク変動を有する負荷を駆動するモータのトルク制御を行うモータ制御装置に広く適用可能である。また、以下の説明で単に速度と記した場合は、特に断らない限り角速度を表す。
【００１３】
なお、以下に示す実施形態は、開示の技術を限定するものではない。また、以下に示す実施形態およびその変形例は、矛盾しない範囲で適宜組み合わせることができる。また、以下に示す実施形態は、開示の技術にかかる構成および処理について主に示し、その他の構成および処理の説明を簡略または省略する。また、各実施形態において、同一の構成および処理には同一の符号を付与し、既出の構成および処理の説明は省略する。
【００１４】
なお、以下で用いる記号の説明の一覧を、下記（表１）に示す。
【００１５】
【表１】
2019201471.tif 000003
【００１６】
また、以下の実施形態で示す各式における“Ｐｎ”はモータの極対数、“Ψａ”はモータの鎖交磁束、“Ｉｄ”はモータのｄ軸電流、“Ｉｑ”はモータのｑ軸電流、“Ｌｄ”はモータのｄ軸インダクタンス、“Ｌｑ”はモータのｑ軸インダクタンス、“Ｔ”はモータのトルクである。
【００１７】
（実施形態）
図１（ｂ）は、実施形態における出力電圧の波形の概形図である。ここで、図１（ｂ）に示すように、モータの制御状態は制御状態Ａ、制御状態Ｂ、制御状態Ｃに分かれる。制御状態Ａは、通常制御領域における最大トルク／電流制御（ＭＴＰＩ制御）が行われる状態である。制御状態Ｂは、通常制御領域（制御状態Ａ）から電圧飽和領域に状態遷移した直後から出力電圧の変動振幅が出力電圧限界値以下になるような制御が行われる状態である（この制御状態を出力電圧制限制御とする）。制御状態Ｃは、制御状態Ｂにおいて出力電圧の変動振幅の中心である平均出力電圧が出力電圧限界値に達した後、出力電圧を出力電圧限界値に固定する制御（弱め磁束制御）が行われる状態である。
【００１８】
そして、図１（ｂ）で示すように、通常制御領域（制御状態Ａ）から電圧飽和領域（制御状態Ｂ）に状態遷移した直後も、出力電圧を出力電圧限界値以下に保ちつつ、さらに、出力電圧の変動位相を通常制御領域の変動位相と同一として、変動振幅のピーク値が出力電圧限界値になるように制御する。実施形態によれば、変動振幅を含めて出力電圧を出力電圧限界値以下の範囲で最大限に有効利用できる点や、通常制御領域と電圧飽和領域との状態遷移前後がスムーズに接続される点から、電圧飽和領域におけるトルク制御の制振効率向上、および、状態遷移に伴う切り替えショックの抑制を実現できる。
【００１９】
図２は、実施形態のトルク制御による電流ベクトルを示す図である。図２（ａ）は、通常制御領域における制御状態Ａの電流ベクトル軌跡を示す。また、図２（ｂ）は、電圧飽和領域（制御状態Ｂ、Ｃ）のため、負荷トルク変動の抑制に必要な出力電圧の変動分が得られない場合の電流ベクトル軌跡を示す。
【００２０】
図２（ａ）に示すように、制御状態ＡではＭＴＰＩ出力電圧を得るための誘起電圧Ｖｏおよび推定速度ωの比（Ｖｏ／ω）からなる定誘起電圧楕円（図は楕円の一部）と、±ΔＴの変動幅を有する合計トルク指令値Ｔ＊（＝Ｔo＊±ΔＴ）からなる定トルク曲線との交点の電流ベクトル軌跡であるｄ軸電流指令値Ｉｄ＊およびｑ軸電流指令値Ｉｑ＊が、ＭＴＰＩ曲線と一致する。
【００２１】
一方、図２（ｂ）に示すように、制御状態Ｂ、Ｃでは電圧飽和領域のためＭＴＰＩ出力電圧の変動が制限される場合には、誘起電圧Ｖｏの変動も抑制され、誘起電圧Ｖｏおよび推定速度ωの比（Ｖｏ／ω）からなる定誘起電圧楕円（図は楕円の一部）の変動幅も小さくなる。そのため、ＭＴＰＩ曲線上をトレースするだけでは負荷トルク変動を抑制するために必要なトルクが得られなくなる。その必要なトルク（合計トルク指令値Ｔ＊）を得るには、ｄ軸電流指令値Ｉｄ＊の変動幅を増加させる必要がある。具体的には、定誘起電圧楕円と±ΔＴの変動幅を有する合計トルク指令値Ｔ＊（＝Ｔo＊±ΔＴ）からなる定トルク曲線との交点をｄ軸電流指令値Ｉｄ＊およびｑ軸電流指令値Ｉｑ＊とする。なお、このようにして得られたｄ軸電流指令値Ｉｄ＊およびｑ軸電流指令値Ｉｑ＊の電流ベクトル軌跡は、図２（ｂ）に示すように楕円形になり、ＭＴＰＩ曲線と一致しなくなる。実施形態は、負荷変動に応じて調整される合計トルク指令値Ｔ＊の変動と出力電圧の変動振幅の抑制度合いから、負荷変動周期における電流ベクトル軌跡を変化させてモータを駆動制御する（制御状態Ｂ、Ｃ）。なお、制御状態Ｃの場合、出力電圧は出力電圧限界値に固定されるため、負荷トルク変動による速度変動が生じないようにトルク制御を行うと、定誘起電圧楕円の変動はなくなる。しかし、後述の消費電力低減を図るために速度変動許容値|Δωｍ|＊を設けることで、図２（ｂ）に示すようにモータの推定速度ωが変動し、定誘起電圧楕円は、誘起電圧Ｖｏおよび推定速度ωの比（Ｖｏ／ω）の範囲で変動する。なお、上述したように、定誘起電圧楕円や定トルク曲線は、モータパラメータ（リアクタンスなど）で一意に決まるものではなく、モータの運転状態によって刻々と変化するものである。
【００２２】
［実施形態のモータ制御装置］
図３は、実施形態のモータ制御装置の一例を示すブロック図である。実施形態のモータ制御装置１００は、モータ１０のトルク制御を行う際、速度制御器により生成された平均トルク指令値Ｔo＊に補正トルクである変動トルク指令値ΔＴを加算した合計トルク指令値Ｔ＊からなる定トルク曲線と、出力電圧振幅Ｖａを任意の振幅とするための誘起電圧指令値Ｖ０＊および推定速度ωからなる定誘起電圧楕円の交点をもとに、ｑ軸電流指令値Ｉｑ＊およびｄ軸電流指令値Ｉｄ＊を算出して電流制御することによりモータ１０を制御する。
【００２３】
モータ制御装置１００は、減算器１１、１８、１９、速度制御器１２、加算器１３，１６、１７、２１、２２、電流指令値算出器１４、制御切替判定部１５、電圧指令生成器２０、ｄ−ｑ／ｕ，ｖ，ｗ変換器（２相−３相変換器）２３、ＰＷＭ（Pulse  Width  Modulation）変調器２４、ＩＰＭ（Intelligent  Power  Module）２５を有する。速度制御器１２および電流指令値算出器１４は、速度指令値とモータの速度とからモータの電流指令値を生成する電流指令値算出器の一例である。制御切替判定部１５は、モータの現在の制御領域が電圧飽和領域か否かを判定する判定部の一例である。
【００２４】
また、モータ制御装置１００は、シャント抵抗２６、電流センサ２７ａ、２７ｂ、３φ電流算出器２８を有する。なお、モータ制御装置１００は、シャント抵抗２６、もしくは、電流センサ２７ａ、２７ｂの何れか一方を備えていればよい。
【００２５】
また、モータ制御装置１００は、ｕ，ｖ，ｗ／ｄ−ｑ変換器（３相−２相変換器）２９、軸誤差演算器３０、ＰＬＬ（Phase  Locked  Loop）制御器３１、位置推定器３２、１／Ｐｎ処理器３３、補正トルク生成器３４を有する。また、モータ制御装置１００は、ＩＩＲ（Infinite  Impulse  Response）３５ａ、３５ｂ、非干渉化制御器３６を有する。また、モータ制御装置１００は、電流誤差補正値生成器３７を有する。
【００２６】
減算器１１は、モータ制御装置１００へ入力された機械角速度指令値ωｍ＊から、１／Ｐｎ処理器３３により出力された現在の推定角速度である機械角推定角速度ωｍを減算した角速度偏差Δωを、速度制御器１２へ出力する。
【００２７】
速度制御器１２は、減算器１１から入力された角速度偏差Δωが、ゼロに近付くような平均トルク指令値Ｔo＊を生成して出力する。加算器１３は、速度制御器１２により出力された平均トルク指令値Ｔo＊と、補正トルク生成器３４により出力された変動トルク指令値ΔＴとを加算した合計トルク指令値Ｔ＊を出力する。
【００２８】
電流指令値算出器１４は、通常制御領域および電圧飽和領域のそれぞれにおいて、加算器１３により出力された合計トルク指令値Ｔ＊を満たすｄ軸電流指令値Ｉｄ＊およびｑ軸電流指令値Ｉｑ＊を生成して出力する。電圧飽和領域とは、モータ１０の高回転領域で出力電圧振幅Ｖａが飽和して弱め磁束制御を行う領域である。通常制御領域とは、電圧飽和領域以外の領域で電圧を可変してモータを制御する領域である。電流指令値算出器１４は、通常制御領域電流指令値算出器１４ａ、電圧飽和領域電流指令値算出器１４ｂ、接点１４ｃ−１、１４ｃ−２、１４ｃ−３を含むスイッチＳＷ１、接点１４ｃ−４、１４ｃ−５、１４ｃ−６を含むスイッチＳＷ２を有する。
【００２９】
電流指令値算出器１４は、制御切替判定部１５により通常制御領域であると判定された（CONTROL_TYPE：Ａ（通常制御）が出力された）場合には、スイッチＳＷ１の接点１４ｃ−１と接点１４ｃ−３を接続し、スイッチＳＷ２の接点１４ｃ−４と接点１４ｃ−６を接続して、通常制御領域電流指令値算出器１４ａにより出力されるｄ軸電流指令値Ｉｄ＊およびｑ軸電流指令値Ｉｑ＊を出力する（図１（ｂ）の制御状態Ａ）。また、電流指令値算出器１４は、制御切替判定部１５により電圧飽和領域であると判定された（CONTROL_TYPE：Ｂ（電圧飽和制御）が出力された）場合には、スイッチＳＷ１の接点１４ｃ−２と接点１４ｃ−３を接続し、スイッチＳＷ２の接点１４ｃ−５と接点１４ｃ−６を接続して、電圧飽和領域電流指令値算出器１４ｂにより出力されるｄ軸電流指令値Ｉｄ＊およびｑ軸電流指令値Ｉｑ＊を出力する（図１（ｂ）の制御状態Ｂ、Ｃ）。電流指令値算出器１４の詳細は、後述する。
【００３０】
制御切替判定部１５は、出力電圧限界値Ｖｄｑ_ｌｉｍｉｔ、非干渉化前ｄ軸電圧指令値Ｖｄｔがｄ軸非干渉化補正値Ｖｄａにより補正された結果であるｄ軸電圧指令値Ｖｄ＊、非干渉化前ｑ軸電圧指令値Ｖｑｔがｑ軸非干渉化補正値Ｖｑａにより補正された結果であるｑ軸電圧指令値Ｖｑ＊をもとに、現在のモータ１０の制御領域が通常制御領域および電圧飽和領域の何れであるかを判定する。そして、制御切替判定部１５は、現在のモータ１０の制御領域が通常制御領域である場合にはCONTROL_TYPE：Ａ（通常制御領域）を出力し、現在のモータ１０の制御領域が電圧飽和領域である場合にはCONTROL_TYPE：Ｂ（電圧飽和領域）を出力する。制御切替判定部１５の詳細は、後述する。
【００３１】
加算器１６は、電流指令値算出器１４により出力されたｄ軸電流指令値Ｉｄ＊と電流誤差補正値生成器３７により出力されたｄ軸電流誤差補正値ΔＩｄとを加算してｄ軸電流補正指令値Ｉｄ_ＦＦ＊を出力する。加算器１７は、電流指令値算出器１４により出力されたｑ軸電流指令値Ｉｑ＊と電流誤差補正値生成器３７により出力されたｑ軸電流誤差補正値ΔＩｑとを加算してｑ軸電流補正指令値Ｉｑ_ＦＦ＊を出力する。
【００３２】
減算器１８は、加算器１６により出力されたｄ軸電流補正指令値Ｉｄ_ＦＦ＊から、ｕ，ｖ，ｗ／ｄ−ｑ変換器２９により出力されたモータ１０のｄ軸電流Ｉｄを減算したｄ軸電流偏差Ｉｄ_ｄｉｆを出力する。減算器１９は、加算器１７により出力されたｑ軸電流補正指令値Ｉｑ_ＦＦ＊から、ｕ，ｖ，ｗ／ｄ−ｑ変換器２９により出力されたモータ１０のｑ軸電流Ｉｑを減算したｑ軸電流偏差Ｉｑ_ｄｉｆを出力する。
【００３３】
電圧指令生成器２０は、減算器１８により出力されたｄ軸電流偏差Ｉｄ_ｄｉｆと、減算器１９により出力されたｑ軸電流偏差Ｉｑ_ｄｉｆそれぞれにＰＩ（Portion  Integral）制御を適用することで変動誤差を抑制した非干渉化前ｄ軸電圧指令値Ｖｄｔ、非干渉化前ｑ軸電圧指令値Ｖｑｔを出力する。
【００３４】
加算器２１は、電圧指令生成器２０により出力された非干渉化前ｄ軸電圧指令値Ｖｄｔと、非干渉化制御器３６により出力されたｄ軸非干渉化補正値Ｖｄａとを加算したｄ軸電圧指令値Ｖｄ＊を出力する。また、加算器２２は、電圧指令生成器２０により出力された非干渉化前ｑ軸電圧指令値Ｖｑｔと、非干渉化制御器３６により出力されたｑ軸非干渉化補正値Ｖｑａとを加算したｑ軸電圧指令値Ｖｑ＊を出力する。
【００３５】
ｄ−ｑ／ｕ，ｖ，ｗ変換器２３は、位置推定器３２により出力された現在のロータ位置である電気角位相（ｄｑ軸位相）θｅから、加算器２１、２２により出力された２相のｄ軸電圧指令値Ｖｄ＊およびｑ軸電圧指令値Ｖｑ＊を３相のＵ相出力電圧指令値Ｖｕ＊、Ｖ相出力電圧指令値Ｖｖ＊、Ｗ相出力電圧指令値Ｖｗ＊へ変換する。そして、ｄ−ｑ／ｕ，ｖ，ｗ変換器２３は、Ｕ相出力電圧指令値Ｖｕ＊、Ｖ相出力電圧指令値Ｖｖ＊、Ｗ相出力電圧指令値Ｖｗ＊をＰＷＭ変調器２４へ出力する。ＰＷＭ変調器２４は、Ｕ相出力電圧指令値Ｖｕ＊、Ｖ相出力電圧指令値Ｖｖ＊、Ｗ相出力電圧指令値Ｖｗ＊と、図示しないＰＷＭキャリア信号から、６相のＰＷＭ信号を生成して、ＩＰＭ３５へ出力する。
【００３６】
ＩＰＭ２５は、ＰＷＭ変調器２４により出力された６相のＰＷＭ信号をもとに、外部から供給される直流電圧Ｖｄｃを変換して、モータ１０のＵ相、Ｖ相、Ｗ相それぞれへ印可する交流電圧を生成し、それぞれの交流電圧をモータ１０のＵ相、Ｖ相、Ｗ相へ印加する。
【００３７】
３φ電流算出器２８は、シャント抵抗２６を用いた１シャント（ｓｈｕｎｔ）方式で母線電流を計測した場合、ＰＷＭ変調器２４により出力された６相のＰＷＭスイッチング情報と、計測された母線電流とから、モータ１０のＵ相電流値Ｉｕ、Ｖ相電流値Ｉｖ、Ｗ相電流値Ｉｗを算出する。
【００３８】
または、電流を計測する方式は、母線電流を計測する１シャント方式に限らず、例えば、２つの電流センサとしてＣＴ（Current  Transformer）を用い、電流センサ２７ａでモータ１０のＵ相の電流を、電流センサ２７ｂでモータ１０のＶ相の電流を計測してもよい。３φ電流算出器２８は、電流センサ２７ａ、２７ｂでＵ相電流およびＶ相電流を計測した場合、残りのＷ相電流値Ｉｗは、Ｉｕ＋Ｉｖ＋Ｉｗ＝０のキルヒホッフの法則より算出する。３φ電流算出器２８は、算出した各相の相電流値Ｉｕ、Ｉｖ、Ｉｗをｕ，ｖ，ｗ／ｄ−ｑ変換器２９へ出力する。
【００３９】
ｕ，ｖ，ｗ／ｄ−ｑ変換器２９は、位置推定器３２により出力された現在のロータ位置である電気角位相θｅをもとに、３φ電流算出器２８により出力された３相のＵ相電流値Ｉｕ、Ｖ相電流値Ｉｖ、Ｗ相電流値Ｉｗを、２相のｄ軸電流Ｉｄおよびｑ軸電流Ｉｑへ変換する。そして、ｕ，ｖ，ｗ／ｄ−ｑ変換器２９は、ｄ軸電流Ｉｄを電流指令値算出器１４、減算器１８、軸誤差演算器３０、ＩＩＲ３５ａ、電流誤差補正値生成器３７へ、ｑ軸電流Ｉｑを電流指令値算出器１４、減算器１９、軸誤差演算器３０、ＩＩＲ３５ｂ、電流誤差補正値生成器３７へ、それぞれ出力する。
【００４０】
軸誤差演算器３０は、加算器２１により出力されたｄ軸電圧指令値Ｖｄ＊、加算器２２により出力されたｑ軸電圧指令値Ｖｑ＊、ｕ，ｖ，ｗ／ｄ−ｑ変換器２９により出力されたｄ軸電流Ｉｄ、ｑ軸電流Ｉｑから推定した電気角位相θｅと、実際の回転軸である実軸（ｄｑ軸）の回転角度位置θｄとの差である軸誤差Δθを算出して、ＰＬＬ制御器３１へ出力する。
【００４１】
ＰＬＬ制御器３１は、軸誤差演算器３０により出力された軸誤差Δθから、現在の推定角速度である電気角推定角速度ωｅを算出して、位置推定器３２および１／Ｐｎ処理器３３へそれぞれ出力する。
【００４２】
位置推定器３２は、ＰＬＬ制御器３１により出力された電気角推定角速度ωｅから電気角位相θｅおよび機械角位相θｍを推定する。そして、位置推定器３２は、推定した電気角位相θｅをｄ−ｑ／ｕ，ｖ，ｗ変換器２３およびｕ，ｖ，ｗ／ｄ−ｑ変換器２９へそれぞれ出力する。また、位置推定器３２は、推定した機械角位相θｍを、電流指令値算出器１４、電流誤差補正値生成器３７、補正トルク生成器３４へそれぞれ出力する。
【００４３】
１／Ｐｎ処理器３３は、ＰＬＬ制御器３１により出力された電気角推定角速度ωｅをモータ１０の極対数Ｐｎで除算して機械角推定角速度ωｍを算出し、減算器１１、補正トルク生成器３４へそれぞれ出力する。
【００４４】
補正トルク生成器３４は、速度変動許容値|Δωｍ|＊、１／Ｐｎ処理器３３により出力された機械角推定角速度ωｍから機械角速度指令値ωｍ＊を減算器３８で減算した機械角推定角速度変動（速度変動）Δωｍ、位置推定器３２により出力された機械角位相θｍから、周期的な速度変動である機械角推定角速度変動（速度変動）Δωｍを速度変動許容値|Δωｍ|＊以下に抑制するための変動トルク指令値ΔＴを生成する。変動トルク指令値ΔＴは、消費電力低減やモータ１０の減磁防止等を考慮して調整される。補正トルク生成器３４の詳細は、後述する。なお、上記の角速度偏差Δωと機械角推定角速度変動（速度変動）Δωｍは正負の符号が異なるだけである。
【００４５】
ＩＩＲ３５ａは、ｕ，ｖ，ｗ／ｄ−ｑ変換器２９により出力されたｄ軸電流Ｉｄを入力とし、ノイズを除去してｄ軸応答電流Ｉｄ_ｉｉｒを出力するフィルタである。ＩＩＲ３５ｂは、ｕ，ｖ，ｗ／ｄ−ｑ変換器２９により出力されたｑ軸電流Ｉｑを入力とし、ノイズを除去してｑ軸応答電流Ｉｑ_ｉｉｒを出力するフィルタである。ＩＩＲは、無限インパルス応答フィルタ（Infinite  Impulse  Response  Filter）であり、ノイズ除去フィルタの一例である。
【００４６】
非干渉化制御器３６は、電気角速度指令値ωｅ＊と、ｄ軸応答電流Ｉｄ_ｉｉｒとから、非干渉化前ｄ軸電圧指令値Ｖｄｔを補正するためのｄ軸非干渉化補正値Ｖｄａを生成する。また、非干渉化制御器３６は、電気角速度指令値ωｅ＊と、ｑ軸応答電流Ｉｑ_ｉｉｒとから、非干渉化前ｑ軸電圧指令値Ｖｑｔを補正するためのｑ軸非干渉化補正値Ｖｑａを生成する。ｄ軸非干渉化補正値Ｖｄａおよびｑ軸非干渉化補正値Ｖｑａは、ｄｑ軸間の干渉項を予めフィードフォワードして、電流制御による干渉をキャンセルするための補正値である。ここで、干渉項の演算については、安定制御を図るために、非干渉化補正値は直流化された値であることが望ましい。このために、例えば、速度については電気角速度指令値ωｅ＊を用い、ｄ軸電流Ｉｄおよびｑ軸電流Ｉｑについては変動成分が排除されたＩＩＲの出力値であるｄ軸応答電流Ｉｄ_ｉｉｒおよびｑ軸応答電流Ｉｑ_ｉｉｒを用いて演算される。
【００４７】
電流誤差補正値生成器３７は、電流指令値算出器１４の応答遅延やｄｑ軸の干渉により、ｄｑ軸電流が電流指令値に追従し切れずに生じる変動誤差（位相誤差および振幅誤差）を積算し、積算値の反転出力を電流誤差補正値（ｄ軸電流誤差補正値ΔＩｄおよびｑ軸電流誤差補正値ΔＩｑ）として生成する。ここで、ｄ軸電流誤差補正値ΔＩｄはｄ軸電流指令値Ｉ＊とモータ１０を流れるｄ軸電流Ｉｄとの変動誤差を補正するための電流フィードフォワード成分であり、ｑ軸電流誤差補正値ΔＩｑはｑ軸電流指令値Ｉｑ＊とモータ１０を流れるｑ軸電流Ｉｑとの変動誤差を補正するための電流フィードフォワード成分である。
【００４８】
すなわち、電流誤差補正値生成器３７は、電流指令値算出器１４により出力されたｄ軸電流指令値Ｉｄ＊およびｑ軸電流指令値Ｉｑ＊と、ｕ，ｖ，ｗ／ｄ−ｑ変換器２９により出力されたｄ軸電流Ｉｄおよびｑ軸電流Ｉｑと、位置推定器３２により出力された機械角位相θｍとからｄ軸電流誤差補正値ΔＩｄおよびｑ軸電流誤差補正値ΔＩｑを生成して出力する。電流誤差補正値生成器３７の詳細は、後述する。
【００４９】
［実施形態の制御切替判定部］
図４は、実施形態の制御切替判定部の一例を示すブロック図である。制御切替判定部１５は、電圧振幅算出器１５ａ、制御切替判定器１５ｂを有する。電圧振幅算出器１５ａは、加算器２１より出力されたｄ軸電圧指令値Ｖｄ＊および加算器２２より出力されたｑ軸電圧指令値Ｖｑ＊から、下記（１）式に基づき、出力電圧振幅Ｖａを算出する。
【００５０】
【数１】
2019201471.tif 000004
【００５１】
制御切替判定器１５ｂは、電圧振幅算出器１５ａで算出された出力電圧振幅Ｖａのピーク値と、出力電圧限界値Ｖｄｑ_ｌｉｍｉｔとの比較を行う。出力電圧限界値Ｖｄｑ_ｌｉｍｉｔは、インバータが出力可能な最大出力電圧である。制御切替判定器１５ｂは、出力電圧振幅Ｖａ（ピーク値）＜出力電圧限界値Ｖｄｑ_ｌｉｍｉｔである場合には、モータ１０の現在の制御領域が通常制御領域であると判定する。また、制御切替判定器１５ｂは、出力電圧振幅Ｖａ（ピーク値）≧出力電圧限界値Ｖｄｑ_ｌｉｍｉｔである場合には、モータ１０の現在の制御領域が電圧飽和領域であると判定する。そして制御切替判定器１５ｂは、判定した制御領域をCONTROL_TYPEの信号（Ａ：通常制御領域、Ｂ：電圧飽和領域）にて出力し、電流指令値算出器１４へ通知する。
【００５２】
［実施形態の補正トルク生成器］
図５は、実施形態の補正トルク生成器の一例を示すブロック図である。実施形態の補正トルク生成器３４は、速度変動幅振幅|Δωｍ|を入力して、モータ１０の振動が実使用上問題とならない範囲の速度変動許容値|Δωｍ|＊内になるように変動トルク指令値（補正トルク）ΔＴの振幅（補正トルク振幅|ΔＴ|）および位相を機械角周期毎に調整する。補正トルク生成器３４は、速度変動成分分離器３４ａ、速度変動振幅算出器３４ｂ、減算器３４ｃ、補正トルク振幅算出器３４ｄ、速度変動位相修正器３４ｅ、直交成分分離器３４ｆ、補正トルク復調器３４ｇを有する。
【００５３】
速度変動成分分離器３４ａは、機械角推定角速度変動（速度変動）Δωｍを、下記（２．１）式および（２．２）式から、機械角位相θｍをもとに、Δωｍの基本波成分である２つのフーリエ係数ωｓｉｎ（ｓｉｎ成分）とωｃｏｓ（ｃｏｓ成分）へ分離する。機械角推定角速度変動Δωｍの基本波成分のフーリエ係数を機械角周期毎に算出することで、機械角推定角速度変動Δωｍの高調波成分を排除して機械角推定角速度変動Δωｍの基本波成分を精度よく抽出することができる。ωｓｉｎおよびωｃｏｓは、機械角周期毎に更新される値である。
【００５４】
【数２】
2019201471.tif 000005
【００５５】
速度変動振幅算出器３４ｂは、下記（３）式から、機械角推定角速度変動Δωｍのωｓｉｎ（ｓｉｎ成分）およびωｃｏｓ（ｃｏｓ成分）に基づく速度変動振幅|Δωｍ|を算出する。ωｓｉｎおよびωｃｏｓは、機械角周期毎に更新される値であるため、速度変動振幅|Δωｍ|も機械角周期毎に更新される。
【００５６】
【数３】
2019201471.tif 000006
【００５７】
減算器３４ｃは、速度変動振幅算出器３４ｂにより出力された速度変動振幅|Δωｍ|から、入力された速度変動許容値|Δωｍ|＊を減算した速度変動偏差|Δωｍ|ｅｒｒを生成する。速度変動許容値|Δωｍ|＊は、モータ１０の振動が許容できる範囲での速度変動振幅|Δωｍ|を規定したものである。
【００５８】
補正トルク振幅算出器３４ｄは、速度変動振幅|Δωｍ|と速度変動許容値|Δωｍ|＊の偏差に応じて補正トルク振幅|ΔＴ|を機械角周期毎に調整する。例えば、補正トルク振幅算出器３４ｄは、下記（４）式により、速度変動振幅|Δωｍ|と速度変動許容値|Δω|＊の偏差である速度変動偏差|Δωｍ|ｅｒｒに補正ゲインｋを適用し、補正トルク振幅|ΔＴ|を積算する。下記（４）式における|ΔＴ|_ｏｌｄは、前回の機械角周期における補正トルク振幅|ΔＴ|である。補正ゲインｋを適切に設定することで、速度変動|Δω|が速度変動許容値|Δωｍ|＊の境界でハンチングする問題や、急激な負荷トルク変化によって速度変動|Δω|が速度変動許容値|Δωｍ|＊よりも大きくなって振動および騒音が発生する問題を抑制することができる。
【００５９】
【数４】
2019201471.tif 000007
【００６０】
速度変動位相修正器３４ｅは、機械角周期毎に取得される機械角推定角速度変動（速度変動）Δωｍの位相を修正する。修正方法は、例えば、下記（５．１）式および（５．２）式の演算により、機械角推定角速度変動Δωｍのωｓｉｎ（ｓｉｎ成分）およびωｃｏｓ（ｃｏｓ成分）それぞれに、補正ゲインｋを適用して積算することによる。下記（５．１）式におけるωｓｉｎ_ｉ_ｏｌｄは、前回の機械角周期におけるωｓｉｎ_ｉである。また、下記（５．２）式におけるωｃｏｓ_ｉ_ｏｌｄは、前回の機械角周期におけるωｃｏｓ_ｉである。そして、下記（５．３）式に示すように、ωｓｉｎ_ｉおよびωｃｏｓ_ｉの逆正接（Arctangent）を取った結果が、速度変動修正位相φωｉである。この速度変動修正位相φωｉが、本実施形態におけるトルク制御位相の基準になり、これに対してπ／２遅角した位相が変動トルク指令値（補正トルク）ΔＴの位相となる。
【００６１】
【数５】
2019201471.tif 000008
【００６２】
直交成分分離器３４ｆは、下記（６．１）式および（６．２）式に基づき、補正トルク振幅|ΔＴ|と速度変動修正位相φωｉのｓｉｎ成分（ωｓｉｎ_ｉ）およびｃｏｓ成分（ωｃｏｓ_ｉ）を得る。この処理は、（５．１）式および（５．２）式の演算による位相修正時の発散を防止する役割も有する。
【００６３】
【数６】
2019201471.tif 000009
【００６４】
補正トルク復調器３４ｇは、下記（７．１）式および（７．２）式から、変動トルク指令値（補正トルク）ΔＴを算出する。この処理により、速度変動修正位相φωｉからπ／２だけ遅角した補正トルク位相へ変換され、機械角位相θｍでの変動トルク指令値（補正トルク）ΔＴの瞬時値が生成される。
【００６５】
【数７】
2019201471.tif 000010
【００６６】
なお、補正トルク復調器３４ｇは、下記（８）式からも変動トルク指令値（補正トルク）ΔＴの瞬時値を算出できる。
【００６７】
【数８】
2019201471.tif 000011
【００６８】
そして、下記（９）式のように、上述のように生成された変動トルク指令値（補正トルク）ΔＴが、速度制御器１２により出力された平均トルク指令値Ｔo＊へ加算されることで、合計トルク指令値Ｔ＊が生成される。
【００６９】
【数９】
2019201471.tif 000012
【００７０】
なお、補正トルク生成器３４は、モータ１０の通常制御領域と電圧飽和領域とで同一の制御器を用いてもよい。
【００７１】
［実施形態の電流指令値算出器］
図６は、実施形態の電流指令値算出器の一例を示すブロック図である。実施形態の電流指令値算出器１４は、通常制御領域電流指令値算出器１４ａ（図１（ｂ）の制御状態Ａ）、電圧飽和領域電流指令値算出器１４ｂ（図１（ｂ）の制御状態Ｂ、Ｃ）を有する。
【００７２】
通常制御領域電流指令値算出器１４ａは、電流指令値算出器（ＭＴＰＩ曲線上の電流を算出）１４ａ１を有する。電圧飽和領域電流指令値算出器１４ｂは、出力電圧制限指令値生成器１４ｂ１、誘起電圧指令値生成器１４ｂ２、電流指令値算出器（定誘起電圧楕円上の電流を算出）１４ｂ３を有する。
【００７３】
先ず、出力電圧制限指令値生成器１４ｂ１について説明する。出力電圧制限指令値生成器１４ｂ１は、ｄ軸電流Ｉｄ、ｑ軸電流Ｉｑ、出力電圧限界値Ｖｄｑ_ｌｉｍｉｔ、合計トルク指令値Ｔ＊、位置推定器３２により推定された機械角位相θｍを入力として、出力電圧制限指令値Ｖａ＊を算出して出力する。
【００７４】
なお、出力電圧制限指令値とは、電圧指令生成器２０および非干渉化制御器３６により生成される実際の出力電圧のことではなく、実際の出力電圧が出力電圧制限指令値と一致するような電流指令値を生成するための理論電圧を指す。
【００７５】
以下、出力電圧制限指令値生成器１４ｂ１について詳述する。
【００７６】
［出力電圧制限指令値生成器の詳細］
図７は、実施形態の出力電圧制限指令値生成器の一例を示すブロック図である。図６に示した出力電圧制限指令値生成器１４ｂ１は、図７に示すように、より詳細には、ＭＴＰＩ電流指令値算出器１４ｂ１−１、ＭＴＰＩ電圧指令値算出器１４ｂ１−２、ＭＴＰＩ電圧振幅算出器１４ｂ１−３、平均出力電圧生成器１４ｂ１−４、ＭＴＰＩ電圧変動成分抽出器１４ｂ１−５、加算器１４ｂ１−６、ＭＴＰＩ電圧振幅制限処理器１４ｂ１−７、加算器１４ｂ１−８を有する。
【００７７】
ＭＴＰＩ電流指令値算出器１４ｂ１−１は、合計トルク指令値Ｔ＊からなる定トルク曲線とＭＴＰＩ曲線との交点であるＭＴＰＩ想定ｄ軸電流指令値Ｉｄ_ｍｔｐｉ＊およびＭＴＰＩ想定ｑ軸電流指令値Ｉｑ_ｍｔｐｉ＊を算出する。定トルク曲線とＭＴＰＩ曲線の交点は、例えば、下記（１０）式のモータトルク式、下記（１１）式のｑ軸電流が既知の時のＭＴＰＩ曲線上のｄ軸電流式の２式を用いて算出できる。
【００７８】
【数１０】
2019201471.tif 000013
【００７９】
【数１１】
2019201471.tif 000014
【００８０】
上記（１０）式および（１１）式より、ｄ軸電流Ｉｄを消去すると、下記（１２）式のように、以下のｑ軸電流Ｉｑに関する４次方程式を得ることができる。
【００８１】
【数１２】
2019201471.tif 000015
この４次方程式の実数解の１つが、合計トルク指令値Ｔ＊とＭＴＰＩ曲線の交点でのＭＴＰＩ想定ｑ軸電流指令値Ｉｑ_ｍｔｐｉ＊である。４次方程式の解は、例えばニュートン法などを用いて導出することができる。
【００８２】
そして、上記（１２）式の解であるＭＴＰＩ想定ｑ軸電流指令値Ｉｑ_ｍｔｐｉ＊を上記（１１）式のＭＴＰＩ曲線上のｄ軸電流式へ代入することで、ＭＴＰＩ想定ｄ軸電流指令値Ｉｄ_ｍｔｐｉ＊を算出する。
【００８３】
ＭＴＰＩ電圧指令値算出器１４ｂ１−２では、ＭＴＰＩ想定ｄ軸電流指令値Ｉｄ_ｍｔｐｉ＊、ＭＴＰＩ想定ｑ軸電流指令値Ｉｑ_ｍｔｐｉ＊および推定速度ωをもとに、下記（１３．１）および（１３．２）式のＰＭＰＳのモータ電圧方程式により、ＭＴＰＩ想定ｄ軸電圧Ｖｄ_ｍｔｐｉ＊およびＭＴＰＩ想定ｑ軸電圧Ｖｑ_ｍｔｐｉ＊を生成する。なお、下記（１３．１）式および（１３．２）式における“ｐ”は、微分演算子である。
【００８４】
【数１３】
2019201471.tif 000016
【００８５】
なお、上記（１３．１）式および（１３．２）式では、インダクタンスでの電流変化に伴う誘起電圧（ｐ項電圧）が考慮されているが、これは、トルク制御による電流変化によるｐ項電圧の変動が無視できないためである。ｐ項電圧は、電流変動の微分値を計算できればよいが、検出電流の変化量をそのまま微分値とすると、電流ノイズを含んでしまう不都合が生じるため、微分値は、電流基本波変動をもとに、例えば以下のように生成する。
【００８６】
ｐ項電圧の生成方法について説明するために、ｄ軸電流Ｉｄおよびｑ軸電流Ｉｑの変動成分ΔＩｄａおよびΔＩｑａを下記（１４．１）式および（１４．２）式のように定義する。
【００８７】
【数１４】
2019201471.tif 000017
【００８８】
ここで、機械角一回転で１回の周期変動の場合において、上記（１４．１）式に含まれる“Ｉｄａ”と“φｄ”は、それぞれΔＩｄの変動振幅と初期位相であり、上記（１４．２）式に含まれる“Ｉｑａ”と“φｑ”は、それぞれΔＩｑの変動振幅と初期位相であり、θｍは機械角位相の瞬時値を示す。
【００８９】
すると、電流基本波変動により生ずるｐ項電圧は、下記（１５．１）式および（１５．２）式のようになる。ただし、下記（１５．１）式および（１５．２）式において、“ωｍ”は、機械角推定角速度ωｍである。すなわち、ｄ軸電流変動およびｑ軸電流変動の位相をπ／２だけ進ませ、機械角推定角速度ωｍを乗算することで、微分値を生成することができる。
【００９０】
【数１５】
2019201471.tif 000018
【００９１】
ＭＴＰＩ電圧振幅算出器１４ｂ１−３は、下記（１６）式から、ＭＴＰＩ想定ｄ軸電圧Ｖｄ_ｍｔｐｉ＊およびＭＴＰＩ想定ｑ軸電圧Ｖｑ_ｍｔｐｉ＊をもとに、ＭＴＰＩ想定出力電圧Ｖａ_ｍｔｐｉ＊を算出する。
【００９２】
【数１６】
2019201471.tif 000019
【００９３】
平均出力電圧生成器１４ｂ１−４は、ロータの１回転毎に変動するｄ軸電流Ｉｄおよびｑ軸電流Ｉｑの平均値が最大トルク／電流曲線上をトレースするように、平均出力電圧指令値Ｖａ０＊を調整して出力する。例えば、現在のｑ軸電流Ｉｑから最大トルク／電流曲線上のｑ軸電流Ｉｑｔを算出し、現在のｄ軸電流Ｉｄとの偏差がなくなるようにＰＩ制御等により平均出力電圧指令値Ｖａ０＊を調整する。平均出力電圧生成器１４ｂ１−４は、下記（１７．１）式および（１７．２）式をもとに、平均出力電圧指令値Ｖａ０＊を算出する。また、平均出力電圧生成器１４ｂ１−４は、平均出力電圧指令値Ｖａ０＊が出力電圧限界値Ｖｄｑ_ｌｉｍｉｔに到達した場合には、下記（１８）式をもとに、出力電圧限界値Ｖｄｑ_ｌｉｍｉｔで平均出力電圧指令値Ｖａ０＊を制限処理する（図１（ｂ）の制御状態Ｂから制御状態Ｃに移行）。
【００９４】
【数１７】
2019201471.tif 000020
【００９５】
【数１８】
2019201471.tif 000021
【００９６】
ＭＴＰＩ電圧変動成分抽出器１４ｂ１−５は、ＭＴＰＩ想定出力電圧Ｖａ_ｍｔｐｉ＊の変動振幅|ΔＶａ_ｍｔｐｉ|およびこの瞬時値ΔＶａ_ｍｔｐｉを、例えば以下のように算出する。
【００９７】
先ず、ＭＴＰＩ電圧変動成分抽出器１４ｂ１−５は、下記（１９．１）式および（１９．２）式をもとに、ＭＴＰＩ想定出力電圧Ｖａ_ｍｔｐｉ＊の基本波成分を２つのフーリエ係数Ｖａ_ｍｔｐｉ_ｓｉｎとＶａ_ｍｔｐｉ_ｃｏｓ（ｓｉｎ成分とｃｏｓ成分）に分離する。ＭＴＰＩ電圧変動成分抽出器１４ｂ１−５は、ＭＴＰＩ想定出力電圧Ｖａ_ｍｔｐｉ＊の基本波成分のフーリエ係数を機械角周期毎に算出することで、ＭＴＰＩ想定出力電圧Ｖａ_ｍｔｐｉ＊の基本波成分を、高調波成分を排除して精度よく抽出することができる。
【００９８】
【数１９】
2019201471.tif 000022
【００９９】
次に、ＭＴＰＩ電圧変動成分抽出器１４ｂ１−５は、上記（１９．１）式および（１９．２）式をもとに算出したフーリエ係数Ｖａ_ｍｔｐｉ_ｓｉｎとＶａ_ｍｔｐｉ_ｃｏｓから、下記（２０）式をもとに、ＭＴＰＩ想定出力電圧Ｖａ_ｍｔｐｉ＊の基本波成分の振幅|ΔＶａ_ｍｔｐｉ|を算出する。
【０１００】
【数２０】
2019201471.tif 000023
【０１０１】
なお、フーリエ係数Ｖａ_ｍｔｐｉ_ｓｉｎとＶａ_ｍｔｐｉ_ｃｏｓは、機械角周期毎に更新される値であるため、ＭＴＰＩ想定出力電圧Ｖａ_ｍｔｐｉ＊の基本波成分の振幅|ΔＶａ_ｍｔｐｉ|も機械角周期毎に更新される。
【０１０２】
そして、ＭＴＰＩ電圧変動成分抽出器１４ｂ１−５は、ＭＴＰＩ想定出力電圧Ｖａ_ｍｔｐｉ＊の基本波成分の瞬時値ΔＶａ_ｍｔｐｉを、下記（２１）式から算出する。
【０１０３】
【数２１】
2019201471.tif 000024
【０１０４】
加算器１４ｂ１−６は、下記（２２）式のように、平均出力電圧生成器１４ｂ１−４により出力された平均出力電圧指令値Ｖａ０＊と、ＭＴＰＩ電圧変動成分抽出器１４ｂ−５により出力されたＭＴＰＩ想定出力電圧Ｖａ_ｍｔｐｉ＊の基本波成分の瞬時値ΔＶａ_ｍｔｐｉとを加算した出力電圧指令値（ピーク値）Ｖａ_ｍｔｐｉ_ｐｅａｋを出力する。
【０１０５】
【数２２】
2019201471.tif 000025
【０１０６】
ＭＴＰＩ電圧振幅制限処理器１４ｂ１−７は、平均出力電圧生成器１４ｂ１−４により出力された平均出力電圧指令値Ｖａ０＊と、加算器１４ｂ１−６により出力された出力電圧指令値（ピーク値）Ｖａ_ｍｔｐｉ_ｐｅａｋとの加算結果を出力電圧限界値Ｖｄｑ_ｌｉｍｉｔ以下となるように調整した変動出力電圧制限指令値ΔＶａ_ｌｉｍｉｔ_ｍｔｐｉを生成して出力する。
【０１０７】
具体的には、ＭＴＰＩ電圧振幅制限処理器１４ｂ１−７は、平均出力電圧指令値Ｖａ０＊、出力電圧指令値（ピーク値）Ｖａ_ｍｔｐｉ_ｐｅａｋ、および出力電圧限界値Ｖｄｑ_ｌｉｍｉｔの比較により、出力電圧変動成分の振幅比率ｓｃａｌｅを算出し、ＭＴＰＩ想定出力電圧変動成分ΔＶａ_ｍｔｐｉに乗算することで、変動出力電圧制限指令値ΔＶａ_ｌｉｍｉｔ_ｍｔｐｉを生成する。ＭＴＰＩ電圧振幅制限処理器１４ｂ１−７は、このようにして、ＭＴＰＩ想定出力電圧ΔＶａ_ｍｔｐｉと位相を一致させた変動出力電圧制限指令値ΔＶａ_ｌｉｍｉｔ_ｍｔｐｉを生成できる。ＭＴＰＩ電圧振幅制限処理器１４ｂ１−７は、下記（２３．１）式〜（２３．３）式に基づいて出力電圧変動成分の振幅比率ｓｃａｌｅを算出し、算出した振幅比率ｓｃａｌｅから下記（２３．４）式に基づいて、変動出力電圧制限指令値ΔＶａ_ｌｉｍｉｔ_ｍｔｐｉを生成する。
【０１０８】
【数２３】
2019201471.tif 000026
【０１０９】
加算器１４ｂ１−８は、下記（２４）式により、平均出力電圧生成器１４ｂ１−４により出力された平均出力電圧指令値Ｖａ０＊と、ＭＴＰＩ電圧振幅制限処理器１４ｂ１−７により出力された変動出力電圧制限指令値ΔＶａ_ｌｉｍｉｔ_ｍｔｐｉとを加算し、加算結果の出力電圧制限指令値Ｖａ＊を出力する。
【０１１０】
【数２４】
2019201471.tif 000027
【０１１１】
以下、図８を参照して、変動出力電圧制限指令値ΔＶａ_ｌｉｍｉｔ_ｍｔｐｉの生成方法について説明する。図８は、実施形態の出力電圧制限指令値生成方法を説明するための概略図である。
【０１１２】
例えば、図８（ａ）に示すように、平均出力電圧指令値Ｖａ０＊を中心に変動するＭＴＰＩ想定出力電圧変動成分ΔＶａ_ｍｔｐｉの出力電圧指令値（ピーク値）Ｖａ_ｍｔｐｉ_ｐｅａｋが出力電圧限界値Ｖｄｑ_ｌｉｍｉｔ以下である場合、上記（２３．２）式の条件に該当するため、ＭＴＰＩ電圧振幅制限処理器１４ｂ１−７は、出力電圧変動成分の振幅比率ｓｃａｌｅ＝１とする。そして、ＭＴＰＩ電圧振幅制限処理器１４ｂ１−７は、上記（２３．４）式において“ｓｃａｌｅ＝１”とし、ＭＴＰＩ想定出力電圧ΔＶａ_ｍｔｐｉをそのまま変動出力電圧制限指令値ΔＶａ_ｌｉｍｉｔ_ｍｔｐｉとして出力する。その結果、出力電圧制限指令値Ｖａ＊は、ＭＴＰＩ想定出力電圧ΔＶａ_ｍｔｐｉと一致する。
【０１１３】
また、例えば、図８（ｂ）に示すように、平均出力電圧指令値Ｖａ０＊を中心に変動するＭＴＰＩ想定出力電圧変動成分ΔＶａ_ｍｔｐｉの出力電圧指令値（ピーク値）Ｖａ_ｍｔｐｉ_ｐｅａｋが出力電圧限界値Ｖｄｑ_ｌｉｍｉｔを超え、かつ、ＭＴＰＩ想定出力電圧変動成分ΔＶａ_ｍｔｐｉの平均出力電圧指令値Ｖａ０＊が出力電圧限界値Ｖｄｑ_ｌｉｍｉｔを超えない場合、上記（２３．３）式の条件に該当するため、ＭＴＰＩ電圧振幅制限処理器１４ｂ１−７は、出力電圧変動成分の振幅比率ｓｃａｌｅ＝（Ｖｄｑ_ｌｉｍｉｔ−Ｖａ０＊）／|ΔＶａ_ｍｔｐｉ|とする。そして、ＭＴＰＩ電圧振幅制限処理器１４ｂ１−７は、上記（２３．４）式において“ｓｃａｌｅ＝（Ｖｄｑ_ｌｉｍｉｔ−Ｖａ０＊）／|ΔＶａ_ｍｔｐｉ|”とした変動出力電圧制限指令値ΔＶａ_ｌｉｍｉｔ_ｍｔｐｉを出力する。その結果、ＭＴＰＩ想定出力電圧ΔＶａ_ｍｔｐｉと位相が一致しかつ変動振幅によるピーク値が出力電圧限界値Ｖｄｑ_ｌｉｍｉｔ以下となるような出力電圧制限指令値Ｖａ＊が生成される。
【０１１４】
また、例えば、図８（ｃ）に示すように、ＭＴＰＩ想定出力電圧変動成分ΔＶａ_ｍｔｐｉの平均出力電圧指令値Ｖａ０＊が出力電圧限界値Ｖｄｑ_ｌｉｍｉｔ以上である場合、上記（２３．１）式の条件に該当するため、ＭＴＰＩ電圧振幅制限処理器１４ｂ１−７は、出力電圧変動成分の振幅比率ｓｃａｌｅ＝０とする。そして、ＭＴＰＩ電圧振幅制限処理器１４ｂ１−７は、上記（２３．４）式において“ｓｃａｌｅ＝０”とし、変動出力電圧制限指令値ΔＶａ_ｌｉｍｉｔ_ｍｔｐｉ＝０として出力する。その結果、出力電圧制限指令値Ｖａ＊は、出力電圧限界値Ｖｄｑ_ｌｉｍｉｔと一致する。
【０１１５】
このように、出力電圧制限指令値Ｖａ＊を制御することで、図１（ｂ）に示すように、通常制御領域から電圧飽和領域に状態遷移した直後も、出力電圧制限指令値Ｖａ＊を出力電圧限界値Ｖｄｑ_ｌｉｍｉｔ以下に保ちつつ、通常制御領域での出力電圧制限指令値Ｖａ＊の変動の中心である平均出力電圧指令値Ｖａ０＊と、電圧飽和領域での出力電圧制限指令値Ｖａ＊の変動の中心である平均出力電圧指令値Ｖａ０＊とを一致させ、状態遷移時の切り替えショックを低減できる。さらに、電圧飽和領域において、出力電圧制限指令値Ｖａ＊の変動の中心である平均出力電圧指令値Ｖａ０＊が出力電圧限界値Ｖｄｑ_ｌｉｍｉｔ以上となり、平均出力電圧指令値Ｖａ０＊を出力電圧限界値Ｖｄｑ_ｌｉｍｉｔとする制御を開始する際にも、すなわち制御状態Ｃに移行する際にも切り替えショックを低減できる。
【０１１６】
図６に説明を戻す。誘起電圧指令値生成器１４ｂ２は、現在のｄ軸電流Ｉｄ、ｑ軸電流Ｉｑおよび推定速度ωから、出力電圧制限指令値Ｖａ＊に相当する出力電圧を得るための誘起電圧指令値Ｖｏ＊をモータモデル式の演算により生成する。ここで、ＰＭＳＭモータの電圧方程式（ｄ軸電圧Ｖｄ、ｑ軸電圧Ｖｑ）、出力電圧振幅Ｖａ、誘起電圧Ｖｏの理論式は、下記（２５．１）式〜（２７）式のようになる。
【０１１７】
【数２５】
2019201471.tif 000028
【０１１８】
【数２６】
2019201471.tif 000029
【０１１９】
【数２７】
2019201471.tif 000030
【０１２０】
上記（２５．１）式〜（２７）式から、出力電圧制限指令値Ｖａ＊と誘起電圧指令値Ｖｏ＊を関連づける式は、下記（２８）式の通りとなる。
【０１２１】
【数２８】
2019201471.tif 000031
【０１２２】
電流指令値算出器（定誘起電圧楕円上の電流を算出）１４ｂ３は、合計トルク指令値Ｔ＊からなる定トルク曲線と、誘起電圧指令値Ｖｏ＊および推定速度ωからなる定誘起電圧楕円の交点であるｑ軸電流指令値Ｉｑ＊とｄ軸電流指令値Ｉｄ＊を算出する（図２（ｂ）参照）。
【０１２３】
具体的には、定トルク曲線と定誘起電圧楕円の交点は、例えば下記（２９）式〜（３０）式のように、モータトルク式と誘起電圧式の２式を用いて算出できる。
【０１２４】
【数２９】
2019201471.tif 000032
【０１２５】
【数３０】
2019201471.tif 000033
【０１２６】
上記（２９）式および（３０）式からｄ軸電流Ｉｄを消去すると、下記（３１）式のように、ｑ軸電流Ｉｑに関する４次方程式を得ることができる。ただし、下記（３１）式において、“ΔＬ＝Ｌｄ−Ｌｑ”であり、“Ψａ”はモータ１０の鎖交磁束であり、“Ｖｏ”はモータ１０の誘起電圧であり、“ω”はモータ１０の速度であり、“Ｔ”はモータ１０の駆動トルクであり、“Ｐｎ”はモータ１０の極対数であり、“Ｌｄ”はモータ１０のｄ軸インダクタンスであり、“Ｌｑ”はモータ１０のｑ軸インダクタンスである。
【０１２７】
【数３１】
2019201471.tif 000034
【０１２８】
上記（３１）式の４次方程式の実数解の一つが、合計トルク指令値Ｔ＊からなる定トルク曲線と、誘起電圧Ｖｏおよび推定速度ωからなる定誘起電圧楕円が交差する点でのｑ軸電流指令値Ｉｑ＊である（図２（ｂ）参照）。４次方程式の解は、例えばニュートン法などを用いて導出することができる。
【０１２９】
電流指令値算出器（定誘起電圧楕円上の電流を算出）１４ｂ３は、ｑ軸電流指令値Ｉｑ＊算出後は、下記（３２）式のように、上記（３０）式の誘起電圧式をｄ軸電流の式に変換してｑ軸電流指令値Ｉｑ＊を代入することでｄ軸電流指令値Ｉｄ＊を算出する。ただし、下記（３１）式において、“Ψａ”はモータ１０の鎖交磁束であり、“Ｖｏ”はモータ１０の誘起電圧であり、“ω”はモータ１０の速度であり、“Ｌｄ”はモータ１０のｄ軸インダクタンスであり、“Ｌｑ”はモータ１０のｑ軸インダクタンスである。
【０１３０】
【数３２】
2019201471.tif 000035
【０１３１】
ここで、上記（３２）式において、正負の符号の何れを採用するかは、定誘起電圧楕円の中心であるＭ点（−Ψａ／Ｌｄ，０）（図９参照）を通るＩｑ軸に平行な直線（以降、Ｍ点境界ラインという）と、定誘起電圧楕円が交差する点でのトルク（以降、Ｍ点境界上トルクという）を計算し、この計算結果と合計トルク指令値Ｔ＊と比較することによって決定することができる。以下に、ｄ軸電流指令値Ｉｄ＊の算出手順を示す。また、図８は、実施形態のｄ軸電流設定の一例を説明するための図である。
【０１３２】
まず、Ｍ点上のｄ軸電流Ｉｄ_Ｍを、下記（３３）式のように算出する。
【０１３３】
【数３３】
2019201471.tif 000036
【０１３４】
次に、Ｍ点境界ラインと定誘起電圧楕円が交差するｑ軸電流Ｉｑ_Ｍを算出する。ｑ軸電流Ｉｑ_Ｍは、上記（３０）式に示す定誘起電圧楕円の式にＩｄ_Ｍを代入することで算出でき、下記（３４）式の通りとなる。
【０１３５】
【数３４】
2019201471.tif 000037
【０１３６】
よって、Ｍ点境界ラインと定誘起電圧楕円とが交差するＭ点境界上トルクＴ_Ｍは、下記（３５）式のように計算される。
【０１３７】
【数３５】
2019201471.tif 000038
【０１３８】
最後に、合計トルク指令値Ｔ＊とＭ点境界上トルクＴ_Ｍとの大小を比較することで、ｄ軸電流指令値Ｉｄ＊を下記（３６．１）式および（３６．２）式のように決定する。下記（３６．１）式は、図９（ａ）に示すように合計トルク指令値Ｔ＊≦Ｍ点境界上トルクＴ_Ｍの場合のｄ軸電流指令値Ｉｄ＊であり、下記（３６．２）式は、図９（ｂ）に示すように合計トルク指令値Ｔ＊＞Ｍ点境界上トルクＴ_Ｍの場合のｄ軸電流指令値Ｉｄ＊である。ただし、下記（３６．１）式および（３６．２）式において、“Ｔ＊”はトルク指令値であり、“Ｔ_Ｍ”はモータの定誘起電圧楕円上のＭ点におけるトルクであるＭ点境界上トルクである。
【０１３９】
【数３６】
2019201471.tif 000039
【０１４０】
電流指令値算出器（定誘起電圧楕円上の電流を算出）１４ｂ３は、定トルク曲線と定誘起電圧楕円の交点であるｑ軸電流指令値Ｉｑ＊およびｄ軸電流指令値Ｉｄ＊算出後は、ｑ軸電流（検出値）Ｉｑおよびｄ軸電流（検出値）Ｉｄがｑ軸電流指令値Ｉｑ＊およびｄ軸電流指令値Ｉｄ＊にそれぞれ追従するように、電流制御を実施する。
【０１４１】
また、電流指令値算出器（ＭＴＰＩ曲線上の電流を算出）１４ａ１は、ＭＴＰＩ曲線上において、合計トルク指令値Ｔ＊で示される定トルク曲線とＭＴＰＩ曲線との交点であるｑ軸電流指令値Ｉｑ＊とｄ軸電流指令値Ｉｄ＊を算出する。
【０１４２】
ここで、定トルク曲線と、ＭＴＰＩ曲線の交点は、例えば、上記（２９）式で表されるモータトルク式と、上記（１７．１）式で表される、ＭＴＰＩ曲線上のｄ軸電流Ｉｄとｑ軸電流Ｉｑの関係式を用いて算出できる。なお、上記（２９）式の右辺の第１項がマグネットトルクを、第２項がリラクタンストルクを表し、マグネットトルクはｑ軸電流Ｉｑのみを含み、リラクタンストルクはｑ軸電流Ｉｑとｄ軸電流Ｉｄの両方を含む。従って、適正なトルクを発生させるには、ｑ軸電流Ｉｑとｄ軸電流Ｉｄを適切に制御しなければならない。
【０１４３】
上記（２９）式および（１７．１）式よりｄ軸電流Ｉｄを消去すると、下記（３７）式に示すような、ｑ軸電流Ｉｑに関する４次方程式を得ることができる。４次方程式は、ニュートン法等の既知の手法により解を求めることができる。
【０１４４】
【数３７】
2019201471.tif 000040
【０１４５】
上記（３７）式に示す４次方程式の実数解の一つが、合計トルク指令値Ｔ＊とＭＴＰＩ曲線の交点におけるｑ軸電流指令値Ｉｑ＊である。例えば、電流指令値算出器（ＭＴＰＩ曲線上の電流を算出）１４ａ１は、上記（３７）式をもとにｑ軸電流指令値Ｉｑ＊を取得する。そして、電流指令値算出器（ＭＴＰＩ曲線上の電流を算出）１４ａ１は、上記（１７．１）式のＭＴＰＩ曲線上のｄ軸電流算出式に、算出したｑ軸電流指令値Ｉｑ＊を代入することで、ｄ軸電流指令値Ｉｄ＊を算出する。
【０１４６】
ここで、電流指令値算出器（ＭＴＰＩ曲線上の電流を算出）１４ａ１または電流指令値算出器（定誘起電圧楕円上の電流を算出）１４ｂ３により算出されたｑ軸電流指令値Ｉｑ＊と、ｑ軸電流（検出値）Ｉｑとの偏差を電圧指令生成器２０に入力してＰＩ制御を実施しても、負荷トルク変動周期で変動するｑ軸電流指令値Ｉｑ＊の平均にｑ軸電流（検出値）Ｉｑの平均値は追従するものの、変動成分については電圧指令生成器２０の応答遅延やｄ軸およびｑ軸の干渉により、ｑ軸電流（検出値）Ｉｑがｑ軸電流指令値Ｉｑ＊に追従せずに位相誤差が発生する。
【０１４７】
ｄ軸電流に関しても同様であり、電流指令値算出器（ＭＴＰＩ曲線上の電流を算出）１４ａ１または電流指令値算出器（定誘起電圧楕円上の電流を算出）１４ｂ３により算出されたｄ軸電流指令値Ｉｄ＊と、ｄ軸電流（検出値）Ｉｄとの偏差を電圧指令生成器２０に入力してＰＩ制御を実施するだけでは、位相誤差が発生する。そこで、この位相誤差を積算して、位相誤差の反転出力を電流誤差補正値として生成し、これを電流指令値に加算した電流補正指令値と電流検出値の偏差にＰＩ制御を適用することで位相誤差を抑制できる。
【０１４８】
［実施形態の電流誤差補正生成器］
図１０は、実施形態の電流誤差補正値生成器の一例を示すブロック図である。電流誤差補正値生成器３７は、減算器３７ａ、３７ｅ、ｑ軸電流誤差成分分離器３７ｂ、ｑ軸電流誤差積算器３７ｃ、ｑ軸電流誤差補正値復調器３７ｄ、ｄ軸電流誤差成分分離器３７ｆ、ｄ軸電流誤差積算器３７ｇ、ｄ軸電流誤差補正値復調器３７ｈを有する。
【０１４９】
減算器３７ａは、ｑ軸電流誤差補正値ΔＩｑの生成にあたり、下記（３８）式に示すように、ｑ軸電流Ｉｑとｑ軸電流指令値Ｉｑ＊との偏差であるｑ軸電流変動誤差Ｉｑ_ｅｒｒを算出する。
【０１５０】
【数３８】
2019201471.tif 000041
【０１５１】
ｑ軸電流誤差成分分離器３７ｂは、下記（３９．１）式および（３９．２）式により、ｑ軸電流変動誤差Ｉｑ_ｅｒｒの基本波成分である２つのフーリエ係数（Ｉｑ_ｅｒｒ_ｓｉｎ（ｓｉｎ成分）およびＩｑ_ｅｒｒ_ｃｏｓ（ｃｏｓ成分））を機械角周期毎に算出する。これにより、高調波成分を排除してｑ軸電流変動誤差Ｉｑ_ｅｒｒの基本波成分を精度よく抽出することができる。ここで、Ｉｑ_ｅｒｒ_ｓｉｎおよびＩｑ_ｅｒｒ_ｃｏｓは、機械角周期毎に更新される値である。
【０１５２】
【数３９】
2019201471.tif 000042
【０１５３】
ｑ軸電流誤差積算器３７ｃは、下記（４０．１）式および（４０．２）式に示すように、ｑ軸電流誤差成分分離器３７ｂにより分離されたｑ軸電流変動誤差Ｉｑ_ｅｒｒのｓｉｎ成分およびｃｏｓ成分に補正ゲインｋを適用し、ｑ軸電流変動誤差Ｉｑ_ｅｒｒのｓｉｎ成分Ｉｑ_ｅｒｒ_ｓｉｎ_ｉおよびｃｏｓ成分Ｉｑ_ｅｒｒ_ｃｏｓ_ｉそれぞれを積算する。下記（４０．１）式におけるＩｑ_ｅｒｒ_ｓｉｎ_ｉ_ｏｌｄは、前回の機械角周期におけるＩｑ_ｅｒｒ_ｓｉｎ_ｉである。また、下記（４０．２）式におけるＩｑ_ｅｒｒ_ｃｏｓ_ｉ_ｏｌｄは、前回の機械角周期におけるＩｑ_ｅｒｒ_ｃｏｓ_ｉ_ｏｌｄである。
【０１５４】
【数４０】
2019201471.tif 000043
【０１５５】
ｑ軸電流誤差補正値復調器３７ｄは、下記（４１．１）式および（４１．２）式により、ｑ軸電流誤差補正値ΔＩｑを算出する。この処理により、ｑ軸電流変動誤差の位相を反転させて、機械角位相θｍでのｑ軸電流誤差補正値ΔＩｑの瞬時値が生成される。
【０１５６】
【数４１】
2019201471.tif 000044
【０１５７】
ｄ軸電流誤差補正値ΔＩｄについても同様である。すなわち、減算器３７ｅは、ｄ軸電流誤差補正値ΔＩｄの生成にあたり、下記（４２）式に示すように、ｄ軸電流Ｉｄとｄ軸電流指令値Ｉｄ＊との偏差であるｄ軸電流変動誤差Ｉｄ_ｅｒｒを算出する。
【０１５８】
【数４２】
2019201471.tif 000045
【０１５９】
ｄ軸電流誤差成分分離器３７ｆは、下記（４３．１）式および（４３．２）式により、ｄ軸電流変動誤差Ｉｄ_ｅｒｒの基本波成分である２つのフーリエ係数（Ｉｄ_ｅｒｒ_ｓｉｎ（ｓｉｎ成分）およびＩｄ_ｅｒｒ_ｃｏｓ（ｃｏｓ成分））を機械角周期毎に算出する。これにより、高調波成分を排除してｄ軸電流変動誤差Ｉｄ_ｅｒｒの基本波成分を精度よく抽出することができる。ここで、Ｉｄ_ｅｒｒ_ｓｉｎおよびＩｄ_ｅｒｒ_ｃｏｓは、機械角周期毎に更新される値である。
【０１６０】
【数４３】
2019201471.tif 000046
【０１６１】
ｄ軸電流誤差積算器３７ｇは、下記（４４．１）式および（４４．２）式に示すように、ｄ軸電流誤差成分分離器３７ｆにより分離されたｄ軸電流変動誤差Ｉｄ_ｅｒｒのｓｉｎ成分およびｃｏｓ成分に補正ゲインｋを適用し、ｄ軸電流変動誤差Ｉｄ_ｅｒｒのｓｉｎ成分Ｉｄ_ｅｒｒ_ｓｉｎ_ｉおよびｃｏｓ成分Ｉｄ_ｅｒｒ_ｃｏｓ_ｉそれぞれを積算する。下記（４４．１）式におけるＩｄ_ｅｒｒ_ｓｉｎ_ｉ_ｏｌｄは、前回の機械角周期におけるＩｄ_ｅｒｒ_ｓｉｎ_ｉである。また、下記（４４．２）式におけるＩｄ_ｅｒｒ_ｃｏｓ_ｉ_ｏｌｄは、前回の機械角周期におけるＩｄ_ｅｒｒ_ｃｏｓ_ｉ_ｏｌｄである。
【０１６２】
【数４４】
2019201471.tif 000047
【０１６３】
ｄ軸電流誤差補正値復調器３７ｈは、下記（４５．１）式および（４５．２）式により、ｄ軸電流誤差補正値ΔＩｄを算出する。この処理により、ｄ軸電流変動誤差の位相を反転させて、機械角位相θｍでのｄ軸電流誤差補正値ΔＩｄの瞬時値が生成される。
【０１６４】
【数４５】
2019201471.tif 000048
【０１６５】
加算器１６（図３参照）は、下記（４６．１）式に示すように、ｑ軸電流指令値Ｉｑ＊にｑ軸電流誤差補正値ΔＩｑを加算し、ｑ軸電流補正指令値Ｉｑ_ＦＦ＊を生成する。また、加算器１７（図３参照）は、下記（４６．２）式に示すように、ｄ軸電流指令値Ｉｄ＊にｄ軸電流誤差補正値ΔＩｄを加算し、ｄ軸電流補正指令値Ｉｄ_ＦＦ＊を生成する。
【０１６６】
【数４６】
2019201471.tif 000049
【０１６７】
電圧指令生成器２０（図３参照）は、下記（４７．１）式および（４７．２）式に示すように、ｑ軸電流補正指令値Ｉｑ_ＦＦ＊とｑ軸電流（検出値）Ｉｑの偏差にＰＩ制御を実施し、非干渉化前ｑ軸電圧指令値Ｖｑｔを生成し、ｄ軸電流補正指令値Ｉｄ_ＦＦ＊とｄ軸電流（検出値）Ｉｄの偏差にＰＩ制御を実施し、非干渉化前ｄ軸電圧指令値Ｖｄｔを生成する。
【０１６８】
【数４７】
2019201471.tif 000050
【０１６９】
加算器２１（図３参照）は、下記（４８．１）式で表されるｑ軸非干渉化補正値Ｖｑａを、下記（４８．３）式に示すように、電圧指令生成器２０により出力された非干渉化前ｑ軸電圧指令値Ｖｑｔに加算することにより、ｄｑ軸間の干渉項をあらかじめフィードフォワードして電流制御による干渉をキャンセルする非干渉化制御を実施する。また、加算器２２（図３参照）は、下記（４８．２）式で表されるｄ軸非干渉化補正値Ｖｄａを、下記（４８．４）式に示すように、電圧指令生成器２０により出力された非干渉化前ｄ軸電圧指令値Ｖｄｔに加算することにより、ｄｑ軸間の干渉項をあらかじめフィードフォワードして電流制御による干渉をキャンセルする非干渉化制御を実施する。
【０１７０】
【数４８】
2019201471.tif 000051
【０１７１】
ここで、非干渉化の演算については、制御安定を図るために、直流化された値を用いることが望ましい。例えば、速度に関しては、速度指令値ω＊を用い、ｄ軸電流Ｉｄやｑ軸電流Ｉｑに関しては、変動成分が排除されたフィルタ値であるｄ軸応答電流Ｉｄ_ｉｉｒ、ｑ軸応答電流Ｉｑ_ｉｉｒを用いて演算する。こうすることで、安定した電流制御を行うことができる。
【０１７２】
以上の実施形態によれば、モータ１０の現在の制御領域が電圧飽和領域であると判定された場合に、出力電圧が出力電圧限界値以下で変動する振幅となるようにし、さらに出力電圧の位相が、通常制御領域における制御と同一の位相とするモータ１０の電流指令値を、モータ１０の定トルク曲線とモータ１０の定誘起電圧楕円の交点に基づいて生成する。
【０１７３】
また、以上の実施形態によれば、モータ１０を流れるｄ軸電流Ｉｄおよびｑ軸電流Ｉｑと、モータ１０の所定の出力電圧限界値と、モータ１０を駆動するための変動成分を含むトルク指令値Ｔ*と、モータ１０の機械角位相θｍと、モータの推定角速度である電気角推定角速度ωｅに応じた可変値の出力電圧制限指令値Ｖａ*を生成する。そして、この可変値の出力電圧制限指令値に相当する出力電圧を得るための誘起電圧指令値を生成し、生成した誘起電圧指令値から求まるモータ１０の定誘起電圧楕円とモータ１０の定トルク曲線の交点に基づいてモータ１０の電流指令値を生成する。
【０１７４】
これらのことから、実施形態によれば、変動振幅を含めて出力電圧を出力電圧限界値以下の範囲で最大限に有効利用でき、通常制御領域と電圧飽和領域との状態遷移前後がスムーズに接続されるため、電圧飽和領域におけるトルク制御の制振効率向上、および、状態遷移に伴う切り替えショックを抑制することができる。なお、実施形態では、出力電圧の変動振幅のピーク値が出力電圧限界値になるように制御しているが、変動振幅のピーク値が出力電圧限界値に達しなくても、出力電圧を変動させることでトルク脈動を抑制する効果は得られる。
【０１７５】
また、以上の実施形態によれば、速度指令値とモータ１０の速度の偏差に基づいてモータ１０のトルク指令値を補正するための補正トルクを生成する補正トルク生成器をさらに備えることから、電圧制限下（電圧飽和領域、弱め界磁制御領域）においてもモータ１０のトルク脈動を抑制することができる。
【０１７６】
また、以上の実施形態によれば、補正トルク生成器３４は、モータ１０の振動が許容できる範囲を示す速度変動許容値に応じて補正トルクを生成することから、モータ１０の振動をある程度許容しつつ制振することにより、モータ１０の消費電力の抑制を図ることができる。
【０１７７】
上述の実施形態および図示の具体的名称、処理、制御、各種のデータやパラメータを含む情報については、一例を示すに過ぎず、特記する場合を除いて適宜変更することができる。また、上述の実施形態における各部もしくは各装置の構成は、処理負荷や実装効率等から適宜分散または統合されてもよい。また、上述の実施形態における各処理は、処理負荷や実装効率等から、処理順序を適宜入れ替えて実行されてもよい。
【０１７８】
上述の実施形態のより広範な態様は、上述のように表しかつ記述した特定の詳細および代表的な実施形態に限定されるものではない。従って、添付の特許請求の範囲およびその均等物によって定義される総括的な発明の概念または範囲から逸脱することなく、様々な変更が可能である。
【符号の説明】
【０１７９】
１０  モータ
１１、３８  減算器
１２  速度制御器
１３、１６、１７、２１、２２  加算器
１４  電流指令値算出器
１４ａ  通常制御領域電流指令値算出器
１４ａ１  電流指令値算出器（ＭＴＰＩ曲線上の電流を算出）
１４ｂ  電圧飽和領域電流指令値算出器
１４ｂ１  出力電圧制限指令値生成器
１４ｂ１−１  ＭＴＰＩ電流指令値算出器
１４ｂ１−２  ＭＴＰＩ電圧指令値算出器
１４ｂ１−３  ＭＴＰＩ電圧振幅算出器
１４ｂ１−４  平均出力電圧生成器
１４ｂ１−５  ＭＴＰＩ電圧変動成分抽出器
１４ｂ１−６、１４ｂ１−８  加算器
１４ｂ１−７  ＭＴＰＩ電圧振幅制限処理器
１４ｂ２  誘起電圧指令値生成器
１４ｂ３  電流指令値算出器（定誘起電圧楕円上の電流を算出）
１４ｃ−１、１４ｃ−２、１４ｃ−３、１４ｃ−４、１４ｃ−５  接点
ＳＷ１、ＳＷ２  スイッチ
１５  制御切替判定部
１５ａ  電圧振幅算出器
１５ｂ  制御切替判定器
１８、１９  減算器
２０  電圧指令生成器
２３  ｄ−ｑ／ｕ，ｖ，ｗ変換器
２４  ＰＷＭ変調器
２５  ＩＰＭ
２６  シャント抵抗
２７ａ、２７ｂ  電流センサ
２８  ３φ電流算出器
２９  ｕ，ｖ，ｗ／ｄ−ｑ変換器
３０  軸誤差演算器
３１  ＰＬＬ制御器
３２  位置推定器
３３  １／Ｐｎ処理器
３４  補正トルク生成器
３４ａ  速度変動成分分離器
３４ｂ  速度変動振幅算出器
３４ｃ  減算器
３４ｄ  補正トルク振幅算出器
３４ｅ  速度変動位相修正器
３４ｆ  直交成分分離器
３４ｇ  補正トルク復調器
３５ａ、３５ｂ  ＩＩＲ
３６  非干渉化制御器
３７  電流誤差補正値生成器
３７ａ、３７ｅ  減算器
３７ｂ  ｑ軸電流誤差成分分離器
３７ｃ  ｑ軸電流誤差積算器
３７ｄ  ｑ軸電流誤差補正値復調器
３７ｆ  ｄ軸電流誤差成分分離器
３７ｇ  ｄ軸電流誤差積算器
３７ｈ  ｄ軸電流誤差補正値復調器
１００  モータ制御装置
【図１】
2019201471.tif 000055
【図２】
2019201471.tif 000056
【図３】
2019201471.tif 000057
【図４】
2019201471.tif 000058
【図５】
2019201471.tif 000059
【図６】
2019201471.tif 000060
【図７】
2019201471.tif 000061
【図８】
2019201471.tif 000062
【図９】
2019201471.tif 000063
【図１０】
2019201471.tif 000064