(57)【特許請求の範囲】
【請求項１】
第１のバスと第１チャネルを介して接続された第１の通信装置と、
前記第１のバスと第２チャネルを介して接続され、第２のバスと第３チャネルを介して接続され第２の通信装置と、を有する通信制御装置であって、
前記第１の通信装置が受信したデータのデータ識別子に、該データが受信された前記第１チャネルの識別情報を付加する第１の識別情報付加手段と、
前記第２の通信装置が受信したデータのデータ識別子に、該データが受信された前記第２チャネル又は前記第３チャネルの識別情報を付加する第２の識別情報付加手段と、
前記第１の通信装置が受信し前記識別情報が付加されたデータ識別子と、前記第２の通信装置が受信し前記識別情報が付加されたデータ識別子とを比較して、保存するデータを選択するデータ選択手段と、
前記データ選択手段が選択したデータのデータ識別子から付加された前記識別情報を除去する除去手段と、
を有することを特徴とする通信制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、冗長構成を備えた通信制御装置に関する。
【背景技術】
【０００２】
車両にはエンジンや各種のモータなどを制御する多くの電子制御装置が搭載されている。各電子制御装置は互いに通信してシステムとして作動したり、互いに協調制御する。このため、各電子制御装置は通信専用の通信コントローラを備えており、各電子制御装置の通信コントローラがバスに接続されることで車載ネットワークが構築されている。
【０００３】
そして、この電子制御装置間の通信に冗長構成を設けることで信頼性を高めることができることが知られている（例えば、特許文献１参照。）。特許文献１には、一台の電子制御装置に２つの通信コントローラが搭載され、一方が高優先度バスに、他方が低優先度バスに接続されたＣＡＮシステムが開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１−１８２２５８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、冗長構成の方法として、１台の電子制御装置が２つの通信コントローラを有するだけでなく、１つの通信コントローラが２本の信号線でバスと接続される場合がある。
【０００６】
図１は、従来の電子制御装置の通信ネットワークの構成例を示す図である。ＥＣＵ（Electronic Control Unit）＿ＡのマイコンはＣＡＮコントローラ１とＣＡＮコントローラ２を有し、ＣＡＮコントローラ１はＣＡＮバスＡに接続され、ＣＡＮコントローラ２はＣＡＮバスＡとＢに接続されている。すなわち、冗長構成のため、ＣＡＮバスＡはＣＡＮコントローラ１と２に接続されている。これにより、マイコンは、ＣＡＮバスＡのＣＡＮメッセージをＣＡＮコントローラ１と２の両方から受信して、ＣＡＮメッセージのデータ化けなどの不具合を検出し、信頼性を向上できる。マイコンが実行するソフトウェアは、この二重化機能をＯＮ／ＯＦＦすることができる。
【０００７】
しかしながら、このような冗長構成では、二重化機能が故障した場合にＣＡＮメッセージの上書きが発生するという問題があった。
【０００８】
図１（ｂ）を用いて説明する。二重化機能がＯＮの場合、ＣＡＮコントローラ２は、２つのバスからＣＡＮメッセージが受信されることを前提とするので、ＣＡＮバスＡからＣＡＮメッセージを受信したのか、ＣＡＮバスＢからＣＡＮメッセージを受信したのかを判別できる。
【０００９】
また、二重化機能がＯＦＦの場合、ＣＡＮコントローラ２はＣＡＮバスＡからＣＡＮメッセージを受信することはない。
【００１０】
しかし、二重化機能のＯＮ／ＯＦＦ機能が故障した場合、ＯＦＦ状態から意図せずにＯＮになる場合がある。この場合、ＣＡＮコントローラ２は二重化機能がＯＦＦであると認識しているが、受信バッファにＣＡＮバスＡから送信されたＣＡＮメッセージが書き込まれる。ＣＡＮコントローラ２はどちらのバスからＣＡＮメッセージを受信したか不明か又はＣＡＮバスＢから受信したと判断するが、ＣＡＮメッセージが受信されるだけで不都合は少ない。
【００１１】
ところが、ＣＡＮコントローラ２が同時期に又は前後してＣＡＮバスＡ，Ｂから同じＣＡＮＩＤのＣＡＮメッセージを受信した場合、ＣＡＮＩＤが同じＣＡＮメッセージが同じ受信バッファに記憶されるなどして、ＣＡＮコントローラ２で意図しないメッセージの上書きが発生してしまう。
【００１２】
図の例では、ＥＣＵ＿Ｂが送信するメッセージＡとＥＣＵ＿Ｃが送信するメッセージＢのＣＡＮＩＤが同じ場合、ＣＡＮコントローラ２が受信するはずのメッセージＢが、メッセージＡに置き換わるおそれがある。
【００１３】
メーカなどがＣＡＮバスＡとＣＡＮバスＢとで重複するＣＡＮＩＤを使用しなければよいが、車両では益々ＣＡＮメッセージの種類が増えＣＡＮＩＤが枯渇しているため、重複しないＣＡＮＩＤを使用することは困難になっている。
【００１４】
本発明は、上記課題に鑑み、複数のバスに接続されていても同一の識別情報のメッセージの適切に処理可能な通信制御装置を提供することを目的とする。
【課題を解決するための手段】
【００１５】
本発明は、第１のバスと第１チャネルを介して接続された第１の通信装置と、前記第１のバスと第２チャネルを介して接続され、第２のバスと第３チャネルを介して接続され第２の通信装置と、を有する通信制御装置であって、前記第１の通信装置が受信したデータのデータ識別子に、該データが受信された前記第１のチャネルの識別情報を付加する第１の識別情報付加手段と、前記第２の通信装置が受信したデータのデータ識別子に、該データが受信された前記第２又は前記第３のチャネルの識別情報を付加する第２の識別情報付加手段と、前記第１の通信装置が受信し前記識別情報が付加されたデータ識別子と、前記第２の通信装置が受信し前記識別情報が付加されたデータ識別子とを比較して、保存するデータを選択するデータ選択手段と、前記データ選択手段が選択したデータのデータ識別子から付加された前記識別情報を除去する除去手段と、を有することを特徴とする。
【発明の効果】
【００１６】
複数のバスに接続されていても同一の識別情報のメッセージの適切に処理可能な通信制御装置を提供することができる。
【図面の簡単な説明】
【００１７】
【図１】従来の電子制御装置の通信ネットワークの構成例を示す図である。
【図２】本実施形態のＥＣＵ及び車載ネットワークの概略構成図の一例である。
【図３】ＥＣＵ＿ＡがＣＡＮメッセージを送信する手順を示すフローチャート図の一例である。
【図４】ＥＣＵ＿ＡがＣＡＮメッセージを受信する手順を示すフローチャート図の一例である。
【発明を実施するための形態】
【００１８】
以下、本発明を実施するための形態について図面を参照しながら説明する。
【００１９】
〔本実施形態の通信制御装置の概略動作〕
図２は、本実施形態のＥＣＵ及び車載ネットワークの概略構成図の一例を示す。本実施形態のＥＣＵ（Electronic Control Unit）の概略的な特徴は以下のとおりである。
【００２０】
本実施形態のＣＡＮコントローラ１、２は、ＣＡＮＩＤの拡張フォーマットを使用して、受信したＣＡＮメッセージの拡張部分にＣＡＮメッセージが受信されたＥＣＵのチェネルデータ（チャネルの識別情報）を追加する。例えば、ＥＣＵ＿ＢとＥＣＵ＿ＣがＣＡＮＩＤ１２３４のＣＡＮメッセージを送信した場合、ＣＡＮコントローラ１，２は受信時に次のようにＣＡＮＩＤを拡張する。
ＥＣＵ＿Ｂが送信したＣＡＮメッセージＸ：ＣＡＮＩＤ１２３４＋ＣＨ１
ＥＣＵ＿Ｂが送信したＣＡＮメッセージＹ：ＣＡＮＩＤ１２３４＋ＣＨ２
ＥＣＵ＿Ｃが送信したＣＡＮメッセージＺ：ＣＡＮＩＤ１２３４＋ＣＨ３
拡張フォーマットのＣＡＮＩＤが２９ビットであるとすると、２９ビット全体ではＣＡＮＩＤが異なるので、ＣＡＮコントローラ２はＣＡＮメッセージＹ，Ｚを別に扱うため、上書きが発生することを防止できる。
【００２１】
〔冗長化されたＣＡＮコントローラ１，２の動作〕
次に、図２を用いて、本来の目的である冗長化されたＣＡＮコントローラ１，２の動作について説明する。なお、ＥＣＵ１００を区別する場合、ＥＣＵ＿Ａ〜Ｃと称する。ＣＡＮＩＤ変換機２２をＣＡＮＩＤ変換機Ｃ、ＣＡＮＩＤ変換機２６をＣＡＮＩＤ変換機Ａ、ＣＡＮＩＤ変換機２７をＣＡＮＩＤ変換機Ｂ、と称する。ＣＡＮコントローラ２４をＣＡＮコントローラ１と、ＣＡＮコントローラ２５をＣＡＮコントローラ２と称する。ＣＡＮバス１３をＣＡＮバスＡと、ＣＡＮバス１４をＣＡＮバスＢと称する。
【００２２】
ＥＣＵ＿ＢがＣＡＮＩＤ１２３４のＣＡＮメッセージＡを送信した場合、ＣＡＮコントローラ１，２はどちらもＣＡＮメッセージＡを受信する。同様に、ＣＡＮコントローラ１，２はチャネルデータを追加する。
Ｘ．ＣＡＮコントローラ１：ＣＡＮＩＤ１２３４＋ＣＨ１
Ｙ．ＣＡＮコントローラ２：ＣＡＮＩＤ１２３４＋ＣＨ２
また、ＥＣＵ＿ＣがＣＡＮ１２３４のＣＡＮメッセージＢを送信する場合があるため、同様に、ＣＡＮコントローラ２はＣＡＮメッセージＢにチャネルデータを追加する。
Ｚ．ＣＡＮコントローラ２：ＣＡＮＩＤ１２３４＋ＣＨ３
このうち、必要なデータはＸorＹ及びＺである。冗長化はそもそも同じデータを受信した場合は、データの信頼性が高いと判断する手法なので、データが一致するか否かを判断すればよい。
【００２３】
ＣＡＮＩＤ比較機２３は、まず、ＣＡＮコントローラ１、２の拡張されたＣＡＮＩＤのうち、拡張部分を除くＣＡＮＩＤ（以下、元の１１ビットをオリジナル部分という）が一致するか否かを判定する。ＸとＹを比較するとＣＡＮＩＤは一致するので、Ｘ又はＹのＣＡＮメッセージは保存される。これにより信号線を冗長化して同じＣＡＮメッセージをＣＡＮコントローラ１と２が受信する効果が得られる。オリジナル部分が一致しない場合は、両方のＣＡＮメッセージは破棄される。以下では、ＸのＣＡＮメッセージは保存されるとして説明する。
【００２４】
ただし、ＸとＺは共に必要なメッセージ（ＥＣＵ＿Ａが処理すべきメッセージ）なので、ＣＡＮＩＤ比較機２３は、拡張部分のＥＣＵのチャネルデータを比較して、一致しない場合は、ＸとＺのオリジナル部分を比較せずに両方を保存対象とする。または、オリジナル部分を比較して一致してもしなくても拡張部分のチェネルデータが一致しない場合は、両方を保存対象とする。これにより、ＣＡＮコントローラ２はＣＡＮバスＢから送信されたＣＡＮメッセージを受信できる。
【００２５】
〔構成例〕
図２を用いてＥＣＵ及び車載ネットワークの構成について説明する。ＥＣＵ＿ＡはＣＡＮバスＡ及びＢに接続され、ＥＣＵ＿ＢはＣＡＮバスＡに接続され、ＥＣＵ＿ＣはＣＡＮバスＢに接続されている。接続例は一例に過ぎず、ＥＣＵ＿Ｂ、Ｃが共にＣＡＮバスＡ及びＢに接続されていてもよい。
【００２６】
図ではＥＣＵ＿Ａについてのみ示しているが、ＥＣＵ＿Ａ〜ＥＣＵ＿Ｃの主要な構成は共通とする。本実施形態ではＥＣＵ＿Ａ〜ＥＣＵ＿Ｃの具体的な機能に制限はないが、例えば、エンジンＥＣＵ、ＨＶ（hybrid）-ＥＣＵ、ブレーキＥＣＵ、トランスミッションＥＣＵ、ゲートウェイ、ボディＥＣＵ、ナビ制御用ＥＣＵ、電動パワステＥＣＵ、照合ＥＣＵ、エアコンＥＣＵ、前照灯ＥＣＵ、カメラＥＣＵ、障害物検知用のＥＣＵなどがある。
【００２７】
ＥＣＵ＿Ａはマイコン１２を有しており、マイコン１２はＥＣＵ＿Ａに固有の制御を行うソフトウェア１１を実行する。マイコン１２は、ＣＡＮコントローラ１，２、不図示のＣＰＵ、ＲＡＭ、ＲＯＭ、ＤＡＭＣ、Ｉ２Ｃ、ＳＰＩ、及び、ＵＡＲＴなどを有している。また、ＲＡＭの一部には、メッセージデータを記憶するためメッセージデータＲＡＭ２１の領域が確保されている。
【００２８】
ＣＡＮコントローラ１はＣＡＮバスＡにのみ接続され、ＣＡＮコントローラ２はＣＡＮバスＡとＢに接続されている。ＣＡＮコントローラ２がＣＡＮバスＢに接続されることで、冗長構成が可能になる。
【００２９】
ＣＡＮコントローラ１、２はＣＡＮプロトコルにしたがって他のＥＣＵと通信する通信コントローラである。ＣＡＮプロトコルについては公知のため詳細は省略するが、ＣＡＮプロトコルでは、１つのＣＡＮメッセージが、ＣＡＮＩＤ、データ、ＣＲＣ、ＡＣＫなどの各フィールドを有する。従来、ＣＡＮＩＤは１１ビットであったが（これを標準フォーマットという）、２９ビットに拡張されたフォーマット（これを拡張フォーマットという）の使用が検討されている。ＣＡＮコントローラ１、２は両方のフォーマットに対応しているため、ＣＡＮバスＡ、ＢにはＣＡＮＩＤが１１ビットのＣＡＮメッセージと、２９ビットのＣＡＮメッセージが混在して流れている。このうち、元もとのＣＡＮＩＤが２９ビットのＣＡＮメッセージはＣＡＮＩＤが重複するおそれがない。なお、拡張フォーマットは２９ビットである必要はなく、１１ビットよりも長ければよい。
【００３０】
ＣＡＮメッセージの送信時、ＣＡＮコントローラ１、２はＥＣＵ＿Ａが送信したことを示すＣＡＮＩＤを設定する。１つのＥＣＵには１つ以上のＣＡＮＩＤが割り当てられている。同一のバス上ではＣＡＮＩＤは重複しないように割り当てられる。
【００３１】
なお、ＣＡＮコントローラ１、２には、重複したＣＡＮＩＤが割り当てられてもよい。これにより、ＥＣＵ_ＡがＣＡＮメッセージを送信する際に、負荷分散や冗長化が可能になる。
ＣＡＮコントローラ１、２はＣＡＮＩＤに基づき受信するＣＡＮメッセージを判別する。ＥＣＵ＿Ａのように２つのＣＡＮコントローラ１、２を有する場合、ＣＡＮコントローラ毎に受信すべきＣＡＮＩＤが設定される。したがって、ＥＣＵ＿Ａが受信するＣＡＮＩＤとしては、
ＣＡＮコントローラ１のみが受信するＣＡＮＩＤ（ＣＡＮバスＡを流れている）
ＣＡＮコントローラ２のみが受信するＣＡＮＩＤ（ＣＡＮバスＡ又はＢを流れている）
ＣＡＮコントローラ１と２が受信するＣＡＮＩＤ（ＣＡＮバスＡを流れているＣＡＮメッセージの一部）
の３種類がある。
【００３２】
ＣＡＮコントローラ１と２が受信するＣＡＮＩＤのＣＡＮメッセージは高い信頼性が要求されるＣＡＮメッセージである。
【００３３】
なお、ＥＣＵ＿Ａは、ＣＡＮコントローラ１又は２の故障や、ＣＨ１又はＣＨ２の断線を検出した場合、ＣＡＮメッセージを送受信可能な経路に接続されたＣＡＮコントローラ（１又は２）を固定して送受信用に設定する。
【００３４】
ＣＡＮコントローラ１はＣＡＮＩＤ変換器Ａを有し、ＣＡＮコントローラ２はＣＡＮＩＤ変換器Ｂを有している。また、マイコン１２はＣＡＮＩＤ比較機２３とＣＡＮＩＤ変換器Ｃを有している。ＣＡＮＩＤ比較機２３とＣＡＮＩＤ変換器Ｃは、ＯＳ(Operating System)、ミドルウェア、ドライバソフトなどと呼ばれる通信制御用のプログラムをＣＰＵが実行することで実現される。または、ハードウェアとして実装されたＩＣでもよい。
・送信時
ＣＡＮＩＤ変換器Ａ又はＢの少なくとも一方は、１１ビットのＣＡＮＩＤを１１ビットから２９ビットに変換する。したがって、１８ビットを追加する。この１８ビットにはＣＡＮメッセージを送信するＥＣＵのチャネルデータ（チャネルの識別情報）を含める。
例  通常ＩＤ＝XXXXXXXXXXXX（１１ビット）
→変換後ＩＤ＝XXXXXXXXXXXX000000000000000010（２９ビット）  
なお、一部のＣＡＮメッセージを２９ビットに変換すればよいが、全てのＣＡＮメッセージを２９ビットに変換してもよい。
・受信時
ＣＡＮＩＤ変換器Ａ，Ｂは、ＣＡＮメッセージが受信されたＥＣＵのチャネルデータを追加する。
例  通常ＩＤ＝XXXXXXXXXXXX（１１ビット）
→変換後ＩＤ＝XXXXXXXXXXXX000000000000000011（２９ビット）
このような変換により、送信時には、ＥＣＵのどのＣＡＮコントローラがＣＡＮメッセージを送信したかが明らかになり、受信時にはどのチャネルからＣＡＮメッセージを受信したのかが明らかになる。
【００３５】
ＣＡＮＩＤ比較機２３の動作原理について説明する。この説明では、後述のフローチャート図とは手順が異なっている。ＣＡＮＩＤ比較機２３は、まず、オリジナル部分が、「ＣＡＮコントローラ１と２が受信するＣＡＮＩＤ」でない場合、比較が不要なのでＣＡＮＩＤ比較機２３は比較を行わない。また、ＣＡＮコントローラ２が受信したＣＡＮメッセージにおいて拡張部分がＣＨ３の場合、そのまま保存すべきなので、ＣＡＮＩＤ比較機２３は比較を行わない。
【００３６】
比較を行う場合、変換後ＩＤのうちオリジナル部分が一致するか否かを判定する。一致する場合は、冗長化のために２つのＣＡＮコントローラ１，２が受信したＣＡＮメッセージなので、ＣＡＮＩＤ比較機２３はＣＡＮコントローラ１，２のどちらかのＣＡＮメッセージをＣＡＮＩＤ変換器Ｃに出力する。
【００３７】
ＣＡＮＩＤが一致しない場合は、ノイズなどによりＣＡＮメッセージを正しく受信できなかったおそれがあるので、ＣＡＮＩＤ比較機２３は両方のＣＡＮメッセージを破棄する。
【００３８】
ＣＡＮＩＤ変換器Ｃは、受信したＣＡＮメッセージの変換後ＩＤを元のＣＡＮＩＤに変換して、メッセージデータＲＡＭ２１に格納する。
例  変換後ＩＤ＝XXXXXXXXXXXX000000000000000010（２９ビット）  
→  通常ＩＤ＝XXXXXXXXXXXX（１１ビット）
これにより、マイコン１２が実行するソフトウェア１１はオリジナル部分に基づきＣＡＮメッセージを判別し、ＣＡＮメッセージに含まれるデータを使って必要な処理を行うことができる。すなわち、ソフトウェア１１の変更を最小限に抑制できる。
【００３９】
〔動作手順〕
図３は、ＥＣＵ＿ＡがＣＡＮメッセージを送信する手順を示すフローチャート図の一例である。
Ｓ１０：ソフトウェア１１はメッセージを送信要求する。具体的には、データの内容に応じた不図示の通信モジュール又はＣＡＮＩＤを指定するなどしてメッセージデータＲＡＭ２１にＣＡＮメッセージを格納する。
Ｓ２０：ＣＡＮコントローラ１のＣＡＮＩＤ変換機ＡはＣＡＮＩＤを変更する必要があるか否かを判定する。すなわち、メッセージデータＲＡＭ２１にＣＡＮメッセージが格納されたことを検出するか、又は、ＣＰＵからの指示を受けて、古い順にメッセージデータＲＡＭ２１からメッセージデータを読み出す。そして、２９ビットに変換すべきＣＡＮＩＤか否かを判定する。例えば、ＣＡＮＩＤの１１ビット部分がすでにＣＡＮバスＡとは異なるバスで使用されている場合、２９ビットに変換する。また、ＣＡＮコントローラ１と２のどちらが送信したかを送信相手のＥＣＵに通知すべき場合は２９ビットに変換する。
Ｓ３０：ＣＡＮＩＤの変更が必要なＣＡＮＩＤでない場合、ＣＡＮＩＤ変換機ＡはＣＡＮＩＤを変換せず、ＣＡＮコントローラ１はＣＡＮメッセージを送信する。
Ｓ４０：ＣＡＮＩＤの変更が必要なＣＡＮＩＤの場合、ＣＡＮＩＤ変換機Ａは１１ビットのＣＡＮＩＤに、ＥＣＵのチャネルデータを追加して２９ビットの変換後ＩＤに変換する。
Ｓ５０：ＣＡＮコントローラ１は変換後ＩＤを設定してＣＡＮメッセージを送信する。
【００４０】
こうすることで、送信相手のＥＣＵは、送信元のチャネルデータを判別したり（ＣＡＮコントローラも判別可能）、重複しない拡張されたＣＡＮＩＤのＣＡＮメッセージを受信できる。また、ＥＣＵの誤り通信を発見できる（送信元のＣＡＮコントローラが分かるので誤送信したＣＡＮコントローラ又は異常のあるＣＡＮコントローラを他のＥＣＵが発見できる）。
【００４１】
図４は、ＥＣＵ＿ＡがＣＡＮメッセージを受信する手順を示すフローチャート図の一例である。
Ｓ１１０：ＣＡＮコントローラ１と２がＣＡＮメッセージを受信する。ＣＡＮコントローラ１と２のどちらか一方だけが受信する場合もある。
Ｓ１２０：ＣＡＮＩＤ変換機ＡとＢは、ＣＡＮＩＤを比較すべきメッセージか否かを判定する。すなわち、「ＣＡＮコントローラ１と２が受信するＣＡＮＩＤ」か否かを判定する。
Ｓ１３０：ＣＡＮＩＤを比較すべきメッセージでない場合、ＣＡＮＩＤ変換器Ａ又はＢ（ＣＡＮメッセージを受信した方。比較すべきメッセージでないのでどちらかしか受信しない）が１１ビットのＣＡＮＩＤにＥＣＵのチャネルデータを追加して２９ビットに変換する。これにより、ＣＡＮＩＤ変換器Ｂが変換した場合は、上書きが発生することを防止できる。
Ｓ１４０、１５０：ＣＡＮＩＤを比較すべきメッセージの場合、ＣＡＮＩＤ変換器ＡとＢ（両方が受信するはずなので）が、１１ビットのＣＡＮＩＤにＥＣＵのチャネルデータを追加して２９ビットに変換する。ＣＡＮＩＤ変換器Ｂが変換した場合は、上書きが発生することを防止できる。
Ｓ１６０：ＣＡＮＩＤ比較機２３は、ＣＡＮコントローラ１と２がそれぞれ受信したＣＡＮメッセージの変換後ＩＤのうちオリジナル部分が一致するか否かを判定する。
Ｓ１７０：オリジナル部分が一致する場合、ＣＡＮコントローラ１、２の冗長化によるＣＡＮメッセージ、又は、ＣＡＮバスＡとＢで重複するＣＡＮＩＤのＣＡＮメッセージが受信されたことになるので、ＣＡＮＩＤ変換器Ｃが拡張部分を取り除くことでＣＡＮＩＤを変換する。すなわち、拡張部分がＣＨ１とＣＨ２であれば一方を破棄してＣＡＮＩＤを変換する。拡張部分がＣＨ１とＣＨ３であれば両方のＣＡＮＩＤを変換する。
Ｓ１８０：オリジナル部分が一致しない場合、ＣＡＮＩＤ比較機２３はＣＡＮＩＤの比較が必要なＣＡＮメッセージか否かを判定する。すなわち、オリジナル部分が一致しないので、冗長化された２つのＣＡＮメッセージにノイズが含まれたのか、一方のＣＡＮメッセージがＣＡＮバスＢから送信されたＣＡＮメッセージが受信されたのかを判断する。このため、コントローラ２が受信したＣＡＮメッセージのＣＡＮＩＤの拡張部分に、ＣＨ２が追加されているか否かを判定する。または、コントローラ２が受信したＣＡＮメッセージのＣＡＮＩＤの拡張部分に、ＣＨ３が追加されているか否かを判定してもよい。
Ｓ１９０：ＣＡＮＩＤの比較が必要なＣＡＮメッセージであった場合（拡張部分に、ＣＨ２が追加されている冗長化されたＣＡＮメッセージの場合）、オリジナル部分にノイズが含まれているのでＣＡＮＩＤ比較機２３はＣＡＮメッセージを破棄する。また、その旨をＣＡＮコントローラ１又は２に通知し、ＣＡＮコントローラ１又は２が送信元のＥＣＵにエラー発生を通知する。
Ｓ１７０：ＣＡＮＩＤの比較が必要なＣＡＮメッセージでなかった場合（拡張部分にＣＨ３が追加されていた場合）、ＣＡＮバスＢから受信したＣＡＮメッセージなので、ＣＡＮＩＤ変換器ＣがＣＡＮＩＤを変換する。
Ｓ２００：ＣＡＮＩＤ変換機Ｃは、ＣＡＮＩＤが変換され１１ビットになったＣＡＮメッセージをメッセージデータＲＡＭ２１に保存する。
【００４２】
以上説明したように、本実施形態のＥＣＵは、ＣＡＮＩＤにＥＣＵのチャネルデータを追加することで、ＣＡＮコントローラが２つのＣＡＮバスに接続されている場合でも、同一ＣＡＮＩＤのＣＡＮメッセージが上書きされることを防止できる。冗長化により受信された２つのＣＡＮメッセージのオリジナル部分が一致しない場合、拡張部分に基づき受信すべきか破棄すべきかを判断できる。
【符号の説明】
【００４３】
１１    ソフトウェア
１２    マイコン
１３、１４  ＣＡＮバス
２２，２６，２７    ＣＡＮＩＤ変換機
２３    ＣＡＮＩＤ比較機
２４，２５  ＣＡＮコントローラ
１００    ＥＣＵ
【図１】
0006032174.tif 000002
【図２】
0006032174.tif 000003
【図３】
0006032174.tif 000004
【図４】
0006032174.tif 000005