(57)【特許請求の範囲】
【請求項１】
車両における複数種類の故障について、その故障が発生しているか否かを判定し、故障が発生していると判定した場合には、その故障が発生していることを示す故障情報を不揮発性の故障情報記憶手段に記憶する故障検出手段と共に、前記車両に搭載され、
前記車両の運転者の操作に伴い発生し得る前記車両の特定の挙動を検出する挙動検出手段と、
前記挙動検出手段により前記挙動が検出されると、前記車両における所定の制御データを不揮発性のデータ記憶手段に記憶する記憶処理手段と、
を備えたデータ記憶装置であって、
前記挙動検出手段により前記挙動が検出されると、前記故障検出手段により現在発生していると判定されている故障である発生中故障が、前記挙動の発生原因であるか否かを判定する原因判定手段を備え、
前記原因判定手段により前記発生中故障が前記挙動の発生原因であると判定されなければ、前記記憶処理手段が前記制御データを前記データ記憶手段に記憶するのを許可し、前記原因判定手段により前記発生中故障が前記挙動の発生原因であると判定されたなら、前記記憶処理手段が前記制御データを前記データ記憶手段に記憶するのを禁止すること、
を特徴とするデータ記憶装置。
【請求項２】
請求項１に記載のデータ記憶装置において、
前記原因判定手段は、
前記挙動検出手段により前記挙動が検出されると、前記発生中故障のなかに前記挙動の発生原因となり得る故障である挙動誘発故障があるか否かを判定し、前記発生中故障のなかに前記挙動誘発故障があれば、前記発生中故障が前記挙動の発生原因であると判定すること、
を特徴とするデータ記憶装置。
【請求項３】
請求項２に記載のデータ記憶装置において、
前記原因判定手段は、
前記挙動誘発故障について前記故障検出手段による検出回数を計数する計数手段を備えると共に、
前記発生中故障のなかに前記挙動誘発故障があると判定した場合には、前記発生中故障が前記挙動の発生原因であると即座に判定することなく、更に、その発生中故障としての挙動誘発故障について前記計数手段により計数されている検出回数が所定値未満であるか否かを判定し、該検出回数が所定値未満であれば、前記発生中故障が前記挙動の発生原因であると判定すること、
を特徴とするデータ記憶装置。
【請求項４】
請求項３に記載のデータ記憶装置において、
前記計数手段により計数されている前記検出回数を、当該データ記憶装置の外部から送信されて来る初期化要求に応じて０に初期化すること、
を特徴とするデータ記憶装置。
【請求項５】
請求項２ないし請求項４の何れか１項に記載のデータ記憶装置において、
当該データ記憶装置は、前記挙動誘発故障の種類を示す故障種類情報を、前記車両の外部の装置から無線通信により取得して所定の記憶領域に記憶し、
前記原因判定手段は、前記記憶領域に記憶された故障種類情報に基づいて、前記挙動誘発故障を特定すること、
を特徴とするデータ記憶装置。
【請求項６】
請求項１ないし請求項５の何れか１項に記載のデータ記憶装置において、
前記記憶処理手段は、
前記挙動検出手段により前記挙動が検出されると、前記制御データを前記データ記憶手段とは別の一時的データ記憶手段に記憶し、前記制御データの前記データ記憶手段への記憶が許可されると、前記一時的データ記憶手段に記憶しておいた前記制御データを前記データ記憶手段に記憶すること、
を特徴とするデータ記憶装置。
【請求項７】
請求項１ないし請求項６の何れか１項に記載のデータ記憶装置において、
当該データ記憶装置は、前記故障検出手段を有した電子制御装置に備えられていること、を特徴とするデータ記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両のデータ記憶装置に関するものである。
【背景技術】
【０００２】
運転者の操作に伴って発生し得る車両の特定の挙動を検出し、その挙動の検出時点での車両における制御データを、データ書き込み可能な不揮発性メモリに記憶するデータ記憶装置が知られている（例えば、特許文献１参照）。そして、この種のデータ記憶装置によれば、不揮発性メモリに記憶された制御データを解析することで、特定の挙動が発生した原因を詳しく調べることができるようになる。
【０００３】
また、この種のデータ記憶装置は、予め設定された挙動の検出条件が成立したと判定したなら、その挙動が発生したと判断するように構成されるが、その検出条件を、車両の走行環境や、操作者（運転者）の識別情報や履歴（運転能力、事故歴）に従って、動的に設定（つまり変更）することが提案されている（例えば、特許文献１参照）。
【０００４】
一方、例えば車両のエンジン等を制御する電子制御装置には、故障検出機能が備えられている。そして、その故障検出機能では、車両に搭載されたセンサ等の機器からの情報に基づいて、様々な種類の故障についての診断（即ち、その故障が発生しているか否かの判定）を行い、故障が発生していると判定した場合には、その故障が発生していることを示す故障情報（いわゆるＤＴＣ：Ｄｉａｇｎｏｓｔｉｃ  Ｔｒｏｕｂｌｅ  Ｃｏｄｅ )を、データ書き込み可能な不揮発性メモリに記憶する（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０００−１８５６７６号公報
【特許文献２】特開２００９−５９３３４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、この種のデータ記憶装置においては、「特定の挙動」の検出条件を変更する上記特許文献１の技術を適用すれば、「特定の挙動」の不必要な検出を抑制することができ、延いては、制御データを記憶するための記憶リソース（資源）を節約することができると考えられる。
【０００７】
しかし、その技術を適用する／しないにかかわらず、従来のデータ記憶装置では、「特定の挙動」を検出したなら、その検出した挙動の発生原因を考慮することなく、車両の制御データを記憶する処理を行うこととなる。このため、車両における何等かの故障に連動して「特定の挙動」が発生し、その「特定の挙動」を検出した場合にも、制御データの記憶を行うこととなり、記憶リソースを無駄に消費してしまうという問題がある。
【０００８】
例えば、「エンジン回転数の急上昇」という挙動を、検出対象の「特定の挙動」とした場合、車両のスロットルが故障したことによりエンジン回転数が急上昇したとしても、データ記憶装置は、その「エンジン回転数の急上昇」という挙動を検出して、その検出時の制御データを不揮発性メモリに記憶することとなる。
【０００９】
ところが、その場合には、車両における電子制御装置に備えられている前述の故障検出機能によって、スロットルの故障を示す故障情報が保存されることとなり、その保存された故障情報から、「エンジン回転数の急上昇」の発生原因がスロットルの故障であることが分かる。このため、スロットルの故障に伴い発生した「エンジン回転数の急上昇」を検出して記憶した制御データについては、その制御データを解析するまでもなく「エンジン回転数の急上昇」という挙動の発生原因を究明することができ、無駄なデータとなってしまう。
【００１０】
このように、従来のデータ記憶装置では、故障検出機能によって記憶された故障情報から発生原因が分かる「特定の挙動」を検出した時の制御データであって、実質的に無駄となる制御データも記憶することとなるため、制御データ用の記憶リソースの消費量が大きくなってしまう。よって、本当に記憶すべき制御データのための記憶領域を確保できなくなる可能性が生じる。
【００１１】
本発明は、こうした問題に鑑みなされたものであり、車両に搭載されるデータ記憶装置において、無駄な制御データの記憶を防止することを目的としている。
【課題を解決するための手段】
【００１２】
請求項１のデータ記憶装置は、故障検出手段と共に、車両に搭載されるものであり、故障検出手段は、車両における複数種類の故障について、その故障が発生しているか否かを判定し、故障が発生していると判定した場合には、その故障が発生していることを示す故障情報を不揮発性の故障情報記憶手段に記憶する。
【００１３】
そして、このデータ記憶装置は、挙動検出手段と記憶処理手段とを備えている。
挙動検出手段は、車両の運転者の操作に伴い発生し得る該車両の特定の挙動を検出する。そして、記憶処理手段は、挙動検出手段により前記挙動（特定の挙動）が検出されると、車両における所定の制御データを不揮発性のデータ記憶手段に記憶する。
【００１４】
尚、データ記憶手段に記憶される制御データは、検出された挙動の発生原因を調べるために用いられるため、その記憶される制御データとしては、検出対象の挙動に関連すると予め予想される制御データが少なくとも含まれている。
【００１５】
そして特に、請求項１のデータ記憶装置は、原因判定手段を備えており、その原因判定手段は、挙動検出手段により前記挙動が検出されると、故障検出手段により現在発生していると判定されている故障である発生中故障が、前記挙動の発生原因であるか否かを判定する。そして、このデータ記憶装置は、原因判定手段により発生中故障が前記挙動の発生原因であると判定されなければ、記憶処理手段が制御データをデータ記憶手段に記憶するのを許可し、逆に、原因判定手段により発生中故障が前記挙動の発生原因であると判定されたなら、記憶処理手段が制御データをデータ記憶手段に記憶するのを禁止する。
【００１６】
このようなデータ記憶装置によれば、故障検出手段により検出されている故障が原因で特定の挙動が発生し、その挙動を挙動検出手段が検出した場合には、原因判定手段により発生中故障が前記挙動の発生原因であると判定して、制御データのデータ記憶手段への記憶を禁止することができる。
【００１７】
このため、故障検出手段によって記憶された故障情報から発生原因が分かる「特定の挙動」を検出した時の制御データであって、実質的に無駄となる制御データが、データ記憶手段に記憶されるのを防止することができ、制御データ用の記憶リソースであるデータ記憶手段の記憶領域を有効に使用することができる。
【００１８】
ところで、原因判定手段は、具体的には例えば請求項２に記載のように、挙動検出手段により特定の挙動が検出されると、発生中故障のなかに該挙動の発生原因となり得る故障である挙動誘発故障があるか否かを判定し、発生中故障のなかに挙動誘発故障があれば、発生中故障（詳しくは、発生中故障としての挙動誘発故障）が該挙動の発生原因であると判定するように構成することができる。
【００１９】
この構成によれば、「特定の挙動」の検出時において、発生中故障の種類を調べ、その発生中故障のなかに挙動誘発故障があるか否か（換言すると、故障検出手段が検出対象としている複数種類の故障のうち、今回検出された特定の挙動の発生原因となり得る挙動誘発故障が発生中か否か）を判断するだけで、発生中故障が今回検出された特定の挙動の発生原因であるか否か、延いては、制御データを記憶しなくても良いか否か、を判定することができる。
【００２０】
また、請求項３のデータ記憶装置では、請求項２のデータ記憶装置において、原因判定手段は、挙動誘発故障について故障検出手段による検出回数（即ち、その故障が発生したと判定された回数）を計数する計数手段を備えている。
【００２１】
そして、原因判定手段は、発生中故障のなかに挙動誘発故障があると判定した場合には、発生中故障が前記挙動の発生原因であると即座に判定することなく、更に、その発生中故障としての挙動誘発故障について計数手段により計数されている検出回数が所定値未満であるか否かを判定し、該検出回数が所定値未満であれば、発生中故障が前記挙動の発生原因である（実際には、発生中故障としての挙動誘発故障が前記挙動の発生原因である）と判定する。逆に言うと、原因判定手段は、発生中故障のなかに挙動誘発故障があっても、その発生中故障としての挙動誘発故障について計数手段により計数されている検出回数が所定値以上であれば、その挙動誘発故障は今回検出された特定の挙動の発生原因ではないと判断して、発生中故障が前記挙動の発生原因であるとは判定しないようになっている。
【００２２】
つまり、挙動誘発故障であっても、生じた異常の程度や状態によっては、特定の挙動を引き起こすには至らない場合が考えられる。例えば、車両に搭載される所定の機器の故障が、挙動誘発故障であるとすると、その機器の経年変化による劣化状態や気候等の環境条件により、故障が発生していると故障検出手段によって判定され易くなる可能性がある。このため、その機器の故障が発生していると故障検出手段により判定されても特定の挙動は生じない、という場合が発生することが考えられる。
【００２３】
このような場合があり得ることを考慮して、請求項３のデータ記憶装置では、特定の挙動を検出した際に、発生中故障のなかに挙動誘発故障があっても、その時点での挙動誘発故障の検出回数が所定値以上であれば、その挙動誘発故障は今回検出された特定の挙動の発生原因ではないと判断している。もし、その挙動誘発故障が特定の挙動の発生原因となるのであれば、その挙動誘発故障が今回の挙動検出時よりも前に発生した時点（即ち、挙動誘発故障の検出回数が所定値未満である時点）で、特定の挙動が検出されているはずだからである。つまり、挙動誘発故障が所定値未満の回数だけ検出されても特定の挙動が検出されなかったわけであるから、特定の挙動の検出時点において、その挙動誘発故障の検出回数が所定値以上であったなら、その挙動誘発故障は今回発生した特定の挙動の発生原因ではないと判断している。
【００２４】
そして、このような請求項３のデータ記憶装置によれば、発生中故障が今回検出された特定の挙動の発生原因であるか否か、延いては、制御データを記憶しなくても良いか否か、を一層正しく判定することができる。
【００２５】
次に、請求項４のデータ記憶装置では、請求項３のデータ記憶装置において、計数手段により計数されている前記検出回数を、当該データ記憶装置の外部から送信されて来る初期化要求に応じて０に初期化するようになっている。
【００２６】
この構成によれば、計数手段によって計数されている挙動誘発故障の検出回数を任意のタイミングで０に初期化することができる。
このため、例えば、故障検出手段が故障の有無を判定する診断対象の機器のうち、故障することが前記特定の挙動の発生原因となり得る機器を新品に交換した場合に、その機器の故障（即ち、挙動誘発故障）の検出回数を０に初期化することができる。
【００２７】
そして、このような機器の交換タイミングで検出回数を初期化すれば、交換後の機器の故障が原因で特定の挙動が発生した場合に、その機器の故障が今回発生した特定の挙動の発生原因ではないと誤判断されて実質的に無駄となる制御データが記憶されてしまうことを防止することができる。交換前の機器についての故障の検出回数を残していると、その検出回数が所定値以上になっている場合に、上記の誤判断がされてしまうからである。
【００２８】
尚、検出回数の初期化要求としては、専用のコマンドを設けても良いが、例えば、故障検出手段に対して挙動誘発故障の故障情報を消去することを要求する故障情報消去要求を兼用すれば、挙動誘発故障の故障情報の消去と共に、その挙動誘発故障の検出回数を０に初期化することができるため、有利である。
【００２９】
次に、請求項５のデータ記憶装置では、請求項２〜４のデータ記憶装置において、前記挙動誘発故障の種類を示す故障種類情報を、車両の外部の装置から無線通信により取得して所定の記憶領域に記憶する。そして、原因判定手段は、その記憶領域に記憶された故障種類情報に基づいて、挙動誘発故障を特定するようになっている。
【００３０】
この構成によれば、挙動誘発故障がどの故障であるかという故障種類情報を、常に最新の情報にすることができるため、原因判定手段の判定結果が誤った結果になることを容易に防止することができる。
【００３１】
なぜなら、原因判定手段は、挙動誘発故障を間違っていると（つまり、特定の挙動の発生原因にならない故障を挙動誘発故障としていると）、発生中故障が特定の挙動の発生原因であるか否か、延いては、制御データを記憶すべきか否かを、誤判定することとなるが、そのような場合でも、故障種類情報を更新することにより、原因判定手段の誤判定を防止することができる。
【００３２】
例えば、当該データ記憶装置の製造時点では、ある故障が挙動誘発故障であると考えていたが、その後の調査や解析により、他の故障が挙動誘発故障であることが判明した場合には、車両外部の装置から無線通信により故障種類情報を更新することで、上記の誤判定を防止することができる。
【００３３】
次に、請求項６のデータ記憶装置では、請求項１〜５のデータ記憶装置において、記憶処理手段は、挙動検出手段により前記挙動が検出されると、前記制御データをデータ記憶手段とは別の一時的データ記憶手段に記憶し、制御データのデータ記憶手段への記憶が許可されると、一時的データ記憶手段に記憶しておいた制御データをデータ記憶手段に記憶する。
【００３４】
この構成によれば、特定の挙動が検出された時点から、原因判定手段による判定（延いては、制御データを記憶すべきか否かの判定）が終了するまでの時間が長くなったとしても、特定の挙動が検出された時の直後の制御データを、データ記憶手段に記憶させることができる。このため、特定の挙動の発生時から遅れが極力少ない時点での制御データを残すことができる。
【００３５】
次に、請求項７のデータ記憶装置では、請求項１〜６のデータ記憶装置において、当該データ記憶装置は、故障検出手段を有した電子制御装置に備えられている。
この構成によれば、電子制御装置とのハードウェアの共有化により、低コスト化を図ることができる。
【図面の簡単な説明】
【００３６】
【図１】実施形態のデータ記憶装置を含む車載通信システムを表す構成図である。
【図２】ＥＣＵのマイコンが実行する故障検出処理を表すフローチャートである。
【図３】検出対象の複数種類の挙動毎に、その挙動の発生原因となり得る故障（挙動誘発故障）の種類を記録した、報故障種類情報を表す説明図である。
【図４】第１実施形態のデータ記憶装置のマイコンが実行する挙動検出時データ記憶処理を表すフローチャートである。
【図５】第１実施形態の作用を説明する説明図である。
【図６】第２実施形態のデータ記憶装置のマイコンが実行する計数処理を表すフローチャートである。
【図７】第２実施形態のデータ記憶装置のマイコンが実行する挙動検出時データ記憶処理を表すフローチャートである。
【図８】第２実施形態のデータ記憶装置のマイコンが実行する故障検出回数初期化処理を表すフローチャートである。
【図９】第２実施形態の作用を説明する説明図である。
【発明を実施するための形態】
【００３７】
以下に、本発明が適用された実施形態のデータ記憶装置を含む車載通信システムについて説明する。
［第１実施形態］
図１に示すように、本実施形態の車載通信システム１では、車両に配設された通信線３に複数（この例では２つとする）の電子制御装置（以下、ＥＣＵという）１１，１２が通信可能に接続されている。例えば、ＥＣＵ１１は、車両のエンジンを制御するエンジンＥＣＵであり、ＥＣＵ１２は、車両に搭載されたバッテリの充電制御やバッテリから他の装置への電源供給制御（以下、これらの制御を総称して電源制御という）を行う電源ＥＣＵである。
【００３８】
そして、ＥＣＵ１１は、マイコン２１と、データの書き換えが可能な不揮発性のメモリ（例えば、ＥＥＰＲＯＭやフラッシュメモリ等）２３と、通信線３に接続された他の装置とマイコン２１が通信するための通信回路２５とを備えている。
【００３９】
また、ＥＣＵ１１には、エンジンを制御するのに必要な情報を取得するためのセンサ２７と、エンジンを制御するのに必要なアクチュエータ２９とが接続されている。
例えば、センサ２７としては、電子スロットルの開度を検出するスロットル開度センサや、車両の運転者によるアクセルペダルの踏み込み操作の有無を検出するアクセルペダルセンサや、運転者によるブレーキペダルの踏み込み操作の有無を検出するブレーキペダルセンサや、エンジン回転数（以下、ＮＥとも記す）を表すパルス信号であるＮＥ信号を出力するクランク軸センサや、エンジンの吸気管圧力を検出する圧力センサ等がある。また、アクチュエータ２９としては、電子スロットルの開度を変化させるスロットルモータや、燃料噴射用のインジェクタや、ＥＧＲ（Ｅｘｈａｕｓｔ  Ｇａｓ  Ｒｅｃｉｒｃｕｌａｔｉｏｎ：排気再循環）用電磁弁等がある。
【００４０】
そして、ＥＣＵ１１のマイコン２１は、センサ２７からの情報に基づいて、アクチュエータ２９を駆動することにより、エンジンを制御している。
また、ＥＣＵ１２も、ＥＣＵ１１と同様に、マイコン３１と、データの書き換えが可能な不揮発性のメモリ３３と、通信回路３５とを備えている。
【００４１】
そして、ＥＣＵ１２には、電源制御に必要な情報を取得するためのセンサ３７と、電源制御に必要なアクチュエータ３９とが接続されている。
例えば、センサ３７としては、バッテリの温度を検出するバッテリ温度センサや、バッテリの電圧を検出する電圧センサや、バッテリの充電量を増やすか否かを判定するための情報を出力するセンサ等がある。また、アクチュエータ３９としては、他の装置へバッテリの電圧を供給する給電用リレーや、発電機等がある。
【００４２】
また、通信線３には、車両に搭載されない故障診断用の外部装置であるツール４１が、コネクタ４３を介して着脱可能になっている。尚、図示を省略しているが、ツール４１も、マイコンを主要部として構成されている。また、ツールには、キーボード等の入力操作部や情報表示用のディスプレイが備えられている。
【００４３】
そして、通信線３には、本発明が適用されたデータ記憶装置４５がＥＣＵ１１，１２と共に接続されている。
データ記憶装置４５も、マイコン５１と、データの書き換えが可能な不揮発性のメモリ５３と、通信線３に接続された他の装置とマイコン５１が通信するための通信回路５５とを備えている。そして、メモリ５３の記憶領域は、少なくとも２つの記憶領域５３ａ，５３ｂに分けられている。尚、各記憶領域５３ａ，５３ｂに記憶される情報の内容については後で説明する。
【００４４】
また、車両外部の設備である情報管理センタには、コンピュータや無線通信装置等からなる処理装置６１が設けられており、データ記憶装置４５は、その処理装置６１と無線通信により情報のやり取りができるようになっている。
【００４５】
尚、データ記憶装置４５に無線通信装置を設けて、該データ記憶装置４５のマイコン５１が、その無線通信装置を介して処理装置６１と無線通信を行うようになっていても良いが、通信線３に接続された何れかのＥＣＵが、無線通信装置を備えた無線通信用ＥＣＵとなっていて、データ記憶装置４５のマイコン５１が、通信線３及び上記無線通信用ＥＣＵを介して、処理装置６１と無線通信を行うようになっていても良い。後者の場合、無線通信用ＥＣＵは、データ記憶装置４５と処理装置６１とが無線で通信するための中継装置となる。
【００４６】
このような構成の車載通信システム１において、ＥＣＵ１１，１２のマイコン２１，３１は、故障検出機能（いわゆる自己診断機能）を備えている。
そして、その故障検出機能を実現するため、ＥＣＵ１１，１２のマイコン２１，３１は、図２に示す故障検出処理を、例えば一定時間毎に実行する。尚、図２の故障検出処理は、検出すべき故障の種類毎に実行される。また、図２に関する以下の説明において、自ＥＣＵとは、マイコン２１，３１が搭載されているＥＣＵのことである。
【００４７】
図２に示すように、ＥＣＵ１１，１２のマイコン２１，３１は、故障検出処理を開始すると、まずＳ１１０にて、検出対象の故障について、それの故障検出条件（即ち、その故障が発生していると判定すべき条件）が成立しているか否かを判定することにより、検出対象の故障が発生しているか否かを判定する。
【００４８】
そして、検出対象の故障が発生してないと判定した場合（Ｓ１１０：ＮＯ）には、そのまま当該故障検出処理を終了するが、検出対象の故障が発生していると判定した場合（Ｓ１１０：ＹＥＳ）には、Ｓ１２０に進む。
【００４９】
Ｓ１２０では、今回検出した故障（即ち、発生していると判定した故障）について、その故障が発生していることを示す故障情報が自ＥＣＵのメモリ２３，３３に既に記憶されているか否かを判定する。そして、該当する故障情報がメモリ２３，３３に記憶されていれば（Ｓ１２０：ＹＥＳ）、そのまま当該故障検出処理を終了するが、該当する故障情報がメモリ２３，３３に記憶されていなければ（Ｓ１２０：ＮＯ）、Ｓ１３０に進み、今回検出した故障の故障情報を自ＥＣＵのメモリ２３，３３に記憶した後、当該故障検出処理を終了する。
【００５０】
例えば、ＥＣＵ１１のマイコン２１は、故障として、電子スロットル異常、アクセルペダル異常、ブレーキペダル異常、ＮＥ信号線異常、エンジン失火異常、ＥＧＲ異常等を検出し、ＥＣＵ１２のマイコン３１は、故障として、バッテリ温度センサ異常、電圧センサ異常等を検出する（図３参照）。
【００５１】
また、それらの故障についての故障検出条件は、どのようなものでも良いが、例えば下記（１）〜（８）のような条件が考えられる。
（１）電子スロットル異常についての故障検出条件
電子スロットルの制御目標開度と、スロットル開度センサからの信号に基づき検出される実際のスロットル開度との差が所定値よりも大きい。
【００５２】
（２）アクセルペダル異常についての故障検出条件
アクセルペダルセンサ以外のセンサからの信号に基づいて、アクセルペダルが操作されるはずがないと考えられる状態であると判断されているのに、アクセルペダルセンサからの信号は、アクセルペダルが踏み込み操作されていることを示している。
【００５３】
（３）ブレーキペダル異常についての故障検出条件
ブレーキペダルセンサ以外のセンサからの信号に基づいて、ブレーキペダルが操作されるはずがないと考えられる状態であると判断されているのに、ブレーキペダルセンサからの信号は、ブレーキペダルが踏み込み操作されていることを示している。
【００５４】
（４）ＮＥ信号線異常についての故障検出条件
クランク軸センサからのＮＥ信号が所定時間以上レベル変化しない。
（５）エンジン失火異常についての故障検出条件
エンジンのクランク軸の回転変動が失火判定値よりも大きい。
【００５５】
（６）ＥＧＲ異常についての故障検出条件
ＥＧＲ用電磁弁の開閉切り換えを実施した際の吸気管圧力の変化量が正常変化量とならない。
【００５６】
（７）バッテリ温度センサ異常についての故障検出条件
バッテリ温度センサからの信号の電圧値が正常範囲から外れている。
（８）電圧センサ異常についての故障検出条件
電圧センサからの信号の電圧値が正常範囲から外れている。
【００５７】
尚、ツール４１は、入力操作部に対する使用者の操作に応じて、通信線３へ故障情報要求を送出するようになっており、ＥＣＵ１１，１２のマイコン２１，３１は、ツール４１からの故障情報要求に応じて、メモリ２３，３３内の故障情報をツール４１へ送信する。
【００５８】
一方、データ記憶装置４５のマイコン５１は、通信線３を介して各ＥＣＵ１１，１２から、そのＥＣＵ１１，１２が保有している複数種類の制御データ（車両における制御データ）や故障検出結果に関する情報を収集する情報収集機能と、運転者の操作に伴い発生し得る車両の特定の挙動を検出する挙動検出機能と、その挙動検出機能によって特定の挙動が検出されたなら、その検出された挙動の発生原因を調べる原因判定機能と、挙動検出機能によって特定の挙動が検出されたなら、情報収集機能により収集されている制御データをメモリ５３の記憶領域５３ａに記憶する制御データ記憶機能と、ツール４１からのデータ要求に応じて、メモリ５３の記憶領域５３ａに記憶されている情報をツール４１へ通信線３を介して出力する制御データ出力機能とを備えている。
【００５９】
尚、メモリ５３の記憶領域５３ａに記憶される制御データ（以下、保存対象制御データともいう）は、車速のデータやスロットル開度のデータやエンジン回転数のデータ等の、車両における制御データであり、情報収集機能により収集されている制御データの全部又は一部である。そして、その保存対象制御データは、検出された挙動の発生原因を調べるために、ツール４１側へ読み出されて用いられる。このため、保存対象制御データの種類は、検出される挙動に関連すると予想されるデータができるだけ含まれるように、予め定められている。
【００６０】
また、データ記憶装置４５において、メモリ５３の記憶領域５３ｂには、図３に例示するように、検出対象の複数種類の挙動毎に、その挙動の発生原因となり得る故障である挙動誘発故障の種類を記録したテーブル形式の故障種類情報が記憶されている。
【００６１】
その故障種類情報は、検出対象の各挙動について、挙動誘発故障の種類を調査して決定し、その決定した挙動誘発故障の種類を、該当する挙動の種類に対応付けて記録したものである。尚、記録される挙動誘発故障の種類数は挙動毎に一定である必要はなく、また、挙動誘発故障が無い又は分からない挙動については、挙動誘発故障の種類を記録しておく必要はない。
【００６２】
また、故障種類情報は、前述した情報管理センタの処理装置６１から当該データ記憶装置４５へ、無線通信により最新のものが送られてきて、メモリ５３の記憶領域５３ｂに更新記憶されるようになっている。つまり、マイコン５１は、情報管理センタの処理装置６１から故障種類情報が送信されて来ると、メモリ５３の記憶領域５３ｂに記憶されている故障種類情報を、送信されて来た新たな故障種類情報に上書きする。
【００６３】
次に、データ記憶装置４５のマイコン５１が、車両の特定の挙動を検出して制御データをメモリ５３の記憶領域５３ａに記憶するために実行する挙動検出時データ記憶処理について、図４を用い説明する。
【００６４】
尚、図４の挙動検出時データ記憶処理は、検出対象の挙動毎に、例えば一定時間毎に実行される。また、図示は省略するが、マイコン５１は、図４の挙動検出時データ記憶処理とは別に、各ＥＣＵ１１，１２と通信して制御データを収集するデータ収集処理を、例えば一定時間毎に実行している。
【００６５】
図４に示すように、データ記憶装置４５のマイコン５１は、挙動検出時データ記憶処理の実行を開始すると、まずＳ２１０にて、検出対象の挙動を検出するための挙動検出処理を行う。具体的に説明すると、前述のデータ収集処理（情報収集機能）によって収集されている各種の制御データに基づいて、検出対象の挙動に対して定められている挙動検出条件が成立したか否かを判定し、その挙動検出条件が成立したと判定したならば、検出対象の挙動が発生したと判定する。
【００６６】
例えば、検出対象の挙動が図３に示す「ＮＥ急上昇」であれば、エンジン回転数（ＮＥ）の増加率が所定値を超えた、という条件が挙動検出条件となる。また、検出対象の挙動が図３に示す「車両急加速」であれば、車速の正の増加率（加速度）が所定値を超えた、という条件が挙動検出条件となる。また、検出対象の挙動が図３に示す「車両急減速」であれば、車速の負の増加率（減速度）が所定値を超えた、という条件が挙動検出条件となる。また、検出対象の挙動が図３に示す「アクセル・ブレーキ両踏み」であれば、アクセルペダルとブレーキペダルとの両方が踏まれた、という条件が挙動検出条件となる。
【００６７】
そして、次のＳ２２０にて、上記Ｓ２１０の挙動検出処理により検出対象の挙動を検出したか（挙動が発生したと判定したか）否かを判定し、挙動を検出していなければ（Ｓ２２０：ＮＯ）、そのまま当該挙動検出時データ記憶処理を終了するが、挙動を検出したならば（Ｓ２２０：ＹＥＳ）、Ｓ２３０に進む。
【００６８】
Ｓ２３０では、現時点で収集している制御データのうちの保存対象制御データを、今回のＳ２１０で検出した挙動の種類情報と対応付けて、当該マイコン５１内のＲＡＭ５１ａに記憶する。尚、このＲＡＭ５１ａへの記憶は、少なくとも当該挙動検出時データ記憶処理が終了するまでの一時的な記憶である。
【００６９】
そして、次のＳ２４０では、通信線３を介して各ＥＣＵ１１，１２から、図３に例示した記憶領域５３ｂ内の故障種類情報に記録されている各挙動誘発故障（各挙動に対して記録されている挙動誘発故障の各々）について、故障有無情報を収集する。
【００７０】
ここで、故障有無情報とは、故障の種類と、その故障が図２の故障検出処理におけるＳ１１０の判定処理により現在発生していると判定されているか否か（即ち、その故障が現在発生中であるか否かであり、換言すれば、その故障の故障検出条件が現在成立中であるか否か）を示す判定結果情報とを含んだ情報である。尚、Ｓ２４０では、各ＥＣＵ１１，１２が検出する全ての故障についての故障有無情報を収集しても良いが、処理の効率化の面から、故障種類情報に記録されている各挙動誘発故障についての故障有無情報だけを収集している。また更に絞り込んで、Ｓ２４０では、故障種類情報に記録されている挙動誘発故障のうち、今回のＳ２１０で検出した挙動に対して記録されている挙動誘発故障についての故障有無情報だけを収集しても良い。
【００７１】
そして、次のＳ２５０では、Ｓ２４０で収集した故障有無情報から、ＥＣＵ１１，１２における図２のＳ１１０の判定処理により現在発生していると判定されている故障（以下、発生中故障という）があるか否かを判定し、発生中故障があれば、Ｓ２６０に進む。
【００７２】
Ｓ２６０では、今回のＳ２１０で検出した挙動の発生原因となり得る挙動誘発故障の種類を、記憶領域５３ｂに記憶されている故障種類情報（図３）から取得する。つまり、今回のＳ２１０で検出した挙動の挙動誘発故障を、故障種類情報から特定する。尚、故障種類情報は、通信線３に接続された他の装置（例えばＥＣＵ１１やＥＣＵ１２）に記憶されていても良く、その場合、Ｓ２６０では、上記他の装置から通信線３を介して必要な情報を取得すれば良い。
【００７３】
そして、次のＳ２７０にて、Ｓ２６０で取得した挙動誘発故障の種類と、Ｓ２４０で収集した故障有無情報から特定される発生中故障の種類とを比較することで、その発生中故障のなかに、今回のＳ２１０で検出した挙動の挙動誘発故障があるか否かを判定し、発生中故障のなかに該当の挙動誘発故障があれば、その挙動誘発故障が現在発生中であると判定する。そして、この場合には、ＥＣＵ１１，１２により現在発生していると判定されている発生中故障であって、ＥＣＵ１１，１２のメモリ２３，３３に故障情報が残されるはずの故障が、今回検出した挙動の発生原因であると判断して、Ｓ２８０に進む。
【００７４】
そして、Ｓ２８０では、上記Ｓ２３０でＲＡＭ５１ａに記憶した情報（保存対象制御データ及び検出した挙動の種類情報）を破棄し、その後、当該挙動検出時データ記憶処理を終了する。尚、Ｓ２８０では、Ｓ２３０でＲＡＭ５１ａに記憶した情報のうち、今回検出した挙動の種類情報だけは破棄せずに、その検出した挙動の種類情報をメモリ５３の記憶領域５３ａに保存するようにしても良い。
【００７５】
また、上記Ｓ２７０にて、発生中故障のなかに今回のＳ２１０で検出した挙動の挙動誘発故障がなく、その挙動誘発故障が現在発生中ではないと判定した場合には、ＥＣＵ１１，１２により現在発生していると判定されている発生中故障が、今回検出した挙動の発生原因ではないと判断して、Ｓ２９０に進む。また、上記Ｓ２５０にて、発生中故障がないと判定した場合にも、当然、今回検出した挙動の発生原因は発生中故障でないと判断して、Ｓ２９０に進む。
【００７６】
そして、Ｓ２９０では、Ｓ２３０でＲＡＭ５１ａに記憶した情報（保存対象制御データ及び検出した挙動の種類情報）を、メモリ５３の記憶領域５３ａに記憶し、その後、当該挙動検出時データ記憶処理を終了する。
【００７７】
一方、ツール４１は、入力操作部に対する使用者の操作に応じて、通信線３へデータ要求を送出するようになっている。そして、データ記憶装置４５のマイコン５１は、ツール４１からのデータ要求を受けると、メモリ５３の記憶領域５３ａに記憶されている情報をツール４１へ出力する。
【００７８】
以上のようなデータ記憶装置４５では、車両の特定の挙動を検出すると（Ｓ２２０：ＹＥＳ）、その時の保存対象制御データをＲＡＭ５１ａに記憶し（Ｓ２３０）、更に、ＥＣＵ１１，１２の故障検出機能によって現在発生していると判定されている発生中故障があるか否かを判定し（Ｓ２５０）、発生中故障があれば（Ｓ２５０：ＹＥＳ）、その発生中故障のなかに、今回検出した挙動（以下、検出挙動ともいう）の発生原因となり得る挙動誘発故障が含まれているか否かを判定している（Ｓ２６０，Ｓ２７０）。
【００７９】
そして、発生中故障のなかに挙動誘発故障がない場合（Ｓ２７０：ＮＯ）、あるいは、発生中故障自体がなかった場合（Ｓ２５０：ＮＯ）には、検出挙動の発生原因は発生中故障でないと判断して、その挙動を検出した際のＲＡＭ５１ａ内の保存対象制御データをメモリ５３の記憶領域５３ａに記憶する（Ｓ２９０）が、発生中故障のなかに挙動誘発故障があれば（Ｓ２７０：ＹＥＳ）、発生中故障（詳しくは、発生中故障としての挙動誘発故障）が検出挙動の発生原因であると判断して、その挙動を検出した際にＲＡＭ５１ａに記憶しておいた保存対象制御データを破棄することで、その保存対象制御データがメモリ５３の記憶領域５３ａに記憶されるのを禁止している（Ｓ２８０）。
【００８０】
このため、例えば図５に示すように、「▽」印のタイミングでＥＣＵ１１により電子スロットル異常が発生していると判定されており、「○」印のタイミングでＥＣＵ１２によりバッテリ温度センサ異常が発生していると判定されている状況において、データ記憶装置４５（詳しくは、マイコン５１）が、「△」印のタイミングで「ＮＥ急上昇」という挙動を検出したとする。その場合、データ記憶装置４５では、「ＮＥ急上昇」の検出時点において、その「ＮＥ急上昇」の発生原因となり得る電子スロットル異常（図３参照）が発生していることを認識し、その電子スロットル異常が「ＮＥ急上昇」の発生原因であると判断して、保存対象制御データのメモリ５３への記憶を実施しないこととなる。
【００８１】
つまり、検出対象の挙動を検出しても、その挙動が、ＥＣＵ１１，１２の故障検出機能によって検出されている故障が原因で発生したものであると判断したなら、ＥＣＵ１１，１２のメモリ２３，３３に記憶される故障情報から該挙動の発生原因は分かると考えられるため、保存対象制御データのメモリ５３への記憶は行わないようにしている。
【００８２】
よって、ＥＣＵ１１，１２の故障検出機能（故障検出処理）によってメモリ２３，３３に記憶された故障情報から発生原因が分かる挙動を検出した時の保存対象制御データであって、実質的に無駄となる制御データが、メモリ５３の記憶領域５３ａに記憶されるのを防止することができ、その記憶領域５３ａを有効に使用することができる。
【００８３】
また、本実施形態のデータ記憶装置４５では、車両の特定の挙動を検出した時点で、その時の保存対象制御データをＲＡＭ５１ａに記憶し（Ｓ２３０）、図４のＳ２４０〜Ｓ２７０の処理により、保存対象制御データのメモリ５３への記憶が許可されたなら（即ち、Ｓ２５０又はＳ２７０からＳ２９０へ進んだならば）、ＲＡＭ５１ａに記憶しておいた保存対象制御データをメモリ５３の記憶領域５３ａに記憶するようになっている。
【００８４】
このため、図４のＳ２４０〜Ｓ２７０の処理に比較的長い時間がかかったとしても、特定の挙動の発生時から遅れが極力少ない時点での保存対象制御データを、メモリ５３の記憶領域５３ａに保存することができる。
【００８５】
また、本実施形態のデータ記憶装置４５では、メモリ５３の記憶領域５３ｂに保存される故障種類情報（図３）を、情報管理センタの処理装置６１から無線通信により取得して更新するようになっている。
【００８６】
このため、検出した挙動の挙動誘発故障がどの故障であるかという故障種類情報を、容易に最新の情報に修正することができる。よって、故障種類情報が古くて誤っていることにより、保存対象制御データをメモリ５３に記憶すべきか否かの判定結果が適正でなくなってしまうことを、容易に防ぐことができる。
【００８７】
尚、本実施形態では、ＥＣＵ１１，１２のマイコン２１，３１が、故障検出手段に相当し、特に図２の故障検出処理が、故障検出手段としての処理に相当している。また、ＥＣＵ１１，１２のメモリ２３，３３が、故障情報記憶手段に相当している。
【００８８】
また、データ記憶装置４５では、メモリ５３の記憶領域５３ａが、データ記憶手段に相当し、メモリ５３の記憶領域５３ｂが、故障種類情報が記憶される所定の記憶領域に相当し、ＲＡＭ５１ａが、一時的データ記憶手段に相当している。そして、マイコン５１が行う図４の処理のうち、Ｓ２１０の処理が、挙動検出手段としての処理に相当し、Ｓ２３０及びＳ２９０の処理が、記憶処理手段としての処理に相当し、Ｓ２４０〜Ｓ２７０の処理が、原因判定手段としての処理に相当している。また、情報管理センタの処理装置６１が、車両の外部の装置に相当している。
【００８９】
［第２実施形態］
次に、第２実施形態のデータ記憶装置について説明するが、第１実施形態とハードウェア構成は同じであるため、第１実施形態と同じ符号を用いて説明する。
【００９０】
第２実施形態のデータ記憶装置４５は、第１実施形態と比較すると、マイコン５１が、図４の処理に代えて図７の処理を行い、更に、図６と図８の各処理も行う点が異なっている。以下、各処理について説明する。
【００９１】
まず、図６は、計数処理を表すフローチャートである。
この計数処理は、ＥＣＵ１１，１２が検出対象としている車両内の各故障のうち、図３に例示した記憶領域５３ｂ内の故障種類情報に記録されている各挙動誘発故障（各挙動に対して記録されている挙動誘発故障の各々）を処理対象として、例えば一定時間毎に実行され、その故障のＥＣＵ１１，１２による検出回数（具体的には、図２の故障検出処理によって故障が発生したと判定された回数であり、更に詳しくは、図２の故障検出処理におけるＳ１１０の判定結果がＮＯ（故障非発生：故障検出条件非成立）からＹＥＳ（故障発生：故障検出条件成立）に転じた回数）を計数する処理である。
【００９２】
そして、図６に示すように、データ記憶装置４５のマイコン５１は、計数処理を開始すると、まずＳ３１０にて、通信線３を介して各ＥＣＵ１１，１２から、処理対象の故障について、前述の故障有無情報を収集する。
【００９３】
そして、次のＳ３２０にて、Ｓ３１０で収集した故障有無情報に基づき、処理対象の故障について、図２の故障検出処理におけるＳ１１０の現在の判定結果（以下、故障検出結果という）を判別し、その故障検出結果が「故障非発生：故障検出条件非成立」であれば（Ｓ３２０：ＮＯ）、そのまま当該計数処理を終了するが、故障検出結果が「故障発生：故障検出条件成立」であれば（Ｓ３２０：ＹＥＳ）、Ｓ３３０に進む。
【００９４】
Ｓ３３０では、処理対象の故障について、上記Ｓ３２０で前回に判別した故障検出結果が「故障非発生：故障検出条件非成立」であったか否か、即ち、故障検出結果が「故障非発生：故障検出条件非成立」から今回「故障発生：故障検出条件成立」に変化したか否かを判定する。
【００９５】
そして、故障検出結果が変化していなければ（Ｓ３３０：ＮＯ）、そのまま当該計数処理を終了するが、故障検出結果が今回「故障発生：故障検出条件成立」に変化したのであれば（Ｓ３３０：ＹＥＳ）、Ｓ３４０に進み、処理対象の故障についての検出回数（故障検出回数）を１カウントアップし、その後、当該計数処理を終了する。
【００９６】
尚、上記Ｓ３４０でカウントアップされる検出回数は、実際には、その検出回数を示すデータであり、例えば、メモリ５３の記憶領域のうち、記憶領域５３ａ，５３ｂとは別の所定記憶領域に記憶される。
【００９７】
次に、図７は、図４の挙動検出時データ記憶処理に代えて実行される挙動検出時データ記憶処理を表すフローチャートである。
そして、図７の挙動検出時データ記憶処理では、図４の挙動検出時データ記憶処理と比較すると、Ｓ２７５の処理が追加されている。
【００９８】
即ち、図７の挙動検出時データ記憶処理では、Ｓ２７０にて、発生中故障のなかに、今回のＳ２１０で検出した挙動の挙動誘発故障があると判定した場合には（Ｓ２７０：ＹＥＳ）、Ｓ２８０ではなく、Ｓ２７５に進む。
【００９９】
Ｓ２７５では、その発生中故障である挙動誘発故障（即ち、今回のＳ２１０で検出した挙動の挙動誘発故障のうち、発生していると判定されている挙動誘発故障であり、以下、該当故障という）について、図６の計数処理により計数されている検出回数を読み出し、その検出回数が所定値Ｎ未満であるか否かを判定する。そして、該当故障の検出回数が所定値Ｎ未満であれば（Ｓ２７５：ＹＥＳ）、その該当故障が今回検出した挙動の発生原因であり、延いては、ＥＣＵ１１，１２のメモリ２３，３３に故障情報が残されるはずの故障が今回検出した挙動の発生原因であると判断して、Ｓ２８０に進む。これに対して、該当故障の検出回数が所定値Ｎ以上であれば（Ｓ２７５：ＮＯ）、その該当故障は今回検出した挙動の発生原因ではないと判断して、Ｓ２９０に進む。
【０１００】
尚、Ｓ２７５では、該当故障が複数ある場合、その該当故障の各々の検出回数について、所定値Ｎ未満であるか否かを判定する。そして、該当故障の検出回数が１つでも所定値Ｎ未満であればＳ２８０に進むが、該当故障の検出回数が全て所定値Ｎ以上であればＳ２９０に進む。
【０１０１】
次に、図８は、故障検出回数初期化処理を表すフローチャートである。
この故障検出回数初期化処理は、図６の計数処理によって計数されている検出回数を０に初期化するための処理であり、例えば一定時間毎に実行される。
【０１０２】
そして、図８に示すように、データ記憶装置４５のマイコン５１は、故障検出回数初期化処理を開始すると、まずＳ４１０にて、通信線３に接続されたツール４１からの初期化要求を受信したか否かを判定し、初期化要求を受信していなければ（Ｓ４１０：ＮＯ）、そのまま当該故障検出回数初期化処理を終了するが、初期化要求を受信したならば（Ｓ４１０：ＹＥＳ）、Ｓ４２０に進む。
【０１０３】
ここで、初期化要求は、故障検出回数の初期化を要求するコマンドであり、検出回数を初期化すべき故障の種類を示す情報（即ち、どの故障の検出回数を初期化すべきかを示す情報）を含んでいる。
【０１０４】
また、その初期化要求としては、専用のコマンドを設けても良いが、本実施形態では、ツール４１からＥＣＵ１１，１２へ送信される故障情報消去要求を、初期化要求として兼用している。尚、その故障情報消去要求にも、故障情報を消去すべき故障の種類を示す情報（即ち、どの故障の故障情報を消去すべきかを示す情報）が含まれている。そして、ツール４１は、入力操作部に対する使用者の操作に応じて、通信線３へ故障情報消去要求を送出するようになっており、ＥＣＵ１１，１２のマイコン２１，３１は、ツール４１からの故障情報消去要求を受信すると、その故障情報消去要求が示す故障の故障情報を、メモリ２３，３３から消去する。
【０１０５】
図８の説明に戻り、Ｓ４２０では、ツール４１から受信した初期化要求（本実施形態では故障情報消去要求）が示す故障の検出回数（故障検出回数）を０に初期化する。そして、その後、当該故障検出回数初期化処理を終了する。
【０１０６】
以上のような第２実施形態のデータ記憶装置４５では、検出挙動の発生原因となり得る挙動誘発故障が発生中故障のなかにあると判定しても（Ｓ２７０：ＹＥＳ）、発生中故障が検出挙動の発生原因であると即座に判定することなく、更に、その発生中故障としての挙動誘発故障の検出回数を判定し（Ｓ２７５）、検出回数が所定値Ｎ未満であれば（Ｓ２７５：ＹＥＳ）、発生中故障（実際には、検出回数が所定値Ｎ未満の発生中故障である挙動誘発故障）が検出挙動の発生原因であると判定して、挙動検出時にＲＡＭ５１ａに記憶しておいた保存対象制御データを破棄してメモリ５３には記憶しないようになっている（Ｓ２８０）。逆に言うと、発生中故障のなかに挙動誘発故障があっても（Ｓ２７０：ＹＥＳ）、その発生中故障としての挙動誘発故障の検出回数が所定値Ｎ以上であれば（Ｓ２７５：ＮＯ）、その挙動誘発故障は検出挙動の発生原因ではないと判断している。
【０１０７】
このため、例えば図９に示すように、「▽」印の各タイミングでＥＣＵ１１による電子スロットル異常の故障検出結果が「故障非発生」から「故障発生」に変化し、「○」印のタイミングでＥＣＵ１２によるバッテリ温度センサ異常の故障検出結果が「故障非発生」から「故障発生」に変化している状況において、データ記憶装置４５（詳しくは、マイコン５１）が、「△」印のタイミングで「ＮＥ急上昇」という挙動を検出したとする。また、図７のＳ２７５で判定する上記所定値Ｎは「５」であるとする。
【０１０８】
この例の場合、データ記憶装置４５では、「ＮＥ急上昇」の検出時点において、その「ＮＥ急上昇」の挙動誘発故障である電子スロットル異常（図３参照）が発生していることを認識するが（Ｓ２７０：ＹＥＳ）、その電子スロットル異常の検出回数が所定値Ｎ（＝５）以上であるため（Ｓ２７５：ＮＯ）、その電子スロットル異常が「ＮＥ急上昇」の発生原因であるとは判断しない。また、「ＮＥ急上昇」の検出時点において、バッテリ温度センサ異常も発生しており、それの検出回数は所定値Ｎ未満の１であるが、そもそも、バッテリ温度センサ異常は、「ＮＥ急上昇」の挙動誘発故障として故障種類情報（図３）に記録されていないため、データ記憶装置４５では、そのバッテリ温度センサ異常が「ＮＥ急上昇」の発生原因であるとは判断しない。よって、データ記憶装置４５では、発生中故障である電子スロットル異常とバッテリ温度センサ異常との何れについても、「ＮＥ急上昇」の発生原因であるとは判断せずに、保存対象制御データのメモリ５３への記憶を実施することとなる。
【０１０９】
つまり、挙動誘発故障であっても、生じた異常の程度や状態によっては、検出対象の挙動を引き起こすには至らない場合が考えられる。
例えば、電子スロットル異常であれば、電子スロットルの経年変化による劣化状態や気候等の環境条件により、故障が発生しているとＥＣＵ１１によって判定され易くなる可能性がある。そして、故障検出条件にもよるが、電子スロットルが故障と判定されるぎりぎりの状態になってＥＣＵ１１により実際に故障と判定されても、「ＮＥ急上昇」という挙動を招くには至らない場合が考えられる。
【０１１０】
そこで、第２実施形態のデータ記憶装置４５では、発生中故障のなかに検出挙動の挙動誘発故障があっても、その挙動誘発故障の検出回数が所定値Ｎ以上であれば、その挙動誘発故障は検出挙動の発生原因ではないと判断している。もし、その挙動誘発故障が今回検出した挙動の発生原因となるのであれば、その挙動誘発故障が今回の挙動検出時よりも前に発生した時点（即ち、その挙動誘発故障の検出回数が所定値Ｎ未満である時点）で、今回と同じ挙動が検出されているはずだからである。
【０１１１】
そして、このような第２実施形態のデータ記憶装置４５によれば、発生中故障が検出挙動の発生原因であるか否か、延いては、保存対象制御データをメモリ５３に記憶しなくても良いか否か、を一層正しく判定することができる。
【０１１２】
また、第２実施形態のデータ記憶装置４５によれば、図８の故障検出回数初期化処理を行うため、例えば、ＥＣＵ１１，１２によって故障の有無が判定される診断対象の機器（車両の部品である）のうち、故障することが検出対象の挙動の発生原因となり得る機器を新品に交換した場合に、その機器に関する故障情報の消去と共に、その機器の故障の検出回数を０に初期化することができる。
【０１１３】
そして、このような機器の交換タイミングで故障の検出回数を初期化すれば、交換後の機器の故障が原因で検出対象の挙動が発生して該挙動を検出した場合に、その機器の故障が検出挙動の発生原因ではないと誤判断されて実質的に無駄となる保存対象制御データがメモリ５３に記憶されてしまうことを防止することができる。交換前の機器についての故障の検出回数を残していると、その検出回数が所定値Ｎ以上になっている場合に、上記の誤判断がされてしまうからである。
【０１１４】
尚、本実施形態では、図７におけるＳ２４０〜Ｓ２７５の処理と図６の計数処理とが、原因判定手段としての処理に相当し、図６の計数処理は、計数手段としての処理にも相当している。
【０１１５】
以上、本発明の一実施形態について説明したが、本発明はこうした実施形態に何等限定されるものではなく、本発明の要旨を逸脱しない範囲において、種々なる態様で実施し得ることは勿論である。
【０１１６】
例えば、通信線３に接続されて故障検出処理を行うＥＣＵは、２つに限らず、１つあるいは３つ以上であっても良い。
また、ＥＣＵの種類も、前述したエンジンＥＣＵや電源ＥＣＵに限らず、他の制御を行うＥＣＵでも良い。
【０１１７】
また、検出対象の挙動や故障の種類も、前述したものに限らず、他の種類の挙動や故障であっても良い。
また、記憶する保存対象制御データの種類は、検出対象の挙動毎に異なっていても、共通であっても、何れでも良い。
【０１１８】
また、保存対象制御データの記憶先（不揮発性のデータ記憶手段）は、ＥＥＰＲＯＭやフラッシュメモリ等の不揮発性メモリに限らず、例えば、カード型やディスク型の記憶媒体や、ハードディスク等の記憶装置であっても良い。
【０１１９】
また、故障種類情報は、メモリ５３とは別の記憶媒体に記憶されるようになっていても良い。
また、ＥＣＵは、図２のＳ１３０にて、故障情報と共に、その時点での所定の制御データも、メモリ２３，３３に記憶するようになっていても良い。
【０１２０】
一方、車両に搭載されて故障検出処理を行うＥＣＵの何れかを、データ記憶装置４５として構成しても良い。図１を例に挙げると、ＥＣＵ１１，１２の一方又は両方に、データ記憶装置４５の機能を持たせても良い。そのような構成によれば、ＥＣＵとデータ記憶装置とのハードウェアの共有化により、低コスト化を図ることができる。
【符号の説明】
【０１２１】
１…車載通信システム、３…通信線、１１，１２…ＥＣＵ（電子制御装置）
２１，３１，５１…マイコン、２５，３５，５５…通信回路、
２３，３３，５３…データの書き換えが可能な不揮発性メモリ
５３ａ，５３ｂ…記憶領域、２７，３７…センサ、２９，３９…アクチュエータ
４１…ツール、４３…コネクタ、４５…データ記憶装置
６１…情報管理センタの処理装置
【図１】
0005278498.tif 000002
【図２】
0005278498.tif 000003
【図３】
0005278498.tif 000004
【図４】
0005278498.tif 000005
【図５】
0005278498.tif 000006
【図６】
0005278498.tif 000007
【図７】
0005278498.tif 000008
【図８】
0005278498.tif 000009
【図９】
0005278498.tif 000010