(58)【調査した分野】(Int.Cl.,DB名)
前記電圧指令値生成器は、前記トルク指令値の前記モータの定トルク曲線と前記モータの定誘起電圧楕円との交点に基づいて前記モータの電流指令値を算出し、前記電流指令値から電圧ベクトル角を求めて電圧指令値を生成する、
請求項1に記載のモータ制御装置。
前記電圧指令値生成器は、前記モータの電流指令値と前記モータの電流との誤差に比例定数を乗算することにより補償電圧を算出し、前記補償電圧が加算された前記電圧指令値を生成する、
請求項1に記載のモータ制御装置。
【発明を実施するための形態】
【0011】
以下、本開示の実施例を図面に基づいて説明する。以下の実施例において同一の構成には同一の符号を付す。
【0012】
本開示では、周期的な負荷トルク変動を有する圧縮機を駆動する永久磁石同期モータ(PMSM(Permanent Magnet Synchronous Motor))のトルク制御を位置センサレスベクトル制御により行うモータ制御装置、例えば空気調和装置または低温保存装置等に用いられるモータ制御装置を一例に挙げて説明する。しかし、開示の技術は、周期的な負荷トルク変動を有する負荷を駆動するモータのトルク制御を行うモータ制御装置に広く適用可能である。
【0013】
[実施例1]
<モータ制御装置の動作>
図1A及び
図1Bは、本開示の実施例1のモータ制御装置の動作例の説明に供する図である。
【0014】
図1A及び
図1Bに示す定誘起電圧楕円(
図1A及び
図1Bでは楕円の一部を図示)は、モータの誘起電圧Voが等しくなる電流ベクトル軌跡であり、電気角推定角速度ωeが大きくなると定誘起電圧楕円の径は小さくなる。
図1Aに示す定誘起電圧楕円は、電気角推定角速度ωeが一定の場合の電流ベクトル軌跡を示す。また、
図1Bに示す定誘起電圧楕円は、負荷トルク変動により電気角推定角速度ωeが変動する場合の電流ベクトル軌跡を示す。
図1Bには、電気角推定角速度ωeの最大値における定誘起電圧楕円と、電気角推定角速度ωeの最小値における定誘起電圧楕円と、電気角推定角速度ωeの平均値における定誘起電圧楕円とを示す。
【0015】
本開示のモータ制御装置は、モータの弱め磁束制御が行われる電圧飽和領域でのトルク制御を行う際、
図1Bに示すように、トルク制御により±ΔTだけ変動する定トルク曲線T
*(=To
*±ΔT)と、変動する定誘起電圧楕円との交点に基づいて、q軸電流指令値Iq
*及びd軸電流指令値Id
*を算出する。例えば、本開示のモータ制御装置は、平均トルク指令値To
*に補正トルクである変動トルク指令値ΔTを加算した合計トルク指令値T
*が一定となる電流の軌跡である定トルク曲線と、出力電圧振幅Va(電圧指令値の振幅)を所望の振幅とするための誘起電圧指令値V0
*及び電気角推定角速度ωeが一定となる電流の軌跡である定誘起電圧楕円との交点に基づいてd軸電流指令値Id
*及びq軸電流指令値Iq
*を算出する。なお、定誘起電圧楕円や定トルク曲線は、リアクタンス等のモータパラメータに基づいて一意に決まるものではなく、モータの運転状態によって刻々と変化する。
【0016】
<モータ制御装置の構成>
図2は、本開示の実施例1のモータ制御装置の構成例を示す図である。
図2において、モータ制御装置100は、減算器11,38と、速度制御器12と、加算器13と、電圧指令値生成器14と、制御切替判定部15と、d−q/u,v,w変換器23と、PWM(Pulse Width Modulation)変調器24と、IPM(Intelligent Power Module)25とを有する。IPM25は、モータMに接続される。モータMの一例としてPMSMが挙げられる。
【0017】
また、モータ制御装置100は、シャント抵抗26と、電流センサ27a,27bと、3φ電流算出器28とを有する。なお、モータ制御装置100は、シャント抵抗26、または、電流センサ27a,27bの何れか一方を有していれば良い。
【0018】
また、モータ制御装置100は、u,v,w/d−q変換器29と、軸誤差演算器30と、PLL(Phase Locked Loop)制御器31と、位置推定器32と、1/Pn処理器33と、補正トルク生成器34とを有する。
【0019】
電圧指令値生成器14は、通常制御領域電圧指令値生成器14aと、電圧飽和領域電圧指令値生成器14bと、スイッチSW1と、スイッチSW2とを有する。スイッチSW1は、接点14c−1,14c−2,14c−3を有する。スイッチSW2は、接点14c−4,14c−5,14c−6を有する。
【0020】
減算器11は、モータ制御装置100の外部(例えば、上位のコントローラ)からモータ制御装置100へ入力された機械角速度指令値ωm
*から、1/Pn処理器33より出力された現在の推定角速度である機械角推定角速度ωmを減算することにより角速度誤差Δωを算出し、算出した角速度誤差Δωを速度制御器12へ出力する。
【0021】
速度制御器12は、減算器11から入力された角速度誤差Δωがゼロに近づくような平均トルク指令値To
*を生成し、生成した平均トルク指令値To
*を加算器13へ出力する。
【0022】
加算器13は、速度制御器12より出力された平均トルク指令値To
*と、補正トルク生成器34より出力された変動トルク指令値ΔTとを加算することにより合計トルク指令値T
*を算出し、算出した合計トルク指令値T
*を電圧指令値生成器14へ出力する。
【0023】
電圧指令値生成器14は、通常制御領域及び電圧飽和領域のそれぞれにおいて、加算器13より出力された合計トルク指令値T
*に基づいてd軸電圧指令値Vd
*及びq軸電圧指令値Vq
*を生成し、生成したd軸電圧指令値Vd
*及びq軸電圧指令値Vq
*を出力する。電圧飽和領域とは、モータMの高回転領域で出力電圧振幅Vaが飽和して弱め磁束制御が行われる領域である。通常制御領域とは、電圧飽和領域以外の領域であって、出力電圧を可変してモータMが制御される領域であり、通常制御領域では、最大トルク/電流制御などが行われる。
【0024】
電圧指令値生成器14は、制御切替判定部15より制御信号CONTROL_TYPE:A(通常制御)が出力された場合には、スイッチSW1の接点14c−1と接点14c−3とを接続するとともに、スイッチSW2の接点14c−4と接点14c−6とを接続して、通常制御領域電圧指令値生成器14aにより生成されるd軸電圧指令値Vd
*及びq軸電圧指令値Vq
*をd−q/u,v,w変換器23へ出力する。一方で、制御切替判定部15より制御信号CONTROL_TYPE:B(電圧飽和制御)が出力された場合には、電圧指令値生成器14は、スイッチSW1の接点14c−2と接点14c−3とを接続するとともに、スイッチSW2の接点14c−5と接点14c−6とを接続して、電圧飽和領域電圧指令値生成器14bにより生成されるd軸電圧指令値Vd
*及びq軸電圧指令値Vq
*をd−q/u,v,w変換器23へ出力する。
【0025】
制御切替判定部15は、出力電圧限界値Vdq_limitと、d軸電圧指令値Vd
*と、q軸電圧指令値Vq
*とに基づいて、モータMの現在の制御領域が通常制御領域と電圧飽和領域の何れであるかを判定する。そして、制御切替判定部15は、モータMの現在の制御領域が通常制御領域であると判定した場合には制御信号CONTROL_TYPE:A(通常制御)を電圧指令値生成器14へ出力し、モータMの現在の制御領域が電圧飽和領域であると判定した場合には制御信号CONTROL_TYPE:B(電圧飽和制御)を電圧指令値生成器14へ出力する。出力電圧限界値Vdq_limitは、IPM25の外部(例えば、図示しない電源コンバータ)からIPM25に供給される直流電圧Vdcが、制御系であるdq回転座標軸系における電圧値に変換されたものである。
【0026】
d−q/u,v,w変換器23は、電圧指令値生成器14より出力された2相のd軸電圧指令値Vd
*及びq軸電圧指令値Vq
*を、位置推定器32より出力された現在のロータ位置である電気角位相(dq軸位相)θeに基づいて、3相のU相出力電圧指令値Vu
*、V相出力電圧指令値Vv
*及びW相出力電圧指令値Vw
*へ変換する。そして、d−q/u,v,w変換器23は、U相出力電圧指令値Vu
*、V相出力電圧指令値Vv
*及びW相出力電圧指令値Vw
*をPWM変調器24へ出力する。
【0027】
PWM変調器24は、U相出力電圧指令値Vu
*、V相出力電圧指令値Vv
*、W相出力電圧指令値Vw
*と、PWMキャリア信号とに基づいて、6相のPWM信号を生成し、生成した6相のPWM信号をIPM25へ出力する。
【0028】
IPM25は、PWM変調器24より出力された6相のPWM信号に基づいて、IPM25の外部から供給される直流電圧Vdcを変換することにより、モータMのU相、V相、W相それぞれへ印加する交流電圧を生成し、それぞれの交流電圧をモータ10のU相、V相、W相へ印加する。
【0029】
3φ電流算出器28は、シャント抵抗26を用いた1シャント方式で母線電流が検出される場合、PWM変調器24より出力される6相のPWMスイッチング情報と、検出された母線電流とから、モータMのU相電流値Iu、V相電流値Iv、W相電流値Iwを算出する。または、3φ電流算出器28は、電流センサ27a,27bによってU相電流及びV相電流が検出される場合、残りのW相電流値Iwを“Iu+Iv+Iw=0”のキルヒホッフの法則に基づいて算出する。3φ電流算出器28は、算出した各相の相電流値Iu,Iv,Iwをu,v,w/d−q変換器29へ出力する。
【0030】
u,v,w/d−q変換器29は、位置推定器32より出力された現在のロータ位置を示す電気角位相θeに基づいて、3φ電流算出器28より出力された3相のU相電流値Iu、V相電流値Iv、W相電流値Iwを、2相のd軸電流Id及びq軸電流Iqへ変換する。そして、u,v,w/d−q変換器29は、d軸電流Id及びq軸電流Iqを電圧指令値生成器14及び軸誤差演算器30へ出力する。
【0031】
軸誤差演算器30は、電圧指令値生成器14より出力されたd軸電圧指令値Vd
*及びq軸電圧指令値Vq
*と、u,v,w/d−q変換器29より出力されたd軸電流Id及びq軸電流Iqを用いて、軸誤差Δθ(推定された回転軸と実際の回転軸との差)を算出する。そして、軸誤差演算器30は、算出した軸誤差ΔθをPLL制御器31へ出力する。
【0032】
PLL制御器31は、軸誤差演算器30より出力された軸誤差Δθに基づいて現在の推定角速度である電気角推定角速度ωeを算出し、算出した電気角推定角速度ωeを位置推定器32及び1/Pn処理器33へ出力する。
【0033】
位置推定器32は、PLL制御器31より出力された電気角推定角速度ωeに基づいて電気角位相θe及び機械角位相θmを推定する。そして、位置推定器32は、推定した電気角位相θeをd−q/u,v,w変換器23及びu,v,w/d−q変換器29へ出力し、推定した機械角位相θmを電圧指令値生成器14及び補正トルク生成器34へ出力する。
【0034】
1/Pn処理器33は、PLL制御器31より出力された電気角推定角速度ωeをモータMの極対数Pnで除算することにより機械角推定角速度ωmを算出し、算出した機械角推定角速度ωmを減算器11,38へ出力する。
【0035】
減算器38は、1/Pn処理器33より出力された機械角推定角速度ωmから機械角速度指令値ωm
*を減算することにより機械角推定角速度変動Δωmを算出し、算出した機械角推定角速度変動Δωmを補正トルク生成器34へ出力する。
【0036】
補正トルク生成器34は、モータMの振動が許容できる速度変動範囲である速度変動許容値|Δωm|
*、減算器38から出力された機械角推定角速度変動Δωm、及び、位置推定器32より出力された機械角位相θmに基づいて、周期的な速度変動である機械角推定角速度変動Δωmを速度変動許容値|Δωm|
*以下に抑制するための変動トルク指令値ΔTを生成し、生成した変動トルク指令値ΔTを加算器13へ出力する。なお、速度変動許容値|Δωm|
*は、モータ制御装置100内に記憶されている。また、機械角推定角速度変動(速度変動)Δωmは、上記の角速度誤差Δωの値と正負の符号が異なるだけである。
【0037】
<制御切替判定部の構成>
図3は、本開示の実施例1の制御切替判定部の構成例を示す図である。
図3において、制御切替判定部15は、電圧振幅算出器15aと、制御切替判定器15bとを有し、モータの現在の制御領域が通常制御領域か電圧飽和領域かを以下のようにして判定する。
【0038】
電圧振幅算出器15aは、電圧指令値生成器14より出力されたd軸電圧指令値Vd
*及びq軸電圧指令値Vq
*基づいて、式(1)に従って、出力電圧振幅Vaを算出する。
【数1】
【0039】
制御切替判定器15bは、電圧振幅算出器15aで算出された出力電圧振幅Vaのピーク値と、出力電圧限界値Vdq_limitとを比較する。
【0040】
制御切替判定器15bは、出力電圧振幅Vaのピーク値が出力電圧限界値Vdq_limit未満である場合は、モータMの現在の制御領域が通常制御領域であると判定し、制御信号CONTROL_TYPE:Aを電圧指令値生成器14へ出力する。
【0041】
一方で、出力電圧振幅Vaのピーク値が出力電圧限界値Vdq_limit以上である場合は、制御切替判定器15bは、モータMの現在の制御領域が電圧飽和領域であると判定し、制御信号CONTROL_TYPE:Bを電圧指令値生成器14へ出力する。
【0042】
<補正トルク生成器の構成>
図4は、本開示の実施例1の補正トルク生成器の構成例を示す図である。
図4において、補正トルク生成器34は、速度変動成分分離器34aと、速度変動振幅算出器34bと、減算器34cと、補正トルク振幅算出器34dと、速度変動位相修正器34eと、直交成分分離器34fと、補正トルク復調器34gとを有する。
【0043】
補正トルク生成器34は、速度変動振幅|Δωm|が、モータMの振動が実使用上問題とならない範囲の速度変動許容値|Δωm|
*内になるように変動トルク指令値(補正トルク)ΔTの振幅(補正トルク振幅|ΔT|)及び位相を機械角周期毎に調整する。
【0044】
速度変動成分分離器34aは、式(2.1)及び式(2.2)に従って、機械角推定角速度変動Δωmを、Δωmの基本波成分である2つのフーリエ係数ωsin(sin成分)とωcos(cos成分)に分離する。機械角推定角速度変動Δωmの基本波成分のフーリエ係数を機械角周期毎に算出することで、機械角推定角速度変動Δωmの高調波成分を排除して機械角推定角速度変動Δωmの基本波成分を精度よく抽出することができる。ωsin及びωcosは、機械角周期毎に更新される値である。
【数2】
【0045】
速度変動振幅算出器34bは、フーリエ係数ωsin,ωcosに基づいて、式(3)に従って、速度変動振幅|Δωm|を算出する。ωsin及びωcosは機械角周期毎に更新される値であるため、速度変動振幅|Δωm|も機械角周期毎に更新される。
【数3】
【0046】
減算器34cは、速度変動振幅算出器34bより出力された速度変動振幅|Δωm|から速度変動許容値|Δωm|
*を減算することにより速度変動誤差|Δωm|errを算出する。速度変動許容値|Δωm|
*は、モータMの振動が許容できる範囲での速度変動振幅|Δωm|を規定したものである。
【0047】
補正トルク振幅算出器34dは、速度変動振幅|Δωm|と速度変動許容値|Δωm|
*との誤差に応じて補正トルク振幅|ΔT|を機械角周期毎に調整する。例えば、補正トルク振幅算出器34dは、式(4)に従って、速度変動振幅|Δωm|と速度変動許容値|Δωm|
*との誤差である速度変動誤差|Δωm|errに補正ゲインkを乗算し、乗算結果と|ΔT|_oldとを加算することにより補正トルク振幅|ΔT|を算出する。式(4)における|ΔT|_oldは、前回の機械角周期における補正トルク振幅|ΔT|である。補正ゲインkを適切に設定することで、速度変動|Δω|が速度変動許容値|Δωm|
*の境界でハンチングすることや、急激な負荷トルク変化によって速度変動|Δω|が速度変動許容値|Δωm|
*よりも大きくなって振動が発生することを抑制できる。
【数4】
【0048】
速度変動位相修正器34eは、機械角周期毎に取得される機械角推定角速度変動Δωmの位相を修正する。例えば、速度変動位相修正器34eは、式(5.1)及び式(5.2)に従って、フーリエ係数ωsin,ωcosのそれぞれに補正ゲインkを乗算し、それぞれの乗算結果にωsin_i_old,ωcos_i_oldを加算する。式(5.1)におけるωsin_i_oldは、前回の機械角周期におけるωsin_iであり、式(5.2)におけるωcos_i_oldは、前回の機械角周期におけるωcos_iである。そして、速度変動位相修正器34eは、式(5.3)に従って、ωsin_i及びωcos_iの逆正接(Arctangent)を速度変動修正位相φωiとして算出する。この速度変動修正位相φωiが、トルク制御を行う際の位相の基準になり、この基準に対してπ/2遅角した位相が変動トルク指令値ΔTの位相(補正トルク位相)となる。
【数5】
【0049】
直交成分分離器34fは、補正トルク振幅|ΔT|及び速度変動修正位相φωiに基づいて、式(6.1)及び式(6.2)に従って、速度変動修正位相φωiのsin成分(ωsin_i)とcos成分(ωcos_i)とを算出する。この処理は、式(5.1)及び式(5.2)の演算による位相修正時の発散を防止する役割も有する。
【数6】
【0050】
補正トルク復調器34gは、速度変動修正位相φωiのsin成分(ωsin_i)とcos成分(ωcos_i)とに基づいて、式(7.1)及び式(7.2)に従って、変動トルク指令値ΔTを算出する。この処理により速度変動修正位相φωiからπ/2だけ遅角した補正トルク位相へ変換され、機械角位相θmでの変動トルク指令値ΔTの瞬時値が生成される。
【数7】
【0051】
なお、補正トルク復調器34gは、式(7.1)及び式(7.2)の代わりに式(8)に従って変動トルク指令値ΔTの瞬時値を算出しても良い。
【数8】
【0052】
そして、加算器13は、式(9)に従って、速度制御器12より出力された平均トルク指令値To
*に変動トルク指令値ΔTを加算することにより合計トルク指令値T
*を算出する。
【数9】
【0053】
<電圧飽和領域電圧指令値生成器の構成>
図5は、本開示の実施例1の電圧飽和領域電圧指令値生成器の構成例を示す図である。
図5において、電圧飽和領域電圧指令値生成器14bは、出力電圧制限指令値生成器14b1と、誘起電圧指令値算出器14b2と、電流指令値算出器14b3と、仮電圧指令値算出器14b4と、電圧ベクトル角算出器14b5と、電圧指令値算出器14b6とを有する。
【0054】
図6は、本開示の実施例1の出力電圧制限指令値生成器の構成例を示す図である。
図6において、出力電圧制限指令値生成器14b1は、MTPI電流指令値算出器14b1−1と、MTPI電圧指令値算出器14b1−2と、MTPI電圧振幅算出器14b1−3と、平均出力電圧生成器14b1−4と、MTPI電圧変動成分抽出器14b1−5と、加算器14b1−6,14b1−8と、MTPI電圧振幅制限処理器14b1−7とを有する。
【0055】
出力電圧制限指令値生成器14b1は、合計トルク指令値T
*、電気角推定角速度ωe、出力電圧限界値Vdq_limit、d軸電流Id、q軸電流Iq、及び、機械角位相θmに基づいて、出力電圧制限指令値Va
*を生成する。この出力電圧制限指令値Va
*は、出力電圧限界値Vdq_limitまでの範囲で出力電圧の変動振幅を調整し、出力電圧の変動位相を通常制御領域(MTPI制御領域)での出力電圧の変動位相と一致させるための電圧である。
【0056】
図6において、MTPI電流指令値算出器14b1−1は、合計トルク指令値T
*が一定となる電流の軌跡である定トルク曲線とMTPI曲線(最大トルク/電流制御曲線)との交点であるMTPI想定d軸電流指令値Id_mtpi
*及びMTPI想定q軸電流指令値Iq_mtpi
*を算出する。定トルク曲線とMTPI曲線との交点は、例えば、式(10)のモータトルク式と、q軸電流が既知のときのMTPI曲線上のd軸電流式である式(11)とを用いて算出される。
【数10】
【数11】
【0057】
式(10)及び式(11)からd軸電流Idを消去すると、式(12)に示すように、q軸電流Iqに関する4次方程式を得ることができる。
【数12】
【0058】
式(12)に示す4次方程式の解として、式(12)に示す4次方程式に対して例えばニュートン法等を用いることで、合計トルク指令値T
*の定トルク曲線とMTPI曲線との交点でのMTPI想定q軸電流指令値Iq_mtpi
*に相当する解を導出することができる。
【0059】
MTPI電流指令値算出器14b1−1は、式(12)の解であるMTPI想定q軸電流指令値Iq_mtpi
*に基づいて式(11)のd軸電流式に従って、MTPI想定d軸電流指令値Id_mtpi
*を算出する。
【0060】
MTPI電圧指令値算出器14b1−2は、MTPI想定d軸電流指令値Id_mtpi
*、MTPI想定q軸電流指令値Iq_mtpi
*及び電気角推定角速度ωeに基づいて、式(13.1)及び式(13.2)に示すPMSM電圧方程式に従って、MTPI想定d軸電圧Vd_mtpi
*及びMTPI想定q軸電圧Vq_mtpi
*を算出する。なお、式(13.1)及び式(13.2)における“p”は、微分演算子である。
【数13】
【0061】
なお、式(13.1)及び式(13.2)では、トルク制御による電流変化に伴うインダクタンスでの電圧降下“p・Ld・Id”及び“p・Lq・Iq”(p項電圧)が考慮されている。“Ld”はモータMのd軸インダクタンス、“Lq”はモータMのq軸インダクタンスを示す。
【0062】
ここで、p項電圧は、電流変化の時間微分を用いて示される。しかし、検出電流の変化量をそのまま微分値とすると、MTPI想定d軸電圧Vd_mtpi
*及びMTPI想定q軸電圧Vq_mtpi
*が電流ノイズに敏感に反応してしまう。そこで、微分値は、電流基本波変動に基づいて、例えば以下のようにして生成される。
【0063】
p項電圧の生成について説明するために、まず、d軸電流Id及びq軸電流Iqの変動成分ΔIda及びΔIqaを式(14.1)及び式(14.2)のように定義する。
【数14】
【0064】
ここで、機械角一回転で1回の周期変動が起こる場合、式(14.1)に含まれる“Ida”と“φd”は、それぞれΔIdaの変動振幅と初期位相を示し、式(14.2)に含まれる“Iqa”と“φq”は、それぞれΔIqaの変動振幅と初期位相を示し、式(14.1)及び式(14.2)に含まれる“θm”は機械角位相の瞬時値を示す。
【0065】
よって、電流基本波変動により生ずるp項電圧は、式(15.1)及び式(15.2)のように示される。すなわち、d軸電流変動及びq軸電流変動の位相をπ/2だけ進ませ、位相をπ/2だけ進ませたd軸電流変動及びq軸電流変動に機械角推定角速度ωmを乗算することで、微分値(p項電圧)を生成することができる。
【数15】
【0066】
MTPI電圧振幅算出器14b1−3は、MTPI想定d軸電圧Vd_mtpi
*及びMTPI想定q軸電圧Vq_mtpi
*に基づいて、式(16)に従って、MTPI想定出力電圧Va_mtpi
*を算出する。
【数16】
【0067】
平均出力電圧生成器14b1−4は、モータMのロータの1回転毎に変動するd軸電流Idとq軸電流Iqのそれぞれの平均値がMTPI曲線(最大トルク/電流制御曲線)をトレースするように調整した平均出力電圧指令値Va0
*を出力する。例えば、平均出力電圧生成器14b1−4は、現在のq軸電流IqからMTPI曲線上のd軸電流Idtを算出し、算出したd軸電流Idtと現在のd軸電流Idとの誤差がなくなるようにPI制御等により平均出力電圧指令値Va0
*を調整する。平均出力電圧生成器14b1−4は、例えば式(17.1)及び式(17.2)に従って平均出力電圧指令値Va0
*を算出する。また、平均出力電圧生成器14b1−4は、平均出力電圧指令値Va0
*が出力電圧限界値Vdq_limitを超過した場合には、式(18)に従って、平均出力電圧指令値Va0
*を出力電圧限界値Vdq_limitに制限する。平均出力電圧指令値Va0
*が出力電圧限界値Vdq_limitに制限されることで、弱め磁束制御となる。“Ψa”はモータMの鎖交磁束を示す。
【数17】
【数18】
【0068】
MTPI電圧変動成分抽出器14b1−5は、MTPI想定出力電圧Va_mtpi
*の変動振幅|ΔVa_mtpi|、及び、瞬時値ΔVa_mtpiを、例えば以下のように算出する。
【0069】
MTPI電圧変動成分抽出器14b1−5は、まず、式(19.1)及び式(19.2)に従って、MTPI想定出力電圧Va_mtpi
*の基本波成分を、sin成分であるフーリエ係数Va_mtpi_sinと、cos成分であるVa_mtpi_cosとに分離する。MTPI電圧変動成分抽出器14b1−5は、MTPI想定出力電圧Va_mtpi
*の基本波成分のフーリエ係数を機械角周期毎に算出することで、高調波成分が除去されたMTPI想定出力電圧Va_mtpi
*の基本波成分を抽出することができる。
【数19】
【0070】
次いで、MTPI電圧変動成分抽出器14b1−5は、式(19.1)及び式(19.2)に従って算出したフーリエ係数Va_mtpi_sin,Va_mtpi_cosに基づいて、式(20)に従って、MTPI想定出力電圧Va_mtpi
*の基本波成分の振幅|ΔVa_mtpi|を算出する。なお、フーリエ係数Va_mtpi_sin,Va_mtpi_cosは機械角周期毎に更新される値であるため、振幅|ΔVa_mtpi|も機械角周期毎に更新される。
【数20】
【0071】
そして、MTPI電圧変動成分抽出器14b1−5は、MTPI想定出力電圧Va_mtpi
*の基本波成分の瞬時値ΔVa_mtpiを式(21)に従って算出する。
【数21】
【0072】
加算器14b1−6は、式(22)に従って、平均出力電圧指令値Va0
*とMTPI想定出力電圧Va_mtpi
*の基本波成分の振幅|ΔVa_mtpi|とを加算することによりMTPI想定出力電圧変動ピーク値Va_mtpi_peakを算出する。
【数22】
【0073】
MTPI電圧振幅制限処理器14b1−7は、加算器14b1−6での加算結果であるMTPI想定出力電圧変動ピーク値Va_mtpi_peakが出力電圧限界値Vdq_limit以下となるように調整した変動出力電圧制限指令値ΔVa_limit_mtpiを生成し、生成した変動出力電圧制限指令値ΔVa_limit_mtpiを出力する。
【0074】
例えば、MTPI電圧振幅制限処理器14b1−7は、平均出力電圧指令値Va0
*と、MTPI想定出力電圧変動ピーク値Va_mtpi_peakと、出力電圧限界値Vdq_limitとの比較により、出力電圧変動成分の振幅比率scaleを算出し、振幅比率scaleをMTPI想定出力電圧変動成分ΔVa_mtpiに乗算することにより変動出力電圧制限指令値ΔVa_limit_mtpiを生成する。こうすることで、MTPI想定出力電圧変動成分ΔVa_mtpiと位相を一致させた変動出力電圧制限指令値ΔVa_limit_mtpiを生成できる。
【0075】
例えば、MTPI電圧振幅制限処理器14b1−7は、式(23.1)〜式(23.3)に従って出力電圧変動成分の振幅比率scaleを算出し、算出した振幅比率scaleに基づいて、式(23.4)に従って、変動出力電圧制限指令値ΔVa_limit_mtpiを生成する。
【数23】
【0076】
加算器14b1−8は、式(24)に従って、平均出力電圧指令値Va0
*と変動出力電圧制限指令値ΔVa_limit_mtpiとを加算することにより出力電圧制限指令値Va
*を算出する。加算器14b1−8は、算出した出力電圧制限指令値Va
*を誘起電圧指令値算出器14b2及び電圧指令値算出器14b6へ出力する。
【数24】
【0077】
図5において、誘起電圧指令値算出器14b2は、現在のd軸電流Id、q軸電流Iq及び電気角推定角速度ωeに基づいて、式(25.1)及び式(25.2)に示すモータモデル式に従って、出力電圧制限指令値Va
*に基づく誘起電圧指令値Vo
*を算出する。以下に、誘起電圧指令値Vo
*の算出の詳細を示す。
【0078】
PMSMの電圧方程式(d軸電圧Vd,q軸電圧Vq)、出力電圧振幅Vaの理論式、及び、モータMの誘起電圧Voの理論式は、式(25.1)〜式(27)に示される。
【数25】
【数26】
【数27】
【0079】
また、式(25.1)〜式(27)から、出力電圧制限指令値Va
*と誘起電圧指令値Vo
*とを関連づける式は、式(28)のようになる。そこで、誘起電圧指令値算出器14b2は、式(28)に従って誘起電圧指令値Vo
*を算出し、算出した誘起電圧指令値Vo
*を電流指令値算出器14b3へ出力する。
【数28】
【0080】
電流指令値算出器14b3は、合計トルク指令値T
*が一定となる電流の軌跡である定トルク曲線と、誘起電圧指令値Vo
*及び電気角推定角速度ωeが一定となる電流の軌跡である定誘起電圧楕円との交点に基づいて、q軸電流指令値Iq
*とd軸電流指令値Id
*とを算出する(
図1B参照)。電流指令値算出器14b3は、算出したq軸電流指令値Iq
*及びd軸電流指令値Id
*を仮電圧指令値算出器14b4へ出力する。
【0081】
定トルク曲線と定誘起電圧楕円との交点は、例えば、式(29)に示すモータトルク式と、式(30)に示す誘起電圧式とを用いて算出できる。
【数29】
【数30】
【0082】
式(29)及び式(30)からd軸電流Idを消去すると、式(31)のように、q軸電流Iqに関する4次方程式を得ることができる。但し、式(31)において、“ΔL=Ld−Lq”である。
【数31】
【0083】
式(31)に示す4次方程式の解として、式(31)に示す4次方程式に対して例えばニュートン法等を用いることで、合計トルク指令値T
*が一定となる電流の軌跡である定トルク曲線と、誘起電圧Vo及び電気角推定角速度ωeが一定となる電流の軌跡である定誘起電圧楕円とが交差する点でのq軸電流指令値Iq
*に相当する解を導出することができる(
図1B参照)。
【0084】
電流指令値算出器14b3は、q軸電流指令値Iq
*を算出後、式(30)に示す誘起電圧式をd軸電流式に変形した式(32)に従って、q軸電流指令値Iq
*に基づいてd軸電流指令値Id
*を算出する。
【数32】
【0085】
ここで、式(32)において、√に係る符号として正または負の何れを採るかは、Iq軸に平行で、かつ、定誘起電圧楕円の中心であるM点(−Ψa/Ld,0)を通る直線(以下では「M点境界ライン」と呼ぶことがある)と、定誘起電圧楕円とが交差する点でのトルク(以下では「M点境界上トルクT_M」と呼ぶことがある)を算出し、M点境界上トルクT_Mと合計トルク指令値T
*とを比較することによって決定することができる。
【0086】
以下に、d軸電流指令値Id
*及びq軸電流指令値Iq
*の算出手順を示す。
図7A及び
図7Bは、本開示の実施例1の電流指令値算出器の動作例の説明に供する図である。
【0087】
電流指令値算出器14b3は、まず、M点上のd軸電流Id_Mを式(33)に従って算出する。
【数33】
【0088】
次いで、電流指令値算出器14b3は、M点境界ラインと定誘起電圧楕円とが交差する点におけるq軸電流Iq_Mを算出する。q軸電流Iq_Mは、式(30)にM点上のd軸電流Id_Mを代入することにより算出できるため、式(34)に従って算出される。
【数34】
【0089】
よって、電流指令値算出器14b3は、式(35)に従って、M点境界上トルクT_Mを算出する。
【数35】
【0090】
そして、電流指令値算出器14b3は、合計トルク指令値T
*とM点境界上トルクT_Mとの大小関係に基づいて、式(36.1)及び式(36.2)に従って、d軸電流指令値Id
*を決定する。式(36.1)には、“合計トルク指令値T
*≦M点境界上トルクT_M”の場合のd軸電流指令値Id
*(
図7A参照)を示し、式(36.2)には、“合計トルク指令値T
*>M点境界上トルクT_M”の場合のd軸電流指令値Id
*(
図7B参照)を示す。
【数36】
【0091】
電流指令値算出器14b3は、以上のようにして算出したd軸電流指令値Id
*及びq軸電流指令値Iq
*を仮電圧指令値算出器14b4へ出力する。
【0092】
図5において、仮電圧指令値算出器14b4は、電気角推定角速度ωe、d軸電流指令値Id
*及びq軸電流指令値Iq
*に基づいて、式(37.1)及び式(37.2)に示すモータモデル式に従って、フィードフォワードで仮d軸電圧指令値Vd_m及び仮q軸電圧指令値Vq_mを算出する。仮電圧指令値算出器14b4は、算出した仮d軸電圧指令値Vd_m及び仮q軸電圧指令値Vq_mを電圧ベクトル角算出器14b5へ出力する。なお、フィードフォワードで仮電圧指令値を算出することで、入力飽和によってPI制御などの積分器に発生するワインドアップ(飽和現象)を防止できる。
【数37】
【0093】
なお、式(37.1)及び式(37.2)では、トルク制御による電流変化に伴うインダクタンスでの電圧降下“p・Ld・Id”及び“p・Lq・Iq”(p項電圧)が考慮されている。
【0094】
電圧ベクトル角算出器14b5は、仮d軸電圧指令値Vd_m及び仮q軸電圧指令値Vq_mに基づいて、式(38)に従って、電圧ベクトル角δを算出する。電圧ベクトル角算出器14b5は、算出した電圧ベクトル角δを電圧指令値算出器14b6へ出力する。つまり、電圧ベクトル角算出器14b5は、
図8に示すように、式(1)のようにして算出される振幅Vaを有する出力電圧ベクトルがq軸から為す角度を電圧ベクトル角δとして算出する。こうすることで、出力電圧振幅がインバータの出力可能な直流電圧(DC電圧)以下に制限される電圧飽和領域において、合計トルク指令値T
*に対応した電圧ベクトル角δを演算によって生成できる。よって、電圧ベクトル角変動のチューニングを行うことなく制振制御を行うことができるため、電圧ベクトル角変動のチューニングをせずにモータMの制振効果の向上を図ることができる。
図8は、本開示の実施例1の電圧ベクトル角算出器の動作例の説明に供する図である。
【数38】
【0095】
電圧指令値算出器14b6は、電圧ベクトル角δ及び出力電圧制限指令値Va
*に基づいて、式(39.1)及び式(39.2)に従って、極座標から直交座標への座標変換を行うことにより、d軸電圧指令値Vd
*及びq軸電圧指令値Vq
*を算出する。
【数39】
【0096】
<MTPI電圧振幅制限処理器の動作>
図9は、本開示の実施例1のMTPI電圧振幅制限処理器の動作例の説明に供する図である。
【0097】
例えば、
図9のケース(a)に示すように、平均出力電圧指令値Va0
*を中心に変動するMTPI想定出力電圧変動成分ΔVa_mtpiのピーク値Va_mtpi_peakが出力電圧限界値Vdq_limit以下である場合は、式(23.2)の条件に該当するため、MTPI電圧振幅制限処理器14b1−7は、出力電圧変動成分の振幅比率scaleを“1”とする。そして、MTPI電圧振幅制限処理器14b1−7は、式(23.4)において“scale=1”とし、MTPI想定出力電圧変動成分ΔVa_mtpiをそのまま変動出力電圧制限指令値ΔVa_limit_mtpiとして出力する。その結果、出力電圧制限指令値Va
*は、MTPI想定出力電圧変動成分ΔVa_mtpiと一致する。
【0098】
また例えば、
図9のケース(b)に示すように、平均出力電圧指令値Va0
*を中心に変動するMTPI想定出力電圧変動成分ΔVa_mtpiのピーク値Va_mtpi_peakが出力電圧限界値Vdq_limitを超え、かつ、平均出力電圧指令値Va0
*が出力電圧限界値Vdq_limitを超えない場合は、式(23.3)の条件に該当するため、MTPI電圧振幅制限処理器14b1−7は、出力電圧変動成分の振幅比率scaleを“(Vdq_limit−Va0
*)/|ΔVa_mtpi|”とする。そして、MTPI電圧振幅制限処理器14b1−7は、式(23.4)において“scale=(Vdq_limit−Va0
*)/|ΔVa_mtpi|”とした変動出力電圧制限指令値ΔVa_limit_mtpiを出力する。その結果、MTPI想定出力電圧変動成分ΔVa_mtpiと位相が一致し、かつ、変動振幅によるピーク値が出力電圧限界値Vdq_limit以下となる出力電圧制限指令値Va
*が生成される。
【0099】
また例えば、
図9のケース(c)に示すように、MTPI想定出力電圧変動成分ΔVa_mtpiの平均出力電圧指令値Va0
*が出力電圧限界値Vdq_limit以上である場合は、式(23.1)の条件に該当するため、MTPI電圧振幅制限処理器14b1−7は、出力電圧変動成分の振幅比率scaleを“0”とする。そして、MTPI電圧振幅制限処理器14b1−7は、式(23.4)において“scale=0”とし、変動出力電圧制限指令値ΔVa_limit_mtpiを“0”として出力する。その結果、出力電圧制限指令値Va
*は、出力電圧限界値Vdq_limitと一致する。
【0100】
このようにして出力電圧制限指令値Va
*を制御することで、
図10に示す出力電圧波形の一例のように、モータMの制御領域が通常制御領域から電圧飽和領域に遷移した直後も、出力電圧振幅Vaを出力電圧限界値Vdq_limit以下に保ちつつ、通常制御領域と電圧飽和領域との間で出力電圧振幅Vaを一致させることができる。このため、通常制御領域から電圧飽和領域への遷移時の切替ショックを低減できる。さらに、モータ制御装置100が電圧飽和領域電圧指令値生成器14bを有することで、電圧飽和領域において、出力電圧制限指令値Va
*の変動の中心である平均出力電圧指令値Va0
*が出力電圧限界値Vdq_limitで制限される場合にも対応できる。
【0101】
<通常制御領域電圧指令値生成器の構成>
図11は、本開示の実施例1の通常制御領域電圧指令値生成器の構成例を示す図である。
図11において、通常制御領域電圧指令値生成器14aは、電流指令値算出器14a1と、加算器16,17,21,22と、減算器18,19と、電圧指令値算出器20と、IIR(Infinite Impulse Response)フィルタ35a,35bと、非干渉化制御器36と、電流誤差補正値生成器37とを有する。
【0102】
電流指令値算出器14a1は、合計トルク指令値T
*が一定となる電流の軌跡である定トルク曲線とMTPI曲線との交点に基づいて、q軸電流指令値Iq
*及びd軸電流指令値Id
*を算出する。
【0103】
ここで、定トルク曲線とMTPI曲線との交点は、例えば、式(29)に示すモータトルク式と、MTPI曲線におけるd軸電流Idとq軸電流Iqとの関係を示す式(式(17.1)とを用いて算出できる。なお、式(29)の右辺において、第1項がマグネットトルクを表し、第2項がリラクタンストルクを表し、マグネットトルクはq軸電流Iqのみを含み、リラクタンストルクはq軸電流Iqとd軸電流Idとの双方を含む。従って、q軸電流Iqとd軸電流Idとを適切に制御することにより、モータMに適正なトルクを発生させることができる。
【0104】
式(29)及び式(17.1)よりd軸電流Idを消去すると、q軸電流Iqに関する4次方程式である式(40)を得ることができる。
【数40】
【0105】
式(40)に示す4次方程式の解として、式(40)に示す4次方程式に対して例えばニュートン法等を用いることで、合計トルク指令値T
*の定トルク曲線とMTPI曲線との交点でのq軸電流指令値Iq
*に相当する解を導出することができる。また、電流指令値算出器14a1は、式(40)に従って算出したq軸電流指令値Iq
*を式(17.1)に代入することにより、d軸電流指令値Id
*を算出する。
【0106】
加算器17は、式(41.1)に従って、電流指令値算出器14a1より出力されたq軸電流指令値Iq
*と電流誤差補正値生成器37より出力されたq軸電流誤差補正値ΔIqとを加算することによりq軸電流補正指令値Iq_FF
*を算出する。加算器16は、式(41.2)に従って、電流指令値算出器14a1より出力されたd軸電流指令値Id
*と電流誤差補正値生成器37より出力されたd軸電流誤差補正値ΔIdとを加算することによりd軸電流補正指令値Id_FF
*を算出する。
【数41】
【0107】
減算器19は、加算器17より出力されたq軸電流補正指令値Iq_FF
*から、u,v,w/d−q変換器29より出力されたq軸電流Iqを減算することにより、q軸電流補正指令値Iq_FF
*とq軸電流Iqとの誤差であるq軸電流誤差Iq_diffを算出する。減算器18は、加算器16より出力されたd軸電流補正指令値Id_FF
*から、u,v,w/d−q変換器29より出力されたd軸電流Idを減算することにより、d軸電流補正指令値Id_FF
*とd軸電流Idとの誤差であるd軸電流誤差Id_diffを算出する。
【0108】
電圧指令値算出器20は、式(42.1)に従って、q軸電流誤差Iq_diff(Iq_FF
*−Iq)にPI(Proportional Integral)制御を行うことにより非干渉化前q軸電圧指令値Vqtを算出する。また、電圧指令値算出器20は、式(42.2)に従って、d軸電流誤差Id_diff(Id_FF
*−Id)にPI制御行うことにより非干渉化前d軸電圧指令値Vdtを算出する。なお、式(42.1)のkp_q及び式(42.2)のkp_dは比例定数であり、式(42.1)のki_q及び式(42.2)のki_dは積分定数である。
【数42】
【0109】
加算器22は、式(43.1)で表されるq軸非干渉化補正値Vqaを、式(43.3)に従って、非干渉化前q軸電圧指令値Vqtに加算することにより、q軸電圧指令値Vq
*を算出する。加算器21は、式(43.2)で表されるd軸非干渉化補正値Vdaを、式(43.4)に従って、非干渉化前d軸電圧指令値Vdtに加算することにより、d軸電圧指令値Vd
*を算出する。これにより、dq軸間の干渉がフィードフォワードでキャンセルされたq軸電圧指令値Vq
*及びd軸電圧指令値Vd
*が算出される。
【数43】
【0110】
IIRフィルタ(Infinite Impulse Response Filter)35aは、u,v,w/d−q変換器29より出力されたd軸電流Idのノイズを除去し、ノイズ除去後のd軸応答電流Id_iirを出力する。IIR35bは、u,v,w/d−q変換器29より出力されたq軸電流Iqのノイズを除去し、ノイズ除去後のq軸応答電流Iq_iirを出力する。IIRフィルタ35a,35bはノイズ除去フィルタの一例である。
【0111】
非干渉化制御器36は、モータ制御装置100の外部(例えば、上位のコントローラ)から入力された電気角速度指令値ωe
*と、q軸応答電流Iq_iirとに基づいて、非干渉化前d軸電圧指令値Vdtを補正するためのd軸非干渉化補正値Vdaを生成する。また、非干渉化制御器36は、電気角速度指令値ωe
*とd軸応答電流Id_iirとに基づいて、非干渉化前q軸電圧指令値Vqtを補正するためのq軸非干渉化補正値Vqaを生成する。d軸非干渉化補正値Vda及びq軸非干渉化補正値Vqaは、dq軸間の干渉項をフィードフォワードでキャンセルするための補正値である。ここで、安定制御を図るために、非干渉化補正値は直流化された値であることが望ましい。このため、非干渉化補正値の生成にあたっては、速度については電気角速度指令値ωe
*が用いられ、d軸電流Id及びq軸電流Iqについては、IIRフィルタにより変動成分が除去されたd軸応答電流Id_iir及びq軸応答電流Iq_iirが用いられる。
【0112】
電流誤差補正値生成器37は、電流指令値算出器14a1より出力されたd軸電流指令値Id
*及びq軸電流指令値Iq
*と、u,v,w/d−q変換器29より出力されたd軸電流Id及びq軸電流Iqと、位置推定器32より出力された機械角位相θmとに基づいて、d軸電流誤差補正値ΔId及びq軸電流誤差補正値ΔIqを生成する。
【0113】
電流誤差補正値生成器37は、電流指令値算出器14a1の応答遅延やdq軸の干渉により、dq軸電流が電流指令値に追従し切れずに生じる変動誤差(位相誤差及び振幅誤差)を積算し、積算値の反転出力を電流誤差補正値(d軸電流誤差補正値ΔId及びq軸電流誤差補正値ΔIq)として生成する。ここで、d軸電流誤差補正値ΔIdは、d軸電流指令値I
*とd軸電流Idとの変動誤差を補正するためのフィードフォワード成分であり、q軸電流誤差補正値ΔIqは、q軸電流指令値Iq
*とq軸電流Iqとの変動誤差を補正するためのフィードフォワード成分である。
【0114】
<電流誤差補正値生成器の構成>
図12は、本開示の実施例1の電流誤差補正値生成器の構成例を示す図である。
図12において、電流誤差補正値生成器37は、減算器37a,37eと、q軸電流誤差成分分離器37bと、q軸電流誤差積算器37cと、q軸電流誤差補正値復調器37dと、d軸電流誤差成分分離器37fと、d軸電流誤差積算器37gと、d軸電流誤差補正値復調器37hとを有する。
【0115】
減算器37aは、式(44)に従って、q軸電流Iqとq軸電流指令値Iq
*との誤差であるq軸電流変動誤差Iq_errを算出する。
【数44】
【0116】
q軸電流誤差成分分離器37bは、式(45.1)及び式(45.2)に従って、q軸電流変動誤差Iq_errの基本波成分である2つのフーリエ係数Iq_err_sin(sin成分)及びIq_err_cos(cos成分)を機械角周期毎に算出する。
【数45】
【0117】
q軸電流誤差積算器37cは、式(46.1)及び式(46.2)に従って、q軸電流変動誤差Iq_errのsin成分Iq_err_sinと、q軸電流変動誤差Iq_errのcos成分Iq_err_cosとのそれぞれに補正ゲインkを乗算し、それぞれの乗算結果をIq_err_sin_i_old,Iq_err_cos_i_oldに加算する。式(46.1)におけるIq_err_sin_iは、今回の機械角周期までのIq_err_sinの積算値であり、式(46.2)におけるIq_err_cos_iは、今回の機械角周期までのIq_err_cosの積算値である。また、式(46.1)におけるIq_err_sin_i_oldは、前回の機械角周期までのIq_err_sin_iであり、式(46.2)におけるIq_err_cos_i_oldは、前回の機械角周期までのIq_err_cos_iである。
【数46】
【0118】
q軸電流誤差補正値復調器37dは、式(47.1)及び式(47.2)に従って、q軸電流誤差補正値ΔIqを算出する。これにより、q軸電流変動誤差の位相が反転して、機械角位相θmでのq軸電流誤差補正値ΔIqの瞬時値が算出される。
【数47】
【0119】
減算器37eは、式(48)に従って、d軸電流Idとd軸電流指令値Id
*との誤差であるd軸電流変動誤差Id_errを算出する。
【数48】
【0120】
d軸電流誤差成分分離器37fは、式(49.1)及び式(49.2)に従って、d軸電流変動誤差Id_errの基本波成分である2つのフーリエ係数Id_err_sin(sin成分)及びId_err_cos(cos成分)を機械角周期毎に算出する。
【数49】
【0121】
d軸電流誤差積算器37gは、式(50.1)及び式(50.2)に従って、d軸電流変動誤差Id_errのsin成分Id_err_sinと、d軸電流変動誤差Id_errのcos成分Id_err_cosとのそれぞれに補正ゲインkを乗算し、それぞれの乗算結果をId_err_sin_i_old,Id_err_cos_i_oldに加算する。式(50.1)におけるId_err_sin_iは、今回の機械角周期までのId_err_sinの積算値であり、式(50.2)におけるId_err_cos_iは、今回の機械角周期までのId_err_cosの積算値である。また、式(50.1)におけるId_err_sin_i_oldは、前回の機械角周期までのId_err_sin_iであり、式(50.2)におけるId_err_cos_i_oldは、前回の機械角周期までのId_err_cos_iである。
【数50】
【0122】
d軸電流誤差補正値復調器37hは、式(51.1)及び式(51.2)に従って、d軸電流誤差補正値ΔIdを算出する。これにより、d軸電流変動誤差の位相が反転して、機械角位相θmでのd軸電流誤差補正値ΔIdの瞬時値が生成される。
【数51】
【0123】
以上、本開示の実施例1について説明した。
【0124】
[実施例2]
本開示の実施例1は、モータMの誘起電圧の歪みが小さい場合には有効である。しかし、実際の誘起電圧波形にはモータMの構造に起因した誘起電圧歪みがあり、この誘起電圧歪みが大きい場合、モータMの電流の高調波が大きくなる。その結果、モータMの電流制御の追従性が悪くなる場合がある。そこで、実施例2では、モータMの電流制御の追従性を高めて、制御の安定性をさらに向上させる。このため、実施例2では、電圧飽和領域電圧指令値生成器14bの構成が実施例1と一部異なる。
【0125】
<電圧飽和領域電圧指令値生成器の構成>
図13は、本開示の実施例2の電圧飽和領域電圧指令値生成器14bの構成例を示す図である。
図13において、電圧飽和領域電圧指令値生成器14bが、出力電圧制限指令値生成器14b1と、誘起電圧指令値算出器14b2と、電流指令値算出器14b3と、仮電圧指令値算出器14b4と、電圧ベクトル角算出器14b5と、電圧指令値算出器14b6とを有する点は、実施例1(
図5)と同一である。実施例2では、電圧飽和領域電圧指令値生成器14bは、さらに電流比例制御器14b7と、加算器14b8,14b9と、減算器14b10,14b11とを有する。
【0126】
図13において、電圧飽和領域電圧指令値生成器14bは、実施例1と同様にして、電圧指令値算出器14b6により算出したd軸電圧指令値Vd
**を加算器14b8へ出力し、算出したq軸電圧指令値Vq
**を加算器14b9へ出力する。
【0127】
なお、実施例1では、電圧指令値算出器14b6から出力されるd軸電圧指令値、q軸電圧指令値をそれぞれVd
*、Vq
*と表記したのに対し、実施例2では、電圧指令値算出器14b6から出力されるd軸電圧指令値、q軸電圧指令値をそれぞれVd
**、Vq
**と表記する。つまり、実施例2におけるd軸電圧指令値Vd
**及びq軸電圧指令値V
**は、実施例1におけるd軸電圧指令値Vd
*及びq軸電圧指令値Vq
*に相当する。
【0128】
電流指令値算出器14b3は、算出したq軸電流指令値Iq
*及びd軸電流指令値Id
*を仮電圧指令値算出器14b4へ出力する。また、電流指令値算出器14b3は、算出したq軸電流指令値Iq
*を減算器14b11へ出力し、算出したd軸電流指令値Id
*を減算器14b10へ出力する。
【0129】
減算器14b10は、d軸電流指令値Id
*からd軸電流Idを減算することによりd軸電流誤差Id_pを算出し、算出したd軸電流誤差Id_pを電流比例制御器14b7へ出力する。減算器14b11は、q軸電流指令値Iq
*からq軸電流Iqを減算することによりq軸電流誤差Iq_pを算出し、算出したq軸電流誤差Iq_pを電流比例制御器14b7へ出力する。
【0130】
電流比例制御器14b7は、d軸電流誤差Id_pに比例定数kp_dを乗算することによりd軸補償電圧Vd_pを算出し、算出したd軸補償電圧Vd_pを加算器14b8へ出力する。また、電流比例制御器14b7は、q軸電流誤差Iq_pに比例定数kp_qを乗算することによりq軸補償電圧Vq_pを算出し、算出したq軸補償電圧Vq_pを加算器14b9へ出力する。つまり、d軸補償電圧Vd_pは“kp_d・Id_p”として算出され、q軸補償電圧Vq_pは“kp_q・Iq_p”として算出される。
【0131】
加算器14b8は、電流比例制御器14b7より出力されたd軸補償電圧Vd_pを、電圧指令値算出器14b6より出力されたd軸電圧指令値Vd
**に加算することにより、最終的なd軸電圧指令値Vd
*を算出する。また、加算器14b9は、電流比例制御器14b7より出力されたq軸補償電圧Vq_pを、電圧指令値算出器14b6より出力されたq軸電圧指令値Vq
**に加算することにより、最終的なq軸電圧指令値Vq
*を算出する。
【0132】
このように電流比例制御器14b7を追加することで、誘起電圧歪みによる電流高調波を抑制することができ、電流指令値への追従性をさらに向上させることができる。
【0134】
以上のように、本開示のモータ制御装置(実施例1のモータ制御装置100)は、電圧指令値生成器(実施例1の電圧指令値生成器14)と、制御切替判定部15とを有する。制御切替判定部15は、モータ(実施例1のモータM)の制御領域が電圧飽和領域にあるか通常制御領域にあるかを判定する。電圧指令値生成器は、速度指令値(実施例1の機械角速度指令値ωm
*)とモータの速度(実施例1の機械角推定角速度ωm)とに基づいてモータの電圧指令値(実施例1のd軸電圧指令値Vd
*及びq軸電圧指令値Vq
*)を生成する。また、電圧指令値生成器は、制御切替判定部によりモータの制御領域が電圧飽和領域にあると判定された場合に、トルク指令値(実施例1の合計トルク指令値T
*と、モータへ出力可能な最大電圧の限界値(実施例1の出力電圧制限指令値Va
*)とからモータに印加される出力電圧の電圧ベクトル角(実施例1の電圧ベクトル角δ)を求め、この電圧ベクトル角に基づいて電圧指令値を生成する。
【0135】
こうすることで、電圧振幅の変動を抑制しつつ、速度変動に対する出力トルク変動を最適化することができるため、電圧飽和領域でのトルク制御時におけるモータの制振効果の向上を図ることができる。
【0136】
また、電圧指令値算出器は、モータの定トルク曲線とモータの定誘起電圧楕円との交点に基づいてモータの電流指令値(実施例1のq軸電流指令値Iq
*及びd軸電流指令値Id
*)を算出する。
【0137】
また、電圧指令値生成器は、電流指令値に基づいてモータモデル式(実施例2の式(37.1)及び式(37.2))に従って仮電圧指令値(実施例1の仮d軸電圧指令値Vd_m及び仮q軸電圧指令値Vq_m)を算出し、仮電圧指令値に基づいて電圧ベクトル角を算出する。
【0138】
こうすることで、フィードフォワードで電圧ベクトル角を算出することができで、積分制御が不要になるため、ワインドアップ(飽和現象)の発生を防止できる。
【0139】
また、電圧指令値算出器(実施例2の電圧指令値算出器14)は、電流指令値とモータの電流(実施例2のd軸電流Id及びq軸電流Iq)との誤差(実施例2のd軸電流誤差Id_p及びq軸電流誤差Iq_p)に比例定数(実施例2の比例定数ka)を乗算することにより補償電圧(実施例2のd軸補償電圧Vd_p及びq軸補償電圧Vq_p)を算出する比例制御器(実施例2の電流比例制御器14b7)を有し、補償電圧が加算された電圧指令値を算出する。
【0140】
こうすることで、比例制御のみで誘起電圧歪等により生ずる高調波電流を抑制して電流指令値への追従性を向上させることができる。
【解決手段】モータ制御装置100において、制御切替判定部15は、モータMの制御領域が電圧飽和領域にあるか否かを判定し、電圧指令値生成器14は、速度指令値とモータの速度とに基づいてモータの電圧指令値を生成し、制御切替判定部15によりモータMの制御領域が電圧飽和領域にあると判定された場合に、合計トルク指令値とモータMへ出力可能な最大電圧の限界値からモータに印加される出力電圧の電圧ベクトル角を求め、この電圧ベクトル角に基づいて電圧指令値を生成する。