本発明に係る車両用制御システムの実施形態を、図面を参照しつつ説明する。以下に説明する実施形態では、車両の走行駆動源として、エンジンと電動モータ(モータジェネレータ)とを有するハイブリッド車両に搭載される各種の車載機器に対して、本発明による車両用制御システムを適用した例について説明する。しかしながら、本発明による車両用制御システムは、ハイブリッド車両における車載機器の制御に適用されるばかりでなく、エンジンのみを有する通常の車両や、電動モータのみを有する電動車両の各種の車載機器の制御に適用されても良い。また、ドメイン分けに関して説明しているが、このドメイン分けは制御システムの制御構造に密接に関係するため、必ずしも以下に説明する例と同一のドメイン分けを行う必要なく、適宜、最適なドメイン分けを行えば良い。
図1は、上述したハイブリッド車両における各種の車載機器のための車両用制御システム100の全体構成の一例をブロック図として表したものである。本実施形態に係る車両用制御システム100は、制御論理構造として、制御対象とする複数の車載機器のそれぞれの機能(役割)に応じて、複数のドメインに区分けされている。それら複数のドメインにおいて、それぞれ、車載機器を制御するための機器制御部16〜19、26〜29、36〜39と、それら機器制御部による制御を統括するドメイン制御部11〜14、21〜24,31〜34とに階層化されている。
本実施形態に係る車両用制御システム100では、詳しくは後述するが、ドメイン制御部は、ドメイン全体の制御目標を算出するとともに、そのドメイン全体の制御目標を達成するための各エリアのエリア制御目標を算出するマスタドメイン制御部11〜14と、与えられたエリア制御目標を達成するように、対応する機器制御部16〜19、26〜29、36〜39の制御目標を算出する、各エリアに配置されたローカルドメイン制御部21〜24、31〜34とを有している。これらの各ドメイン制御部は、相互に通信可能に接続されている。さらに、本実施形態の車両用制御システム100では、複数のマスタドメイン制御部11〜14にて協調制御を行わせたり、各マスタドメイン制御部11〜14による制御が競合する場合に、競合する制御を調停したりする統合制御部15も設けられている。
具体的なドメイン分けの例として、図1に示す例では、車両用制御システム100は、シャシドメイン、パワートレインドメイン、ボデードメイン、監視ドメインの4つのドメインに区分けされている。このように定めたドメインにより、ハイブリッド車両に搭載された多数の車載機器は、機能面で類似、関連するもの同士がグループ化される。
例えば、シャシドメインには、各車輪に設けられた油圧ブレーキを作動させるため、油圧ポンプや電磁バルブなどの油圧ブレーキ装置の構成部品を駆動するブレーキアクチュエータ、各車輪に設けられた減衰力調整可能なダンパ、各車輪のタイヤに設けられ、空気圧の検知信号を無線通信する空気圧センサ、電動パワーステアリング、エンジンや電動モータの回転を適切な変速比で変速して駆動軸に伝えるトランスミッション、運転者によるブレーキペダルの踏力を増幅してマスタシリンダに伝えるための負圧を発生する負圧ポンプなどの車載機器が属する。
そして、シャシドメインには、上述した車載機器を制御するためのシャシ機器制御部16、26、36が設けられている。例えば、シャシドメインには、シャシ機器制御部16、26、36として、ブレーキアクチュエータ制御部、ダンパ制御部、空気圧検知制御部、電動パワーステアリング制御部、トランスミッション制御部、負圧ポンプ制御部などが設けられる。なお、油圧ブレーキ装置は、前輪側と後輪側とで、それぞれ独立して、油圧を調整できるように構成されており、ブレーキアクチュエータは、左右前輪のブレーキ油圧を個別に調節可能な前輪側ブレーキアクチュエータと、左右後輪のブレーキ油圧を個別に調節可能な後輪側ブレーキアクチュエータとに分けられている。このため、ブレーキアクチュエータ制御部としても、前輪側ブレーキアクチュエータ制御部と、後輪側ブレーキアクチュエータ制御部とが設けられる。
これらのシャシ機器制御部16、26、36は、原則として、シャシドメインに属する車載機器に対応して個別に設けられるが、複数の車載機器に対して共通のシャシ機器制御部を設けることも可能である。さらに、シャシ機器制御部16、26、36は、それぞれ電子制御装置(ECU)によって構成される。その際、それぞれのシャシ機器制御部16、26、36を、個別のECUによって構成しても良いし、複数のシャシ機器制御部16、26、36を共通のECUによって構成しても良い。さらに、機器制御部を構成するECUを、他のドメインの機器制御部と共用しても良い。
そして、シャシ機器制御部16、26、36は、対応するシャシドメイン制御部11、21、31から与えられた制御目標に従って、対応する車載機器を制御する。
シャシドメイン制御部11、21、31は、マスタドメイン制御部としてのマスタシャシドメイン制御部11と、ローカルドメイン制御部としてのローカルシャシドメイン制御部21、31とから構成されている。マスタシャシドメイン制御部11及びローカルシャシドメイン制御部21,31は、後述するように、車両を3つのエリアに区画した際、3つのエリアに分散して配置される。マスタシャシドメイン制御部11は、マスタドメイン制御部としての機能と、ローカルドメイン制御部としての機能とを兼ね備えたものである。
マスタシャシドメイン制御部11は、マスタドメイン制御部として、車両の状態や、運転者の操作状態に応じてシャシドメイン全体の制御目標を定め、さらに、ドメイン全体の制御目標に基づき、各エリアが実現すべきエリア制御目標を定める。マスタシャシドメイン制御部11によって定められたエリア制御目標は、ローカルシャシドメイン制御部21、31に与えられる。ローカルシャシドメイン制御部21、31は、与えられたエリア制御目標に基づき、シャシ機器制御部26、36を制御するための制御目標を算出して、シャシ機器制御部26、36に出力する。この際、マスタシャシドメイン制御部11も、ローカルドメイン制御部として、自身が属するエリアにおけるエリア制御目標に基づき、シャシ機器制御部16を制御するための制御目標を算出し、シャシ機器制御部16に出力する。
パワートレインドメインには、例えば、車両を加速させたり、減速させたり、あるいは速度を一定に保つための動力を車両に作用させる役割を担うエンジン及びモータジェネレータ(MG)、エンジン及び/又はMGが発生したトルク(駆動力)を4輪各輪に配分する役割を担う駆動力配分機構、MGに駆動電力を供給したり、MGが発電した電力を蓄電したりする役割を担う高圧バッテリ、低電圧バッテリの充電のために高圧バッテリが発生する高電圧を降圧して低電圧バッテリに供給するDCDCコンバータ、外部充電設備により高圧バッテリを充電するための充電器インターフェース(IF)などの車載機器が属する。さらに、パワートレインドメインには、低圧バッテリや、この低圧バッテリから各種の車載機器への給電のオン、オフを切り換えるジャンクションボックス(JB)などの車載機器が属しても良い。
なお、低圧バッテリは、車両のエンジンルーム内に設置される主低圧バッテリ、車両のラゲッジスペース(又はトランクルーム)の床下などに設置される副低圧バッテリなど複数のバッテリを含む。また、ジャンクションボックスは、エンジンルール内及びその付近に搭載された車載機器への給電のオン、オフを切り換えるためのフロントジャンクションボックス(JB)と、主として車室内及びその付近に搭載された車載機器への給電のオン、オフを切り換えるセンターJBと、ラゲッジスペース内又はその付近に搭載された車載機器への給電のオン、オフを切り換えるリヤJBとを含む。これらのジャンクションボックスは、いずれも、各車載機器へ給電するための電源として、主低圧バッテリと副低圧バッテリとのいずれかを選択することができるように構成されている。
パワートレインドメインには、上述した車載機器を制御するためのパワートレイン機器制御部17、27、37が設けられている。例えば、パワートレインドメインには、パワートレイン機器制御部17、27、37として、エンジン制御部、MG制御部、駆動力配分機構制御部、高圧バッテリ制御部、DCDCコンバータ制御部、充電器IF制御部、主低圧バッテリ制御部、副低圧バッテリ制御部、フロントJB制御部、センターJB制御部、リヤJB制御部などが設けられる。そして、パワートレイン機器制御部17、27、37は、対応するパワートレインドメイン制御部12、22、32から与えられた制御目標に従って、対応する車載機器を制御する。
パワートレインドメイン制御部12、22、32は、マスタドメイン制御部としてのマスタパワートレインドメイン制御部12と、ローカルドメイン制御部としてのローカルパワートレインドメイン制御部22、32とから構成されている。マスタパワートレインドメイン制御部12及びローカルパワートレインドメイン制御部22、32は、車両を3つのエリアに区画した際、3つのエリアに分散して配置される。マスタパワートレインドメイン制御部12は、マスタドメイン制御部としての機能と、ローカルドメイン制御部としての機能とを兼ね備えている。マスタパワートレインドメイン制御部22は、マスタドメイン制御部として、パワートレインドメイン全体の制御目標を定め、さらに、ドメイン全体の制御目標に基づき、各エリアが実現すべきエリア制御目標を定める。マスタパワートレインドメイン制御部12によって定められたエリア制御目標は、各ローカルパワートレインドメイン制御部22、32に与えられる。
ボデードメインには、例えば、ヘッドライトやポジションランプなどの前方灯火、歩行者等を保護するためにボンネットに設けられた外部エアバッグ、エンジンルームへの外気導入孔を開閉するシャッター、ドアのロック、アンロックを切り換えるモータや窓を開閉するモータ、シートポジションを調節するモータ、車室内の空調を行うエアコン、車両の乗員を保護するための乗員エアバッグ、リヤゲートを自動開閉するためのモータ、ブレーキランプなどの後方灯火などの車載機器が属する。従って、このボデードメインには、ボデー機器制御部18、28、38として、前方灯火制御部、外部エアバッグ制御部、シャッター制御部、ドア制御部、シート制御部、エアコン制御部、乗員エアバッグ制御部、リヤゲート制御部、後方灯火制御部などが設けられる。そして、ボデー機器制御部18、28、38は、対応するボデードメイン制御部13、23、33から与えられた制御目標に従って、対応する車載機器を制御する。
ボデードメイン制御部13、23、33は、マスタドメイン制御部としてのマスタボデードメイン制御部13と、ローカルドメイン制御部としてのローカルボデードメイン制御部23、33とから構成されている。マスタボデードメイン制御部13及びローカルボデードメイン制御部23、33は、車両を3つのエリアに区画した際、3つのエリアに分散して配置される。マスタボデードメイン制御部13は、マスタドメイン制御部としての機能と、ローカルドメイン制御部としての機能とを兼ね備えている。マスタボデードメイン制御部13は、マスタドメイン制御部として、ボデードメイン全体の制御目標を定め、さらに、ドメイン全体の制御目標に基づき、各エリアが実現すべきエリア制御目標を定める。マスタボデードメイン制御部13によって定められたエリア制御目標は、各ローカルボデードメイン制御部23、33に与えられる。
監視ドメインには、例えば、車両前方の障害物を検出するためにフロントグリルやフロントバンパに設置されるレーザレーダ及びミリ波レーダ、外気温度を検出する外気温度センサ、車両後方の映像を撮影するためにリアガラスの室内側に設置されるリヤカメラ、車両後方の障害物を検出するためにリヤバンパなどに設置されるミリ波レーダ、乗員が保持する携帯型キーが正規のものであるか否かを認証するために、携帯型キーと通信する通信装置などの車載機器が属する。従って、監視ドメインには、監視機器制御部19、29、39として、レーザレーダ制御部、フロントミリ波レーダ制御部、温度センサ制御部、リヤカメラ制御部、リヤミリ波レーダ制御部、通信装置制御部(認証装置)などが設けられる。そして、監視機器制御部19、29、39は、対応する監視ドメイン制御部14、24、34から与えられた制御目標に従って、対応する車載機器を制御する。
監視ドメイン制御部14、24、34は、マスタドメイン制御部としてのマスタ監視ドメイン制御部14と、ローカルドメイン制御部としてのローカル監視ドメイン制御部24、34とから構成されている。マスタ監視ドメイン制御部14及びローカル監視ドメイン制御部24、34は、車両を3つのエリアに区画した際、3つのエリアに分散して配置される。マスタ監視ドメイン制御部14は、マスタドメイン制御部としての機能と、ローカルドメイン制御部としての機能とを兼ね備えている。マスタ監視ドメイン制御部14は、マスタドメイン制御部として、監視ドメイン全体の制御目標を定め、さらに、ドメイン全体の制御目標に基づき、各エリアが実現すべきエリア制御目標を定める。マスタ監視ドメイン制御部14によって定められたエリア制御目標は、各ローカル監視ドメイン制御部24、34に与えられる。
次に、上述した車載機器、機器制御部16〜19,26〜29,36〜39及びドメイン制御部11〜14、21〜24、31〜34の車両への配置について説明する。
上述した各種の車載機器は、各車載機器に求められる役割や搭載上のスペースの関係から、車両の前部、中央部、後部などの各部に配置される。このため、ドメイン制御部11〜14、21〜24、31〜34を車両の所定の場所に集中的に配置すると、全体として、各車載機器までの通信配線の長さが長くなってしまい、車両内における取り回しが煩雑になってしまうことが懸念される。
そこで、本実施形態による車両用制御システム100では、車両を少なくとも2つのエリアに分割する。例えば、図2には、車両を、フロントエリア50、ミドルエリア60、及びリヤエリア70の3つのエリアに分割した例を示している。ただし、分割数は、図2の例のように3つに限定される訳ではない。例えば、車両を前方エリアと後方エリアのように2つのエリアに分割しても良い。また、前方右側エリア、前方左側エリア、後方右側エリア、後方左側エリアのように、4つのエリアに分割しても良い。4つのエリアに分割する場合、図2に示す分割例において、フロントエリアをさらに左右2つのエリアに分割しても良い。さらに、車両のサイズに応じて、5つのエリアや6つのエリアに分割しても良い。
このようにして、車両を少なくとも2つのエリアに分割することにより、複数の車載機器は、その配置場所に応じて、分割されたいずれかのエリアに振り分けられる。その車載機器の振り分けに応じて、該当する車載機器を制御する機器制御部16〜19、26〜29、36〜39も同じエリアに属するように分散して配置される。さらに、各ドメイン制御部11〜14、21〜24、31〜34の構成要素である、マスタドメイン制御部11〜14、及びローカルドメイン制御部21〜24、31〜34も、制御目標を出力すべき対応する機器制御部16〜19、26〜29、36〜39と同じエリアに属するように分散して配置される。
この結果、関連するローカルドメイン制御部(ローカルドメイン制御部の機能を備えたマスタドメイン制御部含む)11〜14、21〜24、31〜34と、機器制御部16〜19、26〜29、36〜39と、車載機器とを同じエリアに配置することができる。従って、配線数の多いローカルドメイン制御部−機器制御部−車載機器を接続する通信配線の長さを短縮することが可能となる。その結果、車両における通信配線の取り回しの煩雑さを軽減することができる。
図1に示す例では、各ドメインのマスタドメイン制御部11〜14は、車両のミドルエリア60に配置された共通のマスタECU10内に構築され、相互に通信が可能に構成されている。さらに、マスタECU10内には、統合制御部15も構築され、各マスタドメイン制御部11〜14と通信可能に構成されている。
また、各ドメインのローカルドメイン制御部21〜24は、車両のフロントエリア50に配置された共通のフロントエリアECU20内に構築され、相互に通信が可能に構成されている。同様に、各ドメインのローカルドメイン制御部31〜34は、車両のリヤエリア70に配置された共通のリヤエリアECU30内に構築され、相互に通信が可能に構成されている。
図3に、機器制御部16〜19、26〜29、36〜39の各エリア50、60、70への配置例を示す。
図3に示す例では、シャシドメインにおいて、フロントエリア50に、機器制御部26として、前輪側ブレーキアクチュエータ制御部、左右前輪のダンパの減衰力を制御する前輪ダンパ制御部、左右前輪の空気圧の検知を制御する前輪空気圧検知制御部、電動パワーステアリング制御部、トランスミッション制御部などが配置されている。
シャシドメインのミドルエリア60には、機器制御部16として、負圧ポンプ制御部が配置されている。また、シャシドメインのリヤエリア70には、機器制御部36として、後輪側ブレーキアクチュエータ制御部、後輪ダンパ制御部、後輪空気圧検知制御部が配置されている。
パワートレインドメインにおいては、フロントエリア50に、機器制御部27として、エンジン制御部、MG制御部、主低圧バッテリ制御部、及びフロントJB制御部が配置されている。ミドルエリア60には、機器制御部17として、駆動力配分機構制御部及びセンターJB制御部が配置されている。また、リヤエリア70には、機器制御部37として、高圧バッテリ制御部、DCDCコンバータ制御部、充電器IF制御部、副低圧バッテリ制御部、及びリヤJB制御部が配置されている。
ボデードメインでは、フロントエリア50に、機器制御部28として、前方灯火制御部、前方外部エアバッグ制御部、及びシャッター制御部が配置されている。ミドルエリア60には、機器制御部18として、ドア制御部、シート制御部、エアコン制御部、乗員エアバッグ制御部が配置されている。また、リヤエリア70には、機器制御部38として、リヤゲート制御部、後方灯火制御部、後方外部エアバッグ制御部が配置されている。
監視ドメインでは、フロントエリア50に、機器制御部29として、レーザレーダ制御部、フロントミリ波レーダ制御部が配置されている。ミドルエリア60には、機器制御部19として、温度センサ制御部、通信装置制御部が配置されている。リヤエリア70には、機器制御部39として、リヤカメラ制御部、リヤミリ波レーダ制御部が配置されている。
次に、図4のフローチャートを参照しつつ、各ドメインにおけるマスタドメイン制御部11〜14の制御処理の一例について説明する。この図4のフローチャートに示す処理は、所定時間毎に繰り返し実行される。
図4のフローチャートのステップS100において、マスタドメイン制御部は、各種のセンサや操作スイッチからの信号に基づき、車両の状態、乗員(運転者)による各種の操作機器の操作状態を検出する。続くステップS110において、ステップS100での検出結果に基づいて、ドメインの制御目標を算出する。なお、各マスタドメイン制御部の上位に設けられた統合制御部15において、すべてのドメインに対する制御目標を算出し、さらに、そのすべてのドメインに対する制御目標を達成するための各ドメインの制御目標を算出して、各マスタドメイン制御部に提供するように構成しても良い。
ステップS120では、ステップS110で算出したドメインの制御目標に基づき、各エリアで実行(分担)すべき制御を示すエリア制御目標を算出する。これにより、各エリアにローカルドメイン制御部を分散配置した場合であっても、同じドメインの各エリアにおける制御の全体的な整合を図ることが可能になる。
この際、マスタドメイン制御部は、必要に応じて、他のマスタドメイン制御部へも、制御目標を送信する。例えば、車両の運転者がブレーキペダルを操作した場合、パワートレインドメインのマスタパワートレインドメイン制御部12は、ブレーキペダル操作に応じた制動トルクを発生させるべく、高電圧バッテリの充電可能量を考慮しつつ、油圧ブレーキと回生ブレーキとのそれぞれの目標ブレーキトルクを算出する。そして、マスタパワートレインドメイン制御部12は、算出した油圧ブレーキの目標ブレーキトルクをシャシドメインのマスタシャシドメイン制御部11へ送信する。すると、マスタシャシドメイン制御部11は、受信した目標ブレーキトルクを発生させるための制御指示を含むエリア制御目標を算出する。
ステップS130では、車載電源である主低電圧バッテリや副低電圧バッテリの蓄電量(SOC)に応じて、自身のドメインにて使用可能な電力量を算出する。具体的には、例えば、車載電源の蓄電量(SOC)に、ドメイン毎に定められた所定の比率を乗じることにより、自身のドメインにて使用可能な電力量を算出する。その所定の比率は、車両の状況などに応じて変化させても良い。その際、車両の状況は、例えば、停止、発進、加速、一定走行、減速、停車などに区分けすることができる。それぞれの状況において、各ドメインにおける制御内容が変化したり、制御の実行、停止が切り換わったりするためである。また、各ドメインにて使用可能な電力量を各マスタドメイン制御部にて算出するのではなく、上述した統合制御部にて算出し、その算出結果を各ドメインのマスタドメイン制御部に通知するようにしても良い。
ステップS140では、マスタドメイン制御部は、自身のドメインにて使用可能な電力量に基づいて、各エリアに分配する分配電力量を算出する。この分配電力量の算出は、例えば、自身のドメインにて使用可能な電力量に、エリア毎に定められた所定の比率を乗じることにより、各エリアの分配電力量を算出することができる。その所定の比率は、車両の状況や、各エリアにおける制御の実行の有無などに応じて変化させても良い。
ステップS150では、マスタドメイン制御部は、ステップS120において算出したエリア制御目標、及びステップS140において算出した各エリアの分配電力量を、各エリアのローカルドメイン制御部へ送信する。
ここで、マスタドメイン制御部は、保有している制御情報に基づき、上述した制御処理を実行する。マスタドメイン制御部が保有する制御情報には、自身のドメインに属するドメイン制御部及び機器制御部が保有する制御機能に関する情報、車載機器に関する情報、センサ等の装備に関する情報などを含む構成情報が含まれる。なお、マスタドメイン制御部は、他のドメインとの協調制御を行う場合には、事前に、他のドメインのマスタドメイン制御部に、協調制御を行うことが可能な構成を備えているかを問合せる。この際、他のドメインのマスタ制御部は、自身が保有する制御情報に基づき、協調制御を行うことが可能な構成を備えているか否かを確認し、その確認結果を回答する。
ドメイン制御部が保有する制御機能としては、例えば、車両を一定速度で走行させるいわゆるオートクルーズ機能、限られた速度範囲で先行車両に追従するように走行させるいわゆるアダプテイブクルーズ機能、もしくは、全車速で先行車への追従機能を備えた全車速追従機能付きクルーズ機能などが挙げられる。また、機器制御部が保有する制御機能としては、例えば、モータ単独での車両走行機能や、ジェネレータによる回生機能などが挙げられる。車載機器に関する情報としては、その車載機器の種類や性能を示す情報が挙げられる。装備に関する情報としては、ドメイン制御部や機器制御部が制御機能を実行する上で、利用可能なセンサ、スイッチ、カメラなどの装備を示す情報が挙げられる。
また、マスタドメイン制御部が保有する制御情報には、上述した構成情報に対応する、該当するドメインにおける複数の制御状態に関する情報、及びそれら複数の制御状態間の遷移に関する情報を含む状態遷移情報が含まれる。例えば、パワートレインドメイン制御部12、22、32は、車両における動力を制御するものであり、その制御状態として、発進、加速、定常走行、減速(回生)、及び停止などの状態を取る。また、複数の制御状態間の遷移に関する情報としては、各状態からの遷移可能な状態及びその際の遷移条件などが含まれる。なお、制御状態が構成情報に対応するとの意味は、例えば、車載機器としてジェネレータを備えていない場合、減速(回生)との状態をとり得ないためである。
さらに、マスタドメイン制御部が保有する制御情報には、上述した複数の制御状態の各々における、ドメイン制御部、機器制御部、及び車載機器への電力の配電に関する配電情報が含まれる。制御状態に応じて、電力が必要となる制御部や車載機器が変化したり、供給すべき電力量も変化したりするためである。
また、マスタドメイン制御部が保有する制御情報には、ドメイン制御部間、及びドメイン制御部と機器制御部間で通信される通信データに関する通信情報も含まれる。この通信情報の具体例として、例えば、ドメイン制御部間、及びドメイン制御部と機器制御部間で通信を行う際に使用される通信パケットの定義情報、すなわち、通信パケットに含まれるデータの種類やデータの長さなどの定義情報と、送受信先を示す情報などを挙げることができる。
また、マスタドメイン制御部が保有する制御情報には、そのドメインに属する車載機器を制御したときに、その制御が正常であるか、それとも異常が生じたかを判定するための判定情報も含まれる。例えば、パワートレインドメイン制御部12、22、32が、エンジンやモータジェネレータを制御したり、シャシドメイン制御部11、21、31へブレーキの協調制御を依頼したりした場合に、正常に制御が行われた場合には発生しえない車両の加減速度の上下限を判定情報とすることができる。
マスタドメイン制御部に加え、各エリアに配置されるローカルドメイン制御部も、上述した制御情報を保有している。従って、マスタドメイン制御部は、保有している制御情報に基づいて、各エリアの制御目標や分配電力量の算出を適確に行うことができる。さらに、ローカルドメイン制御部は、各エリアの制御目標に従って、対応する車載機器を適確に制御することができる。
具体的な制御の一例を説明すると、例えば、パワートレインドメイン制御部12,22、32は、保有している制御情報に基づき、上述した各制御状態において、駆動する車載機器を選択し、その車載機器に対する制御目標を算出する。例えば発進の際には、駆動する車載機器としてモータジェネレータを選択し、運転者によるアクセルの踏込量に応じたモータトルクを算出する。また、定常走行の際には、駆動する車載機器としてエンジンを選択し、車速を維持するために必要なエンジントルクを算出する。
その際、マスタドメイン制御部12は、制御状態の決定と、その制御状態におけるドメイン全体の目標(例えば、正トルク又は負トルクの発生など)を算出する。さらに、マスタドメイン制御部12は、ドメイン全体の目標に基づき、各エリアの制御目標(例えば、エンジン発生トルク、モータ発生トルク、ジェネレータによる電力回生量など)を算出する。ローカルドメイン制御部22、32では、そのエリア目標を達成するべく、各機器制御部へ与える制御目標を算出する。このようにして、マスタドメイン制御部12及びローカルドメイン制御部22、32は、保有している制御情報を利用して、適切な制御を行うことができる。
ところで、近年では、車両が市場に投入された後に、点検等のためにディーラーに持ち込まれたとき、ソフトウエアの更新により機器制御部の制御機能をより高度なものとしたり、新たな制御機能を持った機器制御部及びその制御機能を実現するための必要となる装備を追加したりすることがある。機器制御部や装備の追加が必要なく、単に、既存の機器制御部の制御機能の高度化だけを行う場合には、例えば、オンラインでソフトウエアを更新することも行われている。
このようなソフトウエアの更新や、機器制御部の追加などにより、制御機能の高度化のための変更や新規機能の追加が行われた場合、例えば、更新されたソフトウエアの不具合によって、あるいは更新されたソフトウエアにより既存のソフトウエアの実行が阻害されるなどして、実際に制御を実行する際になんらかの異常が発生する可能性も否定できない。
そこで、本実施形態による車両用制御システム100では、制御機能が追加及び/又は変更された後において、車両用制御システム100における制御に異常が生じた場合に、車両用制御システム100を正常動作可能な状態に復帰させることができるようにした点に特徴がある。以下に、車両用制御システム100を正常動作可能な状態に復帰させるための構成、及びその手順などに関して、図面を参照して詳細に説明する。
図1に示すように、本実施形態による車両用制御システム100は、バップアップ(B/U)ECU40を備えている。B/UECU40は、機器制御部16〜19、26〜29、36〜39が構築されるECU、及び各ドメイン制御部11〜14、21〜24、31〜34が構築されるECU10、20、30とは別に設けられたものである。ただし、例えば電源系や通信IFなどを別個とした上で、他のECU10、20、30と合体させても良い。
B/UECU40は、通信線を介して、マスタECU10、フロントエリアECU20、及びリヤエリアECU30と接続されており、相互に通信可能となっている。また、B/UECU40は、不揮発性メモリ41を有しており、その不揮発性メモリ41に、各ドメインの制御情報をそれぞれ記憶している。このB/UECU40が保有する制御情報は、各々のドメインにて制御機能の変更や追加が行われても書き換えられることはなく、車両用制御システム100の初期状態に対応した制御情報(初期制御情報)のまま維持される。
その一方で、制御機能の変更や追加が行われた場合、各ドメイン単位で、マスタドメイン制御部11〜14が、その追加及び/又は変更された制御機能に関する制御情報である追加変更情報を取得して、自身の不揮発性メモリに保存する。この追加変更情報は、追加あるいは置き換えられた機器制御部や、更新されたソフトウエアに情報として含ませておくことができる。この場合、マスタドメイン制御部11〜14は、追加変更情報を、追加あるいは置き換えられた機器制御部から取得したり、更新されたソフトウエアを持つ機器制御部あるいはドメイン制御部から取得したりすることができる。また、マスタドメイン制御部11〜14が追加変更情報を取得するために、追加変更を行った作業者が、外部装置を車両の通信ネットワークに接続して、その外部装置からマスタドメイン制御部へ追加変更情報を送信しても良い。
追加変更情報は、追加及び/又は変更された制御機能に関する制御情報と、その制御情報を、マスタドメイン制御部11〜14が保有する制御情報に組み込むための組込情報とからなる。例えば、組込情報は、制御機能が新規に追加されたものであるか、それとも既存の制御機能から変更されたものであるかを示すとともに、既存の制御機能から変更された場合には、その既存の制御機能を特定するための情報を有する。また、制御機能の追加、変更に伴い、新たな制御状態が設定される場合には、組込情報は、その新たな制御状態と、既存の制御状態との関係を示す情報を含む。
マスタドメイン制御部11〜14は、このような追加変更情報を取得すると、自身が保有している制御情報に、追加変更情報に含まれる制御情報を、組込情報を用いて組み込んで、両制御情報を結合する。例えば、マスタドメイン制御部11〜14は、制御情報が新規に追加されるものであるならば、現に保有している制御情報に追加制御情報を付加し、制御情報が既存の制御情報の一部を変更するものであるならば、変更制御情報により、既存の制御情報の一部を置き換える。この追加変更情報の組み込みを行うごとに、ドメイン制御部11〜14は、制御情報の更新情報を履歴として保存しておく。
これにより、制御機能の追加や変更が行われた場合であっても、マスタドメイン制御部11〜14は、その制御機能の追加、変更が反映された制御情報を保有することができ、その制御情報に基づいて、追加、変更された制御機能を含む各種機能を実行させることができる。
図5は、監視ドメインの制御情報に関して、B/UECU40、マスタドメイン制御部14、ローカルドメイン制御部24、34が、それぞれ、どのような情報を保有し、さらに、制御機能の追加や変更時にどのような処理を実行するかの一例を示している。
図5に示すように、B/UECU40は、構成情報管理として、初期状態での車両用制御システム100における、監視ドメインの構成情報を保持する。例えば、図5に示す例では、初期状態においては、マスタドメイン制御部14は、先行車への追従機能を備えておらず、また、先行車を補足するための装備であるカメラも備えていない。B/UECU40は、状態遷移情報管理として、初期構成に対応した複数の制御状態、及び複数の制御状態間の遷移許可、不許可条件などからなる初期状態遷移情報を保持する。例えば、図5に示す例では、初期状態遷移情報として、制御状態間の遷移許可/不許可条件として用いられる、キースイッチと車速情報を保持している。
B/UECU40は、配電情報管理として、配電開始条件、配電終了条件、配電量などからなる初期構成に対する配電情報を保持する。B/UECU40は、通信情報管理として、初期構成において使用される通信データやその通信データの送受信先の通信情報を保持する。そして、B/UECU40は、安全情報管理として、初期構成において異常挙動推定のための判定値を安全情報として保持している。例えば、図5に示す例では、B/UECU40は、判定値として、車両の加減速度の上下限を保持している。
なお、B/UECU40は、安全情報管理の機能として、保持している判定情報を用いて、車両に異常な挙動が生じているかどうか、すなわち、車両用制御システム100による制御に異常が発生しているかどうかを判定する機能、及び、マスタECU10の異常時に、マスタECU10に代わって、フロントエリアECU20及びリヤエリアECU30の各ローカルドメイン制御部21〜24、31〜34へ制御目標を与える代理制御機能を備えている。ただし、代理制御機能では、初期状態における初期制御情報に基づいて、各ローカルドメイン制御部21〜24、31〜34へ制御目標を与えることになるので、制御内容に制約を課し(例えば、車両の速度や加減速度に制限を設ける)、リンプホームモードでの退避走行が可能となる程度に留めることが好ましい。
マスタドメイン制御部14は、上述したように、追加及び/又は変更された制御機能に関する制御情報と、その制御情報を、マスタドメイン制御部11〜14が保有する制御情報に組み込むための組込情報とを含む追加変更情報を保持する。実際のところ、追加変更情報は、図5に示すように、B/UECU40に保持される初期制御情報と同様に、構成情報、状態遷移情報、配電情報、通信情報、及び安全情報に細分化して、マスタドメイン制御部14に保持される。以下、図5を参照して、詳しく説明する。
マスタドメイン制御部14は、構成情報管理として、追加及び/又は変更された構成情報を保持する。さらに、この追加及び/又は変更された構成情報を、現に保有している構成情報に組み込むための組込情報も保持する。例えば、図5に示した例では、マスタドメイン制御部14は、制御機能として先行車追従機能、装備として先行車を補足するためのカメラを含む構成情報を保持し、さらに、組込情報として、これらの制御機能、装備が新規に追加された旨の情報を保持している。そして、マスタドメイン制御部14は、構成情報管理の一機能として、追加及び/又は変更された構成情報を、組込情報を用いて、保有している構成情報(初期構成情報)に組み込んで、両構成情報を結合する機能も備えている。さらに、マスタドメイン制御部14は、構成情報管理の一機能として、B/UECU40が故障して、B/UECU40から初期構成情報が取得できない場合に備えて、初期構成情報よりも情報量を削った最小構成情報も保持している。
マスタドメイン制御部14は、状態遷移情報管理として、制御機能の追加、変更に伴い、新たな制御状態が設定されたり、制御状態が変更されたりする場合、新規又は変更後の制御状態を示す情報と、その制御状態と既存の制御状態との関係を示す組込情報とを含む差分状態遷移情報を保持する。例えば、図5には、新規に設定された制御状態が「追従」状態であること、及びその新規の制御状態と既存の制御状態との関係(遷移許可条件、遷移先など)を示す組込情報が、差分状態遷移情報として保持されることが示されている。そして、マスタドメイン制御部14は、状態遷移情報管理の一機能として、新規に設定された制御状態や、変更された制御状態を、組込情報を用いて、保有している状態遷移情報に組み込んで、両状態遷移情報を結合する機能も備えている。さらに、マスタドメイン制御部14は、状態遷移情報管理の一機能として、上述した最小構成情報に対応する最小状態遷移情報も保持している。
マスタドメイン制御部14は、配電情報管理として、配電開始条件、配電終了条件、配電量などからなる、追加、変更された構成に対する配電情報を保持する。例えば図5に示した例では、追従スイッチがオンされたとき、中央エリアに設けられたカメラに電源供給を行うとの配電開始条件を保持している。マスタドメイン制御部14は、配電情報管理の一機能として、追加、変更された構成に対する配電情報を、保有している配電情報に組み込んで、両配電情報を結合する。この組込みにおいて、何らかの制約条件等がある場合には、マスタドメイン制御部14は、その情報を、配電情報の組込情報として保持する。さらに、マスタドメイン制御部14は、配電情報管理の一機能として、自身のドメインに割り当てられた電力量が必要電力量を下回る場合などに、ドメイン内の各制御部や車載機器の制御内容の見直しや、制御開始タイミングの遅延などにより、割り当てられた電力量の範囲内に収まるように使用電力の融通処理を行う。
マスタドメイン制御部14は、通信情報管理として、追加、変更された構成にて使用される通信データやその通信データの送受信先の通信情報を保持する。また、マスタドメイン制御部14は、安全情報管理として、追加、変更された構成を含めた場合の異常挙動推定のための判定値を安全情報として保持する。例えば、図5に示す例では、マスタドメイン制御部14は、判定値として、追加、変更された構成に応じて補正された車両の加減速度の上下限を保持している。
なお、マスタドメイン制御部14は、安全情報管理の一機能として、保持している判定情報を用いて、車両に異常な挙動が生じているかどうか、すなわち、車両用制御システム100による制御に異常が発生しているかどうかを判定する機能を備える。さらに、マスタドメイン制御部14は、安全情報管理の一機能として、例えば、制御機能の追加により処理負荷が増大した場合などに、ローカルドメイン制御部24、34との間で、制御機能の一部の引渡処理を実行する機能を備える。
ローカルドメイン制御部24、34も、マスタドメイン制御部14と同様に、各自のエリアに関連する制御情報を保有する。ただし、制御情報が変更される場合、ローカルドメイン制御部24、34は、それぞれ独自に制御情報を更新するのではなく、図5に示すように、マスタドメイン制御部14において更新された制御情報(構成情報、状態遷移情報、配電情報、通信情報、安全情報)の中から、自身のエリアに関連する更新された制御情報を取得する。しかしながら、各ローカルドメイン制御部24、34においても、上述したマスタドメイン制御部14と同様に、それぞれ独自に制御情報を更新するようにしても良い。
次に、制御機能が追加及び/又は変更された後において、車両用制御システム100における制御に異常が生じた場合に、車両用制御システム100を正常動作可能な状態に復帰させるための処理手順について、図6〜9のフローチャートを参照して説明する。なお、図6のフローチャートは、B/UECU40にて実行される処理を示し、図7のフローチャートはマスタECU10において実行される処理を示している。また、図8のフローチャートは、マスタECU10の各ドメイン制御部11〜14において実行される、構成情報の初期化及び追加/変更構成情報との結合等の処理を示している。図9のフローチャートは、マスタECU10の各ドメイン制御部11〜14において実行される、状態遷移情報の初期化及び追加/変更構成情報との結合等の処理を示している。
なお、詳しくは後述するが、本実施形態では、各ドメインのドメイン制御部11〜14が、共通のマスタECU10に構築されており、車両用制御システム100における制御に異常が生じた場合、いずれのドメインによる制御に起因したものかによらず、各マスタドメイン制御部11〜14の制御情報を、B/UECU40が保有する初期制御情報を用いて初期化するようにしている。
しかしながら、制御に異常が生じた場合に、ドメイン制御部11〜14ごとに異なる種類の判定値を用いて、その異常な制御を行ったドメイン制御部11〜14を特定し、その特定したドメイン制御部11〜14だけを、制御情報の初期化対象とするようにしても良い。
図6のフローチャートのステップS200では、車両の実際の加減速度を検出する。例えば、B/UECU40は、監視ドメイン制御部14と通信を行うことで、車両の実際の加減速度を示す情報を取得することができる。続くステップS210では、安全情報として保持している、車両加減速度の上下限を読み出す。そして、ステップS220において、実際の加減速度と、判定値としての加減速度の上下限を対比して、実際の加減速度が上下限の範囲に収まっているかどうかを判定する。この判定値としての加減速度の上下限は、パワートレインドメイン制御部12、22、32がエンジンやモータジェネレータを制御したり、シャシドメイン制御部11、21、31がブレーキを制御したりした場合に、正常に制御が行われた場合には、実際の加減速度が収まるような範囲を規定している。そのため、ステップS220において、実際の下限速度が上下限の範囲外と判定された場合には、車両用制御システム100の制御に何らかの異常が生じていると判定することができる。
なお、車両用制御システム100における制御の異常を判定するために、加減速度以外のパラメータ、例えば、各ドメイン制御部からの制御出力や、その変化の大きさ、制御出力の出力時期などに基づいて、車両用制御システム100における制御の異常を判定しても良い。
ステップS220において、実際の加減速度が、判定値としての上下限の範囲に収まっていると判定した場合には、図6のフローチャートに示す処理を終了する。一方、実際の加減速度が、上下限の範囲外と判定した場合には、ステップS230の処理に進む。ステップS230では、B/UECU40は、マスタECU10へ制御停止の指示を出す。そして、ステップS240において、B/UECU40は、自身が保有する初期制御情報に基づいて、マスタECU10に代わって、フロントエリアECU20及びリヤエリアECU30の各ローカルドメイン制御部21〜24、31〜34へ制御目標を与える代理制御を実行する。
この代理制御の開始時に、B/UECU40は、図示しない不揮発性の故障情報記憶部に、異常発生時に実行されていた制御に関する情報、及び異常発生時の車両運転状況を記憶して保持するようにしても良い。このような情報を記憶保持しておくことにより、後に、いずれのドメイン制御部にどのような故障が発生して、車両用制御システム100における制御に異常が生じたかの原因究明に資することができる。
ステップS250では、車両が停止したか否かを判定する。この判定処理において、まだ車両が停止していないと判定した場合、ステップS240の代理制御を継続する。一方、車両が停止したと判定すると、ステップS260の処理に進む。ステップS260では、B/UECU40は、マスタECU10へ制御情報の初期化を指示する。そして、ステップS270において、自身が保有する初期制御情報をマスタECU10へ送信する。
次に、図7のフローチャートが示す処理について説明する。この図7のフローチャートに示す処理はマスタECU10において実行されるものであるが、上述したように監視ドメイン制御部14が行っても良いし、ドメイン制御部11〜14とは別個に安全制御部を設け、その安全制御部にて行うようにしても良い。
ステップS300では、車両の実際の加減速度を検出する。続くステップS310では、判定値として保持している、追加、変更された構成に応じて補正された車両の加減速度の上下限を読み出す。そして、ステップS320において、実際の加減速度と、判定値としての加減速度の上下限を対比して、実際の加減速度が上下限の範囲に収まっているかどうかを判定する。
ステップS320において、実際の加減速度が、判定値としての上下限の範囲に収まっていると判定した場合には、図7のフローチャートに示す処理を終了する。一方、実際の加減速度が、上下限の範囲外と判定した場合には、ステップS330の処理に進む。ステップS330では、マスタECU10からB/UECU40へ代理制御の実行を依頼する。そして、ステップS340において、マスタECU10の制御を停止する。
ステップS350では、B/UECU40から、制御情報の初期化の指示を受信したか否かを判定する。初期化の指示を受信したと判定すると、ステップS360の処理に進み、制御情報の初期化、及び追加/変更構成情報との結合等の処理を実行する。この初期化、結合処理について、図8及び図9のフローチャートに基づいて説明する。
図8のフローチャートは、マスタECU10の各マスタドメイン制御部11〜14において実施される、制御情報の初期化、結合処理の内、構成情報に関する処理を示している。このように、各マスタドメイン制御部11〜14は、制御情報に含まれる構成情報、状態遷移情報、配電情報、通信情報、安全情報ごとに、初期化、結合処理を実行する。
図8のフローチャートにおいては、まずステップS400にて、保持している追加及び/又は変更された構成情報を読み出す。続くステップS410において、B/UECU40から送信される初期制御情報の内、初期構成情報を取得する。そして、ステップS420では、B/UECU40との通信が正常に行われて、初期構成情報を取得できたか否かを判定する。初期構成情報を取得できたと判定した場合には、ステップS430の処理に進む。一方、B/UECU40との通信を行うことができず、初期構成情報を取得できない場合、ステップS420での判定結果が「NO」となり、ステップS440の処理に進む。
ステップS430では、B/UECU40から取得した初期構成情報に対して、ステップS400にて読み出した、追加及び/又は変更された構成情報を組み込んで、両構成情報を結合する。一方、ステップS440では、初期構成情報が得られないので、ドメイン制御部11〜14自身が保有する最小構成情報に対し、追加及び/又は変更された構成情報を組み込んで両構成情報を結合し、制御情報の更新を行う。ただし、この場合、初期制御情報よりも情報量を削った最小構成情報を用いているので、リンプホームモードでの退避走行のみ可能とする。
そして、ステップS450において、各マスタドメイン制御部11〜14は、更新した構成情報に基づく、各エリアに関連する構成情報を、各エリアのローカルドメイン制御部21〜24、31〜34へ送信する。
図9のフローチャートは、マスタECU10の各マスタドメイン制御部11〜14において実施される、制御情報の初期化、結合処理の内、状態遷移情報に関する処理を示している。図9に示されるように、状態遷移情報も、上述した構成情報の場合と同様に更新されるので、詳細な説明は省略する。
図10は、状態遷移情報の更新により、制御状態が追加された一例を概念的に示している。図10(a)は、初期の制御状態遷移を示している。初期状態における車両用制御システム100は、先行車への追従機能を備えていない。従って、車速や運転者の運転操作によって、制御状態が遷移するだけである。図10(b)は、制御機能の追加により、追従機能が追加された場合の制御状態遷移を示している。先行車への追従機能は、車両の状態によらず、いつでの開始できるようになっているため、図10(b)では、初期の制御状態を通常状態とし、追従が指示されると通常状態から追従状態への遷移するようになっている。
上述した構成情報や状態遷移情報を含む制御情報の結合処理において、追加及び/又は変更されたすべての制御機能の制御情報を結合するのではなく、結合後に、再び異常が生じないように、結合する制御情報を選択したり、結合する順序を変更したりしても良い。
具体的には、例えば、追加及び/又は変更された制御機能の実行時に、車両用制御システム100における制御に異常が生じた場合、マスタドメイン制御部11〜14は、異常発生の原因となった追加及び/又は変更された制御機能を除く、制御機能に関する制御情報だけを結合するようにしても良い。これにより、再び異常が発生しないように、制御情報の更新を行うことが期待できる。
または、マスタドメイン制御部11〜14は、制御情報の更新情報を履歴として保存しており、初期制御情報に対して、追加及び/又は変更された制御機能の制御情報を結合して更新する際には、保存された更新情報に基づいて、更新量の少ない順に制御情報の更新を実行するようにしても良い。更新量が少ないほど、その更新処理に不具合が発生する可能性が小さくなるためである。
あるいは、マスタドメイン制御部11〜14は、初期制御情報に対して、追加及び/又は変更された制御機能の制御情報を結合して更新する際には、保存された更新情報の履歴に基づき、当該履歴における順序とは異なる順序で、制御情報の更新を実行するようにしても良い。更新順序を変更することで、不具合の発生を回避できる場合もあるためである。
もしくは、マスタドメイン制御部11〜14は、初期制御情報に対して、追加及び/又は変更された制御機能の制御情報を結合して更新する際には、保存された更新情報の履歴に基づき、当該履歴における最後に更新された制御機能を除く、制御機能に関する制御情報だけを結合して、制御情報の更新を行うようにしても良い。時期的に異なるタイミングで複数の制御機能に関する制御情報が結合された場合、最後に結合された制御情報が、異常の原因となっている可能性が高いためである。
このように、本実施形態による車両用制御システム100は、制御になんらかの異常が生じた場合に、B/UECU40に保存された初期制御情報を用いて、マスタドメイン制御部11〜14における制御情報を初期化することができる。すなわち、マスタドメイン制御部11〜14による制御情報を、初期状態での車両用制御システム100に対応した制御情報に確実に戻すことができる。そして、この状態から、例えば、異常発生の原因となった可能性が高い、追加及び又は変更された制御機能を除く制御機能に関する制御情報を更新することも可能となる。従って、車両用制御システム100を正常動作可能な状態に確実に復帰させることができる。
次に、マスタECU10、エリアECU20,30、及びB/UECU40の起動時の処理において異常が生じた場合、どのような安全処理を実施するかに関して図11及び図12のフローチャートを参照して説明する。車両のキースイッチがオンされると、マスタECU10、エリアECU20,30、及びB/UECU40がそれぞれ起動される。この起動処理において何らかの異常が発生し、1つ異常のECUが正常に起動しない場合、通常通りの制御を行うことはできない。そのような場合でも、極力安全に制御を開始できるように、本実施形態による車両用制御システム100では、図11及び図12のフローチャートに示す処理を実行する。なお、図11及び図12のフローチャートに示す処理は、各ECU10、20、30、40を除き、最初に起動される図示しない電源ECUによって実行される。
まず、図11のフローチャートのステップS600では、B/UECU40の起動処理を実行する。本実施形態による車両用制御システム100では、いずれかのECU10、20、30、40が正常に起動しなかった場合に、適切な対処を行うことができるように、各ECU10、20、30、40を同時に起動するのではなく、B/UECU40、マスタECU10、エリアECU20、30の順で、順番に起動するようにしている。
ステップS610では、B/UECU40の起動処理を開始してから、B/UECU40の起動が完了することなく、第1所定時間が経過したか否かを判定する。B/UECU40の起動処理が正常に行われた場合、B/UECU40は第1所定時間以内に起動を完了する。換言すれば、第1所定時間が経過してもB/UECU40の起動が完了しない場合、B/UECU40の起動処理には何らかの異常が発生したとみなすことができる。従って、ステップS610の判定処理において、第1所定時間が経過していると判定した場合には、ステップS630の処理に進んで、B/UECU40の異常を判定する。その後、ステップS640の処理に進む。
ステップS610において、第1所定時間が経過していないと判定した場合には、ステップS620の処理に進む。ステップS620では、B/UECU40の起動が完了したか否かを判定する。この判定処理において、まだ起動が完了していないと判定すると、ステップS600の処理に戻り、B/UECU40の起動処理を継続させる。一方、B/UECU40の起動が完了したと判定すると、ステップS640の処理に進む。
ステップS640では、マスタECU10の起動処理を実行する。続くステップS650では、マスタECU10の起動処理を開始してから、マスタECU10の起動が完了することなく、第2所定時間が経過したか否かを判定する。マスタECU10の起動処理が正常に行われた場合、マスタECU10は第2所定時間以内に起動を完了する。従って、第2所定時間が経過してもマスタECU10の起動が完了しない場合、マスタECU10の起動処理には何らかの異常が発生したとみなすことができる。従って、ステップS650の判定処理において、第2所定時間が経過していると判定した場合には、ステップS670の処理に進んで、マスタECU10の異常を判定する。その後、ステップS680の処理に進む。
ステップS650において、第2所定時間が経過していないと判定した場合には、ステップS660の処理に進む。ステップS660では、マスタECU10の起動が完了したか否かを判定する。この判定処理において、まだ起動が完了していないと判定すると、ステップS640の処理に戻り、マスタECU10の起動処理を継続させる。一方、マスタECU10の起動が完了したと判定すると、ステップS680の処理に進む。
ステップS680では、エリアECU20、30の起動処理を実行する。続くステップS690では、エリアECU20、30の起動処理を開始してから、エリアECU20、30の起動が完了することなく、第3所定時間が経過したか否かを判定する。エリアECU20、30の起動処理が正常に行われた場合、エリアECU20、30は第3所定時間以内に起動を完了する。従って、第3所定時間が経過してもエリアECU20、30の起動が完了しない場合、エリアECU20、30の起動処理には何らかの異常が発生したとみなすことができる。従って、ステップS690の判定処理において、第3所定時間が経過していると判定した場合には、ステップS710の処理に進んで、起動しないエリアECU20、30の異常を判定する。その後、ステップS720の処理に進む。
ステップS690において、第3所定時間が経過していないと判定した場合には、ステップS700の処理に進む。ステップS700では、エリアECU20、30の起動が完了したか否かを判定する。この判定処理において、まだ起動が完了していないと判定すると、ステップS680の処理に戻り、エリアECU20、30の起動処理を継続させる。一方、エリアECU20、30の起動が完了したと判定すると、ステップS720の処理に進む。
ステップS720では、全てのECU10、20、30、40が正常に起動したか否かを判定する。この判定処理において、全てのECU10、20、30、40が正常に起動したと判定した場合、ステップS730に進んで、各ECU10、20、30、40に通常制御の実行を許可するとともに、マスタECU10のマスタドメイン制御部11〜14とエリアECU20、30のローカルドメイン制御部21〜24、31〜34との間で、必要に応じて、制御機能の一部の引渡し処理を許可する。一方、ステップS720において、すべてのECU10、20、30、40が正常に起動しなかったと判定した場合には、ステップS740に進んで、異常時処理を実行する。
図12のフローチャートは、ステップS740の異常時処理の詳細を示している。この異常時処理においては、まずステップS800において、異常が発生したECUは1台であるか、2台以上であるかを判定する。2台以上と判定した場合、ステップS810に進む。ただし、この場合、制御を行うことは困難であるため、制御不能と判断し、制御を実施しない。一方、異常が発生したECUが1台であると判定した場合、ステップS820に進んで、異常が発生したECUの種別を判定する。
ステップS820において、異常が発生したECUがエリアECU20、30であると判定した場合には、ステップS830の処理に進んで、他のエリアECUを用いた補完制御を実行するよう設定する。例えば、フロントエリアECU20に異常が発生した場合、前輪ブレーキアクチュエータによって前輪に制動力を発生すべき状況が生じたとき、その前輪制動力の分も加味して、後輪側ブレーキアクチュエータによって制動力を発生させるよう補完制御を行う。
異常が発生したECUがマスタECU10である場合、ステップS840の処理に進んで、B/UECU40が、マスタECU10に代わって、フロントエリアECU20及びリヤエリアECU30の各ローカルドメイン制御部21〜24、31〜34へ制御目標を与える代理制御を実行するよう設定する。異常が発生したECUがB/UECU40である場合、ステップS850の処理に進んで、車両用制御システム100の制御に異常が生じて、制御情報の初期化などの処理が必要になった場合、マスタECU10の各マスタドメイン制御部11〜14が保有する最小構成情報等を利用することを設定する。
次に、図13を参照して、マスタドメイン制御部11〜14とローカルドメイン制御部21〜24、31〜34との間で、必要に応じて行われる、制御機能の一部の引渡し処理について説明する。例えばマスタドメイン制御部11〜14に制御機能が追加されて、処理負荷が増大した場合などに、マスタドメイン制御部11〜14は、ローカルドメイン制御部21〜24、31〜34に、制御機能の一部を引き渡す引渡処理を実行する。なお、制御機能の一部の引渡しは、ローカルドメイン制御部21〜24、31〜34からマスタドメイン制御部11〜14へ行っても良い。
マスタドメイン制御部11〜14から、ローカルドメイン制御部21〜24、31〜34に、制御機能の一部を引き渡す場合、図13に示すように、まず、ステップS900において、マスタECU10のマスタドメイン制御部11〜14が、該当するエリアECU20、30のローカルドメイン制御部21〜24、31〜34及びB/UECU40に、制御機能の一部の引渡し処理の開始を通知する。この通知を受けて、該当するローカルドメイン制御部21〜24、31〜34では、ステップS910に示すように、制御機能の一部をレシーブするための準備を行うとともに、準備が完了したときに準備完了通知を出力する。この準備完了通知をトリガとして、マスタドメイン制御部11〜14は、ステップS920において、制御機能の一部のリリース処理を開始する。この制御機能の一部のリリース処理では、リリースする制御処理の種類、制御処理の内容、制御開始条件、制御終了条件等の情報をローカルドメイン制御部21〜24、31〜34に出力する。さらに、マスタドメイン制御部11〜14では、リリースした制御処理の実行の停止を設定する。
一方、ローカルドメイン制御部21〜24、31〜34では、ステップS930において、制御機能の一部のレシーブ処理を開始する。このレシーブ処理では、マスタドメイン制御部11〜14から出力された情報を受信するとともに、その情報に含まれる制御処理を、制御開始条件が成立した時に実行するように設定する。
なお、マスタドメイン制御部11〜14とローカルドメイン制御部21〜24、31〜34との間で引渡し対象とする制御機能を事前に決めておき、それら制御機能を実行するためのデータを両者が備えるように構成しておけば、リリース処理及びレシーブ処理として、単に引き渡す制御機能を示す情報の送受信だけで済ませることができる。
マスタドメイン制御部11〜14におけるリリース処理、及びローカルドメイン制御部21〜24、31〜34におけるレシーブ処理は、ステップS940において、B/UECU40において監視される。B/UECU40は、リリース処理及びレシーブ処理の監視において、なんら異常を発見せず、正常に引渡しがおこなわれたと判定した場合、ステップS950において、マスタドメイン制御部11〜14及びローカルドメイン制御部21〜24、31〜34へ引渡し完了通知を出力する。この引渡し完了通知を受けて、マスタドメイン制御部11〜14では、ステップS960において、引渡しが完了したことを確認する。また、ローカルドメイン制御部21〜24、31〜34では、ステップS970において、引き渡された処理が開始可能となるように設定する。
一方、B/UECU40、制御機能の一部の引渡し処理において、何らかの異常を検出した場合、ステップS980において、制御機能の分担の初期化を指示する。この初期化指示を受けて、マスタドメイン制御部11〜14及びローカルドメイン制御部21〜24、31〜34では、制御機能の分担を初期化するための処理が行われる(ステップS990及びS1000)。なお、制御機能の分担の初期化に関しても、B/UECU40が保有する初期制御情報を参照することによって実行することが可能となっている。
以上、本発明の好ましい実施形態について説明したが、本発明は、上述した実施形態になんら制限されることなく、本発明の主旨を逸脱しない範囲において、種々変形して実施することが可能なものである。
例えば、上述した実施形態では、B/UECU40において、車両用制御システム100による制御に異常が発生したことを判定して、各マスタドメイン制御部11〜14に制御情報の初期化を指示するように構成された。すなわち、各マスタドメイン制御部11〜14が保持する制御情報を初期化するための処理をB/UECU40にて行うものであった。しかし、マスタECU10やエリアECU20、30が、車両用制御システム100の異常の判定と、異常が判定されたときの初期制御情報の提供依頼を行い、B/UECU40は、原則として、依頼に応じて初期制御情報を提供する機能だけを備えるものであっても良い。このように構成することにより、B/UECU40が保持する初期制御情報が意図せず改変等されてしまう可能性を低減することができる。
また、上述した実施形態では、ドメイン制御部が、マスタドメイン制御部11〜14とローカルドメイン制御部21〜24、31〜34から構成される例について説明した。しかしながら、上述した実施形態のようにエリア分けを実施せず、制御論理構造として、各ドメインのドメイン制御部にそれぞれの機器制御部が配置されても良い。
さらに、上述した実施形態では、いずれかのローカルドメイン制御部が、マスタドメイン制御部としての機能を兼ね備える例について説明した。しかしながら、マスタドメイン制御部は、各エリアに設けられるローカルドメイン制御部とは別個に設けても良い。