(58)【調査した分野】(Int.Cl.,DB名)
車両の駆動源としての内燃機関及び同駆動源としての電動機、並びに、前記電動機に電力を供給する蓄電池を搭載し、前記電動機を用いて回生制動を行うとともに同回生制動により発生した電力を前記蓄電池に充電可能であり且つ前記内燃機関の出力を用いて発電した電力を前記蓄電池に充電可能に構成されたハイブリッド車両に適用され、
前記車両に要求される要求駆動力を満たすように且つ前記蓄電池の残容量が所定の目標残容量に近づくように前記内燃機関及び前記電動機を制御する制御部を備えるハイブリッド車両の制御装置であって、
前記制御部は、
前記車両の走行予定経路を取得し、前記走行予定経路に含まれる下り坂区間であって同下り坂区間の開始地点と終了地点との標高差の絶対値が所定の標高差閾値よりも大きい下り坂区間を対象下り坂区間として抽出する対象下り坂区間抽出部と、
前記対象下り坂区間が抽出された場合、前記対象下り坂区間の開始地点よりも所定距離だけ手前にある下り坂制御開始地点から同対象下り坂区間の終了地点までの区間のうちの少なくとも同下り坂制御開始地点から同対象下り坂区間の開始地点までの区間を含む特定区間を前記車両が走行するとき前記目標残容量を同車両が同特定区間以外を走行する場合に比べて小さい残容量に変更する下り坂制御を実行する下り坂制御部と、
を含み、
前記対象下り坂区間抽出部は、
前記車両が前記下り坂区間を走行するときの推定平均速度が第1速度であると推定される場合には同推定平均速度が同第1速度よりも低い第2速度であると推定される場合よりも前記標高差閾値を大きい値に設定する標高差閾値設定部を備える、
制御装置。
【発明を実施するための形態】
【0031】
以下、図面を参照しながら本発明の各実施形態に係るハイブリッド車両の制御装置について説明する。
<第1実施形態>
本発明の第1実施形態に係るハイブリッド車両の制御装置(以下、「第1制御装置」とも称呼される。)は、
図1に示したように、車両10に適用される。車両10は、第1電動機21、第2電動機22及び機関23を搭載している。即ち、車両10はハイブリッド車両である。
【0032】
車両10は、更に、動力分割機構24、蓄電池31、昇圧コンバータ32、第1インバータ33、第2インバータ34、ECU40及び運行支援装置60を含む。ECU40及び運行支援装置60は、第1制御装置を構成する。
【0033】
第1電動機21及び第2電動機22はそれぞれ、発電機及び電動機の何れとしても機能することができる三相同期発電電動機である。第1電動機21は、主に発電機として用いられる。第1電動機21は更に、機関23の始動時には機関23のクランキングを行う。第2電動機22は、主に電動機として用いられ、車両10の車両駆動力(車両を走行させるためのトルク)を発生することができる。機関23もまた、車両10の車両駆動力を発生することができる。機関23は、4気筒の4サイクルガソリンエンジンである。
【0034】
動力分割機構24は遊星歯車機構である。動力分割機構24は、リングギア、複数の動力分割プラネタリーギア、複数のリダクションプラネタリーギア、第1サンギア、第2サンギア、第1ピニオンキャリア及び第2ピニオンキャリアを含んでいる(いずれも不図示)。
【0035】
動力分割プラネタリーギア及びリダクションプラネタリーギアのそれぞれは、リングギアと噛合する。第1サンギアは、動力分割プラネタリーギアと噛合する。第2サンギアは、リダクションプラネタリーギアと噛合する。第1プラネタリーキャリアは、複数の動力分割プラネタリーギアを自転可能且つサンギアの回りに公転可能な状態で保持する。第2プラネタリーキャリアは、複数のリダクションプラネタリーギアを自転可能な状態で保持する。
【0036】
リングギアは、リングギアの外周上に配設されたカウンターギアを介して車軸25とトルク伝達可能に接続されている。第1プラネタリーキャリアには、機関23の出力軸がトルク伝達可能に連結されている。第1サンギアには、第1電動機21の出力軸がトルク伝達可能に連結されている。第2サンギアには、第2電動機22の出力軸がトルク伝達可能に連結されている。
【0037】
第1電動機21の回転速度(MG1回転速度)Nm1、機関23の機関回転速度NE及び動力分割機構24のリングギア回転速度Nr、並びに、第2電動機22の回転速度(MG2回転速度)Nm2及びリングギア回転速度Nrの関係は、
図2に示した周知の共線図により表される。共線図に表される2つの直線は、動作共線L1及び動作共線L2とも称呼される。
【0038】
動作共線L1によれば、MG1回転速度Nm1と機関回転速度NE及びリングギア回転速度Nrとの関係は、下式(1)により表すことができる。ここで、ギア比ρ1は、リングギアの歯数に対する第1サンギアの歯数である(即ち、ρ1=第1サンギアの歯数/リングギアの歯数)。
Nm1=Nr−(Nr−NE)×(1+ρ1)/ρ1 ・・・(1)
【0039】
一方、動作共線L2によれば、MG2回転速度Nm2とリングギア回転速度Nrとの関係は、下式(2)により表すことができる。ここで、ギア比ρ2は、リングギアの歯数に対する第2サンギアの歯数である(即ち、ρ2=第2サンギアの歯数/リングギアの歯数)。
Nm2=Nr×(1+ρ2)/ρ2−Nr ・・・(2)
【0040】
再び
図1を参照すると、車軸25は、ディファレンシャルギア26を介して駆動輪27とトルク伝達可能に連結されている。
【0041】
蓄電池31は、充放電が可能な二次電池(本例において、リチウムイオンバッテリ)である。蓄電池31の出力した直流電力は、昇圧コンバータ32により電圧変換(昇圧)され高圧電力となる。第1インバータ33は、高圧電力を交流電力に変換して第1電動機21へ供給する。同様に、第2インバータ34は、高圧電力を交流電力に変換して第2電動機22へ供給する。
【0042】
一方、第1電動機21が発電機として動作するとき、第1インバータ33は、発電された交流電力を直流電力に変換し、昇圧コンバータ32及び/又は第2インバータ34へ供給する。同様に、第2電動機22が発電機として動作するとき、第2インバータ34は、発電された交流電力を直流電力に変換し、昇圧コンバータ及び/又は第1インバータ33へ供給する。昇圧コンバータ32は、第1インバータ33及び/又は第2インバータ34から供給された直流電力を降圧して蓄電池31へ供給する。この結果、蓄電池31が充電される。
【0043】
ECU40は、CPU41、CPU41が実行するプログラム及びルックアップテーブル(マップ)等を記憶するROM42並びにデータを一時的に記憶するRAM43等を含むマイクロコンピュータである。ECU40は、機関23、昇圧コンバータ32、第1インバータ33及び第2インバータ34を制御する。
【0044】
ECU40は、クランク角度センサ51、電流計52、車速センサ53、アクセル開度センサ54及びブレーキ開度センサ55と接続されている。
【0045】
クランク角度センサ51は、機関23のクランクシャフトの回転位置を測定し、そのクランク角度CAを表す信号を出力する。ECU40は、クランク角度CAに基づいて機関23の機関回転速度NEを算出する。電流計52は、蓄電池31を流れる電流IBを表す信号を出力する。ECU40は、電流IBに基づいて蓄電池に充電された電力量である残容量SOCを算出する。
【0046】
車速センサ53は、車軸25の回転速度を検出し、車両10の走行速度(車速)Vsを表す信号を出力する。アクセル開度センサ54は、アクセルペダル56の操作量(アクセル操作量)Apを表す信号を出力する。ブレーキ開度センサ55は、ブレーキペダル57の操作量(ブレーキ操作量)Bpを表す信号を出力する。
【0047】
運行支援装置60は、演算部61、GPS受信部62、データベース63及び表示装置64を含んでいる。
GPS受信部62は、GPS(Global Positioning System)衛星(不図示)からの信号(電波)に基づいて車両10の現在位置Pnを取得し、現在位置Pnを表す信号を演算部61に対して出力する。
【0048】
データベース63は、ハードディスクドライブ(HDD)によって構成され、地図データベースを記憶している。地図データベースは、交差点及び行き止まり等の「ノード」、ノードどうしを接続する「リンク」並びにリンク沿いにある建物及び駐車場等の「施設」に関する情報(地図情報)を含んでいる。更に、地図データベースは、各リンクに表される区間(道路)の距離、リンクの一端(開始位置)及び他端(終了位置)を特定するノードの位置、及び、平均勾配(リンクの両端の間の距離に対するリンクの両端の標高差の比率)を含んでいる。
【0049】
表示装置64は、車両10の車室内に設けられたセンターコンソール(不図示)に配設されている。表示装置64はディスプレイを備え、車両10の運転者の操作によって地図データベースに記憶された地図情報を現在位置Pnと共に表示することができる。
【0050】
表示装置64のディスプレイはタッチパネルとしても作動する。従って、運転者は表示装置64のディスプレイに触れることによって運行支援装置60を操作することができる。更に、表示装置64は発音装置(不図示)を含んでいる。表示装置64は演算部61の指示に従って警告音の再生及びアナウンス等を行うことができる。
【0051】
演算部61は、CPU66、CPU66が実行するプログラム及びルックアップテーブル(マップ)等を記憶するROM67並びにデータを一時的に記憶するRAM68等を含むマイクロコンピュータである。演算部61は、CAN(Controller Area Network)を介してECU40と相互に情報を交換することができる。演算部61は「運行支援ECU」とも称呼され、ECU40は「車両制御ECU」とも称呼される。
【0052】
演算部61は、車両10の運転者が表示装置64を用いて目的地を入力すると、現在位置Pnから目的地までの経路(走行予定経路)を地図データベースに基づいて探索する。走行予定経路は、ノードの集合によって構成される。演算部61は、表示装置64上の表示及び発音装置から発せられる音声を用いて、走行予定経路を運転者が通過できるように経路案内を行う。
【0053】
(ECUによる発生トルクの制御)
次に、ECU40の作動について説明する。
ECU40は、アクセル操作量Ap及び車速Vsに基づいてリングギアに作用するトルク(リングギア発生トルク)Trの目標値であるリングギア要求トルクTr*を決定する。リングギア発生トルクTrは、駆動輪27に作用するトルクと比例関係にあるので、リングギア発生トルクTrが大きくなるほど駆動輪27に作用するトルクは大きくなる。
【0054】
ECU40は、リングギア発生トルクTrがリングギア要求トルクTr*と等しくなり且つ残容量SOCが目標残容量SOC*と一致するように(近づくように)機関23、昇圧コンバータ32、第1インバータ33及び第2インバータ34を制御する。
【0055】
例えば、残容量SOCが目標残容量SOC*と略一致しているとき、機関23の運転効率が高い運転領域では、ECU40は、機関23及び第2電動機22の両方に出力を発生させ、機関23が発生させる機関出力Peの一部によって第1電動機21に発電させる。この場合、第1電動機21が発電した電力が第2電動機22に供給される。従って、残容量SOCが目標残容量SOC*に維持される。
【0056】
残容量SOCが目標残容量SOC*よりも低ければ、ECU40は、機関出力Peを上昇させ、以て、第1電動機21の発電量を上昇させる。これにより、残容量SOCが上昇する。
【0057】
一方、車両10の発進時及び低負荷走行時等の機関23の運転効率が低い運転領域では、ECU40は、機関23の運転を停止させ、第2電動機22にのみ出力を発生させる。この場合、残容量SOCが低下する。ただし、残容量SOCが残容量下限値Sminよりも低ければ、ECU40は、機関23を作動させ、第1電動機21に発電させる「強制充電」を実行する。これにより、残容量SOCは残容量下限値Sminよりも大きくなる。
【0058】
残容量SOCが残容量上限値Smaxよりも高ければ、ECU40は、機関23の運転効率が高い運転領域であっても高出力及び高トルクが要求される場合を除き機関23の運転を停止させ、第2電動機22のみに出力を発生させる。これにより、残容量SOCは残容量上限値Smaxよりも小さくなる。
【0059】
(ECUによる制動力の制御)
運転者は、制動力を車両10に対して要求するとき、アクセル操作量Ap及びブレーキ操作量Bpを共に「0」に設定する操作又はアクセル操作量Apを「0」に設定した上でブレーキ操作量Bpを増加させる操作を行う。ECU40は、制動力が要求されたとき、回生制動力及び摩擦制動力を発生させる。このとき、回生制動力では不足する制動力が摩擦制動力によって補われる。
【0060】
ECU40は、回生制動力を発生させるとき、第1電動機21及び/又は第2電動機22に発電させる。換言すれば、ECU40は、車両10の運動エネルギーを第1電動機21及び/又は第2電動機22を用いて電気エネルギーに変換する。発電された電力は蓄電池31に充電され、以て、残容量SOCが上昇する。
【0061】
ECU40は、摩擦制動力を発生させるとき、ブレーキ装置(不図示)によって駆動輪27を含む車両10の車輪のそれぞれに配設されたブレーキディスク(不図示)に摩擦力を加える。換言すれば、ECU40は、車両10の運動エネルギーをブレーキ装置を用いて熱エネルギーに変換する。
【0062】
ECU40は、回生制動力と摩擦制動力との和である合計制動力が運転者の要求する制動力と等しくなるように第1電動機21、第2電動機22及びブレーキ装置を制御する。
【0063】
(下り坂制御)
車両10が下り坂区間を走行するとき、車両10が制動力を発生させなければ駆動輪27にトルクを発生させなくても車速Vsが上昇する。車速Vsが運転者が期待した速度よりも高くなると、運転者は制動力を要求する。要求された制動力の一部又は全部は回生制動力によって提供される。そのため、下り坂区間の走行中、第1電動機21及び/又は第2電動機22が発電する頻度が上昇し、以て、残容量SOCが上昇する。換言すれば、ECU40は、車両10の位置エネルギーを運動エネルギーを介して電気エネルギーに変換する。
【0064】
残容量SOCが上昇すると、蓄電池31を充電するために機関23を運転する機会及び機関23の出力のうち蓄電池31の充電に使用される出力が減少するので、車両10の燃費が向上する。しかし、下り坂区間の途中で残容量SOCが残容量上限値Smaxに達すると、それ以上残容量SOCを上昇させることができなくなるので、それ以上、燃費向上の効果を得られなくなる。
【0065】
車両10が下り坂区間を走行するときの残容量SOCの変化を
図3を参照しながら説明する。
図3において、車両10の走行予定経路を構成するリンクは、便宜的にリンク1〜リンク8として表されている。リンク1〜リンク8のそれぞれは、(高速道路ではなく)一般道路の一部である。現在位置Pnはリンク1上にある。リンク4〜リンク6は後述される対象下り坂区間に相当する。一方、リンク1〜リンク3、リンク7及びリンク8は平坦路に相当する。後述される下り坂制御が実行されていないとき、目標残容量SOC*は標準残容量Snに設定されている。
【0066】
曲線Lc1(破線)は、車両10が下り坂制御を実行すること無くリンク1からリンク8までを走行したときの残容量SOCの変化を表している。車両10がリンク1〜リンク3を走行するとき、残容量SOCが目標残容量SOC*である標準残容量Snに近づくように機関23、第1電動機21及び第2電動機22が運転制御されるから、残容量SOCは標準残容量Snの近傍にて変動する。車両10がリンク4に対応する区間に進入すると、回生制動によって残容量SOCは上昇を開始し、車両10がリンク6の途中にある地点D5aに達したとき、残容量SOCは残容量上限値Smaxに達している。
【0067】
そのため、車両10が地点D5aから地点D6の間を走行中、下り坂区間を走行しているにも拘わらず回生制動が実行できないので残容量SOCを増加させることができず(即ち、オーバーフローが発生し)、以て、燃費向上の効果が充分に得られない。加えて、残容量SOCが残容量上限値Smax近傍に維持される時間が長くなると、蓄電池31の劣化が促進される。
【0068】
そこで、車両10のECU40は下り坂区間の手前で目標残容量SOC*を所定量(電力量S10)だけ低下させる「下り坂制御」を実行する。下り坂制御が実行されるとき、目標残容量SOC*は残容量(低側残容量)Sdに設定される。本例において、標準残容量Snと低側残容量Sdとの間の差分の大きさは、蓄電池31の最大充電量(即ち、残容量SOCが100%であるときの蓄電量)の10%に相当する電力量S10に等しい(即ち、Sd=Sn−S10)。
【0069】
下り坂制御は、車両10が下り坂区間の開始地点D3よりも所定のプレユース距離Dpだけ手前の地点D1aに到達したときに開始される。一方、下り坂制御は、車両10が下り坂区間の終了地点D6に到達したときに終了し、目標残容量SOC*は低側残容量Sdから標準残容量Snに変更される。下り坂制御が実行されたときの目標残容量SOC*の変化は、折れ線Lp1により表される。
【0070】
下り坂区間の開始地点よりもプレユース距離Dpだけ手前の地点から下り坂区間の開始地点までの「プレユース区間」と、下り坂区間と、を合わせた区間は「下り坂制御区間」とも称呼される。プレユース距離Dpは、予め設定された距離であって、車両10がその距離を走行したとき残容量SOCを電力量S10だけ徐々に減少させるのに充分な距離である。
【0071】
下り坂制御が実行されたときの残容量SOCの変化は、曲線Lc2(実線)により表される。曲線Lc2から理解されるように、地点D1aにて目標残容量SOC*が低側残容量Sdに設定されると、残容量SOCが減少して低側残容量Sd近傍に達し、その後、車両10が下り坂区間を走行すると残容量SOCが上昇する。しかし、残容量SOCが残容量上限値Smaxに達すること無く車両10は下り坂区間の走行を終える。即ち、下り坂制御によって上記オーバーフローの発生を回避することが可能となる。
【0072】
下り坂制御の対象となる下り坂区間(対象下り坂区間)は、上述した位置エネルギーから電気エネルギーへの変換に基づく残容量SOCの増加量が「蓄電池31の最大充電量の20%に相当する電力量S20」よりも大きくなると予想される下り坂区間である。車両10が下り坂区間を走行する際の残容量SOCの増加量は、その下り坂区間の走行時における車速Vsの平均値が高いほど小さくなる。
【0073】
より具体的に述べると、車両10の車体に作用する空気抵抗は、車速Vsの2乗に比例する。車両10の車体に作用する空気抵抗が大きくなるほど位置エネルギーを電気エネルギーへ変換する際の損失が大きくなる。そのため、車両10が下り坂区間を車速Vsが高い状態にて走行する場合、同じ下り坂区間を車速Vsが低い状態にて走行する場合と比較して残容量SOCの増加量が小さくなる。下り坂区間を走行するときの車速Vs(又は車速Vsの平均値)は、その下り坂区間が高速道路であれば、その下り坂区間が一般道路である場合と比較して高くなると推定することができる。
【0074】
そこで、運行支援装置60(具体的には、演算部61)は、車両10の走行予定経路に含まれる対象下り坂区間を探索(抽出)するとき、対象下り坂区間であるか否かを判定するための条件(対象下り坂条件)を走行予定経路が一般道路であるか高速道路であるかに基づいて使い分ける。対象下り坂区間は、一般道路及び高速道路のいずれか一方のみを含む。即ち、演算部61は、一般道路及び高速道路の両方が混在する区間を一つの対象下り坂区間として抽出しない。
【0075】
本例において、高速道路は高速自動車国道であり、一般道路は高速自動車国道以外の道路である。車両10の走行予定経路の一部又は全部であって対象下り坂区間であるか否かを判定される区間(リンクの集合)は、「被判定区間」とも称呼される。
【0076】
被判定区間を構成する1つ又は複数のリンクは、「下り勾配リンク」及び「平坦リンク」のいずれかに分類される。一般道路における下り勾配リンクは、リンクの平均勾配が勾配閾値degth1(ただし、degth1<0)により示される勾配よりも急な下り坂区間(即ち、勾配閾値degth1より勾配が急な下り坂区間)である。一般道路における平坦リンクは、リンクの平均勾配が勾配閾値degth1により示される勾配よりも急でない下り坂区間、平坦区間、或いは、上り坂区間である。
【0077】
高速道路における下り勾配リンクは、リンクの平均勾配が勾配閾値degth2(ただし、degth2<degth1)により示される勾配よりも急な下り坂区間(即ち、勾配閾値degth2より勾配が急な下り坂区間)である。高速道路における平坦リンクは、リンクの平均勾配が勾配閾値degth2により示される勾配よりも急でない下り坂区間、平坦区間、或いは、上り坂区間である。
【0078】
勾配閾値degth1及び勾配閾値degth2は、予め定められた値である。勾配閾値degth1は、車両10の走行経路が勾配閾値degth1よりも急な下り坂である一般道路であれば上述した位置エネルギーから電気エネルギーへ変換されるエネルギー量がある程度大きくなるように設定されている。同様に、勾配閾値degth2は、車両10の走行経路が勾配閾値degth2よりも急な下り坂である高速道路であれば位置エネルギーから電気エネルギーへ変換されるエネルギー量がある程度大きくなるように設定されている。上述したように、車両10が高速道路を走行するとき、一般道路を走行するときと比較して車速Vsが高く、以て、車両10の車体に作用する空気抵抗が大きくなる可能性が高いので、勾配閾値degth2の絶対値は勾配閾値degth1の絶対値よりも大きい(即ち、degth2<degth1<0)。
【0079】
被判定区間が一般道路であるときの対象下り坂条件(一般道路対象下り坂条件)は、以下の通りである。
(a1)一般道路のみによって構成される区間である。
(b1)開始リンク及び終了リンクが下り勾配リンク(即ち、勾配閾値degth1よりも勾配が急な下り坂区間)である。
(c)開始地点と終了地点との間の距離が距離閾値Dthよりも長い。
(d1)終了地点の標高が開始地点の標高よりも低く、その標高差が標高差閾値Hth1よりも大きい(但し、Hth1>0)。
(e)被判定区間に含まれる連続した平坦リンク区間の距離が平坦距離閾値Fthよりも短い(ただし、Fth<Dth)。
【0080】
一方、被判定区間が高速道路であるときの対象下り坂条件(高速道路対象下り坂条件)は、以下の通りである。
(a2)高速道路のみによって構成される区間である。
(b2)開始リンク及び終了リンクが下り勾配リンク(即ち、勾配閾値degth2よりも勾配が急な下り坂区間)である。
(c)開始地点と終了地点との間の距離が距離閾値Dthよりも長い。
(d2)終了地点の標高が開始地点の標高よりも低く、その標高差が標高差閾値Hth2よりも大きい(ただし、Hth2>Hth1)。
(e)被判定区間に含まれる連続した平坦リンク区間の距離が平坦距離閾値Fthよりも短い。
【0081】
図3の例において、リンク4〜リンク6によって構成される下り坂区間(即ち、地点D3から地点D6までの区間)は対象下り坂区間である。より具体的に述べると、リンク4〜リンク6のそれぞれは一般道路である。開始リンク(リンク4)及び終了リンク(リンク6)は、勾配閾値degth1よりも勾配が急な下り坂区間である。地点D3から地点D6までの距離Doは、距離閾値Dthよりも長い(即ち、Do=D6−D3>Dth)。地点D6の標高H2は地点D3の標高H1よりも低く、その標高差ΔHが標高差閾値Hth1よりも大きい(即ち、ΔH=H1−H2>Hth1)。
【0082】
リンク4〜リンク6のそれぞれは下り勾配リンクであって平坦リンクではないので、被判定区間に含まれる平坦リンクの距離は「0」であって、平坦距離閾値Fthよりも短い。従って、リンク4〜リンク6によって構成される区間(被判定区間)は、上記条件一般道路対象下り坂条件(即ち、条件(a1)、(b1)、(c)、(d1)及び(e))を総て満たし、対象下り坂区間に該当する。
【0083】
なお、上述したように地図データベースにはリンクの長さと勾配が記憶されているので、演算部61は長さと勾配との積を算出することによってリンクの一端と他端との間の標高差を取得する。更に、演算部61は、ある区間を構成する複数のリンクのそれぞれの標高差の和を算出することによってその区間の一端と他端との間の標高差を取得する。なお、地図データベースが各リンクの両端の標高を含む場合、標高差は、そのリンクの終了地点の標高から同リンクの開始地点の標高を減じることにより求められる。
【0084】
一般道路における対象下り坂区間の他の例が
図4(A)及び(B)に示される。
図4(A)は、10個のリンク(リンクa1〜リンクa10)によって構成される車両10の走行予定経路を示している。リンクa1〜リンクa10のぞれぞれは一般道路である。リンクa1〜リンクa4のそれぞれは、平坦リンクである。一方、リンクa5〜リンクa10のそれぞれは、下り勾配リンクである。リンクa5〜リンクa10によって表される区間の合計距離Daは距離閾値Dthよりも長い。
【0085】
リンクa10の終了地点Pa11の標高はリンクa5の開始地点Pa5の標高よりも低く、その標高差(絶対値)Haは標高差閾値Hth1よりも大きい。リンクa5〜リンクa10のそれぞれは下り勾配リンクであって平坦リンクではないので、平坦リンクの距離は「0」であって平坦距離閾値Fthよりも短い。従って、リンクa5〜リンクa10の区間は、上記条件(a1)、(b1)、(c)、(d1)及び(e)を総て満たすので、対象下り坂区間を構成する。即ち、地点Pa5から地点Pa10までの区間は対象下り坂区間である。
【0086】
例えば、リンクa4〜リンクa10を被判定区間として捉えると、リンクa4は平坦リンクであるので上記条件(b1)を満たさず、従って、リンクa4〜リンクa10の区間は対象下り坂区間ではない。
【0087】
図4(B)は、10個のリンク(リンクb1〜リンクb10)によって構成される車両10の走行予定経路を示している。リンクb1〜リンクb10のぞれぞれは一般道路である。リンクb3〜リンクb5及びリンクb7〜リンクb8は下り勾配リンクである。一方、リンクb1〜リンクb2、リンクb6及びリンクb9〜リンクb10は平坦リンクである。
【0088】
リンクb3〜リンクb8によって表される区間の合計距離Dbは距離閾値Dthよりも長い。リンクb8の終了地点Pb9の標高はリンクb3の開始地点Pb3の標高よりも低く、その標高差(絶対値)Hbは標高差閾値Hth1よりも大きい。よって、上記条件(a1)、(b1)、(c)及び(d1)が満たされる。
【0089】
加えて、リンクb3〜リンクb9の区間の途中に平坦リンクb6が含まれているが、リンクb6の開始地点と終了地点との間の距離Db6は、平坦距離閾値Fthよりも短いので、上記条件(e)が満たされる。従って、リンクb3〜リンクb8の区間は、対象下り坂区間を構成する。
【0090】
他方、一般道路対象下り坂条件を満たさないリンクの集合の例が
図4(C)に示される。
図4(C)は、10個のリンク(リンクc1〜リンクc10)によって構成される車両10の走行予定経路を示している。リンクc1〜リンクc10のぞれぞれは一般道路である。リンクc1〜リンクc3及びリンクc6〜リンクc8は下り勾配リンクである。一方、リンクc4〜リンクc5及びリンクc9〜リンクc10は平坦リンクである。
【0091】
例えば、リンクc1〜リンクc8を被判定区間として捉えると、リンクc1〜リンクc8によって表される区間の合計距離Dcは距離閾値Dthよりも長い。リンクc8の終了地点Pc9の標高はリンクc1の開始地点Pc1の標高よりも低く、その標高差(絶対値)Hcは標高差閾値Hth1よりも大きい。よって、上記条件(a1)、(b1)、(c)及び(d1)が満たされる。
【0092】
しかしながら、リンクc1〜リンクc8の区間は、途中に平坦リンクc4及び平坦リンクc5を含んでいる。リンクc4の開始地点Pc4からリンクc5の終了地点Pc6までの距離(距離Dc4+距離Dc5)は平坦距離閾値Fthより長いので、上記条件(e)を満たさない。従って、リンクc1〜リンクc8の区間は、対象下り坂区間を構成しない。
【0093】
高速道路における対象下り坂区間の例が
図5(A)及び(B)に示される。
図5(A)は、10個のリンク(リンクd1〜リンクd10)によって構成される車両10の走行予定経路を示している。リンクd1〜リンクd10のぞれぞれは高速道路である。リンクd3〜リンクd8は下り勾配リンクである。一方、リンクd1〜リンクd2及びリンクd9〜リンクd10は平坦リンクである。
【0094】
リンクd3〜リンクd8によって表される区間の合計距離Ddは距離閾値Dthよりも長い。リンクd8の終了地点Pd9の標高はリンクd3の開始地点Pd3の標高よりも低く、その標高差(絶対値)Hdは標高差閾値Hth2よりも大きい。リンクd3〜リンクd8は平坦リンクを含まない。従って、リンクd3〜リンクd8の区間は、上記条件(a2)、(b2)、(c)、(d2)及び(e)を総て満たすので、対象下り坂区間を構成する。
【0095】
図5(B)は、10個のリンク(リンクe1〜リンクe10)によって構成される車両10の走行予定経路を示している。リンクe1〜リンクe8のぞれぞれは高速道路である。一方、リンクe9〜リンクe10のぞれぞれは一般道路である。リンクe3〜リンクe9は下り勾配リンクである。一方、リンクe1〜リンクe2及びリンクe10は平坦リンクである。
【0096】
リンクe3〜リンクe8によって表される区間の合計距離Deは距離閾値Dthよりも長い。リンクe8の終了地点Pe9の標高はリンクe3の開始地点Pe3の標高よりも低く、その標高差(絶対値)Heは標高差閾値Hth2よりも大きい。リンクe3〜リンクe8は平坦リンクを含まない。従って、リンクe3〜e8の区間は、上記条件(a2)、(b2)、(c)、(d2)及び(e)を総て満たすので、対象下り坂区間を構成する。
【0097】
例えば、リンクe3〜リンクe9を被判定区間として捉えると、上記条件(b2)、(c)、(d2)及び(e)を満たす。しかしながら、リンクe3〜リンクe9の区間は一般道路(リンクe9)を含んでいるので、上記条件(a2)を満たさない。従って、リンクe1〜リンクe9の区間は、対象下り坂区間を構成しない。
【0098】
他方、一般道路対象下り坂条件及び高速道路対象下り坂条件のいずれも満たさないリンクの集合の例が
図5(C)に示される。
図5(C)は、10個のリンク(リンクf1〜リンクf10)によって構成される車両10の走行予定経路を示している。リンクf1〜リンクf5は高速道路である。一方、リンクf6〜リンクf10は一般道路である。リンクf3〜リンクf4及びリンクf6〜リンクf8は下り勾配リンクである。一方、リンクf1〜リンクf2、リンクf5及びリンクf9〜リンクf10は平坦リンクである。
【0099】
例えば、リンクf3〜リンクf8を被判定区間として捉えれば、開始リンク(リンクf3)及び終了リンク(リンクf8)は下り勾配リンクである。リンクf3〜リンクf8によって表される区間の合計距離Dfは距離閾値Dthよりも長い。リンクf8の終了地点Pf9の標高はリンクf3の開始地点Pf3の標高よりも低く、その標高差は標高差閾値Hth2よりも大きい。リンクf3〜リンクf8に含まれる平坦区間の距離Df5は平坦距離閾値Fthよりも短い。
【0100】
従って、リンクf3〜リンクf8の区間は、上記条件(b2)、(c)、(d2)及び(e)を満たす。しかし、リンクf3〜リンクf8の区間は、一般道路と高速道路とが混在しているので上記条件(a2)を満たさない。従って、リンクf3〜リンクf8の区間は高速道路対象下り坂条件を満たさない。加えて、リンクf3〜リンクf8の区間は、上記条件(a1)を満たさないので、リンクf3〜リンクf8の区間は一般道路対象下り坂条件を満たさない。
このように対象下り坂区間が抽出され、その抽出された対象下り坂区間に対して下り坂制御が実行される。
【0101】
(運行支援装置からECUへの情報提供)
演算部61は、現在位置Pnから目的地までの経路(即ち、走行予定経路)に含まれる対象下り坂区間を上述した一般道路対象下り坂条件及び高速道路対象下り坂条件に従って探索する。対象下り坂区間が見つかった場合、車両10が下り坂制御区間(プレユース区間の開始地点)の開始地点に達したとき、演算部61はECU40へ下り坂制御の開始すべき旨の通知を送信する。ECU40は、この演算部61からの通知に従って下り坂制御を開始する。
【0102】
その後、車両10が下り坂制御区間の終了地点(対象下り坂区間の終了地点)に達したとき、演算部61はECU40へ下り坂制御の終了すべき旨の通知を送信する。ECU40は、この演算部61からの通知に従って下り坂制御を開始する。ECU40は、この演算部61からの通知に従って下り坂制御を終了する。
【0103】
(具体的作動)
次に、ECU40の具体的作動について説明する。
<ECUによる駆動力制御>
第1制御装置は、上述したように、下り坂制御において目標残容量SOC*を変更する。そこで、先ず、目標残容量SOC*の変更により、機関23、第1電動機21及び第2電動機22の運転がどのように変更されるかについて、駆動力制御ルーチンを用いて説明する。
【0104】
ECU40のCPU41(以下、単に「CPU」とも称呼される)は、
図6にフローチャートにより表された「駆動力制御ルーチン」を所定の時間が経過する毎に実行する。従って、適当なタイミングとなると、CPUは、
図6のステップ600から処理を開始し、以下に述べるステップ605乃至ステップ615の処理を順に行い、ステップ620に進む。
【0105】
ステップ605:CPUは、
図7に示される「アクセル操作量Ap及び車速Vsと、リングギア要求トルクTr*と、の間の関係を定めたルックアップテーブル」にアクセル操作量Ap及び車速Vsを適用することによってリングギア要求トルクTr*を決定する。リングギア要求トルクTr*は、運転者が車両10に要求する駆動輪27に作用するトルクと比例関係にある。更に、CPUは、リングギア要求トルクTr*とリングギア回転速度Nrとの積を車両要求出力Pr*として算出する(Pr*=Tr*×Nr)。リングギア回転速度Nrは車速Vsと比例関係にある。
【0106】
ステップ610:CPUは、別途算出されている実際の残容量SOC及び目標残容量SOC*の差分である残容量差分ΔSOC(即ち、ΔSOC=SOC−SOC*)に基づいて充電要求出力Pb*を決定する。より具体的に述べると、CPUは、
図8に示される「残容量差分ΔSOCと、充電要求出力Pb*と、の関係を定めたルックアップテーブル」に残容量差分ΔSOCを適用することによって充電要求出力Pb*を決定する。
【0107】
図8から理解されるように、残容量差分ΔSOCが大きくなるほど充電要求出力Pb*が小さい値に設定される。従って、実際の残容量SOCがある値であるとき、目標残容量SOC*が減少させられれば、残容量差分ΔSOCが大きくなるので、充電要求出力Pb*は小さくなる。充電要求出力Pb*の上限値はPbmax(Pbmax>0)であり、設定される充電要求出力Pb*の下限値はPbmin(Pbmin<0)である。なお、下り坂制御の実行の有無及び残容量差分ΔSOCの値によらず、残容量SOCが残容量上限値Smax以上であるとき、充電要求出力Pb*は下限値Pbminに設定され、残容量SOCが残容量下限値Smin以下であるとき、充電要求出力Pb*は上限値Pbmaxに設定される。
【0108】
ステップ615:CPUは、車両要求出力Pr*と充電要求出力Pb*との和に損失Plossを加えた値を機関要求出力Pe*として算出する(即ち、Pe*=Pr*+Pb*+Ploss)。
【0109】
次に、CPUはステップ620に進み、機関要求出力Pe*が出力閾値Pethよりも大きいか否かを判定する。出力閾値Pethは、機関23の出力が出力閾値Peth以下で運転されると、機関23の運転効率が所定効率よりも低くなるような値に設定されている。加えて、出力閾値Pethは、充電要求出力Pb*が上限値Pbmaxに設定されているとき、機関要求出力Pe*が出力閾値Pethよりも大きくなるように設定されている。
【0110】
(ケース1:Pe*>Peth)
機関要求出力Pe*が出力閾値Pethより大きい場合、CPUはステップ620にて「Yes」と判定してステップ625に進み、現時点において機関23が停止中であるか否かを判定する。機関23が停止中であると、CPUはステップ625にて「Yes」と判定してステップ630に進み、機関23の運転を開始する処理を実行する。次いで、CPUはステップ635に進む。これに対し、機関23が運転中であると、CPUはステップ625にて「No」と判定してステップ635に直接進む。
【0111】
CPUは、以下に述べるステップ635乃至ステップ660の処理を順に行う。その後、CPUはステップ695に進んで本ルーチンを一旦終了する。
【0112】
ステップ635:CPUは、機関要求出力Pe*と等しい出力が機関23から出力され、且つ、機関23の運転効率が最良となるように目標機関回転速度Ne*及び目標機関トルクTe*を決定する。即ち、CPUは、機関要求出力Pe*に応じた最適機関動作点に基づいて目標機関回転速度Ne*及び目標機関トルクTe*を決定する。
【0113】
ステップ640:CPUは、上記式(1)にリングギア回転速度Nr及び目標機関回転速度Ne*を代入することにより目標MG1回転速度Nm1*を算出する。更に、CPUは、目標MG1回転速度Nm1*を実現する目標第1電動機トルク(目標MG1トルク)Tm1*を決定する。
【0114】
ステップ645:CPUは、リングギア要求トルクTr*と、機関23が目標機関トルクTe*に等しいトルクを発生させたときにリングギアに作用するトルクと、の差分である不足トルクを算出する。更に、CPUは、その不足トルクを第2電動機22によって補うために必要となるトルクである目標第2電動機トルク(目標MG2トルク)Tm2*を算出する。
【0115】
ステップ650:CPUは、機関23が出力する機関トルクTeが目標機関トルクTe*と等しくなり且つ機関回転速度NEが目標機関回転速度Ne*と等しくなるように、機関23を制御する。
ステップ655:CPUは、第1電動機21が発生させるトルクTm1が目標MG1トルクTm1*と等しくなるように第1インバータ33を制御する。
ステップ660:CPUは、第2電動機22が発生させるトルクTm2が目標MG2トルクTm2*と等しくなるように第2インバータ34を制御する。
【0116】
(ケース2:Pe*≦Peth)
機関要求出力Pe*が出力閾値Peth以下である場合、CPUがステップ620に進んだとき、CPUはそのステップ620にて「No」と判定してステップ665に進み、現時点において機関23が運転中であるか否かを判定する。
【0117】
機関23が運転中であると、CPUはステップ665にて「Yes」と判定してステップ670に進み、機関23の運転を停止する処理を実行し、その後、ステップ675に進む。これに対し、機関23が停止中であると、CPUはステップ665にて「No」と判定してステップ675に直接進む。
【0118】
ステップ675にてCPUは、目標MG1トルクTm1*の値を「0」に設定する。更に、CPUはステップ680に進み、リングギアに作用するトルクがリングギア要求トルクTr*となるために第2電動機22が発生すべきトルクである目標MG2トルクTm2*を算出する。次いで、CPUはステップ655乃至ステップ660に進む。
以上のように、機関23、第1電動機21及び第2電動機22が制御される。
【0119】
(具体的作動−運行支援装置による対象下り坂区間の探索)
次に、運行支援装置60の具体的作動について説明する。
演算部61のCPU66は、運転者が目的地を入力したとき及び既に探索された対象下り坂区間の終了地点を車両10が通過したとき、
図9にフローチャートにより表された「制御区間設定処理ルーチン」を実行する。
【0120】
従って、適当なタイミングとなると、CPU66は、
図9のステップ900から処理を開始し、ステップ905に進み、現在位置Pnから目的地までの走行予定経路(リンクの組合せ)を地図データベースから抽出する。なお、本ルーチンが目的地入力後に初めて実行される場合、CPU66は現在位置Pnと目的地とに基づいて走行予定経路を決定し、その走行予定経路のリンクの組合せを抽出する。
【0121】
次いでCPU66は、ステップ910に進み、走行予定経路上の現在位置Pnよりもプレユース距離Dpだけ離れた地点以遠にある最も近い対象下り坂区間を探索する。対象下り坂区間の探索処理の具体的な内容については後述される。次いでCPU66は、ステップ915に進み、ステップ910の探索の結果、対象下り坂区間が存在しているか否かを判定する。
【0122】
対象下り坂区間が存在していれば、CPU66はステップ915にて「Yes」と判定してステップ920に進み、走行予定経路上の対象下り坂区間の開始地点よりもプレユース距離Dpだけ手前の地点を下り坂制御の開始地点Psとして設定する。加えて、CPU66は、対象下り坂区間の終了地点を下り坂制御の終了地点Peとして設定する。設定された開始地点Ps及び終了地点PeはRAM68に記憶される。次いでCPU66は、ステップ995に進んで本ルーチンを終了する。
【0123】
なお、対象下り坂区間が存在していなければ、CPU66はステップ915にて「No」と判定してステップ995へ直接進む。
【0124】
CPU66は、
図9のステップ910の処理によって対象下り坂区間の探索するとき、
図10にフローチャートにより表された「対象下り坂探索処理ルーチン」を実行する。CPU66は、対象下り坂区間の探索に成功したとき、その時点で本ルーチン(
図10のルーチン)を終了してステップ915に進む。或いはCPU66は、走行予定経路に対象下り坂区間が含まれていないことが判明したときにも本ルーチンを終了してステップ915に進む。
【0125】
より具体的に述べると、CPU66は、本ルーチンの実行時、走行予定経路上の現在位置Pnよりもプレユース距離Dpだけ離れた地点以遠にあるリンクを車両10が走行する順に抽出して得られる探索リンクのそれぞれを精査し、あるリンクが対象下り坂区間の終了リンクであることが判明すれば、その時点で本ルーチンを終了する。或いはCPU66は、走行予定経路の最終リンクを精査しても対象下り坂区間が発見できなければ、その時点で本ルーチンを終了する。
【0126】
そのためCPU66は、その時点で精査されているリンク(精査リンク)を表す変数iを設定する。CPU66は、本ルーチンの開始時、変数iの値を「1」に設定し、精査リンクが次のリンク(車両10からより離れた隣のリンク)に移る度に変数iの値を「1」だけ加える。CPU66は、変数iの値が走行予定経路の最後のリンクに対応する値になっても対象下り坂区間を発見できなければ、本ルーチンを終了する。
【0127】
以下、変数iの値に対応するリンク(即ち、i番目の探索リンク)は単に、「i番目のリンク」とも称呼される。加えて、本ルーチンにおいて精査リンクを特定するため、「リンク番号」が用いられる。例えば、本ルーチンにおいて3番目に精査されるリンクのリンク番号は「3」である。加えて、本ルーチンにおいて、対象下り坂区間である可能性がある区間は「候補区間」とも称呼される。
【0128】
CPU66は、本ルーチンの実行中、候補区間開始リンクLstaの値として、その時点の候補区間の開始リンク(最も車両10に近いリンク)のリンク番号を設定し、候補区間終了リンクLendの値として、その時点の候補区間の終了リンク(最も車両10から遠いリンク)のリンク番号を設定する。候補区間開始リンクLstaの値が「0」であるとき、その時点において候補区間が存在していない(見つかっていない)ことを意味する。
【0129】
候補区間が存在しているとき、CPU66は、候補区間合計距離Dsumの値として「その時点の候補区間の長さ」を設定し、候補区間合計標高差Hsumの値として「その時点の候補区間の開始地点と終了地点との標高差」を設定する。候補区間の終了地点が候補区間の開始地点よりも低ければ、候補区間合計標高差Hsumは負の値になる(即ち、Hsum<0)。
【0130】
候補区間に平坦リンク(平坦区間)が含まれていれば、CPU66は、平坦区間開始リンクFstaの値として「平坦区間の最初のリンクのリンク番号」を設定し、平坦区間合計距離dsumの値として「その時点の平坦区間の長さ」を設定する。
【0131】
候補区間が一般道路対象下り坂条件及び高速道路対象下り坂条件のいずれかを満たしていれば、CPU66は、対象下り坂区間抽出フラグXslpを「1」に設定する。この時点の候補区間終了リンクが走行予定経路の終了リンクでなければ、CPU66は、候補区間に次のリンクを加えても一般道路対象下り坂条件及び高速道路対象下り坂条件のいずれかが満たされるか否かを判定する。
【0132】
平坦区間合計距離dsumが平坦距離閾値Fthより長くなったとき、対象下り坂区間抽出フラグXslpの値が既に「1」に設定されていれば、CPU66は、「その時点の候補区間の平坦区間開始リンクFstaよりも手前の区間」を対象下り坂区間として抽出する。一方、平坦区間合計距離dsumが平坦距離閾値Fthより長くなったとき、対象下り坂区間抽出フラグXslpの値が「0」であれば、CPU66は、候補区間開始リンクLstaの値を「0」に設定して新たな候補区間の探索を開始する。
【0133】
加えて、CPU66は、候補区間道路種別Rtの値として、その時点の候補区間の道路種別(一般道路及び高速道路のいずれか)に対応する値を設定する。具体的には、候補区間が一般道路により構成されているとき、CPU66は、候補区間道路種別Rtの値を「1」に設定する。一方、候補区間が高速道路により構成されているとき、CPU66は、候補区間道路種別Rtの値を「2」に設定する。
【0134】
候補区間が存在しているとき「候補区間の次のリンク(即ち、その時点の候補区間の終了リンクの次のリンク)」の道路種別が候補区間を構成するリンクの道路種別と異なっていれば、その「候補区間の次のリンク」は上述した平坦距離閾値Fthよりも長い平坦区間と同様に処理される。具体的には、そのとき対象下り坂区間抽出フラグXslpの値が「1」に設定されていれば、CPU66は、その時点の候補区間を対象下り坂区間として抽出する。一方、対象下り坂区間抽出フラグXslpの値が「0」であれば、CPU66は、候補区間開始リンクLstaの値を「0」に設定して新たな候補区間の探索を開始する。
【0135】
適当なタイミングとなると、CPU66は、
図10のステップ1000から処理を開始し、ステップ1002に進み、初期化処理を実行する。より具体的に述べると、CPU66は、走行予定経路上の現在位置Pnよりもプレユース距離Dpだけ離れた地点以遠にあるリンクを車両10が走行する順に抽出して探索リンクを取得する。更に、CPU66は、変数iの値を「1」に設定する。
【0136】
加えて、CPU66は、候補区間合計距離Dsum、候補区間合計標高差Hsum、平坦区間合計距離dsum、平坦区間開始リンクFsta、候補区間開始リンクLsta、候補区間終了リンクLend及び対象下り坂区間抽出フラグXslpの値をそれぞれ「0」に設定する。次いで、CPU66は、ステップ1003に進み、候補区間道路種別Rtの値を「0」に設定する。
【0137】
(ケース1)下り坂区間に平坦リンクを含む場合
この場合について、
図4(B)に示された例を参照しながら説明する。この場合、CPU66は、ステップ1003の処理の後、ステップ1005に進み、候補区間開始リンクLstaの値が「0」であるか又は候補区間道路種別Rtがi番目のリンクの道路種別Rt(i)と等しいか否かを判定する。
【0138】
ステップ1005が初めて実行されるとき、候補区間道路種別Rtは「0」であるので1番目のリンクの道路種別Rt(1)(この場合、一般道路を表す「1」)とは異なるが、候補区間開始リンクLstaの値は「0」である。そのため、CPU66は、ステップ1005にて「Yes」と判定してステップ1010に進み、道路種別Rt(i)が一般道路であるか否かを判定する。上述したように、リンクb1は一般道路であるので、CPU66は、ステップ1010にて「Yes」と判定してステップ1012に進み、勾配閾値Tdegの値を勾配閾値degth1に設定し、標高差閾値Thの値を標高差閾値Hth1に設定する。
【0139】
次いで、CPU66はステップ1020に進み、i番目のリンクの平均勾配Gr(i)が勾配閾値Tdegよりも小さいか否か(即ち、このリンクが下り勾配リンクであるか否か)を判定する。ステップ1020が初めて実行されるとき、変数iの値は「1」であるので、CPU66は、
図4(B)のリンクb1(即ち、1番目のリンク)が下り勾配リンクであるか否かを判定する。上述したように、リンクb1は平坦リンク(具体的には、上り坂区間)であるので、CPU66はステップ1020にて「No」と判定してステップ1060に進む。
【0140】
ステップ1060にてCPU66は、候補区間開始リンクLstaの値が「0」より大きいか否かを判定する。いま候補区間開始リンクLstaの値は「0」であるので、CPU66は、ステップ1060にて「No」と判定してステップ1045に進み、変数iの値に「1」を加える。
【0141】
次いで、CPU66は、ステップ1047に進み、変数iが探索リンクを構成するリンクの総数(本例において、「10」)より大きいか否かを判定する。いま変数iは「2」であるので、変数iはリンクの総数より小さい。従って、CPU66はステップ1047にて「No」と判定してステップ1005に進む。
【0142】
このとき(即ち、ステップ1005が2回目に実行されるとき)候補区間開始リンクLstaの値は「0」である(候補区間道路種別Rtの値は「0」であって道路種別Rt(2)(この場合、一般道路を表す「1」)とは異なるが)ので、CPU66は、ステップ1005にて「Yes」と判定する。次いで、CPU66は、ステップ1010乃至ステップ1012、ステップ1020、ステップ1060、ステップ1045乃至ステップ1047及びステップ1005乃至ステップ1012の処理を実行し、ステップ1020に進む。
【0143】
このとき、変数iの値は「3」であり、3番目のリンク(即ち、リンクb3)は下り勾配リンク(即ち、リンクb3は勾配閾値Tdeg(この場合、勾配閾値degth1)よりも急な下り坂)である。従って、CPU66は、ステップ1020にて「Yes」と判定してステップ1025に進み、候補区間開始リンクLstaの値が「0」であるか否かを判定する。
【0144】
いま候補区間開始リンクLstaの値は「0」であるので、CPU66は、ステップ1025にて「Yes」と判定してステップ1030に進み、候補区間開始リンクLstaの値を変数i(この場合、「3」)に設定する。加えて、CPU66は、候補区間合計距離Dsumの値を「0」に設定し、候補区間合計標高差Hsumの値を「0」に設定する。更に、CPU66は、候補区間道路種別Rtの値を3番目のリンクの道路種別Rt(3)(この場合、一般道路を表す「1」)に設定する。
【0145】
次いで、CPU66は、ステップ1035に進み、候補区間合計距離Dsumにi番目のリンクの長さ(そのリンクの開始地点と終了地点との距離)L(i)を加える。加えて、CPU66は、候補区間合計標高差Hsumにi番目のリンクの標高差ΔH(i)を加える。更に、CPU66は、平坦区間合計距離dsumの値を「0」に設定し、平坦区間開始リンクFstaの値を「0」に設定する。
【0146】
次いで、CPU66は、ステップ1040に進み、候補区間合計距離Dsumが距離閾値Dthよりも長く、且つ、候補区間合計標高差Hsumが負の値であって、その絶対値が標高差閾値Thより大きいか否かを判定する。現時点ではいずれの条件も満たさないので、CPU66は、ステップ1040にて「No」と判定してステップ1045に進む。
【0147】
CPU66がステップ1020を4回目(即ち、変数iの値が「4」であるとき)に実行するとき、リンクb4は下り勾配リンクであるので、CPU66は、ステップ1020にて「Yes」と判定してステップ1025に進む。いま候補区間開始リンクLstaの値は「3」であるので、ステップ1025にてCPU66は「No」と判定してステップ1035に直接進む。
【0148】
CPU66がステップ1020を6回目(即ち、変数iの値が「6」であるとき)に実行するとき、リンクb6は平坦リンクであるので、CPU66は、ステップ1020にて「No」と判定してステップ1060に進む。いま候補区間開始リンクLstaの値は「3」であるので、CPU66は、ステップ1060にて「Yes」と判定してステップ1065に進み、平坦区間開始リンクFstaの値が「0」であるか否かを判定する。
【0149】
いま平坦区間開始リンクFstaの値は「0」であるので、CPU66は、ステップ1065にて「Yes」と判定してステップ1070に進み、平坦区間開始リンクFstaの値を変数i(この場合、「6」)に設定する。
【0150】
次いで、CPU66は、ステップ1075に進み、平坦区間合計距離dsumの値にi番目のリンクの長さL(i)を加える。その結果、平坦区間合計距離dsumの値は、リンクb6に対応する区間の距離Db6に等しくなる。加えて、CPU66は、候補区間合計距離Dsumにi番目のリンクの長さL(i)を加え、候補区間合計標高差Hsumにi番目のリンクの標高差ΔH(i)を加える。
【0151】
次いで、CPU66は、ステップ1077に進み、平坦区間合計距離dsumが平坦距離閾値Fthよりも長いか否かを判定する。距離Db6は平坦距離閾値Fthより短いので、CPU66は、ステップ1077にて「No」と判定してステップ1045に進む。
【0152】
CPU66がステップ1020を7回目(即ち、変数iの値が「7」であるとき)に実行するときリンクb7は下り勾配リンクであるので、CPU66は、ステップ1020にて「Yes」と判定してステップ1025、ステップ1035、ステップ1040、ステップ1045及びステップ1047を経由してステップ1005に進む。この際、ステップ1035にてCPU66は、平坦区間合計距離dsumの値を「0」に設定し、平坦区間開始リンクFstaの値を「0」に設定する。
【0153】
CPU66がステップ1020を8回目(即ち、変数iの値が「8」であるとき)に実行するとき、リンクb8は下り勾配リンクであるので、CPU66は、ステップ1020にて「Yes」と判定してステップ1025及びステップ1035の処理を経てステップ1040に進む。
【0154】
この時点で、候補区間合計距離Dsum(即ち、地点Pb3から地点Pb9までの距離)は距離閾値Dthよりも長く、且つ、候補区間合計標高差Hsum(即ち、地点Pb3と地点Pb9との標高差Hb)が負の値であって、その絶対値が標高差閾値Th(即ち、標高差閾値Hth1)より大きい。従って、CPU66は、ステップ1040にて「Yes」と判定してステップ1042に進み、対象下り坂区間抽出フラグXslpの値を「1」に設定する。次いで、CPU66は、ステップ1045に進む。
【0155】
その後、CPU66がステップ1020を9回目(即ち、変数iの値が「9」であるとき)に実行するとき、リンクb9は平坦リンクであるので、CPU66はステップ1020にて「No」と判定してステップ1060に進む。次いで、CPU66は、ステップ1060乃至ステップ1075の処理を経てステップ1077に進む。この時点で、平坦区間開始リンクFstaの値は「9」となっている。平坦区間合計距離dsumはリンクb9の長さ(距離Db9)に等しく且つ平坦距離閾値Fthより短いので、ステップ1077にてCPU66は「No」と判定してステップ1045に進む。
【0156】
更に、CPU66がステップ1020を10回目(即ち、変数iの値が「10」であるとき)に実行するとき、リンクb10は平坦リンクであるので、CPU66はステップ1020にて「No」と判定してステップ1060に進む。次いで、CPU66は、ステップ1060、ステップ1065及びステップ1075の処理を経てステップ1077に進む。
【0157】
この時点で、平坦区間合計距離dsumは、「リンクb9の長さ(距離Db9)及びリンクb10の長さ(距離Db10)の合計」(即ち、地点Pb9から地点Pb11までの距離)に等しくなっている。地点Pb9から地点Pb11までの距離は平坦距離閾値Fthよりも長いので、ステップ1077にてCPU66は、「Yes」と判定してステップ1080に進み、対象下り坂区間抽出フラグXslpの値が「1」であるか否かを判定する。
【0158】
上述したように、この時点で対象下り坂区間抽出フラグXslpの値は「1」であるのでCPU66は、ステップ1080にて「Yes」と判定してステップ1085に進み、候補区間終了リンクLendの値を平坦区間開始リンクFstaの値よりも「1」だけ低い値に設定する。具体的には、この時点で平坦区間開始リンクFstaの値は「9」であるので(即ち、平坦区間の開始リンクがリンクb9であったので)、候補区間終了リンクLendの値は「8」となる。次いで、CPU66は、ステップ1095に進み、本ルーチンを終了する。
【0159】
従って、本例では、本ルーチンの終了時、対象下り坂区間抽出フラグXslpの値は「1」であり、候補区間開始リンクLstaが「3」であり且つ候補区間終了リンクLendが「8」である状態となっている。換言すれば、本ルーチンの実行によって対象下り坂区間としてリンクb3〜リンクb8が抽出されている。
【0160】
(ケース2)走行予定経路の終了リンクと対象下り坂区間終了リンクが同一となる場合
次に、この場合について、
図4(A)に示された例を参照しながら説明する。この場合、CPU66がステップ1020を9回目(即ち、変数iの値が「9」であるとき)に実行するとき、CPU66はステップ1020にて「Yes」と判定してステップ1025に進み、更に、ステップ1035に進む。
【0161】
ステップ1035の処理の実行後、候補区間合計距離Dsum(即ち、地点Pa5から地点Pa10までの距離)は距離閾値Dthよりも大きくなっている。加えて、候補区間合計標高差Hsum(即ち、地点Pa5の標高と地点Pa10の標高との差分)は負の値であって、その絶対値は標高差閾値Thよりも大きくなっている。従って、CPU66は、ステップ1040にて「Yes」と判定してステップ1042に進み対象下り坂区間抽出フラグXslpの値を「1」に設定する。
【0162】
その後、CPU66がステップ1020を10回目(即ち、変数iの値が「10」であるとき)に実行するとき、CPU66はステップ1020にて「Yes」と判定しステップ1025及びステップ1035乃至ステップ1045の処理を実行し、ステップ1047に進む。
【0163】
このとき、変数iは「11」となっているので、CPU66はステップ1047にて「Yes」と判定してステップ1050に進み、対象下り坂区間抽出フラグXslpが「1」であり且つ候補区間終了リンクLendの値が「0」であるか否かを判定する。
【0164】
現時点において、対象下り坂区間抽出フラグXslpが「1」であり且つ候補区間終了リンクLendの値が「0」であるので、CPU66はステップ1050にて「Yes」と判定してステップ1052に進み、候補区間終了リンクLendの値を変数iより「1」だけ小さい値(この場合、「10」)に設定する。次いで、CPU66はステップ1095に進む。
【0165】
従って、本例では、本ルーチンの終了時、対象下り坂区間抽出フラグXslpの値は「1」であり、候補区間開始リンクLstaが「5」であり且つ候補区間終了リンクLendが「10」である状態となっている。換言すれば、本ルーチンの実行によって対象下り坂区間としてリンクa5〜リンクa10が抽出されている。
【0166】
(ケース3)下り坂区間の途中に長い平坦リンクが含まれる場合
次に、この場合について、
図4(C)に示された例を参照しながら説明する。この場合、リンクc1は下り勾配リンクであるので、CPU66がステップ1020を1回目に実行するとき、CPU66は、ステップ1020及びステップ1025のそれぞれにて「Yes」と判定し、ステップ1030に進んで候補区間開始リンクLstaの値を「1」に設定する。更に、CPU66は、候補区間合計距離Dsumの値を「0」に設定し、候補区間合計標高差Hsumの値を「0」に設定し、候補区間道路種別Rtの値を道路種別Rt(1)(この場合、一般道路を表す「1」)に設定する。
【0167】
その後、CPU66がステップ1020を4回目(即ち、変数iの値が「4」であるとき)に実行するとき、リンクc4は平坦リンクであるので、CPU66はステップ1020にて「No」と判定してステップ1060に進み、ステップ1060及びステップ1065のそれぞれにて「Yes」と判定してステップ1070に進み平坦区間開始リンクFstaの値を「4」に設定する。
【0168】
更に、CPU66がステップ1020を5回目(即ち、変数iの値が「5」であるとき)に実行するとき、CPU66はステップ1020にて「No」と判定してステップ1060に進む。次いで、CPU66は、ステップ1060にて「Yes」と判定してステップ1065に進んだとき、平坦区間開始リンクFstaの値は「4」であるので、ステップ1065にて「No」と判定してステップ1075に直接進む。
【0169】
ステップ1075において、平坦区間合計距離dsumが「リンクc4の長さ(距離Dc4)及びリンクc5の長さ(距離Dc5)の合計」となり、平坦区間開始リンクFstaより長くなる。従って、CPU66はステップ1077にて「Yes」と判定してステップ1080に進み、ステップ1080にて「No」と判定してステップ1090に進む。ステップ1090にてCPU66は、候補区間開始リンクLstaの値を「0」に設定する。次いで、CPU66はステップ1045に進む。
【0170】
更に、CPU66がステップ1020を6回目(即ち、変数iの値が「6」であるとき)に実行するとき、CPU66は、ステップ1020及びステップ1025のそれぞれにて「Yes」と判定してステップ1030に進み、候補区間開始リンクLstaの値を「6」に設定する。更に、CPU66は、候補区間合計距離Dsumの値を「0」に設定し、候補区間合計標高差Hsumの値を「0」に設定し、候補区間道路種別Rtの値を道路種別Rt(6)(この場合、一般道路を表す「1」)に設定する。
【0171】
その後、CPU66がステップ1020を10回目(即ち、変数iの値が「10」であるとき)に実行するとき、ステップ1020及びステップ1060のそれぞれにて「No」と判定してステップ1045に進む。次いで、CPU66は、ステップ1047にて「Yes」と判定してステップ1050に進む。この時点において、対象下り坂区間抽出フラグXslpの値は「0」であり且つ候補区間終了リンクLendの値は「0」であるので、CPU66は、ステップ1050にて「No」と判定してステップ1095に直接進む。
【0172】
即ち、この場合、精査リンクがリンクc5であるとき、リンクc1〜リンクc5は対象下り坂区間でないことが判明している。加えて、精査リンクがリンクc6であるとき、候補区間の開始リンクとしてリンクc6が設定される。しかし、精査リンクがリンクc10となっても、即ち、候補区間がリンクc6〜リンクc10となっても、この候補区間が対象下り坂区間でないことが判明している。換言すれば、本ルーチンの実行によって対象下り坂区間は抽出されない。
【0173】
(ケース4)走行予定経路が高速道路区間である場合
この場合について、
図5(A)に示された例を参照しながら説明する。この場合、CPU66は、ステップ1003の処理の後、ステップ1005に進んだとき、候補区間開始リンクLstaの値が「0」であるので、ステップ1005にて「Yes」と判定してステップ1010に進む。
【0174】
上述したように、リンクd1は高速道路であるので、CPU66は、ステップ1010にて「No」と判定してステップ1015に進み、勾配閾値Tdegの値を勾配閾値degth2に設定し、標高差閾値Thの値を標高差閾値Hth2に設定する。次いで、CPU66はステップ1020に進む。
【0175】
CPU66がステップ1020を3回目(即ち、変数iの値が「3」であるとき)に実行するとき、CPU66は、ステップ1020にて「Yes」と判定してステップ1025に進む。ステップ1025にてCPU66は、「Yes」と判定してステップ1030に進み、候補区間開始リンクLstaの値を「3」に設定する。更に、CPU66は、候補区間合計距離Dsumの値を「0」に設定し、候補区間合計標高差Hsumの値を「0」に設定し、候補区間道路種別Rtの値を道路種別Rt(3)(この場合、高速道路を表す「2」)に設定する。
【0176】
その後、CPU66がステップ1020を8回目(即ち、変数iの値が「8」であるとき)に実行するとき、CPU66は、ステップ1020、ステップ1025及びステップ1035の処理を経てステップ1040に進む。
【0177】
この時点で、候補区間合計距離Dsum(即ち、地点Pd3から地点Pd9までの距離)は距離閾値Dthよりも長く、且つ、候補区間合計標高差Hsum(即ち、地点Pd3と地点Pd9との標高差Hd)が負の値であって、その絶対値が標高差閾値Th(即ち、標高差閾値Hth2)より大きい。従って、CPU66は、ステップ1040にて「Yes」と判定してステップ1042に進む。
【0178】
その後、本ルーチンの終了時、候補区間開始リンクLstaが「3」であり候補区間終了リンクLendが「8」である状態となっている。換言すれば、本ルーチンの実行によって高速道路対象下り坂条件を総て満たす対象下り坂区間としてリンクd3〜リンクd8が抽出されている。
【0179】
(ケース5)走行予定経路の途中で道路種別が変わる場合(その1)
この場合について、
図5(B)に示された例を参照しながら説明する。本ルーチンの実行中、精査リンクがリンクe3であるとき、候補区間開始リンクLstaの値が「3」に設定される。
【0180】
更に、精査リンクがリンクe8であるとき、候補区間合計距離Dsum(即ち、地点Pe3から地点Pe8までの距離)は距離閾値Dthよりも長く、且つ、候補区間合計標高差Hsum(即ち、地点Pe3と地点Pe9との標高差He)が負の値であって、その絶対値が標高差閾値Th(即ち、標高差閾値Hth2)より大きくなっている。従って、このとき、対象下り坂区間抽出フラグXslpの値が「1」に設定される。
【0181】
その後、CPU66がステップ1005を9回目(即ち、変数iの値が「9」であって、精査リンクがリンクe9であるとき)に実行するとき、候補区間道路種別Rtが「2」(高速道路)に設定されている一方、道路留別Rt(9)は「1」(一般道路)である。そのため、CPU66は、ステップ1005にて「No」と判定してステップ1055に進み、平坦区間開始リンクFstaの値が「0」であるか否かを判定する。
【0182】
いま平坦区間開始リンクFstaの値は「0」であるので、CPU66は、ステップ1055にて「Yes」と判定してステップ1057に進み、平坦区間開始リンクFstaの値を変数iに設定する。次いで、CPU66はステップ1080に進む。
【0183】
いま対象下り坂区間抽出フラグXslpの値は「1」であるので、CPU66はステップ1080にて「Yes」と判定し、ステップ1085の処理を経てステップ1095に進む。従って、この場合、本ルーチンの実行によって対象下り坂区間としてリンクe3〜リンクe8が抽出されている。換言すれば、対象下り坂区間として高速道路区間(リンクe3〜リンクe8)と一般道路区間(リンクe9)とが混在した区間が抽出されることはない。
【0184】
(ケース6)走行予定経路の途中で道路種別が変わる場合(その2)
この場合について、
図5(C)に示された例を参照しながら説明する。本ルーチンの実行中、精査リンクがリンクf3であるとき、候補区間開始リンクLstaの値が「3」に設定される。次いで、精査リンクがf5であるとき、平坦区間開始リンクFstaの値が「5」に設定される。
【0185】
その後、CPU66がステップ1005を6回目(即ち、変数iの値が「6」であって、精査リンクがリンクf6であるとき)に実行するとき、候補区間道路種別Rtが「2」(高速道路)に設定されている一方、道路留別Rt(6)は「1」(一般道路)である。そのため、CPU66は、ステップ1005にて「No」と判定してステップ1055に進む。
【0186】
この時点で平坦区間開始リンクFstaの値は「5」であるから、CPU66は、ステップ1055にて「No」と判定してステップ1080に進む。この時点で対象下り坂区間抽出フラグXslpの値は「0」であるから、CPU66は、ステップ1080にて「No」と判定してステップ1090に進む。従って、この場合、CPU66は、リンクf7〜リンクf10の区間に対して候補区間の探索(従って、対象下り坂区間の探索)を行う。ただし、リンクf7〜リンクf10の区間は、一般道路対象下り坂条件及び高速道路対象下り坂条件のいずれも満たさないので、本ルーチンの実行によって対象下り坂区間は抽出されない。
【0187】
(具体的作動−運行支援装置による下り坂制御の実行)
CPU66は、下り坂制御を実行するため
図11にフローチャートにより表された「下り坂制御実行処理ルーチン」を所定の時間が経過する毎に実行する。従って、適当なタイミングとなると、CPU66は、
図11のステップ1100から処理を開始してステップ1105に進み、下り坂制御区間の開始地点Ps及び終了地点Peの少なくとも一方が設定されているか否かを判定する。
【0188】
開始地点Ps及び終了地点Peの少なくとも一方が設定されていれば、CPU66はステップ1105にて「Yes」と判定してステップ1110に進む。ステップ1110にてCPU66は、GPS受信部62が取得した現在位置Pnを取得する。次いでCPU66は、ステップ1115に進み、現在位置Pnが開始地点Psに一致しているか否かを判定する。
【0189】
現在位置Pnが開始地点Psに一致(実際には、±数10m)していれば、CPU66はステップ1115にて「Yes」と判定してステップ1120に進み、ECU40に対して下り坂制御の開始を指示する。指示を受信したECU40は、図示しないルーチンを実行して目標残容量SOC*を標準残容量Snから低側残容量Sdに変更する。更に、CPU66は、開始地点Psのデータを消去する。次いで、CPU66はステップ1195に進み、本ルーチンを一旦終了する。
【0190】
一方、現在位置Pnが開始地点Psと一致していなければ(開始地点Psが消去されている場合を含む。)、CPU66はステップ1115にて「No」と判定してステップ1125に進み、現在位置Pnが終了地点Peと一致しているか否かを判定する。
【0191】
現在位置Pnが終了地点Peに一致していれば、CPU66はステップ1125にて「Yes」と判定してステップ1130に進み、ECU40に対して下り坂制御の終了を指示する。指示を受信したECU40は、図示しないルーチンを実行して目標残容量SOC*を低側残容量Sdから標準残容量Snに変更する。更に、CPU66は、終了地点Peのデータを消去する。次いで、CPU66はステップ1195に進む。
【0192】
開始地点Ps及び終了地点Peがいずれも設定されていなければ、CPU66はステップ1105にて「No」と判定してステップ1195に直接進む。加えて、現在位置Pnが終了地点Peと一致していなければ、CPU66はステップ1125にて「No」と判定してステップ1195に直接進む。
【0193】
以上、説明したように、第1御装置(ECU40及び運行支援装置60)は、
車両の駆動源としての内燃機関(23)及び同駆動源としての電動機(第1電動機21及び第2電動機22)、並びに、前記電動機に電力を供給する蓄電池(31)を搭載し、前記電動機を用いて回生制動を行うとともに同回生制動により発生した電力を前記蓄電池に充電可能であり且つ前記内燃機関の出力を用いて発電した電力を前記蓄電池に充電可能に構成されたハイブリッド車両(10)に適用され、
前記車両に要求される要求駆動力(リングギア要求トルクTr*)を満たすように且つ前記蓄電池の残容量(SOC)が所定の目標残容量(SOC*)に近づくように前記内燃機関及び前記電動機を制御する制御部を備えるハイブリッド車両の制御装置であって、
前記制御部は、
前記車両の走行予定経路を取得し、前記走行予定経路に含まれる下り坂区間であって同下り坂区間の開始地点と終了地点との標高差の絶対値が所定の標高差閾値(標高差閾値Hth1及び標高差閾値Hth2)よりも大きい下り坂区間を対象下り坂区間として抽出する(
図9のステップ915及び
図10)対象下り坂区間抽出部と、
前記対象下り坂区間が抽出された場合、前記対象下り坂区間の開始地点よりも所定距離だけ手前にある下り坂制御開始地点から同対象下り坂区間の終了地点までの区間のうちの少なくとも同下り坂制御開始地点から同対象下り坂区間の開始地点までの区間を含む特定区間を前記車両が走行するとき前記目標残容量を同車両が同特定区間以外を走行する場合に比べて小さい残容量(低側残容量Sd)に変更する下り坂制御を実行する(
図11)下り坂制御部と、
を含み、
前記対象下り坂区間抽出部は、
前記車両が前記下り坂区間を走行するときの推定平均速度が第1速度であると推定される場合には同推定平均速度が同第1速度よりも低い第2速度であると推定される場合よりも前記標高差閾値を大きい値(標高差閾値Hth2)に設定する(
図10のステップ1010乃至ステップ1015)標高差閾値設定部を備えている。
【0194】
加えて、第1御装置は、
連続する道路区間の総てが高速道路及び高速道路以外の道路のうちの何れか一方のみの道路種別を有する道路区間からなる下り坂区間の中から前記対象下り坂区間を抽出するように構成され(上記条件(a1)及び(a2))、
前記下り坂区間の道路種別が前記高速道路であるとき前記推定平均速度が前記第1速度であると推定し、前記下り坂区間の道路種別が前記高速道路以外の道路であるとき前記推定平均速度が前記第2速度であると推定する(
図10のステップ1010乃至ステップ1015)ように構成されている。
【0195】
第1御装置によれば、下り坂区間を走行する際の車速Vsを考慮することによって対象下り坂区間を適切に抽出し、以て、下り坂制御の実行による燃費向上の効果を確実に得ることができる。加えて、第1御装置によれば、対象下り坂区間の走行によって残容量SOCが充分に上昇しないために残容量SOCが低い状態にて充放電が繰り返され、以て、蓄電池の劣化が促進される事象の発生を抑制することができる。
【0196】
<第2実施形態>
次に、本発明の第2実施形態に係るハイブリッド車両の制御装置(以下、「第2制御装置」とも称呼される。)について説明する。第1制御装置は、走行予定経路を構成するリンクの道路種別(一般道路及び高速道路のいずれか)に基づいて対象下り坂区間を抽出していた。これに対し、第2制御装置は、被判定区間を構成するリンクのそれぞれを車両10が走行するときの推定車速Veに基づいて対象下り坂区間を抽出する点のみにおいて第1制御装置と相違する。従って、以下、この相違点を中心に説明する。
【0197】
第2制御装置に係る運行支援装置71のデータベース63に記憶された地図データベースは、車両10が各リンクを走行するときの車速Vsの推定平均値である推定車速Veを含んでいる。なお、推定車速Veは後述するように学習される。演算部61は、被判定区間を構成するリンクの推定車速Veが速度閾値Vthより低いか否かに基づいて対象下り坂条件を区別する。
【0198】
推定車速Veが速度閾値Vthより低いリンクの集合は「低速区間」とも称呼され、推定車速Veが速度閾値Vth以上であるリンクの集合は「高速区間」とも称呼される。本例において、速度閾値Vthは60km/hである。
【0199】
演算部61は、車両10の走行予定経路に含まれる対象下り坂区間を探索するとき、被判定区間が低速区間であるか高速区間であるかに基づいて対象下り坂条件を使い分ける。対象下り坂区間は、低速区間及び高速区間のいずれか一方のみを含む。即ち、演算部61は、低速区間及び高速区間の両方が混在する区間を一つの対象下り坂区間として抽出しない。
【0200】
低速区間における下り勾配リンクは、リンクの平均勾配が勾配閾値degth1(ただし、degth1<0)により示される勾配よりも急な下り坂区間(即ち、勾配閾値degth1より勾配が急な下り坂区間)である。一方、高速区間における下り勾配リンクは、リンクの平均勾配が勾配閾値degth2(ただし、degth2<degth1)により示される勾配よりも急な下り坂区間(即ち、勾配閾値degth2より勾配が急な下り坂区間)である。
【0201】
被判定区間が低速区間であるときの対象下り坂条件(低速区間対象下り坂条件)は、以下の通りである。
(a3)低速区間のみによって構成される区間である。
(b1)開始リンク及び終了リンクが下り勾配リンク(即ち、勾配閾値degth1よりも勾配が急な下り坂区間)である。
(c)開始地点と終了地点との間の距離が距離閾値Dthよりも長い。
(d1)終了地点の標高が開始地点の標高よりも低く、その標高差が標高差閾値Hth1よりも大きい。
(e)被判定区間に含まれる連続した平坦リンク区間の距離が平坦距離閾値Fthよりも短い。
【0202】
一方、被判定区間が高速区間であるときの対象下り坂条件(高速区間対象下り坂条件)は、以下の通りである。
(a4)高速区間のみによって構成される区間である。
(b2)開始リンク及び終了リンクが下り勾配リンク(即ち、勾配閾値degth2よりも勾配が急な下り坂区間)である。
(c)開始地点と終了地点との間の距離が距離閾値Dthよりも長い。
(d2)終了地点の標高が開始地点の標高よりも低く、その標高差が標高差閾値Hth2よりも大きい(ただし、Hth2>Hth1)。
(e)被判定区間に含まれる連続した平坦リンク区間の距離が平坦距離閾値Fthよりも短い。
【0203】
(運行支援装置による推定車速Veの学習)
演算部61は、推定車速Veの学習を行うことにより、推定車速Veの精度を向上する。即ち、車両10の走行中、演算部61は、地図データベースに現在位置Pnを適用することによって車両10が走行しているリンクを特定する。演算部61は、車両10があるリンクを走行したとき、そのリンクの開始地点から終了地点までの距離と、車両10が実際に開始地点から終了地点まで走行するのに要した時間と、に基づいて平均車速Vaを算出する。
【0204】
車両10がそのリンクを初めて走行したとき、演算部61は、その平均車速Vaを推定車速Veとして地図データベースに追加する。或いは、車両10がそのリンクを複数回走行していれば、演算部61は、直近20回分の平均車速Vaの平均値を推定車速Veとして算出し、その推定車速Veを地図データベースに追加する。一方、地図データベースにおいて、車両10が走行したことのないリンクの推定車速Veは、各リンクに表される区間(道路)の最高速度(法定最高速度又は制限速度)に設定されている。
【0205】
(対象下り坂区間の例)
本実施形態における対象下り坂区間の例が
図12に示される。
図12は、5個のリンク(リンクg1〜リンクg5)によって構成される車両10の走行予定経路を示している。リンクg1〜リンクg5のそれぞれの推定車速Veは、それぞれ車速vg1〜車速vg5である。
【0206】
リンクg1〜リンクg3は高速区間である(即ち、vg1≧Vth、vg2≧Vth且つvg3≧Vth)。一方、リンクg4〜リンクg5は低速区間である(即ち、vg4<Vth且つvg5<Vth)。リンクg2〜リンクg4は下り勾配リンクであり、リンクg1及びリンクg5は平坦リンクである。
【0207】
リンクg2〜リンクg3を被判定区間として捉えると、リンクg2の開始地点Pg2からリンクg3の終了地点Pg4までの距離Dgは距離閾値Dthよりも長い。リンクg3の終了地点Pg4の標高はリンクg2の開始地点Pg2の標高よりも低く、その標高差(絶対値)Hgは標高差閾値Hth2よりも大きい。リンクg2〜リンクg3のそれぞれは下り勾配リンクであって平坦リンクではないので、平坦リンクの距離は「0」であって平坦距離閾値Fthよりも短い。従って、リンクg2〜リンクg3の区間は、上記条件(a4)、(b2)、(c)、(d2)及び(e)を総て満たすので、対象下り坂区間を構成する。
【0208】
例えば、リンクg2〜リンクg4を被判定区間として捉えると、被判定区間に低速区間と高速区間とが混在しているので、上記条件(a3)及び(a4)のいずれも満たされない。従って、低速区間対象下り坂条件及び高速区間対象下り坂条件のいずれも満たされないので、リンクg2〜リンクg4は対象下り坂区間を構成しない。
【0209】
(具体的作動−運行支援装置による対象下り坂区間の探索)
演算部61のCPU66は、
図9にフローチャートにより表された「制御区間設定処理ルーチン」を実行し、ステップ910の処理に進んだとき、
図13にフローチャートにより表された「対象下り坂探索処理ルーチン」を実行する。
図13のフローチャートに示されたステップであって
図10のフローチャートに示されたステップと同様の処理が実行されるステップには
図10と同一のステップ符号が付されている。
【0210】
本ルーチン(
図13の対象下り坂探索処理ルーチン)の実行中、候補区間が低速区間により構成されていれば、CPU66は、候補区間道路種別Ruの値を「1」に設定する。一方、候補区間が高速区間により構成されていれば、CPU66は、候補区間道路種別Ruの値を「2」に設定する。
【0211】
適当なタイミングとなると、CPU66は、
図13のステップ1300から処理を開始し、ステップ1002に進む。次いで、CPU66は、ステップ1303に進んで候補区間道路種別Ruの値を初期値として「0」に設定する。
【0212】
次いで、CPU66は、ステップ1305に進み、候補区間開始リンクLstaの値が「0」であるか又は候補区間道路種別Ruがi番目のリンクの道路種別Ru(i)と等しいか否かを判定する。CPU66は、ステップ1305にて「Yes」と判定したとき、ステップ1310に進んで道路種別Ru(i)が低速区間であるか否かを判定する。
【0213】
CPU66は、ステップ1310にて「Yes」と判定したとき、ステップ1012に進む。一方、CPU66は、ステップ1310にて「No」と判定したとき、ステップ1015に進む。なお、CPU66は、ステップ1305にて「No」と判定したとき、ステップ1055に進む。
【0214】
CPU66は、ステップ1025にて「Yes」と判定したとき、ステップ1330に進み、候補区間開始リンクLstaの値を変数iに設定する。加えて、CPU66は、候補区間合計距離Dsumの値を「0」に設定し、候補区間合計標高差Hsumの値を「0」に設定する。更に、CPU66は、候補区間道路種別Ruの値をi番目のリンクの道路種別Ru(i)に設定する。次いで、CPU66は、ステップ1035に進む。
【0215】
CPU66は、ステップ1052の処理を実行した後、及び、ステップ1085の処理を実行した後、ステップ1395に進み、本ルーチンを終了する。
【0216】
以上、説明したように、第2御装置(ECU40及び運行支援装置60)は、
前記下り坂区間を前記車両(10)又は前記車両以外の車両が過去に走行した際の平均速度(Va)に応じた値に基づいて前記推定平均速度(推定車速Ve)を推定するように構成されている。
【0217】
第2御装置によれば、対象下り坂区間を適切に抽出し、以て、下り坂制御の実行による燃費向上の効果を確実に得ることができる。加えて、第2御装置によれば、対象下り坂区間の走行によって残容量SOCが充分に上昇しないために残容量SOCが低い状態にて充放電が繰り返され、以て、蓄電池の劣化が促進される事象の発生を抑制することができる。
【0218】
<第3実施形態>
次に、本発明の第3実施形態に係るハイブリッド車両の制御装置(以下、「第3制御装置」とも称呼される。)について説明する。第2制御装置は、被判定区間を構成するリンクの推定車速Veが速度閾値Vthよりも低いか否か(即ち、リンクが低速区間であるか高速区間であるか否か)に応じて標高差閾値(標高差閾値Hth1及び標高差閾値Hth2のいずれか)を使い分けていた。これに対し、第3制御装置は、被判定区間を構成するリンクの推定車速Veに基づいて被判定区間の区間平均速度Vdを推定し、区間平均速度Vdに応じて標高差閾値Hthvを決定する点のみにおいて第2制御装置と相違する。従って、以下、この相違点を中心に説明する。
【0219】
第3制御装置に係る運行支援装置72の演算部61は、被判定区間を構成するリンクのそれぞれの推定車速Veに基づいて車両10が被判定区間を走行するときの区間平均速度Vdを算出する。演算部61は、
図14に示される「区間平均速度Vdと標高差閾値Hthvとの間の関係」に区間平均速度Vdを適用することによって標高差閾値Hthvを決定する。
【0220】
図14に示される関係は、ルックアップテーブル(マップ)の形式にてROM42に記憶されている。
図14から理解されるように、区間平均速度Vdが高くなるほど標高差閾値Hthvが大きくなる。標高差閾値Hthvは、上述した車両10の位置エネルギーから電気エネルギーへの変換に際して「車速Vsが区間平均速度Vdであるときに車両10に作用する空気抵抗に起因するエネルギー損失」を差し引いても電力量S10に相当する電気エネルギー量が得られる(蓄電池31に充電される)ように決定されている。
【0221】
本実施形態における下り勾配リンクは、リンクの平均勾配が勾配閾値degth3(ただし、degth3<0)により示される勾配よりも急な下り坂区間(即ち、勾配閾値degth3より勾配が急な下り坂区間)である。
【0222】
本実施形態における対象下り坂条件は、以下の通りである。
(b3)開始リンク及び終了リンクが下り勾配リンク(即ち、勾配閾値degth3よりも勾配が急な下り坂区間)である。
(c)開始地点と終了地点との間の距離が距離閾値Dthよりも長い。
(d3)終了地点の標高が開始地点の標高よりも低く、その標高差が標高差閾値Hthvよりも大きい。
(e)被判定区間に含まれる連続した平坦リンク区間の距離が平坦距離閾値Fthよりも短い。
【0223】
(対象下り坂区間の例)
本実施形態における対象下り坂区間の例が
図15に示される。
図15は、5個のリンク(リンクh1〜リンクh5)によって構成される車両10の走行予定経路を示している。リンクh2〜リンクh4のそれぞれの推定車速Veは、それぞれ車速vh2〜車速vh4である。リンクh2〜リンクh4は下り勾配リンクであり、リンクh1及びリンクh5は平坦リンクである。
【0224】
例えば、リンクh2を被判定区間として捉えると、「車両10がリンク2の開始地点Ph2からリンク2の終了地点Ph3まで走行するときの区間平均速度Vd」は車速vh2に等しい。この場合、演算部61は、区間平均速度vd2を
図14に示されるマップに適用することによって標高差閾値Hv2を取得する。
【0225】
リンク2の終了地点Ph3の標高はリンク2の開始地点Ph2の標高よりも低いが、その標高差(絶対値)Hg2は標高差閾値Hv2よりも小さい。加えて、リンクh2の開始地点Ph2からリンクh2の終了地点Ph3までの距離Dh2は距離閾値Dthよりも短い。従って、被判定区間(リンクh2)は、上記条件(c)及び(d3)を共に満たさないので、被判定区間は対象下り坂区間ではない。
【0226】
次いで、リンクh2〜リンクh3を被判定区間として捉える。この場合、演算部61は、車両10がリンク2の開始地点Ph2からリンク3の終了地点Ph4まで走行するときの区間平均速度Vdである区間平均速度vd3を算出する。より具体的に述べると、区間平均速度vd3は、被判定区間(リンクh2〜リンクh3)の距離(距離Dh2+距離Dh3)を車両10が走行するのに要する時間Ts3で除することによって算出される。
【0227】
車両10がリンクh2を走行するのに要する時間Sh2は距離Dh2を車速vh2で除することによって算出される(即ち、Sh2=Dh2/vh2)。同様に、車両10がリンクh3を走行するのに要する時間Sh3は距離Dh3を車速vh3で除することによって算出される(即ち、Sh3=Dh3/vh3)。従って、区間平均速度vd3は、下式(3)により表すことができる。
vd3=(Dh2+Dh3)/(Sh2+Sh3)
=(Dh2+Dh3)/(Dh2/vh2+Dh3/vh3) ・・・(3)
【0228】
演算部61は、区間平均速度vd3を
図14に示されるマップに適用することによって標高差閾値Hv3を取得する。リンク3の終了地点Ph4の標高はリンク2の開始地点Ph2の標高よりも低く、その標高差(絶対値)Hg3は標高差閾値Hv3よりも大きい。加えて、リンクh2の開始地点Ph2からリンクh3の終了地点Ph4までの距離(Dh2+Dh3)は距離閾値Dthよりも長い。従って、上記条件(b3)、(c)、(d3)及び(e)が総て満たされる。
【0229】
更に、リンクh2〜リンクh4を被判定区間として捉えると、演算部61は、車両10がリンク2の開始地点Ph2からリンク4の終了地点Ph5まで走行するときの区間平均速度Vdである区間平均速度vd4に基づいて標高差閾値Hv4を取得する。
【0230】
この場合、リンク4の終了地点Ph5の標高はリンク2の開始地点Ph2の標高よりも低く、その標高差(絶対値)Hg4は標高差閾値Hv4よりも大きい。加えて、リンクh2の開始地点Ph2からリンクh4の終了地点Ph5までの距離(Dh2+Dh3+Dh4)は距離閾値Dthよりも長い。従って、上記条件(b3)、(c)、(d3)及び(e)を総て満たされる。演算部61は、より多くの下り勾配リンクを含むリンクh2〜リンクh4を対象下り坂区間として抽出し、(リンクh2〜リンクh3の区間ではなく)リンクh2〜リンクh4の区間に対して下り坂制御を実行する。
【0231】
(具体的作動−運行支援装置による対象下り坂区間の探索)
演算部61のCPU66は、
図9にフローチャートにより表された「制御区間設定処理ルーチン」を実行し、ステップ910の処理に進んだとき、
図16にフローチャートにより表された「対象下り坂探索処理ルーチン」を実行する。
図16のフローチャートに示されたステップであって
図10のフローチャートに示されたステップと同様の処理が実行されるステップには
図10と同一のステップ符号が付されている。
【0232】
本ルーチン(
図16の対象下り坂探索処理ルーチン)の実行中、CPU66は、候補区間走行時間Tsumの値として「車両10が候補区間の開始地点から終了地点まで走行するのに要する時間」を設定する。更に、CPU66は、候補区間走行時間Tsumを候補区間合計距離Dsumで除することによって区間平均速度Vdを算出する。
【0233】
適当なタイミングとなると、CPU66は、
図16のステップ1600から処理を開始し、ステップ1002に進む。次いで、CPU66は、ステップ1620に進んでi番目のリンクの平均勾配Gr(i)が勾配閾値degth3よりも小さいか否か(即ち、このリンクが下り勾配リンクであるか否か)を判定する。
【0234】
CPU66は、ステップ1620にて「Yes」と判定したとき、ステップ1025に進む。一方、CPU66は、ステップ1620にて「No」と判定したとき、ステップ1060に進む。
【0235】
CPU66は、ステップ1025にて「Yes」と判定したとき、ステップ1630に進み、候補区間開始リンクLstaの値を変数iに設定する。加えて、CPU66は、候補区間合計距離Dsumの値を「0」に設定し、候補区間合計標高差Hsumの値を「0」に設定する。次いで、CPU66は、ステップ1632に進み、候補区間走行時間Tsumの値を「0」に設定する。その後、CPU66は、ステップ1035に進む。ステップ1035の処理の後、CPU66は、ステップ1636乃至図ステップ1639の処理を順に行い、ステップ1640に進む。
【0236】
ステップ1636:CPU66は、精査リンク走行時間t(i)の値として「車両10がi番目のリンクの開始地点から終了地点まで走行するのに要する時間」を設定する。具体的には、i番目のリンクの長さL(i)をそのリンクの推定車速Veで除することによって精査リンク走行時間t(i)を算出する。なお、この推定車速Veは、第2制御装置と同様、車両10が実際に走行した際に得られた平均車速Vaに基づいて学習・更新される。
ステップ1637:CPU66は、候補区間走行時間Tsumの値に精査リンク走行時間t(i)を加える。
【0237】
ステップ1638:CPU66は、候補区間合計距離Dsumを候補区間走行時間Tsumで除することによって区間平均速度Vdを算出する。
ステップ1639:CPU66は、区間平均速度Vdを
図14に示されるマップに適用することによって標高差閾値Hthvを取得する。
【0238】
ステップ1640にてCPU66は、候補区間合計距離Dsumが距離閾値Dthよりも長く、且つ、候補区間合計標高差Hsumが負の値であって、その絶対値が標高差閾値Hthvより大きいか否かを判定する。CPU66は、ステップ1640にて「Yes」と判定したとき、ステップ1042に進む。一方、CPU66は、ステップ1640にて「No」と判定したとき、ステップ1045に進む。
【0239】
第3御装置によれば、走行予定経路の道路種別(例えば、一般道路及び高速道路)が混在していても対象下り坂区間を適切に抽出することが可能となる。
【0240】
以上、本発明に係るハイブリッド車両の制御装置の実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、本発明の目的を逸脱しない限りにおいて種々の変更が可能である。例えば、各実施形態における運行支援装置は、GPS衛星からの信号を受信していた。しかし、運行支援装置は、GPS信号に替えて、或いは、GPS信号に加えて、他の衛星測位信号を受信しても良い。例えば、他の衛星測位信号は、GLONASS(Global Navigation Satellite System)及びQZSS(Quasi-Zenith Satellite System)であっても良い。
【0241】
加えて、各実施形態において下り坂制御が実行される場合、車両10が対象下り坂区間の終了地点に到達したとき、目標残容量SOC*が低側残容量Sdから標準残容量Snに変更されていた。しかし、下り坂制御が実行される場合、車両10が対象下り坂区間の開始地点に到達したとき、目標残容量SOC*が低側残容量Sdから標準残容量Snに変更されても良い。或いは、下り坂制御が実行される場合、車両10が対象下り坂区間の途中にあるとき、目標残容量SOC*が低側残容量Sdから標準残容量Snに変更されても良い。
【0242】
加えて、各実施形態において、運行支援装置は、対象下り坂区間を抽出するとき、走行予定経路上の現在位置Pnよりもプレユース距離Dpだけ離れた地点から目的地までの経路を対象としていた。しかし、運行支援装置は、対象下り坂区間を抽出するとき、走行予定経路上の現在位置Pnから目的地までの経路を対象としても良い。
【0243】
或いは、各実施形態に係る運行支援装置は、対象下り坂区間を抽出するとき、走行予定経路上の「現在位置Pn」から「現在位置Pnよりも所定距離(例えば、5km)だけ離れた地点」までの経路を対象としても良い。この場合、運行支援装置は、下り坂制御の実行の有無に拘わらず、定期的に(例えば、5分毎)又は車両10が所定距離を走行する毎に、対象下り坂区間抽出処理を実行しても良い。
【0244】
加えて、各実施形態において、運行支援装置は車両10が下り坂制御区間の開始地点Psに到達したとき及び終了地点Peに到達したとき、ECU40にその旨を通知していた。しかし、運行支援装置は、下り坂制御の実行を決定したとき、ECU40に対して現在位置Pnから開始地点Psまでの距離、及び、現在位置Pnから終了地点Peまでの距離を通知しても良い。この場合、ECU40は、車速Vsを時間に対して積分して得られる車両10の走行距離に基づいてその時点の現在位置Pnから開始地点Ps及び終了地点Peまでの距離を取得し、車両10が開始地点Ps又は終了地点Peに到達したときに目標残容量SOC*の値を変更しても良い。
【0245】
加えて、各実施形態における地図データベースは、各リンクの長さ及び勾配を含んでいた。しかし、地図データベースは、各リンクの勾配の替わりに各リンクの両端の標高を含んでいても良い。
【0246】
加えて、各実施形態において、運行支援装置は上記対象下り坂条件のいずれかが満たされる下り坂区間を対象下り坂区間であると判定していた。しかし、上記対象下り坂条件のそれぞれにおける条件(b1)、(b2)及び(b3)は割愛されても良い。この場合、被判定区間の開始リンク及び終了リンクのいずれか一方又は両方が下り勾配リンクでなくとも、他の条件が満たされれば、その被判定区間は対象下り坂区間であると判定される。
【0247】
或いは、上記対象下り坂条件における条件(c)は割愛されても良い。この場合、下り坂区間の開始地点と終了地点との間の距離が短くても、開始地点と終了地点と標高差が標高差閾値より大きければ、その被判定区間は対象下り坂区間であると判定される。
【0248】
加えて、第1実施形態及び第2実施形態において、勾配閾値degth2の絶対値は勾配閾値degth1の絶対値よりも大きかった(即ち、degth2<degth1<0)。しかし、勾配閾値degth2と勾配閾値degth1とは互いに等しい値であっても良い。
【0249】
加えて、第1実施形態及び第2実施形態において、標高差閾値Thは標高差閾値Hth1及び標高差閾値Hth2の2つの値のうちのいずれか一方に設定されていた。しかし、標高差閾値Thは3つ以上の値のうちのいずれかに設定されても良い。この場合、標高差閾値Thは、車両10が候補区間を走行するときの車速Vsの平均値(推定値)が高くなるほど標高差閾値Thの絶対値が大きくなるように設定される。
【0250】
加えて、第2実施形態において、車両10が走行したことのないリンクの推定車速Veは、各リンクに表される区間(道路)の最高速度(法定最高速度又は制限速度)に設定されていた。しかし、第2制御装置は、車両10が走行したことのないリンクを、そのリンクが一般道路であれば低速区間であると扱い、そのリンクが高速道路であれば高速区間であると扱っても良い。
【0251】
或いは、車両10の運転者が個々のリンクに対して、推定車速Veを登録しても良い。更に、運転者がリンクの属性(例えば、都市間高速道路、都市間高速道路以外の高速道路、国道、主要地方道及び県道等)毎に推定車速Veを登録しても良い。
【0252】
或いは、運行支援装置は車載通信部を備え、車載通信部を介した所定の通信センターとの無線データ通信によって走行予定経路を構成するリンクのそれぞれの推定車速Veを取得しても良い。この場合、車両10以外の車両が各リンクを実際に走行したときの平均車速Vaに基づいて推定車速Veが取得されていても良い。
【0253】
加えて、各実施形態に係る運行支援装置は、対象下り坂探索処理の実行時、走行予定経路において対象下り坂条件を満たす区間が抽出されても、「その下り坂区間に『その下り坂区間の次のリンク』を加えた区間」に対しても対象下り坂条件を満たすか否かを判定していた。しかし、各運行支援装置は、対象下り坂条件を満たす区間が抽出されたとき、対象下り坂探索処理を終了しても良い。
【0254】
加えて、本実施形態における地図データベースは、ハードディスクドライブによって構成されていた。しかし、地図データベースは、フラッシュメモリ等の記憶媒体を用いたソリッドステートドライブ(SSD)によって構成されても良い。