(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023051559
(43)【公開日】2023-04-11
(54)【発明の名称】モータ制御装置
(51)【国際特許分類】
H02P 21/34 20160101AFI20230404BHJP
H02P 6/18 20160101ALI20230404BHJP
H02P 6/21 20160101ALI20230404BHJP
H02P 21/24 20160101ALI20230404BHJP
【FI】
H02P21/34
H02P6/18
H02P6/21
H02P21/24
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2021162347
(22)【出願日】2021-09-30
(71)【出願人】
【識別番号】000006611
【氏名又は名称】株式会社富士通ゼネラル
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】浦山 昌春
【テーマコード(参考)】
5H505
5H560
【Fターム(参考)】
5H505DD03
5H505DD08
5H505EE41
5H505EE49
5H505EE55
5H505FF01
5H505FF02
5H505GG02
5H505GG04
5H505GG06
5H505HA06
5H505JJ04
5H505JJ22
5H505JJ24
5H505JJ25
5H505JJ26
5H505LL22
5H560BB04
5H560BB12
5H560BB17
5H560DA14
5H560DC12
5H560HA04
5H560TT08
5H560XA02
5H560XA04
5H560XA06
5H560XA12
5H560XA13
(57)【要約】
【課題】モータの起動時の負荷トルクの変動を抑制すること。
【解決手段】速度上昇区間と電流調整区間とを有する運転モードであって速度指令値に基づく制御系座標軸の回転位相にモータMが同期する同期運転モードと、軸誤差を帰還制御することで得られる速度推定値に基づいて制御系座標軸の回転位相が生成される位置センサレス制御モードとを有するモータ制御装置100aにおいて、同期運転電流指令値生成器13は、速度上昇区間において、同期運転d軸電流指令値id_sy
*を所定値に設定してモータMの回転数を所定回転数まで上昇させた後、電流調整区間において、モータMの負荷に応じて同期運転d軸電流指令値id_sy
*を調整し、速度変動補正値生成器61及びトルク変動補正値生成器63は、電流調整区間において、モータMのトルク制御を行う。
【選択図】
図1
【特許請求の範囲】
【請求項1】
速度指令値に基づく制御系座標軸の回転位相にモータを同期させる運転モードであって速度上昇区間と電流調整区間とを有する同期運転モードと、軸誤差を帰還制御することで得られる速度推定値に基づいて前記制御系座標軸の回転位相が生成される位置センサレス制御モードとを有するモータ制御装置であって、
前記速度上昇区間において、電流指令値を所定値に設定して前記モータの回転数を所定回転数まで上昇させた後、前記電流調整区間において、前記モータの負荷に応じて前記電流指令値を調整する同期運転電流指令値生成器と、
前記電流調整区間において、前記モータのトルク制御を行うトルク制御器と、
を具備するモータ制御装置。
【請求項2】
前記トルク制御器は、前記電流調整区間において前記軸誤差の変動成分に基づいて速度変動補正値を生成する速度変動補正値生成器、を有する、
請求項1に記載のモータ制御装置。
【請求項3】
前記トルク制御器は、前記速度変動補正値に基づいて、前記モータの回転速度の変動を抑制するためのトルク変動補正値を生成するトルク変動補正値生成器、をさらに有し、
前記トルク変動補正値に基づいて電流補正値を算出する電流補正値算出器、をさらに具備する、
請求項2に記載のモータ制御装置。
【請求項4】
前記同期運転電流指令値生成器は、前記電流調整区間において、d軸電流指令値を前記所定値よりも小さい値を有する目標指令値まで減少させるとともに、前記軸誤差を0に近づけるように帰還制御することによりq軸電流指令値を調整し、
前記電流補正値は、前記q軸電流指令値に対する補正値である、
請求項3に記載のモータ制御装置。
【請求項5】
電流指令値と電流検出値との間の電流誤差に基づいて電流追従誤差補正値を生成する電流追従誤差補正値生成器と、
前記電流追従誤差補正値を前記電流指令値に加算することにより補正電流指令値を算出する加算器と、
をさらに具備する請求項4に記載のモータ制御装置。
【請求項6】
前記電流追従誤差補正値生成器は、前記電流誤差を積算し、前記電流誤差の積算結果の位相が反転した値を前記電流追従誤差補正値として生成する、
請求項5に記載のモータ制御装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、モータ制御装置に関する。
【背景技術】
【0002】
PMSM(Permanent Magnet Synchronous Motor)の制御の一つとして、モータの回転に伴って発生する誘起電圧(以下では「モータ誘起電圧」と呼ぶことがある)を用いてモータのロータ位置の推定(以下では「位置推定」と呼ぶことがある)を行う位置センサレス制御が知られている。位置センサレス制御では、モータの停止状態や、モータ誘起電圧が小さい極低回転状態において位置推定の誤差が大きくなる。
【0003】
これに対し、位置センサレス制御モードとは異なる運転モードとして、速度指令値に基づく制御系座標軸の回転位相にモータを同期させる「同期運転モード」を設け、同期運転モードにおいて軸誤差が0近傍になるように電流ベクトルの位相(以下では「電流位相」と呼ぶことがある)を調整した上で、運転モードを同期運転モードから位置センサレス制御モードに移行させる技術がある。
【0004】
また、空気調和装置等に用いられる圧縮機では、吸入・圧縮・吐出の各行程間における冷媒ガス圧変化により、圧縮機に搭載されるモータの回転中に負荷トルクが周期的に変動する。このため、圧縮機のモータを駆動する際の制振技術として、速度や軸誤差の周期的な変動成分をフーリエ変換等により抽出し、補正電流または補正電圧を生成するトルク制御技術が知られている。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかし、上記のトルク制御技術を適用できるのは、安定して位置推定が行える位置センサレス制御モードに限定される。このため、同期運転モードでは、周期的な負荷トルクの変動(以下では「周期的トルク変動」と呼ぶことがある)が抑制されず、周期的トルク変動がモータの振動や騒音の発生を招いてしまう。さらに、周期的トルク変動が軸誤差に現れている状態で位置センサレス制御モードに移行することで、モータの回転速度やモータの電流の急変によりモータの脱調を招いてしまうことがあった。
【0007】
そこで、本開示は、モータの起動時の負荷トルクの変動を抑制することができる技術を提案する。
【課題を解決するための手段】
【0008】
本開示のモータ制御装置は、速度指令値に基づく制御系座標軸の回転位相にモータを同期させる運転モードであって速度上昇区間と電流調整区間とを有する同期運転モードと、軸誤差を帰還制御することで得られる速度推定値に基づいて前記制御系座標軸の回転位相が生成される位置センサレス制御モードとを有する。また、本開示のモータ制御装置は、同期運転電流指令値生成器と、トルク制御器とを有する。前記同期運転電流指令値生成器は、前記速度上昇区間において、電流指令値を所定値に設定して前記モータの回転数を所定回転数まで上昇させた後、前記電流調整区間において、前記モータの負荷に応じて前記電流指令値を調整する。前記トルク制御器は、前記電流調整区間において、前記モータのトルク制御を行う。
【発明の効果】
【0009】
本開示によれば、モータの起動時の負荷トルクの変動を抑制することができる。
【図面の簡単な説明】
【0010】
【
図1】
図1は、本開示の実施例1のモータ制御装置の構成例を示す図である。
【
図2】
図2は、本開示の実施例1のモータ制御装置の動作例を示す図である。
【
図3】
図3は、本開示の実施例1のモータ制御装置の動作例を示す図である。
【
図4】
図4は、本開示の実施例1のモータ制御装置の動作例を示す図である。
【
図5】
図5は、本開示の実施例1のモータ制御装置の動作例を示す図である。
【
図6】
図6は、本開示の実施例実施例1の速度変動補正値生成器の構成例を示す図である。
【
図7】
図7は、本開示の実施例実施例1のトルク変動補正値生成器の構成例を示す図である。
【
図8】
図8は、本開示の実施例2のモータ制御装置の構成例を示す図である。
【
図9】
図9は、本開示の実施例2の電流追従誤差補正値生成器の構成例を示す図である。
【発明を実施するための形態】
【0011】
以下、本開示の実施例を図面に基づいて説明する。以下の実施例において、同一の部位には同一の符号を付し、重複する説明を省略することがある。
【0012】
[実施例1]
<モータ制御装置の構成>
図1は、本開示の実施例1のモータ制御装置の構成例を示す図である。
図1において、モータ制御装置100aは、減算器11,18,19と、速度制御器12と、電流制御器20と、加算器21,22と、dq/uvw変換器23と、PWM(Pulse Width Modulation)処理器24と、IPM(Intelligent Power Module)25とを有する。IPM25は、モータMに接続される。モータMの一例としてIPMSM(Interior Permanent Magnet Synchronous Motor)及びSPMSM(Surface Permanent Magnet Synchronous Motor)等のPMSMが挙げられる。
【0013】
また、モータ制御装置100aは、電流検出器28と、uvw/dq変換器29と、軸誤差演算器30と、PLL(Phase Locked Loop)制御器31と、位置推定器32と、非干渉化制御器36とを有する。
【0014】
また、モータ制御装置100aは、電流指令値生成器10と、スイッチSW1,SW2,SW3と、運転モード切替器40とを有する。電流指令値生成器10は、同期運転電流指令値生成器13と、センサレス電流指令値生成器14とを有する。スイッチSW1,SW2,SW3の各々は、A接点とB接点とを有する。
【0015】
また、モータ制御装置100aは、加算器51,52,62と、速度変動補正値生成器61と、トルク変動補正値生成器63と、q軸電流補正値算出器64とを有する。
【0016】
モータ制御装置100aの運転モードには、同期運転モードと、位置センサレス制御モードとがある。運転モード切替器40は、モータ制御装置100aの運転モードを、同期運転モードと位置センサレス制御モードとの間で切り替える。運転モード切替器40は、モータ制御装置100aの外部のコントローラによって制御される。運転モード切替器40は、運転モードが同期運転モードであるときは、電流指令値生成器10において同期運転電流指令値生成器13を動作させる一方でセンサレス電流指令値生成器14の動作を停止させるとともに、スイッチSW1,SW2,SW3を接点Bに接続する。また、運転モード切替器40は、運転モードが位置センサレス制御モードであるときは、電流指令値生成器10においてセンサレス電流指令値生成器14を動作させる一方で同期運転電流指令値生成器13の動作を停止させるとともに、スイッチSW1,SW2,SW3を接点Aに接続する。同期運転電流指令値生成器13は、運転モードが同期運転モードにあるときの電流指令値を生成する。センサレス電流指令値生成器14は、運転モードが位置センサレス制御モードにあるときの電流指令値を生成する。
【0017】
軸誤差演算器30は、d軸電流検出値idと、q軸電流検出値iqと、d軸電圧指令値Vdと、q軸電圧指令値Vqとに基づいて、制御系座標軸であるdc-qc座標軸と、モータMの回転子座標軸であるd-q座標軸との差である軸誤差Δθを算出する。軸誤差演算器30によって算出された軸誤差Δθは、PLL制御器31、同期運転電流指令値生成器13及び速度変動補正値生成器61に入力される。
【0018】
位置推定器32は、スイッチSW3を介して入力される電気角速度の速度情報ω_corを積分することで、dc-qc座標軸の回転位相θdqを生成する。運転モードが同期運転モードにあるときは、スイッチSW3は接点Bに接続されるため、加算器62は、速度変動補正値生成器61から出力される速度変動値Δωを、モータ制御装置100aの外部(例えば、上位のコントローラ)からモータ制御装置100aへ入力される電気角速度の指令値である速度指令値ω*に加算することにより、速度変動値Δωによって補正された速度指令値(以下では「補正後速度指令値」と呼ぶことがある)を算出する。よって、運転モードが同期運転モードにあるときは補正後速度指令値が速度情報ω_corとして位置推定器32に入力されるため、同期運転モードでは、速度指令値ω*に基づいて生成された回転位相θdqにモータMが同期する。一方で、運転モードが位置センサレス制御モードにあるときは、スイッチSW3は接点Aに接続されるため、加算器62は、速度変動補正値生成器61から出力される速度変動値Δωを、PLL制御器31から出力される電気角速度の推定値である速度推定値ωに加算することにより、速度変動値Δωによって補正された速度推定値(以下では「補正後速度推定値」と呼ぶことがある)を算出する。よって、運転モードが位置センサレス制御モードにあるときは補正後速度推定値が速度情報ω_corとして位置推定器32に入力されるため、位置センサレス制御モードでは、軸誤差Δθが帰還制御されることで得られる速度推定値ωに基づいて回転位相θdqが生成される。
【0019】
また、位置推定器32は、スイッチSW3を介して入力される速度情報ω_corに基づいてモータMのロータ位置の回転角度を表す機械角位相θmを生成する。
【0020】
電流制御器20は、d軸電流指令値id
*とd軸電流検出値idとの誤差であるd軸電流誤差id_difを比例積分制御することにより、非干渉化前のd軸電圧指令値Vd_ccを算出する。また、電流制御器20は、q軸電流指令値iq
*とq軸電流検出値iqとの誤差であるq軸電流誤差iq_difを比例積分制御することにより、非干渉化前のq軸電圧指令値Vq_ccを算出する。例えば、電流制御器20は、式(1)に従ってd軸電圧指令値Vd_ccを算出し、式(2)に従ってq軸電圧指令値Vq_ccを算出する。式(1)において、Kp_dはd軸比例ゲイン、Ki_dはd軸積分ゲインであり、式(2)において、Kp_qはq軸比例ゲイン、Ki_qはq軸積分ゲインである。
【数1】
【数2】
【0021】
非干渉化制御器36は、速度指令値ω
*とd軸電流指令値id
*とq軸電流指令値iq
*とに基づいて、d軸電圧指令値Vd_ccを補償するためのd軸非干渉化電圧指令値Vd_aを算出する。また、非干渉化制御器36は、速度指令値ω
*とd軸電流指令値id
*とq軸電流指令値iq
*とに基づいて、q軸電圧指令値Vq_ccを補償するためのq軸非干渉化電圧指令値Vq_aを算出する。例えば、非干渉化制御器36は、式(3)に従ってd軸非干渉化電圧指令値Vd_aを算出し、式(4)に従ってq軸非干渉化電圧指令値Vq_aを算出する。式(3)及び式(4)において、RはモータMの巻線抵抗、LdはモータMのd軸インダクタンス、LqはモータMのq軸インダクタンス、ΨaはモータMの電気子鎖交磁束である。
【数3】
【数4】
【0022】
ここで、非干渉化制御器36でのd軸非干渉化電圧指令値Vd_a及びq軸非干渉化電圧指令値Vq_aの算出に使用される電流をd軸電流指令値id*及びq軸電流指令値iq*とすることにより、急激な電流指令値の変化にもモータMの制御を追従させることが可能となる。よって、後述する同期運転モードでの電流調整区間において、d軸電流指令値id*及びq軸電流指令値iq*が瞬時に変化する状況下でも、モータMの制御の安定性と応答性とを両立させることができる。
【0023】
加算器21は、式(5)に従って、d軸非干渉化電圧指令値Vd_aをd軸電圧指令値Vd_ccに加算することにより、最終的なd軸電圧指令値Vdを算出する。また、加算器22は、式(6)に従って、q軸非干渉化電圧指令値Vq_aをq軸電圧指令値Vq_ccに加算することにより、最終的なq軸電圧指令値Vqを算出する。これにより、d-q座標軸間の干渉がフィードフォワードでキャンセルされたd軸電圧指令値Vd及びq軸電圧指令値Vqが算出される。
【数5】
【数6】
【0024】
dq/uvw変換器23は、加算器21,22から出力される2相のd軸電圧指令値Vd及びq軸電圧指令値Vqを、位置推定器32から出力される回転位相θdqに基づいて、3相のU相電圧指令値Vu、V相電圧指令値Vv及びW相電圧指令値Vwへ変換する。
【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】
電流検出器28は、1シャント方式でIPM25の母線電流が検出される場合、PWM処理器24より出力される6相のPWM信号と、検出された母線電流とから、モータMのU相電流値iu、V相電流値iv、W相電流値iwを検出し、各相の相電流値iu,iv,iwをuvw/dq変換器29へ出力する。なお、電流検出器28は、2CT方式で各相の相電流値iu,iv,iwを検出しても良い。
【0028】
uvw/dq変換器29は、位置推定器32から出力される回転位相θdqに基づいて、3相のU相電流値iu、V相電流値iv、W相電流値iwを、2相のd軸電流検出値id及びq軸電流検出値iqへ変換する。
【0029】
PLL制御器31は、軸誤差Δθを比例積分制御することにより、軸誤差Δθが0となるような速度推定値ωを算出する。PLL制御器31によって算出された速度推定値ωがスイッチSW3を介して加算器62に入力されて補正後速度推定値が位置推定器32に入力されることで回転位相θdqが修正され、その結果、軸誤差Δθを0に近づけることができる。
【0030】
減算器11は、速度指令値ω*から速度推定値ωを減算することにより速度誤差ω_difを算出する。
【0031】
速度制御器12は、速度誤差ω_difを比例積分制御することにより、周期的に脈動する速度誤差ω_difの平均成分が0に近づくような平均トルク指令値T_ave*を生成する。
【0032】
加算器51は、トルク変動補正値生成器63から出力されるトルク変動補正値ΔTを平均トルク指令値T_ave*に加算することにより合計トルク指令値T*を算出する。
【0033】
センサレス電流指令値生成器14は、運転モードが位置センサレス制御モードであるときに、合計トルクが一定となる電流の軌跡である定トルク曲線に基づいて合計トルク指令値T*をd-q座標軸上の電流ベクトルに変換することにより、センサレスd軸電流指令値id_sl*及びセンサレスq軸電流指令値iq_sl*を生成する。以下では、センサレスd軸電流指令値及びセンサレスq軸電流指令値を「センサレス電流指令値」と総称することがある。
【0034】
ここで、モータMがSPMSMである場合とIPMSMである場合とでセンサレス電流指令値の好ましい生成方法は異なるため、制御されるモータの種類に応じたセンサレス電流指令値の生成方法をモータ制御装置100aに予め設定しておくのが好ましい。例えば、センサレス電流指令値生成器14は、モータMがSPMSMである場合は、定トルク曲線上でのセンサレスd軸電流指令値id_sl*を0としてセンサレスq軸電流指令値iq_sl*を生成する一方で、モータMがIPMSMである場合は、定トルク曲線とMTPA曲線(最大トルク/電流制御曲線)との交点(以下では「二曲線交点」と呼ぶことがある)からセンサレスd軸電流指令値id_sl*及びセンサレスq軸電流指令値iq_sl*を生成するのが好ましい。なお、モータMがSPMSMである場合とIPMSMである場合の両方のセンサレス電流指令値の生成方法をモータ制御装置100aに設定しておき、モータMの種類に応じていずれか一方を選択するようにしても良い。
【0035】
例えば、センサレス電流指令値生成器14は、モータMがSPMSMである場合は、式(7)に示すモータトルク式におけるセンサレスd軸電流指令値id_sl
*に0を代入することで、式(8)に示すセンサレスq軸電流指令値iq_sl
*を得ることができる。式(7)及び式(8)において、PnはモータMの極対数である。
【数7】
【数8】
【0036】
また例えば、センサレス電流指令値生成器14は、モータMがIPMSMである場合は、式(7)に示すモータトルク式と、式(9)とに従って、センサレスd軸電流指令値id_sl
*及びセンサレスq軸電流指令値iq_sl
*を算出する。
【数9】
【0037】
まず、式(7)及び式(9)からセンサレスd軸電流指令値id_sl
*を消去すると、センサレスq軸電流指令値iq_sl
*に関する四次方程式である式(10)が得られる。
【数10】
【0038】
式(10)に示す四次方程式の実数解の一つが二曲線交点でのセンサレスq軸電流指令値iq_sl*となるため、センサレス電流指令値生成器14は、式(10)の解を導出することによりセンサレスq軸電流指令値iq_sl*を算出する。四次方程式の解は、例えばニュートン法などを用いて導出することができる。センサレス電流指令値生成器14は、式(10)を用いてセンサレスq軸電流指令値iq_sl*を算出した後に、式(9)にセンサレスq軸電流指令値iq_sl*を代入することでセンサレスd軸電流指令値id_sl*を算出する。
【0039】
運転モードが位置センサレス制御モードであるときは、スイッチSW1,SW2は接点Aに接続されるため、センサレス電流指令値生成器14によって生成されるセンサレスd軸電流指令値id_sl*及びセンサレスq軸電流指令値iq_sl*が、減算器18,19及び非干渉化制御器36に入力されるd軸電流指令値id*及びq軸電流指令値iq*となる。
【0040】
一方で、運転モードが同期運転モードであるときは、スイッチSW1は接点Bに接続される。このため、同期運転電流指令値生成器13によって生成される同期運転d軸電流指令値id_sy*が、減算器18及び非干渉化制御器36に入力されるd軸電流指令値id*となる。また、運転モードが同期運転モードであるときは、スイッチSW2は接点Bに接続されるため、加算器52は、q軸電流補正値算出器64から出力されるq軸電流補正値Δiq_tを、同期運転電流指令値生成器13によって生成される同期運転q軸電流指令値iq_sy*に加算することにより、q軸電流補正値Δiq_tによって補正された同期運転q軸電流指令値(以下では「補正後同期運転q軸電流指令値」と呼ぶことがある)iq_sy*’を算出する。よって、運転モードが同期運転モードであるときは、補正後同期運転q軸電流指令値iq_sy*’が、減算器19及び非干渉化制御器36に入力されるq軸電流指令値iq*となる。なお、以下では、同期運転d軸電流指令値及び同期運転q軸電流指令値を「同期運転電流指令値」と総称することがある。
【0041】
減算器18は、d軸電流指令値id*からd軸電流検出値idを減算することによりd軸電流誤差id_difを算出する。減算器19は、q軸電流指令値iq*からq軸電流検出値iqを減算することによりq軸電流誤差iq_difを算出する。
【0042】
<周期的トルク変動がないときのモータ制御装置の動作>
図2及び
図3は、本開示の実施例1のモータ制御装置の動作例を示す図である。
図2及び
図3には、周期的トルク変動がないときの動作例を示す。また、
図2には軽負荷時の動作例を示し、
図3には過負荷時の動作例を示す。モータMの起動時や低回転時では、モータMのモータ誘起電圧が小さいため、軸誤差演算器30によって算出される軸誤差Δθに誤差が生じ、軸誤差Δθに生じる誤差の影響でモータMの制御が不安定化する恐れがある。そこで、モータMの回転数を位置センサレス制御が適用可能な回転数まで引き上げるために、位置センサレス制御を行う前に、位置決め、及び、同期運転を行う。つまり、モータ制御装置100aの運転モードは、
図2及び
図3に示すように、位置決めモードM1、同期運転モードM2、位置センサレス制御モードM3の順に移行する。運転モードが位置決めモードM1または同期運転モードM2であるときは、運転モード切替器40は、電流指令値生成器10において同期運転電流指令値生成器13を動作させる一方でセンサレス電流指令値生成器14の動作を停止させるとともに、スイッチSW1,SW2,SW3を接点Bに接続する。センサレス電流指令値生成器14の動作の停止に伴い、センサレス電流指令値生成器14の入力側に位置する速度制御器12及びPLL制御器31aの動作も停止される。また、運転モードが位置センサレス制御モードM3であるときは、運転モード切替器40は、電流指令値生成器10においてセンサレス電流指令値生成器14を動作させる一方で同期運転電流指令値生成器13の動作を停止させるとともに、スイッチSW1,SW2,SW3を接点Aに接続する。
【0043】
また、同期運転モードM2は、
図2及び
図3に示すように、速度上昇区間I1と電流調整区間I2とを有し、同期運転モードM2では、制御区間が、速度上昇区間I1、電流調整区間I2の順に移行する。
【0044】
また、運転モードが位置決めモードM1または同期運転モードM2であるときは、スイッチSW1,SW2が接点Bに接続されるため、同期運転d軸電流指令値id_sy*及び補正後同期運転q軸電流指令値iq_sy*’が、減算器18,19及び非干渉化制御器36に入力されるd軸電流指令値id*及びq軸電流指令値iq*となる。一方で、運転モードが位置センサレス制御モードM3であるときは、スイッチSW1,SW2が接点Aに接続されるため、センサレスd軸電流指令値id_sl*及びセンサレスq軸電流指令値iq_sl*が、減算器18,19及び非干渉化制御器36に入力されるd軸電流指令値id*及びq軸電流指令値iq*となる。
【0045】
図2及び
図3に示すように、位置決めモードM1では、速度指令値ω
*が0とされ、同期運転電流指令値生成器13は、同期運転d軸電流指令値id_sy
*を0から所定値id_iniまで増加させる一方で、同期運転q軸電流指令値iq_sy
*を0にする。同期運転d軸電流指令値id_sy
*の増加中にモータMのロータが動き始めて位置決めされる。例えば、最大負荷を駆動可能な電流値が所定値id_iniとして設定されることで、同期運転モードM2において過負荷時でもモータMは脱調することなく起動できる。
【0046】
また、
図2及び
図3に示すように、速度上昇区間I1では、同期運転電流指令値生成器13が所定値id_iniを初期値として同期運転d軸電流指令値id_sy
*を所定値id_iniで一定に保つとともに、同期運転q軸電流指令値iq_sy
*を0で一定に保ったまま、速度指令値ω
*が0から所定回転数ω1まで線形増加される。これにより、速度上昇区間I1では、同期運転d軸電流指令値id_sy
*及び同期運転q軸電流指令値iq_sy
*が一定に保たれた状態で、モータMの回転数が、所定回転数ω1に対応する所定の回転数まで上昇する。なお、所定回転数ω1は、モータMの誘起電圧が十分に検出できることが分かっている回転数に予め設定され、例えば15rpsである。
【0047】
次いで、電流調整区間I2では、速度指令値ω*が所定回転数ω1で一定に保たれた状態で、同期運転電流指令値生成器13は、モータMの負荷に応じて、同期運転電流指令値を調整する。電流調整区間I2では、同期運転電流指令値生成器13は、所定値id_iniを初期値として同期運転d軸電流指令値id_sy*の調整を開始する。また、電流調整区間I2では、同期運転電流指令値生成器13は、q軸電流指令値iq*の初期値を0としてq軸電流指令値iq*の調整を開始する。電流調整区間I2での同期運転d軸電流指令値id_sy*及び同期運転q軸電流指令値iq_sy*の調整により、電流調整区間I2では、dc-qc座標軸上での電流ベクトルが、位置センサレス制御モードM3時の電流ベクトルに近い状態まで調整される。電流調整区間I2では、同期運転電流指令値生成器13は、同期運転d軸電流指令値id_sy*を、フィルタを用いて、または、線形減少させて、電流調整区間I2の最終点で目標指令値id_sy_endに収束させる。目標指令値id_sy_endは、0近傍の正の値を有し、位置センサレス制御モードM3時の電流ベクトルよりも多少過励磁(id*>0)となる値に設定されるのが好ましい。
【0048】
つまり、速度上昇区間I1では、同期運転電流指令値生成器13は、目標指令値id_sy_endよりも大きい値を有する所定値id_iniに同期運転d軸電流指令値id_sy*を設定する。また、速度上昇区間I1に続く電流調整区間I2では、同期運転電流指令値生成器13は、所定値id_iniを初期値として同期運転d軸電流指令値id_sy*を目標指令値id_sy_endまで徐々に減少させる。
【0049】
ここで、一般的に、モータMが突極性を有しないSPMSMである場合は、定トルク曲線上でのセンサレスd軸電流指令値id_sl*を0として位置センサレス制御が行われ、モータMが突極性を有するIPMSMである場合は、二曲線交点に基づいて位置センサレス制御が行われる。一方で、同期運転モードM2では、PLL制御器31によって算出される速度推定値ωに基づく回転位相θdqの修正が為されないため、所望のトルクを得るための電流振幅が最小となるd軸電流まで同期運転d軸電流指令値id_sy*を減少させると、同期運転電流指令値生成器13が電流指令値を生成する際の応答速度によっては、負荷トルクが出力トルクを上回り、モータMが脱調する懸念がある。このため、上記のように、電流調整区間I2の最終点での同期運転d軸電流指令値id_sy*を多少過励磁に収束させることが好ましい。
【0050】
また、電流調整区間I2の最終点における目標指令値id_sy_endを、モータMの定格の電流振幅値の10%程度の値や、モータMが最大負荷を駆動する際の電流振幅値の10%程度の値に設定することで、電流調整区間I2において同期運転d軸電流指令値id_sy*を位置センサレス制御モードM3でのセンサレスd軸電流指令値id_sl*に適度に近づけつつ、多少過励磁に収束させることができるため、電流調整区間I2でのモータMの脱調を防止できる。例えば、モータMの定格の電流振幅値が10A程度の場合には、目標指令値id_sy_endは1A程度に設定されるのが好ましい。
【0051】
また、電流調整区間I2では、同期運転電流指令値生成器13は、軸誤差Δθを積分または比例積分制御することより同期運転q軸電流指令値iq_sy
*を生成する。同期運転電流指令値生成器13は、軸誤差Δθが正の場合は同期運転q軸電流指令値iq_sy
*を増加させ、軸誤差Δθが負の場合は同期運転q軸電流指令値iq_sy
*を減少させる。このようにして、電流調整区間I2では、同期運転電流指令値生成器13は、軸誤差Δθを0に近づけるように帰還制御により同期運転q軸電流指令値iq_sy
*を調整する。電流調整区間I2では、同期運転電流指令値生成器13は、例えば式(11)に従って同期運転q軸電流指令値iq_sy
*(つまり、同期運転モードでのq軸電流指令値iq
*)を生成する。式(11)において、Ki_iqは積分ゲインである。
【数11】
【0052】
位置センサレス制御モードM3では、軸誤差Δθが正のときは、PLL制御器31が速度推定値ωを減少させることにより速度推定値ωが速度指令値ω*を下回るため、速度制御器12が平均トルク指令値T_ave*を増加させ、センサレス電流指令値生成器14がセンサレスq軸電流指令値iq_sl*を増加させる。一方で、同期運転モードM2では、補正後速度指令値が位置推定器32に入力されるため、同期運転電流指令値生成器13が軸誤差Δθに基づいて同期運転q軸電流指令値iq_sy*を調整する。そこで、電流調整区間I2の開始点での同期運転d軸電流指令値id_sy*の初期値である所定値id_iniの大きさ、モータMのイナーシャ、モータMの誘起電圧定数、または、モータMが駆動する負荷の特性等に応じて積分ゲインKi_iq(式(11))が調整されることで、同期運転電流指令値生成器13の所望の応答速度を得ることができる。
【0053】
電流調整区間I2から位置センサレス制御モードM3への移行の際、速度制御器12は、位置センサレス制御モードM3の開始時点でのセンサレスd軸電流指令値id_sl
*及びセンサレスq軸電流指令値iq_sl
*(つまり、同期運転モードM2における同期運転d軸電流指令値id_sy
*の最終値、及び、同期運転モードM2における同期運転q軸電流指令値iq_sy
*の最終値)に基づいて式(12)に従って平均トルク指令値T_ave
*を算出し、式(12)に従って算出した平均トルク指令値T_ave
*を速度誤差ω_difに対する比例積分制御の初期値(つまり、速度制御器12が生成する平均トルク指令値T_ave
*の初期値)として設定する。こうすることで、運転モードが同期運転モードM2から位置センサレス制御モードM3へ切り替わる際の平均トルク指令値T_ave
*の不連続の発生を防止できるため、運転モードの切替によりモータMに発生するショック(以下では「切替ショック」と呼ぶことがある)を低減できる。
【数12】
【0054】
また、式(12)に従って算出される平均トルク指令値T_ave
*が速度誤差ω_difに対する比例積分制御の初期値として位置センサレス制御が開始されるため、位置センサレス制御モードM3では、センサレス電流指令値生成器14によって生成されるセンサレスd軸電流指令値id_sl
*は、
図2及び
図3に示すように、目標指令値id_sy_endよりも小さい値に調整される。例えば、目標指令値id_sy_endが0近傍の正の値を有する場合において、センサレスd軸電流指令値id_sl
*は、0以下の値に調整される。
【0055】
以上のように、d軸電流指令値を同期運転の段階で0近傍に収束させ、軸誤差を帰還制御することによりq軸電流指令値を生成することで、軸誤差が0近傍に調整された状態、かつ、過励磁の度合いが抑制された状態で同期運転から位置センサレス制御へ移行できる。このため、位置センサレス制御への移行後の電流ベクトルの変化が小さくなるので、突極性を有するIPMSM等においても、位置センサレス制御への移行時の電流飛びや速度飛び等による切替ショックを低減できる。よって、モータMの突極性の有無というモータMの種類によらず、位置センサレス制御モードへの移行時のモータMの制御の安定性を向上させることができる。
【0056】
<周期的トルク変動があるときのモータ制御装置の動作>
図4及び
図5は、本開示の実施例1のモータ制御装置の動作例を示す図である。
図4及び
図5には、周期的トルク変動があるときの動作例を示す。また、
図4には軽負荷時の動作例を示し、
図5には過負荷時の動作例を示す。
図4及び
図5において、電流調整区間I2では、周期的トルク変動がないときの動作例と同様にモータ制御装置100aが動作することで、平均の負荷トルクに応じて平均電流が調整される。また、電流調整区間I2では、モータMの回転数の変動量が後述する速度変動許容値|Δω|
*まで抑制されるように、周期的トルク変動に応じて電流の変動量が調整される。このように、周期的トルク変動の抑制は、同期運転モードM2の電流調整区間I2から行われる。
【0057】
<速度変動補正値生成器61の構成>
図6は、本開示の実施例1の速度変動補正値生成器の構成例を示す図である。
図6において、速度変動補正値生成器61は、軸誤差変動成分分離器611と、軸誤差変動積算器612と、速度変動復調器613とを有する。速度変動補正値生成器61には、位置推定器32から機械角位相θmが入力され、軸誤差演算器30から軸誤差Δθが入力される。
【0058】
モータ制御装置100aでは、周期的トルク変動に起因する軸誤差Δθの変動(以下では「軸誤差変動」と呼ぶことがある)がフィードバックされ、軸誤差変動を0とするために必要なモータMの回転速度の変動(以下では「速度変動」と呼ぶことがある)が機械角周期毎に生成される。
【0059】
そこで、軸誤差変動成分分離器611は、軸誤差Δθと機械角位相θmとに基づいて、高調波成分が排除された軸誤差変動の基本波成分をsin成分とcos成分とに分離する。軸誤差変動成分分離器611は、式(13)及び式(14)に従って第一フーリエ係数Δθsinと第二フーリエ係数Δθcosとを算出することにより、軸誤差変動の基本波成分をsin成分とcos成分とに分離する。軸誤差変動成分分離器611は、第一フーリエ係数Δθsin及び第二フーリエ係数Δθcosを機械角周期毎に算出して更新する。軸誤差変動成分分離器611が基本波成分のフーリエ係数を機械角周期毎に更新することで、軸誤差変動の高調波成分が排除された軸誤差変動基本波成分を精度よく抽出することができる。
【数13】
【数14】
【0060】
軸誤差変動積算器612は、式(15)に従って、第一フーリエ係数Δθsinと補正ゲインkとの乗算結果Δθsin・kの積算値Δθsin_iを算出し、式(16)に従って、第二フーリエ係数Δθcosと補正ゲインkとの乗算結果Δθcos・kの積算値Δθcos_iを算出する。式(15)におけるΔθsin_i_oldは前回の機械角周期で算出された積算値Δθsin_iであり、式(16)におけるΔθcos_i_oldは前回の機械角周期で算出された積算値Δθcos_iである。また、積算値Δθsin_i及び積算値Δθcos_iの算出は、電流調整区間I2に開始され、位置センサレス制御モードM3でも継続して実施される。
【数15】
【数16】
【0061】
速度変動復調器613は、式(17)に従って、積算値Δθsin_i,Δθcos_iを復調することにより、速度変動値Δωを生成する。式(17)に従って速度変動値Δωが生成されることで、軸誤差変動の積算値からπ/2だけ位相が遅れた速度変動が生成され、機械角位相θmでの速度変動の瞬時値が生成される。ここで、軸誤差変動に対してπ/2だけ位相を遅らせた速度変動を生成することで、速度変動の積分で表される位置変動が速度変動よりさらにπ/2だけ遅れた位相で発生する。したがって、位置変動は軸誤差変動に対して逆位相となるため、軸誤差変動が0に収束される。
【数17】
【0062】
なお、軸誤差変動と速度変動との間に理論的な数式関係が成立する場合には、式(17)に従って軸誤差変動の位相に対して固定値であるπ/2だけ位相が遅れた速度変動値Δωを生成することによって軸誤差変動を0に収束させることが可能である。しかし、軸誤差Δθ自体に誤差が含まれる場合には、軸誤差変動と速度変動との間に理論的な数式関係が成立しなくなるため、軸誤差変動の位相に対して固定値であるπ/2だけ位相が遅れた速度変動の位相では軸誤差変動を0に収束させられないおそれがある。軸誤差Δθ自体の誤差は、モータMの回転数に依存する軸誤差演算器30の応答速度に起因して生ずるものと考えられる。そこで、軸誤差Δθ自体に誤差が含まれる場合には、軸誤差変動の位相に対する速度変動の位相のシフト量θshiftをモータMの回転数によって変化させることで、軸誤差変動を0に収束させることができる。そこで、軸誤差Δθ自体に誤差が含まれる場合には、速度変動復調器613は、式(18)~(21)に従って速度変動値Δωを生成するのが好ましい。式(21)におけるf(ω*)は、速度指令値ω*を入力とする関数であり、速度指令値ω*に応じて速度変動の位相が変化するように、例えば1次または2次の関数によって表現される。
【0063】
上記のように、軸誤差Δθ自体に誤差が含まれるか否かによって、速度変動値Δωの好ましい生成方法は異なるため、軸誤差Δθ自体に誤差が含まれるか否かを予め実験等によって確認し、軸誤差Δθ自体に誤差が含まれるか否かに応じた速度変動値Δωの生成方法をモータ制御装置100aに予め設定しておくのが好ましい。
【数18】
【数19】
【数20】
【数21】
【0064】
式(17)または式(18)に従って生成される速度変動値Δωは、速度指令値ω*及び速度推定値ωを補正するための速度変動補正値として用いられる。
【0065】
以上、速度変動補正値生成器61の構成について説明した。
【0066】
図1に戻り、加算器62は、運転モードが同期運転モードにあるときに、式(22)に従って、速度指令値ω
*に速度変動値Δωを速度変動補正値として加算することにより補正後速度指令値である速度情報ω_corを算出する。なお、加算器62は、運転モードが位置センサレス制御モードにあるときは、速度推定値ωに速度変動値Δωを速度変動補正値として加算することにより補正後速度推定値である速度情報ω_corを算出する。
【数22】
【0067】
位置推定器32は、速度情報ω_corを式(23)に従って積分することで回転位相θdqを生成する。
【数23】
【0068】
また、位置推定器32は、速度情報ω_corに基づいて、式(24)に従って、機械角位相θmを生成する。
【数24】
【0069】
以上のように、速度指令値ω*及び速度推定値ωの変動成分が速度変動値Δωによって補正されるため、d-q座標軸とdc-qc座標軸とが変動成分を含めて一致した正確な位置推定を行うことができる。
【0070】
<トルク変動補正値生成器の構成>
図7は、本開示の実施例1のトルク変動補正値生成器の構成例を示す図である。
図7において、トルク変動補正値生成器63は、速度変動成分分離器631と、速度変動振幅算出器632と、減算器633と、補正トルク振幅算出器634と、速度変動位相修正器635と、直交成分分離器636と、補正トルク復調器637とを有する。トルク変動補正値生成器63には、速度変動補正値生成器61から速度変動値Δωが入力され、位置推定器32から機械角位相θmが入力される。また、トルク変動補正値生成器63には、モータ制御装置100aの外部(例えば、上位のコントローラ)から速度変動許容値|Δω|
*が入力される。速度変動許容値|Δω|
*は、速度変動の振幅値に対する許容値であり、モータMに発生する振動が許容範囲に収まるような値に設定される。トルク変動補正値生成器63は、速度推定値ωの変動が速度変動許容値|Δω|
*内に抑制されるように、以下のようにして、トルク変動補正値ΔTを生成する。
【0071】
トルク変動補正値生成器63は、モータMに発生する振動が実使用上問題とならない範囲の速度変動となるように、フィードバックされた速度変動値Δωに基づいて、トルク変動補正値ΔTの振幅と位相を機械角周期毎に調整する。
【0072】
そこで、速度変動成分分離器631は、速度変動値Δωと機械角位相θmとに基づいて、高調波成分が排除された速度変動の基本波成分をsin成分とcos成分とに分離する。速度変動成分分離器631は、式(25)及び式(26)に従って第三フーリエ係数ωsinと第四フーリエ係数ωcosとを算出することにより、速度変動の基本波成分をsin成分とcos成分とに分離する。速度変動成分分離器631は、第三フーリエ係数ωsin及び第四フーリエ係数ωcosを機械角周期毎に算出して更新する。速度変動成分分離器631が基本波成分のフーリエ係数を機械角周期毎に更新することで、速度変動の高調波成分が排除された速度変動基本波成分を精度よく抽出することができる。
【数25】
【数26】
【0073】
速度変動振幅算出器632は、第三フーリエ係数ωsin及び第四フーリエ係数ωcosに基づいて、式(27)に従って、速度変動基本波成分の振幅値|Δω|を算出する。上記のように第三フーリエ係数ωsin及び第四フーリエ係数ωcosは機械角周期毎に更新されるため、振幅値|Δω|も機械角周期毎に更新される。
【数27】
【0074】
減算器633は、振幅値|Δω|から速度変動許容値|Δω|*を減算し、差分値|Δω|-|Δω|*を補正トルク振幅算出器634へ出力する。
【0075】
補正トルク振幅算出器634は、式(28)に従って、差分値|Δω|-|Δω|
*と補正ゲインkとの乗算結果k・(|Δω|-|Δω|
*)を機械角周期毎に積算することにより、機械角周期毎に補正トルク振幅|ΔT|を算出する。式(28)における|ΔT|_oldは前回の機械角周期で算出された補正トルク振幅|ΔT|である。式(28)における補正ゲインkの大きさによって、補正トルク振幅|ΔT|の変化量が決定される。式(28)における補正ゲインkが適切な値に設定されることで、速度変動が速度変動許容値の境界でハンチングすることを抑制できるとともに、急激な負荷トルクの変化によって速度変動が速度変動許容値を超えてモータMに振動・騒音が発生することを抑制することができる。なお、補正トルク振幅|ΔT|の算出は、電流調整区間I2に開始され、位置センサレス制御モードM3でも継続して実施される。
【数28】
【0076】
速度変動位相修正器635は、式(29)に従って、第三フーリエ係数ωsinと補正ゲインkとの乗算結果ωsin・kの積算値ωsin_iを算出し、式(30)に従って、第四フーリエ係数ωcosと補正ゲインkとの乗算結果ωcos・kの積算値ωcos_iを算出する。式(29)におけるωsin_i_oldは前回の機械角周期で算出された積算値ωsin_iであり、式(30)におけるωcos_i_oldは前回の機械角周期で算出された積算値ωcos_iである。
【数29】
【数30】
【0077】
また、速度変動位相修正器635は、積算値ωsin_i,ωcos_iに基づいて、式(31)に従って、速度変動成分の位相が修正された位相(以下では「速度変動修正位相」と呼ぶことがある)φωiを算出する。速度変動修正位相φωiがトルク制御位相の基準となり、速度変動修正位相φωiからπ/2だけ遅れた位相が、補正トルク位相となる。
【数31】
【0078】
直交成分分離器636は、式(32)に従って、振幅が補正トルク振幅|ΔT|であり、位相が速度変動修正位相φωiである基本波のsin成分ωsin_iを算出するとともに、式(33)に従って、振幅が補正トルク振幅|ΔT|であり、位相が速度変動修正位相φωiである基本波のcos成分ωcos_iを算出する。この処理は、式(29)及び式(30)の演算による位相修正時の発散を防止する役割も有する。
【数32】
【数33】
【0079】
補正トルク復調器637は、式(34)に従って、sin成分ωsin_i及びcos成分ωcos_iを復調することにより、トルク変動補正値ΔTを生成する。式(34)に従ってトルク変動補正値ΔTが生成されることで、速度変動修正位相φωiからπ/2だけ遅れた補正トルク位相が算出され、機械角位相θmでの補正トルクの瞬時値が生成される。
【数34】
【0080】
なお、補正トルク復調器637は、式(34)に替えて、式(35)に従ってトルク変動補正値ΔTを生成しても良い。
【数35】
【0081】
以上、トルク変動補正値生成器63の構成について説明した。以上のようにして生成されたトルク変動補正値ΔTを用いて平均トルク指令値T_ave*が補正されることにより、モータMの回転速度の変動が抑制される。
【0082】
図1に戻り、トルク変動補正値生成器63によって生成されたトルク変動補正値ΔTは、加算器51及びq軸電流補正値算出器64に入力される。また、q軸電流補正値算出器64には、同期運転電流指令値生成器13から同期運転d軸電流指令値id_sy
*が入力される。
【0083】
q軸電流補正値算出器64は、式(36)に従って、トルク次元の物理量を電流次元に変換することにより、トルク変動補正値ΔTからq軸電流補正値Δiq_tを算出する。
【数36】
【0084】
加算器52は、q軸電流補正値Δiq_tを同期運転q軸電流指令値iq_sy*に加算することにより補正後同期運転q軸電流指令値iq_sy*’を算出する。
【0085】
以上説明したように、同期運転モードM2の電流調整区間I2において、軸誤差変動を抑制するために必要な速度変動値Δωが生成される。また、速度変動値Δωに基づいてトルク変動補正値ΔTが生成され、トルク変動補正値ΔTに基づいて生成される補正後同期運転q軸電流指令値iq_sy*’によって電流制御が行われる。これにより、モータMの起動時の周期的トルク変動による速度変動が抑制される。よって、モータMの振動・騒音を低減できるとともに、位置センサレス制御モードM3への移行時の切替ショックを低減できる。
【0086】
ここで、速度変動補正値生成器61は、軸誤差変動を0にするために必要な速度変動値Δωを生成する。これにより、モータMの効率向上の観点等から速度変動許容値|Δω|*が大きな値に設定された場合であっても、軸誤差Δθの変動が抑えられる。したがって、トルク制御が正常に機能し、モータMの振動・騒音を低減できるとともに、位置センサレス制御モードM3への移行時の切替ショックを低減できる。
【0087】
また、トルク変動補正値生成器63は、速度変動値Δωに基づいて、トルク変動補正値ΔTを生成する。これにより、運転モードが同期運転モードまたはセンサレス制御モードの何れにあるかによらず、トルク変動補正値ΔTに基づいたトルク制御を実現できる。
【0088】
なお、上記説明では、モータ制御装置100aが、速度変動補正値生成器61とトルク変動補正値生成器63とを別々に有する形態を一例に挙げた。しかし、モータ制御装置100aは、速度変動補正値生成器61とトルク変動補正値生成器63とを別々に有する替わりに、速度変動補正値生成器61とトルク変動補正値生成器63とを一体化した「トルク制御器」を有しても良い。
【0089】
以上、実施例1について説明した。
【0090】
[実施例2]
巻線抵抗、d軸インダクタンス、q軸インダクタンス及び鎖交磁束等、モータMの特性を決定するパラメータや負荷の大きさによっては、q軸電流補正値Δiq_tの変動振幅が増加し、電流制御器20の応答遅延やdq軸間干渉の影響によって、電流検出値が電流指令値に追従しない場合がある。
【0091】
そこで、実施例2では、電流指令値への電流検出値の追従性を向上させる。以下、実施例1と異なる点について説明する。
【0092】
<モータ制御装置の構成>
図8は、本開示の実施例2のモータ制御装置の構成例を示す図である。
図8において、モータ制御装置100bは、電流追従誤差補正値生成器71と、加算器72,73とを有する。電流追従誤差補正値生成器71には、d軸電流指令値id
*及びq軸電流指令値iq
*が入力される。また、電流追従誤差補正値生成器71には、位置推定器32から機械角位相θmが入力され、uvw/dq変換器29からd軸電流検出値id及びq軸電流検出値iqが入力される。
【0093】
<電流追従誤差補正値生成器の構成>
ここで、電流検出値は周期的トルク変動の周期で変動する。このため、電流検出値の平均値は電流指令値の平均値に追従するものの、電流検出値の変動成分は、電流制御器20の応答遅延やdq軸間干渉の影響によって、電流指令値の変動成分に追従しないことがある。電流検出値が電流指令値に追従しない場合、電流検出値の位相と電流指令値の位相との間にズレが発生する。
【0094】
そこで、電流追従誤差補正値生成器71は、以下の構成を採る。
図9は、本開示の実施例2の電流追従誤差補正値生成器の構成例を示す図である。
図9において、電流追従誤差補正値生成器71は、減算器711,712と、d軸電流誤差成分分離器713と、q軸電流誤差成分分離器714と、d軸電流誤差積算器715と、q軸電流誤差積算器716と、d軸電流誤差補正値復調器717と、q軸電流誤差補正値復調器718とを有する。
【0095】
減算器711は、式(37)に従って、d軸電流検出値idからd軸電流指令値id
*を減算することによりd軸電流変動誤差id_errを算出する。
【数37】
【0096】
d軸電流誤差成分分離器713は、式(38)及び式(39)に従って第五フーリエ係数id_err_sinと第六フーリエ係数id_err_cosとを算出することにより、高調波成分が排除されたd軸電流変動誤差id_errの基本波成分をsin成分とcos成分とに分離する。d軸電流誤差成分分離器713は、第五フーリエ係数id_err_sin及び第六フーリエ係数id_err_cosを機械角周期毎に算出して更新する。d軸電流誤差成分分離器713が基本波成分のフーリエ係数を機械角周期毎に更新することで、d軸電流変動誤差id_errの高調波成分が排除されたd軸電流変動誤差基本波成分を精度よく抽出することができる。
【数38】
【数39】
【0097】
d軸電流誤差積算器715は、式(40)に従って、第五フーリエ係数id_err_sinと補正ゲインkとの乗算結果id_err_sin・kの積算値id_err_sin_iを算出し、式(41)に従って、第六フーリエ係数id_err_cosと補正ゲインkとの乗算結果id_err_cos・kの積算値id_err_cos_iを算出する。式(40)におけるid_err_sin_i_oldは前回の機械角周期で算出された積算値id_err_sin_iであり、式(41)におけるid_err_cos_i_oldは前回の機械角周期で算出された積算値id_err_cos_iである。また、積算値id_err_sin_i及び積算値id_err_cos_iの算出は、電流調整区間I2に開始され、位置センサレス制御モードM3でも継続して実施される。
【数40】
【数41】
【0098】
d軸電流誤差補正値復調器717は、式(42)に従って、積算値id_err_sin_i,id_err_cos_iを復調することにより、d軸電流誤差補正値Δid_iを生成し、生成したd軸電流誤差補正値Δid_iを加算器72へ出力する。式(42)に従ってd軸電流誤差補正値Δid_iが生成されることで、d軸電流変動誤差id_errの積算値から位相が反転したd軸電流誤差補正値Δid_iが生成され、機械角位相θmでのd軸電流誤差補正値Δid_iの瞬時値が生成される。
【数42】
【0099】
一方で、減算器712は、式(43)に従って、q軸電流検出値iqからq軸電流指令値iq
*を減算することによりq軸電流変動誤差iq_errを算出する。
【数43】
【0100】
q軸電流誤差成分分離器714は、式(44)及び式(45)に従って第七フーリエ係数iq_err_sinと第八フーリエ係数iq_err_cosとを算出することにより、高調波成分が排除されたq軸電流変動誤差iq_errの基本波成分をsin成分とcos成分とに分離する。q軸電流誤差成分分離器714は、第七フーリエ係数iq_err_sin及び第八フーリエ係数iq_err_cosを機械角周期毎に算出して更新する。q軸電流誤差成分分離器714が基本波成分のフーリエ係数を機械角周期毎に更新することで、q軸電流変動誤差iq_errの高調波成分が排除されたq軸電流変動誤差基本波成分を精度よく抽出することができる。
【数44】
【数45】
【0101】
q軸電流誤差積算器716は、式(46)に従って、第七フーリエ係数iq_err_sinと補正ゲインkとの乗算結果iq_err_sin・kの積算値iq_err_sin_iを算出し、式(47)に従って、第八フーリエ係数iq_err_cosと補正ゲインkとの乗算結果iq_err_cos・kの積算値iq_err_cos_iを算出する。式(46)におけるiq_err_sin_i_oldは前回の機械角周期で算出された積算値iq_err_sin_iであり、式(47)におけるiq_err_cos_i_oldは前回の機械角周期で算出された積算値iq_err_cos_iである。また、積算値iq_err_sin_i及び積算値iq_err_cos_iの算出は、電流調整区間I2に開始され、位置センサレス制御モードM3でも継続して実施される。
【数46】
【数47】
【0102】
q軸電流誤差補正値復調器718は、式(48)に従って、積算値iq_err_sin_i,iq_err_cos_iを復調することにより、q軸電流誤差補正値Δiq_iを生成し、生成したq軸電流誤差補正値Δiq_iを加算器73へ出力する。式(48)に従ってq軸電流誤差補正値Δiq_iが生成されることで、q軸電流変動誤差iq_errの積算値から位相が反転したq軸電流誤差補正値Δiq_iが生成され、機械角位相θmでのq軸電流誤差補正値Δiq_iの瞬時値が生成される。
【数48】
【0103】
図8に戻り、加算器72は、式(49)に従って、d軸電流指令値id
*にd軸電流誤差補正値Δid_iを加算することにより、d軸電流誤差補正値Δid_iによる補正後のd軸電流指令値である補正d軸電流指令値id_FF
*を算出する。
【数49】
【0104】
加算器73は、式(50)に従って、q軸電流指令値iq
*にq軸電流誤差補正値Δiq_iを加算することにより、q軸電流誤差補正値Δiq_iによる補正後のq軸電流指令値である補正q軸電流指令値iq_FF
*を算出する。
【数50】
【0105】
減算器18は、補正d軸電流指令値id_FF*からd軸電流検出値idを減算することによりd軸電流誤差id_dif’を算出する。減算器19は、補正q軸電流指令値iq_FF*からq軸電流検出値iqを減算することによりq軸電流誤差iq_dif’を算出する。
【0106】
電流制御器20は、d軸電流誤差id_dif’を比例積分制御することにより、非干渉化前のd軸電圧指令値Vd_ccを算出する。また、電流制御器20は、q軸電流誤差iq_dif’を比例積分制御することにより、非干渉化前のq軸電圧指令値Vq_ccを算出する。
【0107】
以上のようにしてd軸電流誤差補正値Δid_i及びq軸電流誤差補正値Δiq_iを用いてd軸電流指令値id*及びq軸電流指令値iq*を補正することで、電流制御器20の応答遅延や電流制御に伴うdq軸間干渉を抑制することができるため、電流指令値への電流検出値の追従性が向上する。
【0108】
以上、実施例2について説明した。
【0109】
以上のように、本開示のモータ制御装置(実施例のモータ制御装置100a,100b)は、速度上昇区間と電流調整区間とを有する同期運転モードと、位置センサレス制御モードとを有する。同期運転モードでは、速度指令値に基づく制御系座標軸の回転位相にモータ(実施例のモータM)が同期する。位置センサレス制御モードでは、軸誤差を帰還制御することで得られる速度推定値に基づいて制御系座標軸の回転位相が生成される。また、本開示のモータ制御装置は、同期運転電流指令値生成器(実施例の同期運転電流指令値生成器13)と、トルク制御器(実施例の速度変動補正値生成器61及びトルク変動補正値生成器63)とを有する。同期運転電流指令値生成器は、速度上昇区間において、電流指令値(実施例の同期運転電流指令値)を所定値(実施例の所定値id_ini)に設定してモータの回転数を所定回転数(実施例の所定回転数ω1)まで上昇させた後、電流調整区間において、モータの負荷に応じて電流指令値を調整する。トルク制御器は、電流調整区間において、モータのトルク制御を行う。
【0110】
また、トルク制御器は、速度変動補正値生成器(実施例の速度変動補正値生成器61)を有する。速度変動補正値生成器は、電流調整区間において軸誤差の変動成分に基づいて速度変動補正値(実施例の速度変動値Δω)を生成する。
【0111】
また、トルク制御器は、トルク変動補正値生成器(実施例のトルク変動補正値生成器63)を有する。トルク変動補正値生成器は、速度変動補正値に基づいて、モータの回転速度の変動を抑制するためのトルク変動補正値(実施例のトルク変動補正値ΔT)を生成する。また、モータ制御装置は、電流補正値算出器(実施例のq軸電流補正値算出器64)を有する。電流補正値算出器は、トルク変動補正値に基づいて電流補正値(実施例のq軸電流補正値Δiq_t)を算出する。
【0112】
また、同期運転電流指令値生成器は、電流調整区間において、d軸電流指令値(実施例の同期運転d軸電流指令値id_sy*)を所定値よりも小さい値を有する目標指令値(実施例の目標指令値id_sy_end)まで減少させるとともに、軸誤差を0に近づけるように帰還制御することによりq軸電流指令値(実施例の同期運転q軸電流指令値iq_sy*)を調整する。また、電流補正値は、q軸電流指令値に対する補正値である。
【0113】
また、本開示のモータ制御装置(実施例のモータ制御装置100b)は、電流追従誤差補正値生成器(実施例の電流追従誤差補正値生成器71)と、加算器(実施例の加算器72,73)とを有する。電流追従誤差補正値生成器は、電流指令値と、電流検出値との間の電流誤差(実施例のd軸電流変動誤差id_err,q軸電流変動誤差iq_err)に基づいて電流追従誤差補正値(実施例のd軸電流誤差補正値Δid_i,q軸電流誤差補正値Δiq_i)を生成する。加算器は、電流追従誤差補正値を電流指令値に加算することにより補正電流指令値(実施例の補正d軸電流指令値id_FF*,補正q軸電流指令値iq_FF*)を算出する。
【0114】
また、電流追従誤差補正値生成器は、電流誤差を積算し、電流誤差の積算結果の位相が反転した値を電流追従誤差補正値として生成する。
【符号の説明】
【0115】
100a,100b モータ制御装置
13 同期運転電流指令値生成器
61 速度変動補正値生成器
63 トルク変動補正値生成器
64 q軸電流補正値算出器
71 電流追従誤差補正値生成器