(57)【特許請求の範囲】
【請求項１】
車両に搭載されたエンジンを制御する電子制御装置（１）であって、
前記エンジンから排出される排気を浄化する浄化装置（７０）を制御する電子制御装置である浄化制御装置（２１）との間で通信を行うことにより、前記浄化装置の故障に関する故障情報を前記浄化制御装置から取得する通信手段（１４）と、
前記通信手段による前記浄化制御装置との通信が途絶しているか否かを判断する途絶判断手段（Ｓ１０）と、
前記浄化装置により浄化された後の前記排気に含まれる窒素酸化物の量を示す窒素酸化物量情報を取得する情報取得手段（Ｓ２００）と、
前記通信が途絶していないと前記途絶判断手段が判断している場合には前記故障情報に基づくとともに、前記通信が途絶していると前記途絶判断手段が判断している場合には前記窒素酸化物量情報に基づいて、前記浄化装置の故障に対応するフェールセーフ処理を実行するか否かを判断するフェールセーフ判断手段（Ｓ３０〜Ｓ８０，Ｓ２１０，Ｓ２３０）とを備える
ことを特徴とする電子制御装置。
【請求項２】
前記情報取得手段は、
前記浄化装置を制御するために前記浄化制御装置が用いているＮＯｘセンサから前記窒素酸化物量情報を取得する
ことを特徴とする請求項１に記載の電子制御装置。
【請求項３】
前記フェールセーフ判断手段は、
前記通信が途絶していると前記途絶判断手段が判断している場合において、前記窒素酸化物量情報が示す量が予め設定された故障判定値以上であるか否かという判断条件を用いて、前記フェールセーフ処理を実行するか否かを判断する
ことを特徴とする請求項１または請求項２に記載の電子制御装置。
【請求項４】
前記車両における現在進行中のドライビングサイクルにおいて、前記車両における直前の前記ドライビングサイクルの全期間内で前記浄化装置が正常であったか否かを判断する正常判断手段（Ｓ２６０，Ｓ２７０）と、
前記フェールセーフ処理を実行すると前記フェールセーフ判断手段が判断した場合であって、且つ、直前の前記ドライビングサイクルの全期間内で前記浄化装置が正常であったと前記正常判断手段が判断した場合に、前記フェールセーフ処理を実行するとの前記フェールセーフ判断手段による現時点での判断結果を、前記フェールセーフ処理を実行しないとの判断結果に変更する手段（Ｓ２８０〜Ｓ３２０）とを備える
ことを特徴とする請求項１〜請求項３の何れか１項に記載の電子制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両に搭載されたエンジンを制御する電子制御装置に関する。
【背景技術】
【０００２】
従来、車両のエンジンから排出される排気中の窒素酸化物（ＮＯｘ）を除去する技術として、ＳＣＲ（Selective Catalytic Reduction）触媒と尿素水インジェクタを用いた尿素ＳＣＲが知られている（例えば、特許文献１を参照）。ＳＣＲ触媒と尿素水インジェクタは排気管に設置されており、ＳＣＲ触媒においてＮＯｘを還元するために必要な量の尿素水が尿素水インジェクタにより排気管内に噴射される。
【０００３】
そして、尿素ＳＣＲにより排気を浄化する浄化装置を制御するための電子制御装置（ＥＣＵ）である後処理ＥＣＵを、エンジンを制御するエンジンＥＣＵとは別に設置するものが知られている。このように後処理ＥＣＵを設ける場合には、エンジンＥＣＵと後処理ＥＣＵとが車内ＬＡＮを介して通信可能に接続される。そして、尿素ＳＣＲに関連した故障（以下、ＳＣＲ関連故障という）が発生した場合に、この故障に対応したフェールセーフ処理をエンジン側で実行可能とするために、後処理ＥＣＵは、ＳＣＲ関連故障の有無を検出し、この検出結果をエンジンＥＣＵへ送信する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−２６９１４２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、エンジンＥＣＵと後処理ＥＣＵとの間の通信が途絶すると、ＳＣＲ関連故障が発生しているか否かの情報をエンジンＥＣＵ側で取得することができなくなる。このため、ＳＣＲ関連故障に対応したフェールセーフ処理を実行するべきであるか否かをエンジンＥＣＵ側で判断することができなくなるという問題があった。
【０００６】
本発明は、こうした問題に鑑みてなされたものであり、通信が途絶した場合であってもフェールセーフ処理を実行するべきであるか否かの判断を可能とする技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するためになされた本発明の電子制御装置は、通信手段と、途絶判断手段と、情報取得手段と、フェールセーフ判断手段とを備える。
そして本発明の電子制御装置では、まず通信手段が、エンジンから排出される排気を浄化する浄化装置を制御する電子制御装置である浄化制御装置との間で通信を行うことにより、浄化装置の故障に関する故障情報を浄化制御装置から取得する。また途絶判断手段が、通信手段による浄化制御装置との通信が途絶しているか否かを判断する。また情報取得手段が、浄化装置により浄化された後の排気に含まれる窒素酸化物の量を示す窒素酸化物量情報を取得する。そしてフェールセーフ判断手段が、通信が途絶していないと途絶判断手段が判断している場合には故障情報に基づくとともに、通信が途絶していると途絶判断手段が判断している場合には窒素酸化物量情報に基づいて、浄化装置の故障に対応するフェールセーフ処理を実行するか否かを判断する。
【０００８】
このように構成された電子制御装置は、浄化制御装置との通信が途絶している場合に、情報取得手段が取得した窒素酸化物量情報に基づいて、浄化装置の故障に対応するフェールセーフ処理を実行するか否かを判断する。なお上記窒素酸化物量情報は、浄化装置により浄化された後の排気に含まれる窒素酸化物の量を示す。このため窒素酸化物量情報は、浄化装置が故障しているときには正常であるときよりも高い値を示す。すなわち、窒素酸化物量情報は、浄化装置が故障しているか否かの判断に用いることができる。
【０００９】
したがって、本発明の電子制御装置によれば、浄化制御装置との通信が途絶した場合であっても、浄化装置が故障しているか否かを判断することが可能となり、浄化装置の故障に対応するフェールセーフ処理を実行するべきであるか否かの判断を行うことができる。
【図面の簡単な説明】
【００１０】
【図１】エンジンＥＣＵ１とその周辺装置の構成を示すブロック図である。
【図２】フェールセーフ判断処理の前半部分を示すフローチャートである。
【図３】フェールセーフ判断処理の後半部分を示すフローチャートである。
【図４】復帰判断処理を示すフローチャートである。
【図５】エンジンＥＣＵ１の動作を示す第１のタイミングチャートである。
【図６】エンジンＥＣＵ１の動作を示す第２のタイミングチャートである。
【図７】エンジンＥＣＵ１の動作を示す第３のタイミングチャートである。
【図８】エンジンＥＣＵ１の動作を示す第４のタイミングチャートである。
【図９】エンジンＥＣＵ１の動作を示す第５のタイミングチャートである。
【発明を実施するための形態】
【００１１】
以下に本発明の実施形態を図面とともに説明する。
本実施形態の電子制御装置（Electronic Control Unit）１（以下、エンジンＥＣＵ１という）は、車両に搭載され、図１に示すように、車両のエンジン５０（本実施形態ではディーゼルエンジン）の制御を行う。
【００１２】
エンジン５０には、エンジン５０の気筒＃１，＃２，＃３，＃４毎に、対応する気筒に燃料を噴射するインジェクタ５１が設けられている。
各インジェクタ５１には、燃料の蓄圧容器であるコモンレール５２から伸びた燃料供給用配管５３が接続されている。またコモンレール５２には、車両の燃料タンク５４に貯留された燃料が、燃料ポンプ５５によって圧送される。これにより、コモンレール５２に蓄えられた高圧の燃料は、燃料供給用配管５３を介して各インジェクタ５１に供給される。そしてエンジンＥＣＵ１は、各インジェクタ５１を駆動して、エンジン５０への燃料噴射を制御する。
【００１３】
エンジンＥＣＵ１は、エンジン５０を制御するための様々な処理を行うマイクロコンピュータ（以下、マイコンという）２と、当該エンジンＥＣＵ１の外部とマイコン２との間で信号の入出力を行わせるための外部入出力回路３とを備えている。
【００１４】
外部入出力回路３には、クランク角センサ６１、アクセル開度センサ６２、燃圧センサ６３およびＮＯｘセンサ７６が接続されている。
クランク角センサ６１は、エンジン５０のクランク軸の回転に応じて所定角度毎（例えば３０°ＣＡ毎）にエッジが生じるクランク角信号を出力する。マイコン２は、このクランク角信号に基づいて、エンジン５０の回転速度およびクランク角度を算出する。
【００１５】
アクセル開度センサ６２は、運転者のアクセルペダルの踏込量に応じたアクセル開度を検出する。
燃圧センサ６３は、コモンレール５２に取り付けられ、コモンレール５２に蓄圧された燃料圧力（レール圧）を検出する。
【００１６】
そして、クランク角センサ６１からのクランク信号など、ハイレベルとローレベルとに変化する信号については、外部入出力回路３により波形整形されてマイコン２に入力され、アクセル開度センサ６２および燃圧センサ６３からの信号など、アナログ信号については、外部入出力回路３に備えられたＡＤ変換器（図示省略）によりデジタル信号に変換されてマイコン２に入力される。
【００１７】
また外部入出力回路３には、各インジェクタ５１が接続されている。そして各インジェクタ５１には、マイコン２からの駆動信号に従い外部入出力回路３を介して駆動電流が供給される。
【００１８】
またマイコン２は、ＣＰＵ１１、ＲＯＭ１２、ＲＡＭ１３、通信コントローラ１４および入出力ポート１５と、これらを相互に接続するバス１６とを備える。
ＣＰＵ１１は、エンジン５０を制御するための各種信号を入出力ポート１５を介して入力する。そしてＣＰＵ１１は、ＲＯＭ１２に記憶されたプログラムに基づいて各種処理を実行する。またＣＰＵ１１は、入出力ポート１５を介して入力される各種信号に基づいて制御演算を行い、その演算結果に基づき、インジェクタ５１等の電気負荷へ入出力ポート１５を介して駆動信号を出力することにより、エンジン５０の制御に関係する電気負荷を制御する。
【００１９】
またＣＰＵ１１は、インジェクタ５１の燃料噴射圧力を制御する噴射圧制御と、インジェクタ５１の燃料噴射量および噴射時期を制御する燃料噴射制御を実行する。
噴射圧制御では、コモンレール５２に蓄圧される燃料圧力を制御する。具体的には、まず、アクセル開度および回転速度等からエンジン５０の運転状態を検出して、その運転状態に適した目標レール圧を設定する。そして、燃圧センサ６３によって検出されるレール圧が目標レール圧と一致するように、燃料ポンプ５５の吐出量をフィードバック制御する。
【００２０】
燃料噴射制御では、エンジン回転速度、アクセル開度およびレール圧等に基づいて、エンジン５０の運転状態に応じた最適な噴射量および噴射時期を演算し、この演算結果にしたがってインジェクタ５１の燃料噴射を制御する。
【００２１】
ＲＯＭ１２は、不揮発性メモリであり、ＣＰＵ１１が実行するプログラムと、プログラムの実行時に参照されるデータを記憶する。
ＲＡＭ１３は、揮発性メモリであり、ＣＰＵ１１の演算結果等を一時的に記憶する。
【００２２】
通信コントローラ１４は、通信バス２０を介して、車両に搭載された後処理ＥＣＵ２１との間でデータ通信を行う。
後処理ＥＣＵ２１は、車両に搭載され、エンジン５０から排出される排気を浄化する浄化装置７０を制御する。
【００２３】
浄化装置７０は、ＳＣＲ（Selective Catalytic Reduction）触媒７１、尿素水インジェクタ７２、尿素水タンク７３、配管７４、尿素水ポンプ７５、ＮＯｘセンサ７６、品質センサ７７、レベルセンサ７８および圧力センサ７９を備える。
【００２４】
ＳＣＲ触媒７１と尿素水インジェクタ７２は、エンジン５０から排出される排気の通路を構成する排気管８０に設けられている。
ＳＣＲ触媒７１は、アンモニアにより排気中の窒素酸化物（ＮＯｘ）を還元して、窒素と水蒸気に分解するための触媒である。
【００２５】
尿素水インジェクタ７２は、排気管８０において排気がエンジン５０からＳＣＲ触媒７１に到るまでの経路上のＳＣＲ触媒７１付近に配置され、排気管８０内に尿素水を噴射する。なお、尿素水インジェクタ７２から噴射された尿素水は、ＳＣＲ触媒７１に吸着され、排気温度が所定温度以上になると加水分解されることによりアンモニアと二酸化炭素とに分解される。
【００２６】
尿素水インジェクタ７２には、尿素水を貯留する尿素水タンク７３から伸びた配管７４が接続されている。そして、尿素水タンク７３に貯留された尿素水が、尿素水ポンプ７５によって圧送され、配管７４を介して尿素水インジェクタ７２に供給される。
【００２７】
ＮＯｘセンサ７６は、排気管８０において排気がＳＣＲ触媒７１から車両外に到るまでの経路上のＳＣＲ触媒７１付近に配置され、排気管８０内の排気のＮＯｘ濃度を検出する。
【００２８】
品質センサ７７は、尿素水タンク７３に設けられ、超音波を用いて尿素水の濃度を検出する。そして品質センサ７７は、検出した尿素水濃度が規定範囲であるか否かという判断基準に基づいて、尿素水の品質が低下したか否かを検出する。
【００２９】
レベルセンサ７８は、尿素水タンク７３に設けられ、尿素水タンク７３内における尿素水の水位を検出する。
圧力センサ７９は、尿素水ポンプ７５に設けられ、尿素水ポンプ７５が尿素水を圧送する圧力を検出する。
【００３０】
そして後処理ＥＣＵ２１は、ＮＯｘセンサ７６、品質センサ７７、レベルセンサ７８および圧力センサ７９の検出信号を入力する。
後処理ＥＣＵ２１は、ＮＯｘセンサ７６により検出されたＮＯｘ濃度に基づいて、排気中に含まれるＮＯｘがＳＣＲ触媒７１における還元反応で除去できるように尿素水量を算出する。そして後処理ＥＣＵ２１は、算出した尿素水量に基づいて尿素水インジェクタ７２を駆動することにより、尿素水の噴射量を制御する。
【００３１】
また後処理ＥＣＵ２１は、品質センサ７７の検出結果に基づいて、尿素水の品質が低下する故障（以下、尿素低品質故障という）が発生したか否かを判断する。そして後処理ＥＣＵ２１は、尿素低品質故障が発生したと判断した場合には、その旨を示す尿素低品質故障通知を通信バス２０を介してエンジンＥＣＵ１へ送信する。
【００３２】
また後処理ＥＣＵ２１は、レベルセンサ７８の検出結果に基づいて、尿素噴射前における尿素水の水位と、尿素噴射後における尿素水の水位とを比較し、尿素噴射前後の水位差が予め設定された故障判定値よりも大きいか否かを判断する。そして後処理ＥＣＵ２１は、素噴射前後の水位差が故障判定値よりも大きい場合には、尿素の消費量の故障（以下、尿素消費量故障という）が発生したと判断し、その旨を示す尿素消費量故障通知を通信バス２０を介してエンジンＥＣＵ１へ送信する。
【００３３】
また後処理ＥＣＵ２１は、圧力センサ７９の検出結果に基づいて、噴射指示に応じて尿素水ポンプ７５の圧力が変化したか否かを判断する。そして後処理ＥＣＵ２１は、噴射指示にも関わらず尿素水ポンプ７５の圧力が変化しなかった場合に、尿素水インジェクタ７２による尿素噴射の故障（以下、尿素噴射故障という）が発生したと判断し、その旨を示す尿素噴射故障通知を通信バス２０を介してエンジンＥＣＵ１へ送信する。
【００３４】
以下、尿素低品質故障通知、尿素消費量故障通知および尿素噴射故障通知をまとめてＳＣＲ故障通知という。また、尿素低品質故障、尿素消費量故障および尿素噴射故障をまとめてＳＣＲ関連故障という。
【００３５】
このように構成されたエンジンＥＣＵ１において、ＣＰＵ１１は、後述するフェールセーフ判断処理と復帰判断処理を実行する。
まず、ＣＰＵ１１が実行するフェールセーフ判断処理の手順を説明する。フェールセーフ判断処理は、エンジンＥＣＵ１の動作中に繰り返し実行される処理である。
【００３６】
このフェールセーフ判断処理が実行されると、ＣＰＵ１１は、図２および図３に示すように、まずＳ１０にて、エンジンＥＣＵ１と後処理ＥＣＵ２１との間で通信が途絶しているか否かを判断する。ここで、エンジンＥＣＵ１と後処理ＥＣＵ２１との間で通信が途絶していない場合には（Ｓ１０：ＮＯ）、Ｓ２０にて、通信故障確定判定カウンタから通信故障正常時定数の値（以下、通信故障正常時定数値という）を減算する。その後Ｓ３０にて、後処理ＥＣＵ２１からＳＣＲ故障通知を受信しているか否かを判断する。ここで、ＳＣＲ故障通知を受信していない場合には（Ｓ３０：ＮＯ）、Ｓ２２０に移行する。
【００３７】
一方、ＳＣＲ故障通知を受信した場合には（Ｓ３０：ＹＥＳ）、Ｓ４０にて、ＳＣＲ故障カウンタをインクリメント（１加算）する。そしてＳ５０にて、ＳＣＲ故障カウンタの値（以下、ＳＣＲ故障カウンタ値という）が予め設定されたＳＣＲ高レベル判定値（本実施形態では、例えば２０時間に相当する値）以上であるか否かを判断する。ここで、ＳＣＲ故障カウンタ値がＳＣＲ高レベル判定値以上である場合には（Ｓ５０：ＹＥＳ）、Ｓ６０にて、第１フェールセーフフラグ（以下、第１ＦＳフラグという）をセットするとともに、第２フェールセーフフラグ（以下、第２ＦＳフラグという）をクリアして、Ｓ９０に移行する。なお、第１フェールセーフフラグがセットされることにより、エンジンＥＣＵ１は、高レベル故障に対応して予め設定されたフェールセーフ処理（以下、高レベルフェールセーフ処理という）を実行する。本実施形態の高レベルフェールセーフ処理は、車両の走行速度を予め設定された低速度（例えば、２０ｋｍ／ｈ）以下に制限する処理である。
【００３８】
一方、ＳＣＲ故障カウンタ値がＳＣＲ高レベル判定値未満である場合には（Ｓ５０：ＮＯ）、Ｓ７０にて、ＳＣＲ故障カウンタ値が予め設定されたＳＣＲ低レベル判定値（本実施形態では、例えば１０時間に相当する値）以上であるか否かを判断する。ここで、ＳＣＲ故障カウンタ値がＳＣＲ低レベル判定値以上である場合には（Ｓ７０：ＹＥＳ）、Ｓ８０にて、第２ＦＳフラグをセットして、Ｓ９０に移行する。なお、第２ＦＳフラグがセットされることにより、エンジンＥＣＵ１は、低レベル故障に対応して予め設定されたフェールセーフ処理（以下、低レベルフェールセーフ処理という）を実行する。本実施形態の低レベルフェールセーフ処理は、エンジン５０の出力を予め設定された上限値（例えば、エンジン５０の最大出力の７５％）以下に制限する処理である。
【００３９】
一方、ＳＣＲ故障カウンタ値がＳＣＲ低レベル判定値未満である場合には（Ｓ７０：ＮＯ）、Ｓ９０に移行する。
そしてＳ９０に移行すると、ＳＣＲ故障確定判定カウンタにＳＣＲ異常時定数の値（以下、ＳＣＲ異常時定数値という）を加算し、Ｓ１００にて、ＳＣＲ故障確定判定カウンタの値（以下、ＳＣＲ故障確定判定カウンタ値という）が予め設定されたＳＣＲ故障確定判定値以上であるか否かを判断する。ここで、ＳＣＲ故障確定判定カウンタ値がＳＣＲ故障確定判定値以上である場合には（Ｓ１００：ＹＥＳ）、Ｓ１１０にて、ＳＣＲ故障確定フラグをセットして、フェールセーフ判断処理を一旦終了する。
【００４０】
一方、ＳＣＲ故障確定判定カウンタ値がＳＣＲ故障確定判定値未満である場合には（Ｓ１００：ＮＯ）、フェールセーフ判断処理を一旦終了する。
またＳ１０にて、エンジンＥＣＵ１と後処理ＥＣＵ２１との間で通信が途絶している場合には（Ｓ１０：ＹＥＳ）、Ｓ１２０にて、通信故障カウンタをインクリメント（１加算）する。そしてＳ１３０にて、通信故障カウンタの値（以下、通信故障カウンタ値という）が予め設定された通信高レベル判定値（本実施形態では、例えば１００時間に相当する値）以上であるか否かを判断する。ここで、通信故障カウンタ値が通信高レベル判定値以上である場合には（Ｓ１３０：ＹＥＳ）、Ｓ１４０にて、第１ＦＳフラグをセットするとともに、第２ＦＳフラグをクリアする。その後、Ｓ１７０に移行する。
【００４１】
一方、通信故障カウンタ値が通信高レベル判定値未満である場合には（Ｓ１３０：ＮＯ）、Ｓ１５０にて、通信故障カウンタ値が予め設定された通信低レベル判定値（本実施形態では、例えば３６時間に相当する値）以上であるか否かを判断する。ここで、通信故障カウンタ値が通信低レベル判定値以上である場合には（Ｓ１５０：ＹＥＳ）、Ｓ１６０にて、第２ＦＳフラグをセットして、Ｓ１７０に移行する。
【００４２】
一方、通信故障カウンタ値が通信低レベル判定値未満である場合には（Ｓ１５０：ＮＯ）、Ｓ１７０に移行する。
そしてＳ１７０に移行すると、通信故障確定判定カウンタに通信故障異常時定数の値（以下、通信故障異常時定数値という）を加算する。その後Ｓ１８０にて、通信故障確定判定カウンタの値（以下、通信故障確定判定カウンタ値という）が予め設定された通信故障確定判定値以上であるか否かを判断する。ここで、通信故障確定判定カウンタ値が通信故障確定判定値以上である場合には（Ｓ１８０：ＹＥＳ）、Ｓ１９０にて、通信故障確定フラグをセットし、Ｓ２００に移行する。一方、通信故障確定判定カウンタ値が通信故障確定判定値未満である場合には（Ｓ１８０：ＮＯ）、Ｓ２００に移行する。
【００４３】
そしてＳ２００に移行すると、ＮＯｘ濃度の検出値をＮＯｘセンサ７６から取得する。そしてＳ２１０にて、ＮＯｘ濃度の検出値（以下、ＮＯｘ濃度検出値という）が予め設定されたＮＯｘ故障判定値以上であるか否かを判断する。ここで、ＮＯｘ濃度検出値がＮＯｘ故障判定値未満である場合には（Ｓ２１０：ＮＯ）、Ｓ２２０にて、ＳＣＲ故障確定判定カウンタからＳＣＲ故障正常時定数値を減算し、ＳＣＲ故障判断処理を一旦終了する。一方、ＮＯｘ濃度検出値がＮＯｘ故障判定値以上である場合には（Ｓ２１０：ＹＥＳ）、Ｓ２３０にて、ＳＣＲ故障カウンタをインクリメント（１加算）する。その後Ｓ５０に移行し、上述の処理を実行する。
【００４４】
次に、ＣＰＵ１１が実行する復帰判断処理の手順を説明する。復帰判断処理は、ドライビングサイクルの開始時に実行される処理である。なおドライビングサイクルとは、エンジンが起動されてから、その後エンジンが停止して次にエンジンが起動されるまでの期間のことである。
【００４５】
この復帰判断処理が実行されると、ＣＰＵ１１は、図４に示すように、まずＳ２４０にて、エンジンＥＣＵ１と後処理ＥＣＵ２１との間で通信が途絶しているか否かを判断する。ここで、エンジンＥＣＵ１と後処理ＥＣＵ２１との間で通信が途絶していない場合には（Ｓ２４０：ＮＯ）、Ｓ２５０にて、後処理ＥＣＵ２１からＳＣＲ故障通知を受信しているか否かを判断する。ここで、ＳＣＲ故障通知を受信した場合には（Ｓ２５０：ＹＥＳ）、Ｓ３３０に移行する。一方、ＳＣＲ故障通知を受信していない場合には（Ｓ２５０：ＮＯ）、Ｓ２６０にて、ＳＣＲ故障確定フラグまたは通信故障確定フラグがセットされているか否かを判断する。
【００４６】
ここで、ＳＣＲ故障確定フラグと通信故障確定フラグが共にセットされていない場合には（Ｓ２６０：ＮＯ）、Ｓ２７０にて、ＳＣＲ故障確定判定カウンタ値が０以下であり且つ通信故障確定判定カウンタ値が０以下であるか否かを判断する。ここで、ＳＣＲ故障確定判定カウンタ値が０以下であり且つ通信故障確定判定カウンタ値が０以下であった場合には（Ｓ２７０：ＹＥＳ）、Ｓ２８０にて、第１ＦＳフラグがセットされているか否かを判断する。ここで、第１ＦＳフラグがセットされている場合には（Ｓ２８０：ＹＥＳ）、Ｓ２９０にて、ＳＣＲ故障カウンタの値を予め設定された高レベル復帰値（本実施形態では、例えば１８時間に相当する値）に設定する。さらにＳ３００にて、第１ＦＳフラグと第２ＦＳフラグを共にクリアし、Ｓ３３０に移行する。
【００４７】
一方、第１ＦＳフラグがセットされていない場合には（Ｓ２８０：ＮＯ）、Ｓ３１０にて、第２ＦＳフラグがセットされているか否かを判断する。ここで、第２ＦＳフラグがセットされていない場合には（Ｓ３１０：ＮＯ）、Ｓ３３０に移行する。一方、第２ＦＳフラグがセットされている場合には（Ｓ３１０：ＹＥＳ）、Ｓ３２０にて、第２ＦＳフラグをクリアし、Ｓ３３０に移行する。
【００４８】
またＳ２６０にて、ＳＣＲ故障確定フラグまたは通信故障確定フラグがセットされている場合には（Ｓ２６０：ＹＥＳ）、Ｓ３３０に移行する。
またＳ２７０にて、ＳＣＲ故障確定判定カウンタ値または通信故障確定判定カウンタ値が０より大きい場合には（Ｓ２７０：ＮＯ）、Ｓ３３０に移行する。
【００４９】
またＳ２４０にて、エンジンＥＣＵ１と後処理ＥＣＵ２１との間で通信が途絶している場合には（Ｓ２４０：ＹＥＳ）、Ｓ３５０にて、ＮＯｘ濃度の検出値（以下、ＮＯｘ濃度検出値という）をＮＯｘセンサ７６から取得する。そしてＳ３６０にて、ＮＯｘ濃度検出値が予め設定されたＮＯｘ故障判定値以上であるか否かを判断する。ここで、ＮＯｘ濃度検出値がＮＯｘ故障判定値以上である場合には（Ｓ３６０：ＹＥＳ）、Ｓ３３０に移行する。一方、ＮＯｘ濃度検出値がＮＯｘ故障判定値未満である場合には（Ｓ３６０：ＮＯ）、Ｓ２６０に移行し、上述の処理を実行する。
【００５０】
そしてＳ３３０に移行すると、ＳＣＲ故障確定フラグと通信故障確定フラグをクリアする。その後Ｓ３４０にて、ＳＣＲ故障確定判定カウンタと通信故障判定カウンタを所定値にセットし、復帰診断処理を終了する。
【００５１】
次に、このように構成されたエンジンＥＣＵ１の動作を説明する。
図５は、通信が途絶していないときにＳＣＲ関連故障が発生した場合の動作を示すタイミングチャートである。
【００５２】
図５に示すように、通信が途絶していないときにＳＣＲ関連故障が発生すると（時刻ｔ０１を参照）、ＳＣＲ故障カウンタの値が徐々に増加する。そして、ＳＣＲ故障カウンタ値がＳＣＲ低レベル判定値に一致した時点で、低レベルフェールセーフ処理の実行が開始される（時刻ｔ０２を参照）。さらに、ＳＣＲ故障カウンタ値がＳＣＲ高レベル判定値に一致した時点で、高レベルフェールセーフ処理の実行が開始される（時刻ｔ０３を参照）。
【００５３】
図６は、ＳＣＲ関連故障が発生していないときに通信が途絶し、通信途絶中にＳＣＲ関連故障が発生しない場合の動作を示すタイミングチャートである。
図６に示すように、ＳＣＲ関連故障が発生していないときに通信が途絶すると（時刻ｔ１１を参照）、ＳＣＲ故障通知を取得することができなくなり（図６における時刻ｔ１１以降のＳＣＲ関連故障を参照）、通信故障カウンタの値が徐々に増加するとともに、ＮＯｘ濃度がＮＯｘ故障判定値以上であるか否かの判断を開始する。そして、通信故障カウンタ値が通信低レベル判定値に一致した時点で、低レベルフェールセーフ処理の実行が開始される（時刻ｔ１２を参照）。さらに、通信故障カウンタ値が通信高レベル判定値に一致した時点で、高レベルフェールセーフ処理の実行が開始される（時刻ｔ１３を参照）。なお、時刻ｔ１１以降のＮＯｘ濃度は常にＮＯｘ故障判定値未満であるため、ＳＣＲ故障カウンタの値は０のままである。
【００５４】
図７は、ＳＣＲ関連故障が発生していないときに通信が途絶し、通信途絶中にＳＣＲ関連故障が発生する場合の動作を示すタイミングチャートである。
図７に示すように、ＳＣＲ関連故障が発生していないときに通信が途絶すると（時刻ｔ２１を参照）、ＳＣＲ故障通知を取得することができなくなり（図７における時刻ｔ２１以降のＳＣＲ関連故障を参照）、通信故障カウンタの値が徐々に増加するとともに、ＮＯｘ濃度がＮＯｘ故障判定値以上であるか否かの判断を開始する。そして、ＮＯｘ濃度がＮＯｘ故障判定値以上になると（時刻ｔ２２を参照）、通信故障カウンタの値が徐々に増加する。その後、ＳＣＲ故障カウンタ値がＳＣＲ低レベル判定値に一致した時点で、低レベルフェールセーフ処理の実行が開始される（時刻ｔ２３を参照）。さらに、ＳＣＲ故障カウンタ値がＳＣＲ高レベル判定値に一致した時点で、高レベルフェールセーフ処理の実行が開始される（時刻ｔ２４を参照）。
【００５５】
図８は、ＳＣＲ関連故障が発生しているときに通信が途絶し、通信途絶中にフェールセーフが解除される場合の動作を示すタイミングチャートである。
図８に示すように、１回目のドライビングサイクルＤＣ１でＳＣＲ関連故障が発生し（時刻ｔ３１を参照）、ＳＣＲ故障カウンタの値が徐々に増加する。その後、１回目のドライビングサイクルＤＣ１において、ＳＣＲ故障カウンタ値がＳＣＲ低レベル判定値に一致した時点で、低レベルフェールセーフ処理の実行が開始される（時刻ｔ３２を参照）。また、１回目のドライビングサイクルＤＣ１において、通信が途絶すると（時刻ｔ３２を参照）、ＳＣＲ故障通知を取得することができなくなり（図８における時刻ｔ３２以降のＳＣＲ関連故障を参照）、通信故障カウンタの値が徐々に増加するとともに、ＮＯｘ濃度がＮＯｘ故障判定値以上であるか否かの判断を開始する。
【００５６】
その後、１回目のドライビングサイクルＤＣ１を終了するとともに２回目のドライビングサイクルＤＣ２を開始する（時刻ｔ３３を参照）。２回目のドライビングサイクルＤＣ２の開始時には、ＮＯｘ濃度がＮＯｘ故障判定値以上であるため、ＳＣＲ故障カウンタの値が徐々に増加する。その後、ＮＯｘ濃度がＮＯｘ故障判定値未満となり（時刻ｔ３４を参照）、ＳＣＲ故障カウンタ値が保持される。なお、２回目のドライビングサイクルＤＣ２では、低レベルフェールセーフ処理が実行される。
【００５７】
その後、２回目のドライビングサイクルＤＣ２を終了するとともに３回目のドライビングサイクルＤＣ３を開始する（時刻ｔ３５を参照）。３回目のドライビングサイクルＤＣ３の開始時には、ＮＯｘ濃度がＮＯｘ故障判定値未満である。しかし、２回目のドライビングサイクルＤＣ２の全期間内でＮＯｘ濃度がＮＯｘ故障判定値未満ではなかったため、低レベルフェールセーフ処理の実行は解除されない。３回目のドライビングサイクルＤＣ３では、ＮＯｘ濃度がＮＯｘ故障判定値未満であるため、ＳＣＲ故障カウンタ値が保持される。一方、３回目のドライビングサイクルＤＣ３では、通信が途絶しているため、通信故障カウンタの値が徐々に増加する。
【００５８】
その後、３回目のドライビングサイクルＤＣ３を終了するとともに４回目のドライビングサイクルＤＣ４を開始する（時刻ｔ３６を参照）。４回目のドライビングサイクルＤＣ４の開始時には、ＮＯｘ濃度がＮＯｘ故障判定値未満である。さらに、３回目のドライビングサイクルＤＣ３の全期間内でＮＯｘ濃度がＮＯｘ故障判定値未満であったため、低レベルフェールセーフ処理の実行が解除される。４回目のドライビングサイクルＤＣ４では、ＮＯｘ濃度がＮＯｘ故障判定値未満であるため、ＳＣＲ故障カウンタ値が保持される。一方、４回目のドライビングサイクルＤＣ４では、通信が途絶しているため、通信故障カウンタの値が徐々に増加する。そして、通信故障カウンタ値が通信低レベル判定値に一致した時点で、低レベルフェールセーフ処理の実行が開始される（時刻ｔ３７を参照）。さらに、通信故障カウンタ値が通信高レベル判定値に一致した時点で、高レベルフェールセーフ処理の実行が開始される（時刻ｔ３８を参照）。
【００５９】
図９は、ＳＣＲ関連故障が発生しているときに通信が途絶し、通信途絶中にＳＣＲ関連故障が継続している場合の動作を示すタイミングチャートである。
図９に示すように、通信が途絶していないときにＳＣＲ関連故障が発生すると（時刻ｔ４１を参照）、ＳＣＲ故障カウンタの値が徐々に増加する。その後、通信が途絶すると（時刻ｔ４２を参照）、ＳＣＲ故障通知を取得することができなくなり（図９における時刻ｔ４２以降のＳＣＲ関連故障を参照）、通信故障カウンタの値が徐々に増加するとともに、ＮＯｘ濃度がＮＯｘ故障判定値以上であるか否かの判断を開始する。ここで、ＮＯｘ濃度がＮＯｘ故障判定値以上であるため、ＳＣＲ故障カウンタの値が徐々に増加する。そして、ＳＣＲ故障カウンタ値がＳＣＲ低レベル判定値に一致した時点で、低レベルフェールセーフ処理の実行が開始される（時刻ｔ４２を参照）。さらに、ＳＣＲ故障カウンタ値がＳＣＲ高レベル判定値に一致した時点で、高レベルフェールセーフ処理の実行が開始される（時刻ｔ４３を参照）。なお、時刻ｔ４２以降のＮＯｘ濃度は常にＮＯｘ故障判定値以上であるため、ＳＣＲ故障カウンタの値は徐々に増加する。
【００６０】
このように構成されたエンジンＥＣＵ１では、まず通信コントローラ１４が、浄化装置７０を制御する後処理ＥＣＵ２１との間で通信を行うことにより、ＳＣＲ故障通知を後処理ＥＣＵ２１から取得する。また、後処理ＥＣＵ２１との通信が途絶しているか否かを判断する（Ｓ１０，Ｓ２４０）。また、浄化装置７０により浄化された後の排気のＮＯｘ濃度の検出値（ＮＯｘ濃度検出値）をＮＯｘセンサ７６から取得する（Ｓ２００，Ｓ３５０）。そして、通信が途絶していない場合にはＳＣＲ故障通知に基づいて、ＳＣＲ関連故障に対応する低レベルフェールセーフ処理および高レベルフェールセーフ処理を実行するか否かを判断するとともに（Ｓ３０〜Ｓ８０，Ｓ２５０〜Ｓ３４０）、通信が途絶している場合にはＮＯｘ濃度検出値に基づいて、ＳＣＲ関連故障に対応する低レベルフェールセーフ処理および高レベルフェールセーフ処理を実行するか否かを判断する（Ｓ４０〜Ｓ８０，Ｓ２１０，Ｓ２３０，Ｓ２５０〜Ｓ３４０，Ｓ３６０）。
【００６１】
これによりエンジンＥＣＵ１は、後処理ＥＣＵ２１との通信が途絶している場合に、ＮＯｘセンサ７６から取得したＮＯｘ濃度検出値に基づいて、ＳＣＲ関連故障に対応するフェールセーフ処理を実行するか否かを判断する。なお上記ＮＯｘ濃度検出値は、浄化装置７０により浄化された後の排気に含まれる窒素酸化物の量を示す。このためＮＯｘ濃度検出値は、浄化装置７０が故障しているときには正常であるときよりも高い値を示す。すなわち、ＮＯｘ濃度検出値は、浄化装置７０が故障しているか否かの判断に用いることができる。
【００６２】
したがってエンジンＥＣＵ１によれば、後処理ＥＣＵ２１との通信が途絶した場合であっても、浄化装置７０が故障しているか否かを判断することが可能となり、浄化装置７０の故障に対応するフェールセーフ処理を実行するべきであるか否かの判断を行うことができる。
【００６３】
またエンジンＥＣＵ１は、浄化装置７０を制御するために後処理ＥＣＵ２１が用いているＮＯｘセンサ７６からＮＯｘ濃度検出値を取得する（Ｓ２００，Ｓ３５０）。これにより、ＮＯｘ濃度検出値を取得するために新たに検出機器を追加する必要がなくなり、エンジンＥＣＵ１の構成を簡略化することができる。
【００６４】
またエンジンＥＣＵ１は、ＮＯｘ濃度がＮＯｘ故障判定値以上であるか否かという判断条件を用いて（Ｓ２１０，Ｓ３６０）、フェールセーフ処理を実行するか否かを判断する。これにより、ＮＯｘ濃度がＮＯｘ故障判定値以上であるか否かという簡便な方法で判断することができるため、エンジンＥＣＵ１の処理負荷を低減することができる。
【００６５】
またエンジンＥＣＵ１は、車両における１回のドライビングサイクルの全期間内で浄化装置７０が正常であったか否かを判断し（Ｓ１０，Ｓ２０，Ｓ９０〜Ｓ１１０，Ｓ１７０〜Ｓ１９０，Ｓ２２０，Ｓ２６０，Ｓ２７０，Ｓ３３０，Ｓ３４０）、ドライビングサイクルの全期間内で浄化装置７０が正常であった場合に（Ｓ２６０：ＮＯ，Ｓ２７０：ＹＥＳ）、低レベルフェールセーフ処理または高レベルフェールセーフ処理を実行しないと判断する（Ｓ２８０〜Ｓ３２０）。
【００６６】
これにより、フェールセーフを解除する条件を、「長期間にわたって浄化装置７０が正常であること」とすることができる。このため、浄化装置７０が正常である状態と浄化装置７０が故障している状態との間で浄化装置７０が繰り返し遷移するような不安定な状況でフェールセーフが解除されるという事態の発生を抑制することができる。
【００６７】
以上説明した実施形態において、後処理ＥＣＵ２１は本発明における浄化制御装置、通信コントローラ１４は本発明における通信手段、Ｓ１０，Ｓ２４０の処理は本発明における途絶判断手段、Ｓ２００，Ｓ３５０の処理は本発明における情報取得手段、Ｓ３０〜Ｓ８０，Ｓ２１０，Ｓ２３０，Ｓ２５０〜Ｓ３４０，Ｓ３６０の処理は本発明におけるフェールセーフ判断手段、Ｓ１０，Ｓ２０，Ｓ９０〜Ｓ１１０，Ｓ１７０〜Ｓ１９０，Ｓ２２０，Ｓ２６０，Ｓ２７０，Ｓ３３０，Ｓ３４０の処理は本発明における正常判断手段、ＳＣＲ故障通知は本発明における故障情報、ＮＯｘ濃度検出値は本発明における窒素酸化物量情報、ＮＯｘ故障判定値は本発明における故障判定値である。
【００６８】
以上、本発明の一実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、本発明の技術的範囲に属する限り種々の形態を採ることができる。
例えば上記実施形態では、品質センサ７７、レベルセンサ７８および圧力センサ７９を用いて尿素低品質故障、尿素消費量故障および尿素噴射故障を検出するものを示したが、尿素低品質故障、尿素消費量故障および尿素噴射故障を検出するために他の方法を用いてもよい。例えば、ＳＣＲ触媒７１における上流側と下流側のそれぞれにＮＯｘセンサを設置し、上流側のＮＯｘセンサの検出値と下流側のＮＯｘセンサの検出値とを比較し、両検出値の差が小さい場合に、尿素噴射故障が発生したと判断するようにしてもよい。
【符号の説明】
【００６９】
１…エンジンＥＣＵ、１４…通信コントローラ、２１…後処理ＥＣＵ、５０…エンジン、７０…浄化装置
【図１】
0006036565.tif 000002
【図２】
0006036565.tif 000003
【図３】
0006036565.tif 000004
【図４】
0006036565.tif 000005
【図５】
0006036565.tif 000006
【図６】
0006036565.tif 000007
【図７】
0006036565.tif 000008
【図８】
0006036565.tif 000009
【図９】
0006036565.tif 000010