(57)【要約】【課題】ＥＣＵにおける処理負荷の増大を抑制しつつも、時系列フリーズフレームデータの精度を向上させる。【解決手段】センサ検出データを含む複数種類の要保存データは、それらの時間変化の大小を基準にグループ分けされており、グループ毎にバックアップＲＡＭ１３へのバックアップ周期を設定されている。ダイアグ異常発生前において、グループ分けした要保存データは、各グループに設定した周期でバックアップＲＡＭ１３の第１記憶部に更新記憶される。ダイアグ異常発生時は、要保存データを同じく第２記憶部に記憶する。その後、要保存データは、グループ毎に設定した記憶周期にしたがって同じく第３記憶部に記憶される。【選択図】  図２
2004232498.tif 000002
【特許請求の範囲】
【請求項１】
ダイアグノーシス機能を備えた車両の制御装置において、主記憶手段に記憶されている複数種類の要保存データのバックアップを、ダイアグ異常発生時とその前後に、第１記憶部、第２記憶部および第３記憶部を有するデータ保存用記憶手段に取ることにより、時系列フリーズフレームデータを作成する方法であって、前記主記憶手段において示す値の時間変化の大小に応じて前記要保存データのそれぞれにバックアップ周期を設定し、ダイアグ異常発生前の前記要保存データは、各々に設定したバックアップ周期で前記第１記憶部に格納するとともに、ダイアグ異常発生時には、各バックアップ周期の計測を継続しながら、そのとき前記主記憶手段に記憶されている前記要保存データを前記第２記憶部に格納し、その後、計測継続中の各バックアップ周期にしたがって、前記第３記憶部に前記要保存データをそれぞれ格納することを特徴とする時系列フリーズフレームデータ作成方法。
【請求項２】
複数種類の前記要保存データを、それらが前記主記憶手段において示す値の時間変化の大小を基準にグループ分けして、グループ別に前記バックアップ周期を設定する請求項１記載の時系列フリーズフレームデータ作成方法。
【請求項３】
ダイアグノーシス機能を備えた車両の制御装置において、主記憶手段に記憶されている複数種類の要保存データのバックアップを、ダイアグ異常発生時とその前後に、第１記憶部、第２記憶部および第３記憶部を有するデータ保存用記憶手段に取ることにより、時系列フリーズフレームデータを作成する方法であって、前記主記憶手段における更新周期の長短に応じて前記要保存データにそれぞれバックアップ周期を設定し、ダイアグ異常発生前の前記要保存データは、各々に設定したバックアップ周期で前記第１記憶部に格納するとともに、ダイアグ異常発生時には、各バックアップ周期の計測を継続しながら、そのとき前記主記憶手段に記憶されている前記要保存データを前記第２記憶部に格納し、その後、計測継続中の各バックアップ周期にしたがって、前記第３記憶部に前記要保存データをそれぞれ格納することを特徴とする時系列フリーズフレームデータ作成方法。
【請求項４】
複数種類の前記要保存データを、前記主記憶手段での更新周期の長短に応じてグループ分けして、グループ別に前記バックアップ周期を設定する請求項３記載の時系列フリーズフレームデータ作成方法。
【請求項５】
ダイアグ異常発生前は、前記第１記憶部での上書きを許容することにより前記要保存データのそれぞれについて複数周期分のバックアップを取り続け、ダイアグ異常発生後は、前記要保存データのそれぞれについて１周期分のバックアップを取るものとする請求項１ないし４のいずれか１項に記載の時系列フリーズフレームデータ作成方法。
【請求項６】
前記要保存データは、車両に設けられたセンサ類より取得されるセンサ検出データと、車両の動力源を制御するための制御データと、ダイアグコードとを含む請求項１ないし５のいずれか１項に記載の時系列フリーズフレームデータ作成方法。
【請求項７】
ダイアグノーシス機能を備えた車両の制御装置において、車両に設けられたセンサ類より取得されるセンサ検出データを含む要保存データを一時的に記憶する主記憶手段と、前記要保存データを含む異常診断用データに基づいてダイアグ異常の有無を診断するダイアグ異常診断部と、前記主記憶手段に記憶されている前記要保存データのバックアップが取られるデータ保存用記憶手段と、前記要保存データの各々に設定されるバックアップ周期を計測するバックアップ周期計測手段とを備え、前記データ保存用記憶手段は、前記要保存データを、その各々に設定されたバックアップ周期で格納する第１記憶部と、前記ダイアグ異常診断部において異常発生である旨の判定がされたときの前記要保存データを格納する第２記憶部と、その第２記憶部への前記要保存データの記憶後に、前記第１記憶部へのバックアップ周期と同期したバックアップ周期で前記要保存データを格納する第３記憶部とを含むことを特徴とする車両の制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ダイアグノーシス機能を備えた車両用制御装置に適用される、時系列フリーズフレームデータの作成方法と、その方法を適用した車両の制御装置に関するものである。時系列フリーズフレームデータとは、車載センサからサンプリングされるセンサ検出データや、エンジン制御のために算出された制御データを、時間軸に沿ったいくつかの時点でバックアップＲＡＭに保存することにより得られるデータのことである。
【０００２】
【従来の技術】
一般に自動車のＥＣＵには、車両に異常が発生していないかどうかをセンサ類から送られてくるデータ（以下、単にセンサ検出データともいう）などに基づいて自己診断する機能、つまりダイアグノーシス機能が組み込まれている。
【０００３】
ＥＣＵの持つワーク用のメモリに、一時的に格納される多数のセンサ検出データやエンジン制御などのために算出された演算データは、通常、一定周期（たとえば５００ｍｓｅｃ）毎にバックアップ用のメモリに上書き保存されるようになっている。一方、ＥＣＵにおいてダイアグ異常発生である旨の判定がなされると、さらに、その異常発生時および異常発生後のセンサ検出データをバックアップ用のメモリに保存するようにしている。ダイアグ異常がいったん発生した後は、メモリ領域を切り換えて上書きを行なわないようにすると、イグニッションをＯＦＦにした後でもバックアップ用のメモリには、少なくとも異常発生時および異常発生前後のフリーズフレームデータが保存される（図８参照）。このように時系列的に保存されたフリーズフレームデータは、これを整備工場等において読み出すことにより、異常発生時におけるセンサ検出データ等の要保存データの挙動（データが示す値の変動）を知ることができるため、異常原因の究明に有用である。
【０００４】
【特許文献１】
特開２００２−１０６４１２号公報
【０００５】
【発明が解決しようとする課題】
ところが、ダイアグ異常の発生に深く関連しているデータであっても、図８に例示するようなタイミングでダイアグ異常発生前、ダイアグ異常発生時およびダイアグ異常発生後のバックアップを取ると、得られる時系列フリーズフレームデータからは、ダイアグ異常発生時の挙動を正確に知ることができない場合がある。このような場合、時系列フリーズフレームデータから車両に発生した異常の原因を究明することは困難である。そうかといって、闇雲にバックアップ周期を短くすることは、ＣＰＵ負荷の増大を招き、通常時の自動車制御に悪影響がおよぶ恐れがある。高性能のＣＰＵは、コスト面での不利を避けられないうえ、時系列フリーズフレームデータの作成とは関係無い部分での大きな設計変更を強いられる可能性もあり、直ちに採用に踏み切れるものではない。
【０００６】
また、センサ検出データ等の要保存データは、ワーク用のメモリにおいて更新記憶される周期（更新周期）が互いに異なるのが普通である。たとえば、あるアナログセンサからのデータは４ｍｓｅｃおきにサンプリングされてワークメモリに更新記憶されるが、別の要保存データ（センサ検出データに限らず）の更新周期は、４ｍｓｅｃよりも遥かに長かったりする（たとえば数十ｍｓｅｃ）。しかしながら、従来は、どのような要保存データについても、バックアップメモリへのバックアップ周期は一律としていたため、ＣＰＵ資源を効率良く使用していたとはいえなかった。
【０００７】
本発明の課題は、ＥＣＵにおける処理負荷の増大を抑制しつつも、時系列フリーズフレームデータの精度を向上させることにある。
【０００８】
【課題を解決するための手段及び作用・効果】
上記課題を解決するために本発明は、ダイアグノーシス機能を備えた車両の制御装置において、主記憶手段に記憶されている複数種類の要保存データのバックアップを、ダイアグ異常発生時とその前後に、第１記憶部、第２記憶部および第３記憶部を有するデータ保存用記憶手段に取ることにより、時系列フリーズフレームデータを作成する方法であって、主記憶手段において示す値の時間変化の大小に応じて要保存データのそれぞれにバックアップ周期を設定し、ダイアグ異常発生前の要保存データは、各々に設定したバックアップ周期で第１記憶部に格納するとともに、ダイアグ異常発生時には、各バックアップ周期の計測を継続しながら、そのとき主記憶手段に記憶されている要保存データを第２記憶部に格納し、その後、計測継続中の各バックアップ周期にしたがって、第３記憶部に要保存データをそれぞれ格納することを特徴とする。
【０００９】
上記本発明の方法においては、どのような種類の要保存データに対してもバックアップ周期を一律とするのではなく、まず、各要保存データについて主記憶手段での時間変化の大小に見合った周期を設定する。具体的には、時間変化の大きいデータについては十分に短い周期でバックアップを取る一方、時間変化の小さいデータについては従来よりも長い周期でバックアップを取るといったことが可能になる。そして、異常発生前、異常発生時および異常発生後のそれぞれの時期に１対１で対応するように第１記憶部、第２記憶部および第３記憶部を設定し、時期に応じてこれらの記憶部を切り換えながら使用して、時系列フリーズフレームデータを得るのである。その結果、各記憶部に記憶されるフリーズフレームデータは、時間軸に沿った要保存データの挙動を精度良く再現するものとなる。また、バックアップ周期を短くするものと、バックアップ周期を長くするものとを共存させるため、タスク量の相殺を期待でき、ＣＰＵ負荷の増大がほとんどない場合もありうる。
【００１０】
より具体的には、複数種類の要保存データを、それらが主記憶手段において示す値の時間変化の大小を基準にグループ分けして、グループ別にバックアップ周期を設定する方法を採用するとよい。この方法は、いわば要保存データの１つ１つにバックアップ周期を設定する方法と、全ての要保存データに一律にバックアップ周期を設定する従来の方法との折衷案であり、プログラムが煩雑になることを防げる。
【００１１】
好適な態様において、ダイアグ異常発生前は、第１記憶部での上書きを許容することにより要保存データのそれぞれについて複数周期分のバックアップを取り続け、ダイアグ異常発生後は、要保存データのそれぞれについて１周期分のバックアップを取るものとする。このようにすると、フリーズフレームデータとしては、少なくともダイアグ異常検出前の複数周期分（複数フレーム）と、異常発生時の１フレーム分と、異常発生後の１フレーム分とが得られることとなり、異常原因の究明作業へのサービス性向上がさらに期待できる。
【００１２】
別の局面において、課題を解決するために本発明の第二は、ダイアグノーシス機能を備えた車両の制御装置において、主記憶手段に記憶されている複数種類の要保存データのバックアップを、ダイアグ異常発生時とその前後に、第１記憶部、第２記憶部および第３記憶部を有するデータ保存用記憶手段に取ることにより、時系列フリーズフレームデータを作成する方法であって、主記憶手段における更新周期の長短に応じて要保存データにそれぞれバックアップ周期を設定し、ダイアグ異常発生前の要保存データは、各々に設定したバックアップ周期で第１記憶部に格納するとともに、ダイアグ異常発生時には、各バックアップ周期の計測を継続しながら、そのとき主記憶手段に記憶されている要保存データを第２記憶部に格納し、その後、計測継続中の各バックアップ周期にしたがって、第３記憶部に要保存データをそれぞれ格納することを特徴とする。
【００１３】
上記本発明の方法においては、どのような種類の要保存データに対してもバックアップ周期を一律とするのではなく、主記憶手段における更新周期の長短に応じて要保存データにそれぞれバックアップ周期を設定する。具体的には、更新周期が短いデータについては短い周期でバックアップを取る一方、更新周期の長いデータについては長い周期でバックアップを取るといったことが可能になる。そして、異常発生前、異常発生時および異常発生後のそれぞれの時期に１対１で対応するように第１記憶部、第２記憶部および第３記憶部を設定し、時期に応じてこれらの記憶部を切り換えながら使用して、時系列フリーズフレームデータを得るのである。このように、バックアップ周期を短くするべきデータと、そうでないデータとを区別して、時系列フリーズフレームデータの作成に必要なタスク量を配分することにより、ＣＰＵ資源の有効利用を図ることが可能であり、ひいては時系列フリーズフレームデータの精度向上を図ることができる。
【００１４】
また、主記憶手段における更新周期の長短に応じてバックアップ周期を設定する場合、以下に説明するような効果も期待できる。たとえば、図７に示すように、主記憶手段への更新周期（取り込み周期）は最も早い部類に属するが、単位時間あたりの変化量が大きくなることは無い要保存データ（センサ信号）のバックアップを、短い周期で取ることは一見あまり意味の無いことのように思える。しかしながら、全ての要保存データのバックアップ周期を中庸かつ一律に設定していると、センサ自体が短絡と導通とを繰り返すような断続的故障が発生した場合、その断続的故障を時系列フリーズフレームデータとして記録することができない恐れがある。したがって、本発明のように、起こりうる不具合を設計の段階で見越してバックアップ周期を設定すれば、断続的故障の発生を確実に時系列フリーズフレームデータとして記録することができるようになる。
【００１５】
また、課題を解決するために本発明は、ダイアグノーシス機能を備えた車両の制御装置において、車両に設けられたセンサ類より取得されるセンサ検出データを含む要保存データを一時的に記憶する主記憶手段と、要保存データを含む異常診断用データに基づいてダイアグ異常の有無を診断するダイアグ異常診断部と、主記憶手段に記憶されている要保存データのバックアップが取られるデータ保存用記憶手段と、要保存データの各々に設定されるバックアップ周期を計測するバックアップ周期計測手段とを備え、データ保存用記憶手段は、要保存データを、その各々に設定されたバックアップ周期で格納する第１記憶部と、ダイアグ異常診断部において異常発生である旨の判定がされたときの要保存データを格納する第２記憶部と、その第２記憶部への要保存データの記憶後に、第１記憶部へのバックアップ周期と同期したバックアップ周期で要保存データを格納する第３記憶部とを含むことを特徴とする。
【００１６】
上記本発明の制御装置は、どのような種類の要保存データに対してもバックアップ周期を一律とするのではなく、多数ある要保存データに個別にバックアップ周期を設定し、各記憶部にバックアップを取るように構成したものである。バックアップ周期は、たとえば、主記憶手段において示す値の時間変化の大小に応じて、要保存データの各々に設定することができる。すなわち、時間変化の大きいデータについては十分に短いバックアップ周期を設定して、データ保存用記憶手段に格納される時系列フリーズフレームデータの高精度化を図りつつ、時間変化の小さいデータは長いバックアップ周期を設定して、ＣＰＵ負荷の増大を抑制するといったことが可能となる。そのため、高性能のＣＰＵが必要になる恐れもない。
【００１７】
バックアップ周期は、たとえば、主記憶手段における更新周期の長短に応じて、要保存データの各々に設定することができる。すなわち、更新周期が短いデータについては十分に短いバックアップ周期を設定する一方、更新周期の長いデータについては長いバックアップ周期を設定する。このように、バックアップ周期を短くするべきデータと、そうでないデータとを区別して、時系列フリーズフレームデータの作成に必要なタスク量を配分することにより、ＣＰＵ資源の有効利用を図ることが可能であり、ひいては時系列フリーズフレームデータの精度向上を図ることができる。
【００１８】
【発明の実施の形態】
以下、添付の図面を参照しつつ本発明の実施形態について説明する。
図１は、本発明にかかる自動車の制御装置１と周辺装置の概略を示すブロック図である。自動車の制御装置１は、マルチプレクサ１５、Ａ／Ｄ変換器１７、ＣＰＵ５、ＲＯＭ７、カウンタタイマ回路９、ＲＡＭ１１、バックアップＲＡＭ１３、Ｉ／Ｏ１９および図示しないバッファ回路部、波形整形回路部等を含んで構成される。
【００１９】
ＲＡＭ１１は、ＣＰＵ５が各種センサから取得するセンサ検出データや、エンジン制御などのために算出した演算データを一時的に記憶したり、プログラムの実行に使用されたりするワーク用のメモリである。他方、バックアップＲＡＭ１３は、ダイアグコードやフリーズフレームデータを格納する記憶部である。バックアップＲＡＭ１３には、イグニッションがＯＦＦされた後も図示しない電源回路部から電力が供給されており、格納されているデータを記憶保持することができる。このバックアップＲＡＭ１３は、ＥＥＰＲＯＭにより構成することもでき、その場合には、バッテリが外されるなどしてＥＣＵ１への電力供給が断たれてもデータが記憶保持されるので好適である。
【００２０】
マルチプレクサ１５は、エアフローセンサ２１、冷却水温センサ２３、吸気温センサ、酸素センサ等の複数種類のアナログセンサからのアナログ信号を選択的に取り込んで、その取り込んだアナログ信号をＡ／Ｄ変換器１７に出力する。センサからのアナログ信号はＡ／Ｄ変換器にてデジタル信号に変換されて、Ｉ／Ｏ１９を介してＣＰＵ５に入力される。同様に、車速センサ２９、回転角センサ３１、スイッチ類３３等からのデジタル信号はＩ／Ｏ１９を介してＣＰＵ５に入力される。ＣＰＵ５が各種センサからサンプリングしたデータは、センサ検出データとしてＲＡＭ１１に一時的に記憶される。そして、これらのセンサ検出データが参照されつつインジェクション３５、イグナイタ３７等を制御するための演算が実行され、その演算結果に基づいてエンジンが制御される。
【００２１】
また、ＣＰＵ５においては、エンジン制御に関する処理、各種センサからのデータのサンプリング処理とともに、自動車に異常が発生していないかどうかを自己診断する処理（ダイアグ処理）が実行される。すなわちＣＰＵ５は、センサ検出データ等の異常診断用データに基づいて異常の有無を判定する異常診断部としての機能を有する。また、発生した異常の種類によっては、フェイルセーフが作動したり警告灯が点灯したりする。発生した異常の種類はダイアグコードとして、ＲＡＭ１１にいったん記憶され、以下に説明するようにバックアップＲＡＭ１３に保存される。
【００２２】
ＣＰＵ５が取得するセンサ検出データ、車両を制御するために算出された制御データおよび前述したダイアグコードは、ＲＡＭ１１にその記憶領域が割り当てられている。いったんＲＡＭ１１に記憶されたセンサ検出データ、制御データおよびダイアグコード等のデータは、要保存データとして扱われ、所定のバックアップ周期でバックアップＲＡＭ１３に格納される。ここで本発明においては、ＲＡＭ１１において示す値の時間変化の大小に応じて上記要保存データのそれぞれにバックアップ周期を設定している。そして、そのバックアップ周期にしたがって、バックアップＲＡＭ１３への要保存データの格納を行なうようにしている。バックアップＲＡＭ１３は、図４（ａ）（ｂ）に示すように第１記憶部、第２記憶部および第３記憶部を含んで構成されている。特に、第１記憶部は、異常発生前の複数フレーム分（複数周期分）の要保存データを格納する記憶部とされている。
【００２３】
多数ある要保存データについていえば、たとえば図２（ａ）に例示するように、予測され得る時間変化の大小に応じてグループ分けして、グループ毎にバックアップ周期を設定することができる。グループ数については適宜増減、バックアップ周期については適宜調整できることはもちろんである。ただし、グループ数を不必要に増加させると処理量の増大を招くし、バックアップ周期の差を大きくするにはメモリ容量を増やさなければならないので、システムや要件に応じてグループ数、バックアップ周期を設定する必要がある。
【００２４】
一方、ダイアグ処理において異常発生である旨の判定がなされた場合は、割込み処理を発生させて、データのバックアップ領域を第１記憶部から第２記憶部に切り換えて、緊急的にバックアップが取られる。このときは、バックアップ周期に関係なく全ての要保存データがＲＡＭ１１からバックアップＲＡＭ１３の第２記憶部に複写されるが、各グループに設定したバックアップ周期の計測は継続されている。具体的には、バックアップ周期の計測は、カウンタタイマ回路９とＲＡＭ１１の所定領域に設定したカウンタとが担っている。要するに、カウンタタイマ回路９が、ダイアグ判定とは無関係に動作するので、ダイアグ異常発生時にもバックアップ周期の計測が停止することは無い。
【００２５】
ダイアグ異常発生時の要保存データを第２記憶部に格納した後には、データのバックアップ領域を第３記憶部に切り換えて、計測継続中の各バックアップ周期にしたがって要保存データをそれぞれ格納する。図３に示すように、時間変化が大きい要保存データについてバックアップ周期を十分に短く設定していると、極めて再現性のよい時系列フリーズフレームデータを得ることができる。その一方で、時間変化の小さい要保存データについてはバックアップ周期を長く設定するため、ＣＰＵ５負荷の増大も抑制される。
【００２６】
前述したように、第１記憶部には、各グループ（図２の例ではグループ２）について複数フレームのデータを保持するようにしている。したがって、第１記憶部には、第２記憶部および第３記憶部よりも広いメモリ空間が割り当てられる。なお、第１記憶部、第２記憶部および第３記憶部は、物理的には一体のメモリ空間に割り振られるものであってもよいし、物理的に別体のメモリチップ（パッケージ）としてそれぞれ用意されるものでもよい。
【００２７】
異常発生前に、複数フレーム分の要保存データをバックアップＲＡＭ１３に格納する具体的な手順を示す。図４（ａ）（ｂ）に示すように、▲１▼▲２▼▲３▼のタイミングでは、要保存データはそれぞれＡ，Ｂ，Ｃの領域に格納される。次に、▲４▼▲５▼では、Ｃ領域のデータはＢへ、Ｂの領域のデータはＡへシフトし、▲４▼▲５▼のタイミングのフリーズフレームデータをＣ領域に格納する。次に、▲６▼のタイミングでダイアグ異常が発生したとすると、異常発生時割込み処理によりＤ領域（第２記憶部）にフリーズフレームデータを格納する。その後、▲７▼のタイミングでＥ領域（第３記憶部）にフリーズフレームデータを格納する。つまり、ダイアグ異常発生前のフリーズフレームデータは、第１記憶部において常時更新されている。
【００２８】
また、ＲＡＭ１１における要保存データの更新周期の長短に応じてバックアップ周期を設定する方法も好適である。具体的には、図２（ｂ）に例示すように、ＲＡＭ１１における更新周期の長短に応じてグループ分けして、グループ毎にバックアップ周期を設定することができる。ここで、図２（ｂ）のグループＮｏ．０に振り分けられたエンジン冷却水温に着目する。エンジン冷却水温は、図７に示すように、たとえば４ｍｓｅｃおきに冷却水温センサからデータがサンプリングされて、ＲＡＭ１１の所定領域に更新記憶される。当然ながら、その挙動は非常に緩やかである。にもかかわらず、バックアップ周期の最も短いグループＮｏ．０に振り分けているのは、冷却水温が著しく高いような異常だけでなく、センサ自体の断続的故障（短絡と導通とを繰り返すような故障）の発生を時系列フリーズフレームデータに確実に反映させるという目的を達成するためである。
【００２９】
次に、具体的なロジックを図６のフローチャートに示す。図６のフローチャートに示す本発明の時系列フリーズ処理（時系列フリーズフレームデータ作成処理）は、主として下記（１）〜（３）ステップを含むものとして構成されており、各グループに設定された記憶周期のうち、最も短い記憶周期以下の周期で実行されるものである。
（１）バックアップ周期を計測するために各グループに１対１で設定され、かつ当該時系列フリーズ処理が終了しても値が保持されるカウンタをそれぞれインクリメント（＋１）していくステップ。
（２）各グループの記憶時期が到来したかどうかを各カウンタの値を参照して判断するステップ。
（３）記憶時期となった旨の判断がされたグループについては対応するカウンタをゼロにクリアして、異常発生前ならば第１記憶部に、異常発生後ならば第３記憶部に、各グループに属する要保存データを格納するステップ。
【００３０】
すなわち、バックアップＲＡＭ１３にフリーズフレームデータを記憶させるためのサブルーチンがグループ別に用意されているわけではなく、１つのサブルーチンで各グループのバックアップ周期の到来を監視しているのである。これにより、ＣＰＵ５のタスク量を最小限度にとどめるようにしている。以下、フローチャートを参照して各ステップを具体的に説明する。
【００３１】
まず、図６の時系列フリーズ処理に用いるＲＡＭについて説明する。カウンタ（Ｃ）の値は、グループＮｏ．に相当する。所定値（Ｍ）は、カウンタ（Ｃ）で用いるグループ数を示す閾値である。たとえば、図２に示したようにグループ０、グループ１、グループ２にグルーピングしたのならば、Ｍ＝３に設定されることとなる。Ｔ［Ｃ］［ｊ］は、二次元データ配列で、Ｃは上記カウンタ（Ｃ）の値と同じである。ｊは、パラメータ０、１、２の値をとる。データ内容は以下の通りである。Ｔ［Ｃ］［０］は、対象グループの処理周期であるかを判定するカウンタである。Ｔ［Ｃ］［１］は、対象グループの周期を示す定数が格納される。たとえば、図２のグループ０の例でいうと、バックアップ周期を１００ｍｓｅｃとしているので、図６の時系列フリーズ処理をコールする周期を４ｍｓｅｃに設定すると、Ｔ［Ｃ］［１］＝２５となる。Ｔ［Ｃ］［２］は、対象グループについて、異常発生後のデータを第３記憶部に格納したかどうかを示すフラグである。
【００３２】
図６の時系列フリーズ処理は、上記したように、たとえば４ｍｓｅｃの所定時間毎にコールされる。まず、ＳＴ１においては、処理の対象グループＮｏ．を示すカウンタ（Ｃ）の値がゼロ（初期値）に設定される。このカウンタ（Ｃ）は、図２に示した各グループにかかる周期計測およびバックアップ動作を順次的に行うためのものである。
【００３３】
次に、ＳＴ２において上記のカウンタ（Ｃ）が所定値（Ｍ）以上であるかどうか判断される。グループＮｏ．を示すカウンタ（Ｃ）が（Ｍ）以上となった場合に、図６の時系列フリーズ処理は終了する。時系列フリーズ処理の実行当初ならば、Ｃ＝０に設定されるので、ＳＴ３に進むこととなる。ＳＴ３においては、カウンタ（Ｔ［Ｃ］［０］）がインクリメントされる。つまり、前述したステップ（１）は、このＳＴ３に該当するステップである。
【００３４】
次に、ＳＴ４においてカウンタ（Ｔ［Ｃ］［０］）が、対象グループの周期（Ｔ［Ｃ］［１］）となったかどうかが判断される。つまり、ＳＴ４は、前述した（２）のステップに該当する。ＳＴ４において、ＹＥＳの場合には、カウンタ（Ｔ［Ｃ］［０］）がクリアされ、フラグ（Ｔ［Ｃ］［２］）の状態を参照することにより、対象グループの異常発生後のデータを第３記憶部に格納したかどうかが判断される（ＳＴ５，６）。つまり、第３記憶部へのデータ書き込みは、各グループにつき１回しか行なわないようにして、意味のない上書きを行なわないようにしている。このことも、全体の処理量の増大抑制に寄与している。
【００３５】
ＳＴ６においてフラグ（Ｔ［Ｃ］［２］）がＯＮされている旨の判断がされた場合には、ＳＴ１１にジャンプして、グループを示すカウンタ（Ｃ）をインクリメント（＋１）する。他方、フラグ（Ｔ［Ｃ］［２］）がＯＮされていない場合には、ＳＴ７において異常検出済みであるかどうかが判断される。異常検出済みでない場合には、対象グループの異常検出前データが第１記憶部に格納される（ＳＴ８）。そして、グループを示すカウンタ（Ｃ）がインクリメント（＋１）される。
【００３６】
異常検出済みである場合には、対象グループの異常検出後データを第３記憶部に格納するとともに（ＳＴ９）、フラグ（Ｔ［Ｃ］［２］）がＯＮに設定され、これにより対象グループの異常発生後データの第３記憶部へのバックアップが完了したことが記録される（ＳＴ１０）。これらの説明から分かるように、ＳＴ７，８，９は、前述した（３）のステップに該当する。そして、ＳＴ１１において、グループを示すカウンタ（Ｃ）がインクリメントされるので、グループ０、グループ１およびグループ２の全グループについて、順次、ＳＴ２〜ＳＴ１１までの処理が実行されるようになっている。
【００３７】
なお、ＳＴ８においては、図４で説明したように第１記憶部を複数領域に区切って、その各々に異常発生前のフリーズフレームデータを時系列的に記憶更新していくために、図５に示す処理がコールされる。まず、図５のフローチャート中に示す略号について説明する。「Ｐ」は、バックアップＲＡＭ１３の第１記憶部が記憶しているポインタであり、ＣＰＵ５の起動とともに「０」にセットされる。「Ｙ」は、第１記憶部に記憶する周期数である。図４を例示したように、本実施形態では異常発生前は、各グループ３周期分のフリーズフレームデータを保存するようにしているため、Ｙ＝３となる。「ｉ」は、ＲＡＭを探索するカウンタである。ＲＡＭ１［Ｍ］［Ｙ］は、第１記憶部に相当するＲＡＭである。
【００３８】
まず、Ｓ１，Ｓ２，Ｓ３の処理が図４の▲１▼▲２▼▲３▼のタイミングで実行されることにより、要保存データはそれぞれＡ，Ｂ，Ｃの領域に順番に格納される。ポインタＰが周期数Ｙ以上となった場合、Ｓ４に進み、ＲＡＭをサーチするカウンタｉが「１」にセットされる。続くＳ５を経て、ＲＡＭ１［Ｃ］［ｉ］に格納されているデータが、ＲＡＭ１［Ｃ］［ｉ−１］にシフトされ、カウンタｉがインクリメントされる（Ｓ６，Ｓ７）。つまり、Ｓ５〜Ｓ７は、フリーズフレームデータを第１記憶部の先頭側にシフトさせて、第１記憶部に格納されているフリーズフレームデータのうち、最も古いものを消去するステップである。このようなシフト処理が終了したら、第１記憶部の最後尾の領域（図４の例では領域Ｃ）に、そのときの要保存データを格納する。
【図面の簡単な説明】
【図１】自動車（車両）のＥＣＵのブロック図。
【図２】要保存データのグループ分けおよび各グループに設定されるバックアップ周期の一例。
【図３】本発明の時系列フリーズフレームデータの作成方法より得られる効果を説明する図。
【図４】バックアップＲＡＭへの要保存データの格納手順を示す説明図。
【図５】バックアップＲＡＭの第１記憶部に、複数周期分の要保存データを格納する処理のフローチャート。
【図６】本発明の時系列フリーズフレームデータの作成方法の要部を示すフローチャート。
【図７】センサ検出データのサンプリング周期とバックアップ周期とを示す説明図。
【図８】従来の時系列フリーズフレームデータの作成方法の問題点を説明する図。
【符号の説明】
１  制御装置（エンジンＥＣＵ）
５  ＣＰＵ（異常診断部）
７  ＲＯＭ
９  カウンタタイマ回路（バックアップ周期計測手段）
１１  ＲＡＭ（主記憶手段、バックアップ周期計測手段）
１３  バックアップＲＡＭ（データ保存用記憶手段）
【図１】
2004232498.tif 000003
【図２】
2004232498.tif 000004
【図３】
2004232498.tif 000005
【図４】
2004232498.tif 000006
【図５】
2004232498.tif 000007
【図６】
2004232498.tif 000008
【図７】
2004232498.tif 000009
【図８】
2004232498.tif 000010