(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-11-11
(45)【発行日】2024-11-19
(54)【発明の名称】モータ制御装置
(51)【国際特許分類】
H02P 21/26 20160101AFI20241112BHJP
【FI】
H02P21/26
(21)【出願番号】P 2021126132
(22)【出願日】2021-07-30
【審査請求日】2024-05-30
(73)【特許権者】
【識別番号】000006611
【氏名又は名称】株式会社富士通ゼネラル
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】齋藤 由樹
【審査官】若林 治男
(56)【参考文献】
【文献】特開2020-096425(JP,A)
【文献】特開2008-011616(JP,A)
【文献】特開2002-051580(JP,A)
【文献】特開2010-029016(JP,A)
【文献】特開2010-011564(JP,A)
【文献】特開2019-106768(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H02P 21/26
(57)【特許請求の範囲】
【請求項1】
軸誤差に基づいてモータを制御するモータ制御装置であって、
前記モータの回転速度に応じて算出される仮の軸誤差の平均成分であるオフセット誤差に基づいて前記軸誤差を算出する軸誤差演算器、
を備えるモータ制御装置。
【請求項2】
前記軸誤差演算器は、
低速用軸誤差演算器と、高速用軸誤差演算器とを有し、
前記低速用軸誤差演算器が算出する低速用軸誤差の前記オフセット誤差である低速用オフセット誤差、または、前記高速用軸誤差演算器が算出する高速用軸誤差の前記オフセット誤差である高速用オフセット誤差に基づいて前記軸誤差を算出する、
請求項1に記載のモータ制御装置。
【請求項3】
前記軸誤差演算器は、
前記回転速度が第一所定値以上から前記第一所定値未満に変化したときは、前記低速用オフセット誤差に基づいて前記軸誤差を算出し、
前記回転速度が前記第一所定値未満から前記第一所定値以上に変化したときは、前記高速用オフセット誤差に基づいて前記軸誤差を算出する、
請求項2に記載のモータ制御装置。
【請求項4】
前記軸誤差演算器は、
前記回転速度が第一所定値以上から前記第一所定値未満に変化したときは、前記低速用オフセット誤差を所定時間かけて0に近づけるように前記低速用オフセット誤差を変化させ、
前記回転速度が前記第一所定値未満から前記第一所定値以上に変化したときは、前記高速用オフセット誤差を前記所定時間かけて0に近づけるように前記高速用オフセット誤差を変化させる、
請求項2に記載のモータ制御装置。
【請求項5】
前記軸誤差演算器は、
前記回転速度が第一所定値以上から前記第一所定値未満に変化したときは、前記低速用軸誤差の変動成分を用いて軸誤差を算出し、
前記回転速度が前記第一所定値未満から前記第一所定値以上に変化したときは、前記高速用軸誤差の変動成分を用いて軸誤差を算出する、
請求項2に記載のモータ制御装置。
【請求項6】
前記軸誤差演算器は、
前記回転速度が前記第一所定値より大きい第二所定値以上であるときは、前記低速用軸誤差演算器を停止し、
前記回転速度が前記第一所定値より小さい第三所定値未満であるときは、前記高速用軸誤差演算器を停止する、
請求項3に記載のモータ制御装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、モータ制御装置に関する。
【背景技術】
【0002】
モータ制御装置で実行されるセンサレス制御には、高速回転時に適した高速用センサレス制御と、低速回転時及び回転停止時に適した低速用センサレス制御とがあり、モータ制御装置では、モータの回転速度に応じて高速用センサレス制御と低速用センサレス制御とが切り替えられて実行される。低速用センサレス制御には低速用軸誤差演算が用いられ、高速用センサレス制御には高速用軸誤差演算が用いられる。低速用軸誤差演算では、モータの磁気突極性を利用し、高周波の回転電圧をモータに印加することによりd-q座標軸を推定する。一方で、高速用軸誤差演算では、モータの回転によって生じる拡張誘起電圧を利用し、dm-qm座標軸を推定する。
【0003】
このように低速用軸誤差演算と高速用軸誤差演算とでは推定される座標軸が異なるため、低速用センサレス制御と高速用センサレス制御との切替時には、一時的にd-q座標軸の軸誤差の推定結果とdm-qm座標軸の軸誤差の推定結果とを加重平均することにより座標軸の推定が行われている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、トルク制御を行う場合、低速用軸誤差演算で算出される軸誤差に基づく最適なトルク制御位相と、高速用軸誤差演算で算出される軸誤差に基づく最適なトルク制御位相とは異なる。このため、上記のような軸誤差の加重平均を用いた座標軸の推定では、最適なトルク制御位相でトルク制御を行うことができず、モータの振動や騒音の増加、モータ制御の不安定化を招いてしまう。
【0006】
そこで、本開示では、トルク制御時において、高速用センサレス制御と低速用センサレス制御とが切り替わるときに、モータの振動や騒音を増加させることなくモータを安定して駆動することが可能な技術を提案する。
【課題を解決するための手段】
【0007】
本開示のモータ制御装置は、軸誤差に基づいてモータを制御するモータ制御装置であって、軸誤差演算器を有する。前記軸誤差演算器は、前記モータの回転速度に応じて算出される仮の軸誤差の平均成分であるオフセット誤差に基づいて前記軸誤差を算出する。
【発明の効果】
【0008】
本開示によれば、センサレス制御によるトルク制御を行う場合、高速用センサレス制御と低速用センサレス制御とが切り替わるときに、モータの振動や騒音を増加させることなくモータを安定して駆動できる。
【図面の簡単な説明】
【0009】
【
図1】
図1は、本開示の実施例1のモータ制御装置の構成例を示す図である。
【
図2】
図2は、本開示の実施例1の高周波電圧指令値生成器の構成例を示す図である。
【
図3】
図3は、本開示の実施例1の軸誤差演算器の構成例を示す図である。
【
図4】
図4は、本開示の実施例1の低速用軸誤差演算器の構成例を示す図である。
【
図5】
図5は、本開示の実施例1の同相鏡相電流ベクトル生成器の構成例を示す図である。
【
図6】
図6は、本開示の実施例1の軸誤差演算方法の判定例を示す図である。
【
図7】
図7は、本開示の実施例1の軸誤差演算方法の判定例を示す図である。
【
図8】
図8は、本開示の実施例1の演算方法OM2が選択されている場合の高速用軸誤差及び低速用軸誤差の各状態の一例を示す図である。
【
図9】
図9は、本開示の実施例1の下降時動作例を示す図である。
【
図10】
図10は、本開示の実施例1の演算方法OM4が選択されている場合の高速用軸誤差及び低速用軸誤差の各状態の一例を示す図である。
【
図11】
図11は、本開示の実施例1の上昇時動作例を示す図である。
【
図12】
図12は、本開示の実施例2のモータ制御装置の構成例を示す図である。
【
図13】
図13は、本開示の実施例2の軸誤差演算器の構成例を示す図である。
【
図14】
図14は、本開示の実施例2の軸誤差演算方法の判定例を示す図である。
【
図15】
図15は、本開示の実施例2の軸誤差演算方法の判定例を示す図である。
【発明を実施するための形態】
【0010】
以下、本開示の実施例を図面に基づいて説明する。以下の実施例において、同一の部位には同一の符号を付し、重複する説明を省略することがある。
【0011】
本開示では、負荷トルク変動を有する圧縮機を駆動する永久磁石同期モータ(Permanent Magnet Synchronous Motor:PMSM)のトルク制御を位置センサレスベクトル制御により行うモータ制御装置を一例に挙げて説明する。しかし、開示の技術は、モータのトルク制御を行うモータ制御装置に広く適用可能である。
【0012】
[実施例1]
<モータ制御装置の構成>
図1は、本開示の実施例1のモータ制御装置の構成例を示す図である。
図1において、モータ制御装置100aは、減算器11,16,18,19と、速度制御器12と、加算器13,21,22,44,45と、電流指令値算出器14と、補正トルク生成器15と、電流制御器20と、d-q/u,v,w変換器23と、PWM(Pulse Width Modulation)変調器24と、IPM(Intelligent Power Module)25とを有する。IPM25は、モータMに接続される。モータMの一例としてPMSMが挙げられる。
【0013】
また、モータ制御装置100aは、シャント抵抗26と、電流センサ27a,27bと、3φ電流算出器28とを有する。なお、モータ制御装置100aは、シャント抵抗26、または、電流センサ27a,27bの何れか一方を有していれば良い。
【0014】
また、モータ制御装置100aは、u,v,w/d-q変換器29と、軸誤差演算器30と、PLL(Phase Locked Loop)制御器31と、位置推定器32と、1/Pn処理器33と、非干渉化制御器36とを有する。
【0015】
また、モータ制御装置100aは、高周波除去フィルタ41,42と、高周波電圧指令値生成器43と、Pn処理器46とを有する。
【0016】
減算器11は、モータ制御装置100aの外部(例えば、上位のコントローラ)からモータ制御装置100aへ入力される機械角速度指令値ωm*から、1/Pn処理器33より出力される現在の推定角速度である機械角推定角速度ωmを減算することにより角速度誤差Δωを算出する。
減算器16は、1/Pn処理器33より出力される現在の推定角速度である機械角推定角速度ωmから、モータ制御装置100aの外部(例えば、上位のコントローラ)からモータ制御装置100aへ入力される機械角速度指令値ωm*を減算することにより機械角推定角速度変動Δωmを算出する。なお、機械角推定角速度変動Δωmは、角速度誤差Δωと正負の符号が異なるだけである。
【0017】
速度制御器12は、角速度誤差Δωの平均が0に近づくような平均トルク指令値To*を生成する。
加算器13は、速度制御器12より出力された平均トルク指令値To*と、補正トルク生成器15より出力された補正トルク指令値ΔTとを加算することにより合計トルク指令値T*を算出する。
補正トルク生成器15は、モータ制御装置100a内に記憶されモータの振動が許容できる速度変動範囲である速度変動許容値|Δωm|*、減算器16より出力された機械角推定角速度変動Δωm、及び、位置推定器32より出力された機械角位相θmに基づいて、周期的な速度変動である機械角推定角速度変動Δωmを速度変動許容値|Δωm|*以下に抑制するための補正トルク指令値ΔTを生成する。
【0018】
電流指令値算出器14は、合計トルク指令値T*をd-q座標軸上のd軸電流指令値Id*とq軸電流指令値Iq*とに分配する。
【0019】
減算器18は、高周波除去フィルタ41より出力される高周波除去d軸電流値Idmをd軸電流指令値Id*から減算することにより、d軸電流指令値Id*と高周波除去d軸電流値Idmとの誤差であるd軸電流誤差Id_diffを算出する。減算器19は、高周波除去フィルタ42より出力される高周波除去q軸電流値Iqmをq軸電流指令値Iq*から減算することにより、q軸電流指令値Iq*と高周波除去q軸電流値Iqmとの誤差であるq軸電流誤差Iq_diffを算出する。
【0020】
電流制御器20は、d軸電流誤差Id_diffに基づいてPI(Proportional Integral)制御を行うことにより仮d軸電圧指令値Vdtを算出する。また、電流制御器20は、q軸電流誤差Iq_diffに基づいてPI制御を行うことにより仮q軸電圧指令値Vqtを算出する。
【0021】
非干渉化制御器36は、Pn処理器46より出力される電気角速度指令値ωe*と、電流指令値算出器14より出力されるd軸電流指令値Id*とに基づいて、仮d軸電圧指令値Vdtを補償するためのd軸非干渉化電圧指令値Vdaを生成する。また、非干渉化制御器36は、Pn処理器46より出力される電気角速度指令値ωe*と、電流指令値算出器14より出力されるq軸電流指令値Iq*とに基づいて、仮q軸電圧指令値Vqtを補償するためのq軸非干渉化電圧指令値Vqaを生成する。d軸非干渉化電圧指令値Vda及びq軸非干渉化電圧指令値Vqaは、d-q座標軸間の干渉をフィードフォワードでキャンセルするための非干渉化補償値である。
【0022】
加算器21は、d軸非干渉化電圧指令値Vdaを仮d軸電圧指令値Vdtに加算することによりd軸駆動用電圧指令値Vdmを算出する。加算器22は、q軸非干渉化電圧指令値Vqaを仮q軸電圧指令値Vqtに加算することによりq軸駆動用電圧指令値Vqmを算出する。これにより、d-q座標軸間の干渉がフィードフォワードでキャンセルされたd軸駆動用電圧指令値Vdm及びq軸駆動用電圧指令値Vqmが算出される。
【0023】
加算器44は、高周波電圧指令値生成器43より出力されるd軸高周波電圧指令値Vdh*をd軸駆動用電圧指令値Vdmに加算することによりd軸電圧指令値Vd*を算出する。加算器45は、高周波電圧指令値生成器43より出力されるq軸高周波電圧指令値Vqh*をq軸駆動用電圧指令値Vqmに加算することによりq軸電圧指令値Vq*を算出する。
【0024】
d-q/u,v,w変換器23は、加算器44,45より出力される2相のd軸電圧指令値Vd*及びq軸電圧指令値Vq*を、位置推定器32より出力される電気角位相θeに基づいて、3相のU相出力電圧指令値Vu*、V相出力電圧指令値Vv*及びW相出力電圧指令値Vw*へ変換する。位置推定器32より出力される電気角位相θeは、モータMの現在のロータ位置を示す。
【0025】
PWM変調器24は、U相出力電圧指令値Vu*、V相出力電圧指令値Vv*、W相出力電圧指令値Vw*と、PWMキャリア信号とに基づいて、6相のPWM信号を生成し、生成した6相のPWM信号をIPM25へ出力する。
【0026】
IPM25は、PWM変調器24より出力される6相のPWM信号に基づいて、直流電圧VdcからU相、V相、W相の3相の交流電圧を生成し、生成した3相それぞれの交流電圧をモータMのU相、V相、W相へ印加する。
【0027】
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へ出力する。
【0028】
u,v,w/d-q変換器29は、位置推定器32より出力される電気角位相θeに基づいて、3相のU相電流値Iu、V相電流値Iv、W相電流値Iwを、2相のd軸電流値Id及びq軸電流値Iqへ変換する。
【0029】
高周波除去フィルタ41は、d軸電流値Idの高周波成分をd軸電流値Idから除去することにより、トルク発生に寄与する駆動成分である高周波除去d軸電流値Idmをd軸電流値Idから抽出する。また、高周波除去フィルタ42は、q軸電流値Iqの高周波成分をq軸電流値Iqから除去することにより、トルク発生に寄与する駆動成分である高周波除去q軸電流値Iqmをq軸電流値Iqから抽出する。高周波除去フィルタ41,42は、例えば、バンドストップフィルタF(s)により実現される。モータ制御装置100aの外部(例えば、上位のコントローラ)からモータ制御装置100aへ入力される高周波角周波数指令値ωh
*をバンドストップの中心周波数とするバンドストップフィルタF(s)は式(1)に従って実現可能である。式(1)において、“s”はラプラス演算子であり、“d”はノッチの深さ、“ζ”はノッチの帯域幅を表す所定のフィルタ係数である。
【数1】
【0030】
軸誤差演算器30は、d軸電流値Idと、q軸電流値Iqと、d軸電圧指令値Vd*と、q軸電圧指令値Vq*と、電気角推定角速度ωeと、高周波角周波数指令値ωh*と、機械角速度指令値ωm*とに基づいて軸誤差Δθ(推定された回転軸と実際の回転軸との差)を算出する。また、判定結果信号JRを高周波電圧指令値生成器43に出力する。
【0031】
PLL制御器31は、軸誤差Δθに基づいて、モータMの現在の推定角速度である電気角推定角速度ωeを算出する。
【0032】
位置推定器32は、電気角推定角速度ωeに基づいて電気角位相θeを推定する。また、位置推定器32は、推定した電気角位相θeをモータMの極対数Pnで除算することにより機械角位相θmを算出する。
【0033】
1/Pn処理器33は、電気角推定角速度ωeをモータMの極対数Pnで除算することにより機械角推定角速度ωmを算出する。
【0034】
Pn処理器46は、機械角速度指令値ωm*にモータMの極対数Pnを乗算することに電気角速度指令値ωe*を算出する。
【0035】
高周波電圧指令値生成器43は、判定結果信号JRと、高周波角周波数指令値ωh*と、モータ制御装置100aの外部(例えば、上位のコントローラ)からモータ制御装置100aへ入力される高周波電圧振幅指令値Vh*とに基づいて、d軸高周波電圧指令値Vdh*及びq軸高周波電圧指令値Vqh*を生成する。
【0036】
<高周波電圧指令値生成器の構成>
図2は、本開示の実施例1の高周波電圧指令値生成器の構成例を示す図である。
図2において、高周波電圧指令値生成器43は、位相発生器43aと、余弦正弦信号発生器43bと、乗算器43cとを有する。また、高周波電圧指令値生成器43は、後述する判定結果信号JRが示す演算方法に基づいて、d軸高周波電圧指令値Vdh
*及びq軸高周波電圧指令値Vqh
*を生成するか否かを決定する。
【0037】
位相発生器43aは、“0≦θh≦2π”の範囲で高周波角周波数指令値ωh*を積分することにより、高周波電圧ベクトルの位相である高周波位相θhを生成する。
【0038】
余弦正弦信号発生器43bは、式(2)に従って、高周波位相θhの余弦・正弦値u(θh)を発生する。
【数2】
【0039】
乗算器43cは、余弦・正弦値u(θh)と高周波電圧振幅指令値Vh
*とに基づいて式(3)に従ってd軸高周波電圧指令値Vdh
*及びq軸高周波電圧指令値Vqh
*を生成する。
【数3】
【0040】
<軸誤差演算器の構成>
図3は、本開示の実施例1の軸誤差演算器の構成例を示す図である。
図3において、軸誤差演算器30は、演算方法判定器30aと、低速用軸誤差演算器30bと、低速用オフセット誤差算出器30cと、高速用軸誤差演算器30dと、高速用オフセット誤差算出器30eと、オフセット誤差補正器30fと、軸誤差決定器30gとを有する。
【0041】
上述の通り、軸誤差の演算方法(以下では「軸誤差演算方法」と呼ぶことがある)には、モータMの高速回転時に適した高速用軸誤差演算と、モータMの低速回転時に適した低速用軸誤差演算とがある。演算方法判定器30aは、機械角速度指令値ωm*に基づいて軸誤差演算方法を判定し、軸誤差演算方法の判定結果を示す信号(以下では「判定結果信号」と呼ぶことがある)を高周波電圧指令値生成器43、低速用軸誤差演算器30b、低速用オフセット誤差算出器30c、高速用軸誤差演算器30d、高速用オフセット誤差算出器30e、オフセット誤差補正器30f、及び、軸誤差決定器30gへ出力する。
【0042】
低速用軸誤差演算器30bは、モータMの磁気突極性を利用し、高周波角周波数指令値ωh*と、d軸電流値Idと、q軸電流値Iqとに基づいて、低速用軸誤差Δθlowを算出する。低速用軸誤差Δθlowは、軸誤差決定器30gによって軸誤差Δθが決定される前に算出される仮の軸誤差(第一の仮の軸誤差)である。
【0043】
低速用オフセット誤差算出器30cは、低速用軸誤差Δθlowの平均成分(つまり、低速用軸誤差Δθlowに含まれる定常的な誤差(以下では「低速用オフセット誤差」と呼ぶことがある))の大きさを示す低速用軸誤差オフセット値Δθlow_offsetを算出する。低速用軸誤差Δθlowは、0から常に低速用オフセット誤差だけずれた値となる。低速用オフセット誤差算出器30cは、例えばIIR(Infinite Impulse Response)フィルタを用いて、低速用軸誤差Δθlowの変動成分(以下では「低速用変動成分」と呼ぶことがある)を低速用軸誤差Δθlowから除去することにより低速用軸誤差オフセット値Δθlow_offsetを算出する。このように、低速用変動成分を用いて低速用軸誤差オフセット値Δθlow_offsetを算出することにより、低速用軸誤差オフセット値Δθlow_offsetを精度良く算出することができる。
【0044】
高速用軸誤差演算器30dは、モータMの回転によって生じる拡張誘起電圧を利用し、電気角推定角速度ωeと、d軸電流値Idと、q軸電流値Iqと、d軸電圧指令値Vd
*と、q軸電圧指令値Vq
*とに基づいて、式(4)及び式(5)に従って、高速用軸誤差Δθhighを算出する。高速用軸誤差Δθhighは、軸誤差決定器30gによって軸誤差Δθが決定される前に算出される仮の軸誤差(第二の仮の軸誤差)である。また、式(4)において、“R”はモータMの巻線抵抗値、“Lq”はモータMのq軸インダクタンス値である。
【数4】
【数5】
【0045】
高速用オフセット誤差算出器30eは、高速用軸誤差Δθhighの平均成分(つまり、高速用軸誤差Δθhighに含まれる定常的な誤差(以下では「高速用オフセット誤差」と呼ぶことがある))の大きさ示す高速用軸誤差オフセット値Δθhigh_offsetを算出する。高速用軸誤差Δθhighは、0から常に高速用オフセット誤差だけずれた値となる。高速用オフセット誤差算出器30eは、例えばIIRフィルタを用いて、高速用軸誤差Δθhighの変動成分(以下では「高速用変動成分」と呼ぶことがある)を高速用軸誤差Δθhighから除去することにより高速用軸誤差オフセット値Δθhigh_offsetを算出する。このように、高速用変動成分を用いて高速用軸誤差オフセット値Δθhigh_offsetを算出することにより、高速用軸誤差オフセット値Δθhigh_offsetを精度良く算出することができる。
【0046】
オフセット誤差補正器30fは、低速用軸誤差オフセット値Δθlow_offset及び高速用軸誤差オフセット値Δθhigh_offsetを所定時間かけて0に近づけるようなオフセット誤差補正値Δθhoseiを算出する。
【0047】
軸誤差決定器30gは、演算方法判定器30aでの判定結果に従って、軸誤差演算器30から出力する軸誤差Δθを決定する。
【0048】
<低速用軸誤差演算器の構成>
図4は、本開示の実施例1の低速用軸誤差演算器の構成例を示す図である。
図4において、低速用軸誤差演算器30bは、同相鏡相電流ベクトル生成器30b1と、鏡相推定器30b2とを有する。
図5は、本開示の実施例1の同相鏡相電流ベクトル生成器の構成例を示す図である。
図5において、同相鏡相電流ベクトル生成器30b1は、符号反転器b11と、D因子フィルタb12,b13とを有する。
【0049】
図5において、符号反転器b11は、高周波角周波数指令値ωh
*の符号を反転し、符号反転後の高周波角周波数指令値-ωh
*をD因子フィルタb12へ出力する。
【0050】
D因子フィルタb12,b13は正相成分と逆相成分を分離・抽出するフィルタであり、D因子フィルタb12,b13におけるD因子は、単位行列Iと交代行列Jとラプラス演算子sとを用いた式(6)によって定義される。
【数6】
【0051】
D因子フィルタb12は、符号反転後の高周波角周波数指令値-ωh*に基づいて、d軸電流値Id及びq軸電流値Iqに含まれる同相電流ベクトルIhpを検出する。同相電流ベクトルIhpは、d軸高周波電圧指令値Vdh*及びq軸高周波電圧指令値Vqh*の印加に応じて発生する高周波磁束ベクトルと同方向へ回転する。
【0052】
D因子フィルタb13は、高周波角周波数指令値ωh*に基づいて、d軸電流値Id及びq軸電流値Iqに含まれる鏡相電流ベクトルIhnを検出する。鏡相電流ベクトルIhnは、d軸高周波電圧指令値Vdh*及びq軸高周波電圧指令値Vqh*の印加に応じて発生する高周波磁束ベクトルと逆方向へ回転する。
【0053】
鏡相推定器30b2は、同相電流ベクトルIhpと鏡相電流ベクトルIhnとに基づいて、式(7)及び式(8)に従って低速用軸誤差Δθlowを算出する。つまり、鏡相推定器30b2は、ノルムを同一化した同相電流ベクトルIhpと鏡相電流ベクトルIhnとのベクトル加算によって得られる合成ベクトルの逆正接を低速用軸誤差Δθlowとして算出する。
【数7】
【数8】
【0054】
<モータ制御装置の動作>
軸誤差演算方法として、以下の条件C1~C5の5つの条件にそれぞれ対応する演算方法OM1~OM5の5つの演算方法が予め準備される。演算方法判定器30aは、機械角速度指令値ωm*に基づいて、演算方法OM1~OM5のうちの何れか一つを軸誤差演算方法とし選択する。
【0055】
条件C1は“ω1≦ωm*”であり、演算方法判定器30aは、機械角速度指令値ωm*が条件C1に該当するときは、演算方法OM1を軸誤差演算方法に決定し、演算方法OM1を示す判定結果信号JRを出力する。
【0056】
条件C2は“ω2≦ωm*<ω1”、かつ、“条件C3に該当しない”であり(具体的には、“ωm*がω1以上からω1未満に変化し、ω2≦ωm*<ω1である時、”又は、“ωm*がω2未満からω2以上に変化した時点P2から所定時間PTが経過した後”)、演算方法判定器30aは、機械角速度指令値ωm*が条件C2に該当するときは、演算方法OM2を軸誤差演算方法に決定し、演算方法OM2を示す判定結果信号JRを出力する。
【0057】
条件C3は“ωm*がω2以上からω2未満に変化した時点P1から所定時間PTが経過するまで”、及び、“ωm*がω2未満からω2以上に変化した時点P2から所定時間PTが経過するまで”であり、演算方法判定器30aは、機械角速度指令値ωm*が条件C3のいずれかに該当するときは、演算方法OM3を軸誤差演算方法に決定し、演算方法OM3を示す判定結果信号JRを出力する。ここで、所定時間PTは、軸誤差の急変を抑制しつつ軸誤差演算方法を切り替えるのに十分な時間であり、例えば500msである。
【0058】
条件C4は“ω3≦ωm*<ω2”、かつ、“条件C3に該当しない”であり(具体的には、“ωm*がω3未満からω3以上に変化し、ω3≦ωm*<ω2である時、”又は、“ωm*がω2以上からω2未満に変化した時点P1から所定時間PTが経過した後”)、演算方法判定器30aは、機械角速度指令値ωm*が条件C4に該当するときは、演算方法OM4を軸誤差演算方法に決定し、演算方法OM4を示す判定結果信号JRを出力する。
【0059】
条件C5は“ωm*<ω3”であり、演算方法判定器30aは、機械角速度指令値ωm*が条件C5に該当するときは、演算方法OM5を軸誤差演算方法に決定し、演算方法OM5を示す判定結果信号JRを出力する。
【0060】
条件C1~C5におけるω1,ω2,ω3は何れも所定値である。所定値ω1,ω2,ω3の大きさは“ω3<ω2<ω1”であり、例えば、ω1は10rps、ω2は8rps、ω3は6rpsである。ここで、ω2はモータの回転速度の速度域を高速域と低速域に区切る値であり、“ω2≦ωm*”の速度域は高速域であり、“ωm*<ω2”の速度域は低速域である。また、ω1,ω3は軸誤差演算方法の切り替えに備えて演算方法OM2,OM4である時間が十分に確保できるように、モータの1秒あたりの回転速度の変化量を考慮して定められる。例えば、演算方法OM1,OM2,OM3の順に遷移するとき、演算方法OM2である時間が2秒必要である場合であって、モータの回転速度の変化量が1秒あたり1rpsである場合、ω1-ω2≧2rpsであれば、ω1からω2に最短で変化した場合であっても、演算方法OM2である時間を2秒以上確保することができる。演算方法OM2,OM4に関して、確保すべき時間については後述する。
【0061】
図6及び
図7は、本開示の実施例1の軸誤差演算方法の判定例を示す図である。
図6には機械角速度指令値ωm
*が下降していく場合の判定例を示し、
図7には機械角速度指令値ωm
*が上昇していく場合の判定例を示す。
【0062】
図6に示すように、機械角速度指令値ωm
*が所定値ω1以上から所定値ω3未満へ徐々に下降していく場合には、機械角速度指令値ωm
*は各条件に条件C1,C2,C3,C4,C5の順で該当するため、軸誤差演算方法は、演算方法OM1,OM2,OM3,OM4,OM5の順に遷移する。
【0063】
また、
図7に示すように、機械角速度指令値ωm
*が所定値ω3未満から所定値ω1以上へ徐々に上昇していく場合には、機械角速度指令値ωm
*は各条件に条件C5,C4,C3,C2,C1の順で該当するため、軸誤差演算方法は、演算方法OM5,OM4,OM3,OM2,OM1の順に遷移する。
【0064】
以下、演算方法OM1,OM2,OM3,OM4,OM5の各軸誤差演算方法におけるモータ制御装置の動作について説明する。
【0065】
<演算方法OM1>
判定結果信号JRが演算方法OM1を示す場合、高周波電圧指令値生成器43は、d軸高周波電圧指令値Vdh
*及びq軸高周波電圧指令値Vqh
*を生成せず、式(9)に従ってd軸高周波電圧指令値Vdh
*及びq軸高周波電圧指令値Vqh
*を0[v]にする。
【数9】
【0066】
また、判定結果信号JRが演算方法OM1を示す場合、低速用軸誤差演算器30bは、低速用軸誤差Δθlowを算出せず、低速用オフセット誤差算出器30cは、低速用軸誤差オフセット値Δθlow_offsetを算出しない。つまり、軸誤差演算器30は、“ω1≦ωm*”であるときは、低速用オフセット誤差算出器30cを停止する。このように低速用オフセット誤差算出器30cを停止することにより、軸誤差演算器30における処理負荷が軽減される。
【0067】
また、判定結果信号JRが演算方法OM1を示す場合、高速用軸誤差演算器30dは、高速用軸誤差Δθhighを算出し、高速用オフセット誤差算出器30eは、高速用軸誤差オフセット値Δθhigh_offsetを算出しない。
【0068】
また、判定結果信号JRが演算方法OM1を示す場合、オフセット誤差補正器30fは、オフセット誤差補正値Δθhoseiを算出しない。
【0069】
また、判定結果信号JRが演算方法OM1を示す場合、軸誤差決定器30gは、式(10)に従って、高速用軸誤差Δθhighを軸誤差Δθとして決定する。
【数10】
【0070】
<演算方法OM2>
判定結果信号JRが演算方法OM2を示す場合、高周波電圧指令値生成器43は、式(3)に従ってd軸高周波電圧指令値Vdh*及びq軸高周波電圧指令値Vqh*を生成する。
【0071】
また、判定結果信号JRが演算方法OM2を示す場合、低速用軸誤差演算器30bは、低速用軸誤差Δθlowを算出し、低速用オフセット誤差算出器30cは、低速用軸誤差オフセット値Δθlow_offsetを算出する。このとき、演算方法がOM3に切り替わる場合に備えて、演算方法がOM3に切り替わるまでに、低速用軸誤差演算器30b及び低速用オフセット誤差算出器30cの算出結果が安定している必要がある。低速用軸誤差演算器30bのD因子フィルタb12,b13、低速用オフセット誤差算出器30cに使用されるフィルタ(例えばIIRフィルタ)の算出結果は、フィルタの種類やフィルタ定数等によって収束するまでの時間が変化する。これを踏まえて、演算方法OM2である時間は、各フィルタの算出結果が収束するのに十分な時間を確保する必要がある。
【0072】
また、判定結果信号JRが演算方法OM2を示す場合、高速用軸誤差演算器30dは、高速用軸誤差Δθhighを算出し、高速用オフセット誤差算出器30eは、高速用軸誤差オフセット値Δθhigh_offsetを算出しない。
【0073】
また、判定結果信号JRが演算方法OM2を示す場合、オフセット誤差補正器30fは、オフセット誤差補正値Δθhoseiを算出しない。
【0074】
また、判定結果信号JRが演算方法OM2を示す場合、軸誤差決定器30gは、式(10)に従って、高速用軸誤差Δθhighを軸誤差Δθとして決定する。
【0075】
<演算方法OM3>
判定結果信号JRが演算方法OM3を示す場合、高周波電圧指令値生成器43は、式(3)に従ってd軸高周波電圧指令値Vdh*及びq軸高周波電圧指令値Vqh*を生成する。
【0076】
また、判定結果信号JRが演算方法OM3を示す場合、低速用軸誤差演算器30bは、低速用軸誤差Δθlowを算出し、低速用オフセット誤差算出器30cは、低速用軸誤差オフセット値Δθlow_offsetを算出する。
【0077】
また、判定結果信号JRが演算方法OM3を示す場合、高速用軸誤差演算器30dは、高速用軸誤差Δθhighを算出し、高速用オフセット誤差算出器30eは、高速用軸誤差オフセット値Δθhigh_offsetを算出する。
【0078】
また、判定結果信号JRが演算方法OM3を示す場合、オフセット誤差補正器30fは、オフセット誤差補正値Δθhoseiを算出する。
【0079】
また、判定結果信号JRが演算方法OM3を示す場合、軸誤差決定器30gは、式(11)または式(12)に従って軸誤差Δθを決定する。軸誤差決定器30gは、判定結果信号JRが示す演算方法が演算方法OM2から演算方法OM3に遷移した場合(
図6に示す遷移の場合)は式(11)に従って軸誤差Δθを決定する。式(11)に従って軸誤差Δθが決定されることにより、低速用軸誤差Δθlowに含まれる低速用オフセット誤差が補正され、低速用軸誤差Δθlowに含まれる低速用変動成分が軸誤差Δθとして採用されることになる。また、軸誤差決定器30gは、判定結果信号JRが示す演算方法が演算方法OM4から演算方法OM3に遷移した場合(
図7に示す遷移の場合)は式(12)に従って軸誤差Δθを決定する。式(12)に従って軸誤差Δθが決定されることにより、高速用軸誤差Δθhighに含まれる高速用オフセット誤差が補正され、高速用軸誤差Δθhighに含まれる高速用変動成分が軸誤差Δθとして採用されることになる。
【数11】
【数12】
【0080】
<演算方法OM4>
演算方法OM4を示す判定結果信号JRが演算方法判定器30aより出力された場合、高周波電圧指令値生成器43は、式(3)に従ってd軸高周波電圧指令値Vdh*及びq軸高周波電圧指令値Vqh*を生成する。
【0081】
また、判定結果信号JRが演算方法OM4を示す場合、低速用軸誤差演算器30bは、低速用軸誤差Δθlowを算出し、低速用オフセット誤差算出器30cは、低速用軸誤差オフセット値Δθlow_offsetを算出しない。
【0082】
また、判定結果信号JRが演算方法OM4を示す場合、高速用軸誤差演算器30dは、高速用軸誤差Δθhighを算出し、高速用オフセット誤差算出器30eは、高速用軸誤差オフセット値Δθhigh_offsetを算出する。このとき、演算方法がOM3に切り替わる場合に備えて、演算方法がOM3に切り替わるまでに、高速用オフセット誤差算出器30eの算出結果が安定している必要がある。高速用オフセット誤差算出器30eに使用されるフィルタ(例えばIIRフィルタ)の算出結果は、フィルタの種類やフィルタ定数等によって収束するまでの時間が変化する。これを踏まえて、演算方法OM4である時間は、各フィルタの算出結果が収束するのに十分な時間を確保する必要がある。
【0083】
また、判定結果信号JRが演算方法OM4を示す場合、オフセット誤差補正器30fは、オフセット誤差補正値Δθhoseiを算出しない。
【0084】
また、判定結果信号JRが演算方法OM4を示す場合、軸誤差決定器30gは、式(13)に従って、低速用軸誤差Δθlowを軸誤差Δθとして決定する。
【数13】
【0085】
<演算方法OM5>
判定結果信号JRが演算方法OM5を示す場合、高周波電圧指令値生成器43は、式(3)に従ってd軸高周波電圧指令値Vdh*及びq軸高周波電圧指令値Vqh*を生成する。
【0086】
また、判定結果信号JRが演算方法OM5を示す場合、低速用軸誤差演算器30bは、低速用軸誤差Δθlowを算出し、低速用オフセット誤差算出器30cは、低速用軸誤差オフセット値Δθlow_offsetを算出しない。
【0087】
また、判定結果信号JRが演算方法OM5を示す場合、高速用軸誤差演算器30dは、高速用軸誤差Δθhighを算出せず、高速用オフセット誤差算出器30eは、高速用軸誤差オフセット値Δθhigh_offsetを算出しない。つまり、軸誤差演算器30は、“ωm*<ω3”であるときは、高速用オフセット誤差算出器30eを停止する。このように高速用オフセット誤差算出器30eを停止することにより、軸誤差演算器30における処理負荷が軽減される。
【0088】
また、判定結果信号JRが演算方法OM5を示す場合、オフセット誤差補正器30fは、オフセット誤差補正値Δθhoseiを算出しない。
【0089】
また、判定結果信号JRが演算方法OM5を示す場合、軸誤差決定器30gは、式(13)に従って、低速用軸誤差Δθlowを軸誤差Δθとして決定する。
【0090】
次いで、機械角速度指令値ωm*の下降時において軸誤差演算方法が演算方法OM2,OM3,OM4の順に変化するときのモータ制御装置の動作例(以下では「下降時動作例」と呼ぶことがある)と、機械角速度指令値ωm*の上昇時において軸誤差演算方法が演算方法OM4。OM3,OM2の順に変化するときのモータ制御装置の動作例(以下では「上昇時動作例」と呼ぶことがある)とについて説明する。
【0091】
<下降時動作例>
図8は、本開示の実施例1の演算方法OM2が選択されている場合の高速用軸誤差及び低速用軸誤差の各状態の一例を示す図である。
【0092】
軸誤差演算方法が演算方法OM2である状態では、高速用軸誤差演算器30dによって算出された高速用軸誤差Δθhighを用いてモータMの制御が行われているため、高速用軸誤差Δθhighが0になるようにモータMが制御される。よって、軸誤差演算方法に演算方法OM2が選択されているときは、
図8に示すように、高速用軸誤差Δθhighはモータのトルク変動によって0を中心に振動しており、高速用オフセット誤差(高速用軸誤差オフセット値Δθhigh_offset)がほぼ0になっている一方で、低速用オフセット誤差(低速用軸誤差オフセット値Δθlow_offset)が低速用軸誤差Δθlowに現れる。
【0093】
そこで、オフセット誤差補正器30fは、まず、演算方法判定器30aによって軸誤差演算方法が演算方法OM2から演算方法OM3に切り替えられた時点P1で、式(14)に従って、オフセット誤差補正値Δθhoseiに低速用軸誤差オフセット値Δθlow_offsetの正負の符号を反転させた値を代入する。
【数14】
【0094】
そして、オフセット誤差補正器30fは、時点P1から所定時間PTが経過するまで(つまり、軸誤差演算方法が演算方法OM3である間)、式(15),(16)に従って、オフセット誤差補正値Δθhoseiを算出する。式(15)における“fc”はモータ制御装置100aのキャリア周波数であるため、式(15)によって算出される“α”は、1キャリアあたりの軸誤差Δθの補償量に相当する。
【数15】
【数16】
【0095】
式(15),(16)に従ってオフセット誤差補正値Δθhoseiが算出されることにより、
図9に示すように、低速用軸誤差Δθlowに含まれる低速用オフセット誤差(低速用軸誤差オフセット値Δθlow_offset)は時点P1から時間の経過に伴って徐々に減少し、時点P1から所定時間PTをかけて消失する。
図9は、本開示の実施例1の下降時動作例を示す図である。
【0096】
このように、演算方法OM2と演算方法OM4との間に演算方法OM3を設け、時点P1において、低速用軸誤差Δθlowに含まれる低速用オフセット誤差が補正され、低速用軸誤差Δθlowに含まれる低速用変動成分が軸誤差Δθとして採用される。これにより、低速用変動成分に基づく最適なトルク制御位相でトルク制御できるとともに、軸誤差演算方法が演算方法OM2から演算方法OM4へと遷移する際の低速用軸誤差Δθlowの平均成分(つまり、低速用オフセット誤差)の急変を抑制することができる。その結果、軸誤差Δθを用いて推定される速度の急変を抑制することができるため、機械角速度指令値ωm*の下降時での軸誤差演算方法の切替を安定して行うことが可能になる。
【0097】
<上昇時動作例>
図10は、本開示の実施例1の演算方法OM4が選択されている場合の高速用軸誤差及び低速用軸誤差の各状態の一例を示す図である。
【0098】
軸誤差演算方法が演算方法OM4である状態では、低速用軸誤差演算器30bによって算出された低速用軸誤差Δθlowを用いてモータMの制御が行われているため、低速用軸誤差Δθlowが0になるようにモータMが制御される。よって、軸誤差演算方法に演算方法OM4が選択されているときは、
図10に示すように、低速用軸誤差Δθlowはモータのトルク変動によって0を中心に振動しており、低速用オフセット誤差(低速用軸誤差オフセット値Δθlow_offset)がほぼ0になっている一方で、高速用オフセット誤差(高速用軸誤差オフセット値Δθhigh_offset)が高速用軸誤差Δθhighに現れる。
【0099】
そこで、オフセット誤差補正器30fは、まず、演算方法判定器30aによって軸誤差演算方法が演算方法OM4から演算方法OM3に切り替えられた時点P2で、式(17)に従って、オフセット誤差補正値Δθhoseiに高速用軸誤差オフセット値Δθhigh_offsetの正負の符号を反転させた値を代入する。
【数17】
【0100】
そして、オフセット誤差補正器30fは、時点P2から所定時間PTが経過するまで(つまり、軸誤差演算方法が演算方法OM3である間)、式(18),(19)に従って、オフセット誤差補正値Δθhoseiを算出する。式(18)における“fc”はモータ制御装置100aのキャリア周波数であるため、式(18)によって算出される“β”は、1キャリアあたりの軸誤差Δθの補償量に相当する。
【数18】
【数19】
【0101】
式(18),(19)に従ってオフセット誤差補正値Δθhoseiが算出されることにより、
図11に示すように、高速用軸誤差Δθhighに含まれる高速用オフセット誤差(高速用軸誤差オフセット値Δθhigh_offset)は時点P2から時間の経過に伴って徐々に減少し、時点P2から所定時間PTをかけて消失する。
図11は、本開示の実施例1の上昇時動作例を示す図である。
【0102】
このように、演算方法OM4と演算方法OM2との間に演算方法OM3を設け、時点P2において、高速用軸誤差Δθhighに含まれる高速用オフセット誤差が補正され、高速用軸誤差Δθhighに含まれる高速用変動成分が軸誤差Δθとして採用される。これにより、高速用変動成分に基づく最適なトルク制御位相でトルク制御できるとともに、軸誤差演算方法が演算方法OM4から演算方法OM2へと遷移する際の高速用軸誤差Δθhighの平均成分(つまり、高速用オフセット誤差)の急変を抑制することができる。その結果、軸誤差Δθを用いて推定される速度の急変を抑制することができるため、機械角速度指令値ωm*の上昇時での軸誤差演算方法の切替を安定して行うことが可能になる。
【0103】
以上、下降時動作例と上昇時動作例とについて説明した。
【0104】
以上のように、軸誤差を変動成分と平均成分とに分けた上で、軸誤差の平均成分であるオフセット誤差のみを補正することで、トルク制御時において高速用センサレス制御と低速用センサレス制御とが切り替わるときの軸誤差の急変を抑制することができるため、モータMの振動や騒音の発生を抑制することができる。よって、トルク制御時において、高速用センサレス制御と低速用センサレス制御とが切り替わるときに、モータの振動や騒音を増加させることなくモータを安定して駆動させることができる。また、軸誤差の変動成分に対する補正を行わないため、最適なトルク制御位相でトルク制御を行うことができる。
【0105】
以上、実施例1について説明した。
【0106】
[実施例2]
実施例2では、ノイズ除去後の機械角推定角速度ωm_iirに基づいて軸誤差演算方法の判定が行われる点が実施例1と相違する。以下、実施例1と異なる点について説明する。
【0107】
<モータ制御装置の構成>
図12は、本開示の実施例2のモータ制御装置の構成例を示す図である。
図2において、モータ制御装置100bは、IIRフィルタ51と、軸誤差演算器300とを有する。
【0108】
IIRフィルタ51は、1/Pn処理器33より出力される機械角推定角速度ωmのノイズを除去し、ノイズ除去後の機械角推定角速度ωm_iirを軸誤差演算器300へ出力する。
【0109】
軸誤差演算器300は、d軸電流値Idと、q軸電流値Iqと、d軸電圧指令値Vd*と、q軸電圧指令値Vq*と、高周波角周波数指令値ωh*と、機械角推定角速度ωm_iirとに基づいて軸誤差Δθを算出する。
【0110】
<軸誤差演算器の構成>
図13は、本開示の実施例2の軸誤差演算器の構成例を示す図である。
図13において、軸誤差演算器300は、演算方法判定器300aを有する。
【0111】
演算方法判定器300aは、機械角推定角速度ωm_iirに基づいて軸誤差演算方法を判定し、判定結果信号JRを高周波電圧指令値生成器43、低速用軸誤差演算器30b、低速用オフセット誤差算出器30c、高速用軸誤差演算器30d、高速用オフセット誤差算出器30e、オフセット誤差補正器30f、及び、軸誤差決定器30gへ出力する。
【0112】
<モータ制御装置の動作>
軸誤差演算方法として、実施例1と同様に、条件C1~C5の5つの条件にそれぞれ対応する演算方法OM1~OM5の5つの演算方法が予め準備される。演算方法判定器300aは、機械角推定角速度ωm_iirに基づいて、演算方法OM1~OM5のうちの何れか一つを軸誤差演算方法とし選択する。
【0113】
条件C1は“ω1≦ωm_iir”であり、演算方法判定器300aは、機械角推定角速度ωm_iirが条件C1に該当するときは、演算方法OM1を軸誤差演算方法に決定し、演算方法OM1を示す判定結果信号JRを出力する。
【0114】
条件C2は“ω2≦ωm_iir<ω1”、かつ、“条件C3に該当しない”であり、演算方法判定器300aは、機械角推定角速度ωm_iirが条件C2に該当するときは、演算方法OM2を軸誤差演算方法に決定し、演算方法OM2を示す判定結果信号JRを出力する。
【0115】
条件C3は“ωm_iirがω2以上からω2未満に変化した時点P1から所定時間PTが経過するまで”、及び、“ωm_iirがω2未満からω2以上に変化した時点P2から所定時間PTが経過するまで”であり、演算方法判定器300aは、機械角推定角速度ωm_iirが条件C3に該当するときは、演算方法OM3を軸誤差演算方法に決定し、演算方法OM3を示す判定結果信号JRを出力する。
【0116】
条件C4は“ω3≦ωm_iir<ω2”、かつ、“条件C3に該当しない”であり、演算方法判定器300aは、機械角推定角速度ωm_iirが条件C4に該当するときは、演算方法OM4を軸誤差演算方法に決定し、演算方法OM4を示す判定結果信号JRを出力する。
【0117】
条件C5は“ωm_iir<ω3”であり、演算方法判定器300aは、機械角推定角速度ωm_iirが条件C5に該当するときは、演算方法OM5を軸誤差演算方法に決定し、演算方法OM5を示す判定結果信号JRを出力する。
【0118】
“ω2≦ωm_iir”の速度域は高速域であり、“ωm_iir<ω2”の速度域は低速域である。
【0119】
図14及び
図15は、本開示の実施例2の軸誤差演算方法の判定例を示す図である。
図14には機械角推定角速度ωm_iirが下降していく場合の判定例を示し、
図15には機械角推定角速度ωm_iirが上昇していく場合の判定例を示す。
【0120】
図14に示すように、機械角推定角速度ωm_iirが所定値ω1以上から所定値ω3未満へ徐々に下降していく場合には、機械角推定角速度ωm_iirは各条件に条件C1,C2,C3,C4,C5の順で該当するため、軸誤差演算方法は、演算方法OM1,OM2,OM3,OM4,OM5の順に遷移する。
【0121】
また、
図15に示すように、機械角推定角速度ωm_iirが所定値ω3未満から所定値ω1以上へ徐々に上昇していく場合には、機械角推定角速度ωm_iirは各条件に条件C5,C4,C3,C2,C1の順で該当するため、軸誤差演算方法は、演算方法OM5,OM4,OM3,OM2,OM1の順に遷移する。
【0122】
以上、実施例2について説明した。
【0123】
以上のように、本開示のモータ制御装置(実施例のモータ制御装置100a,100b)は、軸誤差(実施例の軸誤差Δθ)に基づいてモータ(実施例のモータM)を制御するモータ制御装置であって、軸誤差演算器(実施例の軸誤差演算器30,300)を有する。軸誤差演算器は、モータの回転速度(実施例の機械角速度指令値ωm*,機械角推定角速度ωm_iir)に応じて算出される仮の軸誤差(実施例の低速用軸誤差Δθlow,高速用軸誤差Δθhigh)の平均成分であるオフセット誤差(実施例の低速用軸誤差オフセット値Δθlow_offset,高速用軸誤差オフセット値Δθhigh_offset)に基づいて軸誤差を算出する。
【0124】
また、軸誤差演算器は、低速用軸誤差演算器(実施例の低速用軸誤差演算器30b)と、高速用軸誤差演算器(実施例の高速用軸誤差演算器30d)とを有する。軸誤差演算器は、低速用軸誤差演算器が算出する低速用軸誤差のオフセット誤差である低速用オフセット誤差(実施例の低速用軸誤差オフセット値Δθlow_offset)、または、高速用軸誤差演算器が算出する高速用軸誤差のオフセット誤差である高速用オフセット誤差(実施例の高速用軸誤差オフセット値Δθhigh_offset)に基づいて軸誤差を算出する。
【0125】
また、軸誤差演算器は、回転速度が第一所定値(実施例の所定値ω2)以上から第一所定値未満に変化したときは、低速用オフセット誤差に基づいて軸誤差を算出する。また、軸誤差演算器は、回転速度が第一所定値未満から第一所定値以上に変化したときは、高速用オフセット誤差に基づいて軸誤差を算出する。
【0126】
また、軸誤差演算器は、回転速度が第一所定値以上から前記第一所定値未満に変化したときは、低速用オフセット誤差を所定時間(実施例の所定時間PT)かけて0に近づけるように低速用オフセット誤差を変化させる。また、軸誤差演算器は、回転速度が第一所定値未満から第一所定値以上に変化したときは、高速用オフセット誤差を所定時間かけて0に近づけるように高速用オフセット誤差を変化させる。
【0127】
また、軸誤差演算器は、回転速度が第一所定値以上から前記第一所定値未満に変化したときは、低速用軸誤差の変動成分を用いて軸誤差を算出する。また、回転速度が前記第一所定値未満から前記第一所定値以上に変化したときは、高速用軸誤差の変動成分を用いて軸誤差を算出する。
【0128】
また、軸誤差演算器は、回転速度が第一所定値より大きい第二所定値(実施例の所定値ω1)以上であるときは、低速用軸誤差演算器を停止し、回転速度が第一所定値より小さい第三所定値(実施例の所定値ω3)未満であるときは、高速用軸誤差演算器を停止する。
【符号の説明】
【0129】
100a,100b モータ制御装置
30,300 軸誤差演算器
30a,300a 演算方法判定器
30b 低速用軸誤差演算器
30c 低速用オフセット誤差算出器
30d 高速用軸誤差演算器
30e 高速用オフセット誤差算出器
30f オフセット誤差補正器
30g 軸誤差決定器