以下、例示的な実施形態について、図面を参照しながら詳細に説明する。
(実施形態1)
図1には、本実施形態1にかかる制御装置で制御されるハイブリッド車両1(以下単に、車両1という)を概略的に示す。車両1は、複数(本実施形態1では4つ)の気筒11を有する駆動源としてのエンジン10と、エンジン10に連結されたトランスミッション20と、エンジン10のクランクシャフト12(出力軸)と連結されていて、該エンジン10の作動をアシストするとともに、該エンジン10により駆動されて発電するモータジェネレータ30と、駆動輪50の回転を制動するブレーキ装置60とを有する。
エンジン10は、例えば、ガソリンエンジンである。エンジン10の各気筒11には、気筒11内に燃料を供給するインジェクタ13(図2参照)と、燃料と気筒11内に供給された吸気との混合気を着火させるための点火プラグ14(図2参照)とがそれぞれ設けられている。また、エンジン10は、気筒11毎に、吸気バルブ(図示省略)と、排気バルブ(図示省略)と、吸気バルブ及び排気バルブの開閉動作を停止させる弁停止機構15とが設けられている。尚、エンジン10は、ディーゼルエンジンであってもよい。エンジン10がディーゼルエンジンである場合には、点火プラグ14は設けなくてもよい。
トランスミッション20は、例えば、自動変速機である。トランスミッション20は、エンジン10の気筒列方向における一側に配置されている。トランスミッション20のクランクシャフト12と連結されたインプットシャフト(図示省略)と、該インプットシャフトと複数の減速ギヤ(図示省略)を介して連結されたアウトプットシャフト(図示省略)とを備えている。前記アウトプットシャフトは、駆動輪50の車軸51と連結されている。クランクシャフト12の回転は、トランスミッション20により変速されて、駆動輪50に伝達される。尚、トランスミッション20は、手動変速機であってもよい。
モータジェネレータ30は、伝達機構40を介してクランクシャフト12と連結されている。伝達機構40は、クランクシャフト12におけるトランスミッション20とは反対側の端部に設けられた第1プーリ41と、モータジェネレータ30の回転軸31の先端に設けられた第2プーリ42と、第1プーリ41及び第2プーリ42との間に巻き掛けられたベルト43とを有する。クランクシャフト12と回転軸31とは、伝達機構40を介して連結されていることにより、常時共に回転する。尚、第1プーリ41の径と第2プーリ42の径とは、同じでもよく、異なっていてもよい。
モータジェネレータ30は、エンジン10の作動、すなわち、クランクシャフト12の回転をアシストするアシストモータとしての機能と、クランクシャフト12の回転を利用して発電する発電機としての機能とを有する。モータジェネレータ30におけるアシストモータ機能と発電機機能との切り換えは、モータジェネレータ30に設けられた切換機構により、回転軸41の回転方向を切り換えることで実現される。
モータジェネレータ30がアシストモータとして作動するときには、モータジェネレータ30の動力は、伝達機構40を介してエンジン10のクランクシャフト12に伝達される。これにより、モータジェネレータ30により、停止中のエンジン10のクランクシャフト12を回転駆動したり(つまり、スタータモータとして機能したり)、駆動中のエンジン10のクランクシャフト12にモータジェネレータ30の動力を伝達することで、エンジン10から駆動輪50に伝達されるトルクを増大させる(つまり、エンジン10の作動をアシストする)ことができる。このように、モータジェネレータ30がアシストモータとして作動すれば、エンジン10に要求されるトルクの一部をモータジェネレータ30の動力により補うことができ、エンジン回転数を一定にしたまま、エンジン10から出力すべきトルク(エンジントルク)を小さくすることができる。
一方で、モータジェネレータ30が発電機として作動するときには、伝達機構40を介してクランクシャフト12の回転が回転軸31に伝達されることで発電される。このとき、エンジン10は、車両1の走行に必要なトルクに加えて、発電のためのトルクを生成する必要がある。つまり、モータジェネレータ30が発電機として作動すれば、エンジン回転数を一定にしたまま、エンジントルクを大きくすることができる。
モータジェネレータ30は、バッテ70に電気的に接続されている。バッテリ70は、モータジェネレータ30がアシストモータとして作動するときには、作動に必要な電力をモータジェネレータ30に供給する一方、モータジェネレータ30が発電機として作動するときには、モータジェネレータ30により発電された電力を蓄積する。バッテリ70は、例えば、24Vや48Vのリチウムイオンバッテリを採用することができる。
バッテリ70は、図1に示すように、コンバータ71と電気的に接続されている。コンバータ71は降圧回路であって、バッテリ70から供給される電力を降圧する。コンバータ71により降圧された電力は、車両1に設けられた各種電装品72に供給される。
ブレーキ装置60は、ブレーキペダル61と、該ブレーキペダル61の操作量を検出するブレーキセンサSN6と、ブレーキセンサSN6が検知した操作量に応じて作動するブレーキアクチュエータ63と、ブレーキアクチュエータ63と接続されたブースタ64と、ブースタ64と接続されたマスタシリンダ65と、制動力を調整するためのABS(Anti-lock Brake System)アクチュエータ66と、実際に駆動輪50の回転を制動するブレーキパッド67とを有する。駆動輪50の車軸51には、ディスクロータ52が設けられている。ブレーキ装置60は、ブレーキセンサSN6が検知した変化量に応じてブレーキアクチュエータ63を作動させて、ブースタ64、マスタシリンダ65、及びABSアクチュエータ66を介してブレーキパッド66を作動させる。ブレーキ装置60は、ブレーキパッド67によりディスクロータ52を挟んで、ブレーキパッド67とディスクロータ52との間に生じる摩擦力により、駆動輪50の回転を制動する。
車両1は、スタータモータ73を有する。スタータモータ73は、モータジェネレータ30よりも小型のモータであって、モータジェネレータ30と比較して駆動に必要な電力が小さいモータで構成されている。スタータモータ73は、例えば、バッテリ70の残存容量(SOC)が少なく、モータジェネレータ30によるエンジン10の始動が困難であるときに、モータジェネレータ30に代わって、エンジン10を始動する。
図2に示すように、車両1は、ECU(Electric Control Unit)100によって制御
される。ECU100は、周知のマイクロコンピュータをベースとするコントローラーである。ECU100は、CPU101、メモリ102、入出力バス103等を備えている。CPU101は、コンピュータプログラム(OS等の基本制御プログラム、及び、OS上で起動されて特定機能を実現するアプリケーションプログラムを含む)を実行する中央演算処理装置である。メモリ102は、記憶部に相当するものであって、RAM及びROMにより構成されている。ROMには、種々のコンピュータプログラム(特にエンジン10を制御するための制御プログラム)や、該コンピュータプログラムの実行時に用いられる後述の燃費率マップや発電効率マップを含むデータ等が格納されている。RAMは、CPU101が一連の処理を行う際に使用される処理領域が設けられるメモリである。入出力バス103は、ECU100に対して電気信号の入出力をするものである。
ECU100には、エアフローセンサSN1、クランク角センサSN2、アクセル開度センサSN3、車速センサSN4、バッテリ残量センサSN5、ブレーキセンサSN6等の各種のセンサが電気的に接続されている。エアフローセンサSN1は、吸気通路に流入する新気の流量を検出する。クランク角センサSN2は、クランクシャフト12の回転角を検出する。アクセル開度センサSN3は、車両1のアクセルペダル機構に取り付けられていて、アクセルペダルの操作量に対応したアクセル開度を検出する。車速センサSN4は、車両1の車速を検出する。バッテリ残量センサSN5は、バッテリ70に出入りする電流及びバッテリ70の電圧に基づいて、バッテリ70のSOCを検出する。ブレーキセンサSN6は、前述したように、ブレーキペダル61の操作量を検出する。これらセンサSN1~SN6等は、検知信号をECU100に出力する。
ECU100は、クランク角センサSN2の検出結果からエンジン回転数を算出する。ECU100は、アクセル開度センサSN3の検出結果から要求トルクを算出ずる。
ECU100は、センサSN1~SN6等からの入力信号に基づいて、エンジン10の運転状態を判断するとともに、インジェクタ13、点火プラグ14、弁停止機構15、モータジェネレータ30、ブレーキアクチュエータ63、スタータモータ73等といった、エンジン10の各デバイスに対して制御信号を出力して、各デバイスを制御する。
本実施形態1では、ECU100は、エンジン10の運転状態に応じて、モータジェネレータ30の発電トルクを算出して、算出した発電トルクで発電が行われるようにモータジェネレータ30を作動させる発電制御を実行する。図3は、ECU100が前記発電制御を実行可能な領域(発電可能領域)を示すマップである。図3において、縦軸はエンジントルクであり、横軸はエンジン回転数である。
図3に示すように、ECU100は、エンジントルクが所定トルクTq以上でありかつエンジン回転数が所定回転数Ne以上の運転領域おいて、前記発電制御が実行可能であると判断する。言い換えると、要求トルクが所定トルクTq以上でない限りは、ECU100は前記発電制御を実行しない。この所定トルクTqは、エンジン10の安定燃焼のために最低限必要なエンジントルクであって、アイドル運転を安定的に維持するためのエンジントルクに相当する。また、所定回転数Neは、エンジントルクが前記所定トルクTqである場合には、最低限得られるエンジン回転数である。尚、発電可能領域は、後述する燃費率マップにおける「最大」の領域を含むように設定されている。
また、ECU100は、バッテリ70の残存容量(SOC)に基づいても前記発電制御を実行するか否かを判断する。より詳しくは、ECU100は、バッテリ残量センサSN5により検出されるバッテリ70の検出SOCが第1所定容量以上であるときには、前記発電制御を実行不要であると判断する。これは、バッテリ70をSOCが高い状態に維持すると、バッテリ70の寿命が短くなるおそれがあるためである。一方で、ECU100は、検出SOCが第1所定容量よりも小さい第2所定容量未満であるときには、前記発電制御を強制的に実行させる(以下、強制発電制御という)。前述したように、バッテリ70は、モータジェネレータ30のみならず、車両1に搭載された他の電装品にも電力を供給する。このため、バッテリ70には、優先度の高い電装品(例えば、ブレーキアクチュエータ63やスタータモータ73)を作動させるだけの電力が確保されている必要がある。このため、ECU100は、検出SOCが第2所定容量未満であるときには、前記発電制御の実行が必須であると判断して、前記強制発電制御を実行するようにする。ECU100は、検出SOCが第1所定容量未満でかつ第2所定容量以上であるときには、前記発電制御を実行可能であると判断し、検出SOCの値、後述する燃費率マップや発電効率マップ等に基づいて、前記発電制御を実行するか否かを判断する。尚、第2所定容量は、エンジン10の始動や車両1の制動に関するような優先度の高い電装品を作動させることができるだけの容量である。
ECU100は、前記発電制御を実行するときには、車両1の走行状態(特にアクセル開度)から車両1の要求トルクを算出した後、燃費率マップ(図4参照)及び発電効率マップ(図5参照)に基づいて、エンジン10の目標エンジントルク及びモータジェネレータ30の目標発電トルクをそれぞれ算出する。このECU100による目標エンジントルク及び目標発電トルクの算出について、図4及び図5を参照しながら説明する。
メモリ102には、図4に示すような燃費率マップが格納されている。図4に示すマップにおいて、縦軸はエンジントルクであり、横軸はエンジン回転数である。図4に示す等高線において、「中」、「大」及び「最大」で示す領域は、エンジン10の燃費率を表し、「中」、「大」及び「最大」の順に燃費率が高い。「中」よりも外側の領域は、「中」の領域よりも燃費率が低い領域である。
また、メモリ102には、図5に示すような発電効率マップが格納されている。図5に示すマップにおいて、縦軸はモータジェネレータ30の発電トルクであり、横軸はモータジェネレータ30のモータ回転数(回転軸31の回転数)である。図5に示す等高線において、「中」、「大」及び「最大」で示す領域は、モータジェネレータ30の発電効率を表し、「中」、「大」及び「最大」の順に発電効率が高い。「中」よりも外側の領域は、「中」の領域よりも発電効率が低い領域である。また、図5の発電効率マップにおいて「中」よりも外側の実線は、モータジェネレータ30の作動限界ラインLLであり、モータジェネレータ30は、作動限界ラインLLで区切られた領域よりも内側の範囲で作動される。
まず、モータジェネレータ30によるアシスト及び発電が無い場合のエンジン10の目標エンジントルクが、図4に示す黒丸であるとする。この目標エンジントルクは、車両1の要求トルクに相当する。図4に示すように、モータジェネレータ30によるアシスト及び発電が無い場合には、目標エンジントルクが非常に低く燃費率が悪い領域にある。前述したように、モータジェネレータ30によりエンジン10を発電する場合、エンジン10に要求されるエンジントルクは高くなる。このため、モータジェネレータ30により発電すれば、エンジン10の目標エンジントルクを、図4に白丸で示ように、「最大」の領域に入る大きさまで上昇させることができる。このとき、図4の黒丸で示すエンジントルクと白丸で示すエンジントルクとの差分がモータジェネレータ30に要求される発電トルクに相当することになる。
一方で、図5の発電効率マップでは、モータジェネレータ30の発電トルクは、図5の黒丸から白丸に移動する。図5に示すように、エンジン10の目標エンジントルクを図4の黒丸から白丸に移動させるだけの発電トルクをモータジェネレータ30に要求すると、モータジェネレータ30の発電効率は「最大」の領域から外れてしまう。
そこで、ECU100は、モータジェネレータ30の発電トルクを、図5に三角形で示す発電トルクに設定する。また、ECU100は、エンジン10の目標エンジントルクを、図4に三角形で示すエンジントルクに設定する。図4に示すように、燃費率は若干低くなる。しかし、エンジン10の燃費率とモータジェネレータ30の発電効率とのトータルのエネルギー効率では、最適な状態にすることができる。
前述のように目標エンジントルク及び目標発電トルクを算出する場合、ECU100は、先ず、モータジェネレータ30によるアシスト及び発電が無い場合のエンジン10の目標エンジントルクを算出してから、モータジェネレータ30の目標発電トルクを算出して、その後、設定した目標発電トルクに基づいて前記目標エンジントルクを修正するようにすることができる。また、ECU100は、要求トルクが算出された後、燃費率マップ及び発電効率マップに基づいて、目標エンジントルク及び目標発電トルクを同時に算出するようにしてもよい。
ECU100は、設定した目標エンジントルクが得られるように、エンジン10(特に、インジェクタ13や点火プラグ14)を制御するとともに、設定した目標発電トルクで発電するようにモータジェネレータ30を制御する。
尚、ECU100は、燃費率マップ及び発電効率マップのみならず、検出SOCの値に基づいて、目標発電トルクを設定してもよい。具体的には、検出SOCが第2所定容量に近いほど、発電トルクを大きくするようにしてもよい。
以上のことから、前記発電制御は、車両1の走行状態及び燃費率マップに基づいて、モータジェネレータ30の発電トルクを算出して、算出した発電トルクで発電するようにモータジェネレータ30の作動させる制御であり、ECU100は前記発電制御を実行するモータ制御部に相当する。特に、本実施形態1において、ECU100は、車両1の走行状態及び燃費率マップに加えて、発電効率マップに基づいて、モータジェネレータ30の発電トルクを算出する。
本実施形態1において、エンジン10は、エンジン10の運転状態に応じて、4つ気筒11の全てを作動させる全筒運転と、4つの気筒11のうちの一部の気筒11は休止させかつ残りの気筒11は作動させる減筒運転とを切り換え可能に構成されている。図6は、減筒制御マップを示す。図6の減筒制御マップは、エンジン10のエンジントルクとエンジン回転数とに基づいて設定された、全筒運転を行う領域と減筒運転を行う領域とを示すマップである。図6に示すマップおいて、縦軸はエンジントルクであり、横軸はエンジン回転数である。図6において、ハッチングされた領域は、減筒運転を実行する領域(以下、減筒運転領域という)であり、それ以外の領域は全筒運転をする領域(以下、全筒運転領域という)である。減筒運転領域は、図4の燃費率マップにおける燃費率「最大」を少なくとも部分的に含む領域である。尚、図6における縦軸のスケール及び横軸のスケールは、必ずしも、図4における縦軸のスケール及び横軸のスケールとは一致しない。
本実施形態1では、エンジン10運転状態が減筒運転領域にあるときには、エンジン10の一部の気筒11において、インジェクタ13からの燃料噴射の停止と混合気への点火のための点火プラグ14への通電の停止とを行うとともに、吸気バルブ(図示省略)及び排気バルブ(図示省略)の開閉動作を停止させることによって、前記減筒運転を実現する。前記吸気バルブ及び前記排気バルブの開閉停止は、弁停止機構15によって実現することができる。このような弁停止機構15は、公知のものを採用することができ、例えば、回転カムとバルブとの間に揺動可能に介装されたロッカアームの揺動中心部に設けられて該ロッカアームを支持する支持部材(ラッシュアジャスタ)に設けたり、ロッカアームに設けたりすることができる。尚、弁停止機構15は、油圧式でも電動式でもよい。
ここで、図6に示すように、本実施形態1では、発電可能領域は減筒運転領域と全筒運転領域とに跨がって設定されている。このため、モータジェネレータ30による発電により、エンジン10の目標エンジントルクが上昇する結果、エンジン10の運転領域が減筒運転領域から全筒運転領域に入ることがある。一般に、生成されるエンジントルクが同じである場合、減筒運転の方が全筒運転よりも燃費が良い。このため、発電効率やバッテリ70のSOCに応じて目標発電トルクが変化して、エンジンの目標エンジントルクが変化した結果、減筒運転から全筒運転への切り換えが生じると、燃費が悪くなって、却ってハイブリッド車両のエネルギー効率が悪化するおそれがある。
そこで、本実施形態1において、ECU100は、車両1の走行状態、燃費率マップ、及び発電効率マップに基づいて設定した発電トルク(以下、理論発電トルクという)で、モータジェネレータ30により発電する場合に、全筒運転と減筒運転との切り換えが生じると推定されるときには、全筒運転と減筒運転との切り換えが生じないように、モータジェネレータ30の発電トルクを制限する発電制限制御を実行する。より具体的には、ECU100は、前記発電制限制御として、全筒運転と減筒運転との切り換えが生じない範囲で、燃費率が最大限高くなる最大発電トルクを算出して、該最大発電トルクで、モータモータジェネレータ30による発電を実行する。以下、ECU100が実行する前記発電制限制御について、図6を参照しながら説明する。
まず、現在のエンジントルクが図6に示す黒四角であるとする。この初期状態から、車両1の消費電力が変化する等により前記理論発電トルクが変化して、該理論発電トルクに基づいて算出される目標エンジントルクが、図6の白抜き四角になるとする。このとき、ECU100は、目標発電トルクを前記理論発電トルクに設定して、該理論発電トルクでモータジェネレータ30による発電をすると、減筒運転から全筒運転への切り換えが生じると推定する。次に、ECU100は、目標エンジントルクが全筒運転領域に属しない範囲で、燃費率が最大限高くなる前記最大発電トルクを算出して、モータジェネレータ30の目標発電トルクを修正する。次いで、ECU100は、要求トルクと最大発電トルクとに基づいて目標エンジントルクを修正する。その後、ECU100は、修正した目標エンジントルク(図6の白抜き菱形「◇」参照)が得られるようにエンジン10を制御するとともに、修正した目標発電トルク(最大発電トルク)が得られるようにモータジェネレータ30を制御する。
前述のようにECU100が前記発電制限制御を実行することで、モータジェネレータ30により発電したとしても、全筒運転と減筒運転との切り換えが生じないようにすることができる。これにより、全筒運転と減筒運転との切り換えに伴うエネルギー効率の悪化が抑制される。この結果、車両1のエネルギー効率を向上させることができる。
尚、最大発電トルクは、目標エンジントルクが全筒運転領域に属しない範囲で、目標エンジントルクを最大限高くすることができる発電トルクと定義してもよい。
ここで、ECU100は、バッテリ70の検出SOCが第2所定容量未満であり、前記強制発電制御を実行する必要があるときには、モータジェネレータ30による発電により全筒運転と減筒運転との切り換えが生じるとしても、前記発電制限制御を実行することなく、モータジェネレータ30による発電を実行する。すなわち、バッテリ70の検出SOCが第2所定容量未満である状態とは、ブレーキ装置60による車両1の制動や、エンジン10停止後のスタータモータ73による再始動が実行できないような状態であって、車両1の走行自体が妨げられるおそれがある状態である。このため、全筒運転と減筒運転との切り換えによるエネルギー効率の悪化よりも、モータジェネレータ30による発電を優先させるようにする。これにより、バッテリ70のSOCを適切な容量に維持することができる。尚、ECU100は、前記強制発電制御を実行するときには、エンジントルクが最大(所謂全負荷状態)になる程度にまで目標発電トルクを設定してもよい。
次に、前記発電制限制御を実行する際のECU100の処理動作について、図7のフローチャートを参照しながら説明する。このフローチャートに基づく処理動作は、エンジン10が作動している間は常に実行される。尚、図7に示すフローチャートは、フロー開始時おいて、エンジン10の運転状態が減筒運転領域に属する場合のフローチャートである。また、エンジン10のエンジン回転数は、フロー開始時おいて、所定回転数Ne以上である。
まず、ステップS101において、ECU100は、各センサSN1~SN6からの情報を読み込む。
次のステップS102では、ECU100は、車両1の走行状態に基づいて要求トルクを算出する。
続くステップS103では、ECU100は、バッテリ残量センサSN5で検出される検出SOCが第2所定容量以上であるか否かを判定する。ECU100は、検出SOCが第2所定容量以上であるYESのときには、ステップS104に進む一方、検出SOCが第2所定容量未満であるNOのときには、前記強制発電制御を実行すべく前記ステップS110に進む。
前記ステップS104では、ECU100は、検出SOCが第1所定容量未満であるか否かを判定する。ECU100は、検出SOCが第1所定容量未満であるYESのときには、ステップS105に進む一方、検出SOCが第1所定容量以上であるNOのときには、前記ステップS111に進む。
前記ステップS105では、ECU100は、要求トルクが所定トルクTq以上であるか否かを判定する。ECU100は、要求トルクが所定トルクTq以上であるYESのときには、ステップS106に進む一方、要求トルクが所定トルクTq未満のNOのときには、ステップS111に進む。
前記ステップS106では、ECU100は、燃費率マップに基づいて、モータジェネレータ30により発電することで(前記発電制御を実行することで)、燃費が向上するか否かについて判定する。これは、例えば、エンジン10の目標エンジントルクを、前記ステップS102で算出した要求トルクに設定した場合に、エンジン10の運転状態が燃費率マップにおける「最大」の領域に属するのであれば、モータジェネレータ30により発電すると、却って燃費を悪化させるおそれがあるためである。ECU100は、前記発電制御を実行することで燃費が向上するYESのときには、ステップS106に進む一方、前記発電制御を実行することで燃費が悪化するおそれがあるNOのときには、前記ステップS111に進む。
前記ステップS107では、ECU100は、前記ステップS102で算出した要求トルク、燃費率マップ、及び発電効率マップに基づいて、エンジン10の目標エンジントルク及びモータジェネレータ30の目標発電トルクを算出する。このステップS107において、ECU100は、目標エンジントルク及び目標発電トルクを順番に算出してもよく、目標エンジントルク及び目標発電トルクを同時に算出してもよい。また、このステップS107において、ECU100により算出される発電トルクは、前記理論発電トルクに相当する。
続くステップS108では、ECU100は、前記ステップS107で算出した発電トルク(つまり、理論発電トルク)で発電する場合に、減筒運転から全筒運転への切り換えが生じる可能性がないか否かを判定する。このステップS108において、ECU100は、前記ステップS107で算出した目標エンジントルクが全筒運転領域に属するか否かにより、減筒運転から全筒運転への切り換えが生じる可能性がないか否かを判定する。ECU100は、減筒運転から全筒運転への切り換えが生じる可能性がないYESのときには、ステップS109に進む一方、減筒運転から全筒運転への切り換えが生じる可能性があるNOのときには、ステップS113に進む。
前記ステップS109では、前記ステップS107で算出した目標エンジントルクを実際の目標エンジントルクに設定して、該目標エンジントルクが得られるように、エンジン10を制御するとともに、前記ステップS107で算出した目標発伝トルクを実際の目標発電トルクに設定して、該目標発電トルクで発電するようにモータジェネレータ30を制御する。ステップS109の後はリターンする。
前記ステップS103においてNOと判定された時に進む前記ステップS110では、ECU100は、エンジン10の目標エンジントルク及びモータジェネレータ30の目標発電トルクを算出する。このステップS110では、ECU100は、減筒運転から全筒運転への切り換えが生じる可能性があるか否かを考慮することなく、エンジントルクが最大になるような目標発電トルクを算出する。
前記ステップS110の後は、前記ステップS109に進み、前記ステップS110で算出した目標エンジントルクを実際の目標エンジントルクに設定して、エンジン10を制御するとともに、前記ステップS110で算出した目標発電トルクを実際の目標発電トルクに設定して、該目標発電トルクで発電するようにモータジェネレータ30を制御する。ステップS109の後はリターンする。
前記ステップS104~S106のいずれかにおいてNOと判定されたときに進む前記ステップS111では、ECU100は、モータジェネレータ30による発電を禁止する。
次のステップS112では、ECU100は、目標エンジントルクを算出する。このとき算出される目標エンジントルクは、前記ステップS102で算出された要求トルクに相当する。
前記ステップS112の後は、ステップS109に進み、ECU100は、前記ステップS110で算出した目標エンジントルクを実際の目標エンジントルクに設定して、該目標エンジントルクが得られるように、エンジン10を制御する。また、ECU100は、モータジェネレータ30を発電機として作動させないように、モータジェネレータ30を制御する。ステップS109の後はリターンする。
前記ステップS108においてNOと判定された時に進む前記ステップS113では、ECU100は、前記最大発電トルクを算出する。すなわち、このステップS113において、ECU100は、燃費率マップに基づいて、減筒運転と全筒運転との切り換えが生じない範囲で、燃費率が出来る限り高くなる発電トルクを算出する。
次のステップS114では、ECU100は、目標エンジントルクを修正する。このステップS114において、ECU100は、前記ステップS102で算出した要求トルク及び前記ステップS113で算出した最大発電トルクに基づいて、目標エンジントルクを修正する。
前記ステップS114の後は、前記ステップS109に進み、前記ステップS114で修正した目標エンジントルクを実際の目標エンジントルクに設定して、該目標エンジントルクが得られるように、エンジン10を制御するとともに、前記ステップS113で算出した最大発電トルクを実際の目標発電トルクに設定して、該目標発電トルクで発電するようにモータジェネレータ30を制御する。ステップS109の後はリターンする。
以上のようにして、ECU100は、全筒運転と減筒運転との切り換えが生じない範囲で、エンジン10及びモータジェネレータ30を制御する。これにより、全筒運転と減筒運転との切り換えに伴うエネルギー効率の悪化が抑制されて、車両1のエネルギー効率を向上させることができる。
したがって、本実施形態1では、ECU100は、車両10の走行状態及び燃費率マップに基づいて設定した発電トルクで、モータジェネレータ30により発電する場合に、全筒運転と減筒運転との切り換えが生じると推定されるときには、全筒運転と減筒運転との切り換えが生じないように、モータジェネレータ30によるエンジン10の発電トルクを制限する発電制限制御を実行する。これにより、全筒運転と減筒運転との切り換えに伴うエネルギー効率の悪化が抑制される。この結果、車両1のエネルギー効率を向上させることができる。
特に、本実施形態1において、ECU100は、車両1の走行状態及び燃費率マップに加えて、発電効率マップに基づいて、モータジェネレータ30の発電トルクを設定する。これにより、燃費の向上に加えて、モータジェネレータ30の運転効率も向上される。このため、車両1全体のエネルギー効率を向上させることができる。
また、本実施形態1において、ECU100が実行する前記発電制限制御は、全筒運転と減筒運転との切り換えが生じない範囲で目標発電トルクを算出して、該算出した目標発電トルクで、モータジェネレータ30による発電を実行する制御である。このため、全筒運転と減筒運転との切り換えを抑制しつつ、モータジェネレータ30による発電により燃費率を向上させることができる。よって、車両1のエネルギー効率をより効果的に向上させることができる。
特に、本実施形態1において、ECU100が実行する前記発電制限制御は、全筒運転と減筒運転との切り換えが生じない範囲で、燃費率が最大限高くなる最大発電トルクを算出して、該算出した最大発電トルクで、モータジェネレータ30による発電を実行する制御である。これにより、全筒運転と減筒運転との切り換えに伴うエネルギー効率の悪化を抑制しつつ、出来る限り燃費率を向上させることができる。
(実施形態2)
以下、実施形態2について、図面を参照しながら詳細に説明する。尚、以下の説明において前記実施形態1と共通の部分については、同じ符号を付して、その詳細な説明を省略する。
本実施形態2は、ECU100で実行される発電制限制御の内容が前記実施形態1とは異なる。具体的には、本実施形態2において、前記発電制限制御は、車両1の走行状態、燃費率マップ、及び発電効率マップに基づいて算出した発電トルクで、モータジェネレータ30により発電する場合に、全筒運転と減筒運転との切り換えが生じると推定されるときには、モータジェネレータ30の発電トルクを、全筒運転と減筒運転との切り換えが生じると推定される直前の前記発電制御時に設定された発電トルクに維持するという制御である。これにより、モータジェネレータ30による発電により全筒運転と減筒運転との切り換えが生じるのをより効果的に抑制することができる。この結果、全筒運転と減筒運転との切り換えに伴うエネルギー効率の悪化をより効果的に抑制することができる。
本実施形態2における発電制限制御において、ECU100は、例えば、目標エンジントルク及び目標発電トルクの算出をエンジン10の燃焼サイクルの1サイクル毎に行っているのであれば、「全筒運転と減筒運転との切り換えが生じると推定される直前の発電制御時に設定された発電トルク」とは、直前の燃焼サイクル時に設定された目標発電トルクに相当する。この他、ECU100が、目標エンジントルク及び目標発電トルクの算出を一定時間毎に行っているのであれば、「全筒運転と減筒運転との切り換えが生じると推定される直前の発電制御時に設定された発電トルク」とは、直前のタイミングで設定された目標発電トルクに相当する。
図8は、本実施形態2において、前記発電制限制御を実行する際のECU100の処理動作を示すフローチャートである。このフローチャートに基づく処理動作は、エンジン10が作動している間は常に実行される。尚、図8に示すフローチャートは、フロー開始時おいて、エンジン10の運転状態が減筒運転領域に属する場合のフローチャートである。
まず、ステップS201において、ECU100は、各センサSN1~SN6からの情報を読み込む。
次のステップS202では、ECU100は、車両1の走行状態に基づいて要求トルクを算出する。
続くステップS203では、ECU100は、バッテリ残量センサSN5で検出される検出SOCが第2所定容量以上であるか否かを判定する。ECU100は、検出SOCが第2所定容量以上であるYESのときには、ステップS204に進む一方、検出SOCが第2所定容量未満であるNOのときには、前記強制発電制御を実行すべく前記ステップS210に進む。
前記ステップS204では、ECU100は、検出SOCが第1所定容量未満であるか否かを判定する。ECU100は、検出SOCが第1所定容量未満であるYESのときには、ステップS205に進む一方、検出SOCが第1所定容量以上であるNOのときには、前記ステップS211に進む。
前記ステップS205では、ECU100は、要求トルクが所定トルクTq以下であるか否かを判定する。ECU100は、要求トルクが所定トルクTq以下であるYESのときには、ステップS206に進む一方、要求トルクが所定トルクTqよりも大きいNOのときには、ステップS211に進む。
前記ステップS206では、ECU100は、燃費率マップに基づいて、モータジェネレータ30により発電することで(前記発電制御を実行することで)、燃費が向上するか否かについて判定する。これは、例えば、エンジン10の目標エンジントルクを、前記ステップS202で算出した要求トルクに設定した場合に、エンジン10の運転状態が燃費率マップにおける「最大」の領域に属するのであれば、モータジェネレータ30により発電すると、却って燃費を悪化させるおそれがあるためである。ECU100は、前記発電制御を実行することで燃費が向上するYESのときには、ステップS206に進む一方、前記発電制御を実行することで燃費が悪化するおそれがあるNOのときには、前記ステップS211に進む。
前記ステップS207では、ECU100は、前記ステップS202で算出した要求トルク、燃費率マップ、及び発電効率マップに基づいて、エンジン10の目標エンジントルク及びモータジェネレータ30の目標発電トルクを算出する。このステップS207において、ECU100は、目標エンジントルク及び目標発電トルクを順番に算出してもよく、目標エンジントルク及び目標発電トルクを同時に算出してもよい。また、このステップS207において、ECU100により算出される発電トルクは、前記理論発電トルクに相当する。
続くステップS208では、ECU100は、前記ステップS207で算出した発電トルク(つまり、理論発電トルク)で発電する場合に、減筒運転から全筒運転への切り換えが生じる可能性がないか否かを判定する。このステップS208において、ECU100は、前記ステップS207で算出した目標エンジントルクが全筒運転領域に属するか否かにより、減筒運転から全筒運転への切り換えが生じる可能性がないか否かを判定する。ECU100は、減筒運転から全筒運転への切り換えが生じる可能性がないYESのときには、ステップS209に進む一方、減筒運転から全筒運転への切り換えが生じる可能性があるNOのときには、ステップS213に進む。
前記ステップS209では、前記ステップS207で算出した目標エンジントルクを実際の目標エンジントルクに設定して、該目標エンジントルクが得られるように、エンジン10を制御するとともに、前記ステップS207で算出した目標発伝トルクを実際の目標発電トルクに設定して、該目標発電トルクで発電するようにモータジェネレータ30を制御する。ステップS209の後はリターンする。
前記ステップS203においてNOと判定された時に進む前記ステップS210では、ECU100は、エンジン10の目標エンジントルク及びモータジェネレータ30の目標発電トルクを算出する。このステップS210では、ECU100は、減筒運転から全筒運転への切り換えが生じる可能性があるか否かを考慮することなく、エンジントルクが最大になるような目標発電トルクを算出する。
前記ステップS210の後は、前記ステップS209に進み、前記ステップS210で算出した目標エンジントルクを実際の目標エンジントルクに設定して、エンジン10を制御するとともに、前記ステップS210で算出した目標発電トルクを実際の目標発電トルクに設定して、該目標発電トルクで発電するようにモータジェネレータ30を制御する。ステップS209の後はリターンする。
前記ステップS204~S206のいずれかにおいてNOと判定されたときに進む前記ステップS211では、ECU100は、モータジェネレータ30による発電を禁止する。
次のステップS212では、ECU100は、目標エンジントルクを算出する。このとき算出される目標エンジントルクは、前記ステップS202で算出された要求トルクに相当する。
前記ステップS212の後は、ステップS209に進み、ECU100は、目標エンジントルクを前記ステップS210で算出した目標エンジントルクに設定して、該目標エンジントルクが得られるように、エンジン10を制御する。また、ECU100は、モータジェネレータ30を発電機として作動させないように、モータジェネレータ30を制御する。ステップS209の後はリターンする。
前記ステップS208においてNOと判定された時に進む前記ステップS213では、ECU100は、目標発電トルクを、減筒運転から全筒運転への切り換えが推定される直前の前記発電制御時に設定された発電トルクに修正する。
次のステップS214では、ECU100は、目標エンジントルクを修正する。このステップS214において、ECU100は、前記ステップS202で算出した要求トルク及び前記ステップS213で修正した目標発電トルクに基づいて、目標エンジントルクを修正する。
前記ステップS214の後は、前記ステップS209に進み、前記ステップS214で修正した目標エンジントルクを実際の目標エンジントルクに設定して、該目標エンジントルクが得られるように、エンジン10を制御するとともに、前記ステップS213で算出した目標発電トルクを実際の目標発電トルクに設定して、該目標発電トルクで発電するようにモータジェネレータ30を制御する。ステップS209の後はリターンする。
したがって、本実施形態2でも、ECU100は、車両10の走行状態及び燃費率マップに基づいて設定した発電トルクで、モータジェネレータ30により発電する場合に、全筒運転と減筒運転との切り換えが生じると推定されるときには、全筒運転と減筒運転との切り換えが生じないように、モータジェネレータの発電トルクを制限する発電制限制御を実行する。これにより、全筒運転と減筒運転との切り換えに伴うエネルギー効率の悪化が抑制される。この結果、車両1のエネルギー効率を向上させることができる。
特に、本実施形態2において、ECU100が実行する前記発電制限制御は、モータジェネレータ30の発電トルクを、全筒運転と減筒運転との切り換えが生じると推定される直前の前記発電制御時に設定された発電トルクに維持する制御である。これにより、モータジェネレータ30による発電により全筒運転と減筒運転との切り換えが生じるのをより効果的に抑制することができる。この結果、全筒運転と減筒運転との切り換えに伴うエネルギー効率の悪化をより効果的に抑制することができる。よって、車両1のエネルギー効率をより効果的に向上させることができる。
(その他の実施形態)
ここに開示された技術は、上記実施形態に限られるものではなく、請求の範囲の主旨を逸脱しない範囲で代用が可能である。
例えば、前述の実施形態1及び2では、ECU100は、車両1の走行状態(要求トルク)、燃費率マップ、及び発電効率マップに基づいて、モータジェネレータ30の発電トルクを算出していた。これに限らず、ECU100は、発電効率マップを用いることなく、車両1の走行状態及び燃費率マップに基づいて、モータジェネレータ30の発電トルクを算出するようにしてもよい。尚、このときには、メモリ102には発電効率マップは格納されていなくてもよい。
また、ECU100は、車両1の走行状態(要求トルク)、燃費率マップ、及び発電効率マップに加えて、更にバッテリ70のSOCに基づいて、モータジェネレータ30のアシスト量を算出するようにしてもよい。より具体的には、ECU100は、バッテリ70のSOCが第1所定容量付近のときには、バッテリ70のSOCが第1所定容量以上にならないように、モータジェネレータ30の発電トルクを算出するようにしてもよい。
上述の実施形態は単なる例示に過ぎず、本開示の範囲を限定的に解釈してはならない。本開示の範囲は請求の範囲によって定義され、請求の範囲の均等範囲に属する変形や変更は、全て本開示の範囲内のものである。