(57)【要約】 【課題】  異常原因を早期にかつ簡単に究明することが可能なドライブレコーダおよびそのデータ記憶方法を提供する。【解決手段】  ＣＰＵ２は、所定の事象が検出されるか否かを判断し、かつ記憶すべきデータの優先順位を判断する。不揮発性ＲＡＭ９は、その判断結果に基づいて、揮発性ＲＡＭ８に一時記憶されたデータを前記優先順位に従って記憶する。単にデータを記憶するだけでなく、解析するに足る必要十分なデータを特に優先順位に従って記憶する。【選択図】      図１
2006274852.tif 000002
【特許請求の範囲】
【請求項１】
車両の各種データを一時記憶手段に一時記憶させておき、所定の事象を検出した場合に、該一時記憶手段に記憶されたデータを不揮発性記憶手段に記憶させる制御を行う記憶制御手段を備えたドライブレコーダであって、
前記記憶制御手段は、前記事象の種別毎に優先順位を設けており、前記不揮発性記憶手段に記憶されているデータの事象の優先順位と、新たに検出した事象の優先順位とに基づいて、前記不揮発性記憶手段に記憶させておくデータを判断することを特徴とするドライブレコーダ。
【請求項２】
車両の各種データを一時記憶手段に一時記憶させておき、所定の事象が発生した場合に、該一時記憶手段に記憶されたデータを不揮発性記憶手段に記憶させる制御を行う記憶制御手段を備えたドライブレコーダであって、
前記記憶制御手段は、前記事象の種別毎に検出回数をカウントし、前記不揮発性記憶手段に記憶されているデータの事象の検出回数と、新たに検出した事象の検出回数とに基づいて、前記不揮発性記憶手段に記憶させておくデータを判断することを特徴とするドライブレコーダ。
【請求項３】
前記記憶制御手段は、前記所定の事象の検出に伴って遅延計数手段が計数する条件で、不揮発性記憶手段にデータを記憶させる制御を行うことを特徴とする請求項１または２記載のドライブレコーダ。
【請求項４】
前記不揮発性記憶手段には、該不揮発性記憶手段にすでに記憶されているデータの事象と、新たに検出される事象とを比較するための事象情報が記憶されていることを特徴とする請求項１または２記載のドライブレコーダ。
【請求項５】
前記記憶制御手段は、不揮発性記憶手段にすでに記憶されているデータの事象よりも新たに検出される事象の優先順位が高いとき、該検出される事象のデータに更新する制御を行うことを特徴とする請求項１，３，４のいずれか１つに記載のドライブレコーダ。
【請求項６】
前記記憶制御手段は、不揮発性記憶手段にすでに記憶されているデータの事象よりも新たに検出される事象の優先順位が低いとき、該検出される事象のデータを破棄する制御を行うことを特徴とする１，３〜５のいずれか１つに記載のドライブレコーダ。
【請求項７】
前記不揮発性記憶手段にすでに記憶されているデータの事象と新たに検出される事象とが同一事象のとき、前記記憶制御手段は、当該事象の検出回数を計数する制御を行うとともに、該検出される事象のデータを更新するか否かを選択する制御を行うことを特徴とする請求項２〜４のいずれか１つに記載のドライブレコーダ。
【請求項８】
前記不揮発性記憶手段にすでに記憶されているデータの事象と検出される事象とが異なる事象のとき、記憶されているデータの事象よりも検出される事象の検出回数が「大」の条件で、前記記憶制御手段は、当該事象の検出回数を計数する制御を行うとともに、検出される事象のデータを不揮発性記憶手段に記憶させる制御を行うことを特徴とする請求項２〜４のいずれか１つに記載のドライブレコーダ。
【請求項９】
前記不揮発性記憶手段にすでに記憶されているデータの事象と検出される事象とが異なる事象のとき、記憶されているデータの事象よりも検出される事象の検出回数が「小」の条件で、前記記憶制御手段は、当該事象の検出回数を計数する制御を行うとともに、検出される事象のデータを破棄する制御を行うことを特徴とする請求項２〜４，８のいずれか１つに記載のドライブレコーダ。
【請求項１０】
前記不揮発性記憶手段にすでに記憶されているデータの事象と検出される事象とが異なる事象のとき、記憶されているデータの事象の検出回数と検出される事象の検出回数とが同一の条件で、前記記憶制御手段は、当該事象の検出回数を計数する制御を行うとともに、検出される事象のデータを更新するか否かを選択する制御を行うことを特徴とする請求項２〜４，８，９のいずれか１つに記載のドライブレコーダ。
【請求項１１】
前記不揮発性記憶手段にすでに記憶されているデータの事象と検出される事象とが異なる事象のとき、記憶されているデータの事象の検出回数と検出される事象の検出回数とが同一の条件で、前記記憶制御手段は、当該事象の検出回数を計数する制御を行うとともに、検出される事象のデータを前記優先順位に従って記憶する制御を行うことを特徴とする２〜４，８〜１０のいずれか１つに記載のドライブレコーダ。
【請求項１２】
車両の各種データを一時記憶手段に一時記憶させておき、所定の事象を検出した場合に、該一時記憶手段に記憶されたデータを不揮発性記憶手段に記憶させるドライブレコーダのデータ記憶方法であって、
前記事象の種別毎に優先順位を設けておく工程と、
前記不揮発性記憶手段に記憶されているデータの事象の優先順位と、新たに検出した事象の優先順位とに基づいて、前記不揮発性記憶手段に記憶させておくデータを判断する工程とを有することを特徴とするドライブレコーダのデータ記憶方法。
【請求項１３】
車両の各種データを一時記憶手段に一時記憶させておき、所定の事象が発生した場合に、該一時記憶手段に記憶されたデータを不揮発性記憶手段に記憶させるドライブレコーダのデータ記憶方法であって、
前記事象の種別毎に検出回数をカウントする工程と、
前記不揮発性記憶手段に記憶されているデータの事象の検出回数と、新たに検出した事象の検出回数とに基づいて、前記不揮発性記憶手段に記憶させておくデータを判断する工程とを有することを特徴とするドライブレコーダのデータ記憶方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、たとえば車両の異常原因を究明するためのドライブレコーダおよびそのデータ記憶方法に関する。
【背景技術】
【０００２】
車両になんらかの異常が発生したとき、その異常原因を特定する技術が実用に供されている（たとえば特許文献１，２参照）。従来の技術では、たとえば制御系に異常が発生したとき、電子制御装置（略称ＥＣＵ：Electric Computer Unit）は、異常検出した瞬間の全制御データをメモリに記憶している。
【０００３】
【特許文献１】特開平９−１６０６０２号公報
【特許文献２】特開平８−１２１２３８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
従来の技術では、瞬間的なデータを記憶しているだけであるので、解析すべき情報としては不十分であり、次のような問題がある。（１）異常原因を解析するには、再現試験等を実施しなければならない。それ故、異常原因を解析するための時間、費用が嵩む。（２）再現試験等を実施したとしても同一の条件で再現試験を実施できず、それ故、異常原因を特定することが困難である。
【０００５】
本発明の目的は、異常原因を早期にかつ簡単に究明することが可能なドライブレコーダおよびそのデータ記憶方法を提供することである。
【課題を解決するための手段】
【０００６】
本発明は、車両の各種データを一時記憶手段に一時記憶させておき、所定の事象を検出した場合に、該一時記憶手段に記憶されたデータを不揮発性記憶手段に記憶させる制御を行う記憶制御手段を備えたドライブレコーダであって、
前記記憶制御手段は、前記事象の種別毎に優先順位を設けており、前記不揮発性記憶手段に記憶されているデータの事象の優先順位と、新たに検出した事象の優先順位とに基づいて、前記不揮発性記憶手段に記憶させておくデータを判断することを特徴とするドライブレコーダである。
【０００７】
また本発明は、車両の各種データを一時記憶手段に一時記憶させておき、所定の事象が発生した場合に、該一時記憶手段に記憶されたデータを不揮発性記憶手段に記憶させる制御を行う記憶制御手段を備えたドライブレコーダであって、
前記記憶制御手段は、前記事象の種別毎に検出回数をカウントし、前記不揮発性記憶手段に記憶されているデータの事象の検出回数と、新たに検出した事象の検出回数とに基づいて、前記不揮発性記憶手段に記憶させておくデータを判断することを特徴とするドライブレコーダである。
【０００８】
また本発明は、前記記憶制御手段は、前記所定の事象の検出に伴って遅延計数手段が計数する条件で、不揮発性記憶手段にデータを記憶させる制御を行うことを特徴とする。
【０００９】
また本発明は、前記不揮発性記憶手段には、該不揮発性記憶手段にすでに記憶されているデータの事象と、新たに検出される事象とを比較するための事象情報が記憶されていることを特徴とする。
【００１０】
また本発明は、前記記憶制御手段は、不揮発性記憶手段にすでに記憶されているデータの事象よりも新たに検出される事象の優先順位が高いとき、該検出される事象のデータに更新する制御を行うことを特徴とする。
【００１１】
また本発明は、前記記憶制御手段は、不揮発性記憶手段にすでに記憶されているデータの事象よりも新たに検出される事象の優先順位が低いとき、該検出される事象のデータを破棄する制御を行うことを特徴とする。
【００１２】
また本発明は、前記不揮発性記憶手段にすでに記憶されているデータの事象と新たに検出される事象とが同一事象のとき、前記記憶制御手段は、当該事象の検出回数を計数する制御を行うとともに、該検出される事象のデータを更新するか否かを選択する制御を行うことを特徴とする。
【００１３】
また本発明は、前記不揮発性記憶手段にすでに記憶されているデータの事象と検出される事象とが異なる事象のとき、記憶されているデータの事象よりも検出される事象の検出回数が「大」の条件で、前記記憶制御手段は、当該事象の検出回数を計数する制御を行うとともに、検出される事象のデータを不揮発性記憶手段に記憶させる制御を行うことを特徴とする。
【００１４】
また本発明は、前記不揮発性記憶手段にすでに記憶されているデータの事象と検出される事象とが異なる事象のとき、記憶されているデータの事象よりも検出される事象の検出回数が「小」の条件で、前記記憶制御手段は、当該事象の検出回数を計数する制御を行うとともに、検出される事象のデータを破棄する制御を行うことを特徴とする。
【００１５】
また本発明は、前記不揮発性記憶手段にすでに記憶されているデータの事象と検出される事象とが異なる事象のとき、記憶されているデータの事象の検出回数と検出される事象の検出回数とが同一の条件で、前記記憶制御手段は、当該事象の検出回数を計数する制御を行うとともに、検出される事象のデータを更新するか否かを選択する制御を行うことを特徴とする。
【００１６】
また本発明は、前記不揮発性記憶手段にすでに記憶されているデータの事象と検出される事象とが異なる事象のとき、記憶されているデータの事象の検出回数と検出される事象の検出回数とが同一の条件で、前記記憶制御手段は、当該事象の検出回数を計数する制御を行うとともに、検出される事象のデータを前記優先順位に従って記憶する制御を行うことを特徴とする。
【００１７】
また本発明は、車両の各種データを一時記憶手段に一時記憶させておき、所定の事象を検出した場合に、該一時記憶手段に記憶されたデータを不揮発性記憶手段に記憶させるドライブレコーダのデータ記憶方法であって、
前記事象の種別毎に優先順位を設けておく工程と、
前記不揮発性記憶手段に記憶されているデータの事象の優先順位と、新たに検出した事象の優先順位とに基づいて、前記不揮発性記憶手段に記憶させておくデータを判断する工程とを有することを特徴とするドライブレコーダのデータ記憶方法である。
【００１８】
また本発明は、車両の各種データを一時記憶手段に一時記憶させておき、所定の事象が発生した場合に、該一時記憶手段に記憶されたデータを不揮発性記憶手段に記憶させるドライブレコーダのデータ記憶方法であって、
前記事象の種別毎に検出回数をカウントする工程と、
前記不揮発性記憶手段に記憶されているデータの事象の検出回数と、新たに検出した事象の検出回数とに基づいて、前記不揮発性記憶手段に記憶させておくデータを判断する工程とを有することを特徴とするドライブレコーダのデータ記憶方法である。
【発明の効果】
【００１９】
本発明によれば、所定の事象を検出した場合に、記憶制御手段は、一時記憶手段に一時記憶されたデータのうち不揮発性記憶手段に記憶させておくデータを、事象の優先順位に基づいて判断する。単にデータを記憶するだけでなく、解析するに足る必要十分なデータを特に優先順位に従って記憶するので、異常原因等を解析すべき対象に対し、従来技術よりも早期にかつ簡単に原因究明を図ることが可能となり、その対策を講じることができる。逆に、事象の優先順位によっては、不揮発性記憶手段に記憶させないデータを峻別することが可能となるので、不揮発性記憶手段の容量が少なくてもすむ。
【００２０】
また本発明によれば、所定の事象が発生した場合に、記憶制御手段は、一時記憶手段に一時記憶されたデータのうち不揮発性記憶手段に記憶させておくデータを、事象の検出回数に基づいて判断する。検出回数が多い事象を重要なデータとみなし、異常原因等を解析すべき対象に対し、早期にかつ簡単に原因究明を図ることが可能となり、その対策を講じることができる。事象の検出回数によっては、不揮発性記憶手段に記憶させないデータを峻別することが可能となるので、不揮発性記憶手段の容量が少なくてもすむ。
【００２１】
また本発明によれば、所定の事象の検出に伴って遅延計数手段が計数する条件で、不揮発性記憶手段にデータを記憶させるので、事象検出直後にデータを記憶するよりも異常原因等を解析し得る確率を高めることができる。これまで異常原因が特定できなかった挙動に関連するデータを取得することが可能となる。
【００２２】
また本発明によれば、不揮発性記憶手段に記憶されているデータの事象および事象情報によって、データの優先順位の判断または検出回数の比較を行うことが可能となる。
【００２３】
また本発明によれば、検出される事象の優先順位が高いとき、記憶制御手段は該検出される事象のデータに更新する制御を行うので、真に利用されるべきデータのみを優先的に記憶でき、そのデータが解析に供される。
【００２４】
また本発明によれば、検出される事象の優先順位が低いとき、記憶制御手段は該検出される事象のデータを破棄する制御を行うので、不要と考えられるデータを積極的に破棄して不揮発性記憶手段の空き容量を確保することができる。
【００２５】
また本発明によれば、すでに記憶されているデータの事象と新たに検出される事象とが同一事象のとき、記憶制御手段は、該検出される事象のデータを更新するか否かを選択する制御を行うので、選択肢を高めることが可能となる。また当該事象の検出回数を計数し、その検出回数が異常原因等の解析に供される。
【００２６】
また本発明によれば、記憶されているデータの事象より、検出される事象の検出回数が「大」の条件で、記憶制御手段は、検出される事象のデータを不揮発性記憶手段に記憶させる制御を行う。このように真に利用されるデータのみを確実に記憶することが可能となる。
【００２７】
また本発明によれば、記憶されているデータの事象より、検出される事象の検出回数が「小」の条件で、記憶制御手段は、検出される事象のデータを破棄する制御を行う。それ故、不揮発性記憶手段の空き容量を確保することが可能となる。
【００２８】
また本発明によれば、すでに記憶されているデータの事象と検出される事象とが異なる事象のとき、それらの事象の検出回数が同一（つまり同数）の条件で、記憶制御手段は、該検出される事象のデータを更新するか否かを選択する制御を行うので、選択肢を高めることが可能となる。また当該事象の検出回数を計数し、その検出回数が異常原因等の解析に供される。
【００２９】
また本発明によれば、すでに記憶されているデータの事象と検出される事象とが異なる事象のとき、それらの事象の検出回数が同一（つまり同数）の条件で、記憶制御手段は当該事象の検出回数を計数する制御を行うとともに、検出される事象のデータを前記優先順位に従って記憶する制御を行う。このように検出回数による優劣がないとき、データを特に前記優先順位に従って記憶するので、異常原因等を解析すべき対象に対し、早期の原因究明を図ることが可能となり、その対策を講じることができる。
【００３０】
また本発明によれば、事象の種別毎に優先順位を設けておき、一時記憶手段に一時記憶されたデータのうち不揮発性記憶手段に記憶させておくデータを、事象の優先順位に基づいて判断する。単にデータを記憶するだけでなく、解析するに足る必要十分なデータを、特に優先順位に従って記憶するので、異常原因等を解析すべき対象に対し、早期にかつ簡単に原因究明を図ることが可能となり、その対策を講じることができる。逆に、事象の優先順位によっては、不揮発性記憶手段に記憶させないデータを峻別することが可能となるので、不揮発性記憶手段の容量が少なくてもすむ。
【００３１】
また本発明によれば、所定の事象が発生した場合に、一時記憶手段に一時記憶されたデータのうち不揮発性記憶手段に記憶させておくデータを、事象の検出回数に基づいて判断する。検出回数が多い事象を重要なデータとみなし、異常原因等を解析すべき対象に対し、早期にかつ簡単に原因究明を図ることが可能となり、その対策を講じることができる。事象の検出回数によっては、不揮発性記憶手段に記憶させないデータを峻別することが可能となるので、不揮発性記憶手段の容量が少なくてもすむ。
【発明を実施するための最良の形態】
【００３２】
以下、図面を参照しながら本発明を実施するための形態を、複数の形態について説明する。各形態で先行する形態で説明している事項に対応している部分には同一の参照符を付し、重複する説明を略する場合がある。構成の一部のみを説明している場合、構成の他の部分は、先行して説明している形態と同様とする。実施の各形態で具体的に説明している部分の組合せばかりではなく、特に組合せに支障が生じなければ、実施の形態同士を部分的に組合せることも可能である。
【００３３】
図１は、本発明の実施形態に係るデータ記憶装置１等を示し、図１（ａ）はその制御系のブロック図、図１（ｂ）はデータをストアする順序、タイミング等を説明するための図、図１（ｃ）は不揮発性ＲＡＭ９へのデータ記憶方法を説明するための図である。本実施形態に係るデータ記憶装置１は、たとえば車両用のドライブレコーダなどに適用される。ただし車両用のドライブレコーダのみに限定されるものではない。たとえばデータ記憶装置１をフライトレコーダ等、各種記憶装置に適応可能である。なお以下の説明は、データ記憶方法についての説明をも含む。
【００３４】
データ記憶装置１は、主に、記憶制御手段としての中央演算処理装置２（略称ＣＰＵ；Central Processing Unit）、ロム３（ＲＯＭ；Read Only Memory）、ラム４（ＲＡＭ；
Random Access Memory）およびバス５を含むマイクロコンピュータ６と、入出力インタフェース７と、揮発性ＲＡＭ８と、不揮発性ＲＡＭ９とを有する。揮発性ＲＡＭ８および不揮発性ＲＡＭ９は、それぞれ入出力インタフェース７に電気的に接続されている。入出力インタフェース７には、イグニッション信号１０が入力されるうえ、車両データに対応する事象１１を検出するための信号が入力されるようになっている。前記イグニッション信号１０は、イグニッションＯＮ信号およびイグニッションＯＦＦ信号を含む。前記車両データを単にデータという場合がある。
【００３５】
一時記憶手段である揮発性ＲＡＭ８には、データが、配列形式として予め定める処理タイミング毎に一旦記憶され、配列内のデータが該揮発性ＲＡＭの最大許容限度に達した時点で、時間的に古いデータから順次更新され、常に時系列でデータが記憶されている状態となるようにデータストアを繰り返すように構成されている。不揮発性記憶手段である不揮発性ＲＡＭ９には、後述する予め定める条件を満たすとき揮発性ＲＡＭ８に一時記憶されたデータが記憶されるように構成されている。
【００３６】
図２は、不揮発性ＲＡＭ９へのデータストア条件を説明するための図である。揮発性ＲＡＭ８または不揮発性ＲＡＭ９に記憶されうる複数種類のデータが設定されており、各データに対応する事象が予め規定されている。ここで事象の具体例として、事象「Ａ」をエンジンストップいわゆるエンスト、事象「Ｂ」を始動不良、事象「Ｃ」をアイドル不安定とする。ただしこれらの事象「Ａ」，「Ｂ」，「Ｃ」のみに必ずしも限定されるものではない。たとえば図２（１）に示すように、事象毎に独立した事象判定フラグがたつとき、その瞬間からデータストアを開始するように構成される。たとえば図２（２）に示すように、前記事象判定フラグがたつとき、事象毎に設定したデータストア用ディレイカウンタ分遅延して（たとえば２００ｍｓ以上３００ｍｓ以下）データストアを開始するように構成される。前記ディレイカウンタが「遅延計数手段」に相当する。ディレイカウンタの設定値は前記値に限定されず、任意の値に設定可能である。
【００３７】
図３は、不揮発性ＲＡＭ９の空き領域にデータを記憶する方法を示す図である。本実施形態においては、事象「Ａ」，「Ｂ」，「Ｃ」に対しデータストアすべき優先順位が付与される場合がある。その制御フローについては図１２〜図１４にて後述する。前記優先順位の最も高い事象が「Ａ」、次の優先事象が「Ｂ」、最も優先順位の低い事象が「Ｃ」と規定されている。図３に示すように、揮発性ＲＡＭデータを不揮発性ＲＡＭ９に記憶するにあたり、データ記憶装置１のバッテリクリアを実行した後、不揮発性ＲＡＭ９にデータが一度も記憶されていない場合には、優先順位に関係なくデータを記憶するようになっている。具体的に検出事象が「Ａ」でかつ不揮発性ＲＡＭ領域が空きの場合には、たとえば事象「Ａ」に対応する揮発性ＲＡＭデータが、不揮発性ＲＡＭ領域に記憶されるようになっている。前記揮発性ＲＡＭデータとは、揮発性ＲＡＭ８に一旦記憶されたデータと同義である。
【００３８】
図４、図５は、不揮発性ＲＡＭ９に、優先順位の高い事象のデータを記憶する方法を示す図である。揮発性ＲＡＭデータを不揮発性ＲＡＭ９に記憶するにあたり、不揮発性ＲＡＭ９に何らかの事象に対応するデータが記憶されている。この記憶されている事象よりも今回判定した事象の優先順位が高い場合には、今回のデータに更新するようになっている。図４に示すように検出事象が「Ａ」でかつ不揮発性ＲＡＭ領域に事象「Ｃ」が記憶されている場合には、不揮発性ＲＡＭ領域が事象「Ａ」に対応するデータに更新され、図５に示すように検出事象が「Ｃ」でかつ不揮発性ＲＡＭ領域に事象「Ｂ」が記憶されている場合には、今回のデータはそのまま破棄されるようになっている。
【００３９】
図６は、検出される優先順位が同一の事象のデータを、不揮発性ＲＡＭ９に記憶するか否かを選択する機能を説明するための図である。不揮発性ＲＡＭ９に何らかの事象に対応するデータが記憶されており、すでに記憶されている事象と今回判定した事象とが同一事象の場合には、今回のデータに更新するか否かを任意に設定できるようになっている。
【００４０】
次に、事象の判定回数（検出回数）に基づいて、データを不揮発性ＲＡＭ９に記憶する種々の方法について説明する。図７は、不揮発性ＲＡＭ９の空き領域にデータを記憶する方法を示す図である。不揮発性ＲＡＭ９にデータを記憶するにあたり、検出事象毎に検出手段としてのカウンタを持たせ、バッテリクリアを実行した後、不揮発性ＲＡＭ９にデータが一度も記憶されていない場合には、カウント数に関係なくデータを記憶するようになっている。前記カウント数とは、事象の判定回数と同義である。
【００４１】
図８は、同一の事象データを不揮発性ＲＡＭ９に記憶するか否かを選択する機能を説明するための図である。揮発性ＲＡＭデータを不揮発性ＲＡＭ９に記憶するにあたり、不揮発性ＲＡＭ９に何らかの事象に対応するデータが記憶されている。この記憶されている事象と今回検出した事象とが同一事象の場合には、その事象のカウントアップを実施し、今回のデータに更新するか否かを任意に設定できるようになっている。
【００４２】
図９は、検出される事象の検出回数が「大」の条件で、検出される事象のデータを記憶する機能を説明するための図である。揮発性ＲＡＭデータを不揮発性ＲＡＭ９に記憶するにあたり、不揮発性ＲＡＭ９に何らかの事象に対応するデータが記憶されている。この記憶されている事象と今回検出した事象とが異なっており、今回検出した事象のカウントアップ後、今回検出した事象のカウント数が、すでに記憶されている事象のカウント数よりも「大」の条件で、今回検出した事象のデータが記憶されるようになっている。
【００４３】
図１０は、検出される事象の検出回数が同一の条件で、検出される事象のデータを不揮発性ＲＡＭ９に記憶するか否かを選択する機能を説明するための図である。揮発性ＲＡＭデータを不揮発性ＲＡＭ９に記憶するにあたり、不揮発性ＲＡＭ９に何らかの事象に対応するデータが記憶されている。この記憶されている事象と今回検出した事象とが異なっており、今回検出した事象のカウントアップ後、今回検出した事象のカウント数と、記憶されている事象のカウント数とが同数の条件で、今回のデータに更新するか否かを任意に設定できるようになっている。
【００４４】
図１１は、検出される事象の検出回数が同一の条件で、優先順位の高い事象のデータを不揮発性ＲＡＭ９に記憶する機能を説明するための図である。本実施形態では、優先順位の最も高い事象が「Ａ」、次の優先事象が「Ｂ」、最も優先順位の低い事象が「Ｃ」と規定されている。揮発性ＲＡＭデータを不揮発性ＲＡＭ９に記憶するにあたり、不揮発性ＲＡＭ９に何らかの事象に対応するデータが記憶されている。この記憶されている事象と今回検出した事象とが異なっており、今回検出した事象のカウントアップ後、今回検出した事象のカウント数と、すでに記憶されている事象のカウント数とが同数の場合、記憶されている事象と今回判定した事象の優先順位を比較し、優先順位の高い事象に対応するデータが記憶されるようになっている。
【００４５】
図１２は、本発明の実施形態に係るデータ記憶方法のメインルーチンを段階的に示すフローチャートである。図１３は、本発明の第１の実施形態に係り、優先順位順でかつカウンタなしのデータ記憶方法のサブルーチン（Ａ、Ｂ、Ｃ）をそれぞれ示すフローチャートである。本処理の制御主体は、特に記載しない限りＣＰＵ２である。たとえば車両のエンジンがスタートする条件で本処理が開始する。他の実施形態も含み、この開始条件に限定されるものではない。先ずステップｓ１でイグニッション信号（ＩＧと称す）がオンの後、ステップｓ２で車両走行データを取得して配列Ｒ［ａ］に１フレーム分ストアする。次にステップｓ３でＩＧオフか否かを判断する。ＩＧオフ判断で終了し、ＩＧオン判断でステップｓ４に移行し、事象「Ａ」判定フラグがオンで図１３Ａのサブルーチンに移行する。前記オンでないと判断すると、ステップｓ５に移行して事象「Ｂ」判定フラグがオンで図１３Ｂのサブルーチンに移行する。前記オンでないと判断すると、ステップｓ６に移行して事象「Ｃ」判定フラグがオンで図１３Ｃのサブルーチンに移行する。前記オンでないと判断すると、ステップｓ７に移行して配列要素数「ａ」が最大許容限度に至ったか否かを判断する。至ったと判断すると、ステップｓ８に移行して配列要素数「ａ」を「０」にした後ステップｓ２に戻る。最大許容限度でないと判断するとステップｓ８に移行することなくステップｓ２に戻る。
【００４６】
前記ステップｓ４におけるフラグオン判定で、ステップｓ９に移行し、車両走行データを取得して配列Ｒ［ａ］に１フレーム分ストアする。次にステップｓ１０で、事象「Ａ」判定後その事象「Ａ」特有のディレイカウンタが遅延したか否かを判断する。遅延していないと判断するとステップｓ９に戻り、遅延したと判断するとステップｓ１１に移行する。ここで不揮発性ＲＡＭ取得事象つまり既存の不揮発性ＲＡＭ領域の事象が「Ａ」であるか否かを判断する。前記事象「Ａ」と判断すると、データ破棄設定をするか否かを判断する（ステップｓ１２）。前記事象「Ａ」でないと判断すると、ステップｓ１４に移行する。ステップｓ１３にて今回の事象に対応するデータをそのまま破棄し、その後ステップｓ５に移行する。
【００４７】
前記ステップｓ１４で、１フレーム分の揮発性ＲＡＭデータを不揮発性ＲＡＭ９に書き込み、ステップｓ１５では事象「Ａ」の取得要求周期（ｃｙｃｌｅａ）をたとえば「２」とし、取得データ種類を「１」としている（図１（ｃ）参照）。よって不揮発性ＲＡＭ９に記憶されるフレームは、１つとばしとなる。前記取得データ種類の個数は、小さいほど重要度が高くなる。なお図１（ｃ）に示すように本実施形態では、不揮発性ＲＡＭ９に記憶し始める起点を揮発性ＲＡＭ８のアドレスの始め（先頭位置）にしているが、必ずしもこの形態に限定されるものではない。たとえば不揮発性ＲＡＭ９に記憶し始める起点を、事象Ａが発生した場所Ｐ（１）、もしくは最新データ場所（Ｐ２）にしてもよい。次にステップｓ１６で、揮発性ＲＡＭデータを一通り記憶したかを判定する。記憶していないとの未完了判断でステップｓ１４に戻り、完了判断でステップｓ１７にて不揮発性ＲＡＭ取得事象を「Ａ」とした後、ステップｓ５に移行する。
【００４８】
ステップｓ５のフラグオンで図１３Ｂのサブルーチンに移行し、不揮発性ＲＡＭ取得事象つまり既存の不揮発性ＲＡＭ領域の事象が「Ａ」であるか否かを判断する（ステップｓ１８）。前記事象「Ａ」と判断するとステップｓ２３でデータ破棄し、その後ステップｓ６に移行する。前記事象「Ａ」でないと判断するとステップｓ１９に移行し、車両走行データを取得して配列Ｒ［ａ］に１フレーム分ストアする。次にステップｓ２０で、事象「Ｂ」判定後その事象「Ｂ」特有のディレイカウンタが遅延したか否かを判断する。遅延していないと判断するとステップｓ１９に戻り、遅延したと判断するとステップｓ２１に移行する。ここで不揮発性ＲＡＭ取得事象つまり既存の不揮発性ＲＡＭ領域の事象が「Ｂ」であるか否かを判断する。前記事象「Ｂ」と判断すると、データ破棄設定をするか否かを判断する（ステップｓ２２）。前記事象「Ｂ」でないと判断すると、ステップｓ２４に移行する。ステップｓ２３にて今回の事象に対応するデータをそのまま破棄し、その後ステップｓ６に移行する。
【００４９】
前記ステップｓ２４で、１フレーム分の揮発性ＲＡＭデータを不揮発性ＲＡＭ９に書き込み、ステップｓ２５では事象「Ｂ」の取得要求周期（ｃｙｃｌｅｂ）をたとえば「２」とし、取得データ種類を「１」としている（図１（ｃ）参照）。よって不揮発性ＲＡＭ９に記憶されるフレームは、１つとばしとなる。前記取得データ種類の個数は、小さいほど重要度が高くなる。なお図１（ｃ）に示すように本実施形態では、不揮発性ＲＡＭ９に記憶し始める起点を揮発性ＲＡＭ８のアドレスの始め（先頭位置）にしているが、必ずしもこの形態に限定されるものではない。たとえば不揮発性ＲＡＭ９に記憶し始める起点を、事象Ｂが発生した場所Ｐ（１）、もしくは最新データ場所（Ｐ２）にしてもよい。次にステップｓ２６で、揮発性ＲＡＭデータを一通り記憶したかを判定する。記憶していないとの未完了判断でステップｓ２４に戻り、完了判断でステップｓ２７にて不揮発性ＲＡＭ取得事象を「Ｂ」とした後、ステップｓ６に移行する。
【００５０】
ステップｓ６のフラグオンで図１３Ｃのサブルーチンに移行し、不揮発性ＲＡＭ取得事象が「Ａ」または「Ｂ」であるか否かを判断する（ステップｓ２８）。前記事象「Ａ」または「Ｂ」と判断するとステップｓ３３でデータ破棄し、その後本処理を終了する。前記事象「Ａ」でもなく「Ｂ」でもないと判断するとステップｓ２９に移行し、車両走行データを取得して配列Ｒ［ａ］に１フレーム分ストアする。次にステップｓ３０で、事象「Ｃ」判定後その事象「Ｃ」特有のディレイカウンタが遅延したか否かを判断する。遅延していないと判断するとステップｓ２９に戻り、遅延したと判断するとステップｓ３１に移行する。ここで不揮発性ＲＡＭ取得事象が「Ｃ」であるか否かを判断する。前記事象「Ｃ」と判断すると、データ破棄設定するか否かを判断する（ステップｓ３２）。前記事象「Ｃ」でないと判断すると、ステップｓ３４に移行する。
【００５１】
前記ステップｓ３４で、１フレーム分の揮発性ＲＡＭデータを不揮発性ＲＡＭ９に書き込み、ステップｓ３５では事象「Ｃ」の取得要求周期（ｃｙｃｌｅｃ）をたとえば「２」とし、取得データ種類を「１」としている（図１（ｃ）参照）。よって不揮発性ＲＡＭ９に記憶されるフレームは、１つどばしとなる。前記取得データ種類の個数は、小さいほど重要度が高くなる。図１（ｃ）に示すように本実施形態では、不揮発性ＲＡＭ９に記憶し始める起点を揮発性ＲＡＭ８のアドレスの始め（先頭位置）にしているが、必ずしもこの形態に限定されるものではない。たとえば不揮発性ＲＡＭ９に記憶し始める起点を、事象Ｃが発生した場所Ｐ（１）、もしくは最新データ場所（Ｐ２）にしてもよい。次にステップｓ３６で、揮発性ＲＡＭデータを一通り記憶したかを判定する。記憶していないとの未完了判断でステップｓ３４に戻り、完了判断でステップｓ３７にて不揮発性ＲＡＭ取得事象を「Ｃ」とした後、本処理を終了する。
【００５２】
図１４は、本発明の第２の実施形態に係り、優先順位順でかつカウンタありのデータ記憶方法のサブルーチン（Ａ、Ｂ、Ｃ）をそれぞれ示すフローチャートである。本処理のメインルーチンは、前述の図１２に示す処理である。よって図１２も参照しつつ説明する。本処理の制御主体は、特に記載しない限りＣＰＵ２である。たとえば車両のエンジンがスタートする条件で本処理が開始する。
【００５３】
前記ステップｓ４におけるフラグオン判定で、図１４Ａに示すステップｓ４０に移行し、事象「Ａ」の判定回数を「１」追加つまりカウントアップする。次にステップｓ４１で車両走行データを取得して配列Ｒ［ａ］に１フレーム分ストアする。次にステップｓ４２で、事象「Ａ」判定後その事象「Ａ」特有のディレイカウンタが遅延したか否かを判断する。遅延していないと判断するとステップｓ４１に戻り、遅延したと判断するとステップｓ４３に移行する。このステップｓ４３において、事象「Ａ」の判定回数が「１」より大か否かを判断する。前記「１」より大と判断すると、ステップｓ４４にてデータ破棄設定をするか否かを判断する。前記「１」より大ではないと判断すると、ステップｓ４６に移行する。ステップｓ４５にて今回の事象に対応するデータをそのまま破棄し、その後ステップｓ５に移行する。
【００５４】
前記ステップｓ４６で１フレーム分の揮発性ＲＡＭデータを不揮発性ＲＡＭ９に書き込み、ステップｓ４７では事象「Ａ」の取得要求周期（ｃｙｃｌｅａ）をたとえば「２」とし、取得データ種類を「１」としている（図１（ｃ）参照）。よって不揮発性ＲＡＭ９に記憶されるフレームは、１つとばしとなる。前記取得データ種類の個数は、小さいほど重要度が高くなる。次にステップｓ４８で、揮発性ＲＡＭデータを一通り記憶したかを判定する。記憶していないとの未完了判断でステップｓ４６に戻り、完了判断でステップｓ５に移行する。
【００５５】
ステップｓ５のフラグオンで図１４Ｂのサブルーチンに移行し、事象「Ａ」の判定回数が「１」以上か否かを判断する（ステップｓ４９）。以前に事象「Ａ」と判断されたことが１回でもあればステップｓ５５にて今回の事象に対応するデータをそのまま破棄し、その後ステップｓ６に移行する。ステップｓ４９で前記「１」以上ではないと判断すると、ステップｓ５０に移行する。ここで事象「Ｂ」の判定回数を「１」追加つまりカウントアップする。次にステップｓ５１で車両走行データを取得して配列Ｒ［ａ］に１フレーム分ストアする。次にステップｓ５２で、事象「Ｂ」判定後その事象「Ｂ」特有のディレイカウンタが遅延したか否かを判断する。遅延していないと判断するとステップｓ５１に戻り、遅延したと判断するとステップｓ５３に移行する。
【００５６】
ここで事象「Ｂ」の判定回数が「１」より大か否かを判断する。前記「１」より大と判断すると、ステップｓ５４にてデータ破棄設定をするか否かを判断する。前記「１」より大ではないと判断するとステップｓ５６に移行し、１フレーム分の揮発性ＲＡＭデータを不揮発性ＲＡＭ９に書き込み、ステップｓ５７では事象「Ｂ」の取得要求周期（ｃｙｃｌｅｂ）をたとえば「２」とし、取得データ種類を「１」としている（図１（ｃ）参照）。よって不揮発性ＲＡＭ９に記憶されるフレームは、１つとばしとなる。前記取得データ種類の個数は、小さいほど重要度が高くなる。次にステップｓ５８で、揮発性ＲＡＭデータを一通り記憶したかを判定する。記憶していないとの未完了判断でステップｓ５６に戻り、完了判断でステップｓ６に移行する。
【００５７】
ステップｓ６のフラグオンで図１４Ｃのサブルーチンに移行し、事象「Ａ」の判定回数が「１」以上かまたは事象「Ｂ」の判定回数が「１」以上かを判断する（ステップｓ５９）。以前に事象「Ａ」または「Ｂ」と判断されたことが１回でもあれば、ステップｓ６５にて今回の事象に対応するデータをそのまま破棄し、その後本処理を終了する。ステップｓ５９で事象「Ａ」または「Ｂ」と判断されたことが１回でもあると判断すると、ステップｓ６０に移行する。ここで事象「Ｃ」の判定回数を「１」追加つまりカウントアップする。次にステップｓ６１で車両走行データを取得して配列Ｒ［ａ］に１フレーム分ストアする。次にステップｓ６２で、事象「Ｃ」判定後その事象「Ｃ」特有のディレイカウンタが遅延したか否かを判断する。遅延していないと判断するとステップｓ６１に戻り、遅延したと判断するとステップｓ６３に移行する。
【００５８】
ここで事象「Ｃ」の判定回数が「１」より大か否かを判断する。前記「１」より大と判断すると、ステップｓ６４にてデータ破棄設定をするか否かを判断する。前記「１」より大ではないと判断するとステップｓ６６に移行し、１フレーム分の揮発性ＲＡＭデータを不揮発性ＲＡＭ９に書き込み、ステップｓ６７では事象「Ｃ」の取得要求周期（ｃｙｃｌｅｃ）をたとえば「２」とし、取得データ種類を「１」としている（図１（ｃ）参照）。よって不揮発性ＲＡＭ９に記憶されるフレームは、１つどばしとなる。前記取得データ種類の個数は、小さいほど重要度が高くなる。次にステップｓ６８で、揮発性ＲＡＭデータを一通り記憶したかを判定する。記憶していないとの未完了判断でステップｓ６６に戻り、完了判断で本処理を終了する。
【００５９】
図１５は、本発明の第３の実施形態に係り、カウンタありでかつ判定回数に基づくデータ記憶方法のサブルーチン（Ａ、Ｂ、Ｃ）をそれぞれ示すフローチャートである。本処理のメインルーチンは、前述の図１２に示す処理である。よって図１２も参照しつつ説明する。本処理の制御主体は、特に記載しない限りＣＰＵ２である。たとえば車両のエンジンがスタートする条件で本処理が開始する。
【００６０】
前記ステップｓ４におけるフラグオン判定で、図１５Ａに示すステップｓ７０に移行し、事象「Ａ」の判定回数を「１」追加つまりカウントアップする。次にステップｓ７１で車両走行データを取得して配列Ｒ［ａ］に１フレーム分ストアする。次にステップｓ７２で、事象「Ａ」判定後その事象「Ａ」特有のディレイカウンタが遅延したか否かを判断する。遅延していないと判断するとステップｓ７１に戻り、遅延したと判断するとステップｓ７３に移行する。このステップｓ７３において、事象「Ａ」の判定回数が、事象「Ｂ」の判定回数以上でかつ、事象「Ｃ」の判定回数以上か判断する。事象「Ｂ」、事象「Ｃ」の判定回数以上と判断すると、ステップｓ７４に移行する。そうではないと判断するとステップｓ８１に移行して今回の事象に対応するデータをそのまま破棄し、その後ステップｓ５に移行する。
【００６１】
ステップｓ７４では、事象「Ａ」の判定回数が、事象「Ｂ」の判定回数と同数ではないか、または事象「Ｃ」の判定回数と同数ではないかを判断する。事象「Ａ」の判定回数が「Ｂ」，「Ｃ」いずれの事象とも同数ではないと判断すると、ステップｓ７５に移行する。いずれかの事象が同数と判断するとステップｓ７７に移行する。ステップｓ７５で事象「Ｂ」、事象「Ｃ」の判定回数がそれぞれ「０」か否かを判断し、それぞれ「０」で事象「Ａ」の判定回数が「１」か否かを判断する（ステップｓ７６）。「１」でなければステップｓ８０に移行し、「１」であればステップｓ７７に移行し、１フレーム分の揮発性ＲＡＭデータを不揮発性ＲＡＭ９に書き込み、ステップｓ７８では事象「Ａ」の取得要求周期（ｃｙｃｌｅａ）をたとえば「２」とし、取得データ種類を「１」としている（図１（ｃ）参照）。よって不揮発性ＲＡＭ９に記憶されるフレームは、１つとばしとなる。前記取得データ種類の個数は、小さいほど重要度が高くなる。次にステップｓ７９で、揮発性ＲＡＭデータを一通り記憶したかを判定する。記憶していないとの未完了判断でステップｓ７７に戻り、完了判断でステップｓ５に移行する。
【００６２】
前記ステップｓ５におけるフラグオン判定で、図１５Ｂに示すステップｓ８２に移行し、事象「Ｂ」の判定回数を「１」追加つまりカウントアップする。次にステップｓ８３で車両走行データを取得して配列Ｒ［ａ］に１フレーム分ストアする。次にステップｓ８４で、事象「Ｂ」判定後その事象「Ｂ」特有のディレイカウンタが遅延したか否かを判断する。遅延していないと判断するとステップｓ８３に戻り、遅延したと判断するとステップｓ８５に移行する。該ステップで事象「Ｂ」の判定回数が、事象「Ａ」の判定回数以上でかつ、事象「Ｃ」の判定回数以上と判断すると、ステップｓ８６に移行する。そうではないと判断するとステップｓ９１に移行して今回の事象に対応するデータをそのまま破棄し、その後ステップｓ６に移行する。
【００６３】
ステップｓ８６では、事象「Ｂ」の判定回数が事象「Ａ」の判定回数と同数ではないかを判断する。同数と判断するとステップｓ９１に移行し、同数ではないと判断するとステップｓ８７に移行する。ここで事象「Ｂ」の判定回数が事象「Ｃ」の判定回数と同数ではないかを判断する。同数ではないと判断すると、ステップｓ８８に移行する。同数と判断すると後述するステップｓ９２に移行する。ステップｓ８８では、事象「Ａ」、事象「Ｃ」の判定回数がそれぞれ「０」か否かを判断し、それぞれ「０」で事象「Ｂ」の判定回数が「１」か否かを判断する（ステップｓ８９）。「１」でなければステップｓ９０に移行する。「１」であればステップｓ９２に移行し、１フレーム分の揮発性ＲＡＭデータを不揮発性ＲＡＭ９に書き込み、ステップｓ９３では事象「Ｂ」の取得要求周期（ｃｙｃｌｅｂ）をたとえば「２」とし、取得データ種類を「１」としている（図１（ｃ）参照）。よって不揮発性ＲＡＭ９に記憶されるフレームは、１つとばしとなる。前記取得データ種類の個数は、小さいほど重要度が高くなる。次にステップｓ９４で、揮発性ＲＡＭデータを一通り記憶したかを判定する。記憶していないとの未完了判断でステップｓ９２に戻り、完了判断でステップｓ６に移行する。
【００６４】
前記ステップｓ６におけるフラグオン判定で、図１５Ｃに示すステップｓ９５に移行し、事象「Ｃ」の判定回数を「１」追加つまりカウントアップする。次にステップｓ９６で車両走行データを取得して配列Ｒ［ａ］に１フレーム分ストアする。次にステップｓ９７で、事象「Ｃ」判定後その事象「Ｃ」特有のディレイカウンタが遅延したか否かを判断する。遅延していないと判断するとステップｓ９６に戻り、遅延したと判断するとステップｓ９８に移行する。該ステップで事象「Ｃ」の判定回数が、事象「Ａ」の判定回数以上でかつ、事象「Ｂ」の判定回数以上と判断すると、ステップｓ９９に移行する。そうではないと判断するとステップｓ１０３に移行して今回の事象に対応するデータをそのまま破棄し、その後本処理を終了する。
【００６５】
ステップｓ９９では、事象「Ｃ」の判定回数が、事象「Ａ」の判定回数と同数ではないか、または事象「Ｂ」の判定回数と同数ではないかを判断する。事象「Ｃ」の判定回数が「Ａ」，「Ｂ」いずれの事象とも同数ではないと判断すると、ステップｓ１００に移行する。前記いずれかの事象と同数と判断すると、ステップｓ１０３に移行する。ステップｓ１００では、事象「Ａ」、事象「Ｃ」の判定回数がそれぞれ「０」か否かを判断し、それぞれ「０」で事象「Ａ」の判定回数が「１」か否かを判断する（ステップｓ１０１）。「１」でなければステップｓ１０２に移行し、「１」であればステップｓ１０４に移行し、１フレーム分の揮発性ＲＡＭデータを不揮発性ＲＡＭ９に書き込み、ステップｓ１０５では事象「Ｃ」の取得要求周期（ｃｙｃｌｅｃ）をたとえば「２」とし、取得データ種類を「１」としている（図１（ｃ）参照）。よって不揮発性ＲＡＭ９に記憶されるフレームは、１つどばしとなる。前記取得データ種類の個数は、小さいほど重要度が高くなる。次にステップｓ１０６で、揮発性ＲＡＭデータを一通り記憶したかを判定する。記憶していないとの未完了判断でステップｓ１０４に戻り、完了判断で本処理を終了する。
【００６６】
図１６は、本発明の第４の実施形態に係るデータ記憶方法のメインルーチンを段階的に示すフローチャートである。図１７は、第４の実施形態に係るデータ記憶方法のサブルーチンを段階的に示すフローチャートである。不揮発性ＲＡＭ領域が複数回分ある場合の処理について説明する。本処理の制御主体は、特に記載しない限りＣＰＵ２である。たとえば車両のエンジンがスタートする条件で本処理が開始する。先ずステップｈ１でＩＧオンの後、ステップｈ２で、現在どの領域までデータが入っているかを認識して、今回事象を判定したときにデータ保存する領域を決定する。空き領域がなければステップｈ１０に移行し、空き領域があればステップｈ３で車両走行データを取得して配列Ｒ［ａ］に１フレーム分ストアする。次にステップｈ４でＩＧオフか否かを判断する。ＩＧオフ判断で終了し、ＩＧオン判断でステップｈ５に移行し、事象「Ａ」判定フラグがオンで図１７Ａのサブルーチンに移行する。
【００６７】
前記オンでないと判断すると、ステップｈ６に移行して事象「Ｂ」判定フラグがオンで図１７Ｂのサブルーチンに移行する。前記オンでないと判断すると、ステップｈ７に移行して事象「Ｃ」判定フラグがオンで図１７Ｃのサブルーチンに移行する。前記オンでないと判断すると、ステップｈ８に移行して配列要素数「ａ」が最大許容限度に至ったか否かを判断する。至ったと判断すると、ステップｈ９に移行して配列要素数「ａ」を「０」にした後ステップｈ３に戻る。最大許容限度でないと判断するとステップｈ９に移行することなくステップｈ３に戻る。
【００６８】
前記ステップｈ１０では、今まで取得してきたデータの上書きの可否を判断する。上書き否と判断すると本処理を終了する。上書き可能と判断するとステップｈ１１に移行して、車両走行データを取得して配列Ｒ［ａ］に１フレーム分ストアする。次にステップｈ１２でＩＧオフか否かを判断する。ＩＧオフ判断で終了し、ＩＧオン判断でステップｈ１３に移行し、事象「Ａ」判定フラグがオンで図１７Ｄのサブルーチンに移行する。前記オンでないと判断すると、ステップｈ１４に移行して事象「Ｂ」判定フラグがオンで図１７Ｅのサブルーチンに移行する。前記オンでないと判断すると、ステップｈ１５に移行し、事象「Ｃ」判定フラグがオンで図１７Ｆのサブルーチンに移行する。前記オンでないと判断すると、ステップｈ１６に移行して配列要素数「ａ」が最大許容限度に至ったか否かを判断する。至ったと判断すると、ステップｈ１７に移行して配列要素数「ａ」を「０」にした後ステップｈ１１に戻る。最大許容限度でないと判断するとステップｈ１７に移行することなくステップｈ１１に戻る。
【００６９】
前記ステップｈ５におけるフラグオン判定で、図１７Ａに示すステップｈ１８に移行し、事象「Ａ」の判定回数を「１」追加つまりカウントアップする。次にステップｈ１９で車両走行データを取得して配列Ｒ［ａ］に１フレーム分ストアする。次にステップｈ２０で、事象「Ａ」判定後その事象「Ａ」特有のディレイカウンタが遅延したか否かを判断する。遅延していないと判断するとステップｈ１９に戻り、遅延したと判断するとステップｈ２１に移行する。該ステップで１フレーム分の揮発性ＲＡＭデータを不揮発性ＲＡＭに書き込み、次にステップｈ２２では事象「Ａ」の取得要求周期（ｃｙｃｌｅａ）をたとえば「２」とし、取得データ種類を「１」としている（図１（ｃ）参照）。よって不揮発性ＲＡＭ９に記憶されるフレームは、１つとばしとなる。前記取得データ種類の個数は、小さいほど重要度が高くなる。次にステップｈ２３で、揮発性ＲＡＭデータを一通り記憶したかを判定する。記憶していないとの未完了判断でステップｈ２１に戻り、完了判断でステップｈ６に移行する。
【００７０】
ステップｈ６のフラグオンで図１７Ｂに示すステップｈ２４に移行し、事象「Ｂ」の判定回数を「１」カウントアップする。次にステップｈ２５で車両走行データを取得して配列Ｒ［ａ］に１フレーム分ストアする。次にステップｈ２６で、事象「Ｂ」判定後その事象「Ｂ」特有のディレイカウンタが遅延したか否かを判断する。遅延していないと判断するとステップｈ２５に戻り、遅延したと判断するとステップｈ２７に移行する。該ステップで１フレーム分の揮発性ＲＡＭデータを不揮発性ＲＡＭ９に書き込み、次にステップｈ２８では事象「Ｂ」の取得要求周期（ｃｙｃｌｅｂ）をたとえば「２」とし、取得データ種類を「１」としている（図１（ｃ）参照）。よって不揮発性ＲＡＭ９に記憶されるフレームは、１つとばしとなる。前記取得データ種類の個数は、小さいほど重要度が高くなる。次にステップｈ２９で、揮発性ＲＡＭデータを一通り記憶したかを判定する。記憶していないとの未完了判断でステップｈ２７に戻り、完了判断でステップｈ７に移行する。
【００７１】
ステップｈ７のフラグオンで図１７Ｃに示すステップｈ３０に移行し、事象「Ｃ」の判定回数を「１」カウントアップする。次にステップｈ３１で車両走行データを取得して配列Ｒ［ａ］に１フレーム分ストアする。次にステップｈ３２で、事象「Ｃ」判定後その事象「Ｃ」特有のディレイカウンタが遅延したか否かを判断する。遅延していないと判断するとステップｈ３１に戻り、遅延したと判断するとステップｈ３３に移行する。該ステップで１フレーム分の揮発性ＲＡＭデータを不揮発性ＲＡＭ９に書き込み、次にステップｈ３４では事象「Ｃ」の取得要求周期（ｃｙｃｌｅｃ）をたとえば「２」とし、取得データ種類を「１」としている（図１（ｃ）参照）。よって不揮発性ＲＡＭ９に記憶されるフレームは、１つとばしとなる。前記取得データ種類の個数は、小さいほど重要度が高くなる。次にステップｈ３５で、揮発性ＲＡＭデータを一通り記憶したかを判定する。記憶していないとの未完了判断でステップｈ３３に戻り、完了判断で本処理を終了する。
【００７２】
ステップｈ１３のフラグオンで図１７Ｄに示すステップｈ３６に移行し、事象「Ａ」の判定回数を「１」カウントアップする。次にステップｈ３７で車両走行データを取得して配列Ｒ［ａ］に１フレーム分ストアする。次にステップｈ３８で、事象「Ａ」判定後その事象「Ａ」特有のディレイカウンタが遅延したか否かを判断する。遅延していないと判断するとステップｈ３７に戻り、遅延したと判断するとステップｈ３９に移行する。該ステップで保存すべき事象の優先順位の有無、過去データにおける同一事象の有無などからデータ保存領域を検討し決定する。次にステップｈ４０で１フレーム分の揮発性ＲＡＭデータを不揮発性ＲＡＭ９に書き込み、次にステップｈ４１では事象「Ａ」の取得要求周期（ｃｙｃｌｅａ）をたとえば「２」とし、取得データ種類を「１」としている（図１（ｃ）参照）。よって不揮発性ＲＡＭ９に記憶されるフレームは、１つとばしとなる。前記取得データ種類の個数は、小さいほど重要度が高くなる。次にステップｈ４２で、揮発性ＲＡＭデータを一通り記憶したかを判定する。記憶していないとの未完了判断でステップｈ４０に戻り、完了判断でステップｈ１４に移行する。
【００７３】
ステップｈ１４のフラグオンで図１７Ｅに示すステップｈ４３に移行し、事象「Ｂ」の判定回数を「１」カウントアップする。次にステップｈ４４で車両走行データを取得して配列Ｒ［ａ］に１フレーム分ストアする。次にステップｈ４５で、事象「Ｂ」判定後その事象「Ｂ」特有のディレイカウンタが遅延したか否かを判断する。遅延していないと判断するとステップｈ４４に戻り、遅延したと判断するとステップｈ４６に移行する。該ステップで保存すべき事象の優先順位の有無、過去データにおける同一事象の有無などからデータ保存領域を検討し決定する。次にステップｈ４７で保存領域があるか判断する。たとえば優先順位順ありで既存データが全て事象「Ａ」だった場合には、ステップｈ５１で今回のデータを破棄した後、ステップｈ１５に移行する。
【００７４】
保存領域ありと判断するとステップｈ４８に移行し、１フレーム分の揮発性ＲＡＭデータを不揮発性ＲＡＭ９にデータを書き込み、次にステップｈ４９では事象「Ｂ」の取得要求周期（ｃｙｃｌｅｂ）をたとえば「２」とし、取得データ種類を「１」としている（図１（ｃ）参照）。よって不揮発性ＲＡＭ９に記憶されるフレームは、１つとばしとなる。前記取得データ種類の個数は、小さいほど重要度が高くなる。次にステップｈ５０で、揮発性ＲＡＭデータを一通り記憶したかを判定する。記憶していないとの未完了判断でステップｈ４８に戻り、完了判断でステップｈ１５に移行する。
【００７５】
ステップｈ１５のフラグオンで図１７Ｆに示すステップｈ５２に移行し、事象「Ｃ」の判定回数を「１」カウントアップする。次にステップｈ５３で車両走行データを取得して配列Ｒ［ａ］に１フレーム分ストアする。次にステップｈ５４で事象「Ｃ」判定後その事象「Ｃ」特有のディレイカウンタが遅延したか否かを判断する。遅延していないと判断するとステップｈ５３に戻り、遅延したと判断するとステップｈ５５に移行する。該ステップで保存すべき事象の優先順位の有無、過去データにおける同一事象の有無などからデータ保存領域を検討し決定する。次にステップｈ５６で保存領域があるか判断する。たとえば優先順位順ありで既存データが事象Ａ、Ｂのみだった場合には、ステップｈ６０で今回のデータを破棄した後、本処理を終了する。
【００７６】
保存領域ありと判断するとステップｈ５７に移行し、１フレーム分の揮発性ＲＡＭデータを不揮発性ＲＡＭ９に書き込み、次にステップｈ５８では事象「Ｃ」の取得要求周期（ｃｙｃｌｅｃ）をたとえば「２」とし、取得データ種類を「１」としている（図１（ｃ）参照）。よって不揮発性ＲＡＭ９に記憶されるフレームは、１つとばしとなる。前記取得データ種類の個数は、小さいほど重要度が高くなる。次にステップ５９で、揮発性ＲＡＭデータを一通り記憶したかを判定する。記憶していないとの未完了判断でステップｈ５７に戻り、完了判断で本処理を終了する。
【００７７】
以上説明したデータ記憶装置１によれば、図１３、図１４に示すように、ＣＰＵ２は、所定の事象を検出した場合に、揮発性ＲＡＭ８に一時記憶されたデータのうち不揮発性ＲＡＭ９に記憶させておくデータを、事象の優先順位に基づいて判断する。単にデータを記憶するだけでなく、解析するに足る必要十分なデータを特に優先順位に従って記憶するので、異常原因等を解析すべき対象に対し、従来技術よりも早期にかつ簡単に原因究明を図ることが可能となり、その対策を講じることができる。逆に、事象の優先順位によっては、不揮発性ＲＡＭ９に記憶させないデータを峻別することが可能となるので、不揮発性ＲＡＭ９の容量が少なくてもすむ。
【００７８】
またデータ記憶装置１によれば、図１５に示すように、ＣＰＵ２が検出回数を比較したうえで、揮発性ＲＡＭ８に一時記憶されたデータを前記検出回数順に従って記憶するので、異常原因等を解析すべき対象に対し、早期にかつ簡単に原因究明を図ることが可能となり、その対策を講じることができる。図１３〜図１７に示すように、特定の事象の検出に伴ってディレイカウンタが計数する条件その他の条件で、不揮発性ＲＡＭ９はデータを記憶するので、事象検出直後にデータを記憶するよりも異常原因等を解析し得る確率を高めることができる。これまで異常原因が特定できなかった挙動に関連するデータを取得することが可能となる。
【００７９】
不揮発性ＲＡＭ９には、該不揮発性ＲＡＭにすでに記憶されているデータの事象と、検出される事象とを比較するための事象情報が記憶される構成にし得る。この場合には、不揮発性ＲＡＭ９に記憶されている事象情報によって、データの優先順位の判断または検出回数の比較を行うことが可能となる。検出される事象の優先順位が高いとき、不揮発性ＲＡＭ９は該検出される事象のデータに更新するので、真に利用されるべきデータのみを優先的に記憶でき、そのデータが解析に供される。検出される事象の優先順位が低いとき、不揮発性ＲＡＭ９は該検出される事象のデータを破棄するので、不要と考えられるデータを積極的に破棄して不揮発性ＲＡＭ９の空き容量を確保することができる。すでに記憶されているデータの事象と検出される事象とが同一事象のとき、不揮発性ＲＡＭ９は、該検出される事象のデータを更新するか否かを選択する機能を有するので、選択肢を高めることが可能となる。また当該事象の検出回数を計数し、その検出回数が異常原因等の解析に供される。
【００８０】
すでに不揮発性ＲＡＭ９に記憶されているデータの事象と今回検出される事象とが異なる事象のとき、それらの事象の検出回数が同一（つまり同数）の条件で、カウンタは当該事象の検出回数を計数するとともに、不揮発性ＲＡＭ９は、検出される事象のデータを前記優先順位に従って記憶する。このように検出回数による優劣がないとき、データを時系列で特に前記優先順位に従って記憶するので、異常原因等を解析すべき対象に対し、早期の原因究明を図ることが可能となり、その対策を講じることができる。
【００８１】
本実施形態では、各事象が並列的に発生する場合をも含む処理になっている。このような形態によれば、各事象が単独で発生する形態よりも精密な解析を行うことが可能となる。ただし必ずしもこの形態に限定されるものではない。たとえば各事象が単独で発生する形態にすることも可能である。この場合には、各サブルーチンの最終ステップを必然的に終了することとなる。よって処理を簡単化することが可能となる。図１７に示す不揮発性ＲＡＭ領域が複数回の場合のサブルーチンにおいて、カウンタなしの場合には、ステップｈ１８，ｈ２４，ｈ３０，ｈ３６，ｈ４３，ｈ５２のステップが省略される。各サブルーチンにおけるデータ破棄設定のステップで、不揮発性ＲＡＭのメモリ容量が限られている場合には、当該データを必然的に破棄するようにしてもよく、不揮発性ＲＡＭのメモリ容量に余裕がある場合には、当該データを破棄せずストアするような形態にすることも可能である。本実施形態では、不揮発性記憶手段として、不揮発性ＲＡＭ（バックアップＲＡＭ）を用いているが、ＥＥＰＲＯＭやハードディスク等の記憶手段であってもよい。その他、本発明の趣旨を逸脱しない範囲において種々の変更を付加した形態で実施することも可能である。
【図面の簡単な説明】
【００８２】
【図１】本発明の実施形態に係るデータ記憶装置１等を示し、図１（ａ）はその制御系のブロック図、図１（ｂ）はデータをストアする順序、タイミング等を説明するための図、図１（ｃ）は不揮発性ＲＡＭ９へのデータ記憶方法を説明するための図である。
【図２】不揮発性ＲＡＭ９へのデータストア条件を説明するための図である。
【図３】不揮発性ＲＡＭ９の空き領域にデータを記憶する方法を示す図である。
【図４】不揮発性ＲＡＭ９に、優先順位の高い事象のデータを記憶する方法を示す図である。
【図５】不揮発性ＲＡＭ９に、優先順位の高い事象のデータを記憶する方法を示す図である。
【図６】検出される優先順位が同一の事象のデータを、不揮発性ＲＡＭ９に記憶するか否かを選択する機能を説明するための図である。
【図７】不揮発性ＲＡＭ９の空き領域にデータを記憶する方法を示す図である。
【図８】同一の事象データを不揮発性ＲＡＭ９に記憶するか否かを選択する機能を説明するための図である。
【図９】検出される事象の検出回数が「大」の条件で、検出される事象のデータを記憶する機能を説明するための図である。
【図１０】検出される事象の検出回数が同一の条件で、検出される事象のデータを不揮発性ＲＡＭ９に記憶するか否かを選択する機能を説明するための図である。
【図１１】検出される事象の検出回数が同一の条件で、優先順位の高い事象のデータを不揮発性ＲＡＭ９に記憶する機能を説明するための図である。
【図１２】本発明の実施形態に係るデータ記憶方法のメインルーチンを段階的に示すフローチャートである。
【図１３Ａ】本発明の第１の実施形態に係り、優先順位順でかつカウンタなしのデータ記憶方法のサブルーチン（Ａ）をそれぞれ示すフローチャートである。
【図１３Ｂ】本発明の第１の実施形態に係り、優先順位順でかつカウンタなしのデータ記憶方法のサブルーチン（Ｂ）をそれぞれ示すフローチャートである。
【図１３Ｃ】本発明の第１の実施形態に係り、優先順位順でかつカウンタなしのデータ記憶方法のサブルーチン（Ｃ）をそれぞれ示すフローチャートである。
【図１４Ａ】本発明の第２の実施形態に係り、優先順位順でかつカウンタありのデータ記憶方法のサブルーチン（Ａ）をそれぞれ示すフローチャートである。
【図１４Ｂ】本発明の第２の実施形態に係り、優先順位順でかつカウンタありのデータ記憶方法のサブルーチン（Ｂ）をそれぞれ示すフローチャートである。
【図１４Ｃ】本発明の第２の実施形態に係り、優先順位順でかつカウンタありのデータ記憶方法のサブルーチン（Ｃ）をそれぞれ示すフローチャートである。
【図１５Ａ】本発明の第３の実施形態に係り、カウンタありでかつ判定回数に基づくデータ記憶方法のサブルーチン（Ａ）をそれぞれ示すフローチャートである。
【図１５Ｂ】本発明の第３の実施形態に係り、カウンタありでかつ判定回数に基づくデータ記憶方法のサブルーチン（Ｂ）をそれぞれ示すフローチャートである。
【図１５Ｃ】本発明の第３の実施形態に係り、カウンタありでかつ判定回数に基づくデータ記憶方法のサブルーチン（Ｃ）をそれぞれ示すフローチャートである。
【図１６】本発明の第４の実施形態に係るデータ記憶方法のメインルーチンを段階的に示すフローチャートである。
【図１７Ａ】第４の実施形態に係るデータ記憶方法のサブルーチンを段階的に示すフローチャートである。
【図１７Ｂ】第４の実施形態に係るデータ記憶方法のサブルーチンを段階的に示すフローチャートである。
【図１７Ｃ】第４の実施形態に係るデータ記憶方法のサブルーチンを段階的に示すフローチャートである。
【図１７Ｄ】第４の実施形態に係るデータ記憶方法のサブルーチンを段階的に示すフローチャートである。
【図１７Ｅ】第４の実施形態に係るデータ記憶方法のサブルーチンを段階的に示すフローチャートである。
【図１７Ｆ】第４の実施形態に係るデータ記憶方法のサブルーチンを段階的に示すフローチャートである。
【符号の説明】
【００８３】
１  データ記憶装置
２  ＣＰＵ
７  入出力インタフェース
８  揮発性ＲＡＭ
９  不揮発性ＲＡＭ
【図１】
2006274852.tif 000003
【図２】
2006274852.tif 000004
【図３】
2006274852.tif 000005
【図４】
2006274852.tif 000006
【図５】
2006274852.tif 000007
【図６】
2006274852.tif 000008
【図７】
2006274852.tif 000009
【図８】
2006274852.tif 000010
【図９】
2006274852.tif 000011
【図１０】
2006274852.tif 000012
【図１１】
2006274852.tif 000013
【図１２】
2006274852.tif 000014
【図１３Ａ】
2006274852.tif 000015
【図１３Ｂ】
2006274852.tif 000016
【図１３Ｃ】
2006274852.tif 000017
【図１４Ａ】
2006274852.tif 000018
【図１４Ｂ】
2006274852.tif 000019
【図１４Ｃ】
2006274852.tif 000020
【図１５Ａ】
2006274852.tif 000021
【図１５Ｂ】
2006274852.tif 000022
【図１５Ｃ】
2006274852.tif 000023
【図１６】
2006274852.tif 000024
【図１７Ａ】
2006274852.tif 000025
【図１７Ｂ】
2006274852.tif 000026
【図１７Ｃ】
2006274852.tif 000027
【図１７Ｄ】
2006274852.tif 000028
【図１７Ｅ】
2006274852.tif 000029
【図１７Ｆ】
2006274852.tif 000030