以下、図面を参照しながら本発明の実施形態について説明する。
[第1実施形態]
図1は、電動車両100の概略構成を示す説明図である。図1に示すように、電動車両100は、バッテリ10の電力によって駆動する車両であり、駆動モータ11及び発電システム12を備える。
バッテリ10は、電動車両100の各部を駆動するための電力を蓄積する。バッテリ10は充電可能である。本実施形態では、バッテリ10は、少なくとも発電システム12が発電した電力によって充電される。本実施形態においては、バッテリ10は直流電源である。バッテリ10が出力する直流電圧(以下、バッテリ電圧Vdcという)は図示しないセンサ等によって検出可能である。
駆動モータ11は、電動車両100を駆動する駆動用の電動機であり、バッテリ10の電力を用いて電動車両100の駆動力を発生する。本実施形態においては、駆動モータ11は、三相交流モータである。
駆動モータ11は、減速機13等を介してドライブシャフト14と接続される。そして、ドライブシャフト14には駆動輪15が接続される。したがって、駆動モータ11が、その出力軸に発生するトルクは、減速機13等を介して駆動輪15に電動車両100の駆動力を発生させる。また、電動車両100が減速するときには、いわゆる回生制御によって、駆動モータ11は電動車両100の運動エネルギーを電気エネルギーに変換する。回生制御時に得られる電力の一部または全部は、バッテリ10に充電可能である。
駆動モータ11は、駆動インバータ16を介してバッテリ10と接続される。駆動インバータ16は、駆動モータ11用のインバータであり、バッテリ10が出力する直流電力を交流電力に変換して駆動モータ11に供給する。また、回生制御時には、駆動インバータ16は、駆動モータ11で発生する交流電力を直流電力に変換する。
発電システム12は、バッテリ10を充電する電力を発電するシステムである。すなわち、本実施形態の電動車両100は、いわゆるシリーズハイブリッド方式の電動車両である。発電システム12は、エンジン17、及び、発電機18を備える。
エンジン17は、いわゆる内燃機関であり、発電システム12の動力源である。すなわち、発電機18は、エンジン17が発生させる動力によって発電する。なお、本実施形態では、発電システム12は、動力源として内燃機関であるエンジン17を用いているが、エンジン17は発電機18を駆動し得る他の態様の動力源に置換してもよい。エンジン17の回転数(以下、エンジン回転数という)等、エンジン17の動作状態に係るパラメータは図示しないセンサ等によって適宜検出可能である。
発電機18は、エンジン17の動力で発電する。すなわち、発電機18は、エンジン17の駆動力によって回転することにより、発電をする。発電機18は、発電機インバータ20を介してバッテリ10と接続しており、発電によって生じた電力はバッテリ10に充電される。発電機インバータ20は、発電機18で発生する交流電力を直流電力に変換して、バッテリ10に供給する。なお、発電機インバータ20は、バッテリ10の直流電力を交流電力に変換して発電機18に供給し、発電機18を力行回転させることができる。これにより、エンジン17の始動するときには、エンジン17がクランキングされる。また、必要に応じて発電機18を力行回転させ、エンジン17を空回しすることで、バッテリ10の電力が消費される。このようにエンジン17を空回しさせる動作態様は、モータリングと称される。
本実施形態では、発電機18は、U相,V相,及びW相を有する三相交流発電機である。発電機18のU相を流れる電流の検出値はU相電流Iuである。同様に、発電機18のV相を流れる電流の検出値はV相電流Ivであり、発電機18のW相を流れる電流の検出値はW相電流Iwである。以下では、発電機18の各相に流れる電流の検出値を三相電流と総称する場合がある。発電機18のd軸電流の検出値はd軸電流Idであり、発電機18のq軸電流の検出値はq軸電流Iqである。d軸電流Id及びq軸電流Iqは、三相電流を変換することによって検出される。以下では、発電機18のd軸電流Id及びq軸電流Iqをdq軸電流Id,Iqと総称する場合がある。この他、発電機18の回転数の検出値(以下、単に回転数検出値ωgという)は図示しないセンサ等によって適宜検出可能である。なお、回転数検出値ωgは、発電機18の回転状態を表すパラメータの一形態である。本実施形態では、各種制御において、発電機18の回転状態を表すパラメータとして回転数検出値ωgを用いるが、回転数検出値ωgの代わりに、発電機18の回転速度等、発電機18の回転状態を表すその他のパラメータを用いることができる。
電動車両100は、上記の発電システム12等の他に、走行等の制御及び発電システム12の制御のために、各種のコントローラを備える(図1参照)。具体的には、図1に示すように、システムコントローラ21、駆動モータコントローラ22、バッテリコントローラ23、発電機コントローラ24、及び、エンジンコントローラ25を備える。また、本実施形態においては、システムコントローラ21は発電制御部26を備える。
システムコントローラ21は、車両情報を用いて電動車両100の各部を統括的に制御する上位の制御部である。車両情報とは、電動車両100を構成する各部の動作状態等を表すパラメータである。例えば、運転者によるアクセルペダルの操作量であるアクセル開度Apo、車速V、及び、電動車両100がいる路面の勾配等、電動車両100の駆動状態を表すパラメータは車両情報である。また、バッテリ10の温度、入力及び/または出力に係る電圧、電流、内部抵抗、並びに、充電状態(SOC:State Of Charge)等、バッテリ10の状態を表す各種パラメータは車両情報である。この他、発電システム12による発電電力等、電動車両100の内部状態を表すパラメータも車両情報である。例えば、発電機18の回転数検出値ωg、d軸電流Id、及び、q軸電流Iq等、及び、エンジン17の回転数等は車両情報である。これらは発電機18の回転状態を表すパラメータの例である。バッテリ電圧Vdcは車両情報である。これらの車両情報は、センサ等を用いて直接的に取得され、または、車両情報を用いた演算によって間接的に取得される。システムコントローラ21は、図示しないセンサや上記各種のコントローラ等を用いて、これら各種の車両情報を必要に応じて取得できる。
システムコントローラ21は、1または複数の車両情報を用いて、モータトルク指令値を演算する。モータトルク指令値は、駆動モータ11が出力すべき目標のトルクを表す指令値である。したがって、システムコントローラ21は、電動車両100の駆動に関し、モータトルク指令値を演算するモータトルク指令値演算部として動作する。モータトルク指令値は、駆動モータコントローラ22に入力される。本実施形態においては、システムコントローラ21は、アクセル開度Apo、車速V、バッテリ10のSOC,入力可能電力(入力可能電圧及び/または入力可能電流),出力可能電力(出力可能電圧及び/または出力可能電流)、発電機18の発電電力等に応じて、駆動トルク指令値を演算する。
システムコントローラ21は、1または複数の車両情報を用いて、目標発電電力を演算する。目標発電電力は、バッテリ10への充電、及び/または、駆動モータ11に供給するために、発電システム12によって発電すべき電力の目標値である。したがって、システムコントローラ21は、電動車両100における発電に関し、目標発電電力を演算する目標発電電力演算部として動作する。演算された目標発電電力は、発電制御部26に入力される。
発電制御部26は、目標発電電力に基づいて、発電システム12による発電を制御する。具体的には、発電制御部26は、目標発電電力に基づいて、発電機回転数指令値ωg
*と、エンジントルク指令値TE
*と、を演算し、これらに基づいて発電システム12を動作させる。
発電機回転数指令値ωg
*は、発電システム12によって目標発電電力の発電を実現するために、発電機18が維持すべき回転数についての目標値(指令値)である。発電機回転数指令値ωg
*は、発電機コントローラ24に入力される。
エンジントルク指令値TE
*は、発電システム12によって目標発電電力を実現するために、エンジン17が出力すべきトルクについての目標値(指令値)である。エンジントルク指令値TE
*は、エンジンコントローラ25に入力される。また、発電制御部26は、発電機18の回転数検出値ωgを監視する。
なお、本実施形態では、発電制御部26はシステムコントローラ21に設けられているが、発電制御部26は、発電機コントローラ24やエンジンコントローラ25と同様に、システムコントローラ21から独立して設けられていてもよい。
駆動モータコントローラ22、バッテリコントローラ23、発電機コントローラ24、及び、エンジンコントローラ25は、それぞれシステムコントローラ21の指令に基づいて、電動車両100の各部を個別に制御する下位の制御部である。
駆動モータコントローラ22は、駆動トルク指令値に基づき、駆動モータ11の回転数や電圧等の状態に応じて駆動インバータ16をスイッチングする。これにより、駆動モータコントローラ22は、システムコントローラ21から指令された駆動トルクを発生させるように、駆動モータ11を動作させる。
バッテリコントローラ23は、バッテリ10の温度、電圧、電流、内部抵抗、及びSOC等、バッテリ10の状態を表すパラメータ(車両情報)を、図示しないセンサ等により、または、演算等により、取得する。例えば、バッテリコントローラ23は、バッテリ10が放電または充電する電流や電圧に基づいて、SOCを計測する。計測されたSOCはシステムコントローラ21に出力される。また、バッテリコントローラ23は、バッテリ10の温度、内部抵抗、及び/または、SOCに応じて、バッテリ10の入力可能電力や出力可能電力を演算する。入力可能電力や出力可能電力の演算結果は、システムコントローラ21に出力される。
この他、バッテリコントローラ23は、バッテリ10を保護する必要性を判断する。すなわち、バッテリコントローラ23は、バッテリ10に関する保護要否判断部として機能する。バッテリ10を保護する必要性は、例えば、バッテリ10の温度、電圧、電流、及び/または、SOC等、バッテリ10に関する各種のパラメータに基づいて判断される。また、バッテリ10に対する入力電圧を制限する必要があるときに、及び/または、バッテリ10からの出力電力を制限する必要があるときに、バッテリ10を保護する必要があると判断される。典型的には、バッテリ10が低温であるときに、バッテリ10を保護する必要があると判断される。バッテリコントローラ23は、バッテリ10を保護する必要性に関する判断結果を、バッテリ保護フラグFLGとして、システムコントローラ21に出力する。システムコントローラ21は、バッテリ保護フラグFLGは、発電制御部26を介して、発電機コントローラ24に入力する。発電機コントローラ24においては、バッテリ保護フラグFLGは、バッテリ10の入力可能電力及び/または出力可能電力等の制限状態を表す。
なお、本実施形態においては、バッテリコントローラ23がバッテリを保護する必要性を判断するが、システムコントローラ21がバッテリ10を保護する必要性を判断してもよい。この場合、システムコントローラ21がバッテリ10に関する保護要否判断部を構成する。
発電機コントローラ24は、発電機18の動作を制御する。より具体的には、発電機コントローラ24は、発電機回転数指令値ωg
*に基づき、発電機18の回転数や電圧等の状態に応じて発電機インバータ20をスイッチングする。これにより、発電機コントローラ24は、目標発電電力の発電を実現するように発電機18を動作させる。本実施形態では、発電機コントローラ24は、回転数検出値ωgをフィードバックする回転数制御により、発電機18の回転数を制御する。発電機コントローラ24の構成については、詳細を後述する。
エンジンコントローラ25は、動力源であるエンジン17の動作を制御する動力源コントローラである。より具体的には、エンジンコントローラ25は、エンジントルク指令値TE
*に基づき、エンジン17の回転数や温度等の信号に応じてエンジン17のスロットル、点火時期、及び/または、燃料噴射量を調整する。これにより、エンジンコントローラ25は、エンジン17によって、目標発電電力の発電を実現する動力を発生させる。エンジン17の回転数や温度等の信号は、図示しないセンサ等により適宜取得される。
上記のシステムコントローラ21、駆動モータコントローラ22、バッテリコントローラ23、発電機コントローラ24、及び、エンジンコントローラ25は、1または複数のコンピュータで構成される。すなわち、これらのコントローラは、各々に、部分的に、または、全体として、例えば、中央演算装置(CPU)、ランダムアクセスメモリ(RAM)、及び、入出力インタフェース(I/Oインタフェース)等を含む。また、これらのコントローラは、上記の各種制御を予め定められた所定の制御周期で定期的に実行するようにプログラムされている。
なお、本実施形態では、上記の各種コントローラを別個に説明しているが、これらのコントローラのうち一部または全部が一体的に構成され得る。例えば、上記の各種コントローラは、全体として1つのコンピュータで実装することができる。また、例えば、発電機コントローラ24とエンジンコントローラ25を1つのコンピュータで実装する等、上記の各種コントローラのうちの一部を1つのコンピュータで実装してもよい。すなわち、上記の各種コントローラの区分は、説明の便宜のためのものに過ぎない。したがって、上記の各種コントローラの全体が、電動車両100を制御する車両制御装置を構成する。
上記の各種コントローラのうち、発電機コントローラ24、エンジンコントローラ25、発電制御部26、及び、バッテリコントローラ23は、特に直接的に発電システム12の制御に関連するコントローラである。したがって、発電機コントローラ24、エンジンコントローラ25、発電制御部26、及び、バッテリコントローラ23は、発電システム12を制御する発電システム制御装置101を構成する。
<発電機コントローラの構成>
図2は、発電機コントローラ24の構成を示すブロック図である。図2に示すように、発電機コントローラ24は、回転数制御部31、電流指令値演算部32、電流制御部33、非干渉化制御部34、電流変換器35、及び、電圧変換器36を備える。
回転数制御部31は、発電機回転数指令値ωg
*、回転数検出値ωg、及び、バッテリ保護フラグFLGに基づいて、回転数制御モードのための最終的なトルク指令値である最終トルク指令値Tω*を演算する。最終トルク指令値Tω*は、発電機18の回転数を維持しつつ、目標発電電力の発電を実現するために、発電機18が生ずべきトルクについての目標値(指令値)である。最終トルク指令値Tω*は、電流指令値演算部32に入力される。回転数制御部31の構成については、詳細を後述する。
電流指令値演算部32は、最終トルク指令値Tω*、回転数検出値ωg、バッテリ電圧Vdcを用いて、発電機18のd軸電流指令値Id
*及びq軸電流指令値Iq
*を演算する。d軸電流指令値Id
*は、最終トルク指令値Tω*に応じたトルクを実現するために、発電機18のd軸電流Idを指令する指令値である。同様に、q軸電流指令値Iq
*は、最終トルク指令値Tω*に応じたトルクを実現するために、発電機18のq軸電流Iqを指令する指令値である。d軸電流指令値Id
*及びq軸電流指令値Iq
*は電流制御部33に入力される。
電流制御部33は、発電機18をいわゆる電流制御によって制御する。具体的には、電流制御部33は、d軸電流指令値Id
*、q軸電流指令値Iq
*、d軸電流Id、q軸電流Iq、及び、回転数検出値ωgを用いて、発電機18のd軸電圧指令値Vd
*及びq軸電圧指令値Vq
*を演算する。d軸電圧指令値Vd
*は、発電機18のd軸電圧Vdを指令する指令値である。同様に、q軸電圧指令値Vq
*は、発電機18のq軸電圧Vqを指令する指令値である。d軸電圧指令値Vd
*は、減算部38によってd軸電圧に対する非干渉化電圧が減算された後、電圧変換器36に入力される。d軸電圧に対する非干渉化電圧が減算されたd軸電圧指令値Vd
*は、発電機18に対する最終的なd軸電圧指令値(以下、d軸最終電圧指令値V′d
*という)である。q軸電圧指令値Vq
*は、減算部39によってq軸電圧に対する非干渉化電圧が減算された後、電圧変換器36に入力される。q軸電圧に対する非干渉化電圧が減算されたq軸電圧指令値Vq
*は、発電機18に対する最終的なq軸電圧指令値(以下、q軸最終電圧指令値V′q
*という)である。以下では、d軸最終電圧指令値V′d
*及びq軸最終電圧指令値V′q
*をdq軸最終電圧指令値V′d
*,V′q
*と総称する場合がある。
非干渉化制御部34は、d軸電流Id及びq軸電流Iqを用いて、非干渉化電圧制御電圧を演算する。非干渉化とは、d軸とq軸間の干渉による電圧降下を低減することをいう。非干渉化電圧とは、d軸電圧及びq軸電圧を非干渉化するための調整値であり、d軸及びq軸についてそれぞれ演算される。これらの非干渉化電圧は、前述の通り、減算部38,39においてそれぞれd軸電圧指令値Vd
*及びq軸電圧指令値Vq
*から減算される。
電流変換器35は、三相電流Iu,Iv,Iwをdq軸電流Id,Iqに変換する。三相電流Iu,Iv,Iwは、発電機インバータ20と発電機18との間に設けられた電流センサ40によって検出される。本実施形態では、U相電流IuとV相電流Ivが検出され、電流変換器35はW相電流Iwを演算によって求める。dq軸電流Id,Iqは、前述の通り、電流指令値演算部32及び非干渉化制御部34に入力される。
電圧変換器36は、dq軸最終電圧指令値V′d
*,V′q
*から、UVW各相の電圧指令値(三相電圧指令値)Vu
*,Vv
*,Vw
*を演算する。これらの三相電圧指令値Vu
*,Vv
*,Vw
*は、発電機インバータ20に入力される。そして、発電機インバータ20はこれらに応じて、発電機18の各相に、それぞれU相電圧Vu、V相電圧Vv、及び、W相電圧Vwを印加する。その結果、発電機18は、最終トルク指令値Tω*に応じた回転数及びトルクで駆動される。
<回転数制御部の構成>
図3は、回転数制御部31の構成を示すブロック図である。図3に示すように、回転数制御部31は、モデルマッチング補償部41、外乱オブザーバ42、及び、トルク指令値演算部43を備える。
モデルマッチング補償部41は、発電機18の回転数(回転数検出値ωg)を発電機回転数指令値ωg
*に追従させる補償処理(以下、単にモデルマッチングという)を行う。モデルマッチング補償部41は、第1モデルマッチングゲイン乗算部51、モデルマッチングフィルタ52、減算部53、及び、第2モデルマッチングゲイン乗算部54を備える。
第1モデルマッチングゲイン乗算部51は、発電機回転数指令値ωg
*に、第1モデルマッチングゲインgcを乗算する。第1モデルマッチングゲインgcは、モデル化した発電システム12の合計イナーシャJ、発電機18、エンジン17、及び、ギア等の合計イナーシャの設計値J′、粘性摩擦係数の設計値C′、目標応答の時定数Tmを用いて、下記の式(1)で表される。なお、合計イナーシャJ及び合計イナーシャの設計値J′は発電機軸に換算した値である。また、合計イナーシャの設計値J′及び粘性摩擦係数の設計値C′は、実際の制御対象の特性と等しくなるように設定されている。時定数Tmは、原則として、制御安定性が損なわれない限度においてモデルマッチング補償部41が可能な限り機敏に応答するように、定められる。以下においては、このようにモデルマッチング補償部41が可能な限り機敏に応答するように定めた時定数Tmを、モデルマッチング補償部41の基準時定数という。
モデルマッチングフィルタ52は、モデルマッチング補償部41にフィードバックされる回転数検出値ωgに対して施されるフィルタである。モデルマッチングフィルタ52は、例えば、ローパスフィルタであり、下記の式(2)に示す伝達特性Hmm(s)によって表される。「s」はラプラス演算子である。
減算部53は、第1モデルマッチングゲインgcが乗じられた発電機回転数指令値ωg
*(すなわちgc・ωg
*)から、モデルマッチングフィルタ52で処理された回転数検出値ωg(すなわちHmm(s)・ωg)を減算する。減算部53による演算結果は、第2モデルマッチングゲイン乗算部54に入力される。
第2モデルマッチングゲイン乗算部54は、減算部53の出力に対して、第2モデルマッチングゲインcpを乗算する。第2モデルマッチングゲインcpは、下記の式(3)で表される。
モデルマッチング補償部41は、第2モデルマッチングゲイン乗算部54の出力を、第1トルク目標値Tω1
*として、トルク指令値演算部43に出力する。第1トルク目標値Tω1
*は、上記のとおり、モデルマッチングによって決定される発電機トルクの目標値である。
外乱オブザーバ42は、外乱を抑制するためにフィードバックするトルク目標値(以下、第2トルク目標値Tω2
*)を、最終トルク指令値Tω*と、回転数検出値ωgと、外乱オブザーバフィルタと、を用いて演算する。最終トルク指令値Tω*は、第1トルク目標値Tω1
*に第2トルク目標値Tω2
*をフィードバックした最終的な発電機トルクの指令値である。本実施形態においては、外乱オブザーバ42は、第1外乱オブザーバフィルタ56、第2外乱オブザーバフィルタ57、及び、減算部58を備える。
第1外乱オブザーバフィルタ56は、最終トルク指令値Tω*に基づいて、第2トルク目標値Tω2*を演算するための第1項(第1要素)Tω2a
*を演算するフィルタである。第1外乱オブザーバフィルタ56は、例えば、バンドパスフィルタH(s)によって構成される。第1外乱オブザーバフィルタ56を構成するバンドパスフィルタH(s)は、時定数Thを用いて、下記の式(4)で表される。時定数Thは、原則として、制御安定性が損なわれない限度において外乱オブザーバ42が外乱に対して可能な限り機敏に応答するように、定められる。以下では、このように外乱オブザーバ42が外乱に対して可能な限り機敏に応答するように定めた時定数Thを、外乱オブザーバ42の基準時定数という。
第2外乱オブザーバフィルタ57は、回転数検出値ωgに基づいて、第2トルク目標値Tω2
*を演算するための第2項(第2要素)Tω2b
*を演算するフィルタである。第2外乱オブザーバフィルタ57は、例えば、バンドパスフィルタH(s)と、伝達特性Gp′(s)の比H(s)/Gp′(s)によって表される。伝達特性Gp′(s)は、トルク入力から回転数(回転数検出値ωg)までの伝達特性のモデルであり、下記の式(5)によって表される。
減算部58は、第1項Tω2a
*から第2項Tω2b
*を減算することにより、第2トルク目標値Tω2
*を演算する。減算部58の演算結果である第2トルク目標値Tω2
*は、トルク指令値演算部43に入力される。
トルク指令値演算部43は、モデルマッチング補償部41から取得する第1トルク目標値Tω1
*に、外乱オブザーバ42から取得する第2トルク目標値Tω2
*をフィードバックすることにより、最終トルク指令値Tω*を演算する。本実施形態では、トルク指令値演算部43は、加算器であり、第1トルク目標値Tω1
*に第2トルク目標値Tω2
*を加算することにより、最終トルク指令値Tω*を演算する。発電機18は、この最終トルク指令値Tω*にしたがって駆動される。
なお、最終トルク指令値Tω*には、エンジン17の圧縮反力、燃焼トルク脈動、及び、異常燃焼等の外乱によるトルク(外乱トルクTd)が重畳される場合がある。また、発電機18の回転数検出値ωgには、エンジン17で生じる外乱等に起因して、外乱回転数ωdが重畳される場合がある。この他、図4においては、制御対象である発電システム12を伝達関数Gp(s)で表している。伝達関数Gp(s)は、発電システム12の合計イナーシャJ、及び、粘性摩擦係数Cを用いて、下記の式(6)で表される。
回転数制御部31の基本的構成は上記のとおりである。その上で、本実施形態では、回転数制御部31は、バッテリ10の保護が必要であると判断されたときに、バッテリ10の保護が必要でないときと比較して、回転数制御の応答性を低減させる。
このため、回転数制御部31を構成する各部のうち、モデルマッチング補償部41及び/または外乱オブザーバ42は、バッテリ保護フラグFLGが入力されるように構成される。そして、回転数制御部31は、バッテリ保護フラグFLGに応じて、モデルマッチング補償部41の特性、及び/または外乱オブザーバ42の特性を調整することにより、上記回転数制御の応答性を低減させる。回転数制御部31は、バッテリ保護フラグFLGによってバッテリ10の保護が必要であると判断されるときに、すなわち、バッテリ10への入力電圧及び/またはバッテリ10の出力電圧が制限されているときに、回転数制御の応答性を低減する。
以下では、一例として、回転数制御部31は、モデルマッチング補償部41の応答性が低減するようにモデルマッチング補償部41の特性を調整し、かつ、外乱オブザーバ42の応答性が低減するように外乱オブザーバ42の特性を調整するものとする。すなわち、回転数制御部31は、モデルマッチング補償部41及び外乱オブザーバ42の応答性を両方とも低下させることにより、回転数制御の応答性を低減する。
モデルマッチング補償部41の特性は次のように調整される。すなわち、バッテリ10の保護が必要であるときに、回転数制御部31は、モデルマッチング補償部41の時定数を、バッテリ10の保護が必要でないときの基準時定数(Tm)よりも増加させる。これにより、例えば、モデルマッチングフィルタ52の時定数が増加する。したがって、エンジン17の外乱等によって回転数検出値ωgに急峻な変化が生じても、このような急峻な変化はモデルマッチングフィルタ52で平滑化される。このため、エンジン17の外乱等に対して、モデルマッチングの応答性は低減される。
モデルマッチング補償部41の時定数を低減する程度、すなわち低減後の時定数の値は、例えば、具体的な発電システム12の構成に応じて適合により予め定められる。なお、回転数制御部31は、モデルマッチングに関して、低減後の時定数の値を、バッテリ10への入力電圧及び/またはバッテリ10からの出力電圧に対する制限の程度に応じて、調整することができる。例えば、回転数制御部31は、バッテリ10の入力可能電圧Plim及び/または出力可能電圧に応じて、低減後の時定数を変化させる場合がある。
また、外乱オブザーバ42の特性は次のように調整される。すなわち、バッテリ10の保護が必要であるときに、回転数制御部31は、外乱オブザーバ42の時定数を、バッテリ10の保護が必要でないときの基準時定数(Th)よりも増加させる。これにより、バンドパスフィルタH(s)で構成される第1外乱オブザーバフィルタ56の時定数が増加する。また、バンドパスフィルタH(s)を含む第2外乱オブザーバフィルタ57においても、バンドパスフィルタH(s)部分の時定数が増加する。したがって、エンジン17の外乱等によって回転数検出値ωgに急峻な変化が生じても、このような急峻な変化は外乱オブザーバ42内では平滑化される。このため、エンジン17の外乱等に対して、外乱オブザーバ42の応答性は低減される。
外乱オブザーバ42の時定数を低減する程度、すなわち低減後の時定数の値は、具体的な発電システム12の構成に応じて適合により予め定められる。なお、回転数制御部31は、外乱オブザーバ42に関して、低減後の時定数の値を、バッテリ10への入力電圧及び/またはバッテリ10からの出力電圧に対する制限の程度に応じて、調整することができる。例えば、回転数制御部31は、バッテリ10の入力可能電圧Plim及び/または出力可能電圧に応じて、低減後の時定数を変化させる場合がある。
<作用>
以下、上記のように構成される車両制御装置の作用について説明する。
図4は、比較例の制御による(A)エンジントルクTE、(B)回転数検出値ωg、及び、(C)バッテリ10への入力電力Pを示すグラフである。この比較例は、バッテリ10の入力電圧及び/または出力電圧に対する制限を実施しているか否かに関わらず、モデルマッチング補償部41の時定数を基準時定数(Tm)とし、かつ、外乱オブザーバ42の時定数を基準時定数(Th)に設定している例である。そして、図4は、バッテリ10の保護(入力電圧及び/または出力電圧の制限)が実施されている状況下で、エンジン17の外乱が入力されたときのエンジントルクTE、回転数検出値ωg、及び入力電力Pを示している。図4の各グラフの横軸は時間(例えば秒)である。
バッテリ10の保護が実施されている状況下でエンジン17の外乱が生じたときに、モデルマッチング補償部41及び外乱オブザーバ42の特性が何ら調整されない場合、図4(C)に示すとおり、発電システム12からバッテリ10への入力電力Pは大きな振動が生じる。このため、図4(C)において破線で示すように、発電システム12からバッテリ10への入力電力Pがバッテリ10の入力可能電圧Plimを超える場合がある。その結果、トルク制御がされているエンジン17が過回転に至ってしまうことがある。
図5は、上記第1実施形態の制御による(A)エンジントルクTE、回転数検出値ωg、及び、バッテリ10への入力電力Pを示すグラフである。すなわち、図5は、バッテリ10の保護が実施されている状況下でエンジン17の外乱が入力され、かつ、モデルマッチング補償部41の時定数及び外乱オブザーバ42の時定数が低減されている状態におけるエンジントルクTE、回転数検出値ωg、及び入力電力Pを示している。図5の各グラフの横軸は時間(例えば秒)である。
バッテリ10の保護が実施されている状況下でエンジン17の外乱が生じたときに、モデルマッチング補償部41及び外乱オブザーバ42の応答性が低減されている場合、図5(C)に示すとおり、発電システム12からバッテリ10への入力電力Pの振動が低減される。このため、発電システム12からバッテリ10への入力電力Pの振動は、バッテリ10の入力可能電圧Plimを超えない範囲に抑制される。このため、エンジン17がトルク制御されていても、エンジン17が過回転に至ってしまうことが防止される。
なお、上記第1実施形態においては、バッテリ10の保護が必要であると判断されたときに、回転数制御部31は、モデルマッチング補償部41の応答性及び外乱オブザーバ42の応答性の両方を低減することにより、回転数制御の応答性を低減しているが、これに限らない。回転数制御部31は、モデルマッチング補償部41の応答性、または、外乱オブザーバ42の応答性、のうちいずれか一方を低減することにより、回転数制御の応答性を低減してもよい。
以上のように、本実施形態に係る車両制御方法は、動力を発生する動力源であるエンジン17と、その動力によって駆動される発電機18と、発電機18が発電した電力によって充電されるバッテリ10と、を有する電動車両100を制御する車両制御方法である。この車両制御方法では、発電機18の回転状態を表す回転数検出値ωgをフィードバックする回転数制御により、発電機18の回転数が制御される。また、バッテリコントローラ23等によって、バッテリ10の状態、すなわち、SOC等に基づいて、バッテリ10を保護する必要性が判断される。そして、バッテリ10の保護が必要であると判断されたときには、バッテリ10の保護が必要でないときと比較して、回転数制御の応答性が低減される。
このように、エンジン17によって駆動される発電機18が発電した電力によって充電されるバッテリ10を有する電動車両100に関して、バッテリ10の保護が必要になったときに回転制御の応答性が低減されると、発電機18からバッテリ10に入力される電力変動が抑制される。これにより、バッテリ10に対する入力電圧が、一時的であっても、入力可能電圧Plimを超えないように抑制される。その結果、発電システム12を構成するエンジン17がいわゆるトルク制御で制御されているとしても、エンジン17が過回転に至らない範囲で継続的に制御され得る。したがって、バッテリ10が低温の状態にある場合等、バッテリ10の保護が必要なシーンにおいても、発電システム12によって安定的に電力供給が可能となる。
なお、本実施形態に係る車両制御方法では、バッテリ10の保護が必要でないとき、あるいは、バッテリ10の保護が必要でなくなったときには、回転制御の応答性は定常時の高い応答性となるように設定される。このため、バッテリ10の保護が不要なシーンでは、回転数制御はエンジン17の外乱等に対して機敏に応答する。このため、バッテリ10の保護が不要なシーンでは、エンジン17の外乱等による発電機18の回転数変動が的確に抑制される。
本実施形態に係る車両制御方法では、特に、発電機18の回転数制御は、発電機18の回転数検出値ωgを、モデルマッチングフィルタ52を介してフィードバックすることにより、発電機18の回転数(すなわち実回転数である回転数検出値ωg)を発電機回転数指令値ωg
*に追従させるモデルマッチングと、外乱を抑制するためにフィードバックする第2トルク目標値Tω2
*を、第1外乱オブザーバフィルタ56及び第2外乱オブザーバフィルタ57を用いて演算する外乱オブザーバ42と、によって行われる。そして、バッテリ10の保護が必要であると判断されたときには、モデルマッチングの応答性及び/または外乱オブザーバ42の応答性が低減される。
このように、モデルマッチング及び/または外乱オブザーバ42の応答性を低減すると、バッテリ10の保護が必要なシーンにおいてエンジン17による外乱等が発電機18の回転状態(回転数検出値ωg)に急峻な変動を生じさせたとしても、このような急峻な変化はモデルマッチング補償部41及び/または外乱オブザーバ42で平滑化される。このため、バッテリ10の保護が必要なシーンでは、エンジン17による外乱等に対して発電機18の最終トルク指令値Tω*は感応し難くなる。その結果、発電機18からバッテリ10に入力される電力変動が抑制されやすくなる。
特に、本実施形態に係る車両制御方法では、バッテリ10の保護が必要であると判断されたときに、モデルマッチングフィルタ52の時定数を、定常時に使用される基準時定数(Tm)よりも増加させることにより、モデルマッチングの応答性が低減される。これにより、バッテリ10の保護が必要なシーンでは、モデルマッチングがエンジン17による外乱等に対して感応し難くなる。その結果、発電機18からバッテリ10に入力される電力変動が抑制されやすくなる。
また、本実施形態に係る車両制御方法では、バッテリ10の保護が必要であると判断されたときに、第1外乱オブザーバフィルタ56及び第2外乱オブザーバフィルタ57の時定数を、定常時に使用される基準時定数(Th)よりも増加させる。すなわち、バッテリ10の保護が必要であると判断されたときには、第1外乱オブザーバフィルタ56及び第2外乱オブザーバフィルタ57を構成するバンドパスフィルタH(s)の時定数が調整される。これにより、バッテリ10の保護が必要なシーンでは、外乱オブザーバ42がエンジン17による外乱等に対して感応し難くなる。その結果、その結果、発電機18からバッテリ10に入力される電力変動が抑制されやすくなる。
[第2実施形態]
上記第1実施形態では、バッテリ10の保護が必要であると判断されたときに、モデルマッチング及び/または外乱オブザーバ42の時定数を調整することにより、発電機18の回転数制御の応答性を低減する。このとき、モデルマッチングに関しては、時定数の低減によって、第1モデルマッチングゲインgc及び第2モデルマッチングゲインpcも同時に低減される。すなわち、モデルマッチングに関しては、時定数の低減により、モデルマッチングのゲインも低減される。したがって、モデルマッチングでは、第1モデルマッチングゲインgc及び第2モデルマッチングゲインpcの低減も、バッテリ10への入力電力Pの変動抑制に寄与している。
一方、モデルマッチング及び外乱オブザーバ42はフィードバック制御系であるから、より明示的にフィードバックゲインが設定される場合がある。この場合、モデルマッチング及び/または外乱オブザーバ42のフィードバックゲインを直接的に低減することによっても、バッテリ10への入力電力Pの変動を抑制することができる。本第2実施形態においては、モデルマッチング及び外乱オブザーバ42に、より明示的なフィードバックゲインが設定されている場合に、バッテリ10への入力電力Pの変動を抑制する構成等について説明する。
図6は、第2実施形態の回転数制御部の構成を示すブロック図である。図6は、モデルマッチング補償部41への回転数検出値ωgのフィードバック経路、及び、外乱オブザーバ42からトルク指令値演算部43への第2トルク目標値Tω2
*のフィードバック経路に、フィードバックゲイン設定部60を有する。なお、第1実施形態と共通の構成については同一の符号を付し、その説明を省略する。
フィードバックゲイン設定部60は、モデルマッチング補償部41及び外乱オブザーバ42にフィードバックゲインを設定する。具体的には、フィードバックゲイン設定部60は、第1フィードバックゲイン設定部61と、第2フィードバックゲイン設定部62と、を備える。
第1フィードバックゲイン設定部61は、モデルマッチング補償部41への回転数検出値ωgの入力経路に設けられた乗算器である。第1フィードバックゲイン設定部61は、回転数検出値ωgに第1フィードバックゲインfb1を乗算し、その結果をモデルマッチングフィルタ52に入力する。
第1フィードバックゲインfb1は、バッテリ10の保護が必要でない定常時の回転数制御の応答性を確保するために、例えば適合により予め設定される。定常時の第1フィードバックゲインfb1は、典型的には、1以上の値に設定される。本実施形態では、簡単のため、定常時の第1フィードバックゲインfb1は「1」に予め設定されているものとする。また、以下では、この定常時の第1フィードバックゲインfb1を第1基準フィードバックゲインという。
第2フィードバックゲイン設定部62は、外乱オブザーバ42からトルク指令値演算部43への第2トルク目標値Tω2
*の入力経路に設けられた乗算器である。第2フィードバックゲイン設定部62は、第2トルク目標値Tω2
*に第2フィードバックゲインfb2を乗算し、その結果をトルク指令値演算部43に入力する。
第2フィードバックゲインfb2は、バッテリ10の保護が必要でない定常時の回転数制御の応答性を確保するために、例えば適合により予め定められる。定常時の第2フィードバックゲインfb2は、典型的には、1以上の値に設定される。本実施形態では、簡単のため、定常時の第2フィードバックゲインfb2は「1」に予め設定されているものとする。また、以下では、この定常時の第2フィードバックゲインfb2を第2基準フィードバックゲインという。
第2実施形態の回転数制御部31の構成は上記のとおりである。その上で、本実施形態では、回転数制御部31は、回転数制御部31は、バッテリ10の保護が必要であると判断されたときに、バッテリ10の保護が必要でないときと比較して、回転数制御のゲインを調整することにより、回転数制御の応答性を低減させる。
このため、フィードバックゲイン設定部60は、バッテリ保護フラグFLGが入力されるように構成される。そして、回転数制御部31は、バッテリ保護フラグFLGに応じて、モデルマッチングのゲインである第1フィードバックゲインfb1、及び/または、外乱オブザーバ42のゲインである第2フィードバックゲインfb2を調整することにより、回転数制御の応答性を低減させる。ここでは、一例として、回転数制御部31は、第1フィードバックゲインfb1及び第2フィードバックゲインfb2の両方を調整するものとする。
モデルマッチングのゲインである第1フィードバックゲインfb1は、次のように調整される。すなわち、バッテリ10の保護が必要であるときに、回転数制御部31は、第1フィードバックゲインfb1を、定常時の第1フィードバックゲインfb1である第1基準フィードバックゲインよりも低減する。本実施形態では、第1基準フィードバックゲインは「1」なので、バッテリ10の保護が必要であるときに、回転数制御部31は、第1フィードバックゲインfb1を、0≦fb1<1の範囲内、より好ましくは0<fb1<1の範囲内の値に設定する。これにより、エンジン17の外乱等によって回転数検出値ωgに急峻な変化が生じても、このような急峻な変化は抑制された状態でモデルマッチングフィルタ52に入力される。このため、エンジン17の外乱等に対して、モデルマッチングの応答性は低減される。
第1フィードバックゲインfb1を低減する程度、すなわち低減後の第1フィードバックゲインfb1の値は、例えば、具体的な発電システム12の構成に応じて適合により予め定められる。なお、回転数制御部31は、低減後の第1フィードバックゲインfb1の値を、バッテリ10への入力電圧及び/またはバッテリ10からの出力電圧に対する制限の程度に応じて、調整することができる。例えば、回転数制御部31は、バッテリ10の入力可能電圧Plim及び/または出力可能電圧に応じて、低減後の第1フィードバックゲインfb1の値を変化させる場合がある。
外乱オブザーバ42のゲインである第2フィードバックゲインfb2は、次のように調整される。すなわち、バッテリ10の保護が必要であるときに、回転数制御部31は、第2フィードバックゲインfb2を、定常時の第2フィードバックゲインfb2である第2基準フィードバックゲインよりも低減する。本実施形態では、第2基準フィードバックゲインは「1」なので、バッテリ10の保護が必要であるときに、回転数制御部31は、第2フィードバックゲインfb2を、0≦fb2<1の範囲内、より好ましくは0<fb2<1の範囲内の値に設定する。これにより、エンジン17の外乱等によって回転数検出値ωgに急峻な変化が生じても、第2トルク目標値Tω2
*がフィードバックされる段階では第2フィードバックゲインfb2により、このような急峻な変化は抑制される。このため、エンジン17の外乱等に対して、外乱オブザーバ42の応答性は低減される。
第2フィードバックゲインfb2を低減する程度、すなわち低減後の第2フィードバックゲインfb2の値は、例えば、具体的な発電システム12の構成に応じて適合により予め定められる。なお、回転数制御部31は、低減後の第2フィードバックゲインfb2の値を、バッテリ10への入力電圧及び/またはバッテリ10からの出力電圧に対する制限の程度に応じて、調整することができる。例えば、回転数制御部31は、バッテリ10の入力可能電圧Plim及び/または出力可能電圧に応じて、低減後の第2フィードバックゲインfb2の値を変化させる場合がある。
以上のように、第2実施形態に係る車両制御方法では、バッテリ10の保護が必要であると判断されたときに、モデルマッチングのゲインである第1フィードバックゲインfb1が低減される。これにより、エンジン17の外乱等によって回転数検出値ωgに急峻な変化が生じても、モデルマッチングは、このような急峻な変化は抑制された状態で行われる。このため、バッテリ10の保護が必要なシーンでは、エンジン17の外乱等が生じても、バッテリ10への入力電力Pの変動が抑制される。
また、第2実施形態に係る車両制御方法では、バッテリ10の保護が必要であると判断されたときに、外乱オブザーバ42のゲインである第2フィードバックゲインfb2が低減される。これにより、エンジン17の外乱等によって回転数検出値ωgに急峻な変化が生じても、第2トルク目標値Tω2
*がフィードバックされる段階ではこのような急峻な変化は抑制される。このため、バッテリ10の保護が必要なシーンでは、エンジン17の外乱等が生じても、バッテリ10への入力電力Pの変動が抑制される。
なお、第1実施形態の時定数の制御、及び、第2実施形態のゲインの制御は、その一部または全部を組み合わせて実施することができる。
上記第1実施形態及び第2実施形態では、バッテリ10の保護が必要となったときに、及び、バッテリ10の保護が必要でなくなったときに、外乱オブザーバ42を初期化することが好ましい。外乱オブザーバ42はバンドパスフィルタH(s)を使用しており、バンドパスフィルタは実際的には積分器(ローパスフィルタ)を含む構成である。このため、バッテリ10の保護が必要となったときに、及び、バッテリの保護が必要でなくなったときに、この積分器を初期化することにより、外乱オブザーバ42の時定数やゲインの切り替えによって生じるトルク変動が抑制される。なお、外乱オブザーバ42の初期化は、回転数制御部31が行う。
同様に、上記第1実施形態及び第2実施形態では、バッテリ10の保護が必要となったときに、及び、バッテリ10の保護が必要でなくなったときに、モデルマッチングフィルタ52を初期化することが好ましい。モデルマッチングフィルタ52は、伝達特性Hmm(s)で表されるローパスフィルタであるから、実質的に積分器でもある。このため、バッテリ10の保護が必要となったときに、及び、バッテリの保護が必要でなくなったときに、積分器であるモデルマッチングフィルタ52を初期化することにより、モデルマッチングの時定数やゲインの切り替えによって生じるトルク変動が抑制される。なお、モデルマッチングフィルタ52の初期化は、回転数制御部31が行う。
この他、上記第1実施形態及び第2実施形態では、バッテリ10の温度、電圧、電流、及び/または、充電率に基づいて、バッテリ10の入力可能電圧Plim及び/またはバッテリ10の出力可能電圧を算出し、この入力可能電圧Plim及び/または出力可能電圧に基づいて、バッテリ10の保護が必要か否か、が判断されることが好ましい。入力可能電圧Plim及び/または出力可能電圧は、バッテリ10の保護に関する直接的かつ明確な基準となる。したがって、上記のように、入力可能電圧Plim及び/または出力可能電圧によってバッテリ10の保護の必要性が判断されれば、バッテリ10を特に確実に保護しつつ、かつ、発電システム12で安定的な電力供給が可能となる。
特に、上記第1実施形態及び第2実施形態では、バッテリ10に対する入力電力を制限する必要があるとき、及び/または、バッテリ10からの出力電力を制限する必要があるときに、バッテリ10を保護する必要があると判断されることが好ましい。
以上、本発明の実施形態について説明したが、上記実施形態及び各変形例で説明した構成は本発明の適用例の一部を示したに過ぎず、本発明の技術的範囲を限定する趣旨ではない。
例えば、上記各実施形態では、上記各実施形態では、エンジン17を用いる発電システム12を制御対象としているが、エンジン17以外の動力源を用いて発電をする装置またはシステムを制御対象としてもよい。また、上記各実施形態では電動車両100を例示しているが、本発明は、電動車両100以外の車両、その他装置またはシステムにおいて好適に実施可能である。さらに、本発明は、動力源で駆動する発電機18によってバッテリ10を充電する装置またはシステムであれば、上記各実施形態で例示した発電システム12以外の装置またはシステムを制御対象とすることができる。