(57)【要約】【課題】  信号入力ノードから故障・異常の診断を委託された指定の診断代行ノードがその診断を実行することが困難であるときに、別のノードにその診断の再委託を行うことで、信号入力ノードに関わる診断を確実に履行することができるノード診断システムを提供することにある。【解決手段】  センサの出力信号データが入力される委託元ノードに、実行すべき故障診断の内容を指定すると共にその故障診断の委託先として指定すべき診断代行ノードを特定する診断ＩＤと自ノードを特定する識別ＩＤとその入力信号データとを含む診断委託フレームを多重通信線上へ送出させる。また、その診断代行ノードに、その診断の実行が困難であるとき、次に委託先として指定すべきノードの情報を含め診断不能の旨を委託元ノードへ通知させる。そして、委託元ノードに、故障診断の委託先のノードをその指定されたノードに変更した診断委託フレームを多重通信線上へ再送出させる。【選択図】  図３
2006279498.tif 000002
【特許請求の範囲】
【請求項１】
他のノードと多重通信線を介して接続されると共に、信号データが入力される信号入力ノードに関わる故障・異常を診断するシステムであって、
前記信号入力ノードは、他ノードに診断を委託すべく、少なくとも実行すべき診断の委託先である診断代行ノードを指定する情報と自ノードを特定する情報と入力された信号データとを含むデータフレームを前記多重通信線上へ送出する診断委託フレーム送出手段を有し、
前記診断代行ノードは、前記信号入力ノードからの前記データフレームを受信した場合に該実行すべき診断を自ノードが行い得るか否かを判別する診断実行可否判別手段と、該診断実行可否判別手段により該診断の実行が可能であると判別した場合に前記データフレームに含まれる前記信号データに基づいて前記信号入力ノードに関わる診断を実行する代行診断実行手段と、該診断実行可否判別手段により該診断の実行が困難であると判別した場合に診断不能の旨を前記信号入力ノードへ通知する診断不能通知手段と、を有すると共に、
前記信号入力ノードは、前記診断代行ノードからの診断不能の旨の通知を受信した場合に、前記診断委託フレーム送出手段による前記データフレームの送出を、診断委託先の診断代行ノードを別の他ノードに代えて新たに行うことを特徴とするノード診断システム。
【請求項２】
前記診断代行ノードは、前記診断不能通知手段による診断不能の旨の通知を、次に診断委託先として指定すべきノードを特定する情報を含めて行うと共に、
前記信号入力ノードは、前記診断代行ノードからの前記通知を受信した場合に、前記診断委託フレーム送出手段による前記データフレームの送出を、診断委託先の診断代行ノードを該通知により次に指定すべきであると特定されたノードに設定して新たに行うことを特徴とする請求項１記載のノード診断システム。
【請求項３】
前記診断代行ノードは、次に診断委託先として指定すべきノードが設定されていないときは、前記診断不能通知手段による診断不能の旨の通知を、次に診断委託先として指定すべきノードが存在しないことを含めて行うと共に、
前記信号入力ノードは、前記診断代行ノードからの前記通知を受信した場合に、前記診断委託フレーム送出手段による新たな前記データフレームの送出を禁止して他ノードへの診断委託を中止することを特徴とする請求項２記載のノード診断システム。
【請求項４】
前記信号入力ノードに関わる故障・異常は、該信号入力ノードに前記多重通信線とは異なる信号線を介して電気的に接続し、該信号入力ノードに対して信号データを出力する信号出力手段の故障であることを特徴とする請求項１乃至３の何れか一項記載のノード診断システム。
【請求項５】
他のノードと多重通信線を介して接続されると共に、信号データが入力されるノードであって、
他ノードに自ノードに関わる故障・異常の診断を委託すべく、少なくとも実行すべき診断の委託先である診断代行ノードを指定する情報と自ノードを特定する情報と入力された信号データとを含むデータフレームを前記多重通信線上へ送出する診断委託フレーム送出手段と、
前記診断代行ノードからの診断不能の旨の通知が受信された場合に、前記データフレーム中で指定する診断委託先の診断代行ノードを別の他ノードに変更する委託先変更手段と、を備え、
前記診断委託フレーム送出手段は、前記委託先変更手段による変更後、前記データフレームの送出を新たに行うことを特徴とするノード。
【請求項６】
前記委託先変更手段は、前記診断代行ノードから診断不能の旨と共に通知される次に診断委託先として指定すべきノードを、前記データフレーム中で指定する診断委託先の診断代行ノードとして設定することを特徴とする請求項５記載のノード。
【請求項７】
前記診断委託フレーム送出手段は、前記診断代行ノードからの診断不能の旨及び次に診断委託先として指定すべきノードが存在しない旨の通知が受信された場合に、新たな前記データフレームの送出を禁止することを特徴とする請求項６記載のノード。
【請求項８】
信号データが入力される信号入力ノードと多重通信線を介して接続されるノードであって、
前記信号入力ノードから、該信号入力ノードに関わる故障・異常の診断を委託する診断委託先として自ノードが指定された情報を含むデータフレームが受信された場合に、該診断を自ノードが行い得るか否かを判別する診断実行可否判別手段と、
前記診断実行可否判別手段により前記診断の実行が可能であると判別した場合に、前記データフレームに含まれる信号データに基づいて前記信号入力ノードに関わる診断を実行する代行診断実行手段と、
前記診断実行可否判別手段により前記診断の実行が困難であると判別した場合に、診断不能の旨を前記信号入力ノードへ通知する診断不能通知手段と、
を備えることを特徴とするノード。
【請求項９】
前記診断不能通知手段は、診断不能の旨の通知を、次に診断委託先として指定すべきノードを特定する情報を含めて行うことを特徴とする請求項８記載のノード。
【請求項１０】
前記診断不能通知手段は、次に診断委託先として指定すべきノードが設定されていないときは、診断不能の旨の通知を、次に診断委託先として指定すべきノードが存在しないことを含めて行うことを特徴とする請求項９記載のノード。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ノード診断システムに係り、特に、他のノードと多重通信線を介して接続されると共に、信号データが入力されるノードに関わる故障・異常を診断するうえで好適なノード診断システム及びノードに関する。
【背景技術】
【０００２】
従来から、多重通信ネットワークを介して互いに接続された複数のノードを備えるシステムが知られている（例えば、特許文献１参照）。このシステムにおいては、複数のノードのうち一のノードが、多重通信ネットワーク上におけるすべてのノードに対応する故障診断プログラムを格納するノードとして指定されており、その指定ノードが、自己に格納する故障診断プログラムに従ってすべてのノードに対応する故障診断をそれぞれ引き受けて実行する。
【特許文献１】特開２００３−２６１０１８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
上記の如く、上記したシステムにおいては、特定の一のノードが、他のすべてのノードに関する故障診断を引き受けて実行するが、この特定の一のノードが故障診断負荷の集中や自ノードにおける特に重要な制御の実行等に起因して故障診断を継続することが困難となることがある。かかる事態が生じた場合、ノードの故障診断を何らかの方法で続行させることが必要であるが、しかし、上記したシステムでは、この故障診断継続のための対応が何らとられていない。
【０００４】
本発明は、上述の点に鑑みてなされたものであり、信号入力ノードから故障・異常の診断を委託された指定の診断代行ノードがその診断を実行することが困難であるときに、別のノードにその診断の再委託を行うことで、信号入力ノードに関わる診断を確実に履行することが可能なノード診断システム及びノードを提供することを目的とする。
【課題を解決するための手段】
【０００５】
上記の目的は、他のノードと多重通信線を介して接続されると共に、信号データが入力される信号入力ノードに関わる故障・異常を診断するシステムであって、前記信号入力ノードは、他ノードに診断を委託すべく、少なくとも実行すべき診断の委託先である診断代行ノードを指定する情報と自ノードを特定する情報と入力された信号データとを含むデータフレームを前記多重通信線上へ送出する診断委託フレーム送出手段を有し、前記診断代行ノードは、前記信号入力ノードからの前記データフレームを受信した場合に該実行すべき診断を自ノードが行い得るか否かを判別する診断実行可否判別手段と、該診断実行可否判別手段により該診断の実行が可能であると判別した場合に前記データフレームに含まれる前記信号データに基づいて前記信号入力ノードに関わる診断を実行する代行診断実行手段と、該診断実行可否判別手段により該診断の実行が困難であると判別した場合に診断不能の旨を前記信号入力ノードへ通知する診断不能通知手段と、を有すると共に、前記信号入力ノードは、前記診断代行ノードからの診断不能の旨の通知を受信した場合に、前記診断委託フレーム送出手段による前記データフレームの送出を、診断委託先の診断代行ノードを別の他ノードに代えて新たに行うノード診断システムにより達成される。
【０００６】
この態様の発明において、故障・異常の診断を他ノードに委託する信号入力ノードは、少なくとも実行すべき診断の委託先である診断代行ノードを指定する情報と自ノードを特定する情報と入力された信号データとを含むデータフレームを多重通信線上へ送出した後に、その委託先の診断代行ノードから診断を行うことが不能である旨の通知を受けた場合、診断委託先の診断代行ノードを別の他ノードに代えて新たなデータフレームの送出を行う。かかる構成によれば、信号入力ノードから故障・異常の診断を委託された指定の診断代行ノードがその故障診断を実行することが困難であるとき、別のノードにその診断の再委託を行うので、信号入力ノードに関わる診断を確実に履行することができる。
【０００７】
この場合、上記したノード診断システムにおいて、前記診断代行ノードは、前記診断不能通知手段による診断不能の旨の通知を、次に診断委託先として指定すべきノードを特定する情報を含めて行うと共に、前記信号入力ノードは、前記診断代行ノードからの前記通知を受信した場合に、前記診断委託フレーム送出手段による前記データフレームの送出を、診断委託先の診断代行ノードを該通知により次に指定すべきであると特定されたノードに設定して新たに行うこととすれば、信号入力ノードは最初に診断を委託すべき診断代行ノードの識別情報のみを記憶しているだけで、委託先の診断代行ノードの診断不能時に適宜、診断代行ノードを代えて診断の再委託を行うことが可能となるので、故障・異常の診断のバックアップを高い拡張性を確保しつつ実現することが可能となる。
【０００８】
また、上記したノード診断システムにおいて、前記診断代行ノードは、次に診断委託先として指定すべきノードが設定されていないときは、前記診断不能通知手段による診断不能の旨の通知を、次に診断委託先として指定すべきノードが存在しないことを含めて行うと共に、前記信号入力ノードは、前記診断代行ノードからの前記通知を受信した場合に、前記診断委託フレーム送出手段による新たな前記データフレームの送出を禁止して他ノードへの診断委託を中止することとすればよい。
【０００９】
尚、上記したノード診断システムにおいて、前記信号入力ノードに関わる故障・異常は、該信号入力ノードに前記多重通信線とは異なる信号線を介して電気的に接続し、該信号入力ノードに対して信号データを出力する信号出力手段の故障であることとしてもよい。
【００１０】
また、上記の目的は、他のノードと多重通信線を介して接続されると共に、信号データが入力されるノードであって、他ノードに自ノードに関わる故障・異常の診断を委託すべく、少なくとも実行すべき診断の委託先である診断代行ノードを指定する情報と自ノードを特定する情報と入力された信号データとを含むデータフレームを前記多重通信線上へ送出する診断委託フレーム送出手段と、前記診断代行ノードからの診断不能の旨の通知が受信された場合に、前記データフレーム中で指定する診断委託先の診断代行ノードを別の他ノードに変更する委託先変更手段と、を備え、前記診断委託フレーム送出手段は、前記委託先変更手段による変更後、前記データフレームの送出を新たに行うノードにより達成される。
【００１１】
この態様の発明において、故障・異常の診断を他ノードに委託するノードは、少なくとも実行すべき診断の委託先である診断代行ノードを指定する情報と自ノードを特定する情報と入力された信号データとを含むデータフレームを多重通信線上へ送出した後に、その委託先の診断代行ノードから診断を行うことが不能である旨の通知を受けた場合、診断委託先の診断代行ノードを別の他ノードに代えて新たなデータフレームの送出を行う。かかる構成によれば、信号が入力されるノードから故障・異常の診断を委託された指定の診断代行ノードがその故障診断を実行することが困難であるとき、別のノードにその診断の再委託を行うので、信号が入力されるノードに関わる診断を確実に履行することができる。
【００１２】
この場合、上記したノードにおいて、前記委託先変更手段は、前記診断代行ノードから診断不能の旨と共に通知される次に診断委託先として指定すべきノードを、前記データフレーム中で指定する診断委託先の診断代行ノードとして設定することとすれば、ノードは最初に診断を委託すべき診断代行ノードの識別情報のみを記憶しているだけで、委託先の診断代行ノードの診断不能時に適宜、診断代行ノードを代えて診断の再委託を行うことが可能となるので、故障・異常の診断のバックアップを高い拡張性を確保しつつ実現することが可能となる。
【００１３】
尚、上記したノードにおいて、前記診断委託フレーム送出手段は、前記診断代行ノードからの診断不能の旨及び次に診断委託先として指定すべきノードが存在しない旨の通知が受信された場合に、新たな前記データフレームの送出を禁止することとすればよい。
【００１４】
更に、上記の目的は、信号データが入力される信号入力ノードと多重通信線を介して接続されるノードであって、前記信号入力ノードから、該信号入力ノードに関わる故障・異常の診断を委託する診断委託先として自ノードが指定された情報を含むデータフレームが受信された場合に、該診断を自ノードが行い得るか否かを判別する診断実行可否判別手段と、前記診断実行可否判別手段により前記診断の実行が可能であると判別した場合に、前記データフレームに含まれる信号データに基づいて前記信号入力ノードに関わる診断を実行する代行診断実行手段と、前記診断実行可否判別手段により前記診断の実行が困難であると判別した場合に、診断不能の旨を前記信号入力ノードへ通知する診断不能通知手段と、を備えるノードにより達成される。
【００１５】
この態様の発明において、信号入力ノードからその信号入力ノードに関わる故障・異常の診断を委託されたノードは、自ノードがその診断を行うことが可能である場合にはデータフレームに含まれる入力信号データに基づいてその診断を実行する一方、自ノードがその診断を行うことが困難である場合には診断不能の旨を信号入力ノードへ通知する。かかる構成によれば、信号入力ノードから故障・異常の診断を委託された指定の診断代行ノードがその故障診断を実行することが困難であるとき、別のノードにその診断の再委託を行うように信号入力ノードに要求することができるので、信号入力ノードに関わる診断を確実に履行させることができる。
【００１６】
この場合、上記したノードにおいて、前記診断不能通知手段は、診断不能の旨の通知を、次に診断委託先として指定すべきノードを特定する情報を含めて行うこととすれば、信号入力ノードは最初に診断を委託すべき診断代行ノードの識別情報のみを記憶しているだけで、委託先の診断代行ノードの診断不能時に適宜、診断代行ノードを代えて診断の再委託を行うことが可能となるので、故障・異常の診断のバックアップを高い拡張性を確保しつつ実現することが可能となる。
【００１７】
尚、上記したノードにおいて、前記診断不能通知手段は、次に診断委託先として指定すべきノードが設定されていないときは、診断不能の旨の通知を、次に診断委託先として指定すべきノードが存在しないことを含めて行うこととすればよい。
【発明の効果】
【００１８】
本発明によれば、信号入力ノードから故障・異常の診断を委託された指定の診断代行ノードがその故障診断を実行することが困難であるときに、別のノードにその診断の再委託を行うことで、信号入力ノードに関わる診断を確実に履行することができる。
【発明を実施するための最良の形態】
【００１９】
以下、図面を用いて、本発明の具体的な実施の形態について説明する。図１は、本発明の一実施例であるシステムの構成図を示す。また、図２は、本実施例のシステムを構成するノードの具体的な構成図を示す。本実施例のシステムは、車両に搭載されたシステムであり、図１に示す如く、複数（図１においては３つ）のノード１０と、これら複数のノード１０を互いに接続する多重通信線１２と、を備えている。
【００２０】
多重通信線１２は、ＣＡＮ（Controller Area Network）等のシングル線又はツイストペア線からなる共有バスであり、各ノード１０から送出されるデータを所定の通信プロトコルに従って時分割多重で伝送（多重通信）することを可能としている。すなわち、各ノード１０は、多重通信線１２に他のデータが流れていない状態ではデータ送信を開始することができる一方、他の１以上のノード１０から同時にデータ送信が開始されたときは送信優先順位に従ってデータ送信を行い、他のノード１０からのデータ送信が行われているときは一定時間待機した後にデータ送信を行う。各ノード１０から送出されたデータは制御データとして、多重通信線１２を介して他のノード１０へ送信される。すなわち、各ノード１０は、他のノード１０との間で多重通信線１２を介して各種のデータを送受信することが可能である。
【００２１】
ノード１０は、車両の各種制御装置に設けられるコンピュータを主体に構成された電子制御ユニットであるＥＣＵである。例えば、スロットル開度やアクセル開度，エンジン水温等に基づいてエンジン制御を行うエンジンＥＣＵ、車輪速やヨーレート，ステアリング舵角等に基づいて車両の旋回挙動を安定化させるＶＳＣ（Vehicle Stability Control）−ＥＣＵ、シフト操作位置等に基づいて車両のシフトポジションを制御するトランスミッションＥＣＵ、ブレーキ踏力やステアリング舵角等に基づいて車両の制動力を制御するブレーキＥＣＵ、ステアリング舵角等に基づいて操舵アシスト力を制御するパワーステアリングＥＣＵ、エアコン操作スイッチや車内温等に基づいて車内のエアコンディションを制御するオートエアコンＥＣＵ等である。尚、ノード１０は、ＥＣＵの機能も有する、ステアリング舵角に応じた信号を出力する舵角センサや車両の重心軸周りに生ずるヨーレートに応じた信号を出力するヨーレートセンサなどのインテリジェントなセンサであってもよい。
【００２２】
各ノード１０はそれぞれ、図２に示す如く、中央演算処理装置であるＣＰＵ２０、及び、多重通信線１２に接続するバスインターフェースとしての通信モジュール２２を備えている。ＣＰＵ２０には、ＲＡＭ２４、ＲＯＭ２６、及びコントローラ２８が内蔵されている。ＲＡＭ２４は、ＣＰＵ２０の演算中の情報や演算結果を格納する領域である。ＲＯＭ２６は、ＣＰＵ２０が使用するプログラムを格納すると共に、自ノード１０が受信すべきデータ固有の識別ＩＤを格納する領域である。コントローラ２８は、通信データを格納するレジスタを有し、設定した識別ＩＤと多重通信線１２上の通信データ中の識別ＩＤとを照合して、その照合が一致する場合に、その受信データをレジスタに格納する。
【００２３】
ＣＰＵ２０は、ＣＡＮ等の所定の通信プロトコルに準じて作成されＲＯＭ２６に格納されたプログラムに従ってコントローラ２８を制御して、多重通信線１２を介したデータフレームの送受信制御を行う。具体的には、自ノード１０の出力データを多重通信線１２を介して他のノード１０へ送信すべくデジタル化し、また、他のノード１０から多重通信線１２を介して受信した入力データをデコードして自身での制御を実行する。また、通信モジュール２２は、コントローラ２８により制御され、他ノード１０にデータを送信すると共に、自ノード１０に送信されてきたデータを受信する。各ノード１０はそれぞれ、自ノード１０に接続するセンサやスイッチ，アクチュエータの状態に基づいて或いは更に他ノード１０から送信されてくるデータに基づいて自ノードにおける制御を行う。
【００２４】
各ノード１０が多重通信線１２へ送信するデータは、所定のデータフレームにより構成されている。このデータフレームは、例えば、フレームの始まりを示すスタートオブフレーム（ＳＯＦ）と、データ種類として他の種類のデータと区別するための各データ固有の識別ＩＤを示すフィールド（複数のノード１０からの送信データが衝突した際における当該データを送信するうえでの優先順位をも示す）と、当該送信データの長さを示すデータ長コード（ＤＬＣ）と、データ自体の内容（例えば、車輪速の情報や駆動トルクの制御指令値等）を示すフィールドと、伝送エラーをチェックするためのＣＲＣフィールドと、正常に受信が完了したことを確認するためのフィールドと、フレームの終わりを示すエンドオブフレーム（ＥＯＦ）と、から構成されている。
【００２５】
ところで、一般的に、ノード１０としてのＥＣＵには、自ＥＣＵにおいて予め定められた制御を行うため、センサやスイッチ，アクチュエータなど（以下、センサ等３０と称す）が上記した多重通信線１２とは異なる信号線３２を介して接続されている。また、最近では、搭載スペースの問題などに鑑みて、ＥＣＵ機能も兼ね備えたインテリジェントなセンサやアクチュエータなどが開発されている。このような構成においてはノード１０がＥＣＵとしての制御を適正に行うために、センサ等３０やセンサ機能部位（以下、これらを纏めて「センサ等３０」とする）から出力される信号の途絶や接地側若しくは電源側への固着（はり付き）などの故障を診断することが必要である。そこで、その故障診断を実行するノード１０としては、そのセンサ等３０の出力信号が入力するＥＣＵ自身であることが考えられる。しかしながら、特にＥＣＵ機能とセンサ機能とを兼用するノード１０ではＥＣＵ機能としてのコントローラや入出力が必要最小限の機能しか持たない簡素な構造であることが多いので、ノード１０自身が自ノード１０に接続するセンサ等３０や自ノード１０のセンサ機能の故障診断を行うことが適当でないことがある。
【００２６】
これに対して、センサ等３０の故障診断を、自ノード１０が行うのではなく、多重通信線１２上の他のノード１０に委託する構成が考えられる。かかる構成によれば、センサ等３０の故障診断を他ノードに委託する委託元のノード１０（以下、委託元ＥＣＵ１０ａと称す）がその故障診断機能を予め持っている必要はないので、ノード１０の構造を簡素に維持しつつ、そのノード１０に出力信号が入力されるセンサ等３０の故障診断を確実に実行することが可能となる。
【００２７】
しかしながら、委託元ＥＣＵ１０ａからセンサ等３０の故障診断を委託されるノード１０（以下、診断代行ＥＣＵ１０ｂと称す）は、複数の委託元ＥＣＵ１０ａからそれぞれ診断を委託されることがあるが、この場合、それらの委託がほぼ同時になされると、診断代行の負荷が集中してその代行診断を継続することが困難となることがある。更に、この診断代行ＥＣＵ１０ｂは、委託元ＥＣＵ１０ａからの委託による代行診断の他に、自ノード１０で実行すべき所定の制御（例えば、エンジン制御やＶＳＣ制御等）を行うことが必要であるので、その所定の制御を行う必要性が高いときは委託元ＥＣＵ１０ａからの委託による代行診断を行う余裕がなく、その代行診断が履行不能となることがある。
【００２８】
そこで、本実施例のシステムは、委託元ＥＣＵ１０ａからセンサ等３０の故障診断を委託された診断代行ＥＣＵ１０ｂがその故障診断を実行することが困難であるときに、別のノード１０にその診断の再委託を行うことで、委託元ＥＣＵ１０ａのセンサ等３０の故障診断を確実に履行することとしている。
【００２９】
図３（Ａ）は、本実施例のシステムにおいてセンサ等３０の故障診断を委託元ＥＣＵ１０ａからその診断が困難な一次診断代行ＥＣＵ１０ｂ−１へ委託した場合における各ノード１０間での信号授受を、また、図３（Ｂ）は、一次診断代行ＥＣＵ１０ｂ−１での診断が困難なときにセンサ等３０の故障診断を委託元ＥＣＵ１０ａからその診断が可能な二次診断代行ＥＣＵ１０ｂ−２へ再委託した場合における各ノード１０間での信号授受を、それぞれ示す。また、図４は、本実施例のシステムにおいて実行される一例の制御手順を示す。
【００３０】
本実施例において、ノード１０は、予め、自ノード１０が実行できる故障診断に使用されるプログラムを格納すると共に、その実行可能な故障診断の内容を特定する情報（故障診断の内容ごとかつ格納ノード１０ごとに定められたものであり、以下、診断ＩＤと称す）を格納する。尚、多重通信線１２に接続する全ノード１０の中には故障診断を全く実行できないノード１０が一部に存在してもよい。この場合、そのノード１０に故障診断用のプログラム及び診断ＩＤは格納されない。また、一つのノード１０が複数の故障診断（例えば、信号途絶と信号固着との２つの故障診断）を実行できることとしてもよい。更に、複数の異なるノード１０は互いに同一の故障診断を実行できることとしてもよいが、この場合でも、各ノード１０は異なる診断ＩＤを有するものとし、一つの故障診断に対して実行可能なノード１０ごとに複数の診断ＩＤが存在するものとする。
【００３１】
本実施例において、センサ等３０が出力した信号データは、委託元ＥＣＵ１０ａに入力される（ステップ１００）。委託元ＥＣＵ１０ａは、センサ等３０から入力される信号データに基づいて自ノード１０における制御（例えばエンジン制御やＶＳＣ制御等）を行う。また更に、委託元ＥＣＵ１０ａは、一定時間ごとに、出力信号が入力されるセンサ等３０について実行すべき故障診断の内容を指定すると共にかつその故障診断の委託先として指定すべき一次診断代行ＥＣＵ１０ｂ−１を特定する診断ＩＤ−１と、自ノード１０を特定して示す他ノード１０と区別するための識別ＩＤと、センサ等３０から入力される信号データと、を含むデータフレーム（以下、このデータフレームを診断委託フレームと称す）を、多重通信線１２上に定期送出する（ステップ１０２）。
【００３２】
尚、上記の診断委託フレームは、センサ等３０からの入力信号データよりも診断ＩＤのデータが先に多重通信線１２上に送出されるように構成されている。また、ノード１０は、予め、センサ等３０の信号入力後に最初に故障診断の委託先として指定すべき一次診断代行ＥＣＵ１０ｂ−１の識別情報を格納していると共に、自ノード１０が委託された故障診断の履行が困難であるときに次にその故障診断の委託先として指定されるべきノード１０（上記の一次診断代行ＥＣＵ１０ｂ−１と同一のノード１０でもよい。）の識別情報を格納している。この際、他ノード１０の識別情報を格納するノード１０と、自識別情報が格納されるノード１０とは、一方が使用されれば他方も確実に使用されると判断できる、互いに密接に関係するノード同士である。
【００３３】
多重通信線１２上の各ノード１０はそれぞれ、多重通信線１２上に流れる診断委託フレームをＳＯＦから順に受信し、まず、その診断委託フレーム中の診断ＩＤ部分を読み込む。そして、その読み込んだ診断ＩＤと同一の診断ＩＤが、予め自ノード１０に格納されている自ノード１０の実行可能な故障診断の診断ＩＤに含まれるか否かを判別する（ステップ２００）。その結果、否定判定がなされる場合は、自ノード１０が多重通信線１２から読み込んだ診断ＩＤに対応する故障診断を実行できないと判断できるので、以後、何ら処理を進めることなく処理を終了する。一方、肯定判定がなされる場合は、自ノード１０が多重通信線１２から読み込んだ診断ＩＤに対応する故障診断を実行できると判断できるので、次にステップ２０２の処理を実行する。
【００３４】
尚、診断ＩＤは、同じ故障診断を指定するものであっても、その委託先のノード１０ごとに異なるものである。従って、委託元ＥＣＵ１０ａが上記の如く故障診断の委託先として一次診断代行ＥＣＵ１０ｂ−１を指定する診断ＩＤ−１を含む診断委託フレームを多重通信線１２上へ送出すると、その診断委託フレームに対して一次診断代行ＥＣＵ１０ｂ−１のみがステップ２００で肯定判定を行う。
【００３５】
一次診断代行ＥＣＵ１０ｂ−１は、ステップ２００で肯定判定を行った後、ステップ２０２で委託元ＥＣＵ１０ａから委託された故障診断を行う機能が停止中であるか否かを判別する（ステップ２０２）。この判別は、例えば、自ノード１０ｂ−１において所定制御が実行中であるか否か、複数の委託元ＥＣＵ１０ａからそれぞれ自ノード１０ｂ−１に委託された故障診断の総数が所定数（例えば２つ）を超えたか否か、或いは、診断機能が不調であるか否かに基づいて行われるものとすればよい。
【００３６】
その結果、その故障診断機能が停止中でないと判別するときは、多重通信線１２上に流れる診断委託フレームの受信を継続して、委託元ＥＣＵ１０ａ側のセンサ等３０からの入力信号データを読み込む（ステップ２０４）。そして、一次診断代行ＥＣＵ１０ｂ−１は、その診断ＩＤ−１に対応する故障診断に使用するプログラムを読み出して、そのプログラムに従って入力信号データに基づく特定の故障診断、具体的には、委託元ＥＣＵ１０ａ側のセンサ等３０に例えば信号途絶や信号固着などの故障が生じていないか否かの判定を実行する（ステップ２０６）。
【００３７】
一次診断代行ＥＣＵ１０ｂ−１は、故障診断を完了した場合、その診断結果（正常と故障とを区別するコード或いは未診断を示すコード）を自己の有するメモリに記憶する（ステップ２０８）。また、多重通信線１２上に流れた診断委託フレームから抽出した委託元ＥＣＵ１０ａの識別ＩＤを基にその委託元ＥＣＵ１０ａを特定して、少なくとも回答先として指定されたその委託元ＥＣＵ１０ａの識別ＩＤと故障診断結果とを含むデータフレーム（以下、診断結果回答フレームと称す）を、その故障診断結果が委託元ＥＣＵ１０ａへ回答されるように多重通信線１２上に送出する（ステップ２１０）。尚、診断代行ＥＣＵ１０ｂは、故障が生じていると判定するときにのみ、その故障に対応する異常コードをメモリに記憶し、委託元ＥＣＵ１０ａへ故障診断結果を回答することとしてもよい。
【００３８】
委託元ＥＣＵ１０ａは、ステップ１０２で一次診断代行ＥＣＵ１０ｂ−１にセンサ等３０の故障診断を委託すべく診断委託フレームを多重通信線１２上に送出した後に、その一次診断代行ＥＣＵ１０ｂ−１からの故障診断結果の回答を受けた場合、自ノード１０ａ側のセンサ等３０の故障診断の結果を認識する（ステップ１１０）。そして、故障が生じていないときは、通常どおりセンサ等３０から入力される信号データに基づいて自ノード１０における所定の制御を継続する一方、故障が生じているときは、その故障に対応する異常コードをメモリに記憶すると共に、通常の制御に代えてフェールセーフ処理（例えば、デフォルト値での制御継続）を実行する（ステップ１１２）。
【００３９】
一方、一次診断代行ＥＣＵ１０ｂ−１は、ステップ２００で肯定判定を行った後、ステップ２０２で委託元ＥＣＵ１０ａから委託された故障診断を行う機能が停止中であると判別するときは、次に、委託元ＥＣＵ１０ａからの診断委託フレームに含まれる診断ＩＤ−１が指定する実行すべき故障診断の内容と同一の故障診断の内容を指定すると共に、かつ、その故障診断の次の委託先として指定すべき二次診断代行ＥＣＵ１０ｂ−２を特定する診断ＩＤ−２を生成する（ステップ２１２）。この特定される二次診断代行ＥＣＵ１０ｂ−２は、一次診断代行ＥＣＵ１０ｂ−１とは異なるノードである。そして、自ノード１０ｂ−１が故障診断不能である旨を委託元ＥＣＵ１０ａへ通知し、かつ、センサ等３０の故障診断の委託を自ノード１０ｂ−１から二次診断代行ＥＣＵ１０ｂ−２へ切り替えるように委託元ＥＣＵ１０ａへ要求すべく、その診断ＩＤ−２と委託元ＥＣＵ１０ａの識別ＩＤとを含んだデータフレームを多重通信線１２上に送出する（ステップ２１４）。
【００４０】
委託元ＥＣＵ１０ａは、ステップ１０２で一次診断代行ＥＣＵ１０ｂ−１にセンサ等３０の故障診断を委託すべく診断委託フレームを多重通信線１２上に送出した後に、その一次診断代行ＥＣＵ１０ｂ−１からの故障診断不能通知を受けた場合、まず、センサ等３０の故障診断を次に委託すべき委託先の診断代行ＥＣＵ１０を、その故障診断不能と共に通知された次の委託先として指定すべき二次診断代行ＥＣＵ１０ｂ−２に設定する（ステップ１２０）。そして、一次診断代行ＥＣＵ１０ｂ−１に代えてその二次診断代行ＥＣＵ１０ｂ−２を特定する診断ＩＤ−２を自ノード１０ａの識別ＩＤとステップ１００で入力された信号データと共に含む診断委託フレームを新たに多重通信線１２上に送出する（ステップ１２２）。
【００４１】
多重通信線１２上の各ノード１０はそれぞれ、多重通信線１２上に流れる診断委託フレームをＳＯＦから順に受信し、まず、その診断委託フレーム中の診断ＩＤ部分を読み込む。そして、その読み込んだ診断ＩＤと同一の診断ＩＤが、予め自ノード１０に格納されている自ノード１０の実行可能な故障診断の診断ＩＤに含まれるか否かを判別する（ステップ３００）。委託元ＥＣＵ１０ａが上記の如く故障診断の委託先として二次診断代行ＥＣＵ１０ｂ−２を指定する診断ＩＤ−２を含む診断委託フレームを多重通信線１２上へ送出すると、その診断委託フレームに対して二次診断代行ＥＣＵ１０ｂ−２のみがステップ３００で肯定判定を行う。
【００４２】
以後、二次診断代行ＥＣＵ１０ｂ−２は、上記したステップ２０２〜２１４と同様の処理を実行すると共に、委託元ＥＣＵ１０ａは、上記したステップ１１０，１１２，１２０，１２２と同様の処理を実行する。そして、二次診断代行ＥＣＵ１０ｂ−２から故障診断の次の委託先として指定される三次診断代行ＥＣＵ１０ｂ−３を始め多次の診断代行ＥＣＵ１０ｂ−ｎ（ｎ＝３，４，５，・・・）も、同様にステップ２０２〜２１４の処理を実行する。但し、故障診断の委託先として指定される診断代行ＥＣＵ１０ｂは、その診断代行の次数よりも小さい次数の診断代行ＥＣＵ１０ｂとは異なるノードであり、例えば一次診断代行ＥＣＵ１０ｂ−１と四次診断代行ＥＣＵ１０ｂ−４とが重複した同一のノードであることはない。
【００４３】
尚、委託元ＥＣＵ１０ａから故障診断を委託された診断代行ＥＣＵ１０ｂは、その故障診断の次の委託先として指定すべき診断代行ＥＣＵ１０ｂを設定していないときは、上記ステップ２１２，２１４の処理に代えて、次に委託先として指定すべきノード１０が存在しないことを含めて故障診断不能の旨を委託元ＥＣＵ１０ａへ通知すべく、その情報と委託元ＥＣＵ１０ａの識別ＩＤとを含むデータフレームを多重通信線１２上に送出する。そして、委託元ＥＣＵ１０ａは、診断代行ＥＣＵ１０ｂにセンサ等３０の故障診断を委託すべく診断委託フレームを多重通信線１２上に送出した後に、その診断代行ＥＣＵ１０ｂから、次に委託先として指定すべきノード１０が存在しないことを含む故障診断不能通知を受けた場合には、診断ＩＤを代えた新たな診断委託フレームの送出を禁止して、他ノード１０への故障診断委託を中止する。
【００４４】
このように、本実施例のシステムにおいては、委託元ＥＣＵ１０ａ側のセンサ等３０に故障が生じているか否かの故障診断の実行を、その委託元ＥＣＵ１０ａから多重通信線１２上の他ノード１０へ委託することができる。そして、委託元ＥＣＵ１０ａから多重通信線１２を通じて診断委託フレームを受信した診断代行ＥＣＵ１０ｂは、自ノード１０がその診断委託フレーム内に含まれる診断ＩＤに対応する故障診断を実行できる機能を有すると共にかつその故障診断機能が停止中でなければ、その委託元ＥＣＵ１０ａ側のセンサ等３０の故障診断を実行する。
【００４５】
かかる構成においては、センサ等３０の故障診断を、そのセンサ出力等が入力されるノード１０自身が行うのではなく、多重通信線１２上の他ノード１０が行うので、そのセンサ出力等が入力されるノード１０に予めその故障診断を行わせるための機能を設けることは不要である。このため、特にＥＣＵ機能を兼ね備えたセンサやアクチュエータなどのノード１０についてはその構造を簡素に維持してその小型化及び低コスト化を確保しつつ、そのノード１０に出力信号データが入力されるセンサ等３０の故障診断を確実に実行することが可能となっている。
【００４６】
また、本実施例において、ノード１０間を接続する多重通信線１２は、特定の委託元ＥＣＵ１０ａと診断代行ＥＣＵ１０ｂとを接続する専用の通信線ではなく、複数のノード１０がそれぞれ時分割多重で信号データを送出できる共有バスである。このため、センサ等３０から入力された信号データを委託元ＥＣＵ１０ａから診断代行ＥＣＵ１０ｂへ転送するための専用通信線、並びに、その専用通信線を通じた転送を可能とするためのノード１０内の送信機構及び受信機構を個別に設けることは不要であるので、委託元ＥＣＵ１０ａから診断代行ＥＣＵ１０ｂへセンサ等３０の故障診断を委託するシステムを簡素かつ安価に更にノード搭載位置の自由度を損なうことなく実現することが可能となっている。
【００４７】
更に、本実施例においては、診断代行ＥＣＵ１０ｂでセンサ等３０に故障が生じていると診断されると、その診断結果が異常コードとして診断代行ＥＣＵ１０ｂに記憶され或いは委託元ＥＣＵ１０ａに回答されて記憶されると共に、委託元ＥＣＵ１０ａで通常の制御とは異なるフェールセーフ処理が実行される。このため、センサ等３０の故障診断後に故障の生じたセンサ等３０の交換や修理を促すことができると共に、委託元ＥＣＵ１０ａで故障が生じているセンサ等３０の信号データに基づいて通常の制御が実行され続けることによる不都合を回避することが可能となっている。
【００４８】
また、本実施例のシステムにおいては、委託元ＥＣＵ１０ａから多重通信線１２上の他ノード１０へ故障診断が委託された場合にも、その委託先の故障診断ノード１０ｂが機能停止によりその故障診断を行うことができないときは、別の他ノード１０へその故障診断の再委託を行うことができ、委託先の故障診断ノード１０ｂが故障診断不能であるごとに故障診断の診断権を一次診断代行ＥＣＵ１０ｂ−１から順に譲渡することが可能となる。従って、委託元ＥＣＵ１０ａ側のセンサ等３０の故障診断を確実に履行させることが可能となっている。
【００４９】
ここで、本実施例のシステムにおいて、上記した故障診断の再委託は、委託元ＥＣＵ１０ａが一旦予め定められている一次診断代行ＥＣＵ１０ｂ−１に委託した後、その委託先の診断代行ＥＣＵ１０ｂから診断不能の旨と共に通知される次に委託先として指定すべきであると特定されたノードに対して行われる。かかる構成において、委託元ＥＣＵ１０ａは、故障診断の委託を行ううえで、最初に診断を委託すべき一次診断代行ＥＣＵ１０ｂ−１の情報のみを記憶しているだけで十分であり、また、一次診断代行ＥＣＵ１０ｂ−１は二次診断代行ＥＣＵ１０ｂ−２の情報のみを記憶しているだけで十分であるので、委託元ＥＣＵ１０ａが委託した委託先の診断代行ＥＣＵ１０ｂが仮に診断不能であるときにも、その診断不能の診断代行ＥＣＵ１０ｂから通知された次に委託先として指定すべきであると特定されたノードに再委託が行われるので、委託元ＥＣＵ１０ａが再委託先の診断代行ＥＣＵ１０ｂの情報や複数の診断代行ＥＣＵ１０ｂの委託順などを記憶しておくことは不要であり、また、診断代行ＥＣＵ１０ｂが次に診断の委託先として指定すべき診断代行ＥＣＵ１０ｂの情報を複数記憶しておくことは不要である。従って、本実施例によれば、委託元ＥＣＵ１０ａのセンサ等３０の故障診断を確実に履行させるためのバックアップについて、委託元ＥＣＵ１０ａなどに予め多くの診断代行ＥＣＵ１０ｂの情報を格納させておくことなく、高い拡張性を確保しつつ実現することが可能となっている。
【００５０】
尚、上記の如く、委託元ＥＣＵ１０ａから故障診断を委託された診断代行ＥＣＵ１０ｂ−ｍ（一次診断代行ＥＣＵ１０ｂ−１を始めとする診断代行ＥＣＵ１０ｂ；ｍ＝１〜ｎ）は、その故障診断を機能停止により実行することができない状況において、次に委託先として指定すべき診断代行ＥＣＵ１０ｂ−（ｍ＋１）が設定されていないときは、故障診断不能の旨と共に次の委託先として指定すべきノード１０が存在しない旨を委託元ＥＣＵ１０ａへ通知すると共に、委託元ＥＣＵ１０ａは、診断ＩＤを代えた新たな診断委託フレームの送出を禁止して、他ノード１０への故障診断委託を中止する。従って、本実施例のシステムによれば、委託元ＥＣＵ１０ａ側のセンサ等３０の故障診断を実行可能なノード１０が一切存在しないときに、その委託元ＥＣＵ１０ａからの無駄な委託が継続するのを回避することが可能である。
【００５１】
ところで、上記の実施例においては、委託元ＥＣＵ１０ａが特許請求の範囲に記載した「信号入力ノード」に、診断代行ＥＣＵ１０ｂが特許請求の範囲に記載した「診断代行ノード」に、センサ等３０が特許請求の範囲に記載した「信号出力手段」に、それぞれ相当している。
【００５２】
また、委託元ＥＣＵ１０ａが、図４に示すルーチン中ステップ１０２，１２２の処理を実行することにより特許請求の範囲に記載した「診断委託フレーム送出手段」が、ステップ１２０の処理を実行することにより特許請求の範囲に記載した「委託先変更手段」が、それぞれ実現されている。更に、診断代行ＥＣＵ１０ｂが、ステップ２００，２０２の処理を実行することにより特許請求の範囲に記載した「診断実行可否判別手段」が、ステップ２０６の処理を実行することにより特許請求の範囲に記載した「代行診断実行手段」が、ステップ２１４の処理を実行することにより特許請求の範囲に記載した「診断不能通知手段」が、それぞれ実現されている。
【００５３】
尚、上記の実施例においては、委託元ＥＣＵ１０ａが自ノード１０に出力信号が入力されるセンサ等３０の故障診断を多重通信線１２上の他のノード１０に委託することとしているが、更に、委託元ＥＣＵ１０ａ自身が自ノード１０に出力信号が入力されるセンサ等３０の故障診断を実行することとしてもよい。かかる構成においては、委託元ＥＣＵ１０ａが自ノード１０の故障等によりセンサ等３０の故障診断を実行することが困難となっても、その故障診断を他ノード１０に委託して実行することが可能となるので、委託元ＥＣＵ１０ａに接続するセンサ等３０の故障診断の実行を確保することが可能となる。そして、その故障診断の結果が正常であれば、そのセンサ等３０の出力信号をシステム全体として利用することができるので、車両における制御を継続することが可能となる。
【００５４】
また、委託元ＥＣＵ１０ａ自身がセンサ等３０の故障診断を実行可能である構成においては、委託元ＥＣＵ１０ａ自身による故障診断の結果と診断代行ＥＣＵ１０ｂによる故障診断の結果とを比較することにより、委託元ＥＣＵ１０ａ自身に故障等による不調の有無を検知することが可能である。
【００５５】
また、上記の実施例においては、診断システムを、ノード１０に接続し或いは内蔵されるセンサ等３０の故障を診断するシステムとしたが、本発明はこれに限定されるものではなく、ノード１０に格納されるテストプログラム自体やそのテストプログラムによる実行結果等の異常有無を診断するものであってもよい。
【００５６】
更に、上記の実施例においては、診断システムを、自動車の有する各種の電子制御ユニットを多重通信線１２を介して接続させたものとしたが、本発明はこれに限定されるものではなく、自動車以外に搭載されて、複数のノードを多重通信線１２を介して接続させたものとしてもよい。
【図面の簡単な説明】
【００５７】
【図１】本発明の一実施例であるシステムの構成図である。
【図２】本実施例のシステムを構成するノードの具体的な構成図である。
【図３】同図（Ａ）は本実施例のシステムにおいて診断を委託元ＥＣＵからその診断が困難な一次診断代行ＥＣＵへ委託した場合における各ノード間での信号授受を、また、同図（Ｂ）は一次診断代行ＥＣＵでの診断が困難なときに診断を委託元ＥＣＵからその診断が可能な二次診断代行ＥＣＵへ再委託した場合における各ノード間での信号授受を、それぞれ示す。
【図４】本実施例のシステムにおいて実行される一例の制御手順を示す図である。
【符号の説明】
【００５８】
１０  ノード
１０ａ  委託元ＥＣＵ
１０ｂ  診断代行ＥＣＵ
１０ｂ−１  一次診断代行ＥＣＵ
１０ｂ−２  二次診断代行ＥＣＵ
１２  多重通信線
【図１】
2006279498.tif 000003
【図２】
2006279498.tif 000004
【図３】
2006279498.tif 000005
【図４】
2006279498.tif 000006