(57)【要約】【課題】　未燃ガスの排出を抑制するとともにエンジン始動性を向上させる。【解決手段】　マイコン８は、クランク角信号に対応したクランクカウンタを更新するとともに、クランク角センサ１及びカム角センサ４の出力信号に基づいて準位置（第１、第４気筒のＴＤＣ）を検知する。マイコン８は、ＲＯＭ内の参照テーブルを用いてエンジン回転停止時のクランクカウンタのカウント値に応じた特定気筒（予備噴射気筒）を選択しバックアップＲＡＭに記憶保持する。このとき、特定気筒はエンジン回転停止時のクランク角度とそのクランク角度に続く次の基準位置との間に吸気行程を持つ気筒となる。又、マイコン８は、エンジン回転開始時にバックアップＲＡＭ内の特定気筒を読み出し、当該特定気筒に対して予備噴射を実施する。エンジン回転開始後の、最初の基準位置の検出後は、マイコン８は燃料噴射を気筒毎の独立噴射に移行するとともに、気筒毎の点火処理を開始する。【選択図】　　　　図１
2004003511.tif 000002
【特許請求の範囲】
【請求項１】
複数の気筒を有するエンジンに用いられるものであって、
　前記エンジンのクランク角度を検出するクランク角度検出手段と、
　所定のクランク角度に設定された基準位置を検出する基準位置検出手段と、
　前記エンジンの回転開始後に前記基準位置検出手段により検出された最初の基準位置にて、前記基準位置検出手段により検出された基準位置に基づいた燃料噴射制御及び点火制御を開始するエンジン制御手段と、
　前記クランク角度検出手段による検出結果に基づいて、前記エンジンの回転停止時のクランク角度を検出する停止クランク角度検出手段と、
　前記停止クランク角度検出手段により検出された停止クランク角度と、その停止クランク角度に続く次の基準位置との間に吸気行程の少なくとも初期が含まれる気筒を予備噴射気筒とする予備噴射気筒判別手段とを備え、
　前記エンジン制御手段は、前記エンジンの回転開始後、前記最初の基準位置が検出されるまでの間に、前記予備噴射気筒に対して燃料を噴射するとともに、前記最初の基準位置が検出されるまでは点火制御を行わないことを特徴とするエンジン制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
　本発明は、多気筒エンジンに用いられるエンジン制御装置に関するものである。
【背景技術】
【０００２】
　この種の燃料噴射、特に独立噴射を行うエンジン制御装置では、エンジンの気筒判別が不可欠であり、エンジンの回転開始時においては基準位置の検出による気筒判別が終了するまでは燃料噴射（独立噴射）を行うことができない。そこで、従来から提案されているエンジン制御装置としては、エンジンの回転開始後の最初の気筒判別が行われるまで燃料噴射を行わず気筒判別後に独立噴射を開始する装置と、エンジンの回転開始に同期して全気筒に対して予備噴射を行い気筒判別後に独立噴射に移行する装置とに大別することができる。なお、後者の制御装置は、前者の制御装置を改善したものとして提案されており、例えば特開平１−１７０７３５号公報や特開平３−５４３３７号公報が公知となっている。
【０００３】
　以下、従来のエンジン制御装置の制御動作について、エンジンの回転開始直後の動作を示した図１４のタイミングチャートを用いて説明する。なお、図１４は４サイクル６気筒エンジンの事例を示し、第１気筒（＃１）〜第６気筒（＃６）は＃１→＃２→＃３→＃４→＃５→＃６→＃１の順に点火される。クランク角信号ＮＥは３０°ＣＡ毎に出力され、基準位置信号Ｇ１，Ｇ２はそれぞれ第４気筒，第１気筒のＴＤＣ直前に出力される。
【０００４】
　さて、時間ｔ１１でエンジンの回転が開始されると、クランク角信号ＮＥ及び基準位置信号Ｇ１，Ｇ２の誤検出防止のためのマスク期間（時間ｔ１１〜ｔ１２）の経過後、時間ｔ１３で最初の基準位置信号Ｇ１が検出される。このとき、基準位置信号Ｇ１に基づいて第４気筒が判別される。そして、時間ｔ１４では、最初に気筒判別された時間ｔ１３の後に吸気行程を持つ第２気筒に対して燃料噴射信号が送られ、以降、＃２→＃３→＃４・・・の気筒順序で独立噴射が実施される。
【０００５】
　又、エンジンの回転開始に同期して全気筒に対して予備噴射を実施する場合には、図１４に破線で示すように時間ｔ１１で全気筒同時に燃料噴射され、それ以後、時間ｔ１４で独立噴射に移行される。
【０００６】
　一方で、エンジンの回転開始後の最初の点火信号は、時間ｔ１３の最初の気筒判別後に設定される。つまり、点火時期を各気筒のＴＤＣとした場合、時間ｔ１５の点火信号の立ち下がりエッジで最初の火花が発生する（この時、図１４での最初の点火気筒は、第５気筒となる）。そして、以降、＃５→＃６→＃１・・・の気筒順序で点火が実施される。
【特許文献１】特開平０１−１７０７３５号公報
【特許文献２】特開平０３−０５４３３７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
　ところが、上記従来のエンジン制御装置では、以下に示す問題があった。先ず、気筒判別前（図１４の時間ｔ１３以前）には燃料噴射を一切行わない場合、時間ｔ１４（第４気筒のＴＤＣ）で独立噴射が開始され、このときの最初の噴射気筒は第２気筒となる。そして、この第２気筒に吸入された燃料は、第２気筒のＴＤＣである時間ｔ１６にて点火される。即ち、時間ｔ１６で初爆（初めての爆発）が起こることになる。つまり、時間ｔ１３〜ｔ１６の期間には、第５，第６，第１気筒に点火が行われるがこれらの気筒は燃料が未吸入であるため初爆を得ることができず、無駄火となる。その結果、エンジンの回転開始後、２回転（時間ｔ１１〜ｔ１６の期間）は初爆がなく、エンジンの始動性の悪化を招くという問題が生じる。
【０００８】
　又、エンジンの回転開始時に全気筒に対して予備噴射する場合には、時間ｔ１５で予備噴射による吸入燃料に点火され初爆が起こるとともに、後続の第６，第１気筒でも予備噴射による吸入燃料にて爆発が起こる。従って、上述した前者の場合に比べてエンジンの始動性が格段に向上する。しかし、この場合には、予備噴射される全気筒のうち第２，第３，第４気筒の吸入燃料は点火されることなく排気されることになり、未燃ガスの排出という問題が生じる。
【０００９】
　本発明は、上記問題に着目してなされたものであって、その目的とするところは、未燃ガスの排出を抑制するとともにエンジンの始動性を向上させることができるエンジン制御装置を提供することにある。
【課題を解決するための手段】
【００１０】
　上記目的を達成するために、この発明のエンジン制御装置は、複数の気筒を有するエンジンに用いられるものであって、エンジンのクランク角度を検出するクランク角度検出手段と、所定のクランク角度に設定された基準位置を検出する基準位置検出手段と、エンジンの回転開始後に前記基準位置検出手段により検出された最初の基準位置にて、基準位置検出手段により検出された基準位置に基づいた燃料噴射制御及び点火制御を開始するエンジン制御手段と、クランク角度検出手段による検出結果に基づいて、エンジンの回転停止時のクランク角度を検出する停止クランク角度検出手段と、停止クランク角度検出手段により検出された停止クランク角度と、その停止クランク角度に続く次の基準位置との間に吸気行程の少なくとも初期が含まれる気筒を予備噴射気筒とする予備噴射気筒判別手段とを備え、エンジン制御手段は、前記エンジンの回転開始後、最初の基準位置が検出されるまでの間に、予備噴射気筒に対して燃料を噴射するとともに、最初の基準位置が検出されるまでは点火制御を行わないことを要旨とするものである。
【発明を実施するための最良の形態】
【００１１】
　　（実施例１）
【００１２】
　以下、この発明のエンジン制御装置を火花点火式の４サイクル６気筒エンジンに具体化した第１実施例について、図面に従って説明する。
　図１は、本実施例におけるエンジン制御装置の構成を概略的に示した図である。図１において、クランク角センサ１は、エンジンのクランク軸に固定されたクランク角ロータ２とマグネット式のピックアップコイル３とから構成されている。クランク角ロータ２の外周には１０°ＣＡ（クランク角）毎に歯２ａが設けられ、その一部には歯２ａの２個分を欠落させた欠歯部２ｂが設けられている。なお、本実施例では、前記クランク角センサ１によりクランク角度検出手段が構成されている。
【００１３】
　又、カム角センサ４は、エンジンのクランク軸の１回転で１／２回転するカム軸に固定されたカム角ロータ５とマグネット式のピックアップコイル６とから構成されている。カム角ロータ５の外周には１個の突起５ａが設けられている。なお、本実施例では、前記カム角センサ４により基準位置検出手段が構成されている。
【００１４】
　クランク角センサ１及びカム角センサ４には波形整形回路７が接続されており、同波形整形回路７は両センサ１，４の出力信号を図２に示す如く所定のしきい値にて波形整形して２値のパルス信号を生成する。即ち、波形整形回路７はクランク角センサ１の出力信号に応じて１０°ＣＡ毎（欠歯部２ｂを除く部位）のクランク角信号ＮＥを生成するとともに、カム角センサ４の出力信号に応じて７２０°ＣＡ毎の基準位置信号Ｇを生成する。
【００１５】
　又、波形整形回路７にはマイクロコンピュータ（以下、マイコンと略す）８が接続されており、同マイコン８は波形整形回路７からのクランク角信号ＮＥ及び基準位置信号Ｇを入力して３６０°ＣＡ毎に基準位置を検知する。マイコン８は、ＣＰＵ（中央演算処理装置），ＲＯＭ（リードオンリメモリ），ＲＡＭ（ランダムアクセスメモリ），バックアップＲＡＭ，入出力（Ｉ／Ｏ）ポート等からなる周知の論理演算回路である。そして、マイコン８は、クランク角信号ＮＥに基づいてエンジン回転数を検知する。又、マイコン８にはセンサ群９から出力された信号が入力される。このセンサ群９は、吸気圧センサ１０、水温センサ１１等からなり、マイコン８は各センサからの検出信号に基づいて吸気圧、水温等を検知する。
【００１６】
　一方、第１気筒（＃１）〜第６気筒（＃６）の吸気管（図示略）にはインジェクタ１２Ａ〜１２Ｆが配設されており、マイコン８は前記各種センサの検出結果に基づいてインジェクタ１２Ａ〜１２Ｆによる燃料噴射量を演算し、同演算信号（燃料噴射信号）にてインジェクタ１２Ａ〜１２Ｆを駆動させる。これにより、インジェクタ１２Ａ〜１２Ｆは所定の気筒順（＃１→＃２→＃３→＃４→＃５→＃６→＃１の順）に独立噴射を実行する。又、イグナイタ１３は各気筒の点火プラグ（図示略）を駆動するものであって、マイコン８は前記各種センサの検出結果に基づいて点火信号ＩＧＴを求め、イグナイタ１３に出力する。これにより、点火プラグは点火信号ＩＧＴに基づき所定の気筒順（インジェクタと同様の順序）に駆動され、火花が発生する。
【００１７】
　又、マイコン８には、キースイッチ１５を介してバッテリ１４が接続されている。キースイッチ１５は「ＯＦＦ」，「ＯＮ」，「ＳＴＡＲＴ」の切換位置を有している。そして、キースイッチ１５が図示しないキーによって「ＯＦＦ」位置から「ＯＮ」位置に切り換えられると、マイコン８にバッテリ１４から電力が供給されてマイコン８が起動し、マイコン８内のＣＰＵがＲＯＭ内の各種制御プログラムを実行する。又、キースイッチ１５が「ＳＴＡＲＴ」位置に切り換えられると、マイコン８への電力供給に加えて、バッテリ１４からスタータモータ１６に電力が供給され、停止状態にあるエンジンに初期回転が付与される。
【００１８】
　本実施例では、マイコン８により、第１のエンジン制御手段、停止クランク角度検出手段、予備噴射気筒判別手段及び第２のエンジン制御手段が構成されている。
【００１９】
　次に、本実施例のエンジン制御装置の作用について、図３〜図１０を用いて説明する。なお、図３は各気筒の独立噴射処理及び点火処理の制御ルーチンを示したフローチャートであり、マイコン８はクランク角信号ＮＥのエッジ検出毎に図３のルーチンを起動する。図４及び図５は図３のサブルーチンを示したフローチャートである。又、図６及び図７はエンジンの回転開始時における予備噴射処理に係る制御ルーチンを示したフローチャートであり、マイコン８は所定時間毎（例えば、１００ｍｓ毎）に図６，図７のルーチンを起動する。さらに、図８は予備噴射のための気筒情報を記憶した参照テーブル、図９は図８の参照テーブルを説明するための図、図１０はマイコン８の制御動作を説明するためのタイミングチャートである。
【００２０】
　さて、図３のルーチンが起動されると、マイコン８は先ずステップ１００でクランクカウンタの更新処理を実行する（これは、図４のサブルーチンに相当する）。なお、クランクカウンタとは、エンジンの回転に伴うクランク角度に対応してカウントアップされるものであって、図４のサブルーチンに示す如くクランク角信号ＮＥのエッジ３回に１回の割合で更新され、第１気筒，第４気筒のＴＤＣで所定の値にセットされる。
【００２１】
　詳しくは、図４において、マイコン８は先ずステップ２００でエッジカウンタｎを「１」インクリメントし（エッジカウンタｎはクランク角信号ＮＥのエッジ検出毎にカウントされる）、ステップ２１０でエッジカウンタｎが「３」以上であるか否かを判別する。
【００２２】
　そして、ｎ≧３であれば、マイコン８はステップ２２０に移行してエッジカウンタｎを「０」にクリアした後、ステップ２３０に移行する。ステップ２３０では、マイコン８はクランクカウンタのカウント値を「１」インクリメントした値に更新し、続くステップ２４０に移行する。このとき、クランクカウンタのカウント値としては、２桁の１６進数が用いられており、以後の説明ではこのカウント値を（××）１６のように記載する。よって、クランクカウンタがマイコン８への電源投入時に（００）１６に初期化されるとすれば、このカウント値はマイコン８の起動後、（００）１６，（０１）１６，（０２）１６・・・のようにカウントされる。
【００２３】
　一方、ステップ２１０でｎ＜３であれば、マイコン８はそのままステップ２４０に移行する。以上のように、ステップ２００〜２３０の処理によればクランク角信号ＮＥのエッジ３回に１回の割合（３０°ＣＡに１回の割合）でクランクカウンタがインクリメントされることになる。
【００２４】
　その後、マイコン８はステップ２４０で現在のクランク角度が欠歯位置（クランク角ロータ２の欠歯部２ｂの位置）に達したか否かを判別する。具体的には、マイコン８は、クランク角信号ＮＥのエッジ間の所要時間Ｔｎ　（図２参照）を計測し、前回のエッジ間の所要時間Ｔｎ−１　と今回のエッジ間の所要時間Ｔｎ　とを比較する。そして、マイコン８は、例えばＴｎ　＞２．５・Ｔｎ−１　が成立した場合に欠歯位置であるとみなしてステップ２４０を肯定判別し、ステップ２５０に移行する。又、ステップ２４０が否定判別された場合には、マイコン８はそのまま本ルーチンを終了する。
【００２５】
　ステップ２５０では、マイコン８は基準位置信号Ｇのエッジが検出されたか否かを判断する。そして、基準位置信号Ｇのエッジが検出されていれば、マイコン８はステップ２６０でクランクカウンタを（００）１６にセットした後、本ルーチンを終了する。又、基準位置信号Ｇのエッジが検出されていなければ、マイコン８はステップ２７０でクランクカウンタを（１０）１６にセットした後、本ルーチンを終了する。
【００２６】
　要するに、欠歯位置（クランク角ロータ２の欠歯部２ｂ）は、３６０°ＣＡ毎（第１，第４気筒のＴＤＣ直前）に検出され、基準位置信号Ｇのエッジは７２０°ＣＡ毎（第１気筒のＴＤＣ直前）に検出される。従って、ステップ２４０，２５０が共に肯定判別されることで第１気筒のＴＤＣを検出することができ、ステップ２４０が肯定判別されるとともにステップ２５０が否定判別されることで第４気筒のＴＤＣを検出することができる。第１気筒のＴＤＣ，第４気筒のＴＤＣはエンジンの回転に伴う基準位置となる。そして、第１気筒のＴＤＣ，第４気筒のＴＤＣではクランクカウンタが常に（００）１６，（１０）１６にセットされることになり、クランクカウンタのカウント値と実際のクランク角度とのズレが防止される。
【００２７】
　さて、図３のルーチンの説明に戻ると、マイコン８はステップ１００の処理後、ステップ１１０に移行しフラグＦが「０」であるか否かを判別する。なお、フラグＦはエンジンの回転開始時に「０」となり、エンジンの回転開始後の第１回目の点火処理及び燃料噴射処理が終了した時点で「１」にセットされるものである。そして、Ｆ＝１であれば、マイコン８はステップ１２０に移行し、図５のサブルーチンに従い通常運転時の点火処理及び燃料噴射処理を実行する。
【００２８】
　図５のルーチンでは、マイコン８はステップ３００で現在のクランク角度がいずれかの気筒のＴＤＣであるか否かを判別し、どの気筒のＴＤＣでもなければ点火処理及び燃料噴射処理の実行のタイミングでないとしてルーチンを終了する。又、いずれかの気筒のＴＤＣであれば、マイコン８はステップ３１０で点火時期の設定を行うとともに、ステップ３２０で燃料噴射量の設定を行う。なお、ここでの点火時期の設定、並びに燃料噴射量の設定については、周知の設定方法に従うため詳述は避けるが、略述すれば、点火時期の設定では例えば図示しない点火時期マップが用いられその時のエンジン回転数と吸気圧とに応じた点火時期が求められる。又、燃料噴射量の設定では例えば図示しない燃料噴射量マップが用いられその時のエンジン回転数と吸気圧とに応じた燃料噴射量が求められる。
【００２９】
　一方、図３のステップ１１０でＦ＝０であれば、マイコン８はステップ１３０に移行し、現在のクランク角度が欠歯位置であるか否か、即ち第１気筒のＴＤＣ又は第４気筒のＴＤＣのいずれかであるか否かを判別する。そして、マイコン８は、ステップ１３０が否定判別されればそのままルーチンを終了し、ステップ１３０が肯定判別されればステップ１４０に移行し点火時期の設定を行う。なお、このステップ１４０で設定される点火時期は、前述したステップ１２０での点火時期とは異なり、マイコン８は第１気筒又は第４気筒のＡＴＤＣ１０°ＣＡで火花が発生するように点火信号ＩＧＴを設定する。つまり、エンジンの回転開始後の最初の点火時には、第１気筒又は第４気筒のＴＤＣで点火コイルへの通電が開始され、ＡＴＤＣ１０°ＣＡで通電が遮断されることになる。
【００３０】
　その後、マイコン８はステップ１５０で現在のＴＤＣが第１気筒のＴＤＣであるか、或いは第４気筒のＴＤＣであるかを判別する。そして、第１気筒のＴＤＣであれば、マイコン８はステップ１６０に移行し第４気筒へ燃料を噴射する。又、第４気筒のＴＤＣであれば、マイコン８はステップ１７０に移行し第１気筒へ燃料を噴射する。その後、マイコン８はステップ１８０でフラグＦを「１」にセットしてルーチンを終了する。
【００３１】
　次には、エンジンの回転開始時における予備噴射処理について、図６〜図８を用いて説明する。ここで、予備噴射処理とは、エンジンの回転停止時に次回のエンジンの回転開始時における燃料噴射気筒（便宜上、これを特定気筒と称する）を記憶しておき、エンジンの回転開始時に前記特定気筒に対してのみ燃料噴射を行うものである。なお、特定気筒の関する情報は、ＲＯＭ内の参照テーブル（図８）に予め記憶されており、マイコン８は参照テーブルを用いて特定気筒を選択する。
【００３２】
　より詳しくは、図８の参照テーブルでは、第１気筒のＴＤＣを０°ＣＡとしてエンジンの２回転（７２０°ＣＡ）を６等分し、各領域を「Ａ」〜「Ｆ」に区分している。そして、エンジンの回転停止時のクランク角度がいずれの領域にあるかに応じて、領域に対応した気筒が特定気筒として選択される（選択される気筒を○印で示す）。
【００３３】
　なお、図８により選択される特定気筒は、各領域と図９に示す各気筒の吸気行程との位置関係に従うものであり、エンジンの回転開始時のクランク角度から最初の基準位置信号の入力までの間に吸気行程の持つ気筒が特定気筒とされる。これにより１個から３個の気筒のいずれかの気筒が特定気筒となる。例えばクランク角度が図９の「Ａ」領域にあるとき、次の基準位置信号の入力（第４気筒のＴＤＣ）までの間で吸気行程の持つ気筒は、第５気筒及び第６気筒であり、この気筒が選択気筒となる。他の領域についてもこれと同様である。従って、この図８の参照テーブルを用いることにより、初爆をより早め且つ未燃ガスの排出を防止するために必要となる最小個数の噴射気筒が確実に選択されることになる。なお、マイコン８は、ＲＡＭ内に一時的に記憶されているクランクカウンタのカウント値によりクランク角度を求め、その時々のカウント値から特定気筒を選択する。
【００３４】
　さて、図６のルーチンが起動されると、マイコン８はステップ４００でキースイッチ１５が「ＯＦＦ」位置になったか否かを判別する。そして、マイコン８は、「ＯＦＦ」位置でなければルーチンをそのまま終了し、「ＯＦＦ」位置であればステップ４１０に移行する。マイコン８は、ステップ４１０で図４のルーチンによるクランクカウンタのＲＡＭ値を読み出すとともに、前述した図８の参照テーブルを用いてクランクカウンタのＲＡＭ値に応じた特定気筒を選択し、当該特定気筒をバックアップＲＡＭに記憶する。その後、マイコン８はステップ４２０でマイコン８内の電源スイッチを遮断してルーチンを終了する。図６の処理により、特定気筒情報を得ることができ、同情報はエンジン停止後の電源遮断後も記憶保持されることになる。
【００３５】
　又、図７のルーチンが起動されると、マイコン８はステップ５００でキースイッチ１５が「ＳＴＡＲＴ」位置になったか否かを判別する。そして、マイコン８は、「ＳＴＡＲＴ」位置でなければそのままルーチンを終了し、「ＳＴＡＲＴ」位置であればステップ５１０に移行する。マイコン８は、ステップ５１０で前述した図６のルーチンにて記憶した特定気筒をバックアップＲＡＭから読み出し、その特定気筒に対して燃料を噴射させるべく、燃料噴射信号を出力する。この図７の処理により、記憶された特定気筒は確実に点火される。
【００３６】
　次に、図１０のタイミングチャートに従って、エンジンの回転開始後の制御動作について説明する。図１０の時間ｔ０はエンジンの回転開始時間、時間ｔ０〜ｔ１は信号ＮＥ，Ｇのマスク期間、時間ｔ２はエンジンの回転開始後の最初の基準位置が検出される時間を示している。
【００３７】
　なお、エンジンの回転開始時のクランク角度「Ｐ１」（図では、６６０°ＣＡ）は、前回のエンジンの回転停止時のクランク角度「Ｐ２」（図では、６９０°ＣＡ）から３０°ＣＡだけ逆転した角度になっている。又、エンジンの回転停止時のクランクカウンタのカウント値は（１Ａ）１６であり（これは、図８の「Ｆ」領域に相当する）、バックアップＲＡＭには特定気筒情報として第４，第５，第６気筒が記憶されている。
【００３８】
　そして、図１０において、時間ｔ０でエンジンの回転が開始される。即ち、時間ｔ０でキースイッチ１５が「ＯＦＦ」位置から「ＯＮ」並びに「ＳＴＡＲＴ」位置に切り換えられ、スタータモータ１６が起動する。又、この時間ｔ０では図７のステップ５００が肯定判別され、特定気筒として記憶されている第４，第５，第６気筒に対して同時に燃料が噴射される。
【００３９】
　ここで、時間ｔ０〜ｔ１は、クランク角信号ＮＥ及び基準位置信号Ｇを一定の期間（例えば、１００〜１５０ｍｓｅｃ）だけマスクして気筒判別を行わない。これは、本実施例のようにマグネット式のピックアップコイルにてクランク角センサ１及びカム角センサ４が構成されている場合、微小回転域（例えば、２０ｒｐｍ以下）での信号検出精度が低くなるためである。よって、本実施例では、エンジンの回転開始直後の所定時間を検出信号のマスク期間としている。なお、エンジンの回転開始直後には、バッテリ１４の電圧変動やスタータモータ１６の起動による振動のために、信号ＮＥ，Ｇの誤検出が生じるおそれもある。そして、マスク期間が経過した時間ｔ１にて図３のルーチンが起動される。
【００４０】
　その後、時間ｔ２で最初の気筒判別が行われ、第４気筒のＴＤＣが検出される。又、この時間ｔ２でクランクカウンタが（１０）１６にセットされ、クランク角度の逆転（「Ｐ２」→「Ｐ１」）やマスク期間によって生じていたクランクカウンタと実際のクランク角度とのずれが解消される。そして、図３のルーチンに従って点火信号ＩＧＴが生成され、時間ｔ３（第４気筒のＡＴＤＣ１０°ＣＡ）で第４気筒の点火プラグが火花を発生する。このとき、第４気筒には予備噴射により燃料が吸入されているため、初爆が起こる。その後、第２回目の点火以降は通常の点火制御となり、各気筒のＴＤＣで火花が発生する。
【００４１】
　又、時間ｔ２後には、燃料噴射が図３のルーチンによる独立噴射に移行される。このとき、独立噴射の開始気筒は第１気筒となり、この第１気筒に対しては予備噴射が行われていないため時間ｔ２にて最初の燃料吸入が行われることになる。その後、＃１→＃２→＃３・・・の順に独立噴射が行われる。
【００４２】
　以上詳述したように、本第１実施例のエンジン制御装置では、エンジンの回転に伴い、クランク角度に対応したクランクカウンタのカウント値を更新させた（図４のルーチンによる）。そして、エンジンの回転停止時のクランク角度をクランクカウンタのカウント値にて検知するとともに、図８の参照テーブルを用いて前記カウント値に応じた特定気筒（予備噴射時の噴射気筒）を選択しバックアップＲＡＭに記憶した（図６のルーチンによる）。図８により選択される特定気筒は、エンジンの回転停止時のクランク角度とそのクランク角度に続く次の基準位置との間に吸気行程を持つ気筒とした。又、エンジンの回転開始時には、バックアップＲＡＭに記憶された特定気筒を読み出し、当該特定気筒に対して予備噴射を実施した（図７のルーチンによる）。又、エンジンの回転開始後の最初の基準位置の検出後は、燃料噴射を気筒毎の独立噴射に移行するとともに、気筒毎に点火処理を開始するようにした（図３のルーチンによる）。
【００４３】
　要するに、本実施例の構成によれば、エンジンの回転開始から最初の基準位置の検出までの間においては、吸気行程に対応させて予備噴射を行うことで、予備噴射による噴射燃料は吸気行程で確実に気筒に吸入され、その後の点火処理にて確実に燃焼させることができる。その結果、未燃ガスの排出を抑制することができる。又、最初の基準位置に基づいて点火処理が実施される際、予備噴射で吸入された燃料を燃焼させることができるため、初爆が早まりエンジンの始動性を向上させることができる。
【００４４】
　なお、上記した事例では、エンジンの回転停止位置を図８の「Ｆ」領域とした場合のみを説明したが、停止位置が他の領域であっても本発明の目的を達成することができるのは言うまでもない。
【００４５】
　一方で、特定気筒の選択方法は、図８に示した参照テーブルの他に変更してもよく、次には別の具体例について例示する。上述した図８の参照テーブルでは、「Ａ」〜「Ｆ」領域を各気筒のＴＤＣに同期させて区分していたが、図１１に示す参照テーブルでは図８の領域の一部を変更して、新たな「Ａ’」〜「Ｆ’」領域を区分している。つまり、図１１の参照テーブルでは、「Ａ’」，「Ｄ’」領域が図８の「Ａ」，「Ｄ」領域よりも３０°ＣＡだけ遅角側のクランク角度領域に設定されている。又、図１１の「Ｂ’」，「Ｅ’」領域は図８の「Ｂ」，「Ｅ」領域よりも始まりだけが３０°ＣＡだけ遅角側のクランク角度領域に設定され、「Ｃ’」，「Ｆ’」領域は図８の「Ｃ」，「Ｆ」領域よりも終わりだけが３０°ＣＡだけ遅角側のクランク角度領域に設定されている。
【００４６】
　そして、図１１を用いて特定気筒を選択することで、第１，第２，第４，第５気筒に関しては、エンジンの回転停止角度が吸気行程の開始から３０°ＣＡまでの領域にあった場合、当該気筒を特定気筒として選択することができる。例えばエンジンの回転停止位置が
　０〜３０°ＣＡの場合、図８では第５，第６気筒だけが特定気筒になったのに対して、この図１１では前記２つの気筒に加えて第４気筒も特定気筒となる。即ち、エンジンの回転開始位置が既に吸気行程の開始当初にあっても実際は燃料吸入が可能であるため、この気筒にも予備噴射を行う。その結果、初爆をより早めることができる。
【００４７】
　なお、図１１では、「Ｂ’」領域と「Ｃ’」領域との境界角度、及び「Ｅ’」領域と「Ｆ’」領域との境界角度を図８の場合に対して遅角側にずらしていない。つまり、エンジンの回転停止位置（記憶角度）と回転開始位置（実際の角度）とに大きなずれが生じた場合には、エンジンの回転開始直後の基準位置（第１，第４気筒のＴＤＣ）の検出ができなくなるおそれがあり、この理由から、基準位置に近い領域だけは領域を遅角させないようにしている。例えば「Ｂ’」領域の終了角度を２７０°ＣＡにすると、この角度は第４気筒のＢＴＤＣ９０°ＣＡとなる。そして、記憶角度と実際の角度と差が大きい場合（９０°ＣＡ以上の場合）には、第４気筒のＴＤＣが検出できず第６気筒の点火ができなくなる。よって、「Ｂ’」領域の終了角度を２７０°ＣＡにして２４０〜２７０°ＣＡの領域で第６気筒に予備噴射を行った場合には、第６気筒に対する噴射燃料が未燃ガスとして放出されるおそれが生じる。なお、上記理由による不都合を考慮する必要がない場合には、「Ａ’」〜「Ｆ’」の全ての領域を、図８の「Ａ」〜「Ｆ」領域に対して遅角側にずらして具体化することもできる。
【００４８】
　又、参照テーブルを具体化した別例として図１２がある。これは、参照テーブルの「Ａ」〜「Ｆ」領域と各気筒の吸気行程とが重なる場合に、重なった気筒の予備噴射を行わないようにするものである。図９を用いて説明すれば、例えば「Ａ」領域では、この領域と第３，第４気筒の吸気行程とが重なる。従って、この場合には第３，第４気筒以外の４つの気筒が特定気筒として選択され、予備噴射が行われることになる。図１２の参照テーブルでは、「Ａ」領域以外の領域でもそれぞれ４つの気筒が特定気筒として選択される。
　　（実施例２）
【００４９】
　次に、本発明の第２実施例について、図１３を用いて説明する。なお、上記第１実施例は複数個の特定気筒が選択された場合に全特定気筒に対して同時に予備噴射を行うものであったが、第２実施例は特定気筒が複数の場合に同時噴射を行わず予備噴射であっても独立噴射を行うものである。
【００５０】
　具体的には、この第２実施例では、図７のステップ５１０においてバックアップＲＡＭのクランクカウンタにより独立噴射を行う。即ち、特定気筒に関して吸気行程の開始角度を対応させ、特定気筒を該当する排気行程（吸気行程の開始前６０°ＣＡ）で独立噴射させるべくクランクカウンタを設定しておく。そして、エンジンの回転開始時には特定気筒のうち最初に点火される気筒だけに独立して燃料噴射を行い、その後、クランクカウンタが設定カウント値になったときに次の点火気筒に対して燃料を噴射させる。
【００５１】
　図１３は、第２実施例を説明するためのタイミングチャートである。なお、本第２実施例では、前記第１実施例とは異なり、マイコン８の電源投入時にクランクカウンタを初期化しない。即ち、エンジンの回転停止時におけるクランクカウンタの値をバックアップＲＡＭに記憶保持しておき、エンジンの回転開始後はバックアップＲＡＭの記憶値に引き続いてカウントアップを開始する。そして、カウント値が（１Ｂ）１６になると次に（００）１６に更新している。これにより、カウント値と実際のクランク角度とが相応できる。
【００５２】
　さて、図１３において、エンジンの回転が開始される時間ｔ０では、特定気筒のうち第４気筒だけに独立して予備噴射が行われる。その後、時間ｔ１でクランクカウンタの更新が始められ、時間ｔａでカウント値が（００）１６になる。即ち、図１３では、時間ｔ１〜ｔ２でクランクカウンタのカウント値と実際のクランク角度とに６０°ＣＡのずれが生じている。
【００５３】
　そして、時間ｔｂになると、クランクカウンタのカウント値により第５気筒が吸気行程の開始前６０°ＣＡであるとみなされ（実際は、吸気行程の開始角度である）、特定気筒である第５気筒に独立して予備噴射が行われる。又、時間ｔｃでも、時間ｔｂのときと同様に吸気行程の開始角度で第６気筒に独立して予備噴射が行われる。このように、図４で更新されるクランクカウンタに従って順次独立噴射が実行される。
【００５４】
　なお、図１３の事例では、実際のエンジンのクランク角度とクランクカウンタの値が６０°ＣＡずれているので、本来、排気行程（吸気行程の開始前６０°ＣＡ）にて燃料噴射したいにもかかわらず、実際は時間ｔｂ，ｔｃの吸気行程の開始角度となる。しかし、この場合には、該当する吸気行程で十分な燃料吸入が可能であって問題はない。なお、特定気筒を独立噴射させる場合に、その噴射角度を上記の事例よりも遅角させて吸気行程の前半の角度とすることもできる。
【００５５】
　なお、本発明は上記実施例に限定されるものではなく、次の様態にて具体化することができる。上記実施例では、基準位置を３６０°ＣＡ毎（エンジン１回転に１回）に設定していたが、この設定間隔を変更することもできる。例えば基準位置を１２０°ＣＡ毎に設定して、気筒毎に１個の基準位置を検出するようにしてもよい。この場合、各気筒間の吸気行程の開始の間隔が１２０°ＣＡであることから、エンジンの回転開始から最初の基準位置の検出までの間に吸気行程を持つ気筒が常に１気筒となり、バックアップＲＡＭには常に１気筒分の情報が記憶されることになる。その結果、バックアップＲＡＭの記憶に要する領域が少なくなるとともに、予備噴射気筒が少なくなり通常の噴射制御にいち速く移行することができる。
【００５６】
　又、上記各実施例では６気筒エンジンによる具体例を示したが、勿論他の多気筒エンジン（４気筒，８気筒等）に具体化してもよい。この場合、気筒数及び基準位置に応じて参照テーブルが変更され設定される。
【００５７】
　又、上記実施例では、特定気筒情報として図８の参照テーブルにて気筒番号を選択し当該気筒番号をバックアップＲＡＭに記憶保持していたが、クランクカウンタのカウント値を記憶保持するようにしてよい。この場合、エンジンの回転開始時に予備噴射のための特定気筒が選択されることになる。
【００５８】
　さらに、上記実施例では、エンジンの回転開始時に一定期間のマスク期間を設けていたが、ホール素子を用いた磁気式クランク角センサを使用することで微小回転域（０ｒｐｍ付近）での信号検出が可能となりマスク期間を省略することができる。
【図面の簡単な説明】
【００５９】
【図１】本発明を具体化した実施例におけるエンジン制御装置を概略的に示す構成図である。
【図２】クランク角センサ及びカム角センサの出力信号を示した波形図である。
【図３】独立噴射処理及び点火処理の制御ルーチンを示したフローチャートである。
【図４】図３のサブルーチンであって、クランクカウンタの更新処理を示したフローチャートである。
【図５】図３のサブルーチンであって、通常運転時の点火処理及び燃料噴射処理を示したフローチャートである。
【図６】予備噴射のための特定気筒を記憶するルーチンを示したフローチャートである。
【図７】予備噴射処理に係るルーチンを示したフローチャートである。
【図８】予備噴射のための気筒情報を記憶した参照テーブルである。
【図９】クランク角度と各気筒のサイクルとの関係図である。
【図１０】第１実施例におけるマイコンの動作を説明するためのタイミングチャートである。
【図１１】第１実施例の別例における予備噴射のための気筒情報を記憶した参照テーブルである。
【図１２】同じく、第１実施例の別例における予備噴射のための気筒情報を記憶した参照テーブルである。
【図１３】第２実施例におけるマイコンの動作を説明するためのタイミングチャートである。
【図１４】従来のエンジン制御を説明するためのタイミングチャートである。
【符号の説明】
【００６０】
　１　クランク角度検出手段としてのクランク角センサ
　４　基準位置検出手段としてのカム角センサ
　８　エンジン制御手段、停止クランク角度検出手段、予備噴射気筒判別手段としてのマイクロコンピュータ
　                                                                      
【図１】
2004003511.tif 000003
【図２】
2004003511.tif 000004
【図３】
2004003511.tif 000005
【図４】
2004003511.tif 000006
【図５】
2004003511.tif 000007
【図６】
2004003511.tif 000008
【図７】
2004003511.tif 000009
【図８】
2004003511.tif 000010
【図９】
2004003511.tif 000011
【図１０】
2004003511.tif 000012
【図１１】
2004003511.tif 000013
【図１２】
2004003511.tif 000014
【図１３】
2004003511.tif 000015
【図１４】
2004003511.tif 000016