(57)【特許請求の範囲】
【請求項１】
多気筒４サイクルエンジンのクランク軸の回転に対応する所定角度間隔毎のパルス列よりなり且つその途中に表の基準位置部及び裏の基準位置部を３６０°ＣＡ毎に有したクランク信号を発生するクランク信号発生手段と、
エンジンの吸気側と排気側とに各々設けられ、エンジン気筒毎に異なる形態が付与され且つ前記クランク信号の表の基準位置部と裏の基準位置部とで信号レベルが相違する判別信号を発生する判別信号発生手段と、
エンジン始動時において吸気側及び排気側の判別信号のうち信号形態が判明した判別信号によりエンジンの気筒判別を実施する気筒判別手段と、
前記気筒判別手段による気筒判別に引き続きクランク信号の基準位置部に到達した際、前記気筒判別に用いた判別信号の信号レベルによりその時の基準位置部が表裏の何れであるかを判定する基準位置判定手段と、
を備えたことを特徴とするエンジン制御装置。
【請求項２】
前記気筒判別手段は、吸気側及び排気側の判別信号のうち、エンジンの始動開始後に信号エッジが確認された判別信号を用い、気筒判別を実施する請求項１に記載のエンジン制御装置。
【請求項３】
吸気側及び排気側の判別信号のうち一方を特定判別信号とし、通常時に基準位置判定に用いるエンジン制御装置であって、
前記特定判別信号についてエッジの有無により有効かどうかを判定する手段を備え、前記基準位置判定手段は、前記特定判別信号が有効判定される場合、特定判別信号により基準位置判定を実施し、前記特定判別信号が無効判定される場合、特定判別信号ではない方の判別信号により基準位置判定を行う請求項１又は２に記載のエンジン制御装置。
【請求項４】
前記気筒判別手段による気筒判別時に、その時のエンジンの回転位置が基準位置部の表側か裏側かを仮判定する仮判定手段を備え、
前記基準位置判定手段は、前記仮判定手段による仮判定の結果を反転させて表裏何れの基準位置部であるかを判定する請求項１〜３の何れかに記載のエンジン制御装置。
【請求項５】
前記判別信号について異常であるかどうかを判定する手段を備え、異常の旨判定された時、前記基準位置判定手段による基準位置判定を実施しない請求項１〜４の何れかに記載のエンジン制御装置。
【請求項６】
前記判別信号発生手段として吸気側及び排気側のカムシャフトにカムセンサが各々設けられ、これらカムセンサは、判別信号としてエンジン気筒毎に同一信号レベルの継続期間が異なるカム信号をそれぞれ出力する請求項１〜５の何れかに記載のエンジン制御装置。
【請求項７】
前記基準位置判定手段による判定結果に基づいて、前記エンジン気筒に対して制御を実施する請求項１〜６の何れかに記載のエンジン制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、エンジン制御装置に関するものである。
角度入力信号異常時の角度制御装置
【０００２】
【従来の技術】
従来よりこの種のエンジン制御装置では、点火・噴射等のクランク角同期の処理として、クランクロータに設けた欠歯等の基準位置部を検出し、その基準位置部により角度位置を確認してから点火・噴射等の制御を開始するものがある。また近年では、ＬＥＶ規制等の排気エミッションの規制強化に対応するために、カムシャフトの回転をカムセンサにて検出すると共に、該カムセンサにより検出されるカム信号の形態により気筒判別を実施し、欠歯検出よりも早く点火・噴射等の制御を開始する技術もある。
【０００３】
また更に、より一層厳しい排ガス規制に対応するべく、カムセンサを吸気側カムシャフトだけでなく排気側カムシャフトにも実装し、吸気側カムセンサによる吸気カム信号と排気側カムセンサによる排気カム信号とを用いた気筒判別手法が提案されている。この手法では、吸気カム信号と排気カム信号とにより角度位置検出の頻度が増え、より確実に早い時期での点火・噴射の制御開始が実現できるようになっている。
【０００４】
また、多気筒４サイクルエンジンに適用されるエンジン制御装置においては、１サイクル（７２０°ＣＡ）を３６０°ＣＡずつに区分し、それぞれに基準位置部として表欠歯、裏欠歯を設けている。そして、エンジンの回転に伴い欠歯位置に到達した際、それが表欠歯か裏欠歯かをその都度判定し、角度位置を確定するようにしている。具体的には、表欠歯と裏欠歯とでカム信号の信号レベルがＨ／Ｌ相違するようカム信号（カムロータ）を設定しておき、欠歯検出時には、カム信号レベルにより表欠歯か裏欠歯かを判定する。
【０００５】
【発明が解決しようとする課題】
しかしながら、カムセンサの故障や断線等の異常が生じると、カム信号が所定レベル（Ｈレベル又はＬレベル）に固定され、カム信号レベルによる表欠歯か裏欠歯かの判定が正しく行われない事態が考えられる。すなわち、欠歯検出の際、所定レベルで固定されたカム信号を欠歯判定に使用し、表欠歯か裏欠歯かを誤って判定してしまう。その結果、気筒判別が正しく行われず、正常にエンジンが始動しないという問題が生じる。
【０００６】
特に、吸気側及び排気側の２つのカム信号を用いる場合、一方のカム信号が正常で、他方のカム信号が異常になると、正常のカム信号によりエンジン始動初期の気筒判別が完了するものの、その後に欠歯位置に到達した際、異常のカム信号により表欠歯か裏欠歯かを誤って判定してしまうことが考えられる。
【０００７】
因みに、カム信号の異常（フェイル）を判定し、そのフェイル判定後にはカム信号を使わないようにすれば、上記不具合は回避できるが、フェイル判定前に欠歯位置に到達すると、フェイル状態のカム信号を欠歯判定に用いてしまい、上記不具合を招くこととなる。
【０００８】
本発明は、上記問題に着目してなされたものであって、その目的とするところは、エンジン始動時において表裏の基準位置部の判定を正しく行わせ、ひいてはエンジン始動性を向上させることができるエンジン制御装置を提供することである。
【０００９】
【課題を解決するための手段】
請求項１に記載のエンジン制御装置において、クランク信号発生手段は、所定角度間隔毎のパルス列で且つその途中に表の基準位置部及び裏の基準位置部を３６０°ＣＡ毎に有したクランク信号を発生する。また、判別信号発生手段は、エンジンの吸気側と排気側とに各々設けられ、エンジン気筒毎に異なる形態が付与され且つ前記クランク信号の表の基準位置部と裏の基準位置部とで信号レベルが相違する判別信号を発生する。そして、気筒判別手段は、エンジン始動時において吸気側及び排気側の判別信号のうち信号形態が判明した判別信号によりエンジンの気筒判別を実施する。また、その気筒判別に引き続きクランク信号の基準位置部に到達した際、基準位置判定手段は、前記気筒判別に用いた判別信号の信号レベルによりその時の基準位置部が表裏の何れであるかを判定する。
【００１０】
要するに本制御装置では、判別信号の信号レベルに基づき表の基準位置部か裏の基準位置部かの基準位置判定が実施され、その判定結果に従い、制御対象気筒に対し点火や燃料噴射等の制御が実施されるようになっている。この場合、基準位置判定に用いる判別信号の信号レベルが断線等により固定されると、基準位置判定が正しく行われないおそれが生ずる。この問題に対し本発明では、基準位置判定に用いる判別信号は、気筒判別に実際に用いた信号であり、言い換えれば断線等により信号レベルが固定されていない信号である。その結果、エンジン始動時において表裏の基準位置部の判定を正しく行わせ、ひいてはエンジン始動性を向上させることができる。
【００１１】
また更に本発明では、基準位置判定に用いる判別信号が異常であるとの判定結果を待たず、正確な基準位置判定が実施できる。この場合、異常判定前であっても、誤った制御が防止できる。
【００１２】
気筒判別手段としてより具体的には、請求項２に記載したように、吸気側及び排気側の判別信号のうち、エンジンの始動開始後に信号エッジが確認された判別信号を用い、気筒判別を実施すると良い。
【００１３】
また、請求項３に記載の発明では、吸気側及び排気側の判別信号のうち一方を特定判別信号として通常時に基準位置判定に用いることとし、この特定判別信号についてエッジの有無により有効かどうかを判定する。そして、基準位置判定手段は、前記特定判別信号が有効判定される場合、特定判別信号により基準位置判定を実施し、前記特定判別信号が無効判定される場合、特定判別信号ではない方の判別信号により基準位置判定を行う。本構成によれば、基準位置判定に用いる判別信号がその都度適切に選択されるようになる。
【００１４】
また、請求項４に記載の発明であっても、所望の効果が達せられる。つまり、請求項４の発明では、前記気筒判別手段による気筒判別時に、その時のエンジンの回転位置が基準位置部の表側か裏側かを仮判定する仮判定手段を備え、前記基準位置判定手段は、前記仮判定手段による仮判定の結果を反転させて表裏何れの基準位置部であるかを判定する。
【００１５】
請求項５に記載の発明では、前記判別信号について異常であるかどうかを判定し、異常の旨判定された時、前記基準位置判定手段による基準位置判定を実施しない。この場合、判別信号の異常により基準位置部が誤って判定されるといった不具合が防止できる。
【００１６】
請求項６に記載の発明では、吸気側及び排気側のカムシャフトに各々カムセンサが設けられ、このカムセンサにより、判別信号としてのカム信号が出力される。これらカム信号はエンジン気筒毎に同一信号レベルの継続期間が異なるため、気筒判別が容易に実施できる。
請求項７に記載の発明では、基準位置判定手段による判定結果に基づいて、エンジン気筒に対して制御を実施する。
【００１７】
【発明の実施の形態】
以下、この発明を具体化した一実施の形態を図面に従って説明する。本実施の形態においては自動車用多気筒ガソリンエンジンの制御装置に具体化している。図１には、本実施の形態におけるエンジン制御ＥＣＵ１の構成を示す。エンジンは５気筒４サイクルエンジンである。
【００１８】
エンジン制御ＥＣＵ１は、マイクロコンピュータ（以下、マイコンという）１０、電源回路２０、入出力回路３０及びＥＥＰＲＯＭ４０を備えている。電源回路２０はバッテリ２から電力の供給を受けて所定の電圧をＥＣＵ１内の各機器に供給する。また、マイコン１０は、ＣＰＵ１１、ＲＯＭ１２、ＲＡＭ１３、Ａ／Ｄ変換器１４、入出力インターフェイス（Ｉ／Ｏ）１５及びタイマモジュール１６を備えており、これらの各部材間はデータバスにて相互にデータのやり取りが行われる。入出力インターフェイス１５にはＥＥＰＲＯＭ４０が接続され、入出力インターフェイス１５を介してＥＥＰＲＯＭ４０とデータのやり取りが行われる。入出力回路３０はセンサ及びスイッチ等からの信号を入力すると共に、インジェクタ（燃料噴射弁）や点火装置に対し駆動信号を出力する。更に、入出力回路３０には通信ライン３が接続され、入出力回路３０を介して他のＥＣＵとデータのやり取りが行われる。マイコン１０のＣＰＵ１１は、センサ・スイッチ等からの信号（データ）及び通信ライン３からのデータを入出力回路３０と入出力インターフェイス１５を介して取り込むと共に、これらデータを基にして各種の演算を行い、入出力インターフェイス１５と入出力回路３０を介してインジェクタや点火装置等を駆動制御する。
【００１９】
ここで、エンジン制御ＥＣＵ１が取り込む信号として、クランクセンサ４からのクランク信号と、吸気側カムセンサ５及び排気側カムセンサ６からのカム信号がある。クランク信号はタイマモジュール１６のハードクランク１００に入力される。また、カム信号は入出力回路３０を介してマイコン１０に取り込まれる。なお本実施の形態では、クランクセンサ４が「クランク信号発生手段」に相当し、カムセンサ５，６が「判別信号発生手段」に相当する。
【００２０】
図２には、エンジン１サイクル（７２０°ＣＡ）分のクランク信号とカム信号を示す。クランクセンサ４で発生するクランク信号は、エンジンのクランク軸の回転に対応した所定角度間隔毎のパルス列よりなり、このパルス列の途中に基準位置部としての欠歯を有する。本実施の形態でのクランク信号は６０パルス毎に２パルス分抜ける欠歯の構成となっている（６０−２歯構造）。つまり、パルス列のパルス間隔が６°ＣＡであり、このパルス列の途中に欠歯を３６０°ＣＡ毎に有し、そのうちの一方（７２０°ＣＡ毎の欠歯）が表欠歯であり、他方（他の７２０°ＣＡ毎の欠歯）が裏欠歯である。
【００２１】
また、カムセンサ５，６で発生するカム信号（吸気カム信号、排気カム信号）は、エンジンの吸気カム軸、排気カム軸の回転にそれぞれ同期しており、気筒位置を特定するための気筒判別信号である。これらカム信号はその立ち下がりエッジが１４４°ＣＡ間隔であり、吸気カム信号に対して排気カム信号が３１８°ＣＡ進角側にずれている。吸気カム信号及び排気カム信号は、同一信号レベルの継続期間（例えば、立ち上がりから立ち下がりまでの角度間隔）がエンジン気筒毎に相違するよう構成されており、カム信号レベルのＨ期間又はＬ期間でのクランク信号数を数えることで、その都度の気筒が判別できるようになっている。
【００２２】
更に、吸気及び排気のカム信号は、クランク信号の表欠歯直後の立ち下がりエッジ（ｔ１のタイミング）では信号レベルがＬ（ロー）であり、裏欠歯直後の立ち下がりエッジ（ｔ２のタイミング）では信号レベルがＨ（ハイ）である。つまり、欠歯位置でカム信号レベルがＬならば表欠歯であると判定でき、Ｈならば裏欠歯であると判定できる。通常は吸気カム信号の信号レベルを用いてクランク信号の表欠歯か裏欠歯かが判定され、表欠歯であると判定された際、システム初期化位置である＃４気筒のＢＴＤＣ６°ＣＡの位置で角度カウンタが初期化される。
【００２３】
一方、図１のタイマモジュール１６に備えられたハードクランク１００は、クランク信号をハード的に処理する機能部である。このハードクランク１００により、図２の点火・噴射用角度カウンタの生成（クランクエッジ間時間を分割した角度信号の生成）をハード的に行うことができる。
【００２４】
略述すれば、ハードクランク１００では、クランク信号のパルス間隔（エッジ間時間）が計測され、今回のパルス間隔を基に、次のパルスまでに整数倍の周波数の逓倍信号（逓倍クロック）が生成される。そして、その逓倍信号により図２の追従カウンタがカウントアップされ、更に、追従カウンタからのアングルクロックにより点火・噴射用角度カウンタがカウントアップされる。なお、追従カウンタは、１サイクルガード値に達する都度、リセットされる。この点火・噴射用角度カウンタのカウント値に基づき、コンペアレジスタを用いて点火・噴射制御がクランク角同期にて行われる。つまり、点火・噴射用角度カウンタにより点火・噴射等の制御をクランク角同期でハード制御することが可能となる。
【００２５】
次に、エンジン始動時における気筒判別の動作について説明する。ここでは先ずはじめに、単一のカム信号（例えば吸気カム信号のみ）を用いたシステムについて、気筒判別の概要を図３及び図４のタイムチャートに従い説明する。図３は吸気カム信号が正常にＣＰＵ１１に取り込まれる場合の動作を示し、図４は吸気側カムセンサ５の故障や断線等により吸気カム信号がＬレベル固定される場合の動作を示す。なお、図中のクランクカウンタは、システム初期化位置（＃４気筒のＢＴＤＣ６°ＣＡ）を基準としてＣＰＵ１１により３６°ＣＡ毎にカウントアップされるカウンタであり、その本来のカウント値の動きを二点鎖線で示し、実際にＣＰＵ１１によりカウントされるカウント値の動きを実線で示す。
【００２６】
因みに、本システムでは、表裏何れかの欠歯を検出するか、或いはカム信号で気筒判別が完了したらその時点で点火・噴射の角度制御を起動するようにしている。また、カム信号からの気筒判別は初回のみ実施し、気筒判別完了後は実施しないようにしている。
【００２７】
図３において、ｔ１１のタイミングでは、エンジン始動開始からの吸気カム信号のエッジにより該カム信号が有効判定され、その後、ｔ１２のタイミングでは、その時の吸気カム信号に基づいて気筒判別が実施される。つまり、ｔ１２直前の吸気カム信号＝Ｈ期間においてクランク信号数（立ち下がりエッジ数）がカウントされ、そのカウント値から今の気筒番号が判定される。ｔ１２のタイミングでは、♯５気筒である旨判定され、その＃５気筒に対応する角度位置としてクランクカウンタに「３」が設定される（気筒判別完了）。この気筒判別完了後、クランクカウンタのカウントアップが開始されると共に、点火・噴射の角度制御が開始される。
【００２８】
その後、ｔ１３のタイミングでは、欠歯位置での吸気カム信号がＨレベルであるため、その時の欠歯が裏欠歯であると判定される。このとき、欠歯が表欠歯か裏欠歯かを表すための欠歯判定フラグがＯＦＦされる。それ以後、欠歯位置でのカム信号レベルに応じて欠歯判定フラグが随時設定される。つまり、欠歯位置での吸気カム信号がＬレベルであれば欠歯判定フラグがＯＮされ、同吸気カム信号がＨレベルであれば欠歯判定フラグがＯＦＦされる。なお、クランクカウンタは、システム初期化位置（＃４気筒のＢＴＤＣ６°ＣＡ）に到達する都度、リセットされる。
【００２９】
一方、センサ故障や断線等により吸気カム信号がＬレベルで固定される場合、図４に示すように、吸気カム信号が有効となることはなく、吸気カム信号から角度制御を開始することができない。この場合、ｔ２１のタイミングでの欠歯検出時には、吸気カム信号の異常（フェイル）が確定していないが、カム信号が有効になっていないため気筒判別が実施されない。
【００３０】
また、ｔ２２のタイミングで吸気カム信号の異常（フェイル）が確定すると、クランク信号等による見込みで気筒判別が実施される。つまり、その時の吸気カム信号レベルは使わず、例えば回転変動の違い等によりその時点での気筒が判別される。ｔ２２のタイミングで気筒判別が完了し、クランクカウンタに「１０」が設定される。それに伴い、点火・噴射の角度制御が開始される。以後の欠歯検出時には、欠歯判定フラグが交互にＯＮ／ＯＦＦされる。
【００３１】
次に、吸気カム信号及び排気カム信号を用いたシステムについて、エンジン始動時における気筒判別の概要を説明する。
図５は、吸気カム信号及び排気カム信号を用いた気筒判別動作を示すタイムチャートである。この場合、表裏何れかの欠歯を検出するか、吸気カム信号又は排気カム信号で気筒判別が完了したら点火・噴射の角度制御を起動するようにしている。また、カム信号による気筒判別は誤差を生じることがあり、吸気カム信号の気筒判別結果と排気カム信号の気筒判別結果とが不一致になることも考えられる。そのため、初期の気筒判別が完了したら、それ以後はカム信号による気筒判別は実施せず、欠歯検出による気筒判別のみを継続するようにしている。これにより、角度位置のズレや点火・噴射漏れ等問題を防止している。
【００３２】
図５において、ｔ３１，ｔ３２のタイミングでは吸気カム信号、排気カム信号がそれぞれ有効になり、その後、ｔ３３のタイミングではその時の排気カム信号に基づいて気筒判別が実施される。つまり、ｔ３３直前の排気カム信号＝Ｌ期間においてクランク信号数（立ち下がりエッジ数）がカウントされ、そのカウント値から今の気筒番号が判定される。ｔ３３のタイミングでは、♯３気筒である旨判定され、その＃３気筒に対応する角度位置としてクランクカウンタに「６」が設定される（気筒判別完了）。この気筒判別完了後、点火・噴射の角度制御が開始される。このように図５では、吸気カム信号と排気カム信号のうち排気カム信号で角度制御が開始される事例を示す。
【００３３】
その後、ｔ３４のタイミングでは、欠歯位置での吸気カム信号がＨレベルであるため、その時の欠歯が裏欠歯であると判定される。このとき、欠歯が表欠歯か裏欠歯かを表すための欠歯判定フラグがＯＦＦされる。それ以後、欠歯位置でのカム信号レベルに応じて欠歯判定フラグが随時設定される。つまり、欠歯位置での吸気カム信号がＬレベルであれば欠歯判定フラグがＯＮされ、同吸気カム信号がＨレベルであれば欠歯判定フラグがＯＦＦされる。
【００３４】
これに対し、センサ故障や断線等により吸気カム信号がＬレベルで固定される場合、図６に示すように、排気カム信号は有効判定されるが（ｔ４１のタイミング）、吸気カム信号が有効となることはない。この場合、排気カム信号より今の気筒番号（♯３）が判定され、＃３気筒に対応する角度位置としてクランクカウンタに「６」が設定される（気筒判別完了）。この気筒判別完了後、点火・噴射の角度制御が開始される。
【００３５】
ところがこの場合、気筒判別後のｔ４２のタイミングでは、断線等により吸気カム信号がＬ固定になっているものの、吸気カム信号の異常（フェイル）が未だ確定していない。そのため、ｔ４２のタイミングでの欠歯検出時には、Ｌ固定になっている吸気カム信号により、表欠歯であると誤って気筒判別を実施してしまう。その結果、クランクカウンタが正常値からずれ３６０°ＣＡ間違えて点火・噴射を実施してしまい、エンジンが適正に始動できなくなる。この場合、それ以後に吸気カム信号の異常（フェイル）を判定したとしても、正常な点火・噴射制御に復帰できない。
【００３６】
そこで、上記図６の問題を解決し、吸気カム信号の異常（フェイル）時にも正しく気筒判別を実施させ、エンジンを適正に始動させることを考える。ここでは、エンジン始動初期に最初に気筒判別に用いたカム信号（吸気カム信号又は排気カム信号の何れか）により欠歯検出時の表裏判定を行うこととし、欠歯検出時に吸気カム信号が有効でなくとも、表欠歯か裏欠歯かの判定を間違えることの不具合を防止する。
【００３７】
図７は、上記図６の問題を解消した気筒判別動作を示すタイムチャートである。
図７では、前記図６と同様に、排気カム信号は有効判定されるが（ｔ５１のタイミング）、吸気カム信号が有効となることはない。この場合、ｔ５２のタイミングでは排気カム信号より今の気筒番号（♯３）が判定され、＃３気筒に対応する角度位置としてクランクカウンタに「６」が設定される（気筒判別完了）。また、その時のクランクカウンタ値に基づき欠歯判定フラグがＯＮ／ＯＦＦ何れかに仮設定される。ｔ５２のタイミングの場合、０≦クランクカウンタ＜１０であるため、今現在、表欠歯側であると判断でき、欠歯判定フラグをＯＮ（表側）とする。気筒判別完了後、点火・噴射の角度制御が開始される。
【００３８】
その後、ｔ５３のタイミングでは、気筒判別完了後であるものの、吸気カム信号が有効判定されていないため、吸気カム信号のレベルを欠歯判定に用いず、先に仮設定した欠歯判定フラグが反転される。つまり、先のｔ５２のタイミングでは排気カム信号による気筒判別結果から欠歯判定フラグがＯＮされているため、当該フラグがＯＦＦに反転される。これにより、ｔ５２のタイミングでは表欠歯が判定され、続くｔ５３のタイミングでは裏欠歯が判定されることとなる。その後、ｔ５４のタイミングで吸気カム信号の異常（フェイル）が確定すると、クランク信号等による見込みで気筒判別が実施される。
【００３９】
次に、ＣＰＵ１１による気筒判別処理について図８〜図１１のフローチャートを参照しながら詳細に説明する。先ずはじめに図８は、吸気カム信号のエッジ毎に起動される吸気カム信号割込み処理を示すフローチャートである。
【００４０】
図８において、ステップ１０１では、エンジン始動当初からの吸気カム信号のエッジの入力回数をカウントし、続くステップ１０２では、エッジ入力回数が所定回数（本実施の形態では３）以上であるか否かを判別する。所定回数以上であれば、吸気カム信号が正常に入力されていると判断してステップ１０３に進み、吸気カム信号が有効である旨判定する。所定回数に達していない場合はステップ１０８に進み、吸気カム信号が未だ有効になっていない（吸気カム無効）と判定する。吸気カム無効の場合、そのまま処理を終了し、吸気カム信号による気筒判別を実施しない。
【００４１】
また、ステップ１０４では、クランク信号が有効であるか否かを判別する。なお、クランク信号が等間隔で正しく入力されていれば、クランク信号有効である。クランク信号有効であればステップ１０５に進み、カム信号或いは欠歯位置により既に気筒判別が完了しているかどうかを判定する。そして、気筒判別が完了していないことを条件にステップ１０６に進み、吸気カム信号による気筒判別を実施する。このとき、吸気カム信号の有効判定後におけるＨレベル期間内又はＬレベル期間内のクランク信号数（立ち下がりエッジ数）がカウントされ、そのカウント値に応じて今現在の気筒番号が判別される。続くステップ１０７では、気筒判別完了信号をセットし、その後本処理を終了する。
【００４２】
また、クランク信号が無効、又は既に気筒判別が完了していた場合（ステップ１０４がＮＯ、又はステップ１０５がＹＥＳの場合）は、そのまま処理を終了し、吸気カム信号による気筒判別を実施しない。
【００４３】
図９は、排気カム信号のエッジ毎に起動される排気カム信号割込み処理を示すフローチャートである。なおこの処理は、前述した図８の吸気カム信号割込み処理に概ね準ずるものであり、ステップ２０７の処理だけが前記図８に無い処理である。以下、共通部分については簡単に説明する。
【００４４】
つまり、先ずは、エンジン始動当初からの排気カム信号のエッジ入力回数が所定回数（３回）以上であるか否かを判別し（ステップ２０１，２０２）、所定回数以上であれば排気カム信号を有効とし、所定回数未満であれば、排気カム信号を無効とする（ステップ２０３，２０９）。そして、排気カム信号が有効の場合、クランク信号が有効で、且つ気筒判別完了前であることを条件に、排気カム信号による気筒判別を実施する（ステップ２０６）。その後、排気カム信号による気筒判別結果に基づき、その時の気筒が表欠歯側か裏欠歯側かに応じて欠歯判定フラグをセットする（ステップ２０７）。具体的には、その時のクランクカウンタの値に基づき、今現在の気筒が表欠歯側であれば欠歯判定フラグ＝ＯＮとし、裏欠歯側であれば欠歯判定フラグ＝ＯＦＦとする。最後に、気筒判別完了信号をセットし（ステップ２０８）、本処理を終了する。
【００４５】
また、図１０，図１１は、クランク信号の立ち下がりエッジ毎に起動されるクランクエッジ割込み処理を示すフローチャートである。
先ず図１０のステップ３０１では、クランク信号が有効であるか否かを判別し、続くステップ３０２では今現在、欠歯位置に達しているか否かを判別する。なおここで、ＣＰＵ１１はクランク信号のエッジ入力数から欠歯位置を検出する。ステップ３０１，３０２の何れかがＮＯであれば、そのまま本処理を終了し、気筒判別を実施しない。
【００４６】
ステップ３０１，３０２が共にＹＥＳであればステップ３０３に進み、以下に示す気筒判別の実施条件が成立するか否かを判別する。すなわち、
（イ）吸気カム信号が有効であること、
（ロ）排気カム信号が有効であること、
（ハ）吸気カム信号が異常判定されていること、
のうち、少なくとも何れか一つが満たされていれば、気筒判別が可能であり、ステップ３０３を肯定判別する。ステップ３０３がＹＥＳの場合、ステップ３０４で気筒判別許可信号をＯＮする。その後、気筒判別許可状態（ステップ３０５がＹＥＳ）であることを条件に、後続のステップ３０６に進む。
【００４７】
その後、ステップ３０６では、カム信号或いは欠歯位置により既に気筒判別が完了しているか否かを判別する。そして、気筒判別が完了していればステップ３０７に進み、気筒判別が完了していなければ図１１のステップ３１４に進む。
【００４８】
気筒判別完了後の場合において、ステップ３０７では、吸気カム信号が異常（フェイル）であるか否かを判別する。ここで、吸気カム信号の異常判定は、図示しない別処理にて適宜実施されるものであり、例えば、所定期間内で吸気カム信号のエッジが確認されず、その状態が所定回繰り返された場合、異常（フェイル）発生の旨が判定されるようになっている。
【００４９】
そして、吸気カム信号が異常でなければステップ３０８に進み、吸気カム信号が有効であるか否かを判別する。吸気カム信号が有効である場合、ステップ３０９で吸気カム信号の信号レベルに基づき表欠歯か裏欠歯かを判定する。また、続くステップ３１０では、表欠歯か裏欠歯かに基づいて欠歯判定フラグをセットし、最後に、ステップ３１１では気筒判別完了信号をＯＮする。
【００５０】
また、吸気カム信号が異常（ステップ３０７がＹＥＳ）であればステップ３１２に進み、吸気カム信号を使わずクランク信号のみで欠歯判定を実施する。例えば、クランク信号に基づきエンジンの回転変動をモニタし、その回転変動から見込みで表欠歯か裏欠歯かを判定する。特に本実施の形態では５気筒エンジンを制御対象とするため、表欠歯と裏欠歯（３６０°ＣＡ離れた位置）では回転変動の状態が逆となり、表欠歯か裏欠歯かの判定が容易となる。その後、ステップ３１１で気筒判別完了信号をＯＮし、本処理を終了する。
【００５１】
また、吸気カム信号が異常判定されていないが、同カム信号が有効でない場合（ステップ３０７，３０８が共にＮＯの場合）、ステップ３１３に進む。ステップ３１３では、既に排気カム信号によりセットされている欠歯判定フラグを反転させ、今現在表欠歯か裏欠歯かを判定する。すなわち、この時点では、既に前記図９の処理（ステップ２０７）にて欠歯判定フラグがセットされており、そのフラグが反転される。例えば、センサ故障や断線等の異常が発生している場合において、吸気カム信号が有効でないものの異常判定前であれば、上記のステップ３１３が実施される。その後、ステップ３１１で気筒判別完了信号をＯＮし、本処理を終了する。
【００５２】
一方、気筒判別完了前（ステップ３０６がＮＯ）の場合において、図１１のステップ３１４では、吸気カム信号が異常（フェイル）であるか否かを判別する。そして、吸気カム信号が異常でなければステップ３１５に進み、吸気カム信号が有効であるか否かを判別する。吸気カム信号が有効である場合、ステップ３１６で吸気カム信号の信号レベルに基づき表欠歯か裏欠歯かを判定し、更にその欠歯位置でのクランクカウンタの値から気筒判別を実施する。続くステップ３１７では、表欠歯か裏欠歯かに基づいて欠歯判定フラグをセットし、最後に、図１０のステップ３１１では気筒判別完了信号をＯＮする。要するに、カム信号による気筒判別前であれば、欠歯位置で最初の気筒判別が実施されることとなる。
【００５３】
また、吸気カム信号が異常（図１１のステップ３１４がＹＥＳ）であればステップ３１８に進み、吸気カム信号を使わずクランク信号から見込みで欠歯判定を実施し、更にその欠歯位置でのクランクカウンタの値から気筒判別を実施する。その後、図１０のステップ３１１で気筒判別完了信号をＯＮし、本処理を終了する。
【００５４】
また、吸気カム信号が異常判定されておらず、且つ同カム信号が有効でない場合（図１１のステップ３１４，３１５が共にＮＯの場合）、排気カム信号による気筒判別が完了していないことから、気筒判別を実施せずそのまま本処理を終了する。
【００５５】
なお本実施の形態では、図８のステップ１０６と図９のステップ２０６とが特許請求の範囲に記載した「気筒判別手段」に相当し、図１０のステップ３１３が同「基準位置判定手段」に相当する。また、図９のステップ２０７が同「仮判定手段」に相当し、吸気カム信号が「特定判別信号」に相当する。
【００５６】
以上詳述した本実施の形態によれば、以下に示す効果が得られる。
カム有効判定後に吸気側又は排気側の何れかのカム信号により気筒判別を行い、更にその気筒判別に用いたカム信号で欠歯判定（基準位置判定）を実施するため、断線等の異常（フェイル）が発生したカム信号で欠歯を誤判定するといった不具合が解消される。その結果、エンジン始動時において表裏の欠歯判定を正しく行わせ、ひいてはエンジン始動性を向上させることができる。
【００５７】
また、欠歯判定に用いるカム信号が異常であるとの判定結果を待たず、正確な欠歯判定が実施できる。この場合、異常判定前であっても、誤った制御が防止できる。
【００５８】
本来欠歯判定に用いる吸気カム信号（特定判別信号）が有効判定されれば、その吸気カム信号により欠歯判定を実施し、吸気カム信号が無効判定されれば、他方の排気カム信号により欠歯判定を行う。上記構成では、欠歯判定に用いるカム信号がその都度適切に選択されるようになる。
【００５９】
吸気カム信号について異常（フェイル）であるかどうかを判定し、異常の旨判定された時、欠歯判定を実施しないので、カム信号異常により欠歯が誤って判定されるといった不具合が防止できる。
【００６０】
なお本発明は、上記以外に次の形態にて具体化できる。
上記実施の形態では、角度一致のタイミングで制御出力を行うべく角度タイマを用いて制御システムを具体化したが、フリーランカウンタを用いた周知のタイマ機能により制御出力を行うシステムであっても良い。
【００６１】
クランク信号の基準位置部は、パルス列の２パルス分を抜いた欠歯で構成したが、これに限ることなく、他の構造であっても良い。例えば、等間隔パルス列の途中に不等間隔のパルスを挿入する等の構造にて基準位置部を構成しても良い。また、判別信号としてカム信号（気筒判別信号）を用いたが、表と裏の基準位置部で信号レベルが異なる信号であればこれに限ることはない。
【図面の簡単な説明】
【図１】発明の実施の形態におけるエンジン制御システムの概要を示す構成図。
【図２】エンジン１サイクル（７２０°ＣＡ）分のタイムチャート。
【図３】エンジン始動時における気筒判別の動作を示すタイムチャート。
【図４】エンジン始動時における気筒判別の動作を示すタイムチャート。
【図５】エンジン始動時における気筒判別の動作を示すタイムチャート。
【図６】エンジン始動時における気筒判別の動作を示すタイムチャート。
【図７】エンジン始動時における気筒判別の動作を示すタイムチャート。
【図８】吸気カム信号割込み処理を示すフローチャート。
【図９】排気カム信号割込み処理を示すフローチャート。
【図１０】クランクエッジ割込み処理を示すフローチャート。
【図１１】図１０に引き続き、クランクエッジ割込み処理を示すフローチャート。
【符号の説明】
１…ＥＣＵ、４…クランクセンサ、５，６…カムセンサ、１０…マイコン、１１…ＣＰＵ、１６…タイマモジュール、１００…ハードクランク。
【図１】
0003788289.tif 000002
【図２】
0003788289.tif 000003
【図３】
0003788289.tif 000004
【図４】
0003788289.tif 000005
【図５】
0003788289.tif 000006
【図６】
0003788289.tif 000007
【図７】
0003788289.tif 000008
【図８】
0003788289.tif 000009
【図９】
0003788289.tif 000010
【図１０】
0003788289.tif 000011
【図１１】
0003788289.tif 000012