(57)【要約】      （修正有）【課題】左右スプリットμ路の坂道にヒルホールド制御にて停車中の車両が発進する場合に、車両が後退する可能性を低減させることが可能な車両制御装置の提供。【解決手段】車両制御装置は、車両の前方撮像画像に基いて、車両の前方の道路の路面μ状態を判定する。ヒルホールド制御の後に実行される制動力解除制御において、車両制御装置は、路面μ状態の判定結果が左右スプリットμ路である場合、制動力の単位時間当たりの減少量の大きさを変更する。【選択図】図６
2020131856.tif 000002
【特許請求の範囲】
【請求項１】
車両の前方を撮像することにより前方撮像画像を取得可能に構成された撮像装置と、
前記車両が備える複数の車輪のそれぞれの車輪速度を検出可能に構成された車輪速度センサと、
前記複数の車輪のうちの駆動輪に付与する駆動力を制御可能に構成された駆動装置と、
前記複数の車輪のそれぞれに付与する制動力を制御可能に構成された制動装置と、
を備える車両に適用され、
前記車両が停止している場合、運転者がブレーキペダルに対する操作を止めた第１時点から前記運転者がアクセルペダルに対する操作を開始した第２時点までの期間において、前記複数の車輪に対して前記制動力を付与するように前記制動装置を制御するヒルホールド制御と、
前記第２時点以降において、前記複数の車輪に付与されている前記制動力をゼロまで減少させる制動力解除制御と、
を実行可能に構成された車両制御部
を備える車両制御装置であって
前記車両制御部は、
前記前方撮像画像に基いて、前記車両の前方の道路が、左側の車輪が接地している路面の路面摩擦係数と右側の車輪が接地している路面の路面摩擦係数との差の大きさである左右路面μ差が存在しないと見做せる左右均一μ路、及び、前記左右路面μ差が存在すると見做せるスプリットμ路、の何れであるかを判定する
ように構成され、
更に、前記車両制御部は、前記制動力解除制御を実行する際、
前記前方の道路が前記スプリットμ路であると判定したときの前記制動力の単位時間当たりの減少量の大きさが、前記前方の道路が前記左右均一μ路であると判定したときの前記制動力の単位時間当たりの減少量の大きさよりも小さくなるように、前記制動力を減少させるように構成された
車両制御装置。
【請求項２】
請求項１に記載の車両制御装置において、
前記車両制御部は、前記制動力解除制御を実行する際、
前記駆動輪のうちの一つの車輪の車輪速度と前記駆動輪のうちの他の車輪の車輪速度との差である車輪速差の大きさが所定の第１閾値以上であるとき、
前記駆動輪のうちの車輪速度が大きい方の駆動輪である第１駆動輪に対する前記制動力の単位時間当たりの減少量の大きさが、前記第１駆動輪以外の車輪に対する前記制動力の単位時間当たりの減少量の大きさよりも小さくなるように、前記制動力を減少させるように構成された
車両制御装置。
【請求項３】
請求項２に記載の車両制御装置において、
前記車両制御部は、前記制動力解除制御を開始した時点からの経過時間が所定の時間閾値よりも大きくなった時点以降において、
前記車輪速差の大きさが前記第１閾値よりも小さい所定の第２閾値よりも大きいとき、前記第１駆動輪に対する前記制動力を維持し、且つ、前記第１駆動輪以外の車輪に対する前記制動力を減少させ、
前記車輪速差の大きさが前記第２閾値以下であるとき、前記複数の車輪の全ての車輪に対する前記制動力を減少させる
ように構成された
車両制御装置。
【請求項４】
請求項２に記載の車両制御装置において、
前記車両制御部は、
前記前方の道路が前記スプリットμ路であると判定したときの前記第１閾値の大きさを、前記前方の道路が前記左右均一μ路であると判定したときの前記第１閾値の大きさよりも小さく設定するように構成された
車両制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両の前方の撮像画像に基いて車両が走行している路面の状態を判定し、その判定結果に基いて、ヒルホールド制御により車輪に付与されている制動力をゼロまで減少させる制動力解除制御を実行する車両制御装置に関する。
【背景技術】
【０００２】
従来より、運転者がブレーキペダルを踏み込んで車両を坂道にて停止させている場合に運転者がブレーキペダルから足を離したとき、車輪に付与されている制動力を維持して車両の後退を防止するヒルホールド制御を実行する車両制御装置が知られている（例えば、特許文献１を参照。）。
【０００３】
特許文献１に開示されている車両制御装置（以下、「従来装置」と称呼する。）は、ヒルホールド制御の実行中に所定の解除条件が成立すると、車輪に付与されている制動力をゼロまで減少させる制動力解除制御を実行する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−１４２９０２号公報
【発明の概要】
【０００５】
ところで、車両が、車両の左側の路面の路面摩擦係数（以下、「路面μ」と称呼する。）と車両の右側の路面の路面μとが異なるスプリットμ路の坂道にて発進する場合がある。この状況において、従来装置が制動力解除制御を実行した場合、路面μが低い方の路面に接地している駆動輪がスリップする虞がある。従って、車両がスプリットμ路の坂道にて発進する際に、車両が後退する虞がある。
【０００６】
本発明は上述した課題に対処するためになされた。即ち、本発明の目的の一つは、車両がスプリットμ路の坂道にて発進する場合に、車両が後退する可能性を低減させることが可能な車両制御装置を提供することにある。
【０００７】
本発明の車両制御装置（以下、「本発明装置」と称呼される場合がある。）は、
車両（ＳＶ）の前方を撮像することにより前方撮像画像を取得可能に構成された撮像装置（４４）と、
前記車両が備える複数の車輪（Ｗfl、Ｗfr、Ｗrl、Ｗrr）のそれぞれの車輪速度を検出可能に構成された車輪速度センサ（４２fl、４２fr、４２rl、４２rr）と、
前記複数の車輪のうちの駆動輪（Ｗfl、Ｗfr）に付与する駆動力を制御可能に構成された駆動装置（１０、１１、１２）と、
前記複数の車輪のそれぞれに付与する制動力を制御可能に構成された制動装置（ＢＡ、２０、２１、２２、２３、２４）と、
を備える車両（ＳＶ）に適用される。
【０００８】
本発明装置は、
前記車両が停止している場合、運転者がブレーキペダルに対する操作を止めた第１時点（ステップ５０２：Ｙｅｓ）から前記運転者がアクセルペダルに対する操作を開始した第２時点（ステップ５０５：Ｙｅｓ）までの期間において、前記複数の車輪に対して前記制動力を付与するように前記制動装置を制御するヒルホールド制御（ステップ５０４）と、
前記第２時点以降において、前記複数の車輪に付与されている前記制動力をゼロまで減少させる制動力解除制御と、
を実行可能に構成された車両制御部（２０、３０）
を備える。
【０００９】
前記車両制御部は、
前記前方撮像画像に基いて、前記車両の前方の道路が、左側の車輪が接地している路面の路面摩擦係数と右側の車輪が接地している路面の路面摩擦係数との差の大きさである左右路面μ差が存在しないと見做せる左右均一μ路、及び、前記左右路面μ差が存在すると見做せるスプリットμ路、の何れであるかを判定する（ステップ４０３、ステップ４０４、ステップ４０５）
ように構成されている。
更に、前記車両制御部は、前記制動力解除制御を実行する際、
前記前方の道路が前記スプリットμ路であると判定したときの前記制動力の単位時間当たりの減少量の大きさが、前記前方の道路が前記左右均一μ路であると判定したときの前記制動力の単位時間当たりの減少量の大きさよりも小さくなるように、前記制動力を減少させる（ステップ６１１：Ｎｏ、ステップ６１３）ように構成されている。
【００１０】
本発明装置によれば、車両の前方の道路がスプリットμ路であると判定された場合、制動力解除制御における制動力の単位時間当たりの減少量が、車両の前方の道路が左右均一μ路であると判定された場合の制動力の単位時間当たりの減少量よりも小さくなる。従って、駆動輪が、急激に回転することなく徐々に回転する。低い路面μを有する路面側の駆動輪の空転が回避され、当該駆動輪がスプリットμ路の路面をグリップし易くなる。更に、高い路面μを有する路面側の駆動輪の駆動力が路面に徐々に伝わる。従って、本発明装置は、車両がスプリットμ路の坂道にて発進する場合に、車両が後退する可能性を低減させることができる。
【００１１】
本発明装置の一態様において、前記車両制御部は、前記制動力解除制御を実行する際、
前記駆動輪のうちの一つの車輪の車輪速度と前記駆動輪のうちの他の車輪の車輪速度との差である車輪速差の大きさ（｜ΔＶｗ｜）が所定の第１閾値（Ｖｔｈ１）以上であるとき、
前記駆動輪のうちの車輪速度が大きい方の駆動輪である第１駆動輪に対する前記制動力の単位時間当たりの減少量の大きさが、前記第１駆動輪以外の車輪に対する前記制動力の単位時間当たりの減少量の大きさよりも小さくなるように、前記制動力を減少させる（ステップ６０５、ステップ６０６）ように構成されている。
【００１２】
本態様によれば、車両がスプリットμ路にて発進する際に、車輪速差の大きさが第１閾値以上になった場合、駆動輪のうちの車輪速度が大きい方の駆動輪である第１駆動輪に対する制動力の単位時間当たりの減少量の大きさが小さくなる。従って、車輪速度が大きい方の第１駆動輪に対して、他方の駆動輪に比べて大きい制動力が付与される。従って、第１駆動輪の空転を抑えることができる。
【００１３】
本発明装置の一態様において、
前記車両制御部は、前記制動力解除制御を開始した時点からの経過時間（Ｔｅｐ）が所定の時間閾値（Ｔｔｈ）よりも大きくなった時点以降において、
前記車輪速差の大きさ（｜ΔＶｗ｜）が前記第１閾値よりも小さい所定の第２閾値（Ｖｔｈ２）よりも大きいとき、前記第１駆動輪に対する前記制動力を維持し、且つ、前記第１駆動輪以外の車輪に対する前記制動力を減少させ（ステップ６２４、ステップ６２５）、
前記車輪速差の大きさが前記第２閾値以下であるとき、前記複数の車輪の全ての車輪に対する前記制動力を減少させる（ステップ６２６）
ように構成されている。
【００１４】
本態様によれば、制動力解除制御を開始した時点からの経過時間が所定の時間閾値よりも大きくなった時点以降において、車輪速差の大きさが所定の第２閾値よりも大きいとき、第１駆動輪に対する制動力が維持され、第１駆動輪以外の車輪に対する制動力が減少される。これにより、第１駆動輪の空転を抑えることができる。第１駆動輪の空転を抑えている間に他方の駆動輪の駆動力が路面に伝わり、その結果、車両がスプリットμ路の路面にて後退することなく発進することができる。
【００１５】
本発明装置の一態様において、
前記車両制御部は、
前記前方の道路が前記スプリットμ路であると判定したときの前記第１閾値の大きさを、前記前方の道路が前記左右均一μ路であると判定したときの前記第１閾値の大きさよりも小さく設定するように構成されている。
【００１６】
本態様によれば、車両の前方の道路がスプリットμ路であると判定された場合、車輪速差の大きさが過大になる前に、低い路面μを有する路面側の駆動輪の単位時間当たりの減少量が小さくなる。従って、低い路面μを有する路面側の駆動輪が空転する可能性を更に低減することができる。
【００１７】
上記説明においては、本発明の理解を助けるために、後述する実施形態に対応する発明の構成に対し、その実施形態で用いた名称及び／又は符号を括弧書きで添えている。しかしながら、本発明の各構成要素は、前記名称及び／又は符号によって規定される実施形態に限定されるものではない。
【図面の簡単な説明】
【００１８】
【図１】本発明の実施形態に係る車両制御装置を備えた車両の概略構成図である。
【図２】前方撮像画像に基く路面μ状態の判定方法を説明するための図である。
【図３】前方撮像画像に基く路面μ状態の判定方法を説明するための図である。
【図４】図１に示した画像処理ＥＣＵのＣＰＵが実行する「路面μ状態判定ルーチン」を示したフローチャートである。
【図５】図１に示したブレーキＥＣＵのＣＰＵが実行する「ヒルホールド制御実行ルーチン」を示したフローチャートである。
【図６】図１に示したブレーキＥＣＵのＣＰＵが実行する「制動力解除制御実行ルーチン」を示したフローチャートである。
【図７】車両が「左右均一μ路」の坂道にて発進する場合においてヒルホールド制御及び制動力解除制御が行われたときの車両の挙動を表した図である。
【図８】車両が「スプリットμ路」の坂道にて発進する場合においてヒルホールド制御及び制動力解除制御が行われたときの車両の挙動を表した図である。
【図９】車両が「スプリットμ路」の坂道にて発進する場合においてヒルホールド制御及び制動力解除制御が行われたときの車両の挙動を表した図である。
【図１０】車両が「スプリットμ路」の坂道にて発進する場合においてヒルホールド制御及び制動力解除制御が行われたときの車両の挙動を表した図である。
【図１１】変形例に係る画像処理ＥＣＵのＣＰＵが実行する「路面μ状態判定ルーチン」を示したフローチャートである。
【発明を実施するための形態】
【００１９】
以下、添付図面を参照して本発明の実施形態について説明する。なお、添付図面は本発明の原理に則った具体的な実施形態を示しているが、これらは本発明を理解するための例あり、本発明を限定的に解釈するために用いられるべきでない。
【００２０】
＜構成＞
本発明の実施形態に係る車両制御装置（以下、「本実施装置」と称呼する。）は、図１に示す車両ＳＶに搭載される。本実施装置は、エンジンＥＣＵ１０、ブレーキＥＣＵ２０、及び、画像処理ＥＣＵ３０を備えている。
【００２１】
これらのＥＣＵは、ＣＡＮ（Controller Area Network）を介してデータ交換可能（通信可能）に互いに接続されている。各ＥＣＵはマイクロコンピュータを含む。マイクロコンピュータは、ＣＰＵ、ＲＯＭ、ＲＡＭ、不揮発性メモリ及びインターフェース（Ｉ／Ｆ）等を含む。ＣＰＵはＲＯＭに格納されたインストラクション（プログラム、ルーチン）を実行することにより各種機能を実現する。
【００２２】
エンジンＥＣＵ１０は、アクセルペダル操作量センサ４１を含むエンジン状態量センサ（図示省略）に接続されている。アクセルペダル操作量センサ４１は、車両ＳＶのアクセルペダル４１ａの操作量（アクセル開度）を検出し、アクセルペダル操作量ＡＰを表す信号を発生するようになっている。
【００２３】
更に、エンジンＥＣＵ１０は、エンジンアクチュエータ１１に接続されている。エンジンアクチュエータ１１は、エンジン（内燃機関）１２のスロットル弁の開度を変更するスロットル弁アクチュエータを含む。エンジンＥＣＵ１０は、アクセルペダル操作量ＡＰ及び他のエンジン状態量センサにより検出される運転状態量（例えば、エンジン回転速度）に基いてエンジンアクチュエータ１１を駆動する。これにより、エンジンＥＣＵ１０は、エンジン１２が発生するトルクを変更することができる。エンジン１２が発生するトルクは、トランスミッション（図示省略）を介して駆動輪（本例において、左前輪Ｗfl及び右前輪Ｗfr）に伝達される。従って、エンジンＥＣＵ１０は、エンジンアクチュエータ１１を制御することによって車両ＳＶの駆動力を制御して加速状態（加速度）を変更することができる。
【００２４】
なお、車両ＳＶがハイブリッド車両である場合、エンジンＥＣＵ１０は、車両駆動源としての「内燃機関及び電動機」の何れか一方又は両方によって発生する車両の駆動力を制御することができる。更に、車両ＳＶが電気自動車である場合、エンジンＥＣＵ１０は、車両駆動源としての電動機によって発生する車両の駆動力を制御することができる。
【００２５】
ブレーキＥＣＵ２０は、アクセルペダル操作量センサ４１、車輪速度センサ４２（４２fl、４２fr、４２rl及び４２rr）、加速度センサ４３及び制動装置ＢＡに接続されている。
【００２６】
車輪速度センサ４２（４２fl、４２fr、４２rl及び４２rr）は、対応する車輪（Ｗfl、Ｗfr、Ｗrl、Ｗrr）が一定角度回転する毎に一つのパルスを発生するようになっている。ここで、添え字「fl」が「左前輪Ｗfl」、添え字「fr」が「右前輪Ｗfr」、添え字「rl」が「左後輪Ｗrl」、添え字「rr」が「右後輪Ｗrr」に対応する。以降の説明において、添え字「ｉ」は「fl、fr、rl及びrr」の何れかを表す。更に、添え字「f*」は「fl及びfr」の何れか、添え字「r*」は「rl及びrr」の何れかを表している。
【００２７】
加速度センサ４３は、車両ＳＶの前後方向の加速度を検出し、検出した加速度Ｇｓを表す信号を発生するようになっている。
【００２８】
制動装置ＢＡは、ブレーキペダル２１、マスタシリンダ２２、マスタシリンダ圧センサＭＳ、油圧回路２３、及び、ホイールシリンダ２４（２４fl、２４fr、２４rl及び２４rr）等を含む。
【００２９】
マスタシリンダ圧センサＭＳは、運転者によるブレーキペダル２１の踏込み操作に応じて駆動されるマスタシリンダ２２の圧力（以下、「マスタシリンダ圧」とも称呼する。）Ｐｍを表す出力信号を発生するようになっている。
【００３０】
油圧回路２３は、リザーバ、オイルポンプ及び種々の弁装置等を含み、ブレーキアクチュエータとして機能する。
【００３１】
制動装置ＢＡは、ホイールシリンダ２４iに供給される作動油のそれぞれの圧力（ホイールシリンダ２４iの制動圧）に比例する制動力を、対応する車輪Ｗiのそれぞれに付与する。具体的には、ブレーキＥＣＵ２０は、マスタシリンダ圧Ｐｍに基いて左前輪Ｗfl、右前輪Ｗfr、左後輪Ｗrl及び右後輪Ｗrrのそれぞれの目標制動力Ｆbfl、Ｆbfr、Ｆbrl及びＦbrrを算出する。ブレーキＥＣＵ２０は、各車輪Ｗiの制動力が対応するそれぞれの目標制動力Ｆbiとなるように、各車輪Ｗiに対応するホイールシリンダ２４iの制動圧をそれぞれ制御する。
【００３２】
更に、後述するように、ブレーキＥＣＵ２０は、運転者によるブレーキペダル２１の踏み込み量に関係なく油圧回路２３を制御することにより、ホイールシリンダ２４iの制動圧をそれぞれ制御することができる。
【００３３】
更に、ブレーキＥＣＵ２０は、所定の計測時間当たりに車輪速度センサ４２iが発生したパルス数をカウントし、そのカウント値からその車輪速度センサ４２iが設けられた車輪Ｗiの回転速度（車輪の角速度）を算出するようになっている。
【００３４】
そして、ブレーキＥＣＵ２０は、下記の（１）式に基いて車輪速度（車輪の周速度）Ｖwiを算出する。（１）式において、ｒiは車輪（タイヤ）の動半径、ωiは車輪の回転速度（角速度）、Ｎはロータの歯数（ロータ１回転あたりに発生するパルス数）、Ｐiは所定の計測時間ΔＴ当たりにカウントされたパルス数である。
Ｖwi＝ｒi・ωi＝ｒi・｛（２・π／Ｎ）・（Ｐi／ΔＴ）｝    …（１）
【００３５】
画像処理ＥＣＵ３０は、カメラ（撮像装置）４４に接続されている。例えば、カメラ４４は、ＣＣＤ（charge coupled device）或いはＣＩＳ（CMOS image sensor）の撮像素子を含む。カメラ４４は、車両ＳＶの前方を撮像することにより車両前方の路面を含む撮像画像である前方撮像画像（前方領域の画像データ）を取得する。
【００３６】
後述するように、画像処理ＥＣＵ３０は、前方撮像画像に基いて、車両ＳＶの前方の道路の路面状態（以下、「路面μ状態」と称呼する。）を判定し、その路面μ状態の判定結果をブレーキＥＣＵ２０に送信するようになっている。
【００３７】
以降、アクセルペダル操作量ＡＰ及びマスタシリンダ圧Ｐｍ等の現在の運転者の運転状態を表す情報を「運転状態情報（又は運転操作量情報）」と称呼する場合がある。
【００３８】
＜トラクション制御＞
ブレーキＥＣＵ２０は、車両ＳＶの加速時（車両ＳＶの発進時を含む）において、駆動輪（本例において、左前輪Ｗfl及び右前輪Ｗfr）の空転を抑制するための周知のトラクション制御を実行するようになっている。なお、「駆動輪の空転」とは、駆動輪Ｗf*が路面から浮いた場合、及び、駆動輪Ｗf*が路面上でスリップ状態になる場合、を含む。トラクション制御は「駆動スリップ制御」とも称呼され、以降において単に「ＴＲＣ制御」と称呼される。
【００３９】
ブレーキＥＣＵ２０は、車輪速度センサ４２iからの信号に基いて前述したように車輪速度Ｖwiを算出し、それら車輪速度Ｖwiに基いて各駆動輪Ｗf*のスリップ量ＳＡf*を算出する。スリップ量ＳＡf*は、駆動輪Ｗf*の空転の程度を表す指標値の一つであり、「空転指標値」とも称呼される。スリップ量ＳＡf*は、下記（２）式により求められる。「Ｖa」は、基準速度であり、例えば推定される車体速度である。Ｖaは、非駆動輪（従輪、本例においてはＷr*）の車輪速度Ｖwr*又は車輪速度Ｖwr*の平均値等により算出される。従って、スリップ量ＳＡf*は、駆動輪Ｗf*と非駆動輪（従輪）との車輪速差に相当する値と言うこともできる。
ＳＡf*  ＝  Ｖwf*−Ｖa    …（２）
【００４０】
なお、空転指標値として、下記（３）式により求められるスリップ率ＳＢf*が採用されてもよい。
ＳＢf*  ＝  （（Ｖwf*−Ｖa）／Ｖａ）×１００％    …（３）
【００４１】
ブレーキＥＣＵ２０は、車両ＳＶの加速時において、駆動輪Ｗf*のスリップ量ＳＡf*が所定のＴＲＣ開始閾値（ＴＲＣ制御を開始するか否かを判定するための閾値）Ｔｈ_trcを超えたときに、その駆動輪Ｗf*が空転していると判定する。ブレーキＥＣＵ２０は、「空転していると判定された駆動輪Ｗf*」を「ＴＲＣ対象輪」として決定し、ＴＲＣ対象輪Ｗf*に対してＴＲＣ制御を開始する。なお、ＴＲＣ制御が頻繁に実行されると、運転者が違和感を感じることから、通常、ＴＲＣ開始閾値Ｔｈ_trcは比較的高い値に設定されている。
【００４２】
ブレーキＥＣＵ２０は、油圧回路２３を制御して、ＴＲＣ対象輪Ｗf*に対応するホイールシリンダ２４f*の制動圧を増加させる。これにより、ＴＲＣ対象輪Ｗf*に対して制動力が付与されて、ＴＲＣ対象輪Ｗf*のスリップ量ＳＡf*が徐々に減少する。
【００４３】
その後、ブレーキＥＣＵ２０は、ＴＲＣ対象輪Ｗf*に対応するホイールシリンダ２４f*の制動圧の増加及び減少を繰り返し実行する。そして、ブレーキＥＣＵ２０は、所定のＴＲＣ終了条件が成立すると、ＴＲＣ制御を終了させる。ＴＲＣ終了条件は、例えば、ＴＲＣ対象輪Ｗf*のスリップ量ＳＡf*が「ＴＲＣ開始閾値Ｔｈ_trcよりも小さいＴＲＣ終了閾値Ｔｈ_trcend」よりも小さい状態が所定時間以上継続したときに成立する。
【００４４】
なお、車両ＳＶが駆動輪Ｗf*に付与する駆動トルクを駆動輪Ｗf*毎に独立して制御可能な車両である場合、本実施装置は、ＴＲＣ対象輪Ｗf*に配分される駆動トルクを独立して制御することにより、ＴＲＣ対象輪Ｗf*のスリップ量ＳＡf*を減少させてもよい。
【００４５】
＜ヒルホールド制御＞
ブレーキＥＣＵ２０は、車両ＳＶが坂道にて発進するとき、周知のヒルホールド制御を実行するようになっている。ヒルホールド制御は「坂道発進補助制御」とも称呼される。ヒルホールド制御は、車両ＳＶが坂道にて発進するときに、運転者がブレーキペダル２１に対する操作を止めた時点（第１時点）から運転者がアクセルペダル４１ａに対する操作を開始した時点（第２時点）までの期間において車輪Ｗiに対して制動力を付与する制御である。これにより、車両ＳＶが坂道にて発進するときに、車両ＳＶの後退を防ぐことができる。
【００４６】
ブレーキＥＣＵ２０は、所定のヒルホールド制御開始条件が成立した場合、ヒルホールド制御を実行する。ヒルホールド制御開始条件は、例えば、運転者がブレーキペダル２１を踏み込んだ状態が所定期間Ｔｐｒ（例えば、２秒）以上継続した後に、運転者がブレーキペダル３１から足を離したときに成立する。
【００４７】
ブレーキＥＣＵ２０は、ヒルホールド制御開始条件が成立すると、運転者がブレーキペダル２１から足を離す直前に付与されていた制動力を、引き続き車輪Ｗiに対して付与する。即ち、運転者がブレーキペダル２１から足を離す直前に付与されていた制動力が維持される。
【００４８】
ブレーキＥＣＵ２０は、所定のヒルホールド制御終了条件が成立すると、後述するように、車輪Ｗiに付与されている制動力をゼロまで減少させる制動力解除制御を実行する。ヒルホールド制御終了条件は、例えば、ヒルホールド制御中に運転者がアクセルペダル４１ａに対する操作を開始したときに成立する。
【００４９】
＜本実施装置の作動の概要＞
例えば、車両ＳＶが、以下の２つの路面状態のそれぞれの坂道にて発進する場合において、ヒルホールド制御が実行された後に制動力解除制御が実行される状況を考える。
（左右均一μ路）：車両ＳＶの左側の車輪（正確には駆動輪である左前輪Ｗfl）が接地している路面μ（左路面μ）と車両ＳＶの右側の車輪（正確には駆動輪である右前輪Ｗfr）が接地している路面μ（右路面μ）とが互いに略等しい。
（スプリットμ路）：左路面μと右路面μとの間に差が存在する。
【００５０】
車両ＳＶが左右均一μ路の坂道にて発進する場合、制動力解除制御において車輪Ｗiに対する制動力を急激にゼロまで減少させたとしても、駆動輪Ｗf*が空転する可能性が小さい。
【００５１】
これに対し、車両ＳＶがスプリットμ路の坂道にて発進する場合、制動力解除制御において車輪Ｗiに対する制動力を急激にゼロまで減少させると、路面μが低い方の路面に接地している駆動輪Ｗf*が空転する可能性が高い。しかし、前述したように、通常、ＴＲＣ開始閾値Ｔｈ_trcは比較的高い値に設定されているので、ＴＲＣ制御が開始されるまでの時間が長くなる。従って、車両ＳＶが坂道において後退する虞がある。
【００５２】
そこで、本実施装置は、カメラ４４から取得される前方撮像画像に基いて、車両ＳＶの前方の道路の路面μ状態を判定する。本実施装置は、制動力解除制御を実行する際に、その路面μ状態の判定結果に基いて、制動力の単位時間当たりの減少量を変更する。
【００５３】
具体的に述べると、本実施装置は、前方の道路がスプリットμ路であると判定した場合、前方の道路が左右均一μ路と判定した場合に比べて、制動力解除制御における制動力の単位時間当たりの減少量を小さく設定する。これにより、前方の道路がスプリットμ路である場合、車輪Ｗiに対する制動力が単位時間当たりに比較的小さい変化量で徐々に減少される。路面μが低い方の路面に接地している駆動輪Ｗf*の空転が回避され、その駆動輪Ｗf*がスプリットμ路の路面をグリップし易くなる。更に、路面μが高い方の路面に接地している駆動輪Ｗf*の駆動力も路面に徐々に伝わる。従って、本実施装置は、車両ＳＶがスプリットμ路の坂道にて発進する場合に、車両ＳＶが後退する可能性を低減させることができる。
【００５４】
＜前方撮像画像に基く前方道路の路面μ状態の判定方法＞
次に、前方撮像画像に基く前方の道路の路面μ状態の判定方法について説明する。
まず、画像処理ＥＣＵ３０は、図２に示したように、カメラ４４から取得した前方撮像画像１００ａを、それぞれが長方形の複数の領域に分割する。即ち、前方撮像画像１００ａは、画像の横方向の中心を通り画像の縦方向に延びる第１中心線Ｌ１０と、画像の縦方向の中心を通り画像の横方向に延びる第２中心線Ｌ１１と、によって均等に４分割される。更に、前方撮像画像１００ａは、前方撮像画像１００ａに含まれる「車両ＳＶが走行している車線（自車線）の区画線、即ち、左区画線１０１Ｌ（この例では白色実線）及び右区画線１０１Ｒ（この例では白色破線）」によって、更に分割される。この結果、前方撮像画像１００ａは、最終的に領域Ａ乃至領域Ｆの６個の領域に分割される。なお、自車線に隣接している車線の区画線１０２Ｒは前方撮像画像１００ａの分割には使用されない。
【００５５】
即ち、前方撮像画像１００ａの上段が、左から右に向かって順に領域Ａ及び領域Ｂに分割される。前方撮像画像１００ａの下段が、左から右に向かって順に領域Ｃ、領域Ｄ、領域Ｅ及び領域Ｆに分割される。
【００５６】
次に、画像処理ＥＣＵ３０は、領域Ａ乃至領域Ｆ毎に、「路面μが比較的に高い路面」が有する特徴（以下、「高μ特徴」と称呼する。）が含まれる割合を算出する。以降において、当該割合は「高μ特徴割合」と称呼される。高μ特徴割合は、着目する領域の面積に対する、当該領域内において高μ特徴を有している部分の面積の割合である。なお、高μ特徴は、画像の色、明るさ及び粗さ等によって表される特徴である。
【００５７】
そして、画像処理ＥＣＵ３０は、各領域の高μ特徴割合に基いて、以下に述べるように、車両ＳＶの走行車線（自車線）の路面μ状態を判定する。なお、このような画像処理方法及び画像解析方法は、周知である（例えば、特開２０１８−９０１６１号公報及び特開２０１８−９５０７６号公報等を参照。）。
【００５８】
画像処理ＥＣＵ３０は、領域Ａ乃至領域Ｆのうちから自車線に相当する領域を特定する。図２に示した例において、自車線に相当する領域は、領域Ｄ及び領域Ｅである。なお、この自車線に相当する２つ領域が前方撮像画像１００ａに含まれやすくなるように、カメラ４４の位置及び撮像範囲が設定されている。
【００５９】
画像処理ＥＣＵ３０は、特定した２つの領域の高μ特徴割合に基いて、以下に述べる「スプリットμ路条件」が成立するか否かを判定する。以下において、任意の領域Ｘの高μ路面割合を「Ｘ１」と表す。例えば、領域Ｄの高μ特徴割合は「高μ特徴割合Ｄ１」と称呼され、領域Ｅの高μ特徴割合は「高μ特徴割合Ｅ１」と称呼される。
スプリットμ路条件：高μ特徴割合Ｄ１と高μ特徴割合Ｅ１との差の大きさ（＝｜Ｄ１−Ｅ１｜）が判定閾値Ｔｒｔｈより大きい。
【００６０】
画像処理ＥＣＵ３０は、スプリットμ路条件の判定結果に基いて、車両ＳＶの前方の道路が、左右均一μ路及びスプリットμ路の何れであるかを区別（判定）する。
【００６１】
図２に示した前方撮像画像１００ａの場合、スプリットμ路条件が成立しない。従って、画像処理ＥＣＵ３０は、車両ＳＶの前方の道路が、「左路面μと右路面μとの差である左右路面μ差が存在しないと見做せる左右均一μ路」であると判定する。
【００６２】
これに対し、図３に示した前方撮像画像１００ｂの場合、スプリットμ路条件が成立する。従って、画像処理ＥＣＵ３０は、車両ＳＶの前方の道路が、「左右路面μ差が存在すると見做せるスプリットμ路」であると判定する。
【００６３】
画像処理ＥＣＵ３０は、上述のように判定された前方の道路の路面μ状態に関する情報をブレーキＥＣＵ２０に送信するようになっている。
【００６４】
＜具体的作動＞
画像処理ＥＣＵ３０のＣＰＵ（単に「ＣＰＵ１」と称呼する。）は、所定時間が経過するごとに図４にフローチャートにより示した「路面μ状態判定ルーチン」を実行するようになっている。
【００６５】
従って、所定のタイミングになると、ＣＰＵ１は、図４のステップ４００から処理を開始し、以下に述べるステップ４０１及びステップ４０２の処理を順に行った後、ステップ４０３に進む。
【００６６】
ステップ４０１：ＣＰＵ１は、前方撮像画像をカメラ４４から取得する。
ステップ４０２：ＣＰＵ１は、前方撮像画像を前述したように画像処理及び画像解析することによって、領域Ｄの高μ特徴割合Ｄ１及び領域Ｅの高μ特徴割合Ｅ１をそれぞれ算出する。
【００６７】
ＣＰＵ１は、ステップ４０３に進むと、上述したスプリットμ路条件が成立するか否かを判定する。スプリットμ路条件が成立している場合、ＣＰＵ１は、ステップ４０３にて「Ｙｅｓ」と判定して、以下に述べるステップ４０４及びステップ４０６の処理を順に行う。その後、ＣＰＵ１は、ステップ４９５に進んで本ルーチンを一旦終了する。
【００６８】
ステップ４０４：ＣＰＵ１は、第１フラグＦｓｐの値を「１」に設定する。第１フラグＦｓｐは、その値が「１」であるとき車両ＳＶの前方の道路がスプリットμ路であることを示し、その値が「０」であるとき車両ＳＶの前方の道路が左右均一μ路であることを示す。なお、第１フラグＦｓｐの値は、図示しないイグニッションスイッチがＯＦＦ位置からＯＮ位置へと変更されたときに実行されるイニシャライズルーチンにおいて「０」に設定される。
ステップ４０６：ＣＰＵ１は、車両ＳＶの前方の道路の路面μ状態に関する情報（第１フラグＦｓｐの値に関する情報）をブレーキＥＣＵ２０に送信する。
【００６９】
これに対して、スプリットμ路条件が成立していない場合、ＣＰＵ１は、ステップ４０３にて「Ｎｏ」と判定してステップ４０５に進み、第１フラグＦｓｐの値を「０」に設定する。次に、ＣＰＵ１は、ステップ４０６にて、車両ＳＶの前方の道路の路面μ状態に関する情報（第１フラグＦｓｐの値に関する情報）をブレーキＥＣＵ２０に送信する。その後、ＣＰＵ１は、ステップ４９５に進み本ルーチンを一旦終了する。
【００７０】
更に、ブレーキＥＣＵ２０のＣＰＵ（単に「ＣＰＵ２」と称呼する。）は、所定時間が経過するごとに図５にフローチャートにより示した「ヒルホールド制御実行ルーチン」を実行するようになっている。なお、ＣＰＵ２は、図示しないルーチンを所定時間が経過する毎に実行することにより、アクセルペダル操作量センサ４１及びマスタシリンダ圧センサＭＳから運転状態情報を取得して、当該運転状態情報をＲＡＭに格納している。
【００７１】
更に、ＣＰＵ２は、図示しないルーチンを所定時間が経過する毎に実行することにより、マスタシリンダ圧Ｐｍに基いて目標制動力Ｆbiを算出し、目標制動力ＦbiをＲＡＭに格納している。そして、ＣＰＵ２は、各車輪Ｗiの制動力が目標制動力Ｆbiとなるように、ホイールシリンダ２４iの制動圧をそれぞれ制御している。
【００７２】
所定のタイミングになると、ＣＰＵ２は、ステップ５００から図５のルーチンを開始してステップ５０１に進み、第２フラグＦｈｈが「０」であるか否かを判定する。第２フラグＦｈｈは、その値が「１」であるときヒルホールド制御が実行されていることを示し、その値が「０」であるときヒルホールド制御が実行されていないことを示す。第２フラグＦｈｈの値は、上述のイニシャライズルーチンにおいて「０」に設定される。更に、第２フラグＦｈｈの値は、後述するステップ５０６においても「０」に設定される。
【００７３】
いま、第２フラグＦｈｈの値が「０」である（ヒルホールド制御が実行されていない）と仮定すると、ＣＰＵ２はステップ５０１にて「Ｙｅｓ」と判定してステップ５０２に進み、所定のヒルホールド制御開始条件（以下、単に「開始条件」と称呼する。）が成立しているか否かを判定する。開始条件は、以下の条件Ａ１乃至条件Ａ３の総てが成立したときに成立する。
（条件Ａ１）：車両ＳＶが停止している。即ち、総ての車輪速度Ｖwiの値がゼロである。
（条件Ａ２）：マスタシリンダ圧Ｐｍの値が、所定の閾値Ｐｍｔｈ以上の値から、所定の閾値Ｐｍｔｈ未満への値へと変化した。即ち、運転者がブレーキペダル２１に対する操作を止めた。
（条件Ａ３）：条件Ａ２が成立する直前に、マスタシリンダ圧Ｐｍが所定の閾値Ｐｍｔｈ以上の状態（即ち、運転者がブレーキペダル２１を踏み込んだ状態）が所定期間Ｔｐｒ以上継続していた。
【００７４】
開始条件が成立していない場合、ＣＰＵ２は、そのステップ５０２にて「Ｎｏ」と判定し、ステップ５９５に直接進んで本ルーチンを一旦終了する。
【００７５】
これに対し、開始条件が成立している場合、ＣＰＵ２は、そのステップ５０２にて「Ｙｅｓ」と判定して、以下に述べるステップ５０３及びステップ５０４の処理を順に行う。その後、ＣＰＵ２は、ステップ５９５に進んで本ルーチンを一旦終了する。
【００７６】
ステップ５０３：ＣＰＵ２は、第２フラグＦｈｈの値を「１」に設定する。
ステップ５０４：ＣＰＵ２は、ヒルホールド制御を実行する。具体的には、ＣＰＵ２は、条件Ａ２が成立した時点（運転者がブレーキペダル２１に対する操作を止めた時点）の直前の時点の目標制動力Ｆbiの値をＲＡＭから取得する。そして、ＣＰＵ２は、目標制動力Ｆbiを当該ＲＡＭから取得した値にそれぞれ設定する。ＣＰＵ２は、各車輪Ｗiの制動力が対応するそれぞれの目標制動力Ｆbiとなるように、ホイールシリンダ２４iの制動圧をそれぞれ制御する。これにより、運転者がブレーキペダル２１に対する操作を止めた時点の直前の時点に車輪Ｗiに対して付与されていた制動力が維持される。
【００７７】
なお、ＣＰＵ２は、ステップ５０４にてヒルホールド制御を実行する際に、目標制動力Ｆbiを予め定められた値（いかなる路面においても車両ＳＶを停止させておくのに十分な値）に設定してもよい。
【００７８】
ヒルホールド制御が上述のように開始された後にＣＰＵ２が再び図５のルーチンをステップ５００から開始してステップ５０１に進むと、ＣＰＵ２は、そのステップ５０１にて「Ｎｏ」と判定してステップ５０５に進む。ＣＰＵ２は、ステップ５０５にて、所定のヒルホールド制御終了条件（以下、単に「終了条件」と称呼する。）が成立しているか否かを判定する。終了条件は、アクセルペダル操作量ＡＰが所定の閾値ＡＰｔｈ以上になったとき（即ち、運転者がアクセルペダル４１ａに対する操作を開始したとき）に成立する。
【００７９】
終了条件が成立していない場合、ＣＰＵ２は、そのステップ５０５にて「Ｎｏ」と判定してステップ５０４に進み、ヒルホールド制御の実行を継続する。その後、ＣＰＵ２は、ステップ５９５に進んで本ルーチンを一旦終了する。
【００８０】
これに対し、終了条件が成立している場合、ＣＰＵ２は、そのステップ５０５にて「Ｙｅｓ」と判定してステップ５０６に進み、第２フラグＦｈｈの値を「０」に設定するとともに、第３フラグＦｂｃの値を「１」に設定する。その後、ＣＰＵ２は、ステップ５９５に進んで本ルーチンを一旦終了する。従って、ヒルホールド制御が終了される。なお、第３フラグＦｂｃは、その値が「１」であるとき後述する図６の「制動力解除制御実行ルーチン」が実行されていることを示し、その値が「０」であるとき図６の「制動力解除制御実行ルーチン」が終了していることを示す。第３フラグＦｂｃの値は、上述のイニシャライズルーチンにおいて「０」に設定される。更に、第３フラグＦｂｃの値は、後述する図６のルーチンのステップ６２１においても「０」に設定される。
【００８１】
ＣＰＵ２は、所定時間（Δｔｓ）が経過するごとに図６にフローチャートにより示した「制動力解除制御実行ルーチン」を実行するようになっている。なお、ＣＰＵ２は、図示しないルーチンを所定時間が経過する毎に実行することにより、車輪速度センサ４２からの信号に基いて前述したように車輪速度Ｖwiを算出し、当該算出した車輪速度ＶwiをＲＡＭに格納している。
【００８２】
以降において、図６のルーチンの処理を以下の第１状況乃至第４状況に分けて説明する。
（第１状況）：車両ＳＶが、「左右均一μ路」の坂道にて発進する（図７参照。）。
（第２状況）：車両ＳＶが、「左右路面μ差が比較的小さいスプリットμ路」の坂道にて発進する（図８参照。）。なお、左路面μが右路面μに比べて小さい。
（第３状況）：車両ＳＶが、「左右路面μ差が比較的大きいスプリットμ路」の坂道にて発進する（図９参照。）。なお、左路面μが右路面μに比べて小さい。
（第４状況）：車両ＳＶが、「左右路面μ差が比較的大きいスプリットμ路」の坂道にて発進する（図１０参照。）。なお、右路面μが左路面μに比べて小さい。
【００８３】
（第１状況：左右均一μ路）
図７に示した例において、運転者は、時間ｔ０より前の時点にてブレーキペダル２１を足で踏み込んで、車両ＳＶを停止させる。時間ｔ０にて、運転者がブレーキペダル２１に対する操作を止める。従って、ＣＰＵ２はヒルホールド制御を開始する（図５のルーチンのステップ５０２乃至ステップ５０４を参照。）。前述のように、ＣＰＵ２は、目標制動力Ｆbiを、運転者がブレーキペダル２１に対する操作を止めた時点（ｔ０）の直前の時点の値にそれぞれ設定する。そして、ＣＰＵ２は、各車輪Ｗiの制動力が対応するそれぞれの目標制動力Ｆbiとなるように、ホイールシリンダ２４iの制動圧をそれぞれ制御する。その後、時間ｔ１にて運転者がアクセルペダル４１ａに対する操作を開始したことから、ＣＰＵ２は、ヒルホールド制御を終了させる（図５のルーチンのステップ５０５及びステップ５０６を参照。）。
【００８４】
上述のような状況において、時間ｔ１にて、ＣＰＵ２は、ステップ６００から図６のルーチンを開始する。ＣＰＵ２は、ステップ６０１に進み、第３フラグＦｂｃの値が「１」であるか否かを判定する。ヒルホールド制御が終了したので、第３フラグＦｂｃの値が「１」である。従って、ＣＰＵ２は、ステップ６０１にて「Ｙｅｓ」と判定してステップ６０２に進み、「図５のルーチンのステップ５０６にて第３フラグＦｂｃが「１」に設定された時点からの経過時間Ｔｅｐ」が所定の時間閾値Ｔｔｈ以下であるか否かを判定する。経過時間Ｔｅｐは、ヒルホールド制御の終了時点からの経過時間である。なお、経過時間Ｔｅｐは、制動力解除制御の開始時点からの経過時間と言うこともできる。
【００８５】
時間ｔ１において経過時間Ｔｅｐが時間閾値Ｔｔｈ以下であるので、ＣＰＵ２は、ステップ６０２にて「Ｙｅｓ」と判定してステップ６０３に進み、車輪速差ΔＶｗ（＝Ｖwfl−Ｖwfr）を算出する。そして、ＣＰＵ２は、車輪速差ΔＶｗの絶対値（｜ΔＶｗ｜）が所定の第１閾値Ｖｔｈ１以上であるか否かを判定する。なお、第１閾値Ｖｔｈ１は、ＴＲＣ開始閾値Ｔｈ_trcよりも小さい値である。
【００８６】
時間ｔ１にて車輪速差ΔＶｗの絶対値は第１閾値Ｖｔｈ１未満である。従って、ＣＰＵ２は、ステップ６０３にて「Ｎｏ」と判定してステップ６１０に進み、車輪速差ΔＶｗの絶対値が所定の第２閾値Ｖｔｈ２以下であるか否かを判定する。第２閾値Ｖｔｈ２は第１閾値Ｖｔｈ１よりも小さい値である（Ｖｔｈ２＜Ｖｔｈ１）。時間ｔ１にて車輪速差ΔＶｗの絶対値が第２閾値Ｖｔｈ２以下であるので、ＣＰＵ２は、ステップ６１０にて「Ｙｅｓ」と判定してステップ６１１に進み、第１フラグＦｓｐの値が「０」であるか否かを判定する。
【００８７】
第１状況においては、車両ＳＶの前方の道路が左右均一μ路であるので、第１フラグＦｓｐの値が「０」である（図４のルーチンのステップ４０５を参照。）。従って、ＣＰＵ２は、ステップ６１１にて「Ｙｅｓ」と判定してステップ６１２に進む。
【００８８】
ステップ６１２にて、ＣＰＵ２は、前回の目標制動力Ｆbi'をＲＡＭから取得する。以降において、添え字「'」は、ＲＡＭに記憶されている情報（前回使用された情報）を意味する。この時点でＲＡＭから取得された目標制動力Ｆbi'は、図５のルーチンのステップ５０４にて使用されていた目標制動力Ｆbiに対応する。
【００８９】
ＣＰＵ２は、目標制動力Ｆbi'から所定の第１減少量ΔＢ１を減じた値を求め、目標制動力Ｆbiをその計算値「Ｆbi'−ΔＢ１」に設定する。「第１減少量ΔＢ１」は、予め定められている正の値であり、後述する正の値である第２減少量ΔＢ２よりも大きい。なお、目標制動力Ｆbi＜０になった場合、ＣＰＵ２は、目標制動力Ｆbiを「０」に設定する。ＣＰＵ２は、目標制動力Ｆbiの情報をＲＡＭに格納する。更に、ＣＰＵ２は、目標制動力ＦbiをＲＡＭに格納するとき、その目標制動力Ｆbiを計算するために今回使用した減少量ΔＢi（ｉ＝fl、fr、rl及びrr）の情報をＲＡＭに格納する。この場合、ΔＢi（ｉ＝fl、fr、rl及びrr）はΔＢ１である。
【００９０】
次に、ＣＰＵ２は、ステップ６３０に進んで、各車輪Ｗiの制動力が対応するそれぞれの目標制動力Ｆbiとなるように、ホイールシリンダ２４iの制動圧をそれぞれ制御する。その後、ＣＰＵ２は、ステップ６９５に進んで本ルーチンを一旦終了する。
【００９１】
このような処理が繰り返し実行されることにより、各車輪Ｗiに対応するホイールシリンダ２４iの制動圧が、所定時間（Δｔｓ）が経過する毎に第１減少量ΔＢ１ずつ減少するので、制動圧は急激に減少する。その結果、ホイールシリンダ２４iの制動圧がゼロになる。
【００９２】
時間ｔ２は、経過時間Ｔｅｐが時間閾値Ｔｔｈより大きくなった時点の直後の時点である。時間ｔ２にて、ＣＰＵ２が、ステップ６００から図６のルーチンを開始してステップ６０２に進むと、そのステップ６０２にて「Ｎｏ」と判定してステップ６２０に進む。
【００９３】
ステップ６２０にて、ＣＰＵ２は、所定の条件が成立するか否かを判定する。当該条件は、全ての目標制動力Ｆbiが「ゼロ」であるときに成立する。いま、全ての目標制動力Ｆbiが「ゼロ」であるので、ＣＰＵ２は、そのステップ６２０にて「Ｙｅｓ」と判定してステップ６２１に進む。ＣＰＵ２は、ステップ６２１にて、第３フラグＦｂｃの値を「０」に設定する。その後、ＣＰＵ２は、ステップ６９５に進んで本ルーチンを一旦終了する。これにより、ＣＰＵ２が再び図６のルーチンを開始してステップ６０１に進むと、そのステップ６０１にて「Ｎｏ」と判定し、ステップ６９５に直接進む。従って、制動力解除制御が終了される。
【００９４】
このように、本実施装置は、車両ＳＶの前方の道路が左右均一μ路であると判定した場合、制動力解除制御において、車輪Ｗiに対する制動力を比較的大きい変化量で減少させる。
【００９５】
（第２状況：左右路面μ差が比較的小さいスプリットμ路（左路面μ＜右路面μ））
図８に示した例において、時間ｔ１までの状況は図７に示した例と同じであるので、説明を省略する。時間ｔ１にて、ＣＰＵ２は、ステップ６００から図６のルーチンを開始する。ＣＰＵ２は、ステップ６０１に進む。この場合、第３フラグＦｂｃの値が「１」であるので、ＣＰＵ２は、ステップ６０１にて「Ｙｅｓ」と判定してステップ６０２に進む。
【００９６】
時間ｔ１において経過時間Ｔｅｐが時間閾値Ｔｔｈ以下であるので、ＣＰＵ２は、ステップ６０２にて「Ｙｅｓ」と判定してステップ６０３に進む。
【００９７】
時間ｔ１にて車輪速差ΔＶｗの絶対値は第１閾値Ｖｔｈ１未満であるので、ＣＰＵ２は、ステップ６０３にて「Ｎｏ」と判定してステップ６１０に進む。車輪速差ΔＶｗの絶対値が第２閾値Ｖｔｈ２以下であるので、ＣＰＵ２は、そのステップ６１０にて「Ｙｅｓ」と判定してステップ６１１に進む。
【００９８】
第２状況においては、車両ＳＶの前方の道路がスプリットμ路であるので、第１フラグＦｓｐの値が「１」である（図４のルーチンのステップ４０４を参照。）。従って、ＣＰＵ２は、ステップ６１１にて「Ｎｏ」と判定してステップ６１３に進む。
【００９９】
ステップ６１３にて、ＣＰＵ２は、目標制動力Ｆbi'をＲＡＭから取得する。この時点でＲＡＭから取得された目標制動力Ｆbi'は、図５のルーチンのステップ５０４にて使用されていた目標制動力Ｆbiに対応する。ＣＰＵ２は、目標制動力Ｆbi'から所定の第２減少量ΔＢ２を減じた値を求め、目標制動力Ｆbiをその計算値「Ｆbi'−ΔＢ２」に設定する。「第２減少量ΔＢ２」は、予め定められている正の値であって、第１減少量ΔＢ１よりも小さい値である。このように、第１フラグＦｓｐの値が「１」である（即ち、車両ＳＶの前方の道路がスプリットμ路である）場合、目標制動力Ｆbiの所定時間（Δｔｓ）当たりの減少量が、車両ＳＶの前方の道路が左右均一μ路である場合に比べて小さい。ＣＰＵ２は、目標制動力Ｆbiの情報及び今回使用した減少量ΔＢiの情報をＲＡＭに格納する。
【０１００】
次に、ＣＰＵ２は、前述のようにステップ６３０の処理を実行し、その後、ＣＰＵ２は、ステップ６９５に進んで本ルーチンを一旦終了する。
【０１０１】
このような処理が繰り返し実行されることにより、各車輪Ｗiに対応するホイールシリンダ２４iの制動圧が、所定時間（Δｔｓ）が経過する毎に第２減少量ΔＢ２ずつ減少する。即ち、制動圧は徐々に（緩やかに）減少する。時間ｔ２にて、ＣＰＵ２が、ステップ６００から図６のルーチンを開始してステップ６０２に進む。経過時間Ｔｅｐが時間閾値Ｔｔｈより大きくなったので、ＣＰＵ２は、ステップ６０２にて「Ｎｏ」と判定してステップ６２０に進む。時間ｔ２においては、全ての目標制動力Ｆbiがまだ「ゼロ」になっていないので、ＣＰＵ２は、そのステップ６２０にて「Ｎｏ」と判定してステップ６２２に進む。
【０１０２】
ステップ６２２にて、ＣＰＵ２は、車輪速差ΔＶｗの絶対値が第２閾値Ｖｔｈ２より大きいか否かを判定する。車輪速差ΔＶｗの絶対値が第２閾値Ｖｔｈ２より大きくないので、ＣＰＵ２は、そのステップ６２２にて「Ｎｏ」と判定してステップ６２６に進む。
【０１０３】
ステップ６２６にて、ＣＰＵ２は、ステップ６１３での処理と同じように、目標制動力Ｆbiを「Ｆbi'−ΔＢ２」に設定する。なお、目標制動力Ｆbi＜０になった場合、ＣＰＵ２は、目標制動力Ｆbiを「０」に設定する。ＣＰＵ２は、目標制動力Ｆbiの情報及び今回使用した減少量ΔＢiの情報をＲＡＭに格納する。
【０１０４】
次に、ＣＰＵ２は、前述のようにステップ６３０の処理を実行し、その後、ＣＰＵ２は、ステップ６９５に進んで本ルーチンを一旦終了する。
【０１０５】
このような処理が繰り返し実行されることにより、各車輪Ｗiに対応するホイールシリンダ２４iの制動圧が最終的にゼロになる。そして、時間ｔ３にて、ＣＰＵ２が、ステップ６００から図６のルーチンを開始してステップ６２０に進む。全ての目標制動力Ｆbiが「ゼロ」であるので、ＣＰＵ２は、そのステップ６２０にて「Ｙｅｓ」と判定してステップ６２１に進む。ＣＰＵ２は、ステップ６２１にて、第３フラグＦｂｃの値を「０」に設定する。その後、ＣＰＵ２は、ステップ６９５に進んで本ルーチンを一旦終了する。これにより、ＣＰＵ２が再び図６のルーチンを開始してステップ６０１に進むと、そのステップ６０１にて「Ｎｏ」と判定し、ステップ６９５に直接進む。従って、制動力解除制御が終了される。
【０１０６】
このように、本実施装置は、車両ＳＶの前方の道路がスプリットμ路であると判定した場合、制動力の単位時間（例えば、Δｔｓ）当たりの減少量（ΔＢ２）が、車両ＳＶの前方の道路が左右均一μ路であると判定したときの制動力の単位時間当たりの減少量（ΔＢ１）よりも小さくなるように、車輪Ｗiに対する制動力を減少させる。従って、駆動輪Ｗf*が、急激に回転することなく徐々に回転する。低い路面μを有する路面側の左前輪Ｗflの空転が回避され、左前輪Ｗflがスプリットμ路の路面をグリップし易くなる。更に、高い路面μを有する路面側の右前輪Ｗfrの駆動力が路面に徐々に伝わる。従って、本実施装置は、車両ＳＶがスプリットμ路の坂道にて発進する場合に、車両ＳＶが後退する可能性を低減させることができる。
【０１０７】
（第３状況：左右路面μ差が比較的大きいスプリットμ路（左路面μ＜右路面μ））
図９に示した例において、運転者は、時間ｔ１０より前の時点にてブレーキペダル２１を踏み込んで、車両ＳＶを停止させる。時間ｔ１０にて、運転者がブレーキペダル２１に対する操作を止める。従って、ＣＰＵ２はヒルホールド制御を開始する（図５のルーチンのステップ５０２乃至ステップ５０４を参照。）。その後、時間ｔ１１にて運転者がアクセルペダル４１ａに対する操作を開始したことから、ＣＰＵ２は、ヒルホールド制御を終了させる（図５のルーチンのステップ５０５及びステップ５０６を参照。）。
【０１０８】
上述のような状況において、時間ｔ１１にて、ＣＰＵ２は、ステップ６００から図６のルーチンを開始してステップ６０１に進む。この場合、第３フラグＦｂｃの値が「１」であるので、ＣＰＵ２は、ステップ６０１にて「Ｙｅｓ」と判定してステップ６０２に進む。
【０１０９】
時間ｔ１１において経過時間Ｔｅｐが時間閾値Ｔｔｈ以下であるので、ＣＰＵ２は、ステップ６０２にて「Ｙｅｓ」と判定してステップ６０３に進む。
【０１１０】
時間ｔ１１にて車輪速差ΔＶｗの絶対値は第１閾値Ｖｔｈ１未満であるので、ＣＰＵ２はステップ６０３にて「Ｎｏ」と判定してステップ６１０に進む。更に、車輪速差ΔＶｗの絶対値が第２閾値Ｖｔｈ２以下であるので、ＣＰＵ２は、ステップ６１０にて「Ｙｅｓ」と判定してステップ６１１に進む。
【０１１１】
第３状況においては、車両ＳＶの前方の道路がスプリットμ路であるので、第１フラグＦｓｐの値が「１」である（図４のルーチンのステップ４０４を参照。）。従って、ＣＰＵ２は、ステップ６１１にて「Ｎｏ」と判定してステップ６１３に進み、前述のように目標制動力Ｆbiを「Ｆbi'−ΔＢ２」に設定する。ＣＰＵ２は、目標制動力Ｆbiの情報及び今回使用した減少量ΔＢi（この場合、ΔＢ２）の情報をＲＡＭに格納する。
【０１１２】
次に、ＣＰＵ２は、前述のようにステップ６３０の処理を実行し、その後、ＣＰＵ２は、ステップ６９５に進んで本ルーチンを一旦終了する。
【０１１３】
このような処理が繰り返し実行されることにより、各車輪Ｗiに対応するホイールシリンダ２４iの制動圧が、所定時間（Δｔｓ）が経過する毎に第２減少量ΔＢ２ずつ減少する。即ち、制動圧が徐々に減少する。そして、時間ｔ１２にて、ＣＰＵ２が、ステップ６００から図６のルーチンを開始してステップ６１０に進むと、車輪速差ΔＶｗの絶対値が第２閾値Ｖｔｈ２より大きいので、ＣＰＵ２は、そのステップ６１０にて「Ｎｏ」と判定してステップ６１４に進む。
【０１１４】
ステップ６１４にて、ＣＰＵ２は、ＲＡＭから、前回の目標制動力Ｆbi'及び前回使用した減少量ΔＢi'を取得する。ＣＰＵ２は、目標制動力Ｆbi'から減少量ΔＢi'を減じた値を求め、目標制動力Ｆbiをその計算値「Ｆbi'−ΔＢi'」に設定する。この状況では、全ての減少量ΔＢi'が「ΔＢ２」である。従って、ＣＰＵ２は、目標制動力Ｆbiを「Ｆbi'−ΔＢ２」に設定する。ＣＰＵ２は、目標制動力Ｆbiの情報及び今回使用した減少量ΔＢiの情報をＲＡＭに格納する。
【０１１５】
次に、ＣＰＵ２は、前述のようにステップ６３０の処理を実行し、その後、ＣＰＵ２は、ステップ６９５に進んで本ルーチンを一旦終了する。
【０１１６】
このような処理が繰り返し実行されることにより、各車輪Ｗiに対応するホイールシリンダ２４iの制動圧が更に減少する。第３状況においては、左右路面μ差が比較的大きく且つ左路面μが右路面μより小さいので、左前輪Ｗflの車輪速度Ｖwflが右前輪Ｗfrの車輪速度Ｖwfrに対して急激に大きくなる。従って、図９に示すように、車輪速差ΔＶｗの絶対値が急激に大きくなる。
【０１１７】
時間ｔ１３にて、ＣＰＵ２が、ステップ６００から図６のルーチンを開始してステップ６０３に進む。車輪速差ΔＶｗの絶対値が第１閾値Ｖｔｈ１以上であるので、ＣＰＵ２は、そのステップ６０３にて「Ｙｅｓ」と判定してステップ６０４に進み、車輪速度Ｖwflが車輪速度Ｖwfrよりも大きいか否かを判定する。
【０１１８】
いま、車輪速度Ｖwflが車輪速度Ｖwfrよりも大きいので、ＣＰＵ２は、ステップ６０４にて「Ｙｅｓ」と判定してステップ６０５に進む。
【０１１９】
ステップ６０５にて、ＣＰＵ２は、前回の目標制動力Ｆbi'をＲＡＭから取得する。ＣＰＵ２は、目標制動力Ｆbfl'から所定の第３減少量ΔＢ３を減じた値「Ｆbfl'−ΔＢ３」を求め、目標制動力Ｆbflをその計算値「Ｆbfl'−ΔＢ３」に設定する。「第３減少量ΔＢ３」は、予め定められた正の値であって、第２減少量ΔＢ２に比べて小さい値である。一方、ＣＰＵ２は、目標制動力Ｆbfrを「Ｆbfr'−ΔＢ２」に設定する。更に、ＣＰＵ２は、目標制動力Ｆbr*を「Ｆbr*'−ΔＢ２」に設定する。ＣＰＵ２は、目標制動力Ｆbiの情報及び今回使用した減少量ΔＢiの情報をＲＡＭに格納する。
【０１２０】
次に、ＣＰＵ２は、前述のようにステップ６３０の処理を実行し、その後、ＣＰＵ２は、ステップ６９５に進んで本ルーチンを一旦終了する。
【０１２１】
このような処理が実行されることにより、路面μが低い左路面に接地している駆動輪（左前輪Ｗfl）に対応する目標制動力Ｆbflの単位時間（Δｔｓ）当たりの減少量（ΔＢ３）が、他の車輪（Ｗfr、Ｗr*）に対応する目標制動力（Ｆbfr、Ｆbr*）の単位時間当たりの減少量（ΔＢ２）よりも小さくなる。従って、左前輪Ｗflに対応するホイールシリンダ２４flの制動圧が他の車輪（Ｗfr、Ｗr*）に対応するホイールシリンダ（２４fr、２４r*）よりも大きくなる。これにより、左前輪Ｗflの空転を抑えることができる。このため、時間ｔ１３以降において、車輪速差ΔＶｗの絶対値が上昇状態から下降状態へと変化する。
【０１２２】
時間ｔ１４にて、ＣＰＵ２が、ステップ６００から図６のルーチンを開始してステップ６０３に進む。車輪速差ΔＶｗの絶対値が第１閾値Ｖｔｈ１未満であるので、ＣＰＵ２はステップ６０３にて「Ｎｏ」と判定してステップ６１０に進む。更に、車輪速差ΔＶｗの絶対値が第２閾値Ｖｔｈ２より大きいので、ＣＰＵ２は、ステップ６１０にて「Ｎｏ」と判定してステップ６１４に進む。
【０１２３】
ステップ６１４にて、ＣＰＵ２は、目標制動力Ｆbiを「Ｆbi'−ΔＢi'」に設定する。この状況において、目標制動力Ｆbflに対して前回使用された減少量ΔＢfl’は「ΔＢ３」である。従って、ＣＰＵ２は、目標制動力Ｆbflを「Ｆbfl'−ΔＢ３」に設定する。一方、他の目標制動力（Ｆbfr、Ｆbf*）に対して前回使用された減少量（ΔＢfr’、ΔＢr*’）は「ΔＢ２」である。従って、ＣＰＵ２は、目標制動力Ｆbfrを「Ｆbfr'−ΔＢ２」に設定し、目標制動力Ｆbr*を「Ｆbr*'−ΔＢ２」に設定する。ＣＰＵ２は、目標制動力Ｆbiの情報及び今回使用した減少量ΔＢiの情報をＲＡＭに格納する。
【０１２４】
次に、ＣＰＵ２は、前述のようにステップ６３０の処理を実行し、その後、ＣＰＵ２は、ステップ６９５に進んで本ルーチンを一旦終了する。
【０１２５】
このように、ＣＰＵ２は、左前輪Ｗflに対応する目標制動力Ｆbflの単位時間当たりの減少量（ΔＢ３）を他の車輪（Ｗfr、Ｗr*）に対応する目標制動力（Ｆbfr、Ｆbr*）の単位時間当たりの減少量（ΔＢ２）よりも小さくする処理を継続する。これにより、左前輪Ｗflの空転を抑えることができる。
【０１２６】
時間ｔ１５は、経過時間Ｔｅｐが時間閾値Ｔｔｈより大きくなった時点の直後の時点である。時間ｔ１５にて、ＣＰＵ２が、ステップ６００から図６のルーチンを開始してステップ６０２に進み、そのステップ６０２にて「Ｎｏ」と判定してステップ６２０に進む。
【０１２７】
いま、全ての目標制動力Ｆbiがまだ「ゼロ」になっていないので、ＣＰＵ２は、そのステップ６２０にて「Ｎｏ」と判定してステップ６２２に進む。時間ｔ１５にて車輪速差ΔＶｗの絶対値が第２閾値Ｖｔｈ２より大きいので、ＣＰＵ２は、そのステップ６２２にて「Ｙｅｓ」と判定してステップ６２３に進む。
【０１２８】
ＣＰＵ２は、ステップ６２３にて、車輪速度Ｖwflが車輪速度Ｖwfrよりも大きいか否かを判定する。車輪速度Ｖwflが車輪速度Ｖwfrよりも大きいので、ＣＰＵ２は、ステップ６２３にて「Ｙｅｓ」と判定してステップ６２４に進む。
【０１２９】
ステップ６２４にて、ＣＰＵ２は、前回の目標制動力Ｆbi'をＲＡＭから取得する。ＣＰＵ２は、目標制動力Ｆbflを前回の目標制動力Ｆbfl'に設定する。このように、左前輪Ｗflに関しては、前回の目標制動力Ｆbfl'が維持される。一方、ＣＰＵ２は、目標制動力Ｆbfrを「Ｆbfr'−ΔＢ２」に設定し、目標制動力Ｆbr*を「Ｆbr*'−ΔＢ２」に設定する。なお、目標制動力Ｆbfr＜０になった場合、ＣＰＵ２は、目標制動力Ｆbfrを「０」に設定する。目標制動力Ｆbr*＜０になった場合、ＣＰＵ２は、目標制動力Ｆbr*を「０」に設定する。ＣＰＵ２は、目標制動力Ｆbiの情報及び今回使用した減少量ΔＢiの情報をＲＡＭに格納する。
【０１３０】
次に、ＣＰＵ２は、前述のようにステップ６３０の処理を実行し、その後、ＣＰＵ２は、ステップ６９５に進んで本ルーチンを一旦終了する。
【０１３１】
このような処理が実行されることにより、左前輪Ｗflに対応するホイールシリンダ２４flの制動圧が維持（保持）され、他の車輪（Ｗfr、Ｗr*）に対応するホイールシリンダ（２４fr、２４r*）の制動圧が徐々に減少して最終的にゼロになる。従って、左前輪Ｗflの空転を抑えている間に右前輪Ｗfrに対する制動力が解除され、右前輪Ｗfrの駆動力が路面に伝わる。その結果、車両ＳＶがスプリットμ路の坂道にて後退することなく発進することができる。
【０１３２】
そして、時間ｔ１６にて、ＣＰＵ２が、ステップ６００から図６のルーチンを開始してステップ６２２に進む。車輪速差ΔＶｗの絶対値が第２閾値Ｖｔｈ２以下であるので、ＣＰＵ２は、ステップ６２２にて「Ｎｏ」と判定してステップ６２６に進む。
【０１３３】
ステップ６２６にて、ＣＰＵ２は、目標制動力Ｆbiを「Ｆbi'−ΔＢ２」に設定する。この状況では、目標制動力Ｆbfr、Ｆbr*は既にゼロである。従って、ＣＰＵ２は、目標制動力Ｆbflを「Ｆbfl'−ΔＢ２」に設定する。なお、目標制動力Ｆbfl＜０になった場合、ＣＰＵ２は、目標制動力Ｆbflを「０」に設定する。
【０１３４】
次に、ＣＰＵ２は、前述のようにステップ６３０の処理を実行し、その後、ＣＰＵ２は、ステップ６９５に進んで本ルーチンを一旦終了する。
【０１３５】
このような処理が繰り返し実行されることにより、左前輪Ｗflに対応するホイールシリンダ２４flの制動圧が減少して最終的にゼロになる。そして、時間ｔ１７にて、ＣＰＵ２が、ステップ６００から図６のルーチンを開始してステップ６２０に進む。時間ｔ１７にて全ての目標制動力Ｆbiが「ゼロ」であるので、ＣＰＵ２は、そのステップ６２０にて「Ｙｅｓ」と判定してステップ６２１に進む。ＣＰＵ２は、ステップ６２１にて、第３フラグＦｂｃの値を「０」に設定する。その後、ＣＰＵ２は、ステップ６９５に進んで本ルーチンを一旦終了する。これにより、ＣＰＵ２が再び図６のルーチンを開始してステップ６０１に進むと、そのステップ６０１にて「Ｎｏ」と判定し、ステップ６９５に直接進む。従って、制動力解除制御が終了される。
【０１３６】
このように、本実施装置は、車輪速差ΔＶｗの絶対値が第１閾値Ｖｔｈ１以上である場合、駆動輪Ｗf*のうちの車輪速度が大きい方の駆動輪である左前輪Ｗflに対する制動力の単位時間（Δｔｓ）当たりの減少量の大きさ（ΔＢ３）が、左前輪Ｗfl以外の車輪（Ｗfl、Ｗr*）に対する制動力の単位時間（Δｔｓ）当たりの減少量の大きさ（ΔＢ２）よりも小さくなるように、制動力を減少させる。従って、本実施装置は、車輪速度が大きい左前輪Ｗflに対し右前輪Ｗfrに比べて大きい制動力を付与しながら、各車輪Ｗiの制動圧を減少させることができる。これにより、路面μが低い左路面に接地している左前輪Ｗflの空転を抑えることができる。
【０１３７】
更に、時間ｔ１３において、（２）式の基準速度（推定される車体速度）Ｖaは実質的にゼロであるので、左前輪Ｗflのスリップ量ＳＡflは左前輪Ｗflの車輪速度Ｖwflに実質的に等しい。一方で、時間ｔ１３において、路面μが高い側の右路面に接地している右前輪Ｗfrがスリップしておらず且つ右前輪Ｗfrの目標制動力Ｆbfrも比較的高いので、右前輪Ｗfrの車輪速度Ｖwfrはゼロ（又はゼロに近い値）である。従って、時間ｔ１３において車輪速差ΔＶｗの絶対値は左前輪Ｗflの車輪速度Ｖwflに実質的に等しい。上述したように、第１閾値Ｖｔｈ１はＴＲＣ開始閾値Ｔｈ_trcよりも小さい。以上から、左前輪Ｗflのみが路面上で回転している状況（時間ｔ１３）では、左前輪Ｗflのスリップ量ＳＡflがＴＲＣ開始閾値Ｔｈ_trcに到達する前に、車輪速差ΔＶｗの絶対値が第１閾値Ｖｔｈ１以上になる。本実施装置は、ＴＲＣ制御を実行する前に、車輪速度が大きい左前輪Ｗflに対して、右前輪Ｗfrに付与される制動力よりも大きい制動力を付与できる。本実施装置は、ＴＲＣ制御を実行することなく、左前輪Ｗflの空転を抑えることができる。
【０１３８】
更に、本実施装置は、制動力解除制御を開始した時点（第３フラグＦｂｃの値が「１」になった時点）からの経過時間Ｔｅｐが時間閾値Ｔｔｈより大きくなった時点以降において、車輪速差ΔＶｗの絶対値が第２閾値Ｖｔｈ２よりも大きいとき、左前輪Ｗflに対する制動力を維持し、且つ、左前輪Ｗfl以外の車輪（Ｗfr、Ｗr*）に対する制動力を減少させる。これにより、左前輪Ｗflの空転を抑えている間に右前輪Ｗfrに対する制動力が徐々に解除され、右前輪Ｗfrの駆動力が路面に伝わる。その結果、車両ＳＶがスプリットμ路の坂道にて後退することなく発進することができる。
【０１３９】
なお、本実施装置は、制動力解除制御を開始した時点からの経過時間Ｔｅｐが時間閾値Ｔｔｈより大きくなった以降において、車輪速差ΔＶｗの絶対値が第２閾値Ｖｔｈ２以下であるとき、全ての車輪Ｗiに対する制動力を同じ変化量（ΔＢ２）で減少させる。
【０１４０】
（第４状況：左右路面μ差が比較的大きいスプリットμ路（右路面μ＜左路面μ））
図１０に示した例において、時間ｔ１２までの処理の流れは図９に示した例と同じであるので、説明を省略する。従って、時間ｔ１３以降における処理の流れについて説明する。第４状況においては、右路面μが左路面μに比べて小さいので、右前輪Ｗfrの車輪速度Ｖwfrが左前輪Ｗflの車輪速度Ｖwflに対して急激に大きくなる。従って、図１０に示すように、車輪速差ΔＶｗの絶対値が急激に大きくなる。
【０１４１】
時間ｔ１３にて、ＣＰＵ２が、ステップ６００から図６のルーチンを開始してステップ６０３に進む。車輪速差ΔＶｗの絶対値が第１閾値Ｖｔｈ１以上であるので、ＣＰＵ２は、そのステップ６０３にて「Ｙｅｓ」と判定してステップ６０４に進み、車輪速度Ｖwflが車輪速度Ｖwfrよりも大きいか否かを判定する。
【０１４２】
いま、車輪速度Ｖwfrが車輪速度Ｖwflよりも大きいので、ＣＰＵ２は、ステップ６０４にて「Ｎｏ」と判定してステップ６０６に進む。
【０１４３】
ステップ６０６にて、ＣＰＵ２は、目標制動力Ｆbfrを「Ｆbfr'−ΔＢ３」に設定する。一方、ＣＰＵ２は、目標制動力Ｆbflを「Ｆbfl'−ΔＢ２」に設定する。更に、ＣＰＵ２は、目標制動力Ｆbr*を「Ｆbr*'−ΔＢ２」に設定する。ＣＰＵ２は、目標制動力Ｆbiの情報及び今回使用した減少量ΔＢiの情報をＲＡＭに格納する。
【０１４４】
次に、ＣＰＵ２は、前述のようにステップ６３０の処理を実行し、その後、ＣＰＵ２は、ステップ６９５に進んで本ルーチンを一旦終了する。
【０１４５】
このような処理が実行されることにより、路面μが低い右路面に接地している駆動輪（右前輪Ｗfr）に対応する目標制動力Ｆbfrの単位時間（Δｔｓ）当たりの減少量（ΔＢ３）が、他の車輪（Ｗfl、Ｗr*）に対応する目標制動力（Ｆbfl、Ｆbr*）の単位時間（Δｔｓ）当たりの減少量（ΔＢ２）よりも小さくなる。従って、右前輪Ｗfrに対応するホイールシリンダ２４frの制動圧が他の車輪（Ｗfl、Ｗr*）に対応するホイールシリンダ（２４fl、２４r*）よりも大きくなる。これにより、右前輪Ｗfrの空転を抑えることができる。このため、時間ｔ１３以降において、車輪速差ΔＶｗの絶対値が上昇状態から下降状態へと変化する。
【０１４６】
時間ｔ１４にて、ＣＰＵ２が、ステップ６００から図６のルーチンを開始してステップ６０３に進む。車輪速差ΔＶｗの絶対値が第１閾値Ｖｔｈ１未満であるので、ＣＰＵ２はステップ６０３にて「Ｎｏ」と判定してステップ６１０に進む。更に、車輪速差ΔＶｗの絶対値が第２閾値Ｖｔｈ２より大きいので、ＣＰＵ２は、ステップ６１０にて「Ｎｏ」と判定してステップ６１４に進む。
【０１４７】
ステップ６１４にて、ＣＰＵ２は、目標制動力Ｆbiを「Ｆbi'−ΔＢi'」に設定する。この状況において、目標制動力Ｆbfrに対して前回使用された減少量ΔＢfr'は「ΔＢ３」である。従って、ＣＰＵ２は、目標制動力Ｆbfrを「Ｆbfr'−ΔＢ３」に設定する。一方、他の目標制動力（Ｆbfl、Ｆbf*）に対して前回使用された減少量（ΔＢfl'、ΔＢr*'）は「ΔＢ２」である。従って、ＣＰＵ２は、目標制動力Ｆbflを「Ｆbfl'−ΔＢ２」に設定し、目標制動力Ｆbr*を「Ｆbr*'−ΔＢ２」に設定する。ＣＰＵ２は、目標制動力Ｆbiの情報及び今回使用した減少量ΔＢiの情報をＲＡＭに格納する。
【０１４８】
次に、ＣＰＵ２は、前述のようにステップ６３０の処理を実行し、その後、ＣＰＵ２は、ステップ６９５に進んで本ルーチンを一旦終了する。
【０１４９】
このように、ＣＰＵ２は、右前輪Ｗfrに対応する目標制動力Ｆbfrの単位時間当たりの減少量を他の車輪（Ｗfl、Ｗr*）に対応する目標制動力（Ｆbfl、Ｆbr*）の単位時間当たりの減少量よりも小さくする処理を継続する。これにより、右前輪Ｗfrの空転を抑えることができる。
【０１５０】
時間ｔ１５は、経過時間Ｔｅｐが時間閾値Ｔｔｈより大きくなった時点の直後の時点である。時間ｔ１５にて、ＣＰＵ２が、ステップ６００から図６のルーチンを開始してステップ６０２に進み、そのステップ６０２にて「Ｎｏ」と判定してステップ６２０に進む。
【０１５１】
いま、全ての目標制動力Ｆbiがまだ「ゼロ」になっていないので、ＣＰＵ２は、そのステップ６２０にて「Ｎｏ」と判定してステップ６２２に進む。車輪速差ΔＶｗの絶対値が第２閾値Ｖｔｈ２より大きいので、ＣＰＵ２は、そのステップ６２２にて「Ｙｅｓ」と判定してステップ６２３に進み、そのステップ６２３にて「Ｎｏ」と判定してステップ６２５に進む。
【０１５２】
ステップ６２５にて、ＣＰＵ２は、目標制動力Ｆbfrを前回の目標制動力Ｆbfr'に設定する。このように、右前輪Ｗfrに関しては、前回の目標制動力Ｆbfr'が維持される。一方、ＣＰＵ２は、目標制動力Ｆbflを「Ｆbfl'−ΔＢ２」に設定し、目標制動力Ｆbr*を「Ｆbr*'−ΔＢ２」に設定する。なお、目標制動力Ｆbfl＜０になった場合、ＣＰＵ２は、目標制動力Ｆbflを「０」に設定する。目標制動力Ｆbr*＜０になった場合、ＣＰＵ２は、目標制動力Ｆbr*を「０」に設定する。ＣＰＵ２は、目標制動力Ｆbiの情報及び今回使用した減少量ΔＢiの情報をＲＡＭに格納する。
【０１５３】
次に、ＣＰＵ２は、前述のようにステップ６３０の処理を実行し、その後、ＣＰＵ２は、ステップ６９５に進んで本ルーチンを一旦終了する。
【０１５４】
このような処理が実行されることにより、右前輪Ｗfrに対応するホイールシリンダ２４frの制動圧が維持（保持）され、他の車輪（Ｗfl、Ｗr*）に対応するホイールシリンダ（２４fl、２４r*）の制動圧が徐々に減少して最終的にゼロになる。従って、右前輪Ｗfrの空転を抑えている間に左前輪Ｗflに対する制動力が解除され、左前輪Ｗflの駆動力が路面に伝わる。その結果、車両ＳＶがスプリットμ路の坂道にて後退することなく発進することができる。
【０１５５】
そして、時間ｔ１６にて、ＣＰＵ２が、ステップ６００から図６のルーチンを開始してステップ６２２に進む。車輪速差ΔＶｗの絶対値が第２閾値Ｖｔｈ２以下であるので、ＣＰＵ２は、ステップ６２２にて「Ｎｏ」と判定してステップ６２６に進む。
【０１５６】
ステップ６２６にて、ＣＰＵ２は、目標制動力Ｆbiを「Ｆbi'−ΔＢ２」に設定する。この状況では、目標制動力Ｆbfl、Ｆbr*は既にゼロである。従って、ＣＰＵ２は、目標制動力Ｆbfrを「Ｆbfr'−ΔＢ２」に設定する。なお、目標制動力Ｆbfr＜０になった場合、ＣＰＵ２は、目標制動力Ｆbfrを「０」に設定する。
【０１５７】
次に、ＣＰＵ２は、前述のようにステップ６３０の処理を実行し、その後、ＣＰＵ２は、ステップ６９５に進んで本ルーチンを一旦終了する。
【０１５８】
このような処理が繰り返し実行されることにより、右前輪Ｗfrに対応するホイールシリンダ２４frの制動圧が減少して最終的にゼロになる。そして、時間ｔ１７にて、ＣＰＵ２が、ステップ６００から図６のルーチンを開始してステップ６２０に進む。時間ｔ１７にて全ての目標制動力Ｆbiが「ゼロ」であるので、ＣＰＵ２は、そのステップ６２０にて「Ｙｅｓ」と判定してステップ６２１に進む。ＣＰＵ２は、ステップ６２１にて、第３フラグＦｂｃの値を「０」に設定する。その後、ＣＰＵ２は、ステップ６９５に進んで本ルーチンを一旦終了する。これにより、ＣＰＵ２が再び図６のルーチンを開始してステップ６０１に進むと、そのステップ６０１にて「Ｎｏ」と判定し、ステップ６９５に直接進む。従って、制動力解除制御が終了される。
【０１５９】
このように、本実施装置は、車輪速差ΔＶｗの絶対値が第１閾値Ｖｔｈ１以上である場合、駆動輪Ｗf*のうちの車輪速度が大きい方の駆動輪である右前輪Ｗfrに対する制動力の単位時間（Δｔｓ）当たりの減少量の大きさ（ΔＢ３）が、右前輪Ｗfr以外の車輪（Ｗfl、Ｗr*）に対する制動力の単位時間（Δｔｓ）当たりの減少量の大きさ（ΔＢ２）よりも小さくなるように、制動力を減少させる。従って、本実施装置は、車輪速度が大きい右前輪Ｗfrに対し左前輪Ｗflに比べて大きい制動力を付与しながら、各車輪Ｗiの制動圧を減少させることができる。これにより、路面μが低い右路面に接地している右前輪Ｗfrの空転を抑えることができる。
【０１６０】
更に、第３状況と同様に、本実施装置は、ＴＲＣ制御を実行する前に、車輪速度が大きい右前輪Ｗfrに対して、左前輪Ｗflに比べて大きい制動力を付与できる。従って、本実施装置は、ＴＲＣ制御を実行することなく、右前輪Ｗfrの空転を抑えることができる。
【０１６１】
更に、本実施装置は、制動力解除制御を開始した時点からの経過時間Ｔｅｐが時間閾値Ｔｔｈより大きくなった時点以降において、車輪速差ΔＶｗの絶対値が第２閾値Ｖｔｈ２よりも大きいとき、右前輪Ｗfrに対する制動力を維持し、且つ、右前輪Ｗfr以外の車輪（Ｗfl、Ｗr*）に対する制動力を減少させる。これにより、右前輪Ｗfrの空転を抑えている間に左前輪Ｗflに対する制動力が徐々に解除され、左前輪Ｗflの駆動力が路面に伝わる。その結果、車両ＳＶがスプリットμ路の坂道にて後退することなく発進することができる。
【０１６２】
なお、本発明は上記実施形態に限定されることはなく、本発明の範囲内において種々の変形例を採用することができる。
【０１６３】
（変形例１）
ＣＰＵ２は、図６のルーチンを実行する際に、車両ＳＶの前方の道路の路面μ状態に応じて、ステップ６０３にて使用される閾値Ｖｔｈ１を変更してもよい。具体的には、ＣＰＵ２は、第１フラグＦｓｐの値が「０」であるとき（即ち、車両ＳＶの前方の道路が左右均一μ路であるとき）、第１閾値Ｖｔｈ１の値を、所定の基準閾値Ｖｒｅｆに設定する（即ち、Ｖｔｈ１←Ｖｒｅｆ）。なお、Ｖｒｅｆ＞Ｖｔｈ２である。これに対し、ＣＰＵ２は、第１フラグＦｓｐの値が「１」であるとき（即ち、車両ＳＶの前方の道路がスプリットμ路であるとき）、第１閾値Ｖｔｈ１の値を、基準閾値Ｖｒｅｆから所定の正の値αを減じた値「Ｖｒｅｆ−α」に設定する（即ち、Ｖｔｈ１←Ｖｒｅｆ−α）。なお、（Ｖｒｅｆ−α）＞Ｖｔｈ２である。
【０１６４】
このように、ＣＰＵ２は、前方の道路がスプリットμ路であるときの第１閾値Ｖｔｈ１の大きさを、前方の道路が左右均一μ路であるときの第１閾値Ｖｔｈ１の大きさよりも小さく設定する。この構成によれば、車両ＳＶの前方の道路がスプリットμ路である場合、車輪速差ΔＶｗの絶対値が過大になる前に、低い路面μを有する路面側の駆動輪Ｗf*に対応する目標制動力Ｆbf*の単位時間当たりの減少量が、他の車輪に対応する目標制動力の単位時間当たりの減少量よりも小さくなる。従って、低い路面μを有する路面側の駆動輪が空転する可能性を更に低減することができる。
【０１６５】
（変形例２）
ＣＰＵ１は、図４に示したルーチンに代えて、図１１に示したルーチンを実行してもよい。図１１に示したルーチンは、図４に示したルーチンのステップ４０３とステップ４０５との間にステップ１１０１が追加されたルーチンである。従って、図４と同じ符号が付されたステップについては詳細な説明を省略する。
【０１６６】
ＣＰＵ１がステップ４０３にて「Ｎｏ」と判定してステップ１１０１に進むと、以下の高μ路条件が成立するか否かを判定する。
高μ路条件：高μ特徴割合Ｄ１が所定の閾値μｔｈより大きく、且つ、高μ特徴割合Ｅ１が所定の閾値μｔｈより大きい。
【０１６７】
高μ路条件が成立する場合、ＣＰＵ１はステップ１１０１にて「Ｙｅｓ」と判定してステップ４０５及びステップ４０６の処理を順に行う。その後、ＣＰＵ１は、ステップ１１９５に進んで本ルーチンを一旦終了する。
【０１６８】
これに対し、高μ路条件が成立しない場合、ＣＰＵ１はステップ１１０１にて「Ｎｏ」と判定してステップ４０４及びステップ４０６の処理を順に行う。その後、ＣＰＵ１は、ステップ１１９５に進んで本ルーチンを一旦終了する。このように、車両ＳＶの前方の道路が左右均一μ路であっても、高μ特徴割合Ｄ１及び高μ特徴割合Ｅ１の両方が比較的小さい場合、第１フラグＦｓｐの値が「１」に設定される。従って、左路面及び右路面の両方が比較的低い路面μを有し且つ左右路面μ差が存在しないと見做せる場合、スプリットμ路の場合と同じように図６のルーチンが実行される。
【０１６９】
左路面及び右路面の両方が比較的低い路面μを有し且つ左右路面μ差が存在しないと見做せる場合（ステップ１１０１：Ｎｏ）、制動力の単位時間（Δｔｓ）当たりの減少量（ΔＢ２）が、車両ＳＶの前方の道路が比較的高い路面μを有する左右均一μ路であると判定したとき（ステップ１１０１：Ｙｅｓ）の制動力の単位時間（Δｔｓ）当たりの減少量（ΔＢ１）よりも小さくなる（ステップ６１１：Ｎｏ、ステップ６１３）。従って、駆動輪Ｗf*が、急激に回転することなく徐々に回転するので、駆動輪Ｗf*が路面をグリップし易くなる。従って、車両ＳＶが後退する可能性を低減させることができる。
【０１７０】
（変形例３）
図５のルーチンのステップ５０２におけるヒルホールド制御開始条件は、上述の例に限定されない。ヒルホールド制御開始条件は、条件Ａ１乃至条件Ａ３に加えて、以下の条件Ａ４を含んでもよい。
（条件Ａ４）：道路の勾配が所定の勾配閾値以上である。なお、ＣＰＵ２は、図示しない勾配センサから道路の勾配に関する情報を取得してもよい。別の例として、ＣＰＵ２は、加速度センサ４３によって検出された加速度Ｇｓ及び重力加速度ｇから道路の勾配を算出してもよい。
【０１７１】
（変形例４）
図６のルーチンのステップ６０２とステップ６０３との間において、第１フラグＦｓｐの値が「１」であるか否かを判定する追加のステップが組み込まれてもよい。この変形例において、ＣＰＵ２は、ステップ６０２の後に当該追加のステップに進み、第１フラグＦｓｐの値が「１」であるか否かを判定する。第１フラグＦｓｐの値が「１」である場合、ＣＰＵ２はステップ６０３に進む。一方、第１フラグＦｓｐの値が「０」である場合、ＣＰＵ２はステップ６１２に進む。このように、ＣＰＵ２は、第１フラグＦｓｐの値が「１」である場合（車両ＳＶの前方の道路がスプリットμ路である場合）にのみ、ステップ６０３乃至ステップ６０６の処理を実行するように構成されてもよい。
【符号の説明】
【０１７２】
１０…エンジンＥＣＵ、２０…ブレーキＥＣＵ、３０…画像処理ＥＣＵ、４１…アクセルペダルセンサ、４２…車輪速度センサ、４３…加速度センサ、４４…カメラ、ＢＡ…ブレーキ装置。
【図１】
2020131856.tif 000003
【図２】
2020131856.tif 000004
【図３】
2020131856.tif 000005
【図４】
2020131856.tif 000006
【図５】
2020131856.tif 000007
【図６】
2020131856.tif 000008
【図７】
2020131856.tif 000009
【図８】
2020131856.tif 000010
【図９】
2020131856.tif 000011
【図１０】
2020131856.tif 000012
【図１１】
2020131856.tif 000013