(57)【特許請求の範囲】
【請求項１】
車両のイグニッションスイッチのオフ中の時間を計測する第１タイマと、前記イグニッションスイッチのオフ中に前記第１タイマが設定時間に等しい時間を計測した場合又は前記イグニッションスイッチがオフからオンにされた場合に、起動するマイコンと、を備えた電子制御装置において、
前記イグニッションスイッチのオフ中の時間を計測する第２タイマを有し、
前記第１タイマは、前記設定時間に等しい時間を計測した場合に、計測した時間をリセットし、このリセット後も時間の計測をし続け、
前記イグニッションスイッチがオンされたときに、前記第１タイマと前記第２タイマとが計測した時間の差が前記設定時間と異なる場合、又は、前記第１タイマが計測した時間に前記設定時間を加算した時間が、前記第２タイマが計測した時間と異なる場合、又は、前記第２タイマが計測した時間から前記設定時間を減算した時間が、前記第１タイマが計測した時間と異なる場合に、異常と判定することを特徴とする電子制御装置。
【請求項２】
前記第１タイマが前記設定時間に等しい時間を計測した場合に、
前記第１タイマの計測最大時間を前記設定時間に等しい時間分短くすることを特徴とする請求項１に記載の電子制御装置。
【請求項３】
前記第１タイマが前記設定時間に等しい時間を計測したときに、前記第１タイマと前記第２タイマとが計測した時間とを比較して、前記第１タイマと前記第２タイマとの計測時間が所定時間以上異なる場合に異常と判定することを特徴とする請求項１又は請求項２に記載の電子制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ウエイクアップ（ＷａｋｅＵＰ）タイマを備えた電子制御装置に関する。
【背景技術】
【０００２】
ＷａｋｅＵＰタイマを備えた電子制御装置は、自動車等の車両に搭載されている。車両には、エンジンシステムや燃料電池システムのように稼働時に昇温するものがあり、これらのものを故障診断しようとすると、故障診断の内容、例えば、エンジンシステムの燃料タンク周りのリーク診断等においては、エンジンシステム等が停止して、その温度が下がってシステム内雰囲気が安定した状態で行う必要がある。そこで、イグニッションスイッチをオフして、エンジンシステム等を停止した後、その温度が下がった頃に、ＷａｋｅＵＰタイマで電子制御装置を起動し、リーク診断を行うことが提案されている（特許文献１、２等参照）。そして、ＷａｋｅＵＰタイマの故障診断を行うことも提案されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−１３９８７４号公報
【特許文献２】特開２００５−３０１６１５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、特許文献１では、イグニッションスイッチのオフ中に所定時間が経過してＣＰＵが起動したことを示すフラグをセットする手法では、このフラグをセットするためのＲＡＭの容量が増えてしまう場合やＲＡＭに先のフラグをセットするためバッテリ容量が低下し後のフラグをセットできない場合がある。他にも、イグニッションスイッチのオフ中に所定時間が経過する毎にタイマをリセットさせると、例えばイグニッションスイッチのオフ中に１回しか起動させる必要が無い場合にも所定時間が経過する毎にリセットさせるのでタイマが正常であるにもかかわらず、ＷａｋｅＵＰタイマの異常と判定してしまう場合があると考えられた。また、特許文献２では、ＷａｋｅＵＰタイマが所定時間だと思ってＣＰＵを起動させたとしても、このＷａｋｅＵｐタイマ自体のずれ（タイマの進みや遅れ）を異常として検出することはできないと考えられた。
【０００５】
そこで、本発明の課題は、確実にＷａｋｅＵＰタイマの故障診断を行える電子制御装置を提供することにある。
【課題を解決するための手段】
【０００６】
本発明は、車両のイグニッションスイッチのオフ中の時間を計測する第１タイマと、前記イグニッションスイッチのオフ中に前記第１タイマが設定時間に等しい時間を計測した場合又は前記イグニッションスイッチがオフからオンにされた場合に、起動するマイコンと、を備えた電子制御装置において、
前記イグニッションスイッチのオフ中の時間を計測する第２タイマを有し、
前記第１タイマは、前記設定時間に等しい時間を計測した場合に、計測した時間をリセットし、このリセット後も時間の計測をし続け、
前記イグニッションスイッチがオンされたときに、前記第１タイマと前記第２タイマとが計測した時間の差が前記設定時間と異なる場合、又は、前記第１タイマが計測した時間に前記設定時間を加算した時間が、前記第２タイマが計測した時間と異なる場合、又は、前記第２タイマが計測した時間から前記設定時間を減算した時間が、前記第１タイマが計測した時間と異なる場合に、異常と判定することを特徴としている。
【０００７】
これによれば、第１タイマの時間の計測を再スタートした後は、正常であれば、第１タイマと第２タイマとが計測した時間の差が、それぞれが計測した時間の長短に関わらず、前記設定時間に一致する。同様に、第１タイマが計測した時間に前記設定時間を加算した時間は、第２タイマが計測した時間に一致し、第２タイマが計測した時間から前記設定時間を減算した時間は、第１タイマが計測した時間に一致する。すなわち、計測した時間が長くなった場合でも、第１タイマと第２タイマとが計測した時間の差が前記設定時間と異なったり、第１タイマが計測した時間に前記設定時間を加算した時間が第２タイマが計測した時間と異なったり、第２タイマが計測した時間から前記設定時間を減算した時間が、第１タイマが計測した時間と異なったりすれば、異常と判定することができる。そして、この判定は、第１タイマと第２タイマとがイグニッションスイッチがオンされたときに計測した時間に基づいて、行えばよいので、当然に、その判定は、イグニッションスイッチがオンされた後に行われ、判定結果をフラグとしてイグニッションスイッチがオンされる前に記憶する必要は無く、計測した時間の長短に関わらずＲＡＭの容量を増やすことなく異常の判定ができる。
【０００８】
また、本発明によれば、第１タイマと第２タイマとで同時に時間を計測していることになっている。第１タイマと第２タイマとの両方に、同時に、自体のずれ（タイマ自身の時間の進みや遅れ）が生じることはまれであると考えられるので、ずれが生じた場合は、どちらか一方にずれが生じていると考えられる。そして、例えば、第１タイマと第２タイマのどちらか一方にずれが生じた場合には、そのずれが第１タイマと第２タイマとが計測した時間の差に反映されて前記設定時間と異なる等の結果となり、異常判定をすることができる。第１タイマさらに第２タイマの故障診断を確実に行うことができる。
【０００９】
なお、第１タイマは、これが前記設定時間に等しい時間を計測した場合に、マイコンが起動されることになり、マイコンを、いわゆる、ＷａｋｅＵＰ（目覚まし）しているので、ＷａｋｅＵＰタイマとして機能しているといえる。また、第１タイマと第２タイマは、イグニッションスイッチがオフされてからの時間を計測しているので、ＳＯＡＫ（ソーク）タイマとして機能しているといえる。
【００１０】
また、本発明では、前記第１タイマが前記設定時間に等しい時間を計測した場合に、
前記第１タイマの計測最大時間を前記設定時間に等しい時間分短くすることを特徴とすることが好ましい。
【００１１】
通常、タイマは無限の時間を計測するわけではなく、計測する時間の上限値（計測最大時間）が存在する。これにより、計測最大時間を超えて時間を計測しようとすると、計測時間は計測最大時間のまま一定になる。本発明によれば、第１タイマと第２タイマがそれぞれ、計測最大時間（第１タイマと第２タイマとで等しくても異なってもよい。）を超えて時間を計測しようとすると、第１タイマの計測時間は第１タイマの計測最大時間より前記設定時間分短く、第２タイマの計測時間は第２タイマの計測最大時間となるので、第１タイマと第２タイマの計測時間の差は、前記設定時間に第１タイマと第２タイマの計測最大時間の差を考慮した時間に等しくなり異常と判定されない。単に、計測時間が長いというだけで、不用意に異常判定をするのを防止することができる。逆に、第１タイマと第２タイマとで、計測時間が前記最大時間に達しているのに、異常判定された場合には、ＷａｋｅＵＰ（目覚まし）せずに、第１タイマの前記最大時間が前記設定時間分短く再設定されなかった等の異常を検出できたことになる。
【００１２】
また、本発明では、前記第１タイマが前記設定時間に等しい時間を計測したときに、前記第１タイマと前記第２タイマとが計測した時間とを比較して、前記第１タイマと前記第２タイマとの計測時間が所定時間以上異なる場合に異常と判定することが好ましい。
【００１３】
これによれば、第１タイマが前記設定時間に等しい時間を計測した時点において、異常フラグを立てておけば、イグニッションスイッチがオンされたときに異常判定ができるので、例えば、前記した第１タイマと第２タイマの計測時間が前記最大時間に達しているような場合でも、異常判定をすることができる。
【発明の効果】
【００１４】
本発明によれば、第１タイマ（ＷａｋｅＵＰタイマ）の故障診断を確実に行える電子制御装置を提供することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の実施形態に係る電子制御装置の構成図である。
【図２】本発明の実施形態に係る電子制御装置による故障診断方法のフローチャートである。
【図３】タイマクロックずれチェック（タイマ初期チェック）の方法を説明するための低速クロックタイマと高速クロックタイマのカウント値波形のタイミングチャートである。
【図４】ＷａｋｅＵＰ時間ずれ判定方法を説明するためタイミングチャートである。
【図５】故障診断方法の正常時（ＳＯＡＫタイマの計測時間：７２時間未満）におけるタイミングチャートである。
【図６】故障診断方法の正常時（ＳＯＡＫタイマの計測時間：７２時間以上）におけるタイミングチャートである。
【図７】故障診断方法の異常時（その１：初期チェックエラー）におけるタイミングチャートである。
【図８】故障診断方法の異常時（その２：ＷａｋｅＵＰ時エラー）におけるタイミングチャートである。
【図９】故障診断方法の異常時（その３：ＷａｋｅＵＰしないエラー：７２時間未満）におけるタイミングチャートである。
【図１０】故障診断方法の異常時（その４：ＷａｋｅＵＰしないエラー：７２時間以上）におけるタイミングチャートである。
【発明を実施するための形態】
【００１６】
次に、本発明を実施するための形態（「実施形態」という）について、適宜図面を参照しながら詳細に説明する。
【００１７】
図１に、本発明の実施形態に係る電子制御装置の例として、燃料噴射用の電子制御装置（ＦＩＥＣＵ）１の構成図を示す。自動車等の車両には、様々な電子制御装置１が搭載されて、それぞれの電子制御装置１に本発明を適用できるのであるが、本実施形態では、エンジン内に燃料を噴射させる燃料噴射（ＦＩ）システムを制御するＦＩＥＣＵ（電子制御装置）１を例に説明する。なお、車両には、エンジンシステム（燃料電池車の場合はＦＣシステム）、操舵システム等のような複数のシステムが搭載され、それぞれのシステムは、自身のシステムを制御する電子制御装置１を有している。例えば、エンジンシステムでは、そのシステム内に燃料噴射（ＦＩ）システムを更に有しており、その燃料噴射（ＦＩ）システムが、ＦＩＥＣＵ（電子制御装置）１を有している。
【００１８】
また、車両は、イグニッションスイッチ（ＩＧＳＷ）９と、メインリレー（ＭＡＩＮ  ＲＬＹ）８と、バッテリ（＋Ｂ）を有している。車両の運転者が、イグニッションスイッチ９をオンすることによって、メインリレー８がオンし、バッテリ（＋Ｂ）から、メインリレー８を介して、電力が、ＦＩＥＣＵ（電子制御装置）１を含めた燃料噴射（ＦＩ）システム全体に供給され、更には、車両を構成する複数のシステム全体に供給される。そして、車両、その車両の複数のシステム、そのシステムの電子制御装置１が、始動する。また、運転者が、イグニッションスイッチ９をオフすると、メインリレー８がオフし、バッテリ（＋Ｂ）からの電力供給がストップする。そして、ＦＩＥＣＵ（電子制御装置）１を含めた複数のシステム、更には、車両を、停止することができる。
【００１９】
車両に搭載されている燃料噴射（ＦＩ）システム等のシステムは、自己診断機能を有しており、自動で故障診断を実施することができる。大半の故障診断は、イグニッションスイッチ９がオンしているとき、特に、オンした直後に行われるが、一部の故障診断には、イグニッションスイッチ９がオフしているときに実施されるものがある。具体的には、燃料タンク周りのリーク診断等である。このリーク診断等は、エンジンシステム等が停止して、その温度が下がってシステム内雰囲気が安定した状態で行う必要がある。そこで、イグニッションスイッチ９をオフして、車両（エンジンシステム等を含んだ複数のシステム全体）を停止した後、燃料タンク周りの温度が下がる数時間程度の設定時間に等しい時間を、ＷａｋｅＵＰタイマ（低速クロックタイマ、第１タイマ）３ａで計測してから、燃料噴射（ＦＩ）システム、特に、ＦＩＥＣＵ（電子制御装置）１のメインＣＰＵ（ＭａｉｎＣＰＵ、マイコン）２を起動し、リーク診断を行い、更に、ＷａｋｅＵＰタイマ３ａの故障診断（の一部）を行う。リーク診断とＷａｋｅＵＰタイマ３ａの故障診断（の一部）が終了すると、メインＣＰＵ（ＭａｉｎＣＰＵ、マイコン）２等は停止する。
【００２０】
ＦＩＥＣＵ（電子制御装置）１は、メインＣＰＵ（ＭａｉｎＣＰＵ、マイコン）２と、サブＣＰＵ（ＳｕｂＣＰＵ）３と、カスタムＩＣ４と、第１電源回路５と、メインリレー（ＭＲＬＹ）制御回路６と、第２電源回路７とを有している。
【００２１】
第２電源回路７は、バッテリ（＋Ｂ）に直接接続されている。このため、第２電源回路７は、サブＣＰＵ（ＳｕｂＣＰＵ）３とカスタムＩＣ４に、常時、電力を供給（通電）している。第２電源回路７は、常時、バッテリ（＋Ｂ）から電圧ＶＢＵの電力が供給され、定電圧ＶＣＣ＿Ｓの電力を出力する定電圧源になっている。
【００２２】
サブＣＰＵ（ＳｕｂＣＰＵ）３は、常時、通電され、オン状態になっている。サブＣＰＵ３は、低速クロックタイマ（ＷａｋｅＵＰタイマ、第１タイマ）３ａと、高速クロックタイマ（故障検知用）３ｂとを有している。後記では、ＷａｋｅＵＰタイマを、低速クロックタイマ３ａと呼ぶ。サブＣＰＵ３は、イグニッションスイッチ９がオン状態とオフ状態とで、クロックモードを、高速クロックモードと低速クロックモードとで切替え、電力消費を抑えている。イグニッションスイッチ９のオン状態では、メインＣＰＵ２において、様々なアプリケーションを高速（例えば、２０ＭＨｚ）に実行するため、高速クロックタイマ３ｂで、高速にカウントを行っている（高速クロックモード）。このため、時間当たりの消費電力は大きくなる傾向にある。イグニッションスイッチ９のオフ状態では、イグニッションスイッチ９がオフされてからの時間、例えば、ＷａｋｅＵＰするまでの時間（設定時間に達するまでの時間）が、計測できればよいので、時間当たりのカウント数が少なく低速な（例えば、３０ｋＨｚ）低速クロックタイマ（ＷａｋｅＵＰタイマ、第１タイマ）３ａを用いることができる（低速クロックモード）。そして、時間当たりの消費電力を小さくすることができる。なお、イグニッションスイッチ９のオフ状態で、ＷａｋｅＵＰにより、メインＣＰＵ２において、リーク診断等のアプリケーションが実行される際には、高速クロックタイマ３ｂで、高速なカウントが行われる（高速クロックモード）。そして、ＷａｋｅＵＰしたとき（まで）と、イグニッションスイッチ９がオンしたとき（まで）の、低速クロックタイマ（ＷａｋｅＵＰタイマ、第１タイマ）３ａの計測時間は、シリアル通信等の通信によりメインＣＰＵ２に送信される。
【００２３】
なお、低速クロックタイマ（ＷａｋｅＵＰタイマ、第１タイマ）３ａは、前記のとおり、イグニッションスイッチ９がオフされてからの時間を計測する。低速クロックタイマ３ａは、ＷａｋｅＵＰ設定時間（設定時間）に等しい時間を計測した場合に、それまで計測した計測時間をリセットして時間の計測を再スタートする。この計測時間は、メインＣＰＵ２において、ＷａｋｅＵＰタイマ受信値として、ＳＯＡＫ時間受信値との差がとられる。この差が、ＷａｋｅＵＰ設定時間（設定時間）や所定時間と比較されることで、低速クロックタイマ（ＷａｋｅＵＰタイマ、第１タイマ）３ａの異常を判定することができる。なお、ＷａｋｅＵＰにおける処理が終了した後は、再び、低速クロックモードに戻る。
【００２４】
また、詳細は後記するが、低速クロックタイマ（ＷａｋｅＵＰタイマ、第１タイマ）３ａと、高速クロックタイマ３ｂとで、同時に時間計測をすることで、クロックずれ（時計の進みや遅れ）といった故障を検知することができる。これによれば、高速クロックタイマ３ｂは、低速クロックタイマ（ＷａｋｅＵＰタイマ、第１タイマ）３ａの故障検知用タイマとして機能すると考えることができる。
【００２５】
サブＣＰＵ（ＳｕｂＣＰＵ）３は、メモリ３ｃを有している。メモリ３ｃは、ＷａｋｅＵＰ起動要求フラグ、最大時間、ＷａｋｅＵＰ設定時間（設定時間）などを記憶することができる。ＷａｋｅＵＰ設定時間（設定時間）は、メインＣＰＵで設定され、ＷａｋｅＵＰ設定時間送信値として、シリアル通信等の通信によりサブＣＰＵ３のメモリ３ｃに送信され、記憶される。低速クロックタイマ（ＷａｋｅＵＰタイマ、第１タイマ）３ａの計測時間が、ＷａｋｅＵＰ設定時間（設定時間）に達すると、サブＣＰＵ３は、ＭＲＬＹ  ＯＮ（メインリレーオン）要求を、メインリレー（ＭＲＬＹ）制御回路６に送信する。これにより、メインＣＰＵ２がＷａｋｅＵＰとして起動することになる。ＷａｋｅＵＰ起動要求フラグは、これが立っている（オンしている）ときに限って、サブＣＰＵ３によるＭＲＬＹ  ＯＮ（メインリレーオン）要求の送信を許可するようになっている。
【００２６】
リーク診断等の診断は、車両の１回の停車時に、１回行えばよい。そこで、ＷａｋｅＵＰする回数も１回でよい。そこで、最初にＷａｋｅＵＰの（計測時間がＷａｋｅＵＰ設定時間に達する）前にＷａｋｅＵＰ起動要求フラグを立てておき、ＷａｋｅＵＰの直後にＷａｋｅＵＰ起動要求フラグをオフする。これによれば、ＷａｋｅＵＰの後に、再度、計測時間がＷａｋｅＵＰ設定時間に達しても、ＭＲＬＹ  ＯＮ要求は送信されず、メインＣＰＵ２がＷａｋｅＵＰ起動することはない。低速クロックタイマ３ａは、ＷａｋｅＵＰ設定時間（設定時間）に等しい時間を計測した場合（最初のＷａｋｅＵＰの後）に、それまで計測した計測時間をリセットして時間の計測を再スタートするので、ＷａｋｅＵＰをしてからの時間を計測することができる。
【００２７】
メモリ３ｃが記憶している最大時間は、低速クロックタイマ３ａが計測できる最大時間であり、サブＣＰＵ３はその変更が可能である。詳細は後記するが、サブＣＰＵ３は、低速クロックタイマ３ａがＷａｋｅＵＰ設定時間に等しい時間を計測した場合（ＷａｋｅＵＰの際）に、最大時間を、ＷａｋｅＵＰ設定時間分だけ小さくしている。なお、低速クロックタイマ３ａの計測時間が、最大時間に達した場合、サブＣＰＵ３は、それ以降、その最大時間を、記憶し、ＷａｋｅＵＰタイマ受信値として、メインＣＰＵ２へ送信する。
【００２８】
カスタムＩＣ４は、サブＣＰＵ３と同様に、常時、通電され、オン状態になっている。カスタムＩＣ４は、ＳＯＡＫ時間計測回路（ＳＯＡＫタイマ、第２タイマ）４ａと、メモリ４ｂとを有している。ＳＯＡＫ時間計測回路（ＳＯＡＫタイマ、第２タイマ）４ａは、イグニッションスイッチ９がオフされてからオンされるまでの時間を計測する。このため、カスタムＩＣ４（ＳＯＡＫ時間計測回路４ａ）は、必ずしも、常時オンしている必要はなく、イグニッションスイッチ９がオフされてからオンされるまでの間、すなわち、イグニッションスイッチ９がオフ時のみオンしていればよい。そして、ＷａｋｅＵＰしたとき（まで）と、イグニッションスイッチ９がオンしたとき（まで）の、ＳＯＡＫ時間計測回路（ＳＯＡＫタイマ、第２タイマ）４ａの計測時間は、シリアル通信等の通信により、ＳＯＡＫ時間受信値として、メインＣＰＵ２に送信される。
【００２９】
なお、ＳＯＡＫ時間計測回路（ＳＯＡＫタイマ、第２タイマ）４ａを、サブＣＰＵ３が有していてもよい。この場合、低速クロックタイマ（ＷａｋｅＵＰタイマ、第１タイマ）３ａは、カスタムＩＣ４が有していてもよい。また、低速クロックタイマ（ＷａｋｅＵＰタイマ、第１タイマ）３ａと、ＳＯＡＫ時間計測回路（ＳＯＡＫタイマ、第２タイマ）４ａの役割を入れ替えてもよい。
【００３０】
メモリ４ｂは、ＳＯＡＫ時間計測回路４ａが計測できる最大時間を記憶している。この最大時間は、ＷａｋｅＵＰの前にメモリ３ｃに記憶されている最大時間と等しくなるように設定されている。なお、ＳＯＡＫ時間計測回路４ａの計測時間が、最大時間に達した場合、カスタムＩＣ４は、それ以降、その最大時間を記憶し、ＳＯＡＫ時間受信値として、メインＣＰＵ２へ送信する。
【００３１】
メインＣＰＵ２は、メモリ２ａを有している。メモリ２ａは、仮正常フラグのオン又はオフの状態と、異常フラグのオン又はオフの状態を記憶している。メインＣＰＵ２は、イグニッションスイッチ９がオンされ起動したときに、メモリ２ａに記憶されている仮正常フラグと異常フラグの状態に基づいて、低速クロックタイマ（ＷａｋｅＵＰタイマ、第１タイマ）３ａの異常を判定することができる。仮正常フラグや異常フラグは、イグニッションスイッチ９がオフされた後のメインＣＰＵ２がオフするわずかな時間や、メインＣＰＵ２のＷａｋｅＵＰ起動中に、行った故障診断に基づいて、オン・オフを設定することができる。なお、メモリ２ａには、メインＣＰＵ２に電力が供給されていないときでも、記憶が保持されるように、不揮発性のメモリであることが望ましい。
【００３２】
メインＣＰＵ２は、第１電源回路５と、メインリレー（ＭＲＬＹ）制御回路６とに接続している。ＭＲＬＹ制御回路６は、イグニッションスイッチ９がオン状態のときに出力される信号ＩＧ１、又は、サブＣＰＵ３から出力されるＭＲＬＹ  ＯＮ要求を受信した場合に、配線ＭＲＬＹを介して接続するメインリレー（ＭＡＩＮ  ＲＬＹ）８をオンする。これにより、バッテリ（＋Ｂ）から配線ＩＧＰを介して、第１電源回路５に電力が供給される。第１電源回路５は、メインリレー８のオンのタイミングで、メインＣＰＵ２に、電力を供給（通電）している。第１電源回路５は、バッテリ（＋Ｂ）から電圧ＶＢＵの電力が供給され、定電圧ＶＣＣ＿Ｍの電力を出力する定電圧源になっている。メインリレー８は、ＭＲＬＹ制御回路６によって、イグニッションスイッチ９がオン状態のときオンし、オフ状態のときにオフする。ただ、メインリレー８は、ＭＲＬＹ制御回路６により、イグニッションスイッチ９がオンになると直後にオンするが、イグニッションスイッチ９がオフになった場合は、そのオフから遅れてオフする。この遅れ時間の間に、後記する図２のステップＳ１〜Ｓ６が実施されることになる。
【００３３】
また、メインリレー８は、ＭＲＬＹ制御回路６によって、サブＣＰＵ３から出力されるＭＲＬＹ  ＯＮ要求を受信した場合において、一時的にオンする。ＭＲＬＹ  ＯＮ要求は、メインＣＰＵ２がＷａｋｅＵＰ起動してからリーク診断の実施期間中にわたって出力される必要はなく、ＭＲＬＹ制御回路６にＭＲＬＹ  ＯＮ要求がいったん入力されると、メインリレー８のオン状態は継続される。メインＣＰＵ２は、ＷａｋｅＵＰ起動すると、メインリレー８をオン状態に保持することを要求するＳＳＤ要求（ＭＲＬＹ保持要求）を出力し、この出力をリーク診断が終了するまで行い、リーク診断の終了の後にＳＳＤ要求をオフする。このオフによりメインリレー８はオフ状態に転じ、メインＣＰＵ２は、第１電源回路５からの電力供給がカットされ停止する。
【００３４】
図２に、本発明の実施形態に係る電子制御装置（ＦＩＥＣＵ）１による低速クロックタイマ（ＷａｋｅＵＰタイマ、第１タイマ）３ａの故障診断方法のフローチャートを示す。また、図３は、タイマクロックずれチェック（低速クロックタイマ３ａの故障診断方法の初期チェック）の方法を説明するためのタイミングチャートであり、図４は、ＷａｋｅＵＰ時間ずれ判定方法（低速クロックタイマ３ａの故障診断方法の主要部）を説明するためタイミングチャートである。この故障診断方法は、図４に示すようにイグニッションスイッチ（ＩＧＳＷ）９が運転者によってオフされることによってスタートする。
【００３５】
まず、ステップＳ１で、サブＣＰＵ３は、メモリ３ｃにおいて、ＷａｋｅＵＰ起動要求フラグをオンにする。
【００３６】
次に、ステップＳ２で、サブＣＰＵ３は、初期チェックを実施する。図３を用いて、タイマ初期チェック（タイマクロックずれチェック）の方法を説明する。図３は、低速クロック（タイマ）３ａと高速クロック（タイマ）３ｂのカウント値波形のタイミングチャートである。低速クロック（タイマ）３ａに、（１）リセット、（２）カウントスタート、（３）カウント値がタイマレジスタＭａｘ値に達したらカウントストップ、のような、（１）〜（３）の一連の動作を、１回もしくは複数回（図３の例では６回）繰り返す。低速クロック（タイマ）３ａが正常であれば、（１）のリセットから（３）のカウントストップまでの時間（又は（３）のカウント値がタイマレジスタＭａｘ値に達するまでの時間）は、回毎に等しく、一定時間を示すと考えられる。（１）と（３）のカウントストップのタイミングで、高速クロック（タイマ）３ｂのカウント値を検出する。（１）のリセットのタイミングでの高速クロック（タイマ）３ｂのカウント値から、（３）のカウントストップのタイミングでの高速クロック（タイマ）３ｂのカウント値を引いたカウント値の差は、低速クロック（タイマ）３ａで計測した（１）のリセットから（３）のカウントストップまでの一定時間（計測時間）に相当する。したがって、このカウント値の差も低速クロック（タイマ）３ａが正常であれば、一定値になると考えられる。このカウント値の差が、この一定値に誤差を加味した範囲内であれば、低速クロックタイマ３ａは正常であり、範囲外であれば異常であると判定することができる。そして、タイマレジスタＭａｘ値を、ＷａｋｅＵＰ設定時間とみなしてメインリレー８を擬似的にオンさせる「ＷａｋｅＵＰ処理の割り込み」を行えば、メインリレー制御回路６とメインリレー８を含めた故障診断を行うことができる。
【００３７】
次に、ステップＳ３で、サブＣＰＵ３は、前記にしたがい、低速クロックタイマ３ａが正常か否か判定する。低速クロックタイマ３ａが正常と判定されれば（ステップＳ３、Ｙｅｓ）、ステップＳ５へ進み、低速クロックタイマ３ａが正常でない（異常）と判定されれば（ステップＳ３、Ｎｏ）、ステップＳ４へ進む。
【００３８】
ステップＳ４で、メインＣＰＵ２は、メモリ２ａにおいて、異常フラグをオンにする。また、サブＣＰＵ３は、メモリ３ｃにおいて、ＷａｋｅＵＰ起動要求フラグをオフにする。
【００３９】
ステップＳ５で、メインＣＰＵ２は、メモリ２ａにおいて、仮正常フラグをオンにする。
【００４０】
ステップＳ６で、メインＣＰＵ２は、ＷａｋｅＵＰ設定時間（設定時間）を、図４の例では５ｈｒに設定し、サブＣＰＵ３へ送信する。サブＣＰＵ３は、メモリ３ｃに、ＷａｋｅＵＰ設定時間を記憶する。サブＣＰＵ３は、メモリ３ｃに、最大時間を記憶させることで、低速クロックタイマ（ＷａｋｅＵＰタイマ、第１タイマ）３ａにガード値を設定する。カスタムＩＣ４は、メモリ４ｂに、最大時間を記憶させることで、ＳＯＡＫ時間計測回路（ＳＯＡＫタイマ、第２タイマ）４ａにガード値を設定する。サブＣＰＵ３は、低速クロックタイマ（ＷａｋｅＵＰタイマ、第１タイマ）３ａを、リセットし、図４のＳ６に示すように、カウント（時間計測）をスタートさせる。カスタムＩＣ４は、ＳＯＡＫ時間計測回路（２４ｈタイマ、ＳＯＡＫタイマ、第２タイマ）４ａを、リセットし、図４のＳ６に示すように、カウント（時間計測）をスタートさせる。
【００４１】
ステップＳ７で、メインリレー制御回路６は、メインリレー８をオフする。図４のＳ７に示すように、配線ＩＧＰの電位が低下し、メインＣＰＵ（マイコン）２がオフされる。
【００４２】
ステップＳ８で、サブＣＰＵ３は、低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間が、ＷａｋｅＵＰ設定時間（設定時間、図４の例では５ｈｒ）に達したか否か判定する。低速クロックタイマ３ａの計測時間が、設定時間に達していれば（ステップＳ８、Ｙｅｓ）、ステップＳ８ａへ進み、設定時間に達していなければ（ステップＳ８、Ｎｏ）、ステップＳ１３へ進む。図４の低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間の波形として、設定時間通りＷａｋｅＵＰしているケースＣ０（正常）と、設定時間より早くＷａｋｅＵＰしているケースＣ１（故障、異常）と、設定時間より遅くＷａｋｅＵＰしているケースＣ２（故障、異常）とが描かれている。どのケースＣ０、Ｃ１、Ｃ２でも、達した時刻に差はあるものの、設定時刻に達している。
【００４３】
ステップＳ８ａで、サブＣＰＵ３は、メモリ３ｃに記憶されているＷａｋｅＵＰ起動要求フラグが、オン状態か否か判定する。オン状態であれば（ステップＳ８ａ、Ｙｅｓ）、ステップＳ９へ進み、オン状態でなければ（ステップＳ８ａ、Ｎｏ）、ステップＳ１３へ進む。
【００４４】
ステップＳ９で、サブＣＰＵ３は、図４に示すどのケースＣ０、Ｃ１、Ｃ２でも、低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間をリセットし、時間計測を再スタートさせる。サブＣＰＵ３は、メモリ３ｃに記憶されている最大時間を、設定時間分小さくして記憶させることで、低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａのガード値を下げる。サブＣＰＵ３は、メモリ３ｃに記憶されたＷａｋｅＵＰ起動要求フラグがオン状態であることを条件に、ＭＲＬＹ  ＯＮ要求を、メインリレー制御回路６へ送信する。これにより、メインリレー制御回路６は、メインリレー８をオンする。図４のＳ９に示すように、配線ＩＧＰの電位が上昇し、メインＣＰＵ（マイコン）２がオン（起動）する。メインＣＰＵ（マイコン）２は、ＳＳＤ要求を出力し、オン状態を保持しながら、リーク診断（燃料タンクの漏れ診断）を実施する。
【００４５】
ステップＳ１０で、メインＣＰＵ（マイコン）２は、リーク診断が終了するのを待って、ＳＳＤ要求の出力を停止する。これにより、メインリレー制御回路６は、メインリレー８をオフする。図４のＳ１０に示すように、配線ＩＧＰの電位が低下し、メインＣＰＵ（マイコン）２がオフされる。サブＣＰＵ３は、メモリ３ｃに記憶されているＷａｋｅＵＰ起動要求フラグをオンからオフに変更して記憶する。
【００４６】
ステップＳ１１で、メインＣＰＵ２は、低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間が（ＷａｋｅＵＰ）設定時間に達した時刻における、ＳＯＡＫ時間計測回路（ＳＯＡＫタイマ、第２タイマ）４ａの計測時間（Ｓカウント値）が、（ＷａｋｅＵＰ）設定時間、又は、低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間に等しい（ＳＯＡＫ時間計測回路４ａの計測時間（Ｓカウント値）＝（ＷａｋｅＵＰ）設定時間＝低速クロックタイマ３ａの計測時間）か否か判定する。同じ時間を計測しているので、正常であれば、等しくなる。具体的には、所定時間の計測誤差を加味して、ＳＯＡＫ時間計測回路４ａの計測時間（Ｓカウント値）と（ＷａｋｅＵＰ）設定時間との差、又は、ＳＯＡＫ時間計測回路４ａの計測時間（Ｓカウント値）と低速クロックタイマ３ａの計測時間との差が、前記所定時間より小さいか否か判定する。設定時間に等しい（所定時間より小さい）と判定されれば（ステップＳ１１、Ｙｅｓ）、正常であるとして、ステップＳ１３へ進み、設定時間に等しくない（所定時間より小さくない）と判定されれば（ステップＳ１１、Ｎｏ）、異常であるとして、ステップＳ１２へ進む。
【００４７】
ステップＳ１２で、メインＣＰＵ２は、メモリ２ａにおいて、異常フラグをオンにし、仮正常フラグをオフにする。
【００４８】
ステップＳ１３で、サブＣＰＵ３は、イグニッションスイッチ（ＩＧＳＷ）９が運転者によってオンされたか否か判定する。オンされたと判定されれば（ステップＳ１３、Ｙｅｓ）、ステップＳ１４へ進み、オンされていないと判定されれば（ステップＳ１３、Ｎｏ）、ステップＳ８へ戻る。
【００４９】
ステップＳ１４では、図４のＳ１３に示すように、イグニッションスイッチ（ＩＧＳＷ）９はオンしているので、メインリレー制御回路６は、メインリレー８をオンする。図４のＳ１４に示すように、配線ＩＧＰの電位が上昇し、メインＣＰＵ（マイコン）２がオン（起動）する。
【００５０】
ステップＳ１５で、メインＣＰＵ２は、メモリ２ａに記憶された異常フラグがオン状態か否か判定する。異常フラグがオン状態であると判定されれば（ステップＳ１５、Ｙｅｓ）、ステップＳ１８へ進み、異常フラグがオン状態でないと判定されれば（ステップＳ１５、Ｎｏ）、ステップＳ１６へ進む。
【００５１】
ステップＳ１６で、メインＣＰＵ２は、低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間（Ｗカウント値）に、（ＷａｋｅＵＰ）設定時間を加算し加算値を算出する。ＳＯＡＫ時間計測回路（ＳＯＡＫタイマ、第２タイマ）４ａの計測時間（Ｓカウント値）から（ＷａｋｅＵＰ）設定時間を減算し減算値を算出してもよい。ＳＯＡＫ時間計測回路（ＳＯＡＫタイマ、第２タイマ）４ａの計測時間（Ｓカウント値）と低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間（Ｗカウント値）との差分を算出してもよい。
【００５２】
具体的に図４に実線で示すケースＣ０（正常）の例では、低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間である８ｈｒに、設定時間の５ｈｒを加算し加算値１３ｈｒ（＝８＋５）を算出する。あるいは、ＳＯＡＫ時間計測回路（ＳＯＡＫタイマ）４ａの計測時間１３ｈｒから設定時間の５ｈｒを減算し減算値８ｈｒ（＝１３−８）を算出する。あるいは、ＳＯＡＫ時間計測回路（ＳＯＡＫタイマ）４ａの計測時間１３ｈｒと低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間８ｈｒとの差分５ｈｒ（１３−８）を算出する。
【００５３】
具体的に図４に一点鎖線で示すケースＣ１（異常）の例では、低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間１６ｈｒに、設定時間５ｈｒを加算し加算値２１ｈｒ（＝１６＋５）を算出する。あるいは、ＳＯＡＫ時間計測回路（ＳＯＡＫタイマ）４ａの計測時間１３ｈｒから設定時間の５ｈｒを減算し減算値８ｈｒ（＝１３−８）を算出する。あるいは、ＳＯＡＫ時間計測回路（ＳＯＡＫタイマ）４ａの計測時間１３ｈｒと低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間１６ｈｒとの差分−３ｈｒ（１３−１６）を算出する。
【００５４】
具体的に図４に二点鎖線で示すケースＣ２（異常）の例では、低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間４ｈｒに、設定時間５ｈｒを加算し加算値９ｈｒ（＝４＋５）を算出する。あるいは、ＳＯＡＫ時間計測回路（ＳＯＡＫタイマ）４ａの計測時間１３ｈｒから設定時間の５ｈｒを減算し減算値８ｈｒ（＝１３−８）を算出する。あるいは、ＳＯＡＫ時間計測回路（ＳＯＡＫタイマ）４ａの計測時間１３ｈｒと低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間４ｈｒとの差分９ｈｒ（１３−４）を算出する。
【００５５】
ステップＳ１７で、メインＣＰＵ２は、加算値がＳＯＡＫ時間計測回路（ＳＯＡＫタイマ、第２タイマ）４ａの計測時間（Ｓカウント値）に等しいか否か判定する。減算値が、低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間（Ｗカウント値）に等しいか否か判定してもよい。Ｓカウント値とＷカウント値の差分が、（ＷａｋｅＵＰ）設定時間に等しいか否か判定してもよい。これらが等しいと判定されれば（ステップＳ１７、Ｙｅｓ）、低速クロックタイマ３ａの故障診断結果が正常であるとして、故障診断方法のフロー（チャート）を終了する。これらが等しくないと判定されれば（ステップＳ１７、Ｎｏ）、低速クロックタイマ３ａの故障診断結果が異常であるとして、ステップＳ１８へ進み、運転者に異常を警告するために車両のインパネ等に異常を知らせる表示等を行う。
【００５６】
具体的に図４に実線で示すケースＣ０（正常）の例では、低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間８ｈｒに設定時間５ｈｒを加算した加算値１３ｈｒ（＝８＋５）は、ＳＯＡＫ時間計測回路（ＳＯＡＫタイマ４ａの計測時間１３ｈｒに等しいので（ステップＳ１７、Ｙｅｓ）、低速クロックタイマ３ａの故障診断結果は正常となる。あるいは、ＳＯＡＫ時間計測回路（ＳＯＡＫタイマ）４ａの計測時間１３ｈｒから設定時間の５ｈｒを減算した減算値８ｈｒ（＝１３−８）は、低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間８ｈｒに等しいので（ステップＳ１７、Ｙｅｓ）、低速クロックタイマ３ａの故障診断結果は正常となる。あるいは、ＳＯＡＫ時間計測回路（ＳＯＡＫタイマ）４ａの計測時間１３ｈｒと低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間８ｈｒとの差分５ｈｒ（１３−８）は、設定時間５ｈｒに等しいので（ステップＳ１７、Ｙｅｓ）、低速クロックタイマ３ａの故障診断結果は正常となる。
【００５７】
具体的に図４に示すケースＣ１（異常）の例では、低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間１６ｈｒに設定時間５ｈｒを加算した加算値２１ｈｒ（＝１６＋５）は、ＳＯＡＫ時間計測回路（ＳＯＡＫタイマ４ａの計測時間１３ｈｒに等しくないので（ステップＳ１７、Ｎｏ）、低速クロックタイマ３ａの故障診断結果は異常となる。あるいは、ＳＯＡＫ時間計測回路（ＳＯＡＫタイマ）４ａの計測時間１３ｈｒから設定時間５ｈｒを減算した減算値８ｈｒ（＝１３−８）は、低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間１６ｈｒに等しくないので（ステップＳ１７、Ｎｏ）、低速クロックタイマ３ａの故障診断結果は異常となる。あるいは、ＳＯＡＫ時間計測回路（ＳＯＡＫタイマ）４ａの計測時間１３ｈｒと低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間１６ｈｒとの差分−３ｈｒ（１３−１６）は、設定時間５ｈｒに等しくないので（ステップＳ１７、Ｎｏ）、低速クロックタイマ３ａの故障診断結果は異常となる。
【００５８】
具体的に図４に示すケースＣ２（異常）の例では、低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間４ｈｒに設定時間５ｈｒを加算した加算値９ｈｒ（＝４＋５）は、ＳＯＡＫ時間計測回路（ＳＯＡＫタイマ４ａの計測時間１３ｈｒに等しくないので（ステップＳ１７、Ｎｏ）、低速クロックタイマ３ａの故障診断結果は異常となる。あるいは、ＳＯＡＫ時間計測回路（ＳＯＡＫタイマ）４ａの計測時間１３ｈｒから設定時間５ｈｒを減算した減算値８ｈｒ（＝１３−８）は、低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間４ｈｒに等しくないので（ステップＳ１７、Ｎｏ）、低速クロックタイマ３ａの故障診断結果は異常となる。あるいは、ＳＯＡＫ時間計測回路（ＳＯＡＫタイマ）４ａの計測時間１３ｈｒと低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間４ｈｒとの差分９ｈｒ（１３−４）は、設定時間５ｈｒに等しくないので（ステップＳ１７、Ｎｏ）、低速クロックタイマ３ａの故障診断結果は異常となる。
【００５９】
図５に、故障診断方法を実施して、低速クロックタイマ３ａの正常時（ＳＯＡＫタイマまたはＷａｋｅＵｐタイマの計測可能最大時間：１００時間未満）におけるタイミングチャートを示す。まず、イグニッションスイッチ（ＩＧＳＷ）９が運転者によってオフされることによってスタートする。次に、ステップＳ１で、ＷａｋｅＵＰ起動要求フラグをオンにする。次に、ステップＳ２で、タイマ初期チェックを実施する。次に、ステップＳ３で、タイマ初期チェックにおいて、低速クロックタイマ３ａが正常か否か判定する。低速クロックタイマ３ａが正常と判定され（ステップＳ３、Ｙｅｓ）、ステップＳ５へ進み、仮正常フラグをオンにする。ステップＳ６で、ＷａｋｅＵＰ設定時間（設定時間）を、５ｈｒに設定し、カウントＵＰガード値として、メモリ３ｃ、４ｂに、計測可能最大時間１００Ｈ（ｈｒ）を設定する。低速クロックタイマ（ＷａｋｅＵＰタイマ、第１タイマ）３ａと、ＳＯＡＫ時間計測回路（２４ｈタイマ、ＳＯＡＫタイマ、第２タイマ）４ａを、リセットし、カウント（時間計測）を同時にスタートさせる。ステップＳ７で、メインリレー８をオフし、配線ＩＧＰの電位が低下し、メインＣＰＵ（マイコン）２がオフされる。
【００６０】
ステップＳ８で、低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間が、ＷａｋｅＵＰ設定時間の５ｈｒに達したか否か判定する。低速クロックタイマ３ａの計測時間が、ＷａｋｅＵＰ設定時間の５ｈｒに達すると（ステップＳ８、Ｙｅｓ）、ステップＳ８ａへ進み、ＷａｋｅＵＰ起動要求フラグが、オン状態か否か判定する。オン状態であるので（ステップＳ８ａ、Ｙｅｓ）、ステップＳ９へ進み、低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間をリセットし、時間計測を再スタートさせる。サブＣＰＵ３は、ＭＲＬＹ  ＯＮ要求を、メインリレー制御回路６へ送信し、メインリレー制御回路６は、メインリレー８をオンする。配線ＩＧＰの電位が上昇し、メインＣＰＵ（マイコン）２がオン（起動）する。メインリレーがオン（起動）して、メモリ３ｃに記憶されている最大時間（低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａのカウントＵＰガード値の１００ｈｒを、ＷａｋｅＵＰ設定時間の５ｈｒ分下げ、９５ｈｒ（＝１００−５）に設定する。また、メインＣＰＵ（マイコン）２は、リーク診断（燃料タンクの漏れ診断）を実施する。
なお、ガード値を下げる指令を出力するのはメインＣＰＵもしくはサブＣＰＵでも良い。
【００６１】
ステップＳ１０で、リーク診断終了後に、メインリレー制御回路６は、メインリレー８をオフする。配線ＩＧＰの電位が低下し、メインＣＰＵ（マイコン）２がオフされる。ＷａｋｅＵＰ起動要求フラグはオンからオフに変更される。
【００６２】
ステップＳ１１で、低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間が（ＷａｋｅＵＰ）設定時間の５ｈｒに達した時刻における、ＳＯＡＫ時間計測回路（ＳＯＡＫタイマ）４ａの計測時間が、（ＷａｋｅＵＰ）設定時間の５ｈｒ、又は、低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間に等しく（同等）、正常であるので（ステップＳ１１、Ｙｅｓ）、仮正常フラグはオンのまま維持される。
【００６３】
ステップＳ１３で、イグニッションスイッチ（ＩＧＳＷ）９が運転者によってオンされたと判定されると（ステップＳ１３、Ｙｅｓ）、ステップＳ１４へ進み、イグニッションスイッチ（ＩＧＳＷ）９はオンしているので、メインリレー制御回路６は、メインリレー８をオンする。配線ＩＧＰの電位が上昇し、メインＣＰＵ（マイコン）２がオン（起動）する。ステップＳ１５で、異常フラグがオン状態でないと判定され（ステップＳ１５、Ｎｏ）、ステップＳ１６へ進む。
【００６４】
ステップＳ１６で、低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間の７Ｈ（ｈｒ）に、ＷａｋｅＵＰ設定時間の５ｈｒを加算し加算値１２Ｈ（ｈｒ）を算出する。ステップＳ１７で、加算値１２ｈｒがＳＯＡＫ時間計測回路（ＳＯＡＫタイマ、第２タイマ）４ａの計測時間の１２Ｈ（ｈｒ）に等しいか否か判定する。これは等しいと判定されるので（ステップＳ１７、Ｙｅｓ）、低速クロックタイマ３ａの故障診断結果が正常であるとして、故障診断方法のフロー（チャート）を終了する。
【００６５】
図６に、故障診断方法を実施して、低速クロックタイマ３ａの正常時（ＳＯＡＫタイマの計測時間：１００時間以上）におけるタイミングチャートを示す。図５のようにＷａｋｅＵｐタイマまたはＳＯＡＫタイマに計測可能最大時間があり、例えば上記のように１００時間であった場合に、イグニッションのオフ時間が１００時間を超えた場合にはメインＣＰＵが正しく起動されたか否かに関わらずＷａｋｅＵｐタイマとＳＯＡＫタイマのカウント値が１００時間となってしまう。このようにイグニッションスイッチのオフ時間が長い場合での故障診断手法が図６のタイミングチャートである。図６のタイミングチャートは、図５のタイミングチャートと比較して、ステップＳ１６前後の処理が異なっている。すなわち、ステップＳ１３でイグニッションスイッチ（ＩＧＳＷ）９がオンされたと判定される前に（ステップＳ１３、Ｙｅｓ）、低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間は、最大時間のカウントＵＰガード値９５Ｈ（ｈｒ）に達し、ＳＯＡＫ時間計測回路（ＳＯＡＫタイマ）４ａの計測時間は、最大時間のカウントＵＰガード値１００Ｈ（ｈｒ）に達している。
【００６６】
ステップＳ１６で、低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間の９５Ｈ（ｈｒ）に、ＷａｋｅＵＰ設定時間の５ｈｒを加算し加算値１００Ｈ（ｈｒ）を算出する。ステップＳ１７で、加算値１００ｈｒがＳＯＡＫ時間計測回路（ＳＯＡＫタイマ、第２タイマ）４ａの計測時間の１００Ｈ（ｈｒ）に等しいか否か判定する。これは等しいと判定されるので（ステップＳ１７、Ｙｅｓ）、低速クロックタイマ３ａの故障診断結果が正常であるとして、故障診断方法のフロー（チャート）を終了する。
【００６７】
図７に、故障診断方法を実施して、低速クロックタイマ３ａの異常時（その１：初期チェックエラー）におけるタイミングチャートを示す。まず、イグニッションスイッチ（ＩＧＳＷ）９が運転者によってオフされることによってスタートする。次に、ステップＳ１で、ＷａｋｅＵＰ起動要求フラグをオンにする。次に、ステップＳ２で、タイマ初期チェックを実施する。次に、ステップＳ３で、タイマ初期チェックにおいて、低速クロックタイマ３ａが正常か否か判定する。低速クロックタイマ３ａが正常でないと判定され（ステップＳ３、Ｎｏ）、ステップＳ４へ進み、異常フラグをオンし、ＷａｋｅＵＰ起動要求フラグをオフする。ステップＳ６で、ＷａｋｅＵＰ設定時間（設定時間）とカウントＵＰガード値（最大時間）を設定する。低速クロックタイマ（ＷａｋｅＵＰタイマ、第１タイマ）３ａは、仮正常フラグがオン状態でないので、カウント（時間計測）をスタートさせない。ＳＯＡＫ時間計測回路（２４ｈタイマ、ＳＯＡＫタイマ、第２タイマ）４ａは、リセットし、カウント（時間計測）をスタートさせる。ステップＳ７で、メインリレー８をオフし、配線ＩＧＰの電位が低下し、メインＣＰＵ（マイコン）２がオフされる。
【００６８】
ステップＳ８で、低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間が、ＷａｋｅＵＰ設定時間の５ｈｒに達したか否か判定する。低速クロックタイマ３ａの計測時間は、設定時間に達しないので（ステップＳ８、Ｎｏ）、ステップＳ１３へ進む。
【００６９】
ステップＳ１３で、イグニッションスイッチ（ＩＧＳＷ）９が運転者によってオンされたと判定されると（ステップＳ１３、Ｙｅｓ）、ステップＳ１４へ進み、イグニッションスイッチ（ＩＧＳＷ）９はオンしているので、メインリレー制御回路６は、メインリレー８をオンする。配線ＩＧＰの電位が上昇し、メインＣＰＵ（マイコン）２がオン（起動）する。ステップＳ１５で、異常フラグがオン状態であると判定され（ステップＳ１５、Ｙｅｓ）、ステップＳ１８へ進む。ステップＳ１８で、低速クロックタイマ３ａの故障診断結果が異常であるとして、運転者に異常を警告するために車両のインパネ等に異常を知らせる表示等を行う。故障診断方法のフロー（チャート）を終了する。
【００７０】
図８に、故障診断方法を実施して、低速クロックタイマ３ａの異常時（その２：ＷａｋｅＵＰ時エラー）におけるタイミングチャートを示す。図８のタイミングチャートは、図５のタイミングチャートと比較して、ステップＳ１１以降の処理が異なっている。すなわち、ステップＳ１１で、低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間が（ＷａｋｅＵＰ）設定時間の５ｈｒに達した時刻における、ＳＯＡＫ時間計測回路（ＳＯＡＫタイマ）４ａの計測時間が、（ＷａｋｅＵＰ）設定時間の５ｈｒ、又は、低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間に等しくなく（異なり）、異常であるので（ステップＳ１１、Ｎｏ）、ステップＳ１２へ進み、異常フラグをオンにし、仮正常フラグをオフにする。
【００７１】
ステップＳ１３で、イグニッションスイッチ（ＩＧＳＷ）９が運転者によってオンされたと判定されると（ステップＳ１３、Ｙｅｓ）、ステップＳ１４へ進み、イグニッションスイッチ（ＩＧＳＷ）９はオンしているので、メインリレー制御回路６は、メインリレー８をオンする。配線ＩＧＰの電位が上昇し、メインＣＰＵ（マイコン）２がオン（起動）する。ステップＳ１５で、異常フラグがオン状態であると判定され（ステップＳ１５、Ｙｅｓ）、ステップＳ１８へ進む。ステップＳ１８で、低速クロックタイマ３ａの故障診断結果が異常であるとして、運転者に異常を警告するために車両のインパネ等に異常を知らせる表示等を行う。故障診断方法のフロー（チャート）を終了する。
【００７２】
図９に、故障診断方法を実施して、低速クロックタイマ３ａの異常時（その３：ＷａｋｅＵＰしないエラー：１００時間未満）におけるタイミングチャートを示す。図９のタイミングチャートは、図５のタイミングチャートと比較して、ステップＳ８〜Ｓ１２の処理が欠落し、ＷａｋｅＵＰしていない。このため、ステップＳ１３以降の処理が異なっている。すなわち、ステップＳ１３で、イグニッションスイッチ（ＩＧＳＷ）９が運転者によってオンされたと判定されると（ステップＳ１３、Ｙｅｓ）、ステップＳ１４へ進み、イグニッションスイッチ（ＩＧＳＷ）９はオンしているので、メインリレー制御回路６は、メインリレー８をオンする。配線ＩＧＰの電位が上昇し、メインＣＰＵ（マイコン）２がオン（起動）する。ステップＳ１５で、異常フラグがオン状態でないと判定され（ステップＳ１５、Ｎｏ）、ステップＳ１６へ進む。
【００７３】
ステップＳ１６で、低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間の１２Ｈ（ｈｒ）に、ＷａｋｅＵＰ設定時間の５ｈｒを加算し加算値１７ｈｒ（＝１２＋５）を算出する。ステップＳ１７で、加算値１７ｈｒがＳＯＡＫ時間計測回路（ＳＯＡＫタイマ、第２タイマ）４ａの計測時間の１２Ｈ（ｈｒ）に等しいか否か判定する。これは等しくないと判定されるので（ステップＳ１７、Ｎｏ）、低速クロックタイマ３ａの故障診断結果は異常であるとして、ステップＳ１８で、運転者に異常を警告するために車両のインパネ等に異常を知らせる表示等を行う。また、異常フラグをセットする。故障診断方法のフロー（チャート）を終了する。
【００７４】
図１０に、故障診断方法を実施して、低速クロックタイマ３ａの異常時（その４：ＷａｋｅＵＰしないエラー：１００時間以上）におけるタイミングチャートを示す。図１０のタイミングチャートは、図９のタイミングチャートと比較して、ステップＳ１６前後の処理が異なっている。すなわち、ステップＳ１３でイグニッションスイッチ（ＩＧＳＷ）９がオンされたと判定される前に（ステップＳ１３、Ｙｅｓ）、低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間とＳＯＡＫ時間計測回路（ＳＯＡＫタイマ）４ａの計測時間は、最大時間のカウントＵＰガード値１００Ｈ（ｈｒ）に達している。
【００７５】
ステップＳ１６で、低速クロックタイマ（ＷａｋｅＵＰタイマ）３ａの計測時間の１００Ｈ（ｈｒ）に、ＷａｋｅＵＰ設定時間の５ｈｒを加算し加算値１０５ｈｒ（＝１００＋５）を算出する。ステップＳ１７で、加算値１０５ｈｒがＳＯＡＫ時間計測回路（ＳＯＡＫタイマ、第２タイマ）４ａの計測時間の１００Ｈ（ｈｒ）に等しいか否か判定する。これは等しくないと判定されるので（ステップＳ１７、Ｎｏ）、低速クロックタイマ３ａの故障診断結果は異常であるとして、ステップＳ１８で、運転者に異常を警告するために車両のインパネ等に異常を知らせる表示等を行う。また、異常フラグをセットする。故障診断方法のフロー（チャート）を終了する。
【００７６】
図５、図６などに示した手法でガード値を設定時間分だけ下げたが、ＷａｋｅＵｐタイマ３ａまたはＳＯＡＫタイマ４ａが設定時間だと認識してＭａｉｎＣＰＵ２が起動した時間だけガード値を下げても良い。このようにすることで、ＷａｋｅＵｐタイマ３ａまたはＳＯＡＫタイマ４ａの計測値を用いてガード値を下げることができるので、ガード値の精度を向上させることができる。この設定時間に等しいＭａｉｎＣＰＵ２が起動した時間には、ＭａｉｎＣＰＵ２が起動して現在の計測時間を読み取るまでの間にＷａｋｅＵｐタイマ３ａやＳＯＡＫタイマ４ａが計測し続けた時間などを含めることができる。
【符号の説明】
【００７７】
１      ＦＩＥＣＵ（電子制御装置）
２      メインＣＰＵ（ＭａｉｎＣＰＵ、マイコン）
２ａ    メモリ
３      サブＣＰＵ（ＳｕｂＣＰＵ）
３ａ    低速クロックタイマ（ＷａｋｅＵＰタイマ、第１タイマ）
３ｂ    高速クロックタイマ（故障検知用）
３ｃ    メモリ
４      カスタムＩＣ
４ａ    ＳＯＡＫ時間計測回路（ＳＯＡＫタイマ、第２タイマ）
４ｂ    メモリ
５      第１電源回路
６      メインリレー（ＭＲＬＹ）制御回路
７      第２電源回路
８      メインリレー（ＭＡＩＮ  ＲＬＹ）
９      イグニッションスイッチ（ＩＧＳＷ）
【図１】
0005628142.tif 000002
【図２】
0005628142.tif 000003
【図３】
0005628142.tif 000004
【図４】
0005628142.tif 000005
【図５】
0005628142.tif 000006
【図６】
0005628142.tif 000007
【図７】
0005628142.tif 000008
【図８】
0005628142.tif 000009
【図９】
0005628142.tif 000010
【図１０】
0005628142.tif 000011