JP4406324B2 - エンジン制御装置 - Google Patents

エンジン制御装置 Download PDF

Info

Publication number
JP4406324B2
JP4406324B2 JP2004174299A JP2004174299A JP4406324B2 JP 4406324 B2 JP4406324 B2 JP 4406324B2 JP 2004174299 A JP2004174299 A JP 2004174299A JP 2004174299 A JP2004174299 A JP 2004174299A JP 4406324 B2 JP4406324 B2 JP 4406324B2
Authority
JP
Japan
Prior art keywords
engine
stop position
crank
signal
crankshaft
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP2004174299A
Other languages
English (en)
Other versions
JP2005351209A (ja
Inventor
克之 安藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Corp
Original Assignee
Denso Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Denso Corp filed Critical Denso Corp
Priority to JP2004174299A priority Critical patent/JP4406324B2/ja
Priority to US11/149,550 priority patent/US7142973B2/en
Publication of JP2005351209A publication Critical patent/JP2005351209A/ja
Application granted granted Critical
Publication of JP4406324B2 publication Critical patent/JP4406324B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/10Internal combustion engine [ICE] based vehicles
    • Y02T10/40Engine management systems

Landscapes

  • Combined Controls Of Internal Combustion Engines (AREA)

Description

本発明は、エンジンを制御するエンジン制御装置に関し、特に、エンジンの停止時にクランク軸の停止位置を推定しておき、その推定した停止位置を次のエンジン始動時に利用するようにしたエンジン制御装置に関するものである。
従来より、エンジン制御装置では、エンジンのクランク軸の回転に応じてクランク軸センサから出力されるクランク軸回転信号と、クランク軸の回転に対し1/2の比率で回転するエンジンのカム軸の回転に応じてカム軸センサから出力されるカム軸回転信号とから、クランク位置(エンジンの1サイクルにおけるクランク軸の回転位置)を特定し、その特定後に、エンジンに対する点火や燃料噴射を開始している(例えば、特許文献1参照)。
具体例を挙げて説明すると、まず、クランク軸センサから出力されるクランク軸回転信号には、クランク軸が所定角度回転する毎にパルスエッジが発生すると共に、クランク軸の回転位置が予め設定された基準位置に来た時には、そのパルスエッジが所定数(例えば2個)欠落した欠歯部が現れるようになっている。また例えば、カム軸センサから出力されるカム軸回転信号は、カム軸の回転に応じてハイレベルとローレベルとに変化すると共に、クランク軸回転信号に欠歯部が現れるタイミングでは、その各タイミング毎に交互に異なったレベルとなる。尚、この例では、カム軸センサが、磁気抵抗素子(MRE)式のセンサであるものとしている。
そして、エンジン制御装置では、クランク軸回転信号に欠歯部が現れたか否かを判定する欠歯判定を行い、その欠歯判定で欠歯部が現れたと判定したときのカム軸回転信号のレベルから、クランク位置を特定する。例えば、カム軸回転信号がハイレベルならば、現在のクランク位置が特定のクランク位置(ここではX°CAとする)であると特定し、カム軸回転信号がローレベルならば、現在のクランク位置がX°CAから360°CAだけ進んだクランク位置であると特定する。尚、「CA」はクランクアングル(クランク角度)を意味している。また、この種のエンジン制御装置では、クランク軸回転信号のパルス間隔(即ち、クランク軸回転信号に上記所定角度毎のパルスエッジが発生する間隔)を計測すると共に、今回測定したパルス間隔T1と前回計測したパルス間隔T0とを比較して、例えば、T1とT0との比(=T1/T0)が所定の判定比以上である、といった欠歯判定条件が成立したならば、クランク軸回転信号に欠歯部が現れたと判定する。
一方、クランク軸センサを備えずに、カム軸センサからの回転信号のみを用いてクランク位置の特定及び機関回転速度の検出を行うようにしたクランク軸センサレスの構成もある(例えば、特許文献2参照)。
しかし、上記技術では、エンジンの始動時において、スタータによるクランキングが開始されてからクランク軸回転信号における欠歯部等の基準位置が検出されてクランク位置が最初に特定されるまでには、一般にクランク軸の数回転分が必要となる。
このため、エンジンに対する点火及び噴射の制御を速やかに開始することができず、始動までに時間がかかったり、始動前にインジェクタ(燃料噴射弁)から漏れ落ちた燃料や吸気管内に残っていた未燃焼ガスがそのまま排気されてエミッションの悪化を招くといった問題がある。特に、近年益々強化される排気ガスの規制を満足させるためには、スタータ始動とほぼ同時に燃料を燃やしきり、未燃焼ガスや生ガスが排気管へ送られないようにすることが重要となってくる。
そこで、始動性とエミッションを向上させるために、エンジンが停止する際に、クランク軸回転信号やカム軸回転信号を評価してエンジンの停止位置(詳しくは、クランク軸の停止位置)を推定し、次のエンジン始動時に、その推定した停止位置に基づいてエンジンの制御を開始することが考えられている(例えば、特許文献3参照)。
特開2001−90600号公報 特開平5−187291号公報 特表平8−506397号公報
ところで、上記のようなエンジン停止位置の推定機能を備えたエンジン制御装置において、エンジンの停止位置は、クランク軸回転信号やカム軸回転信号に基づいて、予め設定されたロジックにより推定されることとなるが、そのような推定ロジックで推定した停止位置は、常に正しいとは限らず、エンジンの状態や環境等によっては、実際の停止位置からずれてしまう可能性がある。
例えば、エンジンが十分に暖気できていない場合には、エンジンオイルの粘度が上がる(硬くなる)ので、十分に暖気できている場合に比べるとエンジンが回転しにくくなる。そして、エンジンが回転しにくくなると、クランク軸が停止寸前で何れかの気筒の上死点位置を越えられずに逆回転する可能性が高くなり、そのような逆回転が生じるとエンジンの停止位置を正しく推定することできない可能性がある。また更に、エンジンが回転しにくくなると、停止位置を推定するために用いる回転信号の形状、エッジ間隔、エッジの発生タイミングなどが想定したものとは異なってしまい、エンジンの停止位置を正しく推定することできない可能性がある。
また例えば、停止位置を推定するのに用いる回転信号がセンサや配線の異常によって正常に入力されなくなっている場合には、当然、正しい停止位置を推定することはできない。また例えば、車両のバッテリが劣化していたりしてバッテリ電圧(バッテリの電圧)が低い場合には、停止位置を推定するために用いる回転信号を出力するセンサやその回転信号を波形整形する回路などの特性が変わる可能性があるため、その場合にも、エンジンの停止位置を正しく推定することができなくなる可能性がある。
そして、エンジンの始動時において、正しい停止位置を推定できていないのに、そのような誤った推定位置に基づいて点火や燃料噴射の制御を開始した場合には、エンジンが始動できなかったり、始動時のエミッションが逆に悪くなってしまうという問題がある。
そこで本発明は、エンジン停止位置の推定誤りによって始動性又は始動時のエミッションが悪化するのを防止することのできるエンジン制御装置の提供を目的としている。
本発明のエンジン制御装置は、エンジンのクランク軸の回転に応じてクランク軸センサから出力されるクランク軸回転信号と、エンジンのカム軸の回転に応じてカム軸センサから出力されるカム軸回転信号との双方、又はカム軸回転信号に基づいて、クランク位置を特定するクランク位置特定手段と、エンジンが停止する際に、クランク軸回転信号とカム軸回転信号とのうちの少なくとも1つに基づいて、クランク軸の停止位置を推定する停止位置推定手段とを備えており、エンジンの始動時に、停止位置推定手段により推定されている停止位置に基づいてエンジンの制御を開始するが、特に、判定手段を備えている。
この判定手段は、エンジンが停止する際に、停止位置推定手段がクランク軸の停止位置を正しく推定することができない可能性のある特定条件が成立しているか否かを判定し、その特定条件が成立していると判定した場合には、停止位置推定手段が作動するのを禁止する。
そして、本発明のエンジン制御装置では、エンジンの始動時に、クランク軸の停止位置が停止位置推定手段により推定されていない場合(即ち、前回のエンジン停止時に判定手段によって停止位置推定手段の作動が禁止された場合)には、クランク位置特定手段によってクランク位置が特定されてから、エンジンの制御を開始する。
このような本発明のエンジン制御装置によれば、停止位置推定手段がクランク軸の停止位置を正しく推定することができない可能性のある場合には、その停止位置推定手段による停止位置の推定が禁止され、その次のエンジン始動時には、クランク位置特定手段によりクランク位置が特定されてからエンジンの制御を開始することとなるため、エンジンの始動時に、誤った推定位置に基づいて点火や燃料噴射の制御(始動制御)を行ってしまうことを防止することができる。よって、エンジン停止位置の推定誤りによって始動性又は始動時のエミッションが悪化するのを防止できる。
ところで、前述したように、エンジンが回転しにくくなると、停止位置を正しく推定することできない可能性があるため、判定手段が判定する特定条件としては、エンジンが回転しにくくなる条件とすることが考えられる。
そして、この場合、判定手段が判定する特定条件としての「エンジンが回転しにくくなる条件」としては、「エンジンの冷却水温が所定値より低い」という条件にすることが好ましい。
つまり、冷却水温が低いということは、エンジンが十分に暖気できていない状態であると考えられる。そして、前述したように、エンジンが十分に暖気できていない状態だと、エンジンオイルの粘度が上がり、エンジンが回転しにくくなるからである。また、判定手段が判定する特定条件としては、他にも例えば、「外気温が所定値より低い」とか、「エンジンオイルの温度(いわゆる油温)が所定値より低い」とか、「エンジンオイルの粘度又は量が所定値以上」、といった条件にしても良いが、通常、エンジンには冷却水温を検出するための水温センサが必ず取り付けられているため、「エンジンの冷却水温が所定値より低い」という条件であれば、どのようなエンジンであっても、センサを追加すること無しに判定することができ有利である。
また、制御対象のエンジンが車両のエンジンである場合、判定手段が判定する特定条件としては、「車両のバッテリの電圧が所定値より低い」という条件にしても良い。つまり、前述したように、バッテリ電圧が低い場合には、停止位置を推定するために用いる回転信号を出力するセンサやその回転信号を波形整形する回路などの特性が変わってしまい、停止位置を正しく推定することができない可能性があるからである。
一方、判定手段が判定する特定条件としては、停止位置推定手段がクランク軸の停止位置を推定するのに用いる信号が当該エンジン制御装置に正常に入力されない異常が発生している、という条件にしても良い。つまり、そのような信号入力異常が発生している場合には、当然、停止位置を正しく推定することはできないからである。
尚、もし、上記信号入力異常が発生すると、クランク位置特定手段もクランク位置を特定することができない構成の場合には、エンジンを始動させることができなくなるが、誤った推定位置に基づいて点火や燃料噴射の制御を開始してしまうことは防止できる。つまり、エンジン停止位置の推定誤りによってエミッションを悪化させてしまうことは最低限防止することができる。
また、判定手段が判定する特定条件としては、上述の各条件に限るものではなく、以下の実施形態で述べる条件など、様々なものが考えられる。
以下に、本発明が適用された実施形態のエンジン制御装置について説明する。尚、本実施形態のエンジン制御装置は、DOHC型直列5気筒の4ストローク1サイクルエンジン(いわゆる4サイクルエンジン)を制御するものである。
図1に示すように、本実施形態のエンジン制御装置1は、エンジン3を制御するための処理を実行するマイコン(マイクロコンピュータ)5と、マイコン5からの制御信号に従って各種アクチュエータを作動させる駆動回路7と、各種信号をマイコン5に入力させる入力回路9とを備えている。
具体的には、マイコン5には、エンジン3の吸気管11に設けられた吸入空気量センサ13からの信号、吸気管11に設けられたスロットル弁15の開度を検出するスロットル開度センサ17からの信号、吸気管11内の圧力を検出する吸気管圧力センサ19からの信号、運転者によって操作されるアクセルペダル21の操作位置を検出するペダル位置センサ23からの信号、エンジン3の冷却水温を検出する水温センサ25からの信号、エンジン3のノッキングを検出するためのノックセンサ27からの信号、エンジン3の排気管29に設けられた酸素濃度センサ31からの信号、クランク軸33の回転に応じてクランク軸センサ35から出力されるクランク軸回転信号(以下、クランク信号という)、吸気バルブを作動させるカム軸(以下、吸気カム軸という)37の回転に応じて吸気カム軸センサ39から出力される吸気カム軸回転信号(以下、吸気カム信号という)、排気バルブを作動させるカム軸(以下、排気カム軸という)41の回転に応じて排気カム軸センサ43から出力される排気カム軸回転信号(以下、排気カム信号という)、及び車両のイグニッションスイッチ45やスタータスイッチ(図示省略)といった各種スイッチのオン/オフ状態を表すスイッチ信号などが、入力回路9を介して入力される。
そして、マイコン5は、入力回路9を介して入力される上記各信号に基づいてエンジン3や車両の状態を検出すると共に、その検出結果に基づいて駆動回路7に制御信号を出力することにより、スロットル弁15の開度を変えるスロットルモータ49、クランク軸33に対する吸気カム軸37の回転位相差(即ち、吸気バルブの開閉タイミング)や吸気バルブのリフト量を変化させる吸気側可変バルブタイミング機構51を油圧によって作動させるための吸気側オイルコントロールバルブ53、クランク軸33に対する排気カム軸41の回転位相差(即ち、排気バルブの開閉タイミング)や排気バルブのリフト量を変化させる排気側可変バルブタイミング機構55を油圧によって作動させるための排気側オイルコントロールバルブ57、各気筒の点火プラグに通電して着火させるための点火コイル59、及び各気筒のインジェクタ61、といった各種アクチュエータを制御してエンジン3を作動させる。
また、エンジン制御装置1の外部には、給電用のメインリレー63が設けられており、イグニッションスイッチ45がオンされると、そのメインリレー63がオンして、当該エンジン制御装置1の電源ライン65にバッテリ電圧(車載バッテリ67のプラス端子の電圧)VBが供給される。そして、エンジン制御装置1では、その電源ライン65に供給されるバッテリ電圧VBをもとにして、マイコン5や駆動回路7及び入力回路9等の各部が動作するようになっている。更に、上記メインリレー63は、マイコン5が駆動回路7を介してオン/オフさせることもできるようになっている。そして、マイコン5は、イグニッションスイッチ45のオンに伴いメインリレー63がオンして動作を開始すると、自らもメインリレー63をオンさせることで、その後、イグニッションスイッチ45がオフされても動作を継続し、必要な処理を全て終了したならば、上記メインリレー63をオフさせて、動作を停止するようになっている。尚、こうしたメインリレー63による給電技術は、例えば特開平11−259375号公報等に記載されているように周知である。
また更に、図示は省略しているが、マイコン5は、上記電源ライン65或いは別のラインを介して供給されるバッテリ電圧VBを、内部のA/D変換器などによってモニタできるようになっている。
ここで、クランク軸センサ35は、クランク軸33に固定されたロータ69の外周に対向して設けられ、該ロータ69の外周に所定角度(本実施形態では6°)毎の間隔で形成された歯71を検出して、該歯71が通過する毎に立ち下がるパルスを出力する電磁ピックアップ式やホールIC式等の回転センサである。そして、そのクランク軸センサ35からのパルス列であるクランク信号は、入力回路9によりハイとローとの矩形波に波形整形されてマイコン5に入力される。また、上記ロータ69の外周には、歯71が2個欠損した歯欠損部が1つ設けられている。
このため、クランク軸センサ35から入力回路9を介してマイコン5に入力されるクランク信号には、図2に示すように、6°CA毎(クランク軸33が6°回転する毎)に有効エッジとしての立ち下がりエッジが発生すると共に、クランク軸33の回転位置が、上記ロータ69の歯欠損部が当該クランク軸センサ35に対向することとなる基準位置に来ると、立ち下がりエッジの間隔が3倍の長さ(即ち、18°CA分の長さ)になった欠歯部Kが現れることとなる。尚、ロータ69の歯欠損部も“欠歯部”或いは単に“欠歯”と呼ばれることがあり、クランク信号の欠歯部Kも単に“欠歯”と呼ばれることがある。
また、本実施形態では、図2に示すように、エンジン3の各気筒が第1気筒#1→第2気筒#2→第4気筒#4→第5気筒#5→第3気筒#3の順にTDC(上死点)となり、クランク信号の欠歯部Kは、第4気筒#4のBTDC30°CA〜BTDC12°CAの期間と、第3気筒#3のATDC42°CA〜ATDC60°CAの期間とに、現れるようになっている。尚、「BTDC」は「上死点前」を意味し、「ATDC」は「上死点後」を意味している。
一方、吸気カム軸センサ39は、吸気カム軸37に固定されたロータ(図示省略)の外周に対向して設けられ、そのロータの外周に形成された凹凸に応じて、出力信号のレベルがハイとローとに変化する磁気抵抗素子(MRE)式の回転センサであり、この吸気カム軸センサ39から出力される吸気カム信号も、入力回路9により波形整形されてマイコン5に入力される。
そして、吸気カム軸センサ39から入力回路9を介してマイコン5に入力される吸気カム信号の1サイクル分(吸気カム軸37の1回転分であり、クランク軸33の2回転分)のレベル変化パターンは、図2に示すように、例えば第4気筒#4のTDC直前の立ち下がりエッジを起点にして述べると、「120°CA分:ロー→24°CA分:ハイ→90°CA分:ロー→54°CA分:ハイ→60°CA分:ロー→84°CA分:ハイ→48°CA分:ロー→96°CA分:ハイ→18°CA分:ロー→126°CA分:ハイ」というように、同じクランク角度分の幅を持つ部分が複数存在しないパターンになっている。また、吸気カム信号の各立ち下がりエッジは、各気筒のBTDC33°CAのタイミングで生じるようになっている。そして更に、吸気カム信号は、クランク信号における欠歯部Kの終了タイミングでは、その各タイミング毎に交互に異なったレベルとなる。具体的には、第4気筒#4のBTDC12°CAのタイミングではローレベルとなり、第3気筒#3のATDC60°CAのタイミングではハイレベルとなる。
また同様に、排気カム軸センサ43も、排気カム軸41に固定されたロータ(図示省略)の外周に対向して設けられ、そのロータの外周に形成された凹凸に応じて、出力信号のレベルがハイとローとに変化する磁気抵抗素子式の回転センサであり、この排気カム軸センサ43から出力される排気カム信号も、入力回路9により波形整形されてマイコン5に入力される。
そして、排気カム軸センサ43から入力回路9を介してマイコン5に入力される排気カム信号の1サイクル分(排気カム軸41の1回転分であり、クランク軸33の2回転分)のレベル変化パターンは、図2に示すように、例えば第4気筒#4のTDC直前の立ち上がりエッジを起点にして述べると、「102°CA分:ハイ→18°CA分:ロー→144°CA分:ハイ→120°CA分:ロー→18°CA分:ハイ→60°CA分:ロー→72°CA分:ハイ→72°CA分:ロー→102°CA分:ハイ→42°CA分:ロー」というパターンになっている。また、排気カム信号の各エッジのうち、第4気筒#4のTDC直前の立ち上がりエッジ(「42°CA分:ロー」から「102°CA分:ハイ」へ遷移する立ち上がりエッジ)は、第4気筒#4のBTDC78°CAのタイミングで生じるようになっている。
尚、図2において、吸気カム信号と排気カム信号との各波形に付された各矢印の上部に記載されている数字は、その矢印の期間のクランク角度を示している。また、図1では、入力回路9を1つにまとめて記載しているが、入力回路9は、実際には、マイコン5に入力させる入力信号毎に存在しており、その各入力信号の種類に応じた信号処理を行う。例えば、入力信号が、クランク信号、吸気カム信号、排気カム信号や、スイッチ信号であれば、その信号を波形整形してマイコン5に入力させ、吸入空気量センサ13からの信号や水温センサ25からの信号といったアナログ信号であれば、その信号から高周波ノイズを除去してマイコン5のA/D変換器用の入力ポートに入力させる。また同様に、駆動回路7も、実際には各アクチュエータ毎に存在している。
以上のようなハードウェア構成のエンジン制御装置1において、マイコン5は、上記のクランク信号、吸気カム信号、及び排気カム信号に基づいて、クランク位置を特定すると共に、当該マイコン5内でクランク位置を認識するために参照するクランクカウンタの値を図2の如く更新する。尚、クランクカウンタの値は、図2における実線では、分解能が36°CAで且つ0〜19の範囲でラップラウンドするように示しているが、実際には、点線の楕円内に示すように、クランクカウンタの分解能は6°CAである。つまり、クランクカウンタの値は、分解能が6°CAで且つ0〜119の範囲でラップラウンドされる。また、クランクカウンタの値が最大の119から最小の0へ戻るタイミングのクランク位置は、第4気筒#4のBTDC6°CAとなっている。そして、マイコン5は、そのクランクカウンタの値に基づいて、エンジン3に対する点火や燃料噴射のタイミングを設定している。
そこで次に、マイコン5がクランク位置を特定するために実行する処理について、図3及び図4を用い説明する。尚、マイコン5は、データを記憶するためのメモリとして、通常のRAM以外に、上記電源ライン65にバッテリ電圧VBが供給されない本エンジン制御装置1の動作停止時にもデータを継続的に保持可能なメモリ6(本実施形態では電源バックアップされたRAMであるが、例えば、フラッシュROMやEEPROM等のデータ書き換え可能な不揮発性メモリでも良い)を備えているが、以下の各処理に関する説明において、特に明記していなければ、情報の記憶先は通常のRAMである。また、その通常のRAMに記憶された情報は、イグニッションスイッチ45のオンに伴い当該マイコン5が動作を開始する際のRAMに対する初期化処理によってクリアされるか或いは他の初期値に設定される。
まず図3は、クランク信号に有効エッジとしての立ち下がりエッジが発生する毎に実行されるクランク信号割り込み処理を表すフローチャートである。但し、このクランク信号割り込み処理は、スタータスイッチがオンされてスタータによるエンジン3のクランキングが開始されてから一定時間が経過するまでのスタータマスク期間は、クランク信号にスタータの作動による大きなノイズが乗っている可能性が高いため、実行が禁止されるようになっている。
図3に示すように、マイコン5がクランク信号割り込み処理を開始すると、まずS105にて、当該クランク信号割り込み処理を前回開始した時刻から今回開始した時刻までの時間を算出し、その算出した時間をクランク信号のパルス間隔として記憶する。尚、イグニッションスイッチ45がオンされてマイコン5が動作を開始してから始めて本処理を実行した場合、パルス間隔としては、初期値としての最大値が記憶される。
次にS110にて、今回のS105で記憶したパルス間隔(即ち、クランク信号の今回のパルス間隔)T1と、前回のS105で記憶したパルス間隔(即ち、クランク信号の前回のパルス間隔)T0とを比較して、T1とT0との比(=T1/T0)が所定の判定比H(例えばH=2.4)以上である、という欠歯判定条件が成立しているか否かを判定し、その欠歯判定条件が成立していれば、クランク信号に欠歯部Kが現れた(詳しくは、今回のクランク信号の立ち下がりエッジが欠歯部Kの終了タイミングである)と判定する。尚、イグニッションスイッチ45がオンされてマイコン5が動作を開始してから始めて本処理を実行した場合、T0は初期値としての最大値に設定されている。よって、その場合、S110では、必ず上記欠歯判定条件が成立していないと判定することとなる。
そして、このS110にて、クランク信号に欠歯部Kが現れたと判定しなかった場合には(S110:NO)、そのままS140に移行するが、クランク信号に欠歯部Kが現れたと判定した場合には(S110:YES)、S120に進んで、現在の吸気カム信号のレベルをチェックし、続くS130にて、クランクカウンタに、上記S120でチェックした吸気カム信号のレベルに応じた値をセットする。具体的には、吸気カム信号がローレベルであれば、現在のクランク位置が第4気筒#4のBTDC12°CAであると判断できることから、クランクカウンタに119(即ち、0に戻る1つ前の値)をセットし、吸気カム信号がハイレベルであれば、現在のクランク位置が第3気筒#3のATDC60°CAであると判断できることから、クランクカウンタに59(即ち、119から360°CA分である60だけずれた値)をセットする。そして、その後、S140に進む。
S140では、クランク位置を特定済みか否かを判定する。尚、クランク位置を特定済みとは、イグニッションスイッチ45のオンに伴い当該マイコン5が動作を開始してから既にクランク位置を特定しているということであり、更に詳しくは、その特定したクランク位置に該当する値をクランクカウンタにセットできており、既にクランクカウンタの値がクランク位置を示す値になっているということである。そして、本実施形態では、マイコン5が動作を開始してから、上記S130か、後述する図4のS400或いはS430でクランクカウンタに値がセットされれば、その時点でクランク位置を特定済みとなる。
そして、このS140にて、クランク位置を特定済みではないと判定した場合には、そのまま当該クランク信号割り込み処理を終了するが、クランク位置を特定済みであると肯定判定した場合には、S150に進む。
S150では、今回のS110での判定結果を参照して、クランク信号に欠歯部Kが現れたと今回判定した場合には(S150:YES)、そのままS170に移行するが、クランク信号に欠歯部Kが現れたと判定しなかった場合には(S150:NO)、S160に進んで、クランクカウンタのカウント処理を行った後、S170に進む。尚、S160では、基本的には、クランクカウンタの値を1増加させるインクリメント処理を行うが、増加前の値が119である場合には、値を0に戻すラップラウンドの処理を行う。
S170では、現在のクランク位置が、第4気筒#4のBTDC6°CAを基準にした36°CA毎のクランク位置であるか否か(即ち、現在のクランクカウンタの値が6の整数倍の値(=0,6,12,…,108,114)であるか否か)を判定し、36°CA毎のクランク位置でなければ、そのまま当該クランク信号割り込み処理を終了するが、36°CA毎のクランク位置であれば、S180に進む。
そして、S180にて、各気筒の点火と燃料噴射を制御するための制御処理を起動する。すると、点火時期と燃料噴射量及び噴射時期の演算や、点火及び燃料噴射を実施するためのタイマセット等が行われることとなる。
次にS190にて、36°CA毎に実行すべき他の角度同期制御処理を起動する。そして、その後、当該クランク信号割り込み処理を終了する。
次に、図4は、吸気カム信号と排気カム信号との何れかにエッジが発生する毎に実行されるカム信号割り込み処理を表すフローチャートである。
図4に示すように、マイコン5がカム信号割り込み処理を開始すると、まずS210にて、イグニッションスイッチ(IGSW)45がオンされているか否かを判定し、イグニッションスイッチ45がオンされていると判定した場合には、次のS220にて、エンジン回転数が所定値TH1以上であるか否かを判定する。この所定値TH1は、エンジン3が本エンジン制御装置1の制御によって作動していると見なされる回転数であり、本実施形態では、アイドル回転数よりも若干低い例えば500rpmに設定されている。また、エンジン回転数は、図3のS105で逐次更新記憶されるクランク信号のパルス間隔に基づいて算出される。
上記S220にて、エンジン回転数が所定値TH1以上であると判定した場合には、S230に進んで、クランク軸33の停止位置の推定値である停止位置推定値をメモリ6から消去する初期化を行い、続くS240にて、エンジン回転数が所定値TH1以上になったことを示す作動履歴を記憶した後、S250に進む。尚、停止位置推定値は、後述するS330の処理によって算出されると共に、メモリ6に記憶されるデータである。
S250では、吸気カム信号と排気カム信号とのうち、今回エッジが発生した方のカム信号について、その発生したエッジの方向又は該カム信号の現在のレベルを記憶し、その後、当該カム信号割り込み処理を終了する。
一方、上記S210にて、イグニッションスイッチ45がオンされていない(即ち、オフされている)と判定した場合には、今からエンジン3が停止するであろうエンジン停止時と判断して、S270に移行する。
S270では、エンジン回転数が所定範囲内(本実施形態では、上記所定値TH1から0rpmまでの範囲内)であるか否かを判定し、その所定範囲内であると肯定判定した場合には、S280に進む。
S280では、水温センサ25からの信号に基づき検出されるエンジン3の冷却水温が所定値TH2(例えば−2°C)以上であるか否かを判定し、冷却水温が所定値TH2以上であると肯定判定した場合には、S290に進む。
S290では、バッテリ電圧VBが所定値TH3(例えば8V)以上であるか否かを判定し、バッテリ電圧VBが所定値TH3以上であると肯定判定した場合には、S300に進む。
S300では、クランク信号と吸気カム信号と排気カム信号とが本エンジン制御装置1に正常に入力されているか否かを判定し、それら3つの信号が全て正常に入力されていると肯定判定した場合には、S310に進む。尚、マイコン5は、クランク信号と吸気カム信号と排気カム信号との3つの信号が正常に入力されているか否かを監視する監視処理(図示省略)を実行しており、その監視処理にて、何れかの信号がレベル変化するのに他の信号が一定時間以上レベル変化しない、といった矛盾を検知すると、そのレベル変化しない信号が異常であることを示す異常検出履歴をRAM及びメモリ6に記憶するようになっている。そして、S300では、上記異常検出履歴に基づいて上記3つ信号が正常に入力されているか否かを判定する。
S310では、上記S240で作動履歴が記憶されているか否か(即ち、イグニッションスイッチ45のオン中にエンジン回転数が所定値TH1以上になったか否か)を判定し、作動履歴が記憶されていると肯定判定した場合には、S320に進む。
S320では、始動後経過時間が所定値TH4(例えば20秒)以上であるか否かを判定し、始動後経過時間が所定値TH4以上であると肯定判定した場合には、S330に進む。尚、始動後経過時間とは、エンジン3が通常の運転状態になっていた継続時間である。そして、本実施形態では、エンジン回転数が上記所定値TH1以上になっていた継続時間を計測しており、その継続時間を始動後経過時間としている。
S330では、クランク軸33の停止位置を推定する停止位置推定処理を実行する。
この停止位置推定処理は、概念的には、停止直前のクランク位置を記憶していく、というものである。そして、本実施形態では、例えば、吸気カム信号と排気カム信号との何れかに今回発生したエッジが、図2にてE1〜E20までの20通りの番号を付したエッジのうちの何れであるかを判別し、その判別したエッジ番号を、停止位置推定値としてメモリ6に記憶する処理を行う。また、吸気カム信号と排気カム信号との何れかに今回発生したエッジは、基本的にはクランクカウンタの現在値から判別するが、クランク軸33が停止寸前で何れかの気筒のTDC位置を越えられずに逆回転する可能性もあり、そのような逆回転時には吸気カム信号と排気カム信号とがそれまでのレベル変化パターンを逆戻ししたパターンで変化することとなるため、吸気カム信号と排気カム信号とのそれまでの入力状態(特にレベル変化パターンとエッジ間隔)に基づいてクランク軸33が逆回転したか否かの判定も行うと共に、逆回転を検出した時には、記憶する停止位置推定値を修正する(戻す)処理も行う。このような停止位置推定処理により、エンジン3が停止(クランク軸33の回転が停止)した時点でメモリ6には、停止位置推定値として、吸気カム信号と排気カム信号との何れかに最後に発生したエッジの番号(換言すれば、次回のエンジン3の始動時に、吸気カム信号と排気カム信号との何れかに最初に発生するエッジの1つ前のエッジの番号)が記憶されることとなる。
そして、このS330の処理を終了した後、前述したS250に進み、その後、当該カム信号割り込み処理を終了する。
尚、マイコン5は、クランク信号と吸気カム信号と排気カム信号との全てが一定時間以上継続してレベル変化しない、という状態を検出すると、エンジン3が停止したと判断し、イグニッションスイッチ45がオフされていれば、その後、メインリレー63をオフさせて動作を停止する。また、上記S330の停止位置推定処理では、停止位置推定値を通常のRAMに記憶するようにし、メインリレー63をオフさせる直前に、その通常のRAM内の停止位置推定値をメモリ6にコピーするようにしても良い。
一方、上記S270〜S320の何れかで否定判定した場合、即ち、エンジン回転数が所定範囲内でないと判定した場合(S270:NO)、又はエンジン3の冷却水温が所定値TH2より低いと判定した場合(S280:NO)、又はバッテリ電圧VBが所定値TH3より低いと判定した場合(S290:NO)、又はクランク信号と吸気カム信号と排気カム信号との少なくとも1つが本エンジン制御装置1に正常に入力されていないと判定した場合(S300:NO)、又はイグニッションスイッチ45のオン中にエンジン回転数が所定値TH1以上になっていないと判定した場合(S310:NO)、又は始動後経過時間が所定値TH4以上でないと判定した場合(S320:NO)には、S330の停止位置推定処理を行うことなく、そのままS250に移行する。
また、上記S220にて、エンジン回転数が所定値TH1以上ではないと判定した場合には、S340に移行する。よって、エンジン3の始動時にはS340に移行することとなる。
そして、S340では、クランク位置を特定済みか否かを判定し、クランク位置を特定済みであると判定した場合には(S340:YES)、そのままS250に移行するが、クランク位置を特定済みではないと判定した場合には(S340:NO)、S350に進む。
S350では、S280と同様に、エンジン3の冷却水温が所定値TH2以上であるか否かを判定し、冷却水温が所定値TH2以上であると肯定判定した場合には、S360に進む。
S360では、S290と同様に、バッテリ電圧VBが所定値TH3以上であるか否かを判定し、バッテリ電圧VBが所定値TH3以上であると肯定判定した場合には、S370に進む。
S370では、S300と同様に、クランク信号と吸気カム信号と排気カム信号とが本エンジン制御装置1に正常に入力されているか否かを判定し、それら3つの信号が全て正常に入力されていると肯定判定した場合には、S380に進む。
S380では、メモリ6に停止位置推定値が記憶されているか否か(即ち、前回のエンジン3の停止時に、S330の停止位置推定処理が実行されたか否か)を判定し、停止位置推定値が記憶されていたら、S390に進む。
S390では、前述のスタータマスク期間が過ぎた(以下、「スタータマスクが解除された」という)か否かを判定し、スタータマスクが解除されていれば、S400に進む。
S400では、メモリ6に記憶されている停止位置推定値に基づいて現在のクランク位置(即ち、吸気カム信号又は排気カム信号に今回のエッジが発生したクランク位置)を特定し、その特定したクランク位置に該当する値をクランクカウンタにセットする。本実施形態では、停止位置推定値として、吸気カム信号又は排気カム信号に今回発生したエッジの1つ前のエッジの番号が記憶されているはずであるため、このS400では、メモリ6に停止位置推定値として記憶されている番号の次の番号のエッジが吸気カム信号又は排気カム信号に発生するクランク位置が、現在のクランク位置であると特定し、そのクランク位置でクランクカウンタがとるべき値を、クランクカウンタにセットする。
例えば、クランク軸33が、図2におけるE20のエッジ位置からE1のエッジ位置までの間で停止していたとする。この場合、メモリ6には、エンジン3の停止時に、S330の処理により、停止位置推定値として、E20が記憶されていることとなる。そして、次のエンジン3の始動時において、吸気カム信号にE1のエッジが発生する前にスタータマスクが解除されていたならば、S400の処理により、クランクカウンタには、E20の次であるE1のエッジが吸気カム信号に発生するクランク位置でクランクカウンタがとるべき値(=67)がセットされることとなり、これにより、始動時最初のクランク位置特定が完了する。
そして、このようなS400の処理を行った後、S420に移行する。
また、上記S390にて、スタータマスクが解除されていないと判定した場合には、S410に移行して、メモリ6に記憶されている停止位置推定値としてのエッジ番号を、図2におけるE1〜E20のうち、その停止位置推定値の次のエッジ番号に更新する。つまり、本実施形態では、スタータマスクが解除されてから吸気カム信号と排気カム信号との何れかに最初にエッジが発生したタイミングで、上記S400により、そのエッジ発生タイミングでのクランク位置に応じた値がクランクカウンタにセットされるようにしており、このため、スタータマスクが未だ解除されていない場合のS410では、メモリ6に記憶されている停止位置推定値を、次のエッジ番号に進めておくようにしている。そして、その後、S420に移行する。
一方、上記S350〜S380の何れかで否定判定した場合、即ち、冷却水温が所定値TH2より低いと判定した場合(S350:NO)、又はバッテリ電圧VBが所定値TH3より低いと判定した場合(S360:NO)、又はクランク信号と吸気カム信号と排気カム信号との少なくとも1つが本エンジン制御装置1に正常に入力されていないと判定した場合(S370:NO)、又はメモリ6に停止位置推定値が記憶されていないと判定した場合(S380:NO)には、そのままS420に移行する。
S420では、クランク位置を特定済みか否かを判定し、クランク位置を特定済みであると判定した場合には、そのままS250に移行するが、クランク位置を特定済みではないと判定した場合には、S430に進む。よって、上記S340でクランク位置を特定済みではないと判定しても、上記S400の処理が実行されたならば、S420でクランク位置を特定済みであると判定されて、そのままS250へ移行することとなり、また、上記S400の処理が実行されなければ、S420からS430へ進むこととなる。
S430では、カム信号による気筒判別処理を概ね以下の手順で行う。
まず、マイコン5は、吸気カム信号にエッジが発生してから次にエッジが発生するまでの1パルス幅期間中にクランク信号に発生した立ち下がりエッジの数を計数する計数処理を、クランク位置を特定できるまで別途実行している。
そこで、S430では、スタータマスクが解除されてから吸気カム信号に2回以上エッジが発生しており、且つ、今回エッジが発生したのが吸気カム信号であれば、上記計数処理により計数されている数(即ち、吸気カム信号に前回エッジが発生してから今回エッジが発生するまでの間にクランク信号に発生した立ち下がりエッジの数)Npを読み込む。そして更に、その数Npからクランク位置を特定して、該特定したクランク位置に応じた値をクランクカウンタにセットする。つまり、前述したように、吸気カム信号は、同じクランク角度分の幅を持つ部分が複数存在しないパターンになっているため、Npの値から、吸気カム信号に今回発生したエッジが図2におけるE1,E3,E5,E6,E9,E12,E13,E15,E16,E19のうちの何れであるかを判別することができ、その判別したエッジが発生するクランク位置でクランクカウンタがとるべき値を、クランクカウンタにセットするのである。また、スタータマスクが解除されてから吸気カム信号に2回以上エッジが発生していない場合、或いは、今回エッジが発生したのが排気カム信号であった場合には、S430では何もしない。
そして、このようなS430の次に、前述したS250へ移行する。
以上のようなクランク信号割り込み処理(図3)とカム信号割り込み処理(図4)とが行われるエンジン制御装置1では、イグニッションスイッチ45がオフされてエンジン3が停止し始め、エンジン回転数が所定値TH1より低くなると(S270:YES)、S330の停止位置推定処理が実行される。そして、エンジン3が停止した時点で、メモリ6には、停止位置推定値として、吸気カム信号と排気カム信号との何れかに最後に発生したエッジの番号が記憶されることとなる。
そして、次にイグニッションスイッチ45がオンされて、エンジン3が始動された際には、図4のS390〜S410の処理により、スタータマスクが解除されてから吸気カム信号と排気カム信号との何れかに最初にエッジが発生したタイミングで、メモリ6内の停止位置推定値に基づき、そのエッジが発生したタイミングでのクランク位置に該当する値がクランクカウンタにセットされ、この時点で、クランク位置の特定が完了して、図3のS180によりエンジン3の制御が開始されることとなる。
このため、エンジン3の始動時において、スタータによるクランキングの開始とほぼ同時にクランク位置を特定してエンジン3の制御を開始することができる。尚、本実施形態では、実際には、図3のS170により、クランク位置が、第4気筒#4のBTDC6°CAを基準にした36°CA毎のクランク位置になったと判定された時点で、始動時最初の制御処理が実行されることとなる。
ところで、エンジン3が十分に暖気できていない場合には、エンジンオイルの粘度が上がるので、十分に暖気できている場合に比べるとエンジン3(詳しくは、クランク軸33)が回転しにくくなる。そして、エンジン3が回転しにくくなると、図4におけるS330の停止位置推定処理によって停止位置を正しく推定することができなくなる可能性がある。
例えば、エンジン3が回転しにくくなると、吸気カム軸37と排気カム軸41とをクランク軸33に連動して回転させるタイミングベルト(又はタイミングチェーン)のテンションが通常時と変わるため、吸気カム軸37と排気カム軸41とのクランク軸33に対する回転位相差が変わり、延いては、停止位置を推定するために用いる吸気カム信号と排気カム信号の形状、エッジ間隔、エッジの発生タイミング及び発生順序などが想定したものとは異なってしまう可能性があるからである。また、クランク軸33が停止寸前で何れかの気筒の上死点位置を越えられずにゆっくりと逆回転する可能性が高くなり、そのような逆回転を検知できない可能性もある。
そこで、本実施形態では、エンジン3が停止する際において、図4のS280により、エンジン3の冷却水温が所定値TH2より低いと判定した場合(S280:NO)には、十分に暖気ができていなくてエンジン3が回転しにくい状況であり、S330の停止位置推定処理によってクランク軸33の停止位置を正しく推定することができない可能性があるとして、そのS330の停止位置推定処理が実行されるのを禁止(S330をスキップ)している。
また、バッテリ電圧VBが低い場合には、停止位置を推定するために用いる信号を出力するクランク軸センサ35、吸気カム軸センサ39、及び排気カム軸センサ43や、それらセンサ35,39,43からの信号を波形整形する入力回路9の特性が変わる可能性があるため、その場合にも、S330の停止位置推定処理によってクランク軸33の停止位置を正しく推定することができない可能性がある。更に、クランク信号と吸気カム信号と排気カム信号との少なくとも1つが、センサや配線の異常によって本エンジン制御装置1に正常に入力されなくなっている場合には、当然、S330の停止位置推定処理によってクランク軸33の停止位置を正しく推定することができない。
そこで、本実施形態では、エンジン3が停止する際において、図4のS290により、バッテリ電圧VBが所定値TH3より低いと判定した場合(S290:NO)、又は、クランク信号と吸気カム信号と排気カム信号との少なくとも1つが本エンジン制御装置1に正常に入力されていないと判定した場合(S300:NO)にも、S330の停止位置推定処理が実行されるのを禁止している。
また更に、通常走行状態からエンジン停止に至る通常のエンジン停止ではなく、始動に失敗してすぐエンストした場合や、エンジン3が作動を開始する前にスタータスイッチをオフしてクランキングを止める、といった操作(いわゆる「ちょんがけ」)が行われた場合にも、エンジン3の回転の落ち方が通常とはかけ離れたものになることが多いため、S330の停止位置推定処理によってクランク軸33の停止位置を正しく推定することができない可能性がある。
そこで更に、本実施形態では、エンジン3が停止する際において、図4のS310により、イグニッションスイッチ45のオン中にエンジン回転数が所定値TH1以上になっていないと判定した場合(S310:NO)、又は、図4のS320により、始動後経過時間が所定値TH4以上でないと判定した場合(S320:NO)にも、S330の停止位置推定処理が実行されるのを禁止している。つまり、S330の停止位置推定処理を実行する条件として、エンジン回転数が一旦所定値TH1以上となり(換言すれば、エンジン3が一旦完全に始動し)、且つ、始動後経過時間が所定値TH4以上であった、という条件を追加することにより、始動に失敗してすぐエンストした場合や上記の「ちょんがけ」が行われた場合など、通常のエンジン停止時以外には、S330の停止位置推定処理が実行されないようにしている。尚、通常のエンジン停止時か否かを判別する方法としては、S310及びS320の判定に限らず、例えば、前回のイグニッションスイッチ45のオン/オフ前後のエンジン状態など、過去のエンジン3の運転状態を記憶しておくことで、今回どうゆう状態から停止位置検出領域(即ち、エンジン回転数が所定値TH1以下の領域)に入ったのかを判定して、S330の停止位置推定処理を実行するか禁止するかを切り替えるようにしても良い。
そして、本実施形態のエンジン制御装置1において、エンジン3が停止する際にS330の停止位置推定処理の実行が禁止された場合、次のエンジン始動時には、図4のS380でメモリ6に停止位置推定値が記憶されていないと判定されて、S390〜S410の処理がスキップされるため、この場合には、図3のS110〜S130の処理と図4のS430の処理との何れかによってクランク位置の特定(換言すれば、クランクカウンタへの値のセット)が行われてから、図3のS180によりエンジン3の制御が開始されることとなる。
尚、本実施形態では、図3のS110〜S130の処理又は図4のS430の処理が、クランク位置特定手段に相当しており、図4のS330の処理が、停止位置推定手段に相当している。そして、図4のS280〜S320の処理が、判定手段に相当している。つまり、本実施形態では、S280〜S320の何れかで否定判定した場合が、特定条件が成立していると判定した場合に相当する。
このような本実施形態のエンジン制御装置1によれば、図4におけるS330の停止位置推定処理によってクランク軸33の停止位置を正しく推定することができない可能性のある場合には、その停止位置推定処理の実行が禁止され、エンジン3の始動時に、誤った停止位置推定値に基づいて点火や燃料噴射の制御(始動制御)を行ってしまうことを防止することができる。よって、エンジン停止位置の推定誤りによって始動性又は始動時のエミッションが悪化するのを防止できる。
尚、前述した図3と図4の処理では、クランク信号と吸気カム信号と排気カム信号とのうち、クランク信号又は吸気カム信号が正常に入力されない異常が発生した場合、エンジン3の始動時に、図4におけるS390〜S410の処理がスキップされるだけでなく、図3のS110〜S130の処理と図4のS430の処理との何れによってもクランク位置を特定できないため、エンジン3を作動させることできなくなるが、誤った停止位置推定に基づいて点火や燃料噴射の制御を開始してしまうことによるエミッションの悪化は防止することができる。
また、クランク信号又は吸気カム信号が正常に入力されない異常が発生した場合に、クランク信号と吸気カム信号と排気カム信号とのうち、正常に入力される信号に基づきクランク位置を特定してエンジンを制御するためのフェイルセーフ処理を適宜実行するように構成すれば、エンジン3を作動させることも可能となる。
例えば、上記実施形態において、クランク信号が正常に入力されない異常が発生したことを検知した場合、吸気カム信号のみに基づいてクランク位置の特定とエンジン回転数の検出とを行ってエンジン3を制御するように構成することができる。
つまり、吸気カム信号にエッジが発生する毎に、その吸気カム信号のエッジ間隔を計測すると共に、その各エッジ間隔を比較検証することにより、特徴的な波形部分(ここでは例えば、図2における「96°CA分:ハイ→18°CA分:ロー→126°CA分:ハイ」の部分とする)を検知すれば、その「126°CA分:ハイ」の終了に該当するエッジ発生タイミングを、第4気筒#4のBTDC33°CAであると特定することができる。また、前述したように、吸気カム信号の各立ち下がりエッジは、各気筒のBTDC33°CAのタイミングで生じるようになっており、その立ち下がりエッジの間隔は全て144°CAであるため、その立ち下がりエッジの間隔を計測することでエンジン回転数や例えば1°CA分の時間を算出することができ、それらの情報から点火や燃料噴射のタイミングを設定して、点火及び燃料噴射を実施すれば良い。
また例えば、上記実施形態において、排気カム信号についても、吸気カム信号と同様に、クランク信号における欠歯部Kの終了タイミングでは、その各タイミング毎に交互に異なったレベルとなるようにしておけば、吸気カム信号が正常に入力されない異常が発生したことを検知した場合、図3のS120及びS130にて、吸気カム信号の代わりに、排気カム信号のレベルからクランク位置を特定し、クランクカウンタに、その特定したクランク位置に応じた値をセットするように構成することができる。そして、このように構成すれば、吸気カム信号が正常に入力されなくなっても、クランク信号に欠歯部Kが発生したことを検知したタイミングでクランク位置を特定し、エンジン3の制御を開始することができる。
一方、上記実施形態では、エンジン回転数が所定値TH1よりも低い場合にのみ(S270:YES)、S330の停止位置推定処理の実行を許可するようにしているため、マイコン5での処理負荷を不要に増加させることが無い。
また、上記実施形態において、図4におけるS400とS430の処理は、クランク位置を既に特定できていれば実行しないが、図3におけるS110〜S130の処理(即ち、クランク信号の欠歯部Kを検出してクランク位置を特定する気筒判別処理)は、クランク位置を特定できた後も継続して行うようにしている。これは、クランク信号にノイズが乗るなどしてクランクカウンタの値がずれたとしても、クランク信号に欠歯部Kが発生したタイミングでクランクカウンタの値を正しい値に戻すことができるようにするためである。
また、上記実施形態では、エンジン3の始動時においても、図4のS350〜S370にて、エンジン停止時におけるS280〜S300と全く同じ内容の判定を行うようにしている。つまり、エンジン3の始動時においても、判定手段が判定するのと同じ特定条件が成立しているか否かを判定する第2の判定手段としての処理をS350〜S370で行い、その条件が成立していたならば(S350〜S370の何れかでNO)、たとえ停止位置推定値がメモリ6に記憶されていても、その停止位置推定値を用いてはエンジン3の制御を開始しない(詳しくは、その停止位置推定値に基づいてクランク位置を特定しない)ようにしている。これは、S330の停止位置推定処理で停止位置推定値が算出された際の条件と同じ条件下で、その停止位置推定値を用いるようにするためであり、このようにすることで、停止位置推定値を用いたクランク位置の特定精度を確保するようにしている。また、S350での所定値TH2は、S280での所定値TH2と異なる値にしても良く、同様に、S360での所定値TH3は、S290での所定値TH3と異なる値にしても良い。エンジン停止時とエンジン始動時では回転しやすさの条件が異なっていることも考えられるからである。一方、S350〜S370の処理は、S330の停止位置推定処理における停止位置の推定ロジックや、その停止位置推定処理で推定された停止位置をS400でどの様に使うかのクランク位置特定ロジックによっては、削除することも可能である。
以上、本発明の一実施形態について説明したが、本発明はこうした実施形態に何等限定されるものではなく、本発明の要旨を逸脱しない範囲において、種々なる態様で実施し得ることは勿論である。
例えば、上記実施形態では、図4のS280にて、エンジン3が回転しにくい状況であることを、「冷却水温が所定値TH2より低い」ということで判定していたが、エンジン3が回転しにくい状況であることは、「外気温が所定値より低い」とか、「エンジン3の吸気温が所定値より低い」とか、「燃料温度が所定値より低い」とか、「オイルコントロールバルブ53,57が制御するオイル(以下、OCVオイルという)の温度が所定値より低い」とか、「エンジンオイルの温度が所定値より低い」とか、「エンジンオイルの粘度又は量が所定値以上」とか、「OCVオイルの粘度が所定値以上」といった内容を判定するようにしても良い。
また、図4のS290で判定するバッテリ電圧VBの閾値である上記所定値TH3は、固定値であっても良いが、その時にバッテリ電圧VBを消費している負荷状況に応じて、負荷が大きい場合ほど大きい値となるように設定するように構成しても良い。この場合、バッテリ電圧VBの値と負荷と閾値との関係を定めたデータマップを用意しておき、そのマップに現在の電圧VBと負荷とを当てはめて、閾値である所定値TH3を決定するように構成することができる。
また更に、上記実施形態では述べなかったが、もし、図4のS270からS280へ移行する状況下で可変バルブタイミング機構51,55が作動される可能性があるのであれば、吸気カム信号と排気カム信号とにおけるエッジの発生タイミング及び発生順序などが想定したものから変わってしまい、S330の停止位置推定処理で正しい停止位置推定値を求めることができない可能性が発生する。よって、その場合には、可変バルブタイミング機構51,55の作動状況を判定して、例えば吸気カム軸37又は排気カム軸41のクランク軸33に対する回転位相差が所定値以上ずらされている場合には、S330の停止位置推定処理が実行されるのを禁止する、というように構成しても良い。
また例えば、図4のS330では、吸気カム信号と排気カム信号との何れかに今回発生したと判別したエッジの次に発生するエッジの番号を、停止位置推定値としてメモリ6に記憶するようにしても良い。この場合、S400では、メモリ6に記憶されている番号のエッジが吸気カム信号又は排気カム信号に発生するクランク位置でクランクカウンタがとるべき値を、クランクカウンタにセットすれば良い。
また更に、図4のS330では、吸気カム信号と排気カム信号との何れかに今回発生したエッジが図2のE1〜E20の何れであるかを、吸気カム信号と排気カム信号とのそれまでの入力状態(レベル変化パターンやエッジ間隔など)からのみ判別するように構成することも可能である。この場合、停止位置の推定を、クランク信号を用いずに2つのカム信号に基づいてのみ行うこととなる。
一方、停止位置の推定をクランク信号のみを用いて行うように構成しても良い。
例えば図3のクランク割り込み処理でS150とS160との何れかからS170へ移行するまでの間に、図4のS210及び270〜S320と同じ判定を行うと共に、そのS210と同じ判定でイグニッションスイッチ45がオフと判定し、且つ、その270〜S320と同じ判定で全て肯定判定した場合に、以下のような停止位置推定処理を行う。即ち、この場合の停止位置推定処理としては、基本的には、その時点でのクランクカウンタの値を停止位置推定値としてメモリ6に記憶するものであれば良く、更に例えば、クランク信号に欠歯部Kが発生するクランク位置でないのにクランク信号のパルス間隔が前回値の所定数倍以上になった、という状態を検知した場合に、クランク軸33が逆回転したと判断して、クランクカウンタの値、及び停止位置推定値としてメモリ6に記憶する値を補正する(戻す)処理を行うことで、停止位置の推定精度を上げることができる。尚、この場合、エンジン3の始動時においては、吸気カム信号と排気カム信号との何れかにエッジが発生した時に、現在のクランク位置が、図2におけるE1〜E20の各エッジのうち、メモリ6に記憶されている停止位置推定値が表すクランク位置の直後のエッジが発生したクランク位置であると特定することができる。
また、上記実施形態では、クランク信号にノイズが乗ると予想されるスタータマスク期間が過ぎるまではエンジンの制御を開始しないようにしていたが、そのスタータマスク期間中は時間タイマで燃料噴射などを実施するように構成すれば、スタータマスク期間中でも、吸気カム信号又は排気カム信号にエッジが発生した時点からエンジンの制御を始動することができる。
また、上記実施形態のエンジン制御装置1は、カム軸回転信号として、吸気カム信号と排気カム信号との2つが入力されるものであったが、本発明は、クランク信号の他にカム軸回転信号が1つだけ入力されるものであっても適用することができる。
また、上記実施形態では、クランク軸33のロータ69に欠歯(歯欠損部)を設けることで基準位置を検出しているが、基準位置を検出するためのロータ69の構成としては、そのような欠歯を設ける構成に限定されるものではなく、他の歯形状構成(例えば、いわゆる足し歯や余分歯を設ける構成、欠歯の逆で1箇所だけ突起部(歯)が他より長い等の不連続部を設ける構成など)でも良い。
また、本発明は、クランク軸センサを備えずに、カム軸センサからの回転信号のみを用いてクランク位置の特定とエンジン回転数の検出とを行うクランク軸センサレスのエンジン制御装置にも同様に適用することができる。
実施形態のエンジン制御装置の構成図である。 クランク信号と吸気カム信号と排気カム信号とクランクカウンタとの関係を表すタイムチャートである。 クランク信号割り込み処理を表すフローチャートである。 カム信号割り込み処理を表すフローチャートである。
符号の説明
1…エンジン制御装置、3…エンジン、5…マイコン、6…メモリ、7…駆動回路、9…入力回路、11…吸気管、13…吸入空気量センサ、15…スロットル弁、17…スロットル開度センサ、19…吸気管圧力センサ、21…アクセルペダル、23…ペダル位置センサ、25…水温センサ、27…ノックセンサ、29…排気管、31…酸素濃度センサ、33…クランク軸、35…クランク軸センサ、37…吸気カム軸、39…吸気カム軸センサ、41…排気カム軸、43…排気カム軸センサ、45…イグニッションスイッチ、49…スロットルモータ、51…吸気側可変バルブタイミング機構、53…吸気側オイルコントロールバルブ、55…排気側可変バルブタイミング機構、57…排気側オイルコントロールバルブ、59…点火コイル、61…インジェクタ、63…メインリレー、65…電源ライン、67…車載バッテリ、69…ロータ、71…歯、K…欠歯部

Claims (4)

  1. エンジンのクランク軸の回転に応じてクランク軸センサから出力されるクランク軸回転信号と、前記エンジンのカム軸の回転に応じてカム軸センサから出力されるカム軸回転信号との双方、又は前記カム軸回転信号に基づいて、前記エンジンの1サイクルにおける前記クランク軸の回転位置であるクランク位置を特定するクランク位置特定手段と、
    前記エンジンが停止する際に、前記クランク軸回転信号と前記カム軸回転信号とのうちの少なくとも1つに基づいて、前記クランク軸の停止位置を推定する停止位置推定手段とを備え、
    前記エンジンの始動時に、前記停止位置推定手段により推定されている停止位置に基づいて前記エンジンの制御を開始するエンジン制御装置において、
    前記エンジンが停止する際に、前記停止位置推定手段が前記クランク軸の停止位置を正しく推定することができない可能性のある特定条件が成立しているか否かを判定し、該特定条件が成立していると判定した場合には、前記停止位置推定手段が作動するのを禁止する判定手段を備え、
    前記エンジンの始動時に、前記クランク軸の停止位置が前記停止位置推定手段により推定されていない場合には、前記クランク位置特定手段によってクランク位置が特定されてから、前記エンジンの制御を開始するように構成されていること、
    を特徴とするエンジン制御装置。
  2. 請求項1に記載のエンジン制御装置において、
    前記特定条件は、前記エンジンが回転しにくくなる条件であって、
    前記エンジンの冷却水温が所定値より低い、
    外気温が所定値より低い、
    エンジンオイルの温度が所定値より低い、
    エンジンオイルの粘度又は量が所定値以上、
    という条件の少なくとも1つであること、
    を特徴とするエンジン制御装置。
  3. 請求項に記載のエンジン制御装置において、
    前記エンジンは車両に搭載されたものであり、
    前記特定条件は、前記車両のバッテリの電圧が所定値より低いという条件であること、
    を特徴とするエンジン制御装置。
  4. 請求項1に記載のエンジン制御装置において、
    前記特定条件は、前記停止位置推定手段が前記クランク軸の停止位置を推定するのに用いる信号が当該エンジン制御装置に正常に入力されない異常が発生しているという条件であること、
    を特徴とするエンジン制御装置
JP2004174299A 2004-06-11 2004-06-11 エンジン制御装置 Expired - Lifetime JP4406324B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2004174299A JP4406324B2 (ja) 2004-06-11 2004-06-11 エンジン制御装置
US11/149,550 US7142973B2 (en) 2004-06-11 2005-06-10 Engine control apparatus designed to ensure accuracy in determining engine position

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004174299A JP4406324B2 (ja) 2004-06-11 2004-06-11 エンジン制御装置

Publications (2)

Publication Number Publication Date
JP2005351209A JP2005351209A (ja) 2005-12-22
JP4406324B2 true JP4406324B2 (ja) 2010-01-27

Family

ID=35585882

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004174299A Expired - Lifetime JP4406324B2 (ja) 2004-06-11 2004-06-11 エンジン制御装置

Country Status (1)

Country Link
JP (1) JP4406324B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6071568B2 (ja) * 2013-01-16 2017-02-01 本田技研工業株式会社 車両用制御装置
CN112983666B (zh) * 2021-03-26 2022-09-13 中国第一汽车股份有限公司 汽车快速启动方法、装置、设备及存储介质

Also Published As

Publication number Publication date
JP2005351209A (ja) 2005-12-22

Similar Documents

Publication Publication Date Title
US8818685B2 (en) Rotation detecting device and rotation detecting method
JP5165705B2 (ja) 内燃機関の制御装置
US7142973B2 (en) Engine control apparatus designed to ensure accuracy in determining engine position
JP4258448B2 (ja) 内燃機関の逆回転検出装置
JP4508215B2 (ja) 内燃機関の制御装置
JP5170312B2 (ja) 内燃機関の始動制御システム
JP4312752B2 (ja) 内燃機関の制御装置
JP4542569B2 (ja) エンジンの制御装置
JP4310744B2 (ja) エンジン制御装置
JP4135684B2 (ja) エンジン制御装置
JP4410614B2 (ja) エンジン制御装置
JP4304468B2 (ja) 内燃機関の油温推定装置
JP4069902B2 (ja) エンジン制御装置
JP4406324B2 (ja) エンジン制御装置
US6874359B2 (en) Control apparatus and control method of engine
JP4508225B2 (ja) 内燃機関の始動制御装置
JP2009209861A (ja) 内燃機関の排気系診断装置
JP4619299B2 (ja) 内燃機関の燃焼状態判定方法
JP4816163B2 (ja) 可変動弁機構の制御装置
JP2005264862A (ja) エンジン制御装置
JP2008019818A (ja) 内燃機関の制御装置
JP2008286173A (ja) 車載内燃機関の制御装置
JP2007023834A (ja) 内燃機関の制御装置
JP3886658B2 (ja) エンジンのトルク検出装置
WO2010089857A1 (ja) 内燃機関の始動制御装置及び内燃機関の始動制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060725

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070731

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070807

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071225

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080225

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080805

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20091106

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121113

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 4406324

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121113

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131113

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term