(57)【特許請求の範囲】
【請求項１】
燃焼室の混合気の燃焼時に発生するイオンに対応したイオン電流を検出する信号検出部と、
前記信号検出部が出力する検出信号をサンプリング周期毎に取得して、信号入力データを記憶するデータ取得部と、
前記信号入力データを微分演算し、微分演算結果が基準値ＴＨを超えるか否かの判定によって、イオン電流が急変する急変開始位置を特定する位置検出部と、
前記急変開始位置の発生タイミングと、予め特定されているノック信号周期とを対比して、ノイズによる急変開始位置を特定するノイズ特定部と、
特定されたノイズによる急変開始位置の前後について、前記信号入力データを補正して、実質的にノイズ成分を削除するデータ補正部と、を有して構成された内燃機関の燃焼制御装置。
【請求項２】
前記サンプリング周期τは、予め特定されているノック信号周期τｎに基づいてτ＜τｎ／２に設定されている請求項１に記載の燃焼制御装置。
【請求項３】
前記基準値ＴＨは、前記微分演算の演算結果から導出される統計値に基づいて決定される請求項１又は２に記載の燃焼制御装置。
【請求項４】
前記データ取得部は、切出しウインドの時間範囲のイオン電流を取得するよう動作する一方、
前記切出しウインドの時間軸上の位置と範囲は、動的に変化する内燃機関の運転条件に対応して決定されている請求項１〜３の何れかに記載の燃焼制御装置。
【請求項５】
燃焼室の混合気の燃焼時に発生するイオンに対応したイオン電流を検出する信号検出部と、
前記信号検出部が出力する検出信号をサンプリング周期毎に取得して、信号入力データを記憶するデータ取得部と、
前記信号入力データを微分演算し、微分演算結果が基準値ＴＨを超えるか否かの判定によって、イオン電流が急変する急変開始位置を特定する位置検出部と、
前記急変開始位置の微分演算結果と、予め特定されているノック信号周期だけ離間した箇所における微分演算結果とを対比して、ノイズによる急変開始位置を特定するノイズ特定部と、
特定されたノイズによる急変開始位置の前後について、前記信号入力データを補正して、実質的にノイズ成分を削除するデータ補正部と、を有して構成された内燃機関の燃焼制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自動車エンジンなどの内燃機関において、スパイクノイズを排除してノック信号だけを抽出して最適な燃焼制御を可能にした燃焼制御装置に関する。
【背景技術】
【０００２】
内燃機関の燃焼室で混合気を燃焼させるとイオンが発生することが一般に知られている。昨今、このイオンに対応するイオン電流に着目した燃焼制御の研究が盛んであり、イオン電流に重畳するノック信号を抽出して、遅角制御などの燃焼制御を行う試みもなされている（特許文献１）。
【特許文献１】特開平９−３３８２９５号公報
【０００３】
この特許文献１には、内燃機関に生じるノッキングの強度を検出するノック強度検出手段と、作動時にノック強度に応じて機関点火時期を遅角させる点火時期遅角手段と、作動時にノック強度に応じて機関吸気弁の開閉時期を遅角させるバルブタイミング遅角手段と、ノック強度検出手段により機関ノッキングが検出されたときに、ノック強度が所定の判定値より小さいときに点火時期遅角手段に優先してバルブタイミング遅角手段を作動させ、判定値以上であるときにバルブタイミング遅角手段に優先して点火時期遅角手段を作動させるノック制御手段と、を備えた内燃機関の燃焼制御装置が記載されている。
【０００４】
このような構成を採用することで、機関ノッキングを抑制して機関に損傷を生じることを防止できるとともに、機関出力低下や燃費の悪化、排気温度上昇などの発生を最小限にとどめることが可能になると言われている。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上記のような燃焼制御は、あくまでノック信号だけを正確に抽出できることが前提であるが、従来の手法では、イオン電流に、コロナノイズなどのスパイクノイズが重畳した場合に、意図した通りの制御性能を実現することはできないという問題があった。例えば、コロナノイズは、点火プラグの碍子部に帯電した電荷が放電して発生するが、碍子部の帯電状態に応じて不規則に発生する特性がある。しかも、このコロナノイズの周波数は、ノック信号の周波数帯域に一致することも多いので、フィルタ処理などによってノイズ成分を確実に除去することはできない。
【０００６】
本発明は、これらの問題点に鑑みてなされたものであって、スパイクノイズの周波数帯域に拘わらず、ノック信号のみを抽出できる燃焼制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記の目的を達成するため、請求項１に係る内燃機関の燃焼制御装置は、燃焼室の混合気の燃焼時に発生するイオンに対応したイオン電流を検出する信号検出部と、前記信号検出部が出力する検出信号をサンプリング周期毎に取得して、信号入力データを記憶するデータ取得部と、前記信号入力データを微分演算し、微分演算結果が基準値ＴＨを超えるか否かの判定によって、イオン電流が急変する急変開始位置を特定する位置検出部と、前記急変開始位置の発生タイミングと、予め特定されているノック信号周期とを対比して、ノイズによる急変開始位置を特定するノイズ特定部と、特定されたノイズによる急変開始位置の前後について、前記信号入力データを補正して、実質的にノイズ成分を削除するデータ補正部と、を有して構成されている。
【０００９】
また、本発明に係る内燃機関の燃焼制御装置は、燃焼室の混合気の燃焼時に発生するイオンに対応したイオン電流を検出する信号検出部と、前記信号検出部が出力する検出信号をサンプリング周期毎に取得して、信号入力データを記憶するデータ取得部と、前記信号入力データを微分演算し、微分演算結果が基準値ＴＨを超えるか否かの判定によって、イオン電流が急変する急変開始位置を特定する位置検出部と、前記急変開始位置の微分演算結果と、予め特定されているノック信号周期だけ離間した箇所における微分演算結果とを対比して、ノイズによる急変開始位置を特定するノイズ特定部と、特定されたノイズによる急変開始位置の前後について、前記信号入力データを補正して、実質的にノイズ成分を削除するデータ補正部と、を有して構成される。
【００１０】
上記各発明において、前記サンプリング周期τは、予め特定されているノック信号周期τｎに基づいてτ＜τｎ／２に設定されるのが好ましい。また、前記基準値ＴＨは、前記微分演算の演算結果から導出される統計値に基づいて決定されるのが好ましい。統計値としては、微分演算結果の平均値や標準偏差値を採用するのが好ましい。この平均値や標準偏差値は、微分結果の正の値のみから算出すると更に好ましい。
【００１１】
また、前記データ取得部は、切出しウインドの時間範囲のイオン電流を取得するよう動作する一方、前記切出しウインドの時間軸上の位置と範囲は、動的に変化する内燃機関の運転条件に対応して決定されるのが好ましい。
【発明の効果】
【００１２】
以上説明した本発明によれば、スパイクノイズの周波数帯域に拘わらず、ノック信号を正確に抽出できる燃焼制御装置を実現することができる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明を実施例に基づいて本発明を詳細に説明する。
【００１４】
図１（ａ）は、実施例に係る燃焼制御装置ＥＱＵを示す回路図である。この燃焼制御装置ＥＱＵは、１次コイル１Ｐと２次コイル１Ｓとが電磁結合された点火コイル１と、点火コイル１を断続的に駆動するスイッチングトランジスタ２と、点火コイルの２次コイル１Ｓに接続されたイオン電流検出回路３と、スイッチングトランジスタ２をＯＮ／ＯＦＦ制御すると共にイオン電流検出回路３からのアナログ検出信号ＳＧを受けるワンチップマイコン４とで構成されている。そして、点火コイルの２次コイル１Ｓとグランドラインとの間に点火プラグ５が接続されている。
【００１５】
図示の通り、スイッチングトランジスタ２のベース端子は、ワンチップマイコン４に接続され、コレクタ端子は、点火コイルの一次コイル１Ｐに接続され、エミッタ端子は、グランドラインに接続されている。
【００１６】
イオン電流検出回路３は、点火プラグ５の放電電流で充電されるバイアス用のコンデンサＣと、コンデンサＣに並列接続されてコンデンサＣの充電電圧を規制するツェナーダイオードＺＤと、ツェナーダイオードＺＤに直列接続されたダイオードＤ１と、ダイオードＤ１の両端に接続された増幅部ＡＭＰとで構成されている。
【００１７】
ツェナーダイオードＺＤとダイオードＤ１のアノード端子は、互いに直結され、ダイオードＤ１のカソード端子はグランドラインに接続されている。また、ツェナーダイオードＺＤのカソード端子は、二次コイル１Ｓに接続されている。
【００１８】
イオン電流検出回路３の増幅部ＡＭＰは、反転端子と非反転端子と出力端子とを有する増幅素子Ｑ１と、増幅素子Ｑ１の反転端子に接続される入力抵抗Ｒ１と、増幅素子Ｑ１の反転端子と出力端子の間に接続される帰還抵抗Ｒ２とで構成されている。なお、増幅素子Ｑ１の反転端子とグランドラインとの間に、増幅素子Ｑ１を保護するためのダイオードＤ２を接続しても良い。
【００１９】
増幅素子Ｑ１として、この実施例では、ＯＰアンプを使用している。ＯＰアンプは、その入力インピーダンスがほぼ無限大（≒∞）で、反転端子と非反転端子との間が、仮想的に短絡状態である(imaginary short)。そのため、図１（ｂ）に示す電流Ｉは、入力抵抗Ｒ１と帰還抵抗Ｒ２に共通して流れることになり、増幅部ＡＭＰの出力電圧Ｖｏｕｔは、電流Ｉと帰還抵抗Ｒ２の積となる（Ｖｏｕｔ＝Ｉ×Ｒ２）。つまり、この増幅部ＡＭＰでは、帰還抵抗Ｒ２が入力電流Ｉの検出抵抗として機能している。
【００２０】
図１の回路構成において、二次コイル１Ｓに負の高電圧が発生すると、点火プラグ５が点火放電し、図１（ａ）に示すように、点火電流がコンデンサＣを充電する。この時、コンデンサＣにはツェナーダイオードＺＤが並列接続されているので、コンデンサＣの両端電圧は、ツェナーダイオードＺＤの降伏電圧Ｖｚに一致する。なお、この放電時には、ダイオードＤ１が短絡状態（ＯＮ）となるので、入力抵抗Ｒ１やその他の回路素子に流れる電流を無視することができる。
【００２１】
その後、二次コイル１Ｓの高電圧が消滅すると（図１（ｄ）参照）、コンデンサＣに充電されたバイアス電圧は、図１（ｂ）に示す経路で放電する。この放電電流は、イオン電流Ｉに他ならず（図１（ｅ）参照）、イオン電流Ｉは、増幅素子Ｑ１の出力端子→帰還抵抗Ｒ２→入力抵抗Ｒ１→コンデンサＣ→二次コイル１Ｓ→点火プラグ５の経路で流れる。
【００２２】
先に説明した通り、出力電圧Ｖｏｕｔ＝Ｒ２×Ｉの関係が成立するので、増幅部ＡＭＰからはイオン電流Ｉに比例した電圧が得られる。
【００２３】
ワンチップマイコン４は、ＣＰＵコア４ａと、Ａ／Ｄコンバータ４ｂと、出力ポート４ｃと、メモリ部４ｄとが内蔵されて構成されている。そして、Ａ／Ｄコンバータ４ｂは、イオン電流検出回路３からアナログ検出信号ＳＧを直接的に受けて、これデジタルデータに変換している。また、出力ポート４ｃからは、スイッチングトランジスタ２のベース端子に向けて点火パルスが出力されている。なお、図示の燃焼制御装置ＥＱＵでは、イオン電流検出回路３とワンチップマイコン４とが直結されているが、途中にサンプルホールド回路などを設けても良い。
【００２４】
続いて、図２（ａ）のフローチャートに基づいて、ワンチップマイコン４の動作内容を説明する。図１及び図２（ａ）に示す通り、先ず、ワンチップマイコン４は、イオン電流検出回路３から得られるアナログ検出信号ＳＧを、直接Ａ／Ｄコンバータ４ｂで受け、デジタル変換されたデータをメモリ部４ｄに記憶する（ＳＴ１）。このデータ取得処理では、イオン電流に重畳するノック信号を正確に取得する必要があるので、サンプリング周波数は、ノック信号の周波数の２倍以上に設定される。
【００２５】
ここで、ノック信号の周波数は、内燃機関の構造に基づいて実験的に特定できるが、以下の説明では、ノック信号の周波数が例えば８ＫＨｚであるとする。そのため、この実施例では、サンプリング周波数Ｆ＞２×８ＫＨｚの条件を満たす値として、サンプリング周波数Ｆを約３０ＫＨｚ、言い換えると、サンプリング周期τ（＝１／Ｆ）を３３μＳとしている。
【００２６】
また、このデータ取得処理は、イオン電流を確実に捕捉できるように設定された切出しウインドＷｉｎの範囲内で実行される。図２（ｂ）は、イオン電流検出回路３から得られるアナログ信号波形と、時間幅Ｔ（＝３３μＳ×（Ｎ−１））の切出しウインドＷｉｎとの関係を図示したものである。図示の通り、イオン電流のピーク位置以降に、ノック信号とスパイクノイズが重畳している。
【００２７】
イオン電流は、点火プラグ５の放電終了後に発生するが（図１（ｅ）参照）、点火プラグ５の放電終了時や、発生したイオン電流の消失タイミングは、エンジン回転数やエンジン負荷などの運転条件に応じて動的に変化する。そこで、この実施例では、内燃機関の運転条件と、その運転条件下で発生するイオン電流との関係を予め実験的に求めておき、その関係を示すウインド算出テーブルＴＢＬをメモリ部４ｄに設けている。そして、実際の運転時には、運転条件を示す各種センサからのデータに基づいて前記ウインド算出テーブルＴＢＬ１を検索し、その検索結果に基づいて、切出しウインドＷｉｎの開始位置と終了位置とをリアルタイムに決定している。
【００２８】
さて、図２（ａ）のステップＳＴ１の処理によって必要な範囲のデータ取得が終われば、次に、メモリ部４ｄに記憶したＮ個の信号入力データＳＧ（ｉ）について、差分演算によって微分処理を施す（ＳＴ２）。図３（ａ）に示すフローチャートの通り、図２（ａ）の微分処理（ＳＴ２）は、ｉ＝１・・・ＮのＮ個のデータＳＧ（ｉ）について、Ｄ（ｉ）←ＳＧ（ｉ）−ＳＧ（ｉ−１）の差分演算によって実行される（ＳＴ２１〜ＳＴ２３）。
【００２９】
なお、図３（ｂ）は、微分演算による微分波形を図示している。
【００３０】
図２（ａ）のステップＳＴ２の微分処理が終われば、次に、微分値Ｄ（ｉ）を微分閾値ＴＨと比較し、急傾斜フラグＴｎ（ｉ）を算出する（ＳＴ３）。図４（ａ）は、急傾斜フラグＴｎ（ｉ）の算出処理を示すフローチャートである。
【００３１】
図示の通り、ｉ＝１〜ｎについて昇順に、微分値Ｄ（ｉ）と閾値ＴＨとを比較し（ＳＴ３２）、Ｄ（ｉ）≧ＴＨであれば、一つ手前の微分値Ｄ（ｉ−１）が閾値ＴＨより小さいことを条件に（ＳＴ３３）、急傾斜フラグＴｎ（ｉ）を１にする（ＳＴ３４）。一方、微分値Ｄ（ｉ）が閾値ＴＨより小さい場合、或いは、Ｄ（ｉ）≧ＴＨであっても、一つ手前の微分値Ｄ（ｉ−１）も含め、Ｄ（ｉ−１）≧ＴＨである場合には、急傾斜フラグＴｎ（ｉ）を０にする（ＳＴ３５）。
【００３２】
以上の処理は、要するに、ｉ＝１〜ｎについて昇順に判定し、初めてＤ（ｉ）≧ＴＨとなった場合には、急傾斜フラグＴｎ（ｉ）＝１に設定することを意味する（図４（ｃ）参照）。したがって、仮にその後も、微分値Ｄ（ｉ＋１）、Ｄ（ｉ＋２）・・・の値が、連続して閾値ＴＨ以上であったとしても、各急傾斜フラグＴｎ（ｉ＋１）、Ｔｎ（ｉ＋２）・・・は、全て０に設定される。このような処理によって、イオン電流波形が急上昇を開始する位置を検出できることになる。なお、イオン電流波形が急上昇を開始するのは、イオン電流にノック信号が重畳しているか、或いは、スパイクノイズが重畳しているためである。
【００３３】
図４（ａ）の微分処理で使用する閾値ＴＨは、取得したイオン電流波形やその微分波形の統計値に基づいて適宜に設定される。例えば、正の値を示す微分値（Ｄ（ｉ）＞０）のみを積和演算して平均値ＡＶを求め（ＡＶ＝ΣＤ（ｊ）／Ｍ）、算出した平均値ＡＶに、適宜な定数γを積算することで閾値ＴＨとすれば良い（ＴＨ＝γ×ＡＶ）。或いは、また、正の値を示す微分値Ｄ（ｉ）について、平均値ＡＶと標準偏差σとを算出し、これらに基づいて閾値ＴＨを決定するもの好適である。
【００３４】
何れにしても、図４（ａ）の処理によって急傾斜フラグＴｎ（ｉ）を算出したら、次に、Ｎ個の急傾斜フラグＴｎ（ｉ）について、その値が１を示す時間間隔を判定する。すなわち、ノック信号による急傾斜開始位置には、一定の時間周期αがある筈であり、しかも、その時間周期αは、内燃機関の構造に基づいて予め特定されている。これに対して、コロナノイズは、ランダムに発生するので、急傾斜開始位置を検索して、それが所定周期τｎ＝α（この例では１／８ＫＨｚ）で発生していればノック信号であり、そうでなければ、スパイクノイズであると判定することができる。
【００３５】
急傾斜開始位置が、ノック信号によるものか、或いは、スパイクノイズによるものかの判定処理は、図４（ｂ）に示す通りである。先ず、急傾斜フラグＴｎ（ｉ）が０か１かを判定して（ＳＴ４１）、もし急傾斜フラグＴｎ（ｉ）＝１であれば、続いて所定周期α以前（Ｔｎ（ｉ−α））か、或いは、所定周期α以降（Ｔｎ（ｉ＋α））に、急傾斜開始位置が存在するか否かを判定する（ＳＴ４２）。なお、この実施例では、ノック信号の周期が１２５μＳ（＝１／８ＫＨｚ）であるのに対してサンプリング周期τが３３μＳであるので、α≒３．８（＝１２５／３３）となり、整数値を採用する必要から、Ｔｎ（ｉ−３）、Ｔｎ（ｉ−４）、Ｔｎ（ｉ＋３）、Ｔｎ（ｉ＋４）の全てが判定対象となる。
【００３６】
そして、急傾斜フラグＴｎ（ｉ−３）、Ｔｎ（ｉ−４）、Ｔｎ（ｉ＋３）、Ｔｎ（ｉ＋４）のいずれか１であれば、急傾斜フラグＴｎ（ｉ）＝１は、ノック信号による急傾斜開始位置を意味していると判定して、ノイズフラグＮＳ（ｉ）をＮＳ（ｉ）＝０に設定する（ＳＴ４４）。一方、急傾斜フラグＴｎ（ｉ−３）、Ｔｎ（ｉ−４）、Ｔｎ（ｉ＋３）、Ｔｎ（ｉ＋４）の全てが０であれば、急傾斜フラグＴｎ（ｉ）＝１は、スパイクノイズによる急傾斜開始位置を意味していると判定して、ノイズフラグＮＳ（ｉ）をＮＳ（ｉ）＝１に設定する（ＳＴ４３）。なお、図４（ｃ）では、ｉ＝Ｘの位置にスパイクノイズが検出されて、ＮＳ（Ｘ）＝１となっている。
【００３７】
以上のようにしてスパイクノイズを特定すると、信号入力データＳＧ（ｉ）のうち、スパイクノイズと思われるデータを補正して、スパイクノイズを削除する（図２のＳＴ５）。図５は、そのノイズ除去処理を具体的に説明するフローチャートである。
【００３８】
先ず、ｉ＝１〜Ｎについて昇順に、ノイズフラグＮＳ（ｉ）が１であるか否かを判定する（ＳＴ５２）。そして、例えばノイズフラグＮＳ（Ｘ）がＮＳ（Ｘ）＝１であれば、ｉ＝Ｘの位置を基準にして、時間軸前方と時間軸後方に、開始基準位置ＢＧＮと終了基準位置ＥＮＤとを決定する（ＳＴ５３）。
【００３９】
開始基準位置ＢＧＮと終了基準位置ＥＮＤの具体的な決定手法は適宜であるが、例えば、開始基準位置は、急傾斜フラグＴｎ（ＢＧＮ）＝０であることを条件に、ＢＧＮ＝Ｘ−２に決定される。但し、急傾斜フラグＴｎ（ＢＧＮ）＝Ｔｎ（Ｘ−２）＝１であれば、ＢＧＮ＝Ｘ−１とする。なお、本実施例では、図４（ａ）のステップＳＴ３２〜ＳＴ３３の処理を設けているので、Ｔｎ（Ｘ）は急傾斜の開始位置であって、一つ手前でＴｎ（Ｘ−１）＝１となることはない。
【００４０】
一方、終了基準位置ＥＮＤは、Ｔｎ（Ｘ＋１）〜Ｔｎ（Ｘ＋α−１）が全て０であることを条件にＥＮＤ＝Ｘ＋αとされる。この実施例ではα＝３．７８（＝１２５／３３）となるので、Ｔｎ（Ｘ＋１）〜Ｔｎ（Ｘ＋α−１）の判定ではα＝４を使用し、終了基準位置はＥＮＤ＝Ｘ＋４とする。但し、もしＴｎ（Ｘ＋１）〜Ｔｎ（Ｘ＋α−１）の範囲内に０でないものが存在し、例えば、時間軸上最初にＴｎ（Ｘ＋β）が１となるのであれば、終了基準位置ＥＮＤを一つ手前の（Ｘ＋β−１）とする。
【００４１】
上記のようにして、開始基準位置ＢＧＮと終了基準位置ＥＮＤとが決まれば（ＳＴ５３）、信号入力データＳＧ（ｉ）について、ＳＧ（ＢＧＮ）とＳＧ（ＥＮＤ）とを仮想的に直線で接続して、ＳＧ（ＢＧＮ＋１）〜ＳＧ（ＥＮＤ−１）の信号入力データを直線補間する（ＳＴ５４）。図５（ｃ）は、補間処理を図示したものであり、ＳＧ（ＢＧＮ）とＳＧ（ＥＮＤ）の値に基づいて、ＳＧ（ＢＧＮ＋１）〜ＳＧ（ＥＮＤ−１）のスパイクノイズが実質的に除去されている。
【００４２】
以上ようにして、ノック信号を残しつつノイズ成分のみを除去できるので、後は、予め特定されているノック周波数（この例では８ＫＨｚ）に対応するＢＰＦ処理を実行して、信号入力データＳＧ（ｉ）からノック信号を抽出する（図２のＳＴ６）。
【００４３】
以上の通り、本実施例では、ノック信号の周期性に着目してスパイクノイズを排除するので、スパイクノイズとノック信号の周波数帯域に一致しても、スパイクノイズを排除することができる。
【００４４】
なお、上記した具体的な内容は特に本発明を限定するものではなく、本発明の趣旨を逸脱することなく各種の改変が可能である。特に、ノイズ検出の手法やノイズ成分を除去する手法は例示したものに限らない。
【００４５】
例えば、図４のステップＳＴ４のアルゴリズムでは、予め特定されているノック信号の発生周期α（＝τｎ）のみを根拠にして、ノック信号とノイズとを区別しているが、このアルゴリズムに加えて、ノック信号よりノイズの方が高周波数であることを利用してノイズを抽出するもの好適である。
【００４６】
図６は、ノイズ検出について、この別の手法を説明するフローチャートである。図示の通り、先ず、カウンタ変数ＣＮＴをゼロクリアした後（ＳＴ６０）、図４のステップＳＴ３と同様に、ｉ＝１〜ｎについて、急傾斜フラグＴｎ（ｉ）の値を設定してゆく。但し、この場合には、閾値ＴＨ’をステップＳＴ３の場合より大きく設定する。この閾値ＴＨ’は、ノイズの急峻な立上がりのみを特異的に抽出するための閾値であり、ノック信号の立上がり特性より、ノイズの方が鋭く立ち上がることに基づき、リアルタイムに変化する運転条件に対応して、閾値ＴＨ’が予め実験的に決定されている。但し、この閾値ＴＨ’も、微分演算の演算結果から導出される統計値に基づいて決定しても良い。統計値としては、微分演算結果の平均値や標準偏差値が例示されるが、この平均値や標準偏差値は、微分結果の正の値のみから算出するのが好ましい。
【００４７】
何れにしても、図６のアルゴリズムでは、急傾斜フラグＴｎ（ｉ）＝１となった個数をカウンタ変数ＣＮＴで計数する（ＳＴ６６）。そして、ステップＳＴ５１〜６７の処理が終われば、カウンタ変数ＣＮＴの値がゼロか否かを判定し（ＳＴ６８）、もしＣＮＴ＝０なら処理を終える。
【００４８】
一方、ステップＳＴ６８の判定でカウンタ変数ＣＮＴ≠０であった場合には、カウンタ変数ＣＮＴが１か否かを判定する（ＳＴ６９）。カウンタ変数ＣＹＴ＝１である場合は、特別に急峻な変化を示す信号（高周波ノイズ）が一回だけ検出されたことを意味するので、ステップＳＴ７２のデータ補間処理に移行する。なお、データ補間処理は、図５の場合と同じであり、急傾斜フラグＴｎ（ｉ）＝１となる前後の信号入力データＳＧ（ＢＧＮ）〜ＳＧ（ＥＮＤ）に基づいて、ノイズと判定された信号入力データＳＧ（ＢＧＮ＋１）〜ＳＧ（ＥＮＤ−１）を補正する。
【００４９】
また、ステップＳＴ６９の判定でカウンタ変数ＣＮＴ＞１と判定された場合には、複数個検出された急傾斜フラグＴｎ（ｉ）の発生時間間隔Ｔを算出する（ＳＴ７０）。ステップＳＴ６２，６３の判定における閾値ＴＨ’を適宜に設定することにより、急傾斜フラグＴｎ（ｉ）＝１となるのは、ノイズ検出を意味している可能性が高い。しかし、急傾斜フラグＴｎ（ｉ）＝１となる箇所が複数個存在する場合には、これらがノック信号である可能性もある。そこで、ステップＳＴ７０の処理で算出された時間間隔Ｔと、予め特定されているノック周期τｎとを比較して、時間間隔Ｔがノック周期τｎより有意に低い場合には、急傾斜フラグＴｎ（ｉ）＝１となる箇所がノイズであると判定する。すなわち、時間間隔Ｔがノック周期τｎより有意に低いＴ＜τｎ−αの場合には、ステップＳＴ７２に移行させる。一方、Ｔ≧τｎ−αの場合には、ノック信号が検出されていると判定して何もしないで処理を終える。
【００５０】
以上のようにして図６の処理を終えるが、何れの経路を通過した場合でも、その後は、図２に示すＢＰＦ処理（ＳＴ６）に移行する。このように、図６のアルゴリズムを使用すれば、より精密にノイズを検出することができ、ノック信号のみを特異的に抽出することが可能となる。
【００５１】
ところで、上記のアルゴリズムでは、信号入力データＳＧ（ｉ）を微分処理するため、スパイクノイズの微分値Ｄ（ｉ）が正負にリバウンドすることになり、場合によっては、ノック信号の周波数と区別できないことがある。図７は、この例外的な状態を図示したものであり、閾値ＴＨを超える急傾斜フラグＴｎの周期が、たまたまノック信号の周期と一致しているため、上記のアルゴリズムでは、スパイクノイズを除去できない場合を示している。
【００５２】
一方、通常のノック信号は、その微分値Ｄ（ｉ）が連続して閾値を超えるものの、ハードノックと称されるタイプのノック信号は、その微分値Ｄ（ｉ）がスパイクノイズと同様の兆候を示し、閾値を連続しては超えないことがある。そのため、先に説明したアルゴリズムのままでは、ノック信号が、スパイクノイズに誤認されて消去されてしまうおそれがある。
【００５３】
そこで、上記の何れの問題にも対処できるアルゴリズムが必要であり、ハードノックを消去させない一方で、スパイクノイズを確実に消去できるアルゴリズムが望まれる。以上を踏まえて、更に検討したところ、微分処理後の信号入力データの微分値Ｄ（ｉ）が閾値ＴＨを超える場合でも、その微分値レベルを判定することによって、ハードノックを消去することなく、スパイクノイズのみを消去することが可能となった。
【００５４】
図８（ａ）は、このアルゴリズムを図示したものである。ステップＳＰ１〜ＳＰ３及びＳＰ６〜ＳＰ７の処理は、図２（ａ）のステップＳＴ１〜ＳＴ３及びＳＴ５〜ＳＴ６の処理と同じであるが、ステップＳＰ４〜ＳＰ５の処理に特徴がある。
【００５５】
ステップＳＰ４の処理内容は、図８（ｂ）に示す通りであり、ｉ＝１〜Ｎの急傾斜フラグＴｎ（ｉ）のうち、Ｔｎ（ｉ）＝１となるもの、つまり、微分値Ｄ（ｉ）が急傾斜によって増加を開始する開始位置ｉを抽出する（ＳＰ４０〜４２）。
【００５６】
そして、急傾斜の開始位置ｉから時間軸後方に向かって適当な個数βだけ、各微分値Ｄ（ｉ）〜Ｄ（ｉ＋β）を評価し、その最大値ＭＡＸを抽出する（ＳＰ４３〜ＳＰ４６）。βは、ノイズ信号とノック信号の周波数に基づいて設定され、何れか周波数が低い方の信号の信号周期の１／２程度に設定される。
【００５７】
先に説明した通り、微分値Ｄ（ｉ）〜Ｄ（ｉ＋β）が、連続して閾値ＴＨを超えた場合でも、増加開始位置ｉについてだけ、急傾斜フラグＴｎ（ｉ）を１とし、その後の急傾斜フラグＴｎ（ｉ＋１）〜Ｔｎ（ｉ＋β）は全てゼロとしている。したがって、急傾斜の開始位置ｉから時間軸後方に、微分値の最大ピークが生じる可能性がある。
【００５８】
そこで、ｊ＝ｉ〜ｉ＋βについて、ゼロに初期設定された変数ＭＡＸの値と、各微分値Ｄ（ｊ）とを比較し（ＳＰ４４）、Ｄ（ｊ）＞ＭＡＸの場合だけ、変数ＭＡＸの値を書き換える（ＳＰ４５）。そして、ｉ〜ｉ＋βについて、この処理を終えた後、区間ｉ〜ｉ＋βの最大値ＭＡＸを、急傾斜点ｉの抽出値ＰＫ（ｉ）として記憶する。一方、ｉ＝１〜Ｎの急傾斜フラグＴｎ（ｉ）のうち、Ｔｎ（ｉ）＝０となる場合には、その位置ｉの微分値Ｄ（ｉ）を、抽出値ＰＫ（ｉ）として記憶する（ＳＰ４９）。
【００５９】
図９（ｂ）には、このようにして決定された抽出値ＰＫ（１）〜ＰＫ（Ｎ）が図示されている。但し、実際には、必ずしもＮ個の配列ＰＫ（１）〜ＰＫ（Ｎ）を設ける必要はなく、Ｔｎ（ｉ）＝１となる箇所ｉについてだけ、微分値Ｄ（ｉ）を抽出値ＰＫ（ｉ）に書き換えたので足りる。つまり、配列ＰＫ（１）〜ＰＫ（Ｎ）は、配列Ｄ（１）〜Ｄ（Ｎ）を代用する。
【００６０】
何れにしても、図９（ｂ）では、急傾斜フラグＴｎ（１０）とＴｎ（１４）だけが１であり、抽出値ＰＫ（１０）とＰＫ（１４）だけが、その周辺位置の微分値Ｄ（ｉ）〜Ｄ（ｉ＋β）を加味した最大値ＭＡＸに書き換えられている。
【００６１】
続いて、ノイズ判定アルゴリズムについて、図９（ａ）に基づいて説明する。図示の通り、ｉ＝１〜Ｎについて、急傾斜フラグＴｎ（ｉ）＝１となる箇所を検索し、Ｔｎ（ｉ）＝１の箇所ｉにおける抽出値ＰＫ（ｉ）と、ｉ−α位置及びｉ＋α位置の抽出値ＰＫ（ｉ−α）及びＰＫ（ｉ＋α）とを比較する（ＳＰ５３）。先に説明した通り、αは、内燃機関の構造に基づいて予め特定されているノック信号の時間周期αである。そして、この実施例では、α≒３．８（＝１２５／３３）となるので、ＰＫ（ｉ−３）、ＰＫ（ｉ−４）、ＰＫ（ｉ＋３）、ＰＫ（ｉ＋４）の全てが判定対象となる。
【００６２】
そして、抽出値ＰＫ（ｉ）との比率ＲＴＯを算出し、ＰＫ（ｉ）／ＰＫ（ｉ−３）、ＰＫ（ｉ）／ＰＫ（ｉ−４）、ＰＫ（ｉ）／ＰＫ（ｉ＋３）、ＰＫ（ｉ）／ＰＫ（ｉ＋４）の演算により算出された全ての比率ＲＴＯが、基準値１／ＢＳ〜ＢＳの範囲内の値であれば、ノイズフラグＮＳ（ｉ）をＮＳ（ｉ）＝０に設定する（ＳＰ５４）。つまり、算出した全ての比率ＲＴＯが、２つの基準値１／ＢＳ，ＢＳとの関係で１／ＢＳ＜ＲＴＯ＜ＢＳとなる場合には、ＮＳ（ｉ）＝０とする。
【００６３】
一方、ＰＫ（ｉ）／ＰＫ（ｉ−３）、ＰＫ（ｉ）／ＰＫ（ｉ−４）、ＰＫ（ｉ）／ＰＫ（ｉ＋３）、ＰＫ（ｉ）／ＰＫ（ｉ＋４）の何れかの比率ＲＴＯが、基準値１／ＢＳ〜ＢＳの範囲外の値となれば、ノイズフラグＮＳ（ｉ）をＮＳ（ｉ）＝１に設定する（ＳＰ５５）。つまり、算出した何れかの比率ＲＴＯが、２つの基準値１／ＢＳ，ＢＳとの関係でＲＴＯ≦１／ＢＳとなるか、又はＲＴＯ≧ＢＳとなる場合には、ＮＳ（ｉ）＝１とする。
【００６４】
図９に示した実施例では、Ｔｎ（１０）とＴｎ（１４）とが、ノック信号の時間周期αの間隔で１となっている。したがって、図２のアルゴリズムでは、ノイズフラグＳＮ（１０）やＳＮ（１４）が共にゼロとなり、スパイクノイズでありながら除去することができない。
【００６５】
しかし、図８のアルゴリズムによれば、スパイクノイズであることを正しく認識することができる。すなわち、抽出値ＰＫ（１０）とＰＫ（１４）は、図９（ｃ）に示すレベルであり、ＰＫ（１０）／ＰＫ（１４）＞ＢＳとなるために、ノイズフラグＳＮ（ｉ）は、正しくＳＮ（１０）＝１となる。また、ＰＫ（１４）／ＰＫ（１０）＜１／ＢＳとなるため、ノイズフラグＳＮ（ｉ）は、正しくＳＮ（１４）＝１となる。
【００６６】
このようにノイズフラグＮＳ（ｉ）が正しくセットされるので、その後のステップＳＰ６の処理によって、スパイクノイズを除去することができ、ＢＰＦ処理（ＳＰ７）によって正確にノック信号のみを抽出することができる。すなわち、図８に示すアルゴリズムによれば、スパイクノイズの微分値が、ノック信号の時間周期αで閾値ＴＨを超える場合でも、スパイクノイズを確実に除去することができる。
【００６７】
また、図８に示すアルゴリズムによれば、信号入力データＳＧ（ｉ）の微分値が、一回だけ閾値を超えるような場合（ハードノックの場合）でも、これをノイズと誤認することがない。すなわち、ハードノックの場合には、ＰＫ（ｉ）／ＰＫ（ｉ−３）、ＰＫ（ｉ）／ＰＫ（ｉ−４）、ＰＫ（ｉ）／ＰＫ（ｉ＋３）、ＰＫ（ｉ）／ＰＫ（ｉ＋４）の何れの比率ＲＴＯも、基準値１／ＢＳ〜ＢＳの範囲内の値となるので、ノイズフラグＳＮ（ｉ）＝０とされ（ＳＰ５４）、ＳＮ（ｉ）＝１となることはない（図９（ｄ）参照）。
【図面の簡単な説明】
【００６８】
【図１】実施例に係る燃焼制御装置の回路構成を示す回路図である。
【図２】ワンチップマイコンの制御動作の概要を示すフローチャートと、イオン電流検出回路の検出信号波形である。
【図３】微分処理を示すフローチャートと、微分波形の波形図である。
【図４】急傾斜フラグとノイズ検出フラグの設定処理を示すフローチャートと、アルゴリズムを説明する図面である。
【図５】データ補間処理を示すフローチャートと、カウントアルゴリズムを説明する図面である。
【図６】ノイズ検出のための別のアルゴリズムを説明するフローチャートである。
【図７】判定が困難なノイズ波形を図示したものである。
【図８】ワンチップマイコンの別の制御動作の概要を示すフローチャートである。
【図９】図８の一部を詳細に説明するフローチャートと、その動作を説明する図面である。
【符号の説明】
【００６９】
ＥＱＵ    燃焼制御装置
３    信号検出部（イオン電流検出回路）
ＳＧ（ｉ）  信号入力データ
ＳＴ１    データ取得部
ＳＴ２〜ＳＴ３  位置検出部
ＳＴ４    ノイズ特定部
ＳＴ５    データ補正部
【図１】
0004782035.tif 000002
【図２】
0004782035.tif 000003
【図３】
0004782035.tif 000004
【図４】
0004782035.tif 000005
【図５】
0004782035.tif 000006
【図６】
0004782035.tif 000007
【図７】
0004782035.tif 000008
【図８】
0004782035.tif 000009
【図９】
0004782035.tif 000010