(57)【要約】  高精度の平均図示トルクを算出する。複数の気筒を有するエンジンのクランク角度センサの出力から抽出されたクランク角度に基づいて、推定図示トルクの時系列データを算出するトルク推定部と、気筒別の推定図示トルクの時系列データから気筒別の推定図示トルクの関連値をそれぞれ抽出する推定図示トルク関連値抽出部と、推定図示トルクの関連値を、推定図示トルクの関連値に対応してエンジンの気筒内状態から算出した平均図示トルクの正解値に、気筒別に変換する、平均図示トルクの正解値取得手段と、を有する、エンジントルク推定装置。
2020174542.tif 000002
【特許請求の範囲】
【請求項１】
複数の気筒を有するエンジンのクランク角度センサの出力から抽出されたクランク角度に基づいて、推定図示トルクの時系列データを算出するトルク推定部と、
気筒別の前記推定図示トルクの時系列データから気筒別の推定図示トルクの関連値をそれぞれ抽出する推定図示トルク関連値抽出部と、
前記推定図示トルクの関連値を、前記推定図示トルクの関連値に対応して前記エンジンの気筒内状態から算出した平均図示トルクの正解値に、前記気筒別に変換する、平均図示トルクの正解値取得手段と、を有する、エンジントルク推定装置。
【請求項２】
前記平均図示トルクの正解値取得手段は、前記推定図示トルクの関連値を、前記推定図示トルクの関連値に対応して前記エンジンの気筒内状態から算出した平均図示トルクの正解値に、前記気筒別に加えてエンジン回転数別に変換する、請求項１に記載のエンジントルク推定装置。
【請求項３】
前記推定図示トルクの関連値は、前記推定図示トルクの時系列データにおけるクランクシャフトの回転の半周期内の最大値と最小値の差分である推定図示トルクの振幅である、請求項１に記載のエンジントルク推定装置。
【請求項４】
前記推定図示トルクの関連値は、前記推定図示トルクの時系列データにおけるクランクシャフトの回転の半周期分の積分値である、請求項１に記載のエンジントルク推定装置。
【請求項５】
前記平均図示トルクの正解値取得手段は、
前記推定図示トルクの関連値に対応して前記平均図示トルクの正解値を有する、前記気筒別の変換マップを参照して、前記推定図示トルクの関連値を前記平均図示トルクの正解値に、前記気筒別に、変換する、請求項３または４に記載のエンジントルク推定装置。
【請求項６】
前記平均図示トルクの正解値取得手段は、
前記推定図示トルクの関連値を入力し前記平均図示トルクの正解値を出力する、前記気筒別の変換式に基づいて、前記推定図示トルクの関連値を、前記平均図示トルクの正解値に、前記気筒別に、変換する、請求項３または４に記載のエンジントルク推定装置。
【請求項７】
前記変換マップまたは変換式は、前記気筒別に加えてエンジン回転数別の変換マップまたは変換式であり、
前記平均図示トルクの正解値取得手段は、前記気筒別に加えてエンジン回転数別に、前記変換する、請求項５または６に記載のエンジントルク推定装置。
【請求項８】
前記トルク推定部は、前記クランク角度の時系列データからクランク角速度の時系列データを算出し、前記クランク角速度の時系列データと前記エンジンの慣性モーメント情報に基づいて、前記推定図示トルクの時系列データを算出する、請求項１に記載のエンジントルク推定装置。
【請求項９】
前記トルク推定部は、前記クランク角度の時系列データと前記クランク角度の時系列データから算出されるクランク角速度の時系列データを観測値とし、前記クランク角度の時系列データと前記クランク角速度の時系列データと前記推定図示トルクとを状態推定値とする非線形カルマンフィルタに基づいて、時系列のタイミング毎に、前記状態推定値を推定する、請求項１に記載のエンジントルク推定装置。
【請求項１０】
複数の気筒を有するエンジンのクランク角度センサの出力から抽出されたクランク角度に基づいて、推定図示トルクの時系列データを算出し、
気筒別の前記推定図示トルクの時系列データから気筒別の推定図示トルクの関連値をそれぞれ抽出し、
前記推定図示トルクの関連値を、前記推定図示トルクの関連値に対応して前記エンジンの気筒内状態から算出した平均図示トルクの正解値に、前記気筒別に変換する、エンジントルク推定方法。
【請求項１１】
複数の気筒を有するエンジンのクランク角度センサの出力から抽出されたクランク角度に基づいて、平均図示トルクの正解値を、気筒別に算出するエンジントルク推定装置と、
前記気筒別の平均図示トルクの正解値が、要求トルクに一致するよう前記気筒別の燃料噴射量を決定する噴射量決定部とを有し、
前記エンジントルク推定装置は、
前記クランク角度センサの出力から抽出されたクランク角度に基づいて、推定図示トルクの時系列データを算出するトルク推定部と、
気筒別の前記推定図示トルクの時系列データから気筒別の推定図示トルクの関連値をそれぞれ抽出する推定図示トルク関連値抽出部と、
前記推定図示トルクの関連値を、前記推定図示トルクの関連値に対応して前記エンジンの気筒内状態から算出した平均図示トルクの正解値に、前記気筒別に変換する、平均図示トルクの正解値取得手段と、を有する、エンジン制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、エンジントルク推定装置、エンジントルク推定方法及びエンジン制御装置に関する。
【背景技術】
【０００２】
自動車用のガソリンエンジンやディーゼルエンジンの制御装置は、エンジンをトルクで制御するトルクベース制御を行う。トルクベース制御では，ドライバのアクセル操作やクルーズコントロールなどから要求トルクを設定し，その要求トルクを満たす図示トルクを計算し、図示トルクを再現できるようインジェクタの噴射量を制御する。かかるエンジン制御は、フィードフォワード制御である。【０００３】
フィードフォワード制御では、多気筒エンジンの複数の気筒（シリンダ）のインジェクタの噴射量を同じように制御する。但し、複数の気筒それぞれのインジェクタの個体差により複数の気筒の図示トルクにばらつきが生じ、排ガス性能や燃費性能の悪化を招く要因となる。【０００４】
一方、エンジンの各気筒の図示トルクをクランク角度センサのセンサ値（観測値、出力値）に基づいて推定し、各気筒の推定図示トルクが要求トルクに一致するよう各気筒のインジェクタの噴射量を別々に制御するフィードバック制御が提案されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１０−１２７２１９号公報
【特許文献２】特開２０１７−８２６６２号公報
【非特許文献】
【０００６】
【非特許文献１】カルマンフィルタの基礎、足立修一、丸田一郎著、東京電機大学出版局、ISBN 978-4-501-32891-0 C3055
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、クランク角度センサのクランク角度抽出による測定分解能の限界、クランク角度センサの電圧出力のサンプリング周期の限界、高回転領域におけるエンジン内の振動などの外乱等に起因して、クランク角度センサのセンサ値には各気筒の燃焼サイクルで異なるノイズが含まれる。そのため、クランク角度センサのセンサ値に基づいて各気筒の図示トルクを正確に推定することは困難である。このような理由から、各気筒の推定図示トルクに基づくフィードバック制御を適切に行うことができない。【０００８】
そこで，本実施の形態の第1の側面の目的は、各気筒の図示トルクを高精度に推定するエンジントルク推定装置、エンジントルク推定方法及びエンジン制御装置を提供することにある。
【課題を解決するための手段】
【０００９】
本実施の形態の第１の側面は、複数の気筒を有するエンジンのクランク角度センサの出力から抽出されたクランク角度に基づいて、推定図示トルクの時系列データを算出するトルク推定部と、気筒別の前記推定図示トルクの時系列データから気筒別の推定図示トルクの関連値をそれぞれ抽出する推定図示トルク関連値抽出部と、前記推定図示トルクの関連値を、前記推定図示トルクの関連値に対応して前記エンジンの気筒内状態から算出した平均図示トルクの正解値に、前記気筒別に変換する、平均図示トルクの正解値取得手段と、を有する、エンジントルク推定装置である。
【発明の効果】
【００１０】
第１の側面によれば、各気筒の図示トルクを高精度に推定することができる。
【図面の簡単な説明】
【００１１】
【図１】エンジンとエンジントルク推定装置及びエンジン制御装置の概略構成を示す図である。
【図２】本実施の形態におけるエンジントルク推定装置及びエンジン制御装置の構成を示す図である。
【図３】エンジントルク推定装置及びエンジン制御装置の処理内容を示すフローチャートの図である。
【図４】クランク角度の時系列データとクランク角速度の時系列データと推定図示トルク及び図示トルクの正解値の一例を示す図である。
【図５】４気筒エンジンの概略構成を示す図である。
【図６】変換マップまたは変換式を取得するためのエンジンの実験を示す図である。
【図７】推定図示トルクの振幅を示す図である。
【図８】変換マップまたは変換式の例を示す図である。
【図９】推定図示トルクの関連値の他の例である積分値を示す図である。
【図１０】本実施の形態における非線形カルマンフィルタの演算処理のフローチャートを示す図である。
【発明を実施するための形態】
【００１２】
図１は、エンジンとエンジントルク推定装置及びエンジン制御装置の概略構成を示す図である。エンジンENGは、ガソリンエンジンまたはディーゼルエンジンであり、エンジンのみを駆動源とする車や、エンジンと電気モータを駆動源とするハイブリッド車などに搭載される。エンジンENGには、クランクシャフトの回転角を検出するクランク角度センサCAが設けられる。エンジントルク推定装置及びエンジン制御装置１０は、例えば、マイクロコンピュータにより構成される。マイクロコンピュータは、具体的に、演算処理部CPUと、メインメモリM_MEMと、不揮発性メモリ等の補助記憶装置１２と、外部とのインターフェースIFと、それらを接続するバス１１とを有する。
【００１３】
クランク角度センサCAは、例えば、クランクシャフトの基準位置と回転角を検出するセンサである。クランク角度センサにより検出されるセンサ値は、電子燃料噴射システムにおいて、燃料噴射制御、点火時期制御のベース信号となる。 例えば、電磁式のクランク角度センサは、クランクシャフトに取り付けられた突起（歯）のあるロータの回転によりクランク角度センサが受ける磁束が変化する。この磁束の変化を、短形波のパルス信号に変換して出力する。ロータにはクランク角ピッチに対応して複数の突起が設けられ、上死点検出用に欠歯を有する。別の例では、光学式のクランク角度センサは、ロータの突起間を貫通する光を検出し、矩形波のパルス信号に変換して出力する。
【００１４】
マイクロコンピュータ１０で構成されるエンジントルク推定装置は、クランク角度センサCAの出力パルスから抽出されるクランク角度を入力し、演算処理部CPUが補助記憶装置１２内のエンジントルク推定プログラムを実行して、各気筒の推定トルク、例えば推定図示トルク、を算出する。
【００１５】
また、同様にマイクロコンピュータ１０で構成されるエンジン制御装置は、演算処理部CPUが補助記憶装置１２内のエンジン制御プログラムを実行して、エンジンENGの回転数などのエンジン内部状態や、上記の推定トルクなどに基づいて、要求トルクを実現するためのエンジンのインジェクタ噴射量を算出し、インジェクタを駆動制御する。
【００１６】
図２は、本実施の形態におけるエンジントルク推定装置及びエンジン制御装置の構成を示す図である。図１で説明したとおり、エンジントルク推定装置２０は、マイクロコンピュータがエンジントルク推定プログラムを実行することで、図２に示される各計算部、推定部、抽出部、取得部などが実現される。また、エンジン制御装置３０は、エンジントルク推定装置２０を含み、マイクロコンピュータがエンジン制御プログラムを実行することで、図２に示されるトルクフィードバック制御部３１，トルクフィードフォワード制御部３４、インジェクタ指示噴射量決定部３２、トルク目標値設定部３３などが実現される。
【００１７】
図３は、エンジントルク推定装置及びエンジン制御装置の処理内容を示すフローチャートの図である。図２に示したエンジントルク推定装置及びエンジン制御装置の各計算部等の処理の内容が図３に示される。
【００１８】
エンジントルク推定装置２０は、クランク角度センサCAの電圧出力20Aを入力し、電圧出力からクランク角度の時系列データ（time series data）を抽出する。時系列のクランク角速度計算部２１は、クランク角度センサCAが出力するパルス状の電圧出力20Aをモニタリングし、クランク角度の時系列データ（time series data）を計算する。具体的には、時系列のクランク角速度計算部２１は、クランク角度センサが出力する電圧値が上昇するときと下降するときに０ボルトをクロスすると、クランク角度θ（ｋ）が所定の微小角度Δθ（ｋ）だけ進角したことを検出する。そして、時系列のクランク角速度計算部２１は、0クロスした回数をｋとすると、時刻情報ｔ（ｋ）と、以下のクランク角度θ（ｋ）を記憶する。
【００１９】
【数１】
2020174542.tif 000003
【００２０】
さらに、時系列のクランク角速度計算部２１は、クランク角度の時系列データθ（ｋ）を時間で微分して、クランク角速度の時系列データ21Aを以下の式により計算する（S21）。
【００２１】
【数２】
2020174542.tif 000004
【００２２】
次に、時系列のトルク推定部２２は、クランク角度の時系列データとクランク角速度の時系列データに基づいて、図示トルクの時系列データを推定し、推定図示トルクの時系列データ22Aを出力する(S22)。この推定方法のうち、第１の推定方法では、クランク角速度の時系列データと慣性モーメントJとから以下の式により推定図示トルクを算出する。
【００２３】
【数３】
2020174542.tif 000005
【００２４】
第２の推定方法では、クランク角度の時系列データとクランク角速度の時系列データに基づいて、非線形カルマンフィルタ、特にアンセンテッドカルマンフィルタを用いて、推定図示トルクを算出する。第２の推定方法の非線形カルマンフィルタによる推定処理については、後で詳述する。
【００２５】
図４は、クランク角度の時系列データとクランク角速度の時系列データと推定図示トルク及び図示トルクの正解値の一例を示す図である。図５は、４気筒エンジンの概略構成を示す図である。図５に示されるとおり、４気筒エンジンは、４つの気筒（シリンダ）CL0-CL3と、各気筒内のピストンPS0-PS3とそれぞれ接続されたクランクシャフト５０とを有する。クランクシャフト５０にはロータRTとクランク角度センサCAとが設けられる。ロータRTの周囲の歯は省略されている。
【００２６】
４気筒エンジンは、空気と燃料の混合気を燃焼室へ取り込み燃焼し燃焼ガスを排気するまでの一連の動作（サイクル）が、ピストンの上昇と下降が２回ずつ、合わせて４回の行程で行われる。エンジンの1サイクルの間で、ピストンが気筒（シリンダ）内を２往復してクランクシャフトが２回転（７２０度）する。クランクシャフト５０が２回転（７２０度）する１サイクルを４等分した１８０度ずつずれて、各シリンダCL0-CL3は、吸入、圧縮、発火（燃焼）、排気の各工程を行う。
【００２７】
クランク角度センサCAの電圧出力から抽出したクランク角度の時系列データは、時間軸（横軸）の時間経過に伴い、クランク角度CAが０度から７２０度に増加する。一方、クランク角度を微分して求められるクランク角速度AVの時系列データは、各シリンダの発火（燃焼）工程に同期して、クランク角速度の増大と減少が４回発生する。例えば、図５の例で、気筒CL0の発火、気筒CL2の発火、気筒CL3の発火、気筒CL1の発火が１８０度ずつずれてこの順番に発生し、発火のたびに、クランク角速度が最大速度になる。
【００２８】
クランク角度の時系列データと、クランク角速度の時系列データは、各気筒の個体差に応じて、それぞれの気筒の発火工程で異なる時系列データとなる。その結果、時系列のトルク推定部２２が算出する推定図示トルクの時系列データは、各気筒の発火工程で、それぞれの異なる推定図示トルクの時系列データとなる。
【００２９】
図４に示された図示トルクは、クランク角度の時系列データとクランク角速度の時系列データから、前述の時系列のトルク推定部２２が算出した図示トルクの推定値（破線）と、予め実際のエンジンを動作させて行った実験で、各気筒内に設けた筒内圧センサの筒内圧力から算出した図示トルクの正解値（実線）である。本実施の形態では、予め行われるエンジンの実験で、各気筒の、図示トルクの推定値と図示トルクの正解値の変換マップまたは変換式を取得する。図５に示されるとおり、変換マップまたは変換式は、各気筒毎に取得され、さらに後述するとおり、エンジンの回転領域別にも取得される。
【００３０】
図６は、変換マップまたは変換式を取得するためのエンジンの実験を示す図である。実験用の実エンジンENGは、図５に示したエンジンである。すなわち、クランクシャフト５０にクランク角度センサCAが設けられ、エンジンを回転すると、クランク角度センサCAの電圧出力からクランク角度の時系列データCA0-CA3が抽出される。実験用のエンジンENGは、実際に車両に搭載されるエンジンと異なり、各気筒CL0-CL3に、気筒内の物理状態、例えば筒内圧力を検出する筒内圧センサCP0-CP3が設けられる。車両に搭載されるエンジンには、高級なエンジンを除いて、筒内圧センサは設けられない。コストアップであると共に筒内圧センサの経年劣化が問題になるからである。
【００３１】
実験用のエンジンを回転させて、４つの気筒の筒内圧センサCP0-CP3それぞれから各気筒内の圧力P0-P3の時系列データを取得する。これら筒内圧力P0-P3それぞれから、４つの気筒にそれぞれ発生する４つの図示トルクの正解値が算出される。この図示トルクの正解値が図４に実線で示されている。
【００３２】
気筒の発火（燃焼）工程での筒内圧力が高いほど、図示トルクが高くなる関係にあり、エンジンの気筒に対応して、筒内圧力から図示トルクを正確に算出することができる。
【００３３】
そして、４つの図示トルクの正解値から、それぞれの気筒の平均図示トルクの正解値R_TRK0-R_TRK3が算出される。平均図示トルクは、例えば、図示トルクの時系列データを発火工程の期間で積分し、発火工程の時間で除算することで算出される。
【００３４】
一方、エンジンENGに設けたクランク角度センサの出力から、クランク角度の時系列データCA0-CA3を抽出し、カルマンフィルタCA_FLTに入力する。クランク角度の時系列データは、１つのクランク角度センサの出力から抽出されるが、４気筒のクランク角度は、それぞれ１８０度ずつずれているので、１８０度のずれを考慮して、クランク角度センサの出力を４分割することで、４つのクランク角度の時系列データCA0-CA3が得られる。
【００３５】
カルマンフィルタCA_FLTは、後述するとおり、クランク角度の時系列データを入力しながら、エンジンの状態値である推定トルク（推定図示トルク）E_TRKを算出する。この推定トルクは、図４に破線で示される。推定トルクは、４気筒が順番に発火（燃焼）することで生成されるので、クランク角度７２０度の間に算出される推定図示トルクE_TRKを、４気筒による４回の発火工程別に分割することで、４気筒それぞれの推定図示トルクE_TRK0〜E_TRK3が抽出される。
【００３６】
クランク角度の時系列データ及びそれから算出されるクランク角速度の時系列データには、クランク角度抽出による測定分解能の限界、クランク角度センサの出力のサンプリング周期の限界、高回転領域におけるエンジン内の振動などの外乱等に起因して、ノイズが含まれる。特に、高回転では、エンジン内の振動やサンプリング周期の限界が顕著になり、エンジンの異なる回転数領域に応じてサンプリング周期の限界の度合いが異なる。４気筒の個体差によってもそれらの影響度が異なる。また、また、クランク角度の時系列データとクランク角速度の時系列データから推定される各気筒の推定図示トルクは、複数の気筒の個体差（インジェクタの個体差など）に基づき、異なるノイズが含まれる。
【００３７】
そこで、本実施の形態では、図６に示されるとおり、上記のエンジンの実験を予め実施し、４気筒それぞれの推定図示トルクの振幅E_TRK_A0〜E_TRK_A3や推定図示トルクの積分値などの推定図示トルクの関連値と、平均図示トルクの正解値R_TRK0〜R_TRK3のそれぞれの対応を有する変換マップまたは変換式MAP0〜MAP3を取得しておく。この変換マップまたは変換式は、４気筒別々に取得する。また、後述するとおり、変換マップまたは変換式は、気筒毎に、エンジンの回転領域別にそれぞれ取得しておく。
【００３８】
特に、本実施の形態では、推定図示トルクの関連値として、推定図示トルクの振幅を採用することで、クランク角度センサのセンサ値に含まれるノイズの影響を抑える。
【００３９】
図７は、推定図示トルクの振幅を示す図である。図７には、ある気筒の推定図示トルクE_TRK#（＃は気筒番号0-3）が示される。図４に示した破線の推定図示トルクの一つの発火サイクルが抜粋して図７に示されている。クランク角度センサでは、ロータの複数の歯の中に設けられる欠歯の前後でセンサ値にノイズが発生する。推定図示トルクの積分値を算出した場合、欠歯によるノイズを補間処理などで除去する必要があり、かかる処理を行っても発生したノイズを適切に除去できない場合がある。
【００４０】
それに対して、本実施の形態では、図２の気筒別トルク関連値（振幅）の抽出部２３が、推定図示トルクE_TRK#の最大値MAXと最小値MINの差分に基づき推定図示トルクの振幅E_TRK_A#(23A)を抽出する（S23）。推定図示トルクの振幅E_TRK_A#（23A）を抽出することで、推定図示トルクE_TRK#に含まれる欠歯により発生したノイズの影響を大幅に抑制することができる。推定図示トルク振幅E_TRK_A#は、４気筒それぞれについて抽出する。
【００４１】
次に、図２の気筒別トルク関連値（振幅）に基づく気筒別平均図示トルクの取得部２４は、気筒別の推定図示トルク振幅E_TRK_A#それぞれに対する、気筒別の平均図示トルクの正解値R_TRK#（S24A）を取得する。具体的には、取得部２４は、変換マップまたは変換マップから算出した変換式に基づいて、推定図示トルク振幅E_TRK_A#（推定図示トルクの関連値）に対応する平均図示トルクの正解値R_TRK#を取得する。前述のとおり、推定図示トルクの振幅E_TRK_A#を抽出することで、クランク角度センサの欠歯によるノイズを適切に抑制できる。従って、変換マップまたは変換式に基づいて取得する推定図示トルクの振幅E_TRK_A#に対応する平均図示トルクの正解値R_TRK#の精度を高くできる。
【００４２】
図８は、変換マップまたは変換式の例を示す図である。前述のとおり、本実施の形態では、予め行われるエンジンを回転させる実験で、推定図示トルクの関連値（振幅）E_TRK_A#と平均図示トルクの正解値R_TRK#の対応を有する変換マップまたは変換式MAP0-MAP3が、４気筒それぞれについて取得される。さらに、各気筒の変換マップまたは変換式は、エンジンの回転数領域別に取得される。具体的には、実験でエンジンの回転数領域を変更して、それぞれ変換マップまたは変換式MAP0-MAP3を取得する。
【００４３】
図８の横軸は、推定図示トルクの関連値、特に振幅に対応し、縦軸は、平均図示トルクの正解値に対応する。平均図示トルクの正解値は、例えば、筒内圧センサから算出した図示トルクの正解値を、各気筒の発火（燃焼）工程での積分値を算出し、積分値を発火（燃焼）工程の時間で除算することで算出される。
【００４４】
図８の変換マップまたは変換式の例に示されるとおり、推定図示トルクの振幅と平均図示トルクの正解値との間に線形性の関係があるので、この変換マップまたは変換式により、推定図示トルクの振幅に対して平均図示トルクの正解値を一義的に取得することができる。
【００４５】
図８の変換マップまたは変換式の例に示されるとおり、エンジンの回転数の領域１０００ｒｐｍ、１２００ｒｐｍ，１４００ｒｐｍ，１６００ｒｐｍ，１８００ｒｐｍ、２０００ｒｐｍ、２４００ｒｐｍそれぞれの変換マップまたは変換式を取得することで、エンジン回転数が高くなると推定図示トルクに発生するノイズが大きくなることによる、変換精度の低下を抑制することができる。エンジンの回転数の領域１０００ｒｐｍは、例えば、１０００ｒｐｍ以上１２００ｒｐｍ未満の領域である。他の回転数の領域も同様の領域である。
【００４６】
図８の例から分かるとおり、変換マップまたは変換式は、ほぼ線形一次関数である。変換マップは、推定図示トルクの関連値（振幅）の複数値と平均図示トルクの正解値の複数値との対応を有する。一方、変換式は、推定図示トルクの関連値（振幅）を変数Ｘとし、平均図示トルクの正解値を変数Ｙとする、線形一次関数の式である。
【００４７】
図９は、推定図示トルクの関連値の他の例である積分値を示す図である。図９には、図７と同様に、ある気筒の推定図示トルクE_TRK#（＃は気筒番号0-3）が示される。図４に示された破線の推定図示トルクの一つのサイクルを抜粋して図９に示される。推定図示トルクの積分値E_TRK_INT#は、推定図示トルクE_TRK#の発火（燃焼）工程中の積分値である。この積分値を発火工程の時間で除算することで、推定平均図示トルクを算出できる。推定図示トルクの積分値E_TRK_INT#と、積分値を時間で除算した推定平均図示トルクは、時間で除算したか否かだけの違いであり、変換マップ内では同じ意味を持つデータである。
【００４８】
本実施の形態では、図８の変換マップまたは変換式の横軸を、図７の推定図示トルクの振幅に代えて、図９の推定図示トルクの積分値を使用する。このような変換マップまたは変換式を使用しても、取得部２４は、平均図示トルクの正解値を高い精度で取得することができる。
【００４９】
図２に戻り、トルクフィードバック（FB）制御部３１は、気筒別の平均図示トルクの正解値24Aが、トルク目標値設定部３３が出力するトルク目標値33Aに一致するように、各気筒の燃料噴射量31Aを算出する（S31）。具体的には、トルクFB制御部３１は、トルク目標値33Aと平均図示トルクの正解値24Aの差分に基づいて、各気筒の燃料噴射量31Aを算出する。この燃料噴射量31Aは、フィードバック制御によるものである。ここで、トルク目標値設定部３３は、例えば、ドライバによるアクセルの操作量に基づくドライバ要求トルクや、クルーズコントロール等から出力される要求トルクに基づいてトルク目標値を設定する。
【００５０】
一方、トルクフィードフォワード（FF）制御部３４は、エンジンENGからの回転数等のエンジン内部状態値41Aと、トルク目標値設定部３３が出力するトルク目標値33Aに基づいて、全気筒の燃料噴射量34Aを算出する（S34）。具体的には、エンジンの回転数とトルク目標値の組み合わせに対応してフィードフォワードの燃料噴射量を有するマップを参照して、算出する。算出するフィードフォワードの燃料噴射量は、全気筒に共通の噴射量である。
【００５１】
次に、インジェクタ指示噴射量決定部３２は、フィードフォワードの燃料噴射量34Aと、フィードバックの気筒別の燃料噴射量31Aとを入力し、例えば、PID（Proportional Integral Differential）制御により、気筒別のインジェクタへの指示噴射量（噴射量指示値）31Aを決定する。そして、インジェクタ駆動制御部４０は、各気筒の噴射量指示値32Aに基づいて各気筒のインジェクタを駆動する駆動信号40Aを生成する（S40）。エンジン内の各気筒のインジェクタは、各気筒の駆動信号40Aにより駆動される（S40）。
【００５２】
［カルマンフィルタ］
本実施の形態では、図２の時系列のトルク推定部２２は、非線形カルマンフィルタとして、アンセンテッドカルマンフィルタを用いて時系列の図示トルクの推定値を算出する。以下、その非線形カルマンフィルタについて具体的に説明する。
【００５３】
時系列のトルク推定部２２は、クランク角度センサCAにより取得されたクランク角度の実測値θ（ｋ）と、後述する非線形カルマンフィルタによって計算されたクランク角度の事前推定値θ＾−（ｋ）との間の誤差を、以下の式（４）に従って計算する。
【００５４】
【数４】
2020174542.tif 000006
【００５５】
なお、ｋは更新回数の周期を表す。また、時系列のトルク推定部２２は、クランク角速度の計算値θ・（ｋ）と後述する非線形カルマンフィルタによって計算されたクランク角速度の事前推定値θ・＾−（ｋ）との間の誤差を、以下の式（５）に従って計算する。
【００５６】
【数５】
2020174542.tif 000007
【００５７】
本実施の形態の状態推定値ｘ（ｋ）は、以下の式（６）に示されるように、クランク角度θ（ｋ）、クランク角速度θ・（ｋ）、及び図示トルクτ（ｋ）を含む。
【００５８】
【数６】
2020174542.tif 000008
【００５９】
また、本実施の形態の非線形カルマンフィルタでは、上記式（６）に示される状態ベクトルが与えられたときに、以下の式（７）、（８）に従って、非線形関数ｆと非線形関数ｈとによってクランク角度の時系列データとクランク角速度の時系列データが計算される。
【００６０】
【数７】
2020174542.tif 000009
【００６１】
なお、ｖ（ｋ）はシステム雑音であり、ω（ｋ）は観測雑音であり、ｙ（ｋ）は観測値（出力値）である。非線形関数ｆと非線形関数ｈは、任意の係数関数を含む関数であり、本実施の形態では、以下の式（９−１）〜（９−４）に示す非線形方程式によって表現される。
【００６２】
【数８】
2020174542.tif 000010
【００６３】
上記の式（９−１）〜（９−４）に示す非線形の状態方程式では、式（６）に示した状態推定値ｘ（ｋ）の、現時刻の周期ｋのクランク角度の実測値θ（ｋ）、現時刻の周期ｋのクランク角速度の計算値θ・（ｋ）、及び現時刻の周期ｋのトルクの値τ（ｋ）が入力される。そして、次時刻の周期ｋ＋１のクランク角度θ（ｋ＋１）、次時刻の周期ｋ＋１のクランク角速度θ・（ｋ＋１）、及び次時刻の周期ｋ＋１のトルクτ（ｋ＋１）が予測される。
【００６４】
なお、ａｉｎｅｒ（θ）はエンジンにおけるピストンクランク機構の慣性に関する項であり、ａｇｒａ（θ）はピストンクランク機構の重力に関する項である。また、ａｖｅｌ（θ）はピストンクランク機構の角速度に関する項であり、ａｆｒｉ（θ）はピストンクランク機構の摩擦に関する項である。ａｉｎｅｒ（θ）、ａｇｒａ（θ）、ａｖｅｌ（θ）、及びａｆｒｉ（θ）は、係数関数である。
【００６５】
なお、４サイクル直列４気筒では、例えば，Ｎｏ．１気筒とＮｏ．４気筒とが同じピストン配置で同じ位相となり、また、Ｎｏ．２気筒とＮｏ．３気筒とが同じピストン配置で同じ位相となる。従って、慣性に関する項、重力に関する項、角速度に関する項、及び摩擦に関する項は、４サイクル直列４気筒を考慮し、以下の式（９−５）に示されるように、１８０度ずつ位相をずらして重ね合わせて表現される。
【００６６】
【数９】
2020174542.tif 000011
【００６７】
ａｉｎｅｒ＿ｓ（θ）は単気筒における慣性に関する項の係数関数であり、ａｇｒａ＿ｓ（θ）は単気筒における重力に関する項の係数関数であり、ａｖｅｌ＿ｓ（θ）は単気筒における角速度に関する項の係数関数であり、ａｆｒｉ＿ｓ（θ）は単気筒における摩擦に関する項の係数関数である。
【００６８】
なお、本実施の形態では、上記の係数関数の数式演算部分を、その係数関数の出力値とθ値の関係を表現するテーブルに置き換えて計算する。具体的には、慣性に関する項ａｉｎｅｒ（θ）からの出力値、重力に関する項ａｇｒａ（θ）からの出力値、角速度に関する項ａｖｅｌ（θ）からの出力値、及び摩擦に関する項ａｆｒｉ（θ）からの出力値と、クランク角度θとの関係を表すテーブルが予め設定される。
【００６９】
図１０は、本実施の形態における非線形カルマンフィルタの演算処理のフローチャートを示す図である。以下、フローチャートにしたがい、非線形カルマンフィルタの演算処理について説明する。
【００７０】
［状態推定値の初期値設定（S10）］
時系列のトルク推定部２２は、以下の式（１０）に示されるように、状態推定値ｘ^(ｋ)の初期値ｘ＾（０）を設定する。
【００７１】
【数１０】
2020174542.tif 000012
【００７２】
次に、時系列のトルク推定部２２は、以下の式（１１）に示されるように、事後誤差共分散行列Ｐ０の初期値Ｐ（０）を設定する。また、システム雑音の分散Ｑと観測雑音の分散Ｒとが設定される。
【００７３】
【数１１】
2020174542.tif 000013
【００７４】
［時間更新（S11）］
次に、そして、時系列のトルク推定部２２は、所定の周期毎に以下の処理を繰り返し実行する。ここで、例えば、ｋは１から２，３，．．．，Ｎまで更新処理を繰り返す（S11）。
【００７５】
［シグマポイントの計算（S12）］
まず、時系列のトルク推定部２２は、１周期前の状態推定値ｘ＾（ｋ−１）と共分散行列Ｐ（ｋ−１）とから、平均値と標準偏差とに対応するサンプル点として、２ｎ＋１個のシグマポイントσ０，σｉを以下の式（１２）（平均値に対応するサンプル点）、（１３）（１４）（標準偏差に対応するサンプル点）により計算する（S12）。
【００７６】
【数１２】
2020174542.tif 000014
【００７７】
ここで、（√Ｐ）ｉは、共分散行列Ｐの平方根行列のｉ番目の列を表す。また、各シグマポイントに対する重みｗ０，ｗｉが、以下の式（１５）、（１６）に従って計算される。
【００７８】
【数１３】
2020174542.tif 000015
【００７９】
なお、κはスケーリングパラメータである。式（１９）や式（２０）で計算される事前状態推定値ｘ＾-（ｋ）や事前誤差共分散行列Ｐ-（ｋ）は、それぞれ、１次モーメントと２次モーメントの推定値と称される。その１次モーメントと２次モーメントの推定値は、任意の非線形関数についてｆ（ｘ（ｋ），ｖ（ｋ））のテイラー級数展開の２次の項までの精度がある。３次以上のモーメントの推定値については誤差が加わるため、κは、その誤差の影響を調整するためのパラメータである。κは０以上となるように選択すると半正定値性が保証される。なお、通常、κは０に設定されることが多い。
【００８０】
［予測ステップ（S13）］
次に、時系列のトルク推定部２２は、以下の式（１８）に従って、非線形関数ｆによりシグマポイントσｉを更新する。
【００８１】
【数１４】
2020174542.tif 000016
【００８２】
次に、時系列のトルク推定部２２は、シグマポイントσｉ-（ｋ）と重みｗｉとにより、以下の式（１９）に従って、事前状態推定値ｘ＾-（ｋ）を計算する。
【００８３】
【数１５】
2020174542.tif 000017
【００８４】
次に、時系列のトルク推定部２２は、シグマポイントσｉ-（ｋ）と事前状態推定値ｘ＾-（ｋ）とから、以下の式（２０）に従って、事前誤差共分散行列Ｐ-（ｋ）を計算する。なお、以下の式（２０）のｂはシステムノイズの係数行列である。
【００８５】
【数１６】
2020174542.tif 000018
【００８６】
次に、時系列のトルク推定部２２は、事前状態推定値ｘ＾-（ｋ）と事前誤差共分散行列Ｐ-（ｋ）とから、以下の式（２１）、（２２）、及び（２３）に従って、２ｎ＋１個のシグマポイントを再計算する。
【００８７】
【数１７】
2020174542.tif 000019
【００８８】
次に、時系列のトルク推定部２２は、シグマポイントσｉ-（ｋ）と非線形関数ｆとから、以下の式（２４）に従って、出力のシグマポイントΨｉ-（ｋ）を計算する。
【００８９】
【数１８】
2020174542.tif 000020
【００９０】
次に、時系列のトルク推定部２２は、出力のシグマポイントΨｉ-（ｋ）から、以下の式（２５）に従って、事前出力推定値ｙ＾-（ｋ）を計算する。
【００９１】
【数１９】
2020174542.tif 000021
【００９２】
次に、時系列のトルク推定部２２は、出力のシグマポイントΨｉ-（ｋ）と事前出力推定値ｙ＾-（ｋ）とから、以下の式（２６）に従って、事前出力誤差共分散行列Ｐｙｙ-（ｋ）を計算する。
【００９３】
【数２０】
2020174542.tif 000022
【００９４】
次に、時系列のトルク推定部２２は、事前状態推定値ｘ＾-（ｋ）、事前誤差共分散行列Ｐ-（ｋ）、出力のシグマポイントΨｉ-（ｋ）、及び事前出力推定値ｙ＾-（ｋ）から、以下の式（２７）に従って、事前状態・出力誤差共分散行列Ｐｘｙ-（ｋ）を計算する。
【００９５】
【数２１】
2020174542.tif 000023
【００９６】
次に、時系列のトルク推定部２２は、事前状態・出力誤差共分散行列Ｐｘｙ-（ｋ）、事前出力誤差共分散行列Ｐｙｙ-（ｋ）、及び観測雑音の分散Ｒから、以下の式（２８）に従って、カルマンゲインｇ（ｋ）を計算する。
【００９７】
【数２２】
2020174542.tif 000024
【００９８】
［フィルタリングステップ（S14）］
次に、時系列のトルク推定部２２は、カルマンゲインｇ（ｋ）と、クランク角度に関する誤差Δθ（ｋ）と、クランク角速度に関する誤差Δθ・（ｋ）とを用いて、以下の式（２９）に従って、事前状態推定値ｘ＾-（ｋ）から状態推定値ｘ＾（ｋ）を推定する。
【００９９】
【数２３】
2020174542.tif 000025
【０１００】
次に、時系列のトルク推定部２２は、事前誤差共分散行列Ｐ-（ｋ）、事前状態・出力誤差共分散行列Ｐｘｙ-（ｋ）、及びカルマンゲインｇ（ｋ）を用いて、以下の式（３０）に従って、次回の更新時に利用する事後誤差共分散行列Ｐ（ｋ）を計算する。
【０１０１】
【数２４】
2020174542.tif 000026
【０１０２】
そして、時系列のトルク推定部２２は、状態推定値ｘ＾（ｋ）のうちの図示トルクτ（ｋ）の時系列データに基づいて、各気筒で発生するトルクを推定する。各気筒で発生する推定図示トルクの時系列データについては、図４の破線で示した推定値に示すとおりである。前述したとおり、時系列のトルク推定部２２は、式（１２）乃至式（３０）の計算を、所定の周期ｋ＝１，２，３，...,Ｎまで繰り返す。以上、非線形カルマンフィルタを用いた図示トルクの推定値の算出処理の説明である。
【０１０３】
以上のとおり、本実施の形態によれば、エンジントルク推定装置が、クランク角度センサにより検出されるクランク角度に基づいて、推定図示トルクの時系列データを算出し、気筒別の推定図示トルクの時系列データから気筒別の推定図示トルクの関連値をそれぞれ抽出し、推定図示トルクの関連値を、変換マップまたは変換式に基づいて、推定図示トルクの関連値に対応してエンジンの気筒内状態から算出した平均図示トルクの正解値に、気筒別に変換する。したがって、クランク角度センサにより検出されるクランク角度にノイズが含まれていても、平均図示トルクの正解値を高精度に算出することができる。
【符号の説明】
【０１０４】
CA：クランク角度センサ
ENG：エンジン
１０：エンジントルク推定装置及びエンジン制御装置
２０：エンジントルク推定装置
２２：時系列のトルク推定部
２３：気筒別トルク関連値（振幅）の抽出部
２４：気筒別トルク関連値（振幅）に基づく気筒別平均図示トルクの取得部
３０：エンジン制御装置
【図１】
2020174542.tif 000027
【図２】
2020174542.tif 000028
【図３】
2020174542.tif 000029
【図４】
2020174542.tif 000030
【図５】
2020174542.tif 000031
【図６】
2020174542.tif 000032
【図７】
2020174542.tif 000033
【図８】
2020174542.tif 000034
【図９】
2020174542.tif 000035
【図１０】
2020174542.tif 000036
【国際調査報告】
2020174542.tif 000037
2020174542.tif 000038
2020174542.tif 000039
2020174542.tif 000040