JPH0763108A - 内燃機関の電子制御装置 - Google Patents
内燃機関の電子制御装置Info
- Publication number
- JPH0763108A JPH0763108A JP5210321A JP21032193A JPH0763108A JP H0763108 A JPH0763108 A JP H0763108A JP 5210321 A JP5210321 A JP 5210321A JP 21032193 A JP21032193 A JP 21032193A JP H0763108 A JPH0763108 A JP H0763108A
- Authority
- JP
- Japan
- Prior art keywords
- rotation speed
- determination
- engine
- value
- internal combustion
- 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
Classifications
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F02—COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
- F02D—CONTROLLING COMBUSTION ENGINES
- F02D2250/00—Engine control related to specific problems or objectives
- F02D2250/12—Timing of calculation, i.e. specific timing aspects when calculation or updating of engine parameter is performed
Landscapes
- Combined Controls Of Internal Combustion Engines (AREA)
Abstract
(57)【要約】
【目的】 制御の質を落とすことなく、高回転における
処理負荷を軽減することができる内燃機関の電子制御装
置を提供すること。 【構成】 S2にて、前回算出した最新のエンジン回転
数NEが2500rpm(第2判定値)以上であるか否
か、即ち処理負荷の増大する高回転か否かを判定し、こ
こで高回転であると判断されると、S3の低回転用のエ
ンスト判定カウンタCENSTBを求める処理をとばし
て、処理負荷を軽減する。また、S9では、回転数NE
が1000rpm(第1判定値)以上か否かを判定する。
ここで高回転であると判断されると、高回転で処理負荷
が大きく処理の余裕がないので、S17〜S23処理に
て、使用するパルスを大きく間引いて、360゜CA時
間(T360)を求め、このT360に基づいて回転数
を算出する。
処理負荷を軽減することができる内燃機関の電子制御装
置を提供すること。 【構成】 S2にて、前回算出した最新のエンジン回転
数NEが2500rpm(第2判定値)以上であるか否
か、即ち処理負荷の増大する高回転か否かを判定し、こ
こで高回転であると判断されると、S3の低回転用のエ
ンスト判定カウンタCENSTBを求める処理をとばし
て、処理負荷を軽減する。また、S9では、回転数NE
が1000rpm(第1判定値)以上か否かを判定する。
ここで高回転であると判断されると、高回転で処理負荷
が大きく処理の余裕がないので、S17〜S23処理に
て、使用するパルスを大きく間引いて、360゜CA時
間(T360)を求め、このT360に基づいて回転数
を算出する。
Description
【0001】
【産業上の利用分野】本発明は、内燃機関において各種
の制御を行なう電子制御装置に関し、詳しくは高回転に
おけるCPUの負荷を軽減することができる内燃機関の
電子制御装置に関する。
の制御を行なう電子制御装置に関し、詳しくは高回転に
おけるCPUの負荷を軽減することができる内燃機関の
電子制御装置に関する。
【0002】
【従来の技術】従来より、内燃機関(エンジン)の電子
制御装置(ECU)においては、エンジンのクランク角
位置に合わせて燃料噴射を行ったり、パルサの間隔から
エンジン回転数を算出するために、パルサ信号によりリ
アルタイムに割込処理を行なっている。
制御装置(ECU)においては、エンジンのクランク角
位置に合わせて燃料噴射を行ったり、パルサの間隔から
エンジン回転数を算出するために、パルサ信号によりリ
アルタイムに割込処理を行なっている。
【0003】このパルサ信号による割込処理の一般的な
ものとしては、割込時刻からパルス間隔時間を算出する
処理、パルサ信号の基準位置となる欠け歯を検出するた
めの判定処理、燃料噴射量や噴射タイミングを制御する
ための基準時間(例えば360゜CA,90゜CA時
間)の算出処理、エンストの判定処理、その他多くの制
御のための処理がある。そして、通常は、エンジン制御
ECUにおいては、これら多くの制御のための処理を、
パルサ信号の入力毎に行われる割込処理の中で行なって
いる。
ものとしては、割込時刻からパルス間隔時間を算出する
処理、パルサ信号の基準位置となる欠け歯を検出するた
めの判定処理、燃料噴射量や噴射タイミングを制御する
ための基準時間(例えば360゜CA,90゜CA時
間)の算出処理、エンストの判定処理、その他多くの制
御のための処理がある。そして、通常は、エンジン制御
ECUにおいては、これら多くの制御のための処理を、
パルサ信号の入力毎に行われる割込処理の中で行なって
いる。
【0004】
【発明が解決しようとする課題】しかしながら、この様
にパルサ信号を用いて割込処理を行なう場合には、下記
の問題がある。例えばエンジン回転数や欠け歯検出の処
理等は、低回転や高回転にかかわらず同じ量の処理を必
要とするので、低回転では処理負荷率は低いが、高回転
になるにつれて処理負荷率が高くなるという問題があ
る。特に、高回転となって、処理量やパルサの歯数によ
って決まるある回転数(限界回転数)以上となると、処
理負荷率が100%を越えることになり、CPUの能力
をオーバーするという事態も考えられる。これに対し
て、処理量そのものを低減して限界回転数を高くするこ
とが考えられるが、必要な処理を省くわけにはいかず、
いかにして処理負荷率を低減するかが大きな問題となっ
ていた。
にパルサ信号を用いて割込処理を行なう場合には、下記
の問題がある。例えばエンジン回転数や欠け歯検出の処
理等は、低回転や高回転にかかわらず同じ量の処理を必
要とするので、低回転では処理負荷率は低いが、高回転
になるにつれて処理負荷率が高くなるという問題があ
る。特に、高回転となって、処理量やパルサの歯数によ
って決まるある回転数(限界回転数)以上となると、処
理負荷率が100%を越えることになり、CPUの能力
をオーバーするという事態も考えられる。これに対し
て、処理量そのものを低減して限界回転数を高くするこ
とが考えられるが、必要な処理を省くわけにはいかず、
いかにして処理負荷率を低減するかが大きな問題となっ
ていた。
【0005】この対策として、エンジンの回転数が大き
くなるにつれて、燃料噴射量の算出回数を間引いて、算
出頻度を低減する技術が提案されているが、これだけで
は、制御の質を落とすことなく負荷を十分に軽減するこ
とは困難である(特開平1−116270号公報参
照)。
くなるにつれて、燃料噴射量の算出回数を間引いて、算
出頻度を低減する技術が提案されているが、これだけで
は、制御の質を落とすことなく負荷を十分に軽減するこ
とは困難である(特開平1−116270号公報参
照)。
【0006】本発明は、前記課題を解決するためになさ
れ、制御の質を落とすことなく、高回転における処理負
荷を軽減することができる内燃機関の電子制御装置を提
供することを目的とする。
れ、制御の質を落とすことなく、高回転における処理負
荷を軽減することができる内燃機関の電子制御装置を提
供することを目的とする。
【0007】
【課題を解決するための手段】前記目的を達成するため
の本発明は、図1に例示する様に、内燃機関の回転に応
じて発生するセンサのパルスデータを用いて回転数を算
出するとともに、該パルスデータを用いてエンジンスト
ップの判定に使用するエンスト判定カウンタ値を設定
し、該エンスト判定カウンタ値と所定のエンジンストッ
プ判定値とを比較してエンジンストップの判定を行なう
内燃機関の電子制御装置において、前記内燃機関の回転
数の高低を、第1判定値を用いて判定する第1判定手段
と該第1判定手段によって、前記回転数が前記第1判定
値より高いと判定された場合は、前記パルスデータを回
転数が低い場合よりも低い頻度にて取り込んで、回転数
を算出する高回転用回転数算出手段と、前記内燃機関の
回転数の高低を、前記第1判定値以上の第2判定値を用
いて判定する第2判定手段と、該第2判定手段によっ
て、前記回転数が第2判定値より高いと判定された場合
には、前記高回転用回転数算出手段による回転数の算出
に用いられる低頻度のパルスデータを使用して、前記エ
ンスト判定カウンタ値を設定するエンスト判定カウンタ
設定手段と、を備えたことを特徴とする内燃機関の電子
制御装置を要旨とする。
の本発明は、図1に例示する様に、内燃機関の回転に応
じて発生するセンサのパルスデータを用いて回転数を算
出するとともに、該パルスデータを用いてエンジンスト
ップの判定に使用するエンスト判定カウンタ値を設定
し、該エンスト判定カウンタ値と所定のエンジンストッ
プ判定値とを比較してエンジンストップの判定を行なう
内燃機関の電子制御装置において、前記内燃機関の回転
数の高低を、第1判定値を用いて判定する第1判定手段
と該第1判定手段によって、前記回転数が前記第1判定
値より高いと判定された場合は、前記パルスデータを回
転数が低い場合よりも低い頻度にて取り込んで、回転数
を算出する高回転用回転数算出手段と、前記内燃機関の
回転数の高低を、前記第1判定値以上の第2判定値を用
いて判定する第2判定手段と、該第2判定手段によっ
て、前記回転数が第2判定値より高いと判定された場合
には、前記高回転用回転数算出手段による回転数の算出
に用いられる低頻度のパルスデータを使用して、前記エ
ンスト判定カウンタ値を設定するエンスト判定カウンタ
設定手段と、を備えたことを特徴とする内燃機関の電子
制御装置を要旨とする。
【0008】
【作用】本発明では、内燃機関の回転に応じて発生する
センサのパルスデータを用いて回転数を算出するととも
に、パルスデータを用いてエンジンストップの判定に使
用するエンスト判定カウンタ値を設定し、このエンスト
判定カウンタ値と所定のエンジンストップ判定値とを比
較してエンジンストップの判定を行なう。
センサのパルスデータを用いて回転数を算出するととも
に、パルスデータを用いてエンジンストップの判定に使
用するエンスト判定カウンタ値を設定し、このエンスト
判定カウンタ値と所定のエンジンストップ判定値とを比
較してエンジンストップの判定を行なう。
【0009】そして、第1判定手段によって、内燃機関
の回転数が高いか低いかを第1判定値を用いて判定し、
ここで、回転数が第1判定値より高いと判定された場合
は、高回転用回転数算出手段によって、回転数が低い場
合よりも低い頻度にてパルスデータを取り込んで、回転
数を算出する。また、第2判定手段によって、内燃機関
の回転数が高いか低いかを第2判定値を用いて判定し、
ここで、回転数が第2判定値より高いと判定された場合
には、高回転用回転数算出手段による回転数の算出に用
いられる低頻度のパルスデータを使用し、エンスト判定
カウンタ設定手段によって、エンジンストップの判定に
使用するエンスト判定カウンタ値を設定する。
の回転数が高いか低いかを第1判定値を用いて判定し、
ここで、回転数が第1判定値より高いと判定された場合
は、高回転用回転数算出手段によって、回転数が低い場
合よりも低い頻度にてパルスデータを取り込んで、回転
数を算出する。また、第2判定手段によって、内燃機関
の回転数が高いか低いかを第2判定値を用いて判定し、
ここで、回転数が第2判定値より高いと判定された場合
には、高回転用回転数算出手段による回転数の算出に用
いられる低頻度のパルスデータを使用し、エンスト判定
カウンタ設定手段によって、エンジンストップの判定に
使用するエンスト判定カウンタ値を設定する。
【0010】つまり、本発明では、回転数の算出とエン
スト判定とを行なう場合、エンジン回転数が高い場合に
は、高回転の場合に回転数の算出に使用したデータを用
いて、エンストの判定を行なうことが可能となるので、
高回転における処理の負荷が低減することになる。
スト判定とを行なう場合、エンジン回転数が高い場合に
は、高回転の場合に回転数の算出に使用したデータを用
いて、エンストの判定を行なうことが可能となるので、
高回転における処理の負荷が低減することになる。
【0011】
【実施例】以下に本発明の実施例を図面と共に説明す
る。図2は、本発明の実施例の内燃機関の電子制御装置
のシステム構成を示す概略構成図である。図2に示す様
に、エンジン1のクランク軸2には、(欠け歯を含め
て)等間隔に配置された歯4を有するパルサ5が取り付
けられている。このパルサ5のパルス間隔及び欠け歯数
は、そのシステム構成によって任意に設定できるが、本
実施例では、後述するパルスカウンタCNIRQの値の
「0」〜「6」に対応する7本の歯4が配置されるとと
もに、8番目の位置に欠け歯が設定されている。
る。図2は、本発明の実施例の内燃機関の電子制御装置
のシステム構成を示す概略構成図である。図2に示す様
に、エンジン1のクランク軸2には、(欠け歯を含め
て)等間隔に配置された歯4を有するパルサ5が取り付
けられている。このパルサ5のパルス間隔及び欠け歯数
は、そのシステム構成によって任意に設定できるが、本
実施例では、後述するパルスカウンタCNIRQの値の
「0」〜「6」に対応する7本の歯4が配置されるとと
もに、8番目の位置に欠け歯が設定されている。
【0012】また、パルサ5の歯4に近接してセンサ6
が配置されており、このセンサ6は波形整形回路7を介
して、マイクロコンピュータとして構成される電子制御
装置(ECU)8に接続されている。ECU8は、周知
のCPU8a,ROM8b,RAM8c,入出力ポート
8d及びバス8e等を備えており、波形整形回路7は入
出力ポート8dに接続されている。
が配置されており、このセンサ6は波形整形回路7を介
して、マイクロコンピュータとして構成される電子制御
装置(ECU)8に接続されている。ECU8は、周知
のCPU8a,ROM8b,RAM8c,入出力ポート
8d及びバス8e等を備えており、波形整形回路7は入
出力ポート8dに接続されている。
【0013】そして、本実施例においては、図3に示す
様に、パルサ5の回転によって、センサ6から波形整形
回路7に信号Aの波形の出力がなされ、次いで波形整形
回路7によって、信号Bの波形に整形される。よって、
パルスカウンタCNIRQは、欠け歯部分のパルスは発
生しないことを受けて、欠け歯毎(即ち1回転毎)にて
クリアされるとともに、実際の歯4の部分にて「0」か
ら「6」までカウントアップされてゆく。
様に、パルサ5の回転によって、センサ6から波形整形
回路7に信号Aの波形の出力がなされ、次いで波形整形
回路7によって、信号Bの波形に整形される。よって、
パルスカウンタCNIRQは、欠け歯部分のパルスは発
生しないことを受けて、欠け歯毎(即ち1回転毎)にて
クリアされるとともに、実際の歯4の部分にて「0」か
ら「6」までカウントアップされてゆく。
【0014】次に、上述した構成の本実施例の制御処理
を、図4〜図7のフローチャートに基づいて説明する。
ここで、図4はパルスの発生毎に行われる割込処理であ
り、図5は5ms毎に行われる各種カウンタ更新のための
割込処理であり、図6は10ms毎に行われるエンスト判
定のための割込処理であり、図7はメインルーチン内で
行われる回転数算出処理である。
を、図4〜図7のフローチャートに基づいて説明する。
ここで、図4はパルスの発生毎に行われる割込処理であ
り、図5は5ms毎に行われる各種カウンタ更新のための
割込処理であり、図6は10ms毎に行われるエンスト判
定のための割込処理であり、図7はメインルーチン内で
行われる回転数算出処理である。
【0015】最初に、図4に基づいて、回転数の判定等
のために、パルスの発生毎に行われるパルス割込処理に
ついて説明する。図4に示す様に、まず、S1にて、今
回割込時刻から前回割込時刻を引いて割込間隔(時間)
を求め、その値をレジスタYregにストアする。
のために、パルスの発生毎に行われるパルス割込処理に
ついて説明する。図4に示す様に、まず、S1にて、今
回割込時刻から前回割込時刻を引いて割込間隔(時間)
を求め、その値をレジスタYregにストアする。
【0016】続くS2にて、前回算出した最新のエンジ
ン回転数NEが2500rpm(第2判定値)以上である
か否か、即ち処理負荷の増大する高回転か否かを判定
し、ここで高回転であると判断されると後述するS7に
進み、一方低回転であると判断されるとS3に進む。
ン回転数NEが2500rpm(第2判定値)以上である
か否か、即ち処理負荷の増大する高回転か否かを判定
し、ここで高回転であると判断されると後述するS7に
進み、一方低回転であると判断されるとS3に進む。
【0017】S3では、処理負荷の小さな低回転である
ので、エンストカウンタCENSTの値を、エンジンス
トップの判定(エンスト判定)に使用されるエンスト判
定カウンタCENSTBの値とする。このエンストカウ
ンタCENSTとは、図5に示す様に、5msの割込処理
によって、S100にてインクリメントされるものであ
る。このエンストカウンタCENSTは、S101にて
500msを上回ると判断されると、S102にてガード
値として500msが設定される。
ので、エンストカウンタCENSTの値を、エンジンス
トップの判定(エンスト判定)に使用されるエンスト判
定カウンタCENSTBの値とする。このエンストカウ
ンタCENSTとは、図5に示す様に、5msの割込処理
によって、S100にてインクリメントされるものであ
る。このエンストカウンタCENSTは、S101にて
500msを上回ると判断されると、S102にてガード
値として500msが設定される。
【0018】一方、エンスト判定カウンタCENSTB
とは、低回転の場合のエンスト判定に使用されるもので
ある。つまり、図6に示す様に、S201にて回転数N
Eが2000rpm以下と判断されると、S202にてこ
のエンスト判定カウンタCENSTBと所定の(低回転
用の)エンスト判定値とを比較して、エンストの発生を
判定するものである。
とは、低回転の場合のエンスト判定に使用されるもので
ある。つまり、図6に示す様に、S201にて回転数N
Eが2000rpm以下と判断されると、S202にてこ
のエンスト判定カウンタCENSTBと所定の(低回転
用の)エンスト判定値とを比較して、エンストの発生を
判定するものである。
【0019】尚、この判定によって、エンストを検出で
きる理由は、エンストが発生した場合は、エンジン1の
回転数NEが低下するので、図4のパルス割込の間隔が
長くなり、結果として、図5の5ms毎にインクリメント
されるエンストカウンタCENST(即ちエンスト判定
カウンタCENSTB)の値が増加するので、このエン
スト判定カウンタCENSTBがエンスト判定値より大
きくなった場合に、エンストが発生したと判定すること
ができるのである。
きる理由は、エンストが発生した場合は、エンジン1の
回転数NEが低下するので、図4のパルス割込の間隔が
長くなり、結果として、図5の5ms毎にインクリメント
されるエンストカウンタCENST(即ちエンスト判定
カウンタCENSTB)の値が増加するので、このエン
スト判定カウンタCENSTBがエンスト判定値より大
きくなった場合に、エンストが発生したと判定すること
ができるのである。
【0020】図4に戻り、S4にて、エンストカウンタ
CENSTをクリアする。続くS5にて、エンスト判定
カウンタCENSTBが、60msを上回るか否かを判定
し、ここで上回ると判断されると、S6にて、(オーバ
ーフローを防止するために)前記レジスタYregにガー
ド値を入れて、S7に進む。一方60ms以下であると判
断されると、そのままS7に進む。
CENSTをクリアする。続くS5にて、エンスト判定
カウンタCENSTBが、60msを上回るか否かを判定
し、ここで上回ると判断されると、S6にて、(オーバ
ーフローを防止するために)前記レジスタYregにガー
ド値を入れて、S7に進む。一方60ms以下であると判
断されると、そのままS7に進む。
【0021】S7では、割込間隔であるレジスタYreg
の値を、TNINTの値に設定する。尚、このTNIN
Tは、パルスとパルスとの間隔を示しているので、例え
ば燃料噴射制御等の他の様々な処理に利用される。続く
S8では、次の割込間隔を求めるために、今回割込時刻
を前回割込時刻と設定する。
の値を、TNINTの値に設定する。尚、このTNIN
Tは、パルスとパルスとの間隔を示しているので、例え
ば燃料噴射制御等の他の様々な処理に利用される。続く
S8では、次の割込間隔を求めるために、今回割込時刻
を前回割込時刻と設定する。
【0022】つまり、前記S2〜S6の処理は、回転数
NEが(第2判定値より)低い場合には、低回転用のエ
ンスト判定カウンタCENSTBを設定するが、回転数
NEが高い場合には、エンスト判定カウンタCENST
Bを設定するステップを省いて、処理負荷を軽減するた
めの処理である。
NEが(第2判定値より)低い場合には、低回転用のエ
ンスト判定カウンタCENSTBを設定するが、回転数
NEが高い場合には、エンスト判定カウンタCENST
Bを設定するステップを省いて、処理負荷を軽減するた
めの処理である。
【0023】そして、続くS9では、回転数NEが10
00rpm(第1判定値)以上か否か、即ち高回転か否か
を判定する。ここで高回転であると判断されると後述す
るS17に進み、一方高回転ではないと判断されるとS
10に進む。尚、このS9における回転数NEの判定レ
ベル(第1判定値=1000rpm)は、前記S2の判定
レベル(第2判定値=2500rpm)より低いが、これ
は、エンスト判定と回転数算出との性質の違いによるも
のである。
00rpm(第1判定値)以上か否か、即ち高回転か否か
を判定する。ここで高回転であると判断されると後述す
るS17に進み、一方高回転ではないと判断されるとS
10に進む。尚、このS9における回転数NEの判定レ
ベル(第1判定値=1000rpm)は、前記S2の判定
レベル(第2判定値=2500rpm)より低いが、これ
は、エンスト判定と回転数算出との性質の違いによるも
のである。
【0024】S10では、パルスカウンタCNIRQが
偶数か否かを判定し、ここで肯定判断されるとS11に
進み、一方否定判断されると後述するS24に進む。つ
まり、この判定は、図3の各パルス毎(即ち45゜CA
毎)ではなく、(低回転ではあるが)処理負荷を軽減す
るために1パルスおき(90゜CA毎)に、以下の処理
を行なうためのものである。
偶数か否かを判定し、ここで肯定判断されるとS11に
進み、一方否定判断されると後述するS24に進む。つ
まり、この判定は、図3の各パルス毎(即ち45゜CA
毎)ではなく、(低回転ではあるが)処理負荷を軽減す
るために1パルスおき(90゜CA毎)に、以下の処理
を行なうためのものである。
【0025】S11では、上述した図5のS106に
て、5ms毎にインクリメントされるカウンタC90の値
を、判定カウンタC90Bの値に設定し、S12にて、
カウンタC90をクリアする。続くS13では、判定カ
ウンタC90Bが60msを上回るか否かを判定し、ここ
で上回ると判断されるとS16に進み、一方60ms以下
であると判断されるとS14に進む。
て、5ms毎にインクリメントされるカウンタC90の値
を、判定カウンタC90Bの値に設定し、S12にて、
カウンタC90をクリアする。続くS13では、判定カ
ウンタC90Bが60msを上回るか否かを判定し、ここ
で上回ると判断されるとS16に進み、一方60ms以下
であると判断されるとS14に進む。
【0026】S16では、回転数算出に使用される90
゜CA時間である、パルスカウンタCNIRQの1/2
における値T90(n)に、ガード値を入れる。一方、
S14では、同様な値T90(n)に、90゜CA割込
時刻から今回割込時刻を引いた値を設定する。これによ
って、90゜CA間隔(時間)、即ち1パルスおきの時
間が求まる。
゜CA時間である、パルスカウンタCNIRQの1/2
における値T90(n)に、ガード値を入れる。一方、
S14では、同様な値T90(n)に、90゜CA割込
時刻から今回割込時刻を引いた値を設定する。これによ
って、90゜CA間隔(時間)、即ち1パルスおきの時
間が求まる。
【0027】続くS15では、次のT90(n)を求め
るために、今回割込時刻を90゜CA割込時刻として設
定する。つまり、前記S10〜S15の処理は、回転数
NEが(第1判定値より)低回転で処理負荷が小さく処
理に余裕があるので、精密に回転数NEを求めるため
に、(図7にて使用される)1パルスおきの90゜CA
時間(T90(n))を求めるための処理である。
るために、今回割込時刻を90゜CA割込時刻として設
定する。つまり、前記S10〜S15の処理は、回転数
NEが(第1判定値より)低回転で処理負荷が小さく処
理に余裕があるので、精密に回転数NEを求めるため
に、(図7にて使用される)1パルスおきの90゜CA
時間(T90(n))を求めるための処理である。
【0028】この図7に示す処理は、メインルーチン内
の回転数演算処理であり、S601にて、回転数NEが
1000rpm以下の低回転であるか否かを判定し、低回
転である場合には、S602にて、上述した90゜CA
時間であるT90(1)〜T90(4)を用いて、回転
数NEを算出する処理である。具体的には、各時間T9
0〜T90の平均の1/2をパルス間隔の時間とし、こ
の時間を8倍した値を1回転の時間として回転数NEを
求めるものである。
の回転数演算処理であり、S601にて、回転数NEが
1000rpm以下の低回転であるか否かを判定し、低回
転である場合には、S602にて、上述した90゜CA
時間であるT90(1)〜T90(4)を用いて、回転
数NEを算出する処理である。具体的には、各時間T9
0〜T90の平均の1/2をパルス間隔の時間とし、こ
の時間を8倍した値を1回転の時間として回転数NEを
求めるものである。
【0029】図4に戻り、続くS24では、欠け歯処理
や、その他処理、例えばスピルバルブ処理等の一般的な
処理を行なって、一旦本処理を終了する。尚、この欠け
歯処理とは、図3に示す様に、今回検出したパルス間隔
が前回検出したパルス間隔より長い場合は、欠け歯であ
ると見なして、パルスカウンタCNIRQをクリアする
処理である。これによって、パルスカウンタCNIRQ
の値は「6」から「0」に変更される。
や、その他処理、例えばスピルバルブ処理等の一般的な
処理を行なって、一旦本処理を終了する。尚、この欠け
歯処理とは、図3に示す様に、今回検出したパルス間隔
が前回検出したパルス間隔より長い場合は、欠け歯であ
ると見なして、パルスカウンタCNIRQをクリアする
処理である。これによって、パルスカウンタCNIRQ
の値は「6」から「0」に変更される。
【0030】また、前記S9にて高回転であると判断さ
れて進む、S17では、パルスカウンタCNIRQが6
か(即ち1回転したか)否かを判定し、ここで肯定判断
されるとS18に進み、一方否定判断されると前記S2
4に進む。つまり、この判定は、高回転であるので、図
3の各パルス毎(即ち45゜CA毎)ではなく、処理負
荷を大きく軽減するために1回転毎(360゜CA毎)
に、以下の処理を行なうためのものである。
れて進む、S17では、パルスカウンタCNIRQが6
か(即ち1回転したか)否かを判定し、ここで肯定判断
されるとS18に進み、一方否定判断されると前記S2
4に進む。つまり、この判定は、高回転であるので、図
3の各パルス毎(即ち45゜CA毎)ではなく、処理負
荷を大きく軽減するために1回転毎(360゜CA毎)
に、以下の処理を行なうためのものである。
【0031】S18では、上述した図5のS103に
て、5ms毎にインクリメントされるカウンタC360の
値を、判定カウンタC360Bの値に設定し、S19に
て、カウンタC360をクリアする。続くS20では、
判定カウンタC360Bが60msを上回るか否かを判定
し、ここで上回ると判断されるとS23に進み、一方6
0ms以下であると判断されるとS21に進む。
て、5ms毎にインクリメントされるカウンタC360の
値を、判定カウンタC360Bの値に設定し、S19に
て、カウンタC360をクリアする。続くS20では、
判定カウンタC360Bが60msを上回るか否かを判定
し、ここで上回ると判断されるとS23に進み、一方6
0ms以下であると判断されるとS21に進む。
【0032】S23では、回転数算出に使用される36
0゜CA時間に相当する値T360に、ガード値を入れ
る。一方、S21では、同様な値T360に、360゜
CA割込時刻から今回割込時刻を引いた値を設定する。
これによって、360゜CA間隔(時間)、即ち1回転
の時間が求まる。
0゜CA時間に相当する値T360に、ガード値を入れ
る。一方、S21では、同様な値T360に、360゜
CA割込時刻から今回割込時刻を引いた値を設定する。
これによって、360゜CA間隔(時間)、即ち1回転
の時間が求まる。
【0033】S22では、次のT360を求めるため
に、今回割込時刻を360゜CA割込時刻として設定
し、前記S24に進む。つまり、S17〜S23の処理
は、回転数NEが(第1判定値より)高回転で処理負荷
が大きく、処理に余裕がないので、使用するパルスを大
きく間引いて、360゜CA時間(T360)を求める
ための処理である。
に、今回割込時刻を360゜CA割込時刻として設定
し、前記S24に進む。つまり、S17〜S23の処理
は、回転数NEが(第1判定値より)高回転で処理負荷
が大きく、処理に余裕がないので、使用するパルスを大
きく間引いて、360゜CA時間(T360)を求める
ための処理である。
【0034】そして、このT360の値を用いて、図7
に示すメインルーチン内の回転数演算処理にて、まず、
S601にて、回転数NEが1000rpm以下の低回転
であるか否かを判定し、高回転である場合には、S60
3にて、上述した360゜CA時間であるT360を1
回転にかかる時間として、回転数NEを算出する。
に示すメインルーチン内の回転数演算処理にて、まず、
S601にて、回転数NEが1000rpm以下の低回転
であるか否かを判定し、高回転である場合には、S60
3にて、上述した360゜CA時間であるT360を1
回転にかかる時間として、回転数NEを算出する。
【0035】この様に、本実施例では、回転数NEが第
1判定値を下回る低回転の場合には、90゜CA毎の多
くのパルスタイミングを用いて、精密に回転数NEを算
出することができる。一方、回転数NEが第1判定値以
上の高回転の場合は、360゜CA毎の少ないパルスタ
イミングを用いて、処理負荷を軽減して回転数NEを算
出することができる。更に、回転数NEが第1判定値よ
り大きな第2判定値以下の場合は、低回転用のエンスト
判定カウンタCENSTBを設定するので、低回転の場
合に精密にエンストを検出することができる。一方、回
転数NEが第2判定値を上回る場合には、高回転用の回
転数算出に使用されるカウンタC360Bを使用してエ
ンスト判定を行なうので、エンスト検出の精度を損なう
ことなく、高回転における処理負荷を軽減することがで
きるという顕著な効果を奏する。
1判定値を下回る低回転の場合には、90゜CA毎の多
くのパルスタイミングを用いて、精密に回転数NEを算
出することができる。一方、回転数NEが第1判定値以
上の高回転の場合は、360゜CA毎の少ないパルスタ
イミングを用いて、処理負荷を軽減して回転数NEを算
出することができる。更に、回転数NEが第1判定値よ
り大きな第2判定値以下の場合は、低回転用のエンスト
判定カウンタCENSTBを設定するので、低回転の場
合に精密にエンストを検出することができる。一方、回
転数NEが第2判定値を上回る場合には、高回転用の回
転数算出に使用されるカウンタC360Bを使用してエ
ンスト判定を行なうので、エンスト検出の精度を損なう
ことなく、高回転における処理負荷を軽減することがで
きるという顕著な効果を奏する。
【0036】次に、図8及び図9のフローチャートに、
本実施例による処理負荷の軽減状態を従来例と比較して
示す。尚、図8は前記図3の処理を簡略化して示したも
ので、図9は従来例であり、各図において各々の処理段
階で必要とされる命令のステップ数を示してある。
本実施例による処理負荷の軽減状態を従来例と比較して
示す。尚、図8は前記図3の処理を簡略化して示したも
ので、図9は従来例であり、各図において各々の処理段
階で必要とされる命令のステップ数を示してある。
【0037】この図8及び図9から明かな様に、高回転
(例えば5000rpm)の場合、図8の本実施例では、
S703,S707,S708が省略されるので、処理
に必要とされる命令のステップ数は合計102と少なく
なる。一方、図9の従来例の場合は、命令のステップ数
は合計121と多く好ましくない。
(例えば5000rpm)の場合、図8の本実施例では、
S703,S707,S708が省略されるので、処理
に必要とされる命令のステップ数は合計102と少なく
なる。一方、図9の従来例の場合は、命令のステップ数
は合計121と多く好ましくない。
【0038】尚、前記本発明の実施例について説明した
が、本発明はこの様な実施例に何等限定されるものでは
なく、各種の態様で実施できることは勿論である。
が、本発明はこの様な実施例に何等限定されるものでは
なく、各種の態様で実施できることは勿論である。
【0039】
【発明の効果】以上説明した様に、本発明では、エンジ
ンの回転数の算出とエンスト判定とを行なう場合、回転
数が高いときには、高回転の場合に回転数の算出に使用
したデータを用いて、エンストの判定を行なうことがで
きるので、精度を低下させることなく、高回転における
処理の負荷を低減することができる。その結果、処理の
過度の増大によるCPUへの悪影響を防止することがで
きる。
ンの回転数の算出とエンスト判定とを行なう場合、回転
数が高いときには、高回転の場合に回転数の算出に使用
したデータを用いて、エンストの判定を行なうことがで
きるので、精度を低下させることなく、高回転における
処理の負荷を低減することができる。その結果、処理の
過度の増大によるCPUへの悪影響を防止することがで
きる。
【図1】 本発明の構成を例示する概略構成図である。
【図2】 本実施例のシステム構成を示すブロック図で
ある。
ある。
【図3】 信号A,B及びパルスカウンタを示す説明図
である。
である。
【図4】 パルス割込処理を示すフローチャートであ
る。
る。
【図5】 カウンタをインクリメントする割込処理を示
すフローチャートである。
すフローチャートである。
【図6】 エンスト判定の割込処理を示すフローチャー
トである。
トである。
【図7】 回転数を検出する処理を示すフローチャート
である。
である。
【図8】 本実施例の効果を示す説明図である。
【図9】 比較例のステップ数を示す説明図である。
1…エンジン 4…歯 5…パルサ 6…センサ 8…電子制御装置(ECU)
Claims (1)
- 【請求項1】 内燃機関の回転に応じて発生するセンサ
のパルスデータを用いて回転数を算出するとともに、該
パルスデータを用いてエンジンストップの判定に使用す
るエンスト判定カウンタ値を設定し、該エンスト判定カ
ウンタ値と所定のエンジンストップ判定値とを比較して
エンジンストップの判定を行なう内燃機関の電子制御装
置において、 前記内燃機関の回転数の高低を、第1判定値を用いて判
定する第1判定手段と、 該第1判定手段によって、前記回転数が前記第1判定値
より高いと判定された場合は、前記パルスデータを回転
数が低い場合よりも低い頻度にて取り込んで、回転数を
算出する高回転用回転数算出手段と、 前記内燃機関の回転数の高低を、前記第1判定値以上の
第2判定値を用いて判定する第2判定手段と、 該第2判定手段によって、前記回転数が第2判定値より
高いと判定された場合には、前記高回転用回転数算出手
段による回転数の算出に用いられる低頻度のパルスデー
タを使用して、前記エンスト判定カウンタ値を設定する
エンスト判定カウンタ設定手段と、 を備えたことを特徴とする内燃機関の電子制御装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP5210321A JPH0763108A (ja) | 1993-08-25 | 1993-08-25 | 内燃機関の電子制御装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP5210321A JPH0763108A (ja) | 1993-08-25 | 1993-08-25 | 内燃機関の電子制御装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0763108A true JPH0763108A (ja) | 1995-03-07 |
Family
ID=16587494
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP5210321A Pending JPH0763108A (ja) | 1993-08-25 | 1993-08-25 | 内燃機関の電子制御装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0763108A (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO1999034104A1 (de) * | 1997-12-24 | 1999-07-08 | Robert Bosch Gmbh | Verfahren zum betreiben einer brennkraftmaschine, insbesondere eines kraftfahrzeugs |
| WO2003106830A1 (de) * | 2002-06-17 | 2003-12-24 | Siemens Aktiengesellschaft | Betriebsverfahren für eine recheneinheit |
| JP2019214977A (ja) * | 2018-06-13 | 2019-12-19 | 株式会社デンソー | 車載制御装置 |
-
1993
- 1993-08-25 JP JP5210321A patent/JPH0763108A/ja active Pending
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO1999034104A1 (de) * | 1997-12-24 | 1999-07-08 | Robert Bosch Gmbh | Verfahren zum betreiben einer brennkraftmaschine, insbesondere eines kraftfahrzeugs |
| US6438485B1 (en) | 1997-12-24 | 2002-08-20 | Robert Bosch Gmbh | Method for operating an internal combustion engine, especially of an automobile |
| WO2003106830A1 (de) * | 2002-06-17 | 2003-12-24 | Siemens Aktiengesellschaft | Betriebsverfahren für eine recheneinheit |
| JP2019214977A (ja) * | 2018-06-13 | 2019-12-19 | 株式会社デンソー | 車載制御装置 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH0552707A (ja) | 多気筒内燃機関の失火検出装置 | |
| EP0096869B1 (en) | Method and apparatus of ignition timing control | |
| US5759133A (en) | Method and engine control for suppressing vibration of the drive train in a motor vehicle | |
| JPH0435614B2 (ja) | ||
| JPH0763108A (ja) | 内燃機関の電子制御装置 | |
| JP3325040B2 (ja) | 電子スロットル制御機構 | |
| JPH06173837A (ja) | 内燃機関用の衝撃振動減衰方法 | |
| JPH0286943A (ja) | エンジン制御装置 | |
| JPH0535259B2 (ja) | ||
| JPH0134302B2 (ja) | ||
| JP2627838B2 (ja) | 内燃機関の電子制御燃料噴射装置 | |
| JP2754746B2 (ja) | 内燃機関の燃料噴射量制御装置 | |
| JP2741341B2 (ja) | 機関の回転数制御装置 | |
| JP2679243B2 (ja) | 車両のサージング防止装置 | |
| JPH01106934A (ja) | 内燃機関の空燃比制御装置 | |
| JP3104526B2 (ja) | 内燃機関の点火時期制御装置およびその制御方法 | |
| JP2917564B2 (ja) | 内燃機関の燃料噴射制御装置 | |
| JP3281574B2 (ja) | 内燃機関のノック検出方法 | |
| JPH0647984B2 (ja) | エンジンの点火時期制御装置 | |
| JPH0730925Y2 (ja) | 電子制御燃料噴射装置の誤動作防止装置 | |
| JPH01106933A (ja) | 内燃機関の空燃比制御装置 | |
| JPH0342812B2 (ja) | ||
| JPS6166825A (ja) | 内燃機関の加速判定装置 | |
| JP2002202002A (ja) | 自動車用制御装置 | |
| JPH0783104A (ja) | 点火時期制御方法 |