(57)【特許請求の範囲】
【請求項１】
車両の駆動源としての内燃機関及び同駆動源としての電動機、並びに、前記電動機に電力を供給する蓄電池を搭載し、前記電動機を用いて回生制動を行うとともに同回生制動により発生した電力を前記蓄電池に充電可能であり且つ前記内燃機関の出力を用いて発電した電力を前記蓄電池に充電可能に構成されたハイブリッド車両に適用され、
前記車両に要求される要求駆動力を満たすように且つ前記蓄電池の残容量が標準残容量に設定された目標残容量に近付くように前記内燃機関及び前記電動機を制御するハイブリッド車両の制御装置であって、
地図情報を記憶する第１記憶手段と、
前記地図情報に基づいて前記車両の現在地から目的地までの走行予定経路を決定する予定経路決定手段と、
前記走行予定経路を構成する道路区間のそれぞれに対して前記第１記憶手段に記憶されている勾配に関する既計測勾配情報に基づいて同走行予定経路内の所定の条件を満たす対象下り坂区間を探索し、前記対象下り坂区間がある場合に同対象下り坂区間の開始地点よりも所定の第１距離だけ手前にある下り坂制御開始地点から同対象下り坂区間の終了地点までの区間のうちの少なくとも同下り坂制御開始地点から同対象下り坂区間の開始地点までの区間を含む制御区間を決定する制御区間決定手段と、
前記制御区間を前記車両が走行するとき前記目標残容量を前記標準残容量よりも小さい第１残容量に変更する下り坂制御を実行する制御実行手段と、
前記車両が道路区間を走行したときに同走行した道路区間の実際の勾配に関する実勾配情報を、前記車両が備えるセンサにより検出された値に基づいて同走行した道路区間における平均勾配として取得する実勾配情報取得手段と、
前記実勾配情報を前記道路区間と関連付けて記憶する第２記憶手段と、
を備え、
前記制御区間決定手段は、
前記対象下り坂区間を探索する場合、前記走行予定経路を構成する道路区間に対して前記実勾配情報が前記第２記憶手段に記憶されているときには、その実勾配情報が記憶されている道路区間に対する前記既計測勾配情報に代えて前記実勾配情報を使用して前記対象下り坂区間を探索するように構成された、
ハイブリッド車両の制御装置。
【請求項２】
請求項１に記載のハイブリッド車両の制御装置において、
前記地図情報の道路区間が変更された場合、前記変更された道路区間に対する前記実勾配情報を前記第２記憶手段から消去する消去手段を備えた制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内燃機関、電動機及び前記電動機に電力を供給する蓄電池を搭載したハイブリッド車両の制御装置に関する。
【背景技術】
【０００２】
従来から、ハイブリッド車両（以下、単に「車両」とも称呼される。）は、車両の燃費性能を向上することを目的として、充電及び放電が可能であるという蓄電池の能力を上手に活用するように電動機及び内燃機関を制御しながら走行するようになっている。
【０００３】
一方、蓄電池の残容量（以下、単に「ＳＯＣ（State Of Charge）」とも称呼する。）が極めて大きな状態又は極めて小さい状態において変化を繰り返すと、蓄電池の性能劣化が早まることが知られている。そこで、蓄電池の劣化防止を目的として蓄電池のＳＯＣが管理されている。具体的には、ＳＯＣの上限及び下限が規定され、制御装置は、ＳＯＣが上限と下限の範囲（「管理幅」と称呼される。）を超えないように管理する。
【０００４】
即ち、制御装置は、ＳＯＣがその上限に達すると蓄電池の充電を禁止する。このとき、回生制動により生じる電気エネルギーは摩擦ブレーキ装置及び／又はインバータ等において熱エネルギーとなるから、本来は回収可能であって車両走行に利用できるエネルギーが無駄に消費されてしまう。これに対し、ＳＯＣがその下限に達すると、制御装置は内燃機関の出力を用いて蓄電池を強制充電する。この結果、燃料が車両走行以外の理由で消費される。従って、車両の走行中にＳＯＣがその上限又は下限に達しないようにすることが、車両の燃費性能向上に効果的である。
【０００５】
ところで、内燃機関及び電動機のトルク（駆動力）を用いることなく車両が加速するような下り坂を車両が走行する場合、運転者がアクセルペダルから足を離すこと及び場合により更にブレーキペダルを踏むことによって車両制動力が要求される。このとき、電動機の回生制動力によって車速の上昇が抑えられるとともに回生制動により発生した電力（回生エネルギー）が蓄電池に供給される。その結果、蓄電池のＳＯＣは増加する。
【０００６】
そのため、車両が長い下り坂（即ち、距離が比較的長く且つ標高差が比較的大きい区間）を走行する場合、その下り坂の途中でＳＯＣが上限に達する場合があり、それ以上ＳＯＣを増加させることができなくなる。このことから、下り坂を走行することによって得られる燃費の向上効果は、下り坂の開始地点におけるＳＯＣとＳＯＣの上限との差分が大きいほど大きくなると言うことができる。
【０００７】
そこで、従来の車両の制御装置の一つ（以下、「従来装置」と称呼する。）は、ナビゲーションシステムを用いて車両の位置、目的地及び地図情報（道路情報）等を取得し、それらに基づいて走行予定経路及び同走行予定経路上に存在する下り勾配区間（下り坂区間）を特定する。従来装置は、特定した下り勾配区間を車両が走行する期間において回生制動によって蓄電池に新たに蓄電可能な電力量を見積もる。更に、この見積もられた蓄電量が通常の管理幅よりも大きい場合、従来装置は蓄電池の管理幅を拡大管理幅に拡大させる。加えて、従来装置は、車両が下り勾配区間の走行を開始するまでに、蓄電池のＳＯＣを拡大管理幅の下限まで消費するように電動機及び／又は内燃機関を制御する（例えば、特許文献１を参照。）。以下、このような制御を「支援制御」と称呼する。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００５−１６０２６９号公報
【発明の概要】
【０００９】
しかしながら、通常、ナビゲーションシステムがナビゲーションデータベースに格納している地図情報（特に、道路区間の開始地点及び終了地点の標高、或いは、道路区間の勾配に関する情報等）は、予め測定された実際の地勢データに基づいて作成されている。そのため、車両が実際に走行する道路の標高（又は勾配）とナビゲーションデータベースに格納されている標高（又は勾配）とが一致しない場合がある。例えば、トンネル内の道路の場合、実際の道路の標高はナビゲーションデータベースに格納されている標高よりも低くなる。橋げた上の道路の場合、実際の道路の標高はナビゲーションデータベースに格納されている標高よりも高くなる。
【００１０】
よって、例えば、トンネル内の道路及び橋げた上の道路が、実際には緩やかな勾配の坂道（又は勾配のない平坦な道路）であっても、従来装置は、その道路が下り坂区間の一部であると誤って判断し、その結果、本来は坂道ではない区間において不要な支援制御を行ってしまう虞がある。
【００１１】
例えば、従来装置は、車両が通過しようとする区間が実際は平坦路であるにもかかわらず下り坂区間の一部であると誤認した場合、車両が下り坂区間の開始地点と認識した地点に到達するまでにＳＯＣを第１の目標ＳＯＣから第１の目標ＳＯＣよりも低い第２の目標ＳＯＣに近付くように低下させる。ところが、車両は、その下り坂区間において実際には下り坂ではなく平坦路を走行するので、蓄電池のＳＯＣは期待されたほど増大せず、寧ろ、平坦路を走行することにより減少し、管理幅の下限に到達する虞がある。ＳＯＣが管理幅の下限に達すると、従来装置は、蓄電池を充電するために内燃機関を始動させるので、燃費を悪化させる要因となる。
【００１２】
これに対し、従来装置は、車両が通過しようとする区間が実際は下り坂であるにもかかわらず平坦路であると誤認した場合には支援制御を実行しない。そのため、下り勾配の開始地点までにＳＯＣを十分に低下させることができず、本来であれば回収できた回生エネルギーを回収できない虞がある。
【００１３】
本発明は上記問題に対処するために為されたものである。即ち、本発明の目的の一つは、ハイブリッド車両の走行予定経路に存在する下り坂区間をより精度良く探索可能にすることによって、不要な支援制御を行ったり、必要な支援制御を行うことができなかったりする可能性を低減することが可能な「ハイブリッド車両の制御装置」を提供することにある。
【００１４】
本発明のハイブリッド車両の制御装置（以下、「本発明装置」とも称呼する。）は、車両（１０）の駆動源としての内燃機関（２０）及び同駆動源としての電動機（ＭＧ２）、並びに、前記電動機に電力を供給する蓄電池（６４）を搭載したハイブリッド車両（１０）に適用される。このハイブリッド車両は、前記電動機を用いて回生制動を行うとともに同回生制動により発生した電力を前記蓄電池に充電可能であり且つ前記内燃機関の出力を用いて発電した電力を前記蓄電池に充電可能に構成されている。
【００１５】
本発明装置は、前記車両に要求される要求駆動力（要求トルク）を満たすように且つ前記蓄電池の残容量（ＳＯＣ）が標準残容量（ＳＯＣcntr-n）に設定された目標残容量（ＳＯＣcntr）に近付くように前記内燃機関及び前記発電機を制御する（図６を参照。）。
【００１６】
本発明装置は、更に、
地図情報を記憶する第１記憶手段（８６）と、
前記地図情報に基づいて前記車両の現在地から目的地までの走行予定経路を決定する予定経路決定手段（ステップ３０５）と、
前記走行予定経路を構成する道路区間のそれぞれに対して前記第１記憶手段に記憶されている勾配に関する既計測勾配情報に基づいて同走行予定経路内の所定の条件を満たす対象下り坂区間を探索し（ステップ３１５乃至ステップ３３０、ステップ４４０）、前記対象下り坂区間がある場合に同対象下り坂区間の開始地点（Ｄｋ）よりも所定の第１距離だけ手前にある下り坂制御開始地点（Ｄｓ）から同対象下り坂区間の終点地点（Ｄｅ）までの区間のうちの少なくとも「下り坂制御開始地点（Ｄｓ）から対象下り坂区間の開始地点（Ｄｋ）までの区間」を含む制御区間を決定する制御区間決定手段（ステップ３３５及びステップ３４０）と、
前記制御区間を前記車両が走行するとき前記目標残容量ＳＯＣcntrを「標準残容量（ＳＯＣcntr-n)よりも小さい第１残容量（ＳＯＣcntr-d）」に変更する下り坂制御を実行する制御実行手段（図５のルーチン）と、
を備える。
【００１７】
加えて、本発明装置は、
前記車両が道路区間を走行したときに同走行した道路区間の実際の勾配に関する実勾配情報を、前記車両が備えるセンサ（８２、８４、９９等）により検出された値に基づいて同走行した道路区間における平均勾配として取得する実勾配情報取得手段（ステップ８２０、ステップ８６０）と、
前記実勾配情報を前記道路区間と関連付けて記憶する第２記憶手段（ステップ８４０乃至ステップ８６０、８９）と、
を備える。
【００１８】
更に、前記制御区間決定手段は、
前記対象下り坂区間を探索する場合、前記走行予定経路を構成する道路区間に対して前記実勾配情報が前記第２記憶手段に記憶されているときには（即ち、前記既計測勾配情報に対応する前記実勾配情報が前記第２記憶手段に記憶されているときには）、その実勾配情報が記憶されている道路区間に対する前記既計測勾配情報に代えて前記実勾配情報を使用して前記対象下り坂区間を探索するように構成される（ステップ３２０、ステップ３２５、ステップ４２０及びステップ３３０）。
【００１９】
これによれば、対象下り坂区間の探索には、走行予定経路中の道路区間（リンクに対応する区間）であってハイブリッド車両が初めて走行する道路区間（換言すると、未だ走行したことがない道路区間）に対しては第１記憶手段に記憶された既計測勾配情報が用いられ、ハイブリッド車両が過去に走行したことがある道路区間については過去に走行した際に取得して学習した第２記憶手段に記憶されている実勾配情報が用いられる。従って、走行予定経路を構成する道路区間のうち過去にハイブリッド車両が実際に走行した道路区間が多くなるほど、対象下り坂区間をより精度良く探索することができる。その結果、本来は対象下り坂区間ではないのに下り坂区間であると誤認識して不要な下り坂制御（支援制御）を実行してしまう可能性、及び、本来は対象下り坂区間であるにもかかわらず対象下り坂区間ではないと認識して下り坂制御の実行を失してしまう可能性を低減することができる。その結果、本発明装置は、ハイブリッド車両の燃費をより改善することができる。
【００２０】
更に、本発明装置の一態様においては、
前記地図情報の道路区間が変更された場合、前記変更された道路区間に対する前記実勾配情報を前記第２記憶手段から消去する消去手段（図９のルーチン）を備える。
【００２１】
前記地図情報の道路区間が変更された場合、その道路区間については、新たな道路が追加された等の可能性があり、そのため、過去の走行に基づいて取得された実勾配情報が正しくなくなっている可能性が高い。従って、上記のように消去手段を備えることにより、誤った実勾配情報に基づいて対象下り坂区間の探索がなされる可能性を低減することができる。
【００２２】
上記説明においては、発明の理解を助けるために、実施形態に対応する発明の構成に対して、実施形態で用いた符号を括弧書きで添えているが、発明の各構成要件は、前記符号によって規定される実施形態に限定されるものではない。本発明の目的、他の特徴及び付随する利点は、以下の図面を参照しつつ記述される本発明の実施形態についての説明から容易に理解されるであろう。
【図面の簡単な説明】
【００２３】
【図１】図１は、本発明の第１実施形態に係る車両の制御装置が適用されるハイブリッド車両及び同制御装置の概略図である。
【図２】図２は、図１に示したハイブリッド車両の制御装置が実行する下り坂制御における蓄電池の残容量及び従来装置の下り坂制御における蓄電池の残容量の推移を示した図である。
【図３】図３は、図１に示したハイブリッド車両のナビゲーションＥＣＵ（ＮＶＥＣＵ）のＣＰＵが実行する「支援計画決定ルーチン」を示したフローチャートである。
【図４】図４は、図１に示したハイブリッド車両のＮＶＥＣＵのＣＰＵが実行する「勾配値読込みルーチン」を示したフローチャートである。
【図５】図５は、図１に示したハイブリッド車両のパワーマネジメントＥＣＵ（ＰＭＥＣＵ）のＣＰＵが実行する「下り坂制御ルーチン」を示したフローチャートである。
【図６】図６は、図１に示したハイブリッド車両のＰＭＥＣＵのＣＰＵが実行する「車両走行制御ルーチン」を示したフローチャートである。
【図７】図７は、図１に示したハイブリッド車両のＰＭＥＣＵが参照するルックアップテーブルであり、図７（Ａ）は目標残容量が第１残容量である場合、図７（Ｂ）は目標残容量が標準残容量である場合のルックアップテーブルである。
【図８】図８は、図１に示したハイブリッド車両のＮＶＥＣＵのＣＰＵが実行する「勾配値学習ルーチン」を示したフローチャートである。
【図９】図９は本発明の第２実施形態に係る制御装置のＮＶＥＣＵのＣＰＵが実行する「学習勾配値消去ルーチン」を示したフローチャートである。
【発明を実施するための形態】
【００２４】
以下、図面を参照しながら本発明の実施形態に係るハイブリッド車両の制御装置（以下、「本制御装置」と称呼する。）について説明する。
【００２５】
＜第１実施形態＞
（構成）
本発明の第１実施形態に係るハイブリッド車両の制御装置（以下、「第１装置」と称呼する。）は、図１に示したハイブリッド車両１０（以下、単に「車両」とも称呼する。）に適用される。
【００２６】
車両１０は、第１発電電動機ＭＧ１、第２発電電動機ＭＧ２、内燃機関２０、動力分配機構３０、駆動力伝達機構５０、第１インバータ６１、第２インバータ６２、昇降圧コンバータ６３、蓄電池６４、パワーマネジメントＥＣＵ７０、バッテリＥＣＵ７１、モータＥＣＵ７２、エンジンＥＣＵ７３及びナビゲーションＥＣＵ７４等を備えている。これらのＥＣＵは、一つのＥＣＵに統合されてもよい。
【００２７】
ＥＣＵは、エレクトリックコントロールユニットの略称であり、ＣＰＵ、ＲＯＭ、ＲＡＭ、バックアップＲＡＭ（又は不揮発性メモリ）及びインターフェース等を含むマイクロコンピュータを主要構成部品として有する電子制御回路である。
【００２８】
第１発電電動機ＭＧ１は、発電機及び電動機の何れとしても機能することができる同期発電電動機である。第１発電電動機ＭＧ１は本例において主として発電機としての機能を発揮する。第１発電電動機ＭＧ１は、出力軸である第１シャフト４１を備えている。
【００２９】
第２発電電動機ＭＧ２は、第１発電電動機ＭＧ１と同様、発電機及び電動機の何れとしても機能することができる同期発電電動機である。第２発電電動機ＭＧ２は本例において主として電動機としての機能を発揮する。第２発電電動機ＭＧ２は、出力軸である第２シャフト４２を備えている。
【００３０】
内燃機関（以下、単に「機関」とも称呼する。）２０は、４サイクル・火花点火式・多気筒内燃機関である。機関２０は、周知のエンジンアクチュエータ２１を備えている。例えば、エンジンアクチュエータ２１には、燃料噴射弁を含む燃料供給装置、点火プラグを含む点火装置、スロットル弁開度変更用アクチュエータ及び可変吸気弁制御装置（ＶＶＴ）等が含まれる。機関２０は、スロットル弁アクチュエータにより図示しない吸気通路に配設されたスロットル弁の開度を変更することによって吸入空気量を変更すること、及び、その吸入空気量に応じて燃料噴射量を変更したりすること等により、機関２０の発生するトルク及び機関回転速度（即ち、機関出力）を変更することができるように構成されている。機関２０は、機関２０の出力軸であるクランクシャフト２２にトルクを発生する。
【００３１】
動力分配機構３０は周知の遊星歯車装置３１を備えている。遊星歯車装置３１はサンギア３２と、複数のプラネタリギア３３と、リングギア３４と、を含んでいる。
【００３２】
サンギア３２は第１発電電動機ＭＧ１の第１シャフト４１に接続されている。従って、第１発電電動機ＭＧ１はサンギア３２にトルクを出力することができる。第１発電電動機ＭＧ１は、サンギア３２から第１発電電動機ＭＧ１に入力されるトルクによって回転駆動されることにより発電することができる。
【００３３】
複数のプラネタリギア３３のそれぞれは、サンギア３２と噛合するとともにリングギア３４と噛合している。プラネタリギア３３の回転軸（自転軸）はプラネタリキャリア３５に設けられている。プラネタリキャリア３５はサンギア３２と同軸に回転可能となるように保持されている。プラネタリキャリア３５は機関２０のクランクシャフト２２に接続されている。
【００３４】
リングギア３４は、サンギア３２と同軸に回転可能となるように保持されている。
【００３５】
プラネタリギア３３からサンギア３２にトルクが入力されたときには、そのトルクによってサンギア３２が回転駆動される。プラネタリギア３３からリングギア３４にトルクが入力されたときには、そのトルクによってリングギア３４が回転駆動される。逆に、サンギア３２からプラネタリギア３３にトルクが入力されたときには、そのトルクによってプラネタリギア３３が回転駆動される。リングギア３４からプラネタリギア３３にトルクが入力されたときには、そのトルクによってプラネタリギア３３が回転駆動される。
【００３６】
リングギア３４はリングギアキャリア３６を介して第２発電電動機ＭＧ２の第２シャフト４２に接続されている。従って、第２発電電動機ＭＧ２はリングギア３４にトルクを出力することができる。第２発電電動機ＭＧ２は、リングギア３４から第２発電電動機ＭＧ２に入力されるトルクによって回転駆動されることにより、発電することができる。
【００３７】
更に、リングギア３４はリングギアキャリア３６を介して出力ギア３７に接続されている。従って、出力ギア３７は、リングギア３４から出力ギア３７に入力されるトルクによって回転駆動され得る。リングギア３４は、出力ギア３７からリングギア３４に入力されるトルクによって回転駆動され得る。
【００３８】
駆動力伝達機構５０は、車軸５１、ディファレンシャルギア５２及び駆動軸（ドライブシャフト）５３を含んでいる。
【００３９】
車軸５１は、出力ギア３７とディファレンシャルギア５２とを動力伝達可能に接続している。ディファレンシャルギア５２は駆動軸５３に取り付けられている。駆動軸５３の両端には駆動輪５４が取り付けられている。従って、出力ギア３７からのトルクは車軸５１、ディファレンシャルギア５２、及び、駆動軸５３を介して駆動輪５４に伝達される。この駆動輪５４に伝達されたトルクによりハイブリッド車両１０は走行することができる。
【００４０】
第１インバータ６１は、第１発電電動機ＭＧ１と、昇降圧コンバータ６３を介して蓄電池６４と、に電気的に接続されている。従って、第１発電電動機ＭＧ１が発電しているとき、第１発電電動機ＭＧ１が発生した電力は第１インバータ６１及び昇降圧コンバータ６３を介して蓄電池６４に供給される。反対に、第１発電電動機ＭＧ１は昇降圧コンバータ６３及び第１インバータ６１を介して蓄電池６４から供給される電力によって回転駆動させられる。
【００４１】
第２インバータ６２は、第２発電電動機ＭＧ２と、昇降圧コンバータ６３を介して蓄電池６４と、に電気的に接続されている。従って、第２発電電動機ＭＧ２は昇降圧コンバータ６３及び第２インバータ６２を介して蓄電池６４から供給される電力によって回転駆動させられる。反対に、第２発電電動機ＭＧ２が発電しているとき、第２発電電動機ＭＧ２が発生した電力は第２インバータ６２及び昇降圧コンバータ６３を介して蓄電池６４に供給される。
【００４２】
なお、第１発電電動機ＭＧ１の発生する電力は第２発電電動機ＭＧ２に直接供給可能であり、且つ、第２発電電動機ＭＧ２の発生する電力は第１発電電動機ＭＧ１に直接供給可能である。
【００４３】
蓄電池６４は、第１発電電動機ＭＧ１又は第２発電電動機ＭＧ２を駆動するための電気エネルギーを蓄える蓄電手段であり、充電と放電とを繰り返すことができるリチウムイオン電池等の二次電池により構成されている。蓄電池６４には、ＳＯＣの検出に用いられる図示しないＳＯＣセンサが取り付けられており、バッテリＥＣＵ７１が蓄電池６４のＳＯＣを監視することができるようになっている。
【００４４】
なお、蓄電池６４は、放電及び充電が可能な蓄電装置であればよく、リチウムイオン電池だけでなく、ニッケル水素電池、鉛蓄電池、ニッケルカドミウム電池及び他の二次電池であってもよい。
【００４５】
パワーマネジメントＥＣＵ７０（以下、「ＰＭＥＣＵ７０」とも表記する。）、及び、後述する「バッテリＥＣＵ７１、モータＥＣＵ７２、エンジンＥＣＵ７３及びナビゲーションＥＣＵ７４」は、ＣＡＮ（Controller Area Network）通信により互いに情報交換可能に接続されている。
【００４６】
ＰＭＥＣＵ７０は、ハイブリッド車両１０のシステム起動用スイッチであるパワースイッチ８１、アクセル操作量センサ８２、ブレーキ操作量センサ８３及び車速センサ８４等からの出力信号を受信するようになっている。
【００４７】
アクセル操作量センサ８２は、運転者により操作可能に設けられた図示しないアクセルペダルの操作量（以下、「アクセル操作量ＡＰ」と称呼する。）を表す出力信号を発生するようになっている。アクセル操作量ＡＰは加速操作量と表現することもできる。
ブレーキ操作量センサ８３は、運転者により操作される図示しないブレーキペダルの操作量ＢＰを表す出力信号を発生するようになっている。
車速センサ８４は、ハイブリッド車両１０の車速ＳＰＤ（＝Ｖｘ）を表す出力信号を発生するようになっている。
【００４８】
ＰＭＥＣＵ７０は、バッテリＥＣＵ７１により取得される蓄電池６４の残容量ＳＯＣを入力するようになっている。残容量ＳＯＣは、蓄電池６４に流出入する電流の積算値等に基づいて周知の手法により算出される。
【００４９】
ＰＭＥＣＵ７０は、モータＥＣＵ７２を介して、第１発電電動機ＭＧ１の回転速度を表す信号及び第２発電電動機ＭＧ２の回転速度を表す信号を入力するようになっている。第１発電電動機ＭＧ１の回転速度を表す信号は「ＭＧ１回転速度Ｎｍ１」と称呼される。第２発電電動機ＭＧ２の回転速度を表す信号は「ＭＧ２回転速度Ｎｍ２」と称呼される。
【００５０】
ＭＧ１回転速度Ｎｍ１は、モータＥＣＵ７２によって「第１発電電動機ＭＧ１に設けられ且つ第１発電電動機ＭＧ１のロータの回転角度に対応する出力値を出力するレゾルバ９７の出力値」に基づいて算出される。同様に、ＭＧ２回転速度Ｎｍ２は、モータＥＣＵ７２によって「第２発電電動機ＭＧ２に設けられ且つ第２発電電動機ＭＧ２のロータの回転角度に対応する出力値を出力するレゾルバ９８の出力値」に基づいて算出される。
【００５１】
ＰＭＥＣＵ７０は、エンジンＥＣＵ７３を介して、エンジン状態量センサ９９により検出されるエンジン状態を表す出力信号を入力するようになっている。このエンジン状態を表す出力信号には、機関回転速度ＮＥ、スロットル弁開度ＴＡ、機関の冷却水温ＴＨＷ及び大気圧Ｐａ等が含まれている。
【００５２】
モータＥＣＵ７２は、第１インバータ６１、第２インバータ６２及び昇降圧コンバータ６３に接続されている。モータＥＣＵ７２は、ＰＭＥＣＵ７０からの指令（例えば、「ＭＧ１指令トルクＴｍ１＊及びＭＧ２指令トルクＴｍ２＊」）に基づいて、第１インバータ６１、第２インバータ６２及び昇降圧コンバータ６３に指示信号を送出するようになっている。これにより、モータＥＣＵ７２は、第１インバータ６１及び昇降圧コンバータ６３を用いて第１発電電動機ＭＧ１を制御し、且つ、第２インバータ６２及び昇降圧コンバータ６３を用いて第２発電電動機ＭＧ２を制御するようになっている。
【００５３】
エンジンＥＣＵ７３は、ＰＭＥＣＵ７０からの指令及びエンジン状態量センサ９９からの信号に基づいてエンジンアクチュエータ２１に指示信号を送出することにより、機関２０を制御するようになっている。
【００５４】
ナビゲーションＥＣＵ（以下、「ＮＶＥＣＵ」とも称呼する。）７４は、ナビゲーションデータベース８６、走行データ取得部８７、走行環境データ取得部８８及び走行データ記憶部８９等と電気的に接続されている。
【００５５】
ナビゲーションデータベース（以下、「ＮＶＤＢ」とも称呼する。）８６は、地図データ、経路計算データ、画像データ、音声データ及び索引データ等の各種データを格納している。これらのデータは、運転者（又は搭乗者）へのナビゲーションサービスの提供、機関２０及び／又は第２発電電動機ＭＧ２の運転スケジュールの決定（以下、「計画」とも称呼する。）、及び、蓄電池６４の「目標残容量」の決定等に用いられる。
【００５６】
ＮＶＤＢ８６の有する各種データは、磁気ディスク（ＨＤＤ）及び半導体メモリ等の記憶装置に格納されている。
【００５７】
地図データは、地図データ上の各道路を識別するための道路識別情報を含む道路データ、及び、ルート案内に用いられる交差点名称等を含む誘導データ等を含んでいる。
【００５８】
経路計算データは、道路ネットワークの道路区間に関する情報である「リンク情報」、道路ネットワークの交差点に関する情報である「ノード情報」、及び、道路規制に関する情報である「規制情報」等を含んでいる。ノード情報及びリンク情報は、後述する「下り坂探索（対象下り坂区間の探索）」及び「下り坂制御」等において利用される。なお、各リンクにはそのリンクに対応した道路区間の勾配（平均勾配値）、そのリンクに対応した道路区間の両端の地点の標高（標高データ）及びそのリンクに対応した道路区間の距離等が付随している。リンクには個別のＩＤ（リンクＩＤ）が付与されている。従って、例えば、あるノードと別のノードとの間に道路が新設された場合、それらのノード間のリンクのＩＤ（リンクＩＤ）及びそのリンクに付随する情報が変更される。経路計算データ及び地図データを含む情報は「地図情報」とも称呼される。
【００５９】
走行データ取得部８７は、車両のパワースイッチ８１がオンしてからオフするまでの間、所定間隔毎に車両１０の現在位置及び走行速度等の走行データを取得する。所定間隔とは、所定時間間隔（例えば、１００ｍｓｅｃ）及び所定距離間隔（例えば、１００ｍ）等をいう。
【００６０】
走行データ取得部８７は、ＧＰＳ（Global Positioning System ）受信装置を備えている。走行データ取得部８７は、このＧＰＳ受信装置を用いてＧＰＳ衛星が送信するＧＰＳ情報を受信する。走行データ取得部８８は、受信したＧＰＳ情報を解析して車両の位置情報（緯度及び経度）を取得する。このように、走行データ取得部８８は車両１０の位置情報を取得する「位置情報取得部」とも言うことができる。
【００６１】
走行環境データ取得部８８は、日付、時刻、曜日、車両が出発した日時、気象情報、渋滞情報、交通規制情報、道路工事情報及びイベント情報等の車両走行時における車両周辺の走行環境に関する情報、即ち、経路情報を取得して走行環境データとしてＮＶＥＣＵ７４に提供する。
【００６２】
より具体的には、走行環境データ取得部８８は、現在の時刻、日付及び曜日等の日時情報を取得する。更に、走行環境データ取得部８９は、例えば、ＶＩＣＳ（登録商標）の情報を受信して取得する装置を備えている。ＶＩＣＳの情報は、渋滞情報、事故・故障車・工事情報及び速度規制・車線規制情報等を含んでいる。このように、走行環境データ取得部８８は車両１０の走行する経路の状況に関する各種情報を取得する「経路情報取得部」とも言うことができる。
【００６３】
走行データ記憶部８９は、走行データ取得部８７が取得した走行データと、走行環境データ取得部８８が取得した走行環境データとを記憶する。更に、走行データ記憶部８９は、後述する学習勾配値を記憶する。
【００６４】
ＮＶＥＣＵ７４が行う情報処理には、運転者への経路案内、ＰＭＥＣＵ７０が「下り坂制御」を行うために用いるナビゲーション情報の生成及び提供等がある。経路案内は、ＮＶＥＣＵ７４がユーザインタフェースを用いて現在地から運転者等により設定された目的地までの経路探索を行って運転者に提示し、現在位置を取得しながら運転者を目的地まで誘導する処理である。
【００６５】
（作動の概要）
次に、図２を参照しながら、本制御装置のＰＭＥＣＵ７０及びＮＶＥＣＵ７４等が行う「下り坂制御（支援制御）」について説明する。
【００６６】
＜下り坂制御の概要＞
図２の横軸は車両１０の走行予定経路の地点を距離に応じて示す。図２に示した例においては、走行予定経路は、リンク＃０からリンク＃５に対応する６つの道路区間が含まれている。隣接するリンク同士の接続点はノードである。図２の縦軸は車両１０の走行予定経路における道路の標高及び蓄電池６４のＳＯＣである。
【００６７】
図２に示した走行予定経路は、標高Ｈｓの平坦な道路から、標高Ｈｅ（標高Ｈｓ＞標高Ｈｅ）の平坦な道路へと続く下り坂を含む。下り坂は、リンク＃２〜リンク＃４に対応する３つの区間により構成されている。
【００６８】
第１装置は、蓄電池６４の劣化が進むことを抑制するために、残容量上限値「ＳＯＣuplmt 」及び残容量下限値「ＳＯＣlolmt 」を設定し、残容量ＳＯＣが残容量上限値ＳＯＣuplmt から残容量下限値ＳＯＣlolmt までの範囲（ＳＯＣ管理幅）内になるように、残容量ＳＯＣを制御（管理）する。
【００６９】
第１装置は、下り坂走行時及び渋滞走行時等を除く通常走行時においては、目標残容量ＳＯＣcntrを通常走行時の目標残容量（以下、「標準残容量」とも称呼する。）「ＳＯＣcntr-n」に設定する。例えば、残容量上限値ＳＯＣuplmt は満充電の８０％、残容量下限値ＳＯＣlolmt は満充電の４０％、標準残容量ＳＯＣcntr-nは満充電の６０％に相当する値にそれぞれ設定される。
【００７０】
通常走行時において、ＰＭＥＣＵ７０は、車両１０に要求される駆動力及び／又は制動力を満たすように、且つ、実際のＳＯＣが標準残容量ＳＯＣcntr-nに近付くように、機関２０、第２発電電動機ＭＧ２及び第１発電電動機ＭＧ１を制御する。即ち、標準残容量ＳＯＣcntr-nは、通常走行時における「目標残容量」である。図２の例において、地点Ｄ０における蓄電池６４のＳＯＣは、標準残容量ＳＯＣcntr-n近傍の値に制御されている。
【００７１】
通常走行中の車両１０は地点Ｄ１において「下り坂探索」を実行する。下り坂探索については後述する。本例において、リンク＃２〜リンク＃４に対応する３つの区間が下り坂制御を実行する下り坂区間（以下、「対象下り坂区間」と称呼される場合がある。）に該当するとして説明を続ける。
【００７２】
ＮＶＥＣＵ７４は、所定時間（本例においては、ＶＩＣＳ情報が更新される時間間隔である５分）が経過する毎に「下り坂探索」を行う。いま、下り坂探索を行うタイミングにおいて車両１０が地点Ｄ１に到達していると仮定する。この時点では車両１０は通常走行中であって、下り坂制御を実行していない。なお、ＮＶＥＣＵ７４は、車両が所定距離を走行する毎に「下り坂探索」を行ってもよい。
【００７３】
ＮＶＥＣＵ７４は、この「下り坂探索」において、走行予定経路中の「下り坂制御」の対象となる「対象下り坂区間」を特定する。具体的には、ＮＶＥＣＵ７４は、ＮＶＤＢ８６の情報に基づいて、走行予定経路に対応するリンク群のうちの単数又は複数の連続したリンク（以下、「第１リンク群」と称呼する。）であり、以下のすべての条件を満たす第１リンク群に対応する区間を「対象下り坂区間」として特定する。但し、以下の条件は一例に過ぎず、これに限定されない。
【００７４】
（１）車両１０の現在位置からの距離が一定距離（例えば、半径１０ｋｍ）以内である。
（２）第１リンク群の各リンクに対応する道路区間が何れも所定閾値勾配未満の下り勾配を有する。なお、本例において、勾配はリンクに対応する道路区間を順方向に走行した場合に下り坂であるとき「負の値」となり、上り坂であるとき「正の値」となるように規定されている。従って、車両進行方向の道路区間が下り勾配が大きい急な坂道であるとき、勾配は絶対値が大きい負の値になる。
（３）第１リンク群の開始地点の標高Ｈｓが第１リンク群の終了地点の標高Ｈｅよりも高く（Ｈｓ＞Ｈｅ）、且つ、その差の絶対値（標高差ΔＨａ＝｜Ｈｓ−Ｈｅ｜）が所定標高差（SOC_STL_H）以上である。
（４）第１リンク群に対応する道路区間の合計距離ΔＤａが所定距離（SOC_STL_D）以上である。
【００７５】
図２に示した例においては、リンク＃２乃至リンク＃４からなる第１リンク群が上記（１）乃至（４）の条件を満たすので、リンク＃２乃至リンク＃４に対応する道路区間（即ち、地点Ｄ３から地点Ｄ６までの区間）が対象下り坂区間として特定される。ＮＶＥＣＵ７４は、特定された対象下り坂区間の開始地点Ｄｋ（即ち、地点Ｄ３の緯度・経度）及び特定された対象下り坂区間の終了地点Ｄｅ（即ち、地点Ｄ６の緯度・経度）を記憶する。
【００７６】
更に、ＮＶＥＣＵ７４は、「対象下り坂区間」の開始地点（即ち、地点Ｄ３）から所定の第１距離（残容量調整距離（HF_SOCC_DIST））だけ手前にある地点Ｄｓを特定し、その地点の緯度・経度を「下り坂制御の開始地点Ｄｓ」の緯度・経度としてＰＭＥＣＵ７０に通知する。なお、ＮＶＥＣＵ７４は、地点Ｄｓに最も近く且つ地点Ｄｓよりも車両１０に近いノードの地点を地点Ｄｓと特定し直してもよい。換言すると、第１距離はある程度の幅がある距離であってもよい。下り坂制御開始地点Ｄｓから対象下り坂区間の開始地点Ｄｋ（地点Ｄ３）までの区間は「プレユース区間」と称呼される場合がある。なお、図２に示した例においては、残容量調整距離（HF_SOCC_DIST）とリンク＃１に対応する区間の距離とが一致している。また、プレユース区間と対象下り坂区間とを合わせた区間は、下り坂制御を実行する区間であるので、「制御対象区間又は下り坂制御区間」とも称呼される。
【００７７】
更に、ＮＶＥＣＵ７４は、下り坂制御開始地点Ｄｓ、対象下り坂区間の開始地点Ｄｋ（即ち、地点Ｄ３）、及び、下り坂制御終了地点Ｄｅ（対象下り坂区間の終了地点Ｄｅ、地点Ｄ６）が更新されたとき、これらの地点についてＰＭＥＣＵ７０に送信する。
【００７８】
ＰＭＥＣＵ７０（及びバッテリＥＣＵ７１）は、車両１０の現在地（現在位置）をＮＶＥＣＵ７４から随時取得していて、現在地が下り坂制御開始地点Ｄｓに一致すると（即ち、車両１０が図２の地点Ｄ２に到達すると）、下り坂制御の一部である目標残容量低下制御を実行する。より具体的に述べると、ＰＭＥＣＵ７０（及びバッテリＥＣＵ７１）は、現在地が下り坂制御開始地点Ｄｓに一致すると、目標残容量ＳＯＣcntrを標準残容量ＳＯＣcntr-nから下り坂制御時の目標残容量（便宜上、「低残容量」又は「第１残容量」とも称呼される。）ＳＯＣcntr-dに変更する。目標残容量ＳＯＣcntrの推移は、図２中の一点鎖線にて示される。下り坂制御時の目標残容量ＳＯＣcntr-dは通常時の目標残容量ＳＯＣcntr-n（満充電時の６０％）よりも小さい値であり、例えば、満充電時の５０％に設定される。
【００７９】
ところで、ハイブリッド車両１０は、ハイブリッド走行モード（ＨＶモード）にて走行する。ハイブリッド走行モードは、例えば、特開２０１３−１５４７１８号公報及び特開２０１３−１５４７１５号公報等に記載された周知のモードである。
【００８０】
簡単に述べると、ハイブリッド走行モードは、車両１０を走行させるにあたり、第２発電電動機ＭＧ２に加えて内燃機関２０を用いることを許容する走行モードである。具体的には、ハイブリッド走行モードは、第２発電電動機ＭＧ２を駆動するとともに内燃機関２０をその運転効率が最大となる動作点にて運転し、これら両方の出力により車両１０に要求される要求トルク（要求駆動力、即ち、ユーザが要求するユーザ要求トルク）を満たしながら車両１０を走行させるモードである。
【００８１】
この走行モードにおいては、内燃機関２０に要求される出力が閾値未満であるとき（即ち、内燃機関２０を最適動作点にて運転できない場合）、内燃機関２０の運転は停止される。一方、内燃機関２０に要求される出力が閾値以上であるとき内燃機関２０がその要求出力を満足するように最適動作点にて運転され、その結果として要求トルクに対して不足するトルク（駆動力）が第２発電電動機ＭＧ２により補われ、同時に内燃機関２０の出力によって蓄電池６４が充電される。更に、残容量ＳＯＣが目標残容量ＳＯＣcntrに対して小さくなるほど、内燃機関２０に対する「蓄電池６４を充電するために要求される出力」は大きくなる。そのため、残容量ＳＯＣが小さくなると内燃機関２０が運転され易くなる。
【００８２】
なお、残容量ＳＯＣが残容量下限値ＳＯＣlolmt 以下になると、内燃機関２０が仮に最適動作点にて運転できない状況にあっても強制的に運転され、内燃機関２０の出力によって第２発電電動機ＭＧ２及び第１発電電動機ＭＧ１が発生した電力により蓄電池６４が充電される。即ち、強制充電が行われる。
【００８３】
プレユース区間において、ＰＭＥＣＵ７０は、残容量ＳＯＣが目標残容量ＳＯＣcntr-dに近付くように第２発電電動機ＭＧ２を運転させ、電力を消費することにより残容量ＳＯＣを低下させる（図２の実線Ｓ１を参照。）。
【００８４】
図２に示した例では、車両１０がプレユース区間を走行して対象下り坂区間の開始地点Ｄ３に到達するまでに、残容量ＳＯＣが第１残容量ＳＯＣcntr-dまで低下している。つまり、前述の残容量調整距離HF_SOCC_DISTは、第２発電電動機ＭＧ２を作動させて蓄電池６４に蓄えられた電力を消費することにより、蓄電池６４のＳＯＣを標準残容量ＳＯＣcntr-nから下り坂制御時の第１残容量ＳＯＣcntr-dに近付けるために十分な距離として設定される。残容量調整距離HF_SOCC_DISTは、例えば５ｋｍ程度に設定されるが、車両１０の走行経路や走行条件によっては、５ｋｍよりも短くてもよいし、長くてもよい。
【００８５】
車両１０が対象下り坂区間の走行を開始すると、第１発電電動機ＭＧ１及び第２発電電動機ＭＧ２を用いた回生制動が頻繁に行われるようになる。その結果、回生制動により発生した電力（回生エネルギー）が蓄電池６４に供給されるので、残容量ＳＯＣは徐々に上昇していく。換言すると、ＮＶＥＣＵ７４は、回生エネルギーが走行のために使用されるエネルギーを上回り、その結果、残容量ＳＯＣが上昇するような下り坂を対象下り坂区間として特定する。
【００８６】
ＰＭＥＣＵ７０（及びバッテリＥＣＵ７１）は、車両１０の現在地が下り坂制御終了地点Ｄｅに一致すると（即ち、車両１０が図２の地点Ｄ６に到達すると）、下り坂制御（本例では目標残容量低下制御）を終了する。より具体的に述べると、ＰＭＥＣＵ７０（及びバッテリＥＣＵ７１）は、目標残容量ＳＯＣcntrを、第１残容量ＳＯＣcntr-dから標準残容量ＳＯＣcntr-nに変更する（戻す）。その後、車両１０は平坦路（リンク♯５に対応する区間）を走行する。従って、残容量ＳＯＣは次第に通常時の目標残容量ＳＯＣcntr-nに近付く。なお、ＮＶＥＣＵ７４がＰＭＥＣＵ７０に対し、車両の現在地が「地点Ｄｓ，Ｄｋ及びＤｅ」に到達した旨の通知を行い、ＰＭＥＣＵ７０はその通知に従って下り坂制御の開始及び終了を行っても良い。
【００８７】
ところで、対象下り坂区間が実際には走行予定経路中に存在しているにもかかわらず、地図情報に含まれる勾配（又は、地図情報に含まれる標高に基づいて計算される勾配）が実際の勾配と相違しているために、ＮＶＥＣＵ７４（又は、ＰＭＥＣＵ７０）が対象下り坂区間が存在しないと誤判定した場合について説明する。この場合、実際の残容量ＳＯＣは図２において二点鎖線Ｓ２にて示されるように変化し、残容量ＳＯＣが下り坂の走行中に残容量上限値ＳＯＣuplmt に到達する。そのため、ＰＭＥＣＵ７０は残容量ＳＯＣが残容量上限値ＳＯＣuplmt を超えないように、回生制動により発生する電力（回生エネルギー）の蓄電池６４への供給を中止する。従って、この場合、蓄電池６４に回収されない回生エネルギーは熱エネルギー等に変換されて消費されてしまう。
【００８８】
これに対し、対象下り坂区間が実際には走行予定経路中に存在していないにもかかわらず、地図情報に含まれる勾配（又は、地図情報に含まれる標高に基づいて計算される勾配）が実際の勾配と相違しているために、ＮＶＥＣＵ７４（又は、ＰＭＥＣＵ７０）が対象下り坂区間が存在していると誤判定した場合について説明する。この場合、実際の残容量ＳＯＣは図２の地点Ｄ３までは実線Ｓ１にて示されるように変化し、地点Ｄ３以降は例えば破線Ｓ３にて示されるように変化する。そして、図２においては、地点Ｄ５と地点Ｄ６との間においてＳＯＣはＳＯＣ下限値ＳＯＣlolmt に到達し、ＰＭＥＣＵ７０は機関２０を運転してＳＯＣがＳＯＣ下限値ＳＯＣlolmt を下回らないように蓄電池６４の強制充電を行う。よって、車両１０の燃費が悪化する。
【００８９】
このように対象下り坂区間を精度良く探索できない原因の一つは、ＮＶＤＢ８６に記憶されている地図情報に含まれる勾配情報（勾配そのもの、又は、勾配を求めるために必要な標高等のデータ）が地勢データに基づいて作成されていることによる。例えば、道路区間がトンネル内にある場合、その道路区間は平坦であったとしても、地勢データはトンネルが設けられている山の各地点の標高に基づいて作成されるため、勾配が存在することを示す場合がある。
【００９０】
第１装置は、このような理由によって対象下り坂区間を精度良く探索できないという問題を次のようにして解決する。即ち、第１装置は、車両１０がある道路区間（リンクに相当する区間）を走行しているとき、その道路区間の平均勾配を車両１０が備えるセンサを用いて算出し、その道路区間を通過し終えた時点においてその道路区間の勾配（学習勾配値）を「算出した平均勾配データ」に基づいて更新・学習（記憶）する。同時に、第１装置は、その学習された学習勾配値と、その学習勾配値に対応する道路区間の距離とからその道路区間の始点と終点との標高差を計算し学習（記憶）する。これらの学習される値は実勾配情報と総称される。そして、第１装置は、対象下り坂区間の探索を行う場合、その実勾配情報が得られている道路区間に対してはその実勾配情報を用い、そうでない道路区間についてはＮＶＤＢ８６に記憶されている地図情報に含まれる勾配情報（即ち、既計測勾配情報）を用いる。これにより、より実際に近い勾配に基づく情報（勾配値及び標高等）を用いて対象下り坂区間の探索が行われる可能性が高くなるので、上述した誤認識を回避できる可能性が高くなる。従って、下り坂制御をより適切な状況で行う可能性が高くなるので、車両の燃費性能をより高めることができる可能性が増大する。
【００９１】
（実際の作動）
次に、第１装置の実際の作動について説明する。
＜支援計画の決定＞
ＮＶＥＣＵ７４（実際にはそのＣＰＵ）は、一定時間（例えば、ＶＩＣＳ情報が更新されるインターバルである５分）が経過する毎に図３にフローチャートにより示した支援計画決定ルーチンを実行するようになっている。従って、ＮＶＥＣＵ７４は所定のタイミングにてステップ３００から処理を開始してステップ３０５に進み、車両１０の現在の位置（現在地）、目的地及び最新の道路情報等を取得し、それらとＮＶＤＢ８６に記憶されている地図情報とに基づいて、車両１０の走行予定経路を決定する。
【００９２】
次いで、ＮＶＥＣＵ７４はステップ３１０に進み、先読み情報更新が必要であるか否かを判定する。先読み情報更新が必要である場合とは、例えば、車両１０の目的地が運転者の操作によって設定又は変更されたとき、車両１０の走行経路が変更されたとき（設定された走行経路から車両１０が離脱したとき）及びＶＩＣＳ等の交通情報の更新があったとき等である。
【００９３】
上記のような理由により先読み情報の更新が必要であると判定した場合、ＮＶＥＣＵ７４はステップ３１０にて「Ｙｅｓ」と判定してステップ３１５に進んで、走行予定経路を構成する道路区間であって車両１０の現在位置から１０ｋｍ程度の範囲内に存在している道路区間に関する情報を取得する。この取得される走行予定経路に関する情報には、走行予定経路上の各道路区間（リンク）の既計測勾配情報（即ち、ＮＶＤＢ８６が記憶している地図情報に含まれる勾配に関する情報であり、勾配値（ナビ地図勾配値）を含む。）が含まれる。このとき、ＮＶＥＣＵ７４は、既計測勾配情報が取得された「走行予定経路を構成する道路区間」の総数ＮＬを抽出しておく。
【００９４】
次に、ＮＶＥＣＵ７４は、ステップ３２０に進んで、道路区間数カウンタｉの値を「１」に設定する。同時に、ＮＶＥＣＵ７４は、走行予定経路を構成する道路区間について、車両１０の現在地が属する道路区間を１番目の道路区間と規定し、次の道路区間を２番目の道路区間、その次の道路区間を３番目の道路区間・・・というように、道路区間に便宜上の順番を付する。
【００９５】
次いで、ＮＶＥＣＵ７４は、ステップ３２５に進んで図４に示した「勾配値読込みルーチン（勾配情報読込みルーチン）」を実行する。従って、ＮＶＥＣＵ７４は図４のステップ４００から処理を開始してステップ４１０に進み、ｉ番目の道路区間（この場合、ｉの値は「１」）について、車両１０が過去に走行した際に取得した実勾配情報（「学習勾配値」を含む。）が走行データ記憶部８９に記憶されているか否かを判定する。換言すると、ＮＶＥＣＵ７４は、ｉ番目の道路区間について実勾配情報が学習済みであるか否かを判定する。なお、学習勾配値を含む実勾配情報の計算・学習方法については後述する。
【００９６】
ｉ番目の道路区間の「実勾配情報」が走行データ記憶部８９に記憶されている場合、ＮＶＥＣＵ７４はステップ４１０にて「Ｙｅｓ」と判定してステップ４２０に進み、ｉ番目の道路区間の「実勾配情報」を取得し、その情報をｉ番目の道路区間の勾配情報としてＲＡＭに記憶する。一方、ｉ番目の道路区間の「実勾配情報」が走行データ記憶部８９に記憶されていない場合、ＮＶＥＣＵ７４はステップ４１０にて「Ｎｏ」と判定してステップ４４０に進み、ｉ番目の道路区間の「ＮＶＤＢ８６に記憶されている既計測勾配情報」を取得し、その情報をｉ番目の道路区間の勾配情報としてＲＡＭに記憶する。次いで、ＮＶＥＣＵ７４はステップ４３０に進んで、道路区間ｉの値が道路区間総数ＮＬ以上となったか（即ち、先読み範囲内の道路区間に対する勾配情報の取得を終了したか）否かを判定する。
【００９７】
現時点において、ｉの値は「１」であり、道路区間総数ＮＬに達していない。即ち、ステップ３１５にて取得した道路区間のすべてについての勾配情報の取得は終了していない。よって、ＮＶＥＣＵ７４はステップ４３０にて「Ｎｏ」と判定してステップ４５０に進み、道路区間数カウンタｉの値を「１」だけ増加させてステップ４１０に戻る。
【００９８】
ＮＶＥＣＵ７４は、このような処理を繰り返し、ｉ番目の道路区間の勾配情報として、「学習勾配値を含む実勾配情報」及び「ナビ地図勾配値を含む既計測勾配情報」の何れかを読み込む。そして、ｉの値が道路区間総数ＮＬに一致すると（即ち、ステップ３１５にて取得した道路区間のすべてについての勾配情報の取得が終了すると）、ＮＶＥＣＵ７４は、ステップ４３０にて「Ｙｅｓ」と判定してステップ４９５を経由し、図３のステップ３３０に進む。
【００９９】
ＮＶＥＣＵ７４はステップ３３０にて「ステップ３１５において情報を取得した走行予定経路を構成するリンク群（道路区間群）」の中から上述した条件（１）乃至（４）を満たす第１リンク群を探索し、そのような第１リンク群が存在すればその第１リンク群を特定する。即ち、ＮＶＥＣＵ７４は、対象下り坂区間を特定する。より具体的に述べると、ＮＶＥＣＵ７４は、対象下り坂区間が存在する場合、対象下り坂区間の開始地点Ｄｋと終了地点Ｄｅとを決定する。
【０１００】
次に、ＮＶＥＣＵ７４はステップ３３５に進み、走行予定経路中に対象下り坂区間が含まれているか否かを判定する。走行予定経路中に対象下り坂区間が含まれていなければ、ＮＶＥＣＵ７４はステップ３３５にて「Ｎｏ」と判定し、ステップ３９５に直接進んで本ルーチンを一旦終了する。従って、この場合、下り坂制御は実行されない。
【０１０１】
これに対し、走行予定経路中に対象下り坂区間が含まれていると、ＮＶＥＣＵ７４はステップ３３５にて「Ｙｅｓ」と判定してステップ３４０に進み、対象制御区間（下り坂制御を行うべき区間）を特定する。より具体的に述べると、ＮＶＥＣＵ７４は、対象下り坂区間の開始地点Ｄｋから第１距離（残容量調整距離（HF_SOCC_DIST））だけ手前にある地点を下り坂制御開始地点Ｄｓとして決定する。なお、対象制御区間の終了地点は、対象下り坂区間の終了地点Ｄｅである。
【０１０２】
次に、ＮＶＥＣＵ７４はステップ３４５に進み、地点Ｄｓ，Ｄｋ及びＤｅを自身のＲＡＭに格納するとともにＰＭＥＣＵ７０に送信する。その後、ＮＶＥＣＵ７４はステップ３９５に進み、本ルーチンを一旦終了する。ＰＭＥＣＵ７０は、地点Ｄｓ、Ｄｋ及びＤｅの情報がＮＶＥＣＵ７４から送信されると、それらの情報をＰＭＥＣＵ７０のＲＡＭに格納する。
【０１０３】
このように、ステップ３４５にて制御対象区間の地点Ｄｓ、Ｄｋ及びＤｅをＰＭＥＣＵ７０に送信すると、ＮＶＥＣＵ７４は、ステップ３９５に進んで支援計画決定ルーチンを一旦終了する。なお、ＮＶＥＣＵ７４は、ステップ３１０において先読み情報の更新が必要ではない場合、「Ｎｏ」と判定してステップ３９５に直接進んで本ルーチンを一旦終了する。
【０１０４】
＜下り坂制御＞
ＰＭＥＣＵ７０（実際にはそのＣＰＵ）は、下り坂制御を実行するため図５にフローチャートにより表された「下り坂制御ルーチン」を所定の時間が経過する毎に実行する。従って、適当なタイミングとなると、ＰＭＥＣＵ７０は、図５のステップ５００から処理を開始してステップ５０５に進み、ＰＭＥＣＵ７０のＲＡＭ内に下り坂制御区間の開始地点Ｄｓ及び終了地点Ｄｅの少なくとも一方が格納されているか否かを判定する。
【０１０５】
開始地点Ｄｓ及び終了地点Ｄｅの少なくとも一方が設定されていれば、ＰＭＥＣＵ７０はステップ５０５にて「Ｙｅｓ」と判定してステップ５１０に進み、ＧＰＳ受信装置（走行データ取得部８７）が取得した現在位置ＤｎをＮＶＥＣＵ７４から通信により受け取る。次いでＰＭＥＣＵ７０は、ステップ５１５に進み、現在位置Ｄｎが開始地点Ｄｓに一致しているか否かを判定する。
【０１０６】
現在位置Ｄｎが開始地点Ｄｓに一致（実際には、±数１０ｍ）していれば、ＰＭＥＣＵ７０はステップ５１５にて「Ｙｅｓ」と判定してステップ５２０に進み、下り坂制御を開始する。このとき、ＰＭＥＣＵ７０は、目標残容量ＳＯＣcntrを標準残容量ＳＯＣcntr-nより小さい第１残容量ＳＯＣcntr-dに変更する。更に、ＰＭＥＣＵ７０は、開始地点ＤｓのデータをＲＡＭから消去する。次いでＰＭＥＣＵ７０はステップ５９５に進み、本ルーチンを一旦終了する。
【０１０７】
一方、現在位置Ｄｎが開始地点Ｄｓと一致していなければ（開始地点Ｄｓが消去されている場合を含む。）、ＰＭＥＣＵ７０はステップ５１５にて「Ｎｏ」と判定してステップ５２５に進み、現在位置Ｄｎが終了地点Ｄｅと一致しているか否かを判定する。
【０１０８】
現在位置Ｄｎが終了地点Ｄｅと一致していなければ、ＰＭＥＣＵ７０はステップ５２５にて「Ｎｏ」と判定してステップ５９５に直接進んで本ルーチンを一旦終了する。これに対し、現在位置Ｄｎが終了地点Ｄｅに一致していれば、ＰＭＥＣＵ７０はステップ５２５にて「Ｙｅｓ」と判定してステップ５３０に進み、下り坂制御を終了する。即ち、ＰＭＥＣＵ７０は目標残容量ＳＯＣcntrを標準残容量ＳＯＣcntr-nに変更する。更に、ＰＭＥＣＵ７０は、終了地点Ｄｅ（及び、対象下り坂区間の開始地点Ｄｋ）のデータをＲＡＭから消去する。次いで、ＰＭＥＣＵ７０はステップ５９５に直接進んで本ルーチンを一旦終了する。
【０１０９】
なお、開始地点Ｄｓ及び終了地点Ｄｅがいずれも設定されていなければ、ＰＭＥＣＵ７０はステップ５０５にて「Ｎｏ」と判定してステップ５９５に直接進んで本ルーチンを一旦終了する。
【０１１０】
＜車両走行制御＞
ＰＭＥＣＵ７０（実際にはそのＣＰＵ）は、十分に短い一定時間（例えば、８ｍｓ）が経過する毎に図６にフローチャートにより示した車両走行制御ルーチンを実行するようになっている。従って、ＰＭＥＣＵ７０は所定のタイミングにてステップ６００から処理を開始してステップ６０５に進み、ユーザ要求トルクＴｕをアクセル操作量ＡＰ及び車速ＳＰＤに基づいて取得するとともに、ユーザ要求トルクＴｕに車速ＳＰＤを乗じることにより車両要求出力Ｐｖ＊（ユーザ要求出力Ｐｕ＊）を取得する。
【０１１１】
次に、ＰＭＥＣＵ７０はステップ６１０に進み、下り坂制御が行われているか否かを判定する。図５に示した下り坂制御ルーチンによって下り坂制御が行われているときは、ＰＭＥＣＵ７０はステップ６１０にて「Ｙｅｓ」と判定してステップ６１５に進み、図７の（Ａ）に示したルックアップテーブルＭａｐＰｂ＊（ＳＯＣ−ＳＯＣcntr-d）を後述するバッテリ充電要求出力Ｐｂ＊を決定するためのルックアップテーブルとして設定する。
【０１１２】
次いで、ＰＭＥＣＵ７０はステップ６２０に進み、残容量ＳＯＣと、第１残容量ＳＯＣcntr-dと、ステップ６１５にて設定したルックアップテーブルＭａｐＰｂ＊（ＳＯＣ−ＳＯＣcntr-d）とに基づいてバッテリ充電要求出力Ｐｂ＊を決定する。
【０１１３】
このテーブルによれば、現時点の残容量ＳＯＣと目標残容量（第１残容量）ＳＯＣcntr-dとの差（＝ＳＯＣ−ＳＯＣcntr-d）が正の値であるとき（即ち、ＳＯＣ＞ＳＯＣcntr-dの場合）、充電要求出力Ｐｂ＊は負の値となり、差（＝ＳＯＣ−ＳＯＣcntr-d）の絶対値が大きいほど絶対値が大きくなるように決定される。一方、差（＝ＳＯＣ−ＳＯＣcntr-d）が負の値であるとき（即ち、ＳＯＣ＜ＳＯＣcntr-dの場合）、充電要求出力Ｐｂ＊は正の値となり、差（＝ＳＯＣ−ＳＯＣcntr-d）の絶対値が大きいほど絶対値が大きくなるように決定される。
【０１１４】
これに対し、下り坂制御が行われていないときは、ＰＭＥＣＵ７０はステップ６１０にて「Ｎｏ」と判定してステップ６６０に進み、図７の（Ｂ）に示したルックアップテーブルＭａｐＰｂ＊（ＳＯＣ−ＳＯＣcntr-n）をバッテリ充電要求出力Ｐｂ＊を決定するためのルックアップテーブルとして設定する。このテーブルは、その横軸が図７の（Ａ）の横軸と異なっている点を除き同一である。その後、ＰＭＥＣＵ７０はステップ６２０に進み、残容量ＳＯＣと、標準残容量ＳＯＣcntr-nと、ステップ６６０にて設定したルックアップテーブルＭａｐＰｂ＊（ＳＯＣ−ＳＯＣcntr-n）とに基づいてバッテリ充電要求出力Ｐｂ＊を決定する。
【０１１５】
ところで、実際の残容量ＳＯＣが目標残容量ＳＯＣcntrよりも大きい場合、バッテリ充電要求出力Ｐｂ＊は負の値を示す。一方、標準残容量ＳＯＣcntr-nは第１残容量ＳＯＣcntr-dよりも大きい値である。よって、残容量ＳＯＣが所定（任意）の値であるとき、バッテリ充電要求出力Ｐｂ＊がより小さくなるのは、目標残容量ＳＯＣcntrが第１残容量ＳＯＣcntr-dに設定されている場合である。つまり、下り坂制御を行っているときは、下り坂制御を行っていないときよりも充電要求出力がＰｂ＊が小さい。結果として、下り坂制御を行っているときは、機関２０がより運転されにくい状態となる。換言すると、下り坂制御を行っていないときは、下り坂制御を行っているときに比べ、機関２０がより運転され易くなる。
【０１１６】
次に、ＰＭＥＣＵ７０はステップ６２５に進み、残容量ＳＯＣが残容量下限値ＳＯＣlolmt よりも大きいか否かを判定する。残容量ＳＯＣが残容量下限値ＳＯＣlolmt よりも大きい場合、ＰＭＥＣＵ７０はステップ６２５にて「Ｙｅｓ」と判定し、ステップ６３５に直接進む。これに対し、残容量ＳＯＣが残容量下限値ＳＯＣlolmt 以下である場合、ＰＭＥＣＵ７０はステップ６２５にて「Ｎｏ」と判定してステップ６３０に進み、充電要求出力Ｐｂ＊に非常に大きい値（後述する機関始動閾値Ｐｅｔｈよりも大きい値）に設定し、その後、ステップ６３５に進む。
【０１１７】
ＰＭＥＣＵ７０はステップ６３５にて、車両要求出力Ｐｖ＊と充電要求出力Ｐｂ＊と損失（一定値）Ｐlossとの和を機関要求出力Ｐｅ＊として算出する。
【０１１８】
次に、ＰＭＥＣＵ７０はステップ６４０に進み、機関要求出力Ｐｅ＊が機関始動閾値Ｐｅｔｈよりも大きいか否かを判定する。機関始動閾値Ｐｅｔｈは内燃機関２０が所定の運転効率よりも高い運転効率にて運転され得る値に設定されている。
【０１１９】
機関要求出力Ｐｅ＊が機関始動閾値Ｐｅｔｈよりも大きい場合、ＰＭＥＣＵ７０はステップ６４０にて「Ｙｅｓ」と判定してステップ６４５に進み、機関停止中（内燃機関２０の運転が停止中）であるか否かを判定する。機関停止中であると、ＰＭＥＣＵ７０はステップ６５０に進んで内燃機関２０を始動させ、ステップ６５５に進む。これに対し、機関停止中でなければ、ＰＭＥＣＵ７０はステップ６４５からステップ６５５に直接進む。そして、ＰＭＥＣＵ７０は、ステップ６５５において、内燃機関２０及び第２発電電動機ＭＧ２（実際には、更に第１発電電動機ＭＧ１）を周知の手法に従って制御し、内燃機関２０及び第２発電電動機ＭＧ２の両方からの出力を用いて車両１０を走行させる。即ち、車両１０はハイブリッド走行を行う。
【０１２０】
一方、機関要求出力Ｐｅ＊が機関始動閾値Ｐｅｔｈ以下である場合、ＰＭＥＣＵ７０はステップ６４０にて「Ｎｏ」と判定してステップ６６５に進み、機関運転中（内燃機関２０が運転中）であるか否かを判定する。機関運転中であると、ＰＭＥＣＵ７０はステップ６７０に進んで内燃機関２０の運転を停止させ、ステップ６７５に進む。これに対し、機関運転中でなければ、ＰＭＥＣＵ７０はステップ６６５からステップ６７５に直接進む。そして、ＰＭＥＣＵ７０は、ステップ６７５において、第２発電電動機ＭＧ２を周知の手法に従って制御し、第２発電電動機ＭＧ２の出力のみを用いて車両１０を走行させる。即ち、車両１０は電動機走行（電気走行）を行う。
【０１２１】
なお、係る駆動力制御は周知であり、例えば、特開２００９−１２６４５０号公報（米国公開特許番号  ＵＳ２０１０／０２４１２９７）、特開平９−３０８０１２号公報（米国出願日１９９７年３月１０日の米国特許第６，１３１，６８０号）、特開２０１３−１５４７２０号公報、特開２０１３−１５４７１８号公報及び特開２０１３−１５４７１５号公報等に詳細に記載されている。
【０１２２】
＜回生制動制御＞
更に、ＰＭＥＣＵ７０は、図示しないルーチンを実行することにより、アクセル（アクセルペダル）操作量ＡＰが「０」であるとき、ブレーキペダルの操作量ＢＰに基づいて、車両１０に要求される要求制動力を決定する。そして、ＰＭＥＣＵ７０は、その要求制動力を要求回生制動力と要求摩擦制動力とに分配し、要求回生制動力が回生制動により発生するように第２発電電動機ＭＧ２を制御するとともに、要求摩擦制動力が図示しない摩擦ブレーキ装置により発生するように図示しない油圧ブレーキアクチュエータを制御する。なお、ＰＭＥＣＵ７０は、残容量ＳＯＣが残容量上限値ＳＯＣuplmt を超えない範囲で、できるだけ要求回生制動力が大きくなるように要求回生制動力を決定する。
【０１２３】
＜勾配値学習＞
ＮＶＥＣＵ７４（実際にはそのＣＰＵ）は、所定時間が経過する毎に図８にフローチャートにより示した勾配値学習ルーチン（実勾配情報取得・学習ルーチン）を実行するようになっている。従って、ＮＶＥＣＵ７４は所定のタイミングにてステップ８００から処理を開始してステップ８１０に進み、任意の道路区間ｊ（リンクｊに対応する道路区間）の一方の端点（一方のノードに対応する地点）から他方の端点（他方のノードに対応する地点）まで走行したか否かを判定する。
【０１２４】
ステップ８１０における判定結果が「Ｎｏ」である場合、ＮＶＥＣＵ７４はステップ８２０に進み、短区間標高差ΔＨight、標高差積算値ΣΔＨight、短区間走行距離ΔＬ及び走行距離積算値ΣΔＬを更新する。これらの値の具体的更新方法については後述する。その後、ＮＶＥＣＵ７４はステップ８９５に直接進んで本ルーチンを一旦終了する。
【０１２５】
ステップ８１０における判定結果が「Ｙｅｓ」である場合、ＮＶＥＣＵ７４はステップ８２５に進み、通過した道路区間ｊの平均勾配Ｓ_aveを算出する。この算出方法についても後述する。次に、ＮＶＥＣＵ７４はステップ８３０に進み、車両１０が道路区間ｊを順方向に走行したのか逆方向に走行したのかを判定する。
【０１２６】
車両１０が道路区間ｊを順方向に走行していれば、ＮＶＥＣＵ７４はステップ８４０に進み、道路区間ｊの暫定勾配値として平均勾配Ｓ_aveを格納する。これに対し、車両１０が道路区間ｊを逆方向に走行していれば、ＮＶＥＣＵ７４はステップ８５０に進み、道路区間ｊの暫定勾配値として平均勾配Ｓ_aveの符号を反転させた値（即ち、−平均勾配Ｓ_ave）を格納する。
【０１２７】
その後、ＮＶＥＣＵ７４はステップ８６０に進み、後述する（６）式に従って、道路区間ｊの学習勾配値を更新し、道路区間ｊと関連付けて走行データ記憶部８９に記憶（格納）する。即ち、道路区間ｊの勾配値を学習する。更に、ＮＶＥＣＵ７４は、その更新した学習勾配値に道路区間ｊの距離を乗じて学習標高差を算出し、その学習標高差も道路区間ｊと関連付けて走行データ記憶部８９に記憶（格納）する。即ち、ＮＶＥＣＵ７４はステップ８６０にて実勾配情報を学習する。次いで、ＮＶＥＣＵ７４はステップ８７０に進み、各値（ΔＨight、ΣΔＨight、ΔＬ、ΣΔＬ及びＳ_ave等）をクリアし、ステップ８９５に進んで本ルーチンを一旦終了する。
【０１２８】
＜平均勾配Ｓ_aveの算出及び学習勾配値の更新＞
次に、ＮＶＥＣＵ７４が行う平均勾配Ｓ_aveの算出及び学習勾配値の更新（即ち、勾配値の学習）について説明する。
【０１２９】
１．平均勾配Ｓ_aveの算出
ＮＶＥＣＵ７４は、先ず、車両１０が走行時に受ける抵抗加速度Ｇ_r（ｍ／ｓ２）及びロードロード加速度Ｇ_road（ｍ／ｓ２）より、勾配加速度（以下、「勾配抵抗」とも称呼する。）Ｇ_slopeを演算する。
【０１３０】
ＮＶＥＣＵ７４は、道路区間内において比較的短い所定時間毎又は所定距離毎に（即ち、短区間を走行する毎に）勾配抵抗Ｇ_slopeを演算する。即ち、ＮＶＥＣＵ７４は、車両１０が道路区間内を走行しているときに複数の勾配抵抗Ｇ_slopeを算出する。
【０１３１】
ところで、抵抗加速度Ｇ_r（ｍ／ｓ２）は、下記（１）式により表すことができる。
Ｇ_r ＝ Ｇ_fx ＋ Ｇ_vx ＋ Ｇ_air                （１）
【０１３２】
（１）式において、Ｇ_fx（ｍ／ｓ２）は、車両１０の駆動力Ｆｘと重量Ｍとから演算される「推定加速度」である（Ｇ_fx ＝ Ｆｘ／Ｍ）。
Ｇ_vx（ｍ／ｓ２）は、車速の微分値ｄＶｘ／ｄｔから演算される「実加速度」である（Ｇ_vx ＝ ｄＶｘ／ｄｔ）。
Ｇ_air（ｍ／ｓ２）は、車速の二乗から演算される「空気抵抗加速度」である（Ｇ_air ＝ Ｋ・Ｖｘ２  （Ｋは定数））。
【０１３３】
一方、路面に依存する抵抗加速度Ｇ_rは、下記（２）式に示すように、勾配抵抗Ｇ_slopeと、ロードロード（走行抵抗）に依存するロードロード加速度Ｇ_road の和として表すことができる。
Ｇ_r ＝ Ｇ_slope ＋ Ｇ_road            （２）
ロードロードとは、駆動源から路面までの間において生じる抵抗であり、駆動輪５４と路面との間において発生する路面抵抗及び駆動源で発生した駆動力を伝達する駆動系において発生する抵抗等が含まれる。
【０１３４】
よって、勾配抵抗Ｇ_slopeは（１）乃至（２）式から下記の（３）式として表すことができる。
Ｇ_slope ＝ Ｇ_r − Ｇ_road
＝ Ｇ_fx ＋ Ｇ_vx ＋ Ｇ_air − Ｇ_road
＝ Ｆｘ／Ｍ ＋ ｄＶｘ／ｄｔ ＋ Ｋ・Ｖｘ２ −Ｇ_road    （３）
駆動力Ｆｘは、例えば、エンジン状態量センサ９９に含まれる機関２０の回転速度センサにより検出された現在の機関回転速度ＮＥ及び図示しないシフトポジションセンサにより検出された現在の変速機の変速段の状態等に基づいて算出される。なお、駆動力Ｆｘは、アクセル操作量センサ８２により検出された現在のアクセル開度に基づいて算出されてもよい。更に、駆動力Ｆｘは、別途算出される駆動トルク、回生制動トルク及び油圧制動トルク等の値を用いて算出されてもよい。
【０１３５】
車速Ｖｘは、車速センサ８４から取得される。車重Ｍ、定数、ロードロード加速度Ｇ_roadは、予め定められ、ＮＶＥＣＵ７４のＲＯＭに記録されている。ＮＶＥＣＵ７４は、これらの値を（３）式に代入することにより、勾配抵抗Ｇ_slopeを算出することができる。
【０１３６】
ＮＶＥＣＵ７４は、算出した勾配抵抗Ｇ_slopeから下記の（４）式に示した短区間標高差ΔＨightを算出する。
ΔＨight ＝ （Ｇ_slope／９．８）×ΔＬ            （４）
ΔＬは車両１０の短区間走行距離であり、車速Ｖｘとサンプリング時間Ｔｓとの積により算出される値である。従って、ＮＶＥＣＵ７４は、リンク内における短区間標高差ΔＨightの総和である標高差をリンク長Ｌで除することにより、リンクの平均勾配Ｓ_ave を算出する。
Ｓ_ave ＝ ΣΔＨight／Ｌ                          （５）
なお、勾配抵抗Ｇ_slopeについては、例えば、特開２０１４−２４４８７号公報に詳細に記載されている。
【０１３７】
２．学習勾配値の更新
ＮＶＥＣＵ７４は、図８のステップ８６０において、以下のように学習勾配値を更新する。即ち、ＮＶＥＣＵ７４は、ステップ８６０に進んだとき、走行データ記憶部８９に記憶されている道路区間ｊについての平均勾配の記憶値（学習勾配値の前回値）Ｓ_ave_mと、ステップ８２５乃至ステップ８５０の処理により求めた道路区間ｊの勾配値Ｓ_aveと、を下記の（６）式に適用することにより、新たな記憶値（学習勾配値）Ｓ_ave_newを算出する。
Ｓ_ave_new ＝ Ｓ_ave × α ＋ Ｓ_ave_m × （１−α）        （６）
上記（６）式中のαは、０＜α＜１を満たす任意の正の定数である。但し、前回値が存在しない場合、即ち、１回目の学習である場合には、αは「１」に設定される。
【０１３８】
なお、ＮＶＥＣＵ７４は、実勾配情報として、エンジン状態量センサ９９に含まれる大気圧センサの出力値に基づいて算出してもよい。具体的には、ＮＶＥＣＵ７４は、リンク両端における大気圧センサの出力値を取得し、その差分値とリンクの長さとから勾配を算出する。
【０１３９】
以上、説明したように、第１装置は学習勾配値を含む実勾配情報が走行データ記憶部８９に格納されている場合には、その実勾配情報を対象下り坂区間を探索するための勾配情報として取得する（ステップ４２０）。第１装置は実勾配情報が走行データ記憶部８９に格納されていない場合には、ナビ地図勾配値を含む既計測勾配情報を対象下り坂区間を探索するための勾配情報として取得する（ステップ４４０）。その結果、より精度の高い勾配情報を用いて対象下り坂区間を探索することができる。従って、適正な区間において下り坂制御を実行することができるので、燃費向上効果を十分に発揮させることができる。
【０１４０】
＜第２実施形態＞
本発明の第２実施形態に係るハイブリッド車両の制御装置（以下、「第２装置」と称呼する。）は、ＮＶＤＢ８６に記憶された道路区間（道路区間に割り振られたリンクＩＤ）に変更があった場合に、その道路区間に対応する「学習勾配値を含む実勾配情報」を走行データ記憶部８９から消去する点のみにおいて、第１装置と相違している。
【０１４１】
より具体的に述べると、第２装置のＮＶＥＣＵ７４は、図９にフローチャートにより示した実勾配情報消去ルーチン（学習勾配値消去ルーチン）を、第１装置のＮＶＥＣＵ７４が実行するルーチンに加えて実行する。実勾配情報消去ルーチンは所定時間が経過する毎に実行される。従って、ＮＶＥＣＵ７４は所定のタイミングにてステップ９００から処理を開始し、ステップ９１０に進んで「任意の道路区間ｉが変更されたか（即ち、道路区間ｉに対応するリンクｉのリンクＩＤが変更されたか）否か」を判定する。このような道路区間ｉの変更及び変更された道路区間ｉについての地図情報は、例えば、外部のセンター等から送信され、ＮＶＥＣＵ７４が備える通信装置によって受信される。
【０１４２】
道路区間ｉが変更された場合、ＮＶＥＣＵ７４はステップ９１０にて「Ｙｅｓ」と判定してステップ９２０に進み、道路区間ｉについての学習勾配値を含む実勾配情報を消去する。これに対し、道路区間ｉが変更されていない場合、ＮＶＥＣＵ７４はステップ９１０にて「Ｎｏ」と判定し本ルーチンを一旦終了する。
【０１４３】
例えば、道路が新設されたことに対応してＮＶＤＢ８６に新しい道路情報が追加され、それにより、それまで記憶していた道路区間が変更されたとき、その道路区間に対応する学習勾配値を含む実勾配情報は、もはや正しい情報ではなくなっている。従って、このような場合、第２装置は、走行データ記憶部８９に記憶されたその道路区間に対応する実勾配情報を消去して、対象下り坂区間の探索に使用されないようにする。その結果、第２装置は、道路区間が変更になった場合に、下り坂区間の探索を精度良く実行することができるので、車両の燃費性能を向上することができる。
【０１４４】
以上、説明したように、本発明の各実施形態に係る制御装置は、下り坂制御によりもたらされる燃費改善効果をより確実に享受し得る。なお、本発明は上記実施形態に限定されることはなく、本発明の範囲内において種々の変形例を採用することができる。以下、そのような変形例を列挙する。
【０１４５】
（１）ＮＶＥＣＵ７４は、車両１０が所定距離を走行する毎に図３に示したルーチンを実行してもよい。
（２）ＰＭＥＣＵ７０が、図３のルーチンの一部又は全部を実行してもよい。その場合、ＰＭＥＣＵ７０はＮＶＥＣＵ７４から必要な情報を取得すればよい。
（３）ＰＭＥＣＵ７０が、図８のルーチンの一部又は全部を実行してもよい。
【０１４６】
（４）ＰＭＥＣＵ７０又はＮＶＥＣＵ７４は、車両１０が「下り坂制御の制御対象区間の終了地点Ｄｅ」を通過したことを、道路の勾配の大きさが所定勾配未満になったことをもって検出してもよい。
（５）ＰＭＥＣＵ７０又はＮＶＥＣＵ７４は、下り坂制御の制御対象区間の開始地点Ｄｓから終了地点Ｄｅまでの区間において、下り坂制御として目標残容量低下制御を実行していた。しかし、目標残容量低下制御は、車両１０が、プレユース区間を通過している場合にのみ実行されてもよく、プレユース区間を通過している場合と、対象下り坂区間の開始地点Ｄｋから、開始地点Ｄｋと終了地点Ｄｅとの間の時点Ｄｐまでの区間を通過している場合とにおいて実行されてもよい。
【符号の説明】
【０１４７】
１０…ハイブリッド車両、２０…内燃機関、５０…駆動力伝達機構、６４…蓄電池、７０…パワーマネジメントＥＣＵ、７１…バッテリＥＣＵ、７２…モータＥＣＵ、７３…エンジンＥＣＵ、７４…ナビゲーションＥＣＵ。
【図１】
0006347235.tif 000002
【図２】
0006347235.tif 000003
【図３】
0006347235.tif 000004
【図４】
0006347235.tif 000005
【図５】
0006347235.tif 000006
【図６】
0006347235.tif 000007
【図７】
0006347235.tif 000008
【図８】
0006347235.tif 000009
【図９】
0006347235.tif 000010