(57)【特許請求の範囲】
【請求項１】
エンジンの気筒内の燃焼状態を検出するセンサが出力するアナログのセンサ信号をデジタル信号に変換するＡＤ変換手段と、
クランク角を検出するセンサ信号からクランク角度に同期した判定期間を生成する判定期間設定手段と、
前記判定期間を複数のクランク角度区間に分割設定するクランク角度区間設定手段と、
前記複数のクランク角度区間内における経過時間を計測する計時手段と、
前記ＡＤ変換手段から出力される前記センサ信号のデータを入力し、前記複数のクランク角度区間毎にピーク値を検出するピーク値検出手段と、
前記複数のクランク角度区間毎のピーク値検出時のクランク角度を、前記計時手段による前記ピーク値検出時までの経過時間から算出するクランク角度算出手段と、
前記ピーク値検出手段により検出されたピーク値および前記クランク角度算出手段により算出されたクランク角度を記憶する記憶手段と、
前記ピーク値検出手段により検出された前記ピーク値とプレイグニッション判定値とを比較してプレイグニッションが発生したことを判定する判定手段とを備え、
前記判定手段は、前記センサ信号のピーク値を前記プレイグニッション判定値と比較して判定する際に、前記ピーク値検出時のクランク角度が気筒の点火時点以前に相当するときには第１のプレイグニッション判定値で、点火時点よりも後に相当するときには前記第１のプレイグニッション判定値とは異なる第２のプレイグニッション判定値で判定を行うことを特徴とするセンサ信号の処理装置。
【請求項２】
請求項１に記載のセンサ信号の処理装置において、
前記判定手段は、前記ピーク値検出時のクランク角度が前記判定期間のうちのエンジンのノック状態を検出するノック判定期間と重複する期間となる場合には、ノック判定値よりも高い値に設定された第３のプレイグニッション判定値と前記ピーク値との比較でプレイグニッションの判定を行い、プレイグニッション状態が判定されないときに、前記ノック判定値と前記ピーク値との比較でノック判定を行うことを特徴とするセンサ信号の処理装置。
【請求項３】
エンジンの気筒内の燃焼状態を検出するセンサが出力するアナログのセンサ信号をデジタル信号に変換するＡＤ変換手段と、
クランク角を検出するセンサ信号からクランク角度に同期した判定期間を生成する判定期間設定手段と、
前記判定期間を複数のクランク角度区間に分割設定するクランク角度区間設定手段と、
前記複数のクランク角度区間内における経過時間を計測する計時手段と、
前記ＡＤ変換手段から出力される前記センサ信号のデータを入力し、前記複数のクランク角度区間毎にピーク値を検出するピーク値検出手段と、
前記複数のクランク角度区間毎のピーク値検出時のクランク角度を、前記計時手段による前記ピーク値検出時までの経過時間から算出するクランク角度算出手段と、
前記ピーク値検出手段により検出されたピーク値および前記クランク角度算出手段により算出されたクランク角度を記憶する記憶手段と、
前記ピーク値検出手段により検出された前記ピーク値とプレイグニッション判定値とを比較してプレイグニッションが発生したことを判定する判定手段とを備え、
前記判定手段は、前記ピーク値検出時のクランク角度が前記判定期間のうちのエンジンのノック状態を検出するノック判定期間と重複する期間となる場合には、ノック判定値よりも高い値に設定された第３のプレイグニッション判定値と前記ピーク値との比較でプレイグニッションの判定を行い、プレイグニッション状態が判定されないときに、前記ノック判定値と前記ピーク値との比較でノック判定を行うことを特徴とするセンサ信号の処理装置。
【請求項４】
請求項１から３のいずれか一項に記載のセンサ信号の処理装置において、
前記クランク角度算出手段は、前記複数のクランク角度区間毎のピーク値検出時のクランク角度を、クランク角度区間の時間に対して前記計時手段により計時される前記ピーク値検出時までの経過時間の割合から比例配分により算出することを特徴とするセンサ信号の処理装置。
【請求項５】
請求項１から４のいずれか一項に記載のセンサ信号の処理装置において、
前記クランク角度算出手段は、前記クランク角度区間の開始時点で前記計時手段をリセットさせ、前記ピーク値検出時までの前記計時手段の計時時間を経過時間として取得することを特徴とするセンサ信号の処理装置。
【請求項６】
請求項１から５のいずれか一項に記載のセンサ信号の処理装置において、
前記ＡＤ変換手段は、前記センサ信号を所定のサンプリング周期でＡＤ変換するように構成されていることを特徴とするセンサ信号の処理装置。
【請求項７】
請求項１から６のいずれか一項に記載のセンサ信号の処理装置において、
前記ＡＤ変換手段は、前記センサ信号をＡＤ変換する際のサンプリング周期を外部から設定変更可能に構成されていることを特徴とするセンサ信号の処理装置。
【請求項８】
請求項１から７のいずれか一項に記載のセンサ信号の処理装置において、
前記ＡＤ変換手段によりデジタル信号に変換されたセンサ信号のノイズを除去するデジタルフィルタを設け、
前記ピーク値検出手段は、前記ＡＤ変換手段から出力される前記センサ信号を前記デジタルフィルタを介した上で入力することを特徴とするセンサ信号の処理装置。
【請求項９】
請求項１から８のいずれか一項に記載のセンサ信号の処理装置において、
前記ＡＤ変換手段によりデジタルデータに変換された前記センサ信号を積分する積分回路を設け、
前記ピーク値検出手段は、前記ＡＤ変換手段から出力される前記センサ信号を前記積分回路を介した上で入力することを特徴とするセンサ信号の処理装置。
【請求項１０】
請求項１から９のいずれか一項に記載のセンサ信号の処理装置において、
前記ＡＤ変換手段によりデジタルデータに変換されたセンサ信号を全波整流する整流手段を設け、
前記ピーク値検出手段は、前記ＡＤ変換手段から出力される前記センサ信号を前記全波整流手段を介した上で入力することを特徴とするセンサ信号の処理装置。
【請求項１１】
請求項１から１０のいずれか一項に記載のセンサ信号の処理装置において、
前記ＡＤ変換手段、前記判定期間設定手段、前記角度区間設定手段、前記計時手段、前記ピーク値検出手段、前記クランク角度取得手段は、これらを一体にした半導体装置として形成されていることを特徴とするセンサ信号の処理装置。
【請求項１２】
請求項１から１１のいずれか一項に記載のセンサ信号の処理装置において、
前記クランク角度に同期して生成した判定期間の情報が正常に入力されているか否かを監視する監視手段を設けたことを特徴とするセンサ信号の処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、エンジン制御用のセンサ信号の処理装置に関する。
【背景技術】
【０００２】
エンジンの燃焼状態のうち、何らかの原因により圧縮行程の途中に自然着火してしまう異常燃焼はプレイグニッション現象（以下、「プレイグ」と略称する）と言われている。このようなプレイグが発生すると、エンジンの出力や回転の不調を来たすことになり、好ましくないものである。
【０００３】
そこで、このようなプレイグを検出してエンジンを良好に制御するための構成が必要となる。プレイグ検出には一般的に点火時期と異常振動発生時期を比較する手法があり、正確な異常振動発生時期を取得することが必要である。またプレイグの振幅は大小様々であり、ノックと同様のタイミングで発生する可能性がある為、プレイグとノックを層別するためにプレイグの大きさと発生時期を正確に取得することが重要である。
【０００４】
点火時期と異常振動発生時期を比較してプレイグを検出する手法として特許文献１に示されるものがある。このものにおいては、ある一定時間毎にマイコン（処理装置）からのセンサ値取得要求からＡ／Ｄ変換器によりＡ／Ｄ変換を実施して、その都度マイコンにてセンサ値がしきい値以上か否かを判定することで異常振動が発生しているかを判定する。その異常振動発生時期と点火時期を比較してプレイグ発生を判定している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平８−３１９９３１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら特許文献１に示される方法では、次のような課題がある。すなわち、特許文献１のものでは、一定時間毎にマイコンからの要求でＡ／Ｄ変換器によるＡ／Ｄ変換を実施し、その値がしきい値以上かつ、その異常振動発生時期と点火時期を比較し一定クランク角度以下の場合にプレイグ発生と判定している。したがって、プレイグ振動周波数５〜２５ｋＨｚ程度のセンサ値を正確に検出する為には１００ｋＨｚ程度のサンプリング周波数が必要となり、１０μｓ周期で前記処理を実施する必要がある為、非常に高速な処理が可能なマイコンが必要となり、全体として高価になる課題がある。
【０００７】
そこで、特許文献１のものでは、マイコンの処理負荷（処理速度）を低減する方法が提案されているものの、その方法は、あらかじめプレイグ判定区間とノック判定区間を層別してしまうものであるため、ノック発生時期付近で発生するプレイグを検出できない可能性があった。
【０００８】
本発明は、上記事情を考慮してなされたもので、その目的は、処理負荷を低減することができ、しかもノック判定区間であってもプレイグ判定を確実に行うことができるようにしたセンサ信号の処理装置を提供することにある。
【課題を解決するための手段】
【０００９】
請求項１のセンサ信号の処理装置によれば、判定期間設定手段により設定された判定期間に対応してクランク角度区間設定手段により複数のクランク角度区間が設定され、そのクランク角度区間において、エンジンの気筒内の燃焼状態を検出するセンサが出力するアナログのセンサ信号は、ＡＤ変換手段によりデジタル信号に変換され、このセンサ信号はピーク値検出手段によりピーク値が検出され、クランク角度算出手段によりそのピーク値のクランク角度について計時手段が計時した経過時間によって算出される。これにより、各クランク角度区間毎にピーク値がそのクランク角度と共に検出され、そのピーク値について１回の判定をすることでセンサ信号の処理をすることができる。これによって、ピーク値とならないセンサ信号についての判定処理が不要となるので、全体として高速処理が不要となり、処理負担が軽減される。また、このようにピーク値を検出した時点でのクランク角度を算出することができるので、クランク角度の所定範囲でエンジンの状態としてプレイグニッション状態あるいはノック状態などの判定をする場合に、そのピーク値とクランク角度の情報に基づいて区別して判定をすることができる。
そして、クランク角度算出手段により算出されたピーク値とプレイグニッション判定値とを比較してプレイグニッションが発生したことを判定する判定手段を設けたので、プレイグニッションの判定に必要なクランク角度の判定期間においてクランク角度区間毎に１回の判定を行うことでプレイグニッション状態の有無を判定することができる。また、これにより、判定期間が終了する前でも、クランク角度区間毎に得られるピーク値の大きさがプレイグニッション判定値を超えていれば判定期間が終了するのを待たずにプレイグニッション状態の判定をすることができる。
さらに、判定手段により、センサ信号のピーク値をプレイグニッション判定値と比較して判定する際に、ピーク値検出時のクランク角度が気筒の点火時点以前に相当するときには第１のプレイグニッション判定値で、点火時点よりも後に相当するときには第１のプレイグニッション判定値とは異なる第２のプレイグニッション判定値で判定を行うようにしたので、点火時期の前後でプレイグニッション判定値を適切なしきい値に設定することで正確な判定処理を行うことができる。
請求項２および３に記載のセンサ信号の処理装置によれば、判定手段により、ピーク値検出時のクランク角度が判定期間のうちのエンジンのノック状態を検出するノック判定期間と重複する期間となる場合には、ノック判定値よりも高い値に設定された第３のプレイグニッション判定値とピーク値との比較でプレイグニッションの判定を行い、プレイグニッション状態が判定されないときに、ノック判定値とピーク値との比較でノック判定を行うようにしたので、複数の判定が必要となるクランク角度の範囲においてもそれぞれについて確実に判定を行うことができる。
【００１０】
請求項４に記載のセンサ信号の処理装置によれば、上記各発明において、クランク角度算出手段により、複数のクランク角度区間毎のピーク値検出時のクランク角度を、計時手段により計時されるそのクランク角度区間におけるピーク値検出時までの経過時間に対するピーク値検出時までの経過時間の割合から算出するので、クランク角度に同期したクランク角度区間毎にピーク値検出時のクランク角度を算出することができ、クランク角度区間内での誤差を極力抑制することができる。これにより、ピーク値検出時のクランク角度の算出精度を向上することができる。
【００１１】
請求項５に記載のセンサ信号の処理装置によれば、上記各発明において、クランク角度算出手段により、クランク角度区間の開始時点で計時手段をリセットし、ピーク値検出時までの計時時間を経過時間として取得するようにしたので、クランク角度区間内での計時手段による計時カウント値の値が過度に大きくなるのを防止することができる。
【００１５】
請求項６に記載のセンサ信号の処理装置によれば、上記各発明において、ＡＤ変換手段により、センサ信号を所定のサンプリング周期でＡＤ変換するように構成したので、ＡＤ変換を一定時間毎に行うことでデジタル処理を複雑な演算を伴うことなく実行することができる。
【００１６】
請求項７に記載のセンサ信号の処理装置によれば、上記各発明において、ＡＤ変換手段は、センサ信号をＡＤ変換する際のサンプリング周期を外部から設定変更可能に構成されているので、センサの特性や信号の性質に応じて適切なサンプリング周期を設定してＡＤ変換処理を行うことができる。
【００１７】
請求項８に記載のセンサ信号の処理装置によれば、上記各発明において、ＡＤ変換手段によりデジタル信号に変換されたセンサ信号のノイズを除去するデジタルフィルタを設ける構成としたので、ＡＤ変換後にノイズを除去した上でピーク値を検出することができ、より正確なピーク値のデータを取得することができる。
【００１８】
請求項９に記載のセンサ信号の処理装置によれば、上記各発明において、ＡＤ変換手段によりデジタルデータに変換されたセンサ信号を積分する積分回路を設けたので、ＡＤ変換後に積分することでノイズに対する耐性を向上させることができ、より正確なピーク値のデータを取得することができる。
【００１９】
請求項１０に記載のセンサ信号の処理装置によれば、上記各発明において、ＡＤ変換手段によりデジタルデータに変換されたセンサ信号を全波整流する整流手段を設けたので、ＡＤ変換後のデータを整流することにより、負側の振幅のデータを取得することができ、これによって、より正確なセンサ信号を取得してピーク値の検出を行うことができる。
【００２０】
請求項１１に記載のセンサ信号の処理装置によれば、上記各発明において、ＡＤ変換手段、判定期間設定手段、角度区間設定手段、計時手段、ピーク値検出手段、クランク角度取得手段を、一体にした半導体装置として構成としたので、全体として回路面積を小さくし、且つ信号処理も短い距離で迅速に行うことができる。
【００２１】
請求項１２に記載のセンサ信号の処理装置によれば、上記各発明において、クランク角度に同期して生成した判定期間の情報が正常に入力されているか否かを監視する監視手段を設けたので、クランク角度に同期して生成された信号が正常に出力されているか確認することができ、これによって、センサ信号のピーク値検出動作の信頼性の向上を図ることができる。
【図面の簡単な説明】
【００２２】
【図１】一実施形態を示す全体の電気的構成図
【図２】各部の信号の波形図
【図３】信号の処理手順を示すフローチャート（その１）
【図４】信号の処理手順を示すフローチャート（その２）
【発明を実施するための形態】
【００２３】
以下、本発明の一実施形態について図１〜図４を参照して説明する。
図１はセンサ信号処理装置であるＥＣＵ（electronic control unit）１の電気的な全体構成を示すもので、図示しないエンジンに装着された振動センサ２およびクランク角度を検出するＮＥ（number of engine speed）センサ３から信号を入力する。
【００２４】
ＥＣＵ１は、マイクロコンピュータ（以下「マイコン」と略称する）４を主体として構成されるもので、マイコン４は、ＣＰＵ５を中心として検出回路６および通信インターフェイス回路７を一体に備えた半導体装置であるいわゆるワンチップマイコンとして構成されている。ＣＰＵ５は、検出回路６との間の信号のやりとりを、通信インターフェイス回路７を介して行うように構成されている。ＣＰＵ５は、判定期間設定手段、クランク角度区間設定手段、判定手段および監視手段としての機能を有する。また、ＥＣＵ１には、振動センサ２の検出信号をマイコン４に取り込むための振動センサ入力回路８およびフィルタ回路９を備え、ＮＥセンサ３の検出信号をマイコン４に取り込むためのＮＥセンサ入力回路１０および波形整形回路１１を備えている。
【００２５】
振動センサ２は、エンジンの気筒の振動を検出して検出信号を出力するもので、検出信号は振動センサ入力回路８に入力される。振動センサ入力回路８は、入力端子が位相固定用の抵抗８ａを介して第１電源端子ＶＤに接続されると共に、抵抗８ｂ、直流カットのコンデンサ８ｃ、抵抗８ｄの直列回路を介して出力端子に接続されている。出力端子は抵抗８ｅを介して第２電源端子ＶＥに接続される。この振動センサ入力回路８では、振動センサ２の検出信号を直流カットおよび微分した上で第２電源端子ＶＥの電圧レベルに揃えて出力する。この場合、第１電源端子ＶＤの電圧は例えば５Ｖであり、第２電源端子ＶＥの電圧は例えば２．５Ｖに設定されている。
【００２６】
振動センサ入力回路８の出力はアンプ１２を介してフィルタ回路９に入力される。フィルタ回路９は、Ａ／Ｄ変換する際に発生する折り返しノイズを除去するアンチエイリアスフィルタとしての機能を有するもので、抵抗９ａ、９ｂおよびコンデンサ９ｃからなるローパスフィルタとオペアンプ９ｄなどを備えている。フィルタ回路９は、検出回路６において実施するＡＤ変換処理に先立って所定以上の周波数成分をカットするものである。
【００２７】
ＮＥセンサ３は、エンジンのクランク角度（ＣＡ；crank angle）の信号を出力するもので、ＮＥセンサ入力回路１０に入力される。ＮＥセンサ入力回路１０は、入力端子が位相固定用の抵抗１０ａを介して第１電源端子ＶＤに接続されると共に、抵抗１０ｂ、コンデンサ１０ｃからなるノイズ除去用のローパスフィルタを備えており、所定以上の高周波信号成分をカットして波形整形回路１１に出力する。
【００２８】
波形整形回路１１は、コンパレータ１１ａおよび抵抗１１ｂ、１１ｃからなる分圧回路を備えており、コンパレータ１１ａにより、ＮＥセンサ入力回路１０からの信号レベルと分圧回路の設定電圧とを比較して設定電圧以上になるとハイレベルの信号を出力することで、クランク角度に同期した任意の波形に変換する。波形整形回路１１は、クランク角度に同期した信号を検出回路６および監視手段としてのＣＰＵ５に入力する。
【００２９】
マイコン４の検出回路６において、ＡＤ変換手段としてのＡＤ変換回路（ＡＤＣ）６ａはフィルタ回路９の出力信号を所定のサンプリング周期（例えば１０μｓｅｃ毎）でデジタル信号に変換するもので、変換されたデジタル信号は整流手段としての全波整流回路６ｂに入力される。なお、ＡＤ変換回路６ａのサンプリング周期はＣＰＵ５により変更設定可能に設けられており、プログラム若しくは外部からの指定により任意のサンプリング周期に設定される。全波整流回路６ｂでは、正負の値を有するデジタル信号を全波整流つまり絶対値変換してデジタルフィルタ６ｃに出力する。
【００３０】
デジタルフィルタ６ｃは周波数帯域を限定するもので、フィルタ処理した出力を、積分回路６ｄを介してピーク値検出手段としてのピークホールド回路６ｅに出力する。積分回路６ｄでは、さらにノイズの影響を防止するため振動センサ２の出力信号に重畳された単発的なピークを有する信号をカットし、繰り返し発生している振動成分をピークホールド回路６ｅに出力する。ピークホールド回路６ｅでは、ＣＰＵ５により指定されたプレイグ判定区間内でのピークとなる値をホールドしてそのときのピーク値のデータをＲＡＭ６ｆおよび計時手段としてのカウンタ回路６ｇに出力する。
【００３１】
ＲＡＭ６ｆは、４個の記憶領域ａ〜ｄを有していて、ピークホールド回路６ｅから入力されるピーク値のデータを記憶領域ａ（初期値０）に上書きして記憶させる。ＲＡＭ６ｆの記憶領域ｂはピークホールド時の時間ｔに相当するカウント値、記憶領域ｃはＮＥセンサ３の周期Ｔに相当するカウント値、記憶領域ｄはＮＥセンサ３の立ち下りエッジ毎のクランク角度のデータを記憶する領域である。
【００３２】
カウンタ回路６ｇは、波形整形回路１１の出力信号すなわちＮＥセンサ３からのクランク角度信号が入力されるようになっていて、クランク角度信号の波形の立ち下りエッジのタイミングでカウントを開始し、次の立ち下りエッジのタイミングでカウント値をリセットする。これにより、プログラムを１μｓｅｃ毎に実行してカウント値をアップすることで、クランク角度信号の立ち下がりタイミングで計時動作が開始され、クランク角度信号の次の立ち下がりタイミングで計時動作がリセットされて新たな計時動作が開始されることになる。
【００３３】
カウンタ回路６ｇは、ＮＥセンサ３から与えられるクランク角度信号の周期を計測してＲＡＭ６ｆの記憶領域ｃに記憶する。また、２周期目以降においては、カウンタ回路６ｇは、今回のパルス内でピークホールドした場合（ＲＡＭ６ｆの記憶領域ａへの上書きがあった場合）にＲＡＭ６ｆの記憶領域ｃに上書きする。
【００３４】
また、カウンタ回路６ｇは、ピークホールド回路６ｅからＲＡＭ６ｆの記憶領域ａにピーク値を記憶させるタイミングのカウンタ値をＲＡＭ６ｆの記憶領域ｂに記憶する。この場合、カウンタ回路６ｇは、ピーク値を記憶させる毎にＲＡＭ６ｆの記憶領域ｂに上書きする。ＲＡＭ６ｆの記憶領域ｄは、ＮＥセンサ３の周期開始（立ち下がりエッジタイミング）毎に更新され、１周期のクランク角度（例えば１０°ＣＡ）を加算していく。
【００３５】
クランク角度算出手段としての角度算出部６ｈは、ＲＡＭ６ｆの記憶領域ａから振動センサ２の検出信号のピーク値を読み出し、記憶領域ｂ〜ｄからピーク検出時のクランク角度データを読み出し、振動センサ２のピーク値を検出したタイミングのクランク角度を算出することができ、その結果をＣＰＵ５の要求に応じてあるいは自発的に通信インターフェイス７を介してＣＰＵ５に出力する。
【００３６】
次に、上記構成の作用について図２の波形図および図３、図４のフローチャートも参照して説明する。図２（ａ）〜（ｃ）は、図３、図４の信号処理プログラムで処理を実行する場合に対象となる各部の信号波形を示している。まず、（ａ）のクランク角度（°ＣＡ）については、上死点（ＴＤＣ；top dead center）をクランク角度０°ＣＡとしている。気筒内での点火時期は、上死点ＴＤＣの前後（前はＢＴＤＣ；before TDC、後はＡＴＤＣ；after TDCとして図示している）のタイミングである。
【００３７】
この実施形態においては、プレイグニッションの判定を行う期間（プレイグ判定期間）としては、例えばクランク角度０°ＣＡを中心としてその前後２０°ＣＡの範囲（ＢＴＤＣ２０°ＣＡ〜ＡＴＤＣ２０°ＣＡの４０°ＣＡの範囲）が設定される。プレイグ判定期間の内、ＮＥセンサ３の検出信号を波形整形回路１１を介して入力されるクランク角度の信号の立ち下がりのタイミングは１０°ＣＡ毎となり、このクランク角度１０°ＣＡの期間を角度区間として設定している。また、ノック判定期間は、例えばクランク角度０°ＣＡ〜９０°ＣＡ（ＴＤＣ〜ＡＴＤＣ９０°ＣＡ）の範囲に設定される。
【００３８】
（ｂ）のカウンタ出力は、クランク角度１０°ＣＡ毎つまり角度区間毎にカウンタ値をリセットしている波形を示している。この場合、図２の横軸は時間軸であり、クランク角度はエンジンの回転数に依存する値であるから、リセット直前のカウンタ出力値は一般的に異なる値となる。
【００３９】
（ｃ）の振動センサ出力波形は、振動センサ２の検出信号を示しており、図中番号を付けた丸印はＡＤ変換回路６ａによるＡＤ変換処理のタイミングを示している。この場合、ＡＤ変換の周期ＴＡＤＣは１０μｓｅｃである。プレイグ判定期間中において、ＡＤ変換出力が前回のデータよりも大きい場合にそのときのカウンタ出力値とともにピーク値として記憶される。例えば、図示の振動センサ出力波形においては、４９回のＡＤ変換の内、１、４、８、９、１３、１８のＡＤ変換時に記憶される。
【００４０】
また、本実施形態においては、後述する図３、図４にしたがって処理が進行する。この場合、クランク角度ＢＴＤＣ２０°ＣＡ〜ＢＴＤＣ１０°ＣＡの範囲では、１３回目のＡＤ変換出力が最も大きいピーク値として検出されてＲＡＭ６ｆの記憶領域ａに更新記憶され、そのときの経過時間ｔ１がカウンタ６ｇによるカウント値としてＲＡＭ６ｆの記憶領域ｂに記憶される。また、クランク角度ＢＴＤＣ２０°ＣＡ〜ＢＴＤＣ１０°ＣＡの範囲が終了するとその区間の経過時間Ｔ１が周期としてＲＡＭ６ｆの記憶領域ｃに記憶される。
【００４１】
同様に、クランク角度ＢＴＤＣ１０°ＣＡ〜ＴＤＣの範囲では、１８回目のＡＤ変換出力が最も大きいピーク値として検出されてＲＡＭ６ｆの記憶領域ａに更新記憶され、そのときの経過時間ｔ２がカウンタ６ｇによるカウント値としてＲＡＭ６ｆの記憶領域ｂに記憶される。また、クランク角度ＢＴＤＣ１０°ＣＡ〜ＴＤＣの範囲が終了するとその区間の経過時間Ｔ２が周期としてＲＡＭ６ｆの記憶領域ｃに記憶される。
【００４２】
さらに、プレイグ判定期間として設定されるクランク角度ＢＴＤＣ２０°ＣＡ〜ＡＴＤＣ２０°ＣＡの範囲においては、上記した１８回目のＡＤ変換出力が最も大きいピーク値となるので、プレイグ判定期間が終了した時点で結果として得られるピーク値のデータは１８回目のＡＤ変換出力となる。
【００４３】
なお、次のクランク角度の区間ＴＤＣ〜ＡＴＤＣ１０°ＣＡの範囲になると、上述同様にプレイグ判定の処理と共にノック判定の処理も並行して行われるので、同様にしてピーク値検出の処理は実行される。
【００４４】
また、上記のような処理を継続するにあたり、マイコン４のＣＰＵ５においては、波形整形回路１１からＮＥセンサ３のクランク角度のセンサ信号が入力されていることを監視しており、クランク角度に同期して生成された信号が正常に出力されているかを確認している。これによって、センサ信号のピーク値検出動作の信頼性の向上を図っている。
【００４５】
次に、図３に従って、マイコン４による異常振動検出処理の流れについて説明する。このプログラムを実行することに先立って、初期設定処理として、前述したプレイグニッション判定期間の設定を行うとともに、カウンタ、タイマなどのリセット処理を行う。この後、マイコン４は、１μｓｅｃ毎に図３のプログラムを実行する。
【００４６】
マイコン４は、まず、振動センサ２のセンサ信号をＡ／Ｄ変換する一定時間（ＡＤサンプリング周期ＴＡＤＣ）とＮＥセンサ３の１周期あたりの角度ＣＲＡＮＫを設定する（Ａ１）。続いて、マイコン４は、現在のクランク角度がプレイグ判定期間中（ＢＴＤＣ２０〜ＡＴＤＣ２０°ＣＡ）であるかどうかを判定し（Ａ２）、「ＹＥＳ」であれば振動検出処理（Ａ４）へ進み、「ＮＯ」であればＲＡＭ６ｆの記憶領域ａ〜ｄ（図中ではＲＡＭａ、ＲＡＭｂなどと記載）、カウンタ値、ピークホールド発生有無のフラグをリセット（ＲＡＭａ〜ｄ←０、ＣＮＴ←０、Ｐ／Ｈ←ＦＡＬＳＥ）し処理を終了する（Ａ３）。なお、ＲＡＭｄの値すなわちＲＡＭ６ｆの記憶領域ｄの初期値としては、プレイグ判定期間の開始時期であるＢＴＤＣ２０°ＣＡに相当するデータがセットされる。
【００４７】
この後、マイコン４は、１μｓｅｃ毎にプログラムを実行し、上記の処理を繰り返すうちに、クランク角度の値がプレイグ判定期間であるＢＴＤＣ２０°ＣＡ〜ＡＴＤＣ２０°ＣＡに入ると、ステップＡ２で「ＹＥＳ」と判定して振動検出処理に移行する（Ａ４以降）。振動検出処理では、マイコン４は、ＡＤ変換のタイミングか否かを、ＡＤ変換タイマＴＡＤの値がＡＤサンプリング周期ＴＡＤＣである「１０」となったか否かにより判断する（Ａ４）。マイコン４は、「ＮＯ」の場合には、カウンタ値ＣＮＴおよびＡＤ変換タイマＴＡＤの値にそれぞれ「１」加算して（Ａ５、Ａ６）処理を終了する。
【００４８】
上記の処理を繰り返すうちに、ＡＤ変換タイマＴＡＤの値がＡＤサンプリング周期ＴＡＤＣの「１０」になると、マイコン４は、ステップＡ４で「ＹＥＳ」と判断し、カウンタＣＮＴの値を「１」加算した（Ａ７）後、ＡＤ変換タイマＴＡＤをクリア（「０」を代入）し（Ａ８）、このとき振動センサ２から振動センサ入力回路９およびフィルタ回路１０を介して入力されているセンサ信号をＡＤ変換回路６ａによりＡＤ変換を実行し（Ａ９）、続いて、全波整流回路６ｂ、デジタルフィルタ６ｃ、積分回路６ｄのそれぞれにおいて処理を実施する（Ａ１０）。
【００４９】
次に、積分回路６ｄの出力の比較フロー（Ａ１１）では、今回の積分出力値ＩＯがＲＡＭ６ｆの記憶領域ａに記憶されている値よりも大きいか否かを判断し、「ＹＥＳ」の場合にはピークホールドが発生したとしてピークホールド発生フラグＰ／ＨをＴＲＵＥ（Ｐ／Ｈ←ＴＲＵＥ）にし（Ａ１２）、積分回路出力ＩＯをＲＡＭ６ｆの記憶領域ａに上書きする（Ａ１３）。また、そのピークホールド時点のカウンタ値ＣＮＴをＲＡＭｂに上書きした（Ａ１４）上で、ＮＥセンサ３の立ち下りエッジ発生判定フロー（Ａ１５以降）へ進む。一方、マイコン４は、積分回路出力ＩＯがＲＡＭ６ｆの記憶領域ａに記憶されている値以下である場合には、ＮＥセンサ３の立ち下りエッジ発生判定フロー（Ａ１５）へ進む。
【００５０】
次に、マイコン４は、ＮＥ立ち下りエッジ発生判定（Ａ１５）で、「ＹＥＳ」の場合はピークホールドが発生しているかの判定（Ａ１６）へ進み、「ＮＯ」の場合はそのまま処理を終了する。次のピークホールド発生判定のＡ１６では、マイコン４は、ピークホールドが発生していた場合（Ｐ／Ｈ＝ＴＲＵＥ）すなわち「ＹＥＳ」の場合は、ＮＥセンサ３の周期（ＮＥセンサ立ち下り時のカウンタ値ＣＮＴ）をＲＡＭ６ｆの記憶領域ｃに上書きして（Ａ１７）、カウンタ値ＣＮＴをリセットする（ＣＮＴ←「０」）（Ａ１８）。
【００５１】
続いて、マイコン４は、この時点での最新のピークホールド時のクランク角度ＰＣの値を次のように算出する（Ａ１９）。すなわち、ＮＥセンサ３からの信号の立ち下がりに応じて記憶されるクランク角度の情報をＲＡＭ６ｆの記憶領域ｄから読み出し、次のクランク信号の立ち下がり時点までの１０°ＣＡが経過するまでの周期となるカウント値をＲＡＭ６ｆの記憶領域ｃから読み出し、その周期のうちのピークホールド時までのカウント値を記憶領域ｂから読み出し、比例配分することでクランク角度のデータを計算する。
【００５２】
この計算は、各記憶領域ｂ〜ｄの値をＲＡＭｂ〜ＲＡＭｄとすると、次式により求めることができる。
ＰＣ＝ＲＡＭｄ＋ＲＡＭｂ／ＲＡＭｃ×ＣＲＡＮＫ
このようにピークホールドした振幅センサ２の値のクランク角度を求めると、マイコン４は、ＲＡＭ６ｆの記憶領域ｄの値にＣＲＡＮＫの値を加算することで更新し（ＲＡＭｄ←ＲＡＭｄ＋ＣＲＡＮＫ）（Ａ２０）、続いてピークホールド発生フラグをリセットして（Ｐ／Ｈ←ＦＡＬＳＥ）（Ａ２１）処理を終了する。
【００５３】
また、マイコン４は、ピークホールドが発生しているか否かの判定Ａ１５において、「ＮＯ」と判断した場合には、カウンタ値ＣＮＴをリセット（ＣＮＴ←「０」）して（Ａ２２）処理を終了する。
【００５４】
以後、マイコン４は、上記の異常振動検出処理を１μｓｅｃ毎に繰り返し実行することにより、異常振動の振動センサ値および異常振動発生タイミングとなるクランク角度の情報を正確に取得することが出来る。この結果、ＮＥセンサ３の検出信号の立ち下がりタイミング毎の振動センサ２のピーク値データをクランク角度のデータと共に正確に取得することができる。また、これを繰り返し実行することで、クランク角度区間毎にピーク値を検出できると共に、１回のプレイグ判定期間中における振動センサ２のピーク値のデータを最終的に１個検出することができ、そのときのクランク角度のデータも検出することができる。しかも、記憶容量の増大を招くこともなく信号処理を複雑且つ多大な負荷とすることもなく１０μｓｅｃ毎のＡＤ変換のタイミングで振動センサ２のセンサ信号をＡＤ変換しながら正確なピーク値を取得することができる。
【００５５】
次に、図４を参照して、上記のようにして取得したピーク値について、マイコン４によるプレイグ判定処理の説明をする。なお、このプレイグ判定処理は、ピーク値検出の処理で得られたピーク値についてクランク角度１０°ＣＡ毎つまり角度区間毎に実施される。また、プレイグ判定の処理では、ピーク値と比較するプレイグ判定値（プレイグニッション判定値）を判定の時期によって３段階に分けている。
【００５６】
すなわち、プレイグ判定期間のうち、ノック判定期間と重複していない前半に相当するＢＴＤＣの期間においては、点火時点の前のクランク角度の期間はプレイグ判定値Ａ（第１のプレイグニッション判定値）とし、点火後のクランク角度の期間はプレイグ判定値をＡよりも小さいプレイグ判定値Ｂ（第２のプレイグニッション判定値）（＜Ａ）としている。また、プレイグ判定期間がノック判定期間と重複する後半に相当するＡＴＤＣの期間においては、ノック判定値Ｄよりも大きく、プレイグ判定値Ｂよりも小さいプレイグ判定値Ｃ（第３のプレイグニッション判定値）（Ｂ＞Ｃ＞Ｄ）としている。
【００５７】
３つのプレイグ判定値Ａ，Ｂ，Ｃについては、点火時期よりも前のプレイグ判定値Ａが最も大きく、その後順番に小さく設定されるのは、プレイグにより発生する振動のレベルが点火前の期間で最も大きく、徐々に低下していくことを考慮しているからである。このようにプレイグ判定値を上記したクランク角度の領域毎に異なるように設定することで、プレイグ判定を正確且つ確実に行えるようにしている。
【００５８】
さて、マイコン４は、上記した異常振動検出処理で取得したプレイグ判定する角度区間内のピーク値およびそのピーク検出時のクランク角度を読み込み（Ｂ１、Ｂ２）、続いて点火時期のデータを外部から読み込む（Ｂ３）。次に、マイコン４は、ピーク値検出時のクランク角度が点火時期以前であるか否かを判断し（Ｂ４）、「ＹＥＳ」の場合にはピーク値がしきい値Ａ以上であるか否かを判断し（Ｂ５）、「ＹＥＳ」ならプレイグ回避処理を実行（Ｂ６）して判定処理を終了し、「ＮＯ」なら何もしないで判定処理を終了する。ここで、プレイグ回避処理としては、マイコン４は、図示しないエンジン制御部に対して、例えば燃料の噴射量を増量して混合気を濃くするなどの一般的なプレイグ回避対策の指示をする制御を行う。
【００５９】
また、マイコン４は、ステップＢ４でピーク値検出時のクランク角度が点火時期よりも後である場合には（Ｂ４で「ＮＯ」）、その時のクランク角度がノック判定期間に相当しているか否かを判断する（Ｂ７）。このステップＢ７では、マイコン４は、ピーク値が発生したクランク角度が点火後で且つノック判定期間よりも前つまり上死点よりも前である場合には「ＮＯ」と判断し、続いてそのピーク値がしきい値Ｂ以上であるか否かを判断する（Ｂ８）。そして、ピーク値がしきい値Ｂ以上である場合（Ｂ８で「ＹＥＳ」と判断）には、マイコン４は、プレイグが発生したと判定して前述と同様にプレイグ回避処理を実施（Ｂ６）して処理を終了し、しきい値Ｂ未満である場合にはそのまま処理を終了する。
【００６０】
さらに、マイコン４は、ステップＢ７で「ＹＥＳ」の場合すなわちピーク値検出時のクランク角度がノック判定期間に相当していて、プレイグ判定期間と重複した判定期間である場合には、そのピーク値の大きさがプレイグ判定のしきい値Ｃ以上であるか否かを判定し（Ｂ９）、「ＹＥＳ」の場合にはプレイグが発生しているとしてプレイグ回避処理を実行（Ｂ６）して処理を終了する。
【００６１】
そして、ピーク値の大きさがプレイグ判定のしきい値Ｃ未満であって「ＮＯ」の場合には、マイコン４は、ピーク値の大きさがノック判定のしきい値Ｄ以上であるか否かを判定する（Ｂ１０）。この場合、ノック判定のしきい値Ｄは、プレイグ判定のしきい値Ｃよりも小さい値に設定されており、マイコン４は、このステップＢ１０で「ＹＥＳ」と判定した場合にはノック回避処理を実施（Ｂ１１）した上で処理を終了する。また、ピーク値の大きさがしきい値Ｄ未満である場合には、マイコン４は、「ＮＯ」と判断して点火時期を変更して（Ｂ１２）処理を終了する。
【００６２】
ここで、ノック回避処理（Ｂ１１）としては、マイコン４は、エンジン制御部に対して、点火時期を遅らせるなどの一般的なノック回避対策の指示をする制御を行う。また、点火時期の変更の処理（Ｂ１２）では、マイコン４は、エンジン制御部に対して、点火時期を進めるように制御を行う。
【００６３】
以上説明したように、本実施形態によれば、次のような効果を得ることができる。
第１に、上記構成では、振動センサ２のセンサ信号から異常燃焼状態であるプレイグを判定するために、一定のクランク角度の判定期間として例えば−２０°ＣＡ〜＋２０°ＣＡにおいて、一定のサンプリング周期例えば１０μｓ毎にＡ／Ｄ変換回路６ａによりデジタル信号に変換し、得られたデジタルのセンサ信号についてピークホールド回路６ｅによりピーク値を検出し、得られたピーク値のクランク角度を角度算出部６ｈにおいてカウンタ６ｇのカウント値から算出し、得られたピーク値についてＣＰＵ５によりクランク角度区間毎にプレイグ判定値と比較してプレイグの発生を判定するようにした。これにより、１回の点火について設定された判定期間中に、クランク角度区間毎にプレイグ判定を行なうことでＲＡＭに対する記憶容量を低減させると共に、判定回数も減らしながら確実にプレイグ判定を行うことができる。また、判定期間が終了していなくてもクランク角度区間毎にプレイグ判定を行うので、迅速にプレイグ状態の検出をすることができる。
【００６４】
第２に、クランク角度区間毎のピーク値検出時のクランク角度を、カウンタ６ｇのカウント値と周期のカウント値の割合から算出するので、クランク角度に同期したクランク角度区間毎にピーク値検出時のクランク角度を算出することができ、クランク角度区間内での誤差を極力抑制することができる。これにより、ピーク値検出時のクランク角度の算出精度を向上することができる。
【００６５】
第３に、クランク角度区間の開始時点でカウンタ６ｇをリセットし、ピーク値検出時までのカウント値を経過時間として取得するようにしたので、クランク角度区間が変わっても経過時間が過度に大きくなるのを防止してカウント値のデータ扱いが複雑になるのを抑制することができる。
【００６６】
第４に、振動センサ２のセンサ信号のピーク値をプレイグ判定値と比較して判定する際に、ピーク値検出時のクランク角度が気筒の点火時点以前に相当するときにはプレイグ判定値Ａで、点火時点よりも後に相当するときにはプレイグ判定値Ａよりも小さいプレイグ判定値Ｂで判定を行うようにしたので、点火時期の前後でプレイグ判定を適切なしきい値で行うことができる。
【００６７】
第５に、振動センサ２のピーク値検出時のクランク角度が判定期間のうちのエンジンのノック状態を検出するノック判定期間と重複する期間となる場合には、ノック判定値Ｄよりも高く、プレイグ判定値Ｂよりも低い値に設定されたプレイグ判定値Ｃとピーク値との比較でプレイグ判定を行い、プレイグ状態が判定されないときに、ノック判定値Ｄとピーク値との比較でノック判定を行うようにしたので、複数の判定が必要となるクランク角度の範囲においてもそれぞれについて確実に判定を行うことができる。
【００６８】
第６に、ＡＤ変換回路６ａにより、振動センサ２のセンサ信号を所定のサンプリング周期でＡＤ変換するように構成したので、ＡＤ変換処理を例えばクランク角度毎に行う場合と異なり、一定時間毎に行うことでデジタル処理を複雑な演算を伴うことなく実行することができる。
第７に、ＡＤ変換回路６ａは、振動センサ２のセンサ信号をＡＤ変換する際のサンプリング周期を外部から設定変更可能に構成されているので、センサの特性や信号の性質に応じて適切なサンプリング周期を設定してＡＤ変換処理を行うことができる。
【００６９】
第８に、ＡＤ変換手段によりデジタル信号に変換されたセンサ信号を全波整流する全波整流回路６ｂを設けたので、負側の振幅のデータを取得することができ、これによって、より正確なセンサ信号を取得してピーク値の検出を行うことができる。
第９に、ＡＤ変換手段によりデジタル信号に変換されたセンサ信号のノイズを除去するデジタルフィルタ６ｃを設けたので、ＡＤ変換後にノイズを除去した上でピーク値を検出することができ、より正確なピーク値のデータを取得することができる。
【００７０】
第１０に、ＡＤ変換手段によりデジタルデータに変換されたセンサ信号を積分する積分回路６ｄを設けたので、ＡＤ変換後に積分することでノイズに対する耐性を向上させることができ、より正確なピーク値のデータを取得することができる。
第１１に、検出回路６と通信インターフェイス７およびＣＰＵ５を１個の半導体素子に一体に形成する構成としたので、全体として回路面積を小さくし、且つ信号処理も短い距離で迅速に行うことができる。
第１２に、ＣＰＵ５により、ＮＥセンサ３の検出信号からクランク角度に同期して生成した判定期間の情報が正常に入力されているか否かを監視するようにしたので、振動センサ２の検出信号のピーク値検出動作の信頼性の向上を図ることができる。
【００７１】
（他の実施形態）
なお、本発明は、上述した一実施形態のみに限定されるものではなく、その要旨を逸脱しない範囲で種々の実施形態に適用可能であり、例えば、以下のように変形または拡張することができる。
上記実施形態においては、全波整流回路６ｂ、デジタルフィルタ６ｃ、積分回路６ｄを設ける構成としたが、これに限らず、それぞれを選択的に設けることもできるし、いずれも設けない構成とすることもできる。
【００７２】
燃焼状態を検出する手段として振動センサ２を取り上げたが、他の燃焼状態を検出するセンサ（例えば筒内圧センサ）を使用しても良い。
ＮＥセンサ３は、パルス信号を出力するものに限定するものではなく、クランク角度に同期した信号を出力する構成であれば良い。また、ＮＥセンサ３のエッジについては、立ち上り、立ち下りのいずれでクランク角度区間を設定するようにしても良い。
【００７３】
ピークホールド回路６ｅによるピーク値検出時に角度算出部６ｈによるクランク角度の算出タイミングは必ずしも同期して行う必要はなく、別途所定のタイミングで算出するようにしても良い。
図４に示した判定処理では、ノック判定処理も同時に行うようにしているが、ノック判定処理は別の処理プログラムによって実施しても良いし、ノック判定処理は実施しない場合にも適用できる。
【００７４】
アンチエイリアシングフィルタ９は、振動センサ２のセンサ信号に対する折り返しノイズ除去のためであるが、この構成は必須のものではなく、例えばＡＤオーバーサンプリング処理をすることで設けない構成とすることもできる。
検出回路６とＣＰＵ５との間では、通信インターフェイス７を設ける構成としているが、必要に応じて設ければ良い。
ＣＰＵ５を備えたマイコン４によりピーク値検出の処理をソフト的に行う構成としているが、ロジック回路などによりハード的に検出する構成とすることもできる。
【００７５】
ピーク値検出処理においては、プレイグ判定期間をＢＴＤＣ２０°ＣＡ〜ＡＴＤＣ２０°ＣＡの範囲としているが、これに限らず、これよりも広い期間に設定しても良いし、狭い期間に設定しても良いし、ずらした期間に設定することもできる。
ＡＤ変換回路６ａによるＡＤ変換のサンプリング周期ＴＡＤＣは１０μｓｅｃに設定しているが、これ以外のサンプリング周期に設定することができる。
クランク角度区間ＣＲＡＮＫをクランク角度１０°ＣＡに設定したが、これよりも狭い角度区間でも良いし、広い角度区間でも良い。
【００７６】
実施形態では、プレイグ判定およびノック判定をしたときに、回避処理を実施する場合で説明したが、回避処理をするのではなく、警報するようにしても良い。
実施形態では、プレイグ判定処理をクランク角度１０°ＣＡ毎に実施する場合で説明したが、２０°ＣＡ毎でも良いし、プレイグ判定期間終了後（例えばＡＴＤＣ２０°ＣＡ）に１回でも良い。
【００７７】
プレイグの判定値を３段階に設定して行う構成としているが、必要に応じて２段階に設定しても良いし、単一の判定値に設定することもできる。
計時手段は、一定時間毎にカウントするカウンタ６ｇを用いる構成としたが、実際の時刻あるいは時間を測定する時計を用いる構成としても良い。また判定値Ａ＞Ｂ＞Ｃ＞Ｄの関係性を変えることもできる。
【符号の説明】
【００７８】
図面中、１はＥＣＵ（センサ信号の処理装置）、２は振動センサ（センサ）、３はＮＥセンサ（クランク角度センサ）、４はマイクロコンピュータ、５はＣＰＵ（判定期間設定手段、クランク角度区間設定手段、判定手段、監視手段）、６は検出回路、６ａはＡＤ変換回路（ＡＤ変換手段）、６ｂは全波整流回路（整流手段）、６ｃはデジタルフィルタ、６ｄは積分回路、６ｅはピークホールド回路（ピーク値検出手段）、６ｆはＲＡＭ（記憶手段）、６ｇはカウンタ回路（計時手段）、６ｈは角度算出部（クランク角度算出手段）である。
【図１】
0005561283.tif 000002
【図２】
0005561283.tif 000003
【図３】
0005561283.tif 000004
【図４】
0005561283.tif 000005