(57)【要約】【課題】ノッキングセンサの出力値から圧力センサの出力値を推定する。【解決手段】機関本体（１）の振動を検出するノッキングセンサ（１８）と、燃焼室（５）内の圧力を検出する圧力センサ（１９）を具備する。圧力センサ（１９）の出力値からノッキング強度を代表する値が取得される。ノッキングセンサ（１８）により検出された機関本体（１）の振動を表す値をニューラルネットワークの入力値すると共に、取得されたノッキング強度を代表する値を教師データとして、ニューラルネットワークの重みが学習される。学習済みのニューラルネットワークを用いてノッキングセンサ（１８）の出力値からノッキング強度を代表する値が推定される。【選択図】図５
2020128727.tif 000002
【特許請求の範囲】
【請求項１】
機関本体の振動を検出するノッキングセンサと、内燃機関の燃焼室内の圧力を検出する圧力センサと、ニューラルネットワークを用いて内燃機関のノッキング強度を代表する値を推定するための学習装置とを具備しており、圧力センサの出力値からノッキング強度を代表する値が取得され、該学習装置により、該ノッキングセンサにより検出された機関本体の振動を表す値をニューラルネットワークの入力値とすると共に、取得されたノッキング強度を代表する値を教師データとして、ニューラルネットワークの重みが学習され、学習済みのニューラルネットワークを用いてノッキングセンサの出力値から該ノッキング強度を代表する値が推定される内燃機関のノッキング検出装置。
【請求項２】
該ノッキング強度を代表する値が、予め設定されている期間内における圧力センサの出力値のピーク値である請求項１に記載の内燃機関のノッキング検出装置。
【請求項３】
該ノッキング強度を代表する値が、予め設定されている期間内における圧力センサの出力値の積分値である請求項１に記載の内燃機関のノッキング検出装置。
【請求項４】
機関本体の振動を表す値が、予め設定されている期間内におけるノッキングセンサの出力値である請求項１に記載の内燃機関のノッキング検出装置。
【請求項５】
機関本体の振動を表す値が、予め設定されている期間内において等分割された区間内におけるノッキングセンサの出力値の積分値である請求項１に記載の内燃機関のノッキング検出装置。
【請求項６】
予め設定されている期間が、一定のクランク角度範囲である請求項１に記載の内燃機関のノッキング検出装置。
【請求項７】
予め設定されている期間が、一定時間である請求項１に記載の内燃機関のノッキング検出装置。
【請求項８】
機関の運転領域が複数個の運転領域に分割されると共に、分割された各運転領域に対して夫々ニューラルネットワークが作成されており、該学習装置により、分割された運転領域毎に、該ノッキングセンサにより検出された機関本体の振動を表す値をニューラルネットワークの入力値とすると共に、取得されたノッキング強度を代表する値を教師データとして、対応するニューラルネットワークの重みが学習され、分割された運転領域毎に、対応する学習済みのニューラルネットワークを用いてノッキングセンサの出力値から該ノッキング強度を代表する値が推定される請求項１に記載の内燃機関のノッキング検出装置。
【請求項９】
機関本体の振動を検出する複数個のノッキングセンサを具備しており、該学習装置により、該複数個のノッキングセンサにより検出された機関本体の振動を表す値をニューラルネットワークの入力値とすると共に、上記取得されたノッキング強度を代表する値を教師データとして、ニューラルネットワークの重みが学習され、学習済みのニューラルネットワークを用いて該複数個のノッキングセンサの出力値から該ノッキング強度を代表する値が推定される請求項１に記載の内燃機関のノッキング検出装置。
【請求項１０】
上記ノッキング強度を代表する値の推定値からノッキングの発生を判定する請求項１に記載の内燃機関のノッキング検出装置。
【請求項１１】
機関本体の振動を検出するノッキングセンサの出力値と、内燃機関の燃焼室内の圧力を検出する圧力センサの出力値とに基づき、ニューラルネットワークを用いて内燃機関のノッキング強度を推定する内燃機関のノッキング検出方法において、圧力センサの出力値からノッキング強度を代表する値を求め、該ノッキングセンサにより検出された機関本体の振動を表す値と該ノッキング強度を代表する値との関係を示す訓練データセットを作成し、該ノッキングセンサにより検出された機関本体の振動を表す値をニューラルネットワークの入力値とすると共に、取得されたノッキング強度を代表する値を教師データとして、ニューラルネットワークの重みを学習し、学習済みのニューラルネットワークを用いてノッキングセンサの出力値から該ノッキング強度を代表する値を推定する内燃機関のノッキング検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は内燃機関のノッキング検出装置およびノッキング検出方法に関する。
【背景技術】
【０００２】
内燃機関では、燃焼室内において末端ガスが自着火すると圧力波が発生し、機関本体が振動してノッキングが生ずる。この場合、機関本体の振動が激しくなるほどノッキング強度が高くなる。そこで、機関本体に機関本体の振動を検出するノッキングセンサを取り付け、ノッキングセンサにより検出された機関本体の振動の激しさからノッキング強度を検出するようにした内燃機関が公知である（例えば特許文献１を参照）。しかしながら機関本体は、例えば、吸気弁および排気弁の着座作用や、燃料噴射弁のニードルの着座作用等の機械的動作によっても振動し、従って、機関本体の振動を検出するようにしたノッキングセンサを用いると、このような機械的動作が原因で機関本体の振動強度が激しくなったときに、ノッキング強度が高くないにも拘わらず、ノッキング強度が高いと誤判定してしまうという問題がある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−２２６９６７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
一方、ノッキングが生じたときに、燃焼室内の圧力の変動が激しいほどノッキング強度が高くなる。従って、燃焼室内の圧力を検出可能な圧力センサを用いると、この圧力センサの出力値の変動の激しさからノッキング強度を検出できることになる。この場合、例えば、ノッキング強度が高くなると、圧力センサの出力値のピーク値が高くなり、従って、この圧力センサの出力値のピーク値は、ノッキング強度を代表する値の一つであると言える。従って、このようなノッキング強度を代表する値から、ノッキング強度を検出することができることになる。この場合、機械的動作に基づく機関本体の振動は、圧力センサの出力値に影響を与えず、従って、ノッキング強度を代表する値にも影響を与えないので、圧力センサを用いると、ノッキング強度を精度よく検出することができることになる。
【０００５】
しかしながら、この圧力センサは極めて高価である。しかも圧力センサは長期間使用されると、圧力センサにデポジットが徐々に付着し、この付着したデポジットによって燃焼室内における混合気の燃焼形態が変化してしまう。従って、市販車に対して、このような圧力センサを用いることは難しい。
そこで、本発明では、圧力センサの出力値から求められるノッキング強度を代表する値を、ニューラルネットワークを用いて、ノッキングセンサの出力値から推定するようにしている。
【０００６】
即ち、１番目の発明によれば、機関本体の振動を検出するノッキングセンサと、内燃機関の燃焼室内の圧力を検出する圧力センサと、ニューラルネットワークを用いて内燃機関のノッキング強度を代表する値を推定するための学習装置とを具備しており、圧力センサの出力値からノッキング強度を代表する値が取得され、学習装置により、ノッキングセンサにより検出された機関本体の振動を表す値をニューラルネットワークの入力値とすると共に、取得されたノッキング強度を代表する値を教師データとして、ニューラルネットワークの重みが学習され、学習済みのニューラルネットワークを用いてノッキングセンサの出力値からノッキング強度を代表する値が推定される内燃機関のノッキング検出装置が提供される。
【０００７】
２番目の発明によれば、機関本体の振動を検出するノッキングセンサの出力値と、内燃機関の燃焼室内の圧力を検出する圧力センサの出力値とに基づき、ニューラルネットワークを用いて内燃機関のノッキング強度を推定する内燃機関のノッキング検出方法において、圧力センサの出力値からノッキング強度を代表する値を求め、ノッキングセンサにより検出された機関本体の振動を表す値とノッキング強度を代表する値との関係を示す訓練データセットを作成し、ノッキングセンサにより検出された機関本体の振動を表す値をニューラルネットワークの入力値とすると共に、取得されたノッキング強度を代表する値を教師データとして、ニューラルネットワークの重みを学習し、学習済みのニューラルネットワークを用いてノッキングセンサの出力値からノッキング強度を代表する値を推定する内燃機関のノッキング検出方法が提供される。
【発明の効果】
【０００８】
１番目および２番目のいずれの発明においても、圧力センサの出力値から求められるノッキング強度を代表する値を、圧力センサを用いることなく、高い精度で得ることができる。
【図面の簡単な説明】
【０００９】
【図１】図１は内燃機関の全体図である。
【図２】図２は図１に示す内燃機関の側面断面図である。
【図３】図３はニューラルネットワークの説明図である。
【図４】図４は、シリンダヘッドの底面図である。
【図５】図５は内燃機関の全体図である。
【図６】図６Ａ、図６Ｂおよび図６Ｃは、ノッキングセンサの出力値を示す図である。
【図７】図７Ａ、図７Ｂおよび図７Ｃは、圧力センサの出力値を示す図である。
【図８】図８は、本発明による実施例において用いられているニューラルネットワークを示す図である。
【図９】図９は、訓練データセットを示す図である。
【図１０】図１０は、学習処理ルーチンを示すフローチャートである。
【図１１】図１１は、データの読み込みルーチンを示すフローチャートである。
【図１２】図１２は、ノッキング処理ルーチンを示すフローチャートである。
【図１３】図１３は、ノッキング強度代表値の推定ルーチンを示すフローチャートである。
【図１４】図１４は、ノッキング強度代表値の推定ルーチンの別の実施例を示すフローチャートである
【図１５】図１５は、ノッキング判定ルーチンを示すフローチャートである。
【図１６】図１６は、閾値Ｍij を示す図である。
【図１７】図１７は、点火制御ルーチンを示すフローチャートである。
【図１８】図１８は、基準点火時期のマップを示す図である。
【図１９】図１９は、ゲート区間と機関回転数との関係を示す図である。
【図２０】図２０は、ゲート区間と分割区間を示す図である。
【図２１】図２１Ａ，図２１Ｂおよび図２１Ｃは、運転領域を示す図である。
【図２２】図２２は内燃機関の全体図である。
【図２３】図２３は、本発明による別の実施例において用いられているニューラルネットワークを示す図である。
【図２４】図２４は、訓練データセットを示す図である。
【発明を実施するための形態】
【００１０】
＜内燃機関の全体構成＞
図１および図２に内燃機関の全体図を示す。図２を参照すると、１は機関本体、２はシリンダブロック、３はシリンダヘッド、４はシリンダブロック２内で往復動するピストン、５は燃焼室、６は吸気弁、７は吸気ポート、８は排気弁、９は排気ポート、１０は各燃焼室５内に燃料、例えば、ガソリンを供給するための燃料噴射弁、１１は各燃焼室５内に配置された点火栓を夫々示す。図１および図２を参照すると、吸気ポート７は夫々対応する吸気枝管１２を介してサージタンク１３に連結され、サージタンク１３は吸気ダクト１４および吸入空気量検出器１５を介してエアクリーナ１６に連結される。一方、排気ポート９は排気マニホルド１７に連結される。
【００１１】
図１および図２に示されるように、図１に示される実施例では、シリンダブロック２に、シリンダブロック２の振動、即ち、機関本体１の振動を検出するためのノッキングセンサ１８が取り付られている。図１に示される例では、このノッキングセンサ１８では、振動の検出素子として圧電素子が用いられており、このノッキングセンサ１８は機関本体１の振動に比例した出力電圧を発生する。なお、ノッキングが発生すると、機関本体１には、周波数が５KHzから２０KHz程度の振動が発生し、このときノッキングセンサ１８の出力電圧は、周波数が５KHzから２０KHz程度で変動する。従って、ノッキングセンサ１８の出力電圧の変動、即ち、ノッキングセンサ１８の出力値の変動から、ノッキングの発生を検出することができることになる。
【００１２】
一方、図１において３０は、機関の運転を制御するための電子制御ユニットを示している。図１に示されるように、電子制御ユニット３０はデジタルコンピュータからなり、双方向性バス３１によって互いに接続された記憶装置３２、即ち、メモリ３２と、ＣＰＵ（マイクロプロセッサ）３３と、入力ポート３４および出力ポート３５を具備する。入力ポート３４には、ノッキングセンサ１８の出力信号が、対応するＡＤ変換器３６および５KHzから２０KHz程度の周波数の入力信号のみを通過させるデジタルバンドパスフィルタ３７を介して入力される。また、入力ポート３４には、吸入空気量検出器１５の出力信号が、対応するＡＤ変換器３６を介して入力される。また、アクセルペダル４０にはアクセルペダル４０の踏込み量に比例した出力電圧を発生する負荷センサ４１が接続され、負荷センサ４１の出力電圧は対応するＡＤ変換器３６を介して入力ポート３４に入力される。更に入力ポート３４にはクランクシャフトが例えば３０°回転する毎に出力パルスを発生するクランク角センサ４２が接続される。ＣＰＵ３３内ではクランク角センサ４２の出力信号に基づいて機関回転数が算出される。一方、出力ポート３５は対応する駆動回路３８を介して各気筒の燃料噴射弁１０および点火栓１１に接続される。
＜ニューラルネットワークの概要＞
【００１３】
本発明による実施例では、ニューラルネットワークを用いてノッキング強度を代表する値を推定するようにしている。そこで最初にニューラルネットワークについて簡単に説明する。図３は簡単なニューラルネットワークを示している。図３における丸印は人工ニューロンを表しており、ニューラルネットワークにおいては、この人工ニューロンは、通常、ノード又はユニットと称される（本願では、ノードと称す）。図３においてL＝１は入力層、L＝２および L＝３は隠れ層、L＝４は出力層を夫々示している。また、図３において、ｘ１およびｘ２ は入力層 ( L＝１) の各ノードからの出力値を示しており、ｙ１ およびｙ２ は出力層 ( L＝４) の各ノードからの出力値を示しており、ｚ（２）１、ｚ（２）２ およびｚ（２）３ は隠れ層 ( L＝２) の各ノードからの出力値を示しており、ｚ（３）１、ｚ（３）２ およびｚ（３）３は隠れ層 ( L＝３) の各ノードからの出力値を示している。なお、隠れ層の層数は、１個又は任意の個数とすることができ、入力層のノードの数および隠れ層のノードの数も任意の個数とすることができる。また、出力層のノードの数は１個とすることもできるし、複数個とすることもできる。
【００１４】
入力層の各ノードでは入力がそのまま出力される。一方、隠れ層 ( L＝２) の各ノードには、入力層の各ノードの出力値ｘ１およびｘ２ が入力され、隠れ層 ( L＝２) の各ノードでは、夫々対応する重みｗおよびバイアスｂを用いて総入力値ｕが算出される。例えば、図３において隠れ層 ( L＝２) のｚ（２）ｋ（ｋ＝１，２，３）で示されるノードにおいて算出される総入力値ｕｋは、次式のようになる。
【数１】
2020128727.tif 000003
次いで、この総入力値ｕｋは活性化関数ｆにより変換され、隠れ層 ( L＝２) のｚ（２）ｋで示されるノードから、出力値ｚ（２）ｋ(= f (ｕｋ)) として出力される。一方、隠れ層 ( L＝３) の各ノード には、隠れ層 ( L＝２) の各ノードの出力値ｚ（２）１、ｚ（２）２ およびｚ（２）３が入力され、隠れ層 ( L＝3 ) の各ノードでは、夫々対応する重みｗおよびバイアスｂを用いて総入力値ｕ（Σｚ・ｗ＋ｂ）が算出される。この総入力値ｕは同様に活性化関数により変換され、隠れ層 ( L＝3 ) の各ノードから、出力値ｚ（３）１、ｚ（３）２ およびｚ（３）３として出力される、この活性化関数としては、例えば、シグモイド関数σが用いられる。
【００１５】
一方、出力層 ( L＝４) の各ノード には、隠れ層 ( L＝３) の各ノードの出力値ｚ（３）１、ｚ（３）２ およびｚ（３）３が入力され、出力層 の各ノードでは、夫々対応する重みｗおよびバイアスｂを用いて総入力値ｕ（Σｚ・ｗ＋ｂ）が算出されるか、又は、夫々対応する重みｗのみを用いて総入力値ｕ（Σｚ・ｗ）が算出される。本発明による実施例では、出力層のノードでは恒等関数が用いられており、従って、出力層のノードからは、出力層のノードにおいて算出された総入力値ｕが、そのまま出力値ｙとして出力される。
＜ニューラルネットワークにおける学習＞
【００１６】
さて、ニューラルネットワークの出力値ｙの正解値を示す教師データをｙｔとすると、ニューラルネットワークにおける各重みｗおよびバイアスｂは、出力値ｙと教師データをｙｔとの差が小さくなるように、誤差逆伝播法を用いて学習される。この誤差逆伝播法は周知であり、従って、誤差逆伝播法についてはその概要を以下に簡単に説明する。なお、バイアスｂは重みｗの一種なので、以下、バイアスｂも含めて重みｗと称する。さて、図３に示すようなニューラルネットワークにおいて、Ｌ＝２，Ｌ＝３又は Ｌ＝４の各層のノードへの入力値ｕ（Ｌ）における重みをｗ（Ｌ）で表すと、誤差関数Ｅの重みｗ（Ｌ）による微分、即ち、勾配∂Ｅ/∂ｗ（Ｌ）は、書き換えると、次式で示されるようになる。
【数２】
2020128727.tif 000004
ここで、ｚ（Ｌ−１）・∂ｗ（Ｌ）＝ ∂ｕ（Ｌ）であるので、（∂Ｅ/∂ｕ（Ｌ））＝δ（Ｌ）とすると、上記（１）式は、次式でもって表すことができる。
【数３】
2020128727.tif 000005
【００１７】
ここで、ｕ（Ｌ）が変動すると、次の層の総入力値ｕ（Ｌ＋１）の変化を通じて誤差関数Ｅの変動を引き起こすので、δ（Ｌ）は、次式で表すことができる。
【数４】
2020128727.tif 000006
ここで、z（Ｌ）＝ｆ(u（Ｌ）) と表すと、上記（３）式の右辺に現れる入力値ｕk（Ｌ＋１）は、次式で表すことができる。
【数５】
2020128727.tif 000007
ここで、上記（３）式の右辺第１項（∂Ｅ/∂ｕ（Ｌ＋１））はδ（Ｌ＋１）であり、上記（３）式の右辺第２項（∂uｋ（Ｌ＋１） /∂u（Ｌ））は、次式で表すことができる。
【数６】
2020128727.tif 000008
従って、δ（Ｌ）は、次式で示される。
【数７】
2020128727.tif 000009
即ち、δ（Ｌ＋１）が求まると、δ（Ｌ）を求めることができることになる。
【００１８】
さて、出力層 ( L＝４) のノードが一個であって、或る入力値に対して教師データｙｔが求められており、この入力値に対する出力層からの出力値がｙであった場合において、誤差関数として二乗誤差が用いられている場合には、二乗誤差Ｅは、Ｅ＝１/２(ｙ−ｙｔ)２で求められる。この場合、出力層（Ｌ＝４）のノードでは、出力値ｙ＝ ｆ(u（Ｌ）) となり、従って、この場合には、出力層（Ｌ＝４）のノードにおけるδ（Ｌ）の値は、次式で示されるようになる。
【数８】
2020128727.tif 000010
この場合、本発明による実施例では、前述したように、ｆ(u（Ｌ）) は恒等関数であり、ｆ’(u（Ｌｌ）) ＝ １となる。従って、δ（Ｌ）＝ｙ−ｙｔ となり、δ（Ｌ）が求まる。
【００１９】
δ（Ｌ）が求まると、上式（６）を用いて前層のδ（Ｌ−１）が求まる。このようにして順次、前層のδが求められ、これらδの値を用いて、上式（２）から、各重みｗについて誤差関数Ｅの微分、即ち、勾配∂Ｅ/∂ｗ（Ｌ）か求められる。勾配∂Ｅ/∂ｗ（Ｌ）か求められると、この勾配∂Ｅ/∂ｗ（Ｌ）を用いて、誤差関数Ｅの値が減少するように、重みｗが更新される。即ち、重みｗの学習が行われることになる。なお、図３に示されるように、出力層 ( L＝４) が複数個のノードを有する場合には、各ノードからの出力値をｙ１、ｙ１・・・、対応する教師データｙｔ１、ｙｔ２・・・とすると、誤差関数Ｅとして、次の二乗和誤差Ｅが用いられる。
【数９】
2020128727.tif 000011
この場合も、出力層 ( L＝４) の各ノードにおけるδ（Ｌ）の値は、δ（Ｌ）＝ｙ−ｙtk （ｋ＝１，２・・・ｎ）となり、これらδ（Ｌ）の値から上式（６）を用いて前層のδ（Ｌ−１）が求まる。
＜本発明による実施例＞
【００２０】
さて、内燃機関では、機関本体１の振動が激しくなるほどノッキング強度が高くなる。従って、図１および図２に示されるように、機関本体１にノッキングセンサ１８を取り付け、ノッキングセンサ１８により検出された機関本体の振動の激しさからノッキング強度を検出することができる。しかしながら前述したように、機関本体１は、例えば、吸気弁６および排気弁８の着座作用や、燃料噴射弁１０のニードルの着座作用等の機械的動作によっても振動し、従って、機関本体１の振動を検出するようにしたノッキングセンサ１８を用いると、このような機械的動作が原因で機関本体の振動強度が激しくなったときに、ノッキング強度が高くないにも拘わらず、ノッキング強度が高いと誤判定してしまうと問題がある。
【００２１】
一方、前述したように、燃焼室５内の圧力を検出することのできる圧力センサを用いると、この圧力センサの出力値の変動の激しさからノッキング強度を検出できる。この場合、例えば、ノッキング強度が高くなると、圧力センサの出力値のピーク値が高くなり、従って、この圧力センサの出力値のピーク値は、ノッキング強度を代表する値の一つであると言える。従って、このようなノッキング強度を代表する値から、ノッキング強度を検出することができることになる。この場合、機械的動作に基づく機関本体の振動は、圧力センサの出力値に影響を与えず、従って、ノッキング強度を代表する値にも影響を与えないので、圧力センサを用いると、ノッキング強度を精度よく検出することができることになる。
【００２２】
しかしながら、この圧力センサは高価であり、しかも圧力センサに徐々に付着するデポジットにより燃焼室５内における混合気の燃焼形態が変化してしまうので、市販車において、このような圧力センサを用いることは難しい。そこで、本発明では、圧力センサの出力値から求められるノッキング強度を代表する値を、ニューラルネットワークを用いて、ノッキングセンサの出力値から推定するようにしている。このことを説明するに当たり、最初に、図４、図５、図６Ａから図６Ｃおよび図７Ａから図７Ｃを参照しつつ、ノッキングセンサの出力値と、圧力センサの出力値並びに圧力センサの出力値から求められるノッキング強度を代表する値について説明する。
【００２３】
図４は、図２に示されるシリンダヘッド３の底面図を示しており、図５は、図１に示される機関本体１の一部を示している。図４および図５を参照すると、圧力センサの出力値から求められるノッキング強度を代表する値を、ノッキングセンサ１８の出力値から推定するために、各気筒のシリンダヘッド３の内壁面上には、夫々圧力センサ１９が配置されている。各圧力センサ１９からは、夫々対応する燃焼室５内の圧力に比例した出力電圧、即ち、燃焼室５内の圧力を示す出力値が出力される。なお、この場合、燃焼室５内の圧力は、点火栓と一体型の圧力センサを用いて計測することもできる。また、各圧力センサ１９は、学習に必要なデータを取得するためだけに用いられている。
【００２４】
さて、ノッキングは通常、圧縮上死点から圧縮上死点後９０°までの間に発生し、ノッキングが発生したときには、周波数が５KHzから２０KHz程度の燃焼室５内の圧力変動および周波数が５KHzから２０KHz程度の機関本体１の振動が発生する。従って、ノッキングによる機関本体１の振動のみを抽出するために、通常、ノッキングセンサ１８の出力値は、ＡＤ変換された後、例えば５KHzから２０KHz程度の周波数の入力信号のみを通過させるデジタルバンドパスフィルタに送り込まれ、このデジタルバンドパスフィルタによりフィルタリングされた後のノッキングセンサ１８の出力値に基づいて、ノッキングの強度が判別される。
【００２５】
同様に、ノッキングによる燃焼室５内の圧力変動のみを抽出するために、通常、圧力センサ１９の出力値も、ＡＤ変換された後、例えば５KHzから２０KHz程度の周波数の入力信号のみを通過させるデジタルバンドパスフィルタに送り込まれ、このデジタルバンドパスフィルタによりフィルタリングされた後の圧力センサ１９の出力値に基づいて、ノッキングの強度が判別される。なお、このようにデジタルバンドパスフィルタによりフィルタリングされた後のノッキングセンサ１８の出力値を、以下、単にフィルタリング後のノッキングセンサ１８の出力値と称し、デジタルバンドパスフィルタによりフィルタリングされた後の圧力センサ１９の出力値を、以下、単にフィルタリング後の圧力センサ１９の出力値と称する。
【００２６】
図６Ａおよび図７Ａは夫々、同一のノッキングの発生に対するフィルタリング後のノッキングセンサ１８の出力値（Ｖ）の変化と、フィルタリング後の圧力センサ１９の出力値の変化（Ｖ）とを示している。なお、図６Ａの縦軸および図７Ａの横軸は共に、ＡＴＤＣで表したクランク角（圧縮上死点から圧縮上死点後９０°）を示している。
【００２７】
図６Ａおよび図７Ａを比較するとわかるように、図７Ａに示されるフィルタリング後の圧力センサ１９の出力値の振動強度は、ノッキングが発生すると急激に増大し、その後、次第に減少していく。即ち、圧力センサ１９の出力値は、機械的動作に基づく機関本体の振動の影響を受けないために、ノッキングの発生が圧力センサ１９の出力値に明確に表れる。これに対し、図６Ａに示されるフィルタリング後のノッキングセンサ１８の出力値の振動強度も、ノッキングが発生すると増大はするが、ノッキングセンサ１８の出力値は機械的動作に基づく機関本体の振動の影響を大きく受けるため、ノッキングセンサ１８の出力値の振動強度は、ノッキングが発生した前後においても大きな値となっている。即ち、ノッキングセンサ１８の出力値には、機械的動作に基づく機関本体の振動がノイズとなって現れるため、ノッキングの発生が、ノッキングセンサ１８の出力値に明確に表れなくなる。
【００２８】
従って、ノッキングが発生したか否かは、圧力センサ１９の出力値から明確に判別できることになる。この場合、圧力センサ１９の出力値には、発生したノッキングの強度も明確に現れる。次に、このことについて、図７Ｂおよび図７Ｃを参照しつつ説明する。なお、図７Ｂおよび図７Ｃは、図７Ａに示されるフィルタリング後の圧力センサ１９の出力値の波形の一部を横軸方向に引き伸ばして図解的に表した図である。
【００２９】
さて、発生したノッキングの強度が高くなると、フィルタリング後の圧力センサ１９の出力値のピーク値が高くなる。従って、図７Ｂにおいて丸印で示されるフィルタリング後の圧力センサ１９の出力値のピーク値は、ノッキング強度を代表する値を示していることになる。一方、発生したノッキングの強度が高くなると、図７Ｃにおいて出力値の波形と出力値が０（Ｖ）の線とで囲まれたハッチングで示される面積の総和、即ち、フィルタリング後の圧力センサ１９の出力値の積分値（負側の積分値も正の値とする）が高くなる。従って、フィルタリング後の圧力センサ１９の出力値の積分値（負側の積分値も正の値とする）も、ノッキング強度を代表する値を示していることになる。このように圧力センサ１９の出力値からノッキング強度を代表する値を取得することができる。
【００３０】
一方、ノッキングセンサ１８の出力値からは、このようなノッキング強度を代表する値を抽出することは難しい。そこで本発明では、ニューラルネットワークを用い、ノッキングセンサ１８の出力値に基づいて、圧力センサ１９の出力値から求められるノッキング強度を代表する値を取得し得るようにニューラルネットワークの重みを学習し、それにより圧力センサ19の出力値から求められるノッキング強度を代表する値を、学習済みのニューラルネットワークを用いてノッキングセンサ１８の出力値から推定するようにしている。そこで次に、ノッキングセンサ１８の出力値に基づいて、圧力センサ１９の出力値から求められるノッキング強度を代表する値を取得し得るようにニューラルネットワークの重みを学習する方法について説明する。
【００３１】
最初に、このとき用いられるニューラルネットワークについて図８を参照しつつ説明する。図８を参照すると、このニューラルネットワーク２０においても、図３に示されるニューラルネットワークと同様に、L＝１は入力層、L＝２および L＝３は隠れ層、L＝４は出力層を夫々示している。図８に示されるように、入力層 ( L＝１) がｎ個のノードからなり、ｎ個の入力値ｘ１、ｘ２・・・ｘｎ−１、ｘｎが、入力層 ( L＝１) の各ノードに入力されている。一方、図８には隠れ層 ( L＝２)および隠れ層 ( L＝３)が記載されているが、これら隠れ層の層数は、１個又は任意の個数とすることができ、またこれら隠れ層のノードの数も任意の個数とすることができる。なお、出力層 ( L＝４) のノードの数は１個とされており、出力層のノードからの出力値がｙで示されている。
【００３２】
次に、図８における入力値ｘ１、ｘ２・・・ｘｎ−１、ｘｎと、出力値ｙについて説明する。最初に、入力値ｘ１、ｘ２・・・ｘｎ−１、ｘｎについて図６Ｂおよび図６Ｃを参照しつつ説明する。なお、図６Ｂおよび図６Ｃは、図６Ａに示されるノッキングセンサ１８の出力値の波形の一部を横軸方向に引き伸ばして図解的に表した図である。本発明による実施例では、入力値ｘ１、ｘ２・・・ｘｎ−１、ｘｎとして、図６Ｂに示される値か、或いは、図６Ｃに示される値が用いられる。
【００３３】
即ち、図６Ｂに示される例では、フィルタリング後のノッキングセンサ１８の出力値そのものが入力値ｘ１、ｘ２・・・ｘｎ−１、ｘｎとされる。この場合、図６Ｂにおいて黒丸で示されるように、一定時間毎の、或いは、一定クランク角毎のノッキングセンサ１８の出力値が入力値ｘ１、ｘ２・・・ｘｎ−１、ｘｎとされる。一方、図６Ｃに示される例では、フィルタリング後のノッキングセンサ１８の出力値の積分値（負側の積分値も正の値とする）であって例えば一定クランク角度内におけるフィルタリング後のノッキングセンサ１８の出力値の積分値が入力値ｘ１、ｘ２・・・ｘｎ−１、ｘｎとされる。
【００３４】
一方、本発明の実施例では、圧力センサ１９の出力値から求められるノッキング強度を代表する値が、図８に示される出力値ｙとされる。この場合、図７Ｂにおいて丸印で示される圧力センサ１９の出力値のピーク値はノッキング強度を表しており、また、図７Ｃに示される圧力センサ１９の出力値の積分値（負側の積分値も正の値とする）もノッキング強度を表している。従って、本発明の実施例では、図７Ｂにおいて丸印で示される圧力センサ１９の出力値のピーク値が出力値ｙとされるか、或いは、図７Ｃに示される圧力センサ１９の出力値の積分値（負側の積分値も正の値とする）が出力値ｙとされる。この場合圧力センサ１９の出力値から求められるノッキング強度を代表する値の実測値が教師データｙｔとされる。
【００３５】
図９は、入力値ｘ１、ｘ２・・・ｘｍ−１、ｘｍと、入力値がｘ１、ｘ２・・・ｘｍ−１、ｘｍであるときに圧力センサ１９の出力値から求められるノッキング強度を代表する値の実測値、即ち、教師データｙｔとを用いて作成された訓練データセットを示している。図９に示されるように、この訓練データセットでは、入力値ｘ１、ｘ２・・・ｘｎ−１、ｘｎと教師データｙｔとの関係を表すｍ個のデータが取得されている。例えば、２番目のデータ（No. 2）には、取得された入力値ｘ１２、ｘ２２・・・ｘｍ−１２、ｘｍ２と教師データｙｔ２とが列挙されており、ｍ−１番目のデータ（No. ｍ−１）には、取得された入力パラメータの入力値ｘ１ｍ−１、ｘ２ｍ−１・・・ｘｎ−１ｍ−１、ｘｎｍ−１と教師データｙｔｍ−１が列挙されている。
【００３６】
入力値ｘ１、ｘ２・・・ｘｎ−１、ｘｎとして、フィルタリング後のノッキングセンサ１８の出力値そのものを用いる場合には、例えば、圧縮上死点から圧縮上死点後９０°までの間において一定クランク角毎に取得されたフィルタリング後のノッキングセンサ１８の出力値が、入力値ｘ１、ｘ２・・・ｘｎ−１、ｘｎとされる。この場合には、入力値の個数ｎが数百以上とされ、従って、図８に示される入力層 ( L＝１) のノードの個数ｎが数百以上とされる。
【００３７】
一方、本発明の実施例では、入力値ｘ１、ｘ２・・・ｘｎ−１、ｘｎとして、フィルタリング後のノッキングセンサ１８の出力値の積分値（負側の積分値も正の値とする）を用いる場合には、圧縮上死点から圧縮上死点後９０°までの間がクランク角度５°毎に１８個の区間に分割され、分割された各区間内におけるフィルタリング後のノッキングセンサ１８の出力値の積分値（負側の積分値も正の値とする）が、入力値ｘ１、ｘ２・・・ｘｎ−１、ｘｎとされる。この場合には、入力値の個数ｎは１８個となり、従って、図８に示される入力層 ( L＝１) のノードの個数ｎは１８個とされる。
【００３８】
一方、図９に示される訓練データセットにおける教師データｙｔは、圧力センサ１９の出力値から求められるノッキング強度を代表する値の実測値であり、この教師データｙｔとしては、図７Ｂにおいて丸印で示される圧力センサ１９の出力値のピーク値が用いられるか、或いは、図７Ｃに示される圧力センサ１９の出力値の積分値（負側の積分値も正の値とする）が用いられる。ところで、本発明による実施例では、図９に示される訓練データセットを用いて、図８に示されるニューラルネットワーク２０の重みの学習が行われる。そこで次に、図９に示される訓練データセットの作成方法について説明する。
【００３９】
図４および図５には、訓練データセットの作成方法の一例が示されている。図４および図５を参照すると、各気筒の燃焼室５に面するシリンダヘッド３の内壁面上には、ノッキング強度を代表する値を取得するために、夫々圧力センサ１９が配置されている。これら圧力センサ１９は、学習に必要なデータの取得が完了するとシリンダヘッド３から取り除かれ、圧力センサ１９の挿入されていた孔は閉塞される。さて、図５に示される例では、ノッキングセンサ１８は、ノッキングセンサ１８の出力値の波形を検出可能な検出器２１、例えば、オシロスコープに接続され、各圧力センサ１９は、各圧力センサ１９の出力値の波形を検出可能な検出器２２、例えば、オシロスコープに接続される。
【００４０】
検出器２１内では、ノッキングによる機関本体１の振動のみを抽出するために、ノッキングセンサ１８の出力値は、ＡＤ変換された後、例えば５KHzから２０KHz程度の周波数の入力信号のみを通過させるデジタルバンドパスフィルタに送り込まれ、このデジタルバンドパスフィルタによりフィルタリングされた後のノッキングセンサ１８の出力値の波形が検出される。一方、検出器２２では、ノッキングによる燃焼室５内の圧力変動のみを抽出するために、圧力センサ１９の出力値は、ＡＤ変換された後、例えば５KHzから２０KHz程度の周波数の入力信号のみを通過させるデジタルバンドパスフィルタに送り込まれ、このデジタルバンドパスフィルタによりフィルタリングされた後の圧力センサ１９の出力値の波形が検出される。
【００４１】
訓練データセットを作成する際には、機関負荷および機関回転数の種々の組み合わせについてノッキングの発生しない運転状態とノッキングの発生する運転状態の双方の状態が生ずるように機関を運転させ、そのとき各検出器２１、２２から得られたフィルタリング後の圧力センサ１９の出力値の波形データおよびフィルタリング後の圧力センサ１９の出力値の波形データに基づいて、図９に示されるような訓練データセットが作成される。この場合、この訓練データセットは、各検出器２１、２２から得られた波形データに基づき、手作業でもって作成することもできるし、各検出器２１、２２から得られた電子データに基づき、電子的に作成することもできる。このようにして作成された訓練データセットの電子データを用いて、図８に示されるニューラルネットワーク２０の重みの学習が行われる。
【００４２】
図５に示される例では、ニューラルネットワークの重みの学習を行うための学習装置２３が設けられている。図５に示されるように、この学習装置２３は、記憶装置２４、即ち、メモリ２４と、ＣＰＵ（マイクロプロセッサ）２５を具備している。図５に示される例では、図８に示されるニューラルネットワーク２０のノード数、および作成された訓練データセットの電子データが学習装置２３のメモリ２４に記憶され、ＣＰＵ２５においてニューラルネットワーク２０の重みの学習が行われる。この場合、ニューラルネットワーク２０の重みの学習を、図１に示される電子制御ユニット３０により行うこともできる。この場合には、図８に示されるニューラルネットワーク２０のノード数、および作成された訓練データセットの電子データが電子制御ユニット３０のメモリ３２に記憶され、ＣＰＵ３３においてニューラルネットワーク２０の重みの学習が行われる。この場合には、電子制御ユニット３０が学習装置を形成している。
【００４３】
次に、入力値ｘ１、ｘ２・・・ｘｎ−１、ｘｎとして、上死点から上死点後９０°までの間においてクランク角度５°毎に分割された各区間内におけるフィルタリング後のノッキングセンサ１８の出力値の積分値（負側の積分値も正の値とする）を用い、教師データｙｔとして、圧力センサ１９の出力値のピーク値の実測値を用い、図５に示される学習装置２３を用いた場合を例にとって、ニューラルネットワーク２０の重みの学習を行うようにした場合について説明する。
【００４４】
図１０は、学習装置２３において行われるニューラルネットワークの重みの学習処理ルーチンを示す。
図１０を参照すると、まず初めに、ステップ１００において、学習装置２３のメモリ２４に記憶されている訓練データセットの各データが読み込まれる。次いで、ステップ１０１において、ニューラルネットワーク２０の入力層 ( L＝１) のノード数、隠れ層 ( L＝２)および隠れ層 ( L＝３)のノード数および出力層 ( L＝４) のノード数が読み込まれ、これらノード数に基づいて、図８に示されるようなニューラルネットワーク２０が作成される。この場合、この例では、入力層 ( L＝１) のノード数は１８個とされ、出力層 ( L＝４) のノード数は１個とされる。
【００４５】
次いで、ステップ１０２では、ニューラルネットワーク２０の重みの学習が行われる。最初は、図９の１番目（No. 1）の入力値ｘ１、ｘ２・・・ｘｎ−１、ｘｎ、即ち、入力値ｘ１、ｘ２・・・ｘ17、ｘ18がニューラルネットワーク２０の入力層 ( L＝１) の１８個の各ノードに入力される。次いで、このときのニューラルネットワーク２０の出力値ｙと１番目（No. 1）の教師データｙｔ１との間の二乗誤差Ｅ＝１/２(ｙ−ｙｔ１)２が算出され、この二乗誤差Ｅが小さくなるように、前述した誤差逆伝播法を用いて、ニューラルネットワーク２０の重みの学習が行われる。
【００４６】
図９の１番目（No. 1）のデータに基づくニューラルネットワーク２０の重みの学習が完了すると、次に、図９の２番目（No. ２）のデータに基づくニューラルネットワーク２０の重みの学習が、誤差逆伝播法を用いて行われる。同様にして、図９のｍ番目（No. ｍ）まで順次、ニューラルネットワーク２０の重みの学習が行われる。図９の１番目（No. 1）からｍ番目（No. ｍ）までの全てについてニューラルネットワーク２０の重みの学習が完了すると、ステップ１０３に進む。
【００４７】
ステップ１０３では、例えば、図９の１番目（No. 1）からｍ番目（No. ｍ）までの全てのニューラルネットワークの出力値ｙと教師データｙｔとの間の二乗和誤差Ｅが算出され、この二乗和誤差Ｅが、予め設定された設定誤差以下になったか否かが判別される。二乗和誤差Ｅが、予め設定された設定誤差以下になったと判別されたときには、ステップ１０４に進んで、ニューラルネットワーク２０の学習済み重みが学習装置２３のメモリ２４に記憶される。次いで、学習ルーチンを終了する。これに対し、二乗和誤差Ｅが、予め設定された設定誤差以下になっていないと判別されたときには、ステップ１０２に戻り、再度、図９に示される訓練データセットに基づいて、ニューラルネットワークの重み学習が行われる。次いで、二乗和誤差Ｅが、予め設定された設定誤差以下になるまで、ニューラルネットワークの重みの学習が続行される。
【００４８】
上述したように、ニューラルネットワークの重みの学習は、電子制御ユニット３０においても行うことができる。この場合、図１０に示されるニューラルネットワークの重みの学習処理ルーチンは、電子制御ユニット３０において実行され、ニューラルネットワーク２０の学習済みの重みが電子制御ユニット３０のメモリ３２に記憶される。一方、学習装置２３においてニューラルネットワークの重みの学習が行われた場合には、学習装置２３において取得されたニューラルネットワーク２０の学習済みの重みを用い、電子制御ユニット３０において行われる図１１に示されるデータ読み込みルーチンを用いて、電子制御ユニット３０内にニューラルネットワークが作成される。
【００４９】
即ち、図１１に示されるように、ステップ１１０において、ニューラルネットワーク２０の入力層 ( L＝１) のノード数、隠れ層 ( L＝２)および隠れ層 ( L＝３)のノード数および出力層 ( L＝４) のノード数が読み込まれる。次いで、ステップ１１１において、学習装置２３において取得されたニューラルネットワーク２０の学習済みの重みが電子制御ユニット３０のメモリ３２に記憶される。これらノード数および学習済みの重みに基づいて、電子制御ユニット３０内に学習済みのニューラルネットワーク２０が作成される。
【００５０】
さて、電子制御ユニット３０内に学習済みのニューラルネットワーク２０が作成されると、クランク角度５°毎に分割された各区間内におけるフィルタリング後のノッキングセンサ１８の出力値の積分値（負側の積分値も正の値とする）をこの学習済みのニューラルネットワーク２０に入力したときに、ニューラルネットワーク２０からは、圧力センサ１９の出力値から求められるノッキング強度を代表する値の推定値が出力される。このノッキング強度を代表する値の推定値は、ノッキング強度を代表する値の実測値に極めて近く、従って、ノッキングセンサ１８の出力値から、ノッキング強度を正確に推定できることになる。
【００５１】
このように、本発明による実施例では、機関本体１の振動を検出するノッキングセンサ１８と、内燃機関の燃焼室５内の圧力を検出する圧力センサ１９と、ニューラルネットワーク２０を用いて内燃機関のノッキング強度を代表する値を推定するための学習装置２３（この学習装置２３には電子制御ユニット３０も含まれる）とが設けられている。圧力センサ１９の出力値からノッキング強度を代表する値が取得される。学習装置２３により、ノッキングセンサ１８により検出された機関本体１の振動を表す値をニューラルネットワーク２０の入力値とすると共に、取得されたノッキング強度を代表する値を教師データとして、ニューラルネットワーク２０の重みが学習され、学習済みのニューラルネットワーク２０を用いてノッキングセンサ１８の出力値からノッキング強度を代表する値が推定される。
【００５２】
また、本発明による実施例では、機関本体１の振動を検出するノッキングセンサ１８の出力値と、内燃機関の燃焼室５内の圧力を検出する圧力センサ１９の出力値とに基づき、ニューラルネットワーク２０を用いて内燃機関のノッキング強度が推定される。圧力センサ１９の出力値からノッキング強度を代表する値が求められ、ノッキングセンサ１８により検出された機関本体１の振動を表す値とノッキング強度を代表する値との関係を示す訓練データセットが作成される。ノッキングセンサ１８により検出された機関本体１の振動を表す値をニューラルネットワーク２０の入力値とすると共に、取得されたノッキング強度を代表する値を教師データとして、ニューラルネットワーク２０の重みが学習される。学習済みのニューラルネットワーク２０を用いてノッキングセンサ１８の出力値からノッキング強度を代表する値が推定される。
【００５３】
この場合、本発明による実施例では、ノッキング強度を代表する値が、予め設定されている期間内における圧力センサ１９の出力値のピーク値であり、或いは、ノッキング強度を代表する値が、予め設定されている期間内における圧力センサ１９の出力値の積分値である。この場合、予め設定されている期間が、一定のクランク角度範囲、例えば、圧縮上死点から圧縮上死点後９０°の範囲である。
【００５４】
一方、本発明による実施例では、機関本体１の振動を表す値が、予め設定されている期間内におけるノッキングセンサ１８の出力値であり、機関本体１の振動を表す値が、予め設定されている期間内において等分割された区間内におけるノッキングセンサ１８の出力値の積分値である。この場合、予め設定されている期間が、一定のクランク角度範囲、例えば、圧縮上死点から圧縮上死点後９０°の範囲である。また、ノッキングセンサ１８の出力値の積分値に関し、一例を挙げると、このノッキングセンサ１８の出力値の積分値は、クランク角度５°毎に等分割された各区間内におけるフィルタリング後のノッキングセンサ１８の出力値の積分値（負側の積分値も正の値とする）である。
【００５５】
上述したように、図１に示される電子制御ユニット３０のメモリ３２内には、ニューラルネットワーク２０の学習済みの重み係数が記憶されている。即ち、図１に示される電子制御ユニット３０内には学習済みのニューラルネットワーク２０が形成されている。図１２は、学習済みのニューラルネットワーク２０を用いて、電子制御ユニット３０内において、車両運転時に行われるノッキング処理ルーチンを示している。図１２に示されるように、このノッキング処理ルーチンが実行されると、まず初めにステップ１２０において、圧力センサ１９の出力値から求められるノッキング強度を代表する値、即ち、ノッキング強度代表値の推定処理が行われる。次いで、ステップ１２１では、ノッキングが生じているか否かのノッキング判定処理が行われ、次いで、ステップ１２２では、点火制御が行われる。
【００５６】
図１３は、図１２のステップ１２０において行われるノッキング強度代表値の推定処理ルーチンの一実施例を示している。このルーチンは、一定クランク角毎、或いは、一定時間毎の割り込みにより実行される。図１３を参照すると、まず初めに、ステップ１３０において、ノッキングセンサ１８の出力信号の取り込み期間中であるか否かが判別される。この実施例では、ノッキングセンサ１８の出力信号の取り込み期間が圧縮上死点から圧縮上死点後９０°までの間とされている。従って、クランク角が圧縮上死点前であるときには、処理サイクルを終了し、クランク角が圧縮上死点を過ぎるとノッキングセンサ１８の出力信号の取り込み期間中であると判別され、ステップ１３１に進む。
【００５７】
ステップ１３１では、ノッキングセンサ１８の出力信号が、対応するＡＤ変換器３６および例えば５KHzから２０KHz程度の周波数の入力信号のみを通過させるデジタルバンドパスフィルタ３７を介して取り込まれる。即ち、フィルタリング後のノッキングセンサ１８の出力値が取り込まれる。次いで、ステップ１３２では、取り込まれたフィルタリング後のノッキングセンサ１８の出力値が電子制御ユニット３０のメモリ３２内に記憶される。次いで、ステップ１３３では、ノッキングセンサ１８の出力信号の取り込み期間が終了したか否かが判別される。即ち、クランク角が圧縮上死点後９０°に達したか否かが判別される。ステップ１３３において、ノッキングセンサ１８の出力信号の取り込み期間が終了していないと判別されたとき、即ち、クランク角が圧縮上死点後９０°に達していないと判別されたときには処理サイクルを終了する。
【００５８】
これに対し、ステップ１３３において、ノッキングセンサ１８の出力信号の取り込み期間が終了したと判別されたとき、即ち、クランク角が圧縮上死点後９０°に達したと判別されたときにはステップ１３４に進む。このときメモリ３２内には図６Ｂの黒丸で示すようなフィルタリング後のノッキングセンサ１８の出力値が記憶されている。ステップ１３４では、このメモリ３２内に記憶されているフィルタリング後のノッキングセンサ１８の出力値が、学習済みのニューラルネットワーク２０の入力層 ( L＝１) の各ノードに入力される。このとき、学習済みのニューラルネットワーク２０からはノッキング強度代表値の推定値ｙe が出力され、従って、ステップ１３５に示されているように、ノッキング強度代表値の推定値ｙe が算出されることになる。
【００５９】
図１４は、図１２のステップ１２０において行われるノッキング強度代表値の推定処理ルーチンの別の実施例を示している。このルーチンも、一定クランク角毎、或いは、一定時間毎の割り込みにより実行される。なお、図１４のステップ１４０からステップ１４３の内容は、図１３のステップ１３０からステップ１３３の内容と同一である。即ち、図１４を参照すると、まず初めに、ステップ１４０において、ノッキングセンサ１８の出力信号の取り込み期間中であるか否かが判別される。この実施例でも、ノッキングセンサ１８の出力信号の取り込み期間が圧縮上死点から圧縮上死点後９０°までの間とされている。従って、クランク角が圧縮上死点前であるときには、処理サイクルを終了し、クランク角が圧縮上死点を過ぎるとノッキングセンサ１８の出力信号の取り込み期間中であると判別され、ステップ１４１に進む。
【００６０】
ステップ１４１では、ノッキングセンサ１８の出力信号が、対応するＡＤ変換器３６および例えば５KHzから２０KHz程度の周波数の入力信号のみを通過させるデジタルバンドパスフィルタ３７を介して取り込まれる。即ち、フィルタリング後のノッキングセンサ１８の出力値が取り込まれる。次いで、ステップ１４２では、取り込まれたフィルタリング後のノッキングセンサ１８の出力値が電子制御ユニット３０のメモリ３２内に記憶される。次いで、ステップ１４３では、ノッキングセンサ１８の出力信号の取り込み期間が終了したか否かが判別される。即ち、クランク角が圧縮上死点後９０°に達したか否かが判別される。ステップ１４３において、ノッキングセンサ１８の出力信号の取り込み期間が終了していないと判別されたとき、即ち、クランク角が圧縮上死点後９０°に達していないと判別されたときには処理サイクルを終了する。
【００６１】
これに対し、ステップ１４３において、ノッキングセンサ１８の出力信号の取り込み期間が終了したと判別されたとき、即ち、クランク角が圧縮上死点後９０°に達したと判別されたときにはステップ１４４に進む。ステップ１４４では、メモリ３２内に記憶されているフィルタリング後のノッキングセンサ１８の出力値に基づいて、図６Ｃを参照しつつ説明したように、クランク角度５°毎に分割された各区間内におけるフィルタリング後のノッキングセンサ１８の出力値の積分値（負側の積分値も正の値とする）が算出される。次いで、ステップ１４５では、フィルタリング後のノッキングセンサ１８の出力値の算出された各積分値が、学習済みのニューラルネットワーク２０の入力層 ( L＝１) の各ノードに入力される。このとき、学習済みのニューラルネットワーク２０からはノッキング強度代表値の推定値ｙe が出力され、従って、ステップ１４６に示されているように、ノッキング強度代表値の推定値ｙe が算出されることになる。
【００６２】
図１５は、図１３のステップ１３５において算出されたノッキング強度代表値の推定値ｙe、又は図１４のステップ１４６において算出されたノッキング強度代表値の推定値ｙe に基づき電子制御ユニット３０内で実行されるノッキング判定ルーチンを示している。このルーチンは、一定クランク角毎の割り込みにより実行される。図１５を参照すると、まず初めに、ステップ１５０において、ノッキング強度代表値に対する閾値Ｍij が読み込まれる。この閾値Ｍij は、図１６に示されるように、機関負荷Ｌと機関回転数Ｎに応じて複数個に分割された各機関運転領域に対して予め設定されている。なお、この閾値Ｍij は、機関負荷Ｌが高いほど低くなり、機関回転数Ｎが高いほど低くなる。
【００６３】
次いで、ステップ１５１では、算出されたノッキング強度代表値の推定値ｙe が閾値Ｍij よりも大きいか否かが判別される。算出されたノッキング強度代表値の推定値ｙe が閾値Ｍij よりも大きくないと判別されたときにはステップ１５２に進んで、ノッキングが発生していないと判別され、次いで処理サイクルを終了する。これに対し、算出されたノッキング強度代表値の推定値ｙe が閾値Ｍij よりも大きいと判別されたときにはステップ１５３に進んで、ノッキングが発生している判別され、次いで処理サイクルを終了する。
【００６４】
図１７は、図１５に示されるノッキング判定ルーチンにおける判定結果に基づき電子制御ユニット３０内で実行される点火制御ルーチンを示している。このルーチンは、一定クランク角毎の割り込みにより実行される。図１７を参照すると、まず初めに、ステップ１６０において、基準点火時期ＩＧ（ＢＴＤＣ）が算出される。この基準点火時期ＩＧは、機関負荷Ｌと機関回転数Ｎの関数として、図１８に示されるようなマップの形で予めメモリ３２内に記憶されている。次いで、ステップ１６１では、図１５に示されるノッキング判定ルーチンにおける判定結果に基づき、ノッキングが発生したか否かが判別される。ノッキングが発生したと判別されたときにはステップ１６２に進む。
【００６５】
ステップ１６２では、点火時期を遅角させるために点火時期遅角量ΔＩＧに一定量αが加算される。次いで、ステップ１６６では、基準点火時期ＩＧから点火時期遅角量ΔＩＧを減算することによって最終的な点火時期ＩＧＯが算出される。この最終的な点火時期ＩＧＯに基づいて。点火栓１１による点火作用が制御される。このとき点火時期は遅角される。一方、ステップ１６１において、ノッキングが発生していないと判別されたときにはステップ１６３に進み、点火時期を進角させるために点火時期遅角量ΔＩＧから一定量αが減算される。次いで、ステップ１６４では、点火時期遅角量ΔＩＧか負になったか否かが判別され、点火時期遅角量ΔＩＧか負になったときにはステップ１６５に進んで点火時期遅角量ΔＩＧを零とした後、ステップ１６６に進む。
【００６６】
さて、前述したように、ノッキングは通常、上死点から上死点後９０°までの間で発生する。従って、これまで述べた実施例では、上死点から上死点後９０°までの間に取り込まれたノッキングセンサ１８の出力値および圧力センサ１９の出力値に基づいて、ノッキングの発生を検出している。しかしながらノッキングによる機関本体１の振動は、機関回転数によらずに、圧縮上死点後、一定時間発生する傾向がある。このような傾向を考慮すると、圧縮上死点後、一定時間の間に取り込まれたノッキングセンサ１８の出力値および圧力センサ１９の出力値に基づいて、ノッキングの発生を検出することが考えられる。
【００６７】
次に、図１９および図２０を参照しつつ、圧縮上死点後、一定時間の間に取り込まれたノッキングセンサ１８の出力値および圧力センサ１９の出力値に基づいて、ノッキングの発生を検出するようにした実施例について説明する。機関の作動の一サイクルのうちで、ノッキングセンサ１８の出力値および圧力センサ１９の出力値が取り込まれるクランク角範囲はゲート区間と称され、図１９には、この実施例におけるゲート区間（縦軸）と、機関回転数（横軸）との関係が実線で示されている。なお、横軸におけるＮ１，Ｎ２，Ｎ３は代表的な機関回転数を示している。
【００６８】
一方、図２０には、各機関回転数Ｎ１，Ｎ２，Ｎ３に対するゲート区間Ｇが示されている。また、図２０には、等間隔で分割された各分割区間内におけるノッキングセンサ１８の出力値の積分値（負側の積分値も正の値とする）を算出するようにした場合における各分割区間Ｓが示されている。図１９および図２０から、この実施例では、機関回転数が高くなるほど、ゲート区間Ｇが長くなることがわかる。なお、図１９および図２０に示される例では、ノッキングセンサ１８の出力値および圧力センサ１９の出力値が取り込まれる期間が予め設定されており、この予め設定されている期間が、一定時間とされている。しかしながら、この予め設定されている期間は、必ずしも一定時間とする必要はなく、機関回転数が増大するにつれてゲート区間も増大するようにゲート区間を設定することもできる。
【００６９】
一方、これまで述べた実施例では、機関の全運転領域に対し、一つのニューラルネットワークを用いて、ノッキング強度を代表する値を推定するようにしている。しかしながら、このように機関の全運転領域に対して一つのニューラルネットワークしか用いないとノッキング強度を代表する値の推定精度が低下する危険性がある。このような危険性を回避するためには、機関の運転領域を複数個の運転領域に分割し、分割された運転領域毎に夫々別個のニューラルネットワークを用いることが好ましい。図２１Ａから図２１Ｃは、このように分割された運転領域毎に夫々別個のニューラルネットワークを用いるようにした実施例を示している。
【００７０】
即ち、この実施例では、図２１Ａから図２１Ｃに示されるように、機関の運転領域が、機関負荷Ｌおよび機関回転数Ｎに応じて、複数個の運転領域に分割されており、図２１Ａに示されるように、分割された運転領域毎に夫々別個のニューラルネットワークＮＮij が形成されている。この場合には、図２１Ｂに示されるように、分割された運転領域毎に夫々、図９に示されるような訓練データセットＤＳij が作成される。分割された運転領域毎に夫々形成されたニューラルネットワークＮＮij の重みの学習は、対応する訓練データセットＤＳij を用い、図１０に示される学習処理ルーチンを用いて行われる。
【００７１】
一方、この実施例でも、図２１Ｃに示されるように、分割された運転領域毎に、ノッキング強度代表値に対する閾値Ｍij が設定されている。この実施例では、分割された運転領域毎に、対応するニューラルネットワークＮＮij を用い、図１３又は図１４に示されるノッキング強度代表値の推定ルーチンを用いて、ノッキング強度代表値の推定値ｙe が算出される。ノッキング強度代表値の推定値ｙe が算出されると、図１５に示されるノッキング判定ルーチンを用いて、算出されたノッキング強度代表値の推定値ｙe と図２１Ｃに示される対応する閾値Ｍij を用いて、ノッキングが発生したか否かが判別される。
【００７２】
このようにこの実施例では、機関の運転領域が複数個の運転領域に分割されると共に、分割された各運転領域に対して夫々ニューラルネットワークＮＮij が作成されている。学習装置２３により、分割された運転領域毎に、ノッキングセンサ１８により検出された機関本体１の振動を表す値をニューラルネットワークＮＮij の入力値とすると共に、取得されたノッキング強度を代表する値を教師データとして、対応するニューラルネットワークＮＮij の重みが学習され、分割された運転領域毎に、対応する学習済みのニューラルネットワークＮＮij を用いてノッキングセンサ１８の出力値からノッキング強度を代表する値が推定される。
【００７３】
図２２および図２４に、更に別の実施例を示す。この実施例では、図２２に示されるように、機関本体１にノッキングセンサ１８ａおよびノッキングセンサ１８ｂが取付けられており、これらノッキングセンサ１８ａおよびノッキングセンサ１８ｂは、ノッキングセンサ１８ａの出力値の波形およびノッキングセンサ１８ｂの出力値の波形を検出可能な検出器２１、例えば、オシロスコープに接続されている。図２２において、左から順に１番気筒＃１、２番気筒＃２、３番気筒＃３、４番気筒＃４と称すると、ノッキングセンサ１８ａは１番気筒＃１および２番気筒＃２から等距離の位置に配置されており、ノッキングセンサ１８ｂは３番気筒＃３および４番気筒＃４から等距離の位置に配置されている。図２２に示されるその他の構成は、図５に示される構成と同じであり、従って、この図２２に示されるその他の構成については、説明を省略する。
【００７４】
図２３は、この実施例において用いられるニューラルネットワーク５０を示している。る。図２３を参照すると、このニューラルネットワーク５０においても、図３および図８に示されるニューラルネットワークと同様に、L＝１は入力層、L＝２および L＝３は隠れ層、L＝４は出力層を夫々示している。この実施例では、図２３からわかるように、入力層 ( L＝１) が２ｎ個のノードからなる。一方、図２３には隠れ層 ( L＝２)および隠れ層 ( L＝３)が記載されているが、これら隠れ層の層数は、１個又は任意の個数とすることができ、またこれら隠れ層のノードの数も任意の個数とすることができる。なお、出力層 ( L＝４) のノードの数は１個とされており、出力層のノードからの出力値がｙで示されている。
【００７５】
図２３において、入力値ｘ１、ｘ２・・・ｘｎ−１、ｘｎはフィルタリング後のノッキングセンサ１８ａの出力値であり、入力値ｘｘ１、ｘｘ２・・・ｘｘｎ−１、ｘｘｎはフィルタリング後のノッキングセンサ１８ｂの出力値である。即ち、この実施例では、両方のノッキングセンサ１８ａおよびノッキングセンサ１８ｂのフィルタリング後の出力値が入力層 ( L＝１) の各ノードに入力される。なお、この実施例でも、入力値ｘ１、ｘ２・・・ｘｘｎ−１、ｘｘｎとして、図６Ｂに示される値か、或いは、図６Ｃに示される値が用いられる。即ち、図６Ｂに示されるように、フィルタリングされた後のノッキングセンサ１８ａおよびノッキングセンサ１８ｂの出力値そのものが入力値ｘ１、ｘ２・・・ｘｘｎ−１、ｘｘｎとされるか、或いは、図６Ｃに示されるように、フィルタリングされた後のノッキングセンサ１８ａおよびノッキングセンサ１８ｂの出力値の積分値（負側の積分値も正の値とする）であって例えば一定クランク角度内におけるノッキングセンサ１８ａおよびノッキングセンサ１８ｂの出力値の積分値が入力値ｘ１、ｘ２・・・ｘｘｎ−１、ｘｘｎとされる。
【００７６】
一方、図２３に示される出力値ｙとしては、図８に示される場合と同様に、圧力センサ１９の出力値から求められるノッキング強度を代表する値が採用されている。この場合、図８に示される場合と同様に、図７Ｂにおいて丸印で示されるフィルタリング後の圧力センサ１９の出力値のピーク値が出力値ｙとして用いられるか、或いは、図７Ｃに示されるフィルタリング後の圧力センサ１９の出力値の積分値（負側の積分値も正の値とする）が出力値ｙとして用いられる。なお、この実施例においても、圧力センサ１９の出力値から求められるノッキング強度を代表する値の実測値が教師データｙｔとされる。
【００７７】
図２４は、入力値ｘ１、ｘ２・・・ｘｘｍ−１、ｘｘｍと、圧力センサ１９の出力値から求められるノッキング強度を代表する値の実測値、即ち、教師データｙｔとを用いて作成された訓練データセットを示している。図２４に示されるように、この訓練データセットでは、入力値ｘ１、ｘ２・・・ｘｘｎ−１、ｘｘｎと教師データｙｔとの関係を表すｍ個のデータが取得されている。この訓練データセットの作成方法は、既に説明した図９に示される訓練データセットの作成方法と同じである。即ち、訓練データセットを作成する際には、図２２において、機関負荷および機関回転数の種々の組み合わせについてノッキングの発生しない運転状態とノッキングの発生する運転状態の双方の状態が生ずるように機関を運転させ、そのとき各検出器２１、２２から得られたデータに基づいて、図２４に示されるような訓練データセットが作成される。
【００７８】
訓練データセットが作成されると、作成された訓練データセットの電子データを用いて、図２３に示されるニューラルネットワーク５０の重みの学習が行われる。このニューラルネットワークの重みの学習方法は、図５を参照しつつ前述したニューラルネットワークの重みの学習方法と同じである。即ち、図２３に示されるニューラルネットワーク５０の重みの学習を行うときには、このニューラルネットワーク５０のノード数、および作成された訓練データセットの電子データが、図２２に示される学習装置２３のメモリ２４に記憶され、ＣＰＵ２５において、図１０に示される学習処理ルーチンを用いて、ニューラルネットワーク６０の重みの学習が行われる。この場合、ニューラルネットワーク５０の重みの学習を、図１に示される電子制御ユニット３０により行うこともできる。この場合には、図２３に示されるニューラルネットワーク５０のノード数、および作成された訓練データセットの電子データが電子制御ユニット３０のメモリ３２に記憶され、ＣＰＵ３３において、図１０に示される学習処理ルーチンを用いて、ニューラルネットワーク２０の重みの学習が行われる。
【００７９】
このように、この実施例では、機関本体１の振動を検出する複数個のノッキングセンサ１８ａおよび１８ｂを具備している。学習装置２３、或いは、電子制御ユニット３０により、複数個のノッキングセンサ１８ａおよび１８ｂにより検出された機関本体１の振動を表す値をニューラルネットワーク５０の入力値とすると共に、取得されたノッキング強度を代表する値を教師データとして、ニューラルネットワーク５０の重みが学習される。学習済みのニューラルネットワーク５０を用いて複数個のノッキングセンサ１８ａおよび１８ｂの出力値からノッキング強度を代表する値が推定される。
【００８０】
このように複数個のノッキングセンサ１８ａおよび１８ｂを用い、両方のノッキングセンサ１８ａおよび１８ｂの出力値を用いて、ニューラルネットワーク５０の重みの学習が行われると、一つのノッキングセンサを用いたときよりも、取得できる情報量が増大するために、ノッキング強度を代表する値を精度よく推定することができる。
【符号の説明】
【００８１】
１    機関本体
５    燃焼室
１１    点火栓
１８、１８ａ、１８ｂ    ノッキングセンサ
１９    圧力センサ
２３    学習装置
３０    電子制御ユニット
【図１】
2020128727.tif 000012
【図２】
2020128727.tif 000013
【図３】
2020128727.tif 000014
【図４】
2020128727.tif 000015
【図５】
2020128727.tif 000016
【図６】
2020128727.tif 000017
【図７】
2020128727.tif 000018
【図８】
2020128727.tif 000019
【図９】
2020128727.tif 000020
【図１０】
2020128727.tif 000021
【図１１】
2020128727.tif 000022
【図１２】
2020128727.tif 000023
【図１３】
2020128727.tif 000024
【図１４】
2020128727.tif 000025
【図１５】
2020128727.tif 000026
【図１６】
2020128727.tif 000027
【図１７】
2020128727.tif 000028
【図１８】
2020128727.tif 000029
【図１９】
2020128727.tif 000030
【図２０】
2020128727.tif 000031
【図２１】
2020128727.tif 000032
【図２２】
2020128727.tif 000033
【図２３】
2020128727.tif 000034
【図２４】
2020128727.tif 000035
【手続補正書】
【提出日】令和2年1月21日(2020.1.21)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０００２
【補正方法】変更
【補正の内容】
【０００２】
内燃機関では、燃焼室内において末端ガスが自着火すると圧力波が発生し、ノッキングが生ずる。ノッキングが生ずると機関本体が振動し、この場合、ノッキング強度が高くなるほど機関本体の振動が激しくなる。そこで、機関本体に機関本体の振動を検出するノッキングセンサを取り付け、ノッキングセンサにより検出された機関本体の振動の激しさからノッキング強度を検出するようにした内燃機関が公知である（例えば特許文献１を参照）。しかしながら機関本体は、例えば、吸気弁および排気弁の着座作用や、燃料噴射弁のニードルの着座作用等の機械的動作によっても振動し、従って、機関本体の振動を検出するようにしたノッキングセンサを用いると、このような機械的動作が原因で機関本体の振動強度が激しくなったときに、ノッキング強度が高くないにも拘わらず、ノッキング強度が高いと誤判定してしまうという問題がある。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００４
【補正方法】変更
【補正の内容】
【０００４】
一方、ノッキングが生じたときには、ノッキング強度が高くなるほど燃焼室内の圧力の変動が激しくなる。従って、燃焼室内の圧力を検出可能な圧力センサを用いると、この圧力センサの出力値の変動の激しさからノッキング強度を検出できることになる。この場合、例えば、ノッキング強度が高くなると、圧力センサの出力値のピーク値が高くなり、従って、この圧力センサの出力値のピーク値は、ノッキング強度を代表する値の一つであると言える。従って、このようなノッキング強度を代表する値から、ノッキング強度を検出することができることになる。この場合、機械的動作に基づく機関本体の振動は、圧力センサの出力値に影響を与えず、従って、ノッキング強度を代表する値にも影響を与えないので、圧力センサを用いると、ノッキング強度を精度よく検出することができることになる。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００２０
【補正方法】変更
【補正の内容】
【００２０】
さて、内燃機関では、ノッキング強度が高くなるほど機関本体１の振動が激しくなる。従って、図１および図２に示されるように、機関本体１にノッキングセンサ１８を取り付け、ノッキングセンサ１８により検出された機関本体の振動の激しさからノッキング強度を検出することができる。しかしながら前述したように、機関本体１は、例えば、吸気弁６および排気弁８の着座作用や、燃料噴射弁１０のニードルの着座作用等の機械的動作によっても振動し、従って、機関本体１の振動を検出するようにしたノッキングセンサ１８を用いると、このような機械的動作が原因で機関本体の振動強度が激しくなったときに、ノッキング強度が高くないにも拘わらず、ノッキング強度が高いと誤判定してしまうと問題がある。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００６２
【補正方法】変更
【補正の内容】
【００６２】
図１５は、図１３のステップ１３５において算出されたノッキング強度代表値の推定値ｙe、又は図１４のステップ１４６において算出されたノッキング強度代表値の推定値ｙe に基づき電子制御ユニット３０内で実行されるノッキング判定ルーチンを示している。このルーチンは、一定クランク角毎の割り込みにより実行される。図１５を参照すると、まず初めに、ステップ１５０において、ノッキング強度代表値に対する閾値Ｍij が読み込まれる。この閾値Ｍij は、図１６に示されるように、機関負荷Ｌと機関回転数Ｎに応じて複数個に分割された各機関運転領域に対して予め設定されている。
【手続補正書】
【提出日】令和2年4月16日(2020.4.16)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０００６
【補正方法】変更
【補正の内容】
【０００６】
即ち、１番目の発明によれば、機関本体の振動を検出するノッキングセンサと、内燃機関の燃焼室内の圧力を検出する圧力センサと、ニューラルネットワークを用いて内燃機関のノッキング強度を代表する値を推定するための学習装置とを具備しており、圧力センサの出力値からノッキング強度を代表する値が取得され、ノッキングセンサにより検出された機関本体の振動を表す値が、予め設定されている期間内において等分割された各区間内におけるノッキングセンサの出力値の積分値であり、各区間内における各積分値を夫々ニューラルネットワークの入力層の各ノードへの入力値とすると共に、取得されたノッキング強度を代表する値を教師データとして、学習装置によりニューラルネットワークの重みが学習され、予め設定されている期間内において等分割された各区間内におけるノッキングセンサの出力値の各積分値を学習済みのニューラルネットワークの入力層の各ノードに入力することによりノッキングセンサの出力値からノッキング強度を代表する値が推定される内燃機関のノッキング検出装置が提供される。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００７
【補正方法】変更
【補正の内容】
【０００７】
２番目の発明によれば、機関本体の振動を検出するノッキングセンサの出力値と、内燃機関の燃焼室内の圧力を検出する圧力センサの出力値とに基づき、ニューラルネットワークを用いて内燃機関のノッキング強度を推定する内燃機関のノッキング検出方法において、圧力センサの出力値からノッキング強度を代表する値を求め、ノッキングセンサにより検出された機関本体の振動を表す値とノッキング強度を代表する値との関係を示す訓練データセットを作成し、このノッキングセンサにより検出された機関本体の振動を表す値が、予め設定されている期間内において等分割された各区間内におけるノッキングセンサの出力値の積分値であり、各区間内における各積分値を夫々ニューラルネットワークの入力層の各ノードへの入力値とすると共に、取得されたノッキング強度を代表する値を教師データとして、ニューラルネットワークの重みを学習し、予め設定されている期間内において等分割された各区間内におけるノッキングセンサの出力値の各積分値を学習済みのニューラルネットワークの入力層の各ノードに入力することによりノッキング強度を代表する値を推定する内燃機関のノッキング検出方法が提供される。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００２６
【補正方法】変更
【補正の内容】
【００２６】
図６Ａおよび図７Ａは夫々、同一のノッキングの発生に対するフィルタリング後のノッキングセンサ１８の出力値（Ｖ）の変化と、フィルタリング後の圧力センサ１９の出力値の変化（Ｖ）とを示している。なお、図６Ａの横軸および図７Ａの横軸は共に、ＡＴＤＣで表したクランク角（圧縮上死点から圧縮上死点後９０°）を示している。
【手続補正４】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
機関本体の振動を検出するノッキングセンサと、内燃機関の燃焼室内の圧力を検出する圧力センサと、ニューラルネットワークを用いて内燃機関のノッキング強度を代表する値を推定するための学習装置とを具備しており、圧力センサの出力値からノッキング強度を代表する値が取得され、ノッキングセンサにより検出された機関本体の振動を表す値が、予め設定されている期間内において等分割された各区間内におけるノッキングセンサの出力値の積分値であり、各区間内における各積分値を夫々ニューラルネットワークの入力層の各ノードへの入力値とすると共に、取得されたノッキング強度を代表する値を教師データとして、該学習装置によりニューラルネットワークの重みが学習され、該予め設定されている期間内において等分割された各区間内におけるノッキングセンサの出力値の各積分値を学習済みのニューラルネットワークの入力層の各ノードに入力することによりノッキングセンサの出力値から該ノッキング強度を代表する値が推定される内燃機関のノッキング検出装置。
【請求項２】
該ノッキング強度を代表する値が、予め設定されている期間内における圧力センサの出力値のピーク値である請求項１に記載の内燃機関のノッキング検出装置。
【請求項３】
該ノッキング強度を代表する値が、予め設定されている期間内における圧力センサの出力値の積分値である請求項１に記載の内燃機関のノッキング検出装置。
【請求項４】
予め設定されている期間が、一定のクランク角度範囲である請求項１に記載の内燃機関のノッキング検出装置。
【請求項５】
予め設定されている期間が、一定時間である請求項１に記載の内燃機関のノッキング検出装置。
【請求項６】
機関の運転領域が複数個の運転領域に分割されると共に、分割された各運転領域に対して夫々ニューラルネットワークが作成されており、該学習装置により、分割された運転領域毎に、該予め設定されている期間内において等分割された各区間内におけるノッキングセンサの出力値の各積分値を夫々対応するニューラルネットワークの入力層の各ノードへの入力値とすると共に、取得されたノッキング強度を代表する値を教師データとして、対応するニューラルネットワークの重みが学習され、分割された運転領域毎に、該予め設定されている期間内において等分割された各区間内におけるノッキングセンサの出力値の各積分値を対応する学習済みのニューラルネットワークの入力層の各ノードに入力することによりノッキングセンサの出力値から該ノッキング強度を代表する値が推定される請求項１に記載の内燃機関のノッキング検出装置。
【請求項７】
機関本体の振動を検出する複数個のノッキングセンサを具備しており、該学習装置により、該予め設定されている期間内において等分割された各区間内における該複数個のノッキングセンサの出力値の各積分値を夫々ニューラルネットワークの入力層の各ノードへの入力値とすると共に、取得されたノッキング強度を代表する値を教師データとして、ニューラルネットワークの重みが学習され、該予め設定されている期間内において等分割された各区間内における複数個のノッキングセンサの出力値の各積分値を学習済みのニューラルネットワークの入力層の各ノードに入力することにより該複数個のノッキングセンサの出力値から該ノッキング強度を代表する値が推定される請求項１に記載の内燃機関のノッキング検出装置。
【請求項８】
上記ノッキング強度を代表する値の推定値からノッキングの発生を判定する請求項１に記載の内燃機関のノッキング検出装置。
【請求項９】
機関本体の振動を検出するノッキングセンサの出力値と、内燃機関の燃焼室内の圧力を検出する圧力センサの出力値とに基づき、ニューラルネットワークを用いて内燃機関のノッキング強度を推定する内燃機関のノッキング検出方法において、圧力センサの出力値からノッキング強度を代表する値を求め、ノッキングセンサにより検出された機関本体の振動を表す値と該ノッキング強度を代表する値との関係を示す訓練データセットを作成し、該ノッキングセンサにより検出された機関本体の振動を表す値が、予め設定されている期間内において等分割された各区間内におけるノッキングセンサの出力値の積分値であり、各区間内における各積分値を夫々ニューラルネットワークの入力層の各ノードへの入力値とすると共に、取得されたノッキング強度を代表する値を教師データとして、ニューラルネットワークの重みを学習し、該予め設定されている期間内において等分割された各区間内におけるノッキングセンサの出力値の各積分値を学習済みのニューラルネットワークの入力層の各ノードに入力することにより該ノッキング強度を代表する値を推定する内燃機関のノッキング検出方法。