以下、図面を参照して、本発明の実施形態について説明する。
図1は、本実施形態の制御方法により制御されるモータ制御システム100のブロック図である。モータ制御システム100は、例えば、電気自動車に適用される。なお、電気自動車以外に、例えば、ハイブリッド自動車や、自動車以外のシステムに適用することも可能である。
まず、モータ制御システム100の制御の概略について説明する。モータ制御システム100により制御されるモータ101は、固定子の巻線に電圧を印加可能に構成されるとともに、回転子に巻線を備え回転子側の磁束を変化させることができる巻線界磁型同期モータである。モータ101の回転制御においては、固定子に印加されるd、q軸の電圧に加えて、回転子の磁束を変化させるf軸の電圧が制御される。
電流指令値演算器113は、アクセル開度などに基づくトルク指令値T*に応じてd、q及びf軸の電流指令値(id
*、iq
*、if
*)を算出する。d、q及びf軸の電流制御部114、115、116は、A/D変換器107、及び、3相/d-q交流座標変換器108を介して入力されるモータ101の実電流(id、iq、if)が、電流指令値(id
*、iq
*、if
*)に追従するように第1の電圧指令値(vd_dsh、vq_dsh、vf_dsh)を算出する。
なお、d、q及びf軸の制御において相互の干渉が発生するので、この干渉をキャンセルするために、非干渉制御部117は、電流制御部114、115、116からの出力に基づいて非干渉電圧(vd_dcpl、vq_dcpl、vf_dcpl)を生成する。第2の電圧指令値演算部118において、第1の電圧指令値(vd_dsh、vq_dsh、vf_dsh)と非干渉電圧(vd_dcpl、vq_dcpl、vf_dcpl)とが加算されることで、d、q及びf軸の相互干渉が生じない第2の電圧指令値(vd
*、vq
*、vf
*)が算出される。このように非干渉電圧を加算することで、d、q及びf軸のそれぞれの軸の電圧制御において、他の軸からの影響を考慮する必要がなくなる。
d、q軸に関しては、第2の電圧指令値演算部118から出力される第2の電圧指令値(vd
*、vq
*)は、d-q/3相交流座標変換器119、PWM変換器102、三相電圧型のインバータ103を介して、交流電圧(vu、vv、vw)としてモータ101の固定子が備える巻線に印加される。
f軸に関しては、第2の電圧指令値演算部118から出力される第2の電圧指令値(vf
*)は、f軸電流出力部105に入力される。f軸電流出力部105は、直流電源104の直流電圧(Vdc)を用いて、第2の電圧指令値(vf
*)に応じたf軸電圧vfを生成し、f軸電圧vfをモータ101の回転子が備えるコイルに印加する。
なお、モータ制御システム100においては、全体の遅れ成分を考慮して制御を行うために、パルスカウンタ110、角速度演算器111、及び、先読み補償部112などが設けられている。
角速度演算器111、先読み補償部112、電流指令値演算器113、d軸電流制御部114、q軸電流制御部115、f軸電流制御部116、非干渉制御部117、第2の電圧指令値演算部118、d-q/3相交流座標変換器119は、例えばCPUなどの1つのコントローラによって制御が実行されてもよい。また、PWM変換器102、f軸電流出力部105、A/D変換器107、3相/d-q交流座標変換器108、パルスカウンタ110などは、本実施形態においては上述のコントローラにより処理が行われるものとするが、コントローラとは別のマイコンにより制御が行われてもよい。
以下においては、それぞれの構成について詳細に説明する。
モータ101は、巻線界磁型同期モータである。巻線界磁型同期モータは、固定子側の三相の電機子巻線に加えて回転子側に界磁巻線を有し、界磁巻線への印加電圧を制御することで回転子の磁束を変更させることができる。なお、モータ制御システム100が電気自動車に適用される場合、モータ101は車両の駆動源となる。
PWM変換器102は、入力される三相の電圧指令値vu
*、vv
*、vw
*に基づき、三相電圧型のインバータ103を構成するスイッチング素子(IGBTなど)の操作に用いるPWM Duty駆動信号(Duu
*、Dul
*、Dvu
*、Dvl
*、Dwu
*、Dwl
*)を生成する。
インバータ103は、直流電源104の電源電圧Vdcを用いて、PWM変換器102により生成される駆動信号に応じて交流電圧vu、vv、vwを生成し、交流電圧vu、vv、vwをモータ101に供給する。なお、直流電源104は、例えば積層型リチウムイオンバッテリである。
f軸電流出力部105は、直流電源104から供給される電源電圧Vdcを用いて、第2のf軸電圧指令値vf
*に応じたf軸電圧vfを回転子巻線に印加することで、回転子巻線にはf軸電流ifが流れる。このように、固定子および回転子に設けられる巻線には共通の直流電源104から電力が供給される。なお、電源電圧Vdcは、後述の制限処理に用いられるためにf軸電流制御部116へと出力される。
電流センサ106は、複数設けられている。それらのうちの2つの電流センサ106u、電流センサ106vは、インバータ103からモータ101に供給される三相交流電流のうち、少なくとも2相の電流であるu相電流iu、及び、v相電流ivを検出する。検出されたu相電流iu、及び、v相電流ivは、A/D変換器107でデジタル信号であるu相電流ius、及び、v相電流ivsに変換され、3相/d-q交流座標変換器108に入力される。なお、電流センサ106を3相のうちの2相にのみに取り付ける場合、残りの1相のw相電流iwsは、次式(1)により求めることができる。
また、他の1つのf軸電流センサ106fは、f軸電流出力部105からモータ101への電流供給路にも設けられており、f軸電流ifを検出する。検出されたf軸電流ifは、A/D変換器107においてデジタル信号に変換され、3相/d-q交流座標変換器108に入力される。
磁極位置検出器109は、モータ101に設けられるレゾルバから出力されるABZ相のパルスを検出する。パルスカウンタ110は、磁極位置検出器109により取得されたABZ相のパルスに応じて電気角度θreを求め、電気角度θreを3相/d-q交流座標変換器108、及び、先読み補償部112に出力する。
角速度演算器111は、電気角度θreを入力して、その時間変化率に基づいて、電気角速度ωre、及び、モータ回転数ωrmを求める。なお、モータ回転数ωrmは、電気角速度ωreをモータ極対数pにて除して求められる。
先読み補償部112は、電気角度θreと電気角速度ωreを入力して、電気角度θreに対して、電気角速度ωreと制御系が持つむだ時間との乗算値を加算することにより、先読み補償後電気角θre
'を求める。先読み補償部112は、先読み補償後電気角θre
' をd-q/3相交流座標変換器119へと出力する。
3相/d-q交流座標変換器108は、3相交流座標系(uvw軸)から直交2軸直流座標系(d-q軸)への変換を行なう。具体的には、u相電流ius、v相電流ivsと及び電気角度θreを入力として、次式(2)よりd軸電流id、及び、q軸電流iqを算出する。
電流指令値演算器113は、トルク指令値T*、機械角速度であるモータ回転数ωrm、及び、電源電圧Vdcを入力とし、d軸電流指令値id
*、q軸電流指令値iq
*、及び、f軸電流指令値if
*を算出する。電流指令値演算器113は、トルク指令値T*、モータ回転数ωrm、及び、電源電圧Vdcと、d軸電流指令値id
*、q軸電流指令値iq
*、及び、f軸電流指令値if
*との関係を定めたマップデータを予めメモリに記憶しておき、このマップデータを参照することでd軸電流指令値id
*、q軸電流指令値iq
*及びf軸電流指令値if
*の各々を求める。
d軸電流制御部114は、計測されたd軸電流idがd軸電流指令値id
*に追従するように、第1のd軸電圧指令値vd_dsh、d軸電流規範応答id_ref、及び、d軸電流規範応答の微分値s・id_refを算出する。q軸電流制御部115は、q軸電流iqがq軸電流指令値iq
*に追従するように、第1のq軸電圧指令値vq_dsh、及び、q軸電流規範応答iq_refを算出する。f軸電流制御部116は、f軸電流ifがf軸電流指令値if
*に追従するように、第1のf軸電圧指令値vf_dsh、f軸電流規範応答if_ref、及び、f軸電流規範応答の微分値s・if_refを算出する。これらの処理のうち、f軸電流制御部116の詳細については、図2を用いて後述する。なお、f軸電流制御部116は、f軸電流制御ステップを実行するブロックの一例である。
非干渉制御部117は、電気角速度ωreと、d軸電流制御部114から出力されるd軸電流規範応答id_ref、及び、d軸電流規範応答の微分値s・id_refと、q軸電流制御部115から出力されるq軸電流規範応答iq_refと、f軸電流制御部116から出力されるf軸電流規範応答if_ref、及び、f軸電流規範応答の微分値s・if_refを入力して、d、q及びf軸において各々の1軸に対して他の2軸からの干渉電圧を相殺するために必要な非干渉電圧vd_dcpl、vq_dcpl、vf_dcplを算出する。なお、非干渉電圧vf_dcplは、後述の制限処理に用いられるためにf軸電流制御部116へと出力される。なお、非干渉制御部117は、f軸非干渉制御ステップを実行するブロックの一例である。
第2の電圧指令値演算部118は、d、q及びf軸に対応する3つの加算器により構成される。第2の電圧指令値演算部118は、d軸電流制御部114から出力される第1のd軸電圧指令値vd_dshに、非干渉制御部117の出力である非干渉電圧vd_dcplを加算することで、第2のd軸電圧指令値vd
*を算出する。第2の電圧指令値演算部118は、q軸電流制御部115から出力される第1のq軸電圧指令値vq_dshに、非干渉制御部117の出力である非干渉電圧vq_dcplを加算することで、第2のq軸電圧指令値vq
*を算出する。第2の電圧指令値演算部118は、f軸電流制御部116から出力される第1のf軸電圧指令値vf_dshに、非干渉制御部117の出力であるf軸非干渉電圧vf_dcplを加算することで、第2のf軸電圧指令値vf
*を算出する。このように非干渉電圧を加算することによりd、q及びf軸のそれぞれにおいて他の2軸からの干渉成分がキャンセルされるので、d、q及びf軸のそれぞれを単純な一次遅れ系として扱うことができる。なお、第2の電圧指令値演算部118は、f軸電圧出力ステップを実行するブロックの一例である。また、非干渉制御の詳細については、後に、式(4)~(8)を用いて説明する。
d-q/3相交流座標変換器119は、電気角速度ωreで回転する直交2軸直流座標系(d-q軸)から3相交流座標系(uvw軸)への変換を行う。具体的には、第2のd軸電圧指令値vd
*、第2のq軸電圧指令値vq
*と、先読み補償後電気角θre
'を入力し、次式(3)による座標変換処理を行うことによって、uvw各相の電圧指令値vu
*、vv
*、vw
*を算出して出力する。
以降において、巻線界磁型のモータ101における非干渉制御について説明する。まず、巻線界磁型のモータ101における電圧方程式は、次式(4)のように示される。
ただし、式(4)のパラメータは以下のとおりである。なおこれらの値のうち、インダクタンス及び抵抗は、モータ101の設計により定まる。
id :d軸電流
iq :q軸電流
if :f軸電流
vd :d軸電圧
vq :q軸電圧
vf :f軸電圧
Ld :d軸インダクタンス
Lq :q軸インダクタンス
Lf :f軸インダクタンス
M :固定子/回転子間の相互インダクタンス
Ld
' :d軸動的インダクタンス
Lq
' :q軸動的インダクタンス
Lf
' :f軸動的インダクタンス
M' :固定子/回転子間の動的相互インダクタンス
Ra :固定子巻線抵抗
Rf :回転子巻線抵抗
ωre :電気角速度
s :ラプラス演算子
ここで、非干渉制御部117が非干渉成分を理想的に算出し、第2の電圧指令値演算部118によって非干渉成分が加算されれば、d、q、及び、f軸のそれぞれにおいて他の2軸からの干渉がキャンセルされる。そのため、電圧方程式は次式(5)に示されるように対角化される。
つまり、d、q、及び、f軸における電圧から電流までのモデル、すなわち、電圧を入力として電流を出力とする規範応答モデルは、それぞれ次式(6)、(7)、及び、(8)に示されるような一次遅れ系となることになる。
次に、f軸電流制御部116の詳細について図2を用いて説明する。なお、d、q軸における制御についてはf軸と同様であるため、説明を割愛し、以下ではf軸に関しての制御のみ説明する。
図2は、f軸電流制御部116の詳細なブロック図である。
f軸電流制御部116においては、A/D変換器107から入力されるf軸電流ifが電流指令値演算器113において算出されるf軸電流指令値if
*に定常偏差なく所望の応答性で追従するように第1のf軸電圧指令値vf_dshを算出する。さらに、f軸電流制御部116は、後の処理にて用いられる、f軸電流規範応答if_ref、及び、f軸電流規範応答の微分値s・if_refを算出する。f軸電流制御部116は、f軸F/F(フィードフォワード)補償器201、f軸F/B補償器202、f軸ロバスト補償器203、及び、f軸リミット処理部204により構成されており、以下ではそれぞれの詳細について説明する。
f軸F/F補償器201は、電流指令値演算器113にて算出されるf軸電流指令値if
*を入力として、f軸F/F補償電圧vf_ffに加えて、f軸電流規範応答if_ref、及び、その微分値であるf軸電流規範応答の微分値s・if_refを算出する。f軸F/F補償器201は、f軸電流規範応答if_ref、及び、その微分値であるf軸電流規範応答の微分値s・if_refを非干渉制御部117へと出力するとともに、f軸電流規範応答if_refをf軸F/B補償器202へと出力する。f軸F/F補償器201の詳細については、図3を用いて後述する。なお、図示されていないが、f軸F/F補償器201には、直流電源104から出力される電源電圧Vdc、及び、非干渉制御部117から出力される非干渉電圧vf_dcplが入力される。なお、f軸F/F補償器201は、f軸電流制御ステップを実行するブロックの一例である。
f軸F/B補償器202は、一般的なフィードバック補償を行う補償器である。f軸F/B補償器202は、f軸F/F補償器201において算出されるf軸電流規範応答if_refに対して、f軸電流センサ106fによって測定されたf軸電流ifを負帰還させるF/B処理を行うことで、f軸電流ifがf軸電流規範応答if_refに追従するように、f軸F/B補償電圧vf_fbを算出する。f軸F/B補償器202は、f軸F/B補償電圧vf_fbを加算器205へと出力する。f軸F/B補償器202の詳細については、図8を用いて後述する。なお、f軸F/B補償器202は、F/B補償ステップを実行するブロックの一例である。加算器205は、加算ステップを実行するブロックの一例である。
f軸ロバスト補償器203は、後述のf軸リミット処理部204において算出され最終的にf軸電流制御部116から出力される第1のf軸電圧指令値vf_dshと、f軸電流ifとに基づいて、システムの堅牢性を確保するためのf軸ロバスト補償電圧vf_rbstを算出する。f軸ロバスト補償器203は、f軸ロバスト補償電圧vf_rbstを加算器206へと出力する。f軸ロバスト補償器203の詳細については、図9を用いて後述する。
f軸リミット処理部204の前段には2つの加算器205、206が設けられている。f軸F/F補償器201において算出されたf軸F/F補償電圧vf_ffに対して、加算器205によりf軸F/B補償電圧vf_fbが加算され、さらに、加算器206によりf軸ロバスト補償電圧vf_rbstが加算される。そして、最終的な加算値が、f軸リミット処理部204へと入力される。従って、f軸リミット処理部204には、F/F指令値であるf軸F/F補償電圧vf_ffに対して、F/B補償値であるf軸F/B補償電圧vf_fb、及び、f軸ロバスト補償値であるf軸ロバスト補償電圧vf_rbstが加算されたものが入力される。
そして、f軸リミット処理部204は、入力される電圧指令値を制限して第1のf軸電圧指令値vf_dshを算出する。f軸リミット処理部204は、f軸電圧指令値vf_dshを第2の電圧指令値演算部118、及び、f軸ロバスト補償器203へと出力する。なお、f軸リミット処理部204においては、図6及び7を用いて説明される後述のf軸リミット処理部303と同じ処理が行われる。
次に、f軸F/F補償器201の詳細な構成について図3を用いて説明する。図3は、f軸F/F補償器201の詳細なブロック図である。f軸F/F補償器201は、f軸電流モデル301と、f軸電流擬似F/Bモデル302と、f軸リミット処理部303とを有する。
f軸電流モデル301は、f軸電圧からf軸電流までの規範応答特性をモデル化したフィルタである。f軸電流モデル301は、後述のf軸リミット処理部303から出力されるf軸F/F補償電圧vf_ffに対して、f軸における電圧から電流までの規範応答モデルを用いたフィルタリング処理することで、規範応答であるf軸電流規範応答if_refを算出し、非干渉制御部117、及び、f軸F/B補償器202へと出力する。また、f軸電流モデル301は、後の処理で用いるために、f軸電流規範応答if_refの微分値であるf軸電流規範応答の微分値s・if_refを非干渉制御部117へと出力する。f軸電流モデル301の詳細については、図4を用いて後述する。なお、f軸電流モデル301は、規範応答処理ステップを実行するブロックの一例である。
f軸電流擬似F/Bモデル302においては、電流指令値演算器113にて算出されるf軸電流指令値if
*に対して、f軸電流モデル301から出力されるf軸電流規範応答if_refが負帰還される。f軸電流擬似F/Bモデル302は、f軸電流指令値if
*に対してf軸電流規範応答if_refを定常偏差なく所望の応答性で追従させるために、疑似FB電圧指令値vf_pse_fbを算出し、f軸リミット処理部303へと出力する。f軸電流擬似F/Bモデル302の詳細については、図5を用いて後述する。なお、f軸電流擬似F/Bモデル302は、疑似F/Bステップを実行するブロックの一例である。
f軸リミット処理部303は、f軸電流疑似F/Bモデル302から出力される疑似FB電圧指令値vf_pse_fbに対して制限を行い、f軸F/F補償電圧vf_ffを算出し、加算器205、及び、f軸電流モデル301へと出力する。f軸リミット処理部303の詳細については、図6、7を用いて後述する。なお、f軸リミット処理部303は、制限ステップを実行するブロックの一例である。
なお、図示されていないが、f軸リミット処理部303には、直流電源104から出力される電源電圧Vdc、及び、非干渉制御部117から出力される非干渉電圧vf_dcplが入力される。図2に示されるように、f軸リミット処理部303から出力されるf軸F/F補償電圧vf_ffは、加算器205、加算器206、及び、f軸リミット処理部204を経て、第1のf軸電圧指令値vf_dshが算出される。すなわち、加算器205、加算器206、及び、f軸リミット処理部204は、第1のf軸電圧指令値算出ステップを実行するブロックの構成の一例である。
このようにf軸F/F補償器201において、f軸電流擬似F/Bモデル302に対して、測定されたf軸電流ifが負帰還されるF/B系ではなく、f軸電流モデル301にて算出されるf軸電流規範応答if_refが負帰還される疑似的なF/B系が構成される。このように擬似的なF/B系を実現することにより、応答性が悪いF/B制御を回避できるため、応答性の向上を図ることができる。
さらに、図1に示されるように、f軸電圧vfは直流電源104により生成されるので、そのf軸電圧vfノ上限は直流電源104の電源電圧Vdcにより制限されて飽和する。そこで、電源電圧Vdcでの飽和をモデル化したf軸リミット処理部303を設けて、第1のf軸電圧指令値vf_dshを制限してf軸F/F補償電圧vf_ffを算出する。電圧飽和が考慮されたf軸F/F補償電圧vf_ffがf軸電流疑似F/Bモデル302に帰還されることにより、回転制御の精度の向上を図ることができる。
次に、f軸電流モデル301の詳細な構成について図4を用いて説明する。図4は、f軸電流モデル301の詳細なブロック図である。f軸電流モデル301は、乗算器401、減算器402、除算器403、及び、積分器404を有する。
乗算器401は、f軸電流モデル301の最終的な出力の1つであり後述の積分器404から出力されるf軸電流規範応答if_refに対して、回転子巻線抵抗Rfを乗算し、乗算結果を減算器402へと出力する。この乗算結果は、規範応答の電圧値に相当する。
減算器402は、f軸リミット処理部303から出力されるf軸F/F補償電圧vf_ffから、乗算器401から出力される規範応答の電圧値を差し引き、その減算値を除算器403に出力する。
除算器403は、減算器402にて算出される差分に対してf軸動的インダクタンスLf
'で除算し、除算結果を非干渉制御部117、及び、積分器404へと出力する。このようにして、f軸電流規範応答の微分値s・if_refが算出される。
積分器404は、除算器403から出力されるf軸電流規範応答の微分値s・if_refを積分処理してf軸電流規範応答if_refを算出し、f軸電流規範応答if_refを非干渉制御部117、f軸F/B補償器202、及び、乗算器401へと出力する。
このように、f軸電流モデル301においては、最終的な出力の1つであるf軸電流規範応答if_refが乗算器401により回転子巻線抵抗Rfが乗算されて、入力であるf軸F/F補償電圧vf_ffに対して負帰還させる。この負帰還の結果値を除算器403によりf軸動的インダクタンスLf
'で除算することで、f軸F/F補償電圧vf_ffに基づくf軸電流規範応答if_ref、及び、その微分値s・if_refを求めることができる。
次に、f軸電流疑似F/Bモデル302の詳細な構成について図5を用いて説明する。図5は、f軸電流疑似F/Bモデル302の詳細なブロック図である。f軸電流疑似F/Bモデル302は、フィルタ501、フィルタ502、及び、減算器503を有する。
フィルタ501は、電流指令値演算器113から出力されるf軸電流指令値if
*にゲインGafを乗算し、そのフィルタ処理後の値を減算器503へと出力する。
フィルタ502は、f軸電流モデル301から出力されるf軸電流規範応答if_refにゲインGbfを乗算し、そのフィルタ処理後の値を減算器503へと出力する。
そして、減算器503は、フィルタ501の出力値からフィルタ502の出力値を差し引くことで疑似F/B電圧指令値vf_pse_fbを算出し、疑似FB電圧指令値vf_pse_fbをf軸リミット処理部303へと出力する。すなわち、測定値ではないf軸電流規範応答if_refが負帰還されることにより、擬似的なF/B制御が構成されることになる。
ただし、ゲインGaf及びゲインGbfは、次式(9)のように示すことができる。ただし、τfは、f軸の電流制御規範応答時定数である。
このように構成されることで、f軸電流疑似F/Bモデル302においては、f軸電流指令値if
*に対して、実際に測定されるf軸電流ifでなくf軸電流規範応答if_refをF/B成分として用いて疑似的なF/B制御を実現することができる。
次に、f軸リミット処理部303の詳細な構成について図6を用いて説明する。図6は、f軸リミット処理部303の詳細なブロック図である。f軸リミット処理部303は、比較器601、反転器602、比較器603、及び、減算器604、605を有する。
比較器601の前段に設けられる減算器604においては、直流電源104の電源電圧Vdcから非干渉制御部117から出力されるf軸非干渉電圧vf_dcplを差し引いた減算値が求められる。そして、比較器601は、f軸電流疑似F/Bモデル302からの出力値である疑似FB電圧指令値vf_pse_fbと、減算器604における減算値とを比較し、より小さな値を比較器603へと出力する。
反転器602は、電源電圧Vdcの符号を反転させる。
比較器603の前段には減算器605が設けられており、減算器605においては、反転器602の出力から、非干渉制御部117から出力されるf軸非干渉電圧vf_dcplを差し引いた減算値が求められる。そして、比較器603は、比較器601の出力値と、減算器605における減算値とを比較し、より大きな値をf軸電流モデル301、及び、加算器205へと出力する。
このような構成により、f軸リミット処理部303においては、f軸電流疑似F/Bモデル302の出力値である疑似FB電圧指令値vf_pse_fbに対して、f軸非干渉電圧vf_dcplを加算するだけの余裕を得るために、f軸非干渉電圧vf_dcplだけマイナスにオフセットされた電源電圧Vdcに基づく制限処理、具体的には、上限値が「Vdc-vf_dcpl」、下限値が「-Vdc-vf_dcpl」となる制限処理が行われる。
また、f軸リミット処理部303を図7に示されるように構成してもよい。図7は、f軸リミット処理部303の詳細なブロック図の他の一例である。この一例においては、f軸リミット処理部303は、比較器701、反転器702、比較器703、減算器704、及び、加算器705を有する。
比較器701の前段には加算器705が設けられており、加算器705において、非干渉制御部117から出力されるf軸非干渉電圧vf_dcplと、f軸電流疑似F/Bモデル302から出力される疑似FB電圧指令値vf_pse_fbとが加算される。そして、比較器701は、直流電源104の電源電圧Vdcと、加算器705における加算結果とを比較し、より小さな値を比較器703へと出力する。
反転器702は、電源電圧Vdcの符号を反転させる。
比較器703は、比較器701からの出力と、反転器702からの出力とを比較して、大きな値を減算器704へと出力する。
減算器704は、比較器703の出力値から非干渉制御部117から出力されるf軸非干渉電圧vf_dcplを差し引くことによりf軸F/F補償電圧vf_ffを算出する。減算器704は、f軸F/F補償電圧vf_ffを、f軸電流モデル301、及び、f軸電流制御部116を構成する加算器205へ出力する。
このような構成しても、f軸リミット処理部303においては、f軸電流疑似F/Bモデル302の出力値である疑似FB電圧指令値vf_pse_fbに対して、f軸非干渉電圧vf_dcplを加算する余裕を得るために、f軸非干渉電圧vf_dcplだけマイナスにオフセットされた電源電圧Vdcに基づく制限処理、具体的には、上限値が「Vdc-vf_dcpl」、下限値が「-Vdc-vf_dcpl」となる制限処理が行われる。
次に、f軸F/B補償器202の詳細について説明する。図8は、f軸F/B補償器202の詳細なブロック図である。f軸F/B補償器202は、ブロック801、乗算器802、及び、減算器803を有する。
ブロック801は、遅延フィルタであって、制御系が持つむだ時間Lだけの遅延処理を行う。ブロック801は、f軸F/F補償器201から出力されるf軸電流規範応答if_refの入力に対してf軸電流規範応答if_refを遅延させ、f軸電流規範応答if_refとf軸電流ifの位相を合わせるためにむだ時間処理後f軸電流規範応答if_ref
'を算出し、乗算器802の前段に設けられる減算器803へ出力する。ここで、制御系が持つむだ時間Lとは制御演算遅れに相当するものとする。ブロック801は、遅延ステップを実行するブロックの一例である。
減算器803は、ブロック801から出力されるむだ時間処理後f軸電流規範応答if_ref
'から、A/D変換器107から出力されるf軸電流ifを差し引いて減算結果を算出する。
乗算器802は、減算器803における減算結果を入力として、f軸F/BゲインKfを乗算することによりf軸F/B補償電圧vf_fbを算出し、f軸F/B補償電圧vf_fbを加算器205へ出力する。なお、f軸F/BゲインKfは、ゲイン余裕や位相余裕などの安定性が所定の基準を満足するように実験にて調整して値を決定する。
このように構成されることで、f軸F/B補償器202において、f軸電流ifに基づくf軸F/B補償電圧vf_fbが算出される。
図9は、f軸ロバスト補償器203の詳細なブロック図である。f軸ロバスト補償器203は、ブロック901、ブロック902、ブロック903、及び、減算器904により構成される。
ブロック901は、A/D変換器107から出力されるf軸電流ifを入力に対してフィルタリング処理して第1のf軸電圧推定値vf_est1を算出し、f軸電圧推定値vf_est1を減算器904へ出力する。ブロック901は、後述のブロック903のローパスフィルタ1/(τh_f・s+1)を含む、(Lf
'・s+Rf)/(τh_f・s+1)の特性を有する遅延フィルタである。
ブロック902は、ブロック801と同じ遅延フィルタである。ブロック902は、f軸リミット処理部204から出力される第1のf軸電圧指令値vf_dshに対して、制御系が持つむだ時間Lだけ遅延させて、第2のf軸電圧推定値vf_est2を算出する。そして、ブロック902は、第2のf軸電圧推定値vf_est2をブロック903へと出力する。
ブロック903は、1/(τh_f・s+1)の特性を有するローパスフィルタである。ブロック903は、ブロック902から出力される第2のf軸電圧推定値vf_est2に対して、ローパスフィルタ処理を行い、第3のf軸電圧推定値vf_est3を算出する。そして、ブロック903は、第3のf軸電圧推定値vf_est3を減算器904へと出力する。
減算器904は、第3のf軸電圧推定値vf_est3から第1のf軸電圧推定値vf_est1を差し引くことにより、f軸ロバスト補償電圧vf_rbstを加算器206へと算出する。
このように、第1のf軸電圧指令値vf_dshに対して、遅延フィルタであるブロック901、及び、ローパスフィルタであるブロック903の処理を行う処理を行い、測定値に基づく第1のf軸電圧推定値vf_est1を減じることで、安定性をさらに向上させるためのf軸ロバスト補償電圧vf_rbstが算出される。
図10は、上述の図1乃至9までのモータ101の制御処理を示すフローチャートである。これらの制御は、コントローラが予め定められたプログラムを実行することにより、行われる。
ステップS1において、A/D変換器107によって電流値(u相電流ius、v相電流ivs、及び、f軸電流if)が取得される。パルスカウンタ110は、磁極位置検出器109により検出されるABZ相のパルスに基づいて電気角度θreを取得する。
ステップS2において、角速度演算器111は、ステップS1で算出された電気角度θreに基づいて、機械角速度であるモータ回転数ωrm、及び、電気角速度ωreを算出する。
ステップS3において、先読み補償部112は、ステップS2にて算出される電気角度θreに基づいて、先読み補償後電気角θre
'を算出する。
ステップS4において、3相/d-q交流座標変換器108は、ステップS1において算出されるu相電流iu、v相電流ivに基づいてd軸電流id、及び、q軸電流iqを算出する。
ステップS5において、電流指令値演算器113は、ステップS2で算出されたモータ回転数ωrmに加えて、上位装置にて算出されるトルク指令値T*、及び、電源電圧Vdcに応じて、d軸電流指令値id
*、q軸電流指令値iq
*、及び、f軸電流指令値if
*を算出する。
ステップS6において、d軸電流制御部114、q軸電流制御部115、及び、f軸電流制御部116によって、第1のd軸電圧指令値vd_dsh、d軸電流規範応答id_ref、d軸電流規範応答の微分値s・id_ref、第1のq軸電圧指令値vq_dsh、q軸電流規範応答iq_ref、第1のf軸電圧指令値vf_dsh、f軸電流規範応答if_ref、及び、f軸電流規範応答の微分値s・if_refが算出される。
ステップS7において、非干渉制御部117は、ステップS2で算出される電気角速度ωreと、ステップS6で算出されるd軸電流規範応答id_ref、d軸電流規範応答の微分値s・id_ref、q軸電流規範応答iq_ref、f軸電流規範応答if_ref、及び、f軸電流規範応答の微分値s・if_refに応じて、非干渉電圧vd_dcpl、vq_dcpl、vf_dcplを算出する。
ステップS8において、第2の電圧指令値演算部118は、ステップS6にて算出される第1のd軸電圧指令値vd_dsh、第1のq軸電圧指令値vq_dsh、及び、第1のf軸電圧指令値vf_dshのそれぞれに対して、ステップS7算出される非干渉電圧vd_dcpl、vq_dcpl、及び、vf_dcplを加算することで、第2のd軸電圧指令値vd
*、第2のq軸電圧指令値vq
*、及び、第2のf軸電圧指令値vf
*を算出する。
ステップS9において、d-q/3相交流座標変換器119は、ステップS8にて算出される第2のd軸電圧指令値vd
*、第2のq軸電圧指令値vq
*、及び、第2のf軸電圧指令値vf
*に対して座標変化処理を行うことにより、uvw各相の電圧指令値vu
*、vv
*、vw
*を算出する。
このようにして、コントローラはステップS1~S9の処理を実行することにより、モータ101を制御するための指令値が生成される。生成される指令値のうち、ステップS9にて算出される電圧指令値vu
*、vv
*、vw
*は、PWM変換器102、及び、インバータ103を介して、モータ101の固定子側の巻線に印加される。ステップS8にて算出される第2のf軸電圧指令値vf
*は、f軸電流出力部105を介して、モータ101の回転子側の巻線に印加される。このようにして、モータ101の回転制御が行われる。
次に、本実施形態により導出される効果について、図11A、11Bを用いて説明する。上述のように、f軸電圧vfは、f軸電流出力部105において、直流電源104の電源電圧Vdcを用いて出力される。そのため、第2のf軸電圧指令値vf
*が電源電圧Vdcを上回る場合には、f軸電圧vfは電源電圧Vdcを上限値として飽和してしまう。図11A、11Bには、第2のf軸電圧指令値vf
*が電源電圧Vdcを上回らない場合が示されている。
図11A、11Bにおいては、電流指令値が破線で示される。本実施形態のようにf軸F/F補償器201において測定値ではなくf軸電流規範応答if_refが負帰還される疑似的なF/B制御が行われる構成における電流値が実線で示される。また、比較例として測定値が負帰還されるF/B制御が行われる場合の電流値が一点鎖線で示されている。
なお、本実施形態において、d、q及びf軸の電流規範応答は実線で示される電流値と略一致するため記載を省略した。比較例において、d、q及びf軸の電流規範応答は一点鎖線で示される電流値と略一致するため記載を省略した。また、本実施形態においては、比較例と安定性が等価となるようにf軸F/B補償器202のゲインが設定されるものとする。
図11A(i)においては縦軸がd軸電流idを示し、図11A(ii)においては縦軸がq軸電流iqを示し、図11A(iii)においては縦軸がf軸電流ifを示す。また、図11A(i)~(iii)において横軸は時間経過を示す。
時刻t1において、トルク指令値T*がステップ的に印加される。このトルク指令値T*のステップ印加に伴い、図11A(i)~(iii)に示されるように、d軸電流指令値id
*、q軸電流指令値iq
*、及び、f軸電流指令値if
*がステップ的に印加される。
時刻t2においては、本実施形態と比較例との双方において、d軸電流id、q軸電流iq、及び、f軸電流ifが、それぞれ、電流指令値(d軸電流指令値id
*、q軸電流指令値iq
*、及び、f軸電流指令値if
*)を目標に収束をする。ここで、両者を比較すれば、一点鎖線で示される比較例においては、F/Bによる安定性の低下をF/Bゲインの減少により補償しているため、収束の応答性が遅い。これに対して実線で示される本実施形態においては、疑似的なF/B制御が行われるため、f軸F/F補償器201において所望の応答性を満足するようにゲインを設定することができるため、収束の応答性を早くすることができる。そして、時刻t3を経て時刻t4において電流値は電流指令値へと収束する。
また、図11B(i)~(iii)においては、図11B(i)はd軸電圧vdを、図11B(ii)はq軸電圧vqを、図11B(iii)はf軸電圧vfを示す。
これらの図に示されるように、d軸電圧vd、q軸電圧vq、及び、f軸電圧vfのそれぞれにおいて、実線で示される本実施形態は、一点鎖線で示される比較例よりも、応答性が早い。このように、本実施形態においては、比較例と安定性が同じとなるようにf軸F/B補償器202のゲインが設定されていても、f軸電流擬似F/Bモデル302を備えるf軸F/F補償器201が設けられることで応答性を早くすることができる。
図12A、12Bには、第2のf軸電圧指令値vf
*が電源電圧Vdcを上回る場合が示されている。実線は、本実施形態の全ての構成を有する場合、すなわち、f軸電流擬似F/Bモデル302を有し、図6及び図7に示されるf軸リミット処理部303を有し、かつ、図8に示すようにf軸F/B補償器202はブロック801に示されるように遅延フィルタによって制御系が持つむだ時間Lが考慮されている場合を示す。一点鎖線は、比較例として、f軸電流擬似F/Bモデル302のみを有する例が示されている。
なお、比較例においては、d及びq軸の電流規範応答は一点鎖線で示される電流値と略一致する。f軸の電流規範応答は、二点鎖線にて示されており、電流値と一致しないものとする。
時刻t1において、トルク指令値T*がステップ的に印加されると、図12A(i)~(iii)に示されるように、d軸電流指令値id
*、q軸電流指令値iq
*、及び、f軸電流指令値if
*がステップ的に印加される。
この場合に、図12B(iii)に示されるように、本実施形態と比較例との両者において、f軸電圧vfが電源電圧Vdcに達することによりf軸電圧vfが飽和する。
図12A(iii)を参照すれば、一点鎖線で示されるように、f軸電圧vfの飽和が考慮されない比較例においては、f軸電流ifの指令値に対する応答性が低下する。そのため、一点鎖線で示されるf軸電流ifは、二点鎖線で示されるf軸電流規範応答if_refへの追従性が低下する。
非干渉制御部117においては、安定性の低下を回避するために、非干渉電圧の算出にモータ101に流れる実際の電流値ではなく電流規範応答を用いている。このf軸電流ifのf軸電流規範応答if_refへの追従性が低下により、干渉成分のキャンセルが十分に行われず、非干渉制御性能が低下してしまう。このため、図12A(ii)に示すように、q軸電流iqのオーバーシュートが発生する。
一方、実線で示される本実施形態においては、f軸電圧vfの飽和が非干渉制御部117の前段のf軸電流制御部116において考慮されている。そのため、電源電圧Vdcを使い切って生成されるf軸電流ifの応答性を向上させることができるので、f軸電流ifのf軸電流規範応答if_refへの追従性が高くなる。そのため、非干渉制御の性能低下を抑制できるため、オーバーシュートやアンダーシュートといった電流の応答性を損なうことなく、各軸の電流(id、iq、及び、if)を制御することができる。
また、各軸の電流のそれぞれについて、F/F補償器(f軸においてはf軸F/F補償器201)は、主に、各軸の電流指令値(id
*、iq
*、及び、if
*)に定常偏差なく電流規範応答で追従させるための第1の電圧指令値(vd_dsh、vq_dsh、vf_dsh)を算出する。一方、F/B補償器(f軸においてはf軸F/B補償器202)は、パラメータ誤差などの外乱要因を補正に用いられる。そのため、安定性に寄与しないF/F補償器において、所望の応答性を実現するゲイン設定をできるので、安定性を確保するためにゲインを小さくする必要がなくなり、応答性の低下を抑制できる。
本実施形態によれば、以下の効果を得ることができる。
本実施形態の巻線界磁型のモータ101の制御方法においては、非干渉制御部117が設けられることによりf軸の制御において、d軸及びq軸における電圧の影響を考慮しなくてもよくなり、単純な一次遅れ系として制御できる。
この制御方法において、f軸電流制御部116が有するf軸F/F補償器201(f軸電流制御ステップ)において、f軸電流疑似F/Bモデル302は、電流指令値演算器113により算出されるf軸電流指令値if
*に対して負帰還電流を用いた疑似F/B制御を行うことにより、疑似FB電圧指令値vf_pse_fbを算出する(疑似F/Bステップ)。f軸リミット処理部303は、疑似FB電圧指令値vf_pse_fbを制限してf軸F/F補償電圧vf_ffを出力する(制限ステップ)。規範応答処理部であるf軸電流モデル301は、f軸F/F補償電圧vf_ffに対して、f軸電圧からf軸電流までの応答をモデル化した規範応答モデルを用いてf軸電流規範応答if_refを算出する(規範応答処理ステップ)。
この構成において、f軸電流疑似F/Bモデル302において、疑似F/Bに用いられる負帰還電流は、f軸電流モデル301により算出されるf軸電流規範応答if_refである。従って、f軸電流疑似F/Bモデル302においては、測定されるf軸電流ifが負帰還であるF/B制御をではなく、f軸電流規範応答if_refが負帰還である疑似的なF/B制御が行われる。f軸電流疑似F/Bモデル302においては、F/B制御が行われないので、安定性を考慮してゲインを小さくする必要がなくなり、所望の応答性を満足するゲインを設定することができるので、応答性を犠牲にすることなく安定性を確保できる。
さらに、f軸リミット処理部303が設けられることで、f軸電流出力部105におけるf軸電圧vfに電源電圧Vdcによる飽和特性が考慮されることになる。従って、f軸電圧vfが電源電圧Vdcで飽和する場合であっても、その飽和がf軸リミット処理部303によりモデル化されているため、f軸F/F補償器201から出力されるf軸F/F補償電圧vf_ffを用いた制御により、f軸電流ifのf軸電流規範応答if_refの追従性が向上する。f軸電流規範応答if_refの追従性の向上に伴い、f軸電流規範応答if_refを用いた非干渉制御部117における非干渉制御性能の低下が抑制される。
本実施形態の巻線界磁型のモータ101の制御方法においては、f軸リミット処理部303は、図6及び図7に示されるように、疑似FB電圧指令値vf_pse_fbに対して、f軸非干渉電圧vf_dcplを加算する余裕を持たせて、f軸非干渉電圧vf_dcplだけオフセットされた電源電圧Vdcに基づく制限処理を行う。制限処理において、具体的には、上限値が「Vdc-vf_dcpl」、下限値が「-Vdc-vf_dcpl」に制限され、制限された第1のf軸電圧指令値vf_dshが出力される。
このように構成されることで、f軸リミット処理部303を有するf軸電流制御部116の後段において、第2の電圧指令値演算部118によりf軸非干渉電圧vf_dcplが加算された場合に、その加算後の第2のf軸電圧指令値vf
*の上限値が「Vdc」、下限値が「-Vd」に制限されるので、f軸電流出力部105において、電源電圧Vdcを最大限利用してf軸電圧vfを生成することができる。
本実施形態の巻線界磁型のモータ101の制御方法においては、f軸電流制御部116は、さらに、f軸F/B補償器202を有する(F/B補償ステップ)。図8に示されるように、f軸F/B補償器202は、f軸F/BゲインKfを乗算する乗算器802及び減算器803を備える。
減算器803においては、f軸F/F補償器201のf軸電流モデル301(規範応答処理ステップ)において算出されるf軸電流規範応答if_refに対してf軸電流ifが負帰還(減算)され、減算結果に対して乗算器802によってf軸F/BゲインKfが乗算されることでF/B制御が行われて、f軸F/B補償電圧vf_fbが算出される。そして、図2に示されるように、加算器205において、f軸F/B補償電圧vf_fbは、f軸F/F補償器201のf軸電流モデル301により算出されるf軸F/F補償電圧vf_ffに加算される(加算ステップ)。さらに、この加算結果に基づいて第1のf軸電圧指令値vf_dshが求められる。
f軸F/F補償器201に加えてf軸F/B補償器202が設けられることにより、パラメータ誤差などの外乱要因を補正することができる。そして、f軸F/B補償器202においては、f軸電流モデル301から出力されるf軸電圧vfの飽和特性が考慮されたf軸電流規範応答if_refを用いられているので、必要以上にF/B制御が作動してf軸電流ifのオーバーシュートやアンダーシュートを誘発することを防止できる。
図8に示されるように、f軸F/B補償器202は、ブロック801によってf軸電流規範応答if_refに対して制御系の遅れ時間を考慮した遅延処理を行う。このように、f軸F/B補償電圧は、制御系が持つむだ時間を考慮したf軸電流規範応答を用いて算出することができるので、F/B制御の精度を向上させることができる。
以上、本発明の実施形態について説明したが、上記実施形態は本発明の適用例の一部を示したに過ぎず、本発明の技術的範囲を上記実施形態の具体的構成に限定する趣旨ではない。