(57)【要約】【課題】揮発性メモリに記憶されたデータの信頼性を適切に判断する【解決手段】車両制御システム１では、マスタＥＣＵ２が、トリップカウンタ値を、スレーブＥＣＵ３，５へ、ＩＧオン毎に配信する。またスレーブＥＣＵ３，５では、配信されたトリップカウンタ値を記憶するＳＲＡＭ３５，５５を備え、ＳＲＡＭ３５，５５に異常が発生したか否かを判断し、異常が発生した場合にＳＲＡＭ３５，５５を初期化する。また、ＳＲＡＭ３５，５５に記憶されたトリップカウンタ値をマスタＥＣＵ２へ送信する。さらにマスタＥＣＵ２では、スレーブＥＣＵ３，５から受信したトリップカウンタ値のうち、初期値になっているものがあり、且つ、スレーブＥＣＵ３，５から受信したトリップカウンタ値の全てが初期値になっているのではない場合に、トリップカウンタ値が初期値になっているスレーブＥＣＵのＳＲＡＭにおいて、メモリ異常が発生したと判断する。【選択図】図１
2011203082.tif 000002
【特許請求の範囲】
【請求項１】
車両に搭載された複数の電子制御装置がネットワークを介してデータ通信可能に接続され、前記複数の電子制御装置のうち主となる１つの電子制御装置であるマスタ装置が、前記複数の電子制御装置において共通に利用される情報である車両共通情報を、前記複数の電子制御装置のうち前記マスタ装置以外の電子制御装置であるスレーブ装置へ、予め設定された共通情報配信条件が成立する毎に、前記ネットワークを介して配信するように構成された車両通信システムであって、
前記スレーブ装置は、
前記マスタ装置から配信された前記車両共通情報を記憶する記憶媒体である共通情報記憶媒体と、
前記共通情報記憶媒体に異常が発生したか否かを判断する記憶異常判断手段と、
前記共通情報記憶媒体に異常が発生したと前記記憶異常判断手段が判断した場合に、前記共通情報記憶媒体を初期化する初期化手段と、
当該スレーブ装置が備える前記共通情報記憶媒体に記憶された前記車両共通情報を、前記マスタ装置へ送信するスレーブ側車両共通情報送信手段とを備え、
前記マスタ装置は、
前記スレーブ装置のうち、前記車両に搭載されたバッテリから給電されることでデータが維持される揮発性の前記共通情報記憶媒体を備えた前記スレーブ装置を揮発性記憶媒体付スレーブ装置とし、
前記複数の電子制御装置のうち予め設定された複数の前記揮発性記憶媒体付スレーブ装置の全てから前記車両共通情報を受信すると、前記複数の揮発性記憶媒体付スレーブ装置から受信した前記車両共通情報のうち、前記初期化手段により初期化された時の値である初期化初期値になっているものがあり、且つ、前記揮発性記憶媒体付スレーブ装置から受信した前記車両共通情報の全てが前記初期化初期値になっているのではない場合に、前記車両共通情報が前記初期化初期値になっている前記揮発性記憶媒体付スレーブ装置の前記共通情報記憶媒体において、前記車両の前記バッテリが脱着されたことに起因する異常であるバッテリ脱着異常とは別の異常が発生したと判断するバッテリ記憶媒体異常判断手段とを備える
ことを特徴とする車両通信システム。
【請求項２】
前記スレーブ装置のうち、不揮発性の前記共通情報記憶媒体を備えた前記スレーブ装置を不揮発性記憶媒体付スレーブ装置とし、
前記マスタ装置は、
前記不揮発性記憶媒体付スレーブ装置から前記車両共通情報を受信すると、受信した前記車両共通情報の値が、不揮発性の前記共通情報記憶媒体の出荷時の値として前記初期化初期値と異なるように予め設定された交換初期値である場合に、前記不揮発性記憶媒体付スレーブ装置が交換されたと判断する交換判断手段を備える
ことを特徴とする請求項１に記載の車両通信システム。
【請求項３】
前記マスタ装置は、
前記バッテリ脱着異常とは別の異常が発生したと前記バッテリ記憶媒体異常判断手段が判断した場合に、その旨を、前記別の異常の発生に対応した時刻を示す情報とともに記憶する異常履歴記憶手段を備える
ことを特徴とする請求項１または請求項２に記載の車両通信システム。
【請求項４】
請求項１〜請求項３の何れか１項に記載の車両通信システムにおける前記マスタ装置を構成可能な電子制御装置。
【請求項５】
請求項１〜請求項３の何れか１項に記載の車両通信システムにおける前記スレーブ装置を構成可能な電子制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両に搭載された複数の電子制御装置がネットワークを介してデータ通信可能に接続される車両通信システムに関する。
【背景技術】
【０００２】
従来、車両に搭載された電子制御装置（ＥＣＵ）において、車両に搭載されたバッテリから給電されることでデータが維持される揮発性メモリに異常が発生したか否かをミラーチェック等により判断し、揮発性メモリに異常が発生したと判断した場合には、この揮発性メモリに記憶されているデータを初期化するとともに、揮発性メモリを初期化したことを示す情報（以下、メモリ初期化コードともいう）を記憶するように構成されたものが知られている（例えば、特許文献１を参照）。
【０００３】
これにより、上記揮発性メモリに記憶されたデータの信頼性を、メモリ初期化コードが記憶されているか否かにより判断することができる。すなわち、メモリ初期化コードが記憶されている場合には、過去に異常が発生した揮発性メモリに記憶されたデータであるので、この記憶データの信頼性に疑問があるという判断をすることができる一方、メモリ初期化コードが記憶されていない場合には、過去に異常が発生していない揮発性メモリに記憶されたデータであるので、この記憶データは信頼性があるという判断をすることができる。
【０００４】
このため、例えば、車両の診断情報を上記揮発性メモリに記憶する場合に、メモリ初期化コードが記憶されているか否かにより、記憶された車両診断情報の信頼性を判断することができる。これにより、例えば、信頼性の低い車両診断情報に基づいて、実際には正常な車両部品を異常と判断して、その車両部品の交換を行ってしまうという状況の発生を抑制することができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平７−２０００７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記特許文献１に記載の技術では、ＩＧ電源のオンで起動する電子制御装置（ＥＣＵ）において、上記揮発性メモリに異常が発生したか否かをミラーチェックにより判断する場合には、ＩＧ電源のオフの間に車両搭載のバッテリが脱着されたときにも、ＩＧ電源のオン後に、上記揮発性メモリに異常が発生したと判断して、上記揮発性メモリを初期化し、メモリ初期化コードを記憶する。このため、メモリ初期化コードが記憶されていても、上記揮発性メモリの初期化の原因が、メモリ異常によるものであるのか、車両搭載バッテリの脱着によるものであるのかを判別することができない。なお、車両搭載バッテリの脱着が原因で初期化された場合には、初期化の原因がメモリ異常ではないので、この揮発性メモリに記憶されたデータは信頼性があると判断することができる。
【０００７】
これにより、車両搭載バッテリの脱着が原因で揮発性メモリが初期化された場合であっても、メモリ初期化コードが記憶されているときには、メモリ異常の発生の可能性を考慮する必要があり、揮発性メモリに記憶されたデータの信頼性を判断することができないという問題があった。
【０００８】
本発明は、こうした問題に鑑みてなされたものであり、車両に搭載された複数の電子制御装置がネットワークを介してデータ通信可能に接続される車両通信システムにおいて、揮発性メモリに記憶されたデータの信頼性を適切に判断することができる技術を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するためになされた請求項１に記載の車両通信システムは、車両に搭載された複数の電子制御装置がネットワークを介してデータ通信可能に接続されており、複数の電子制御装置のうち主となる１つの電子制御装置であるマスタ装置が、複数の電子制御装置において共通に利用される情報である車両共通情報を、複数の電子制御装置のうちマスタ装置以外の電子制御装置であるスレーブ装置へ、予め設定された共通情報配信条件が成立する毎に、ネットワークを介して配信する。
【００１０】
またスレーブ装置において、マスタ装置から配信された車両共通情報を記憶する記憶媒体である共通情報記憶媒体を備え、記憶異常判断手段が、共通情報記憶媒体に異常が発生したか否かを判断し、初期化手段が、共通情報記憶媒体に異常が発生したと記憶異常判断手段が判断した場合に、共通情報記憶媒体を初期化する。またスレーブ側車両共通情報送信手段が、当該スレーブ装置が備える共通情報記憶媒体に記憶された車両共通情報を、マスタ装置へ送信する。
【００１１】
さらにマスタ装置において、スレーブ装置のうち、車両に搭載されたバッテリから給電されることでデータが維持される揮発性の共通情報記憶媒体を備えたスレーブ装置を揮発性記憶媒体付スレーブ装置とし、バッテリ記憶媒体異常判断手段が、複数の電子制御装置のうち予め設定された複数の揮発性記憶媒体付スレーブ装置の全てから車両共通情報を受信すると、複数の揮発性記憶媒体付スレーブ装置から受信した車両共通情報のうち、初期化手段により初期化された時の値である初期化初期値になっているものがあり、且つ、揮発性記憶媒体付スレーブ装置から受信した車両共通情報の全てが初期化初期値になっているのではない場合に、車両共通情報が初期化初期値になっている揮発性記憶媒体付スレーブ装置の共通情報記憶媒体において、車両のバッテリが脱着されたことに起因する異常であるバッテリ脱着異常とは別の異常が発生したと判断する。
【００１２】
なお、車両のバッテリが車両から外されると、バッテリからの給電がなくなるため、車両のバッテリの脱着が行われることにより、車両に搭載された複数の電子制御装置のうち、バッテリから給電されることでデータが維持される揮発性の共通情報記憶媒体を備えたスレーブ装置（揮発性記憶媒体付スレーブ装置）の全てにおいて、記憶異常判断手段が共通情報記憶媒体に異常が発生したと判断し、初期化手段が、共通情報記憶媒体を初期化する。このため、揮発性記憶媒体付スレーブ装置の全てにおいて、車両共通情報が初期化初期値になる。換言すると、揮発性記憶媒体付スレーブ装置の全てで車両共通情報が初期化初期値になっているのではない場合に、車両共通情報が初期化初期値になっているスレーブ装置があるときには、そのスレーブ装置の共通情報記憶媒体において、バッテリ脱着異常とは別の異常が発生したと判断することができる。
【００１３】
従って、このように構成された車両通信システムによれば、車両共通情報が初期化初期値になった揮発性記憶媒体付スレーブ装置があるときに、バッテリ脱着異常と区別して、バッテリ脱着異常とは別の異常（以下、メモリ異常ともいう）が発生した揮発性記憶媒体付スレーブ装置を特定することができる。
【００１４】
これにより、車両共通情報が初期化初期値になった後に共通情報記憶媒体に記憶されたデータの信頼性を適切に判断することができる。具体的には、バッテリ脱着異常と判断された場合には、この共通情報記憶媒体に記憶されたデータは信頼性があると判断し、バッテリ脱着異常とは別の異常（メモリ異常）が発生したと判断された場合には、この共通情報記憶媒体に記憶されたデータは信頼性がないと判断することができる。
【００１５】
なお、上記の初期化初期値は、通常の車両の使用では現れ難い値とすることが望ましい。
また、請求項１に記載の車両通信システムでは、請求項２に記載のように、スレーブ装置のうち、不揮発性の共通情報記憶媒体を備えたスレーブ装置を不揮発性記憶媒体付スレーブ装置とし、マスタ装置において、交換判断手段が、不揮発性記憶媒体付スレーブ装置から車両共通情報を受信すると、受信した車両共通情報の値が、不揮発性の共通情報記憶媒体の出荷時の値として初期化初期値と異なるように予め設定された交換初期値である場合に、不揮発性記憶媒体付スレーブ装置が交換されたと判断するようにしてもよい。
【００１６】
このように構成された車両通信システムによれば、スレーブ装置に記憶された車両共通情報を利用して、スレーブ装置が交換されたか否かを判断することができる。
また、請求項１または請求項２に記載の車両通信システムでは、請求項３に記載のように、マスタ装置において、異常履歴記憶手段が、バッテリ脱着異常とは別の異常が発生したとバッテリ記憶媒体異常判断手段が判断した場合に、その旨を、別の異常の発生に対応した時刻を示す情報とともに記憶するようにしてもよい。
【００１７】
このように構成された車両通信システムによれば、バッテリ脱着異常とは別の異常（メモリ異常）の発生の時刻を特定することが可能になり、例えば、アフターサービスにおいて、複数のスレーブ装置でメモリ異常が発生した場合に、複数のスレーブ装置について時系列でメモリ異常の発生を把握することができるため、故障解析に有効である。
【００１８】
また、請求項４に記載のマスタ装置および請求項５に記載のスレーブ装置は、これらを組み合わせることにより、請求項１〜請求項３の何れか１項に記載の車両通信システムを構成することができるものであり、請求項１〜請求項３の何れか１項に記載の車両通信システムと同様の効果を得ることができる。
【図面の簡単な説明】
【００１９】
【図１】車両制御システム１の構成を示すブロック図である。
【図２】マスタ側初期化記憶処理を示すフローチャートである。
【図３】スレーブ側異常検出処理を示すフローチャートである。
【図４】初期化履歴記憶領域２５ｂの構成を示す図である。
【図５】車両制御システム１において行われる処理の流れを示すシーケンス図である。
【図６】メモリ異常が発生したときの動作を示すタイミングチャートである。
【図７】バッテリの脱着が行われたときの動作を示すタイミングチャートである。
【図８】スレーブＥＣＵが交換されたときの動作を示すタイミングチャートである。
【発明を実施するための形態】
【００２０】
以下に本発明の実施形態を図面とともに説明する。
図１は、本実施形態の車両制御システム１の構成を示すブロック図である。
車両制御システム１は、車両に搭載されており、図１に示すように、マスタ電子制御装置（以下、マスタＥＣＵという）２と、第１スレーブ電子制御装置（以下、第１スレーブＥＣＵという）３と、第２スレーブ電子制御装置（以下、第２スレーブＥＣＵという）４と、第３スレーブ電子制御装置（以下、第３スレーブＥＣＵという）５と、外部接続装置６と、車内ＬＡＮ７とから構成される。
【００２１】
まずマスタＥＣＵ２は、所定の処理プログラムに基づいて処理を実行するＣＰＵ２１と、種々の処理プログラムが格納されたＲＯＭ２２と、種々のデータを格納するＲＡＭ２３と、ＣＰＵ２１を車内ＬＡＮ７と接続する通信インターフェース（以下、通信Ｉ／Ｆという）２４と、電力が供給されない状態でも記憶されたデータを保持可能なＥＥＰＲＯＭ２５とから構成される。
【００２２】
また第１スレーブＥＣＵ３は、ＣＰＵ３１とＲＯＭ３２とＲＡＭ３３と通信Ｉ／Ｆ３４と、車両のバッテリ（不図示）から常時電圧が供給されるように構成された揮発性メモリであるＳＲＡＭ３５とから構成される。
【００２３】
また第２スレーブＥＣＵ４は、ＣＰＵ４１とＲＯＭ４２とＲＡＭ４３と通信Ｉ／Ｆ４４とＥＥＰＲＯＭ４５とから構成される。
また第３スレーブＥＣＵ５は、ＣＰＵ５１とＲＯＭ５２とＲＡＭ５３と通信Ｉ／Ｆ５４とＳＲＡＭ５５とから構成される。
【００２４】
また外部接続装置６は、車内ＬＡＮ７に接続され、車両用の故障診断装置（いわゆるダイアグテスタ）１１を、車内ＬＡＮ７を介してＥＣＵ２〜５とデータ通信可能に接続する。
【００２５】
そして、ＥＥＰＲＯＭ２５、ＳＲＡＭ３５、ＥＥＰＲＯＭ４５、及びＳＲＡＭ５５にはそれぞれ、トリップカウンタ２５ａ，３５ａ，４５ａ，５５ａが設けられている。なお、当該車両のイグニションスイッチのオンからオフまで、或いはオンから次のオンまでの期間をトリップ期間といい、トリップカウンタは、イグニションスイッチがオンされる毎にインクリメントするカウンタである。
【００２６】
またＥＥＰＲＯＭ２５には、初期化履歴を記憶するための初期化履歴記憶領域２５ｂが設けられている。さらにＳＲＡＭ３５、ＥＥＰＲＯＭ４５、及びＳＲＡＭ５５にはそれぞれ、車両診断情報（ダイアグコード）を記憶するための診断情報記憶領域３５ｂ，４５ｂ，５５ｂが設けられている。
【００２７】
このように構成された車両制御システム１において、マスタＥＣＵ２は、スレーブＥＣＵ３，４，５のメモリが初期化された場合にその原因を判断して判断結果を記憶するマスタ側初期化記憶処理を実行する。
【００２８】
またスレーブＥＣＵ３，４，５はそれぞれ、ＳＲＡＭ３５、ＥＥＰＲＯＭ４５、及びＳＲＡＭ５５の異常を検出するスレーブ側異常検出処理を実行する。
まず、マスタＥＣＵ２のＣＰＵ２１が実行するマスタ側初期化記憶処理の手順を、図２を用いて説明する。図２はマスタ側初期化記憶処理を示すフローチャートである。このマスタ側初期化記憶処理は、イグニションスイッチのオンでＣＰＵ２１が起動した直後に１回のみ実行される処理である。
【００２９】
このマスタ側初期化記憶処理が実行されると、ＣＰＵ２１は、まずＳ１０にて、後述のＳ２５０の処理でスレーブＥＣＵ３，４，５から送信されるトリップカウンタ３５ａ，４５ａ，５５ａの値（以下、トリップカウンタ値ともいう）を受信する。そしてＳ２０にて、トリップカウンタ値を受信していないスレーブＥＣＵがあるか否かを判断する。
【００３０】
ここで、トリップカウンタ値を受信していないスレーブＥＣＵがある場合には（Ｓ２０：ＹＥＳ）、Ｓ１０に戻って上述の処理を繰り返す。一方、スレーブＥＣＵ３，４，５の全てからトリップカウンタ値を受信した場合には（Ｓ２０：ＮＯ）、Ｓ３０にて、スレーブＥＣＵ３，４，５の中でトリップカウンタ値が０となっているスレーブＥＣＵがあるか否かを判断する。トリップカウンタ値が０となっているスレーブＥＣＵがない場合には（Ｓ３０：ＮＯ）、Ｓ５０に移行する。
【００３１】
一方、トリップカウンタ値が０となっているスレーブＥＣＵがある場合には（Ｓ３０：ＹＥＳ）、Ｓ４０にて、トリップカウンタ値が０となっているスレーブＥＣＵは交換された旨を示す情報（以下、ＥＣＵ交換情報という）を、現時点の時刻を示す情報（以下、現時刻情報という）とともに初期化履歴記憶領域２５ｂに記憶して（図４の行Ｇ３を参照）、Ｓ５０に移行する。
【００３２】
そしてＳ５０に移行すると、トリップカウンタ値が初期値（例えば、０ｘＦＦ）となっているスレーブＥＣＵがあるか否かを判断する。なお、初期値とは、スレーブＥＣＵのメモリ（すなわち、ＳＲＡＭ３５，ＥＥＰＲＯＭ４５，ＳＲＡＭ５５）が初期化されるときに設定される値である。ここで、トリップカウンタ値が初期値となっているスレーブＥＣＵがない場合には（Ｓ５０：ＮＯ）、Ｓ９０に移行する。一方、トリップカウンタ値が初期値となっているスレーブＥＣＵがある場合には（Ｓ５０：ＹＥＳ）、Ｓ６０にて、ＳＲＡＭを内蔵しているスレーブＥＣＵ（すなわち、スレーブＥＣＵ３，５）の全てにおいてトリップカウンタ値が初期値となっているか否かを判断する。
【００３３】
ここで、ＳＲＡＭを内蔵しているスレーブＥＣＵの全てにおいてトリップカウンタ値が初期値となっている場合には（Ｓ６０：ＹＥＳ）、Ｓ７０にて、バッテリの脱着が行われた旨を示す情報（以下、バッテリ脱着情報という）を、現時点の時刻を示す情報（現時刻情報）とともに初期化履歴記憶領域２５ｂに記憶して（図４の行Ｇ２を参照）、Ｓ９０に移行する。
【００３４】
一方、ＳＲＡＭを内蔵しているスレーブＥＣＵの中でトリップカウンタ値が初期値でないものがある場合には（Ｓ６０：ＮＯ）、Ｓ８０にて、トリップカウンタ値が初期値となっているスレーブＥＣＵにおいてメモリ異常が発生した旨を示す情報（以下、メモリ異常情報という）を、現時点の時刻を示す情報（現時刻情報）とともに初期化履歴記憶領域２５ｂに記憶して（図４の行Ｇ１を参照）、Ｓ９０に移行する。
【００３５】
そしてＳ９０に移行すると、トリップカウンタ２５ａをインクリメントし、さらにＳ１００にて、トリップカウンタ２５ａのトリップカウンタ値を車内ＬＡＮ７を介してスレーブＥＣＵ３，４，５へ送信し、マスタ側初期化記憶処理を終了する。
【００３６】
次に、スレーブＥＣＵ３，４，５のＣＰＵ３１，４１，５１が実行するスレーブ側異常検出処理の手順を、図３を用いて説明する。図３はスレーブ側異常検出処理を示すフローチャートである。このスレーブ側異常検出処理は、イグニションスイッチのオンでＣＰＵ３１，４１，５１が起動した直後に１回のみ実行される処理である。
【００３７】
このスレーブ側異常検出処理が実行されると、ＣＰＵ３１（４１，５１）は、まずＳ２１０にて、ＳＲＡＭ３５（ＥＥＰＲＯＭ４５，ＳＲＡＭ５５）のミラーチェックを行う。このミラーチェックは、正規のデータと、正規のデータの各ビット値を論理反転させたデータ（ミラーデータ）とを記憶し、正規のデータとミラーデータが互いに論理反転の状態を保持しているか否かにより、記憶されたデータの信頼性を確認する方法である。
【００３８】
その後Ｓ２２０にて、ミラーチェックによりＳＲＡＭ３５（ＥＥＰＲＯＭ４５，ＳＲＡＭ５５）が異常であるか否かを判断する。ここで、ミラーチェックによりＳＲＡＭ３５（ＥＥＰＲＯＭ４５，ＳＲＡＭ５５）が異常でない場合には（Ｓ２２０：ＮＯ）、Ｓ２４０に移行する。一方、ミラーチェックによりＳＲＡＭ３５（ＥＥＰＲＯＭ４５，ＳＲＡＭ５５）が異常である場合には（Ｓ２２０：ＹＥＳ）、Ｓ２３０にて、ＳＲＡＭ３５（ＥＥＰＲＯＭ４５，ＳＲＡＭ５５）を初期化し、Ｓ２４０に移行する。なお、この初期化において、トリップカウンタ３５ａ（４５ａ，５５ａ）も初期化される。
【００３９】
そしてＳ２４０に移行すると、ＳＲＡＭ３５（ＥＥＰＲＯＭ４５，ＳＲＡＭ５５）からトリップカウンタ３５ａ（４５ａ，５５ａ）の値を読み出し、Ｓ２５０にて、このトリップカウンタ値をマスタＥＣＵ２へ送信する。その後Ｓ２６０にて、予め設定されている所定待機時間（例えば、１秒）待機する。
【００４０】
そしてＳ２７０にて、マスタＥＣＵ２からトリップカウンタ値を受信したか否かを判断する。ここで、マスタＥＣＵ２からトリップカウンタ値を受信した場合には（Ｓ２７０：ＹＥＳ）、Ｓ２８０にて、トリップカウンタ３５ａ（４５ａ，５５ａ）の値を、受信したトリップカウンタ値に置き換え、スレーブ側異常検出処理を終了する。一方、マスタＥＣＵ２からトリップカウンタ値を受信しなかった場合には（Ｓ２７０：ＮＯ）、Ｓ２９０にて、トリップカウンタ３５ａ（４５ａ，５５ａ）をインクリメントして、スレーブ側異常検出処理を終了する。
【００４１】
このように構成された車両制御システム１の動作を図５を用いて説明する。図５は車両制御システム１において行われる処理の流れを示すシーケンス図である。
図５に示すように、スレーブＥＣＵ３，４，５は、イグニションスイッチのオンでＣＰＵ３１，４１，５１が起動すると、トリップカウンタ３５ａ，４５ａ，５５ａの値を読み出し（Ｐ１）、このトリップカウンタ値をマスタＥＣＵ２へ送信する（Ｐ２）。
【００４２】
そして、マスタＥＣＵ２は、スレーブＥＣＵ３，４，５から受信したトリップカウンタ値に基づいて、スレーブＥＣＵ３，４，５が初期化されたか否かを判断するとともに、初期化された場合に初期化の要因を判断し（Ｐ３）、さらに、その初期化の要因を記憶する（Ｐ４）。また、トリップカウンタ２５ａをインクリメントして（Ｐ５）、そのトリップカウンタ値をスレーブＥＣＵ３，４，５へ配信する（Ｐ６）。
【００４３】
そして、スレーブＥＣＵ３，４，５は、マスタＥＣＵ２からトリップカウンタ値を受信すると、トリップカウンタ３５ａ，４５ａ，５５ａの値を、受信したトリップカウンタ値に置き換えて記憶する（Ｐ７）。
【００４４】
次に、スレーブＥＣＵにおいてメモリ異常が発生したときの車両制御システム１の動作を図６を用いて説明する。図６は、スレーブＥＣＵにおいてメモリ異常が発生したときの動作を示すタイミングチャートである。
【００４５】
図６に示すように、トリップカウンタ２５ａ，３５ａ，４５ａ，５５ａは、イグニションスイッチのオン毎にインクリメントされている。なお図６では、図示の簡略化のために、時刻の経過に比例してトリップカウンタ２５ａ，３５ａ，４５ａ，５５ａがインクリメントされるように記載している。
【００４６】
そして、第３スレーブＥＣＵ５のＳＲＡＭ５５においてメモリ異常が発生すると、ミラーチェックにより異常が検出され、ＳＲＡＭ５５が初期化される（図６の時刻ｔ１を参照）。これにより、トリップカウンタ５５ａの値が初期値（図６では、０ｘＦＦ）となる（図６の時刻ｔ１を参照）。
【００４７】
その後、マスタＥＣＵ２がトリップカウンタ値をスレーブＥＣＵ３，４，５から受信すると、第３スレーブＥＣＵ５のトリップカウンタ５５ａのみが初期値であるので、第３スレーブＥＣＵ５にてメモリ異常が発生したと判断して、その旨を示すメモリ異常情報を初期化履歴記憶領域２５ｂに記憶する（図６の時刻ｔ２を参照）。さらに、第３スレーブＥＣＵ５がマスタＥＣＵ２からトリップカウンタ値を受信すると、トリップカウンタ５５ａの値を、受信したトリップカウンタ値に置き換える（図６の時刻ｔ２を参照）。
【００４８】
また、第３スレーブＥＣＵ５が、第３スレーブＥＣＵ５に接続されている或るセンサの異常を検知すると、その旨を示すダイアグコードをＳＲＡＭ５５に記憶する（図６の時刻ｔ３を参照）。そして、故障診断装置１１から車内ＬＡＮ７を介してＥＣＵ２，３，４，５に対してダイアグコードの送信要求があると、ＥＣＵ２，３，４，５は、車内ＬＡＮ７を介して故障診断装置１１へダイアグコードを送信する（図６の時刻ｔ４を参照）。このため、故障診断装置１１は、マスタＥＣＵ２のメモリ異常情報と、第３スレーブＥＣＵ５のダイアグコードを取得する。
【００４９】
これにより、故障診断装置１１を介して、マスタＥＣＵ２のメモリ異常情報と第３スレーブＥＣＵ５のダイアグコードを確認した作業者は、第３スレーブＥＣＵ５でメモリ異常が発生したことを知ることができ、第３スレーブＥＣＵ５に記憶されたダイアグコードは信頼できないと判断することができる。
【００５０】
次に、バッテリの脱着が行われたときの車両制御システム１の動作を図７を用いて説明する。図７は、バッテリの脱着が行われたときの動作を示すタイミングチャートである。
図７に示すように、トリップカウンタ２５ａ，３５ａ，４５ａ，５５ａは、イグニションスイッチのオン毎にインクリメントされている。なお図７では、図示の簡略化のために、時刻の経過に比例してトリップカウンタ２５ａ，３５ａ，４５ａ，５５ａがインクリメントされるように記載している。
【００５１】
そして、バッテリの脱着が行われると、第１，３スレーブＥＣＵ３，５のミラーチェックにより異常が検出され、ＳＲＡＭ３５，５５が初期化される（図７の時刻ｔ１１を参照）。これにより、トリップカウンタ３５ａ，５５ａの値が初期値（図７では、０ｘＦＦ）となる（図７の時刻ｔ１１を参照）。
【００５２】
その後、マスタＥＣＵ２がトリップカウンタ値をスレーブＥＣＵ３，４，５から受信すると、ＳＲＡＭを内蔵しているスレーブＥＣＵの全てにおいてトリップカウンタ値が初期値となっているので、バッテリの脱着が行われたと判断して、その旨を示すバッテリ脱着情報を初期化履歴記憶領域２５ｂに記憶する（図７の時刻ｔ１２を参照）。さらに、第１，３スレーブＥＣＵ３，５がマスタＥＣＵ２からトリップカウンタ値を受信すると、トリップカウンタ３５ａ，５５ａの値を、受信したトリップカウンタ値に置き換える（図７の時刻ｔ１２を参照）。
【００５３】
また、第３スレーブＥＣＵ５が、第３スレーブＥＣＵ５に接続されている或るセンサの異常を検知すると、その旨を示すダイアグコードをＳＲＡＭ５５に記憶する（図７の時刻ｔ１３を参照）。そして、故障診断装置１１から車内ＬＡＮ７を介してＥＣＵ２，３，４，５に対してダイアグコードの送信要求があると、ＥＣＵ２，３，４，５は、車内ＬＡＮ７を介して故障診断装置１１へダイアグコードを送信する（図７の時刻ｔ１４を参照）。このため、故障診断装置１１は、マスタＥＣＵ２のバッテリ脱着情報と、第３スレーブＥＣＵ５のダイアグコードを取得する。
【００５４】
これにより、故障診断装置１１を介して、マスタＥＣＵ２のバッテリ脱着情報と第３スレーブＥＣＵ５のダイアグコードを確認した作業者は、第３スレーブＥＣＵ５でメモリ異常が発生していないことを知ることができ、第３スレーブＥＣＵ５に記憶されたダイアグコードは信頼できると判断することができる。
【００５５】
次に、第２スレーブＥＣＵ４が交換されたときの車両制御システム１の動作を図８を用いて説明する。図８は、第２スレーブＥＣＵ４が交換されたときの動作を示すタイミングチャートである。
【００５６】
図８に示すように、トリップカウンタ２５ａ，４５ａ，５５ａは、イグニションスイッチのオン毎にインクリメントされている。なお図８では、図示の簡略化のために、時刻の経過に比例してトリップカウンタ２５ａ，４５ａ，５５ａがインクリメントされるように記載している。
【００５７】
まず、第２スレーブＥＣＵ４が、第２スレーブＥＣＵ４に接続されている或るセンサの異常を検知すると、その旨を示すダイアグコードをＥＥＰＲＯＭ４５に記憶する（図８の時刻ｔ２１を参照）。さらに、第２スレーブＥＣＵ４に接続されている上記センサの異常に伴い、第３スレーブＥＣＵ５に接続されている或るセンサに異常が発生すると、第３スレーブＥＣＵ５は、その旨を示すダイアグコードをＳＲＡＭ５５に記憶する（図８の時刻ｔ２２を参照）。
【００５８】
その後、第２スレーブＥＣＵ４が交換されると、トリップカウンタ４５ａの値が０となる（図８の時刻ｔ２３を参照）。また、ＥＥＰＲＯＭ４５に記憶されているデータは初期値となる（図８の時刻ｔ２３を参照）。
【００５９】
そして、マスタＥＣＵ２がトリップカウンタ値をスレーブＥＣＵ３，４，５から受信すると、第２スレーブＥＣＵ４のトリップカウンタ４５ａの値が０であるので、第２スレーブＥＣＵ４が交換されたと判断して、その旨を示すＥＣＵ交換情報を初期化履歴記憶領域２５ｂに記憶する（図８の時刻ｔ２４を参照）。さらに、第２スレーブＥＣＵ４がマスタＥＣＵ２からトリップカウンタ値を受信すると、トリップカウンタ４５ａの値を、受信したトリップカウンタ値に置き換える（図６の時刻ｔ２４を参照）。
【００６０】
そして、故障診断装置１１から車内ＬＡＮ７を介してＥＣＵ２，３，４，５に対してダイアグコードの送信要求があると、ＥＣＵ２，３，４，５は、車内ＬＡＮ７を介して故障診断装置１１へダイアグコードを送信する（図８の時刻ｔ２５を参照）。このため、故障診断装置１１は、マスタＥＣＵ２のＥＣＵ交換情報と、第３スレーブＥＣＵ５のダイアグコードを取得する。
【００６１】
これにより、第３スレーブＥＣＵ５の誤交換の発生を抑制することができる。すなわち、第３スレーブＥＣＵ５に接続されている上記センサの異常は、第２スレーブＥＣＵ４に接続されている上記センサの異常に起因するものであるため、第２スレーブＥＣＵ４に接続されている上記センサの異常を解消する必要がある。しかし、第２スレーブＥＣＵ４は交換されているため、第２スレーブＥＣＵ４に接続されている上記センサの異常を示すダイアグコードは第２スレーブＥＣＵ４に記憶されていない。このため、第２スレーブＥＣＵ４側ではなく第３スレーブＥＣＵ５側に問題があると判断されて、第３スレーブＥＣＵ５が交換されてしまう可能性がある。しかし、車両制御システム１では、第２スレーブＥＣＵ４が交換された旨をＥＣＵ交換情報により知ることができるため、第３スレーブＥＣＵ５側の異常が第２スレーブＥＣＵ４側の異常に起因する可能性を考慮することができる。
【００６２】
このように構成された車両制御システム１では、車両に搭載されたＥＣＵ２，３，４，５が車内ＬＡＮ７を介してデータ通信可能に接続されており、マスタＥＣＵ２が、トリップカウンタ値を、スレーブＥＣＵ３，４，５へ、イグニションスイッチのオン毎に、車内ＬＡＮ７を介して配信する。
【００６３】
またスレーブＥＣＵ３（４，５）において、マスタＥＣＵ２から配信されたトリップカウンタ値を記憶するＳＲＡＭ３５（ＥＥＰＲＯＭ４５，ＳＲＡＭ５５）を備え、ＳＲＡＭ３５（ＥＥＰＲＯＭ４５，ＳＲＡＭ５５）に異常が発生したか否かを判断し（Ｓ２１０）、異常が発生したと判断した場合に、ＳＲＡＭ３５（ＥＥＰＲＯＭ４５，ＳＲＡＭ５５）を初期化する（Ｓ２３０）。また、ＳＲＡＭ３５（ＥＥＰＲＯＭ４５，ＳＲＡＭ５５）に記憶されたトリップカウンタ値を、マスタＥＣＵ２へ送信する（Ｓ２５０）。
【００６４】
さらにマスタＥＣＵ２において、ＳＲＡＭを備えたスレーブＥＣＵ３，５の全てからトリップカウンタ値を受信すると、スレーブＥＣＵ３，５から受信したトリップカウンタ値のうち、初期値になっているものがあり（Ｓ５０：ＹＥＳ）、且つ、スレーブＥＣＵ３，５から受信したトリップカウンタ値の全てが初期値になっているのではない場合に（Ｓ６０：ＮＯ）、トリップカウンタ値が初期値になっているスレーブＥＣＵのＳＲＡＭにおいて、メモリ異常が発生したと判断する（Ｓ８０）。
【００６５】
一方、スレーブＥＣＵ３，５から受信したトリップカウンタ値のうち、初期値になっているものがあり（Ｓ５０：ＹＥＳ）、且つ、スレーブＥＣＵ３，５から受信したトリップカウンタ値の全てが初期値になっている場合に（Ｓ６０：ＹＥＳ）、バッテリの脱着が行われたと判断する（Ｓ７０）。
【００６６】
このように構成された車両通信システムによれば、トリップカウンタ値が初期値になったスレーブＥＣＵがあるときに、バッテリ脱着異常と区別して、メモリ異常が発生したスレーブＥＣＵを特定することができる。
【００６７】
これにより、トリップカウンタ値が初期値になった後にＳＲＡＭに記憶されたデータの信頼性を適切に判断することができる。具体的には、バッテリ脱着異常と判断された場合には、このＳＲＡＭに記憶されたデータは信頼性があると判断し、メモリ異常が発生したと判断された場合には、このＳＲＡＭに記憶されたデータは信頼性がないと判断することができる。
【００６８】
また、マスタＥＣＵ２において、ＥＥＰＲＯＭ４５を備えたスレーブＥＣＵ４からトリップカウンタ値を受信すると、受信したトリップカウンタ値が０である場合に（Ｓ３０：ＹＥＳ）、スレーブＥＣＵが交換されたと判断する（Ｓ４０）。
【００６９】
これにより、スレーブＥＣＵに記憶されたトリップカウンタ値を利用して、スレーブＥＣＵが交換されたか否かを判断することができる。
また、メモリ異常が発生したと判断した場合に、メモリ異常情報を現時刻情報とともに記憶する（Ｓ８０）。
【００７０】
これにより、メモリ異常の発生の時刻を特定することが可能になり、例えば、アフターサービスにおいて、複数のスレーブＥＣＵでメモリ異常が発生した場合に、複数のスレーブＥＣＵについて時系列でメモリ異常の発生を把握することができるため、故障解析に有効である。
【００７１】
以上説明した実施形態において、車両制御システム１は本発明における車両通信システム、ＳＲＡＭ３５，ＥＥＰＲＯＭ４５，ＳＲＡＭ５５は本発明における共通情報記憶媒体、Ｓ２１０の処理は本発明における記憶異常判断手段、Ｓ２２０の処理は本発明における初期化手段、Ｓ２５０の処理は本発明におけるスレーブ側車両共通情報送信手段、Ｓ５０〜Ｓ８０の処理は本発明におけるバッテリ記憶媒体異常判断手段、Ｓ３０〜Ｓ４０の処理は本発明における交換判断手段、Ｓ８０は本発明における異常履歴記憶手段、スレーブＥＣＵ３，５は本発明における揮発性記憶媒体付スレーブ装置、スレーブＥＣＵ４は本発明における不揮発性記憶媒体付スレーブ装置である。
【００７２】
また、トリップカウンタ値は本発明における車両共通情報、イグニションスイッチのオンは本発明における共通情報配信条件、Ｓ５０，Ｓ６０の処理の判断条件に用いられている初期値は本発明における初期化初期値、Ｓ３０の処理の判断条件に用いられている値（本実施形態では０）は本発明における交換初期値である。
【００７３】
以上、本発明の一実施例について説明したが、本発明は上記実施例に限定されるものではなく、本発明の技術的範囲に属する限り種々の形態を採ることができる。
例えば上記実施形態においては、本発明の車両共通情報としてトリップカウンタの値を用いたものを示したが、これに限定されるものではなく、車両の走行距離や時刻などを用いてもよい。
【符号の説明】
【００７４】
１…車両制御システム、２…マスタＥＣＵ、３…第１スレーブＥＣＵ、４…第２スレーブＥＣＵ、５…第３スレーブＥＣＵ、６…外部接続装置、７…車内ＬＡＮ、１１…故障診断装置、２１，３１，４１，５１…ＣＰＵ、２５，４５…ＥＥＰＲＯＭ、３５，５５…ＳＲＡＭ、２５ａ，３５ａ，４５ａ，５５ａ…トリップカウンタ、２５ｂ…初期化履歴記憶領域、３５ｂ，４５ｂ，５５ｂ…診断情報記憶領域
【図１】
2011203082.tif 000003
【図２】
2011203082.tif 000004
【図３】
2011203082.tif 000005
【図４】
2011203082.tif 000006
【図５】
2011203082.tif 000007
【図６】
2011203082.tif 000008
【図７】
2011203082.tif 000009
【図８】
2011203082.tif 000010