説明

エンジン制御装置

【課題】エンジン出力軸の回転位相のソフトウェアによる検出とハードウェアによる検出との切り替えを適切に行うことができるエンジン制御装置を提供する。
【解決手段】この装置は、欠歯部位を有する10°CA間隔のパルス信号(NE10信号)を入力してTDC信号を出力する信号処理回路を備える。NE10信号に基づくエンジン出力軸の回転位相の検出を、エンジン回転速度NEが高い運転領域では信号処理回路(ハードウェア)による検出を通じて行う一方、エンジン回転速度NEが低い運転領域ではマイクロコンピュータによる演算処理(ソフトウェア)による検出を通じて行う。ハードウェアによる検出からソフトウェアによる検出への切り替えを、エンジン回転速度NEが予め定められた所定速度Vを下回った後に(S202:YES)、エンジン出力軸の回転位相が予め定められた所定位相になるタイミング(S203:YES)で行う。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、エンジン出力軸の回転位相を検出してエンジン制御に用いるエンジン制御装置に関するものである。
【背景技術】
【0002】
エンジン制御装置としては、エンジン出力軸の回転に伴い所定位相毎にパルス状の信号(パルス信号)を出力する回転センサを設けるとともに同回転センサの出力信号に基づいてエンジン出力軸の回転位相を検出して燃料噴射制御や点火時期制御などのエンジン制御に用いるものが知られている。また、パルス信号の出力間隔の異なる部位(例えばパルス間隔が他の部位より長く設定された部位、いわゆる欠け歯部位)を設定するとともに、同部位が検出された回転位相を基準回転位相とする装置なども知られている。
【0003】
こうしたエンジン制御装置としては、マイクロコンピュータ(以下、マイコン)による演算処理(以下、ソフトウェア)を通じて回転位相の検出を実行するものと、専用の検出回路(以下、ハードウェア)によって上記回転位相の検出を行うものとがある。通常、ソフトウェアによる検出では、マイコンによる所定位相毎の割り込み処理を通じて、回転センサの出力信号に基づきエンジン出力軸の回転量を算出するための処理と基準回転位相を検出するための処理とが実行されるとともに、それらの検出結果に基づいてエンジン出力軸の回転位相を検出する処理が実行される。また、ハードウェアによる検出では、入力される回転センサの出力信号が検出回路によりエンジン出力軸の回転位相に応じた信号に変換されてマイコンに出力される。これらソフトウェアによる検出とハードウェアによる検出とはそれぞれ以下のような特徴がある。
【0004】
すなわち先ず、ソフトウェアによる検出では、上記回転位相の検出方法を高い自由度で設定することができるために同回転位相を高い精度で検出することが可能になる。ただし、マイコンによる演算処理の実行が必要になる分だけマイコンの演算負荷が大きくなってしまう。しかも演算処理に要する時間が長くなり易いために、エンジン回転速度の高い運転領域、すなわち割り込み処理の実行間隔が短くなる運転領域において同処理についての十分な実行時間を確保することが困難になるおそれがある。
【0005】
一方、ハードウェアによる検出では、マイコンの演算負荷を小さく抑えることが可能になる。しかしながら、上記回転位相の検出方法の設定についての自由度が低いために、エンジン出力軸の回転変動などの影響を受けやすくなってしまう。具体的には、例えばエンジン出力軸の回転変動によってパルス信号の間隔が一時的に大きくなった場合にこれを欠け歯部位と誤って検出するなどといったように、回転変動が大きくなりやすいエンジン回転速度の低い運転領域において回転位相の検出精度の低下を招きやすくなってしまう。
【0006】
そこで従来、エンジン回転速度が低いときにはソフトウェアによる検出を実行する一方、エンジン回転速度が高いときにはハードウェアによる検出を実行するといったように、エンジン回転速度に応じて上記回転位相の検出方法を切り替えることが提案されている(例えば特許文献1参照)。これにより、エンジン回転速度が低いとき、すなわち上記割り込み処理を実行可能な時間が長いために同処理の実行時間が確保される一方で上記回転変動が大きいために上記回転位相の検出精度の低下が懸念されるときには、ソフトウェアによる検出が実行されて検出精度の維持が図られる。しかも、エンジン回転速度が高いとき、すなわち回転変動が小さいためにその影響による上記回転位相の検出精度の低下を招く可能性が低い一方で上記割り込み処理を実行可能な時間が短いために実行時間の確保が困難になるおそれがあるときには、ハードウェアによる検出が実行されて、マイコンの演算負荷の不要な増加が抑えられる。
【0007】
また上記特許文献1には、ソフトウェアによる検出結果とハードウェアによる検出結果とが所定期間にわたって一致したことを条件にソフトウェアによる検出とハードウェアによる検出との切り替えを行うことが提案されている。これにより、上記回転位相の検出方法の切り替えに伴ってその検出精度が低下することが抑えられる。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】特開2004−3454号公報
【発明の概要】
【発明が解決しようとする課題】
【0009】
ここで、上述した特許文献1に記載の装置では各検出結果が一致しない限りソフトウェアによる検出とハードウェアによる検出との切り替えが行われないために、その切り替えにかかる時間が過度に長くなる可能性がある。そのため、仮にエンジン回転速度の低下に伴ってハードウェアによる検出からソフトウェアによる検出に切り替える際にそうした状況になると、エンジン回転速度がごく低い運転領域においてハードウェアによる検出が行われる状況になってしまうために、かえって上記回転位相の検出精度の低下を招くおそれがある。
【0010】
本発明は、そうした実情に鑑みてなされたものであり、その目的は、エンジン出力軸の回転位相のソフトウェアによる検出とハードウェアによる検出との切り替えを適切に行うことができるエンジン制御装置を提供することにある。
【課題を解決するための手段】
【0011】
以下、上記目的を達成するための手段及びその作用効果について説明する。
請求項1に記載の発明は、エンジン出力軸の回転に対応する所定位相間隔のパルス列からなり且つその途中にパルス間隔の異なる基準回転位相を有してなる回転信号を発生する回転信号発生回路と、前記回転信号を入力してそのパルス間隔を計測するとともに該パルス間隔に基づき前記基準回転位相を検出して同位相に対応する基準位置信号を出力する信号処理回路と、回転信号および基準回転位相に基づき前記エンジン出力軸の回転位相を検出するとともに同回転位相に基づき各種制御を実行するマイクロコンピュータとを備え、前記マイクロコンピュータは、エンジン回転速度が高い運転領域では前記信号処理回路から出力される前記基準位置信号を有効とする一方、エンジン回転速度が低い運転領域では前記回転信号の有効エッジ毎に割り込みを起動するとともに該割り込みの処理を通じて前記基準回転位相の検出を実行した結果を前記基準位置信号に代えて有効として、前記回転位相の検出を実行するものであるエンジン制御装置において、前記基準位置信号に基づく前記回転位相の検出から前記割り込み処理による検出結果に基づく前記回転位相の検出への切り替えを、エンジン回転速度が予め定められた所定速度を下回った後に前記エンジン出力軸の回転位相が予め定められた所定位相になるタイミングで行うことをその要旨とする。
【0012】
上記構成では、エンジン回転速度が低下した場合において、エンジン出力軸の回転位相の検出方法が信号処理回路(以下、ハードウェア)による検出方法、すなわちエンジン出力軸の回転位相の検出精度が低くなる検出方法から、マイクロコンピュータによる演算処理(以下、ソフトウェア)による検出方法、すなわち高い検出精度での検出が可能な検出方法に切り替えられる。そのため、このとき検出方法の切り替えに伴って上記回転位相の検出精度の低下を招く可能性は低いと云え、その低下を抑えるとの観点からすると、どのようなタイミングで切り替えを行ってもよいと云える。ただし、ソフトウェアによる検出では、基準回転位相の検出のためにカウンタやフラグなどといった各種の演算値が設定されて用いられる。これに対してハードウェアによる検出では、パルス間隔の計測や基準回転位相の検出が信号処理回路を通じて行われるために、そうした演算値は設定されない。そのため、ハードウェアによる検出からソフトウェアによる検出に切り替える際には、上記回転位相の検出に先立って切り替え時における回転位相に対応する各種の演算値をマイクロコンピュータに記憶させてく必要がある。
【0013】
上記構成によれば、予め定められた所定位相において切り替えが行われるために、同所定位相に対応する各演算値をマイクロコンピュータに記憶させておけばよい。そのため、エンジン回転速度が所定速度を下回った任意の回転位相で検出方法の切り替えが行われる構成と比較して、各種の演算値を算出するための演算処理にかかる負荷、ひいてはそれら演算値をマイクロコンピュータに記憶させるための演算処理の負荷を大幅に抑えることができ、同演算処理を早期に完了させることができる。したがって、エンジン出力軸の回転位相のソフトウェアによる検出とハードウェアによる検出との切り替えを適切に行うことができる。
【0014】
請求項2に記載の発明は、請求項1に記載のエンジン制御装置において、前記基準回転位相は前記パルス列の途中においてパルス間隔が長く設定された部分に対応する回転位相であり、前記所定位相は前記基準回転位相であることをその要旨とする。
【0015】
上記構成によれば、他の期間と比較してパルス間隔が長いとき、言い換えれば前記回転信号の有効エッジの時間間隔が長いために検出方法の切り替えにかかる演算処理を実行可能な時間が長いときにおいて、ソフトウェアによる検出への切り替えを行うことができる。そのため、検出方法を切り替えるための演算処理を時間的な余裕をみた状態で実行することができ、同演算処理とその後の有効エッジに基づく割り込みの処理とを互いに重複させることなくそれぞれ適切なタイミングで実行することができる。
【0016】
請求項3に記載の発明は、請求項1または2に記載のエンジン制御装置において、前記マイクロコンピュータは、前記割り込みの処理として、前記回転信号のパルス間隔を計測する処理と該パルス間隔に基づいて前記基準回転位相を検出する処理とを実行するものであることをその要旨とする。
【0017】
上記構成によれば、上記回転信号のパルス間隔に基づいて基準回転位相を検出する処理にて用いられる各種演算値の算出のための演算処理にかかる負荷、すなわちソフトウェアによる検出への切り替えに際して実行される演算処理の負荷を大幅に抑えることができ、同演算処理を早期に完了させることができる。
【0018】
請求項4に記載の発明は、請求項1〜3のいずれか一項に記載のエンジン制御装置において、前記所定速度は一定の速度であることをその要旨とする。
上記構成によれば、エンジン回転速度の低下速度などのエンジン運転状態に応じて前記所定速度が可変設定される構成と比較して、簡素な演算処理を通じて検出方法の切り替えを行うことができる。
【0019】
請求項5に記載の発明は、請求項1〜4のいずれか一項に記載のエンジン制御装置において、当該装置は、自動停止条件の成立をもってエンジンを自動停止させるとともにその後における再始動条件の成立をもって前記エンジンを再始動させる自動停止再始動制御を実行するものであることをその要旨とする。
【0020】
上記構成によれば、エンジンの自動停止に際してエンジン出力軸の回転位相を精度よく検出することができるために、同回転位相をもとにエンジンの再始動のための各種制御を適正に実行することができる。そのため、エンジンの再始動を速やかに且つ早期に完了させることが可能になり、その再始動性能の向上を図ることができるようになる。
【図面の簡単な説明】
【0021】
【図1】本発明を具体化した一実施の形態にかかるエンジン制御装置の概略構成を示す略図。
【図2】信号処理回路の構成を示すブロック図。
【図3】信号処理回路による欠歯部位の検出の様子を示すタイムチャート。
【図4】信号処理回路によるNE30信号の生成の様子を示すタイムチャート。
【図5】信号処理回路によるTDC信号およびG2信号の生成の様子を示すタイムチャート。
【図6】ソフトウェアによるクランクカウンタのカウント値の算出態様を示すフローチャート。
【図7】クランクカウンタのカウント値の算出態様の一例を示すタイムチャート。
【図8】切り替え処理の実行手順を示すフローチャート。
【発明を実施するための形態】
【0022】
以下、本発明を具体化した一実施の形態にかかるエンジン制御装置について説明する。
本実施の形態にかかるエンジン制御装置は駆動源として車両に搭載されるエンジンに適用されるものである。
【0023】
図1は本実施の形態にかかるエンジン制御装置の概略構成を示している。
同図1に示すように、電子制御ユニット1は、マイクロコンピュータ(以下、マイコン)10、波形整形回路20、信号処理回路30、および駆動回路40を備える。マイコン10は、CPU11、ROM12、RAM13、入力バッファ14、A/D変換器15、マルチプレクサ16および汎用出力バッファ17を備えるとともに、これらがそれぞれバス18を介して接続されている。マルチプレクサ16に取り込まれるアナログ入力には、吸入空気量や冷却水温度、車両走行速度等のセンサ検出値が含まれる。また、入力バッファ14に取り込まれるスイッチ入力には、ブレーキスイッチやアイドルスイッチ等が含まれる。
【0024】
波形整形回路20には、回転位相センサ2の検出信号と気筒判別センサ3の検出信号とがそれぞれ入力される。回転位相センサ2はエンジン出力軸4の回転位相(°CA)および回転速度(エンジン回転速度NE)を検出するためのものであり、具体的にはエンジン出力軸4に取り付けられたパルサ2aの外周の歯が通過したことをピックアップコイルによって検出する。また、気筒判別センサ3はエンジンのカム軸5の回転を検出するものであり、具体的にはカム軸5に取り付けられたパルサ3aの外周の歯が通過したことをピックアップコイルによって検出する。波形整形回路20では、回転位相センサ2や気筒判別センサ3の出力信号をパルス状の信号(パルス信号)に変換するとともに、回転信号NE10および気筒判別信号Gin(以下、これら信号をNE10信号、Gin信号ともいう)を生成して出力する。これらNE10信号およびGin信号はマイコン10と信号処理回路30にそれぞれ入力される。本実施の形態では、回転位相センサ2および波形整形回路20が回転信号発生回路として機能する。
【0025】
NE10信号は10°CA毎(所定位相間隔)のパルス列よりなり、そのパルス列の途中に2パルス分を欠落させた部位(以下、欠歯部位)が設けられている。欠歯部位の間隔は360°CAであり、この欠歯部位が「パルス間隔の異なる基準回転位相」に相当する。
【0026】
本実施の形態にかかる装置は、これらNE10信号およびGin信号に基づいてエンジン出力軸4の回転位相を検出するための構成として、信号処理回路30(ハードウェア)を通じて検出する構成とマイコン10による演算処理(ソフトウェア)を通じて検出する構成との二つの構成を備えている。
【0027】
そして、ハードウェアによって検出する構成およびソフトウェアによって検出する構成のうちの一方が選択的に有効とされるとともに、その有効とされた構成を通じて検出された回転位相(詳しくは、後述するクランクカウンタのカウント値CA)をもとに燃料噴射制御などの各種エンジン制御が実行される。具体的には、クランクカウンタのカウント値CAに基づいてインジェクタ等の駆動を制御するべく、マイコン10から駆動回路40を介して各々に制御出力信号が出力される。
【0028】
本実施の形態の装置では、そうしたエンジン制御の一つとして、交差点等での車両停止時においてエンジンの運転を一時的に停止させる制御(自動停止再始動制御)が実行される。この自動停止再始動制御では、以下の各条件[条件1]〜[条件5]が全て満たされたことをもって自動停止条件が成立したと判断される。
[条件1]エンジンの暖機が終了していること(冷却水温度が下限値より高いこと)。
[条件2]アクセルペダルが踏まれていないこと(アイドルスイッチが「オン」されていること)。
[条件3]ブレーキペダルが踏み込まれていること(ブレーキスイッチが「オン」されていること)。
[条件4]車両が停止していること。
[条件5]上記[条件1]〜[条件4]の全てが満たされた後において、エンジンの自動停止が実行された履歴がないこと。
【0029】
交差点にて車両が停止する等して、上記自動停止条件が成立すると、例えばエンジンへの燃料供給が停止される等して同エンジンの運転が停止される。一方、上述した自動停止条件が成立したことをもってエンジンが停止状態にあるとの条件下において、上記[条件1]〜[条件4]のうちの1つでも満足されなくなった場合に再始動条件が成立したと判断される。そして、再始動条件が成立すると、スタータモータ(図示略)が駆動されてクランキング動作の実行が開始されるとともに燃料噴射制御が実行されてエンジンが再始動される。こうした自動停止再始動制御を実行することにより、エンジンの燃料消費量の低減やエミッションの低減が図られる。
【0030】
以下、エンジン出力軸4の回転位相をハードウェアによって検出するための構成について詳細に説明する。
上記信号処理回路30には、波形整形回路20から出力されるNE10信号およびGin信号が入力される。この信号処理回路30は、それら信号に基づいて30°CA間隔の回転信号(NE30信号)を生成して出力する。また信号処理回路30は、NE10信号中の欠歯部位を検出する機能を備えており、同機能による欠歯部位の検出結果と上記NE30信号とに基づいて気筒判別を行うためのTDC信号やG2信号を生成して出力する。これらNE30信号、TDC信号およびG2信号はそれぞれCPU11に出力される。本実施の形態では、TDC信号がエンジンの上死点に対応しており「基準位置信号」として機能する。
【0031】
図2に、信号処理回路30の具体構成を示す。
同図2に示すように、信号処理回路30は、NE10信号中の欠歯部位を検出する欠歯検出部31と、Gin信号の論理レベルを読み取るレベル読取部32と、NE10信号からNE30信号を生成する30°CA信号生成部33と、NE30信号に基づいてカウンタ35の値CNTを更新するカウンタ演算部34と、値CNTに基づいてTDC信号およびG2信号を生成する判別用信号生成部36とを備えている。
【0032】
欠歯検出部31は、NE10信号の欠歯部位の検出を次のようにして行う。図3に示すように、欠歯検出部31は、NE10信号がLレベルからHレベルへと立ち上がる毎に、計時用のタイマ値TAを「0」にリセットするとともに、そのリセット直前のタイマ値TAに基づいてNE10信号の最新のパルス間隔Tplを計測する。また図3中に一点鎖線で示すように、その計測したパルス間隔TplをN倍して、欠歯部位検出用のしきい値時間(N×Tpl)を設定する。本実施の形態では、連続する二つのパルス信号を欠落させることによって欠歯部位が設けられているために、上記Nとして2.0〜3.0の間の値(例えば2.4)が設定されている。
【0033】
そして、欠歯検出部31は、タイマ値TAが上記しきい値時間(N×Tpl)を越えると(図3のタイミングta)、欠歯部位が検出されたと判断して欠歯検出信号FKをHレベルにする。この欠歯検出信号FKは、例えばNE10信号が次に立ち下がったタイミングでLレベルに戻される。本実施の形態の装置では、このようにして欠歯検出信号FKがHレベルに立ち上がることによって欠歯部位が検出される。
【0034】
レベル読取部32は、欠歯検出信号FKが立ち上がると、そのタイミングでGin信号の論理レベルを読み取るとともに、その読み取った論理レベル(以下、読取レベルともいう)Grを記憶する。
【0035】
図4に示すように、30°CA信号生成部33は、欠歯部位が検出されたタイミングを起点としてNE10信号が立ち上がる毎に内部カウンタの値を「1」ずつカウントアップするとともに、その値が「34」になると内部カウンタの値を「0」に戻す。また、内部カウンタの値が「1」〜「33」の場合、その内部カウンタの値を3で割った余りが1または2である場合にはNE30信号をHレベルにする一方、内部カウンタの値を3で割った余りが0の場合にはNE30信号をLレベルにする。さらに、内部カウンタの値を「34」から「0」に戻した時には、NE30信号を内部タイマによる一定時間だけHレベルにする。こうした動作により、NE10信号に同期して30°CA毎に立ち上がるNE30信号が30°CA信号生成部33より出力されるようになる。
【0036】
カウンタ演算部34は、値CNTをカウントするカウンタ35を備えるとともに、NE30信号の立ち上がり毎に、エンジン出力軸4の二回転分の累積回転位相を示す値であり且つ30°CAを分解能とする値CNTを更新する。具体的には、図5に示すように、カウンタ演算部34は基本的に、30°CA毎に値CNTを「1」ずつカウントアップするとともに、値CNTが23を越えた時(すなわち、24に達した時)に同値CNTを「0」に戻す。これにより、値CNTは720°CA分に相当する「0」〜「23」の範囲で「1」ずつカウントアップされる。
【0037】
また、カウンタ演算部34は、欠歯検出部31から入力される欠歯検出信号FK、およびレベル読取部32によるGin信号の読取レベルGrに応じて値CNTの初期化処理を実施する。具体的には、欠歯部位の検出時における読取レベルGrがLレベルであれば値CNTを「17」に初期化する一方、読取レベルGrがHレベルであれば値CNTを「5」に初期化する。これにより図5に示すように、タイミングt11,t13では値CNTが「5」に初期化され、タイミングt12では値CNTが「17」に初期化される。ここで「5」と「17」は、値CNTとして360°CA分に相当する値「12」だけ互いに異なった値であり、上記初期化によって値CNTの連続性が損なわれることはない。
【0038】
なお図5では、欠歯部位の検出タイミング(t11,t12,t13)と同欠歯部位の検出直後におけるNE10信号の立ち上がりタイミングとが一致しているが、実際には、欠歯検出信号FKの立ち上がりタイミングが欠歯検出直後のNE10信号の立ち上がりタイミングよりも若干前のタイミングになる(図3のタイミングta参照)。
【0039】
判別用信号生成部36は、カウンタ35の値CNTを参照するとともに、その値CNTに応じてTDC信号およびG2信号を生成する。具体的には、図5に示すように、値CNTが「0」または「12」である場合にはTDC信号を一時的にHレベルにする。また、値CNTが「0」〜「11」である場合にはG2信号をHレベルにする一方、値CNTが「12」〜「23」である場合にG2信号をLレベルにする。なお本実施の形態では、欠歯部位を検出した後においてエンジン出力軸4が210°CAだけ回転した時にTDC信号がHレベルになるようになっている。
【0040】
このようにハードウェアによる検出では、信号処理回路30によってNE30信号、TDC信号およびG2信号が形成される。そして、それら信号に基づいてCPU11によりクランクカウンタのカウント値CAが算出されるとともに、同カウント値CAがエンジン出力軸4の回転位相に対応する値としてエンジン制御に用いられる。詳しくは、NE30信号の立ち上がりエッジ毎に割り込み(NE30割り込み)が起動される。そして、このNE30割り込みの処理を通じて、TDC信号およびG2信号が共にHレベルであるときにはクランクカウンタのカウント値CAを初期化する(詳しくは「0」に変更する)一方、それ以外の場合には同カウント値CAを「1」ずつカウントアップするといったように、カウント値CAが算出される。これにより、エンジン出力軸4の回転位相に対応する値として、クランクカウンタのカウント値CAが算出される。
【0041】
次に、エンジン出力軸4の回転位相をソフトウェアによって検出する構成について詳細に説明する。
ソフトウェアによる検出では、CPU11により、波形整形回路20から入力されるNE10信号の立ち上がりエッジ毎に割り込み(NE10割り込み)が起動される。そして、このNE10割り込みの処理を通じて以下の処理が実行される。
【0042】
図6に示すように、この処理では先ず、NE10信号立ち上がりエッジ間の時間を検出するための内部タイマのタイマ値TBについての過去の値と今回の値とがそれぞれ更新される(ステップS101)。具体的には、RAM13に記憶されている四回前の値TB[i−4]が新たな五回前の値TB[i−5]として記憶され、同じくRAM13に記憶されている三回前の値TB[i−3]が新たな四回前の値TB[i−4]として記憶され、RAM13に記憶されている二回前の値TB[i−2]が新たな三回前の値TB[i−3]として記憶される。また、RAM13に記憶されている一回前の値TB[i−1]が新たな二回前の値TB[i−2]として記憶され、RAM13に記憶されている今回値TB[i]が新たな一回前の値TB[i−1]として記憶される。さらに、このときの内部タイマのタイマ値TBが今回値TB[i]として記憶されるとともに、同タイマ値TBが「0」にリセットされる。
【0043】
その後、欠歯判定フラグがLレベルであることを条件に(ステップS102:YES)、仮欠歯フラグがHレベルになった後にカウンタC1のカウント値T1が所定値(本実施の形態では、「0」)になったか否かが判断される(ステップS103)。なお、上記仮欠歯フラグは欠歯部位の検出期間が終了するとき(カウント値CAが「5」になるとき)にHレベルになる一方、その後の本処理の実行時にLレベルになる値である。また、上記カウンタC1のカウント値T1は、仮欠歯フラグがHレベルになると初期値「3」にリセットされる一方、本処理が実行される度に「1」ずつ「0」までカウントダウンされる。このカウント値T1が所定値になったことにより欠歯部位を検出するための処理(ステップS104の処理)において用いられる値(四回前の値TB[i−4]、三回前の値TB[i−3]、および二回前の値TB[i−2])として適切な値が記憶されたと判断される。
【0044】
そして、仮欠歯フラグがHレベルになった後に上記カウント値T1が所定値になると(ステップS103:YES)、四回前の値TB[i−4]、三回前の値TB[i−3]、および二回前の値TB[i−2]がそれぞれ読み込まれるとともに、それらに基づいて以下の[条件イ]および[条件ロ]が共に満たされるか否かが判断される(ステップS104)。
[条件イ](四回目の値TB[i−4]/三回前の値TB[i−3])≧所定の判定値(例えば2.4)
[条件ロ](二回前の値TB[i−2]/三回前の値TB[i−3])≧所定の判定値(例えば2.4)
ここで[条件イ]および[条件ロ]が共に満たされる場合には(ステップS104:YES)、欠歯判定フラグがHレベルにされる(ステップS105)。この場合には、四回前の値TB[i−4]および二回前の値TB[i−2]が共に三回前の値TB[i−3]より長くなっているため、三回前の値TB[i−3]が検出された期間が欠歯部位にあたる期間であると判断される。本実施の形態では、ステップS104の処理およびステップS105の処理がパルス間隔に基づいて欠歯部位を検出する処理として機能する。
【0045】
一方、[条件イ]および[条件ロ]の一方、あるいは双方が満たされない場合には(ステップS104:NO)、欠歯判定フラグがHレベルにされない(ステップS105の処理がジャンプされる)。
【0046】
他方、仮欠歯フラグがHレベルになった後に上記カウント値T1が所定値より大きい場合には(ステップS103:NO)、欠歯部位を検出するための処理が実行されない(ステップS104の処理およびステップS105の処理がジャンプされる)。
【0047】
なお、欠歯判定フラグがHレベルにされた後に本処理が実行されると(ステップS102:NO)、欠歯判定フラグがLレベルにされる(ステップS106)。すなわち、欠歯判定フラグは10°CAの間だけHレベルに操作される。
【0048】
このようにして欠歯判定フラグが操作された後、同欠歯判定フラグの操作態様に基づいてクランクカウンタのカウント値CAを算出する処理が実行される(ステップS107)。
【0049】
すなわち先ず、図8に示すように、本処理が実行される度に30°CA毎のタイミングをカウントするためのNE30カウンタC2のカウント値T2が「3」→「2」→「1」→「3」といった順に変更および更新される。
【0050】
また、欠歯部位の検出後において210°CAだけエンジン出力軸4が回転したことを検出するためのカウンタC3のカウント値T3が変更および更新される。このカウント値T3は、欠歯判定フラグがHレベルになると初期値(本実施の形態では「6」)が設定されるとともに、その後において上記カウント値T2が「3」になる度に「1」ずつ「0」までカウントダウンされる。そして、このカウント値T3が「0」になるとTDCフラグがHレベルに操作される。このTDCフラグは、Hレベルになった後に上記カウント値T2が再度「3」になるとLレベルに操作される。
【0051】
さらに、G2フラグの生成に用いるカウンタC4のカウント値T4が変更および更新される。このカウント値T4は、欠歯判定フラグがHレベルになると初期値(本実施の形態では「12」)が設定されるとともに、本処理が実行される度に「1」ずつ「0」までカウントダウンされる。そして、このカウント値T4が「0」の状態で、TDCフラグがHレベルに変化すると、G2フラグがHレベルからLレベルに(あるいはLレベルからHレベル)に操作される。
【0052】
そして、NE30カウンタC2のカウント値T2、TDCフラグおよびG2フラグに基づいて、クランクカウンタのカウント値CAが算出される。具体的には、NE30カウンタC2のカウント値T2が「3」になる度に、クランクカウンタのカウント値CAが「1」ずつカウントアップされる。またTDCフラグおよびG2フラグが共にHレベルになると、上記カウント値CAが「0」に初期化される。これにより、エンジン出力軸4の回転位相に対応する値として、クランクカウンタのカウント値CAが算出される。
【0053】
このようにソフトウェアによる検出では、NE10割り込みの処理を通じて、各種の演算値(具体的には、カウント値T1〜T4、値TB[i−5]〜TB[i]、仮欠歯フラグ、欠歯判定フラグ、TDCフラグ、G2フラグ)が算出および更新されるとともに、それら演算値に基づいてCPU11によりクランクカウンタのカウント値CAが算出される。そして、そのカウント値CAがエンジン出力軸4の回転位相に対応する値としてエンジン制御に用いられる。
【0054】
本実施の形態では、クランクカウンタのカウント値CAを検出する方法として、エンジン回転速度NEが所定速度V(本実施の形態では、1000回転/分)以上であるときにはハードウェアによる検出方法が選択される一方、エンジン回転速度NEが上記所定速度V未満であるときにはソフトウェアによる検出方法が選択される。なお上記所定速度Vとしては、ハードウェアによる検出からソフトウェアによる検出への切り替えが完了する前に検出精度が過度に低くなる速度までエンジン回転速度NEが低下することのないように、エンジン回転速度NEの最大低下速度と検出方法の切り替えにかかる最大時間とを考慮した上で適正な値が求められて設定される。本実施の形態では、所定速度Vとして一定の速度が設定されているために、エンジン回転速度NEの低下速度などのエンジン運転状態に応じて所定速度を可変設定する構成と比較して、簡素な演算処理を通じて検出方法の切り替えが行われる。
【0055】
ここで前述したように、ハードウェアによる検出は検出方法の設定についての自由度が低いために検出精度の低下を招きやすい一方で、ソフトウェアによる検出は上記検出方法を高い自由度で設定することができるために高い精度での検出が可能になる。
【0056】
本実施の形態の装置において、エンジン回転速度NEの上昇に伴ってソフトウェアによる検出方法からハードウェアによる検出方法に切り替わる場合には、検出精度の高いソフトウェアによる検出方法から検出精度の低いハードウェアによる検出方法に切り替えられるために、このとき単に検出方法を切り替えると検出精度の低下を招くおそれがある。
【0057】
そのため本実施の形態では、エンジン回転速度NEが所定速度V以上になると、ソフトウェアによる検出およびハードウェアによる検出がともに実行されるとともにそれら検出を通じて各別にクランクカウンタのカウント値CAが算出される。そして、それらの検出結果が所定期間(具体的には、エンジンの一燃焼サイクル[720°CA])にわたって一致したことを条件に、ソフトウェアによる検出からハードウェアによる検出への切り替えが実行される。これにより、検出方法の切り替えに伴う検出精度の低下が抑えられるようになる。
【0058】
一方、本実施の形態の装置において、エンジン回転速度NEの低下に伴ってハードウェアによる検出方法からソフトウェアによる検出方法に切り替わる場合には、検出精度の低いハードウェアによる検出方法から検出精度の高いソフトウェアによる検出方法に切り替えられる。そのため、このとき検出方法の切り替えに伴って検出精度の低下を招く可能性は低いと云え、その低下を抑えるとの観点からすると、どのようなタイミングで検出方法の切り替えを行ってもよいと云える。
【0059】
ただし、ソフトウェアによる検出では、欠歯部位の検出やクランクカウンタのカウント値CAの算出のために各種の演算値(例えばカウント値T1〜T4や、仮欠歯フラグ、欠歯判定フラグ、TDCフラグ、G2フラグ)が設定されて用いられる。これに対してハードウェアによる検出では、パルス間隔Tplの計測や欠歯部位の検出が信号処理回路30を通じて行われるために、そうした演算値は設定されない。そのため、ハードウェアによる検出からソフトウェアによる検出に切り替える際には、クランクカウンタのカウント値CAの検出に先立って切り替え時におけるエンジン出力軸4の回転位相に対応する各種の演算値をマイコン10に記憶させてく必要がある。
【0060】
仮にハードウェアによる検出からソフトウェアによる検出への切り替えをエンジン回転速度NEが所定速度Vを下回った任意の回転位相で行うようにすると、切り替え時における回転位相に基づいて各種の演算値を逆算するための演算処理、ひいてはそれら演算値をマイコン10に予め記憶させておくための演算処理が必要になる。そのため、その演算処理にかかる負荷が大きくなって演算処理の実行にかかる時間が長くなるばかりか、場合によっては同演算処理についての十分な実行時間を確保することが困難になるおそれもある。
【0061】
この点をふまえて本実施の形態では、ハードウェアによる検出方法からソフトウェアによる検出方法への切り替えを、以下のようにして実行するようにしている。
図8に、そうした検出方法の切り替えにかかる処理(切り替え処理)の実行手順を示す。同図のフローチャートに示される一連の処理は、NE30信号の立ち上がりエッジ毎の割り込み処理としてマイコン10により実行される。
【0062】
図7に示すように、この処理では、エンジン回転速度NEが所定速度V以上であるときには(ステップS201:NO)、ハードウェアによる検出が継続して実行される(ステップS202)。
【0063】
また、その後においてエンジン回転速度NEが所定速度Vを下回った場合であっても(ステップS201:YES)、エンジン出力軸4の回転位相が予め定められた所定位相(具体的には、欠歯部位に対応する位相)になるまでの間は(ステップS203:NO)、ハードウェアによる検出が継続して実行される(ステップS202)。
【0064】
そして、エンジン出力軸4の回転位相が所定位相になると(ステップS203:YES)、以後においてソフトウェアによる検出が選択されて実行される(ステップS204)。なお、エンジン出力軸4の回転位相が所定位相になったことは、ハードウェアによる検出を通じて算出されたクランクカウンタのカウント値CAが「4」または「16」になったことをもって判断される。ちなみに、上記カウント値CAが「4」または「16」になるタイミングは、NE10信号の有効エッジの間隔が30°CAになる期間が始まるタイミングである。
【0065】
以下、このようにしてハードウェアによる検出からソフトウェアによる検出への切り替えを行うことによる作用について説明する。
本実施の形態では、ハードウェアによる検出からソフトウェアによる検出への切り替えが、予め定められた所定位相(詳しくは、欠歯部位に対応する位相であり、本実施の形態では120°CAまたは480°CA)に限って行われる。そのため、検出方法の切り替えを適切に行うためには、そうした所定位相に対応する各演算値をマイコン10のROM12に記憶させておけばよい。具体的には、120°CAに対応する各演算値と480°CAに対応する各演算値とをROM12に予め記憶させておくとともに、検出方法の切り替えに際してそれら各演算値の一方を選択してマイコン10のRAM13に記憶させればよい。
【0066】
先の図7に示す例では、エンジン回転速度NEが所定速度Vを下回った後に(時刻t21)、エンジン出力軸4の回転位相が480°CA(カウント値CA=16)になる前に120°CA(カウント値CA=4)になる(時刻t22)。そのため、このときには同120°CAに対応する各演算値が読み込まれてRAM13に記憶される。詳しくは、各カウント値T1,T3,T4としてそれぞれ「0」が記憶されるとともにカウント値T2として「3」が記憶される。また、仮欠歯フラグ、欠歯判定フラグおよびTDCフラグとしてそれぞれLレベルが設定されるとともに、G2フラグとしてはHレベルが設定される。そして、その後においてそれら各演算値に基づいて欠歯部位の検出やクランクカウンタのカウント値CAの算出が実行されるようになる。
【0067】
なお、エンジン回転速度NEが所定速度Vを下回った後にエンジン出力軸4の回転位相が120°CAになる前に480°CAになる場合には、各カウント値T1〜T4、仮欠歯フラグ、欠歯判定フラグおよびTDCフラグとしては、図8に示す例と同一の値が記憶される。ただし、G2フラグについては図8に示す例とは異なるLレベルが設定される。
【0068】
このように本実施の形態では、限られたごく少ない回転位相(120°CA、480°CA)に対応する各種演算値をマイコン10のROM12に記憶させておくことにより、ハードウェアによる検出からソフトウェアによる検出への切り替えを適切に行うことができる。
【0069】
エンジン回転速度NEが所定速度Vを下回った任意の回転位相で検出方法の切り替えを行う比較例の装置では、クランクカウンタのカウント値CA(詳しくは「0」〜「23」)の各値に対応する24パターンの各種演算値をROM12に記憶させておく必要がある。これに対して本実施の形態にかかる装置では、クランクカウンタのカウント値CAが「4」の場合と「16」の場合との2パターンについての各種の演算値をROM12に記憶させておけばよい。そのため、比較例の装置と比較して、各種の演算値を算出するための演算処理にかかる負荷、ひいてはそれら演算値をマイコン10のRAM13に記憶させるための演算処理の負荷を大幅に抑えることができ、同演算処理を早期に完了させることができる。しかも、マイコン10のROM12に予め記憶させておく各種の演算値を求める作業にかかる工数や検出方法の切り替えのための演算処理の設計および検証にかかる工数を大幅に低減させることもできる。
【0070】
また、検出方法の切り替えにかかる演算処理の実行時間が短くなるために、同演算処理より優先度の高い演算処理が割り込みで実行される場合であっても、検出方法の切り替えにかかる演算処理についての十分な実行時間を容易に確保することができる。
【0071】
ここで、仮にハードウェアによる検出結果とソフトウェアによる検出結果とが所定期間にわたって一致したことを条件にハードウェアによる検出からソフトウェアによる検出への切り替えを実行するようにすると、エンジン回転速度NEの変動等に起因して検出結果が一致しない状況が続く場合において検出方法の切り替えを行えなくなってしまう。この点、本実施の形態にかかる装置では、エンジン回転速度NEが所定速度Vを下回った後において、少なくともエンジン出力軸4が一回転(360°CAだけ回転)するまでの間に検出方法が切り替えられるようになる。そのため、検出方法の切り替えを行えなくなるといった状況になることが回避されるようになる。
【0072】
このように本実施の形態にかかる装置によれば、エンジン出力軸4の回転位相のソフトウェアによる検出とハードウェアによる検出との切り替えを適切に行うことができるようになる。
【0073】
また本実施の形態では、上記検出方法の切り替えを行う所定位相として、欠歯部位に対応する回転位相(120°CA、480°CA)が設定されている。そのため、他の期間と比較してパルス間隔が長いとき、言い換えればNE10信号の有効エッジの時間間隔が長いために検出方法の切り替えにかかる演算処理を実行可能な時間が長いときにおいて、ハードウェアによる検出からソフトウェアによる検出への切り替えを行うことができる。したがって、検出方法を切り替えるための演算処理を時間的な余裕をみた状態で実行することができ、同演算処理とその後のNE10信号の有効エッジに基づく割り込みの処理とをそれらの実行タイミングを互いに重複させることなくそれぞれ適正に実行することができる。
【0074】
さらに、本実施の形態にかかる装置では、自動停止再始動制御によるエンジンの自動停止に際して、エンジン出力軸4の回転位相の検出方法の切り替えが適切に行われるようになるために、同回転位相の検出を精度よく行うことができる。そのため、そうした高精度で検出された回転位相をもとにエンジンの再始動のためのエンジン制御を適正に実行することができ、エンジンの再始動を速やかに且つ早期に完了させることができる。したがって、エンジンの再始動性能を向上させることができる。
【0075】
以上説明したように、本実施の形態によれば、以下に記載する効果が得られるようになる。
(1)エンジン出力軸4の回転位相についてのハードウェアによる検出からソフトウェアによる検出への切り替えを、エンジン回転速度NEが所定速度Vを下回った後にエンジン出力軸4の回転位相が所定位相になるタイミングで行うようにした。そのため、任意の回転位相で検出方法の切り替えを行う比較例の装置と比較して、クランクカウンタのカウント値CAの算出に用いられる各種演算値を算出するための演算処理にかかる負荷、ひいてはそれら演算値をマイコン10のRAM13に記憶させるための演算処理の負荷を大幅に抑えることができ、同演算処理を早期に完了させることができる。したがって、エンジン出力軸4の回転位相のソフトウェアによる検出とハードウェアによる検出との切り替えを適切に行うことができるようになる。
【0076】
(2)検出方法の切り替えを行う所定位相として、欠歯部位に対応する回転位相を設定した。そのため、検出方法を切り替えるための演算処理を時間的な余裕をみた状態で実行することができ、同演算処理とその後のNE10信号の有効エッジに基づく割り込みの処理とをそれらの実行タイミングを互いに重複させることなくそれぞれ適正に実行することができる。
【0077】
(3)所定速度Vとして一定の速度を設定したために、エンジン回転速度NEの低下速度などのエンジン運転状態に応じて所定速度を可変設定する構成と比較して、簡素な演算処理を通じて検出方法の切り替えを行うことができる。
【0078】
(4)自動停止再始動制御によるエンジンの自動停止に際して、エンジン出力軸4の回転位相の検出方法の切り替えを適切に行うことができ、同回転位相の検出を精度よく行うことができる。そのため、エンジンの再始動を速やかに且つ早期に完了させることができ、エンジンの再始動性能を向上させることができる。
【0079】
なお、上記実施の形態は、以下のように変更して実施してもよい。
・所定速度Vとして、一定の速度を設定することに代えて、エンジン回転速度NEの変化速度に応じて可変設定してもよい。同構成においては、例えばエンジン回転速度NEの低下速度が遅いときほど所定速度Vとして低い速度を設定すればよい。これにより、ハードウェアによる検出からソフトウェアによる検出への切り替えがエンジン回転速度NEの比較的高い状態で行われる機会を減少させることができ、マイコン10の演算負荷の増加を適切に抑えることができる。
【0080】
・上記実施の形態にかかるエンジン制御装置は、基準回転位相として欠歯部位が設けられた装置に限らず、他の部分よりパルス間隔が長い部位あるいは短い部位が基準回転位相として設けられた装置であれば、その構成を適宜変更したうえで適用することができる。
【0081】
・検出方法の切り替えを行う回転位相としては、予め定められた所定の位相であれば、欠歯部位に対応する回転位相に限らず、任意の回転位相を設定することができる。
・信号処理回路30に代えて、NE10信号および気筒判別信号GinをNE30信号やTDC信号並びにG2信号に準じた信号に変換して出力することができる電気回路であれば、任意の電気回路を採用することができる。
【0082】
・NE10信号の立ち上がりエッジ毎の割り込み処理を通じてクランクカウンタのカウント値CAを算出するべく実行される演算処理は、NE30カウンタC2のカウント値T2やTDCフラグ、並びにG2フラグに準じた値を精度よく算出することができるのであれば、任意に変更することができる。
【0083】
・上記実施の形態にかかる装置は、交差点等での車両停止時においてエンジンの運転を一時的に停止させる車両の他、車両駆動源としてエンジンと電動機とを備えたハイブリッド車両にも適用することができる。
【0084】
・上記実施の形態にかかる装置は、自動停止再始動制御が実行されないエンジン制御装置にも適用することができる。同構成によれば、エンジンの停止過程、あるいは停止後においてエンジン出力軸4の回転位相に基づく何らかの処理が実行される場合に、同処理を適正に実行することができるようになる。
【符号の説明】
【0085】
1…電子制御ユニット、2…回転位相センサ、パルサ…2a,3a、3…気筒判別センサ、4…エンジン出力軸、5…カム軸、10…マイクロコンピュータ、11…CPU、12…ROM、13…RAM、14…入力バッファ、15…A/D変換器、16…マルチプレクサ、17…汎用出力バッファ、18…バス、20…波形整形回路、30…信号処理回路、31…欠歯検出部、32…レベル読取部、33…30°CA信号生成部、34…カウンタ演算部34、35…カウンタ、36…判別用信号生成部、40…駆動回路。

【特許請求の範囲】
【請求項1】
エンジン出力軸の回転に対応する所定位相間隔のパルス列からなり且つその途中にパルス間隔の異なる基準回転位相を有してなる回転信号を発生する回転信号発生回路と、前記回転信号を入力してそのパルス間隔を計測するとともに該パルス間隔に基づき前記基準回転位相を検出して同位相に対応する基準位置信号を出力する信号処理回路と、回転信号および基準回転位相に基づき前記エンジン出力軸の回転位相を検出するとともに同回転位相に基づき各種制御を実行するマイクロコンピュータとを備え、前記マイクロコンピュータは、エンジン回転速度が高い運転領域では前記信号処理回路から出力される前記基準位置信号を有効とする一方、エンジン回転速度が低い運転領域では前記回転信号の有効エッジ毎に割り込みを起動するとともに該割り込みの処理を通じて前記基準回転位相の検出を実行した結果を前記基準位置信号に代えて有効として、前記回転位相の検出を実行するものであるエンジン制御装置において、
前記基準位置信号に基づく前記回転位相の検出から前記割り込みの処理による検出結果に基づく前記回転位相の検出への切り替えを、エンジン回転速度が予め定められた所定速度を下回った後に前記エンジン出力軸の回転位相が予め定められた所定位相になるタイミングで行うことを特徴とするエンジン制御装置。
【請求項2】
請求項1に記載のエンジン制御装置において、
前記基準回転位相は前記パルス列の途中においてパルス間隔が長く設定された部分に対応する回転位相であり、前記所定位相は前記基準回転位相である
ことを特徴とするエンジン制御装置。
【請求項3】
請求項1または2に記載のエンジン制御装置において、
前記マイクロコンピュータは、前記割り込みの処理として、前記回転信号のパルス間隔を計測する処理と該パルス間隔に基づいて前記基準回転位相を検出する処理とを実行するものである
ことを特徴とするエンジン制御装置。
【請求項4】
請求項1〜3のいずれか一項に記載のエンジン制御装置において、
前記所定速度は一定の速度である
ことを特徴とするエンジン制御装置。
【請求項5】
請求項1〜4のいずれか一項に記載のエンジン制御装置において、
当該装置は、自動停止条件の成立をもってエンジンを自動停止させるとともにその後における再始動条件の成立をもって前記エンジンを再始動させる自動停止再始動制御を実行するものである
ことを特徴とするエンジン制御装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2011−241759(P2011−241759A)
【公開日】平成23年12月1日(2011.12.1)
【国際特許分類】
【出願番号】特願2010−114413(P2010−114413)
【出願日】平成22年5月18日(2010.5.18)
【出願人】(000003207)トヨタ自動車株式会社 (59,920)
【Fターム(参考)】