(57)【要約】【課題】内燃機関の各気筒の異常を判定する際に誤判定することを抑制する。【解決手段】異常判定条件が成立しているときには、各気筒毎の内燃機関の回転変動に基づいて各気筒に異常が生じているか否かを判定する異常判定を実行し、ディザ制御条件が成立しているときには、各気筒毎に空燃比がリッチとリーンとを繰り返すように内燃機関を制御する。そして、異常判定は、少なくとも１つの気筒において回転変動が判定用閾値以上であるときには、気筒に異常が生じていると判定し、更に、制御装置は、異常判定条件が成立し、且つ、ディザ制御条件が成立しているときには、ディザ制御条件が成立していないときに比して判定用閾値を大きくする。【選択図】図２
2018123808.tif 000002
【特許請求の範囲】
【請求項１】
多気筒の内燃機関と、
異常判定条件が成立しているときには、各気筒毎の前記内燃機関の回転変動に基づいて前記各気筒に異常が生じているか否かを判定する異常判定を実行し、ディザ制御条件が成立しているときには、前記各気筒毎に空燃比がリッチとリーンとを繰り返すように前記内燃機関を制御するディザ制御を実行する制御装置と、
を備える内燃機関装置であって、
前記制御装置は、前記異常判定は、少なくとも１つの気筒において前記回転変動が判定用閾値以上であるときには、当該気筒に異常が生じていると判定し、
更に、前記制御装置は、前記異常判定条件が成立し、且つ、前記ディザ制御条件が成立しているときには、前記ディザ制御条件が成立していないときに比して前記判定用閾値を大きくする、
内燃機関装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内燃機関装置に関し、詳しくは、内燃機関と、制御装置と、を備える内燃機関装置に関する。
【背景技術】
【０００２】
従来、この種の内燃機関装置としては、多気筒の内燃機関を備えるものが提案されている（例えば、特許文献１参照）。この装置では、各気筒毎に空燃比がリッチまたはリーンを繰り返すように内燃機関を制御し、空燃比センサの出力値に基づいて各気筒の空燃比を推定し、空燃比の推定結果に基づいて各気筒の異常の有無を判定している。また、この種の内燃機関装置としては、内燃機関の回転変動を用いて各気筒に異常が生じているか否かを判定するものが提案されている（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−１２８０８０号公報
【特許文献２】特許第５０９９２１６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述の内燃機関装置では、各気筒毎に空燃比がリッチまたはリーンを繰り返すように内燃機関を制御すると、内燃機関に回転変動が生じる。内燃機関の回転変動を用いて各気筒に異常が生じているか否かを判定しているときに、各気筒毎に空燃比をリッチにしたりリーンにしたりすると、各気筒に異常が生じていないときでも内燃機関の回転変動が大きくなり、気筒に異常が生じていると誤判定してしまう場合がある。
【０００５】
本発明の内燃機関装置は、内燃機関の各気筒の異常を判定する際の誤判定を抑制することを主目的とする。
【課題を解決するための手段】
【０００６】
本発明の内燃機関装置は、上述の主目的を達成するために以下の手段を採った。
【０００７】
本発明の内燃機関装置は、
多気筒の内燃機関と、
異常判定条件が成立しているときには、各気筒毎の前記内燃機関の回転変動に基づいて前記各気筒に異常が生じているか否かを判定する異常判定を実行し、ディザ制御条件が成立しているときには、前記各気筒毎に空燃比がリッチとリーンとを繰り返すように前記内燃機関を制御するディザ制御を実行する制御装置と、
を備える内燃機関装置であって、
前記制御装置は、前記異常判定は、少なくとも１つの気筒において前記回転変動が判定用閾値以上であるときには、当該気筒に異常が生じていると判定し、
更に、前記制御装置は、前記異常判定条件が成立し、且つ、前記ディザ制御条件が成立しているときには、前記ディザ制御条件が成立していないときに比して前記判定用閾値を大きくする、
ことを要旨とする。
【０００８】
この本発明の内燃機関装置では、異常判定条件が成立しているときには、各気筒毎の内燃機関の回転変動に基づいて各気筒に異常が生じているか否かを判定する異常判定を実行し、ディザ制御条件が成立しているときには、各気筒毎に空燃比がリッチとリーンとを繰り返すように内燃機関を制御するディザ制御を実行する。異常判定は、少なくとも１つの気筒において回転変動が判定用閾値以上であるときには、当該気筒に異常が生じていると判定する。更に、異常判定条件が成立し、且つ、ディザ制御条件が成立しているときには、ディザ制御条件が成立していないときに比して判定用閾値を大きくする。ディザ制御条件が成立しているときには、ディザ制御が実行されて、各気筒が正常であるときでも内燃機関の回転変動が大きくなる。そのため、ディザ制御を実行しているか否かに拘わらず同一の判定用閾値を用いて異常判定を実行すると誤判定する場合があるが、異常判定条件が成立し、且つ、ディザ制御条件が成立しているときには、ディザ制御条件が成立していないときに比して判定用閾値を大きくするから、内燃機関の各気筒の異常を判定する際の誤判定を抑制することができる。ここで、「判定用閾値」は、ディザ制御を実行しているときに、各気筒に異常が生じているか否かを判定するための閾値であり、ディザ制御を実行しているときの内燃機関の回転変動と各気筒に異常が生じたときの内燃機関の回転変動とに基づいて設定される値である。
【０００９】
こうした本発明の内燃機関装置において、前記制御装置は、前記異常判定条件が成立し、且つ、前記ディザ制御条件が成立している場合において、ディザ率が所定値以上であるときに、前記ディザ制御条件が成立していないときに比して前記判定用閾値を大きくしてもよい。ここで、「ディザ率」は、内燃機関全体での燃料噴射量を気筒数で除した気筒平均噴射量に対するリッチとした気筒の実際の燃料噴射量から気筒平均噴射量を減じた増量値の比率の総和または気筒平均噴射量に対するリーンとした気筒の気筒平均噴射量から実際の燃料噴射量を減じた減少値の比率の総和である。「所定値」は、ディザ率が異常判定において誤判定が生じやすい値であるか否かを判定するための閾値である。ディザ率が所定値以上となると、ディザ率が所定値未満のときより内燃機関の回転変動が大きくなることから、異常判定を誤判定しやすい。したがって、異常判定条件が成立し、且つ、ディザ制御条件が成立している場合において、ディザ率が所定値以上であるときに、ディザ制御条件が成立していないときに比して判定用閾値を高くすることにより、異常判定での誤判定を抑制することができる。
【００１０】
また、本発明の内燃機関装置において、前記制御装置は、前記異常判定条件が成立し、且つ、前記ディザ制御条件が成立している場合において、ディザ制御においてリーンとなっている気筒に対して異常判定を実行するときに、前記ディザ制御条件が成立していないときに比して前記判定用閾値を大きくしてもよい。ディザ制御においてリーンとなっている気筒を点火したときの回転変動は、ディザ制御においてリッチとなっている気筒を点火したときの回転変動より大きくなる。そのため、リーンとなっている気筒における異常判定では、誤判定しやすい。したがって、異常判定条件が成立し、且つ、ディザ制御条件が成立している場合において、ディザ制御においてリーンとなっている気筒に対して異常判定を実行するときに、ディザ制御条件が成立していないときに比して判定用閾値を大きくすることにより、異常判定での誤判定を抑制することができる。
【００１１】
更に、本発明の内燃機関装置において、前記内燃機関は、排気系に排気を浄化する浄化触媒を有する浄化装置が取り付けられていてもよいし、排気系に粒子状物質を除去するフィルタが取り付けられていてもよい。
【００１２】
そして、本発明の内燃機関装置において、前記異常判定は、前記内燃機関の各気筒に失火が生じていることを前記異常として判定したり、各気筒間の燃料噴射量にインバランスが生じていることを前記異常として判定したりしてもよい。
【図面の簡単な説明】
【００１３】
【図１】本発明の一実施例としての内燃機関装置２０の構成の概略を示す構成図である。
【図２】ＥＣＵ２４により実行される失火判定ルーチンの一例を示すフローチャートである。
【図３】失火が生じていないときにおけるエンジン２２の回転変動量Δωの時間変化の一例を示す説明図である。
【図４】変形例の失火判定ルーチンの一例を示すフローチャートである。
【図５】変形例の内燃機関装置において、失火が生じていないときにおけるエンジン２２の回転変動量Δωの時間変化の一例を示す説明図である。
【図６】本発明をインバランス判定に適用したときのインバランス判定ルーチンの一例を示すフローチャートである。
【図７】変形例のインバランス判定ルーチンの一例を示すフローチャートである。
【発明を実施するための形態】
【００１４】
次に、本発明を実施するための形態を実施例を用いて説明する。
【実施例】
【００１５】
図１は、本発明の一実施例としての内燃機関装置２０の構成の概略を示す構成図である。実施例の内燃機関装置２０は、図示するように、エンジン２２と、電子制御ユニット（以下、「ＥＣＵ」という）２４と、を備える。内燃機関装置２０は、例えば、走行用のモータと共にハイブリッド自動車に搭載される。
【００１６】
エンジン２２は、例えばガソリンや軽油などの炭化水素系の燃料を用いて吸気，圧縮，膨張（爆発燃焼），排気の各行程により動力を出力する多気筒の内燃機関として構成されている。エンジン２２は、エアクリーナ１２２により清浄された空気をスロットルバルブ１２４を介して吸気管１２５に吸入すると共に燃料噴射弁１２６から燃料を噴射して空気と燃料とを混合する。そして、この混合気を吸気バルブ１２８ａを介して燃焼室１２９に吸入し、点火プラグ１３０による電気火花によって爆発燃焼させて、そのエネルギにより押し下げられるピストン１３２の往復運動をクランクシャフト２６の回転運動に変換する。燃焼室１２９から排気バルブ１２８ｂを介して排気管１３３に排出される排気は、一酸化炭素（ＣＯ）や炭化水素（ＨＣ），窒素酸化物（ＮＯｘ）の有害成分を浄化する浄化触媒（三元触媒）を有する排気浄化装置１３４と粒子状物質除去フィルタ（以下、ＰＭフィルタという）２５とを介して外気に排出される。排気浄化装置１３４には、排気中の未燃焼燃料や窒素酸化物を除去する触媒が充填されている。ＰＭフィルタ２５は、セラミックスやステンレスなどにより多孔質フィルタとして形成されており、煤などの粒子状物質（ＰＭ：Particulate Matter）を捕捉する。このエンジン２２は、吸気バルブ１２８ａや排気バルブ１２８ｂの開閉タイミングを変更可能な可変バルブタイミング機構１５０ａ，１５０ｂを備える。エンジン２２は、ＥＣＵ２４によって運転制御されている。
【００１７】
ＥＣＵ２４は、図示しないが、ＣＰＵを中心とするマイクロプロセッサとして構成されており、ＣＰＵの他に、処理プログラムを記憶するＲＯＭ，データを一時的に記憶するＲＡＭ，入出力ポート，通信ポートを備える。
【００１８】
ＥＣＵ２４には、エンジン２２を運転制御するのに必要な各種センサからの信号が入力ポートを介して入力されている。ＥＣＵ２４に入力される信号としては、例えば、クランクシャフト２６の回転位置を検出するクランクポジションセンサ１４０からのクランク角θｃｒや、エンジン２２の冷却水の温度を検出する水温センサ１４２からの冷却水温Ｔｗを挙げることができる。また、吸気バルブ１２８ａを開閉するインテークカムシャフトの回転位置や排気バルブ１２８ｂを開閉するエキゾーストカムシャフトの回転位置を検出するカムポジションセンサ１４４ａ，１４４ｂからのカム角θｃａ，θｃｂも挙げることができる。更に、スロットルバルブ１２４のポジションを検出するスロットルバルブポジションセンサ１４６からのスロットル開度ＴＨや、吸気管に取り付けられたエアフローメータ１４８からの吸入空気量Ｑａ，吸気管に取り付けられた温度センサ１４９からの吸気温Ｔａも挙げることができる。各気筒の燃料噴射弁１２６の内部に取り付けられ噴射される燃料の圧力を検出する圧力センサ１２６ａからの噴射圧Ｐｉｎｊも挙げることができる。排気管に取り付けられた空燃比センサ１３５ａからの空燃比ＡＦや、排気管に取り付けられた酸素センサ１３５ｂからの酸素信号Ｏ２も挙げることができる。更に、ＰＭフィルタ２５の上流側および下流側に取り付けられた圧力センサ２５ａ，２５ｂからの圧力Ｐ１，Ｐ２も挙げることができる。
【００１９】
ＥＣＵ２４からは、エンジン２２を運転制御するための各種制御信号が出力ポートを介して出力されている。ＥＣＵ２４から出力される信号としては、例えば、スロットルバルブ１２４のポジションを調節するスロットルモータ１３６への駆動制御信号や、燃料噴射弁１２６への駆動制御信号，イグナイタと一体化されたイグニッションコイル１３８への駆動制御信号，可変バルブタイミング機構１５０ａ，１５０ｂへの駆動制御信号も挙げることができる。
【００２０】
ＥＣＵ２４は、クランク角θｃｒに基づいて、クランクシャフト２６の回転数、即ち、エンジン２２の回転数Ｎｅを演算している。また、ＥＣＵ２４は、各気筒の圧力センサ１２６ａからの噴射圧Ｐｉｎｊの圧力波形（圧力の時間変化）から各気筒毎に実際の燃料噴射量（実噴射量）Ｐｉｒを演算している。ＥＣＵ２４は、エアフローメータ１４８からの吸入空気量Ｑａとエンジン２２の回転数Ｎｅとに基づいて、体積効率（エンジン２２の１サイクルあたりの行程容積に対する１サイクルで実際に吸入される空気の容積の比）ＫＬも演算している。ＥＣＵ２４は、圧力センサ２５ａ，２５ｂからの圧力Ｐ１，Ｐ２の差圧ΔＰ（ΔＰ＝Ｐ１−Ｐ２）に基づいてＰＭフィルタ２５に補足された粒子状物質の推定される堆積量としてのＰＭ堆積量Ｑｐｍを演算したり、エンジン２２の運転状態に基づいてＰＭフィルタ２５の推定される温度としてのフィルタ温度Ｔｆを演算したりしている。また、ＥＣＵ２４は、クランク角θｃｒに基づいて、クランクシャフト２６が所定角度（例えば１０度）だけ回転するたびに、クランクシャフト２６が３０度だけ回転するのに要した時間である３０度回転所要時間Ｔ３０（ｍｓｅｃ）を取得し、当該３０度回転所要時間Ｔ３０に基づいて、クランクシャフト２６（エンジン２２）の角速度ωｅｇ（ｒａｄ／ｓｅｃ）を算出する。角速度ωｅｇは、ωｅｇ＝２π×（３０／３６０）／Ｔ３０×１０００として算出される。
【００２１】
こうして構成された実施例の内燃機関装置２０では、ＥＣＵ２４は、エンジン２２から要求出力が出力されるように、スロットルバルブ１２４の開度を調節する吸入空気量制御，燃料噴射弁１２６からの燃料噴射量を調節する燃料噴射制御，点火プラグ１３０の点火時期を調節する点火制御などを行なう。
【００２２】
次に、こうして構成された実施例の内燃機関装置２０の動作、特に、エンジン２２において失火が生じているか否かを判定する際の動作について説明する。図２は、ＥＣＵ２４により実行される失火判定ルーチンの一例を示すフローチャートである。本ルーチンは、エンジン２２が運転されているときに繰り返し実行される。
【００２３】
本ルーチンが実行されると、ＥＣＵ２４は、エンジン２２の回転数Ｎｅや体積効率ＫＬ，ディザ制御フラグＦ，各気筒の実噴射量Ｐｉｒを入力する処理を実行する（ステップＳ１００）。ここで、エンジン２２の回転数Ｎｅは、クランク角θｃｒに基づいて演算したものを入力している。体積効率ＫＬは、エアフローメータ１４８からの吸入空気量Ｑａとエンジン２２の回転数Ｎｅとに基づいて演算したものを入力している。ディザ制御要求フラグＦは、ディザ制御の実行が要求されていないときに値０に設定され、ディザ制御の実行が要求されているときに値１に設定されるフラグを入力している。実噴射量Ｐｉｒは、圧力センサ１２６ａからの噴射圧Ｐｉｎｊに基づいて演算したものを入力している。
【００２４】
ここで、ディザ制御について説明する。ディザ制御は、エンジン２２の空燃比をリッチ（理論空燃比に比して燃料量を多くした状態）とリーン（理論空燃比に比して燃料量を少なくした状態）とが繰り返されるように燃料噴射を行なってエンジン２２を運転する制御である。このディザ制御では、エンジン２２の複数の気筒のうち一部の気筒をリッチとし、残余の気筒をリーンとし、ディザ率を目標値Ｒｄｃとしつつエンジン２２全体としての燃料噴射量の増減の平均値が値０となるようにエンジン２２を運転する。ディザ率とは、エンジン２２の燃料噴射量を気筒数で除した気筒平均噴射量に対するリッチとした気筒の実際の燃料噴射量から気筒平均噴射量を減じた増量値の比率の総和である。例えば、エンジン２２を６気筒の内燃機関とした場合、ディザ率が０．２（２０％）のときには、各気筒の燃料噴射量は、気筒平均噴射量に対して最初に点火する気筒の燃料噴射量を５％減のリーンとし、次に点火する気筒の燃料噴射量を気筒平均噴射量に対して１０％増のリッチとし、残りの気筒の燃料噴射量を、以降点火順に、５％減のリーン，５％減のリーン，１０％増のリッチ，５％減のリーンとして、エンジン２２を運転する。そして、エンジン２２が所定回転Ｎｒｅｆ（例えば、１００回転、２００回転，３００回転など）すると、現在リッチとしている気筒のうち少なくとも１つの気筒をリッチにして、残りの気筒をリーンとする。例えば、最初に点火する気筒の燃料噴射量を気筒平均噴射量に対して１０％増のリッチとし、残りの気筒の燃料噴射量を、以降点火順に、５％減のリーン，１０％増のリッチ，５％減のリーン，５％減のリーン，５％減のリーンとして、エンジン２２を運転する。このようにリッチとする気筒とリーンとする気筒とを変更するのは、一部の気筒を継続してリッチとすると、リッチとなった気筒の劣化がその他の気筒より早く進むからである。こうした制御により、排気温度を上昇させて排気浄化装置１３４の浄化触媒に被毒した硫黄分のパージを行なったり、ＰＭフィルタ２５の温度を迅速に再生可能温度（例えば６００℃など）以上の状態に上昇させてＰＭフィルタ２５を再生する。
【００２５】
こうしたディザ制御は、ＰＭフィルタ２５の再生の要求がなされている第１条件と、エンジン２２が運転している（エンジン２２が停止中や燃料カット中ではない）第２条件と、エンジン２２の空燃比が安定している（エンジン２２の空燃比制御おけるフィードバック補正量が所定範囲内にあって空燃比に関する学習が完了している）第３条件と、エンジン２２の暖機が完了している（エンジン２２の冷却水温Ｔｗが所定温度（例えば、７０℃，７５℃，８０℃など）以上である）第４条件と、の全ての条件が成立しているときに、実行要求がなされる。ＰＭフィルタ２５の再生要求は、ＰＭフィルタ２５に堆積した粒子状物質の堆積量としてのＰＭ堆積量Ｑｐｍが閾値Ｑｐｍｒｅｆ以上であるときになされる。ここで、ＰＭ堆積量Ｑｐｍは、圧力センサ２５ａ，２５ｂからの圧力Ｐ１，Ｐ２の差圧ΔＰ（ΔＰ＝Ｐ１−Ｐ２）に基づいて演算（推定）される。閾値Ｑｐｍｒｅｆは、ＰＭフィルタ２５の再生が必要であると判断できるＰＭ堆積量Ｑｐｍである。ディザ制御要求フラグＦは、上述した第１条件〜第４条件のうち少なくとも１つの条件が成立していないときには値０に設定され、第１条件〜第４条件の全ての条件が成立しているときには値１に設定される。
【００２６】
続いて、失火判定条件が成立しているか否かを判定する（ステップＳ１１０）。ここでは、エンジン２２の回転数Ｎｅが下限回転数Ｎｍｉｎ（例えば、８００ｒｐｍ，８５０ｒｐｍ，９００ｒｐｍなど）より高く上限回転数Ｎｍａｘ（例えば、６０００ｒｐｍ，６５００ｒｐｍ，７０００ｒｐｍなど）より低い第１判定条件、または、体積効率ＫＬが所定率Ｋｒｅｆ（例えば、９．０％，９．５％，１０％など）以上である第２判定条件が成立したときに、失火判定条件が成立していると判定する。
【００２７】
ステップＳ１１０の処理で失火判定条件が成立していないと判定されたときには、失火の判定を実行する必要がないと判断して、本ルーチンを終了する。
【００２８】
ステップＳ１１０の処理で失火判定要件が成立していると判定されたときには、続いて、ディザ制御フラグＦが値１であるか否かを判定する（ステップＳ１２０）。ディザ制御フラグＦが値０であるときには、ディザ制御が実行されないから、判定用閾値ｄωｒｅｆを所定値ｄωｒｅｆ１として失火判定を実行して（ステップＳ１７０）、本ルーチンを終了する。失火判定では、まずは、燃焼室毎に点火時期が到来すると、その時点で算出されている角速度ωｅｇと当該燃焼室の前回の点火時期における角速度ωｅｇとに基づいてエンジン２２の回転変動量Δωを算出し、回転変動量Δωと判定用閾値ｄωｒｅｆとを比較する。ここで、判定用閾値ｄωｒｅｆは、当該燃焼室において失火が発生しているか否かを判定するための閾値である。そして、回転変動量Δωが判定用閾値ｄωｒｅｆ以上であるときには、当該燃焼室において失火が発生することにより回転変動量Δωが大きくなっている可能性があると判断して、続いて、回転変動量Δωの時間波形と予め定めた判定用波形とを比較する。そして、回転変動量Δωの時間波形が判定用波形と誤差の範囲内で同一であるときには、失火が生じていないと判定し、回転変動量Δωの時間波形が判定用波形より誤差の範囲内を超えて大きくなっているときには、失火が生じていると判定する。こうした判定により、失火が生じているか否かを判定することができる。なお、所定値ｄωｒｅｆ１は、失火が生じていない場合において、ディザ制御を実行していないときおよびディザ率が目標値Ｒｄｃに追従しているときにおけるエンジン２２の回転変動量Δωの最大値より若干大きい値として予め実験や解析などにより設定されている。
【００２９】
ステップＳ１２０の処理でディザ制御フラグＦが値１であると判定されたときには、入力された各気筒の実噴射量Ｐｉｒを用いて、実ディザ率Ｒｄｒを設定する（ステップＳ１３０）。実ディザ率Ｒｄｒは、各気筒の実噴射量Ｐｉｒの総和を気筒数で除した実気筒平均噴射量に対するリッチとした気筒の実噴射量Ｐｉｒから実気筒平均噴射量を減じた増量値の比率の総和である。例えば、エンジン２２の実気筒平均噴射量に対して、所定回転Ｎｒｅｆの間、最初に点火する気筒の実燃料噴射量Ｐｉｒが５．２％減のリーンで、以降点火順に、１０．３％増のリッチ、５．１％減のリーン，５．１％減のリーン，１０．１％増のリッチ，５．０％減のリーンとなっているときには、実ディザ率Ｒｄｒは、０．２０４（＝０．１０３（１０．３％）＋０．１０１（１０．１％））となる。なお、実ディザ率Ｒｄｒは、実気筒平均噴射量に対する実気筒平均噴射量からリーンとした気筒の実噴射量Ｐｉｒを減じた減少量の比率の総和としてもよい。
【００３０】
続いて、実ディザ率Ｒｄｒが判定用閾値Ｒｄｒｅｆ以上であるか否かを判定する（ステップＳ１４０）。判定用閾値Ｒｄｒｅｆは、失火が生じていないにも拘わらず、ディザ制御によるエンジン２２の回転変動量Δωが所定値ｄωｒｅｆ１を超えてしまうディザ率として予め定めた値であり、目標値Ｒｄｃより大きな値に設定される。ディザ率が目標値Ｒｄｃとなるようにディザ制御を実行しても、制御誤差により実際のディザ率（実ディザ率Ｒｄｒ）が大きくなり、エンジン２２の回転変動量Δωが所定値ｄωｒｅｆ１以上となって、失火判定で誤判定が生じることがある。ステップＳ１４０の処理は、こうした誤判定が生じる可能性があるか否かを判定する処理となっている。
【００３１】
ステップＳ１４０の処理で実ディザ率Ｒｄｒが判定用閾値Ｒｄｒｅｆ未満であると判定したときには、判定用閾値ｄωｒｅｆとして所定値ｄωｒｅｆ１を用いて失火判定をしても差し支えないと判断して、ステップＳ１７０の処理に進み、判定用閾値ｄωｒｅｆとして所定値ｄωｒｅｆ１を用いて失火判定を実行して（ステップＳ１７０）、本ルーチンを終了する。
【００３２】
ステップＳ１４０の処理で実ディザ率Ｒｄｒが判定用閾値Ｒｄｒｅｆ以上であると判定したときには、判定用閾値ｄωｒｅｆとして所定値ｄωｒｅｆ１を用いて失火判定を実行すると誤判定する可能性があると判断して、実ディザ率Ｒｄｒを用いて引き上げ係数ｋを設定し（ステップＳ１５０）、引き上げ係数ｋを用いて判定用閾値ｄωｒｅｆを引き上げる処理を実行し（ステップＳ１６０）、ステップＳ１６０の処理で引き上げた判定用閾値ｄωｒｅｆを用いて失火判定を実行して（ステップＳ１７０）、本ルーチンを終了する。ステップＳ１５０の処理では、引き上げ係数ｋは、制御誤差により実際のディザ率（実ディザ率Ｒｄｒ）が目標値Ｒｄｃより大きくなりエンジン２２の回転変動量Δωが大きくなっても、失火の判定を誤判定しないように判定用閾値ｄωｒｅｆを調整するための係数であり、値１より大きい値として設定される。実ディザ率Ｒｄｒが大きいときは小さいときに比してエンジン２２の回転変動量Δωが大きくなる、すなわち、実ディザ率Ｒｄｒが大きいほどエンジン２２の回転変動量Δωが大きくなることから、引き上げ係数ｋも、実ディザ率Ｒｄｒが大きいときは小さいときに比して大きくなるように、すなわち、実ディザ率Ｒｄｒが大きいほど大きくなるように設定される。こうした処理により、判定用閾値ｄωｒｅｆは、ディザ制御フラグＦが値０であるときに比して大きく設定される。
【００３３】
図３は、失火が生じていないときにおけるエンジン２２の回転変動量Δωの時間変化の一例を示す説明図である。図中、実線は、ディザ制御を実行しているときにおける回転変動量Δωと、ディザ制御を実行しており、且つ、実ディザ率Ｒｄｒが判定用閾値Ｒｄｒｅｆ以上であるときの判定用閾値ｄωｒｅｆ（＝ｋ・ｄωｒｅｆ１）との時間変化の一例を示している。破線は、ディザ制御を実行していないときにおける回転変動量Δωと判定用閾値ｄωｒｅｆ（＝ｄωｒｅｆ１）との時間変化の一例を示している。ディザ制御では、エンジン２２の空燃比を気筒別にリッチまたはリーンとなるように燃料噴射を行なってエンジン２２を運転するから、図示するように、エンジン２２には回転変動が生じる。ディザ制御において、失火が生じていないときにおいて、実際のディザ率Ｒｄｒが目標値Ｒｄｃに追従しているときには、図示するように、回転変動量Δωが所定値ｄωｒｅｆ１未満となるから、失火の判定では失火が生じていないと判定される。しかしながら、実際のディザ率Ｒｄｒが目標値Ｒｄｃから大きくなる方向にずれて判定用閾値Ｒｄｒｅｆ以上となると、回転変動量Δωが所定値ｄωｒｅｆ１を超えることがある。実施例では、実ディザ率Ｒｄｒが判定用閾値Ｒｄｒｅｆ以上のときには、判定用閾値ｄωｒｅｆを所定値ｄωｒｅｆ１より大きい値（ｋ・ｄωｒｅｆ）に設定するから、失火の誤判定を抑制することができる。
【００３４】
以上説明した実施例の内燃機関装置２０によれば、失火判定条件が成立し、且つ、ディザ制御フラグＦが値１である場合において、実ディザ率Ｒｄｒが判定用閾値Ｒｄｒｅｆ以上であるときに、ディザ制御フラグＦが値０のときに比して判定用閾値ｄωｒｅｆを大きく設定することにより、失火判定での誤判定を抑制することができる。
【００３５】
実施例の内燃機関装置２０では、ステップＳ１４０〜Ｓ１６０の処理で、実ディザ率Ｒｄｒが判定用閾値Ｒｄｒｅｆ以上であるときに実ディザ率Ｒｄｒを用いて引き上げ係数ｋを設定して、係数ｋに所定値ｄωｒｅｆ１を乗じたものを判定用閾値ｄωｒｅｆに設定している。しかしながら、図４の変形例の失火判定ルーチンの一例に示すように、ステップＳ１４０の処理に変えてステップＳ２００の処理を実行して、リーンとなっている気筒に対して失火判定を実行するか否かを判定し、リーンとなっている気筒に対して失火判定を実行するときには実ディザ率Ｒｄｒを用いて引き上げ係数ｋを設定して、係数ｋに所定値ｄωｒｅｆ１を乗じたものを判定用閾値ｄωｒｅｆに設定してもよい。
【００３６】
図５は、変形例の内燃機関装置において、失火が生じていないときにおけるエンジン２２の回転変動量Δωの時間変化の一例を示す説明図である。図中、実線は、ディザ制御を実行しているときにおける回転変動量Δωと判定用閾値ｄωｒｅｆ（＝ｋ・ｄωｒｅｆ１）との時間変化の一例を示している。破線は、ディザ制御を実行していないときにおける回転変動量Δωと判定用閾値ｄωｒｅｆ（＝ｄωｒｅｆ１）との時間変化の一例を示している。リーンとなっている気筒を点火するときのエンジン２２の回転変動量Δωはリッチとなっている気筒を点火するときより大きい。そのため、リーンとなっている気筒に失火が生じているか否かを判定するときは、リッチとなっている気筒に失火が生じているか否かを判定するときに比して失火の誤判定を生じやすい。変形例では、図示するように、リーンとなっている気筒の失火を判定するときには実ディザ率Ｒｄｒを用いて引き上げ係数ｋを設定して、係数ｋに所定値ｄωｒｅｆ１を乗じたものを判定用閾値ｄωｒｅｆに設定する。こうすれば、失火の判定における誤判定を抑制することができる。
【００３７】
実施例の内燃機関装置２０では、ステップＳ１６０の処理で、所定値ｄωｒｅｆ１に値１より大きい係数ｋを乗じたものを判定用閾値ｄωｒｅｆに設定することで判定用閾値ｄωｒｅｆを引き上げている。しかしながら、判定用閾値ｄωｒｅｆを所定値ｄωｒｅｆ１より大きい値を設定すればよいから、判定用閾値ｄωｒｅｆを、例えば、所定値ｄωｒｅｆ１より大きい所定値ｄωｒｅｆ２を設定してもよい。
【００３８】
実施例の内燃機関装置２０では、ステップＳ１２０の処理でディザ制御フラグＦが値１であると判定されたときには、ステップＳ１３０〜Ｓ１６０の処理で、実ディザ率Ｒｄｒが判定用閾値Ｒｄｒｅｆ以上であるときに実ディザ率Ｒｄｒを用いて引き上げ係数ｋを設定して、係数ｋに所定値ｄωｒｅｆ１を乗じたものを判定用閾値ｄωｒｅｆに設定している。しかしながら、ステップＳ１２０の処理でディザ制御フラグＦが値１であると判定されたときには、ステップＳ１４０の処理を実行することなく、ステップＳ１３０，Ｓ１５０，Ｓ１６０の処理を実行してもよい。
【００３９】
実施例の内燃機関装置２０では、本発明を失火を判定する処理に適用する場合について説明した。しかしながら、本発明は、エンジン２２の回転変動量Δωを用いて異常判定する処理に適用すればよいから、例えば、燃料噴射量の気筒間のインバランスが生じているか否かを判定するインバランス判定の処理に適用してもよい。図６は、本発明をインバランス判定に適用したときのインバランス判定ルーチンの一例を示すフローチャートである。このルーチンで実行する処理は、図２に例示した失火判定ルーチンのステップＳ１１０，Ｓ１７０の処理に代えてステップＳ３１０，Ｓ３７０の処理を実行する点と判定用閾値ｄωｒｅｆがインバランス判定をする際の閾値である点とを除いて、図２に例示した失火判定ルーチンと同一の処理となっている。したがって、同一の処理には同一の符号を付し、詳細な説明を省略する。
【００４０】
ステップＳ１００の処理で、必要なデータを入力する処理を実行すると、ステップＳ３１０の処理では、インバランス判定条件が成立しているか否かを判定する（ステップＳ３１０）。インバランス判定条件は、インバランス判定を実行するための前提条件であり、冷却水温Ｔｗが閾値Ｔｗｒｅｆ以上であるときに、成立していると判定する。閾値Ｔｗｒｅｆは、エンジン２２の暖機が完了しているか否かの判定に用いられる閾値であり、例えば、７０℃，７５℃，８０℃などを用いることができる。
【００４１】
ステップＳ３１０の処理で、インバランス判定条件が成立していないと判定されたときには、本ルーチンを終了する。
【００４２】
ステップＳ３１０の処理で、インバランス判定条件が成立していると判定されたときには、ディザ制御フラグＦが値１であるか否かを判定し（ステップＳ１２０）、ディザ制御フラグＦが値０であるときには、インバランス判定を実行して（ステップＳ３７０）、本ルーチンを終了する。ここで、インバランス判定は、燃料噴射量の気筒間のインバランスが生じているか否かを判定する処理である。燃料噴射量の気筒間のインバランスとしては、いずれかの気筒の燃料噴射量が他の気筒の燃料噴射量よりも多くなっているリッチインバランスと、いずれかの気筒の燃料噴射量が他の気筒の燃料噴射量よりも少なくなっているリーンインバランスと、がある。実施例のインバランス判定では、燃焼室毎に点火時期が到来すると、その時点で算出されている角速度ωｅｇと当該燃焼室の前回の点火時期における角速度ωｅｇとに基づいてエンジン２２の回転変動量Δωを算出し、回転変動量Δωと判定用閾値ｄωｒｅｆとを比較する。ここで、判定用閾値ｄωｒｅｆは、予め定められた所定値ｄωｒｅｆ１に設定されている。所定値ｄωｒｅｆ１は、ディザ制御を実行していないときおよびディザ率が目標値Ｒｄｃに追従しているときにおけるエンジン２２の回転変動量の最大値より若干大きい値として予め実験や解析などにより設定されている。そして、回転変動量Δωが判定用閾値ｄωｒｅｆ以上であるときには、当該燃焼室においてインバランスが生じていると判定する。
【００４３】
ステップＳ１２０の処理で、ディザ制御フラグＦが値１であると判定されたときには、入力された実噴射量Ｐｉｒを用いて、実ディザ率Ｒｄｒを設定し（ステップＳ１３０）、実ディザ率Ｒｄｒが判定用閾値Ｒｄｒｅｆ以上であるか否かを判定する（ステップＳ１４０）。そして、判定用閾値Ｒｄｒｅｆ未満であると判定したときには、判定用閾値ｄωｒｅｆとして所定値ｄωｒｅｆ１を用いてインバランス判定を実行しても差し支えないと判断して、ステップＳ１７０の処理に進み、判定用閾値ｄωｒｅｆとして所定値ｄωｒｅｆ１を用いてインバランス判定を実行し（ステップＳ３７０）、を終了する。なお、ディザ制御は、気筒間の燃料噴射量にインバランスを生じさせる制御であるが、所定値ｄωｒｅｆは、ディザ制御におけるインバランスの程度を超えていることを判定可能な閾値として設定されている。したがって、ディザ制御フラグＦが値１であるときのインバランス判定は、ディザ制御におけるインバランスの程度を超えたインバランスが生じているか否かを判定する処理となっている。
【００４４】
ステップＳ１４０の処理で実ディザ率Ｒｄｒが判定用閾値Ｒｄｒｅｆ以上であると判定したときには、判定用閾値ｄωｒｅｆとして所定値ｄωｒｅｆ１を用いてインバランス判定を実行すると誤判定する可能性があると判断して、実ディザ率Ｒｄｒを用いて引き上げ係数ｋを設定し（ステップＳ１５０）、引き上げ係数ｋを用いて判定用閾値ｄωｒｅｆを引き上げる処理を実行し（ステップＳ１６０）、ステップＳ１６０の処理で引き上げた判定用閾値ｄωｒｅｆを用いてインバランス判定を実行して（ステップＳ３７０）、本ルーチンを終了する。こうすれば、実ディザ率Ｒｄｒが目標値Ｒｄｃより大きくなっているときでも、インバランス判定での誤判定を抑制することができる。
【００４５】
また、本発明をインバランス判定に適用する場合、図６に例示した変形例のインバランス判定ルーチンに代えて、図７に例示する変形例のインバランス判定ルーチンを実行してもよい。図７に例示する変形例のインバランス判定ルーチンは、図４に例示した失火判定ルーチンのステップＳ１１０，Ｓ１７０の処理に代えて上述したステップＳ３１０，Ｓ３７０の処理を実行する点と、判定用閾値ｄωｒｅｆがインバランス判定をする際の閾値である点とを除いて、図４に例示した失火判定ルーチンと同一の処理となっている。このように、インバランス判定において、リーンとなっている気筒にディザ制御におけるインバランスの程度を超えるインバランスが生じているか否かを判定するときに実ディザ率Ｒｄｒを用いて引き上げ係数ｋを設定して、係数ｋに所定値ｄωｒｅｆ１を乗じたものを判定用閾値ｄωｒｅｆに設定してもよい。これは、リーンとなっている気筒を点火するときのエンジン２２の回転変動量Δωがリッチとなっている気筒を点火するときより大きく、リーンとなっている気筒にインバランスが生じているか否かを判定するときは、リッチとなっている気筒にインバランスが生じているか否かを判定するときに比してインバランス判定を誤判定しやすいからである。変形例では、リーンとなっている気筒のインバランスを判定するときに実ディザ率Ｒｄｒを用いて引き上げ係数ｋを設定して、係数ｋに所定値ｄωｒｅｆ１を乗じたものを判定用閾値ｄωｒｅｆに設定する。こうすれば、インバランス判定における誤判定を抑制することができる。
【００４６】
実施例の内燃機関装置２０では、ディザ制御要求フラグＦを、第１条件〜第４条件のうち少なくとも１つの条件が成立していないときには値０に設定し、第１条件〜第４条件の全ての条件が成立しているときには値１に設定している。しかしながら、少なくとも第１条件が成立しているときに値１に設定されればよいから、第４条件を考慮せずに第１〜第３条件が成立しているときに値１に設定したり、第２，第３条件を考慮せずに第１，第４条件が成立したときに値１に設定してもよい。また、第１〜第４条件に限定されず、他の条件に基づいてディザ制御要求フラグＦを設定してもよい。
【００４７】
実施例の主要な要素と課題を解決するための手段の欄に記載した発明の主要な要素との対応関係について説明する。実施例では、エンジン２２が「内燃機関」に相当し、ＥＣＵ２４が「制御装置」に相当する。
【００４８】
なお、実施例の主要な要素と課題を解決するための手段の欄に記載した発明の主要な要素との対応関係は、実施例が課題を解決するための手段の欄に記載した発明を実施するための形態を具体的に説明するための一例であることから、課題を解決するための手段の欄に記載した発明の要素を限定するものではない。即ち、課題を解決するための手段の欄に記載した発明についての解釈はその欄の記載に基づいて行なわれるべきものであり、実施例は課題を解決するための手段の欄に記載した発明の具体的な一例に過ぎないものである。
【００４９】
以上、本発明を実施するための形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において、種々なる形態で実施し得ることは勿論である。
【産業上の利用可能性】
【００５０】
本発明は、内燃機関装置の製造産業などに利用可能である。
【符号の説明】
【００５１】
２０  内燃機関装置、２２  エンジン、２４  電子制御ユニット（ＥＣＵ）、２５  粒子状物質除去フィルタ（ＰＭフィルタ）、２５ａ，２５ｂ  圧力センサ、２６  クランクシャフト、１２２  エアクリーナ、１２４  スロットルバルブ、１２５  吸気管、１２６  燃料噴射弁、１２６ａ  圧力センサ、１２８ａ  吸気バルブ、１２８ｂ  排気バルブ、１２９  燃焼室、１３０  点火プラグ、１３２  ピストン、１３３  排気管、１３４  排気浄化装置、１３５ａ  空燃比センサ、１３５ｂ  酸素センサ、１３６  スロットルモータ、１３８  イグニッションコイル、１４０  クランクポジションセンサ、１４２  水温センサ、１４４ａ，１４４ｂ  カムポジションセンサ、１４６  スロットルバルブポジションセンサ、１４８  エアフローメータ、１４９  温度センサ、１５０ａ，１５０ｂ  可変バルブタイミング機構。
【図１】
2018123808.tif 000003
【図２】
2018123808.tif 000004
【図３】
2018123808.tif 000005
【図４】
2018123808.tif 000006
【図５】
2018123808.tif 000007
【図６】
2018123808.tif 000008
【図７】
2018123808.tif 000009