(57)【要約】クランクパルス抜けやノイズ発生に伴うクランクパルス誤検出を正確に検出する。クランクパルスを送出するためのクランクシャフト外周に設けた歯に歯抜け部を設け、この歯抜け部及びその前後の歯のクランクパルスから算出されるクランクシャフトの回転速度の瞬間値を用いてクランクパルスの誤検出を検出する。クランクパルスを少なく誤検出しているときには、クランクパルスから算出されるクランクシャフト回転速度の瞬間値が急減してから急増するので、その間のクランクパルス数から幾つクランクパルスを少なく検出しているかを検出する。クランクパルスを多く誤検出しているときには、クランクシャフト回転速度の瞬間値が急増してから急減するので、その間のクランクパルス数から幾つクランクパルスを多く検出しているかを検出する。
2003036068.tif 000002
【特許請求の範囲】
【請求項１】
クランクシャフト自体又はクランクシャフトと同期回転する部材の外周に不等間隔で設けられた歯と、それらの歯の接近に伴ってパルス信号を送出するクランクパルス発生手段と、前記クランクパルス発生手段から送出されるパルス信号をクランクパルスとして検出し、そのクランクパルスからクランクシャフトの位相を検出するクランクシャフト位相検出手段と、前記クランクシャフト位相検出手段で検出されたクランクシャフトの位相に基づいてエンジンの運転状態を制御するエンジン制御手段と、前記クランクシャフト位相検出手段で検出されたクランクパルスのうち、前記不等間隔に設けられた歯のうちの特定の歯のクランクパルスから得られるクランクシャフトの回転速度と、その近傍の歯のクランクパルスから得られるクランクシャフトの回転速度とを比較してクランクパルスの誤検出を検出するクランクパルス誤検出検出手段とを備えたことを特徴とするエンジン制御装置。
【請求項２】
前記不等間隔に設けられた歯のうちの特定の歯のピッチが、その他の歯のピッチのα倍であるとき、前記クランクパルス誤検出検出手段は、前記特定の歯より前の歯のクランクパルスから得られるクランクシャフトの回転速度の瞬間値が、その前の歯のクランクパルスから得られるクランクシャフトの回転速度の予測値の１／α倍以下であり、且つ前記特定の歯のクランクパルスから得られるクランクシャフトの回転速度の瞬間値が、クランクシャフトの回転速度の平均値のα倍以上であるときに、検出すべきクランクパルスを少なく誤検出していると判定することを特徴とする請求項１に記載のエンジン制御装置。
【請求項３】
前記不等間隔に設けられた歯のうちの特定の歯のピッチが、その他の歯のピッチのα倍であるとき、前記クランクパルス誤検出検出手段は、前記特定の歯のクランクパルスから得られるクランクシャフトの回転速度の瞬間値が、クランクシャフトの回転速度の平均値のα倍以上であり、且つ前記特定の歯の次の歯以後の歯のクランクパルスから得られるクランクシャフトの回転速度の瞬間値が、それ以前に得られたクランクシャフトの回転速度の瞬時値の１／２α倍以下であるときに、検出すべきクランクパルスを多く誤検出していると判定することを特徴とする請求項１又は２に記載のエンジン制御装置。
【発明の詳細な説明】
技術分野
本発明は、エンジンを制御するエンジン制御装置に関するものであり、特に燃料を噴射する燃料噴射装置を備えたエンジンの制御に好適なものである。
背景技術
近年、インジェクタと呼ばれる燃料噴射装置が普及するにつれて、燃料を噴射するタイミングや噴射燃料量、つまり空燃比などの制御が容易になり、高出力化、低燃費化、排ガスのクリーン化などを促進することができるようになった。このうち、特に燃料を噴射するタイミングについては、厳密には吸気バルブの状態、つまり一般的にはカムシャフトの位相状態を検出し、それに合わせて燃料を噴射するのが一般的である。しかしながら、カムシャフトの位相状態を検出するための所謂カムセンサは高価であり、特に二輪車両などではシリンダヘッドが大型化するなどの問題があって採用できないことが多い。そのため、例えば特開平１０−２２７２５２号公報では、クランクシャフトの位相状態及び吸気圧力を検出し、それらから気筒の行程状態を検出するエンジン制御装置が提案されている。従って、この従来技術を用いることにより、カムシャフトの位相を検出することなく、行程状態を検出することができるので、その行程状態に合わせて燃料の噴射タイミングなどを制御することが可能となる。
ところで、前述したクランクシャフトの位相状態の検出には、クランクシャフト自体或いはクランクシャフトと同期回転する部材の外周に歯を形成し、その歯の接近を磁気センサ等によって検出してパルス信号を送出し、このパルス信号をクランクパルスとして検出する必要がある。このようにして検出されたクランクパルスにナンバリングするなどしてクランクシャフトの位相状態を検出するのであるが、このナンバリング等のために、前記歯を不等間隔に設けることが多い。つまり、検出されるクランクパルスに特徴を設けて目印にするのである。そして、この特徴付けされたクランクパルスに応じて燃料の噴射タイミングや点火タイミングを制御する。
しかしながら、特に小排気量、単気筒の二輪車両などでは、例えばスロットル急開時にエンジン回転数が大きく減少し、そのときにクランクパルスを検出できないことがある。或いは、点火に伴う電気ノイズをクランクパルスとして誤検出してしまうこともある。このようにクランクパルスを、多くも、少なくも、誤検出すると、実際の噴射タイミングや点火タイミングが制御上の噴射タイミングや点火タイミングと異なってしまうという問題が生じる。そして、このようなクランクパルスの誤検出を検出する具体的な手法はなかった。
本発明は前記諸問題を解決すべく開発されたものであり、クランクパルスの誤検出を正確に検出することができるエンジン制御装置を提供することを目的とするものである。
発明の開示
上記諸問題を解決するため、本発明のうち請求項１に係るエンジン制御装置は、クランクシャフト自体又はクランクシャフトと同期回転する部材の外周に不等間隔で設けられた歯と、それらの歯の接近に伴ってパルス信号を送出するクランクパルス発生手段と、前記クランクパルス発生手段から送出されるパルス信号をクランクパルスとして検出し、そのクランクパルスからクランクシャフトの位相を検出するクランクシャフト位相検出手段と、前記クランクシャフト位相検出手段で検出されたクランクシャフトの位相に基づいてエンジンの運転状態を制御するエンジン制御手段と、前記クランクシャフト位相検出手段で検出されたクランクパルスのうち、前記不等間隔に設けられた歯のうちの特定の歯のクランクパルスから得られるクランクシャフトの回転速度と、その近傍の歯のクランクパルスから得られるクランクシャフトの回転速度とを比較してクランクパルスの誤検出を検出するクランクパルス誤検出検出手段とを備えたことを特徴とするものである。
ちなみに、クランクシャフト自体又はクランクシャフトと同期回転する部材の外周に設けられた歯のクランクパルスからクランクシャフトの回転速度を算出するには、その前の歯のクランクパルスからの検出所要時間で、二つの歯の実際の位相を除せば、単位時間当たりのクランクシャフトの回転速度を求めることができる。
また、本発明のうち請求項２に係るエンジン制御装置は、前記請求項１の発明において、前記不等間隔に設けられた歯のうちの特定の歯のピッチが、その他の歯のピッチのα倍であるとき、前記クランクパルス誤検出検出手段は、前記特定の歯より前の歯のクランクパルスから得られるクランクシャフトの回転速度の瞬間値が、その前の歯のクランクパルスから得られるクランクシャフトの回転速度の予測値の１／α倍以下であり、且つ前記特定の歯のクランクパルスから得られるクランクシャフトの回転速度の瞬間値が、クランクシャフトの回転速度の平均値のα倍以上であるときに、検出すべきクランクパルスを少なく誤検出していると判定することを特徴とするものである。
ちなみに、クランクシャフトの回転速度の瞬間値とは、前述のように或る歯のクランクパルスとその前の歯のクランクパルスとから算出されるクランクシャフトの回転速度を示し、クランクシャフトの回転速度の平均値とは、前記クランクシャフトの回転速度の移動平均値等を示している。
また、本発明のうち請求項３に係るエンジン制御装置は、前記請求項１又は２の発明において、前記不等間隔に設けられた歯のうちの特定の歯のピッチが、その他の歯のピッチのα倍であるとき、前記クランクパルス誤検出検出手段は、前記特定の歯のクランクパルスから得られるクランクシャフトの回転速度の瞬間値が、クランクシャフトの回転速度の平均値のα倍以上であり、且つ前記特定の歯の次の歯以後の歯のクランクパルスから得られるクランクシャフトの回転速度の瞬間値が、それ以前に得られたクランクシャフトの回転速度の瞬間値の１／２α倍以下であるときに、検出すべきクランクパルスを多く誤検出していると判定することを特徴とするものである。
発明を実施するための最良の形態
以下、本発明の実施の形態について説明する。
図１は、例えばモータサイクル用のエンジン及びその制御装置の一例を示す概略構成である。このエンジン１は、比較的小排気量の単気筒４サイクルエンジンであり、シリンダボディ２、クランクシャフト３、ピストン４、燃焼室５、吸気管６、吸気バルブ７、排気管８、排気バルブ９、点火プラグ１０、点火コイル１１を備えている。また、吸気管６内には、アクセル開度に応じて開閉されるスロットルバルブ１２が設けられ、このスロットルバルブ１２の下流側の吸気管６に、燃料噴射装置としてのインジェクタ１３が設けられている。このインジェクタ１３は、燃料タンク１９内に配設されているフィルタ１８、燃料ポンプ１７、圧力制御バルブ１６に接続されている。
このエンジン１の運転状態は、エンジンコントロールユニット１５によって制御される。そして、このエンジンコントロールユニット１５の制御入力、つまりエンジン１の運転状態を検出する手段として、クランクシャフト３の回転角度、つまり位相を検出するためのクランク角度センサ２０、シリンダボディ２の温度又は冷却水温度、即ちエンジン本体の温度を検出する冷却水温度センサ２１、排気管８内の空燃比を検出する排気空燃比センサ２２、吸気管６内の吸気圧力を検出するための吸気圧力センサ２４、吸気管６内の温度、即ち吸気温度を検出する吸気温度センサ２５が設けられている。そして、前記エンジンコントロールユニット１５は、これらのセンサの検出信号を入力し、前記燃料ポンプ１７、圧力制御バルブ１６、インジェクタ１３、点火コイル１１に制御信号を出力する。
ここで、前記クランク角度センサ２０から出力されるクランク角度信号の原理について説明する。本実施形態では、図２ａに示すように、クランクシャフト３の外周に、略等間隔で複数の歯２３を突設し、その接近を磁気センサ等のクランク角度センサ２０で検出して、適宜電気的処理を施してパルス信号を送出する。各歯２３間の周方向へのピッチは、クランクシャフト３の位相（回転角度）にして３０°であり、各歯２３の周方向への幅は、クランクシャフト３の位相（回転角度）にして１０°としている。但し、一箇所だけ、このピッチに従っておらず、その他の歯２３のピッチに対して二倍のピッチになっている箇所がある。それは、図２ａに二点鎖線で示すように、本来、歯のある部分に歯がない、特殊な設定になっており、この部分が不等間隔に相当する。以下、この部分を歯抜け部とも記す。
従って、クランクシャフト３が等速回転しているときの各歯２３のパルス信号列は図２ｂのように表れる。そして、図２ａは圧縮上死点時の状態を示している（排気上死点も形態としては同じである）が、この圧縮上死点時の直前のパルス信号を図示“０”とし、その次のパルス信号に図示“１”、次のパルス信号に図示“２”、といった順で図示“４”までナンバリング（番号付け）する。この図示“４”のパルス信号に相当する歯２３の次は歯抜け部なので、それを、あたかも歯が存在すると考えて１歯余分にカウントし、次の歯２３のパルス信号には図示“６”とナンバリングする。これを繰り返してゆくと、今度は図示“１６”のパルス信号の次に歯抜け部が接近するので、前述と同様に１歯余分にカウントし、次の歯２３のパルス信号には図示“１８”とナンバリングする。クランクシャフト３が二回転すると、４つの行程のサイクルが全て完了するので、図示“２３”までナンバリングが済んだら、次の歯２３のパルス信号には再び図示“０”とナンバリングする。原則的に、この図示“０”とナンバリングされた歯２３のパルス信号の直後が圧縮上死点になっているはずである。このように、検出されたパルス信号列、又はその単体のパルス信号をクランクパルスと定義する。そして、このクランクパルスに基づいて、後述のようにして行程検出を行うと、クランクタイミングを検出することができる。なお、前記歯２３は、クランクシャフト３と同期回転する部材の外周に設けても、全く同じである。
一方、前記エンジンコントロールユニット１５は、図示されないマイクロコンピュータなどによって構成されている。図３は、このエンジンコントロールユニット１５内のマイクロコンピュータで行われるエンジン制御演算処理の実施形態を示すブロック図である。この演算処理では、前記クランク角度信号からエンジン回転数を算出するエンジン回転数算出部２６と、同じくクランク角度信号及び前記吸気圧力信号からクランクタイミング情報、即ち行程状態を検出するクランクタイミング検出部２７と、このクランクタイミング検出部２７で検出されたクランクタイミング情報を読込み、前記吸気温度信号及び前記冷却水温度（エンジン温度）信号及び前記吸気管圧信号及び前記エンジン回転数算出部２６で算出されたエンジン回転数からシリンダ内空気質量（吸入空気量）を算出するシリンダ内空気質量算出部（吸入空気量算出手段）２８と、前記エンジン回転数算出部２６で算出されたエンジン回転数及び前記吸気圧力信号から目標空燃比を算出する目標空燃比算出部３３と、この目標空燃比算出部３３で算出された目標空燃比及び前記吸気圧力信号及び前記シリンダ内空気質量算出部２８で算出されたシリンダ内空気質量から燃料噴射量及び燃料噴射時期を算出する燃料噴射量算出部３４と、前記クランクタイミング検出部２７で検出されたクランクタイミング情報を読込み、前記燃料噴射量算出部３４で算出された燃料噴射量及び燃料噴射時期に応じた噴射パルスを前記インジェクタ１３に向けて出力する噴射パルス出力部３０と、前記エンジン回転数算出部２６で算出されたエンジン回転数及び前記目標空燃比算出部３３で設定された目標空燃比から点火時期を算出する点火時期算出部３１と、前記クランクタイミング検出部２７で検出されたクランクタイミング情報を読込み、前記点火時期算出部３１で設定された点火時期に応じた点火パルスを前記点火コイル１１に向けて出力する点火パルス出力部３２とを備えて構成される。
前記エンジン回転数算出部２６は、前記クランク角度信号の時間変化率から、エンジンの出力軸であるクランクシャフトの回転速度をエンジン回転数として算出する。
前記クランクタイミング検出部２７は、前述した特開平１０−２２７２５２号公報に記載される行程判別装置と同様の構成を有し、これにより例えば図４に示すように各気筒毎の行程状態を検出し、それをクランクタイミング情報として出力する。即ち、４サイクルエンジンにおいて、クランクシャフトとカムシャフトとは所定の位相差で常時回転し続けているから、例えば図４に示すようにクランクパルスが読込まれているとき、前述した歯抜け部から四番目の図示“９”又は“２１”のクランクパルスは排気行程か又は圧縮行程の何れかである。周知のように、排気行程では排気バルブが閉じ、吸気バルブが閉じているので吸気圧力が高く、圧縮行程の初期は、未だ吸気バルブが開いているために吸気圧力が低く、若しくは吸気バルブが閉じていても、先行する吸気行程で吸気圧力が低くなっている。従って、吸気圧力が低いときの図示“２１”のクランクパルスは圧縮行程にあることを示しており、図示“０”のクランクパルスが得られた直後が圧縮上死点になる。このようにして、何れかの行程状態が検出できたら、この行程の間を、クランクシャフトの回転速度で補間すれば、現在の行程状態を更に細かく検出することができる。
前記シリンダ内空気質量算出部２８は、図５に示すように、前記吸気圧力信号及び前記エンジン回転数算出部２６で算出されたエンジン回転数からシリンダ内空気質量を算出するための三次元マップを備えている。このシリンダ内空気質量の三次元マップは、例えば実際にエンジンを所定の回転数で回転させながら吸気圧力を変化させたときのシリンダ内空気質量を計測するだけでよく、比較的簡単な実験によって計測でき、従ってマップの作成は容易である。また、高度なエンジンシミュレーションがあれば、それを用いてマップを作成することも可能である。なお、シリンダ内空気質量は、エンジンの温度によって変化するので、前記冷却水温度（エンジン温度）信号を用いて補正してもよい。
前記目標空燃比算出部３３は、図６に示すように、前記吸気圧力信号及び前記エンジン回転数算出部２６で算出されたエンジン回転数から目標空燃比を算出するための三次元マップを備えている。この三次元マップは、或る程度まで机上でも設定することができる。空燃比は、一般にトルクと相関があり、空燃比が小さい、つまり燃料が多く且つ空気が少ないと、トルクが増す一方、効率は低下する。逆に、空燃比が大きい、つまり燃料が少なく且つ空気が多いと、トルクが減少するが、効率は向上する。空燃比が小さい状態をリッチ、空燃比が大きい状態をリーンと呼んでおり、最もリーンな状態は、所謂理想空燃比、或いはストイキオメトリックと呼ばれ、ガソリンが完全燃焼する空燃比、即ち１４．７である。
エンジン回転数は、エンジンの運転状態であり、一般に高回転側で空燃比を大きくし、低回転側で小さくする。これは、低回転側でトルクの応答性を高め、高回転側で回転状態の応答性を高めるためである。また、吸気圧力は、スロットル開度などのエンジン負荷状態であり、一般にエンジン負荷の大きい状態、つまりスロットル開度が大きく、吸気圧力も大きいときに空燃比を小さくし、エンジン負荷の小さい状態、つまりスロットル開度が小さく、吸気圧力も小さいときに空燃比を大きくする。これは、エンジン負荷が大きいときにトルクを重視し、エンジン負荷が小さいときに効率を重視するためである。
このように目標空燃比とは、物理的意味を把握しやすい数値であり、従って要求されるエンジンの出力特性に合わせて、目標空燃比を或る程度設定することが可能なのである。勿論、実車のエンジン出力特性に合わせて、チューニングを行ってもよいことはいうまでもない。
また、この目標空燃比算出部３３は、前記吸気圧力信号からエンジンの運転状態の過渡期、具体的には加速状態や減速状態を検出し、それに合わせて目標空燃比を補正する過渡期補正部２９を備えている。例えば図７に示すように、吸気圧力は、スロットル操作の結果でもあるから、吸気圧力が大きくなるときは、スロットルが開けられて加速が要求されている、即ち加速状態であることが分かる。そのような加速状態が検出されたら、それに合わせて、例えば前記目標空燃比を一時的にリッチ側に設定し、その後、本来の目標空燃比に戻す。目標空燃比への戻し方は、例えば過渡期でリッチ側に設定された空燃比と、本来の目標空燃比との重み付け平均の重み付け係数を次第に変化させるなど、既存の方法が利用できる。逆に、減速状態を検出したら、本来の目標空燃比よりリーン側に設定し、効率を重視するようにしてもよい。
そして、前記燃料噴射量算出部３４では、前記シリンダ内空気質量算出部２８で算出されたシリンダ内空気質量を前記目標空燃比算出部３３で算出された目標空燃比で除すことで、シリンダ内必要燃料質量を得ることができるので、これに例えばインジェクタ１３の流量特性を乗じて燃料噴射時間を求めることができ、これから燃料噴射量及び燃料噴射時期を算出することができる。
このように本実施形態では、吸気圧力及びエンジンの運転状態から、予め記憶されたシリンダ内空気質量三次元マップに従って、シリンダ内空気質量を算出すると共に、当該吸気圧力及びエンジンの運転状態から、予め記憶された目標空燃比マップに従って、目標空燃比を算出し、シリンダ内空気質量を目標空燃比で除すことにより、燃料噴射量を算出することができるので、制御を容易且つ正確なものとすると共に、シリンダ内空気質量マップは計測し易く、目標空燃比マップは設定し易いため、マップ作成が容易になる。また、エンジン負荷を検出するためのスロットル開度センサやスロットルポジションセンサなどのスロットルセンサが不要である。
また、吸気圧力から加速状態や減速状態などの過渡期であることを検出し、目標空燃比を補正することにより、加速時や減速時でのエンジンの出力特性を、単に目標空燃比マップに従って設定されるものから、運転者が要求するもの或いは運転者の間隔に近いものに変更することができる。
また、クランクシャフトの位相からエンジンの回転数を検出することにより、エンジン回転数を容易に検出することができると共に、例えばカムセンサに代えてクランクシャフトの位相から行程状態を検出するようにすれば、高価で大がかりなカムセンサをなくすことができる。
このようにカムセンサを用いない本実施形態では、クランクシャフトの位相が重要であり、そのためには前記クランクパルスを正確に検出する必要がある。しかしながら、実際には、クランクパルスを検出できなかったり、ノイズなどをクランクパルスとして誤検出してしまったりすることはあり得る。例えば、図８ａは、スロットルバルブが急開されたときのクランクシャフトの回転速度の瞬間値（図ではｒｅｖ瞬時）、同じくクランクシャフトの回転速度の平均値（図ではｒｅｖ平均）、吸気圧力、ナンバリングされたクランクパルス（図ではクランクパルスカウンタ）を示している。なお、前述のようにクランクシャフトの回転速度の瞬間値は、前のクランクパルスが検出されてから次のクランクパルスが検出されるまでの所要時間で、両クランクパルスに相当する歯の位相（回転角度）を除した値であり、クランクシャフトの回転速度の平均値は、当該クランクシャフトの回転速度の瞬間値の移動平均値である。
本実施形態のような小排気量、単気筒エンジンでは、スロットルバルブの急開に伴ってエンジン回転数が大きく低減し、そのときにクランクパルスを検出できない可能性がある。この図８ａでも、スロットルバルブ急開後、エンジン回転数が低減したときに、本来検出すべき上死点のクランクパルスを検出することができなかった。これにより、クランクパルスカウンタの数値増加がリニアでなくなり、また前述した歯抜け部近傍でのクランクシャフトの位相（回転角度）を誤認識したためにクランクシャフト回転速度の瞬間値が大きく乱れている。同様に、図８ｂは、スロットルバルブ急開後の圧縮上死点近傍で行われた点火のノイズをクランクパルスとして誤検出してしまった例であり、これによりクランクパルスカウンタの数値増加がリニアでなくなり、歯抜け部近傍でのクランクシャフト回転速度の瞬間値が大きく乱れている。
このクランクパルスを検出できなかったとき、つまりクランクパルス抜けのときと、ノイズをクランクパルスとして誤検出してしまったとき、つまりノイズ発生時のクランクシャフトの回転速度の瞬間値に着目すると、夫々、前記歯抜け部及びその近傍で特徴があることが判明した。図９は、クランクパルス抜け時のクランクシャフトの回転速度の平均値（図ではパルス抜けｒｅｖ平均）、同じくクランクパルス抜け時のクランクシャフトの回転速度の瞬間値（図ではパルス抜けｒｅｖ瞬時）、ノイズ発生時のクランクシャフトの回転速度の平均値（図ではノイズｒｅｖ平均）、同じくノイズ発生時のクランクシャフトの回転速度の瞬間値（図ではノイズｒｅｖ瞬時）を、圧縮上死点を合わせて重ね合わせたものである。クランクパルス抜け時もノイズ発生時も、同じタイミングでクランクシャフト回転速度の瞬間値が急激に増大するが、その前後で発生するクランクシャフト回転速度瞬間値の急激な減少は対照的である。つまり、クランクパルス抜け時は、クランクシャフト回転速度瞬間値が急激に増加する前に急激に減少し、逆のノイズ発生時は、クランクシャフト回転速度瞬時値が急激に増加してから急激に減少する傾向にある。
これは、本来検出すべき前記歯抜け部の歯のクランクパルスを、それより前に検出するか、後で検出するかの違いによる。このように、歯抜け部の歯を通常の歯と誤検出することを歯抜け部の誤検出と定義する。本実施形態における特定の歯、つまり歯抜け部の歯のピッチは、その他の歯（以下、通常の歯とも記す）のピッチの２倍（α倍）になっているので、本体検出されるべきタイミングより早く歯抜け部を誤検出するクランクパルス抜け時には、まず通常の歯のピッチを歯抜け部の歯のクランクパルス検出所要時間で除してしまい、その結果、当該歯抜け部誤検出時の歯のクランクパルスから得られるクランクシャフトの回転速度の瞬間値が、その前の歯のクランクパルスから得られるクランクシャフトの回転速度の予測値の１／２（１／α）倍以下になっている。但し、クランクシャフトの回転速度の予測値とは、図９に二点鎖線で示すように、前記歯抜け部誤検出前の歯のクランクパルスを検出したときのクランクシャフトの回転速度の瞬間値を、当該歯抜け部誤検出時まで、傾き一様で延長して得られるクランクシャフトの回転速度である。そして、歯抜け部を誤検出した後は、歯抜け部の歯のピッチを通常の歯のクランクパルス検出所要時間で除してしまい、その結果、歯抜け部であると誤検出した通常の歯のクランクパルスから得られるクランクシャフトの回転速度の瞬間値が、クランクシャフトの回転速度の平均値の２倍（α倍）以上になっている。
一方、本体検出されるべきタイミングより遅く歯抜け部を誤検出するノイズ発生時には、まず歯抜け部の歯のピッチを通常の歯のクランクパルス検出所要時間で除してしまい、その結果、歯抜け部であるとして誤検出した通常の歯のクランクパルスから得られるクランクシャフトの回転速度の瞬間値が、クランクシャフトの回転速度の平均値の２倍（α倍）以上になっている。そして、実際の歯抜け部を誤検出する歯抜け部誤検出時には、通常の歯のピッチを歯抜け部の歯のクランクパルス検出所要時間で除してしまい、その結果、歯抜け部であると誤検出した次の歯以後の歯のクランクパルスから得られるクランクシャフトの回転速度の瞬間値が、それ以前に得られたクランクシャフトの回転速度の瞬間値の１／４倍（１／２α倍）以下になっている。
このようなクランクパルスから得られるクランクシャフトの回転速度に基づき、クランクパルス誤検出を検出するための演算処理を図１０に示す。この演算処理は、前記図３の演算処理と平行して、前記エンジンコントロールユニット１５内のマイクロコンピュータで、例えばクランクパルス検出をトリガとして行うといったように、クランクパルスの検出毎に割込処理として実行される。なお、エンジン回転数とクランクシャフト回転速度とは、エンジンの出力軸がクランクシャフトであることから、実質的に同じである。また、このフローチャートでは、特に通信のためのステップを設けていないが、演算処理によって得られた情報は随時記憶装置に更新記憶され、また演算処理に必要な情報やプログラムは随時記憶装置から読出される。
この演算処理では、まずステップＳ１で、前記クランクパルスにナンバリングされた前記クランク角度番号（図ではＮｏ．）が“３”か、又は“４”であるか否かを判定し、当該クランク角度番号が“３”か、又は“４”である場合にはステップＳ２に移行し、そうでない場合にはステップＳ３に移行する。
前記ステップＳ２では、今回のクランクパルスから算出されたクランクシャフト回転速度（図ではＣ／Ｓ回転速度）の瞬間値（図では瞬時値）が、前述のようにして前回のクランクシャフトの回転速度の瞬間値から算出した今回のクランクシャフト回転速度の予測値の１／２以下であるか否かを判定し、当該クランクシャフト回転速度の瞬間値がクランクシャフト回転速度の予測値の１／２以下である場合にはステップＳ４に移行し、そうでない場合にはメインプログラムに復帰する。
前記ステップＳ４では、クランク角度番号が“３”であるか否かを判定し、当該クランク角度番号が“３”である場合にはステップＳ５に移行し、そうでない場合にはステップＳ６に移行する。
前記ステップＳ５では、クランク角度記憶カウンタＣＮＴを“３”としてからメインプログラムに復帰する。
また、前記ステップＳ６では、クランク角度記憶カウンタＣＮＴを“４”としてからメインプログラムに復帰する。
一方、前記ステップＳ３では、クランク角度番号が“６”であるか否かを判定し、当該クランク角度番号が“６”である場合にはステップＳ７に移行し、そうでない場合にはステップＳ８に移行する。
前記ステップ７では、今回のクランクパルスから算出されたクランクシャフト回転速度の瞬間値が、前記クランクシャフト回転速度の平均値の２倍以上であるか否かを判定し、当該クランクシャフト回転速度の瞬間値がクランクシャフト回転速度の平均値の２倍以上である場合にはステップＳ９に移行し、そうでない場合にはステップＳ１０に移行する。
前記ステップＳ９では、前記クランク角度記憶カウンタＣＮＴが“３”であるか否かを判定し、当該クランク角度記憶カウンタＣＮＴが“３”である場合にはステップＳ１１に移行し、そうでない場合にはステップＳ１２に移行する。
前記ステップＳ１１では、クランクパルスが２歯分抜けていると判定し、クランク角度番号に“２”を加算した値を新たなクランク角度番号に設定してから前記ステップＳ１０に移行する。
また、前記ステップＳ１２では、前記クランク角度記憶カウンタＣＮＴが“４”であるか否かを判定し、当該クランク角度記憶カウンタＣＮＴが“４”である場合にはステップＳ１３に移行し、そうでない場合にはステップＳ１４に移行する。
前記ステップＳ１３では、クランクパルスが１歯分抜けていると判定し、クランク角度番号に“１”を加算した値を新たなクランク角度番号に設定してから前記ステップＳ４０に移行する。
また、前記ステップＳ１４では、前記クランク角度記憶カウンタＣＮＴが“０”であるか否かを判定し、当該クランク角度記憶カウンタＣＮＴが“０”である場合にはステップＳ１５に移行し、そうでない場合には前記ステップＳ１０に移行する。
前記ステップＳ１０では、前記クランク角度記憶カウンタＣＮＴを“０”としてからメインプログラムに復帰する。
また、前記ステップＳ１５では、ノイズフラグＦＮを“１”にセットしてからメインプログラムに復帰する。
これに対し、前記ステップＳ８では、前記ノイズフラグＦＮが“１”のセット状態であるか否かを判定し、当該ノイズフラグＦＮがセット状態である場合にはステップＳ１７に移行し、そうでない場合にはメインプログラムに復帰する。
前記ステップＳ１７では、クランク角度番号が“７”であるか否かを判定し、当該クランク角度番号が“７”である場合にはステップＳ１８に移行し、そうでない場合にはステップＳ１９に移行する。
前記ステップＳ１８では、今回のクランクパルスから算出されたクランクシャフト回転速度の瞬間値が、前回のクランクパルスから算出されたクランクシャフトの回転速度の瞬間値の１／４倍以下であるか否かを判定し、当該今回のクランクパルスから算出されたクランクシャフト回転速度の瞬間値が、前回のクランクパルスから算出されたクランクシャフトの回転速度の瞬間値の１／４倍以下である場合にはステップＳ２０に移行し、そうでない場合にはメインプログラムに復帰する。
前記ステップＳ２０では、ノイズが一回発生したと判定し、クランク角度番号を“６”に設定してからステップＳ２１に移行する。
一方、前記ステップＳ１９では、クランク角度番号が“８”であるか否かを判定し、当該クランク角度番号が“８”である場合にはステップＳ２２に移行し、そうでない場合には前記ステップＳ２１に移行する。
前記ステップＳ２２では、今回のクランクパルスから算出されたクランクシャフト回転速度の瞬間値が、前々回のクランクパルスから算出されたクランクシャフトの回転速度の瞬間値の１／４倍以下であるか否かを判定し、当該今回のクランクパルスから算出されたクランクシャフト回転速度の瞬間値が、前々回のクランクパルスから算出されたクランクシャフトの回転速度の瞬間値の１／４倍以下である場合にはステップＳ２３に移行し、そうでない場合には前記ステップＳ２１に移行する。
前記ステップＳ２３では、ノイズが二回発生したと判定し、クランク角度番号を“６”に設定してから前記ステップＳ２１に移行する。
そして、前記ステップＳ２１では、前記ノイズフラグＦＮを“０”にリセットしてからメインプログラムに復帰する。
この演算処理によれば、例えばクランクパルスが１歯分だけ抜けているときに本実施形態ではクランク角度番号が“４”のとき歯抜け部の歯のクランクパルスを検出することになるので、当該クランク角度番号が“４”のときにはステップＳ１からステップＳ２に移行し、ここでクランクパルスが１歯分だけ抜けているときには、前述のように今回のクランクパルスから算出されたクランクシャフト回転速度の瞬間値が、前記クランクシャフト回転速度の予測値の１／２倍以下となっており、従ってこのステップＳ２からステップＳ４を経てステップＳ６に移行する。そして、このステップＳ６で、クランク角度記憶カウンタＣＮＴを“４”として一旦、メインプログラムに復帰する。
この次にクランクパルスが検出されたときのクランク角度番号は“６”であるから、ステップＳ１からステップＳ３を経てステップＳ７に移行する。クランクパルスの１歯分抜け時には、前述のようにクランクシャフト回転速度が急激に減少してから急激に増加するので、そのときのクランクパルスから算出されたクランクシャフト回転速度の瞬間値はクランクシャフト回転速度の平均値の２倍以上となっており、前記ステップＳ７からステップＳ９に移行する。ここで、記憶装置に記憶されているクランク角度記憶カウンタＣＮＴは“４”のままであるからステップＳ９、ステップＳ１２を経てステップＳ１３に移行し、ここでクランクパルス１歯分抜けと判定すると共にクランク角度番号に“１”を加算した値、つまり“７”を新たなクランク角度番号、つまり正しいクランク角度番号に設定してからステップＳ４０に移行して前記クランク角度記憶カウンタＣＮＴを“０”とする。
一方、クランクパルスが２歯分抜けた場合には、クランク角度番号が“３”のときにクランクシャフト回転速度の瞬間値が急減するので、前記ステップＳ１からステップＳ２を経てステップＳ４に移行し、ここでクランク角度番号が“３”であることからステップＳ５に移行し、クランク角度記憶カウンタＣＮＴを“３”に設定してから一旦メインプログラムに復帰する。また、クランクパルスが２歯分抜けた場合には、クランクシャフト回転速度の瞬間値が急減してから、二つ目のクランクパルス検出時にクランクシャフト回転速度の瞬間値が急増するので、前記クランク角度記憶カウンタＣＮＴが“３”に設定された次のクランクパルス検出時にはクランク角度番号が“４となっているが、ステップＳ１からステップＳ２を経てそのままメインプログラムに復帰してしまう。
そして、更に次のクランクパルス検出時にクランク角度番号は“６”となっており、ステップＳ１からステップＳ３を経てステップＳ７に移行し、このときにはクランクシャフト回転速度の瞬間値が急増して平均値の２倍以上になっているのでステップＳ９に移行する。このとき記憶装置に記憶されているクランク角度記憶カウンタＣＮＴは“３”のままであるからステップＳ１１に移行し、ここでクランクパルスが２歯分抜けていると判定すると共に、クランク角度番号に“２”を加算した値、つまり“８”を新たなクランク角度番号、つまり正しいクランク角度番号に設定してからステップＳ１０に移行して前記クランク角度記憶カウンタＣＮＴを“０”とする。
これに対し、ノイズが１回発生している場合には、クランク角度番号が“６”のときにクランクシャフト回転速度の瞬間値が急増するので、クランク角度番号が“３”又は“４”のときにステップＳ１からステップＳ２に移行しても、そのときのクランクパルスから算出されたクランクシャフト回転速度の瞬間値はクランクシャフト回転速度の予測値の１／２以下であることはなく、そのままメインプログラムに復帰してしまう。そして、クランク角度番号が“６”になるとステップＳ３からステップＳ７に移行し、ここで今回のクランクパルスから算出されたクランクシャフト回転速度の瞬間値はクランクシャフト回転速度の２倍以上であることからステップＳ９に移行する。しかしながら、この時点で記憶装置に記憶されているクランク角度記憶カウンタＣＮＴは“０”のままであるから、ステップＳ９からステップＳ１２、ステップＳ１４を経てステップＳ１５でノイズフラグＦＮを“１”にセットして一旦、メインプログラムに復帰する。
前述のように、ノイズが１回発生したときには、クランクシャフト回転速度の瞬間値が急増した次のクランクパルス検出時にクランクシャフト回転速度の瞬間値が急減するので、前記ノイズフラグＦＮがセットされた次のクランクパルス検出時にクランク角度番号は“７”となっており、ステップＳ１からステップＳ３を経てステップＳ８に移行する。このときには、ノイズフラグＦＮはセットされたままであるころからステップＳ１７に移行し、クランク角度番号は“７”であることからステップＳ１８に移行する。そして、このときにはクランクシャフト回転速度の瞬間値が急減しており、今回のクランクパルスから算出されたクランクシャフト回転速度の瞬間値は、前回のクランクパルスから算出されたクランクシャフト回転速度の瞬間値の１／４倍以下となっているためにステップＳ２０に移行し、ここでノイズが１回発生したと判定すると共に、クランク角度番号を“６”、即ち正しいクランク角度番号に設定してからステップＳ２１に移行して前記ノイズフラグＦＮを“０”にリセットする。
一方、ノイズが２回発生したときにも、クランク角度番号が“６”のときにクランクシャフト回転速度の瞬間値が急増するのはかわりない。そこで、クランク角度番号が“６”になるとステップＳ３からステップＳ７に移行し、ここで今回のクランクパルスから算出されたクランクシャフト回転速度の瞬間値はクランクシャフト回転速度の２倍以上であることからステップＳ９に移行し、ステップＳ９からステップＳ１２、ステップＳ１４を経てステップＳ１５でノイズフラグＦＮを“１”にセットして一旦、メインプログラムに復帰する。これに対し、ノイズが２回発生したときに、クランクシャフトの回転速度の瞬間値が急減するのは、前記クランクシャフトの回転速度の瞬間値が急増してから二つ目のクランクパルスを検出したときである。そのため、前記ノイズフラグＦＮがセットされた次のクランクパルス検出時にクランク角度番号が“７”となっても、ステップＳ１８からそのままメインプログラムに復帰してしまう。
そして、次にクランクパルスが検出され、クランク角度番号が“８”になるとステップＳ１７からステップＳ１９を経てステップＳ２２に移行し、ここで今回のクランクパルスから算出されたクランクシャフト回転速度の瞬間値は、前々回、即ちクランク角度番号が“６”のときのクランクパルスから算出されたクランクシャフト回転速度の瞬間値の１／４倍以下となっているためにステップＳ２２に移行し、ここでノイズが２回発生したと判定すると共に、クランク角度番号を“６”、即ち正しいクランク角度番号に設定してから前記ステップＳ２１に移行して前記ノイズフラグＦＮを“０”にリセットする。
図１１ａはクランクパルスが１歯分抜けた場合、図１１ｂはノイズが１回発生した場合、夫々、前記図１０の演算処理によってクランク角度番号を修正したものである。同図から明らかなように、クランクシャフト回転速度の瞬間値が間違っているのは、クランクパルス抜け、或いはノイズ発生後の１サイクル以内に納まっており、クランクパルス誤検出が正確に検出されていると共に、クランク角度の補正も正確に行われていることが分かる。
更に、図１２は、意図的にスロットルバルブ急開を繰り返し、前記クランクシャフト回転速度の瞬間値の急増時のクランクシャフト回転速度の平均値に対する比率を求めたものである。同時に、前記図１０の演算処理によるクランク角度番号の修正を行い、クランク角度番号を修正する度にカウンタをインクリメントしてみた。前述から明らかなように、このクランクシャフト回転速度の瞬間値の急増を正確に検出することが、本実施形態におけるクランクパルス誤検出の検出精度を高めることになる。同図から明らかなように、クランクシャフト回転速度の瞬間値が、クランクパルス抜けによって急増するときには、クランクシャフト回転速度の平均値の２倍を遙かに上回っており、前記図１０の演算処理のステップ２におけるクランクパルス抜けの判定が正当であることを示している。
なお、前記実施形態では、吸気管内噴射型エンジンについて詳述したが、本発明のエンジン制御装置は、直噴型エンジンにも同様に展開できる。
また、前記実施形態では、単気筒エンジンについて詳述したが、本発明のエンジン制御装置は、気筒数が２気筒以上の、所謂マルチシリンダ型エンジンについても同様に展開できる。
また、エンジンコントロールユニットは、マイクロコンピュータに代えて各種の演算回路で代用することも可能である。
産業上の利用の可能性
以上説明したように、本発明のうち請求項１に係るエンジン制御装置によれば、クランクシャフト自体又はクランクシャフトと同期回転する部材の外周に不等間隔に歯を設け、それらの歯の接近に伴って送出されたパルス信号をクランクパルスとして検出し、そのクランクパルスから検出されたクランクシャフトの位相に基づいてエンジンの運転状態を制御するにあたり、不等間隔に設けられた歯のうちの特定の歯のクランクパルスから得られるクランクシャフトの回転速度と、その近傍の歯のクランクパルスから得られるクランクシャフトの回転速度とを比較してクランクパルスの誤検出を検出する構成としたため、特定の歯のピッチとその近傍の歯のピッチとの関係に基づいて、算出されるクランクシャフトの回転速度を比較することにより、クランクパルスの誤検出を正確に検出することが可能となる。
また、本発明のうち請求項２に係るエンジン制御装置によれば、不等間隔に設けられた歯のうちの特定の歯のピッチが、その他の歯のピッチのα倍であるとき、当該特定の歯より前の歯のクランクパルスから得られるクランクシャフトの回転速度の瞬間値が、その前の歯のクランクパルスから得られるクランクシャフトの回転速度の予測値の１／α倍以下であり、且つ当該特定の歯のクランクパルスから得られるクランクシャフトの回転速度の瞬間値が、クランクシャフトの回転速度の平均値のα倍以上であるときに、検出すべきクランクパルスを少なく誤検出していると判定する構成としたため、クランクパルスを少なく誤検出していることを正確に検出することができる。
また、本発明のうち請求項３に係るエンジン制御装置によれば、不等間隔に設けられた歯のうちの特定の歯のピッチが、その他の歯のピッチのα倍であるとき、当該特定の歯のクランクパルスから得られるクランクシャフトの回転速度の瞬間値が、クランクシャフトの回転速度の平均値のα倍以上であり、且つ当該特定の歯の次の歯以後の歯のクランクパルスから得られるクランクシャフトの回転速度の瞬間値が、それ以前に得られたクランクシャフトの回転速度の瞬間値の１／２α倍以下であるときに、検出すべきクランクパルスを多く誤検出していると判定する構成としたため、クランクパルスを多く誤検出していることを正確に検出することができる。
【図面の簡単な説明】
図１は、モータサイクル用のエンジン及びその制御装置の概略構成図である。
図２は、図１のエンジンでクランクパルスを送出する原理の説明図である。
図３は、本発明のエンジン制御装置の一実施形態を示すブロック図である。
図４は、クランクシャフトの位相と吸気圧力から行程状態を検出する説明図である。
図５は、シリンダ内空気質量算出部に記憶されたシリンダ内空気質量算出のためのマップである。
図６は、目標空燃比算出部に記憶された目標空燃比算出のためのマップである。
図７は、過渡期補正部の作用説明図である。
図８は、クランクパルス誤検出の説明図である。
図９は、クランクパルス抜け時とノイズ発生時のクランク回転速度の違いの説明図である。
図１０は、エンジンコントロールユニット内で行われるクランクパルス誤検出検出及びクランク角度修正のための演算処理を示すフローチャートである。
図１１は、図１０の演算処理によるクランク角度修正の作用説明図である。
図１２は、クランクパルス誤検出時のクランクシャフト回転速度の瞬間値と平均値との関係の説明図である。
【図１】
2003036068.tif 000003
【図２】
2003036068.tif 000004
【図３】
2003036068.tif 000005
【図４】
2003036068.tif 000006
【図５】
2003036068.tif 000007
【図６】
2003036068.tif 000008
【図７】
2003036068.tif 000009
【図８】
2003036068.tif 000010
【図９】
2003036068.tif 000011
【図１０】
2003036068.tif 000012
【図１１】
2003036068.tif 000013
【図１２】
2003036068.tif 000014
【国際調査報告】
2003036068.tif 000015
2003036068.tif 000016
2003036068.tif 000017
2003036068.tif 000018