(57)【特許請求の範囲】
【請求項１】
電子制御システムに用いられるセンサやアクチュエータあるいはハーネス等の故障をシステム故障と呼ぶ時に、そのシステム故障の有無を一定の周期で繰り返し判定する故障判定手段と、
この故障判定手段により判定される前記システム故障の有無に連動してカウンタ値が増減する現在異常カウンタを有し、この現在異常カウンタのカウンタ値に基づいて前記電子制御システムの診断情報を生成する診断情報生成手段とを備え、
前記診断情報生成手段は、前記現在異常カウンタのカウンタ値が所定値を超えた時に「現在異常」として、その情報を生成する異常情報生成手段と、
この異常情報生成手段で「現在異常」を表す情報が生成された後、前記故障判定手段の判定結果に基づいて前記システム故障が連続的に発生しているか否かを判定し、その判定情報を生成する不安定故障情報生成手段とを備えていることを特徴とする電子制御システムの故障診断装置。
【請求項２】
請求項１に記載した電子制御システムの故障診断装置において、
前記診断情報生成手段は、前記異常情報生成手段で「現在異常」を表す情報が生成された後、前記現在異常カウンタのカウンタ値が初期値に戻った時に、前記システム故障が発生していない正常な状態に復帰したと判定し、その情報を生成する復帰情報生成手段を備えていることを特徴とする電子制御システムの故障診断装置。
【請求項３】
請求項１または２に記載した電子制御システムの故障診断装置において、
前記現在異常カウンタは、前記故障判定手段で「故障有り」と判定された時にカウントアップされる加算量、及び前記故障判定手段で「故障無し」と判定された時にカウントダウンされる減算量がそれぞれ任意の値に設定されていることを特徴とする電子制御システムの故障診断装置。
【請求項４】
請求項１〜３に記載した何れかの電子制御システムの故障診断装置において、
診断開始から一定の周期で繰り返し行われる診断毎にカウンタ値が更新される初期診断カウンタを有していることを特徴とする電子制御システムの故障診断装置。
【請求項５】
請求項４に記載した電子制御システムの故障診断装置において、
診断毎に更新される前記初期診断カウンタの更新量より、前記故障判定手段で「故障有り」と判定された時にカウントアップされる前記現在異常カウンタの加算量の方が大きい値に設定されていることを特徴とする電子制御システムの故障診断装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えば車両に使用されるセンサ類の故障診断を行う故障診断装置に関する。
【０００２】
【従来の技術】
例えば、ディーゼルエンジン車では、社会的ニーズ（特に排出ガス規制の強化）に応えられる様に、噴射装置等の電子制御化が進んでいる。しかし、電子制御システムが複雑になればなる程、市場で故障が起こった時に、修理工場で故障箇所を発見することに長時間を要する。そこで、近年の電子制御システムでは、システムの故障箇所をＥＣＵが監視して、運転者やサービスマンに故障情報を提供する自己故障診断機能（ダイアグノーシス）が採用されている。
【０００３】
特に、近年の車両の複雑化は、修理費用の増大及び修理期間の長期化を招き、エンドユーザに対する不利益になるばかりか、メーカとしての責務を果たすと言う意味でも、車両の故障判定の重要性が増してきている。その故障の状態に関する情報についても修理技術者が利用できる様にすることが望ましい。
【０００４】
【発明が解決しようとする課題】
ところが、従来の自己故障診断機能では、必ずしも連続しないような故障（例えばハーネスの不連続的な接触不良）の場合、車両の挙動として不良になっているにも関わらず、故障が連続していないために故障として検出されない場合がある。また、その様な不安定な故障の場合には、仮に故障として記憶されたとしても、その後の車両振動等の要因によって、故障状態から正常状態に復帰することもある。
【０００５】
このため、修理工場においては、再現しない故障として修理に時間を要したり、再現しないが故に修理されずに放置され、後々故障が再発することによって、エンドユーザに対する不利益に繋がる場合がある。
本発明は、上記事情に基づいて成されたもので、その目的は、電子制御システムの故障／正常に係わるより多くの情報を提供できる故障診断装置を実現することにある。
【０００６】
【課題を解決するための手段】
（請求項１の手段）
本発明の故障診断装置は、システム故障の有無を一定の周期で繰り返し判定する故障判定手段と、この故障判定手段により判定されるシステム故障の有無に連動してカウンタ値が増減する現在異常カウンタを有し、この現在異常カウンタのカウンタ値に基づいて電子制御システムの診断情報を生成する診断情報生成手段とを備え、この診断情報生成手段は、現在異常カウンタのカウンタ値が所定値を超えた時に「現在異常」として、その情報を生成する異常情報生成手段と、この異常情報生成手段で「現在異常」を表す情報が生成された後、故障判定手段の判定結果に基づいてシステム故障が連続的に発生しているか否かを判定し、その判定情報を生成する不安定故障情報生成手段とを備えている。
【０００７】
例えば、現在異常カウンタのカウンタ値が診断毎に増加すれば、システム故障が連続的に発生していると判断できる。また、一度増加した現在異常カウンタのカウンタ値が診断毎に減少すれば、安定的にシステム故障が発生している訳ではないと判断できる。これにより、単純にシステム故障が発生したか否かを検出できるだけでなく、現在異常カウンタを監視することで故障の状態を細かく判断できるので、電子制御システムの故障／正常に係わるより多くの情報を提供することが可能となる。
また、現在異常カウンタのカウンタ値が所定値を超えた時に「現在異常」とする。言い換えると、故障判定手段で「故障有り」と判定された場合でも、現在異常カウンタのカウンタ値が所定値を超えなければ「現在異常」とは判定されない。
さらに、異常情報生成手段で「現在異常」を表す情報が生成された後でも、故障判定手段で「故障無し」と判定された場合は、システム故障が連続的に発生している訳ではなく、不安定なシステム故障であると判断できる。
【００１０】
（請求項２の手段）
請求項１に記載した電子制御システムの故障診断装置において、
診断情報生成手段は、異常情報生成手段で「現在異常」を表す情報が生成された後、現在異常カウンタのカウンタ値が初期値に戻った時に、システム故障が発生していない正常な状態に復帰したと判定し、その情報を生成する復帰情報生成手段を備えている。
【００１１】
一旦「現在異常」を表す情報が生成された後でも、例えば請求項２の手段に記載した様に、不安定なシステム故障の場合は、システム故障が連続的に発生して「現在異常」が継続されるとは限らない。つまり、システム故障が発生していない正常な状態に復帰することもあり得る。そこで、「現在異常」を表す情報が生成された後でも、現在異常カウンタのカウンタ値が初期値に戻った時は、「現在異常」から正常な状態に復帰したと判断することができる。
【００１２】
（請求項３の手段）
請求項１または２に記載した電子制御システムの故障診断装置において、
現在異常カウンタは、故障判定手段で「故障有り」と判定された時にカウントアップされる加算量、及び故障判定手段で「故障無し」と判定された時にカウントダウンされる減算量がそれぞれ任意の値に設定されている。
【００１３】
例えば、現在異常カウンタをカウントアップする時の加算量とカウントダウンする時の減算量とを同じ値に設定すれば、単位時間当たり５割の確立で発生するような不安定なシステム故障でも特定可能である。また、減算量を加算量の１／２に設定すれば、単位時間当たり約３割（３３．３％）の確立で発生するような不安定なシステム故障でも特定可能である。
【００１４】
（請求項４の手段）
請求項１〜３に記載した何れかの電子制御システムの故障診断装置において、
診断開始から一定の周期で繰り返し行われる診断毎にカウンタ値が更新される初期診断カウンタを有している。
例えば、診断開始から初期診断カウンタのカウンタ値をα値ずつ加算し、カウンタ値が或る設定値を超えた時に、診断情報生成手段で電子制御システムの診断情報を生成するために必要な回数の診断が行われたと判断することができる。これにより、診断情報生成手段で生成された診断情報の精度を向上できる。
【００１５】
（請求項５の手段）
請求項４に記載した電子制御システムの故障診断装置において、
診断毎に更新される初期診断カウンタの更新量より、故障判定手段で「故障有り」と判定された時にカウントアップされる現在異常カウンタの加算量の方が大きい値に設定されている。
この場合、診断開始時点からシステム故障が発生している時に、「現在異常」を正しく判定することができる。
【００１６】
逆に、現在異常カウンタの加算量より初期診断カウンタの更新量（加算量でも減算量でも可能）の方が大きいと、「現在異常」と判定される前に、初期診断に必要な診断回数が終了してしまうため、システム故障であるにも係わらず、一旦正常状態となり、その後、現在異常カウンタのカウンタ値が所定値を超えた時点で「現在異常」と判定されることになる。この現象は、修理技術者を混乱させる原因となり、修理情報としては不適切である。この状況を避けるために、初期診断カウンタの更新量より現在異常カウンタの加算量の方が大きい値に設定されている。
【００１７】
【発明の実施の形態】
次に、本発明の実施形態を図面に基づいて説明する。
図１は電子制御システムの故障診断装置であり、図３〜図６はＥＣＵの処理手順を示すフローチャートである。
本実施例の故障診断装置は、例えばディーゼルエンジンの電子制御システムに適用されるもので、その故障情報を生成するためのプログラムがＥＣＵ１にインプットされている。
以下に、ＥＣＵ１（故障診断装置）の処理手順を説明する。なお、ここでは、水温センサ２の故障診断を例にして説明する。
【００１８】
Step101 …図示しないIGスイッチの投入によりプログラムの実行が開始され、起動直後の１回のみプログラムの実行に使用されるフラグ及びカウンタを初期化する（図３参照）。その後、図４に示す診断フローを実行する。
なお、フラグは、故障情報を示すもので、その一覧を図７に示す。また、カウンタは、故障情報を生成するために用いられる調整値であり、その一覧を図８に示す。
【００１９】
図４に示す診断フローは、IGスイッチがＯＮされている間、所定の周期（例えば32.8ms周期）で繰り返し実行される。但し、水温センサ２の出力電圧がＡＤコンバータ１ａでデジタル変換されてＣＰＵ１ｂに入力される時期に同期して実行される。
Step201 …診断条件を判定する。例えば、下記の診断条件▲１▼〜▲３▼を判定し、全ての診断条件が成立している時(YES) はStep202 へ進み、成立していない時(NO)は今回の診断を終了する。
▲１▼バッテリ電圧＞8V
▲２▼スタータOFF and スタータOFF 後、500ms 以上経過
▲３▼IGスイッチON and IG スイッチON後、1sec以上経過
【００２０】
Step202 …システム故障の有無を判定する（本発明の故障判定手段）。ここで「故障有り」と判定された時(YES) はStep203 へ進み、「故障無し」と判定された時(NO)はStep204 へ進む。なお、水温センサ２は、図２に示す様に、正常な使用温度範囲twa 〜twb で出力電圧Ｖa 〜Ｖb を示すように設計されている。従って、出力電圧が図２の電圧範囲Ｖa 〜Ｖb から外れた場合に故障と判断できる。
Step203 …「故障有り」の判定を表示(XFL=1) してStep205 へ進む。
Step204 …「故障無し」の判定を表示(XFL=0) してStep205 へ進む。
Step205 …以下に詳述する故障情報を生成して、今回の診断を終了する。
【００２１】
次に、上記Step205 （故障情報生成）の詳細について、図５（Step301 〜Step309 ）および図６（Step310 〜Step319 ）に示す故障情報生成フローに基づいて説明する。
Step301 …診断開始から診断が行われる毎にCRF をKRFINCずつ“255 ”を上限に加算してStep302 へ進む。
Step302 …CRF ≧255 か否かを判定する。CRF ≧255 の時(YES) は、異常を検出するのに十分な回数の診断（初期診断と呼ぶ）が行われたと判断してStep303 へ進み、CRF ＜255 の時(NO)はStep306 へ進む。
【００２２】
Step303 …初期診断が終了したことを表示(XRF=1) してStep304 へ進む。
Step304 …今までに「現在異常」が一度でも検出されたか否かを判定する。
「現在異常」が一度も検出されていない時(XFM=0) はStep305 へ進み、「現在異常」が一度でも検出された時(XFM=1) はStep306 へ進む。
Step305 …初期診断が終了し、且つ「現在異常」が一度も検出されていないことを表示(XOK=1) してStep306 へ進む。
【００２３】
Step306 …Step203 またはStep204 で表示されたフラグXFL の状態を確認し、XFL=1 の時(YES) はStep307 へ進み、XFL=0 の時(NO)はStep310 へ進む。
Step307 …Step202 で「故障有り」と判定される回数をカウントするために、CDG をKDGINCだけ“255 ”を上限に加算してStep308 へ進む。
Step308 …CDG ≧255 か否かを判定する。CDG ≧255 の時(YES) は「現在異常」と判定してStep309 へ進み、CDG ＜255 の時(NO)は今回の診断を終了する。
【００２４】
Step309 …水温センサ２の異常を表示する各フラグをセットする。
XDG=1 ：「現在異常」であることを表示（本発明の異常情報生成手段）。
XFM=1 ：「現在異常」が少なくとも一度検出されたことを表示。
XLHS=1：水温センサ２の異常により代用値（例えば80℃：予めＥＣＵ１のメモリに記憶されている）を使用していることを表示。
XOK=0 ：「正常」でないことを表示。
【００２５】
Step310 …Step306 でXFL=0 と判定される毎に、CDG をKDGINCだけ“0 ”を下限に減算してStep311 へ進む。
Step311 …CDG=0 か否かを判定する。CDG=0 の時(YES) は「現在異常無し」と判定してStep312 へ進み、CDG ≠0 の時(NO)はStep316 へ進む。
Step312 …XDG=1 か否かを判定する。XDG=1 の時(YES) はStep313 へ進み、XDG=0 の時(NO)はStep314 へ進む。
【００２６】
Step313 …異常状態から正常状態へ復帰したことを表示(XIM=1) してStep314 へ進む。
Step314 …「現在異常」ではないことを表示(XDG=0) してStep315 へ進む。
Step315 …CER=0 としてStep317 へ進む。
Step316 …Step311 でCDG ≠0 と判定される毎に、CER を“1 ”ずつ“255 ”を上限に加算してStep317 へ進む。
【００２７】
Step317 …XDG=1 且つCER ≠0 か否かを判定する。判定結果がYES の時は、不安定故障であると判定してStep318 へ進み、判定結果がNOの時はStep319 へ進む。
Step318 …（本発明の不安定故障情報生成手段）不安定故障であることを表示(XER=1) して今回の診断を終了する。
Step319 …現時点で不安定故障が発生していないことを表示(XER=0) して今回の診断を終了する。
【００２８】
続いて、故障情報が生成される過程を図９に示すタイムチャートを参照して説明する。
IGスイッチの投入により診断が開始されると、診断毎にCRF がカウントアップされ、CRF ≧255 が成立した時点（図９(a) 時点）で初期診断が完了して、初期診断完了を表す情報(XRF=1) が生成される。この時点で「現在異常」が検出されていなければ、「正常」を表す情報(XOK=1) が生成される。
【００２９】
その後、システム故障（水温センサ２の出力異常）が発生すると、CDG がカウントアップされて、CDG ≧255 が成立した時点（図９(b) 時点）で「現在異常」と判定され、その「現在異常」を表す情報(XDG=1) が生成される。同時に、水温センサ２の代用値（例えば80℃）が使用されていることを表す情報(XLHS=1)、及び「現在異常」の履歴を表す情報(XFM=1) が生成される。また、この時点で「正常」を表す情報(XOK=1) がリセットされる(XOK=0) 。
【００３０】
なお、図９に示すタイムチャートでは、初期診断完了後にシステム故障が発生しているが、診断開始と同時にシステム故障が発生し、そのシステム故障が診断完了後まで連続して発生することもある。この場合、初期診断が完了した時点で「現在異常」と判定されていることが望ましいので、CRF の加算量(KRFINC)よりCDG の加算量(KDGINC)の方を大きく(KRFINC ≦KDGINC) 設定する。これにより、診断開始と同時にシステム故障が連続して発生した場合に、CRF ≧255 が成立する前にCDG ≧255 が成立するため、初期診断が完了した時点で「現在異常」を確定することができる。
【００３１】
「現在異常」と判定された後、システム故障が連続的に発生しなければ（つまり「現在異常」であっても、１回１回の診断結果を見ると常にシステム故障が発生している訳ではない）、CDG がカウントダウンされた時点（図９(c) 時点）で不安定なシステム故障であると判定され、その「不安定故障」を表す情報(XER=1) が生成される。
【００３２】
ここで、CDG の加算量(KDGINC)に対し、CDG をカウントダウンする時の減算量(KDGDEC)を任意に設定することで、単位時間当たりにシステム故障が発生する確立を特定して検出することが可能である。例えば、KDGINC=KDGDEC に設定すれば、単位時間当たり５割の確立で発生する不安定なシステム故障を検出できる。また、(KDGINC)/2=KDGDEC に設定すれば、単位時間当たり約３割（３３．３％）の確立で発生する不安定なシステム故障を検出できる。また、KDGINC=0に設定しても良い。
【００３３】
更に、「現在異常」と判定された後でも、Step202 で「故障無し」の判定が連続してCDG が初期値に戻った時(CDG=0) は、水温センサ２の出力が「正常状態」に復帰したと判定し、その時点（図９(d) 時点）で「正常復帰」を表す情報(XIM=1) が生成される。また、この時点で「現在異常」を表す情報(XDG=1) 及び「不安定故障」を表す情報(XER=1) がそれぞれリセットされる(XDG=0,XER=0) 。
【００３４】
（本実施例の効果）
本実施例に記載した電子制御システムの故障診断装置は、システム故障の有無に連動してカウンタ値が増減するカウンタCDG を有し、このCDG のカウンタ値に基づいて診断情報を生成しているので、異常か正常かを表示するだけの単純な故障情報ではなく、より具体的な故障情報を提供することができる。例えば、「現在異常」ではあるが、１回１回の診断を見ると常にシステム故障が発生している訳ではない不安定な故障状態を検出することができる。また、その不安定な故障状態でも、単位時間当たりにシステム故障が発生する確立を特定して検出することも可能である。
【００３５】
更に、一旦はシステム故障が確定して「現在異常」が検出されても、その後、何らかの理由でシステム故障が直った時（例えばハーネスの接触不良が解消された場合等）は、「正常復帰」を表す情報が生成される。この場合、修理を行う際に、現時点でシステム故障が発生していなくても、過去に「現在異常」が検出されたことを確認できるので、故障の再発防止や未然防止が可能となる。その結果、修理費用の低減、及び修理期間の短縮が可能である。
【００３６】
なお、上記実施例に説明した故障情報は、ＥＣＵ１の内部に設けられる不揮発性メモリ領域（バッテリバックアップＲＡＭやＥＥＰＲＯＭ等）に記憶される。また、この故障情報は、図示しない診断テスタ（サービスツール）をＥＣＵ１に接続し、公知の方法によってＥＣＵ１とテスタとの間で通信を行うことにより、常に取り出し可能である。
なお、上記実施例は、ディーゼルエンジンの電子制御システムに関する故障情報を生成する一例であるが、必ずしもディーゼルエンジンあるいはガソリンエンジン等の車両用電子制御システムに限定する必要はない。例えば、製造ライン機器等についても、本発明を適用することで、ラインストップ時間の短縮や品質向上が期待される。
【図面の簡単な説明】
【図１】電子制御システムの故障診断装置の一例である。
【図２】水温センサの出力特性図である。
【図３】初期化フローチャートである。
【図４】診断フローチャートである。
【図５】故障情報生成フローチャートである。
【図６】故障情報生成フローチャートである。
【図７】故障情報（フラグ）の一覧図である。
【図８】故障情報を生成するために用いられるカウンタ及び調整値の一覧図である。
【図９】本実施例のタイムチャートである。
【符号の説明】
１  ＥＣＵ（故障診断装置）
２  水温センサ
【図１】
0003855677.tif 000002
【図２】
0003855677.tif 000003
【図３】
0003855677.tif 000004
【図４】
0003855677.tif 000005
【図５】
0003855677.tif 000006
【図６】
0003855677.tif 000007
【図７】
0003855677.tif 000008
【図８】
0003855677.tif 000009
【図９】
0003855677.tif 000010