(57)【要約】【課題】失火処理を行いつつも回転数の変化を抑制できる制御装置を提供する。【解決手段】エンジン回転数ＮＥが第３領域ＮＥＨ３にあるときは、エンジン回転数ＮＥが連続して上昇しているときには、失火処理を行う。その一方で、エンジン回転数ＮＥが下降しているときも失火処理が行われる。これに対し、第３領域ＮＥＨ３より低い第１領域ＮＥＨ１では、エンジン回転数ＮＥが連続して上昇しているときには、上昇回数が３回未満であれば点火処理を行い、３回以上では失火処理を行う。エンジン回転数ＮＥが下降しているときは点火処理が行われる。【選択図】図５
2011026978.tif 000002
【特許請求の範囲】
【請求項１】
内燃機関を運転させたときの出力軸の回転数を算出する回転数算出部と、
所定期間の間の前記内燃機関の回転数の上昇又は下降を判定すると回転数変化方向判定部と、
所定期間ごとに判定した回転数の上昇が連続して発生しているときにその上昇回数を計算し、所定期間ごとに判定した回転数の下降が連続して発生しているときにその下降回数を計算するカウント部と、
前記内燃機関内の可燃性混合気に点火するタイミングで可燃性混合気に点火する点火処理と、可燃性混合気に点火するタイミングで可燃性混合気に点火しない失火処理のいずれかを指令する出力部と、
点火処理を実施する閾値である点火判定値と、失火処理を実施する閾値である失火判定値とを前記内燃機関の回転数領域に応じて設定する判定値設定部と、
前記内燃機関の回転数が上昇しているときは前記上昇回数が失火判定値以上のときに失火処理を選択し、前記内燃機関の回転数が下降しているときは前記下降回数が点火判定値以上のときに点火処理を選択する処理選択部と、
を含むことを特徴とする内燃機関の制御装置。
【請求項２】
内燃機関を運転させたときの出力軸の回転数を算出する回転数算出部と、
所定期間の間の前記内燃機関の回転数の上昇又は下降を判定する回転数変化方向判定部と、
所定期間ごとに判定した回転数の上昇が連続して発生しているときにその上昇量の累計を計算し、所定期間ごとに判定した回転数の下降が連続して発生しているときにその下降量の累計を計算するカウント部と、
前記内燃機関内の可燃性混合気に点火するタイミングで可燃性混合気に点火する点火処理と、可燃性混合気に点火するタイミングで可燃性混合気に点火しない失火処理のいずれかを指令する出力部と、
点火処理を実施する閾値である点火判定値と、失火処理を実施する閾値である失火判定値とを前記内燃機関の回転数領域に応じて設定する判定値設定部と、
前記内燃機関の回転数が上昇しているときは前記上昇量の累計が失火判定値以上のときに失火処理を選択し、前記内燃機関の回転数が下降しているときは前記下降量の累計が点火判定値以上のときに点火処理を選択する処理選択部と、
を含むことを特徴とする内燃機関の制御装置。
【請求項３】
前記判定値設定値部は、前記内燃機関の回転数の上昇に応じて失火判定値として段階的に小さい値を設定するように構成したことを特徴とする請求項１又は請求項２に記載の内燃機関の制御装置。
【請求項４】
前記判定値設定値部は、前記内燃機関の回転数の下降に応じて点火判定値として段階的に小さい値を設定するように構成したことを特徴とする請求項１又は請求項２に記載の内燃機関の制御装置。
【請求項５】
前記判定値設定値部は、失火処理のみが選択される失火判定値及び点火判定値の組み合わせを設定可能に構成されていることを特徴とする請求項１又は請求項２に記載の内燃機関の制御装置。
【請求項６】
前記内燃機関は単気筒エンジンであることを特徴とする請求項１から請求項５のいずれか一項に記載の内燃機関の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内燃機関の制御装置に関する。
【背景技術】
【０００２】
内燃機関、例えば４サイクルの単気筒エンジンにおいては、吸気行程、圧縮行程、膨張行程、排気行程の４つのサイクルを繰り返すことで出力が生み出されている。エンジンの制御装置は、これらエンジンの各行程を判別することで、燃料の噴射や点火などのタイミングを制御している。この際、エンジンの運転状態に応じて点火タイミングで点火をせずに、失火させることでエンジンの過回転を防止したり、エンジンの出力をコントロールしたりすることがある。
【０００３】
このようなエンジンに使用される制御装置としては、例えば、多気筒エンジンの回転数の上昇に比例して失火率が順次高くなるような失火パターンを３つ以上用意し、第１及び第２の失火率に対応する回転数を越え、速度制限値に到達するまでの間では、第２の失火率以上に高い失火率でエンジンの回転数を制御するように構成したものがある（例えば、特許文献１参照）。ここで、第１の失火率を実現する失火パターンは、１番目の気筒の１回目のみを失火させるように設定される。第２の失火率を実現する失火パターンは、１番目の気筒の１回目と、２番目の気筒の１回目の合計２回を失火させる。第３の失火率を実現する失火パターンは、１番目の気筒の１回目と、２番目の気筒の１回目、第４気筒の１回目の合計３回を失火させる。
【０００４】
また、他の制御装置の例としては、エンジン回転速度の減速に伴ってクランク軸１回転当たりに失火させる気筒数を減らすように構成され、全気筒を予め決まった順番あるいは不規則に失火させるものがある。この制御装置は、多気筒エンジンの失火制御に用いられ、失火する気筒が特定の気筒に集中しないように、常に幾つかの気筒が失火するようにランダムに、又は隣り合う２つの気筒が同時に失火しないように規則的に、失火制御を行う（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平２−１９１８７２号公報（図２、図３、図４）
【特許文献２】特開平３−６４６７０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来の多気筒エンジンに用いられる制御装置で、４サイクルの単気筒エンジンの制御を行おうとすると、エンジンの回転数が失火パターンを切り替える領域を超えて下降又は上昇したときに、回転数のアンダーシュート又はオーバーシュートが生じてしまうことがあった。これは、単気筒エンジンでは、１回失火させればエンジンの回転数が下降し、１回点火すれば回転数が上昇するため、失火パターンの変動に影響を受け易いからである。このようなエンジンの回転数のアンダーシュートやオーバーシュートは、車体に衝撃を発生させる原因になる可能性があるので、単気筒エンジンに好適な制御装置の開発が望まれていた。
本発明は、このような事情を鑑みてなされたものであり、失火制御を的確に実施する制御装置を提供することを主な目的とする。
【課題を解決するための手段】
【０００７】
本願の一観点によれば、内燃機関を運転させたときの出力軸の回転数を算出する回転数算出部と、所定期間の間の前記内燃機関の回転数の上昇又は下降を判定する回転数変化方向判定部と、所定期間ごとに判定した回転数の上昇が連続して発生しているときにその上昇回数を計算し、所定期間ごとに判定した回転数の下降が連続して発生しているときにその下降回数を計算するカウント部と、前記内燃機関内の可燃性混合気に点火するタイミングで可燃性混合気に点火する点火処理と、可燃性混合気に点火するタイミングで可燃性混合気に点火しない失火処理のいずれかを指令する出力部と、点火処理を実施する閾値である点火判定値と、失火処理を実施する閾値である失火判定値とを前記内燃機関の回転数領域に応じて設定する判定値設定部と、前記内燃機関の回転数が上昇しているときは前記上昇回数が失火判定値以上のときに失火処理を選択し、前記内燃機関の回転数が下降しているときは前記下降回数が点火判定値以上のときに点火処理を選択する処理選択部と、を含むことを特徴とする内燃機関の制御装置が提供される。
【０００８】
また、本発明の別の観点によれば、内燃機関を運転させたときの出力軸の回転数を算出する回転数算出部と、所定期間の間の前記内燃機関の回転数の上昇又は下降を判定する回転数変化方向判定部と、所定期間ごとに判定した回転数の上昇が連続して発生しているときにその上昇量の累計を計算し、所定期間ごとに判定した回転数の下降が連続して発生しているときにその下降量の累計を計算するカウント部と、前記内燃機関内の可燃性混合気に点火するタイミングで可燃性混合気に点火する点火処理と、可燃性混合気に点火するタイミングで可燃性混合気に点火しない失火処理のいずれかを指令する出力部と、点火処理を実施する閾値である点火判定値と、失火処理を実施する閾値である失火判定値とを前記内燃機関の回転数領域に応じて設定する判定値設定部と、前記内燃機関の回転数が上昇しているときは前記上昇量の累計が失火判定値以上のときに失火処理を選択し、前記内燃機関の回転数が下降しているときは前記下降量の累計が点火判定値以上のときに点火処理を選択する処理選択部と、を含むことを特徴とする内燃機関の制御装置が提供される。
【０００９】
また、本発明の別の観点によれば、前記判定値設定値部は、前記内燃機関の回転数の上昇に応じて失火判定値として段階的に小さい値を設定するように構成したことを特徴とする請求項１又は請求項２に記載の内燃機関の制御装置が提供される。
【００１０】
また、本発明の別の観点によれば、前記判定値設定値部は、前記内燃機関の回転数の下降に応じて点火判定値として段階的に小さい値を設定するように構成したことを特徴とする請求項１又は請求項２に記載の内燃機関の制御装置が提供される。
【００１１】
また、本発明の別の観点によれば、前記判定値設定値部は、失火処理のみが選択される失火判定値及び点火判定値の組み合わせを設定可能に構成されていることを特徴とする請求項１又は請求項２に記載の内燃機関の制御装置が提供される。
【００１２】
また、本発明の別の観点によれば、前記内燃機関は単気筒エンジンであることを特徴とする請求項１から請求項５のいずれか一項に記載の内燃機関の制御装置が提供される。
【発明の効果】
【００１３】
本発明によれば、内燃機関の回転数が連続して上昇中であるか、連続して下降中であるかを調べて失火処理と点火処理を選択し、かつ失火処理と点火処理の判定値を回転数の大きさに応じて段階的に変化させるようにしたので、運転状態に応じてエンジン回転数の変化を抑制でき、車体に衝撃が発生せず乗車感覚を損なうことがなくなる。
【図面の簡単な説明】
【００１４】
【図１】図１は、本発明の実施の形態に係る内燃機関及び制御装置の構成を示す図である。
【図２】図２は、制御装置のブロック図である。
【図３】図３は、第１の実施の形態に係る内燃機関の点火制御のフローチャートである（その１）。
【図４】図４は、第１の実施の形態に係る内燃機関の点火制御のフローチャートである（その２）。
【図５】図５は、第１の実施の形態に係る内燃機関の点火制御のタイミングチャートである。
【図６】図６は、第２の実施の形態に係る内燃機関の点火制御のフローチャートである（その１）。
【図７】図７は、第２の実施の形態に係る内燃機関の点火制御のフローチャートである（その２）。
【図８】図８は、第２の実施の形態に係る内燃機関の点火制御のタイミングチャートである。
【図９】図９は、第２の実施の形態に係る内燃機関の点火制御の実験例を示す図である。
【発明を実施するための最良の形態】
【００１５】
本発明を実施するための形態について以下に詳細に説明する。
図１に内燃機関及びその制御装置を含むシステムの概略構成図を示す。
内燃機関であるエンジン１は、空気を吸い込む吸気管２を有する。吸気管２は、上流側の吸気口２Ａにエアクリーナ３が取り付けられており、吸気温度センサ４が設けられた後、スロットルバルブ５で流路面積を調整可能になっている。スロットルバブル５の開度は、スロットル開度センサ６によりモニタされている。さらに、スロットルバルブ５の下流には、吸気圧センサ７と、燃料噴射用のインジェクタ８が順番に設けられた後、シリンダヘッド１２とシリンダブロック１１で形成される燃焼室１３に接続されている。吸気管２と燃焼室１３の間には吸気バルブ１４が管路を開閉自在に挿入されている。
【００１６】
シリンダブロック１１には、ピストン１５が摺動自在に挿入されている。ピストン１５は、クランクアーム１６を介してクランク軸１７に連結されており、ピストン１５の直線的な往復運動を出力軸であるクランク軸１７の回転運動に変換するように構成されている。クランク軸１７は、シリンダブロック１１に回転自在に支持されており、その回転数を検出するためのタイミングロータ１８が固定されている。タイミングロータ１８の近傍には、クランク角センサ１９が配置されている。さらに、シリンダブロック１１には、冷却水を循環させるための流路２０が形成されると共に、冷却水の温度を測定するための冷却水温センサ２１も取り付けられている。
【００１７】
シリンダヘッド１２には、吸気管２の他に、点火プラグ２４と、排気管２５が取り付けられている。点火プラグ２４は、点火コイル２７に電気的に接続され、高電圧が印加されるようになっている。また、排気管２５の燃焼室１３に連なる開口部には、排気バルブ２８が開閉自在に取り付けられている。さらに、排気管２５の途中には、触媒コンバータ２９が設けられている。
【００１８】
次に、このようなエンジン１の制御を行う制御装置４１の構成について図２を参照して説明する。なお、制御装置４１は、ＥＣＵ（Electronic Control Unit）と呼ばれることもある。
制御装置４１は、バッテリ４２に接続されると共に、クランク角センサ１９と、スロットル開度センサ６と、吸気圧センサ７と、冷却水温センサ２１と、吸気温度センサ４からの信号が入力可能に構成されている。さらに、制御装置４１からは、点火コイル２７と、インジェクタ８に信号を出力可能に構成されている。
【００１９】
また、制御装置４１は、クランク角センサ１９から出力されるデジタル信号を成形する波形整形回路５１と、４つのセンサ４，６，７，２１が出力するアナログ信号をデジタル信号に変換するＡ／Ｄ（Analog/Digital）変換器５２とを有し、これらはＣＰＵ（Central Processing Unit）５３に接続されている。ＣＰＵ５３には、ＲＯＭ（Read Only Memory）５４や、ＲＡＭ（Random Access Memory）５５、タイマ５６も接続されている。さらに、ＣＰＵ５３の出力は、点火回路５７と、駆動回路５８に接続されている。点火回路５７は、所定のタイミングで点火コイル２７に信号を出力するように構成されている。駆動回路５８は、所定のタイミングでインジェクタ８を駆動させる信号を出力するように構成されている。
【００２０】
さらに、この実施の形態で、ＣＰＵ５３は、エンジン１の回転数を算出する回転数算出部６１と、エンジン１の回転数の上昇又は下降を判定する回転数変化方向判定部６２と、エンジン回転数の上昇回数のカウント、又は下降回数のカウントを行うカウント部６３と、エンジン１内の可燃性混合気に点火する点火処理、又は可燃性混合気に点火しない失火処理のいずれかを実施する出力部６４と、点火処理を実施する閾値である点火判定値と、失火処理を実施する閾値である失火判定値とをエンジン１の回転数領域に応じて設定する判定値設定部６５と、エンジン回転数の上昇回数又は下降回数と失火判定値又は点火判定値を比較して失火処理と点火処理のいずれかを選択する処理選択部６６とに機能分割できる。なお、点火処理とは、点火タイミングにおいて点火プラグ２４を放電させる処理であり、失火処理とは点火タイミングにおいて点火プラグ２４を放電させない処理である。また、燃料の噴射処理とは、燃料をインジェクタ８から噴射させて、吸気管２内で空気と混合させることで可燃性混合気を形成する処理である。
【００２１】
図３及び図４のフローチャートを参照して内燃機関の点火制御方法について説明する。
まず、点火出力タイミングに到達したら（ステップＳ１０１）、回転数算出部６１がメモリに記憶されているエンジン回転数ＮＥを前回値ＮＥ＿Ｂとして記憶する（ステップＳ１０２）。この後、回転数算出部６１が現在のエンジン回転数ＮＥを算出する（ステップＳ１０３）。エンジン回転数ＮＥは、例えば、タイミングロータ１８に設けられた突起間の時間計測値の３６０ＣＡ分の合計を基にして計算することで得られる。なお、点火出力タイミングは、タイミングロータ１８に基準となる突起を１つ設けておき、この突起を検出したときを点火出力タイミングとみなすことで特定できる。エンジン１が４サイクルの単気筒の場合には、クランク軸１７が２回転するごとに点火出力タイミングが訪れる。
【００２２】
続いて、ステップＳ１０４以降で、制御装置４１が、エンジン回転数ＮＥに応じて、点火処理と失火処理の割合を決定する失火／点火判定値を設定する処理を実施する。以下において、制御装置４１は、エンジン回転数ＮＥが小さい領域から順番に、第０領域ＮＥＨ０、第１領域ＮＥＨ１、第２領域ＮＥＨ２、第３領域ＮＥＨ３に区分けし、段階的に失火率が高くなるように、かつ第３領域ＮＥＨ３で失火率が１００％になるように失火／点火判定値を設定する。
【００２３】
まず、ステップＳ１０４で、判定値設定部６５は、エンジン回転数ＮＥが第３領域ＮＥＨ３にあるか調べる。第３領域ＮＥＨ３は、エンジン１の排気量などにより異なるが、例えば、１３５００ｒｐｍ以上とする。エンジン回転数ＮＥが第３領域ＮＥＨ３にある場合（ステップＳ１０４でＹｅｓ）、第３領域ＮＥＨ３について予め登録されている第３の失火／点火判定値をセットする（ステップＳ１０５）。第３の失火／点火判定値では、例えば、失火判定値には上昇上限値ＤＦ１が用いられ、その値には例えば「０」がセットされる。点火判定値には、下降下限値ＤＮ１が用いられ、その値には「ＦＦ」、例えば「２５５」がセットされる。
【００２４】
ここで、上昇上限値ＤＦ１は、エンジン回転数ＮＥが連続して上昇する場合の連続回数
の上限値を規定するもので、後の処理で点火処理と失火処理を選択する際の閾値となる。下降下限値ＤＮ１は、エンジン回転数ＮＥが連続して下降する場合の連続回数の下限値を規定するもので、後の処理で点火処理と失火処理を選択する際の閾値となる。
なお、第３の失火／点火判定値は、上昇上限値ＤＦ１が「０」なので、失火率が１００％になる。なお、失火率１００％では、失火処理のみが行われ、点火処理は行われない。
【００２５】
これに対し、ステップＳ１０４で、エンジン回転数ＮＥが第３領域ＮＥＨ３にない場合には、ステップＳ１０６に進む。判定値設定部６５は、エンジン回転数ＮＥが第２領域ＮＥＨ２にあるか調べる。第２領域ＮＥＨ２は、エンジン１の排気量などにより異なるが、例えば、１３３００ｒｐｍ以上とする。エンジン回転数ＮＥが第２領域ＮＥＨ２にある場合（ステップＳ１０６でＹｅｓ）、第２領域ＮＥＨ２について予め登録されている第２の失火／点火判定値をセットする（ステップＳ１０７）。失火判定値には、上昇上限値ＤＦ１が用いられ、その値には例えば「１」がセットされる。点火判定値には、下降下限値ＤＮ１が用いられ、その値には例えば「１」がセットされる。
【００２６】
さらに、ステップＳ１０６で、エンジン回転数ＮＥが第２領域ＮＥＨ２にない場合には、ステップＳ１０８に進む。判定値設定部６５は、エンジン回転数ＮＥが第１領域ＮＥＨ１にあるか調べる。第１領域ＮＥＨ１は、エンジン１の排気量などにより異なるが、例えば、１３０００ｒｐｍ以上とする。エンジン回転数ＮＥが第１領域ＮＥＨ１にある場合（ステップＳ１０８でＹｅｓ）、第１領域ＮＥＨ１について予め登録されている第１の失火／点火判定値をセットする（ステップＳ１０９）。失火判定値には、上昇上限値ＤＦ１が用いられ、その値には例えば「３」がセットされる。点火判定値には、下降下限値ＤＮ１が用いられ、その値には例えば「１」がセットされる。
【００２７】
そして、ステップＳ１０８で、エンジン回転数ＮＥが第１領域ＮＥＨ１にない場合には、ステップＳ１１０に進む。このときのエンジン回転数ＮＥは第１領域ＮＥＨ１より小さい第０領域ＮＥＨ０となる。ステップＳ１１０では、判定値設定部６５が現在の失火／点火判定値をリセットする。このリセットにより、失火／点火判定値は、例えば、上昇上限値ＤＦ１に「２５５」がセットされ、下降下限値ＤＮ１に「２５５」がセットされる。さらに、エンジン回転数ＮＥが連続して上昇した回数を係数する上昇カウンタＣＵＰをリセットする（ステップＳ１１１）。同様に、エンジン回転数ＮＥが連続して下降した回数を計数する下降カウンタＣＤＷをリセットする（ステップＳ１１２）。そして、点火処理を実施し（ステップＳ１１３）、その後にここでの処理を抜ける。
【００２８】
なお、失火／点火判定値は、２種類以上であれば良い。また、各失火／点火判定値における上昇上限値ＤＦ１の値と、下降下限値ＤＮ１の値は、エンジン回転数ＮＥの上昇に伴って段階的に失火率が増加するように設定されていれば良く、前記の例に限定されない。また、失火／点火判定値を切り替えるエンジン回転数ＮＥも前記の例に限定されない。
【００２９】
次に、第１から第３の失火／点火判定値をセットした場合の処理について説明する。
ステップＳ１２０では、カウント部６３が、エンジン回転数ＮＥが上昇しているか調べる。すなわち、回転数変化方向判定部６２がエンジン回転数ＮＥの今回値ＮＥ＿Ｔと、前回値ＮＥ＿Ｂを比較し、今回値ＮＥ＿Ｔが前回値ＮＥ＿Ｂ以上であれば、エンジン回転数ＮＥが上昇していると判定する。この場合、ステップＳ１２１に進み、上昇カウンタＣＵＰをインクリメントし、さらに下降カウンタＣＤＷをリセットする（ステップＳ１２２）。これにより、点火出力タイミングごとに調べるエンジン回転数ＮＥが上昇し続けていた場合に、上昇カウンタＣＵＰの値のみが増加する。
【００３０】
一方、エンジン回転数ＮＥが上昇していない場合（ステップＳ１２０でＮｏ）、上昇カウンタＣＵＰをリセットし（ステップＳ１２３）、さらに下降カウンタＣＤＷをインクリ
メントする（ステップＳ１２４）。これにより、点火出力タイミングごとに調べるエンジン回転数ＮＥが下降し続けていた場合に、下降カウンタＣＤＷの値のみが増加する。
【００３１】
そして、ステップＳ１２１からステップＳ１２４までのいずれかの処理で、カウンタＣＵＰ、ＣＤＷの値を更新したら、ステップＳ１２５以降で、エンジン回転数ＮＥが連続して上昇した回数又は連続して下降した回数に応じて点火処理を実施するか、失火処理を実施するかを判定する。
【００３２】
まず、ステップＳ１２５では、処理選択部６６が上昇カウンタＣＵＰの値と予め定められた失火判定値とを比較する。上昇カウンタＣＵＰの値が失火判定値である上昇上限値ＤＦ１以上であれば（ステップＳ１２５でＹｅｓ）、上昇カウンタＣＵＰをリセットし（ステップＳ１２６）、その後に失火処理を実施する（ステップＳ１２８）。これに対し、上昇カウンタＣＵＰの値が失火判定値未満であれば（ステップＳ１２５でＮｏ）、ステップＳ１２７に進んで下降カウンタＣＤＷと予め定められた点火判定値を比較する。
【００３３】
ステップＳ１２７で、下降カウンタＣＤＷが点火判定値である下降下限値ＤＮ１未満であれば（ステップＳ１２７でＮｏ）、処理選択部６６が失火処理を選択し、出力部６４が失火処理を実施する（ステップＳ１２８）。これに対し、下降カウンタＣＤＷが点火判定値以上であれば（ステップＳ１２７でＹｅｓ）、下降カウンタＣＤＷをリセットし（ステップＳ１２９）、その後に処理選択部６６が点火処理を選択し、出力部６４が点火処理を実施する（ステップＳ１３０）。
【００３４】
次に、図５に示すタイミングチャートを参照して、失火／点火の制御と、これに伴う回転数の変化とについて説明する。
なお、横軸は時間を示す。縦軸は上から、上死点（ＴＤＣ）を検出したことを示す信号と、エンジン１の行程が配列されている。エンジン１の行程は、ＩＴが吸気行程を示し、ＣＭが圧縮行程、ＥＰが膨張行程、ＥＨが排気行程をそれぞれ示す。さらに、失火／点火判定値では、例えば、「１」は第１の失火／点火判定値が設定される領域を示す。また、点火出力は、点火処理を実施するタイミングに星印が、失火処理を実施するタイミングに×印を示している。さらに、エンジン回転数ＮＥと、上昇カウンタＣＵＰ並びに下降カウンタＣＤＷも順番に表示されている。
【００３５】
時刻ｔ０では、エンジン回転数ＮＥが第１領域下限回転数ＨＮＥＩＧＣ１以下なので、失火／点火判定値はリセットされたままになり、点火タイミングに到達するたびに点火処理が実施される。時刻ｔ０から時刻ｔ１に至るまでの間に、エンジン回転数ＮＥが第１領域下限回転数ＨＮＥＩＧＣ１を越えて、第１領域ＮＥＨ１に進入する。次の点火タイミングである時刻ｔ１では、エンジン回転数ＮＥが第１領域ＮＥＨ１であることから、第１の失火／点火判定値が設定される。さらに、エンジン回転数ＮＥが上昇していることから、上昇カウンタＣＵＰがカウントアップされて「１」になる。ここで、第１の失火／点火判定値では、上昇上限値ＤＦ１は「３」がセットされる。これに対し、上昇カウンタＣＵＰは前記のように「１」である。つまり、上昇カウンタＣＵＰの値が上昇上限値ＤＦ１である「３」未満である。さらに、エンジン回転数ＮＥが上昇中であることから、下降カウンタＣＤＷは「０」であり、第１の失火／点火判定値の上昇下限値は「１」なので、失火処理は実施されず、点火処理が実施される。
【００３６】
時刻ｔ２では、時刻ｔ１と同様の処理が実施され、点火処理が実施される。なお、エンジン回転数ＮＥが前回の値より上昇していることから、上昇カウンタＣＵＰがインクリメントされ、その値が「２」になる。
【００３７】
時刻ｔ３では、エンジン回転数ＮＥが前回の値より上昇していることから、上昇カウン
タＣＵＰがさらにインクリメントされ、その値が「３」になる。これにより、上昇カウンタＣＵＰの値が上昇上限値ＤＦ１以上になったので、失火処理が実施される。また、このときに、上昇カウンタＣＵＰがリセットされて、「０」に戻る。失火処理が実施されることで、エンジン回転数ＮＥが少し下がる。
【００３８】
時刻ｔ４では、エンジン回転数ＮＥが前回の値より下降しているので、下降カウンタＣＤＷがカウントアップされて「１」になる。ここで、第１の失火／点火判定値では、下降下限値ＤＮ１に「１」がセットされている。つまり、下降カウンタＣＤＷは、下降下限値ＤＮ１以上であるので、点火処理出力が実施される。これにより、エンジン回転数ＮＥが上昇に転じる。なお、この際、下降カウンタＣＤＷはリセットされ、「０」に戻される。
【００３９】
この後、点火タイミングに到達するたびに同様の処理が実施される。そして、時刻ｔ５ではエンジン回転数ＮＥが第２領域下限回転数ＨＮＥＩＧＣ２以上になって、第２の失火／点火判定値が採用される。このとき、エンジン回転数ＮＥは前回値より上昇しているので、上昇カウンタＣＵＰは「３」になる。ここで、第２の失火／点火判定値では、上昇上限値ＤＦ１は「１」がセットされているので、上昇カウンタＣＵＰの値が上昇上限値ＤＦ１以上である。このため、失火処理が実施される。なお、この際、上昇カウンタＣＵＰはリセットされ、「０」に戻される。
【００４０】
失火処理が実施されることで、エンジン回転数ＮＥが下降に転じ、時刻ｔ６では、第１領域ＮＥＨ１まで下がる。これにより、再び、第１の失火／点火判定値が採用される。時刻Ｔ４では、エンジン回転数ＮＥが前回値より下がっているので、下降カウンタＣＤＷがカウントアップされて「１」がセットされる。第１の失火／点火判定値の下降下限値ＤＮ１が「１」なので、下降カウンタＣＤＷが下降下限値ＤＮ１以上となって、点火処理が実施される。この際に、下降カウンタＣＤＷはリセットされ「０」に戻る。
【００４１】
時刻ｔ７では、第２の失火／点火判定値が用いられる。エンジン回転数ＮＥが前回値より上昇していることから、上昇カウンタＣＵＰは「１」になる。この値は、第２の失火／点火判定値の上昇上限値ＤＦ１以上なので、失火処理が実施される。また、この際に、上昇カウンタＣＵＰがリセットされて「０」に戻る。
時刻ｔ８では、エンジン回転数ＮＥが下降していることから、下降カウンタＣＤＷが「１」になる。この値は、第２の失火／点火判定値の下降下限値ＤＮ１以上なので、点火処理が実施される。また、この際に、下降カウンタＣＤＷがリセットされて「０」に戻る。以降は、時刻ｔ９まで、時刻ｔ７と同様の処理と、時刻ｔ８と同様の処理が交互に繰り返し実施される。
【００４２】
時刻ｔ９では、エンジン回転数ＮＥが第３領域下限回転数ＨＮＥＩＧＣ３以上となり、第３領域ＮＥＨ３に進入する。これに伴って、第３の失火／点火判定値を用いた制御が実施される。エンジン回転数ＮＥは上昇中なので、上昇カウンタＣＵＰが「１」になり、上昇上限値ＤＦ１の「０」より大きいので、失火処理が実施される。この際に、上昇カウンタＣＵＰがリセットされて「０」に戻る。
時刻ｔ１０では、エンジン回転数ＮＥが下降しつつ、第２領域ＮＥＨ２に入っている。このため、時刻ｔ８と同様の処理が実施され、点火処理が行われる。
【００４３】
以降は、時刻ｔ１１まで同様の処理が実施される。時刻ｔ１１では、第３の失火／点火判定値を用いた制御が実施される。エンジン回転数ＮＥは下降中なので、下降カウンタＣＤＷが「１」になり、下降下限値ＤＮ１の「２５５」より小さいので、失火処理が実施される。
このように、この実施の形態では、回転数領域を移行した場合においても、エンジン回転数変化方向に応じて、エンジン回転数ＮＥが上昇していれば失火処理を実施し、エンジ
ン回転数ＮＥが下降していれば点火処理を実施し、エンジン回転数ＮＥの変化を抑制するように失火/点火制御が実施される。よって車体の衝撃が発生せず、乗車感覚を損なうことが無い。
【００４４】
以上、説明したように、この内燃機関の制御装置によれば、エンジン回転数ＮＥが連続して上昇中であるか、連続して下降中であるかに応じて失火処理と点火処理を選択するようにしたので、運転状態に応じてエンジン回転数ＮＥの変化を抑制でき、車体に衝撃が発生せず乗車感覚を損なうことが無い。
【００４５】
また、点火判定値と失火判定値は、エンジン回転数ＮＥの上昇に応じて段階的に変化するようにしたので、データ量を少なくできる。
さらに、点火判定値は、エンジン回転数ＮＥが高くなるほど失火処理を実施させる上昇上限値ＤＦ１が小さくなるように設定したので、エンジン回転数ＮＥが高いほど失火率を高くできる。失火判定値は、エンジン回転数ＮＥが低くなるほど点火処理を実施させる下降下限値ＤＮ１が小さくなるように設定したので、エンジン回転数ＮＥの下降時にはエンジン回転数ＮＥが低いほどエンジン１を点火し易くなる。このため、エンジン回転数ＮＥの変化を抑制できる。これらのことから、失火処理時にエンジン回転数ＮＥの変化が大きくなる単気筒エンジンにおいても、エンジン回転数ＮＥの変化を抑制できる。
【００４６】
（第２の実施の形態）
本発明の第２の実施の形態について図面を参照して詳細に説明する。なお、第１の実施の形態と同じ構成要素には同一の符号を付してある。また、重複する説明は省略する。
【００４７】
図２に示す制御装置１において、ＣＰＵ５３のカウント部６３は、エンジン回転数の上昇量、又は下降量をカウントする。処理選択部６６は、エンジン回転数の上昇量又は下降量と失火判定値又は点火判定値を比較して失火処理と点火処理のいずれかを選択する。
【００４８】
図６及び図７のフローチャートを参照して内燃機関の点火制御方法について説明する。
まず、点火出力タイミングに到達したら（ステップＳ１０１）、ＣＰＵ５３の回転数算出部６１がメモリに記憶されているエンジン回転数ＮＥを前回値ＮＥ＿Ｂとして記憶する（ステップＳ１０２）。この後、回転数算出部６１が現在のエンジン回転数ＮＥを算出する（ステップＳ１０３）。さらに、エンジン回転数ＮＥの変化量を算出する（ステップＳ１０３Ｂ）。変化量は、エンジン回転数ＮＥの前回値ＮＥ＿ＢからステップＳ１０３で算出したエンジン回転数ＮＥの今回値を引くことで算出できる。
【００４９】
続いて、第１の実施の形態と同様に、ステップＳ１０４からステップＳ１１０までを実施し、エンジン回転数ＮＥに応じて、点火処理と失火処理の割合を決定する失火／点火判定値を設定する。ステップＳ１０４では、判定値設定部６５が第３の失火／点火判定値を設定する。失火判定値には、回転数上限値ＤＦ２が用いられ、その値には例えば「０」（ｒｐｍ）がセットされる。点火判定値には、回転数下限値ＤＮ２が用いられ、その値には例えば「１８０００」（ｒｐｍ）がセットされる。
【００５０】
ここで、回転数上限値ＤＦ２は、エンジン回転数ＮＥが連続して上昇する場合に、その間のエンジン回転数ＮＥの上昇量の積算値の上限を規定するもので、後の処理で点火処理と失火処理を選択する際の閾値となる。また、回転数下限値ＤＮ２は、エンジン回転数ＮＥが連続して下降する場合に、その間のエンジン回転数ＮＥの下降量の積算値の下限を規定するもので、後の処理で点火処理と失火処理を選択する際の閾値となる。
また、ステップＳ１０６では、判定値設定部６５が第２の失火／点火判定値を設定する。失火判定値には、回転数上限値ＤＦ２が用いられ、その値には例えば「５０」（ｒｐｍ）がセットされる。点火判定値には、回転数下限値ＤＮ２が用いられ、その値には例えば
「５０」（ｒｐｍ）がセットされる。
【００５１】
ステップＳ１０８では、判定値設定部６５が第１の失火／点火判定値を設定する。失火判定値には、回転数上限値ＤＦ２が用いられ、その値には例えば「２００」（ｒｐｍ）がセットされる。点火判定値には、回転数下限値ＤＮ２が用いられ、その値には例えば「５０」（ｒｐｍ）がセットされる。
そして、ステップＳ１０９で失火／点火判定値をリセットしたときの回転数上限値ＤＦ２は、例えば「１８０００」（ｒｐｍ）とし、回転数下限値ＤＮ２は、例えば、「１８０００」（ｒｐｍ）とする。
【００５２】
なお、失火／点火判定値は、２種類以上であれば良い。また、各失火／点火判定値における回転数上限値ＤＦ２の値と、回転数下限値ＤＮ２の値は、エンジン回転数ＮＥの上昇に伴って段階的に失火率が増加するように設定されていれば良く、前記の例に限定されない。また、失火／点火判定値を切り替えるエンジン回転数ＮＥも前記の例に限定されない。
【００５３】
また、ステップＳ１０９から進むステップＳ１１０Ｂでは、後述するエンジン回転数上昇量がカウント部６３によってリセットされる。また、続くステップＳ１１１では、エンジン回転数下降量がリセットされる。リセット後の回転数上限量ＤＵＰ及び回転数下降量ＤＤＷの値は、例えば「０」（ｒｐｍ）とする。
【００５４】
ステップＳ１２０でエンジン回転数ＮＥが上昇していた場合、ステップＳ１２１Ｂに進み、回転数上昇量ＤＵＰを算出する。具体的には、回転数上昇量ＤＵＰの前回値にステップＳ１０２Ｂで算出したエンジン回転数ＮＥの変化量を加算する。さらに、回転数下降量ＤＤＷをリセットする（ステップＳ１２２Ｂ）。これにより、点火出力タイミングごとに調べるエンジン回転数ＮＥが上昇し続けていた場合に、回転数上昇量ＤＵＰの値のみが増加する。
これに対し、ステップＳ１２０でエンジン回転数ＮＥが下降していた場合、ステップＳ１２３Ｂに進み、回転数上昇量ＤＵＰをリセットする。さらに、回転数下降量ＤＤＷを算出する（ステップＳ１２４Ｂ）。具体的には、回転数下降量ＤＤＷの前回値にステップＳ１０２Ｂで算出したエンジン回転数ＮＥの変化量を加算する。これにより、点火出力タイミングごとに調べるエンジン回転数ＮＥが下降し続けていた場合に、回転数下降量ＤＤＷの値のみが増加する。
【００５５】
次に、エンジン回転数ＮＥの上昇量や下降量に応じて点火処理を実施するか、失火処理を実施するかを判定する。まず、ステップＳ１２５で回転数上昇量ＤＵＰの値が失火判定値である回転数上限値ＤＦ２以上であれば、回転数上昇量ＤＵＰをリセットし（ステップＳ１２６Ｂ）、その後に失火処理を実施する（ステップＳ１２８）。これに対し、回転数上昇量ＤＵＰの値が失火判定値未満であれば（ステップＳ１２５でＮｏ）、ステップＳ１２７に進んで回転数下降量ＤＤＷと予め定められた点火判定値である回転数下限値ＤＮ２を比較する。
【００５６】
ステップＳ１２７で、回転数下降量ＤＤＷが点火判定値（回転数下限値ＤＮ２）未満であれば（ステップＳ１２７でＮｏ）、失火処理を実施する（ステップＳ１２８）。これに対し、ステップＳ１２７で回転数下降量ＤＤＷが回転数下限値ＤＮ２以上であれば、回転数下降量ＤＤＷをリセットし（ステップＳ１２９Ｂ）、その後に点火処理を実施する（ステップＳ１３０）。
【００５７】
次に、図８に示すタイミングチャートを参照して、失火／点火の制御と、これに伴う回転数の変化とについて説明する。なお、縦軸のＤＵＰには、回転数上昇量を示すと共に、
回転数上限値ＤＦ２が重ねて表示されている。ＤＤＷには、回転数下降量を示すと共に、回転数下限値ＤＮ２が重ねて表示されている。
【００５８】
時刻ｔ０では、エンジン回転数ＮＥが第１領域下限回転数ＨＮＥＩＧＣ１以下なので、失火／点火判定値はリセットされたままになり、点火タイミングに到達するたびに点火処理が実施される。時刻ｔ０から時刻ｔ１に至るまでの間に、エンジン回転数ＮＥが第１領域下限回転数ＨＮＥＩＧＣ１を越えて、第１領域ＮＥＨ１に進入する。
【００５９】
次の点火タイミングである時刻ｔ１では、エンジン回転数ＮＥが第１領域ＮＥＨ１であることから、第１の失火／点火判定値が設定される。さらに、エンジン回転数ＮＥが上昇していることから、回転数上昇量ＤＵＰに例えば６０ｒｐｍが加算される。この段階における回転数上昇量ＤＵＰは、第１の失火／点火判定値の失火判定値である回転数上限値ＤＦ２（例えば、２００ｒｐｍ）より小さいので、点火処理が実施される。この後は、時刻ｔ１と同様の処理が行われ、回転数上昇量ＤＵＰの値が段階的に加算される。
【００６０】
続く時刻ｔ３では、回転数上昇量ＤＵＰがさらに加算されて２４０ｒｐｍになる。この値は、回転数上限値ＤＦ２以上なので、失火処理が実施される。失火処理の実施と共に、回転数上昇量ＤＵＰの値が「０」にリセットされる。
失火処理が実施されることで、エンジン回転数ＮＥが減少するので、時刻ｔ４では、回転数下降量ＤＤＷに「１５０」（ｒｐｍ）が代入される。一方、回転数上昇量ＤＵＰは「０」のままである。回転数下降量ＤＤＷの値は、回転数下限値ＤＮ２（例えば、５０ｒｐｍ）以上なので、点火処理が実施される。点火処理の実施と共に、回転数下降量ＤＤＷの値が「０」にリセットされる。
【００６１】
この後は、エンジン回転数ＮＥの上昇に伴って点火処理が１回実施される。そして、時刻ｔ５の段階で、回転数上昇量ＤＵＰが回転数上限値ＤＦ２以上になって、失火処理が実施される。失火処理の実施と共に、回転数上昇量ＤＵＰの値が「０」にリセットされる。この後、エンジン回転数ＮＥの下降量が回転数下限値ＤＮ２以上になって点火処理が１回実施される。
【００６２】
時刻ｔ６では、エンジン回転数ＮＥが第２領域下限回転数ＨＮＥＩＧＣ２を越えて、第２領域ＮＥＨ２に到達する。これに伴って、第２の失火／点火判定値がセットされる。エンジン回転数ＮＥは上昇しているので、回転数上昇量ＤＵＰを用いて失火／点火の判定を行う。第２領域ＮＥＨ２における回転数上限値ＤＦ２は、「５０」（ｒｐｍ）なので、回転数上昇量ＤＵＰの方が大きい。このため、失火処理が実施される。これと共に、回転数上昇量ＤＵＰの値が「０」にリセットされる。失火処理の実施によってエンジン回転数ＮＥが下降する。
【００６３】
時刻ｔ７では、エンジン回転数ＮＥが第１領域ＮＥＨ１まで下がるので、第１の失火／点火判定値を用いた制御が行われる。この場合は、回転数下降量ＤＤＷが回転数下限値ＤＮ２を上回るので、点火処理が実施され、エンジン回転数ＮＥが上昇に転じる。この場合も、回転数下降量ＤＤＷの値は、リセットされる。
時刻ｔ８から後は、再び第２の失火／点火判定値を用いた制御が行われる。エンジン回転数の上昇量の下降量に応じて点火処理と失火処理のいずれかが実施される。この例では、失火率は５０％より低くなって、エンジン回転数ＮＥは上昇傾向になる。
【００６４】
時刻ｔ９では、エンジン回転数ＮＥが第３領域下限回転数ＨＮＥＩＧＣ３を越えて、第３領域ＮＥＨ３に到達する。これに伴って、第３の失火／点火判定値がセットされる。エンジン回転数ＮＥは上昇しているので、回転数上昇量ＤＵＰを用いて失火／点火の判定を行う。第３領域ＮＥＨ３における回転数上限値ＤＦ２は、「０」（ｒｐｍ）なので、回転
数上昇量ＤＵＰの方が大きくなる。このため、失火処理が実施される。これと共に、回転数上昇量ＤＵＰの値が「０」にリセットされる。失火処理の実施によってエンジン回転数ＮＥが下降する。
【００６５】
時刻ｔ７では、エンジン回転数ＮＥが第２領域ＮＥＨ２まで下がるので、第２の失火／点火判定値を用いた制御が行われる。この場合は、回転数下降量ＤＤＷが回転数下限値ＤＮ２を上回るので、点火処理が実施され、エンジン回転数ＮＥが上昇に転じる。この場合も、回転数下降量ＤＤＷの値は、リセットされる。
時刻ｔ１０以降は、前記の処理が繰り返される。このように、エンジン回転数上昇量、及び下降量に応じて、エンジン回転数ＮＥが上昇していれば失火を実施し、エンジン回転数ＮＥが下降していれば点火を実施する。エンジン回転数変化量に応じて精度良くエンジン回転数の変化を抑制するように失火/点火制御が実施されることから、良好な乗車感覚を確保することができる。
【００６６】
以上、説明したように、この内燃機関の制御装置によれば、点火判定値と失火判定値をエンジン回転数ＮＥの増大に応じて段階的に変化し、かつエンジン回転数ＮＥの上昇するほど失火処理を実施させる回転数上限値ＤＦ２が小さくなるように設定した。このため、エンジン回転数ＮＥの上昇中には、エンジン回転数ＮＥが高いほど失火率が高くなる。また、エンジン回転数ＮＥの下降するほど点火処理を実施させる回転数下限値ＤＮ２が小さくなるように設定したので、エンジン回転数ＮＥが下降中には、エンジン回転数ＮＥが低いほど点火処理が実施され易くなる。このため、エンジン回転数ＮＥが高い領域では、失火率が高く、エンジン回転数ＮＥが低い領域では失火率が低くなるので、エンジン回転数ＮＥの変化を抑制できる。このため、失火処理時にエンジン回転数ＮＥの変化が大きくなる単気筒エンジンにおいても、エンジン回転数ＮＥの変化を抑制できる。
【００６７】
ここで、制御装置４１を用いてエンジン１の制御を行ったときの実験結果を図９に示す。なお、横軸は時間（ｍｓｅｃ）と、点火出力を示す。点火出力は、下向きのパルスが可燃性混合気に点火したことを示し、×印は失火制御を行ったことを示す。縦軸はエンジン回転数を示す。
エンジン回転数の変化方向、即ち上昇、下降と、エンジン回転数変化量に応じて失火／点火制御を実施した。その結果、エンジン回転数ＮＥの変化量を小さく保つことができた。
【００６８】
なお、本発明は、前記の各実施の形態に限定されずに広く応用することができる。
例えば、本実施の形態は、多気筒エンジンに適用することも可能である。また、内燃機関は、図１に示すエンジン１に限定されない。
【符号の説明】
【００６９】
１      エンジン（内燃機関）
１７      クランク軸（出力軸）
４１      制御装置
５３      ＣＰＵ
６１      回転数算出部
６２      回転数変化方向判定部
６３      カウント部
６４      出力部
６５      判定値設定値部
６６      処理選択部
【図１】
2011026978.tif 000003
【図２】
2011026978.tif 000004
【図３】
2011026978.tif 000005
【図４】
2011026978.tif 000006
【図５】
2011026978.tif 000007
【図６】
2011026978.tif 000008
【図７】
2011026978.tif 000009
【図８】
2011026978.tif 000010
【図９】
2011026978.tif 000011