以下、添付図面を参照しながら本発明の実施形態について説明する。
(第1実施形態)
図1は、本発明の第1実施形態における電動機9を制御する制御装置100の構成例を示す図である。
制御装置100は、電動機9に供給される電力を制御する。制御装置100は、電動機9の動作を制御するようにプログラムされた処理を実行する。制御装置100は、1又は複数のコントローラにより構成される。
制御装置100は、電流ベクトル制御部1と、電圧位相制御部2と、制御切替器3と、座標変換器4と、PWM変換器5と、インバータ6と、バッテリ電圧検出器7と、電動機電流検出器8と、電動機9と、を備える。さらに制御装置100は、回転子検出器10と、回転速度演算器11と、座標変換器12と、切替判定部13と、を備える。
電流ベクトル制御部1は、電動機9に生じるトルクがトルク目標値T*に収束するよう、電動機9に供給される電流に関するベクトルを制御する電流ベクトル制御を実行する。電流ベクトル制御部1は、電動機9のトルク目標値T*に基づいて、インバータ6から電動機9に供給される電力の電流値を電動機9の電圧指令値にフィードバックするフィードバック制御を実行する。
本実施形態の電流ベクトル制御部1は、電動機9のトルク目標値T*と回転速度検出値Nとバッテリ電圧検出値Vdcとを用いて、d軸電流検出値idをd軸電圧指令値vdi_finにフィードバックし、q軸電流検出値iqをq軸電圧指令値vqi_finにフィードバックする。これにより、電流ベクトル制御部1は、電流ベクトル制御の電圧指令値としてd軸電圧指令値vdi_fin及びq軸電圧指令値vqi_finを制御切替器3に出力する。
上述のd軸電流検出値id及びq軸電流検出値iqは、それぞれ、インバータ6から電動機9に供給される電流のd軸成分及びq軸成分の値を示す。d軸及びq軸は、互いに直交する座標軸である。
電圧位相制御部2は、電動機9に生じるトルクがトルク目標値T*に収束するよう、電動機9の各相に供給される電圧間の位相を制御する電圧位相制御を実行する。電圧位相制御部2は、トルク目標値T*に基づいて、インバータ6から電動機9に供給される電流の値を電動機9の電圧指令値に対してフィードバック制御を実行する。
本実施形態の電圧位相制御部2は、トルク目標値T*と回転速度検出値Nとバッテリ電圧検出値Vdcとを用いて、d軸電流検出値id及びq軸電流検出値iqを所定の電圧ノルム指令値及び電圧位相指令値にフィードバックする。そして電圧位相制御部2は、電圧ノルム指令値及び電圧位相指令値をd軸電圧指令値vdv_fin及びq軸電圧指令値vqv_finに変換する。これにより、電圧位相制御部2は、電圧位相制御の電圧指令値としてd軸電圧指令値vdv_fin及びq軸電圧指令値vqv_finを制御切替器3に出力する。
制御切替器3は、電流ベクトル制御部1の出力及び電圧位相制御部2の出力などの中から、切替判定部13の判定結果に応じていずれか一つの出力を選択する。そして制御切替器3は、選択した制御の電圧指令値を、d軸及びq軸の最終電圧指令値vd_fin *及びvq_fin *として出力する。
座標変換器4は、式(1)のように、電動機9の電気角検出値θに基づいて、d軸及びq軸の最終電圧指令値vd_fin *及びvq_fin *を三相電圧指令値vu *、vv *及びvw *に変換する。
PWM変換器5は、バッテリ電圧検出値Vdcに基づいて、三相電圧指令値vu *、vv *及びvw *を、インバータ6に備えられたパワー素子を駆動するためのパワー素子駆動信号Duu *、Dul *、Dvu *、Dvl *、Dwu *及びDwl *に変換する。PWM変換器5は、変換したパワー素子駆動信号Duu *、Dul *、Dvu *、Dvl *、Dwu *及びDwl *をインバータ6に出力する。
インバータ6は、パワー素子駆動信号Duu *、Dul *、Dvu *、Dvl *、Dwu *及びDwl *に基づいて、バッテリ61の直流電圧を、電動機9を駆動するための三相交流電圧vu、vv及びvwに変換する。インバータ6は、変換した三相交流電圧vu、vv及びvwを電動機9に供給する。
バッテリ電圧検出器7は、インバータ6に接続されたバッテリ61の電圧を検出する。バッテリ電圧検出器7は、検出した電圧を示すバッテリ電圧検出値Vdcを、電流ベクトル制御部1、電圧位相制御部2及び切替判定部13の各々に出力する。
電動機電流検出器8は、インバータ6から電動機9に供給される三相の交流電流iu、iv及びiwのうち少なくとも二相の交流電流を検出する。本実施形態の電動機電流検出器8は、U相及びV相の交流電流iu及びivを検出して座標変換器12に出力する。
電動機9は、複数の相の各々に巻線(例えば、U、V及びWの3相の巻線)を備えるモータであり、電動車両などの駆動源として用いることが可能である。例えば、電動機9は、IPM(Interior Permanent Magnet)型の三相同期電動機により実現される。
回転子検出器10は、電動機9の電気角を検出する。回転子検出器10は、検出した電気角の値を示す電気角検出値θを座標変換器4及び座標変換器12の各々に出力するとともに、電気角検出値θを回転速度演算器11に出力する。
回転速度演算器11は、電動機9の電気角検出値θの時間当たりの変化量から電動機9の回転速度を演算する。回転速度演算器11は、演算した回転速度を、電動機9の回転速度検出値Nとして、電流ベクトル制御部1、電圧位相制御部2及び切替判定部13の各々に出力する。
座標変換器12は、式(2)のように、電動機9の電気角検出値θに基づいて、U相及びV相の交流電流iu及びivをd軸電流検出値id及びq軸電流検出値iqに変換する。座標変換器12は、d軸電流検出値id及びq軸電流検出値iqを、電流ベクトル制御部1、電圧位相制御部2及び切替判定部13の各々に出力する。
切替判定部13は、電動機9の作動状態に応じて、電流ベクトル制御、及び電圧位相制御などのうち電動機9に適用すべき制御を判定する。電動機9の作動状態を示すパラメータとして、本実施形態では、d軸電流目標値id *、d軸電流検出値id、d軸電圧指令値vd_fin *、q軸電圧指令値vq_fin *、バッテリ電圧検出値Vdc及び回転速度検出値Nなどが挙げられる。切替判定部13は、判定結果に応じて電動機9に適用すべき制御を示す制御モード信号を制御切替器3に出力する。
図2は、本実施形態における電流ベクトル制御部1の一部構成を例示するブロック図である。
電流ベクトル制御部1は、非干渉電圧演算器101と、LPF102と、電流目標値演算部103と、減算器104と、PI制御器105と、加算器106と、を備える。
非干渉電圧演算器101は、トルク目標値T*と回転速度検出値Nとバッテリ電圧検出値Vdcとに基づいて、d軸及びq軸の間で互いに干渉する干渉電圧を打ち消す非干渉電圧値vd_dcpl *を演算する。非干渉電圧演算器101には、例えば、あらかじめ定められた非干渉テーブルが記憶されている。具体的には、トルク目標値T*、回転速度検出値N及びバッテリ電圧検出値Vdcにより特定される動作点ごとに、非干渉電圧値vd_dcpl *が非干渉テーブルに対応付けられている。
非干渉電圧演算器101は、トルク目標値T*、回転速度検出値N及びバッテリ電圧検出値Vdcの各パラメータを取得すると、非干渉テーブルを参照し、各パラメータにより特定される動作点に対応付けられた非干渉電圧値vd_dcpl *を演算する。そして非干渉電圧演算器101は、演算した非干渉電圧値vd_dcpl *をLPF102に出力する。
LPF102は、電動機9に生じる干渉電圧が電動機9への供給電流に依存することを考慮したローパスフィルタである。LPF102の時定数は、目標とするd軸電流の応答性が確保されるように設定される。LPF102は、非干渉電圧値vd_dcpl *に対してローパスフィルタ処理を施した値である非干渉電圧値vd_dcpl_flt *を加算器106に出力する。
電流目標値演算部103は、非干渉電圧演算器101と同様、あらかじめ定められた電流テーブルを参照し、電動機9のd軸電流目標値id *を演算する。電流テーブルには、トルク目標値T*、回転速度検出値N及びバッテリ電圧検出値Vdcによって定められる動作点ごとに、d軸電流目標値id *が対応付けられている。
電流テーブルのd軸電流目標値id *には、電動機9がトルク目標値T*で動作するにあたり、電動機9の効率が最大となる電流値が格納される。格納される電流値は、実験データやシミュレーションなどによってあらかじめ求められる。電流目標値演算部103は、演算したd軸電流目標値id *を電圧位相制御部2及び切替判定部13に出力するとともに、d軸電流目標値id *を減算器104に出力する。
減算器104は、d軸電流目標値id *からd軸電流検出値idを減算する。減算器104は、減算した値をd軸電流偏差id_errとしてPI制御器105に出力する。
PI制御器105は、d軸電流検出値idがd軸電流目標値id *に追従するようにd軸電流偏差id_errをd軸電圧指令値vdi_finにフィードバックする電流フィードバック制御を実行する。本実施形態のPI制御器105は、式(3)のように、d軸電流偏差id_err(=id *−id)に基づいて、電流FB電圧指令値vdi’を算出する。
ただし、Kdpはd軸比例ゲインであり、Kdiはd軸積分ゲインである。d軸比例ゲインKdp及びd軸積分ゲインKdiは、実験データやシミュレーション結果などにより求められる。PI制御器105は、電流FB電圧指令値vdi’を加算器106に出力する。
加算器106は、式(4)のように電流FB電圧指令値vdi’に非干渉電圧値vd_dcpl_flt *を加算し、加算した値を電流ベクトル制御のd軸電圧指令値vdi_fin *として出力する。
このように、電流ベクトル制御部1は、トルク目標値T*に基づいて、d軸電流検出値idをフィードバックすることにより、d軸電圧指令値vdi_fin *を出力する。
なお、図2には電流ベクトル制御のd軸電圧指令値vdi_fin *を演算する構成例が示されているが、電流ベクトル制御のq軸電圧指令値vqi_fin *を演算する構成についても、図2に示した構成と同様の構成である。
したがって、電流ベクトル制御部1は、トルク目標値T*に基づいて、電動機9に供給される電力のd軸及びq軸電流成分をそれぞれd軸及びq軸電圧指令値vdi_fin *及びvqi_fin *にフィードバックして制御切替器3に出力する。
図3は、本実施形態における電圧位相制御部2の構成の一例を示すブロック図である。
電圧位相制御部2は、電圧ノルム生成部210と、電流FB制御部220と、ノルム合成器230と、ノルム制限器240と、電圧位相生成部250と、トルクFB制御部260と、位相合成器270と、位相制限器280と、ベクトル変換器290と、を備える。
電圧ノルム生成部210は、フィードフォワード制御により、バッテリ電圧検出値Vdcに基づいて基準変調率M*に相当する電圧ノルム基準値Va_ffを生成する。ここにいう基準変調率M*は、電圧位相制御における変調率の基準値を示す。電圧位相制御における変調率とは、バッテリ電圧検出値Vdcに対する電動機9の相間電圧における基本波成分の振幅の比率のことである。電動機9の相間電圧とは、例えば、U相とV相との間の電圧vu−vvのことである。
例えば、電圧位相制御における変調率が0.0から1.0までの範囲は、PWM変調により疑似正弦波電圧が生成可能な通常変調領域に該当する。これに対して変調率が1.0を上回る範囲は、過変調領域に該当し、疑似正弦波を生成しようとしても相間電圧の基本波成分の最大値及び最小値が制限される。例えば、変調率が約1.1まで大きくなると、相間電圧の基本波成分はいわゆる矩形波電圧と同様の波形になる。
本実施形態における電圧ノルム生成部210は、式(5)のように、電圧ノルム基準値Va_ffを算出する。電圧ノルム生成部210は、算出した電圧ノルム基準値Va_ffを電圧位相生成部250に出力するとともにノルム合成器230に出力する。
電流FB制御部220は、d軸電流検出値id及びq軸電流検出値iqを電圧ノルム指令値Va *にフィードバックするための電圧ノルムFB値Va_fbを出力する。本実施形態の電流FB制御部220は、d軸電流検出値idと電圧ノルム指令値Va *との相関性、又は、q軸電流検出値iqと電圧ノルム指令値Va *との相関性の高さに応じて、d軸電流検出値id及びq軸電流検出値iqのうち一方の電流成分の検出値をフィードバックする。
電流FB制御部220は、d軸参照生成器221と、d軸偏差演算器222と、q軸参照生成器223と、絶対値演算器224と、絶対値演算器225と、q軸偏差演算器226と、電流成分切替器227と、FB選択器228と、PI制御器229と、を備える。
d軸参照生成器221は、図2に示したLPF102と同様の構成である。d軸参照生成器221は、d軸電流目標値id *に基づいてd軸電流の目標応答を表すd軸電流参照値id_ref *を算出する。d軸参照生成器221は、算出したd軸電流参照値id_ref *をd軸偏差演算器222に出力する。
d軸偏差演算器222は、d軸電流参照値id_ref *とd軸電流検出値idとの偏差であるd軸電流偏差id_errを演算し、演算したd軸電流偏差id_errを電流成分切替器227に出力する。
q軸参照生成器223は、d軸参照生成器221と同じものである。q軸参照生成器223は、q軸電流目標値iq *に基づいてq軸電流の目標応答を表すq軸電流参照値iq_ref *を算出する。q軸参照生成器223は、算出したq軸電流参照値iq_ref *を絶対値演算器224に出力する。
絶対値演算器224は、q軸電流参照値の絶対値|iq_ref *|を取得してq軸偏差演算器226に出力する。絶対値演算器225は、q軸電流検出値iqの絶対値|iq|を取得してq軸偏差演算器226に出力する。
q軸偏差演算器226は、q軸電流参照値iq_ref *の絶対値|iq_ref *|とq軸電流検出値iqの絶対値|iq|との偏差であるq軸電流絶対値偏差|iq|errを演算する。q軸偏差演算器226は、演算したq軸電流絶対値偏差|iq|errを電流成分切替器227に出力する。
電流成分切替器227は、FB選択器228の指示に従って、PI制御器229への出力を、q軸電流絶対値偏差|iq|errとd軸電流偏差id_errとのうち一方の電流偏差に切り替える。
FB選択器228は、電動機9に生じる電圧の向きと相関のあるパラメータに基づいてq軸電流絶対値偏差|id|errとd軸電流偏差id_errとのうち一方の偏差を選択し、選択した偏差を示す切替信号を生成する。
本実施形態のFB選択器228は、電動機9に供給すべき電圧の位相を示す電圧位相指令値α*に基づいて切替信号を生成する。切替信号の生成手法については図4を参照して後述する。FB選択器228は、生成した切替信号を電流成分切替器227及びPI制御器229に出力する。
PI制御器229は、電流成分切替器227から出力される電流偏差が無くなるよう、その電流偏差を電圧ノルム指令値va *にフィードバックするための電流フィードバック制御を実行する。
すなわち、PI制御器229は、電動機9に供給される電流に関する参照値と推定値の電流偏差を入力し、電流偏差に基づき電圧ノルムFB値Va_fbを算出する。PI制御器229の詳細構成については図5を参照して後述する。PI制御器229は、電流フィードバック制御を実行することにより、電圧ノルムFB値Va_fbをノルム合成器230に出力する。
ノルム合成器230は、電圧ノルムFB値Va_fbを電圧ノルム基準値Va_ffに加算し、加算した値を電圧ノルム指令値Va *としてノルム制限器240に出力する。
ノルム制限器240は、電圧ノルム指令値Va *を下限値(例えば0)から上限値Va_maxまでの間に制限する。バッテリ電圧検出値Vdcが低下するほど、電圧ノルム上限値Va_maxは小さくなる。
上述の上限値Va_maxは、式(6)のように、電圧位相制御における変調率の最大許容設定値である変調率上限値Mmax *とバッテリ電圧検出値Vdcとに基づいて算出される。変調率上限値Mmax *はあらかじめ定められた値である。
ノルム制限器240は、電圧ノルム指令値Va *が上限値Va_maxを上回っている間は、ベクトル変換器290に出力される電圧ノルム指令値Va *を上限値Va_maxに設定する。電圧ノルム指令値Va *が上限値Va_maxに固定されている間は、トルクFB制御部260によりトルク推定値Testが電圧位相指令値α*にフィードバックされることで電動機9のトルクが増減される。
ノルム制限器240は、電圧ノルム指令値Va *が上限値Va_max又は下限値に固定さている間は、電圧ノルム指令値Va *が制限されている旨の通知信号をPI制御器229に出力する。
電圧位相生成部250は、フィードフォワード制御により、トルク目標値T*に基づいて、電動機9に供給すべき電圧の位相を示す電圧位相FF値αffを生成する。本実施形態の電圧位相生成部250は、トルク目標値T*と電圧ノルム基準値Va_ffと回転速度検出値Nとを用いて電圧位相FF値αffを算出する。電圧位相生成部250には、あらかじめ定められた位相テーブルが記憶されている。
上述の位相テーブルには、トルク目標値T*、電圧ノルム基準値Va_ff及び回転速度検出値Nによって定まる動作点ごとに電圧位相FF値αffが対応付けられている。位相テーブルの電圧位相FF値αffには、例えば、実験において動作点ごとにノミナル状態で計測された電圧位相値が格納される。
電圧位相生成部250は、トルク目標値T*、電圧ノルム基準値Va_ff及び回転速度検出値Nの各パラメータを取得すると、位相テーブルを参照し、各パラメータにより特定される動作点に対応付けられた電圧位相FF値αffを算出する。そして電圧位相生成部250は、算出した電圧位相FF値αffを位相合成器270に出力する。
トルクFB制御部260は、トルク目標値T*に基づいて電動機9のトルク推定値Testを電圧位相指令値α*にフィードバックするための電圧位相FB値αfbを出力する。トルクFB制御部260は、参照トルク生成部261と、トルク演算器262と、トルク偏差演算器263と、PI制御器264と、を備える。
参照トルク生成部261は、図2に示したLPF102と同様の構成である。参照トルク生成部261は、トルク目標値T*に基づいて電動機9でのトルクの目標応答を表すトルク参照値Tref *を算出する。参照トルク生成部261は、算出したトルク参照値Tref *をトルク偏差演算器263に出力する。
トルク演算器262は、d軸電流検出値id及びq軸電流検出値iqに基づいてトルク推定値Testを演算する。トルク演算器262には、あらかじめ定められたトルクテーブルが記憶されている。トルクテーブルには、d軸電流検出値id及びq軸電流検出値iqにより特定められる動作点ごとにトルク推定値Testが対応付けられている。トルクテーブルのトルク推定値Testには、例えば、実験においてdq軸電流の動作点ごとに計測したトルクの計測値があらかじめ格納される。
トルク演算器262は、d軸電流検出値id及びq軸電流検出値iqの各パラメータを取得すると、トルクテーブルを参照し、各パラメータにより特定される動作点に対応付けられたトルク推定値Testを算出する。トルク演算器262は、算出したトルク推定値Testをトルク偏差演算器263に出力する。
トルク偏差演算器263は、トルク参照値Tref *とトルク推定値Testとのトルク偏差Terrを演算し、演算したトルク偏差TerrをPI制御器264に出力する。
PI制御器264は、トルク参照値Tref *にトルク推定値Testが追従するようトルク偏差演算器263からのトルク偏差Terrを電圧位相指令値α*にフィードバックするためのトルクフィードバック制御を実行する。
本実施形態のPI制御器264は、式(7)のように、トルク偏差Terr(Tref *−Test)に基づいて電圧位相FB値αfbを算出する。PI制御器264は、算出した電圧位相FB値αfbを位相合成器270に出力する。
なお、Kαpは比例ゲインであり、Kαiは積分ゲインである。比例ゲインKαp及び積分ゲインKαiは、実験データやシミュレーション結果などによって求められる。
位相合成器270は、電圧位相FB値αfbを電圧位相FF値αffに加算し、加算した値を電圧位相制御の電圧位相指令値α*として位相制限器280に出力する。
位相制限器280は、電圧位相下限値αminから電圧位相上限値αmaxまでの所定の電圧位相範囲に電圧位相指令値α*を制限する。所定の電圧位相範囲の設定手法については、図10で後述する。位相制限器280は、電圧位相範囲内に制限した電圧位相指令値α*をベクトル変換器290に出力する。
ベクトル変換器290は、式(8)のように、ノルム制限器240からの電圧ノルム指令値Va*と位相制限器280からの電圧位相指令値α*とをd軸電圧指令値vdv *及びq軸電圧指令値vqv *に変換し、電圧位相制御の電圧指令値として出力する。
このように、電圧位相制御部2は、トルク偏差Terrがゼロに収束するように電圧位相指令値α*を変更する。これにより、電圧ノルム指令値Va *が過変調領域において固定された状態であっても、電動機9のトルクを増減することができる。
さらに本実施形態では電圧位相制御部2は、電圧位相指令値α*に応じてd軸及びq軸の電流偏差のうち一方を選択し、選択した電流偏差がゼロに収束するように電圧ノルム指令値Va *を変更する。これにより、電動機9の電圧位相指令値α*に応じて、適切に電圧ノルム指令値Va *を増減させることができる。
図4は、FB選択器228から出力される切替信号の生成手法を説明する図である。
図4では、縦軸が切替信号のレベルを示し、横軸が電圧位相指令値α*を示す。この例では、電動機9が正回転、力行動作である場合、電圧位相α=0°であるときに電動機9のトルクT≒0であり、進み側が正トルクとなり、遅れ側は負トルクとなる。なお、電動機が逆回転、回生動作である場合、トルクT≒0となる電圧位相αの基準は180°となり、180°に対して進み側が正トルクとなり、遅れ側がトルクとなる。
図4に示すように、切替信号がLレベルである場合には、電流成分切替器227からPI制御器229にd軸電流偏差id_errが出力されることにより、d軸電流フィードバック制御が実行される。一方、切替信号がHレベルである場合には、電流成分切替器227からPI制御器229にq軸電流絶対値偏差|iq|errが出力されることにより、q軸電流フィードバック制御が実行される。
電流成分切替器227でのチャタリングの発生を回避するために、電圧位相指令値α*に対して第1閾値αth1と第2閾値αth2との2つの閾値を用いてヒステリシスを持たせている。
そしてFB選択器228は、電圧位相指令値α*が±90度の近傍にある場合にはq軸電流フィードバック制御を選択し、電圧位相指令値α*が0度の近傍にある場合にはd軸電流フィードバック制御を選択する。
図5は、PI制御器229の機能構成の一例を示すブロック図である。
PI制御器229は、可変ゲイン演算器91と、可変ゲイン乗算器92と、インダクタンス切替器93と、インダクタンス乗算器94と、比例ゲイン乗算器95と、積分ゲイン乗算器96と、積分器97と、加算器98と、を備える。なお、可変ゲイン乗算器92、インダクタンス乗算器94、比例ゲイン乗算器95、及び積分ゲイン乗算器96に設定される各ゲインを総じてPI制御器229の制御ゲインと称する。
可変ゲイン演算器91は、式(9)のように、電動機9の回転速度検出値Nに基づいて、PI制御器229の制御ゲインを構成する可変ゲインとして電気角速度ωreを演算する。
可変ゲイン乗算器92は、q軸電流絶対値偏差|iq|err及びd軸電流偏差id_errのうち、電流成分切替器227から出力される電流偏差に対して可変ゲインである電気角速度ωreを乗算する。
インダクタンス切替器93は、FB選択器228からの切替信号に応じて、インダクタンス乗算器94に設定されるゲイン定数であるインダクタンスLxをd軸インダクタンスLd及びq軸インダクタンスLqのうち一方の値に切り替える。
例えば、インダクタンス切替器93は、切替信号がLレベルである場合、すなわちFB選択器228によりd軸電流フィードバック制御が選択された場合には、インダクタンスLxとしてd軸インダクタンスLdを設定する。一方、インダクタンス切替器93は、切替信号がHレベルである場合、すなわちFB選択器228によりq軸電流フィードバック制御が選択された場合には、インダクタンスLxとしてq軸インダクタンスLqを設定する。
インダクタンス乗算器94は、可変ゲイン乗算器92の出力に対してインダクタンスLxを乗算する。そして比例ゲイン乗算器95は、インダクタンス乗算器94の出力に対して比例ゲインKipを乗算する。
積分ゲイン乗算器96は、インダクタンス乗算器94の出力に対して積分ゲインKiiを乗算する。積分器97は、積分ゲイン乗算器96の出力を順次積分する。
加算器98は、比例ゲイン乗算器95の出力と積分器97の出力とを加算し、加算した値を電圧ノルムFB値Va_fbとして出力する。
したがって、FB選択器228がd軸電流フィードバック制御を選択した場合には、PI制御器229は、式(10)のように、d軸電流偏差id_errに基づいて電圧ノルムFB値Va_fbを算出する。
一方、FB選択器228がq軸電流フィードバック制御を選択した場合には、PI制御器229は、式(11)のように、q軸電流絶対値偏差|iq|errに基づいて電圧ノルムFB値Va_fbを算出する。
以上のように、PI制御器229の制御ゲインを構成する電気角速度ωreは、電動機9の回転速度検出値Nに応じて変動する可変ゲインとして用いられる。また、d軸電流フィードバック制御が選択された場合は、制御ゲインの定数としてd軸インダクタンスLdが用いられ、q軸電流フィードバック制御が選択された場合は、制御ゲインの定数としてq軸インダクタンスLqが用いられる。すなわち、切替信号に応じて制御ゲインが切り替えられる。
次に、電動機9の電圧位相指令値α*を用いてd軸電流フィードバック制御及びq軸電流フィードバック制御のうち一方の制御を実行する手法の一例を説明する。
図6は、電動機9の中高速回転領域において電動機9に生じる磁束ノルムφ0と電圧ノルムVaとの関係を示す図である。図6では、横軸がdq軸の直交座標系におけるd軸を示し、縦軸がもう一方のq軸を示す。
図6に示すように、電動機9の回転速度検出値Nが中高回転領域にある場合は、電動機9の巻線抵抗による電圧降下は、誘起電圧の大きさωreφ0に比べて無視できるほど小さくなるので、電動機9の巻線抵抗による電圧降下を省略している。すなわち、電動機9の端子電圧の大きさを示す電圧ノルムVaは、磁束ノルムφ0及び電気角速度ωreに比例しているとみなすことができる。
磁束ノルムφ0は、d軸電流id及びq軸電流iqにより生じる電流磁束と、電動機9に設けられた磁石により生じる磁石磁束Φaとを合成した磁束の大きさである。磁束ノルムφ0は、d軸電流id及びd軸インダクタンスLdによるd軸磁束Ldidと、q軸電流iq及びq軸インダクタンスLqによるq軸磁束Lqiqとに基づいて決まる。
本実施形態の電流FB制御部220は、図6に示した電動機9への供給電流の電流成分(id及びiq)と磁束ノルムφ0と電圧ノルムVaとの関係を利用して電圧ノルム指令値Va *が増減するように構成されている。
図7は、電動機9の電圧位相αが0度近傍にある場合におけるd軸及びq軸の各電流成分id及びiqの電圧ノルムVaに対する相関性を示す図である。
図7に示すように、電圧位相αが0°近傍にある場合は、q軸磁束Lqiqが小さいため、q軸電流iqの増減に対して磁束ノルムφ0の変化幅は小さくなるのに対して、d軸電流idの増減に対して磁束ノルムφ0の変化幅は大きくなる。
このように、電圧ノルムVaに比例する磁束ノルムφ0の感度、すなわち磁束ノルムφ0との相関性についてはd軸電流idが支配的になる。したがって、電圧位相αが0°近傍にある場合は、電圧ノルムVaに対してd軸電流idの相関性が高くなり、q軸電流iqの相関性が低くなる。
このため、本実施形態のPI制御器229は、図4に示したように、電動機9に生じる電圧の向きを示す電圧位相指令値α*が0近傍にある場合には、d軸電流フィードバック制御が選択されるように切替信号をLレベルに設定する。
図8は、電動機9の電圧位相αが±90°近傍にある場合における電動機9の各電流成分id及びiqの電圧ノルムVaに対する相関性を示す図である。
図8に示すように、電圧位相αが±90度近傍にある場合は、d軸磁束Ldidが大きくなるため、d軸電流idの増減に対して磁束ノルムφ0の変化幅は小さくなるとともに、q軸電流iqの増減に対して磁束ノルムφ0の変化幅は大きくなる。
このように、電圧ノルムVaに比例する磁束ノルムφ0の感度についてはq軸電流iqが支配的になる。したがって、電圧位相αが±90°近傍にある場合は、電圧ノルムVaに対してq軸電流iqの相関性が高くなり、d軸電流idの相関性が低くなる。
このため、本実施形態のPI制御器229は、図4に示したように、電圧位相指令値α*が±90°近傍にある場合には、q軸電流フィードバック制御が選択されるように切替信号をHレベルに設定する。
図9は、電動機9の供給電流と電圧ノルムVaとの相関性を示す図である。図9Aは、電動機9の電圧位相αごとにd軸電流idの電圧ノルムVaに対する相関性を示す図である。図9Bは、電圧位相αごとにq軸電流iqの電圧ノルムVaに対する相関性を示す図である。
例えば、電圧位相αが±90°の近傍では、図9Aに示すように、d軸電流idと電圧ノルム指令値Va *との間には相関性がない。このため、仮にd軸電流idを電圧ノルム指令値Va *にフィードバックすると、相関性がないにもかかわらずd軸電流idの変化に応じて電圧ノルム指令値Va *が変化してしまう。
これに対して、図9Bに示すように、電圧位相αが±90°の近傍では、q軸電流iqと電圧ノルム指令値Va *との間には相関性がある。このため、q軸電流iqを電圧ノルム指令値Va *にフィードバックすることにより、q軸電流iqの変化に応じて電圧ノルム指令値Va *を適切に増減させることができる。
また、電圧位相αが0°の近傍では、図9Aに示すように、d軸電流idと電圧ノルム指令値Va *との間には十分な相関性がある。このため、d軸電流idを電圧ノルム指令値Va *にフィードバックすることにより、d軸電流idの変化に応じて電圧ノルム指令値Va *を適切に増減させることができる。
これに対して、電圧位相αが±0°の近傍では、図9Bに示すように、q軸電流iqと電圧ノルム指令値Va *との間には相関性がない。このため、仮にq軸電流iqを電圧ノルム指令値Va *にフィードバックすると、電動機9に生じる電圧ノルムVaが一定である状況でもq軸電流iqの変化に応じて電圧ノルム指令値Va *が変化してしまう。
このため、本実施形態では、図4に示したように、FB選択器228により電圧位相指令値α*が±90°近傍にある場合にはq軸電流フィードバック制御が選択され、電圧位相指令値α*が0°近傍にある場合には、d軸電流フィードバック制御が選択される。これにより、電動機9の動作に応じた適切な電圧ノルム指令値Va *に対し電動機9の電圧ノルムVaが過大になるのを抑制することができる。
なお、q軸電流iqと電圧ノルムVaとの相関は、電圧位相αが正の値をとる力行領域と、電圧位相αが負の値をとる回生領域との間で逆の関係になる。これに対しては、相関関係がq軸電流iqが0A(アンペア)を基準に対称となるので、q軸電流iqの絶対値を求める絶対値処理を施すことにより、力行領域でも回生領域でも共通のフィードバック構成で実現することができる。
図6乃至図9に示したように、電動機9が中高速回転領域にある場合に、電圧ノルムVaは、磁束ノルムφ0と比例関係にある。このため、電流FB制御部220は、磁束ノルムφ0に対して相関性の高い電流成分のみでフィードバック制御を実行するので、電圧ノルム指令値Va *の応答速度を確保しつつ、電圧ノルム指令値Va *の演算負荷を低減することができる。
さらに電圧ノルムVaは、磁束ノルムφ0だけでなく電気角速度ωreと比例関係にあるため、電流FB制御部220は、PI制御器229の制御ゲインを回転速度検出値Nに応じて変更する。これにより、電動機9の制御における応答速度を向上させることができる。
そして、磁束ノルムφ0に対する電流成分id及びiqの相関性を考慮し、電流FB制御部220は、電圧位相指令値α*に基づいてPI制御器229の制御ゲインの定数にd軸インダクタンスLd又はq軸インダクタンスLqを設定する。これにより、電圧位相指令値α*にかかわらず電動機9の制御における応答速度を確保することができる。
図10は、図3に示したPI制御器229においてアンチワインドアップ処理を実行する機能構成の一例を示すブロック図である。
ノルム制限器240が電圧ノルム指令値Va *を制限している旨の通知信号をPI制御器229に出力している間、図10に示すように、PI制御器229はアンチワインドアップ処理を実行する。
この例では、PI制御器229の入力に対して積分器97が更新されないよう0(ゼロ)が積分器97に入力される。そしてPI制御器229の出力である電圧ノルムFB値Va_fbと電圧ノルム基準値Va_ffとの和が電圧ノルム上限値Va_max又は電圧ノルム下限値0となるように初期化処理が実行される。
なお、ノルム制限器240が電圧ノルム指令値Va *を制限していない間は、PI制御器229は、図5に示した構成により電圧ノルムFB値Va_fbを算出する。
図11は、図3に示した位相制限器280に設定される電圧位相範囲の設定手法の一例を説明する図である。
図11には、電動機9における電圧位相αとトルクTとの関係を示す電圧位相特性が例示されている。ここでは、横軸が電動機9の電圧位相αを示し、縦軸が電動機9のトルクTを示す。
図11に示すように、電動機9の電圧位相αとトルクTとの相関が維持される電圧位相の範囲が凡そ−105度から+105度までの範囲である。このような例では、図3で述べた位相制限器280に関する電圧位相範囲の電圧位相下限値αmin及び電圧位相上限値αmaxは、それぞれ、−105度及び+105度に設定される。
図12は、図1に示した切替判定部13の構成の一例を示すブロック図である。
切替判定部13は、第1乃至第3ノルム閾値演算器131乃至133と、平均化処理フィルタ134及び135と、ノルム演算器136と、ノイズ処理フィルタ137と、参照電流フィルタ138と、電流閾値演算器139と、制御モード判定器140とを備える。
第1ノルム閾値演算器131は、電圧位相制御から電流ベクトル制御へ切り替えるための変調率閾値Mth1に基づいて、電圧ノルムに関する閾値である第1ノルム閾値Va_th1を演算する。第1ノルム閾値Va_th1は、電圧位相制御から電流ベクトル制御への切替え条件として用いられる。
第2ノルム閾値演算器132は、電流ベクトル制御から電圧位相制御へ切り替えるための変調率閾値Mth2に基づいて、電圧ノルムに関する閾値である第2ノルム閾値Va_th2を演算する。第2ノルム閾値Va_th2は、電流ベクトル制御から電圧位相制御への切替え条件として用いられる。
第3ノルム閾値演算器133は、電圧位相制御から保護制御へ切り替えるための変調率閾値Mth3に基づいて、電圧ノルムに関する閾値である第3ノルム閾値Va_th3を演算する。第3ノルム閾値Va_th3は、電流ベクトル制御から保護制御への切替え条件として用いられる。
第1乃至第3変調率閾値Mth1乃至Mth3は、例えば、式(12)のような関係になるように設定される。なお、変調率上限値Mmax *は、1.0よりも大きな値に設定される。
本実施形態の第1乃至第3ノルム閾値演算器131乃至133は、それぞれ、式(13)のように、バッテリ電圧検出値Vdcと第1乃至第3変調率閾値Mth1乃至Mth3とに基づいて、第1乃至第3ノルム閾値Va_th1乃至Va_th3を算出する。
平均化処理フィルタ134は、入力値に対して平均化処理を施して出力するフィルタである。本実施形態の平均化処理フィルタ134は、制御切替器3から出力されたd軸の最終電圧指令値vd_fin *に対して、入力値のノイズ成分を除去するノイズカット処理を施し、ノイズカット処理を施した値vd_fin_fltをノルム演算器136に出力する。平均化処理フィルタ134は、例えば、ローパスフィルタにより実現される。
平均化処理フィルタ135は、平均化処理フィルタ134と同様の構成である。平均化処理フィルタ135は、制御切替器3から出力されたq軸の最終電圧指令値vd_fin *に対してノイズカット処理を施し、ノイズカット処理を施した値vq_fin_fltをノルム演算器136に出力する。
ノルム演算器136は、式(14)のように、平均化処理フィルタ134及び135の各出力値vd_fin_flt及びvq_fin_fltに基づいて、電圧令指令値のノルム成分を示す平均化電圧ノルムVa_fin_flt *を算出する。
なお、制御切替器3から電圧位相制御の電圧指令値が出力される場合には、平均化電圧ノルムVa_fin_flt *に代えて、図3に示したベクトル変換器290に入力される電圧ノルム指令値Va *を用いるようにしてもよい。
ノイズ処理フィルタ137は、入力値に対して平均化処理を施して出力するフィルタである。本実施形態のノイズ処理フィルタ137は、図1に示した座標変換器12からのd軸電流検出値idに対してノイズカット処理を施すことにより、平均化d軸電流値id_fltを算出する。ノイズ処理フィルタ137は、例えば、ローパスフィルタにより実現される。
参照電流フィルタ138は、図2に示した電流目標値演算部103からのd軸電流目標値id *に対して、電動機9の応答性を考慮したフィルタ処理を施すことにより、d軸電流参照値id_ref *を算出する。参照電流フィルタ138は、例えば、ローパスフィルタにより実現される。
電流閾値演算器139は、入力値に対して平均化処理を施して出力するフィルタである。本実施形態の電流閾値演算器139は、参照電流フィルタ138からのd軸電流参照値id_ref *に対して、ノイズ処理フィルタ137と同様のノイズカット処理を施すことにより、平均化d軸電流値id_fltと同等の遅延特性を有するd軸電流閾値id_th *を算出する。
d軸電流閾値id_th *は、電圧位相制御から電流ベクトル制御への切替条件のひとつとして用いられる。電流閾値演算器139は、例えば、ノイズ処理フィルタ137と同一のローパスフィルタにより実現される。
制御モード判定器140は、電圧位相制御、電流ベクトル制御、及び保護制御のうち電動機9の作動状態に応じて、電動機9に適した制御を判定する。そして制御モード判定器140は、判定結果を示す制御モードを制御切替器3に出力する。
本実施形態の制御モード判定器140は、平均化電圧ノルムVa_fin_flt *と、平均化d軸電流値id_fltとに基づいて、電流ベクトル制御と電圧位相制御との間で電動機9の制御を切り替える。また、制御モード判定器140は、平均化電圧ノルムVa_fin_flt *と、回転速度検出値Nとに基づいて、電動機9の制御を電圧位相制御から電動機9を保護するための保護制御に切り替える。
図13は、第1乃至第3の変調率閾値Mth1乃至Mth3の設定例を示す図である。
図13に示すように、変調率上限値Mmax *は1.1に設定され、第2変調率閾値Mth2は1.0に設定され、第1変調率閾値Mth1は0.9に設定され、第3変調率閾値Mth3は0.5に設定される。
なお、図3に示した電圧ノルム生成部210の基準変調率M*は、電圧位相制御の動作領域のうち電動機9の動作の大部分を占める第2変調率閾値Mth2から変調率上限値Mmax *までの範囲内に設定するのが好ましい。
図14は、制御モード判定器140による制御モードの判定手法の一例を説明する図である。
図14に示すように、電流ベクトル制御の実行中において平均化電圧ノルムVa_fin_flt *が第2ノルム閾値Va_th2以上になったときに制御モード判定器140は、電動機9に適した制御が電圧位相制御であると判定する。そして制御モード判定器140は、電圧位相制御を示す制御モード信号を制御切替器3に出力する。これにより、電動機9の制御は、電流ベクトル制御から電圧位相制御へ切り替えられる。
電圧位相制御の実行中において、平均化電圧ノルムVa_fin_flt *が第1ノルム閾値Va_th1以下になり、かつ、平均化d軸電流値id_fltがd軸電流閾値id_th *以上になったときに制御モード判定器140は、電動機9に適した制御が電流ベクトル制御であると判定する。そして制御モード判定器140は、電流ベクトル制御を示す制御モード信号を制御切替器3に出力する。これにより、電動機9の制御は、電圧位相制御から電流ベクトル制御へ切り替えられる。
さらに電圧位相制御の実行中においては、平均化電圧ノルムVa_fin_flt *が第3ノルム閾値Va_th3以下になり、又は、回転速度検出値Nの絶対値が回転速度閾値Nthを下回ったときに制御モード判定器140は、電動機9に適した制御が保護制御であると判定する。
上述の回転速度閾値Nthは、電動機9の回転速度が下り過ぎているか否かを判定するための所定の閾値である。制御モード判定器140は、保護制御を示す制御モード信号を制御切替器3に出力する。これにより、電動機9の制御が電圧位相制御から保護制御へ切り替えられる。
なお、保護制御の実行中に電動機9に対して電流及び電圧が過剰に供給されておらず、電動機9の故障が起っていないときには、制御モード判定器140は、電動機9に適した制御が電流ベクトル制御であると判定する。すなわち、電動機9の制御は保護制御から電流ベクトル制御に復帰する。
図15は、図1に示した制御切替器3の詳細構成を例示するブロック図である。
制御切替器3は、電流ベクトル制御部1からの電圧指令値vdi_fin及びvqi_finと、電圧位相制御部2からの電圧指令値vdv_fin及びvqv_finと、保護制御に用いられる電圧指令値と、制御モード判定器140からの制御モード信号とを取得する。保護制御用のd軸電圧指令値及びq軸電圧指令値は、互いにゼロ(0)を示すゼロ電圧値に設定される。
制御切替器3は、制御モード判定器140からの制御モード信号に応じて、電流ベクトル制御部1の出力を用いて電動機9を駆動するか、電圧位相制御部2の出力を用いて電動機を駆動するかを選択する。
また、制御モードが保護制御を示す場合には、制御切替器3は、電動機電流検出器8及び回転子検出器10などに依存しないゼロ電圧を選択する。これにより、インバータ6から電動機9に供給される交流電力を抑制することができる。
そして、制御切替器3からゼロ電圧が出力されている間、制御装置100は、電動機9又は制御装置100自体が異常状態であるか否かのチェック及び故障診断などを実行する。
図16は、本実施形態における電動機9の制御方法の一例を示すフローチャートである。
ステップS1において座標変換器12は、電動機電流検出器8により検出されるU相及びV相の電流iu及びivをd軸及びq軸の電流検出値id及びiqに変換する。
ステップS2において回転速度演算器11は、回転子検出器10により検出される電気角検出値θに基づいて、電動機9の回転速度検出値Nを演算する。
ステップS3において制御装置100は、電動機9のトルク目標値T*とバッテリ電圧検出器7からのバッテリ電圧検出値Vdcとを取得する。
ステップS4において切替判定部13は、電動機9の作動状態に応じて、電動機9に適用すべき制御を判定する。
ステップS5において切替判定部13は、電動機9に適用すべき制御が電流ベクトル制御であるか否かを判断する。
ステップS6において電流ベクトル制御部1は、電動機9に適用すべき制御が電流ベクトル制御であると判定された場合には、トルク目標値T*に基づいてd軸及びq軸電流目標値id *及びiq *を演算する。
ステップS7において電流ベクトル制御部1は、d軸電流目標値id *とd軸電流検出値idとの偏差に応じてd軸の電流FB電圧指令値vdi *を算出するとともにq軸電流目標値iq *とq軸電流検出値iqとの偏差に応じてq軸の電流FB電圧指令値vqi *を算出する。
ステップS8において電流ベクトル制御部1は、トルク目標値T*に基づいてd軸及びq軸の非干渉電圧値vd_dcpl *及びvq_dcpl *を演算する。そして電流ベクトル制御部1は、その非干渉電圧値vd_dcpl *及びvq_dcpl *の各々に対してローパスフィルタ処理を施した非干渉電圧値vd_dcpl_flt *及びvq_dcpl_flt *を出力する。
ステップS9において電流ベクトル制御部1は、d軸及びq軸の電流FB電圧指令値vqi *及びvqi *に対して、それぞれ非干渉電圧値vd_dcpl_flt *及びvq_dcpl_flt *を加算することにより、電流ベクトル制御のd軸及びq軸電圧指令値vdi_fin *及びvqi_fin *を出力する。
ステップS10において座標変換器4は、d軸及びq軸電圧指令値vdi_fin *及びvqi_fin *を三相電圧指令値vu *、vv *及びvw *に変換する。
次に、ステップS5で電動機9に適用すべき制御が電流ベクトル制御ではないと判定された場合には、制御装置100はステップS11の処理に進む。
ステップS11において切替判定部13は、電動機9に適用すべき制御が電圧位相制御であるか否かを判断する。
ステップS12において電圧位相制御部2は、電動機9に適用すべき制御が電圧位相制御であると判定された場合には、本実施形態における電圧位相制御処理を実行する。この電圧位相制御処理については図17を参照して後述する。
ステップS13において電圧位相制御部2は、電圧位相制御のd軸及びq軸電圧指令値vdv_fin *及びvqv_fin *を出力する。その後、制御装置100はステップS10の処理に進む。
次に、ステップS11で電動機9に適用すべき制御が電流ベクトル制御ではなく、かつ電圧位相制御でもないと判定された場合には、制御装置100はステップS14の処理に進む。
ステップS14において制御切替器3は、電動機9に適用すべき制御が電流ベクトル制御ではなく、かつ電圧位相制御でもないと判定された場合には、保護制御のd軸及びq軸電圧指令値をそれぞれゼロに設定する。その後、制御装置100はステップS10の処理に進み、制御装置100の制御方法を終了する。
図17は、ステップS12の電圧位相制御処理に関する処理手順例を示すフローチャートである。
ステップS121において電圧位相制御部2は、図3で述べたとおり、電流ベクトル制御部1からのd軸及びq軸電流目標値id *及びiq *と、電圧ノルム基準値Va_ffと、電圧位相FF値αffとを取得する。
ステップS122において電圧位相制御部2は、トルク参照値Trefとトルク推定値Testとを演算する。
ステップS123において電圧位相制御部2は、トルク参照値Trefとトルク推定値Testとのトルク偏差Terrを用いて電圧位相FB値αfbを演算する。
ステップS124において電圧位相制御部2は、電圧位相FB値αfbを電圧位相FF値αffに加算した電圧位相指令値α*を所定の電圧位相範囲内に制限する。
ステップS125において電圧位相制御部2は、電圧位相指令値α*が電圧位相範囲の上限値に制限されたか否かを判断する。そして電圧位相制御部2は、電圧位相指令値α*が電圧位相範囲の上限値に制限されていない場合には、ステップS126の処理に進む。
ステップS126において電圧位相制御部2は、電圧位相指令値α*が電圧位相範囲の上限値に制限された場合には、トルク偏差Terrを電圧位相指令値α*にフィードバックするためのPI制御器264を初期化する。
ステップS127において電圧位相制御部2は、d軸電流参照値id_ref *とd軸電流検出値idとの間のd軸電流偏差id_errと、q軸電流参照値の絶対値|iq_ref *|とd軸電流検出値の絶対値|iq|と間のq軸電流絶対値偏差|iq|errとを演算する。
ステップS128において電圧位相制御部2は、d軸又はq軸の電流偏差を電圧ノルム指令値Va *にフィードバックするため、電圧位相指令値α*に基づいてd軸電流偏差id_errとq軸電流絶対値偏差|iq|errとのうちいずれか一方の電流偏差を選択する。
ステップS129において電圧位相制御部2は、選択した電流偏差を用いて電圧ノルムFB値Va_fbを演算する。
ステップS130において電圧位相制御部2は、電圧ノルムFB値Va_fbを電圧ノルム基準値Va_ffに加算した電圧ノルム指令値Va *を所定の電圧ノルム範囲内に制限する。
ステップS131において電圧位相制御部2は、電圧ノルム指令値Va *が電圧ノルム範囲の上限値Va_maxに制限されたか否かを判断する。そして電圧位相制御部2は、電圧ノルム指令値Va *が上限値Va_maxに制限されていない場合には、ステップS133の処理に進む。
ステップS132において電圧位相制御部2は、電圧ノルム指令値Va *が上限値Va_maxに制限された場合には、電流偏差を電圧ノルム指令値Va *にフィードバックするためのPI制御器229を初期化する。
ステップS133において電圧位相制御部2は、電圧ノルム指令値Va *と電圧位相指令値α*とにより特定される電圧指令ベクトルをd軸及びq軸電圧指令値vdv_fin *及びvqv_fin *に変換する。
ステップS133の処理が終了すると、制御装置100は、電圧位相制御処理を終了させ、図16に示した制御方法の処理手順に戻る。
次に、本実施形態における電動機9の制御によって得られる作用効果について次図を参照して説明する。
図18A及び図18Bは、電圧位相制御と電流ベクトル制御と間の切替え手法を説明する図である。図18A及び図18Bにおいては、横軸が電動機9の回転速度を示し、縦軸が電動機9の各相に供給される電力の相間電圧に関する電圧ノルムを示す。
図18Aは、本実施形態との比較例として一般的な制御切替えの手法を説明する図である。
一般的に、電流ベクトル制御では電動機9への供給電流が最小となるように又は電動機9の運転効率が最大となるように電動機9の制御が行われ、電圧位相制御では電動機9の電圧ノルムが一定となるように電動機9の制御が行われる。このため、電流ベクトル制御動作ラインと電圧位相制御の動作ラインとが互いに交わる交点で電動機9の制御を切り替えることが理想である。
しかしながら、交点でチャタリングが発生することがあるため、この対策として、図18Aに示すように、いずれかの制御が交点を超えてもある程度その制御を継続して行うことを許容したり、ヒステリシスを持たせるために切替周期に対して所定の時間幅を持たせたりすることが一般的である。
また、電圧位相制御については、主に過変調領域から矩形波領域で用いられるため、電動機9への供給電流に含まれる高調波電流が増加する。その結果、制御切替の判定に用いられる電流値から高調波成分を除去するローパスフィルタの時定数を大きくすることが必要になり、理想的な切替えタイミングに対して切替え判定の遅れが大きくなる傾向にある。
さらに、上述のような構成では、電動機9の負荷が急変することなどに起因して電動機9の回転速度が急峻に減少したときには、電圧位相制御が許容範囲を超えて継続して行われる場合がある。このような場合には、電動機9への過電流を引き起こすことが懸念される。これに対し、本実施形態における電流ベクトル制御と電圧位相制御との間の制御切替え手法について図18Bを参照して説明する。
図18Bは、本実施形態における電動機9の制御を切り替える手法を説明する図である。
まず、本実施形態の電圧位相制御部2には、図3に示したように、d軸及びq軸の電流目標値id *及びiq *並びに電流検出値id及びiqを電圧ノルム指令値Va *に対してフィードバックする構成が備えられている。このような構成をとることにより、電圧位相制御を用いて電動機9を駆動している状態であっても、電動機9の回転速度が低下した場合には、回転速度の低下に合わせて適切に電圧ノルムを小さくすることができる。
これにより、図18Bに示すように、電圧位相制御の実行中に電動機9の電圧ノルムが電流ベクトル制御の動作ライン近傍を追従するので、制御切替えのポイントとなる第1乃至第3電圧ノルム閾値Va_th1 *乃至Va_th3 *を任意の変調率又は電圧ノルム値に設定することができる。
これに伴い、高調波電流が増加してしまう過変調領域を避けるように、制御切替えのポイントを設定することが可能になる。したがって、図12に示したノイズ処理フィルタ137の時定数を小さくすることが可能になるので、切替判定部13での電圧位相制御から電流ベクトル制御への切替え判定の遅れを短くすることができる。
仮に、判定の遅れに起因して電圧位相制御が制御切替えのポイントを超えて実行されたとしても、同一の回転速度における電圧位相制御と電流ベクトル制御との電圧ノルムの差が小さいため、どちらの制御でも動作可能なマージンを十分に確保することができる。これにより、電動機9での過電流の発生を抑制することができる。
また、何らかの異常が原因となり電圧位相制御において電圧ノルムが第1電圧ノルム閾値Va_th1 *よりも低下した場合であっても、電圧ノルム指令値Va *を監視することにより、電圧ノルムの低下を検出して異常を検知することが可能になる。そして異常を検知した場合には、電動機9の制御を電圧位相制御から保護制御へと移行させることにより、電動機9を保護することができる。
本発明の第1実施形態によれば、電動機9を制御する制御方法は、電動機9の作動状態に応じて電動機9の供給電力を制御する電流ベクトル制御及び電圧位相制御のうちいずれか一つの制御を実行する制御方法である。この制御方法において電圧位相制御部2は、電動機9に対する供給電圧の大きさを示す電圧ノルム指令値Va *と、その供給電圧の位相を示す電圧位相指令値α*とに基づいて電圧位相制御の電圧指令値を演算する。
そして電圧位相制御部2は、電動機9に生じる電圧の向きに応じて、電動機9に供給される電流のd軸及びq軸成分のうち少なくとも一方の電流成分を示す電流検出値id又はiqを電圧ノルム指令値Va *にフィードバックする。
例えば、図7に示したように、直交座標系において電動機9に生じる電圧Vaの向きがd軸に比べてq軸に近い場合には、電圧ノルムVaに対するd軸電流検出値idの相関性が、電圧ノルムVaに対するq軸電流検出値iqの相関性に比べて高くなる。一方、図8に示したように、電動機9に生じる電圧Vaの向きがq軸に比べてd軸に近い場合には、電圧ノルムVaに対するq軸電流検出値iqの相関性が、電圧ノルムVaに対するd軸電流検出値idの相関性に比べて高くなる。
すなわち、電動機9に生じる電圧の向きがd軸に近づくほど、電圧ノルムVaに対するd軸電流検出値idの相関性が高くなり、電動機9に生じる電圧の向きがq軸に近づくほど、電圧ノルムVaに対するq軸電流検出値iqの相関性が高くなる。
このため、電圧位相制御部2は、電動機9に生じる電圧の向きがd軸に近づくほど、q軸電流検出値iqを電圧ノルム指令値Va *にフィードバックし、電動機9に生じる電圧の向きがq軸に近づくほど、q軸電流検出値iqを電圧ノルム指令値Va *にフィードバックすることが可能になる。
これにより、図18Bに示したように、電動機9の回転速度が急峻に低下した場合であっても、電圧位相制御の実行中に電圧ノルム指令値Va *と電圧ノルムVaとの誤差が過大になるのを抑制することができる。このため、制御の誤差が過大になることに伴う電圧ノルム指令値Va *の発散を抑えられるので、電動機9の動作が不安定になるのを回避することができる。
また、本実施形態によれば、電動機9の制御方法において電流ベクトル制御部1は、図1に示したように、電動機9のトルク目標値T*に基づいて、電動機9の電流に関するd軸目標値及びq軸目標値を示すd軸電流目標値id *及びq軸電流目標値iq *を演算する。
そして、電圧位相制御部2は、図3に示したように、d軸電流検出値idがd軸電流目標値id *に収束するように電圧ノルム指令値Va *を算出するd軸FB処理と、q軸電流検出値iqがq軸電流目標値iq *に収束するように電圧ノルム指令値Va *を算出するq軸FB処理とを実行する。さらに電圧位相制御部2の電流FB制御部220は、電圧位相指令値α*を用いてd軸FB処理及びq軸FB処理のうち一方のFB処理を選択し、選択したFB処理を実行して電圧ノルム指令値Va *を変更する。
このように、電動機9に生じる電圧の向きを特定するパラメータとして電圧位相指令値α*を用いることにより、d軸電流検出値id及びq軸電流検出値iqのうち電動機9の電圧ノルムVaに対して相関性の高い電流検出値を的確に選択することができる。したがって、電動機9の低回転領域において電圧ノルム指令値Va *に対し電動機9の電圧ノルムVaが過大になるのを抑制することができる。
また、本実施形態によれば、電流FB制御部220におけるd軸偏差演算器222がd軸電流検出値idとd軸電流目標値id *との間のd軸電流偏差を演算し、q軸偏差演算器226がq軸電流検出値iqとq軸電流目標値iq *との間のq軸電流偏差を演算する。そしてFB選択器228は、電圧位相指令値α*に応じてd軸電流偏差及びq軸電流偏差のうち一方の電流偏差を選択し、PI制御器229は、FB選択器228により選択された電流偏差に応じて電圧ノルム指令値Va *を増減させる。
これにより、d軸FB処理及びq軸FB処理の各々においてフィードバックするためのPI制御器を設けることなく、ひとつのPI制御器229を用いて電圧ノルム指令値Va *にフィードバックさせることができる。したがって、簡易な構成により、電動機9の電圧ノルムVaに対する相関性の高い電流偏差の変化に応じて電圧ノルム指令値Va *を増減させることができる。
また、本実施形態によれば、電動機9の制御方法において電動機電流検出器8は、電動機9に供給される三相交流電流を検出する。そして座標変換器12は、電動機電流検出器8により検出された三相交流電流をq軸電流検出値iqに変換し、q軸偏差演算器226は、q軸電流検出値の絶対値|iq|とq軸電流目標値の絶対値|iq *|との絶対値差分であるq軸電流偏差を演算する。
q軸電流検出値iqと電圧ノルムVaとの相関は、電動機9が力行領域から回生領域へと切り替われば逆転する。そのため、q軸電流に関する検出値iq及び目標値iq *の絶対値を求める絶対値処理を行うことなく電動機9の力行領域で電流FB制御部220が動作するように構成すると、回生領域ではq軸電流検出値iqの増加に対して電圧ノルムVaが減少してしまう。その結果、電動機9の回転速度が急峻に低下するような状況では、かえって電圧ノルムVaに対し電圧ノルム指令値Va *が過大になり、電動機9の動作が不安定になる。
これに対して、本実施形態ではq軸電流に関する検出値及び目標値の絶対値を求めることにより、q軸電流偏差を電圧ノルム指令値Va *にフィードバックさせる際に、回生領域及び力行領域のうちいずれの領域であっても電動機9を安定して制御することができる。
また、本実施形態によれば、PI制御器229において、d軸電流検出値id又はq軸電流検出値iqをフィードバックする際の制御ゲインを電動機9の電気角速度ωreに応じて変更する。これにより、電動機9の回転速度にかかわらず、電圧ノルム指令値Va *のd軸電流検出値id及びq軸電流検出値iqに対する応答速度を的確に調整することができる。
また、本実施形態によれば、PI制御器229において、q軸電流検出値iqをフィードバックする際の制御ゲインの定数Lqは、d軸電流検出値idをフィードバックする際の制御ゲインの定数Ldに対して異なる値に設定される。
d軸電流検出値idにより生じる電流磁束は、図6に示したようにd軸インダクタンスLdに依存し、q軸電流検出値iqにより生じる電流磁束は、q軸インダクタンスLqに依存する。特にIPM型電動機においては、d軸インダクタンスLdとq軸インダクタンスLqとの差異が大きくなる。
このため、d軸インダクタンスLd及びq軸インダクタンスLqを考慮したうえでd軸FB処理の制御ゲインに対してq軸FB処理の制御ゲインを異なる値に設定する。これにより、d軸FB処理及びq軸FB制御の両者において同等の応答速度を確保することができる。
また、本実施形態によれば、PI制御器229は、図5に示したように、d軸電流偏差又はq軸電流偏差を電圧ノルム指令値Va *にフィードバックする際に積分器97により積分処理を実行する。そしてノルム制限器240は、電圧ノルム指令値Va *が所定の上限値Va_maxを上回る場合には、電圧ノルム指令値Va *を上限値Va_maxに制限するとともに、PI制御器229は、積分器97による積分処理を停止する。
または、ノルム制限器240は、電圧ノルム指令値Va *を上限値Va_maxに制限するとともに、PI制御器229は、図10に示したように、所定のアンチワインドアップ処理を実行する。アンチワインドアップ処理とは、ノルム制限器240によって制限される前の電圧ノルム指令値Va *が上限値Va_maxと一致するよう、積分器97の入出力バッファに保持された積分値(前回値)を更新する処理のことをいう。
このように、電圧ノルム指令値Va *に対してノルム制限器240により上限値Va_maxに制限するリミット処理が実行されるときには、PI制御器229によりアンチワインドアップ処理が実行される。
これにより、電動機9の高速回転領域では、図3に示した電圧位相制御部2の構成から、電圧ノルム指令値Va *を固定してトルク推定値Testを電圧位相指令値α*にフィードバックする他の構成に切り替えるような制御構成であっても電圧位相制御中に2つの構成をシームレスに切り替えることができる。
また、本実施形態によれば、制御モード判定器140は、電圧位相制御の実行中に、電圧ノルム指令値Va *に相関のある相関パラメータ又は電圧ノルム指令値Va *が第1ノルム閾値Va_th1を下回るときには、電動機9の制御を電流ベクトル制御に切り替える。
本実施形態の電圧位相制御では、図18Bに示したように、電圧ノルム指令値Va *が電動機9の電圧ノルムVaに追従するので、電動機9に供給される電圧の過変調による電圧歪みが小さく、かつ、高調波電流が小さい動作領域に第1ノルム閾値Va_th1を設定することが可能となる。これにより、切替え判定用の電圧ノルム指令値Va *又はこれと相関のあるパラメータに含まれるノイズ成分が小さくなる。
このため、ノイズ成分を除去する平均化処理フィルタ134及び135を省略したり、平均化処理フィルタ134及び135の時定数を小さくしたりできるので、制御切替えの遅れを短くすることができる。したがって、電動機9の負荷が急変した場合であっても、電動機9の回転速度が電圧位相制御の許容範囲を超えて電圧位相制御が実行されるのを抑制することができ、電動機9に対する過電流の発生を抑制することができる。
例えば、上述の相関パラメータとしては、電圧ノルム指令値Va *に平均化処理を施した平均化処理値、d軸及びq軸電圧指令値vd_fin *及びvq_fin *で特定される電圧指令ベクトルのノルム成分、及び、このノルム成分の平均化処理値Va_fin_flt *などが挙げられる。あるいは、これらのうち少なくともひとつを相関パラメータとして用いてもよい。そして、第1ノルム閾値Va_th1は、電圧ノルム指令値Va *の上限値よりも小さな値に設定される。
また、本実施形態によれば、制御モード判定器140は、電動機9の電流成分にひとつであるd軸電流検出値id又はこの平均化処理値が所定の電流閾値id_th *を上回る場合には、電圧位相制御から電流ベクトル制御へ切り替える。これにより、電動機9の負荷が急変したことを検出することが可能になるので、電圧位相制御から電流ベクトル制御への切替えの際に電動機9に与える影響を抑制することが可能になる。
また、本実施形態によれば、所定の電流閾値id_th *は、電流ベクトル制御のd軸電流目標値id *又はこの平均化処理値に設定される。これにより、電流成分の検出値が目標値に対して追従しているか否かを判断することが可能になる。このため、目標値が急峻に変化した際に検出値の追従が遅くなるようなシーンを特定することが可能になるので、電圧位相制御から電流ベクトル制御への切替えに伴う電動機9の供給電流又はトルクの急変を抑制することができる。
また、本実施形態によれば、制御モード判定器140は、電流ベクトル制御の実行中に、d軸及びq軸の電圧指令値vd_fin *及びvq_fin *で特定される電圧指令ベクトルのノルム成分が第2ノルム閾値Va_th2を上回るときには、電圧位相制御に切り替える。そして第2ノルム閾値Va_th2は、電圧ノルム指令値Va *の上限値Va_maxよりも小さく、かつ、第1ノルム閾値Va_th1よりも大きい特定の電圧閾値に設定される。
本実施形態の電圧位相制御では、図18Bに示したように、電圧ノルム指令値Va *が電動機9の電圧ノルムVaに追従する。このため、電圧位相制御と電流ベクトル制御との間の切替えにおいて、第1ノルム閾値Va_th1に対してヒステリシスを持たせつつ、過変調による電圧歪みが小さく、かつ、高調波電流が小さい動作領域に第2ノルム閾値Va_th2を設定することが可能となる。これにより、切替え判定用の電圧ノルム指令値Va *又はこれと相関のあるパラメータに含まれるノイズ成分が小さくなるので切替え判定の遅れを抑制することができるとともに、チャタリングの発生を抑制することができる。
また、本実施形態によれば、制御モード判定器140は、電圧位相制御の実行中に、電圧ノルム指令値Va *が第3ノルム閾値Va_th3を下回るとき、又は電動機9の回転速度検出値Nが回転速度閾値Nthを下回るときには、電動機9の供給電力を抑制する保護制御に切り替える。第3ノルム閾値Va_th3は、電圧位相制御から電流ベクトル制御へ切り替えるための第1ノルム閾値Va_th1よりも小さい第1閾値であり、回転速度閾値Nthは、第2閾値である。
このように、電圧ノルム指令値Va *に関する平均化処理値又は電動機9の回転速度が電動機9の正常動作で想定される値よりも低下した場合には、判定用パラメータの平均化処理に起因する判定遅れに対して許容できない電動機9の負荷変動が起きた可能性がある。そのため、電圧ノルム指令値Va *又は電動機9の回転速度が想定よりも低下した場合に、速やかに電動機9を保護する制御に移行することができる。
また、本実施形態によれば、制御切替器3は、電動機9の保護制御として、d軸及びq軸の電圧指令値をゼロに設定する、又は、電動機に設けられた各相の電源線を短絡する。これにより、電圧ノルム指令値Va *又は電動機9の回転速度が想定よりも低下した場合には、電動機電流検出器8の故障など、何らかの異常が起きた可能性がある。このため、電動機9への通電を速やかに停止することにより、電動機9の耐久性を超えるようなトルクが発生するという事態を回避することができる。
なお、第1実施形態では電圧ノルム指令値Va *に関する平均化処理値又は電動機9の回転速度が正常動作時に想定される値よりも低下した場合には電圧位相制御から保護制御に遷移した。しかしながら、制御装置100として厳しいフェールセーフが要求される場合は、電動機9が想定外の動作をしたときに電動機9を完全に停止することを優先することも考えられる。
(第2実施形態)
そこで次の実施形態では、電圧ノルム指令値Va *に関する平均化処理値又は電動機9の回転速度が正常動作時に想定される値よりも低下した場合に、保護制御のひとつとして電動機9を停止する停止制御を実行する例について図19を参照して説明する。
図19は、本発明の第2実施形態における制御モード判定器140による判定手法の一例を示す図である。
図19に示すように、電圧位相制御の実行中に平均化電圧ノルムVa_fin_flt *が第3ノルム閾値Va_th3以下になり、又は、回転速度検出値Nの絶対値が回転速度閾値Nthを下回ったときに制御モード判定器140は、電動機9に適した制御が停止制御であると判定する。そして制御モード判定器140は、停止制御を示す制御モード信号を制御切替器3に出力する。これにより、電動機9の停止制御が実行されて停止シーケンスに移行する。
図20は、本実施形態における制御切替器3の詳細構成を例示するブロック図である。
本実施形態の制御切替器3は、電圧指令値切替器31と、出力停止切替器32とを含む。電圧指令値切替器31については、図15に示した構成と同一であるため、構成の説明については省略する。
出力停止切替器32は、制御モード判定器140から停止制御を示す制御モード信号を受信すると、PWM変換器5の出力を停止(OFF)するゲート信号をPWM変換器5に出力する。一方、出力停止切替器32は、電圧位相制御又は電流ベクトル制御を示す制御モード信号を受信すると、PWM変換器5の出力を許可(ON)するゲート信号をPWM変換器5に出力する。
このように、電圧位相制御の実行中に電圧ノルム指令値Va *に関する平均化処理値又は電動機9の回転速度が想定よりも低下した場合には電圧位相制御から停止制御に遷移させることができる。これにより、電動機9による想定外の動作を検出した場合には、インバータ6に備えられたスイッチング素子のゲート電流が停止するので、電動機9での異常な動作の再発を抑制することができる。
本発明の第2実施形態によれば、出力停止切替器32は、電動機9の保護制御として、インバータ6に備えられたスイッチング素子のゲート電流を停止する。これにより、電動機9をより確実に保護することができる。
なお、本実施形態では電動機9が想定外な動作をしたときに電動機9を完全に停止する例にいて説明したが、制御装置100以外の仕組みにより電動機9のフェールセーフが担保されているような場合は電動機9の制御を可能な限り継続させることも考えられる。
(第3実施形態)
そこで次の実施形態では、電圧ノルム指令値Va *に関する平均化処理値又は電動機9の回転速度が正常動作で想定される値よりも低下した場合に、保護制御として電流ベクトル制御に切り替える例について図21を参照して説明する。
図21は、本発明の第3実施形態における制御モード判定器140による判定手法の一例を示す図である。
図21に示すように、電圧位相制御の実行中に平均化電圧ノルムVa_fin_flt *が第3ノルム閾値Va_th3以下になり、又は、回転速度検出値Nの絶対値が回転速度閾値Nthを下回ったときでも制御モード判定器140は、電動機9に適した制御が電流ベクトル制御であると判定する。
そして制御モード判定器140は、電流ベクトル制御を示す制御モード信号を制御切替器3に出力する。これにより、電圧ノルム指令値Va *に関する平均化処理値又は電動機9の回転速度が正常動作時に想定される値よりも低下した場合に、強制的に電流ベクトル制御に切り替えられるので、電動機9の制御を継続することができる。
図22は、本実施形態における制御切替器3の詳細構成を例示するブロック図である。
本実施形態の制御切替器3は、図15に示した保護制御のゼロ電圧値の入力が削除されている。このため、制御切替器3は、制御モード判定器140から制御モード信号を受信すると、電流ベクトル制御又は電圧位相制御のいずれか一方の電圧指令値を出力する。
本発明の第3実施形態によれば、制御モード判定器140は、電圧位相制御の実行中に平均化電圧ノルムVa_fin_flt *が第3ノルム閾値Va_th3以下になり、又は、回転速度検出値Nの絶対値が回転速度閾値Nthを下回ったときに、電流ベクトル制御に切り替えられる。これにより、電動機9が想定外の動作をしている場合であっても、電動機9の制御を可能な限り継続させることができる。
(第4実施形態)
図23は、本発明の第4実施形態における電動機9の制御装置110の構成例を示す図である。
本実施形態の制御装置110では、図1に示した制御装置100の電流ベクトル制御部1から、d軸目標電流idが切替判定部13に供給されているのに対してq軸目標電流iqが切替判定部13に供給されている点が異なる。他の構成については制御装置100と同じ構成である。
図24は、本実施形態における切替判定部13の構成の一例を示すブロック図である。
本実施形態の切替判定部13は、図12に示した構成に加えて、絶対値演算器141及び142を備える。他の構成については、図12に示した構成と同様であるため、ここでの説明を省略する。
本実施形態においては、ノイズ処理フィルタ137がq軸電流検出値iqに対してノイズカット処理を施し、参照電流フィルタ138がq軸電流目標値iq *に対して電動機9の応答遅れを模擬するフィルタ処理を施す。
絶対値演算器141は、ノイズ処理フィルタ137により算出された平均化q軸電流値iq_fltに対する絶対値|iq_flt|を演算する。
絶対値演算器142は、電流閾値演算器139により算出されたq軸電流閾値iq_th *に対する絶対値|iq_th *|を演算する。
制御モード判定器140は、平均化電圧ノルムVa_fin_flt *と、平均化q軸電流値の絶対値|iq_flt|とに基づいて、電流ベクトル制御と電圧位相制御と保護制御との間で電動機9の制御を切り替える。
制御モード判定器140は、電動機9の電流検出値が電流目標値近傍に達していることを確認することにより、電圧位相制御から電流位相制御へ切り替えるべきか否かを判断する。切替え判定に用いられるq軸電流に関する検出値iq及び目標値iq *は、電動機9の回生領域と力行領域とで符号が反対になるため、切替判定部13に絶対値演算器141及び142が備えられている。
このように、q軸電流に関する検出値iq及び目標値iq *に対して絶対値を取ることにより、q軸電流を用いても制御切替えの判定を行うことができる。なお、q軸電流だけでなくd軸電流の両者を用いても制御切替えの判定を行うことができる。
図25は、本実施形態における制御モード判定器140による判定手法の一例を示す図である。
本実施形態では、電圧位相制御から電流ベクトル制御への切替え条件が図14に示した切替え条件と異なるため、この条件についてのみ説明する。なお、本実施形態の他の条件については、図14に示した切替え条件と同じである。
図25に示すように、電圧位相制御の実行中において平均化電圧ノルムVa_fin_flt *が第1ノルム閾値Va_th1以下になり、かつ、平均化q軸電流値の絶対値|iq_flt|がq軸電流閾値|iq_th *|以上になったときに制御モード判定器140は、電動機9に適した制御が電流ベクトル制御であると判定する。そして制御モード判定器140は、電流ベクトル制御を示す制御モード信号を制御切替器3に出力する。これにより、電動機9の制御は、電圧位相制御から電流ベクトル制御へ切り替えられる。
本発明の第4実施形態によれば、制御切替器3は、電動機9の電流成分のひとつであるq軸電流検出値iqの平均化処理値の絶対値|iq_flt|又はq軸電流検出値の絶対値|iq|が所定の電流閾値であるq軸電流閾値|iq_th *|を上回る場合には、電圧位相制御から電流ベクトル制御に切り替える。q軸電流閾値|iq_th *|は、電流ベクトル制御のq軸電流目標値iq *の絶対値又はq軸電流目標値の平均化処理値iq_ref *の絶対値である。
このように、q軸電流に関する検出値iq及び目標値iq *に対して絶対値を取ることにより、電動機9の動作点が目標値近傍に達しているか否かを判断することが可能になる。
以上、本発明の実施形態について説明したが、上記実施形態は本発明の適用例の一部を示したに過ぎず、本発明の技術的範囲を上記実施形態の具体的構成に限定する趣旨ではない。また、上記実施形態は、適宜組み合わせ可能である。
例えば、図6に示したように、d軸電流id及びq軸電流iqの両者を用いて電圧ノルム指令値Va *にフィードバックするようにしてもよい。この場合には、例えば、電圧位相指令値α*が90°近傍にあるときに、d軸電流フィードバックの制御ゲインを小さくし、q軸電流フィードバックの制御ゲインを大きくする。