JP2004183617A - エンジンの回転数検出方法 - Google Patents
エンジンの回転数検出方法 Download PDFInfo
- Publication number
- JP2004183617A JP2004183617A JP2002354484A JP2002354484A JP2004183617A JP 2004183617 A JP2004183617 A JP 2004183617A JP 2002354484 A JP2002354484 A JP 2002354484A JP 2002354484 A JP2002354484 A JP 2002354484A JP 2004183617 A JP2004183617 A JP 2004183617A
- Authority
- JP
- Japan
- Prior art keywords
- engine
- engine speed
- variation
- rotation angle
- speed
- 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.)
- Pending
Links
Images
Landscapes
- Combined Controls Of Internal Combustion Engines (AREA)
Abstract
【課題】エンジンの始動毎にエンジン回転数の演算結果が変動することを防止する。
【解決手段】クランク軸の回転に伴ってセンサが出力するパルスに基づいて所定回転角毎にエンジン回転数Nを算出する(ステップS1)。上記エンジン回転数Nの移動平均N^を算出する(ステップS3)。上記エンジン回転数Nから上記移動平均N^を減算し、この差N−N^を当該回転角におけるエンジン回転数Nの変動分として上記回転角毎に集合平均化し、当該回転角における変動分の集合平均Offsetを算出する(ステップS6)。上記エンジン回転数Nを当該回転角での変動分の集合平均Offsetによって補正し、この補正値N−Offsetを当該回転角におけるエンジン回転数とする(ステップS9)。
【選択図】 図2
【解決手段】クランク軸の回転に伴ってセンサが出力するパルスに基づいて所定回転角毎にエンジン回転数Nを算出する(ステップS1)。上記エンジン回転数Nの移動平均N^を算出する(ステップS3)。上記エンジン回転数Nから上記移動平均N^を減算し、この差N−N^を当該回転角におけるエンジン回転数Nの変動分として上記回転角毎に集合平均化し、当該回転角における変動分の集合平均Offsetを算出する(ステップS6)。上記エンジン回転数Nを当該回転角での変動分の集合平均Offsetによって補正し、この補正値N−Offsetを当該回転角におけるエンジン回転数とする(ステップS9)。
【選択図】 図2
Description
【0001】
【発明の属する技術分野】
本発明はエンジンの回転数検出方法に関し、特に、エンジンの回転数制御のために用いられるエンジン回転数の検出方法に関する。
【0002】
【従来の技術】
エンジン回転数を電子ガバナにより制御する場合、エンジン回転数の精度の高い検出が求められる。かかる場合、従来では、例えば、次のような方法によりエンジン回転数を検出していた。ここでは、4気筒4サイクルディーゼルエンジンを例として説明する(図1参照)。
【0003】
図1において、符合1は、図示しないクランク軸の1/2の回転数で回転する燃料噴射カム軸に設けられたロータであり、このロータ1の外周には突起2が設けられている。ここでは、この突起2は全部で68個(90度の円弧につき17個)設けられている。上記ロータ1の近接する位置には、上記突起2の通過を検出するセンサ3が設けられ、このセンサ3は上記突起2の通過を検出するたびに1パルスを出力するようになっている。したがって、ロータ1が90度回転すると(クランク軸の回転角でいえば180度に相当)、17個のパルスがセンサ3から出力されることとなる。
【0004】
センサ3が出力したパルスはECU4に入力される。このECU4は、17個前のパルスが入力された時点から今回のパルスが入力された時点間の時間を計測し、この時間(ロータ1が90度回転する時間、クランク軸でいえば180度回転する時間)に基づいてエンジン回転数を算出する。ECU4は、このようにして算出したエンジン回転数と、目標回転数設定手段5によって設定された目標回転数とを比較し、両者の偏差をなくすように、図示しないアクチュエータを駆動して燃料噴射量を調節する。
【0005】
一般に、このような4気筒4サイクルエンジンの場合、ロータ1が90度回転するたびに(クランク軸が180度回転するたびに)いずれかの気筒で爆発が起こる。したがって、エンジン回転数算出のベースとなる17個分のパルス間隔の計測中に、いずれかの気筒で爆発が起こることになる。
【0006】
【特許文献1】
特開平06−242134号公報
【特許文献2】
特開昭62−028670号公報
【特許文献3】
特開平03−180765号公報
【特許文献4】
特開平08−319875号公報
【特許文献5】
特開2001−020789号公報(段落「0080」及び「0081」)
【0007】
【発明が解決しようとする課題】
上記従来技術では、エンジンの始動の際にセンサ3に対向していた突起2がエンジン回転数算出の起点となるように構成されている。言い換えれば、ある絶対位置を起点としてエンジン回転数が計測されるわけではない。このため、エンジンの始動のたびにエンジン回転数算出の起点が異なることになる。例えば、あるときには図1中のA0がエンジン回転数算出の起点となり、A0〜A3の4つの地点がセンサ3を通過するたびにエンジン回転数が算出されるが、次回のエンジン始動の際にはB0がエンジン回転数算出の起点となり、図中のB0〜B3の地点がセンサ3を通過するたびにエンジン回転数が算出されることになる。
【0008】
このようにエンジンの始動毎にエンジン回転数算出の起点となる位置が異なる結果、エンジン回転数算出のベースとなる17個分のパルス間隔のどこで爆発が起こるかということもエンジンの始動のたびに異なることになる。一方、多気筒エンジンの場合には、気筒間の燃料噴射量のばらつき、燃焼室の形状や容積の製造上のばらつき等に起因して気筒間で燃焼のばらつきが生じる。また、ロータ1の突起2等にも製造上の誤差が含まれている。この結果、エンジン回転数算出の起点が異なるたびに、つまりエンジンの始動のたびに、気筒間の燃焼のむらや各種製造上の誤差が演算によって強調されたり弱められたりすることになる。
【0009】
図5(A)・(B)はかかる問題を端的に示している。図5(A)は、気筒間の燃焼のむらや各種製造誤差が強調された形でエンジン回転数を算出した場合を示し、一方、図5(B)は燃焼のむらや製造誤差がエンジン回転数の演算結果にほとんど現れていない場合を示す。このように、従来のエンジン回転数検出方法では、エンジンの始動毎にエンジン回転数算出の起点が異なる結果、算出されたエンジン回転数に燃焼のむらや製造誤差が強調されて反映されたりほとんど現れなかったりするという問題があった。
【0010】
一般に、4サイクルエンジンの場合、吸気・圧縮・膨張・排気の各工程に伴ってエンジン回転数は不可避的に変動するが、上記問題はかかる変動自体を意味するものではなく、気筒間の燃焼のむらや各種製造誤差等が演算によって強調されたりほとんど現れなかったりするという問題である。
【0011】
このように、エンジン回転数の演算結果が起点の位置によって左右されるとなると、かかるエンジン回転数の演算値をそのままエンジンの回転数制御に用いた場合には、制御動作が不必要に撹乱されるなど制御性能に悪影響をもたらし好ましいものではない。したがって、上記のように算出されたエンジン回転数を、起点の位置に左右されない形に補正して用いることが望まれる。
【0012】
【課題を解決するための手段】
かかる課題を解決するべく、請求項1に係る発明は、下記のようにしたことを特徴とする。
すなわち、クランク軸の回転に伴ってセンサが出力するパルスに基づいて所定回転角毎にエンジン回転数Nを算出するステップと、
上記エンジン回転数Nの移動平均N^を算出するステップと、
上記エンジン回転数Nから上記移動平均N^を減算し、この差N−N^を当該回転角におけるエンジン回転数Nの変動分として上記回転角毎に集合平均化し、当該回転角における変動分の集合平均Offsetを算出するステップと、
上記エンジン回転数Nを当該回転角での変動分の集合平均Offsetによって補正し、この補正値N−Offsetをもって当該回転角におけるエンジン回転数とするステップとを含む、
ことを特徴とするエンジンの回転数検出方法である。
【0013】
請求項2に係る発明は、請求項1に記載のエンジンの回転数検出方法において、
前記の所定回転角毎の変動分の集合平均Offsetを算出するに当たって、当該エンジンの回転数制御のために設定された目標回転数N*とエンジン回転数Nの移動平均N^との偏差|N^−N*|(|・|は絶対値を示す)を算出して、この偏差|N^−N*|が許容範囲内にあるか否かを判断し、
上記偏差|N^−N*|が許容範囲内にある場合には、上記移動平均N^からのエンジン回転数Nの変動分N−N^を計算し、この変動分N−N^を含めて当該回転角での変動分の集合平均Offsetを算出し、
上記偏差|N^−N*|が許容範囲内にない場合には、上記変動分の集合平均Offsetを算出する際に当該エンジン回転数Nの変動分N−N^を含めないようにした、
ことを特徴とする。
【0014】
請求項3に係る発明は、請求項2に記載のエンジンの回転数検出方法において、
前記の所定回転角毎の変動分の集合平均Offsetを算出するに当たって、前記エンジン回転数Nの移動平均N^と目標回転数N*との偏差|N^−N*|が許容範囲内にあるか否かを判断するとともに、上記偏差|N^−N*|が許容範囲内にある時間を計測し、
上記偏差|N^−N*|が許容範囲内にあり、かつ、当該許容範囲内にある時間が所定時間以上持続する場合には、上記移動平均N^からのエンジン回転数Nの変動分N−N^を計算し、この変動分N−N^を含めて当該回転角での変動分の集合平均Offsetを算出し、
上記偏差|N^−N*|が許容範囲内にない場合、または、当該許容範囲内にある時間が所定時間以上持続しない場合には、上記変動分の集合平均Offsetを算出する際に当該エンジン回転数Nの変動分N−N^を含めないようにした、
ことを特徴とする。
【0015】
請求項4に係る発明は、請求項1から3のいずれかに記載のエンジンの回転数検出方法において、
前記エンジンがn気筒4サイクルエンジンの場合であって、クランク軸の1/2の回転数で回転する回転軸にロータを設け、前記センサはこのロータの回転を検出してパルスを出力し、
上記ロータが360/n度回転するたびに前記エンジン回転数Nを算出し、
前記移動平均N^は、かかるエンジン回転数Nの最新のn個のデータに基づいて算出するようにした、
ことを特徴とする。
【0016】
【発明の作用効果】
(請求項1に係る発明)
請求項1に係る発明では、所定回転角毎に算出されるエンジン回転数をそのままエンジン回転数とするのではなく、まずは、その移動平均を算出し、次に、この移動平均から当該回転角におけるエンジン回転数の変動分を算出し、さらに、この変動分を所定回転角毎に集合平均化して、かかる変動分の集合平均を用いてエンジン回転数を補正したので、気筒間の燃焼のばらつきや製造誤差等に起因して演算上生じるエンジン回転数の変動を除去してエンジン回転数を算出することができる。このため、エンジン回転数の算出起点が始動のたびに異なる場合であっても、これによってエンジンの回転数制御が不必要に撹乱されることはなくなる。
【0017】
(請求項2に係る発明)
一般に、エンジン回転数が過渡状態にある場合には、エンジン回転数の変動には、エンジンの回転数制御のための制御動作の結果としての変動分も含まれるので、燃焼のばらつきや製造誤差等に起因する変動分のみを抽出するためには、かかる制御動作に起因する変動分が整定した後でそれを算出することが好ましい。請求項2に係る発明では、エンジン回転数がいまだ過渡状態にある場合には、かかるエンジン回転数に含まれる変動分を集合平均の算出に含めないようにしたので、気筒間の燃焼のばらつきや製造誤差等に起因する変動分の的確な抽出が可能となり、かかる変動分によるエンジン回転数の補正を適正化することができる。
【0018】
(請求項3に係る発明)
請求項3に係る発明では、所定回転角毎の変動分の集合平均を算出するに当たって、エンジン回転数の整定を判断するだけでなく、整定が所定時間以上持続するか否かを判断するようにしたので、エンジン回転数が確実に整定してからその変動分の集合平均を算出することができる。このため、気筒間の燃焼のばらつきや製造誤差等に起因するエンジン回転数の変動分を一層的確に抽出することが可能となり、エンジン回転数の補正の適正化をさらに図ることができる。
【0019】
(請求項4に係る発明)
エンジンがn気筒4サイクルエンジンの場合、クランク軸が720/n度回転する間にいずれかの気筒において爆発が起こる。したがって、クランク軸の1/2の回転数で回転する回転軸の場合には、この回転軸またはこの回転軸に設けられたロータが360/n度回転する間にいずれかの気筒で爆発が起こることになるので、上記ロータの360/n度毎の回転角のそれぞれに対して、その間に爆発した爆発気筒を対応付けて考えることができる。このため、かかる回転角毎に上記のようなエンジン回転数の補正処理を行うようにしておけば、気筒毎の燃焼のばらつきや製造誤差等に起因するエンジン回転数の演算上の変動を的確に抽出し除去することができる。なお、この請求項4に係る発明では、エンジン回転数の移動平均を算出するに当たって、最新のn個のデータに基づいて算出するようにしたので、ロータの1回転(クランク軸2回転)当たりのエンジン回転数の移動平均を算出することになる。
【0020】
【発明の実施の形態】
以下、図面に基づいて本発明の実施形態について説明する。図1は、4気筒4サイクルディーゼルエンジンについて本発明を適用した場合の実施形態を示している。この実施形態は、公知の電子ガバナによるエンジン回転数制御に用いられている。
【0021】
図1において、符合1は、図示しないクランク軸の1/2の回転数で回転する燃料噴射カム軸に設けられたロータであり、このロータ1の外周には突起2が設けられている。ここでは、この突起2は全部で68個(90度の円弧につき17個)設けられている。上記ロータ1の近接する位置には上記突起2の通過を検出するセンサ3が設けられ、このセンサ3は上記突起2の通過を検出するたびに1パルスを出力するようになっている。したがって、ロータ1が90度回転すると(クランク軸の回転角でいえば180度に相当)、17個のパルスが出力されることとなる。なお、かかるセンサ3としては、クランク軸の回転に伴ってパルス信号を発生するものであればよく、電磁ピックアップ、磁気抵抗素子センサ、ホールセンサ等公知のものを使用することができる。
【0022】
センサ3が出力したパルスはECU4に入力される。このECU4はエンジンの回転数制御のための制御部でもあり、目標回転数設定手段5から取り込んだ目標回転数と、後述する演算を経て算出されたエンジン回転数とを比較して、両者の偏差をなくすようにアクチュエータ(図示せず)を駆動して燃料噴射量を調整する。
【0023】
このECU4では、センサ3からの入力パルス数をカウントし、入力パルス数が17個に達するたびに、図2に示すエンジン回転数算出のための割り込み処理ルーチンを実行するようになっている。言い換えれば、ロータ1が90度回転するたびに(クランク軸が180度回転するたびに)、エンジン回転数算出の割り込み処理ルーチンが実行される。
【0024】
かかる割り込み処理ルーチンの具体的内容は以下の通りである。
まず、ステップS1において、前回の割り込みからの経過時間に基づいてエンジン回転数Nを算出する。すなわち、前回の割り込み時点から改めてカウントした入力パルス数が17個になるまでに要した時間Tに基づいて、下記のようにしてエンジン回転数Nが算出される。
【0025】
N=1/(2T)
【0026】
かかるエンジン回転数Nは、ECU4内部のメモリに格納される。その際、図3に示すように、前回のデータを順にシフトし、今回新たに算出されたエンジン回転数データNをN[0]にセットする(ステップS2)。
【0027】
ステップS3では、かかるエンジン回転数の最新のK個のデータの移動平均N^を算出する。ここでは、ロータ1の1回転分の最新のデータ(すなわち最新の4個のデータ)の移動平均を算出する。具体的には次の通りである。
【0028】
N^=ΣN[i]/4
但し、i=0,1,2,3の範囲でデータが総和される。
【0029】
ステップS4では、ステップS3で算出されたエンジン回転数の移動平均N^が、目標回転数設定手段5によって設定されたエンジン回転数制御における目標回転数N*と比較される。具体的には、両者の偏差|N^−N*|が許容範囲内に収まっているか否か、言い換えれば、エンジン回転数が整定したか否かが判断される。ここでは、目標回転数N*±10(rpm)を許容範囲としている。
【0030】
ステップS4においてエンジン回転数の移動平均N^が許容範囲内に収まっている場合(YESの場合)には、ステップS5へ移行し、整定が所定時間以上持続したか否かを判断する。ここでは、所定時間を5秒としている。
【0031】
ステップS5において整定が所定時間以上持続したと判断された場合(YESの場合)、ステップS6へ移行し、上記移動平均N^からのエンジン回転数Nの変動分N−N^を算出するとともに、ロータ1の当該回転角について過去に算出された、かかる変動分の合計値に加算され、その回転角における変動分の集合平均Offsetを算出する。かかる変動分の集合平均Offsetは、図4に示すように、回転角毎に用意されたバッファに格納される。すなわち、各バッファには、対応する回転角において過去に算出された変動分の集合平均が格納されており、ステップS6において今回のデータを加えた新たな集合平均を算出し、その値が書き込まれるようになっている。なお、各回転角での変動分の集合平均を、前回の割り込み時点から今回の割り込み時点までの間に爆発した気筒と対応付けて考えると、ある回転角における変動分の集合平均は、その間に爆発した気筒固有の燃焼のばらつきによって演算上生じたエンジン回転数の変動分と考えることができる。
【0032】
次に、ステップS7では、上記ステップS6において集合平均化したデータの総数が所定数(たとえば600)を越えたか否かを判断する。この600という数字は、通常、エンジン始動から2〜3秒で達成される。ステップS7でYESの場合は、ステップS8へ進んでフラグをセットし、ステップS9へ進む。一方、NOの場合は直ちにステップS9へ進む。
【0033】
ステップS9では、上記ステップS6で求めた当該回転角での変動分の集合平均Offsetを用いて今回のエンジン回転数Nを補正する。具体的には、N−Offsetを計算し、これをエンジン回転数とする。
【0034】
一方、前記のステップS4やステップS5でNOと判断された場合にはステップS10へ進み、フラグがセットされているかどうかを判断する。ステップS4やステップS5でNOと判断された場合にステップS6へ進まないのは、エンジン回転数がいまだ整定せず過渡状態にある場合には、回転数制御のための制御動作の結果としてのエンジン回転数の変動か、気筒間の燃焼のばらつきや製造誤差等に起因するエンジン回転数の変動かを見極めることは通常困難だからである。
【0035】
ステップS10においてフラグがセットされていればステップS9へ進み、対応するバッファにすでに格納されている値を用いて今回のエンジン回転数Nを補正する。したがって、この場合は、変動分の集合平均Offsetを算出するに当たって今回のエンジン回転数の変動分を考慮しない。一方、フラグがセットされていない場合には、集合平均を求めるデータ総数が所定数に達していないことを意味するので、バッファに格納された値はいまだ信頼に足るものではなく、この値を用いてエンジン回転数を補正するのは適当といえない。そこで、ステップS11へ進み、エンジン回転数を補正せずに、前記ステップS1で算出した今回のエンジン回転数Nをそのままエンジン回転数とする。
【図面の簡単な説明】
【図1】本発明の実施形態に係るエンジン回転数検出のためブロック図である。
【図2】本発明の実施形態によるエンジン回転数算出のための割り込み処理ルーチンを示すフローチャートである。
【図3】所定回転角毎に算出されるエンジン回転数Nを格納するメモリの模式図である。
【図4】所定回転角毎の変動分の集合平均を格納するバッファの模式図である。
【図5】従来のエンジン回転数検出方法によって得られたエンジン回転数のグラフを示し、図5(A)はエンジン回転数の変動が大きい場合、図5(B)はその変動が小さい場合を示す。
【符号の説明】
1…ロータ、2…突起、3…センサ、4…ECU、5…目標回転数設定手段。
【発明の属する技術分野】
本発明はエンジンの回転数検出方法に関し、特に、エンジンの回転数制御のために用いられるエンジン回転数の検出方法に関する。
【0002】
【従来の技術】
エンジン回転数を電子ガバナにより制御する場合、エンジン回転数の精度の高い検出が求められる。かかる場合、従来では、例えば、次のような方法によりエンジン回転数を検出していた。ここでは、4気筒4サイクルディーゼルエンジンを例として説明する(図1参照)。
【0003】
図1において、符合1は、図示しないクランク軸の1/2の回転数で回転する燃料噴射カム軸に設けられたロータであり、このロータ1の外周には突起2が設けられている。ここでは、この突起2は全部で68個(90度の円弧につき17個)設けられている。上記ロータ1の近接する位置には、上記突起2の通過を検出するセンサ3が設けられ、このセンサ3は上記突起2の通過を検出するたびに1パルスを出力するようになっている。したがって、ロータ1が90度回転すると(クランク軸の回転角でいえば180度に相当)、17個のパルスがセンサ3から出力されることとなる。
【0004】
センサ3が出力したパルスはECU4に入力される。このECU4は、17個前のパルスが入力された時点から今回のパルスが入力された時点間の時間を計測し、この時間(ロータ1が90度回転する時間、クランク軸でいえば180度回転する時間)に基づいてエンジン回転数を算出する。ECU4は、このようにして算出したエンジン回転数と、目標回転数設定手段5によって設定された目標回転数とを比較し、両者の偏差をなくすように、図示しないアクチュエータを駆動して燃料噴射量を調節する。
【0005】
一般に、このような4気筒4サイクルエンジンの場合、ロータ1が90度回転するたびに(クランク軸が180度回転するたびに)いずれかの気筒で爆発が起こる。したがって、エンジン回転数算出のベースとなる17個分のパルス間隔の計測中に、いずれかの気筒で爆発が起こることになる。
【0006】
【特許文献1】
特開平06−242134号公報
【特許文献2】
特開昭62−028670号公報
【特許文献3】
特開平03−180765号公報
【特許文献4】
特開平08−319875号公報
【特許文献5】
特開2001−020789号公報(段落「0080」及び「0081」)
【0007】
【発明が解決しようとする課題】
上記従来技術では、エンジンの始動の際にセンサ3に対向していた突起2がエンジン回転数算出の起点となるように構成されている。言い換えれば、ある絶対位置を起点としてエンジン回転数が計測されるわけではない。このため、エンジンの始動のたびにエンジン回転数算出の起点が異なることになる。例えば、あるときには図1中のA0がエンジン回転数算出の起点となり、A0〜A3の4つの地点がセンサ3を通過するたびにエンジン回転数が算出されるが、次回のエンジン始動の際にはB0がエンジン回転数算出の起点となり、図中のB0〜B3の地点がセンサ3を通過するたびにエンジン回転数が算出されることになる。
【0008】
このようにエンジンの始動毎にエンジン回転数算出の起点となる位置が異なる結果、エンジン回転数算出のベースとなる17個分のパルス間隔のどこで爆発が起こるかということもエンジンの始動のたびに異なることになる。一方、多気筒エンジンの場合には、気筒間の燃料噴射量のばらつき、燃焼室の形状や容積の製造上のばらつき等に起因して気筒間で燃焼のばらつきが生じる。また、ロータ1の突起2等にも製造上の誤差が含まれている。この結果、エンジン回転数算出の起点が異なるたびに、つまりエンジンの始動のたびに、気筒間の燃焼のむらや各種製造上の誤差が演算によって強調されたり弱められたりすることになる。
【0009】
図5(A)・(B)はかかる問題を端的に示している。図5(A)は、気筒間の燃焼のむらや各種製造誤差が強調された形でエンジン回転数を算出した場合を示し、一方、図5(B)は燃焼のむらや製造誤差がエンジン回転数の演算結果にほとんど現れていない場合を示す。このように、従来のエンジン回転数検出方法では、エンジンの始動毎にエンジン回転数算出の起点が異なる結果、算出されたエンジン回転数に燃焼のむらや製造誤差が強調されて反映されたりほとんど現れなかったりするという問題があった。
【0010】
一般に、4サイクルエンジンの場合、吸気・圧縮・膨張・排気の各工程に伴ってエンジン回転数は不可避的に変動するが、上記問題はかかる変動自体を意味するものではなく、気筒間の燃焼のむらや各種製造誤差等が演算によって強調されたりほとんど現れなかったりするという問題である。
【0011】
このように、エンジン回転数の演算結果が起点の位置によって左右されるとなると、かかるエンジン回転数の演算値をそのままエンジンの回転数制御に用いた場合には、制御動作が不必要に撹乱されるなど制御性能に悪影響をもたらし好ましいものではない。したがって、上記のように算出されたエンジン回転数を、起点の位置に左右されない形に補正して用いることが望まれる。
【0012】
【課題を解決するための手段】
かかる課題を解決するべく、請求項1に係る発明は、下記のようにしたことを特徴とする。
すなわち、クランク軸の回転に伴ってセンサが出力するパルスに基づいて所定回転角毎にエンジン回転数Nを算出するステップと、
上記エンジン回転数Nの移動平均N^を算出するステップと、
上記エンジン回転数Nから上記移動平均N^を減算し、この差N−N^を当該回転角におけるエンジン回転数Nの変動分として上記回転角毎に集合平均化し、当該回転角における変動分の集合平均Offsetを算出するステップと、
上記エンジン回転数Nを当該回転角での変動分の集合平均Offsetによって補正し、この補正値N−Offsetをもって当該回転角におけるエンジン回転数とするステップとを含む、
ことを特徴とするエンジンの回転数検出方法である。
【0013】
請求項2に係る発明は、請求項1に記載のエンジンの回転数検出方法において、
前記の所定回転角毎の変動分の集合平均Offsetを算出するに当たって、当該エンジンの回転数制御のために設定された目標回転数N*とエンジン回転数Nの移動平均N^との偏差|N^−N*|(|・|は絶対値を示す)を算出して、この偏差|N^−N*|が許容範囲内にあるか否かを判断し、
上記偏差|N^−N*|が許容範囲内にある場合には、上記移動平均N^からのエンジン回転数Nの変動分N−N^を計算し、この変動分N−N^を含めて当該回転角での変動分の集合平均Offsetを算出し、
上記偏差|N^−N*|が許容範囲内にない場合には、上記変動分の集合平均Offsetを算出する際に当該エンジン回転数Nの変動分N−N^を含めないようにした、
ことを特徴とする。
【0014】
請求項3に係る発明は、請求項2に記載のエンジンの回転数検出方法において、
前記の所定回転角毎の変動分の集合平均Offsetを算出するに当たって、前記エンジン回転数Nの移動平均N^と目標回転数N*との偏差|N^−N*|が許容範囲内にあるか否かを判断するとともに、上記偏差|N^−N*|が許容範囲内にある時間を計測し、
上記偏差|N^−N*|が許容範囲内にあり、かつ、当該許容範囲内にある時間が所定時間以上持続する場合には、上記移動平均N^からのエンジン回転数Nの変動分N−N^を計算し、この変動分N−N^を含めて当該回転角での変動分の集合平均Offsetを算出し、
上記偏差|N^−N*|が許容範囲内にない場合、または、当該許容範囲内にある時間が所定時間以上持続しない場合には、上記変動分の集合平均Offsetを算出する際に当該エンジン回転数Nの変動分N−N^を含めないようにした、
ことを特徴とする。
【0015】
請求項4に係る発明は、請求項1から3のいずれかに記載のエンジンの回転数検出方法において、
前記エンジンがn気筒4サイクルエンジンの場合であって、クランク軸の1/2の回転数で回転する回転軸にロータを設け、前記センサはこのロータの回転を検出してパルスを出力し、
上記ロータが360/n度回転するたびに前記エンジン回転数Nを算出し、
前記移動平均N^は、かかるエンジン回転数Nの最新のn個のデータに基づいて算出するようにした、
ことを特徴とする。
【0016】
【発明の作用効果】
(請求項1に係る発明)
請求項1に係る発明では、所定回転角毎に算出されるエンジン回転数をそのままエンジン回転数とするのではなく、まずは、その移動平均を算出し、次に、この移動平均から当該回転角におけるエンジン回転数の変動分を算出し、さらに、この変動分を所定回転角毎に集合平均化して、かかる変動分の集合平均を用いてエンジン回転数を補正したので、気筒間の燃焼のばらつきや製造誤差等に起因して演算上生じるエンジン回転数の変動を除去してエンジン回転数を算出することができる。このため、エンジン回転数の算出起点が始動のたびに異なる場合であっても、これによってエンジンの回転数制御が不必要に撹乱されることはなくなる。
【0017】
(請求項2に係る発明)
一般に、エンジン回転数が過渡状態にある場合には、エンジン回転数の変動には、エンジンの回転数制御のための制御動作の結果としての変動分も含まれるので、燃焼のばらつきや製造誤差等に起因する変動分のみを抽出するためには、かかる制御動作に起因する変動分が整定した後でそれを算出することが好ましい。請求項2に係る発明では、エンジン回転数がいまだ過渡状態にある場合には、かかるエンジン回転数に含まれる変動分を集合平均の算出に含めないようにしたので、気筒間の燃焼のばらつきや製造誤差等に起因する変動分の的確な抽出が可能となり、かかる変動分によるエンジン回転数の補正を適正化することができる。
【0018】
(請求項3に係る発明)
請求項3に係る発明では、所定回転角毎の変動分の集合平均を算出するに当たって、エンジン回転数の整定を判断するだけでなく、整定が所定時間以上持続するか否かを判断するようにしたので、エンジン回転数が確実に整定してからその変動分の集合平均を算出することができる。このため、気筒間の燃焼のばらつきや製造誤差等に起因するエンジン回転数の変動分を一層的確に抽出することが可能となり、エンジン回転数の補正の適正化をさらに図ることができる。
【0019】
(請求項4に係る発明)
エンジンがn気筒4サイクルエンジンの場合、クランク軸が720/n度回転する間にいずれかの気筒において爆発が起こる。したがって、クランク軸の1/2の回転数で回転する回転軸の場合には、この回転軸またはこの回転軸に設けられたロータが360/n度回転する間にいずれかの気筒で爆発が起こることになるので、上記ロータの360/n度毎の回転角のそれぞれに対して、その間に爆発した爆発気筒を対応付けて考えることができる。このため、かかる回転角毎に上記のようなエンジン回転数の補正処理を行うようにしておけば、気筒毎の燃焼のばらつきや製造誤差等に起因するエンジン回転数の演算上の変動を的確に抽出し除去することができる。なお、この請求項4に係る発明では、エンジン回転数の移動平均を算出するに当たって、最新のn個のデータに基づいて算出するようにしたので、ロータの1回転(クランク軸2回転)当たりのエンジン回転数の移動平均を算出することになる。
【0020】
【発明の実施の形態】
以下、図面に基づいて本発明の実施形態について説明する。図1は、4気筒4サイクルディーゼルエンジンについて本発明を適用した場合の実施形態を示している。この実施形態は、公知の電子ガバナによるエンジン回転数制御に用いられている。
【0021】
図1において、符合1は、図示しないクランク軸の1/2の回転数で回転する燃料噴射カム軸に設けられたロータであり、このロータ1の外周には突起2が設けられている。ここでは、この突起2は全部で68個(90度の円弧につき17個)設けられている。上記ロータ1の近接する位置には上記突起2の通過を検出するセンサ3が設けられ、このセンサ3は上記突起2の通過を検出するたびに1パルスを出力するようになっている。したがって、ロータ1が90度回転すると(クランク軸の回転角でいえば180度に相当)、17個のパルスが出力されることとなる。なお、かかるセンサ3としては、クランク軸の回転に伴ってパルス信号を発生するものであればよく、電磁ピックアップ、磁気抵抗素子センサ、ホールセンサ等公知のものを使用することができる。
【0022】
センサ3が出力したパルスはECU4に入力される。このECU4はエンジンの回転数制御のための制御部でもあり、目標回転数設定手段5から取り込んだ目標回転数と、後述する演算を経て算出されたエンジン回転数とを比較して、両者の偏差をなくすようにアクチュエータ(図示せず)を駆動して燃料噴射量を調整する。
【0023】
このECU4では、センサ3からの入力パルス数をカウントし、入力パルス数が17個に達するたびに、図2に示すエンジン回転数算出のための割り込み処理ルーチンを実行するようになっている。言い換えれば、ロータ1が90度回転するたびに(クランク軸が180度回転するたびに)、エンジン回転数算出の割り込み処理ルーチンが実行される。
【0024】
かかる割り込み処理ルーチンの具体的内容は以下の通りである。
まず、ステップS1において、前回の割り込みからの経過時間に基づいてエンジン回転数Nを算出する。すなわち、前回の割り込み時点から改めてカウントした入力パルス数が17個になるまでに要した時間Tに基づいて、下記のようにしてエンジン回転数Nが算出される。
【0025】
N=1/(2T)
【0026】
かかるエンジン回転数Nは、ECU4内部のメモリに格納される。その際、図3に示すように、前回のデータを順にシフトし、今回新たに算出されたエンジン回転数データNをN[0]にセットする(ステップS2)。
【0027】
ステップS3では、かかるエンジン回転数の最新のK個のデータの移動平均N^を算出する。ここでは、ロータ1の1回転分の最新のデータ(すなわち最新の4個のデータ)の移動平均を算出する。具体的には次の通りである。
【0028】
N^=ΣN[i]/4
但し、i=0,1,2,3の範囲でデータが総和される。
【0029】
ステップS4では、ステップS3で算出されたエンジン回転数の移動平均N^が、目標回転数設定手段5によって設定されたエンジン回転数制御における目標回転数N*と比較される。具体的には、両者の偏差|N^−N*|が許容範囲内に収まっているか否か、言い換えれば、エンジン回転数が整定したか否かが判断される。ここでは、目標回転数N*±10(rpm)を許容範囲としている。
【0030】
ステップS4においてエンジン回転数の移動平均N^が許容範囲内に収まっている場合(YESの場合)には、ステップS5へ移行し、整定が所定時間以上持続したか否かを判断する。ここでは、所定時間を5秒としている。
【0031】
ステップS5において整定が所定時間以上持続したと判断された場合(YESの場合)、ステップS6へ移行し、上記移動平均N^からのエンジン回転数Nの変動分N−N^を算出するとともに、ロータ1の当該回転角について過去に算出された、かかる変動分の合計値に加算され、その回転角における変動分の集合平均Offsetを算出する。かかる変動分の集合平均Offsetは、図4に示すように、回転角毎に用意されたバッファに格納される。すなわち、各バッファには、対応する回転角において過去に算出された変動分の集合平均が格納されており、ステップS6において今回のデータを加えた新たな集合平均を算出し、その値が書き込まれるようになっている。なお、各回転角での変動分の集合平均を、前回の割り込み時点から今回の割り込み時点までの間に爆発した気筒と対応付けて考えると、ある回転角における変動分の集合平均は、その間に爆発した気筒固有の燃焼のばらつきによって演算上生じたエンジン回転数の変動分と考えることができる。
【0032】
次に、ステップS7では、上記ステップS6において集合平均化したデータの総数が所定数(たとえば600)を越えたか否かを判断する。この600という数字は、通常、エンジン始動から2〜3秒で達成される。ステップS7でYESの場合は、ステップS8へ進んでフラグをセットし、ステップS9へ進む。一方、NOの場合は直ちにステップS9へ進む。
【0033】
ステップS9では、上記ステップS6で求めた当該回転角での変動分の集合平均Offsetを用いて今回のエンジン回転数Nを補正する。具体的には、N−Offsetを計算し、これをエンジン回転数とする。
【0034】
一方、前記のステップS4やステップS5でNOと判断された場合にはステップS10へ進み、フラグがセットされているかどうかを判断する。ステップS4やステップS5でNOと判断された場合にステップS6へ進まないのは、エンジン回転数がいまだ整定せず過渡状態にある場合には、回転数制御のための制御動作の結果としてのエンジン回転数の変動か、気筒間の燃焼のばらつきや製造誤差等に起因するエンジン回転数の変動かを見極めることは通常困難だからである。
【0035】
ステップS10においてフラグがセットされていればステップS9へ進み、対応するバッファにすでに格納されている値を用いて今回のエンジン回転数Nを補正する。したがって、この場合は、変動分の集合平均Offsetを算出するに当たって今回のエンジン回転数の変動分を考慮しない。一方、フラグがセットされていない場合には、集合平均を求めるデータ総数が所定数に達していないことを意味するので、バッファに格納された値はいまだ信頼に足るものではなく、この値を用いてエンジン回転数を補正するのは適当といえない。そこで、ステップS11へ進み、エンジン回転数を補正せずに、前記ステップS1で算出した今回のエンジン回転数Nをそのままエンジン回転数とする。
【図面の簡単な説明】
【図1】本発明の実施形態に係るエンジン回転数検出のためブロック図である。
【図2】本発明の実施形態によるエンジン回転数算出のための割り込み処理ルーチンを示すフローチャートである。
【図3】所定回転角毎に算出されるエンジン回転数Nを格納するメモリの模式図である。
【図4】所定回転角毎の変動分の集合平均を格納するバッファの模式図である。
【図5】従来のエンジン回転数検出方法によって得られたエンジン回転数のグラフを示し、図5(A)はエンジン回転数の変動が大きい場合、図5(B)はその変動が小さい場合を示す。
【符号の説明】
1…ロータ、2…突起、3…センサ、4…ECU、5…目標回転数設定手段。
Claims (4)
- クランク軸の回転に伴ってセンサが出力するパルスに基づいて所定回転角毎にエンジン回転数Nを算出するステップと、
上記エンジン回転数Nの移動平均N^を算出するステップと、
上記エンジン回転数Nから上記移動平均N^を減算し、この差N−N^を当該回転角におけるエンジン回転数Nの変動分として上記回転角毎に集合平均化し、当該回転角における変動分の集合平均Offsetを算出するステップと、
上記エンジン回転数Nを当該回転角での変動分の集合平均Offsetによって補正し、この補正値N−Offsetをもって当該回転角におけるエンジン回転数とするステップとを含む、
ことを特徴とするエンジンの回転数検出方法。 - 請求項1に記載のエンジンの回転数検出方法において、
前記の所定回転角毎の変動分の集合平均Offsetを算出するに当たって、当該エンジンの回転数制御のために設定された目標回転数N*とエンジン回転数Nの移動平均N^との偏差|N^−N*|(|・|は絶対値を示す)を算出して、この偏差|N^−N*|が許容範囲内にあるか否かを判断し、
上記偏差|N^−N*|が許容範囲内にある場合には、上記移動平均N^からのエンジン回転数Nの変動分N−N^を計算し、この変動分N−N^を含めて当該回転角での変動分の集合平均Offsetを算出し、
上記偏差|N^−N*|が許容範囲内にない場合には、上記変動分の集合平均Offsetを算出する際に当該エンジン回転数Nの変動分N−N^を含めないようにした、
ことを特徴とするエンジンの回転数検出方法。 - 請求項2に記載のエンジンの回転数検出方法において、
前記の所定回転角毎の変動分の集合平均Offsetを算出するに当たって、前記エンジン回転数Nの移動平均N^と目標回転数N*との偏差|N^−N*|が許容範囲内にあるか否かを判断するとともに、上記偏差|N^−N*|が許容範囲内にある時間を計測し、
上記偏差|N^−N*|が許容範囲内にあり、かつ、当該許容範囲内にある時間が所定時間以上持続する場合には、上記移動平均N^からのエンジン回転数Nの変動分N−N^を計算し、この変動分N−N^を含めて当該回転角での変動分の集合平均Offsetを算出し、
上記偏差|N^−N*|が許容範囲内にない場合、または、当該許容範囲内にある時間が所定時間以上持続しない場合には、上記変動分の集合平均Offsetを算出する際に当該エンジン回転数Nの変動分N−N^を含めないようにした、
ことを特徴とするエンジンの回転数検出方法。 - 請求項1から3のいずれかに記載のエンジンの回転数検出方法において、
前記エンジンがn気筒4サイクルエンジンの場合であって、クランク軸の1/2の回転数で回転する回転軸にロータを設け、前記センサはこのロータの回転を検出してパルスを出力し、
上記ロータが360/n度回転するたびに前記エンジン回転数Nを算出し、
前記移動平均N^は、かかるエンジン回転数Nの最新のn個のデータに基づいて算出するようにした、
ことを特徴とするエンジンの回転数検出方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002354484A JP2004183617A (ja) | 2002-12-06 | 2002-12-06 | エンジンの回転数検出方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002354484A JP2004183617A (ja) | 2002-12-06 | 2002-12-06 | エンジンの回転数検出方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004183617A true JP2004183617A (ja) | 2004-07-02 |
Family
ID=32755456
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002354484A Pending JP2004183617A (ja) | 2002-12-06 | 2002-12-06 | エンジンの回転数検出方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004183617A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011004810A1 (ja) * | 2009-07-06 | 2011-01-13 | 三井造船株式会社 | 機関回転数算出装置およびガバナ制御システム |
JP2019183681A (ja) * | 2018-04-04 | 2019-10-24 | ボッシュ株式会社 | 内燃機関の制御装置 |
-
2002
- 2002-12-06 JP JP2002354484A patent/JP2004183617A/ja active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011004810A1 (ja) * | 2009-07-06 | 2011-01-13 | 三井造船株式会社 | 機関回転数算出装置およびガバナ制御システム |
JP2011012663A (ja) * | 2009-07-06 | 2011-01-20 | Mitsui Eng & Shipbuild Co Ltd | 機関回転数算出装置およびガバナ制御システム |
KR101161647B1 (ko) | 2009-07-06 | 2012-07-03 | 미츠이 조센 시스템 기켄 가부시키가이샤 | 기관 회전수 산출 장치 및 거버너 제어 시스템 |
TWI464320B (zh) * | 2009-07-06 | 2014-12-11 | Mitsui Shipbuilding Eng | Engine speed calculation device and governor control system |
JP2019183681A (ja) * | 2018-04-04 | 2019-10-24 | ボッシュ株式会社 | 内燃機関の制御装置 |
JP7113647B2 (ja) | 2018-04-04 | 2022-08-05 | ボッシュ株式会社 | 内燃機関の制御装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8145411B2 (en) | Ignition timing controlling apparatus and ignition timing controlling method for internal combustion engine | |
JPS5993945A (ja) | 内燃機関のアイドル運転制御方法 | |
JPWO2003038263A1 (ja) | エンジン制御装置 | |
JP3441812B2 (ja) | 内燃エンジンの燃焼状態検出装置 | |
JP3805596B2 (ja) | 内燃機関の電子制御装置 | |
JP2004324525A (ja) | 内燃機関の失火判定装置 | |
WO2004013479A1 (ja) | エンジン制御装置 | |
JP3780549B2 (ja) | 燃料噴射時期制御装置 | |
JP2004183617A (ja) | エンジンの回転数検出方法 | |
JP5020361B2 (ja) | エンジンの燃料噴射制御装置 | |
JP2010150953A (ja) | 内燃機関の失火診断装置 | |
JP2943045B2 (ja) | 多気筒内燃機関の失火診断装置 | |
JP2807736B2 (ja) | 内燃機関の燃焼状態判定装置 | |
JPH10299632A (ja) | エンジンの制御装置 | |
JP2017227198A (ja) | ディーゼルエンジンの制御装置 | |
JP3295150B2 (ja) | 基本燃料噴射方法 | |
JP4707052B2 (ja) | 内燃機関の筒内圧検出装置 | |
JPH0347471A (ja) | 内燃機関の点火制御装置 | |
JP3427626B2 (ja) | 内燃機関の点火時期制御装置 | |
JPH07174773A (ja) | 多気筒内燃機関の燃焼状態判断装置 | |
JPH11132090A (ja) | クランク角検出装置 | |
JP2009052418A (ja) | 内燃機関の制御装置 | |
JP3882323B2 (ja) | 燃料性状判定装置 | |
JP2005307945A (ja) | 内燃機関の失火判定装置 | |
JPH01106934A (ja) | 内燃機関の空燃比制御装置 |