(57)【要約】【課題】  安価な振動センサを使用してシリンダ内圧が検出できるシリンダ内圧検出方法を提供する。【解決手段】  内燃機関の振動を振動センサ１で検出すると共に該内燃機関の実際のシリンダ内圧をシリンダ内圧センサで検出し、上記振動検出信号を入力するとシリンダ内圧を推定したシリンダ内圧推定信号を出力するニューラルネットワーク３１に上記振動検出信号を入力し、このときニューラルネットワーク３１から出力されるシリンダ内圧推定信号と前記実際のシリンダ内圧との偏差によりニューラルネットワーク３１を学習させ、学習後はニューラルネットワーク３１に振動センサ１で検出した振動検出信号を入力したときニューラルネットワーク３１から出力されるシリンダ内圧推定信号をシリンダ内圧とみなす。【選択図】        図１
2005120896.tif 000002
【特許請求の範囲】
【請求項１】
内燃機関の振動を振動センサで検出すると共に該内燃機関の実際のシリンダ内圧をシリンダ内圧センサで検出し、上記振動検出信号を入力するとシリンダ内圧を推定したシリンダ内圧推定信号を出力するニューラルネットワークに上記振動検出信号を入力し、このときニューラルネットワークから出力されるシリンダ内圧推定信号と前記実際のシリンダ内圧との偏差によりニューラルネットワークを学習させ、学習後はニューラルネットワークに振動センサで検出した振動検出信号を入力したときニューラルネットワークから出力されるシリンダ内圧推定信号をシリンダ内圧とみなすことを特徴とするシリンダ内圧検出方法。
【請求項２】
前記学習は、内燃機関の回転速度を変更しながら各回転速度ごとに行い、振動検出信号及びシリンダ内圧センサによる実際のシリンダ内圧は回転速度に応じてサンプリングレートを変更することにより、回転速度によらず所定回転角度範囲内のサンプリング数を一定にすることを特徴とする請求項１記載のシリンダ内圧検出方法。
【請求項３】
学習後にニューラルネットワークに入力する振動検出信号は、回転速度に応じてサンプリングレートを変更することにより、前記学習時の回転速度に応じたサンプリング数に一致させることを特徴とする請求項２記載のシリンダ内圧検出方法。
【請求項４】
前記サンプリングレートの変更は、一定サンプリングレートでサンプリングしたデータをアップサンプラ処理又はダウンサンプラ処理して行うことを特徴とする請求項３記載のシリンダ内圧検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内燃機関の着火タイミング制御の要素としてシリンダ内圧を検出する方法に係り、特に、安価な振動センサを使用してシリンダ内圧が検出できるシリンダ内圧検出方法に関するものである。
【背景技術】
【０００２】
内燃機関のシリンダ内圧（筒内圧力）は、従来、筒内圧力ピックアップと呼ばれるシリンダ内圧センサで行われている。また、着火タイミングは、従来、イオンセンサにより検出されている。
【０００３】
シリンダ内圧のデータからは、着火タイミング、熱発生率などの情報が得られるので、シリンダ内圧のデータを着火タイミング制御、トルク制御などに利用することができる。
【０００４】
【特許文献１】特開平１０−２６０４７号公報
【特許文献２】特開昭６０−１３８２４７号公報
【特許文献３】特開昭５９−１８５８３７号公報
【特許文献４】特表２００１−５１５９９０号公報
【特許文献５】特開平１−３０１９４６号公報
【特許文献６】特開平３−２３５７２３号公報
【非特許文献１】「シミュレーションで学ぶディジタル信号処理」、尾知博、２００１年、ＣＱ出版株式会社、第４部ディジタル信号処理の応用第９章マルチレート信号処理とフィルタバンク
【非特許文献２】「ＲＢＦネットワーク」ｈｔｔｐ：／／ｗｗｗ．ａｉｓｔ．ｇｏ．ｊｐ／ＥＴＬ／＾ｋｕｒｉｔａ／ｌｅｃｔｕｒｅ／ｐｒｎｎ／ｎｏｄｅ３１．ｈｔｍｌ、２００３／０２／０６
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、シリンダ内圧センサは高価であり、しかも、複数気筒の内燃機関に対しては各シリンダにシリンダ内圧センサを設ける必要があるので、内燃機関を含む内燃機関制御システム全体のコストが高くなる。
【０００６】
そこで、本発明の目的は、上記課題を解決し、安価な振動センサを使用してシリンダ内圧が検出できるシリンダ内圧検出方法を提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するために本発明は、内燃機関の振動を振動センサで検出すると共に該内燃機関の実際のシリンダ内圧をシリンダ内圧センサで検出し、上記振動検出信号を入力するとシリンダ内圧を推定したシリンダ内圧推定信号を出力するニューラルネットワークに上記振動検出信号を入力し、このときニューラルネットワークから出力されるシリンダ内圧推定信号と前記実際のシリンダ内圧との偏差によりニューラルネットワークを学習させ、学習後はニューラルネットワークに振動センサで検出した振動検出信号を入力したときニューラルネットワークから出力されるシリンダ内圧推定信号をシリンダ内圧とみなすものである。
【０００８】
前記学習は、内燃機関の回転速度を変更しながら各回転速度ごとに行い、振動検出信号及びシリンダ内圧センサによる実際のシリンダ内圧は回転速度に応じてサンプリングレートを変更することにより、回転速度によらず所定回転角度範囲内のサンプリング数を一定にしてもよい。
【０００９】
学習後にニューラルネットワークに入力する振動検出信号は、回転速度に応じてサンプリングレートを変更することにより、前記学習時の回転速度に応じたサンプリング数に一致させてもよい。
【００１０】
前記サンプリングレートの変更は、一定サンプリングレートでサンプリングしたデータをアップサンプラ処理又はダウンサンプラ処理して行ってもよい。
【発明の効果】
【００１１】
本発明は次の如き優れた効果を発揮する。
【００１２】
（１）高価なシリンダ内圧センサを使用せず、安価な振動センサを使用してシリンダ内圧が検出できる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の一実施形態を添付図面に基づいて詳述する。
【００１４】
図１に、本発明のシリンダ内圧検出方法を利用した着火タイミング制御システムの構成を示す。図示のように、このシステムは、内燃機関の振動を検出する振動センサ１としてのノックセンサ１ａと、クランクシャフト等から内燃機関の回転速度を検出する回転センサ２と、振動検出信号と回転速度検出信号とを用いて着火タイミングを算出する演算装置（以下、ＤＳＰという）３と、この着火タイミングの算出結果を用いて内燃機関を制御する内燃機関制御装置（以下、ＥＣＵという）４とを備える。図示しないが、後述するニューラルネットワークの学習時にはシリンダ内圧センサを使用し、このシリンダ内圧センサは学習後に取り外す。
【００１５】
振動センサ１は、振動の振幅の瞬時値を常時検出するものである。振動センサ１には、内燃機関の振動加速度を検出する加速度センサを用い、振動加速度から振幅を求めてもよい。この実施形態では、振動センサ１として従来から知られている安価なノックセンサ１ａを用いている。
【００１６】
回転センサ２は、従来から知られているものを使用してよい。
【００１７】
ＤＳＰ３は、振動センサ１からの振動検出信号と学習時におけるシリンダ内圧センサからの実際のシリンダ内圧検出信号とをディジタルサンプリングするサンプリング部（図２参照）と、少なくとも入力層、中間層、出力層の３層を有するニューラルネットワーク（図３参照）と、このニューラルネットワークが出力するシリンダ内圧推定信号を着火タイミングに変換する変換部（図示せず）とを備える。
【００１８】
以上の振動センサ１、回転センサ２、ＤＳＰ３により着火タイミングセンサ５が形成されている。
【００１９】
ＥＣＵ４は、従来から知られているものを使用してよい。ＤＳＰ３からＥＣＵ４へのデータインタフェースとしては、ＣＡＮなどのネットワーク経由で数値データを渡すネットワーク方式、ＤＳＰ内のＤ／Ａ変換器でアナログ化したデータをＥＣＵに伝送し、ＥＣＵ内のＡ／Ｄ変換器でデジタル化するアナログ伝送方式、ＤＳＰから着火タイミングでデジタル信号（トリガパルス）を出力し、ＥＣＵではこのデジタル信号をキャプチャした（捕らえた）時間を着火タイミングとするタイミングキャプチャ方式などがある。
【００２０】
図２に示されるように、サンプリング部は、ニューラルネットワークの学習時と学習後とで動作が異なるが、構成としては、入力されるアナログ信号から高周波ノイズを除去するローパスフィルタ２１，２２と、サンプリングレートを可変にしたマルチレート信号処理を行うタイムワーピング部２３，２４，２５とタイムスタティックアベレージ部２６を備える。ＲＢＦネットワーク２７は、後述するようにニューラルネットワーク３１のことである。時間統計平均部２６は、シリンダ圧力データと振動信号それぞれの白色ノイズ低減のために時間統計平均を計算するものである。
【００２１】
図３に示されるように、ニューラルネットワーク３１は、振動検出信号のサンプリングデータｖを時系列順に入力する複数の入力タップ３２を有する入力層３３と、各々の入力タップ３２からの振動検出信号にそれぞれ重み付けしてガウス関数（基底関数）ψを演算する複数の演算器３４を有する中間層３５と、各々の演算器３４からの演算結果をそれぞれ異なる重み付けで総合してシリンダ内圧推定信号の時系列を出力する複数の出力タップ３６を有する出力層３７とからなるＲＢＦネットワークである。ＲＢＦネットワークの詳細については非特許文献２に記述されているので、ここでは説明を省略する。
【００２２】
このニューラルネットワーク３１は、学習前のとき、振動検出信号を入力すると不定のシリンダ内圧推定信号を出力するが、そのシリンダ内圧推定信号とシリンダ内圧センサによる実際のシリンダ内圧との偏差に応じて演算器３４における重み付けを変化させることにより偏差が小さくなるように学習を行うものである。この学習を十分な期間続けることで、出力されるシリンダ内圧推定信号が実際のシリンダ内圧に限り無く近付き、最終的には、シリンダ内圧推定信号をシリンダ内圧とみなしてもよくなる。
【００２３】
図１のシステムは、ニューラルネットワーク３１が学習前のとき、内燃機関の振動を振動センサ１で検出すると共に内燃機関の実際のシリンダ内圧をシリンダ内圧センサ（図示せず）で検出し、このうち振動検出信号をニューラルネットワーク３１に入力し、シリンダ内圧推定信号とシリンダ内圧センサによる実際のシリンダ内圧との偏差によりニューラルネットワーク３１を学習させ、学習後はニューラルネットワーク３１に振動センサ１で検出した振動検出信号を入力したときニューラルネットワーク３１から出力されるシリンダ内圧推定信号をシリンダ内圧とみなすものである。
【００２４】
学習のシステムとしては、図１のシステムを使用せずに別のコンピュータで予めオフラインで計算しておく場合もある。
【００２５】
以下、図１のシステムの動作を説明する。
【００２６】
まず、前処理としてモデルの作成（ニューラルネットワークの学習のこと）を行う。その第一段階としてデータ計測を行う。
【００２７】
ここでは、内燃機関をディーゼルエンジンとし、複数ある気筒のうちひとつに着目する。図４の気筒判別信号の欄に示すように、気筒判別信号は、エンジン機種により様々なパターンがあるが、クランクシャフトが２回転する７２０°毎に１回、短いパルスとして発生する単純な例で説明する。ＤＳＰ３は、この気筒判別信号をトリガにして、振動センサ１が検出する振動検出信号及びシリンダ内圧センサが検出する実際のシリンダ内圧を、ＡＤサンプリングの欄に示すように、クランクシャフトの所定角度範囲の期間ｄ中、サンプリングする。サンプリング数は、ニューラルネットワーク３１の入力タップ数に等しいか大きければよい。このサンプリングと並行してＥＣＵ４では、他の内燃機関データ（内燃機関回転数又は回転速度、コモンレール圧力、噴射量、噴射タイミングなど）を計測し、内燃機関制御用のデータセットとして保存する。
【００２８】
このようなデータ計測の運転条件としては、上記の内燃機関データを変化させ、変化した各内燃機関データごとに計測を行う。
【００２９】
第二の段階としてニューラルネットワークを構築する。
【００３０】
このために、図２の左側に示した動作が行われる。即ち、まず、ローパスフィルタ２１で振動検出信号及び実際のシリンダ内圧の信号から高周波ノイズを除去する。次に、タイムワーピング部２３では、サンプリングレートを可変にしてサンプリングを行う。
【００３１】
内燃機関の回転速度が異なると、仮に一定サンプリングレートでサンプリングした場合に同じサンプリング数のデータがクランクシャフトの異なる角度範囲に対応してしまう。ニューラルネットワークを有効に利用するためには、回転速度によらず、同一回転角度範囲のサンプリング数を一定にしておきたい。そこで、回転速度が高いときにはサンプリングレートを高くし、回転速度が低いときにはサンプリングレートを低くするのである。なお、Ａ／Ｄ変換器に与えているクロックを可変にしてサンプリングレートを変更してもよいが、Ａ／Ｄ変換器のクロックは一定に保って一定サンプリングレートとし、この一定サンプリングレートでサンプリングしたデータをアップサンプラ処理（サンプリングレートを高く変換する処理）又はダウンサンプラ処理（サンプリングレートを低く変換する処理）して行うようにすれば、ソフトウェア処理で実現できるので好ましい。このようなマルチレート信号処理については非特許文献１に詳しく記述されているので、ここでは説明を省略する。
【００３２】
次に、時間統計平均部２６は、シリンダ圧力データと振動信号それぞれの白色ノイズ低減のために時間統計平均を行う。ニューラルネットワーク３１では、この入力データと教師信号により演算器における重み付けを変化させて偏差が小さくなるように学習を行う。この学習を前述した運転条件を変化させながら繰り返す。このとき、他の内燃機関データも教師信号に追加してもよい。
【００３３】
以上により、前処理が終了する。
【００３４】
次に、学習後におけるシリンダ内圧推定を行う。
【００３５】
ここでは、図２の右側に示した動作が行われる。即ち、振動検出信号のみが使用され、シリンダ内圧センサは不要となる。ローパスフィルタ２２では振動検出信号から高周波ノイズを除去する。次に、タイムワーピング部２４では、前述した前処理と同じようにサンプリングレートを可変にしてサンプリングを行う。サンプリングした時系列をニューラルネットワーク３１に入力すると、シリンダ内圧推定信号の時系列が出力される。このシリンダ内圧推定信号を現在の回転速度に合致したリアルタイムに戻すべく、タイムワーピング部２５ではサンプリングレートを逆に変換する。この逆変換で得られた時系列は、リアルタイムでのシリンダ内圧推定信号の波形データとなる。
【００３６】
図５（ａ）〜図５（ｃ）に波形データ等の例をグラフで示す。いずれも横軸はクランクシャフトの回転角を示し、縦軸は（ａ）がシリンダ内圧、（ｂ）が振動、（ｃ）がエラーである。（ａ）のグラフには、推定したシリンダ内圧の波形が破線で、実際のシリンダ内圧の波形が実線で示されるが、破線と実線の波形が重なっている。つまり、推定したシリンダ内圧は実際のシリンダ内圧に等しいという結果が得られている。
【００３７】
次に、推定したシリンダ内圧から着火タイミング（着火するべき時期）を算出して着火タイミング（実際に着火する時期）を制御する方法を説明する。着火タイミングを示す信号は、シリンダ内圧推定信号を一次微分或いは二次微分して得られる。図６（ａ）〜図６（ｃ）に信号処理の例をグラフで示す。いずれも横軸はポイント数（サンプリング時間順のサンプル番号）、縦軸は信号の大きさを表す数値である。図６（ａ）はシリンダ内圧推定信号の原波形、図６（ｂ）は一次微分波形、図６（ｃ）は二次微分波形である。これらの波形から、例えば、二次微分値が最大となるポイントを着火タイミングとする。
【００３８】
シリンダ内圧推定信号から熱発生率を計算して、この熱発生率から着火タイミングを決定してもよい。
【００３９】
実際に着火する時期の制御は、図７のようなフィードバック制御で行うことができる。ここではＰＩＤコントローラを用いる。シリンダ内圧推定信号から求めた目標着火タイミングをＰＩＤコントローラ７１に入力し、ＰＩＤコントローラはエンジン７２の着火タイミングを制御し、その着火タイミングをセンサ７３で計測してＰＩＤコントローラ７１にフィードバックする。ＰＩＤコントローラ７１は、外部から入力された目標着火タイミングと、自身が算出して実際に制御した着火タイミングとにより、次の着火タイミングを算出する。
【００４０】
以上の実施形態では、内燃機関をディーゼルエンジンとし、４サイクル形式としたが、ガソリンエンジンでも、或いは２サイクル形式でも、また、その他のあらゆる内燃機関に本発明が適用できることは勿論である。
【図面の簡単な説明】
【００４１】
【図１】本発明の一実施形態を示す着火タイミング制御システムの構成図である。
【図２】本発明の一実施形態を示すサンプリング部の機能的構成図である。
【図３】本発明の一実施形態を示すニューラルネットワークの構成図である。
【図４】本発明におけるデータ計測のタイミング図である。
【図５】本発明で得られた信号の波形図である。
【図６】本発明における信号処理を表す波形図である。
【図７】本発明を利用した着火タイミング制御回路の構成図である。
【符号の説明】
【００４２】
１  振動センサ
２  回転センサ
３  演算装置（ＤＳＰ）
４  内燃機関制御装置（ＥＣＵ）
５  着火タイミングセンサ
３１  ニューラルネットワーク
【図１】
2005120896.tif 000003
【図２】
2005120896.tif 000004
【図３】
2005120896.tif 000005
【図４】
2005120896.tif 000006
【図５】
2005120896.tif 000007
【図６】
2005120896.tif 000008
【図７】
2005120896.tif 000009