説明

内燃機関の制御装置

【課題】 比較的簡単な構成のセンサを使用して、機関始動開始時において機関回転位相を早期に精度良く判定することができる内燃機関の制御装置を提供する。
【解決手段】 カム角度センサ11は、カム軸回転信号が、基準角度位置PREFからクランク角度360度の第1角度期間(T1〜T3)に対応する第1角度期間二値信号と、第1角度期間に続くクランク角度360度の第2角度期間(T4〜T6)に対応する第2角度期間二値信号とからなり、第2角度期間二値信号は、第1角度期間二値信号を反転させた信号となるように構成されている。イグニッションスイッチがオンされた時点におけるカム軸回転信号の値と、機関始動開始後のカム軸回転信号と、クランク角度センサにより検出されるクランク角度とに基づいて、機関の始動開始時点における始動開始クランク角度からクランク角度180度の期間内において、機関回転位相を判定する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、内燃機関の制御装置に関し、特にクランク軸の回転角度を検出するクランク角度センサと、カム軸の回転角度に応じたカム軸回転信号を出力するカム角度センサとを用いて機関作動位相を判定する制御装置に関する。
【背景技術】
【0002】
特許文献1には、同文献の図3の最上段に示されるカム軸回転信号を出力するカム角度センサと、同図の2段目に示されるクランク角度10度周期のパルス信号であるクランク軸回転信号を出力するクランク角度センサとを用いて、機関回転位相(制御基準位置)を判定する装置が示されている。この装置では、カム角度センサは、カム軸回転信号の、各気筒の上死点近傍における発生パルス数が異なるように構成され、クランク角度センサは、180度毎に1パルス欠けるようなクランク軸回転信号を出力するように構成される。そして、このように構成されたカム角度センサ及びクランク角度センサを用いることによって、機関始動開始時において比較的短時間で機関回転位相を特定することを可能としている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特許第3782884号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
上記特許文献1に示された装置は、カム角度センサ及びクランク角度センサの構成が比較的複雑であり、より簡単な構成のセンサを使用して、機関始動開始時において早期に機関作動位相を判定する技術が求められていた。
【0005】
本発明はこの点に着目してなされたものであり、比較的簡単な構成のセンサを使用して、機関始動開始時において機関回転位相を早期に精度良く判定することができる内燃機関の制御装置を提供することを目的とする。
【課題を解決するための手段】
【0006】
上記目的を達成するため請求項1に記載の発明は、内燃機関のクランク軸の回転角度であるクランク角度を検出するクランク角度センサと、前記クランク軸の2回転に対応して1回転するカム軸の回転角度に応じたカム軸回転信号を出力するカム角度センサと、前記クランク角度センサによって検出されるクランク角度及び前記カム軸回転信号に基づいて、前記機関の回転位相を判定する回転位相判定手段とを備える内燃機関の制御装置において、前記カム角度センサは、前記カム軸回転信号(SCAM)が、基準角度位置(PREF)からクランク角度360度の第1角度期間(T1〜T3)に対応する第1角度期間二値信号と、前記第1角度期間に続くクランク角度360度の第2角度期間(T4〜T6)に対応する第2角度期間二値信号とからなり、前記第2角度期間二値信号は、前記第1角度期間二値信号を反転させた信号となるように構成されており、前記回転位相判定手段は、前記機関のイグニッションスイッチがオンされた時点における前記カム軸回転信号の値(CAMPORTINI)と、前記機関の始動開始後の前記カム軸回転信号(SCAM)と、前記クランク角度センサにより検出されるクランク角度(CRKINTCNT)とに基づいて、前記機関の始動開始時点における始動開始クランク角度(PS)からクランク角度180度の期間内において、前記機関回転位相(CACYL)を判定することを特徴とする。
【0007】
請求項2に記載の発明は、請求項1に記載の内燃機関の制御装置において、前記機関の気筒数は「4」であり、前記第1角度期間二値信号は、前記基準角度位置(PREF)からクランク角度180度に相当する第1期間(T1)において第1の値(H)をとり、前記第1期間に続く、第1所定角度(CA1)に相当する第2期間(T2)において第2の値(L)をとり、前記第2期間に続く、第2所定角度(CA2)に相当する第3期間(T3)において前記第1の値(H)をとる信号であり、前記第1所定角度(CA1)は、90度未満の値に設定され、前記第2所定角度(CA2)は180度から前記第1所定角度(CA1)を減算した値に設定されることを特徴とする。
【0008】
請求項3に記載の発明は、請求項2に記載の内燃機関の制御装置において、前記回転位相判定手段は、A)前記カム軸回転信号が始動開始後最初に変化した時点(tC1)における、前記始動開始クランク角度(PS)を基準とした第1判定角度(CAD1)が前記第2所定角度CA2以上であるときは、直ちに前記機関回転位相を特定し(領域A)、B)前記第1判定角度(CAD1)が前記第2所定角度CA2より小さいときは、前記第1判定角度(CAD1)を基準とした第2判定角度(CAD2)に応じて、前記機関回転位相を特定する(領域B〜E)ことを特徴とする。
【0009】
請求項4に記載の発明は、請求項3に記載の内燃機関の制御装置において、前記ステップB)においては、B1)前記第2判定角度(CAD2)が前記第1所定角度(CA1)を超える前に前記カム軸回転信号が変化したときは、その時点(tDB)で前記機関回転位相を特定し(領域B)、B2)前記第1判定角度(CAD1)が前記第1所定角度(CA1)以下で、かつ前記第2判定角度(CAD2)が前記第1所定角度(CA1)を超えた後であって前記第2所定角度(CA2)を超える前に前記カム軸回転信号が変化したときは、その時点(tDC)で前記機関回転位相を特定し(領域C)、B3)前記第1判定角度(CAD1)が前記第1所定角度(CA1)より大きく、かつ前記カム軸回転信号が変化する前に前記第2判定角度(CAD2)が前記第1所定角度(CA1)を超えたときは、その時点(tDD)で前記機関回転位相を特定し(領域D)、B4)前記第1判定角度(CAD1)が前記第1所定角度(CA1)以下で、かつ前記カム軸回転信号が変化する前に前記第2判定角度(CAD2)が前記第2所定角度(CA2)を超えたときは、その時点(tDE)で前記機関回転位相を特定する(領域E)ことを特徴とする。
【0010】
請求項5に記載の発明は、請求項1に記載の内燃機関の制御装置において、前記機関の気筒数は「6」であり、前記第1角度期間二値信号は、前記基準角度位置(PREF)からクランク角度120度に相当する第1期間(T1)において第1の値(H)をとり、前記第1期間(T1)に続く、第1所定角度(CA1)に相当する第2期間(T2)において第2の値(L)をとり、前記第2期間(T2)に続く、第2所定角度(CA2)に相当する第3期間(T3)において前記第1の値(H)をとり、前記第3期間(T3)に続く、第3所定角度(CA3)に相当する第4期間(T4)において前記第2の値(L)をとり、前記第4期間(T4)に続く、第4所定角度(CA4)に相当する第5期間(T5)において前記第1の値(H)をとる信号であり、前記第1及び第3所定角度(CA1,CA3)はともに60度未満の異なる値(18度,42度)に設定され、前記第2所定角度(CA2)は120度から前記第1所定角度(CA1)を減算した値(102度)に設定され、前記第4所定角度(CA4)は120度から前記第3所定角度(CA3)を減算した値(78度)に設定されることを特徴とする。
【0011】
請求項6に記載の発明は、請求項5に記載の内燃機関の制御装置において、前記第1所定角度(CA1)は前記第3所定角度(CA3)より小さな値に設定され、前記回転位相判定手段は、A)前記カム軸回転信号が始動開始後最初に変化した時点(tC1)における、前記始動開始クランク角度を基準とした第1判定角度(CAD1)が前記第2所定角度(CA2:102度))以上であるときは、直ちに前記機関回転位相を特定し(領域A)、B)前記第1判定角度(CAD1)が前記第2所定角度(CA2:102度)より小さいときは、前記第1判定角度(CAD1)を基準とした第2判定角度(CAD2)に応じて、前記機関回転位相を特定する(領域B〜G)ことを特徴とする。
【0012】
請求項7に記載の発明は、請求項6に記載の内燃機関の制御装置において、前記回転位相判定手段は、前記ステップB)においては、B1)前記第2判定角度(CAD2)が前記第1所定角度(CA1:18度)を超える前に前記カム軸回転信号が変化したときは、その時点(tDB)で前記機関回転位相を特定し(領域B)、B2)前記第2判定角度(CAD2)が前記第1所定角度(CA1:18度)を超えた後であって前記第3所定角度(CA3:42度)を超える前に前記カム軸回転信号が変化したときは、その時点(tDD)で前記機関回転位相を特定し(領域D)、B3)前記第2判定角度(CAD2)が前記第3所定角度(CA3:42度)を超えた後であって前記第4所定角度(CA4:78度)を超える前に前記カム軸回転信号が変化したときは、その時点(tDE)で前記機関回転位相を特定し(領域E)、B4)前記第2判定角度(CAD2)が前記第4所定角度(CA4:78度)を超えた後であって前記第2所定角度(CA2:102度)を超える前に前記カム軸回転信号が変化したときは、その時点(tDC)で前記機関回転位相を特定し(領域C)、B5)前記第1判定角度(CAD1)が前記第3所定角度(CA3:42度)より大きく、かつ前記カム軸回転信号が変化する前に前記第2判定角度(CAD2)が前記第3所定角度(CA3:42度)を超えたときは、その時点(tDF)で前記機関回転位相を特定し(領域F)、B6)前記第1判定角度(CAD1)が前記第3所定角度(CA3:42度)以下で、かつ前記カム軸回転信号が変化する前に前記第2判定角度(CAD2)が前記第2所定角度(CA2:102度)を超えたときは、その時点(tDG)で前記機関回転位相を特定する(領域G)ことを特徴とする。
【発明の効果】
【0013】
請求項1に記載の発明によれば、カム角度センサは、カム軸回転信号が、基準角度位置からクランク角度360度の第1角度期間に対応する第1角度期間二値信号と、第1角度期間に続くクランク角度360度の第2角度期間に対応する第2角度期間二値信号とからなり、第2角度期間二値信号は、第1角度期間二値信号を反転させた信号となるように構成されているので、イグニッションスイッチがオンされた時点におけるカム軸回転信号の値によって、始動開始クランク角度が含まれる角度領域(始動開始領域)が、第1角度期間または第2角度期間のいずれにあるかを判定することができる(第1判定結果)。また始動開始後のカム軸回転信号及び検出クランク角度に基づいて、始動開始領域(RS)が第1または第2角度期間に含まれるより狭い領域(A〜E)のいずれに相当するかを判定することができる(第2判定結果)。第1判定結果及び第2判定結果を用いることにより、始動開始クランク角度からクランク角度180度の期間内において、機関回転位相を正確に判定することができる。
【0014】
請求項2に記載の発明によれば、4気筒機関において、第1角度期間二値信号は、基準角度位置からクランク角度180度に相当する第1期間において第1の値をとり、第1期間に続く、第1所定角度に相当する第2期間において第2の値をとり、第2期間に続く、第2所定角度に相当する第3期間において第1の値をとるように構成され、第1所定角度は90度未満の値に設定され、第2所定角度は180度から第1所定角度を減算した値に設定される。この設定により、クランク角度センサに、基準となる角度位置を特定するための構成(例えばパルサーの歯の欠損部)を設けることなく、迅速かつ正確な位相判定が可能となる。クランク角度センサのパルサーの歯の欠損部を設けて、その欠損部とカム軸回転信号との相対関係に基づいて機関回転位相を判定する場合には、両者の相対関係のずれ(製造時の特性ばらつき、あるいは急激な回転変動によって発生する欠損部の検出漏れなどに起因する)によって判定精度が低下するおそれがあるが、本発明ではクランク角度センサに、基準となる角度位置を特定するための構成を設ける必要がなく、安定的に高い判定精度が得られる。
【0015】
請求項3に記載の発明によれば、カム軸回転信号が始動開始後最初に変化した時点(tC1)における、始動開始クランク角度を基準とした第1判定角度が第2所定角度以上であるときは、始動開始領域が領域A(図3参照)であることが判定できるので、直ちに機関回転位相を特定することができる。一方、第1判定角度が第2所定角度より小さいときは、始動開始領域を直ちに判定できないため、第1判定角度を基準とした第2判定角度を用いることにより、機関回転位相を特定することができる。
【0016】
請求項4に記載の発明によれば、第1判定角度が第2所定角度より小さいときは、以下のように機関回転位相が特定される。第2判定角度が第1所定角度を超える前にカム軸回転信号が変化したときは、第2判定角度が第1所定角度とほぼ等しく、始動開始領域が領域Bであると判定できるので、その時点で機関回転位相を特定することができる。また第1判定角度が第1所定角度以下で、かつ第2判定角度が第1所定角度を超えた後であって第2所定角度を超える前にカム軸回転信号が変化したときは、第2判定角度が第2所定角度とほぼ等しく、始動開始領域が領域Cであると判定できるので、その時点で機関回転位相を特定することができる。また第1判定角度が第1所定角度より大きく、かつカム軸回転信号が変化する前に第2判定角度が第1所定角度を超えたときは、始動開始領域が領域Dであると判定できるので、その時点で機関回転位相を特定することができ、第1判定角度が第1所定角度以下で、かつカム軸回転信号が変化する前に第2判定角度が第2所定角度を超えたときは、始動開始領域が領域Eであると判定できるので、その時点で機関回転位相を特定することができる。
【0017】
請求項5に記載の発明によれば、6気筒機関において、第1角度期間二値信号は、基準角度位置からクランク角度120度に相当する第1期間において第1の値をとり、第1期間に続く、第1所定角度に相当する第2期間において第2の値をとり、第2期間に続く、第2所定角度に相当する第3期間において第1の値をとり、第3期間に続く、第3所定角度に相当する第4期間において第2の値をとり、第4期間に続く、第4所定角度に相当する第5期間において第1の値をとるように構成され、第1及び第3所定角度はともに60度未満の異なる値に設定され、第2所定角度は120度から第1所定角度を減算した値に設定され、第4所定角度は120度から第3所定角度を減算した値に設定される。この設定により、6気筒機関においても請求項2の発明と同様の効果が得られる。
【0018】
請求項6に記載の発明によれば、第1所定角度は第3所定角度より小さな値に設定され、カム軸回転信号が始動開始後最初に変化した時点における、始動開始クランク角度を基準とした第1判定角度が第2所定角度(102)以上であるときは、始動開始領域が領域A(図12参照)であることが判定できるので、直ちに機関回転位相を特定することができる。一方、第1判定角度が第2所定角度より小さいときは、始動開始領域を直ちに判定できないため、第1判定角度を基準とした第2判定角度を用いることにより、機関回転位相を特定することができる。
【0019】
請求項7に記載の発明によれば、第1判定角度が第2所定角度より小さいときは、以下のように機関回転位相が特定される。第2判定角度が第1所定角度を超える前にカム軸回転信号が変化したときは、第2判定角度は第1所定角度にほぼ等しく、始動開始領域が領域Bであると判定できるので、その時点で機関回転位相を特定することができ、第2判定角度が第1所定角度を超えた後であって第3所定角度を超える前にカム軸回転信号が変化したときは、始動開始領域が領域Dであると判定できるので、その時点で機関回転位相を特定することができ、第2判定角度が第3所定角度を超えた後であって第4所定角度を超える前にカム軸回転信号が変化したときは、始動開始領域が領域Eであると判定できるので、その時点で機関回転位相を特定することができ、第2判定角度が第4所定角度を超えた後であって第2所定角度を超える前にカム軸回転信号が変化したときは、始動開始領域が領域Cであると判定できるので、その時点で機関回転位相を特定することができる。また第1判定角度が第3所定角度より大きく、かつカム軸回転信号が変化する前に第2判定角度が第3所定角度を超えたときは、始動開始領域が領域Fであると判定できるので、その時点で機関回転位相を特定することができ、第1判定角度が第3所定角度以下で、かつカム軸回転信号が変化する前に第2判定角度が第2所定角度を超えたときは、始動開始領域が領域Gであると判定できるので、その時点で機関回転位相を特定することができる。
【図面の簡単な説明】
【0020】
【図1】本発明の一実施形態にかかる内燃機関及びその制御装置を示す図である。
【図2】カム軸回転信号を示すタイムチャートである(第1の実施形態)。
【図3】カム軸回転信号、クランク角度センサの出力パルス、機関回転位相(CACYL)、及び機関回転位相の判定に使用される角度領域(A〜E)を示すタイムチャートである(第1の実施形態)。
【図4】機関回転位相の判定手法を説明するためのタイムチャートである(第1の実施形態)。
【図5】イグニッションスイッチがオンされたときに実行される初期化処理のフローチャートである。
【図6】クランク角度センサの出力パルスに応じた割り込み処理のフローチャートである(第1の実施形態)。
【図7】カム軸回転信号に応じた割り込み処理のフローチャートである(第1の実施形態)。
【図8】図6及び図7の処理で実行される位相判定処理のフローチャートである。
【図9】図6及び図7の処理で実行される位相判定処理のフローチャートである。
【図10】クランク角度センサの出力パルスの変形例を示すタイムチャートである。
【図11】カム軸回転信号を示すタイムチャートである(第2の実施形態)。
【図12】カム軸回転信号、クランク角度センサの出力パルス、機関回転位相(CACYL)、及び機関回転位相の判定に使用される角度領域(A〜G)を示すタイムチャートである(第2の実施形態)。
【図13】機関回転位相の判定手法を説明するためのタイムチャートである(第2の実施形態)。
【図14】機関回転位相の判定手法を説明するためのタイムチャートである(第2の実施形態)。
【図15】クランク角度センサの出力パルスに応じた割り込み処理のフローチャートである(第2の実施形態)。
【図16】カム軸回転信号に応じた割り込み処理のフローチャートである(第2の実施形態)。
【図17】図15及び図16の処理で実行される位相判定処理のフローチャートである。
【図18】図15及び図16の処理で実行される位相判定処理のフローチャートである。
【発明を実施するための形態】
【0021】
以下本発明の実施の形態を図面を参照して説明する。
[第1の実施形態]
図1は本発明の一実施形態にかかる内燃機関及びその制御装置の構成を示す図である。内燃機関(以下単に「エンジン」という)1は、4気筒を有し、吸気管2を備えている。吸気管2にはスロットル弁3が設けられている。
【0022】
燃料噴射弁6はエンジン1とスロットル弁3との間かつ吸気管2の図示しない吸気弁の少し上流側に各気筒毎に設けられており、各噴射弁は図示しない燃料ポンプに接続されていると共に電子制御ユニット(以下「ECU」という)5に電気的に接続されてECU5からの制御信号により燃料噴射弁6の開弁時期及び開弁時間(燃料噴射時期及び燃料噴射時間)が制御される。エンジン1の各気筒の点火プラグ7は、ECU5に接続されており、ECU5からの点火信号により点火時期が制御される。
【0023】
吸気管2のスロットル弁3の下流には吸気圧PBAを検出する吸気圧センサ9が設けられており、その検出信号はECU5に供給される。
ECU5には、エンジン1のクランク軸8の回転角度を検出するクランク角度センサ10と、エンジン1の吸気弁及び排気弁を駆動するカムが固定されるカム軸(図示せず)の回転角度を検出するカム角度センサ11とが接続されている。クランク角度センサ10は、比較的短い一定クランク角周期(例えば6度周期)で1パルス(以下「CRKパルス」という)を発生し、ECU5に供給する。カム軸は、クランク軸8の2回転に対応して1回転する。
【0024】
カム角度センサ11は、図2に示すカム軸回転信号SCAMを出力する。すなわち、カム角度センサ11は、カム軸回転信号SCAMが基準角度位置PREFからクランク角度180度に相当する第1期間T1において高レベルH(第1の値)をとり、第1期間T1に続く、第1所定角度CA1(例えばクランク角度24度)に相当する第2期間T2において低レベルL(第2の値)をとり、第2期間T2に続く、第2所定角度CA2(例えばクランク角度156度)に相当する第3期間T3において高レベルHをとり、第3期間T3に続くクランク角度180度に相当する第4期間T4において低レベルLをとり、第4期間T4に続く、第1所定角度CA1に相当する第5期間T5において高レベルHをとり、第5期間T5に続く、第2所定角度CA2に相当する第6期間T3において低レベルLをとるように構成されている。
【0025】
すなわちカム角度センサ11は、第4〜第6期間T4〜T6におけるカム軸回転信号SCAMは、第1〜第3期間T1〜T3におけるカム軸回転信号SCAMを反転させた信号となるように構成されている。また第1所定角度CA1と第2所定角度CA2との和は180度となるように設定されている。
【0026】
なお、カム角度センサ11は検出素子としてホール素子を使用しており、イグニッションスイッチがオンされた時点(エンジン制御装置に電源が供給された時点)における回転位相に対応した値(高レベルHまたは低レベルL)を出力する。
【0027】
ECU5のCPUは、クランク角度センサ10及びカム角度センサ11の出力信号に基づいて、エンジン1の回転位相判定(気筒判別)を行う。CRKパルスは、燃料噴射時期、点火時期等の各種タイミング制御、エンジン回転数(エンジン回転速度)NEの検出に使用される。
【0028】
図3は、本実施形態におけるエンジン回転位相判定(エンジン始動直後)の手法を説明するためのタイムチャートである。図3(a)及び(b)は、それぞれカム角度センサ11及びクランク角度センサ10の出力信号を示す。図の上部に示すCACYLは、エンジン1の720度周期(1燃焼サイクル)の回転位相(以下「エンジン回転位相」という)であり、CRKCNTは対応するCRKパルス(6度周期)のカウント値(以下「回転位相カウント値」という)である。図3に示すエンジン回転位相CACYLと、各気筒の行程との関係は予め設定されているので、エンジン回転位相CACYLを判定することにより、各気筒に対応した燃料噴射及び点火を適切なタイミングで実行することができる。
【0029】
本実施形態におけるカム角度センサ11は、上述したように第4〜第6期間T4〜T6におけるカム軸回転信号SCAMは、第1〜第3期間T1〜T3におけるカム軸回転信号SCAMを反転させた信号となるように構成されているので、イグニッションスイッチがオンされたときの信号値(以下「初期信号値」という)SCINI(高レベルHであるか低レベルLであるか)と、始動開始位置PSが同図(c)に示す領域A〜Eのいずれに含まれているかの判定結果とに基づいて、エンジン回転位相判定が行われる。例えば、始動開始位置PSが領域Aにあると判定された場合、初期信号値SCINIが「H」であれば、始動開始位置PSが図3に示すエンジン回転位相0度直後の領域Aにあるとが判別でき、初期信号値SCINIが「L」であれば、エンジン回転位相360度直後の領域Aにあるとが判別できる。始動開始位置PSが含まれている領域(以下「始動開始領域」という)RSが特定されると、その始動開始領域RSの判定時点tRSDにおいてエンジン回転位相CACYLを特定することができ、その判定時点tRSD以後の燃料噴射及び点火を正しい順序で実行することが可能となる。
【0030】
そこで、次に始動開始領域RSが領域A〜Eのいずれであるかの判定手法について図4を参照して説明する。
1)始動開始領域RSが領域Aであるときは、始動開始位置PSから始動開始後最初にカム軸回転信号SCAMが変化する時点(以下「第1変化タイミング」という)tC1までの第1判定角度CAD1(A)は、第2所定角度CA2以上となる(図4(a),RS=A)。したがって、第1変化タイミングtC1において、第1判定角度CAD1が第2所定角度CA2以上であるときは、始動開始領域RSは領域Aであると判定できる(時刻tDA=tC1)。
【0031】
2)第1判定角度CAD1が第2所定角度CA2より小さいときは、第1判定角度CAD1を基準とした(第1変化タイミングtC1におけるクランク角度を「0」度とした)第2判定角度CAD2に応じて、下記3)〜6)の条件を判別することにより、始動開始領域RSが領域B〜Eの何れであるかを判定することができる。以下の説明では、第1変化タイミングtC1の次にカム軸回転信号SCAMが変化する時点を「第2変化タイミングtC2」という。
【0032】
3)始動開始領域RSが領域Bであるときは、第1判定角度CAD1(B)は、第2所定角度CA2より小さくなり、第2変化タイミングtC2における第2判定角度CAD2(B)が、第1所定角度CA1と等しくなる(図4(a),RS=B)。換言すれば、第2判定角度CAD2(B)が第1所定角度CA1を超える前に、カム軸回転信号SCAMが変化する。
【0033】
4)始動開始領域RSが領域Cであるときは、第1判定角度CAD1(C)は第1所定角度以下であり、かつ第2変化タイミングtC2における第2判定角度CAD2(C)が、第2所定角度CA2と等しくなる(図4(b))。換言すれば、第2判定角度CAD2(C)が第1所定角度CA1を超えた後であって第2所定角度CA2を超える前に、カム軸回転信号SCAMが変化する。
【0034】
5)始動開始領域RSが領域Dであるときは、第1判定角度CAD1(D)は、第1所定角度CA1より大きくなり、かつ第2変化タイミングtC2より前に第2判定角度CAD2(D)が第1所定角度CA1を超える(図4(c),RS=D)。
【0035】
6)始動開始領域RSが領域Eであるときは、第1判定角度CAD1(E)は、第1所定角度CA1以下であり、かつ第2変化タイミングtC2より前に第2判定角度CAD2(D)が第2所定角度CA2を超える(図4(c),RS=E)。
【0036】
図4から明らかなように、上記3)〜6)の条件を判別することにより、それぞれ時刻tDB,tDC,tDD,及びtDEにおいて、始動開始領域RSを判定することができる。したがって、始動開始領域RSが領域A〜Eのいずれであっても、始動開始位置PSからクランク角度180度以内で、エンジン回転位相CACYLの判定を完了することができる。
【0037】
次に図5〜図9を参照して、エンジン回転位相CACYLの判定処理を説明する。これらの図に示す処理は、ECU5のCPUで実行される。本実施形態では、クランク角度の検出は、6度周期のCRKパルスをカウントすることにより行われる。したがって、CRKパルスのカウント値が上述した判定角度CAD1及びCAD2に対応するパラメータとして使用される。
【0038】
図5は、初期化処理のフローチャートである。初期化処理は、イグニッションスイッチがオンされたときに1回だけ実行される。
ステップS11では、カム軸回転信号SCAMの値が高レベルHか否かを判別し、その答が肯定(YES)であるときは、初期値フラグCAMPORTINIを「1」に設定する(ステップS12)。カム軸回転信号SCAMの値が低レベルLであるときは、初期値フラグCAMPORTINIを「0」に設定する(ステップS13)。その後、第1判定実行フラグCRKINTCHK、始動開始領域パラメータCYLPATN、クランク角度判定パラメータCRKCNTJUG、クランク角度パラメータCRKINCNT、及びカム角度パラメータCAMINTCNTを「0」に設定する初期化を実行する(ステップS14)。これらのフラグ及びパラメータは、図6及び/または図7の処理で使用されるものである。
【0039】
図6は、CRKパルスの発生に同期して実行されるCRK割り込み処理のフローチャートである。
ステップS21では、クランク角度パラメータCRKINTCNTを「1」だけ増加させ、ステップS22では、第1判定実行フラグCRKINTCHKが「1」であるか否かを判別する。第1判定実行フラグCRKINTCHKは、図7に示すCAM割り込み処理で設定されるフラグであり(ステップS35,S36,S42)、最初はステップS22の答は否定(NO)であるので、直ちに処理を終了する。CAM割り込み処理は、カム軸回転信号SCAMの値が変化するタイミングで実行される処理であり、始動開始後最初のCAM割り込み処理(以下単に「最初のCAM割り込み処理」という)で、始動開始領域RSの判定が完了しないとき、第1判定実行フラグCRKINTCHKが「1」に設定される。前述したように、最初のCAM割り込み処理で始動開始領域の判定が完了するのは、始動開始領域RSが領域Aである場合のみである。
【0040】
ステップS22の答が肯定(YES)、すなわち第1判定実行フラグCRKINTCHKが「1」であるときは、クランク角度パラメータCRKINTCNTが第1所定値nCRK1に「2」を加算した値と等しいか否かを判別する(ステップS23)。第1所定値nCRK1は、第1所定角度CA1(24度)に対応するCRKパルス数であり、本実施形態では「4」である。「2」を加算するのは、誤差を考慮して判定精度を高めるためである。
【0041】
ステップS23の答が肯定(YES)であるときは、クランク角度判定パラメータCRKCNTJUGの値が「1」であるか否かを判別する(ステップS24)。クランク角度判定パラメータCRKCNTJUGは、最初のCAM割込処理で設定されるパラメータであり、クランク角度パラメータCRKINTCNTの値が(nCRK1+1)より大きいとき「1」に設定され(ステップS35)、(nCRK1+1)以下であるとき「2」に設定される(ステップS36)。
【0042】
ステップS24の答が否定(NO)であるときは、直ちにステップS29に進む。一方、クランク角度判定パラメータCRKCNTJUGが「1」であるときは、最初のCAM割り込み処理におけるクランク角度パラメータCRKINTCNTの値が、(nCRK1+1)より大きく、かつ次のCAM割り込み処理が実行される前に(第2変化タイミングtC2より前に)クランク角度パラメータCRKINTCNTが第1所定値nCRK1を超えたことを示すので、始動開始領域RSは領域Dであると判定し、始動開始領域パラメータCYLPATNを、領域Dを示す領域D指示値NPDに設定する(ステップS25)。ステップS25実行後は、ステップS29に進む。
【0043】
ステップS23の答が否定(NO)であるときは、クランク角度パラメータCRKINTCNTが第2所定値nCRK2に「1」を加算した値と等しいか否かを判別する(ステップS26)。第2所定値nCRK2は、第2所定角度CA2(156度)に対応するCRKパルス数であり、本実施形態では「26」である。「1」を加算するのは、誤差を考慮して判定精度を高めるためである。
【0044】
ステップS26の答が肯定(YES)であるときは、クランク角度判定パラメータCRKCNTJUGの値が「2」であるか否かを判別する(ステップS27)。ステップS26またはS27の答が否定(NO)であるときは直ちにステップS29に進む。ステップ27の答が肯定(YES)であるときは、最初のCAM割り込み処理におけるクランク角度パラメータCRKINTCNTの値が、(nCRK1+1)以下であり、かつ次のCAM割り込み処理が実行される前に(第2変化タイミングtC2より前に)クランク角度パラメータCRKINTCNTが第2所定値nCRK2を超えたことを示すので、始動開始領域RSは領域Eであると判定し、始動開始領域パラメータCYLPATNを、領域Eを示す領域E指示値NPEに設定する(ステップS28)。ステップS28実行後は、ステップS29に進む。
ステップS29では、図8及び図9に示す位相判定処理を実行する。
【0045】
図7は、CAM割り込み処理のフローチャートである。
ステップS31では、カム角度パラメータCAMINTCNTが「0」であるか否かを判別する。最初はこの答は肯定(YES)であるので、ステップS32に進み、クランク角度パラメータCRKINCNTが第2所定値nCRKより大きいか否かを判別する。この答が肯定(YES)であるときは、始動開始領域RSは領域Aであると判定し、始動開始領域パラメータCYLPATNを、領域Aを示す領域A指示値NPAに設定する(ステップS33)。その後ステップS43に進む。
【0046】
ステップS32の答が否定(NO)であるときは、クランク角度パラメータCRKINTCNTが第1所定値nCRK1に「1」を加算した値より大きいか否かを判別する(ステップS34)。この答が肯定(YES)、すなわち(nCRK1+1)<CRKINTCNT≦(nCRK2−1)であるときは、第1判定実行フラグCRKINTCHKを「1」に設定するとともに、クランク角度判定パラメータCRKCNTJUGを「1」に設定する(ステップS35)。その後ステップS43に進む。
【0047】
ステップS34の答が否定(NO)、すなわちCRKINTCNT≦(nCRK1+1)であるときは、第1判定実行フラグCRKINTCHKを「1」に設定するとともに、クランク角度判定パラメータCRKCNTJUGを「2」に設定する(ステップS36)。その後ステップS43に進む。
【0048】
ステップS43では、カム角度パラメータCAMINTCNTを「1」だけ増加させるとともに、クランク角度パラメータCRKINTCNTを「0」に戻す。その後ステップS44に進み、図8及び図9に示す位相判定処を実行する。
【0049】
ステップS31の答が否定(NO)、すなわちカム角度パラメータCAMINTCNTが「1」以上であるときは、カム角度パラメータCAMINTCNTが「1」であるか否かを判別する(ステップS37)。その答が否定(NO)であるときは、直ちにステップS43に進む。
【0050】
ステップS37の答が肯定(YES)、すなわち始動開始後2回目のCAM割り込み処理であるときは、クランク角度パラメータCRKINCNTが第1所定値nCRK1から「1」を減算した値以上で、かつ第1所定値nCRK1に「1」を加算した値以下であるか否かを判別する(ステップS38)。その答が肯定(YES)であるときは、始動開始領域RSは領域Bであると判定し、始動開始領域パラメータCYLPATNを領域B指示値NPBに設定する(ステップS39)。その後ステップS42に進む。
【0051】
ステップS38の答が否定(NO)であるときは、クランク角度判定パラメータCRKCNTJUGが「2」であるか否かを判別する(ステップS40)。その答が否定(NO)であるときは直ちにステップS43に進む。一方、ステップS38の答が否定(NO)でかつステップS40の答が肯定(YES)であるとき、すなわちクランク角度パラメータCRKINTCNTが(第1所定値nCRK1±1)の範囲外であって、かつ第1判定角度CAD1が(nCRK1+1)以下であるときは、始動開始領域RSは領域Cであると判定し、始動開始領域パラメータCYLPATNを領域C指示値NPCに設定する(ステップS41)。その後ステップS42に進む。
【0052】
ステップS42では、第1判定実行フラグCRKINTCHKを「0」に戻し、ステップS43に進む。ステップS39の答が否定(NO)であるときは直ちにステップS43に進む。
【0053】
図8及び図9は、図6のステップS29及び図7のステップS44で実行される位相判定処理のフローチャートである。
ステップS51では、始動開始領域パラメータCYLPATNの値が領域A指示値NPAであるか否かを判別し、その答が肯定(YES)であるときは、初期値フラグCAMPORTINIが「1」であるか否かを判別する(ステップS52)。その答が肯定(YES)であるときは、エンジン回転位相CACYLが180度であると判定し、回転位相カウント値CRKCNTを「30」に設定する(図3参照)(ステップS53)。一方、ステップS52の答が否定(NO)であるときは、エンジン回転位相CACYLが540度であると判定し、回転位相カウント値CRKCNTを「90」に設定する(ステップS54)。
【0054】
ステップS51の答が否定(NO)であるときは、始動開始領域パラメータCYLPATNの値が領域B指示値NPBであるか否かを判別し(ステップS55)、その答が肯定(YES)であるときは、初期値フラグCAMPORTINIが「1」であるか否かを判別する(ステップS56)。その答が肯定(YES)であるときは、エンジン回転位相CACYLが204度であると判定し、回転位相カウント値CRKCNTを「34」に設定する(ステップS57)。一方、ステップS56の答が否定(NO)であるときは、エンジン回転位相CACYLが564度であると判定し、回転位相カウント値CRKCNTを「94」に設定する(ステップS58)。
【0055】
ステップS55の答が否定(NO)であるときは、始動開始領域パラメータCYLPATNの値が領域E指示値NPCであるか否かを判別し(ステップS59)、その答が肯定(YES)であるときは、初期値フラグCAMPORTINIが「1」であるか否かを判別する(ステップS60)。その答が肯定(YES)であるときは、エンジン回転位相CACYLが0度であると判定し、回転位相カウント値CRKCNTを「0」に設定する(ステップS61)。一方、ステップS60の答が否定(NO)であるときは、エンジン回転位相CACYLが360度であると判定し、回転位相カウント値CRKCNTを「60」に設定する(ステップS62)。
【0056】
ステップS59の答が否定(NO)であるときは、始動開始領域パラメータCYLPATNの値が領域D示値NPDであるか否かを判別し(ステップS63)、その答が肯定(YES)であるときは、初期値フラグCAMPORTINIが「1」であるか否かを判別する(ステップS64)。その答が肯定(YES)であるときは、エンジン回転位相CACYLが396度であると判定し、回転位相カウント値CRKCNTを「66」に設定する(ステップS65)。一方、ステップS64の答が否定(NO)であるときは、エンジン回転位相CACYLが36度であると判定し、回転位相カウント値CRKCNTを「6」に設定する(ステップS66)。ステップS65及びS66における回転位相カウント値CRKCNTの設定は、図6のステップS23における「+2」が考慮されている。
【0057】
ステップS63の答が否定(NO)であるときは、始動開始領域パラメータCYLPATNの値が領域E指示値NPEであるか否かを判別し(ステップS67)、その答が肯定(YES)であるときは、初期値フラグCAMPORTINIが「1」であるか否かを判別する(ステップS68)。その答が肯定(YES)であるときは、エンジン回転位相CACYLが522度であると判定し、回転位相カウント値CRKCNTを「87」に設定する(ステップS69)。一方、ステップS68の答が否定(NO)であるときは、エンジン回転位相CACYLが162度であると判定し、回転位相カウント値CRKCNTを「27」に設定する(ステップS70)。ステップS69及びS70における回転位相カウント値CRKCNTの設定は、図6のステップS26における「+1」が考慮されている。ステップS67の答が否定(NO)であるときは直ちに処理を終了する。
【0058】
以上のように本実施形態では、カム角度センサ11は、カム軸回転信号SCAMが、基準角度位置PREFからクランク角度360度の第1角度期間(T1〜T3)に対応する第1角度期間二値信号と、第1角度期間(T1〜T3)に続くクランク角度360度の第2角度期間(T4〜T6)に対応する第2角度期間二値信号とからなり、第2角度期間二値信号は、第1角度期間二値信号を反転させた信号となるように構成されているので、イグニッションスイッチがオンされた時点におけるカム軸回転信号SCAMの値を示す初期値フラグCAMPORTINIによって、始動開始位置PSが含まれる始動開始領域RSが、第1角度期間(T1〜T3)または第2角度期間(T4〜T6)のいずれにあるかを判定することができる(第1判定結果)。また始動開始後のカム軸回転信号SCAMと、検出クランク角度を示すクランク角度パラメータCRKINTCNTとに基づいて、始動開始領域RSが第1または第2角度期間に含まれるより狭い領域A〜Eのいずれであるかを判定することができる(第2判定結果)。第1判定結果及び第2判定結果を用いることにより、始動開始位置PSからクランク角度180度の期間内において、エンジン回転位相CACYLを正確に判定することができる。
【0059】
より具体的には、第1角度期間二値信号は、基準角度位置PREFからクランク角度180度に相当する第1期間T1において高レベルHをとり、第1期間T1に続く、第1所定角度CA1に相当する第2期間T2において低レベルLをとり、第2期間T2に続く、第2所定角度CA2に相当する第3期間T3において高レベルHをとるように構成され、第1所定角度CA1は24度に設定され、第2所定角度CA2は180度から第1所定角度CA1を減算した156度に設定される。この設定により、クランク角度センサ10に、基準となる角度位置を特定するための構成(例えばパルサーの歯の欠損部)を設けることなく、迅速かつ正確な位相判定が可能となる。クランク角度センサにおいてパルサーの歯の欠損部を設けて、その欠損部とカム軸回転信号との相対関係に基づいてエンジン回転位相CACYLを判定する場合には、両者の相対関係のずれ(製造時の特性ばらつき、あるいは急激な回転変動によって発生する欠損部の検出漏れなどに起因する)によって判定精度が低下するおそれがあるが、本実施形態ではクランク角度センサ10に基準となる角度位置を特定するための構成を設ける必要がなく、安定的に高い判定精度が得られる。
【0060】
またカム軸回転信号SCAMが始動開始後最初に変化した第1変化タイミングtC1における、第1判定角度CAD1が第2所定角度CA2以上であるときは、始動開始領域RSが領域Aであると判定できる(図4(a),RS=A)ので、直ちにエンジン回転位相CACYLを特定することができる(tDA=tC1)。一方、第1判定角度CAD1が第2所定角度CA2より小さいときは、始動開始領域RSを直ちに判定できないため、第1判定角度CAD1を基準とした第2判定角度CAD2を用いることにより、以下のようにエンジン回転位相CACYLを特定することができる。
【0061】
すなわち、第2判定角度CAD2が第1所定角度CA1を超える前にカム軸回転信号SCAMが変化したときは(図4(a),tC2)、第2変化タイミングtC2における第2判定角度CAD2が第1所定角度CA1とほぼ等しく、始動開始領域RSが領域Bであると判定できるので(図4(a),RS=B)、その時点tDB(=tC2)でエンジン回転位相CACYLを特定することができる。また、第1判定角度CAD1が第1所定角度CAD1以下で、かつ第2判定角度CAD2が第1所定角度CA1を超えた後であって第2所定角度CA2を超える前にカム軸回転信号SCAMが変化したときは、第2変化タイミングtC2における第2判定角度CAD2が第2所定角度CA2とほぼ等しく、始動開始領域RSが領域Cであることを判定できるので(図4(b))、その時点tDC(=tC2)でエンジン回転位相CACYLを特定することができる。
【0062】
また、第1判定角度CAD1が第1所定角度CA1より大きく、かつカム軸回転信号SCAMが変化する前に(tC2より前に)第2判定角度CAD2が第1所定角度CA1を超えたときは、始動開始領域が領域Dであると判定できる(図4(c),RS=D)ので、その時点(tDD)でエンジン回転位相CACYLを特定することができる。また、第1判定角度CAD1が第1所定角度CA1以下で、かつカム軸回転信号SCAMが変化する前に(tC2より前に)第2判定角度CAD2が第2所定角度CA2を超えたときは、始動開始領域RSが領域Eであると判定できる(図4(c),RS=E)ので、その時点(tDE)でエンジン回転位相CACYLを特定することができる。
【0063】
本実施形態では、ECU5のCPUが、回転位相判定手段を構成し、図5〜図9の処理が回転位相判定手段に相当する。
【0064】
なお上述した実施形態では、CRKパルスがクランク角度6度毎に常に発生するように構成されたクランク角度センサ10を使用したが、図10(b)に示すように360度毎に欠け部CT(例えば2パルスの欠け)を含むCRKパルス列を生成するクランク角度センサを使用しても、上述した実施形態と同様に始動開始位置PSからクランク角度180度以内でエンジン回転位相CACYLを判定することができる。
【0065】
また上述した実施形態では、第1所定角度CA1を24度に設定し、第2所定角度CA2を156度に設定したが、第1所定角度CA1を90度未満の値に設定することにより、上述した実施形態と同様に始動開始位置PSからクランク角度180度以内でエンジン回転位相CACYLを判定することができる。
【0066】
[第2の実施形態]
本実施形態は、6気筒エンジンの制御装置に本発明を適用したものである。以下に説明する点以外は、第1の実施形態と同一である。
【0067】
本実施形態では、カム角度センサ11は、図11(a)に示すカム軸回転信号SCAMを出力する。カム角度センサ11は、カム軸回転信号SCAMが基準角度位置PREFからクランク角度120度に相当する第1期間T1において高レベルH(第1の値)をとり、第1期間T1に続く、第1所定角度CA1(例えばクランク角度18度)に相当する第2期間T2において低レベルL(第2の値)をとり、第2期間T2に続く、第2所定角度CA2(例えばクランク角度102度)に相当する第3期間T3において高レベルHをとり、第3期間T3に続く第3所定角度CA3(例えば42度)に相当する第4期間T4において低レベルLをとり、第4期間T4に続く、第4所定角度CA4(例えば78度)に相当する第5期間T5において高レベルHをとり、第5期間T5に続く、クランク角度120度に相当する第6期間T6において低レベルLをとり、第6期間T6に続く、第1所定角度CA1に相当する第7期間T7において高レベルHをとり、第7期間T7に続く、第2所定角度CA2に相当する第8期間T8において低レベルLをとり、第8期間T8に続く第3所定角度CA3に相当する第9期間T9において高レベルHをとり、第9期間T9に続く、第4所定角度CA4に相当する第10期間T10において低レベルLをとるように構成されている。
【0068】
すなわちカム角度センサ11は、第6〜第10期間T6〜T10におけるカム軸回転信号SCAMは、第1〜第5期間T1〜T5におけるカム軸回転信号SCAMを反転させた信号となるように構成されている。また第1所定角度CA1と第2所定角度CA2との和、及び第3所定角度CA3と第4所定角度CA4との和は、ともに120度となるように設定されている。
【0069】
図12は、本実施形態におけるエンジン回転位相判定(エンジン始動直後)の手法を説明するためのタイムチャートである。図12(a)及び(b)は、それぞれカム角度センサ11及びクランク角度センサ10の出力信号を示す。
【0070】
本実施形態におけるカム角度センサ11は、上述したように第6〜第10期間T6〜T10におけるカム軸回転信号SCAMは、第1〜第5期間T1〜T5におけるカム軸回転信号SCAMを反転させた信号となるように構成されているので、初期信号値SCINIと、始動開始領域RSが同図(c)に示す領域A〜Gのいずれであるかの判定結果とに基づいて、エンジン回転位相判定が行われる。
【0071】
そこで、次に始動開始領域RSが領域A〜Gのいずれであるかの判定手法について図13及び図14を参照して説明する。
1)始動開始領域RSが領域Aであるときは、始動開始位置PSから始動開始後最初にカム軸回転信号SCAMが変化する第1変化タイミングtC1までの第1判定角度CAD1(A)は、第2所定角度CA2以上となる(図13(a),RS=A)。したがって、第1変化タイミングtC1において、第1判定角度CAD1が第2所定角度CA2以上であるときは、始動開始領域RSは領域Aであると判定できる(時刻tDA)。
【0072】
2)第1判定角度CAD1が第2所定角度CA2より小さいときは、第1判定角度CAD1を基準とした第2判定角度CAD2に応じて、下記3)〜8)の条件を判別することにより、始動開始領域RSが領域B〜Gの何れであるかを判定することができる。
【0073】
3)始動開始領域RSが領域Bであるときは、第1判定角度CAD1(B)は、第2所定角度CA2より小さくなり、第2変化タイミングtC2における第2判定角度CAD2(B)が、第1所定角度CA1と等しくなる(図13(a),RS=B)。換言すれば、第2判定角度CAD2(B)が第1所定角度CA1を超える前に、カム軸回転信号SCAMが変化する。
【0074】
4)始動開始領域RSが領域Cであるときは、第1判定角度CAD1(C)は、第1所定角度CA1以下であり、かつ第2変化タイミングtC2における第2判定角度CAD2(C)が、第2所定角度CA2と等しくなる(図13(b))。換言すれば、第2判定角度CAD2(C)が第4所定角度CA4を超えた後であって第2所定角度CA2を超える前に、カム軸回転信号SCAMが変化する。
【0075】
5)始動開始領域RSが領域Dであるときは、第2変化タイミングtC2における第2判定角度CAD2(D)が、第3所定角度CA3と等しくなる(図13(c),RS=D)。換言すれば、第2判定角度CAD2(D)が第1所定角度CA1を超えた後であって第3所定角度CA3を超える前に、カム軸回転信号SCAMが変化する。
【0076】
6)始動開始領域RSが領域Eであるときは、第2変化タイミングtC2における第2判定角度CAD2(E)が、第4所定角度CA4と等しくなる(図14(a))。換言すれば、第2判定角度CAD2(D)が第3所定角度CA3を超えた後であって第4所定角度CA4を超える前に、カム軸回転信号SCAMが変化する。
【0077】
7)始動開始領域RSが領域Fであるときは、第1判定角度CAD1(F)は、第3所定角度CA1より大きくなり、かつ第2変化タイミングtC2より前に第2判定角度CAD2(F)が第3所定角度CA3を超える(図14(b),RS=F)。
【0078】
8)始動開始領域RSが領域Gであるときは、第1判定角度CAD1(G)は、第3所定角度CA3以下であり、かつ第2変化タイミングtC2より前に第2判定角度CAD2(G)が第2所定角度CA2を超える(図4(b),RS=G)。
【0079】
図13及び図14から明らかなように、上記3)〜8)の条件を判別することにより、それぞれ時刻tDB,tDC,tDD,tDE,tDF,及びtDGにおいて、始動開始領域RSを判定することができる。上記条件8)の判定は、始動開始位置PSから最大でクランク角度(CA2+CA3)(144度)の期間を必要とし、他の条件3)〜7)の判定は、これより短い期間で行うことができる。したがって、本実施形態では、始動開始位置PSからクランク角度(CA2+CA3)以内で、エンジン回転位相CACYLの判定を完了することができる。
【0080】
次に図15〜図18を参照して、本実施形態におけるエンジン回転位相CACYLの判定処理を説明する。これらの図に示す処理は、第1の実施形態における図6〜図9の処理に相当する処理である。本実施形態においても、図5に示す初期化処理が実行され、始動開始時におけるカム軸回転信号SCAMの値に応じて初期値フラグCAMPORTINIの設定、及び他のパラメータの初期化が行われる。
【0081】
図15は、CRKパルスの発生に同期して実行されるCRK割り込み処理のフローチャートである。
ステップS81では、クランク角度パラメータCRKINTCNTを「1」だけ増加させ、ステップS82では、第1判定実行フラグCRKINTCHKが「1」であるか否かを判別する。第1判定実行フラグCRKINTCHKは、図16に示すCAM割り込み処理で設定されるフラグであり(ステップS105,S106,S115)、最初はステップS82の答は否定(NO)であるので、直ちに処理を終了する。
【0082】
ステップS82の答が肯定(YES)、すなわち第1判定実行フラグCRKINTCHKが「1」であるときは、カム角度パラメータCAMINTCNTが「1」であるか否かを判別する(ステップS83)。最初はこの答は否定(NO)であるので、直ちに処理を終了する。
【0083】
最初のCAM割り込み処理が実行され、ステップS105またはS106が実行されると、ステップS82及びS83の答がともに肯定(YES)となり、ステップS84に進んで、クランク角度パラメータCRKINTCNTが第3所定値nCRK3に「1」を加算した値と等しいか否かを判別する。第3所定値nCRK3は、第3所定角度CA3(42度)に対応するCRKパルス数であり、本実施形態では「7」である。「1」を加算するのは、誤差を考慮して判定精度を高めるためである。
【0084】
ステップS84の答が肯定(YES)であるときは、クランク角度判定パラメータCRKCNTJUGの値が「1」であるか否かを判別する(ステップS85)。クランク角度判定パラメータCRKCNTJUGは、最初のCAM割り込み処理でクランク角度パラメータCRKINTCNTの値が第3所定値nCRK3より大きいとき「1」に設定され(ステップS105)、第3所定値nCRK3以下であるとき「2」に設定される(ステップS106)。
【0085】
ステップS85の答が否定(NO)であるときは、直ちにステップS90に進む。一方、クランク角度判定パラメータCRKCNTJUGが「1」であるときは、最初のCAM割り込み処理におけるクランク角度パラメータCRKINTCNTの値が、第3所定値nCRK3より大きく、かつ次のCAM割り込み処理が実行される前に(第2変化タイミングtC2より前に)クランク角度パラメータCRKINTCNTが第3所定値nCRK3を超えたことを示すので、始動開始領域RSは領域Fであると判定し、始動開始領域パラメータCYLPATNを、領域Fを示す領域F指示値NPFに設定する(ステップS86)。ステップS86実行後は、ステップS90に進む。
【0086】
ステップS84の答が否定(NO)であるときは、クランク角度パラメータCRKINTCNTが第2所定値nCRK2に「1」を加算した値と等しいか否かを判別する(ステップS87)。第2所定値nCRK2は、第2所定角度CA2(102度)に対応するCRKパルス数であり、本実施形態では「17」である。「1」を加算するのは、誤差を考慮して判定精度を高めるためである。
【0087】
ステップS87の答が肯定(YES)であるときは、クランク角度判定パラメータCRKCNTJUGの値が「2」であるか否かを判別する(ステップS88)。ステップS87またはS88の答が否定(NO)であるときは直ちにステップS90に進む。ステップ88の答が肯定(YES)、すなわち最初のCAM割り込み処理におけるクランク角度パラメータCRKINTCNTの値が、第3所定値nCRK3以下であり、かつ次のCAM割り込み処理が実行される前に(第2変化タイミングtC2より前に)クランク角度パラメータCRKINTCNTが第2所定値nCRK2を超えたことを示すので、始動開始領域RSは領域Gであると判定し、始動開始領域パラメータCYLPATNを、領域Gを示す領域G指示値NPGに設定する(ステップS89)。ステップS89実行後は、ステップS90に進む。
ステップS90では、図17及び図18に示す位相判定処理を実行する。
【0088】
図16は、CAM割り込み処理のフローチャートである。
ステップS101では、カム角度パラメータCAMINTCNTが「0」であるか否かを判別する。この答が肯定(YES)であるときは、クランク角度パラメータCRKINCNTが第2所定値nCRK2より大きいか否かを判別する(ステップS102)。この答が肯定(YES)であるときは、始動開始領域RSは領域Aであると判定し、始動開始領域パラメータCYLPATNを、領域Aを示す領域A指示値NPAに設定する(ステップS103)。その後ステップS116に進む。
【0089】
ステップS102の答が否定(NO)であるときは、クランク角度パラメータCRKINCNTが第3所定値nCRK1より大きいか否かを判別する(ステップS104)。この答が肯定(YES)、すなわちnCRK3<CRKINTCNT≦(nCRK2−1)であるときは、第1判定実行フラグCRKINTCHKを「1」に設定するとともに、クランク角度判定パラメータCRKCNTJUGを「1」に設定する(ステップS105)。その後ステップS116に進む。
【0090】
ステップS104の答が否定(NO)、すなわちCRKINTCNT≦nCRK3であるときは、第1判定実行フラグCRKINTCHKを「1」に設定するとともに、クランク角度判定パラメータCRKCNTJUGを「2」に設定する(ステップS106)。その後ステップS116に進む。
【0091】
ステップS116では、カム角度パラメータCAMINTCNTを「1」だけ増加させるとともに、クランク角度パラメータCRKINTCNTを「0」に戻す。その後ステップS117に進み、図17及び図18に示す位相判定処を実行する。
【0092】
ステップS101の答が否定(NO)、すなわちカム角度パラメータCAMINTCNTが「1」以上であるときは、カム角度パラメータCAMINTCNTが「1」であるか否かを判別する(ステップS107)。その答が否定(NO)であるときは、直ちにステップS116に進む。
【0093】
ステップS107の答が肯定(YES)、すなわち始動開始後2回目のCAM割り込み処理であるときは、クランク角度パラメータCRKINCNTが第1所定値nCRK1から「1」を減算した値以上で、かつ第1所定値nCRK1に「1」を加算した値以下であるか否かを判別する(ステップS108)。第1所定値nCRK1は、第1所定角度CA1(18度)に対応するCRKパルス数であり、本実施形態では「3」である。
【0094】
ステップS108の答が肯定(YES)であるときは、始動開始領域RSは領域Bであると判定し、始動開始領域パラメータCYLPATNを領域B指示値NPBに設定する(ステップS109)。その後ステップS115に進む。
【0095】
ステップS108の答が否定(NO)であるときは、クランク角度パラメータCRKINTCNTが第3所定値nCRK3から「1」を減算した値以上で、かつ第3所定値nCRK3に「1」を加算した値以下であるか否かを判別する(ステップS110)。その答が肯定(YES)であるときは、始動開始領域RSは領域Dであると判定し、始動開始領域パラメータCYLPATNを領域D指示値NPDに設定する(ステップS111)。その後ステップS115に進む。
【0096】
ステップS110の答が否定(NO)であるときは、クランク角度パラメータCRKINTCNTが第4所定値nCRK4から「1」を減算した値以上で、かつ第4所定値nCRK4に「1」を加算した値以下であるか否かを判別する(ステップS112)。その答が肯定(YES)であるときは、始動開始領域RSは領域Eであると判定し、始動開始領域パラメータCYLPATNを領域E指示値NPEに設定する(ステップS113)。その後ステップS115に進む。
【0097】
ステップS112の答が否定(NO)であるときは、クランク角度パラメータCRKINTCNTが第2所定値nCRK2と等しく、始動開始領域RSは領域Cあると判定し、始動開始領域パラメータCYLPATNを領域C指示値NPCに設定する(ステップS114)。その後ステップS115に進む。
【0098】
ステップS115では、第1判定実行フラグCRKINTCHKを「0」に戻し、その後ステップS116に進む。
【0099】
図17及び図18は、図15のステップS90及び図16のステップS117で実行される位相判定処理のフローチャートである。
ステップS131では、始動開始領域パラメータCYLPATNの値が領域A指示値NPAであるか否かを判別し、その答が肯定(YES)であるときは、初期値フラグCAMPORTINIが「1」であるか否かを判別する(ステップS132)。その答が肯定(YES)であるときは、エンジン回転位相CACYLが120度であると判定し、回転位相カウント値CRKCNTを「20」に設定する(図12参照)(ステップS133)。一方、ステップS132の答が否定(NO)であるときは、エンジン回転位相CACYLが480度であると判定し、回転位相カウント値CRKCNTを「80」に設定する(ステップS134)。
【0100】
ステップS131の答が否定(NO)であるときは、始動開始領域パラメータCYLPATNの値が領域B指示値NPBであるか否かを判別し(ステップS135)、その答が肯定(YES)であるときは、初期値フラグCAMPORTINIが「1」であるか否かを判別する(ステップS136)。その答が肯定(YES)であるときは、エンジン回転位相CACYLが138度であると判定し、回転位相カウント値CRKCNTを「23」に設定する(ステップS137)。一方、ステップS136の答が否定(NO)であるときは、エンジン回転位相CACYLが468度であると判定し、回転位相カウント値CRKCNTを「83」に設定する(ステップS138)。
【0101】
ステップS135の答が否定(NO)であるときは、始動開始領域パラメータCYLPATNの値が領域C指示値NPCであるか否かを判別し(ステップS139)、その答が肯定(YES)であるときは、初期値フラグCAMPORTINIが「1」であるか否かを判別する(ステップS140)。その答が肯定(YES)であるときは、エンジン回転位相CACYLが600度であると判定し、回転位相カウント値CRKCNTを「100」に設定する(ステップS141)。一方、ステップS140の答が否定(NO)であるときは、エンジン回転位相CACYLが240度であると判定し、回転位相カウント値CRKCNTを「40」に設定する(ステップS142)。
【0102】
ステップS139の答が否定(NO)であるときは、始動開始領域パラメータCYLPATNの値が領域D示値NPDであるか否かを判別し(ステップS143)、その答が肯定(YES)であるときは、初期値フラグCAMPORTINIが「1」であるか否かを判別する(ステップS144)。その答が肯定(YES)であるときは、エンジン回転位相CACYLが282度であると判定し、回転位相カウント値CRKCNTを「47」に設定する(ステップS145)。一方、ステップS144の答が否定(NO)であるときは、エンジン回転位相CACYLが642度であると判定し、回転位相カウント値CRKCNTを「107」に設定する(ステップS146)。
【0103】
ステップS143の答が否定(NO)であるときは、始動開始領域パラメータCYLPATNの値が領域E指示値NPEであるか否かを判別し(ステップS147)、その答が肯定(YES)であるときは、初期値フラグCAMPORTINIが「1」であるか否かを判別する(ステップS148)。その答が肯定(YES)であるときは、エンジン回転位相CACYLが0度であると判定し、回転位相カウント値CRKCNTを「0」に設定する(ステップS149)。一方、ステップS148の答が否定(NO)であるときは、エンジン回転位相CACYLが360度であると判定し、回転位相カウント値CRKCNTを「60」に設定する(ステップS150)。
【0104】
ステップS147の答が否定(NO)であるときは、始動開始領域パラメータCYLPATNの値が領域F指示値NPFであるか否かを判別し(ステップS151)、その答が肯定(YES)であるときは、初期値フラグCAMPORTINIが「1」であるか否かを判別する(ステップS152)。その答が肯定(YES)であるときは、エンジン回転位相CACYLが408度であると判定し、回転位相カウント値CRKCNTを「68」に設定する(ステップS153)。一方、ステップS152の答が否定(NO)であるときは、エンジン回転位相CACYLが48度であると判定し、回転位相カウント値CRKCNTを「8」に設定する(ステップS154)。ステップS153及びS154における回転位相カウント値CRKCNTの設定は、図15のステップS84における「+1」が考慮されている。
【0105】
ステップS151の答が否定(NO)であるときは、始動開始領域パラメータCYLPATNの値が領域G指示値NPGであるか否かを判別し(ステップS155)、その答が肯定(YES)であるときは、初期値フラグCAMPORTINIが「1」であるか否かを判別する(ステップS156)。その答が肯定(YES)であるときは、エンジン回転位相CACYLが468度であると判定し、回転位相カウント値CRKCNTを「78」に設定する(ステップS157)。一方、ステップS156の答が否定(NO)であるときは、エンジン回転位相CACYLが108度であると判定し、回転位相カウント値CRKCNTを「18」に設定する(ステップS158)。ステップS157及びS158における回転位相カウント値CRKCNTの設定は、図15のステップS87における「+1」が考慮されている。ステップS155の答が否定(NO)であるときは直ちに処理を終了する。
【0106】
以上のように本実施形態において、カム角度センサ11は、カム軸回転信号SCAMが、基準角度位置PREFからクランク角度360度の第1角度期間(T1〜T5)に対応する第1角度期間二値信号と、第1角度期間(T1〜T5)に続くクランク角度360度の第2角度期間(T6〜T10)に対応する第2角度期間二値信号とからなり、第2角度期間二値信号は、第1角度期間二値信号を反転させた信号となるように構成されているので、イグニッションスイッチがオンされた時点におけるカム軸回転信号SCAMの値を示す初期値フラグCAMPORTINIによって、始動開始位置PSが含まれる始動開始領域RSが、第1角度期間(T1〜T5)または第2角度期間(T6〜T10)のいずれにあるかを判定することができる(第1判定結果)。また始動開始後のカム軸回転信号SCAM、及び検出クランク角度を示すクランク角度パラメータCRKINTCNTとに基づいて、始動開始領域RSが第1または第2角度期間に含まれるより狭い領域A〜Gのいずれであるかを判定することができる(第2判定結果)。第1判定結果及び第2判定結果を用いることにより、始動開始位置PSからクランク角度144度の期間内において、エンジン回転位相CACYLを正確に判定することができる。
【0107】
より具体的には、第1角度期間二値信号は、カム軸回転信号SCAMが基準角度位置PREFからクランク角度120度に相当する第1期間T1において高レベルHをとり、第1期間T1に続く、第1所定角度CA1に相当する第2期間T2において低レベルLをとり、第2期間T2に続く、第2所定角度CA2に相当する第3期間T3において高レベルHをとり、第3期間T3に続く第3所定角度CA3に相当する第4期間T4において低レベルLをとり、第4期間T4に続く、第4所定角度CA4に相当する第5期間T5において高レベルHをとるように構成され、第1〜第4所定角度CA1〜CA4は、それぞれ18度、102度、42度、及び78度に設定される。この設定により、クランク角度センサ10に、基準となる角度位置を特定するための構成を設けることなく、迅速かつ正確な位相判定が可能となる。
【0108】
またカム軸回転信号SCAMが始動開始後最初に変化した第1変化タイミングtC1における、第1判定角度CAD1が第2所定角度CA2以上であるときは、始動開始領域RSが領域Aであると判定できる(図13(a),RS=A)ので、直ちにエンジン回転位相CACYLを特定することができる(tDA=tC1)。一方、第1判定角度CAD1が第2所定角度CA2より小さいときは、始動開始領域RSを直ちに判定できないため、第1判定角度CAD1を基準とした第2判定角度CAD2を用いることにより、以下のようにエンジン回転位相CACYLを特定することができる。
【0109】
すなわち、第2判定角度CAD2が第1所定角度CA1を超える前にカム軸回転信号SCAMが変化したときは(図13(a),tC2)、第2変化タイミングtC2における第2判定角度CAD2が第1所定角度CA1にほぼ等しく、始動開始領域RSが領域Bであると判定できるので(図13(a),RS=B)、その時点tDB(=tC2)でエンジン回転位相CACYLを特定することができ、第2判定角度CAD2が第1所定角度CA1を超えた後であって第3所定角度CA3を超える前にカム軸回転信号SCAMが変化したときは、第2変化タイミングtC2における第2判定角度CAD2が第3所定角度CA3にほぼ等しく、始動開始領域RSが領域Dであると判定できるので(図13(c))、その時点tDDでエンジン回転位相CACYLを特定することができ、第2判定角度CAD2が第3所定角度CA3を超えた後であって第4所定角度CA4を超える前にカム軸回転信号SCAMが変化したときは、第2変化タイミングtC2における第2判定角度CAD2が第4所定角度CA4にほぼ等しく、始動開始領域RSが領域Eであると判定できるので(図14(a))、その時点tDEでエンジン回転位相CACYLを特定することができ、第2判定角度CADが第4所定角度CA4を超えた後であって第2所定角度CA2を超える前にカム軸回転信号SCAMが変化したときは、第2変化タイミングtC2における第2判定角度CAD2が第2所定角度CA2にほぼ等しく、始動開始領域RSが領域Cであると判定できるので(図13(b))、その時点tDCでエンジン回転位相CACYLを特定することができる。
【0110】
また第1判定角度CAD1が第3所定角度CA3より大きく、かつカム軸回転信号SCAMが変化する前に(第2変化タイミングtC2より前に)第2判定角度CAD2が第3所定角度CA3を超えたときは、始動開始領域RSが領域Fであると判定できるので(図14(b),RS=F)、その時点tDFでエンジン回転位相CACYLを特定することができ、第1判定角度CAD1が第3所定角度CA3以下で、かつカム軸回転信号SCAMが変化する前に第2判定角度CAD2が第2所定角度CA2を超えたときは、始動開始領域RSが領域Gであると判定できるので(図14(b),RS=G)、その時点tDGでエンジン回転位相CACYLを特定することができる。
本実施形態では、図15〜図18の処理が回転位相判定手段に相当する。
【0111】
なお、6気筒エンジンにおいても、図10(b)に示すようにパルスの欠けがあるCRKパルス列を出力するクランク角度センサを使用してもよい。
【0112】
またカム軸回転信号SCAMは、図11(a)に示すもの(CA1<CA3)に代えて、図11(b)に示すように第1所定角度CA1及び第3所定角度CA3がともに60度未満であって、CA1>CA3を満たすように構成されたものを使用してもよい。
【0113】
なお、本発明は上述した実施形態に限るものではなく、種々の変形が可能である。例えば、上述した実施形態では、6度周期のCRKパルスを出力するクランク角度センサを使用したが、これに限るものではなく、クランク軸8の回転角度を検出可能なものであればどのようなセンサでも使用することができる。
【0114】
また上述した実施形態では、カム軸回転信号SCAMの「第1の値」を高レベルHとし、「第2の値」を低レベルLとしたが、逆に「第1の値」を低レベルLとし、「第2の値」を高レベルHとしてもよい。
【0115】
また本発明は、クランク軸を鉛直方向とした船外機などのような船舶推進機用エンジンなどの制御にも適用が可能である。
【符号の説明】
【0116】
1 内燃機関
5 電子制御ユニット(回転位相判定手段)
10 クランク角度センサ
11 カム角度センサ

【特許請求の範囲】
【請求項1】
内燃機関のクランク軸の回転角度であるクランク角度を検出するクランク角度センサと、前記クランク軸の2回転に対応して1回転するカム軸の回転角度に応じたカム軸回転信号を出力するカム角度センサと、前記クランク角度センサによって検出されるクランク角度及び前記カム軸回転信号に基づいて、前記機関の回転位相を判定する回転位相判定手段とを備える内燃機関の制御装置において、
前記カム角度センサは、前記カム軸回転信号が、基準角度位置からクランク角度360度の第1角度期間に対応する第1角度期間二値信号と、前記第1角度期間に続くクランク角度360度の第2角度期間に対応する第2角度期間二値信号とからなり、前記第2角度期間二値信号は、前記第1角度期間二値信号を反転させた信号となるように構成されており、
前記回転位相判定手段は、前記機関のイグニッションスイッチがオンされた時点における前記カム軸回転信号の値と、前記機関の始動開始後の前記カム軸回転信号と、前記クランク角度センサにより検出されるクランク角度とに基づいて、前記機関の始動開始時点における始動開始クランク角度からクランク角度180度の期間内において、前記機関回転位相を判定することを特徴とする内燃機関の制御装置。
【請求項2】
前記機関の気筒数は「4」であり、
前記第1角度期間二値信号は、前記基準角度位置からクランク角度180度に相当する第1期間において第1の値をとり、前記第1期間に続く、第1所定角度に相当する第2期間において第2の値をとり、前記第2期間に続く、第2所定角度に相当する第3期間において前記第1の値をとる信号であり、前記第1所定角度は、90度未満の値に設定され、前記第2所定角度は180度から前記第1所定角度を減算した値に設定されることを特徴とする請求項1に記載の内燃機関の制御装置。
【請求項3】
前記回転位相判定手段は、
A)前記カム軸回転信号が始動開始後最初に変化した時点における、前記始動開始クランク角度を基準とした第1判定角度が前記第2所定角度以上であるときは、直ちに前記機関回転位相を特定し、
B)前記第1判定角度が前記第2所定角度より小さいときは、前記第1判定角度を基準とした第2判定角度に応じて、前記機関回転位相を特定することを特徴とする請求項2に記載の内燃機関の制御装置。
【請求項4】
前記回転位相判定手段は、前記ステップB)においては、
B1)前記第2判定角度が前記第1所定角度を超える前に前記カム軸回転信号が変化したときは、その時点で前記機関回転位相を特定し、
B2)前記第1判定角度が前記第1所定角度以下で、かつ前記第2判定角度が前記第1所定角度を超えた後であって前記第2所定角度を超える前に前記カム軸回転信号が変化したときは、その時点で前記機関回転位相を特定し、
B3)前記第1判定角度が前記第1所定角度より大きく、かつ前記カム軸回転信号が変化する前に前記第2判定角度が前記第1所定角度を超えたときは、その時点で前記機関回転位相を特定し、
B4)前記第1判定角度が前記第1所定角度以下で、かつ前記カム軸回転信号が変化する前に前記第2判定角度が前記第2所定角度を超えたときは、その時点で前記機関回転位相を特定することを特徴とする請求項3に記載の内燃機関の制御装置。
【請求項5】
前記機関の気筒数は「6」であり、
前記第1角度期間二値信号は、前記基準角度位置からクランク角度120度に相当する第1期間において第1の値をとり、前記第1期間に続く、第1所定角度に相当する第2期間において第2の値をとり、前記第2期間に続く、第2所定角度に相当する第3期間において前記第1の値をとり、前記第3期間に続く、第3所定角度に相当する第4期間において前記第2の値をとり、前記第4期間に続く、第4所定角度に相当する第5期間において前記第1の値をとる信号であり、前記第1及び第3所定角度はともに60度未満の異なる値に設定され、前記第2所定角度は120度から前記第1所定角度を減算した値に設定され、前記第4所定角度は120度から前記第3所定角度を減算した値に設定されることを特徴とする請求項1に記載の内燃機関の制御装置。
【請求項6】
前記第1所定角度は前記第3所定角度より小さな値に設定され、
前記回転位相判定手段は、
A)前記カム軸回転信号が始動開始後最初に変化した時点における、前記始動開始クランク角度を基準とした第1判定角度が前記第2所定角度以上であるときは、直ちに前記機関回転位相を特定し、
B)前記第1判定角度が前記第2所定角度より小さいときは、前記第1判定角度を基準とした第2判定角度に応じて、前記機関回転位相を特定することを特徴とする請求項5に記載の内燃機関の制御装置。
【請求項7】
前記回転位相判定手段は、前記ステップB)においては、
B1)前記第2判定角度が前記第1所定角度を超える前に前記カム軸回転信号が変化したときは、その時点で前記機関回転位相を特定し、
B2)前記第2判定角度が前記第1所定角度を超えた後であって前記第3所定角度を超える前に前記カム軸回転信号が変化したときは、その時点で前記機関回転位相を特定し、
B3)前記第2判定角度が前記第3所定角度を超えた後であって前記第4所定角度を超える前に前記カム軸回転信号が変化したときは、その時点で前記機関回転位相を特定し、
B4)前記第2判定角度が前記第4所定角度を超えた後であって前記第2所定角度を超える前に前記カム軸回転信号が変化したときは、その時点で前記機関回転位相を特定し、
B5)前記第1判定角度が前記第3所定角度より大きく、かつ前記カム軸回転信号が変化する前に前記第2判定角度が前記第3所定角度を超えたときは、その時点で前記機関回転位相を特定し、
B6)前記第1判定開度が前記第3所定角度以下で、かつ前記カム軸回転信号が変化する前に前記第2判定角度が前記第2所定角度を超えたときは、その時点で前記機関回転位相を特定することを特徴とする請求項6に記載の内燃機関の制御装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate