【実施例1】
【0040】
本実施例の点火時期制御装置は、汎用エンジンや2輪車用エンジンなどの各種のエンジン(内燃機関)に用いられるものであり、内燃機関のノッキングや大きな騒音の発生を防止するために、点火時期を制御する装置である。なお、以下では、4サイクルの2輪車用のガソリンエンジンを例に挙げて説明する。
【0041】
a)まず、本実施例の点火時期制御装置を備えた内燃機関のシステム全体について説明する。
図1に示す様に、内燃機関(エンジン)1は、エンジン本体3と、エンジン本体3に空気を導入する吸気管5と、吸入空気量を検出するエアフローメータ7と、吸入空気量を調整するスロットルバルブ9と、スロットルバルブ9の開度を検出するスロットル開度センサ11と、燃焼室13内に空気を導入する吸気マニホールド15と、燃料を吸気マニホールド15内に噴射する燃料噴射弁17と、エンジン本体3から(燃焼後の)空気を排出する排気マニホールド19と、排気マニホールド19から排出される排気から空燃比を検出する空燃比センサ(又は酸素センサ)21などを備えている。
【0042】
また、エンジン本体3のシリンダヘッド23には、点火プラグ25が取り付けられ、エンジン本体3には、エンジン回転数(回転速度)を検出するエンジン回転数センサ27や、クランク角を検出するクランク角センサ29が取り付けられている。
【0043】
更に、エンジン本体3には、後述する点火時期制御装置31が取り付けられている。この点火時期制御装置31には、イグナイタ33が接続され、イグナイタ33には点火コイル35が接続され、点火コイル35は点火プラグ25に接続されている。
【0044】
また、内燃機関1には、エンジン本体3等の運転状態(例えばエンジン回転数や空燃比センサ21の出力に基づく空燃比フィードバック制御など)を総合的に制御する内燃機関用制御装置(エンジンコントロールユニット)37が設けられている。この内燃機関用制御装置37は、図示しないが、周知のRAM、ROM、CPU等を有するマイコンを備えた電子制御装置(ECU)である。
【0045】
なお、この内燃機関用制御装置37が、本発明における動作制御装置に該当する。また、以下では、点火時期制御装置31と内燃機関用制御装置37とを備えたシステムを、点火時期制御システム38と称する。
【0046】
内燃機関用制御装置37の入力ポート(図示せず)には、エアフローメータ7、スロットル開度センサ11、空燃比センサ21、エンジン回転数センサ27、クランク角センサ29、点火時期制御装置31が接続されており、これらの各機器からの信号(センサ信号等)が入力ポートに入力する。
【0047】
一方、内燃機関用制御装置37の出力ポート(図示せず)には、燃料噴射弁17、点火時期制御装置31が接続されており、これらの機器に対して、内燃機関用制御装置37から、各機器の動作を制御するための制御信号が出力される。
【0048】
b)次に、本実施例の点火時期制御装置31について説明する。
図2に示す様に、本実施例の点火時期制御装置31は、エンジン本体3の振動を検出するノッキングセンサ(本発明の振動検出手段に該当)41と、ノッキングセンサ41からの信号に基づいて点火時期を調整する点火時期調整装置43とが、接続ケーブル45を介して、電気的及び機械的に分離不可能に一体に構成されたものである。
【0049】
前記ノッキングセンサ41は、周知の圧電素子65を用いた非共振型ノッキングセンサであり、主体金具47の軸孔47aに取付用ボルト(図示せず)が挿入される構造を有し、取付用ボルトによってエンジン本体3のシリンダブロック49(
図1参照)に固定されるものである。
【0050】
詳しくは、ノッキングセンサ41は、ほぼ全体が樹脂成形体51によってモールドさており、略円筒形状の本体部53と本体部53の側面から突出する略直方体形状のコネクタ部55とを備えている。
【0051】
このうち、本体部53は、円筒形状の筒状部57とその一端側(
図2(b)の下方)に設けられた環状の鍔部59とからなる前記主体金具47を有している。筒状部57には、鍔部59側から、環状の第1絶縁板61、環状の第1電極板63、環状の圧電素子65、環状の第2電極板67、環状の第2絶縁板69、環状のウエイト71、環状の皿バネ73、環状のナット75が配置されている。また、第1電極板63と第2電極板67とには、両電極板63、67間に発生した出力信号を取り出すための第1出力端子81と第2出力端子83とが、それぞれ接続されている。
【0052】
前記点火時期調整装置43は、点火時期を調整する制御装置であり、前記内燃機関用制御装置37と同様に、周知のRAM、ROM、CPU等を有するマイコン(図示せず)を備えた電子制御装置である。
【0053】
前記接続ケーブル45は、内部に第1出力端子81と第2出力端子83とに接続された各電気配線(図示せず)が設けられているケーブルであり、この接続ケーブル45の両端には、両電気配線と接続された第1コネクタ85と第2コネクタ87とが設けられている。
【0054】
つまり、第1コネクタ85は、ノッキングセンサ41のコネクタ部55の開口部55aに嵌め込まれるとともに、各電気配線が第1、第2出力端子81、83に接続されている。また、第2コネクタ87は、点火時期調整装置43の凹状のコネクタ部89に嵌め込まれるとともに、各電気配線が、点火時期調整装置43内の内部配線(図示せず)と接続されている。
【0055】
また、接続ケーブル45の第1コネクタ85は、ノッキングセンサ41のコネクタ部55に嵌め込まれるとともに、接着剤によって固定されて分離不可能に一体に構成されている。同様に、接続ケーブル45の第2コネクタ87は、点火時期調整装置43のコネクタ部89に嵌め込まれるとともに、接着剤によって固定されて分離不可能に一体に構成されている。
【0056】
c)次に、点火時期制御装置31に関する電気的構成などについて説明する。
図3に示す様に、点火時期制御装置31の点火時期調整装置43は、バッテリ91から電力の供給を受けて作動するものである。よって、点火時期調整装置43には、バッテリ91からの電力を受けるための一対の電源端子93、95が設けられている。
【0057】
また、点火時期調整装置43は、1組のリード線(信号線)97、99を介して、内燃機関用制御装置37と着脱可能に接続されている。なお、リード線97、99は、点火時期調整装置43及び内燃機関用制御装置37の両方に対して着脱可能とされている。
【0058】
点火時期調整装置43には、内燃機関用制御装置37から後述する点火信号(基準点火信号A)を受信するための受信用端子101と、点火時期調整装置43から内燃機関用制御装置37に対して、詳述は省略するが、ノッキングセンサ41又は点火時期調整装置43の故障(異常)を示す信号を出力する出力用端子103とを備えている。
【0059】
更に、点火時期調整装置43は、1本のリード線105を介して、イグナイタ33と接続されており、イグナイタ33に対して点火コイル35を作動させるため信号、即ち、後述する(調整後の)点火信号(補正点火信号B)を出力するための点火用端子107が設けられている。
【0060】
詳しくは、
図4に示す様に、点火コイル35は、一次巻線35aと二次巻線35bとを備えており、一次巻線35aの一端には、バッテリ91の正極が接続され、他端には、(イグナイタ33の)npn型のパワートランジスタ33aのコレクタが接続されている。このパワートランジスタ33aは、一次巻線35aへの通電・非通電を切り替えるスイッチング素子である。なお、パワートランジスタ33aのエミッタは、バッテリ91の負極と同電位のグランドに接地されている。
【0061】
一方、二次巻線35bの一端は、バッテリ91の負極と同電位のグランドに接地され、他端は、点火プラグ25の中心電極25aに接続されている。なお、点火プラグ25の接地電極25bは、バッテリ91の負極と同電位のグランドに接地されている。
【0062】
また、本実施例では、内燃機関用制御装置37と点火時期調整装置43とが接続され、この点火時期調整装置43から、パワートランジスタ33aのベースに対して補正点火信号(B)が出力され、この補正点火信号(B)に基づいて、パワートランジスタ33aがスイッチング動作を行って、点火コイル35の一次巻線35aへの通電・非通電が切り替えられる。
【0063】
d)次に、本実施例の点火時期制御装置31の要部であるノッキング及びクランク打音による大きな騒音の検出方法等について説明する。
図5に示すように、点火時期制御装置31の点火時期調整装置43は、マイコンの機能として、ノッキングを検出するノッキング検出部(本発明のノッキング検出手段に該当)43aと、クランク打音による所定以上の大きな騒音(以下単に騒音と記すこともある)を検出する騒音検出部(本発明の騒音検出手段に該当)43bと、ノッキング検出部43aによって検出されたノッキングの発生を示す信号と騒音検出部43bによって検出された騒音を示す信号とに基づいて点火時期を制御する点火時期制御部43cとを備えている。
【0064】
また、ノッキングセンサ41の出力は、点火時期調整装置43にて周知のA/D変換され、そのデジタル信号がノッキング検出部43a及び騒音検出部43bにて利用されるように構成されている。なお、ノッキングセンサ41とノッキング検出部43aと騒音検出部43bとによって、本発明の振動状態検出装置が構成されている。
【0065】
点火時期調整装置43では、通常では点火時期を
MBTに向かって進角させる制御を行うが、ノッキングが検出された場合又は騒音が検出された場合には、後述するように、点火時期を
MBTに向かって進角させる制御を中止して、点火時期を遅角させる制御を行う。
【0066】
つまり、点火に伴うノッキングが発生したり、クランク打音による騒音が非常に大きくなると、内燃機関1が損傷したり運転者にとって不快な状態となるので、内燃機関1の運転状態として好ましくない。そのため、そのまま点火時期を
MBTに向かって徐々に進角させる制御を継続することは適当でない。よって、ノッキングが発生したり騒音が発生した場合には、点火時期を進角させる制御を中止して遅角させる制御を行う。
【0067】
ここで、前記遅角の制御を行うためには、ノッキング及び騒音の検出を精度良く行う必要がある。
具体的には、ノッキングは主として例えば10〜14kHzの高周波の振動によるものであり、クランク打音による騒音は主として例えば3kHz以下の低周波の振動によるものである。よって、後に詳述するように、ノッキングセンサ41によって検出した振動波形に対して周知のFFT(高速フーリエ変換)解析を行って、この振動の周波数特性を求め、この周波数特性に基づいて、ノッキングを示す周波数帯における信号の強度や騒音を示す周波数帯における信号の強度から、ノッキングや騒音を判定(検出)する。
【0068】
つまり、ノッキングと騒音とは、その振動の周波数や強度が異なるので、本実施例では、ノッキングの発生の判定(ノッキング判定)と(クランク打音による所定以上の)騒音の発生の判定(騒音判定)とを、異なる周波数帯と異なる(強度の)閾値を用いて行う。
【0069】
詳しくは、FFT解析によって得られた周波数特性(周波数によって信号の強度が異なる特性)を示す信号に対して、特定の周波数のパワースペクトルを抽出することによって、ノッキングを示す周波数帯の信号強度と騒音を示す周波数帯の信号強度とに区分する。そして、ノッキングを示す周波数帯に所定以上の強度の信号が検出された場合には、ノッキングが発生したと判定し、クランク打音による騒音を示す周波数帯に所定以上の強度の信号が検出された場合には、その騒音が発生したと判定する。
【0070】
なお、このノッキングの判定の周波数帯や閾値としては、実験等によって設定することができるが、例えば12kHzの周波数帯、−15dBの閾値を採用できる。同様に、クランク打音による騒音の判定の周波数帯や閾値としては、実験等によって設定することができるが、例えば1kHzの周波数帯、−20dBの閾値を採用できる。
【0071】
そして、このようにしてノッキングや騒音が検出された場合には、ノッキングや騒音を抑制するために、後述するように、点火時期制御部43cにて、点火時期を調整して遅角制御を行うのである。
【0072】
e)次に、ノッキング及び騒音の検出結果などに基づく点火時期制御について説明する。
内燃機関用制御装置37では、例えばエンジン回転数や吸入空気量などに基づいて、点火時期の基準となる基準点火時期を決定する。この基準点火時期とは、内燃機関1毎のばらつきや気候変化等を考慮したときにも当該内燃機関1が破損しないような十分なマージンを持って設定された点火時期を、内燃機関1の運転状態毎に複数設定したマップを用いた上で、このマップと現在の運転状態とを対応(照合)して設定されるベースとなる点火時期(即ち、点火時期調整装置43によって調整される対象の点火時期)である。
【0073】
なお、この基準点火時期を示す信号が、基準点火信号(A)(
図6の上図(a)参照)である。そして、この基準点火信号(A)が、点火時期調整装置43に対して出力される。
【0074】
基準点火信号(A)を受信する点火時期調整装置43では、ノッキングセンサ41からの内燃機関1の振動を示す信号を受信し、その振動を示す信号に基づいて、前記ノッキング検出部43a及び騒音検出部43bにて、ノッキングや所定以上のクランク打音による騒音の発生の有無を判定(検出)する。
【0075】
そして、点火時期調整装置43では、ノッキングや騒音の発生状態等に応じて、点火時期を調整(補正)して、補正点火時期を決定する。なお、この補正点火時期を示す信号が、補正点火信号(B)(
図6の中図(b)参照)である。
【0076】
具体的には、
図7に示す様に、ノッキングや騒音が発生していない場合には、所定期間毎に、点火時期を最大進角に至るまで徐々に進角させ、ノッキング又は騒音が発生すると基準点火時期(A)に戻すように、補正点火時期(B)を設定する。なお、前記
図6に示す様に、エンジン起動時や加速時等の運転過渡期といったエンジン回転数の変動が大きな場合には、前記点火時期を補正する処理は行わない。
【0077】
次に、上述のように補正点火時期が決定されると、前記
図4に示す様に、点火時期調整装置43から、イグナイタ33に対して、補正点火信号(B)が出力される。
イグナイタ33では、パワートランジスタ33aのベースに、補正点火信号(B)が与えられると、この補正点火信号(B)のオン・オフに応じてスイッチング動作が行われる。
【0078】
詳しくは、補正点火信号(B)がオフ(ローレベル:一般にグランド電位)である場合には、ベース電流が流れずパワートランジスタ33aはオフ状態(遮断状態)となり、一次巻線35aに電流(一次電流i1)が流れることはない。また、補正点火信号(B)がオン(ハイレベル:点火時期調整装置43からの正の電圧が供給される状態)である場合には、ベース電流が流れてパワートランジスタ33aはオン状態(通電状態)となり、一次巻線35aに電流(一次電流i1)が流れる。この一次巻線35aへの通電により、点火コイル35に磁束エネルギーが蓄積される。
【0079】
また、補正点火信号(B)がハイレベルであり一次巻線35aに一次電流i1が流れている状態で、補正点火信号(B)がローレベルになると、パワートランジスタ33aがオフ状態となり、一次巻線35aへの一次電流i1の通電が遮断(停止)される。すると、点火コイル35における磁束密度が急激に変化して、二次巻線35bに点火用電圧が発生し、これが点火プラグ25に印加されることで、点火プラグ25の中心電極25aと接地電極25bとの間に火花放電が発生する(
図6の下図(c)参照)。このときに二次巻線35bに流れる電流が二次電流i2である。
【0080】
なお、上述した基準点火信号(A)及び補正点火信号(B)には、ローレベルからハイレベルになるタイミングと、ハイレベルからローレベルになるタイミングとの情報が含まれている。このうち、ハイレベルからローレベルになるタイミングは、所望の点火時期(発火する時期)である。また、ハイレベルの期間は、必要な磁束エネルギーが蓄積されるように所定の期間が設定される。
【0081】
f)次に、点火時期調整装置43にて行われる制御処理について説明する。
<補正点火時期算出処理>
本処理は、基準点火信号(A)に基づいて補正点火時期を算出するとともに、基準点火信号(A)を利用してエンジン回転数を算出する処理である。なお、本処理では、ノッキング及び騒音の発生の検出の際には、同一のウィンドウ(ノック・騒音検知ウィンドウKNW)を用いて判定が行われる。
【0082】
図8のフローチャートに示す様に、ステップ(S)100では、タイマー記憶変数Nをリセット(0に設定)する。
続くステップ110では、回転数格納/ノック・騒音ウィンドウ(Window)変数Sをリセットする。この回転数格納/ノック・騒音ウィンドウ変数Sとは、ステップ240にてエンジン回転数を順次記憶させていったときの時系列を示す変数、かつ、ステップ250にてノッキング及び騒音を検出するクランク角ウィンドウの値を順次記憶させていったときの時系列を示す変数である。
【0083】
続くステップ120では、タイマーTの初期値T(0)を0に設定する。
続くステップ130では、ノック・騒音検知ウィンドウKNWの初期値KNW(0)を0に設定する。このノック・騒音検知ウィンドウKNWとは、ノッキングの発生する可能性のある領域(所定の回転角の区間)を示すものであり、点火時期を起点に設定される特定の期間に相当し、ノッキングを示す信号(ノッキング信号)及び騒音を示す信号(騒音信号)の解析区間に相当するものである。なお、本実施例では、ノッキング信号の解析区間と騒音信号の解析区間は同一である。
【0084】
続くステップ140では、内燃機関用制御装置37から受信した基準点火信号(A)に基づいて、基準点火時期(入力点火時期)TIGINを補正点火時期TIGとして設定する。なお、ここでの補正点火時期TIGの値は、まだ補正が行われていない値である。
【0085】
続くステップ150では、点火信号間隔測定タイマーT1をリセットする。
続くステップ160では、基準点火信号(A)が入力したか否かを判定する。ここで肯定判断されるとステップ170に進み、一方否定判断されると待機する。
【0086】
ステップ170では、基準点火信号(A)が入力してからの時間を計測するために、点火信号間隔測定タイマーT1をスタートする。
続くステップ180では、再度基準点火信号(A)が入力したか否かを判定する。ここで肯定判断されるとステップ190に進み、否定判断されると待機する。
【0087】
ステップ190では、基準点火信号(A)が入力したので、前記タイマー記憶変数Nをカウントアップする。
続くステップ200では、今回(N回目)、基準点火信号(A)が入力した時間を、タイマーT(N)として記憶する。即ち、点火信号間隔測定タイマーT1の計数値を、タイマーT(N)の値として記憶する。
【0088】
続くステップ210では、今回(N回目)、基準点火信号(A)が入力した時間(T(N))と、前回(N−1回目)、基準点火信号(A)が入力した時間(T(N−1))との差ΔT(N)を求める。即ち、連続する基準点火信号(A)の間の時間を求める。
【0089】
続くステップ220では、「2回転×60sec/ΔT(N)」の演算(4サイクルエンジンにて1点火/2回転の場合)によって、エンジン回転数(rpm)を算出する。
続くステップ230では、回転数格納/ノック・騒音ウィンドウ変数Sをカウントアップする。
【0090】
続くステップ240では、前記ステップ220で求めたエンジン回転数、即ち、回転数格納/ノック・騒音ウィンドウ変数Sに対応したエンジン回転数を、RPN(S)として格納(記憶)する。
【0091】
続くステップ250では、ノック・騒音検知ウィンドウKNW(S)の演算を行う。即ち、回転数格納/ノック・騒音ウィンドウ変数Sに対応したノック・騒音検知ウィンドウKNW(S)の演算を、公知の演算手法によって行って、その値を記憶する。
【0092】
続くステップ260では、回転数格納/ノック・騒音ウィンドウ変数Sが2を上回るか否かを判定する。ここで肯定判断されるとステップ270に進み、一方否定判断されると前記ステップ180に戻る。
【0093】
ステップ270では、後述するノッキング・騒音検出処理を行って、ノッキング及び騒音を検出する。
続くステップ280では、エンジン回転数の「RPNS(S)/RPNS(S−1)」の演算、即ち、今回(S回目)のエンジン回転数RPNS(S)を前回(S−1回目)のエンジン回転数RPNS(S−1)で割ることにより、エンジン回転数の変動の大きさを示すエンジン回転数の偏差(回転数偏差)ΔRPNを算出する。
【0094】
続くステップ290では、回転数偏差ΔRPNが所定の判定値RPNsを下回るか否かを判定する。ここで肯定判断されるとステップ300に進み、一方否定判断されるとステップ310に進む。
【0095】
ステップ310では、回転数偏差ΔRPNが大きく、点火時期を進角させることは適当ではないので、基準点火時期TIGINそのものを補正点火時期TIGとして設定し、前記ステップ180に戻る。
【0096】
一方、ステップ300では、ノッキング又は騒音が発生しているか否かを、後述するノッキング・騒音検出処理にて設定されるノック・騒音検知フラグKNSSが1であるか否かによって判定する。ここで肯定判断されるとステップ320に進み、一方否定判断されるとステップ330に進む。
【0097】
ステップ320では、ノッキング又は騒音が発生しているので、ノッキング又は騒音の発生を防止するために、点火時期を遅角する。具体的には、基準点火時期TIGINそのものを補正点火時期TIGとして設定し(
図7参照)、前記ステップ180に戻る。
【0098】
一方、ステップ330では、ノッキング又は騒音が発生していないので、点火時期(補正点火時期TIG)が最大進角TIGMか否かを判定する。ここで肯定判断されるとステップ340に進み、一方否定判断されるとステップ350に進む。
【0099】
ステップ340では、補正点火時期TIGが最大進角TIGMであるので、その最大進角TIGMの値を補正点火時期TIGの値として設定し、前記ステップ180に戻る。
一方、ステップ350では、補正点火時期TIGが最大進角TIGMではないので、点火時期を所定値ΔTIG分進角させる。具体的には、補正点火時期TIGから所定値(補正進角値)ΔTIGを引いて、今回の補正点火時期TIGとして設定し、前記ステップ180に戻る。
【0100】
<ノッキング・騒音検出処理>
本処理は、ノッキング信号に基づいてノッキングを検出するとともに、騒音信号に基づいて騒音を検出する処理である。本処理は所定期間毎に実施される。
【0101】
図9に示す様に、ステップ400にて、ノック・騒音検知フラグKNSSをクリア(0に設定)する。
続くステップ410では、点火時期か否か(点火信号がハイレベルからローレベルになるタイミングであるか否か)を判定する。ここで肯定判断されるとステップ420に進み、一方否定判断されると一旦本処理を終了する。
【0102】
ステップ420では、ノック・騒音検知ウィンドウ測定タイマーをスタートする。
続くステップ430では、ステップ250にて演算したノック・騒音検知ウィンドウKNWに対応する期間内にあるか否か(換言すれば、ノック・騒音検知ウィンドウKNW内であるか否か)をノック・騒音ウィンドウ測定タイマーの値に基づき判定する。ここで肯定判断されるとステップ440に進み、一方否定判断されると前記ステップ430に戻って同様な処理を繰り返す。
【0103】
ステップ440では、ノッキングセンサ41から得られた振動を示す信号(即ちノッキング信号や騒音信号)が有効であると設定する。なお、ノッキングの検出に用いられる信号がノッキング信号であり、騒音の検出に用いられる信号が騒音信号である。
【0104】
続くステップ450では、ステップ250にて演算したノック・騒音検知ウィンドウKNWに対応する期間が経過したか否か(換言すれば、ノック・騒音検知ウィンドウKNW外であるか否か)をノック・騒音ウィンドウ測定タイマーの値に基づき判定する。ここで肯定判断されるとステップ460に進み、一方否定判断されると前記ステップ440に戻って同様な処理を繰り返す。
【0105】
ステップ460では、ノック・騒音ウォンドウ測定タイマーをリセットする。
続くステップ470では、ノッキングセンサ41から得られた振動波形に対して周知のFFT解析を実施して、その周波数の特性(各周波数ごとの信号強度)を示す周波数特性(周波数スペクトル)を求める。
【0106】
続くステップ480では、前記周波数スペクトルを示す信号に対して、特定周波数のパワースペクトルを抽出することによって、ノッキングを示す所定の周波数帯(例えば12kHz)の信号を抽出し、この所定の周波数帯における信号のピーク値、即ち、ノッキング信号のピーク値KninPkを算出する。
【0107】
続くステップ490では、ノッキング信号のピーク値KninPkが、ノッキングの有無を判定する所定の判定値Thkを上回るか否か、即ち、ノッキングが発生したか否かを判定する。ここで肯定判断されるとステップ520に進み、一方否定判断されるとステップ500に進む。
【0108】
ステップ500では、前記周波数スペクトルを示す信号に対して、特定周波数のパワースペクトルを抽出することによって、騒音を示す他の所定の周波数帯(例えば1kHz)の信号を抽出し、この他の所定の周波数帯における信号のピーク値、即ち、騒音信号のピーク値SdinPkを算出する。
【0109】
続くステップ510では、騒音信号のピーク値SdinPkが、騒音の有無(即ち所定以上の大きな騒音の有無)を判定する所定の判定値Thsを上回るか否か、即ち、騒音が発生したか否かを判定する。ここで肯定判断されるとステップ520に進み、一方否定判断されると一旦本処理を終了する。
【0110】
ステップ520では、ノッキング又は騒音が発生しているので、そのことを示すノック・騒音検出フラグKNSSをセット(1に設定)し、本処理を終了する。
このように本実施例では、上述した各処理によって、ノッキング又は騒音を検出するとともに、基準点火時期に対してノッキングや騒音の発生状況などに基づいて点火時期の進角や遅角の処理を行って、補正点火時期を設定し、その補正点火時期を示す補正点火信号(B)をイグナイタ33に対して出力する。これによって、点火プラグ25にて適切なタイミング(即ちノッキングや騒音が発生しないようなタイミングで)で点火が行われる。
【0111】
g)次に、本実施例1の効果を説明する。
本実施例1の点火時期制御装置31では、ノッキングセンサ41から得られたエンジン本体3の振動を示す信号は、点火時期調整装置43に入力され、FFT解析されることによって振動の特徴を示す周波数スペクトルが得られる。
【0112】
ノッキング検出部43aでは、周波数スペクトルのうちノッキングを示す所定の周波数帯の信号の強度からノッキングを検出し、騒音検出部43bでは、クランク打音を示す(前記所定の周波数帯とは異なる)他の所定の周波数帯の信号の強度から騒音を検出する。
【0113】
そして、点火時期をMBTに向かって進角させる制御を行っているときに、ノッキングが検出された場合又は騒音が検出された場合には、その点火時期を進角させる制御を中止して、遅角させる制御(ここでは基準点火時期に設定する制御)を行う。
【0114】
これによって、ノッキングの発生を抑制できるのでエンジン本体3の損傷を防ぐことができるとともに、大きな騒音の発生を抑制できるので、運転者に不快感を与えることも防ぐことができる。
【0115】
しかも、本実施例1では、ノッキングや騒音が発生するまでは、できる限りMBTに近づけるように進角させる制御を行うことができるので、内燃機関1の出力を最大限に発揮できるとともに、燃費も改善することができるという顕著な効果を奏する。
【0116】
また、本実施例1では、点火時期制御装置31は、内燃機関用制御装置37から、基準点火信号(A)を受信し、それを補正して補正点火信号(B)をイグナイタ33に出力する構成である。
【0117】
これにより、従来のエンジン制御を行う電子制御装置の構成に、本実施例1の点火時期制御装置31を付加すれば、好適な点火制御が可能であり、電子制御装置に対して点火時期制御を行うための設計見直しが不要であるという利点がある。よって、汎用エンジンや2輪車用エンジン等に容易に適用でき、汎用性が高いという効果がある。
【0118】
なお、本実施例1では、ノッキングの検出と騒音の検出とに同一のウィンドウを用いたが、異なるウィンドウを設定してもよい。例えばノッキング検出用のウィンドウの後に(例えば連続して)、同様な(但し開始時期が異なる)ウィンドウ測定タイマーを利用して、同様なサイズ又は異なるサイズの騒音検出用のウィンドウを設定してもよい。
【実施例2】
【0119】
次に実施例2について説明するが、前記実施例1と同様な内容についてはその説明を省略又は簡略化する。なお、前記実施例1と同様な部材等の番号については同じ番号を使用する。
【0120】
本実施例2では、前記実施例1とはハード構成は同じであり、制御処理のみが異なるので、制御処理について説明する。
つまり、本実施例2では、ノッキングの検出はノッキングの検出のみのために設定されたノックウィンドウを用いて行われるが、騒音の検出は、特にノックウィンドウのようなウィンドウを設定することなく、常時、所定期間(例えば100msec)毎に実施される騒音検出処理により騒音を検出する。以下詳細に説明する。
【0121】
a)まず、補正点火時期算出処理について説明する。
本処理は、基準点火信号(A)に基づいて補正点火時期を算出するとともに、基準点火信号(A)を利用してエンジン回転数を算出する処理である。
【0122】
図10のフローチャートに示す様に、ステップ(S)600では、タイマー記憶変数Nをリセット(0に設定)する。
続くステップ610では、回転数格納/ノックウィンドウ(Window)変数Sをリセットする。なお、この変数Sは、前記ステップ110の回転数格納/ノック・騒音ウィンドウ(Window)変数Sと同様なものである。
【0123】
続くステップ620では、タイマーTの初期値T(0)を0に設定する。
続くステップ630では、ノック検知ウィンドウKNWの初期値KNW(0)を0に設定する。なお、このノック検知ウィンドウKNWとは、前記ステップ130のノック・騒音検知ウィンドウKNWと同様なものである。
【0124】
続くステップ640〜720では、前記実施例1のステップ140〜220と同様な処理を行う。
続くステップ730では、回転数格納/ノックウィンドウ変数Sをカウントアップする。
【0125】
続くステップ740では、前記ステップ720で求めたエンジン回転数を、RPN(S)として格納(記憶)する。
続くステップ750では、ノック検知ウィンドウKNW(S)の演算を行う。
【0126】
続くステップ760では、回転数格納/ノックウィンドウ変数Sが2を上回るか否かを判定する。ここで肯定判断されるとステップ770に進み、一方否定判断されると前記ステップ680に戻る。
【0127】
ステップ770では、後述するノッキング検出処理を行って、ノッキングを検出する。
ステップ775では、後述する騒音検出処理を行って、騒音を検出する。
続くステップ780では、前記ステップ280と同様に、エンジン回転数の「RPNS(S)/RPNS(S−1)」の演算、即ち、エンジン回転数の変動の大きさを示すエンジン回転数の偏差(回転数偏差)ΔRPNを算出する。
【0128】
続くステップ790では、前記ステップ290と同様に、回転数偏差ΔRPNが所定の判定値RPNsを下回るか否かを判定する。ここで肯定判断されるとステップ800に進み、一方否定判断されるとステップ810に進む。
【0129】
ステップ810では、前記ステップ310と同様に、基準点火時期TIGINそのものを補正点火時期TIGとして設定し、前記ステップ680に戻る。
一方、ステップ800では、ノッキング又は騒音が発生しているか否かを、後述するノッキング検出処理にて設定されるノック検知フラグKNS又は騒音検出処理にて設定される騒音検知フラグSSが1であるか否かによって判定する。ここで肯定判断されるとステップ820に進み、一方否定判断されるとステップ830に進む。
【0130】
そして、ステップ820〜850では、前記ステップ320〜350と同様な処理を行う。
b)次に、ノッキング検出処理について説明する。
【0131】
本処理は、ノッキング信号に基づいて、ノッキングを検出する処理である。本処理は所定期間毎に実施される。
図11に示す様に、ステップ900にて、ノック検知フラグKNSをクリア(0に設定)する。
【0132】
続くステップ910では、点火時期か否かを判定する。ここで肯定判断されるとステップ920に進み、一方否定判断されると一旦本処理を終了する。
ステップ920では、ノック検知ウィンドウ測定タイマーをスタートする。
【0133】
続くステップ930では、ステップ750にて演算したノック検知ウィンドウKNWに対応する期間内にあるか否かを、ノックウィンドウ測定タイマーの値に基づき判定する。ここで肯定判断されるとステップ940に進み、一方否定判断されると前記ステップ930に戻って同様な処理を繰り返す。
【0134】
ステップ940では、ノッキングセンサ41から得られたノッキング信号が有効であると設定する。
続くステップ950では、前記ノック検知ウィンドウKNWに対応する期間が経過したか否かを、ノックウィンドウ測定タイマーの値に基づき判定する。ここで肯定判断されるとステップ960に進み、一方否定判断されると前記ステップ940に戻って同様な処理を繰り返す。
【0135】
ステップ960では、ノックウィンドウ測定タイマーをリセットする。
続くステップ970では、FFT解析を行うことなく、そのままノッキング信号のピーク値KninPkを算出する。
【0136】
なお、ここで、前記実施例1と同様に、ノッキングセンサ41から得られる振動波形に対してFFT解析を行い、その解析結果から得られる所定の(ノッキングを示す)周波数帯におけるピーク値から、ノッキング信号のピーク値KninPkを算出してもよい。
【0137】
続くステップ980では、ノッキング信号のピーク値KninPkが、ノッキングの有無を判定する所定の判定値Thを上回るか否か、即ち、ノッキングが発生したか否かを判定する。ここで肯定判断されるとステップ990に進み、一方否定判断されると一旦本処理を終了する。
【0138】
ステップ990では、ノッキングが発生しているので、そのことを示すノック検出フラグKNSをセット(1に設定)し、本処理を終了する。
c)次に、騒音検出処理について説明する。
【0139】
本処理は、騒音信号に基づいて、騒音を検出する処理である。本処理は所定期間毎に実施される。
図12に示す様に、ステップ1000にて、騒音検知フラグSSをクリア(0に設定)する。
【0140】
続くステップ1010では、前記実施例1と同様に、ノッキングセンサ41から得られる振動波形に対してFFT解析を行って、その周波数特性(各周波数ごとの信号強度)を示す周波数スペクトルを求める。
【0141】
続くステップ1020では、前記周波数スペクトルから騒音を示す所定の周波数帯を抽出し、その周波数帯におけるピーク値、即ち、騒音信号のピーク値SdinPkを算出する。
【0142】
続くステップ1030では、騒音信号のピーク値SdinPkが、騒音の有無(即ち所定以上の大きな騒音の有無)を判定する所定の判定値Thsを上回るか否か、即ち、騒音が発生したか否かを判定する。ここで肯定判断されるとステップ1040に進み、一方否定判断されると一旦本処理を終了する。
【0143】
ステップ1040では、騒音が発生しているので、そのことを示す騒音検出フラグSSをセット(1に設定)し、本処理を終了する。
本実施例2では、上述した処理によって、ノッキングや騒音を検出できるので、実施例1と同様な制御を行うことによって同様な効果を奏する。