(57)【要約】【課題】ネットワークを介して相互に接続された複数の演算処理装置に対して最適かつ信頼性の高いフェールセーフ装置を提供する。【解決手段】ゲートウェイ１の図示しないＣＰＵは、故障したＥＣＵ７０を通信用バス２７から切り離し、その情報をゲートウェイ１経由で、他のスターカプラに送信し、ＥＣＵ７０と通信を行わないように制御する。ＣＰＵ３０は、診断用バス２８をＥＣＵ７０との専用バスとし、ＥＣＵ７０内の入出力制御回路７４をマイクロコントローラ７３から切り離し、入出力制御回路６４から制御できるように切り換える。ＣＰＵ３０は、ＲＯＭ４２からＥＣＵ７０の代替制御プログラムを読み出して、ネットワークを経由して、故障したＥＣＵ７０の代替制御を行う。【選択図】        図２
2004318498.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して相互に接続された複数の演算処理装置のフェールセーフ装置であって、
前記複数の演算処理装置をそれぞれ診断するための診断プログラムを記憶した診断プログラム記憶手段と、
前記複数の演算処理装置をそれぞれ代替制御するための代替制御プログラムをそれぞれ記憶した代替制御プログラム記憶手段と、
前記診断プログラム記憶手段に記憶された診断プログラムに基づいて、各々の演算処理装置に故障が生じていないかを診断する演算処理手段と、を備え、
前記演算処理手段は、前記診断により故障が生じた演算処理装置を検出したときに、前記故障が生じた演算処理装置を代替する代替制御プログラムを前記代替制御プログラム記憶手段から読み出し、読み出した代替制御プログラムに基づいて、前記ネットワーク経由で前記故障した演算処理装置の代替制御を行うこと
を特徴とするフェールセーフ装置。
【請求項２】
スター型に接続された前記演算処理手段が各々の演算処理装置に故障が生じていないかを診断するときに使用する診断用バスを更に備え、
前記演算処理手段は、前記故障した演算処理装置の代替制御時では、前記診断用バスを介して、前記故障した演算処理装置の代替制御を行うこと
を特徴とする請求項１に記載のフェールセーフ装置。
【請求項３】
前記演算処理手段は、前記故障した演算処理装置の代替制御時では、前記故障した演算処理装置との通信の優先度を、他の演算処理装置との通信の優先度よりも高くすること
を特徴とする請求項１に記載のフェールセーフ装置。
【請求項４】
前記演算処理手段が各々演算処理装置に故障が生じていないかを診断するときに使用する診断用バスと診断用ネットワークとを更に備え、
前記演算処理手段は、前記故障した演算処理装置の代替制御時では、前記診断用バスと前記診断用バスを介して、前記故障した演算処理装置の代替制御を行うこと
を特徴とする請求項１に記載のフェールセーフ装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、フェールセーフ装置に係り、例えば、車両を電子制御するためにネットワーク化された電子コントロールユニットシステムに用いて好適なフェールセーフ装置に関する。
【０００２】
【従来の技術】
従来、自動車等の民生品において、最低限の安全性を確保するためのフェールセーフ機能付き情報処理装置が提案されている（例えば、特許文献１を参照。）。特許文献１に記載された技術では、複数の情報処理回路に対して、１つまたは複数のＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ  ）を用いている。通常時、ＦＰＧＡで構成される故障検出回路が、情報処理装置を監視して故障検出を行う。故障を検出すると、故障検出回路の構成を破棄して、故障した情報処理回路用のバックアップ回路を構成する。これにより、特許文献１に記載された技術は、フェールセーフ機能を提供していた。
【０００３】
【特許文献１】
特開２０００−８１９９１号公報
【０００４】
【発明が解決しようとする課題】
ところで、特許文献１に記載された技術は、１つの筐体に、複数のＥＣＵが近接して配置されている場合に有効である。
【０００５】
しかし、近年のＥＣＵシステムは、配線の軽量化を図るべく各ＥＣＵをネットワークで接続して構成されているので、特許文献１に記載された技術をそのまま適用することができない。つまり、ネットワーク化されたＥＣＵシステムに対して最適なフェールセーフ装置がなく、信頼性の高いフェールセーフ装置の要望が大きかった。
【０００６】
本発明は、上述した課題を解決するために提案されたものであり、ネットワークを介して相互に接続された複数の演算処理装置に対して最適かつ信頼性の高いフェールセーフ装置を提供することを目的とする。
【０００７】
【課題を解決するための手段】
請求項１に記載の発明であるフェールセーフ装置は、ネットワークを介して相互に接続された複数の演算処理装置のフェールセーフ装置であって、前記複数の演算処理装置をそれぞれ診断するための診断プログラムを記憶した診断プログラム記憶手段と、前記複数の演算処理装置をそれぞれ代替制御するための代替制御プログラムをそれぞれ記憶した代替制御プログラム記憶手段と、前記診断プログラム記憶手段に記憶された診断プログラムに基づいて、各々の演算処理装置に故障が生じていないかを診断する演算処理手段と、を備え、前記演算処理手段は、前記診断により故障が生じた演算処理装置を検出したときに、前記故障が生じた演算処理装置を代替する代替制御プログラムを前記代替制御プログラム記憶手段から読み出し、読み出した代替制御プログラムに基づいて、前記ネットワーク経由で前記故障した演算処理装置の代替制御を行うことを特徴とする。
【０００８】
演算処理手段は、診断プログラムに従って、複数の演算処理装置について故障の有無を診断する。そして、演算処理手段は、故障が生じた演算処理装置を検出したときは、その故障が生じた演算処理装置を代替する代替制御プログラムに基づいて、前記故障した演算処理装置の代替制御を行う。これにより、複数の演算処理装置に対して１つのバックアップで対応できるので、多重系を構成するシステムに比べて低コストを実現できる。
【０００９】
したがって、請求項１に記載の発明によれば、故障が生じた演算処理装置を検出したときに、故障が生じた演算処理装置を代替する代替制御プログラムを代替制御プログラム記憶手段から読み出し、読み出した代替制御プログラムに基づいて、故障した演算処理装置の代替制御を行うことにより、コストをかけることなく、最適かつ信頼性の高いフェールセーフ装置を提供することができる。
【００１０】
請求項２に記載の発明であるフェールセーフ装置は、請求項１に記載の発明であって、スター型に接続された前記演算処理手段が各々の演算処理装置に故障が生じていないかを診断するときに使用する診断用バスを更に備え、前記演算処理手段は、前記故障した演算処理装置の代替制御時では、前記診断用バスを介して、前記故障した演算処理装置の代替制御を行うことを特徴とする。
【００１１】
したがって、請求項２に記載の発明によれば、演算処理手段は、故障した演算処理装置の代替制御を行うときに診断用バスを使用することにより、演算処理手段と故障した演算処理装置との間で１対１通信により十分な通信容量を確保できるので、ネットワーク経由のリアルタイム制御を実現することができる。
【００１２】
請求項３に記載の発明であるフェールセーフ装置は、請求項１に記載の発明であって、前記演算処理手段は、前記故障した演算処理装置の代替制御時では、前記故障した演算処理装置との通信の優先度を、他の演算処理装置との通信の優先度よりも高くすることを特徴とする。
【００１３】
したがって、請求項３に記載の発明によれば、演算処理手段と故障した演算処理装置との通信の優先度を高くすることで、ネットワーク経由のリアルタイム制御を実現することができる。
【００１４】
請求項４に記載のフェールセーフ装置は、請求項１に記載の発明であって、前記演算処理手段が各々演算処理装置に故障が生じていないかを診断するときに使用する診断用バスと診断用ネットワークとを更に備え、前記演算処理手段は、前記故障した演算処理装置の代替制御時では、前記診断用バスと前記診断用バスを介して、前記故障した演算処理装置の代替制御を行うことを特徴とする。
【００１５】
したがって、請求項４に記載の発明によれば、故障した演算処理装置の代替制御時では、前記診断用バスと前記診断用バスとで専用通信を行うことで、ネットワーク経由のリアルタイム制御を実現することができる。
【００１６】
【発明の実施の形態】
以下、本発明の好ましい実施の形態について図面を参照しながら詳細に説明する。
【００１７】
［第１の実施形態］
図１は、本発明の第１の実施形態に係る電子制御ユニットシステム（以下「ＥＣＵシステム」という。）の概略を示す図である。図２は、ＥＣＵシステムの回路構成を示すブロック図である。第１の実施形態では、アクティブスターカプラを例に挙げて説明する。
【００１８】
ＥＣＵシステムは、複数のＥＣＵと接続可能なスター型結合器（以下「スターカプラ」という。）１０と、それぞれ所定の制御を行うＥＣＵ６０，７０，８０，９０，１００と、を備えている。スターカプラ１０は、上位のネットワークと接続するため、ゲートウェイ１に接続されている。
【００１９】
スターカプラ１０は、最大で１０個のＥＣＵと接続可能であるが、本実施形態では５個のＥＣＵ６０，７０，８０，９０，１００と接続されている。ここでは、ゲートウェイ１とスターカプラ１０は光ファイバによって結合されている。また、スターカプラ１０と各ＥＣＵとは、光ファイバによって一対多で結合されている。なお、これらは、光ファイバの代わりに、電気ワイヤによって結合されてもよい。
【００２０】
スターカプラ１０は、ＥＣＵ６０，７０，８０，９０，１００とそれぞれ光ファイバを介して光通信するための光トランシーバ（ＯＴ）１１，１２，１３，１４，１５と、ゲートウェイ１と光通信するための光トランシーバ１６と、各光トランシーバをそれぞれ制御する光トランシーバ制御回路（ＯＴＣ）２１，２２，２３，２４，２５，２６とを備えている。
【００２１】
また、スターカプラ１０は、プログラムに従った演算処理を実行するＣＰＵ３０と、ネットワークに接続された各ＥＣＵを診断するための診断用プログラムが記憶されたＲＯＭ４０と、故障時の各ＥＣＵのバックアップ動作用（代替制御用）プログラムがそれぞれ記憶されたＲＯＭ４１，４２，４３，４４，４５と、を備えている。
【００２２】
スターカプラ１０は、通信用バス（Ｃ−ｂｕｓ：  Ｃｏｍｍｕｎｉｃａｔｉｏｎ  ｂｕｓ）２７、診断用バス（Ｄ−ｂｕｓ：  Ｄｉａｇｎｏｓｉｓ  ｂｕｓ）２８を備えている。通信用バス２７は、ゲートウェイ１経由で他のネットワークに接続され、各ノード（ＥＣＵ）間のデータ通信用のバスである。診断用バス２８は、ＣＰＵ１１に接続され、各ＥＣＵが正常に動作しているかを診断するポーリング動作と、故障検出時の代替制御のときに使用されるバスである。
【００２３】
このようなスターカプラ１０を使用することにより、後述するように、故障したＥＣＵをネットワークから容易に切り離すことが可能になる。
【００２４】
ＥＣＵ６０は、光トランシーバ６１と、光トランシーバ制御回路６２と、制御プログラムを実行するマイクロコントローラ６３と、センサ６６からのセンサ信号を入力する一方で、アクチュエータ６７を制御するための信号を出力する入出力制御回路（ＩＯ−ＣＴＲＬ）６４と、を備えている。なお、ＥＣＵ７０，８０，９０，１００もＥＣＵ６０と同様に構成されている。
【００２５】
（故障診断）
通常動作時、各ＥＣＵ６０，７０，８０，９０，１００は、スターカプラ１０、ゲートウェイ１を介して、ネットワーク通信を行う。このとき、ＣＰＵ３０は、ＲＯＭ４０に記憶された診断用プログラムに基づいて、ネットワーク及び各ＥＣＵ６０，７０，８０，９０，１００の故障診断を行う。
【００２６】
図３は、ＣＰＵ３０の故障診断の処理手順を示すフローチャートである。図４は、故障診断時のＥＣＵシステムの回路構成を示すブロック図である。
【００２７】
ステップＳＴ１では、ＣＰＵ３０は、故障の診断対象となるＥＣＵ（例えば、ＥＣＵ６０）に足してポーリングを行う。具体的には、ＣＰＵ３０は、診断用バス２８を介してＥＣＵ６０に診断用メッセージを送信して、ステップＳＴ２に移行する。このとき、図４に示すように、ＥＣＵ６０では、マイクロコントローラ６３は、光トランシーバ６１及び光トランシーバ制御回路６２を介して、診断用メッセージを受信すると、正常であることを示す応答用メッセージを返信する。
【００２８】
ステップＳＴ２では、ＣＰＵ３０は、診断用メッセージの送信後から所定時間内に応答用メッセージを受信したか否かを判定する。所定時間内に正常（ＯＫ）である旨を示す応答用メッセージを受信したときはステップＳＴ３に移行し、そうでないときはＥＣＵ６０に故障が生じたと判定して、後述の故障検出時の処理を実行する。
【００２９】
ステップＳＴ３では、ＣＰＵ３０は、次のＥＣＵ（例えば、ＥＣＵ７０）を故障の診断の対象に設定して、再びステップＳＴ１に戻る。
【００３０】
以上のように、ＣＰＵ３０は、各ＥＣＵに対して順番に診断用メッセージを送信し、送信後所定時間内に応答メッセージがあるか否かを判定することで、各ＥＣＵの故障診断を行う。これにより、ＣＰＵ３０は、スターカプラ１０に接続されたネットワーク及び各ＥＣＵの状況を把握することができる。
【００３１】
なお、ＣＰＵ３０は、ポーリングを行う代わりに、各ＥＣＵから定期的に正常である旨を示すメッセージを受信したか否かを判定することにより、ネットワーク及び各ＥＣＵの状況を把握してもよい。
【００３２】
（故障検出時）
ここで、ＥＣＵ７０のマイクロコントローラ７３が故障して、ＣＰＵ３０がＥＣＵ７０からの応答メッセージを受信しなかった場合を例に挙げて説明する。
【００３３】
図５は、ＣＰＵ３０がＥＣＵの故障を検出したときの処理手順を示すフローチャートである。図６は、故障検出時のＥＣＵシステムの回路構成を示すブロック図である。ＣＰＵ３０がＥＣＵ７０の故障を検出すると、ステップＳＴ１１以下の処理を実行する。
【００３４】
ゲートウェイ１の図示しないＣＰＵは、故障したＥＣＵ７０を通信用バス２７から切り離し（ステップＳＴ１１）、その情報をゲートウェイ１経由で、他のスターカプラに送信し（ステップＳＴ１２）、ＥＣＵ７０と通信を行わないように制御する。
【００３５】
次に、スターカプラ１０のＣＰＵ３０は、ネットワークを経由して、ＥＣＵ７０の代替制御を行う。ここでは、ＣＰＵ３０は、診断用バス２８をＥＣＵ７０との専用バスとし、ＥＣＵ７０内の入出力制御回路７４をマイクロコントローラ７３から切り離し、入出力制御回路６４から制御できるように切り換える（ステップＳＴ１３）。
【００３６】
そして、ＣＰＵ３０は、ＲＯＭ４２からＥＣＵ７０の代替制御プログラムを読み出して、ネットワークを経由して、故障したＥＣＵ７０の代替制御を行う（ステップＳＴ１４）。具体的には、ＣＰＵ３０は、診断用バス２８及びネットワークを経由して、ＥＣＵ７０に接続されたセンサ７６のセンサ信号を取り込む一方で、アクチュエータ７７に制御信号を出力することで、リアルタイム制御を行う。
【００３７】
以上のように、ＣＰＵ３０は、ＥＣＵ７０の故障を検出した場合には、診断用バス２８をＥＣＵ７０との専用バスにすることにより、故障したＥＣＵ７０と１対１で通信ができるので、大きな通信容量を確保することができる。この結果、通信遅延を最小にして、ネットワーク経由においても、応答性の良好なリアルタイム制御を行うことができる。
【００３８】
このとき、ＥＣＵ７０を除くＥＣＵ６０，８０，９０，１００は、通信用バス２７を介して相互に通信可能であり、ゲートウェイ１を介して他のネットワークとも通信可能であるのは勿論である。すなわち、１つのＥＣＵが故障しても、通信に与える影響を最小限に抑えることができる。
【００３９】
なお、ＣＰＵ３０は、診断用バス２８のデータ通信量に余裕がある場合は、ＥＣＵ６０，８０，９０，１００のポーリングによる故障診断を引き続き実行することも可能である。
【００４０】
［第２の実施形態］
つぎに、本発明の第２の実施形態について説明する。なお、第１の実施形態と同一の回路には同一の符号を付し、詳細な説明は省略する。
【００４１】
図７は、本発明の第２の実施形態に係るＥＣＵシステムの回路構成を示すブロック図である。第２の実施形態では、パッシブスターカプラを例に挙げて説明する。
【００４２】
本実施形態に係るＥＣＵシステムは、ゲートウェイ２と、複数のＥＣＵと接続可能なパッシブスターカプラ１０Ａと、それぞれ所定の制御を行うＥＣＵ６０，７０，８０，９０，１００と、を備えている。ゲートウェイ２とパッシブスターカプラ１０Ａ、パッシブスターカプラ１０Ａと各ＥＣＵとは光ファイバによって結合されている。パッシブスターカプラ１０Ａは、単に光を転送する機能を有している。そこで、第１の実施形態と異なり、ゲートウェイ２が、ＥＣＵの故障診断を行う。
【００４３】
ゲートウェイ２は、パッシブスターカプラ１０Ａと光通信するための光トランシーバ３と、光トランシーバ３を制御する光トランシーバ制御回路４と、プログラムに従った演算処理を実行するＣＰＵ３０と、ネットワークに接続された各ＥＣＵを診断するための診断用プログラムが記憶されたＲＯＭ４０と、故障時の各ＥＣＵのバックアップ動作用（代替制御用）プログラムがそれぞれ記憶されたＲＯＭ４１，４２，４３，４４，４５と、を備えている。なお、ゲートウェイ２は、第１の実施形態で使用した診断用バス２８はなくてよい。パッシブスターカプラ１０Ａには、光を転送するための光導波路５が形成されている。
【００４４】
（故障診断）
図８は、故障診断時のＥＣＵシステムの回路構成を示すブロック図である。通常動作時、各ＥＣＵ６０，７０，８０，９０，１００は、パッシブスターカプラ１０Ａ、ゲートウェイ２を介して、ネットワーク通信を行う。このとき、ＣＰＵ３０は、ＲＯＭ４０に記憶された診断用プログラムに基づいて、時分割通信により、ネットワーク及び各ＥＣＵ６０，７０，８０，９０，１００の故障診断を行う。
【００４５】
ＣＰＵ３０は、定常的な通信用データの合間に、例えば図８に示すように、ＣＰＵ３０から接続された各ノード（例えば、ＥＣＵ６０）に、定期的に診断用メッセージを送信する。そして、ＣＰＵ３０は、第１の実施形態同様に、診断用メッセージの送信後から所定時間内に応答用メッセージを受信したか否かを判定する。ＣＰＵ３０は、所定時間内に正常である旨を示す応答用メッセージを受信したときは、ＥＣＵ６０は正常であると判定し、そうでないときはＥＣＵ６０に故障が生じたと判定する。
【００４６】
（故障検出時）
ここで、ＥＣＵ７０のマイクロコントローラ７３が故障して、ＣＰＵ３０がＥＣＵ７０からの応答メッセージを受信しなかった場合を例に挙げて説明する。
【００４７】
図９は、故障検出時のＥＣＵシステムの回路構成を示すブロック図である。ＣＰＵ３０がＥＣＵ７０の故障を検出すると、以下の処理を実行する。
【００４８】
ＣＰＵ３０は、ＥＣＵ７０内の入出力制御回路７４をマイクロコントローラ７３から切り離し、入出力制御回路６４から制御できるように切り換える。次に、ＣＰＵ３０は、ゲートウェイ２及びパッシブスターカプラ１０Ａに接続された各ＥＣＵの通信の優先度を切り換えて、当該ＣＰＵ３０と故障したＥＣＵ７０との通信を優先するように制御する。
【００４９】
ＣＰＵ３０は、ＲＯＭ４２からＥＣＵ７０の代替制御プログラムを読み出して、ネットワークを経由して、故障したＥＣＵ７０の代替制御を行う。具体的には、ＣＰＵ３０は、ネットワークを経由して、ＥＣＵ７０に接続されたセンサ７６のセンサ信号を取り込む一方で、アクチュエータ７７に制御信号を出力することで、リアルタイム制御を行う。
【００５０】
以上のように、第２の実施形態に係るＥＣＵシステムは、パッシブスターカプラ１０Ａを用いる場合でも、ゲートウェイ２からネットワークを経由して、故障したＥＣＵの代替制御を行うことができる。このＥＣＵシステムは、通常のネットワークをそのまま用いているので、シンプルなハードウェアで代替制御を実現できる。また、このＥＣＵシステムは、ＥＣＵの故障時には、パッシブスターカプラ１０Ａに接続された故障ノード（故障したＥＣＵ）との通信を他のノードよりも優先することで、ネットワーク経由のリアルタイム制御を実現することができる。
【００５１】
なお、ＥＣＵシステムは、通信容量に予め余裕をもたせておくことで、ゲートウェイ２と故障ノードの通信容量を確保して、ネットワーク経由でリアルタイム制御を実現することもできる。
【００５２】
［第３の実施形態］
つぎに、本発明の第３の実施形態について説明する。第３の実施形態では、リング型ネットワークを例に挙げて説明する。
【００５３】
図１０は、本発明の第３の実施形態に係るＥＣＵシステムの概略構成を示す図である。図１１は、ＥＣＵシステムの回路構成を示すブロック図である。
【００５４】
本実施形態に係るＥＣＵシステムは、リング型ネットワークであり、ゲートウェイ１１０と、それぞれ所定の制御を行うＥＣＵ１４０，１６０，１８０とを備えている。このネットワークの各ノードは、それぞれ２組の光トランシーバを備え、二重ネットワークを構成している。１つは診断用ネットワーク１０３であり、もう１つは通信用ネットワーク１０５である。
【００５５】
ゲートウェイ１１０は、上位のネットワークと接続するため、光トランシーバを介して、他のゲートウェイに接続されている。ゲートウェイ１１０及び各ＥＣＵは、光ファイバによってリング型に結合されている。なお、光ファイバの代わりに電気ワイヤを用いてもよい。
【００５６】
ゲートウェイ１１０は、光ファイバを介してＥＣＵと光通信するための光トランシーバ１１１，１１２，１１３，１１４と、他のゲートウェイと光通信するための光トランシーバ１１５と、各光トランシーバをそれぞれ制御する光トランシーバ制御回路１２１，１２２，１２３，１２４，１２５とを備えている。
【００５７】
また、ゲートウェイ１１０は、プログラムに従った演算処理を実行するＣＰＵ１２６と、ネットワークに接続された各ＥＣＵを診断するための診断用プログラムが記憶されたＲＯＭ１３０と、故障時の各々のＥＣＵ１４０，１６０，１８０のバックアップ動作用（代替制御用）プログラムがそれぞれ記憶されたＲＯＭ１３１，１３２，１３３と、を備えている。
【００５８】
さらに、ゲートウェイ１１０は、診断用バス１３４及びデータ通信バス１３５を備えている。診断用バス１３４は、各ＥＣＵが正常に動作しているかを診断するポーリング動作時及び代替制御時に使用されるバスである。診断用バス１３４は、光トランシーバ制御回路１２１、光トランシーバ１１１を介して診断用ネットワーク１０３に接続される一方で、光トランシーバ制御回路１２２、光トランシーバ１１２を介しても診断用ネットワーク１０３に接続されている。
【００５９】
データ通信バス１３５は、各ＥＣＵ間のデータ通信用のバスである。データ通信バス１３５は、光トランシーバ制御回路１２３、光トランシーバ１１３を介して通信用ネットワーク１０５に接続される一方で、光トランシーバ制御回路１２４、光トランシーバ１１４を介しても通信用ネットワーク１０５に接続されている。
【００６０】
なお、診断用バス１３４及びデータ通信バス１３５は、ＣＰＵ１２６に接続されている。また、データ通信バス１３５は、光トランシーバ制御回路１２５、光トランシーバ１１５を介して、他のゲートウェイに接続されている。
【００６１】
ＥＣＵ１４０は、光ファイバを介して光通信するための光トランシーバ１４１，１４２，１４３，１４４と、各光トランシーバをそれぞれ制御する光トランシーバ制御回路１４５，１４６，１４７，１４８と、を備えている。
【００６２】
さらに、ＥＣＵ１４０は、診断用バス１５１と、データ通信バス１５２と、制御プログラムを実行するマイクロコントローラ１５３と、センサ１５６からのセンサ信号を入力する一方で、アクチュエータ１５７に制御信号を出力する入出力制御回路１５４と、を備えている。
【００６３】
診断用バス１５１は、光トランシーバ制御回路１４５、光トランシーバ１４１を介して診断用ネットワーク１０３に接続される一方で、光トランシーバ制御回路１４６、光トランシーバ１４２を介しても診断用ネットワーク１０３に接続されている。また、データ通信バス１５２は、光トランシーバ制御回路１４７、光トランシーバ１１４３を介して通信用ネットワーク１０５に接続される一方で、光トランシーバ制御回路１４８、光トランシーバ１４４を介しても通信用ネットワーク１０５に接続されている。
【００６４】
マイクロコントローラ１５３は、診断用バス１５１及びデータ通信バス１５２に接続されている。マイクロコントローラ１５３は、入出力制御回路１５４を介して、センサ１５６からのセンサ信号を受信し、アクチュエータ１５７を制御する。また、マイクロコントローラ１５３が故障した場合、入出力制御回路１５４は診断用バス１５１と接続される。
【００６５】
なお、ＥＣＵ１６０，１８０は、ＥＣＵ１４０と同様に構成されている。
【００６６】
（故障診断）
図１２は、故障診断時のＥＣＵシステムの回路構成を示すブロック図である。
【００６７】
通常動作時、各ＥＣＵ１４０，１６０，１８０は、データ通信バス及び通信用ネットワーク１０５を介して、相互に通信可能である。一方、ゲートウェイ１１０のＣＰＵ１２６は、ＲＯＭ１３０に記憶された診断用プログラムに従って、診断用バス１３４及び診断用ネットワーク１０３を介して、ＥＣＵ１４０，１６０，１８０の故障診断を行う。
【００６８】
ＣＰＵ１２６は、第１の実施の形態と同様に、図３に示したフローチャートに従ってポーリングを行う。つまり、ＣＰＵ１２６は、ＲＯＭ１３０に記憶された診断用プログラムに従って、各々のＥＣＵに対して所定の順番に診断用のメッセージを送信し、送信後所定時間内に応答メッセージがあるか否かを判定する。
【００６９】
これにより、ゲートウェイ１１０内のＣＰＵ１２６は、接続されたネットワーク及び各ＥＣＵの状況を把握することができる。なお、ＣＰＵ１２６は、ポーリングを行う代わりに、各ＥＣＵから定期的に正常である旨を示すメッセージを受信したか否かを判定することにより、ネットワーク及び各ＥＣＵの状況を把握してもよい。
【００７０】
（故障検出時）
ここで、ＥＣＵ１６０のマイクロコントローラ１７３が故障した場合を例に挙げて説明する。
【００７１】
図１３は、故障検出時のＥＣＵシステムの回路構成を示すブロック図である。ゲートウェイ１１０がＥＣＵ１６０の故障を検出すると、以下の処理を実行する。
【００７２】
最初に、ゲートウェイ１１０のＣＰＵ１２６は、故障したＥＣＵ１６０を通信ネットワークから切り離す。そして、その切り離した情報を診断ネットワークやゲートウェイ経由で、他のＥＣＵ１４０，１８０に送信し、ＥＣＵ１６０と通信を行わないように制御する。
【００７３】
次に、ゲートウェイ１１０のＣＰＵ１２６は、ネットワークを経由して、ＥＣＵ１６０の代替制御を行う。このとき、ＣＰＵ１２６は、診断用バス１３４，１５１，１７１を、ＣＰＵ１２６とＥＣＵ１６０との通信専用バスとして使用する。そして、ＣＰＵ１２６は、ＥＣＵ１６０内の入出力制御回路１７４をマイクロコントローラ１７３から切り離し、入出力制御回路６４を直接制御できるように切り換える。
【００７４】
そして、ＣＰＵ１２６は、ＲＯＭ１３２からＥＣＵ１６０の代替制御プログラムを読み出して、ネットワークを経由して、故障したＥＣＵ１６０の代替制御を行う。具体的には、ＣＰＵ１２６は、診断用バス及び診断用ネットワーク１０３を経由して、ＥＣＵ１６０に接続されたセンサ１７６のセンサ信号を取り込む一方で、アクチュエータ１７７に制御信号を出力して、リアルタイム制御を行う。このとき、センサ１７６及びアクチュエータ１７７の制御情報は、ネットワーク経由で送信される。
【００７５】
以上のように、第３の実施形態に係るＥＣＵシステムは、リングネットワークを構成している場合に１つのＥＣＵ（例えば、ＥＣＵ１６０）が故障しても、ゲートウェイ１１０とＥＣＵ１６０の間で、診断用バス及び診断ネットワークを介して専用通信する。これにより、通信遅延を最小とすることができ、良好にリアルタイム制御を行うことができる。
【００７６】
さらに、ＥＣＵ１６０を除くＥＣＵ１４０，１８０は、通常通りに、相互に通信可能であり、ゲートウェイを介して他のネットワークとも通信可能である。
【００７７】
ＣＰＵ１２６は、診断用バス２８のデータ通信量に余裕がある場合は、ＥＣＵ１４０，１８０のポーリングによる故障診断を引き続き実行することも可能である。
【００７８】
なお、本発明は、上述した実施の形態に限定されるものではなく、特許請求の範囲に記載された範囲内で設計上の変更をされたものにも適用可能であるのは勿論である。
【００７９】
【発明の効果】
本発明に係るフェールセーフ装置は、故障が生じた演算処理装置を検出したときに、故障が生じた演算処理装置を代替する代替制御プログラムを代替制御プログラム記憶手段から読み出し、読み出した代替制御プログラムに基づいて、故障した演算処理装置の代替制御を行うことにより、コストをかけることなく、最適かつ信頼性の高いフェールセーフ装置を提供することができる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態に係る電子制御ユニットシステムの概略を示す図である。
【図２】ＥＣＵシステムの回路構成を示すブロック図である。
【図３】ＣＰＵの故障診断の処理手順を示すフローチャートである。
【図４】故障診断時のＥＣＵシステムの回路構成を示すブロック図である。
【図５】ＣＰＵがＥＣＵの故障を検出したときの処理手順を示すフローチャートである。
【図６】故障検出時のＥＣＵシステムの回路構成を示すブロック図である。
【図７】本発明の第２の実施形態に係るＥＣＵシステムの回路構成を示すブロック図である。
【図８】故障診断時のＥＣＵシステムの回路構成を示すブロック図である。
【図９】故障検出時のＥＣＵシステムの回路構成を示すブロック図である。
【図１０】本発明の第３の実施形態に係るＥＣＵシステムの概略構成を示す図である。
【図１１】ＥＣＵシステムの回路構成を示すブロック図である。
【図１２】故障診断時のＥＣＵシステムの回路構成を示すブロック図である。
【図１３】故障検出時のＥＣＵシステムの回路構成を示すブロック図である。
【符号の説明】
１，２，１１０  ゲートウェイ
１０  スターカプラ
１０Ａ  パッシブスターカプラ
３，１１，１２，１３，１４，１５，１６  光トランシーバ
４，２１，２２，２３，２４，２５，２６，６２，７２  光トランシーバ制御回路
２７，１３５，１５２，１７２  通信用バス
２８，１３４，１５１，１７１  診断用バス
３０，１２６  ＣＰＵ
４０，４１，４２，４３，４４，４５  ＲＯＭ
１０３  診断用ネットワーク
１０５  通信用ネットワーク
【図１】
2004318498.tif 000003
【図２】
2004318498.tif 000004
【図３】
2004318498.tif 000005
【図４】
2004318498.tif 000006
【図５】
2004318498.tif 000007
【図６】
2004318498.tif 000008
【図７】
2004318498.tif 000009
【図８】
2004318498.tif 000010
【図９】
2004318498.tif 000011
【図１０】
2004318498.tif 000012
【図１１】
2004318498.tif 000013
【図１２】
2004318498.tif 000014
【図１３】
2004318498.tif 000015