(57)【特許請求の範囲】
【請求項１】
複数の通信バスと一対一で接続される複数のトランシーバと、
前記複数の通信バスのうち優先順位の異なる２つの通信バスを接続する少なくとも１つのスイッチ素子と
を備え、
前記複数の通信バスは、第１制御装置が接続された第１通信バスと、第２制御装置が接続された第２通信バスであり、
前記第１通信バスは、前記第２通信バスより優先順位が高く、
前記複数のトランシーバは、前記第１通信バスに接続される第１トランシーバと、前記第２通信バスに接続される第２トランシーバであり、
前記少なくとも１つのスイッチ素子は、前記第１通信バスと前記第２通信バスを接続するスイッチ素子であり、
前記第１トランシーバに故障が発生した場合、前記第１トランシーバを前記第１通信バスが構成するネットワークから切り離し、前記スイッチ素子をオン状態に設定して前記第２トランシーバを介して前記第１制御装置との通信を実行する
ことを特徴とするゲートウェイ装置。
【請求項２】
複数の通信バスと一対一で接続される複数のトランシーバと、
前記複数の通信バスのうち優先順位の異なる２つの通信バスを接続する少なくとも１つのスイッチ素子と
を備え、
前記複数の通信バスは、第１制御装置が接続された第１通信バスと、第２制御装置が接続された第２通信バスであり、
前記第１通信バスは、前記第２通信バスより優先順位が高く、
前記複数のトランシーバは、前記第１通信バスに接続される第１トランシーバと、前記第２通信バスに接続される第２トランシーバであり、
前記少なくとも１つのスイッチ素子は、前記第１通信バスと前記第２通信バスを接続するスイッチ素子であり、
前記複数のトランシーバのそれぞれに接続された処理装置をさらに備え、
前記処理装置は、前記第１トランシーバからデータを受信できない状況が所定時間以上継続した場合、前記第１トランシーバを前記第１通信バスが構成するネットワークから切り離し、前記スイッチ素子をオン状態に設定して前記第２トランシーバを介して前記第１制御装置との通信を実行する
ことを特徴とするゲートウェイ装置。
【請求項３】
複数の通信バスと一対一で接続される複数のトランシーバと、
前記複数の通信バスのうち優先順位の異なる２つの通信バスを接続する少なくとも１つのスイッチ素子と
を備え、
前記複数の通信バスは、第１制御装置が接続された第１通信バスと、第２制御装置が接続された第２通信バスであり、
前記第１通信バスは、前記第２通信バスより優先順位が高く、
前記複数のトランシーバは、前記第１通信バスに接続される第１トランシーバと、前記第２通信バスに接続される第２トランシーバであり、
前記少なくとも１つのスイッチ素子は、前記第１通信バスと前記第２通信バスを接続するスイッチ素子であり、
前記複数のトランシーバのそれぞれに接続された処理装置をさらに備え、
前記第１トランシーバからデータを受信できない状況が所定時間以上継続した場合、
前記処理装置は、前記スイッチ素子をオン状態に設定し、前記第１トランシーバにスリープ指令を出力し、前記第１トランシーバに送信していたデータを前記第２トランシーバに送信する
ことを特徴とするゲートウェイ装置。
【請求項４】
請求項２のゲートウェイ装置において、
前記処理装置は、前記第１トランシーバからデータを受信できない状況が所定時間以上継続した場合に前記第１トランシーバに故障が発生したと判断する
ことを特徴とするゲートウェイ装置。
【請求項５】
請求項４のゲートウェイ装置において、
前記処理装置は、前記第１トランシーバに故障が発生した旨を通知装置を介して乗員に通知するための通知信号を出力する
ことを特徴とするゲートウェイ装置。
【請求項６】
請求項２のゲートウェイ装置において、
前記処理装置は、前記複数の通信バスのいずれかを介して第１トリガー信号が入力された場合、前記第１トランシーバにスリープ指令を出力し、前記第１トランシーバがスリープ状態のときに前記複数の通信バスのいずれかを介して第２トリガー信号が入力された場合、前記第１トランシーバにスリープ解除指令を出力する
ことを特徴とするゲートウェイ装置。
【請求項７】
請求項１から３のいずれか１項に記載のゲートウェイ装置において、
前記第１制御装置は、エンジン制御ＥＣＵ、ブレーキ制御ＥＣＵ及びトランスミッション制御ＥＣＵを含むパワートレイン系ＥＣＵのいずれかである
ことを特徴とするゲートウェイ装置。
【請求項８】
複数の通信バスと一対一で接続される複数のトランシーバと、
前記複数の通信バスのうち優先順位の異なる２つの通信バスを接続する少なくとも１つのスイッチ素子と
を備え、
前記複数の通信バスの優先順位が記憶されたメモリをさらに備え、
前記複数のトランシーバのそれぞれに接続された処理装置をさらに備え、
前記処理装置は、前記複数のトランシーバのうち前記複数の通信バスに含まれる第１バスに接続される第１トランシーバからデータを受信できない状況が所定時間以上継続した場合、前記第１トランシーバを前記第１バスが構成するネットワークから切り離し、前記複数のスイッチ素子のうち前記第１バスよりも優先順位が低い第２バスに接続された第２トランシーバと前記第１トランシーバとを接続するスイッチ素子をオン状態に設定し、前記第２トランシーバを介して前記第１バスに接続された制御装置との通信を実行する
ことを特徴とするゲートウェイ装置。
【請求項９】
複数の通信バスと一対一で接続される複数のトランシーバと、
前記複数の通信バスのうち優先順位の異なる２つの通信バスを接続する少なくとも１つのスイッチ素子と
を備え、
前記複数の通信バスの優先順位が記憶されたメモリをさらに備え、
前記複数のトランシーバのそれぞれに接続された処理装置をさらに備え、
前記複数のトランシーバのうち前記複数の通信バスに含まれる第１バスに接続される第１トランシーバからデータを受信できない状況が所定時間以上継続した場合、
前記複数のスイッチ素子のうち前記第１バスよりも優先順位が低い第２バスに接続された第２トランシーバと前記第１トランシーバとを接続するスイッチ素子はオン状態に設定され、
前記処理装置は、前記第１トランシーバにスリープ指令を出力し、前記第１トランシーバに送信していたデータを前記第２トランシーバに送信する
ことを特徴とするゲートウェイ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車載用の制御装置に係り、例えば複数のネットワーク間に接続され、情報の送受信を行う車両用のゲートウェイ装置に関する。
【背景技術】
【０００２】
近年の自動車等の車両には、エンジンやブレーキ等の各種車両制御系の装置を制御する車載電子制御装置（車載ＥＣＵと称することがある）や、車両の各種状態を表示するメータ等の機器を制御する車載電子制御装置など、多数の車載ＥＣＵが搭載されている。そして、車両内では、それら各車載ＥＣＵが通信線により接続されてネットワークを形成しており、このネットワークを介して各車載ＥＣＵ間の各種データの送受信が行われている。【０００３】
こうしたネットワークに接続され、各車載ＥＣＵ間の情報の送受信を担う装置としてゲートウェイ装置がある。ゲートウェイ装置の故障時にはネットワークを介したデータの送受信が停止してしまうため、ゲートウェイ装置には高い信頼性が求められる。【０００４】
また、ＣＡＮ Ｂｕｓをはじめとする車載用通信バスには特に重要なバスが存在する。
例えば、エンジン制御用の車載ＥＣＵが接続されているパワートレイン系の通信バスは非常に重要であり、故障が発生して通信が不可となった場合にはエンジン再始動が不可となる。【０００５】
この種の課題解決を試みた技術に関する文献として特開２００６−３３３００７号公報（特許文献１）がある。この公報には、第１の通信バス及び第２の通信バスの双方に接続されている複数の２重系統車載通信装置と、第２の通信バスのみに接続されている少なくとも１つの１系統車載通信装置とが混在した車両通信システムにおいて、複数の２重系統車載通信装置の少なくとも１つが、他の２重系統車載通信装置が第１の通信バスを介して送信したデータを取得して、当該データを第２の通信バスに転送するように構成した車両通信システムが開示されている。このように車両通信システムを構築すると、複数の２重系統車載通信装置の１つが第２の通信バス側で送信不良状態になっても、その２重系統車載通信装置から送信されたデータを残りの２重系統車載通信装置が第１の通信バスを介して取得して第２の通信バスに転送することで、第２の通信バス側で送信不良状態になった２重系統車載通信装置から送信されたデータを１系統車載通信装置が確実に受信できる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００６−３３３００７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上記特許文献１に記載のような車両通信システムを車両用のゲートウェイ装置に適用した場合、第１の通信バス及び第２の通信バスの双方に接続されている２重系統車載通信装置が必ず複数必要となる。すなわち、システムとして冗長系にする必要があり、ゲートウェイ装置が高価になり易い。【０００８】
本発明の目的は、システムとして冗長系を構成しなくても異常時の通信継続が可能であるゲートウェイ装置を提供することにある。
【課題を解決するための手段】
【０００９】
本願は上記課題を解決する手段を複数含んでいるが、その一例を挙げるならば、ゲートウェイ装置において、複数の通信バスと一対一で接続される複数のトランシーバと、前記複数の通信バスのうち優先順位の異なる２つの通信バスを接続する少なくとも１つのスイッチ素子とを備え、前記複数の通信バスは、第１制御装置が接続された第１通信バスと、第２制御装置が接続された第２通信バスであり、前記第１通信バスは、前記第２通信バスより優先順位が高く、前記複数のトランシーバは、前記第１通信バスに接続される第１トランシーバと、前記第２通信バスに接続される第２トランシーバであり、前記少なくとも１つのスイッチ素子は、前記第１通信バスと前記第２通信バスを接続するスイッチ素子であり、前記第１トランシーバに故障が発生した場合、前記第１トランシーバを前記第１通信バスが構成するネットワークから切り離し、前記スイッチ素子をオン状態に設定して前記第２トランシーバを介して前記第１制御装置との通信を実行することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、システムとして冗長系を構成することなく異常時もＥＣＵ間の通信を継続できるため、安価で信頼性の高いゲートウェイ装置を提供できる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施例の１つの車載電子制御装置の概略構成図。
【図２】メモリに格納された通信Ｂｕｓ１，２，３の優先順位テーブルの構成例を示す図。
【図３】図１の車載電子制御装置内の各部の動作を説明するためのタイムチャートの一例。
【図４】ＣＰＵの制御フローチャートの一例を示す図。
【図５】各通信Ｂｕｓが構成するネットワーク上に流れるデータの一例を示す図。
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態について図面を用いて説明する。
【００１３】
＜実施例１＞
図１に車載電子制御装置（車載ＥＣＵ（Ｅｌｅｃｔｒｏｎｉｃ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ））の制御回路構成を概略的に示す。車載ＥＣＵ１００は、ゲートウェイ装置（ゲートウェイＥＣＵとも称する）として機能しており、複数の車内用ネットワーク１０，２０，３０（以下ネットワークと称することがある）が接続されている。
【００１４】
本実施例のネットワーク１０，２０，３０は通信プロトコルとしてＣＡＮ（Ｃｏｎｔｒｏｌｌｅｒ Ａｒｅａ Ｎｅｔｗｏｒｋ）を用いるが、他のプロトコルを用いても良い。
【００１５】
ネットワーク１０には、通信Ｂｕｓ（ＣＡＮ Ｂｕｓ）１を介して複数のＥＣＵ（ＥＣＵ群）が接続されている。これらのＥＣＵ群はマルチメディア系ＥＣＵで構成され、例えば、カーナビゲーションＥＣＵや、オーディオ制御ＥＣＵ等が含まれ得る。
【００１６】
ネットワーク２０には、通信Ｂｕｓ（ＣＡＮ Ｂｕｓ）２を介して複数のＥＣＵ（ＥＣＵ群）が接続されている。これらのＥＣＵ群はパワートレイン系ＥＣＵで構成され、例えば、エンジン制御ＥＣＵや、ブレーキ制御ＥＣＵ、トランスミッション制御ＥＣＵ等が含まれ得る。
【００１７】
ネットワーク３０には、通信Ｂｕｓ（ＣＡＮ Ｂｕｓ）３を介して複数のＥＣＵ（ＥＣＵ群）が接続されている。これらのＥＣＵ群はボディ系ＥＣＵで構成され、パワーウィンド用ＥＣＵ、シートベルト用ＥＣＵ等が含まれ得る。
【００１８】
なお、各通信Ｂｕｓ（ＣＡＮ Ｂｕｓ）１，２，３は２線式バスであり２本の通信線（ツイストペアケーブル）からなるが、図１中では簡略化して１本の通信線で表記している。
【００１９】
ＥＣＵ１００の筐体１０９内には、電源回路１０４と、ＥＣＵ１００内の信号処理をつかさどる処理装置であるＣＰＵ１０６と、フラッシュメモリ等の不揮発性メモリ１０８と、電気信号の送受信を行うための通信装置である３つのトランシーバ（ＣＡＮトランシーバ）１１０，１１２，１１４と、３つのスイッチ素子５０，６０，７０が収納されている。
【００２０】
また，筐体１０９には、ネットワーク１０，２０，３０を構成する外部の車載ＥＣＵに接続した通信Ｂｕｓ１，２，３が接続される端子１１１，１１３，１１５が設けられている。端子１１１は、筐体１０９内でトランシーバ１１０に接続する通信Ｂｕｓ１と接続されており、端子１１３は、筐体１０９内でトランシーバ１１２に接続する通信Ｂｕｓ２と接続されており、端子１１５は、筐体１０９内でトランシーバ１１４に接続する通信Ｂｕｓ３と接続されている。
【００２１】
バッテリ（図示せず）と、エンジン（図示せず）により駆動されるオルタネーター（図示せず）から供給される電圧（ＶＢ）１０２がＥＣＵ１００内部の電源回路１０４に供給される。
【００２２】
電源回路１０４はＣＰＵ１０６等の信号系の素子に供給する正電源電圧（ＶＣＣ）を生成する。ＣＰＵ１０６はＥＣＵ１００の動作を制御する。メモリ１０８はＣＰＵ１０６と通信し、種々のデータを保存する。特に本実施例のメモリ１０８は、ネットワーク毎の優先順位（通信バスの優先順位）の情報を保存しており、この情報は故障時の判断に使用される。
【００２３】
トランシーバ１１０，１１２，１１４の数は通信Ｂｕｓ１，２，３（ネットワーク１０，２０，３０）の数と同数であり、３つのトランシーバ１１０，１１２，１１４は３つの通信Ｂｕｓ１，２，３と一対一で接続されている。ＣＰＵ１０６は３つのトランシーバ１１０，１１２，１１４のそれぞれと通信可能に接続されている。
【００２４】
トランシーバ１１０は、第１のネットワーク１０に属するＥＣＵ群と通信Ｂｕｓ１を介してＣＡＮ通信を行うための部品であり、ネットワーク１０からの受信データをＲｘ１出力端子１２０からＣＰＵ１０６へ送信し、Ｔｘ１出力端子１２２から受信したＣＰＵ１０６からの送信データをネットワーク１０へ送信するものである。また、トランシーバ１１０はトランシーバ１１０の消費電力を下げるスリープ状態に移行させるための制御ピンとしてスリープ１入力端子１２４を備える。トランシーバ１１０はスリープ状態にはいることでネットワーク１０から切り離されるように作られており、例えばトランシーバ１１０の故障時にスリープ状態にすることで、トランシーバ１１０をネットワーク１０から分離することができる。具体的には、スリープ１入力端子１２４の値がＨ信号（電圧値または電流値が所定の閾値よりも高い信号をＨ信号（Ｈｉｇｈ信号）と称する）の時にトランシーバ１１０はスリープ状態となり、スリープ１入力端子１２４の値がＬ信号（電圧値または電流値が所定の閾値よりも低い信号をＬ信号（Ｌｏｗ信号）と称する）の時に通常状態となる。
【００２５】
トランシーバ１１２は、第２のネットワーク２０に属するＥＣＵ群と通信Ｂｕｓ２を介してＣＡＮ通信を行うための部品であり、ネットワーク２０からの受信データをＲｘ２出力端子１３０からＣＰＵ１０６へ送信し、Ｔｘ２出力端子１３２から受信したＣＰＵからの送信データをネットワーク２０へ送信するものである。また、トランシーバ１１２はトランシーバ１１２の消費電力を下げるスリープ状態に移行させるための制御ピンとしてスリープ２入力端子１３４を備える。トランシーバ１１２はスリープ状態にはいることでネットワーク２０から切り離されるように作られており、例えばトランシーバ１１２故障時にスリープ状態にすることで、トランシーバ１１２をネットワーク２０から分離することができる。具体的には、スリープ２入力端子１３４の値がＨ信号の時にトランシーバ１１２はスリープ状態となり、スリープ２入力端子１３４の値がＬ信号の時に通常状態となる。
【００２６】
トランシーバ１１４は、第３のネットワーク３０に属するＥＣＵ群と通信Ｂｕｓ３を介してＣＡＮ通信を行うための部品であり、ネットワーク３０からの受信データをＲｘ３出力端子１４０からＣＰＵ１０６へ送信し、Ｔｘ３出力端子１４２から受信したＣＰＵからの送信データをネットワーク３０へ送信するものである。また、トランシーバ１１４はトランシーバ１１４の消費電力を下げるスリープ状態に移行させるための制御ピンとしてスリープ３入力端子１４４を備える。トランシーバ１１４はスリープ状態にはいることでネットワーク３０から切り離されるように作られており、例えばトランシーバ１１４故障時にスリープ状態にすることで、トランシーバ１１４をネットワーク３０から分離することができる。具体的には、スリープ３入力端子１４４の値がＨ信号の時にトランシーバ１１４はスリープ状態となり、スリープ３入力端子１４４の値がＬ信号の時に通常状態となる。
【００２７】
ＣＰＵ１０６は、トランシーバ１１０を用いてネットワーク１０とＣＡＮ通信を行い、トランシーバ１１２を用いてネットワーク２０とＣＡＮ通信を行い、トランシーバ１１４を用いてネットワーク３０とＣＡＮ通信を行う。また、ＣＰＵ１０６は、トランシーバ１１０をスリープ状態にさせるためのスリープ１入力端子１２４への制御出力（スリープ信号）と、トランシーバ１１２をスリープ状態にさせるためのスリープ２入力端子１３４への制御出力（スリープ信号）と、トランシーバ１１４をスリープ状態にさせるためのスリープ３入力端子１４４への制御出力（スリープ信号）と、第１のスイッチ５０の開閉状態を切り替えるＣＰＵ出力１（１５０）と、第２のスイッチ６０の開閉状態を切り替えるＣＰＵ出力２（１６０）と、第３のスイッチ７０の開閉状態を切り替えるＣＰＵ出力３（１７０）とを出力する。
【００２８】
スイッチ５０は、ネットワーク１０（通信Ｂｕｓ１）とネットワーク２０（通信Ｂｕｓ２）の接続を制御するための筐体１０９内に設けられたスイッチ素子であり、筐体１０９内の通信Ｂｕｓ１（ＣＡＮ Ｂｕｓライン）と通信Ｂｕｓ２（ＣＡＮ Ｂｕｓライン）を接続する経路に設けられている。スイッチ５０は、ＣＰＵ出力１５０の出力値により開閉状態が切り替えられる。具体的には、ＣＰＵ出力１５０の値がＨ信号の時にスイッチ５０はオフ状態（開いた状態）に設定され、ＣＰＵ出力１５０の値がＬ信号の時にスイッチ５０はオン状態（閉じた状態）に設定される。
【００２９】
スイッチ６０は、ネットワーク１０（通信Ｂｕｓ１）とネットワーク３０（通信Ｂｕｓ３）の接続を制御するための筐体１０９内に設けられたスイッチ素子であり、筐体１０９内の通信Ｂｕｓ１（ＣＡＮ Ｂｕｓライン）と通信Ｂｕｓ３（ＣＡＮ Ｂｕｓライン）を接続する経路に設けられている。スイッチ６０は、ＣＰＵ出力１６０の出力値により開閉状態が切り替えられる。具体的には、ＣＰＵ出力１６０の値がＨ信号の時にスイッチ６０はオフ状態（開いた状態）に設定され、ＣＰＵ出力１６０の値がＬ信号の時にスイッチ６０はオン状態（閉じた状態）に設定される。
【００３０】
スイッチ７０は、ネットワーク２０（通信Ｂｕｓ２）とネットワーク３０（通信Ｂｕｓ３）の接続を制御するための筐体内１０９内に設けられたスイッチ素子であり、筐体１０９内の通信Ｂｕｓ２（ＣＡＮ Ｂｕｓライン）と通信Ｂｕｓ３（ＣＡＮ Ｂｕｓライン）を接続する経路に設けられている。スイッチ７０は、ＣＰＵ出力１６０の出力値により開閉状態が切り替えられる。具体的には、ＣＰＵ出力１７０の値がＨ信号の時にスイッチ７０はオフ状態（開いた状態）に設定され、ＣＰＵ出力１７０の値がＬ信号の時にスイッチ７０はオン状態（閉じた状態）に設定される。
【００３１】
図２にメモリ１０８に格納された通信Ｂｕｓ１，２，３（ネットワーク１０，２０，３０）の優先順位テーブル２００の構成例を示す。図２の例では、優先順位テーブルは、各通信Ｂｕｓの識別情報、優先順位情報、及びネットワーク名で成り立っている。本実施例では数字が小さいほど優先順位が高いことを示す。例えば、通信Ｂｕｓ２はエンジンＥＣＵなどが接続されているＢｕｓであり一番優先順位が高い。本実施例では、通信Ｂｕｓ２に接続されたトランシーバ１１２が故障した場合、優先順位の一番低い通信Ｂｕｓ１を介して通信Ｂｕｓ２のデータを送受信することにより、車両としての通常動作を継続することを可能としている。
【００３２】
本優先順位テーブル２００は、車両ごとに異なるため、例えば、出荷試験時に書き換えることで様々な車両に対応可能となる。
【００３３】
図３に図１に示したＥＣＵ１００内の各部の動作を説明するタイムチャートを示す。
【００３４】
（１）通常状態
まず、通常状態について説明する。電源１０４、ＣＰＵ１０６は起動状態である。ＣＰＵ１０６からは、ＣＰＵ出力１（１５０）、ＣＰＵ出力２（１６０）及びＣＰＵ出力３（１７０）としてＨ信号が出力されており、スイッチ５０、スイッチ６０及びスイッチ７０は共にオフ状態に設定されている。また、スリープ１入力端子１２４、スリープ２入力端子１３４及びスリープ３入力端子１４４にＬ信号が出力されており、トランシーバ１１０、トランシーバ１１２、トランシーバ１１４は共に通常起動状態にある。
【００３５】
Ｒｘ１出力端子１２０、Ｒｘ２出力端子１３０、Ｒｘ３出力端子１４０は、ネットワーク１０、２０、３０からの受信データに応じてＨ信号又はＬ信号を出力する。Ｔｘ１出力端子１２２、Ｔｘ２出力端子１３２、Ｔｘ３出力端子１４２には、ＣＰＵ１０６の送信データに応じてＨ信号又はＬ信号が入力される。
【００３６】
（２）故障状態
次に、ネットワーク２０に接続されているトランシーバ１１２に故障が発生した時の故障状態への遷移について説明する。トランシーバ１１２に故障が発生してデータの送受信が不可能になった場合、トランシーバ１１２のＲｘ２出力端子１３０から出力される信号はデフォルト値のＨ信号に固定される（図３中の符号３００のタイミング参照）。このようにトランシーバ１１０，１１２，１１４のいずれかのＲｘ出力端子１２０，１３０，１４０からの入力信号がＨ信号とＬ信号のいずれか一方に固着した場合（本実施例ではＨ信号に固着）、ＣＰＵ１０６はその出力端子に係るトランシーバ（図３の例ではＲｘ２出力端子１３０に係るトランシーバ１１２）からのデータの受信が不可能になったことを検出する（図３中の符号３０２のタイミング参照）。ただし、外乱ノイズ等による一時的なデータ未受信の可能性があるため、このタイミングではトランシーバ（１１２）の故障はまだ確定しない。
【００３７】
（３）故障確定状態
次に、故障確定状態への遷移について説明する。Ｒｘ出力端子１２０，１３０，１４０のいずれかからデータ（ＣＡＮ信号）を受信できない状況が所定時間（例えば２秒）以上継続すると、ＣＰＵ１０６はそのＲｘ出力端子に係るトランシーバに故障が発生したと確定する（３１０）。本実施例ではＲｘ２端子１３０のデータ未受信が２秒以上継続したことをもってＣＰＵ１０６はトランシーバ１１２の故障を確定する。故障確定後、ＣＰＵ１０６は故障を確定したトランシーバが接続する通信Ｂｕｓの識別番号を確認し、メモリ１０８に格納された通信Ｂｕｓ毎の優先順位を参照し、故障が確定したトランシーバが接続する通信Ｂｕｓの優先順位に応じて故障後の対応を決定する。
【００３８】
（３−１）優先順位が最も低い通信Ｂｕｓの故障確定時の対応
優先順位が最も低い通信Ｂｕｓに接続するトランシーバの故障が確定された場合（図２の例では優先順位３の通信Ｂｕｓ１に係るトランシーバ１１０の故障が確定された場合）、ＣＰＵ１０６は該当するトランシーバに故障が発生した旨を車両の通知装置を介して乗員に通知する。通知装置としては例えば車両前席正面のインストルメントパネル（フェイシア）上に配置されたワーニングランプ（警告灯）があり、故障確定時にはインストルメントパネルを制御する制御装置（例えばネットワーク１０（通信Ｂｕｓ１）に接続されたＥＣＵ）に対してＥＣＵ１００が信号（通知信号）を出力して当該ワーニングランプを消灯状態から点灯状態に切り替える。これによりトランシーバに故障が発生した旨が乗員に通知される。なお、ワーニングランプによる通知の他に、車載モニタ上への表示や警告音を出力等、種々の通知装置による通知が可能である。通知の内容は具体的に故障箇所を特定する通知（直接的通知）としても良いし、ディーラーへの連絡や訪問を促す類の通知（間接的通知）としても良い。
【００３９】
なお、ここでは優先順位が最も低い場合のみ乗員に通知することとしたが、後述する図４のフローチャートの処理のように、優先順位が高い場合も同様に通知装置を介した通知を行ってもよい。ただし、この場合は故障の重大性に鑑み可及的速やかにディーラーに出向くことが推奨されるため、警告灯による通知に加えて又は代えて文字や音声等で至急ディーラーを訪れてメンテナンスを受ける旨通知することが好ましい。
【００４０】
（３−２）優先順位が高い通信Ｂｕｓの故障確定時の対応
故障が確定したトランシーバが接続する通信Ｂｕｓの優先順位が他の正常なトランシーバが接続する通信Ｂｕｓの優先順位より高い場合（すなわち図３の例のように最も優先順位が高いＢｕｓ２に接続するトランシーバ１１２が故障した場合）、その故障したトランシーバが接続する通信Ｂｕｓが構成するネットワークから当該故障したトランシーバを切り離すために当該故障したトランシーバをスリープ状態に遷移させる必要がある。本実施例ではトランシーバ１１２の故障が確定した時点でＣＰＵ１０６はスリープ２入力端子１３４への信号をＬ信号からＨ信号に設定する（図３のタイミング３１２参照）。スリープ２入力端子１３４への信号をＨ信号とすることにより、トランシーバ１１２はＳｌｅｅｐ状態となり、通信Ｂｕｓ２が構成するネットワーク２０から切り離される（図３のタイミング３１４参照）。なお、本稿ではスリープ入力端子１２４，１３４，１４４に出力されるＨ信号をスリープ指令と称することがある。
【００４１】
次にＣＰＵ１０６は、故障したトランシーバが本来送受信すべき情報を、その故障したトランシーバよりも相対的に優先順位の低い正常なトランシーバを介して送受信するために、両トランシーバの接続する２つの通信Ｂｕｓの接続と切断を切り替えるスイッチをオン状態に設定し、相対的に優先順位の低い正常なトランシーバを当該２つの通信Ｂｕｓが構成する２つのネットワークに接続する。これにより故障したトランシーバが属するネットワークに接続したＥＣＵとゲートウェイＥＣＵ１００との通信が正常なトランシーバを介して可能になる。本実施例では、正常なトランシーバが接続する通信Ｂｕｓのうち最も優先順位の低い通信Ｂｕｓと、故障したトランシーバが接続する通信Ｂｕｓとを接続するスイッチをオン状態に設定し、これにより正常なトランシーバを２つのネットワークに接続することとした。
【００４２】
具体的には、故障したトランシーバ１１２が属するネットワーク２０と最も優先順位の低いネットワーク１０とを接続するスイッチ５０をオン状態に設定するために、スイッチ５０に対してＣＰＵ出力１（１５０）としてＬ信号を出力する（図３のタイミング３２０参照）。ＣＰＵ出力１（１５０）としてＬ信号が入力されるとスイッチ５０がオン状態に設定され、ネットワーク１０とネットワーク２０がトランシーバ１１０に接続される（図３のタイミング３２２参照）。この後、トランシーバ１１２の故障前にＣＰＵ１０６からトランシーバ１１２のＴｘ２出力端子１３２に送信していたデータ（ネットワーク２０用のデータ）をトランシーバ１１０のＴｘ１出力端子１２２に送信する。これにより、そのデータをトランシーバ１１２の故障前と同様にネットワーク２０に送信できる（図３のタイミング３３０参照）。一方、ネットワーク２０から送信されるデータはスイッチ５０及びトランシーバ１１０を経由してＣＰＵ１０６に送信される。すなわちトランシーバ１１２の故障前と同様にＣＰＵ１０６はネットワーク２０からのデータを受信できる。
【００４３】
図４に本実施例のＣＰＵ１０６の制御フローチャートを示す。ＥＣＵ１００を起動すると電圧（ＶＢ）１０２がＥＣＵ１００内部の電源回路１０４に供給され、電源回路１０４は信号処理をつかさどるＣＰＵ１０６等の信号系の素子に供給する正電源電圧（ＶＣＣ）を生成し、ＣＰＵ１０６が動作を開始する（ステップ４００）。次に、ＣＰＵ１０６をリセットする（ステップ４０２）。その後、ＣＰＵ１０６は通常動作及び診断を開始する（ステップ４０４）。
【００４４】
ステップ４０６では，ＣＰＵ１０６はＥＣＵ１００内の３つのトランシーバ１１０，１１２，１１４のＲｘ出力端子１２０，１３０，１４０から入力されるＣＡＮ信号が所定時間以上Ｈ信号に固着しているか否かで各トランシーバ１１０，１１２，１１４の応答の有無を判定するタイムアウト処理を実行する。３つのうちいずれかのトランシーバからの信号が所定時間以上Ｈ信号に固着した場合には通常の処理を打ち切ってそのトランシーバに故障が発生したと確定し、ステップ４０８以降の故障発生時の処理に移行する。一方、各トランシーバ１１０，１１２，１１４の信号がＨ信号に固着しない場合にはステップ４０６の判定処理を引き続き実行する。
【００４５】
ステップ４０８では、ＣＰＵ１０６は故障が発生したトランシーバが接続する通信Ｂｕｓ（タイムアウトしたＢｕｓ）の識別番号を確認し、メモリ１０８に格納されている各通信Ｂｕｓの優先順位を参照し、故障が発生したトランシーバが接続する通信Ｂｕｓの優先順位が他の２つの通信Ｂｕｓ（すなわち正常なトランシーバが接続する通信Ｂｕｓ）のいずれかの優先順位より上位か否かを判定する。
【００４６】
ステップ４０８で故障が発生したトランシーバが接続する通信Ｂｕｓの優先順位が他の２つの通信Ｂｕｓのいずれの優先順位よりも低いと判定された場合、すなわち故障したトランシーバの通信Ｂｕｓの優先順位が最下位の場合には、ワーニングランプの点灯などの手段によりトランシーバの故障を乗員に通知し（ステップ４２０）、処理を終了する（ステップ４３０）。
【００４７】
一方、ステップ４０８で故障が発生したトランシーバが接続する通信Ｂｕｓの優先順位が他の２つの通信Ｂｕｓのいずれかの優先順位よりも高いと判定された場合、すなわち故障したトランシーバの通信Ｂｕｓの優先順位が最上位または２番目の場合には、ステップ４１０に進む。
【００４８】
ステップ４１０では、ＣＰＵ１０６は故障したトランシーバのスリープ入力端子（すなわち３つのスリープ入力端子１２４，１３４，１４４のいずれか）に出力する信号をＬ信号からＨ信号（スリープ指令）に切り替えて出力し、故障したトランシーバをネットワークから切り離す。
【００４９】
ステップ４１２では、ＣＰＵ１０６は、故障したトランシーバの通信Ｂｕｓより優先順位が低い通信Ｂｕｓのなかで優先順位が最下位のものが構成するネットワークと、故障したトランシーバが属するネットワークとを接続するスイッチ（すなわち３つのスイッチ５０，６０，７０のいずれか）に出力する信号をＨ信号からＬ信号に切り替えて出力し、当該スイッチをオン状態に設定する。
【００５０】
ステップ４１４では、ＣＰＵ１０６は、故障したトランシーバが故障前に属していたネットワーク（故障ネットワーク）の信号を、ステップ４１２でそのネットワーク（故障ネットワーク）に接続された他のネットワーク（正常ネットワーク）に属するトランシーバを介して送受信する。ＣＰＵ１０６は、その後、ワーニングランプの点灯などの手段によりトランシーバの故障を乗員に通知し（ステップ４２０）、処理を終了する（ステップ４３０）。
【００５１】
上記の実施例のゲートウェイＥＣＵ１００においては、ＥＣＵ１００内で優先順位の高いネットワークに属するトランシーバからの通信が途絶した場合、ＥＣＵ１００内でそのトランシーバが属するネットワークと優先順位の低いネットワークとを接続するスイッチをオン状態に設定し、これにより優先順位の低いネットワークに属するトランシーバを優先順位の高いネットワークにも接続することとした。そして優先順位の低いネットワークに属するトランシーバを介して優先順位の高いネットワークとデータの送受信を行うことで優先順位の高いネットワークとの通信を維持できるようにした。したがって、常に２つのネットワークに接続する冗長系を構成することなく、トランシーバの故障後も優先順位の高いネットワークに接続された例えばパワートレイン系のＥＣＵの動作を継続でき、ディーラーまで自走することが可能となる。これにより安価で信頼性の高い車載ＥＣＵ（車載ゲートウェイ装置）を提供できる。
【００５２】
図５に各通信Ｂｕｓが構成するネットワーク上に流れるデータの様子を示す。  
図５（ａ）は正常時に各Ｂｕｓ１，２，３上に流れるデータの様子を示す。Ｂｕｓ１には、例えば、ネットワーク１０に接続されているＥＣＵが固有のデータを送受信している。本例ではデータ１Ａ、１Ｂが周期的に送受信されているものとする。同様に、Ｂｕｓ２には、ネットワーク２０に接続されたＥＣＵがデータ２Ａ、２Ｂを周期的に送受信し、Ｂｕｓ３には、ネットワーク３０に接続されてＥＣＵがデータ３Ａ、３Ｂを周期的に送受信しているものとする。
【００５３】
図５（ｂ）はＢｕｓ２（ネットワーク２０）に接続したトランシーバ１１２に故障が発生した場合の各Ｂｕｓ１，２，３上に流れるデータの様子を示す。トランシーバ１１２（Ｂｕｓ２）が故障した場合、優先順位の一番低いＢｕｓ１（ネットワーク１０）とＢｕｓ２（ネットワーク２０）がスイッチ５０を介して接続され、Ｂｕｓ１に接続されたトランシーバ１１０を介して、２つのネットワーク１０，２０のデータ送受信を実施する。この時、ネットワーク１０とネットワーク２０は接続されているため、それぞれにデータ１Ａ、１Ｂ、２Ａ、２Ｂが流れる。この時、ネットワーク２０に接続されたパワートレイン系のＥＣＵの動作遅延が生じないように、優先順位の低いネットワーク１０に係るデータ１Ａ、１Ｂよりも、優先順位の高いネットワーク２０に係るデータ２Ａ、２Ｂを先にＣＰＵ１０６から送信することが好ましい。
【００５４】
−その他−
上記では、ゲートウェイＥＣＵに搭載されるトランシーバが３つの場合（すなわち接続されるＢｕｓが３つの場合）について説明したが、トランシーバの個数が２や４以上であっても本発明は適用可能である。
【００５５】
上記では各Ｂｕｓに異なる優先順位を付けたが、優先順位は最小で２つ存在すれば良く、同じ優先順位のＢｕｓが複数存在しても良い。
【００５６】
上記では各Ｂｕｓに接続されるＥＣＵの重要性に鑑みてＢｕｓに優先順位を付けたが、各Ｂｕｓが構成するネットワークに優先順位を付けても良いし、各ネットワーク（各Ｂｕｓ）に接続されるＥＣＵに優先順位を付けても良い。
【００５７】
筐体１０９内に設けるスイッチ素子の個数に関して、上記の図３の実施例のようにＥＣＵ筐体１０９内に配設された全ての通信Ｂｕｓにおいて優先順位の異なる２つの通信Ｂｕｓの全てをスイッチ素子で接続しても良いが、筐体１０９内の全ての通信Ｂｕｓの中で優先順位の最も低い通信Ｂｕｓと、全ての通信Ｂｕｓから当該優先順位の最も低い通信Ｂｕｓを除いた少なくとも１つの通信Ｂｕｓのそれぞれとをスイッチ素子で接続する構成を採用しても良い（すなわち、図１の例で説明すれば、優先順位が１番と２番のＢｕｓ２，３を接続するスイッチ７０は省略しても良い）。後者の場合は前者の場合よりも筐体内のスイッチ素子の数が減るのでＥＣＵの製造コストを抑制できる。
【００５８】
また、上記実施例では、故障したトランシーバを特定してから、ａ）当該特定トランシーバのネットワークからの切り離し（ステップ４１０（図４参照））、ｂ）当該特定トランシーバが属するネットワークと他のネットワークの接続（ステップ４１２）、ｃ）当該他のネットワークに属するトランシーバを介したデータ送受信の実行（ステップ４１４）、という一連の処理を実行した。しかし、トランシーバの故障の有無に関わらずネットワークから切り離すトランシーバを任意に決定し、ａ）−ｃ）の処理を実行して良い。例えば、ディーラーやメーカーの通信端末を複数の通信Ｂｕｓ１，２，３のいずれかに接続し、その通信端末からＥＣＵ１００内のトランシーバ１１０，１１２，１１４のいずれかに対して当該トランシーバをスリープ状態に移行させる信号（第１トリガー信号）を出力する。この種の信号（第１トリガー信号）としては、例えば、ディーラー等の通信端末からＣＰＵ１０６に対して出力される信号であって、所望のトランシーバのスリープ端子に対してＣＰＵ１０６にスリープ指令（Ｈ信号）を出力させる信号（スリープ指令出力指令）がある。ＣＰＵ１０６はこの信号を受信すると、対象のトランシーバのスリープ端子（すなわち３つのスリープ端子１２４，１３４，１４４のいずれか）に対してスリープ指令（Ｈ信号）を出力して対象のトランシーバをスリープ状態に移行させる。このようにすると、対象のトランシーバからＣＰＵ１０６へのＣＡＮ信号の送信が中断するので図４のフローチャートのステップ４０６からステップ４０８に移行することができる。これによりａ）−ｃ）の処理を含むステップ４０８以降の処理を実行でき、故障発生時と同様の処理を実行することができる。このように人為的に故障発生時と同様の処理を実行可能にすると、故障時に実際に図４のフローチャートに従ってＥＣＵ１００が動作するか否かを確認することができる。なお、動作の確認ができた場合には、同通信端末から対象のトランシーバのスリープ状態を解除する信号（第２トリガー信号）を出力する。この種の信号（第２トリガー信号）としては、例えば、ディーラー等の通信端末からＣＰＵ１０６に対して出力される信号であって、スリープ状態の対象のトランシーバのスリープ端子に対してＣＰＵ１０６にスリープ解除指令（Ｌ信号）を出力させる信号（スリープ解除指令出力指令）がある。ＣＰＵ１０６はこの信号を受信すると、対象のトランシーバのスリープ端子（すなわち３つのスリープ端子１２４，１３４，１４４のいずれか）に対してスリープ解除指令（Ｌ信号）を出力して対象のトランシーバを通常起動状態に移行させる。この場合、スリープ状態のトランシーバが接続する通信Ｂｕｓ以外の通信Ｂｕｓに通信端末を接続してスリープ解除指令出力指令を送信することが好ましい。スリープ解除指令出力指令をＣＰＵ１０６に出力すると、対象のトランシーバからＣＰＵ１０６へのＣＡＮ信号の送信が再開され通常状態の動作モードに復帰できる。ところで、ここではディーラーなどの端末をＥＣＵ１００に接続する場合を例示したが、所望のトランシーバのスリープ端子にスリープ指令及びスリープ解除指令を出力するスイッチや、所望のトランシーバのスリープ端子にスリープ指令及びスリープ解除指令をＣＰＵ１０６に出力させるスイッチ等をＥＣＵ１００に設ける等しても上記と同様の構成がとれる。
【００５９】
以上、本発明の実施例について詳述したが、本発明は、前記の実施例に限定されるものではなく、特許請求の範囲に記載された本発明の精神を逸脱しない範囲で、種々の設計変更を行うことができるものである。例えば、前記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【００６０】
また、上記のＥＣＵ１００に係る各構成や当該各構成の機能及び実行処理等は、それらの一部又は全部をハードウェア（例えば各機能を実行するロジックを集積回路で設計する等）で実現しても良い。また、上記のＥＣＵ１００に係る構成は、処理装置（例えばＣＰＵ）によって読み出し・実行されることで当該ＥＣＵの構成に係る各機能が実現されるプログラム（ソフトウェア）としてもよい。当該プログラムに係る情報は、例えば、半導体メモリ（フラッシュメモリ、ＳＳＤ等）、磁気記憶装置（ハードディスクドライブ等）及び記録媒体（磁気ディスク、光ディスク等）等に記憶することができる。
【００６１】
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
【符号の説明】
【００６２】
１：通信Ｂｕｓ（第２通信バス）、２：通信Ｂｕｓ（第１通信バス）、３：通信Ｂｕｓ（第２通信バス）、１０：ネットワーク、２０：ネットワーク、３０：ネットワーク、５０：スイッチ、６０：スイッチ、７０：スイッチ、１００：車載電子制御装置（ゲートウェイ装置）、１０２：電圧、１０４：電源回路、１０６：ＣＰＵ（処理装置）、１０８：メモリ、１１０：トランシーバ（第２トランシーバ）、１１２：トランシーバ（第１トランシーバ）、１１４：トランシーバ（第３トランシーバ）、３００：優先順位テーブル
【図１】
0006967664.tif 000002
【図２】
0006967664.tif 000003
【図３】
0006967664.tif 000004
【図４】
0006967664.tif 000005
【図５】
0006967664.tif 000006