JPH10122031A - エンジン回転数算出装置及びエンジンの気筒別失火検出装置 - Google Patents

エンジン回転数算出装置及びエンジンの気筒別失火検出装置

Info

Publication number
JPH10122031A
JPH10122031A JP28097996A JP28097996A JPH10122031A JP H10122031 A JPH10122031 A JP H10122031A JP 28097996 A JP28097996 A JP 28097996A JP 28097996 A JP28097996 A JP 28097996A JP H10122031 A JPH10122031 A JP H10122031A
Authority
JP
Japan
Prior art keywords
section
correction value
crank angle
rotation
interval time
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.)
Granted
Application number
JP28097996A
Other languages
English (en)
Other versions
JP3963984B2 (ja
Inventor
Masaaki Aihara
正明 相原
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.)
Subaru Corp
Original Assignee
Fuji Heavy Industries Ltd
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 Fuji Heavy Industries Ltd filed Critical Fuji Heavy Industries Ltd
Priority to JP28097996A priority Critical patent/JP3963984B2/ja
Publication of JPH10122031A publication Critical patent/JPH10122031A/ja
Application granted granted Critical
Publication of JP3963984B2 publication Critical patent/JP3963984B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Combined Controls Of Internal Combustion Engines (AREA)
  • Electrical Control Of Air Or Fuel Supplied To Internal-Combustion Engine (AREA)

Abstract

(57)【要約】 (修正有) 【課題】クランクロータに設けた特定クランク角区間を
示す突起間の設計角度に対する製造誤差を修正して、こ
の区間平均回転数に基づき失火発生の有無を気筒毎に診
断する。 【解決手段】ロータの突起間の設計角度に対する製造誤
差を修正する角度補正値KMFを、今回と前回のエンジ
ン1/2回転の間隔時間(T180#i+T180#i-1)、
特定クランク角(θK)、特定クランク角区間の間隔時
間(MTX#i)から算出し(S202)、この角度補正値KM
Fを加重平均処理して得た回転補正値KMF12,KMF
34をテーブルに格納する(S205,S207)。その後クランク
角区間毎のクランクパルス入力間隔時間を回転補正値K
MF12,KMF34で補正して設計角度に対応する真の間
隔時間を算出し、真の間隔時間に基づき区間平均回転数
を算出し、次いで前回算出した区間平均回転数と、その
前後の区間平均回転数との変化量から前回算出した区間
平均回転数に係る気筒の失火の有無を判別する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、エンジンと同期回
転するロータに設けた気筒毎の特定クランク角区間を表
示する角度表示部の間隔時間から区間平均回転数を算出
し、或いは該区間平均回転数の変化量から失火を気筒別
に判定するエンジン回転数算出装置及びエンジンの気筒
別失火検出装置に関する。
【0002】
【従来の技術】一般に、多気筒エンジンにおける燃焼は
毎サイクル同一過程を経て行われることが、安定した出
力を得る上で理想であるが、多気筒エンジンにおいては
吸気管形状の複雑化、気筒間の吸気干渉などによる吸気
分配率の不均一化、冷却順路によって生じる各気筒間の
若干の燃焼温度の相違、各気筒の燃焼室容積、ピストン
形状などの製造上のばらつき等の相乗的作用により気筒
毎の燃焼にばらつきが生じ易い。
【0003】従来、この気筒間の燃焼変動は、気筒別の
空燃比制御、点火時期制御等で最小限に抑制されている
が、最近の高出力、低燃費化の傾向にある高性能エンジ
ンでは、インジェクタ、点火プラグ等の劣化の進行度合
い、或いは故障等で断続的な失火が発生し易く、失火の
発生により気筒間の燃焼変動が大きくなり、出力の低下
を招く。
【0004】そこで、本出願人は、特開平4−1712
50号公報において、4気筒エンジンの各気筒の燃焼に
よる仕事をしていない区間、すなわち燃焼終了気筒と次
の燃焼開始気筒との間の特定のクランク角区間の区間平
均回転数を算出し、1燃焼行程前に算出した区間平均回
転数と、その前後に算出した区間平均回転数の平均値と
の差回転を算出し、該差回転と失火レベル判定値とを比
較して1燃焼行程前気筒の失火状態を判定する技術を提
案した。
【0005】ところで、上記特定クランク角区間は、ク
ランクシャフトに軸着したクランクロータの外周に形成
した突起(或いはスリット)によって始まりと終わりと
が設定されており、この突起(或いはスリット)をクラ
ンク角センサにて検出したときに出力される信号(クラ
ンクパルス)の入力間隔時間に基づいて上記区間平均回
転数が算出されるため、クランク角区間を表示する突起
(或いはスリット)の開き角にばらつきがあると、クラ
ンク角区間ごとに算出する区間平均回転数に誤差が生
じ、この誤差が見かけ上、回転変動因子として取り込ま
れてしまい、失火判定を精度良く行うことができなくな
る。
【0006】そのため、本出願人は、特開平6−423
97号公報において、上記差回転を統計処理して、クラ
ンクロータに形成した特定クランク角区間の始まりと終
わりとに対応する突起(或いはスリット)の製造上のば
らつきによって生じる回転変動因子を補正して、補正後
差回転を求め、この補正後差回転の変化に基づいて失火
を判定する技術を提案した。
【0007】
【発明が解決しようとする課題】しかし、例えば図21
(a)に示すように、4気筒エンジンにおいてクランク
ロータの周囲に各気筒の圧縮上死点(TDC)を基準と
して、圧縮上死点前(BTDC)θ1,θ2,θ3の位置
に突起を形成し、各突起の位置がθ1=97°、θ2=6
5°、θ3=10°で、これらの製造公差が±0.25°の
場合、クランク角区間θ2−θ3(開き角55°)の製造
誤差は±0.5°となる。上記先行例では、クランク角区
間θ2−θ3の間隔時間から区間平均回転数を算出してお
り、点火順序を#1→#3→#2→#4とし、#1,#
2気筒側のクランク角区間θ2−θ3が55°+0.5°、#
3,#4気筒側のクランク角区間θ2−θ3が55°−0.
5°の最大公差で製造された場合、各クランク角区間θ2
−θ3における実際の角速度がほぼ同じで、且つ失火す
ることなく定速運転している状態のときの真の平均回転
数が6000rpmのとき、#1,#2気筒側のクラン
ク角区間θ2−θ3で計測した区間平均回転数は6054
rpm、#3,#4気筒側のクランク角区間θ2−θ3で
計測した区間平均回転数は5945rpmとなる。
【0008】特開平4−171250号公報では、図2
1(b)において、今回算出した区間平均回転数が#3
気筒の燃焼終了後の区間平均回転数N#3とした場合、1
燃焼行程前の区間平均回転数がN#1、2燃焼行程前の区
間平均回転数がN#4であり、1燃焼行程前の差回転ΔN
は、 ΔN=N#1−(N#4+N#3)/2 =5945−(6054+6054)/2 =−109(rpm) となり、−109(rpm)の検出誤差が生じる。
【0009】一方、特開平6−42397号公報で算出
する補正後差回転変化DDNEA#3は、DELNA#3,
DELNA#1を補正後差回転とすると、 DDNEA#3=DELNA#3−DELNA#1 但し、補正後差回転DELNA#3,DELNA#1は差回
転DELNE#3,DELNE#1から、この差回転DEL
NE#3,DELNE#1を統計処理して気筒毎に算出した
差回転補正値AVEDNO#3,AVEDNO#1を減算して
求めたものである(DELNA#i=DELNE#i−AV
EDNO#i)。
【0010】尚、差回転DELNE#3はクランク角区間
θ2−θ3の区間平均回転数N#3,N#1の差回転、DEL
NE#1は同様にクランク角区間θ2−θ3の区間平均回転
数N#1,N#4の差回転であり、エンジンが失火を伴わず
に一定速で高速回転している場合には、上記差回転DE
LNE#3,DELNE#1と上記補正後差回転DELNA
#3,DELNA#1とが近似し(上記統計処理して気筒毎
に算出する上記差回転補正値AVEDNO#3、AVED
NO#1は無視できるものとする)、したがって、 となり、補正後差回転変化DDNEA#3,DDNEA#1
が +218(rpm),−218(rpm)とそれぞれ誤検出さ
れてしまう。その結果、図22に示すように、縦軸に補
正後差回転(rpm)、横軸に1目盛り(1Div)を1サイク
ル(720゜CA)として表した場合、クランク角区間θ2
−θ3で検出した区間平均回転数基づいて算出した気筒
毎の補正後差回転DELNA#iが、見かけ上、大きく変
動したように誤検出されてしまう。
【0011】このように、上記先行例では、クランクロ
ータの特定クランク角区間の始まりと終わりに形成した
突起の開き角が寸法公差内で製造されていたとしても、
特に高速回転域では真の区間平均回転数に対して実際に
計測した区間平均回転数が大きな誤差を生じ、しかも、
高速回転域では運動エネルギが大きいため失火発生時の
運動変化量が相対的に小さく、計測した区間平均回転数
の誤差分と、失火によって生じる運動変化量とを明確に
峻別することが困難で、失火判定精度を高めるには限界
がある。
【0012】又、特開平6−42398号公報には、該
当気筒の差回転DELNE#iと全気筒差回転加重平均値
AVEDNとの差を加重平均して得た前回の該当気筒の
気筒別差回転加重平均値AVEDN#iOLDを、該当気筒
の差回転DELNE#iから減算して補正後差回転DEL
NA#iを求め、この補正後差回転DELNA#iに基づき
該当気筒の失火判定を行うことで、クランクロータに形
成した突起(或いはスリット)の位置及び形状等の製造
誤差を排除し、失火の有無を気筒毎に正確に検出する技
術が開示されている。
【0013】しかし、この先行例では、全気筒の差回転
を加重平均した全気筒差回転加重平均値と該当気筒の差
回転との差を更に加重平均によりなまし処理した気筒別
差回転加重平均を用いて該当気筒の差回転を補正してい
るため、間接的な補正であり、且つ、2重のなまし処理
による加重平均により補正を行うため、補正遅れを生
じ、特に、製造誤差などに起因するクランクロータの突
起間の角度誤差による影響を確実に排除することはでき
ない。
【0014】本発明は、上記事情に鑑み、低回転域は勿
論のこと、高回転域においても、各気筒の燃焼のばらつ
きの影響を受けることなく、ロータに設けた気筒毎の特
定クランク角区間を表示する角度表示部の開き角のばら
つきによる区間平均回転数の検出誤差を排除し、正確な
区間平均回転数を算出することができると共に、失火の
有無を気筒毎に正確に検出することのできるエンジン回
転数算出装置及びエンジンの気筒別失火検出装置を提供
することを目的とする。
【0015】
【課題を解決するための手段】上記目的を達成するため
本発明による第1のエンジン回転数算出装置は、エンジ
ンと同期回転するロータに、少なくとも気筒毎の特定ク
ランク角区間を表示する角度表示部を設け、該角度表示
部を検出したクランク角検出手段からの信号に基づきエ
ンジン1回転の間隔時間と特定クランク角区間の間隔時
間とを算出し、この両間隔時間の比から上記クランク角
区間の設計角度に対する角度補正値を算出する手段と、
上記角度補正値を加重平均処理して回転補正値を算出す
る手段と、上記回転補正値で上記特定クランク角区間の
間隔時間を補正して補正間隔時間を算出する手段と、こ
の補正間隔時間に基づき区間平均回転数を算出する手段
とを備えることを特徴とする。
【0016】本発明による第2のエンジン回転数算出装
置は、エンジンと同期回転するロータに、少なくとも気
筒毎の特定クランク角区間を表示する角度表示部を設
け、該角度表示部を検出したクランク角検出手段からの
信号に基づき2カ所以上の特定クランク角区間の間隔時
間を算出し、この各間隔時間のひとつを基準間隔時間と
し、該基準間隔時間と他のクランク角区間の間隔時間と
の比から相対的な角度補正値を算出する手段と、上記角
度補正値を加重平均処理して回転補正値を算出する手段
と、上記回転補正値で上記特定クランク角区間の間隔時
間を補正して補正間隔時間を算出する手段と、この補正
間隔時間に基づき対応するクランク角区間毎の区間平均
回転数を算出する手段とを備えることを特徴とする。
【0017】本発明による第3のエンジン回転数算出装
置は、前記第1のエンジン回転数算出装置或いは前記第
2のエンジンの回転数算出装置において、前記回転補正
値が燃料カット時に算出されることを特徴とする。
【0018】本発明による第4のエンジン回転数算出装
置は、前記第1のエンジン回転数算出装置或いは前記第
2のエンジンの回転数算出装置において、前記回転補正
値をエンジン回転数をパラメータとして領域別に格納す
ることを特徴とする。
【0019】本発明による第5のエンジン回転数算出装
置は、前記第1のエンジン回転数算出装置或いは前記第
2のエンジンの回転数算出装置において、前記回転補正
値をエンジン回転数をパラメータとして領域別に格納す
るテーブルを備え、上記テーブルの全領域が初期化され
ているときは最初に算出された回転補正値を上記テーブ
ルの全領域に格納することを特徴とする。
【0020】本発明による第6のエンジン回転数算出装
置は、前記第1のエンジン回転数算出装置或いは前記第
2のエンジンの回転数算出装置において、前記回転補正
値をエンジン回転数をパラメータとして領域別に格納す
るテーブルを備えると共に、上記テーブルの各領域がエ
ンジン回転域毎に一定のグループに区分され、上記テー
ブルの全領域が初期化されているときは最初に算出され
た回転補正値を上記テーブルの全領域に格納し、又上記
テーブルの全領域に同一の回転補正値が格納された後、
該テーブルの各グループ内の領域が更新されていないと
きは、エンジン回転数をパラメータとして特定した該当
グループ内の領域を当該回転補正値で更新することを特
徴とする。
【0021】本発明による第1のエンジンの気筒別失火
検出装置は、エンジンと同期回転するロータに、少なく
とも気筒毎の特定クランク角区間を表示する角度表示部
を設け、該角度表示部を検出したクランク角検出手段か
らの信号に基づきエンジン1回転の間隔時間と特定クラ
ンク角区間の間隔時間とを算出し、この両間隔時間の比
から上記クランク角区間の設計角度に対する角度補正値
を算出する手段と、上記角度補正値を加重平均処理して
回転補正値を算出する手段と、上記回転補正値で上記特
定クランク角区間の間隔時間を補正して補正間隔時間を
算出する手段と、この補正間隔時間に基づき区間平均回
転数を算出する手段と、前回算出した区間平均回転数と
今回算出した区間平均回転数及び前々回算出した区間平
均回転数との変化量に基づき前回算出した区間平均回転
数に対応する気筒の失火を判定する手段とを備えること
を特徴とする。
【0022】本発明による第2のエンジンの気筒別失火
検出装置は、エンジンと同期回転するロータに、少なく
とも気筒毎の特定クランク角区間を表示する角度表示部
を設け、該角度表示部を検出したクランク角検出手段か
らの信号に基づき2カ所以上の特定クランク角区間の間
隔時間を算出し、この各間隔時間のひとつを基準間隔時
間とし、該基準間隔時間と他のクランク角区間の間隔時
間との比から相対的な角度補正値を算出する手段と、上
記角度補正値を加重平均処理して回転補正値を算出する
手段と、上記回転補正値で上記特定クランク角区間の間
隔時間を補正して補正間隔時間を算出する手段と、この
補正間隔時間に基づき対応するクランク角区間毎の区間
平均回転数を算出する手段と、前回算出した区間平均回
転数と今回算出した区間平均回転数及び前々回算出した
区間平均回転数との変化量に基づき前回算出した区間平
均回転数に対応する気筒の失火を判定する手段とを備え
ることを特徴とする。
【0023】本発明による第1のエンジン回転数算出装
置では、エンジン運転時、該エンジンに同期して回転す
るロータに設けた気筒毎の特定クランク角区間を表示す
る角度表示部をクランク角検出手段にて検出すると、該
クランク角検出手段から上記角度表示部に対応する信号
が出力され、この信号に基づき上記クランク角区間の間
隔時間とエンジン1回転の間隔時間とを算出し、この両
間隔時間の比から上記クランク角区間の設計角度に対す
る角度補正値を算出し、この角度補正値を加重平均処理
して回転補正値を算出し、この回転補正値で当該特定ク
ランク角区間の間隔時間を補正して補正間隔時間を算出
し、この補正間隔時間に基づいて当該特定クランク角区
間の区間平均回転数を算出する。
【0024】本発明による第2のエンジン回転数算出装
置では、エンジン運転時、該エンジンに同期して回転す
るロータに設けた気筒毎の特定クランク角区間を表示す
る角度表示部をクランク角検出手段にて検出すると、該
クランク角検出手段から上記角度表示部に対応する信号
が出力され、この信号に基づき上記各クランク角区間の
間隔時間を算出し、ひとつの間隔時間を基準間隔時間と
して該基準間隔時間と他のクランク角区間の間隔時間と
の比から、基準となるクランク角区間に対する他のクラ
ンク角区間の相対的な角度補正値を算出し、この角度補
正値を加重平均処理して回転補正値を算出し、この回転
補正値で他の特定クランク角区間の間隔時間を補正して
補正間隔時間を算出し、この補正間隔時間に基づいて当
該特定クランク角区間の区間平均回転数を算出する。
【0025】本発明による第3のエンジン回転数算出装
置では、前記第1のエンジン回転数算出装置、或いは前
記第2のエンジン回転数算出装置において、前記回転補
正値を燃料カット時に算出することで、燃焼のばらつき
の影響を受けずに回転補正値を設定することが可能にな
る。
【0026】本発明による第4のエンジン回転数算出装
置では、前記第1のエンジン回転数算出装置、或いは前
記第2のエンジン回転数算出装置において、前記回転補
正値をエンジン回転数をパラメータとして区画される領
域に格納することで、エンジン回転数毎の回転補正値で
前記間隔時間を補正することが可能となる。
【0027】本発明による第5のエンジン回転数算出装
置では、前記第1のエンジン回転数算出装置、或いは前
記第2のエンジン回転数算出装置において、前記回転補
正値をエンジン回転数をパラメータとして格納する全て
の領域が初期化されているときは最初に算出した回転補
正値を上記テーブルの全領域に格納することで、その
後、エンジン回転数領域が変化した場合であっても、対
応する間隔時間を上記回転補正値で補正することが可能
になる。
【0028】本発明による第6のエンジン回転数算出装
置では、前記第1のエンジン回転数算出装置、或いは前
記第2のエンジン回転数算出装置において、前記回転補
正値をエンジン回転数をパラメータとして格納するテー
ブルをエンジン運転域毎に一定のグループに区分し、上
記テーブルの各領域が初期化されているときは最初に算
出した回転補正値を上記テーブルの全領域に格納し、上
記テーブルの全領域に同一の回転補正値が格納された
後、エンジン回転数をパラメータとして特定する回転補
正値を格納する領域が属するグループの全領域が更新さ
れていないときは、今回算出した回転補正値でグループ
内の全領域を更新する。
【0029】本発明による第1のエンジンの気筒別失火
検出装置では、エンジン運転時、該エンジンに同期して
回転するロータに設けた気筒毎の特定クランク角区間を
表示する角度表示部をクランク角検出手段にて検出する
と、該クランク角検出手段から上記角度表示部に対応す
る信号が出力され、この信号に基づき上記クランク角区
間の間隔時間とエンジン1回転の間隔時間とを算出し、
この両間隔時間の比から上記クランク角区間の設計角度
に対する角度補正値を算出し、この角度補正値を加重平
均処理して回転補正値を算出し、この回転補正値で当該
特定クランク角区間の間隔時間を補正して補正間隔時間
を算出し、この補正間隔時間に基づいて当該特定クラン
ク角区間の区間平均回転数を算出する。次いで、前回算
出した区間平均回転数を、その両隣の前々回算出した区
間平均回転数及び今回算出した区間平均回転数と比較
し、その変化量から上記前回算出した区間平均回転数に
対応する気筒が失火したか否かを判定する。
【0030】本発明による第2のエンジンの気筒別失火
判別装置は、エンジン運転時、該エンジンに同期して回
転するロータに設けた気筒毎の特定クランク角区間を表
示する角度表示部をクランク角検出手段にて検出する
と、該クランク角検出手段から上記角度表示部に対応す
る信号が出力され、この信号に基づき上記各クランク角
区間の間隔時間を算出し、該間隔時間のひとつを基準間
隔時間として該基準間隔時間と他のクランク角区間の間
隔時間との比から、基準となるクランク角区間に対する
他のクランク角区間の相対的な角度補正値を算出し、こ
の角度補正値を加重平均処理して回転補正値を算出し、
この回転補正値で他の特定クランク角区間の間隔時間を
補正して補正間隔時間を算出し、この補正間隔時間に基
づいて当該特定クランク角区間の区間平均回転数を算出
する。次いで、前回算出した区間平均回転数を、その両
隣の前々回算出した区間平均回転数及び今回算出した区
間平均回転数と比較し、その変化量から上記前回算出し
た区間平均回転数に対応する気筒が失火したか否かを判
定する。
【0031】
【発明の実施の形態】以下、図面に基づいて本発明の一
実施の形態を説明する。図1〜図18に本発明の第1実
施の形態を示す。図11の符号1はエンジンで、図にお
いては水平対向型4気筒エンジンを示す。このエンジン
1のシリンダヘッド2に形成された各吸気ポート2aに
吸気マニホールド3が連通され、この吸気マニホールド
3に各気筒の吸気通路が集合するエアチャンバ4を介し
てスロットルチャンバ5、吸気管6が連通され、この吸
気管6の吸入空気取り入れ口側にエアクリーナ7が取り
付けられている。
【0032】又、上記吸気管6のエアクリーナ7の直下
流に、ホットワイヤ式等の吸入空気量センサ8が介装さ
れ、さらに、上記スロットルチャンバ5に設けられたス
ロットル弁5aに、スロットル開度に応じた電圧を出力
するスロットル開度センサ9aとスロットル弁全閉でO
Nするアイドル接点を有するアイドルスイッチ9bとが
組み込まれたスロットルセンサ9が連設されている。
【0033】又、上記スロットル弁5aをバイパスし
て、その上流側と下流側とを連通するバイパス通路10
に、ISC(アイドル回転数制御)弁11が介装されて
いる。さらに、上記吸気マニホールド3の各気筒の各吸
気ポート2a直上流側にインジェクタ14が臨まされ、
上記シリンダヘッド2には、先端を燃焼室に露呈する点
火プラグ15aが各気筒毎に取り付けられている。各点
火プラグ15aには点火コイル15bがそれぞれ連設さ
れ、この各点火コイル15bにイグナイタ16が接続さ
れている。
【0034】上記インジェクタ14は、燃料供給路17
を介して燃料タンク18に連通されており、この燃料タ
ンク18内にはインタンク式の燃料ホンプ19が設けら
れている。この燃料ポンプ19からの燃料は、上記燃料
供給路17に介装された燃料フィルタ20を経て上記イ
ンジェクタ14及びプレッシャレギュレータ21に圧送
され、プレッシャレギュレータ21から上記燃料タンク
18にリターンされて上記インジェクタ14への燃料圧
力が所定の圧力に調圧される。
【0035】又、エンジン1のシリンダブロック1aに
ノックセンサ22が取り付けられると共に、シリンダブ
ロック1aの左右バンクを連通する冷却水通路23に冷
却水温センサ24が臨まされている。さらに、上記シリ
ンダヘッド2の排気ポート2bに連通する排気マニホー
ルド25の集合部にO2センサ26が配設され、その下
流に触媒コンバータ27が介装されている。
【0036】又、上記シリンダブロック1aに支承され
たクランクシャフト1bに、クランクロータ28が軸着
され、このクランクロータ28の外周に、所定のクラン
ク角に対応する突起を検出する電磁ピックアップ等から
なるクランク角センサ29が対設され、さらに、上記ク
ランクシャフト1bに対して1/2回転するカムシャフ
ト1cに連設されたカムロータ30に、電磁ピックアッ
プ等からなる気筒判別用のカム角センサ31が対設され
ている。
【0037】本実施の形態によるエンジン1の点火順序
は#1→#3→#2→#4であり、図12に示すよう
に、#1,#2気筒の圧縮上死点(TDC#1,#2)
が同位相であり、#3,#4気筒の圧縮上死点(TDC
#3,#4)が同位相となる。この#1,#2気筒の圧
縮上死点(TDC#1,#2)と、#3,#4気筒の圧
縮上死点(TDC#3,#4)とが互いに対向され、ク
ランクロータ28の外周には、各圧縮上死点(TDC#
1,#2、TDC#3,#4)を基準として、回転方向
に、角度表示部としての突起(或いはスリット)28
a,28b,28c(28a’,28b’,28c’)
が、圧縮上死点前(BTDC)θ1a,θ2a,θ3a(θ1
b,θ2b,θ3b)の位置にそれぞれ形成されている。
【0038】又、図13に示すように、上記カムロータ
30の外周に気筒判別用突起(或いはスリット)30
a,30b,30cが形成されている。突起30aが#
3,#4気筒の圧縮上死点後(ATDC)θ4の位置に
形成され、又突起30bが3個の突起で形成され、その
最初の突起が#1気筒の圧縮上死点後(ATDC)θ5
の位置に形成されている。更に、突起30cが2個の突
起で形成され、その最初の突起が#2気筒の圧縮上死点
後(ATDC)θ6の位置に形成されている。
【0039】尚、本実施の形態では、θ1a,θ1b=97
゜CA(CAはクランク角度)、θ2a,θ2b=65゜CA、θ3
a,θ3b=10゜CA、θ4=20゜CA、θ5=5゜CA、θ6=
20゜CAに設定されている。従って、クランク角区間θ2
a−θ3aの開き角θ12、及びクランク角区間θ2b−θ3b
の開き角θ34は、設計上、55゜CAになる。
【0040】図10に示すように、後述する電子制御装
置(ECU)40では、クランク角区間θ2a−θ3a(或
いはθ2b−θ3b)のクランクパルスの入力間隔時間から
失火判定用の区間平均回転数MNX#iを算出し、又、特
定突起間のクランクパルス入力間隔時間から燃料噴射制
御、或いは点火時期制御等の各制御系で読込まれるエン
ジン回転数Neが算出される。尚、θ2a,θ2bが点火時
期ADVをカウントする際の基準クランク角に設定され
ている。又、各カムパルスがクランクパルスと重複しな
い位置に割り込まれ、割り込まれたカムパルスの個数と
発生位置から気筒判別を行う。上記クランク角区間θ2a
−θ3a(或いはθ2b−θ3b)は、本実施の形態ではBT
DC65−10゜CA区間であり、既に燃焼を終了した気
筒とこれから燃焼を開始する気筒との間の燃焼により仕
事を行わない区間であり、換言すれば、このクランク角
区間θ2a−θ3a(或いはθ2b−θ3b)は、既に燃焼を終
了した気筒の燃焼の影響を受けにくいため、このクラン
ク角区間θ2a−θ3a(或いはθ2b−θ3b)の回転変動か
ら失火を判定することができる。
【0041】図14に示すように、上記電子制御装置4
0は、CPU41、ROM42、RAM43、バックア
ップRAM43、カウンタ・タイマ群45、及びI/O
インターフェース46がバスライン47を介して互いに
接続されるマイクロコンピュータを中心として構成され
ており、その他、安定化電圧を各部に供給する定電圧回
路48、上記I/Oインターフェース46の出力ポート
からの信号によりアクチュエータ類を駆動する駆動回路
49、及びセンサ類からのアナログ信号をデジタル信号
に変換するA/D変換器50等の周辺回路が組み込まれ
ている。
【0042】尚、上記カウンタ・タイマ群45は、フリ
ーランカウンタ、カム角センサ信号の入力計数用カウン
タ等の各種タイマ、燃料噴射用タイマ、点火用タイマ、
定期割込みを発生させるための定期割込み用タイマ、ク
ランク角センサ出力信号の入力間隔計数用タイマ、及び
システム異常監視用ウォッチドッグタイマ等の各種タイ
マを便宜上総称するもので、上記マイクロコンピュータ
においては、その他、各種のソフトウェアカウンタ・タ
イマが用いられる。
【0043】上記定電圧回路48は、電源リレー51の
リレー接点を介してバッテリ52に接続されており、電
源リレー51のリレーコイルがイグニッションスイッチ
53を介して上記バッテリ52に接続されている。又、
上記バッテリ52に燃料ポンプ19が燃料ポンプリレー
54のリレー接点を介して接続されている。又、上記定
電圧回路48は、上記イグニッションスイッチ53がO
Nされ、上記電源リレー51の接点が閉となったとき、
上記バッテリ52の電圧を安定化して電子制御装置40
の各部に供給する。さらに、上記バックアップRAM4
3には、バッテリ52が上記定電圧回路48を介して直
接接続されており、上記イグニッションスイッチ53の
ON/OFFに拘らず常時バックアップ用電源が供給さ
れる。
【0044】又、上記I/Oインターフェース46の入
力ポートには、車速センサ32、スタータスイッチ3
3、アイドルスイッチ9b、ノックセンサ22、クラン
ク角センサ29、及びカム角センサ31が接続されると
共に、吸入空気量センサ8、スロットル開度センサ9
a、冷却水温センサ24、O2センサ26がA/D変換
器50を介して接続され、更に、このA/D変換器50
に上記バッテリ52の端子電圧VBが入力されてモニタ
される。
【0045】一方、上記I/Oインターフェース46の
出力ポートには、イグナイタ16が接続され、更に、上
記駆動回路49を介してISC弁11、インジェクタ1
4及び、図示しないインストルメントパネルに配設さ
れ、各種警報を集中して表示するCHECK ENGINEランプ3
4が接続されていると共に、燃料ポンプリレー54のリ
レーコイルの一端が接続され、又、このリレーコイルの
他端が上記イグニッションスイッチ53に接続されてい
る。
【0046】上記ROM42には、エンジン制御プログ
ラムや各種の故障診断プログラム、マップ類等の固定デ
ータが記憶されており、また、上記RAM43には、上
記各センサ類、スイッチ類の出力信号を処理した後のデ
ータ、及び上記CPU41で演算処理したデータがスト
アされる。また、上記バックアップRAM43には、各
種学習マップ、制御用データ、自己診断機能により検出
した故障部位に対応するトラブルデータ等がストアさ
れ、上記イグニッションスイッチ53がOFFのときに
もデータが保持される。
【0047】上記CPU41では、ROM42に記憶さ
れているプログラムに従って、各センサ、及びスイッチ
類からの出力信号に基づき、上記インジェクタ14、上
記点火プラグ15a、及び、ISC弁11に対する制御
量の演算並びに制御信号の出力、すなわち、燃料噴射制
御(空燃比制御)、点火時期制御、アイドル回転数制御
等のエンジン制御を最適に制御すると共に、クランクロ
ータ28の各突起28b,28c間、及び,28b’,
28c’間の製造公差による区間平均回転数の誤差を修
正し、更に、修正後の区間平均回転数に基づき算出した
特定クランク角区間の回転変動から気筒別の失火判定を
行う。そして、失火判定時には上記CHECH ENGINEランプ
34を点灯して運転者に警告すると共に、失火気筒を示
すトラブルデータをバックアップRAM43にストアす
る。
【0048】尚、上記トラブルデータは、電子制御装置
40に対し故障診断用セレクタモニタ(携帯型故障診断
装置)35をコネクタ36を介して接続することで外部
に読み出すことができる。上記故障診断用セレクタモニ
タ35については、本出願人による特公平7−9388
号公報等に詳述されている。
【0049】以下、上記電子制御装置40で実行される
失火判定ルーチンについて、図1〜図7のフローチャー
トに従って説明する。
【0050】イグニッションスイッチ53をONすると
電子制御装置40に電源が投入され、システムがイニシ
ャライズ(各フラグ、及びデータ類のクリア、但し、バ
ックアップRAM43に格納されているトラブルデータ
等のデータは除く)され、その後、エンジンを始動させ
ると、図1〜図2に示す失火診断ルーチンが、クランク
角センサ29から出力されるθ3a(或いはθ3b)のクラ
ンクパルス毎、すなわちエンジン1/2回転毎に実行さ
れる。尚、フローチャート中の#iは、直前に燃焼を終了
した気筒を示している。
【0051】先ず、ステップS101で、前回ルーチン
実行時に得られたクランク角区間θ2a−θ3a(或いは
θ2b−θ3b)の補正間隔時間MTXA#i、区間平均回転
数MNX#i、180゜CAクランクパルス間隔時間T18
0#i、差回転変化量DDNEA#i等の各データを、前回
のデータとして、RAM43のワークエリアにストアす
る(MTXA#i-1←MTXA#i,MNX#i-1←MNX#
i,T180#i-1←T180#i,DDNEA#i-1←DD
NEA#i…)。尚、イグニッションスイッチ53をON
後の最初のルーチン実行時には、各データがクリアされ
ているため、上記ワークエリアには、“0”が格納され
る。
【0052】そして、ステップS102で、これから圧
縮行程を迎える気筒#i+1が、#1,#2気筒か、#
3,#4気筒かをバックアップRAM43の所定アドレ
スに格納されている気筒番号CYLの値を参照して判別
する。図10に示すように、気筒判別は、クランクパル
スと、このクランクパルス間に割り込むカムパルスとに
基づいて判別する。例えば、カムパルスθ5が入力され
た後のクランクパルスが、#3気筒の圧縮上死点前(B
TDC)θ1bのクランク角を示すことが判別でき、
又、カムパルスθ5の後にカムパルスθ4が入力された後
のクランクパルスが、#2気筒のBTDCθ1aのクラン
ク角を示すことが判別できる。同様に、カムパルスθ6
が入力された後のクランクパルスが、#4気筒のBTD
Cθ1bを示すクランク角であり、又、カムパルスθ6の
後にカムパルスθ4が入力された後のクランクパルス
が、#1気筒のBTDCθ1aを示すクランク角であるこ
とが判別できる。そして、これから圧縮上死点を迎える
気筒#i+1の気筒番号(1,3,2,4)がバックアッ
プRAM43の所定アドレスCYLに順次格納される。
従って、例えば、現在実行されている失火診断ルーチン
が#1,#2気筒のBTDCθ3aのカムパルス入力時の
ものである場合、CYL=1、或いはCYL=2であ
り、又、#3,#4気筒のBTDCθ3aのカムパルス入
力時のものである場合、CYL=3、或いはCYL=4
である。
【0053】そして、上記ステップS102で、CYL
<3(#1気筒、或いは#2気筒)と判定したときはス
テップS103へ進み、又、CYL≧3(#3気筒、或
いは#4気筒)と判定したときはステップS104へ進
む。
【0054】ステップS103へ進むと、エンジン回転
数Neを読込み、このエンジン回転数Neをパラメータ
としてテーブルTKMF12を参照して、回転補正値KM
FX12を設定し、ステップS105へ進む。又、ステ
ップS104へ進むと、エンジン回転数Neを読込み、
このエンジン回転数NeをパラメータとしてテーブルT
KMF34を参照して、回転補正値KMFX34を設定
し、ステップS106へ進む。上記回転補正値KMFX
12,KMFX34は後述する回転補正値算出サブルー
チンで算出され、エンジン回転数Neをパラメータとす
るテーブルTKMF12,TKMF34の対応する領域にそ
れぞれ格納される。
【0055】そして、ステップS103からステップS
105へ進むと、次式からクランク角区間θ2a−θ3aの
補正間隔時間MTXA#i(μsec)を算出しステップS
107へ進む。
【0056】 MTXA#i←MTX#i・KMFX12 …(1) 一方、ステップS104からステップS106へ進む
と、次式からクランク角区間θ2b−θ3bの補正間隔時間
MTXA#i(μsec)を算出しステップS107へ進
む。 MTXA#i←MTX#i・KMFX34 …(2) ステップS107では、上記ステップS105或いはス
テップS106で算出した補正間隔時間MTXA#i(μ
sec)に基づき、燃焼行程気筒#iに対応する区間平均
回転数MNX#i(rpm)を次式から算出する。 MNX#i←(60・106)/MTXA#i …(3) 次いで、ステップS108で、上記区間平均回転数MN
X#iから前回算出した区間平均回転数MNX#i-1を減算
して、差回転DELNE#iを算出し(DELNE#i←M
NX#i−MNX#i-1)、ステップS109で、上記差回
転DELNE#iから前回算出した差回転DELNE#i-1
を減算して、差回転変化量DDNEA#iを算出する。 DDNEA#i←DELNE#i−DELNE#i-1 …(4) 尚、上記差回転変化量DDNEA#iは、 DDNEA#i=(MNX#i−MNX#i-1) −(MNX#i-1−MNX#i-2) =(MNX#i+MNX#i-2)−2MNX#i-1 となる。
【0057】すなわち、図10に示すように、例えば燃
焼行程気筒が#3である場合、1燃焼行程前の気筒であ
る#1気筒の区間平均回転数MNX#i-1の2倍と、そ
の両隣の区間平均回転数MNX#i,MNX#i-2との差
が、今回算出した差回転変化量DDNEA#iであり、従
って、後述する単発失火判定サブルーチンにおいて、失
火判定レベルLVLMISと比較されて、失火の有無が
診断されるが、このときの失火判定の対象となる気筒
は、1燃焼行程前気筒#i-1であることが解る。
【0058】ところで、上記ステップS107で算出す
る区間平均回転数MNX#iは、クランク角区間θ2a−θ
3a,θ2b−θ3bの開き角θ12,θ34の製造誤差分のばら
つきを補正して算出されているため、この区間平均回転
数MNX#iと前回算出した区間平均回転数MNX#i-1と
の差から算出する上記差回転DELNE#iは、図15に
示すように、クランクロータ28の製造誤差による回転
数算出誤差を修正した正確な差回転となる。尚、図15
及び、後述する図16、22においては、縦軸の1目盛
りを50回転、横軸の1目盛り(1div)を720°
CAとして、電子制御装置40内で算出した差回転デー
タを示している。
【0059】しかし、図18に示すように、エンジンに
スナッチなどの断続的な回転変動が発生すると、上記差
回転DELNE#iを所定の失火判定レベルと比較するだ
けでは、正確な失火判定は困難であるため、上記ステッ
プS109において、差回転変化量DDNEA#iを求
め、この差回転変化量DDNEA#iにより、その前後の
気筒の差回転の変化を捕らえることで、図16に示すよ
うに、失火発生時のエンジン運転状態に応じてレベルの
変化する差回転DELNE#iに対し、スナッチなどによ
るエンジン回転変動の影響を排除して正確な失火判定が
可能となる。
【0060】その後、上記ステップ110へ進むと、燃
料カット中か否かを判別する。燃料カット条件として
は、例えば、高回転(例えば6500rpm以上)、高車速
(例えば180Km/h以上)、減速走行中等があり、これら
の条件の何れかが満足されたとき燃料カットが実行され
る。そして、燃料カット中のときはステップS111へ
進み、後述する回転補正値算出サブルーチンを実行し、
ステップS115で診断許可フラグFLGDIAGをクリア
して(FLGDIAG←0)、ステップS116へ進む。
【0061】又、燃料噴射が許可されているときはステ
ップS112へ進み、このステップS112,S113
で、基本燃料噴射パルス幅Tpと設定値TpLWER、或い
はエンジン回転数Neと設定回転数NeUPERとを比較し
て診断条件が成立するか否かを判別する。
【0062】そして、Tp≧TpLWER、且つ、Ne<N
eUPERのときは、診断条件成立としてステップ114へ
進み、診断許可フラグFLGDIAGをセットし(FLGDI
AG←1)、一方、Tp<TpLWER、或いは、Ne≧Ne
UPERのときは、診断条件不成立としてステップS115
へ分岐し、診断許可フラグFLGDIAGをクリアして(F
LGDIAG←0)、ステップS116へ進む。。
【0063】そして、上記ステップS116へ進むと、
後述する単発失火診断サブルーチンを実行し、ステップ
S117へ進み、1つ前の燃焼行程気筒#i-1の失火フ
ラグFLGMIS#i-1の値を参照する。この失火フラグ
は、上記ステップS116における単発失火診断におい
て失火と判定されたときセットされるもので、FLGMI
S#i-1=1、すなわち、失火診断対象となる1つ前の燃
焼行程気筒#I-1が失火のときは、ステップS118へ
進み、失火回数のカウント値MISCNT#i-1をカウン
トアップして(MISCNT#i-1←MISCNT#i-1+
1)、ステップS119へ進む。又、上記ステップS1
17で、FLGMIS#i-1=0、すなわち、失火診断対象
となる1つ前の燃焼行程気筒#I-1に失火が発生してい
ないときは、そのままステップS119へ進む。
【0064】そして、ステップS119へ進むと、診断
許可フラグFLGDIAGの値を参照し、FLGDIAG=0の
ときには、ステップS125へジャンプし、FLGDIAG
=1のときには、ステップS120で、失火診断の実行
毎にカウントされるカウント値CRACNTをカウント
アップし(CRACNT←CRACNT+1)、ステッ
プS121で、上記カウント値CRACNTが2000
に達したか否かを判別する。尚、この失火判定ルーチン
は、クランク角センサ29から出力されるθ3a,θ3bの
クランクパルス入力毎、すなわちエンジン1/2回転毎
に実行されるため、CRACNT≧2000のときは、
エンジンが1000回転以上経過した状態を示す。
【0065】そして、CRACNT<2000のときは
ステップS125へジャンプし、又、CRACNT≧2
000のときは、ステップS122へ進み、後述する失
火判定サブルーチンを実行し、ステップS123,S1
24で、それぞれ、カウント値CRACNT、及び全て
の気筒に対する失火回数のカウント値MISCNT#1〜
#4をクリアして(CRACNT←0、MISCNT#1〜
#4←0)、ステップS125へ進む。ステップS125
では、今回算出した補正間隔時間MTXA#i、区間平均
回転数MNX#i、差回転DELNE#i、差回転変化量D
DENA#iの各データをモニタ用データとしてRAM4
3にセットし、ルーチンを抜ける。
【0066】次に、上記失火判定ルーチンのステップS
111で実行される回転補正値算出サブルーチンについ
て、図3に示すフローチャートに従って説明する。この
ルーチンでは、クランクロータ28に形成されているク
ランク角区間θ2a−θ3a,θ2b−θ3bの始まりと終わり
を表示する突起28b,28c間、及び突起28b’,
28c’間の開き角θ12,θ34の製造誤差による区間平
均回転数の算出誤差を補正する回転補正値KMFX12,
KMFX34を算出する。この回転補正値KMFX12,K
MFX34を燃料カット中に行うのは、以下の理由によ
る。
【0067】燃料噴射中は、各気筒の吸気管形状や吸気
干渉による吸気分配率の不均一、冷却系の影響による燃
焼温度の相違、燃焼室容積やピストン形状の製造誤差に
よる気筒毎の圧縮比のばらつき、燃料噴射弁の製造誤差
による燃料噴射量のばらつき等の相乗作用から燃焼にば
らつきが生じ易く、このような運転条件下でクランクロ
ータ28に形成されている突起28b,28c間、及び
突起28b’,28c’間の開き角θ12,θ34の製造誤
差を推定することは困難である。
【0068】これに対し、燃料カット中は、クランクシ
ャフトの回転が正の運動エネルギとフリクションによる
負の力にのみ依存しているため、燃焼のばらつきの影響
を受け難く、上記回転補正値KMFX12,KMFX34を
高精度に算出することができるからである。
【0069】先ず、ステップS201では、クランク角
区間θ2a−θ3a(或いは,θ2b−θ3b)の180゜CAク
ランクパルス入力間隔時間T180#iを算出し、ステッ
プS202で、上記180゜CAクランク角間隔時間T1
80#iと、ワークエリアにストアされている前回算出し
た180゜CAクランク角間隔時間T180#i-1、及び今
回算出したクランクパルス入力間隔時間MTX#iとに基
づき次式から、角度補正値KFMを算出する。 KFM←θK・{(T180#i+T180#i-1) /MTX#i} …(5) ここで、θKは定数であり、クランク角区間θ2a−θ3a
(或いは、θ2b−θ3b)の設計角度(本実施の形態では
55゜CA)とエンジン1回転(360゜CA)との比(55
゜CA/360゜CA)に相当する。
【0070】従って、上記(5)式は、 KFM←{(T180#i+T180#i-1)/360} /{MTX#i/55}…(5’) となり、上記角度補正値KFMがエンジン1回転当たり
の周期と、失火判別に利用するクランク角区間θ2a−θ
3a(或いは、θ2b−θ3b)の周期との比であることが解
る。ここで、周期fは、f=1/ω(ω:角速度)であ
るため、クランク角区間θ2a−θ3a(或いは、θ2b−θ
3b)が誤差なく形成されていれば、上記角度補正値KF
Mは、1.0となる。
【0071】そして、ステップS203で、これから圧
縮行程を迎える気筒#i+1が、#1,#2気筒か、#
3,#4気筒かをバックアップRAM43の所定アドレ
スに格納されている気筒番号CYLの値を参照して判別
し、CYL<3(#1気筒、或いは#2気筒)と判定し
たときはステップS204へ進み、上記角度補正値KM
Fを次式に基づき加重平均処理して、回転補正値KMF
X12を算出する。 KFMX12←{KMFX12OLD ・(2n-1)+KMF}/2n …(6) そして、ステップS205で、後述するθ2a−θ3a区間
回転補正値更新サブルーチンを実行し、上記回転補正値
KFMX12をエンジン回転数をパラメータとするテー
ブルTKMF12の所定領域に格納し、ルーチンを抜け
る。
【0072】一方、上記ステップS203で、CYL≧
3(#3気筒、或いは#4気筒)と判定したときはステ
ップS206へ進み、上記角度補正値KMFを次式に基
づき加重平均処理して、回転補正値KMFX34を算出
する。
【0073】 KFMX34←{KMFX34OLD ・(2n-1)+KMF}/2n …(7) そして、ステップS207で、後述するθ2b−θ3b区間
回転補正値更新サブルーチンを実行し、上記回転補正値
KFMX34をエンジン回転数をパラメータとするテー
ブルTKMF34の所定領域に格納し、ルーチンを抜け
る。
【0074】図8に示すように、例えばクランクロータ
28のクランク角区間θ2a−θ3aの開き角θ12が製造公
差の上限で製造され、又、クランク角区間θ2b−θ3bの
挟み角θ34が製造公差の下限で製造された場合、上記回
転補正値KMFX12,KMFX34は、図の一点鎖線で示
すように、理論的にはエンジン回転数に影響されず常に
一定値を示す筈であるが、実際のクランク角区間θ2a−
θ3a(或いは、θ2b−θ3b)の周期とエンジン1回転の
周期との比は、動弁系のフリクションやそれを駆動する
ベルトの共振、ピストン、クランクシャフト等のフリク
ション、ポンピングロス、及び慣性力等の影響により変
化するため、同図に実線で示すように、エンジン回転数
が高くなるに従い、エンジン1回転の周期に対して、ク
ランク角区間θ2a−θ3a(或いは、θ2b−θ3b)の周期
が長くなる、換言すれば、エンジン1回転の角速度に対
してクランク角区間θ2a−θ3a(或いはθ2b−θ3b)の
角速度が遅くなる右下がりの特性を示す。そのため、上
記ステップS205,S207において、上記回転補正
値KMFX12,KMFX34を、図9に示すようなエンジ
ン回転数をパラメータとする16格子のテーブルに格納
し、エンジン特性によって生じる種々の影響を排除す
る。
【0075】上記θ2a−θ3a区間回転補正値更新サブル
ーチン、及びθ2b−θ3b区間回転補正値更新サブルーチ
ンは、図4、図5に示すフローチャートに従って、それ
ぞれ実行される。本実施の形態では、図9に示すよう
に、上記回転補正値KMFX12,KMFX34を格納する
テーブルTKMF12,TKMF34の領域が、エンジン回
転数Neをパラメータとして2000rpm〜6000rpm
の範囲で、250rpm毎に16格子に区画し、更に、各
格子を1000rpm毎の4グループに区分している。
【0076】図4に示すθ2a−θ3a区間回転補正値更新
サブルーチンでは、先ず、ステップS301で、バック
アップRAM43の所定アドレスに格納されている全体
フラグFKMFX120の値を参照する。バッテリ52
や電子制御装置40を一旦取り外し、再度組み込んだ
後、或いは組立工程において上記電子制御装置40にバ
ックアップ電源を供給した後の最初ルーチン実行時に
は、上記バックアップRAM43が初期化されて、全て
のフラグ類がクリアされるため、FKMFX120=0
であり、ステップS302へ進み、テーブルTKMF12
の全格子に今回算出した回転補正値KMFX12を記憶さ
せ、ステップS303で上記全体フラグFKMFX12
0をセットし、ルーチンを抜ける。
【0077】一方、二回目以後のルーチン実行時には、
FKMFX120=1であるため、ステップS301か
らステップS304へ進み、このステップS304〜S
306で、エンジン回転数Neに基づきテーブルTKM
F12の格子の1000rpm毎に区分されているグループ
を判別する。そして、エンジン回転数Neが5000rp
m以上のときは、ステップS304からステップS30
7へ進み、グループ別フラグFKMFX121の値を参
照する。
【0078】FKMFX121=0のときは5000rp
m以上の4格子(図9(a)参照)に対して、初期の回転補
正値KMFX12が記憶されたままの状態であり、ステッ
プS308へ進み、上記5000rpm以上の4格子全て
に回転補正値KMFX12を記憶させ、ステップS309
で、バックアップRAM43に記憶されているグループ
別フラグFKMFX121をセットし、ルーチンを抜け
る。又、FKMFX121=1のときは、ステップS3
10へ進み、エンジン回転数Neに対応する格子に上記
回転補正値KMFX12を記憶させて、ルーチンを抜け
る。
【0079】又、エンジン回転数Neが5000rpm>
Ne≧4000rpmのときは、ステップS305からス
テップS311へ進み、グループ別フラグFKMFX1
22の値を参照する。FKMFX122=0のときは5
000rpm〜4000rpm間の4格子(図9(a)参照)に
対して、初期の回転補正値KMFX12が記憶されたまま
の状態であり、ステップS312へ進み、5000rpm
〜4000rpm間の4格子全てに回転補正値KMFX12
を記憶させ、ステップS313で、バックアップRAM
43に記憶されているグループ別フラグFKMFX12
2をセットし、ルーチンを抜ける。又、FKMFX12
2=1のときは、ステップS314へ進み、エンジン回
転数Neに対応する格子に上記回転補正値KMFX12を
記憶させて、ルーチンを抜ける。
【0080】又、エンジン回転数Neが4000rpm>
Ne≧3000rpmのときは、ステップS306からス
テップS315へ進み、グループ別フラグFKMFX1
23の値を参照する。FKMFX123=0のときは、
4000rpm〜3000rpm間の4格子(図9(a)参照)
に対して、初期の回転補正値KMFX12が記憶されたま
まの状態であり、ステップS316へ進み、4000rp
m〜3000rpm間の4格子全てに回転補正値KMFX12
を記憶させ、ステップS317で、バックアップRAM
43に記憶されているグループ別フラグFKMFX12
3をセットし、ルーチンを抜ける。又、FKMFX12
3=1のときは、ステップS318へ進み、エンジン回
転数Neに対応する格子に上記回転補正値KMFX12を
記憶させて、ルーチンを抜ける。
【0081】又、エンジン回転数Neが、3000>N
eのときはステップS319へ進み、グループ別フラグ
FKMFX124の値を参照する。FKMFX124=
0のときは、3000rpm未満の4格子(図9(a)参照)
に対して、初期の回転補正値KMFX12が記憶されたま
まの状態であり、ステップS320へ進み、3000rp
m未満の4格子全てに、今回算出した回転補正値KMF
X12を記憶させ、ステップS321で、バックアップR
AM43に記憶されているグループ別フラグFKMFX
124をセットし、ルーチンを抜ける。又、FKMFX
124=1のときは、ステップS322へ進み、エンジ
ン回転数Neに対応する格子に上記回転補正値KMFX
12を記憶させて、ルーチンを抜ける。
【0082】又、図5に示すθ2b−θ3b区間回転補正値
更新サブルーチンでは、先ず、ステップS401で、バ
ックアップRAM43の所定アドレスに格納されている
全体フラグFKMFX340の値を参照する。上述と同
様、バッテリ52や電子制御装置40を一旦取り外し、
再度組み込んだ後、或いは組立工程において上記電子制
御装置40にバックアップ電源を供給した後の最初ルー
チン実行時には、上記バックアップRAM43が初期化
されて、全てのフラグ類がクリアされるため、FKMF
X340=0であり、ステップS402へ進み、テーブ
ルTKMF34の全格子に今回算出した回転補正値KMF
X34を記憶させ、ステップS403で上記全体フラグF
KMFX340をセットし、ルーチンを抜ける。
【0083】一方、二回目以後のルーチン実行時には、
FKMF340=1であるため、ステップS401から
ステップS404へ進み、このステップS404〜S4
06で、エンジン回転数Neに基づきテーブルTKMF
34の格子の1000rpm毎に区分けしたグループを判別
する。
【0084】そして、エンジン回転数Neが5000rp
m以上のときは、ステップS404からステップS40
7へ進み、グループ別フラグFKMF341の値を参照
する。FKMF341=0のときは5000rpm以上の
4格子(図9(b)参照)に対して、初期の回転補正値K
MFX34が記憶されたままの状態であり、ステップS4
08へ進み、上記5000rpm以上の4格子全てに、今
回算出した回転補正値KMFX34を記憶させ、ステップ
S409で、バックアップRAM43に記憶されている
グループ別フラグFKMF341をセットし、ルーチン
を抜ける。又、FKMF341=1のときは、ステップ
S410へ進み、エンジン回転数Neに対応する格子に
上記回転補正値KMFX34を記憶させて、ルーチンを抜
ける。
【0085】又、エンジン回転数Neが5000rpm>
Ne≧4000rpmのときは、ステップS405からス
テップS411へ進み、グループ別フラグFKMF34
2の値を参照する。FKMF342=0のときは500
0rpm〜4000rpm間の4格子(図9(b)参照)に対し
て、初期の回転補正値KMFX34が記憶されたままの状
態であり、ステップS412へ進み、5000rpm〜4
000rpm間の4格子全てに回転補正値KMFX34を記
憶させ、ステップS413で、バックアップRAM43
に記憶されているグループ別フラグFKMF342をセ
ットし、ルーチンを抜ける。又、FKMF342=1の
ときは、ステップS414へ進み、エンジン回転数Ne
に対応する格子に上記回転補正値KMFX34を記憶させ
て、ルーチンを抜ける。
【0086】又、エンジン回転数Neが4000rpm>
Ne≧3000rpmのときは、ステップS406からス
テップS415へ進み、グループ別フラグFKMF34
3の値を参照する。FKMF343=0のときは、40
00rpm〜3000rpm間の4格子(図9(b)参照)に対
して、初期の回転補正値KMFX34が記憶されたままの
状態であり、ステップS416へ進み、4000rpm〜
3000rpm間の4格子全てに回転補正値KMFX34を
記憶させ、ステップS417で、バックアップRAM4
3に記憶されているグループ別フラグFKMF343を
セットし、ルーチンを抜ける。又、FKMF343=1
のときは、ステップS418へ進み、エンジン回転数N
eに対応する格子に上記回転補正値KMFX34を記憶さ
せて、ルーチンを抜ける。
【0087】又、エンジン回転数Neが、3000>N
eのときはステップS419へ進み、グループ別フラグ
FKMF344の値を参照する。FKMF344=0の
ときは、3000rpm未満の4格子(図9(b)参照)に対
して、初期の回転補正値KMFX34が記憶されたままの
状態であり、ステップS420へ進み、3000rpm未
満の4格子全てに回転補正値KMFX34を記憶させ、ス
テップS421で、バックアップRAM43に記憶され
ているグループ別フラグFKMF344をセットし、ル
ーチンを抜ける。又、FKMF344=1のときは、ス
テップS422へ進み、エンジン回転数Neに対応する
格子に上記回転補正値KMFX34を記憶させて、ルーチ
ンを抜ける。
【0088】その結果、上記各テーブルTKMF12,T
KMF34に格納されている回転補正値KMFX12,KM
FX34がクリアされた場合であっても、最初のルーチン
実行時に全ての格子に回転補正値KMFX12,KMFX
34が記憶され、次いで、グループ化された複数の格子に
新たな回転補正値KMFX12,KMFX34が格納され、
さらにグループ化された格子に新たな回転補正値KMF
X12,KMFX34が格納されているときは、個別の格子
に新たな回転補正値KMFX12,KMFX34が格納され
るようにしたので、未学習の格子がなく、運転頻度の少
ない回転数域であっても、エンジン回転数Neに対応し
て格納されている回転補正値KMFX12,KMFX34を
用いてクランク角区間θ2a−θ3a,θ2a−θ3aの開き角
θ12,θ34の製造上のばらつきを速やかに補正すること
ができるばかりでなく、各回転補正値KMFX12,KM
FX34を16格子以上に細分化した場合であっても、各
適正補正値への収束性が良くなる。
【0089】尚、上記テーブルTKMF12,TKMF34
が初期化されているときの最初のルーチン実行時に、全
ての格子に対して同一の回転補正値KMFX12,KMF
X34を格納せず、エンジン回転数をパラメータとして該
当する領域に上記回転補正値KMFX12,KMFX34を
格納し、他の領域に対しては、今回算出した角度補正値
KMFの傾向を再現する値を、演算により、或いは、該
回転補正値KMFX12,KMFX34の基準値1.0に対
する偏差をテーブル化し、該テーブルを参照して、他の
領域に格納する回転補正値KMFX12,KMFX34を設
定するようにしても良い。
【0090】次に、上記失火判定ルーチンのステップS
116で実行する単発失火判定サブルーチン、及びステ
ップS122で実行する失火判定サブルーチンについて
説明する。
【0091】上記単発失火判定サブルーチンは、図6に
示すフローチャートに従って実行される。先ず、ステッ
プS501で、診断許可フラグFLGDIAGの値を参照
し、FLGDIAG=0のときには、ステップS506で1
燃焼行程前気筒#i-1に対する失火フラグFLGMIS#i-1
をクリアして(FLGMIS#i-1←0)、ルーチンを抜
け、又、FLGDIAG=1のときには、ステップS502
へ進む。
【0092】ステップS502では、エンジン回転数N
eとエンジン負荷の代表である基本燃料噴射パルス幅T
pとをパラメータとして失火判定レベルマップを補間計
算付きで参照し、エンジン運転状態に応じた失火判定レ
ベルLVLMISを設定し、ステップS503へ進む。
【0093】上記失火判定レベルLVLMISは、図1
7に示すように、基本燃料噴射パルス幅Tpの小さいエ
ンジン低負荷域から基本燃料噴射パルス幅Tpが大きく
なって負荷が増大する程、スライスレベルが上昇するよ
うな値が、ROM42にマップとしてストアされてい
る。
【0094】そして、ステップS502からステップS
503へ進むと、このステップS503、及びステップ
S504で、上記失火判定レベルLVLMISと、RA
M43から読出した燃焼行程気筒#iの差回転変化量D
DNEA#i、1燃焼行程前気筒#i-1の差回転変化量DD
NEA#i-1をそれぞれ比較し、失火判定を行なう。
【0095】先ず、ステップS503では、失火判定レ
ベルLVLMISと燃焼行程気筒#iの差回転変化量D
DNEA#iとを比較し、DDNEA#i<LVLMISの
ときは、前述のステップS506を経てルーチンを抜
け、DDNEA#i≧LVLMISのとき、ステップS5
04で、負の失火判定レベル(−LVLMIS)と上記
1燃焼行程前気筒#i-1の差回転変化量DDNEA#i-1
とを比較する。
【0096】そして、DDNEA#i-1>−LVLMIS
のときには、失火なしと判別して前述のステップS50
6へ分岐し、DDNEA#i-1≦−LVLMISのときに
は、1燃焼行程前気筒#i-1(これから燃焼行程を迎え
る気筒を基準とした場合には、2燃焼行程前気筒)が失
火状態であると判別し、ステップS505へ進み、失火
フラグFLGMIS#i-1をセットして(FLGMIS#i-1←
1)、ルーチンを抜ける。
【0097】すなわち、2燃焼行程前気筒#i-2から1
燃焼行程前気筒#i-1にかけての差回転変化量DDNE
A#i-1が失火判定レベルLVLMIS以下の負の方向に
減少した後、1燃焼行程前気筒#i-1から現在の燃焼行
程気筒#iにかけての差回転変化量DDNEA#iが失火
判定レベルLVLMIS以上の正の方向に増加したとき
にのみ、1燃焼行程前気筒#i-1が失火状態であると判
定することにより、図18に示すように、差回転が所定
時間連続して変化するスナッチなどのエンジン回転変動
と区別し、正確に失火を検出することができる。
【0098】一方、図7に示す失火判定サブルーチンで
は、先ず、ステップS601で、4気筒分の合計失火回
数ΣMISCNTn(n=1〜4)を、前述の失火診断
ルーチンのステップS120でカウントしたカウント値
CRACNT(=2000)で割算して、エンジン10
00回転当りの失火率MISCNT(%)を算出する
(MISCNT←ΣMISCNTn/CRACNT×1
00)。
【0099】次いで、ステップS602へ進み、上記ス
テップS601で算出した失火率MISCNTが設定値
LMSCNT未満かを判別する。この設定値LMSCN
Tは、エンジン回転数Neと基本燃料噴射パルス幅Tp
とをパラメータとして予めROM42にストアされた定
数である。
【0100】上記ステップS602における判別の結
果、MISCNT≧LMSCNTのときには、ステップ
S603で、失火率MISCNTをバックアップRAM
44の所定アドレスにストアし、ステップS604で、
バックアップRAM44の所定アドレスにストアされて
いる1回目失火判定NGフラグFLGNG1の値を参照す
る。
【0101】そして、未だ1回目失火判定NGフラグF
LGNG1がセットされておらずFLGNG1=0のときに
は、ステップS606へジャンプし、又、1回目失火判
定NGフラグFLGNG1がセットされておりFLGNG1=
1のときには、ステップS605へ進んでバックアップ
RAM44の所定アドレスにストアされている2回目失
火判定NGフラグFLGNG2をセットし(FLGNG2←
1)、CHECH ENGINEランプ34を点灯あるいは点滅させ
るなどしてユーザーに警告を発し、ステップS606へ
進む。
【0102】ステップS606では、1回目失火判定N
GフラグFLGNG1をセットし(FLGNG1←1)、ステ
ップS612で、異常なしの判定回数をカウントするた
めの失火OKカウンタをクリアして(CNTOK←0)ル
ーチンを抜ける。
【0103】すなわち、ノイズなどによる誤診断を避け
るため、1回目の判定で失火率MISCNTが設定値L
MSCNT以上となっても、すぐには警告を発せず、2
回目の判定で続けて失火率MISCNTが設定値LMS
CNT以上となった場合に、その気筒は異常であると断
定して警告を発する。
【0104】尚、このとき、バックアップRAM44に
は、失火気筒のトラブルデータがストアされ、ディーラ
におけるトラブルシュートの際に、ECU40のモニタ
ランプの点滅コードあるいはセレクトモニタ35にて上
記バックアップRAM44に記憶されているトラブルデ
ータが読出される。そして、失火気筒が判別されて修理
がなされた後、上記バックアップRAM44のトラブル
データは上記セレクトモニタ35などを介してクリアす
る。
【0105】一方、上記ステップS602で、MISC
NT<LMSCNTのときには異常なしであるため、ス
テップS607で、失火OKカウンタCNTOKをインク
リメントすると(CNTOK←CNTOK+1)、ステップ
S608で、失火OKカウンタCNTOKの値が80回を
越えたかを判別し、CNTOK<80のときは、そのまま
ルーチンを抜け、CNTOK≧80のとき、ステップS6
09,S610,S611で、それぞれ、1回目失火判
定NGフラグFLGNG1、2回目失火判定NGフラグF
LGNG2、失火率MISCNTをクリアすると(FLGN
G1←0、FLGNG2←0、MISCNT←0)、前述の
ステップS612へ進み、失火OKカウンタCNTOKを
クリアして(CNTOK←0)ルーチンを抜ける。
【0106】次に、図19、図20に本発明の第2の実
施の形態を示す。図19は、第1の実施の形態の図3に
代えて採用される回転補正値算出サブルーチンで、図2
0は、図1のステップS103〜S106に代えて採用
される失火診断ルーチンである。
【0107】上記第1の実施の形態では、回転補正値K
MFX12,KMFX34を、失火判別に利用するクランク
角区間θ2a−θ3a、或いはθ2b−θ3bの周期と、エンジ
ン1回転の周期との比から個別に算出してるが、本実施
の形態では、失火判別に利用するクランク角区間が複数
ある場合、あるクランク角区間の角速度を基準とし、こ
の基準となるクランク角区間のクランクパルス入力間隔
時間に対する他のクランク角区間のクランクパルス入力
間隔時間の相対変動から失火を判別するもので、失火を
判定する区間が2カ所の場合には、1つの角度補正値K
MFのみが算出される。尚、本実施の形態では、クラン
ク角区間θ2a−θ3aの区間を基準とし、このクランク角
区間θ2a−θ3aの区間で算出した基準区間平均角速度M
TF12と他のクランク角区間θ2b−θ3bで算出した角速
度MTF34との比から、該クランク角区間θ2b−θ3bの
クランクパルス入力間隔時間MTX34に対する角度補正
値KMFを求める。
【0108】図19に示す回転補正値算出サブルーチン
では、先ず、ステップS701で、最新のクランクパル
ス入力間隔時間MTX12、MTX34に基づき算出した各
クランク角区間θ2a−θ3a,θ2b−θ3bの周期TMF1
2,TMF34の比から、角度補正値KMFを算出する。 KMF←TMF12/TMF34 …(8) 尚、本実施の形態では、各クランク角区間θ2a−θ3a,
θ2b−θ3bの開き角θ12,θ34は、同じ角度(55゜C
A)に設定されているため、上記(8)式は、 KMF←MTX12/MTX34 …(8’) でも良い。
【0109】次いで、ステップS702で、上記補正値
KMFを次式に基づき加重平均処理して、クランク角区
間θ2b−θ3bのクランクバルブ入力間隔時間MTX34を
補正する回転補正値KMFXを算出する。
【0110】 KMFX←{KMFXOLD ・(2n-1)+KMF}/2n …(9) そして、ステップS703で、前記第1の実施の形態の
θ2a−θ3a区間回転補正値更新サブルーチン(或いはθ
2b−θ3b区間回転補正値更新ルーチン)と同様のルーチ
ンを実行して上記回転補正値KFMXをエンジン回転数
をパラメータとするテーブルTKMF12(或いはTKM
F34)の所定領域に格納し、ルーチンを抜ける。
【0111】そして、図20に示す失火診断ルーチンの
ステップS102で、これから圧縮行程を迎える気筒#
i+1を、前記第1の実施の形態と同様、パックアップR
AM43の所定アドレスに格納されている気筒番号CY
Lの値を参照して判別し、#1,#2気筒のときはステ
ップS801へ進み、クランク角区間θ2a−θ3aのクラ
ンクパルス入力間隔時間MTX12を、補正間隔時間MT
XA#iとして、ステップS107へ進む。又、これから
圧縮行程を迎える気筒が#3,#4気筒の場合には、ス
テップS802へ分岐し、エンジン回転数Neを読込
み、このエンジン回転数Neをパラメータとしてテーブ
ルTKMFを参照して、回転補正値KMFXを設定し、
ステップS803で、次式からクランク角区間θ2b−θ
3bの補正間隔時間MTXA#iを算出しステップS107
へ進む。
【0112】 MTXA#i←MTX34・KMFX …(10) そして、ステップS107以降において、前記第1の実
施の形態と同様にルーチンを実行して、失火の有無を気
筒別に診断する。
【0113】この実施の形態によれば、基準となるクラ
ンク角区間のクランクパルス入力間隔時間を基準とし
て、他のクランク角区間のクランクパルス入力間時間を
修正してクランクロータ28のクランク角区間θ2a−θ
3a,θ2b−θ3bの製造誤差に伴う区間平均回転数の算出
誤差を相対的に修正するようにしたので、演算が容易に
なる。
【0114】
【発明の効果】以上、説明したように請求項1記載の発
明によれば、エンジンと同期回転するロータの気筒毎に
対応する特定クランク角区間に設けた角度表示部を検出
して出力されるクランクパルスに基づきエンジン1回転
の間隔時間と特定クランク角区間の間隔時間とを算出
し、この両間隔時間の比から当該特定クランク角区間の
角度補正値を算出し、この角度補正値を加重平均処理し
て回転補正値を算出し、この回転補正値により当該特定
クランク角区間の間隔時間を補正するようにしたので、
上記ロータのクランク角区間毎に設けた角度表示部の開
き角に製造誤差があっても、この製造誤差が排除され
た、設計通りのクランク角区間に対応した真の間隔時間
を求めることができ、従って、この間隔時間に基づいて
正確な区間平均回転数を算出することができる。
【0115】請求項2記載の発明によれば、エンジンと
同期回転するロータの気筒毎に対応する特定クランク角
区間に設けた角度表示部を検出して出力されるクランク
パルスに基づき2カ所以上の特定クランク角区間の間隔
時間を算出し、この各間隔時間の1つを基準間隔時間と
し、この基準間隔時間と他のクランク角区間の間隔時間
との比から、当該クランク角区間の間隔時間を補正する
角度補正値を算出し、この角度補正値を加重平均処理し
て回転補正値を算出し、この回転補正値で補正した間隔
時間に基づいて当該クランク角区間の区間平均回転数を
算出するようにしたので、基準となるクランク角区間の
開き角に対する他のクランク角区間の開き角のばらつき
が相対的に排除され、従って、全クランク角区間の区間
平均回転数が、基準となるクランク角区間の区間平均回
転数を基準とした相対的な値に統一され、該基準区間平
均回転数に対する他の区間平均回転数の相対的な変化量
を一律に検出することが可能となる。
【0116】請求項3記載の発明によれば、上記請求項
1或いは2記載の発明において、前記回転補正値を燃料
カット時に算出することで、気筒間の燃焼によるばらつ
きの影響を排除して正確な回転補正値を求めることがで
きる。
【0117】請求項4記載の発明によれば、上記請求項
1或いは2記載の発明において、前記角度補正値をエン
ジン回転数をパラメータとして領域別に格納するように
したので、高回転域であっても動弁系、及びクランクシ
ャフトなどのフリクション、ポンプピングロス等の影響
による回転変動を排除した正確な値を求めることができ
る。
【0118】請求項5記載の発明によれば、上記請求項
1或いは2記載の発明において、前記回転補正値をエン
ジン回転数をパラメータとしてテーブルに対して領域別
に格納する際に、該テーブルが初期化されているとき
は、最初に算出された回転補正値を上記テーブルの全領
域に格納するようにしたので、テーブルが初期化された
後に運転領域が変化した場合でも、上記回転補正値を利
用してクランク角区間の間隔時間を補正することがで
き、各領域に格納される補正値の適正な値への収束性が
良くなる。
【0119】請求項6記載の発明によれば、上記請求項
1或いは2記載の発明において、前記回転補正値をエン
ジン回転数をパラメータとしてテーブルに対して領域別
に格納する際に、該テーブルが初期化されているとき
は、最初に算出された回転補正値を上記テーブルの全領
域に格納し、その後は、エンジン回転数に基づき、該エ
ンジン回転数毎に一定のグループに区分された領域に上
記回転補正値を格納するようにしたので、学習の機会の
少ない領域であっても適正な回転補正値への収束性が良
くなり、従って、テーブルの領域をより細分化すること
ができ、その分、上記間隔時間をより緻密に補正するこ
とができる。
【0120】請求項7記載の発明によれば、エンジンと
同期回転するロータの気筒毎に対応する特定クランク角
区間に設けた角度表示部を検出して出力されるクランク
パルスに基づきエンジン1回転の間隔時間と特定クラン
ク角区間の間隔時間とを算出し、この両間隔時間の比か
ら当該特定クランク角区間の角度補正値を算出し、この
角度補正値を加重平均して回転補正値を算出し、この回
転補正値により当該特定クランク角区間の間隔時間を補
正するようにしたので、上記ロータのクランク角区間毎
に設けた角度表示部の開き角に製造誤差があっても、こ
の製造誤差が排除された、設計通りのクランク角区間に
対応した真の間隔時間を求めることができ、この真の間
隔時間から算出された区間平均回転数に基づき、失火診
断の対象となる気筒に係わる区間平均回転数と、その両
隣の区間平均回転数との変化量に基づき上記失火診断対
象となる気筒の失火の有無を正確に検出することができ
る。
【0121】請求項8記載の発明によれば、エンジンと
同期回転するロータの気筒毎に対応する特定クランク角
区間に設けた角度表示部を検出して出力されるクランク
パルスに基づき2カ所以上の特定クランク角区間の間隔
時間を算出し、この各間隔時間の1つを基準間隔時間と
し、この基準間隔時間周期と他のクランク角区間の間隔
時間との比から、当該クランク角区間の間隔時間を補正
する角度補正値を算出し、この角度補正値を加重平均処
理して回転補正値を算出し、この回転補正値で補正した
間隔時間に基づいて当該クランク角区間の区間平均回転
数を算出するようにしたので、基準となるクランク角区
間の開き角に対する他のクランク角区間の開き角のばら
つきが相対的に排除され、従って、全クランク角区間の
区間平均回転数が、基準となるクランク角区間の区間平
均回転数にを基準とした相対的な値に統一され、上記ロ
ータのクランク角区間毎に設けた角度表示部の開き角に
製造誤差があっても、各クランク角区間の区間平均回転
数は、この製造誤差によるばらつきが相対的に修正され
た状態で算出される。従って、この区間平均回転数を用
いて、失火診断の対象となる気筒に係わる区間平均回転
数と、その両隣の区間平均回転数との変化量から上記失
火診断対象となる気筒の失火の有無を正確に検出するこ
とができる。
【図面の簡単な説明】
【図1】第1実施の形態による失火診断ルーチンを示す
フローチャート
【図2】同失火診断ルーチンを示すフローチャート(続
き)
【図3】同回転補正値算出サブルーチンを示すフローチ
ャート
【図4】同θ2a−θ3a区間回転補正値更新サブルーチン
を示すフローチャート
【図5】同θ2b−θ3b区間回転補正値更新サブルーチン
を示すフローチャート
【図6】同単発失火判定サブルーチンを示すフローチャ
ート
【図7】同失火判定サブルーチンを示すフローチャート
【図8】同回転補正値の特性を示す説明図
【図9】同回転補正値を格納するテーブルの概念図
【図10】同筒内圧力変動、クランクパルス、カムパル
ス、及びエンジン回転変動を示すタイミングチャート
【図11】同エンジンの全体概略図
【図12】同クランクロータとクランク角センサの正面
【図13】同カムロータとカム角センサの正面図
【図14】同電子制御装置の回路図
【図15】同差回転を示す説明図
【図16】同差回転変化量を示す説明図
【図17】同失火判定レベルの説明図
【図18】同スナッチ発生時の運転状態と差回転を示す
説明図
【図19】第2実施の形態による回転補正値算出サブル
ーチンを示すフローチャート
【図20】同失火診断ルーチンを示すフローチャート
【図21】従来例によるクランクロータとクランク角セ
ンサの正面図、及びクランクパルスと燃焼行程気筒を示
すタイミングチャート
【図22】従来例による補正前の差回転を示す説明図
【符号の説明】
1…エンジン 28…クランクロータ 28b,28c,28a’,28b’…角度表示部(突
起) 29…クランク角検出手段(クランク角センサ) KMF…角度補正値 MTXA#i…補正間隔時間 MNX#i…区間平均回転数 MNX#i-2…(前々回算出した)区間平均回転数 MNX#i-1…(前回算出した)区間平均回転数 Ne…エンジン回転数 TKMF12,TKMF34…テーブル θ2a−θ3a,θ2b−θ3b…クランク角区間

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 エンジンと同期回転するロータに、少な
    くとも気筒毎の特定クランク角区間を表示する角度表示
    部を設け、 該角度表示部を検出したクランク角検出手段からの信号
    に基づきエンジン1回転の間隔時間と特定クランク角区
    間の間隔時間とを算出し、この両間隔時間の比から上記
    クランク角区間の設計角度に対する角度補正値を算出す
    る手段と、 上記角度補正値を加重平均処理して回転補正値を算出す
    る手段と、 上記回転補正値で上記特定クランク角区間の間隔時間を
    補正して補正間隔時間を算出する手段と、 この補正間隔時間に基づき区間平均回転数を算出する手
    段とを備えることを特徴とするエンジン回転数算出装
    置。
  2. 【請求項2】 エンジンと同期回転するロータに、少な
    くとも気筒毎の特定クランク角区間を表示する角度表示
    部を設け、 該角度表示部を検出したクランク角検出手段からの信号
    に基づき2カ所以上の特定クランク角区間の間隔時間を
    算出し、この各間隔時間のひとつを基準間隔時間とし、
    該基準間隔時間と他のクランク角区間の間隔時間との比
    から相対的な角度補正値を算出する手段と、 上記角度補正値を加重平均処理して回転補正値を算出す
    る手段と、 上記回転補正値で上記特定クランク角区間の間隔時間を
    補正して補正間隔時間を算出する手段と、 この補正間隔時間に基づき対応するクランク角区間毎の
    区間平均回転数を算出する手段とを備えることを特徴と
    するエンジン回転数算出装置。
  3. 【請求項3】 前記回転補正値が燃料カット時に算出さ
    れることを特徴とする請求項1或いは2記載エンジンの
    回転数算出装置。
  4. 【請求項4】 前記回転補正値をエンジン回転数をパラ
    メータとして領域別に格納することを特徴とする請求項
    1或いは2記載のエンジン回転数算出装置。
  5. 【請求項5】 前記回転補正値をエンジン回転数をパラ
    メータとして領域別に格納するテーブルを備え、 上記テーブルの全領域が初期化されているときは最初に
    算出された回転補正値を上記テーブルの全領域に格納す
    ることを特徴とする請求項1或いは2載のエンジンの回
    転数算出装置。
  6. 【請求項6】 前記回転補正値をエンジン回転数をパラ
    メータとして領域別に格納するテーブルを備えると共
    に、 上記テーブルの各領域がエンジン回転域毎に一定のグル
    ープに区分され、 上記テーブルの全領域が初期化されているときは最初に
    算出された回転補正値を上記テーブルの全領域に格納
    し、 又上記テーブルの全領域に同一の回転補正値が格納され
    た後、該テーブルの各グループ内の領域が更新されてい
    ないときは、エンジン回転数をパラメータとして特定し
    た該当グループ内の領域を当該回転補正値で更新するこ
    とを特徴とする請求項1或いは2記載のエンジン回転数
    算出装置。
  7. 【請求項7】 エンジンと同期回転するロータに、少な
    くとも気筒毎の特定クランク角区間を表示する角度表示
    部を設け、 該角度表示部を検出したクランク角検出手段からの信号
    に基づきエンジン1回転の間隔時間と特定クランク角区
    間の間隔時間とを算出し、この両間隔時間の比から上記
    クランク角区間の設計角度に対する角度補正値を算出す
    る手段と、 上記角度補正値を加重平均処理して回転補正値を算出す
    る手段と、 上記回転補正値で上記特定クランク角区間の間隔時間を
    補正して補正間隔時間を算出する手段と、 この補正間隔時間に基づき区間平均回転数を算出する手
    段と、前回算出した区間平均回転数と今回算出した区間
    平均回転数及び前々回算出した区間平均回転数との変化
    量に基づき前回算出した区間平均回転数に対応する気筒
    の失火を判定する手段とを備えることを特徴とするエン
    ジンの気筒別失火検出装置。
  8. 【請求項8】 エンジンと同期回転するロータに、少な
    くとも気筒毎の特定クランク角区間を表示する角度表示
    部を設け、 該角度表示部を検出したクランク角検出手段からの信号
    に基づき2カ所以上の特定クランク角区間の間隔時間を
    算出し、この各間隔時間のひとつを基準間隔時間とし、
    該基準間隔時間と他のクランク角区間の間隔時間との比
    から相対的な角度補正値を算出する手段と、 上記角度補正値を加重平均処理して回転補正値を算出す
    る手段と、 上記回転補正値で上記特定クランク角区間の間隔時間を
    補正して補正間隔時間を算出する手段と、 この補正間隔時間に基づき対応するクランク角区間毎の
    区間平均回転数を算出する手段と、 前回算出した区間平均回転数と今回算出した区間平均回
    転数及び前々回算出した区間平均回転数との変化量に基
    づき前回算出した区間平均回転数に対応する気筒の失火
    を判定する手段とを備えることを特徴とするエンジンの
    気筒別失火検出装置。
JP28097996A 1996-10-23 1996-10-23 エンジン回転数算出装置及びエンジンの気筒別失火検出装置 Expired - Fee Related JP3963984B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP28097996A JP3963984B2 (ja) 1996-10-23 1996-10-23 エンジン回転数算出装置及びエンジンの気筒別失火検出装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP28097996A JP3963984B2 (ja) 1996-10-23 1996-10-23 エンジン回転数算出装置及びエンジンの気筒別失火検出装置

Publications (2)

Publication Number Publication Date
JPH10122031A true JPH10122031A (ja) 1998-05-12
JP3963984B2 JP3963984B2 (ja) 2007-08-22

Family

ID=17632570

Family Applications (1)

Application Number Title Priority Date Filing Date
JP28097996A Expired - Fee Related JP3963984B2 (ja) 1996-10-23 1996-10-23 エンジン回転数算出装置及びエンジンの気筒別失火検出装置

Country Status (1)

Country Link
JP (1) JP3963984B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1757946A2 (en) 2005-08-23 2007-02-28 Denso Corporation Rotation angle sensing device
CN100441851C (zh) * 2005-08-23 2008-12-10 株式会社电装 旋转角感测装置
JP2009191710A (ja) * 2008-02-14 2009-08-27 Honda Motor Co Ltd 内燃機関の失火検出装置
US20100125430A1 (en) * 2007-06-27 2010-05-20 Shouji Kanazawa Analog angle sensor accuracy correction program correction method recording medium and servo driver
JP2014058905A (ja) * 2012-09-18 2014-04-03 Mazda Motor Corp 内燃機関の制御方法

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1757946A2 (en) 2005-08-23 2007-02-28 Denso Corporation Rotation angle sensing device
US7284538B2 (en) 2005-08-23 2007-10-23 Denso Corporation Rotation angle sensing device
CN100441851C (zh) * 2005-08-23 2008-12-10 株式会社电装 旋转角感测装置
EP2824303A1 (en) 2005-08-23 2015-01-14 Denso Corporation Rotation angle sensing device
US20100125430A1 (en) * 2007-06-27 2010-05-20 Shouji Kanazawa Analog angle sensor accuracy correction program correction method recording medium and servo driver
US8364432B2 (en) * 2007-06-27 2013-01-29 Tamagawa Seiki Co., Ltd. Analog angle sensor accuracy correction program correction method, recording medium, and servo driver
JP2009191710A (ja) * 2008-02-14 2009-08-27 Honda Motor Co Ltd 内燃機関の失火検出装置
JP4633809B2 (ja) * 2008-02-14 2011-02-16 本田技研工業株式会社 内燃機関の失火検出装置
JP2014058905A (ja) * 2012-09-18 2014-04-03 Mazda Motor Corp 内燃機関の制御方法

Also Published As

Publication number Publication date
JP3963984B2 (ja) 2007-08-22

Similar Documents

Publication Publication Date Title
JP3357091B2 (ja) エンジンの失火検出方法
JPH0472449A (ja) エンジンの失火診断装置
JP4461586B2 (ja) 内燃機関用失火検出装置
JPH10122029A (ja) 内燃機関の失火検出装置
JP2784069B2 (ja) エンジンの失火判定装置
US7886584B2 (en) Method and apparatus for detecting a stroke of a 4-cycle internal combustion engine, based on changes in rotary engine speed
GB2271854A (en) Misfire detection method for engine
JP3070652B2 (ja) 多気筒エンジンの燃焼状態診断装置及び診断方法
JPH10122031A (ja) エンジン回転数算出装置及びエンジンの気筒別失火検出装置
JP3643250B2 (ja) エンジンの失火検出装置
WO2019187733A1 (ja) 角度検出装置および角度検出方法
JPH04265475A (ja) エンジンの気筒別失火判別方法
JP3357092B2 (ja) エンジンの失火検出方法
EP0967379B1 (en) Engine speed calculating apparatus
JPH03206342A (ja) 多気筒内燃機関の失火検出方法及びその装置
CN107725202B (zh) 转速信号的处理装置
JPH10148153A (ja) エンジンの失火診断装置
JPH10213058A (ja) エンジンの失火診断装置
JP3324795B2 (ja) エンジンの失火検出方法
JPH1077899A (ja) エンジンの失火診断装置
JPH0751917B2 (ja) エンジンの気筒別失火判別方法
JP3284137B2 (ja) エンジンの失火検出方法
JP4186350B2 (ja) 内燃機関の燃焼状態検出装置
JPH06336948A (ja) 内燃機関用失火検出装置
JPH0533717A (ja) 多気筒内燃機関の失火検出装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Effective date: 20060323

Free format text: JAPANESE INTERMEDIATE CODE: A971007

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061031

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070501

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070523

R150 Certificate of patent (=grant) or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Year of fee payment: 4

Free format text: PAYMENT UNTIL: 20110601

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

Year of fee payment: 4

Free format text: PAYMENT UNTIL: 20110601

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

Free format text: PAYMENT UNTIL: 20120601

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees