(57)【特許請求の範囲】
【請求項１】
内燃機関の運転状態を検出する運転状態検出手段と、
前記内燃機関の運転状態に基づいて目標吸入空気流量を算出する目標吸入空気流量算出手段と、
前記内燃機関の吸気通路に設けられたスロットルと、
前記スロットルのスロットル開度を制御することにより前記吸気通路の有効開口面積を変化させて、前記内燃機関への吸気量を可変制御するスロットル開度制御手段と、
前記スロットル開度を検出するスロットル開度検出手段と、
前記スロットルの前記内燃機関側の圧力をインテークマニホールド圧力として検出する圧力検出手段と、
前記スロットルの吸気温を検出する吸気温検出手段と、
前記内燃機関への吸入空気流量を検出する吸入空気流量検出手段と、
前記内燃機関の制御パラメータの算出に適用する大気圧を推定する大気圧推定手段と、を備え、
前記大気圧推定手段は、
推定された大気圧と前記吸入空気流量と前記インテークマニホールド圧力及び前記吸気温とから前記スロットル開度に対応した有効開口面積を算出する有効開口面積算出手段と、
予め設定された有効開口面積とスロットル開度との関係を用いて、前記スロットル開度と前記有効開口面積における学習用スロットル開度との差分を求め、前記差分にゲインを掛けて積分してスロットル開度学習値を算出するスロットル開度学習値算出手段と、
前記スロットル開度が、前記スロットル開度学習値の上限値および下限値の範囲内であるかどうかを判定するスロットル開度範囲判定手段と、
前記スロットル開度と前記スロットル開度学習値との誤差からスロットル開度誤差ばらつきを算出するスロットル開度誤差ばらつき算出手段と、
前記スロットル開度誤差ばらつきが所定の範囲を超え、前記スロットル開度が前記スロットル開度学習値の下限値を下回った場合には、前回大気圧推定値に所定値を加算し、前記スロットル開度が前記スロットル開度学習値の上限値を上回った場合には、前回大気圧推定値から所定値を減算して、大気圧推定値を更新する大気圧推定値更新手段と、
前記大気圧推定値更新手段により更新された大気圧推定値を用いて目標スロットル開度を算出する目標スロットル開度算出部と、により構成され、
前記目標スロットル開度に前記スロットル開度を制御することを特徴とする内燃機関の制御装置。
【請求項２】
前記スロットル開度誤差ばらつきは、
前記スロットル開度と前記スロットル開度学習値との誤差の分散又は標準偏差を用いるものであることを特徴とする請求項１に記載の内燃機関の制御装置。
【請求項３】
前記大気圧推定手段は、
エンジン始動前の前記インテークマニホールド圧力を前記大気圧推定値の初期値とすることを特徴とする請求項１または請求項２に記載の内燃機関の制御装置。
【請求項４】
前記インテークマニホールド圧力と前記大気圧推定値との圧力比を求める圧力比算出手段を備え、
前記圧力比算出手段により算出された圧力比が所定の範囲外であるときは、前記大気圧推定値の更新を停止させることを特徴とする請求項１から請求項３のいずれか１項に記載の内燃機関の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、内燃機関の制御パラメータの算出に適用する大気圧推定手段を有する内燃機関の制御装置に関するものである。
【背景技術】
【０００２】
近年、運転者や車輌側からの駆動力の要求値として、内燃機関（エンジン）の出力軸トルクを用い、これを指標にエンジンの発生トルクを制御する、いわゆる、「トルクベース制御」と呼ばれるエンジンの制御方法が普及している。このようなトルクベース制御では、運転者によるアクセルペダルの操作量に基づいてエンジンの目標トルクを決定し、この目標トルクを発生させることができる目標吸入空気流量がエンジンに吸入されるようにスロットル開度を制御し、実際の吸入空気流量に応じて燃料噴射量や点火時期を制御してエンジンの出力が目標トルクに制御され、運転者の要求する走行性能が実現されている。
【０００３】
このようなエンジンの目標トルクに対応した目標吸入空気流量を実現するために、エンジンのスロットルに連設されたアクチュエータを駆動してスロットル開度を制御するエンジンの制御装置において、目標吸入空気流量とスロットル前後の圧力比とスロットルの開口面積等とを基本とする絞り式流量計の流量算出式に適用してスロットルの目標開口面積を求め、このスロットルの目標開口面積を達成するスロットル開度となるようスロットルに連設したアクチュエータを制御する手段が提案されている。しかしながら、目標吸入空気流量を達成するスロットル開度を絞り式流量計の流量算出式に適用して算出するためには、大気圧、吸気管内圧（インテークマニホールド圧力、以下、インマニ圧と称する。）、吸気温といったスロットル前後の物理量が必要であり、これらを検出するためのセンサを取り付ける必要がある。ただし、これらのセンサを取り付けるとコスト高を招くため、これらのセンサの内、大気圧センサを用いずに大気圧を推定する方法が提案されている。
【０００４】
このような大気圧センサを用いずに大気圧を推定する方法として、例えば、特許文献１に示されるように、始動時と走行中のスロットル開度が所定値以上の時にインマニ圧を補正した値を大気圧推定値とする方法が知られている。この方法では、運転者の運転状態によってはスロットル開度が所定値以上とならない場合があり、始動時に推定された大気圧推定値が更新されないという問題があり、この解決方法として、例えば、特許文献２に開示されているように、スロットル開度から求めた有効開口面積と大気圧推定値から吸気量を求め、求めた吸気量と目標吸気量が一致するように大気圧推定値を調整する方法も提案されている。これにより、特許文献１に比べると推定できる運転領域を拡大することができる。
【０００５】
また、スロットル機差ばらつき等によりスロットル開度と有効開口面積の関係に誤差がある場合には、例えば、特許文献３に開示されているように、スロットル開度と有効開口面積の関係を学習させる方法を用いることによって補正されたスロットル開度で制御することができる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開昭５８−６５９５０号公報
【特許文献２】特許第５４６２３９０号公報
【特許文献３】特開２００８−５７３３９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献２に示された手法では、スロットル開度から求めた有効開口面積と大気圧推定値から吸気量を求め、求めた吸気量と目標吸気量が一致するように大気圧推定値を調整する方法を利用する場合において、スロットル機差ばらつき等によりスロットル開度と有効開口面積の関係に誤差があると、その誤差が大気圧推定値に反映され、実際の大気圧との誤差になってしまう。また、特許文献３に開示されているスロットル機差ばらつきに対するスロットル開度と有効開口面積の関係を学習させる方法を上記の大気圧推定値を調整する方法に適用することに関しては、具体的な方法は記載されておらず、正確な大気圧を推定することができないという課題があった。
【０００８】
この発明は、上記のような課題を解決するためになされたものであり、スロットル機差ばらつき等があっても、正確な大気圧の推定を行うことができる内燃機関の制御装置を提供することを目的としている。
【課題を解決するための手段】
【０００９】
上記課題を解決するために、この発明に係る内燃機関の制御装置は、内燃機関の運転状態を検出する運転状態検出手段と、前記内燃機関の運転状態に基づいて目標吸入空気流量を算出する目標吸入空気流量算出手段と、前記内燃機関の吸気通路に設けられたスロットルと、前記スロットルのスロットル開度を制御することにより前記吸気通路の有効開口面積を変化させて、前記内燃機関への吸気量を可変制御するスロットル開度制御手段と、前記スロットル開度を検出するスロットル開度検出手段と、前記スロットルの前記内燃機関側の圧力をインテークマニホールド圧力として検出する圧力検出手段と、前記スロットルの吸気温を検出する吸気温検出手段と、前記内燃機関への吸入空気流量を検出する吸入空気流量検出手段と、前記内燃機関の制御パラメータの算出に適用する大気圧を推定する大気圧推定手段と、を備え、前記大気圧推定手段は、推定された大気圧と前記吸入空気流量と前記インテークマニホールド圧力及び前記吸気温とから前記スロットル開度に対応した有効開口面積を算出する有効開口面積算出手段と、予め設定された有効開口面積とスロットル開度との関係を用いて、前記スロットル開度と前記有効開口面積における学習用スロットル開度との差分を求め、前記差分にゲインを掛けて積分してスロットル開度学習値を算出するスロットル開度学習値算出手段と、前記スロットル開度が、前記スロットル開度学習値の上限値および下限値の範囲内であるかどうかを判定するスロットル開度範囲判定手段と、前記スロットル開度と前記スロットル開度学習値との誤差からスロットル開度誤差ばらつきを算出するスロットル開度誤差ばらつき算出手段と、前記スロットル開度誤差ばらつきが所定の範囲を超え、前記スロットル開度が前記スロットル開度学習値の下限値を下回った場合には、前回大気圧推定値に所定値を加算し、前記スロットル開度が前記スロットル開度学習値の上限値を上回った場合には、前回大気圧推定値から所定値を減算して、大気圧推定値を更新する大気圧推定値更新手段と、前記大気圧推定値更新手段により更新された大気圧推定値を用いて目標スロットル開度を算出する目標スロットル開度算出部と、により構成され、前記目標スロットル開度に前記スロットル開度を制御することを特徴とするものである。
【発明の効果】
【００１０】
この発明の内燃機関の制御装置によれば、スロットル機差ばらつきに対するスロットル開度と有効開口面積との関係を学習しながら、スロットル開度の学習範囲及びスロットル開度と有効開口面積との関係の統計的ばらつきを判断基準として、大気圧推定値を更新することで、スロットル機差ばらつきを学習しながら広い運転領域で大気圧を精度良く推定することができるというすぐれた効果がある。
【図面の簡単な説明】
【００１１】
【図１】実施の形態１に係る内燃機関の制御装置を適用した車両の要部を示す概略構成図である。
【図２】実施の形態１におけるエンジン制御部の大気圧推定部を示すブロック図である。
【図３】実施の形態１における大気圧推定処理手順を示すフローチャートである。
【図４】実施の形態１におけるスロットル開度の誤差ばらつき演算処理を示すフローチャートである。
【図５】実施の形態１における有効開口面積とスロットル開度との関係における学習後の特性を示す図である。
【図６】実施の形態１における有効開口面積とスロットル開度との関係における学習範囲を示す図である。
【図７】実施の形態１におけるスロットル開度学習値算出処理部の処理を示すブロック図である。
【図８】実施の形態１におけるロングタイム学習値の格納処理部の処理を示すブロック図である。
【図９】実施の形態１におけるスロットル開度学習基本値の算出方法を示す概略説明図である。
【図１０】実施の形態１における有効開口面積に対するスロットル開度が取り得る関係を示す概略説明図である。
【図１１】実施の形態１におけるロングタイム学習値の格納処理方法を示す概略説明図である。
【図１２】実施の形態１における単調増加処理方法を示す概略説明図である。
【図１３】実施の形態２における大気圧推定処理手順を示すフローチャートである。
【図１４】実施の形態２における有効開口面積の誤差ばらつき演算処理を示すフローチャートである。
【図１５】実施の形態２におけるスロットル開度と有効開口面積との関係における学習後の特性を示す図である。
【図１６】実施の形態２におけるスロットル開度と有効開口面積との関係における学習範囲を示す図である。
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態に係る内燃機関の制御装置について、図１から図１６を参照して説明する。
【００１３】
実施の形態１．
図１は、実施の形態１に係る内燃機関の制御装置が適用される車両の要部を示す概略構成図であり、図２は、実施の形態１におけるエンジン制御部の大気圧推定部を示すブロック図である。図３は、実施の形態１における大気圧推定処理手順を示すフローチャートである。
【００１４】
まず、図１を用いて、実施の形態１に係る内燃機関の制御装置が適用される車両の要部の構成について説明する。エンジン１の吸気系の上流側に吸入空気量を測定するエアフローセンサ２（Ａｉｒ  Ｆｌｏｗ  Ｓｅｎｓｏｒ、以下、ＡＦＳと称する。）が設けられており、さらに、吸気温センサ３がＡＦＳ２に内蔵、又は別体のセンサとして取り付けられている。ＡＦＳ２の下流のエンジン１側には、吸入空気量を調整するために電気的に制御することができる電子制御スロットル４が設けられている。
【００１５】
また、電子制御スロットル４の開度を測定するために、スロットル開度センサ５が設けられている。更に、電子制御スロットル４下流のサージタンク６及びインテークマニホールド７内を含む空間（以下、インマニと称する。）のインマニ圧を測定する圧力センサ８が設けられている。ここで、ＡＦＳ２の代わりに、インマニ圧に基づいて吸入空気量を推定する方法（所謂、Ｓ／Ｄ（スピードデンシティ）方式）を用いてもよく、吸気温センサ３がインマニ内に設けられていてもよい。
【００１６】
インテークマニホールド７及び筒内を含む吸気バルブの近傍には、燃料を噴射するためのインジェクタ９が設けられ、吸気バルブ及び排気バルブには、バルブタイミングを可変するための吸気ＶＶＴ（Ｖａｒｉａｂｌｅ  Ｖａｌｖｅ  Ｔｉｍｉｎｇ）１０及び排気ＶＶＴ１１がそれぞれ設けられており、シリンダヘッドにはシリンダ内で火花を発生させる点火プラグを駆動するための点火コイル１２が設けられている。エキゾーストマニホールド１３には、図示されていないＯ２センサや触媒が設けられている。なお、吸気ＶＶＴ１０と排気ＶＶＴ１１については、片方のみ設けられている場合や、いずれも設けられていない場合もある。
【００１７】
上述のセンサや図示しない他のセンサからの検出信号やエンジンの始動スイッチ（Ｓ／Ｗ）であるイグニッションＳ／Ｗ（以下、ＩＧ−Ｓ／Ｗと称する。）等の情報も含め、エンジン１の運転状態を示す情報として、マイクロコンピュータやインターフェース回路からなる電子制御装置（Ｅｌｅｃｔｒｏｎｉｃ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ、以下、ＥＣＵと称する。）２０に入力される。
【００１８】
ＥＣＵ２０では、入力された各種データより目標トルクが算出され、算出された目標トルクを達成する目標吸入空気流量が算出され、目標吸入空気流量を達成するよう後述する方法で目標有効開口面積を算出して目標スロットル開度を求めている。なお、目標有効開口面積の算出に必要な大気圧には、後述する大気圧推定部での処理を実行して得られた大気圧推定値が用いられる。そして、目標スロットル開度を達成するように電子制御スロットル４の開度を制御する。また、同時にインジェクタ９、吸気ＶＶＴ１０、排気ＶＶＴ１１、点火コイル１２を含む各種アクチュエータへの指示値も算出される。
【００１９】
図２は、図１におけるエンジン制御部の大気圧推定部の構成を示すものである。ＥＣＵ２０には、運転状態検出手段として上記センサ群２，３，５，８やＩＧ−Ｓ／Ｗ１４、その他、図示されていない各種センサ１５からの信号が入力され、エンジンを制御する手段として上記アクチュエータ群４，９，１０，１１，１２及びその他、図示されていない各種アクチュエータ１６への指示値が出力される。
【００２０】
また、ＥＣＵ２０内では、エンジン制御に関する全ての処理を実施しているが、ここでは、まず、本実施の形態に関係するスロットル制御部と大気圧推定部の動作についての概略を説明する。
【００２１】
ＡＦＳ２、吸気温センサ３、圧力センサ８にて、それぞれ測定された吸入空気量Ｑａ（Ｓ／Ｄ方式の場合は、インマニ圧Ｐｂから推定される。）、吸気温Ｔａ（インマニ内に吸気温センサが設けられている場合には、大気温の代用として使用される。）、インマニ圧Ｐｂと、後述する大気圧推定値Ｐａから有効開口面積算出部２１にてスロットルの有効開口面積ＣＡｔが求められる。
【００２２】
次に、スロットル開度学習値算出部２２にて、先ほど算出された有効開口面積ＣＡｔと、スロットル開度センサ５にて測定されたスロットル開度ＴＰと、予め設定された有効開口面積とスロットル開度の関係マップとから、スロットル開度学習値が算出される。続いて、誤差ばらつき算出部２３では、有効開口面積ＣＡｔと、スロットル開度ＴＰと、スロットル開度学習値で補正された有効開口面積ＣＡｔ’とスロットル開度ＴＰの関係とを用いて、有効開口面積ＣＡｔに対するスロットル開度ＴＰと学習補正後のスロットル開度ＴＰ’、又はスロットル開度ＴＰに対する有効開口面積ＣＡｔと学習補正後の有効開口面積ＣＡｔ’のばらつき量を算出し、このばらつき量が所定の範囲内であるかどうかが、ばらつき範囲判定部２４にて判定される。また、有効開口面積ＣＡｔとスロットル開度ＴＰとの関係が所定の学習値範囲内であるかどうかが、学習上下限判定部２５にて判定される。
【００２３】
さらに、大気圧推定値更新部２６にて、有効開口面積ＣＡｔとスロットル開度ＴＰとの関係が所定の学習範囲外で、かつ上述のばらつき量が所定の範囲外であると判定されれば大気圧推定値Ｐａが更新される。なお、ＩＧ−Ｓ／Ｗオン後、エンジン１始動前においては、インテークマニホールド圧力Ｐｂが大気圧推定値Ｐａとして用いられる。目標スロットル開度演算部２７では、更新された大気圧推定値Ｐａとその他の情報を用いて目標スロットル開度ＴＰ＊が演算される。演算された目標スロットル開度ＴＰ＊にて電子制御スロットル４が制御される。
【００２４】
次に、ＥＣＵ２０内で行われる大気圧推定値更新部２６までの処理を、所定タイミング毎の演算処理（例えば、１０ｍｓ毎のメイン処理やＢＴＤＣ７５ｄｅｇＣＡ毎の割り込み処理）内で実施される図３に示す大気圧推定処理手順であるフローチャートを参照しながら詳細に説明する。
【００２５】
まず、フローチャートのステップＳ３０１において、ＩＧ−Ｓ／Ｗがオンで、かつエンスト中であるかどうかが判定され、ＹＥＳであれば、ステップＳ３０２に進み、大気圧推定値Ｐａにインマニ圧Ｐｂが代入されて大気圧推定値Ｐａが更新され、終了となる。ＮＯであればエンジンが運転中であると判定され、ステップＳ３０３に進む。
【００２６】
このように、ＩＧ−Ｓ／Ｗがオンで、かつエンスト中の場合に、大気圧推定値Ｐａを更新することで、自車の走行に関係なく大気圧が変化した場合（例えば、輸送による移動等）の大気圧変化にも対応することができる。
【００２７】
次に、ステップＳ３０３で、スロットルの有効開口面積ＣＡｔを演算する。本算出方法は、基本的に特許文献３に示された方法と同様であるが、ここで用いる流体力学の基礎式について説明する。所謂、絞り式流量計の体積流量算出式（圧縮性流体の場合）は次式で表される。
【数１】
0005840240.tif 000002
ここで、吸入空気流量をＱａ［Ｌ／ｓ］、大気の音速をαａ［ｍ／ｓ］、スロットルの有効開口面積をＣＡｔ［ｃｍ２］、インマニ圧をＰｂ［ｋ／Ｐａ］、大気圧をＰａ［ｋ／Ｐａ］、比熱比をκ［  ］とする。ここで、無次元流量σ［  ］を次式で定義すると、
【数２】
0005840240.tif 000003
となる。（１）式は、下記（３）式のように簡単に書き表すことができる。
【数３】
0005840240.tif 000004
なお、大気の音速αａ［ｍ／ｓ］は、気体定数をＲ［ｋＪ／（ｋｇ・Ｋ）］、大気温をＴａ［Ｋ］とすると下記の（４）式で表される。
【数４】
0005840240.tif 000005
ここで、吸入空気流量Ｑａと、大気の音速αａと、無次元流量σとが与えられた場合に、スロットルの有効開口面積ＣＡｔは、（３）式を変形した次式で算出することができる。
【数５】
0005840240.tif 000006
以上のように、吸入空気流量Ｑａと、大気の音速αａと、無次元流量σとが与えられれば、スロットルの有効開口面積ＣＡｔを求めることができる。
【００２８】
次に、ステップＳ３０４にて、スロットル開度学習値を演算する。スロットル開度学習値の演算方法については後述する。続いて、ステップＳ３０５では、スロットル開度の誤差ばらつきを演算する。スロットル開度の誤差ばらつきは、図４のスロットル開度の誤差ばらつき演算処理を示すフローチャートにより演算される。
【００２９】
図４のフローチャートについて説明する。まず、ステップＳ４０１で、ステップＳ３０３で算出した有効開口面積ＣＡｔと、予め設定された有効開口面積とスロットル開度の関係と、前回の処理タイミングでのスロットル開度学習値から、今回のスロットル開度学習値を算出し、有効開口面積ＣＡｔに対する学習後のスロットル開度ＴＰ１を算出する。例えば、図５に示すように、縦軸をスロットル開度ＴＰ、横軸を有効開口面積ＣＡｔとしたときに予め設定された有効開口面積とスロットル開度との関係を実線とすると、スロットル開度学習値で補正された有効開口面積ＣＡｔとスロットル開度ＴＰとの関係は破線で表される。ここで、ステップＳ３０３にて、算出された有効開口面積をＣＡｔ１とすると、学習後のスロットル開度ＴＰ１が求められる。
【００３０】
続いて、ステップＳ４０２にて、スロットル開度ＴＰと学習後スロットル開度ＴＰ１からスロットル開度の誤差が算出され、ステップＳ４０３では、スロットル開度ＴＰの誤差ばらつきを正規分布と仮定して分散ｓ２をスロットル開度の誤差ばらつきとして算出する。分散ｓ２は、Ｎ個のデータ（ｘ１，ｘ２，・・・，ｘｎ）からなる標本の場合、次式にて定義される。
【数６】
0005840240.tif 000007
このように、分散ｓ２とは、各データ（ｘ１，ｘ２，・・・，ｘｎ）とその平均値の誤差の２乗平均である。本実施の形態においては、平均値として過去のデータから求められる学習値を用い、各データと学習値の誤差の２乗を１次フィルタにより、なまし処理を施した値を分散に相当する値とする。具体的には、（７）及び（８）式で算出される。
【数７】
0005840240.tif 000008
【数８】
0005840240.tif 000009
ここで、Ｔｓはスロットル開度の誤差の２乗、Ｔｇはスロットル開度の誤差の分散、ＴＰ２はスロットル開度センサ５にて測定されたスロットル開度ＴＰ、Ｋｇはフィルタ係数で予め適合された値を用いる。上記１次フィルタ値以外でも、例えば、移動平均値を用いても良い。なお、ｎは、今回値を示し、ｎ−１は、前回値を示す。
【００３１】
したがって、スロットル開度ＴＰの誤差ばらつきを正規分布と仮定することで、スロットル開度ＴＰの誤差ばらつきに分散ｓ２を使用することができ、ばらつき幅の見積もりを容易に行うことができる。以上で、スロットル開度ＴＰの誤差ばらつき演算は終了される。なお、ここでは、分散を用いたが、分散の平方根である標準偏差を用いるようにしてもよい。
【００３２】
図３のフローチャートに説明に戻る。ステップＳ３０６にて、圧力比が所定値Ａより小さいかどうかが判定される。ここで、圧力比とは、スロットル前後の圧力比であり、具体的には、インマニ圧Ｐｂ／大気圧推定値Ｐａとなる。所定値Ａは１に近い値、例えば０．９５が設定される。これよりも圧力比が１に近い場合、無次元流量σの感度が高くなり、スロットル開度学習値の誤差が大きくなる可能性があるので、これを除外するためである。ＹＥＳであれば、ステップＳ３０７へ進み、ＮＯであれば、ステップＳ３１２へ進む。ステップＳ３１２では、前回の大気圧推定値Ｐａを大気圧推定値Ｐａとして処理は終了される。ここで、ＮＯの場合には、ステップＳ３１２に進む前に、従来の方法（例えば、特許文献１による方法等）も併用するようにしてもよい。つまり、スロットル開度ＴＰが所定値より大きい場合や、インマニ圧Ｐｂ＞大気圧推定値Ｐａの場合には、ステップＳ３０２に進み、それ以下の場合には、ステップＳ３１２に進むようにしてもよい。
【００３３】
ステップＳ３０７では、ステップＳ３０５で算出されたスロットル開度ＴＰの誤差ばらつきである分散ｓ２が、所定値Ｂより大きいかどうかが判定される。ＹＥＳであれば、ステップＳ３０８へ進み、ＮＯであれば、ステップＳ３１２へ進む。ステップＳ３１２では、前回の大気圧推定値Ｐａを大気圧推定値Ｐａとして処理は終了される。
【００３４】
次に、ステップＳ３０８にて、有効開口面積ＣＡｔ１に対するスロットル開度ＴＰ２がスロットル開度学習下限値よりも小さいかどうかが判定される。ＹＥＳであれば、ステップＳ３０９へ進み、ＮＯであればステップＳ３１０へ進む。図６に示すように、縦軸をスロットル開度ＴＰ、横軸を有効開口面積ＣＡｔとしたときに、予め設定された有効開口面積とスロットル開度との関係を実線とすると、スロットル開度学習下限値は破線、スロットル開度学習上限値は一点鎖線で表される。学習上下限値は、スロットル機差ばらつきを考慮して予め設定される。図６上で、ステップＳ３０３にて、算出された有効開口面積ＣＡｔ１とスロットル開度センサ５から得られたスロットル開度ＴＰ２（＝ＴＰ）の交点が、スロットル開度学習下限値ＴＰ３よりも下であればＹＥＳとなる。図６に示された交点は、スロットル開度学習下限値ＴＰ３よりも上であるのでＮｏとなる。
【００３５】
ステップＳ３０９では、前回の大気圧推定値Ｐａに所定値Ｐｔｇ＿ｕｐだけ加算され、今回の大気圧推定値Ｐａとして処理は終了される。交点が、スロットル開度学習下限値よりも小さければスロットル機差ばらつきによるずれではなく、実際の大気圧が大気圧推定値Ｐａよりも大きいと考えられるため、大気圧推定値Ｐａを加算側へ更新する。所定値Ｐｔｇ＿ｕｐは，急激な大気圧推定値Ｐａの変化をさけるため、１［ｋＰａ］以下の値とすることが望ましい。
【００３６】
ステップＳ３１０では、スロットル開度ＴＰがスロットル開度学習上限値ＴＰ４よりも大きいかどうかが判定される。ＹＥＳであれば、ステップＳ３１１へ進み、前回の大気圧推定値Ｐａに所定値Ｐｔｇ＿ｄｏｗｎだけ減算され、今回の大気圧推定値Ｐａとして処理は終了される。学習上限値は、スロットル機差ばらつきを考慮して予め設定される。スロットル開度学習値が学習上限値よりも大きければ、スロットル機差ばらつきによるずれではなく、実際の大気圧が大気圧推定値Ｐａよりも小さいと考えられるため、大気圧推定値Ｐａを減算側へ更新する。所定値Ｐｔｇ＿ｄｏｗｎは、急激な大気圧推定値Ｐａの変化をさけるため、１［ｋＰａ］以下の値とすることが望ましい。ＮＯであれば、大気圧推定値Ｐａは、正しいと判定されたことになるのでステップＳ３１２へ進み、大気圧推定値Ｐａを前回の大気圧推定値Ｐａとして処理は終了される。
以上の処理によって、大気圧推定値Ｐａは更新される。
【００３７】
続いて、ステップＳ３０４のスロットル開度学習値の演算（スロットル開度学習値算出部２２）について、詳細に説明する。基本的には、特許文献２に示された方法と同様である。前述した（１）〜（５）式に示す理論式を用いたスロットル開度学習値算出部２２の実現方法について説明する。図７及び図８は、スロットル開度学習値算出部２２の詳細を示した制御ブロック図である。
【００３８】
まず、図７の制御ブロック図を参照して、スロットル開度学習値算出部２２のスロットル制御及びスロットル開度学習の概要について説明する。ブロック７０１では、アクセル開度等の入力された各種データより目標トルクのようなエンジン出力指標が算出され、算出されたエンジン出力指標を達成するのに必要な目標シリンダ吸入空気量が算出され、目標シリンダ吸入空気量に基づいてスロットルを通過する目標吸入空気量（以下、目標Ｑａ＊と称する。）が算出される。続くブロック７０２では、目標有効開口面積（以下、目標ＣＡｔ＊と称する。）を（５）式を用いて、目標Ｑａ＊、大気の音速αａ、無次元流量σより、目標Ｑａ＊を達成するための目標ＣＡｔ＊として算出される。このように、絞り式流量計の流量算出式を基に目標ＣＡｔ＊が算出されているので、環境条件の変化やＥＧＲ導入等のエンジンの運転状態が変化した場合においても、良好に目標Ｑａ＊を達成する目標ＣＡｔ＊を算出することができる。
【００３９】
ところで、ブロック７０２の演算で必要となる大気の音速αａは、（４）式を用いてＥＣＵ２０内で演算するには、演算の負荷が大きくなるため、ブロック７０３のように、予め大気の音速の理論値が算出され、吸気温Ｔａを軸としたマップとして記憶しておき、ブロック７０２での演算前に、ブロック７０３において、吸気温Ｔａを用いて大気の音速αａは算出される。
【００４０】
さらに、ブロック７０２の演算で必要となる無次元流量σについても、（２）式を用いてＥＣＵ２０内で演算するには、演算の負荷が膨大となるため実用的ではない。そこで、ブロック７０４のように、ＥＣＵ２０内での演算負荷を抑えるために、予め無次元流量の理論値が算出され、インマニ圧Ｐｂと大気圧Ｐａの圧力比Ｐｂ／Ｐａを軸としたマップとして記憶しておき、ブロック７０２での演算前に、インマニ圧Ｐｂと大気圧Ｐａの圧力比Ｐｂ／Ｐａが算出され、ブロック７０４において、この圧力比Ｐｂ／Ｐａを用いて無次元流量σは算出される。
【００４１】
ところで、一般的に、圧力比Ｐｂ／Ｐａが所定値Ｅ（空気の場合、約０．５２８）以下である場合には、スロットルを通る空気の流量が飽和（所謂チョーク）することが知られている。このチョークが起きた場合には、（２）式で算出される無次元流量σは、一定値になることも知られている。そこで、インマニ圧Ｐｂと大気圧Ｐａの圧力比Ｐｂ／Ｐａが所定値Ｅ以下である場合には、ブロック７０４のマップの値を所定値Ｅに対応する一定値（空気の場合、約０．５７８７）とすることで、チョークが起きた場合においても対応することができる。
【００４２】
また、無次元流量σは、圧力比Ｐｂ／Ｐａがある程度大きくなると、吸入空気脈動によるインマニ圧Ｐｂの振動の影響が大きくなる場合がある。そこで、圧力比Ｐｂ／Ｐａが所定値Ｐｒ（例えば、約０．９５）以上の場合には、ブロック７０４のマップの値を所定値Ｐｒに対応する一定値（例えば、約０．２６）として扱うことにより、吸入空気脈動の影響を少なくし、スロットル制御性を確保することができる。なお、インマニ圧Ｐｂのピーク値の方が大気圧Ｐａより大きい場合には、インマニ内の圧力振動によりスロットルを逆流する空気が生じていると考えられるので、この場合には、ブロック７０４のマップの値を所定値Ｐｒに対応する一定値（例えば、約０．２６）として扱うようにしてもよい。
【００４３】
以上のようにして、ブロック７０２で算出された目標ＣＡｔ＊を用いて、ブロック７０５において目標スロットル開度ＴＰ＊が算出される。その際、測定された吸入空気流量Ｑａを用いて、（５）式により算出された有効開口面積ＣＡｔとスロットル開度ＴＰとの関係が予め求められ、有効開口面積ＣＡｔとスロットル開度ＴＰを、１対１で対応する有効開口面積ＣＡｔとスロットル開度ＴＰとの関係マップとして記憶させておき、このマップを用いることにより目標有効開口面積ＣＡｔ＊から目標スロットル開度ＴＰ＊が算出される。
【００４４】
以上のように、算出された目標スロットル開度ＴＰ＊により、スロットル開度ＴＰを制御した場合に、スロットルボディ及び各種センサ等のばらつきや各種推定誤差に起因する目標Ｑａと実Ｑａの誤差を減少するように、スロットル開度学習値ＴＰＬＲＮを算出する方法を以下で説明する。
【００４５】
スロットル開度学習値ＴＰＬＲＮを算出するために、ブロック７０６では、学習用に用いる有効開口面積ＣＡｔｉが、吸入空気流量Ｑａ、大気の音速αａ及び無次元流量σから算出される。続いて、ブロック７０７では、ブロック７０５と同じマップを用いて有効開口面積ＣＡｔｉにより学習用スロットル開度ＴＰｉが算出される。そして、ブロック７０８では、目標スロットル開度ＴＰ＊と学習用スロットル開度ＴＰｉとの偏差ΔＴＰ（＝ＴＰ＊−ＴＰｉ）がスロットル開度学習基本値として算出され、ブロック７０９では、ΔＴＰを積分すること等によりスロットル開度学習値ＴＰＬＲＮが算出されて格納される。ブロック７０９でのスロットル開度学習値ＴＰＬＲＮの格納処理の詳細については後述する。以上により、算出された目標スロットル開度ＴＰ＊とスロットル開度学習値ＴＰＬＲＮ
とがブロック７１０で加算されて、最終的に、電子制御スロットル４を駆動するための学習補正後の目標スロットル開度ＴＰＬＲＮ＊が算出される。
【００４６】
このように、スロットル開度学習値算出部２２では、スロットル開度学習基本値ΔＴＰ（目標スロットル開度ＴＰ＊と学習用スロットル開度ＴＰｉとの偏差）に基づいてスロットル開度学習値ＴＰＬＲＮが算出され、目標スロットル開度ＴＰ＊をスロットル開度学習値ＴＰＬＲＮで補正した学習補正後目標スロットル開度ＴＰＬＲＮ＊を用いて、スロットル開度ＴＰが制御されるようになっている。
【００４７】
以下、図９も参照しながら、スロットル開度制御の学習機能について、具体的に説明する。図９は、スロットル開度学習基本値ΔＴＰの算出方法を概略的に説明する図である。ここで、スロットル開度ＴＰと有効開口面積ＣＡｔとが１対１で対応するものと考えると、目標吸入空気量Ｑａ＊と吸入空気量Ｑａとの間に誤差が存在する場合には、目標吸入空気量Ｑａ＊から算出された目標有効開口面積ＣＡｔ＊と、吸入空気量Ｑａから算出された有効開口面積ＣＡｔｉとの間にも、誤差が存在することになる。
【００４８】
例えば、図９に示すように、スロットル開度ＴＰの制御に用いられる有効開口面積ＣＡｔとスロットル開度ＴＰとの関係マップ（以下、ＣＡｔ−ＴＰマップ、ブロック７０５及び７０７で用いられるもの、破線参照。）と、現在の制御対象であるエンジン１のスロットルボディのばらつきや、インマニ圧Ｐｂ、吸気温Ｔａなどを測定する各種センサのばらつきを含んで推定演算される実際の有効開口面積ＣＡｔとスロットル開度ＴＰとの関係（以下、実際のＣＡｔ−ＴＰ関係、という、実線参照。）との間に誤差がある場合を考える。
【００４９】
このとき、目標有効開口面積ＣＡｔ＊と目標スロットル開度ＴＰ＊との関係は、図９のＣＡｔ−ＴＰマップ上の点ａで示される。ところが、図９のように、ＣＡｔ−ＴＰマップ（破線）と実際のＣＡｔ−ＴＰ関係（実線）との間に誤差が存在すると、目標スロットル開度ＴＰ＊に対応した実際のＣＡｔ−ＴＰ関係（実線）上の点ｂの有効開口面積ＣＡｔｉは、目標有効開口面積ＣＡｔ＊と異なり、スロットル開度ＴＰを目標スロットル開度ＴＰ＊に制御したときに得られる吸入空気量Ｑａは、目標吸入空気量Ｑａ＊と一致しないことになる。
【００５０】
そこで、この誤差を補正する学習値を算出するために、目標スロットル開度ＴＰ＊に制御されたときに測定される吸入空気量Ｑａに基づいて、有効開口面積ＣＡｔｉが算出される。有効開口面積ＣＡｔｉと目標スロットル開度ＴＰ＊との関係は、図９における実際のＣＡｔ−ＴＰ関係（実線）の曲線上の点ｂで示される。
【００５１】
図９において、目標有効開口面積ＣＡｔ＊（目標吸入空気量Ｑａ＊）を達成するためには、スロットル開度ＴＰが、実際のＣＡｔ−ＴＰ関係（実線）の曲線上の点ｄに制御される必要があるので、点ａと点ｄとの間の差分ΔＴＰをスロットル開度学習基本値として算出する必要がある。このとき、図９に示すように、ＣＡｔ−ＴＰマップ（破線）と実際のＣＡｔ−ＴＰ関係（実線）とが、局所的には、ほぼ平行の関係にあるものと仮定し、目標スロットル開度ＴＰ＊に制御したときの吸入空気量Ｑａから算出された有効開口面積ＣＡｔｉに基づき、ＣＡｔ−ＴＰマップ（破線）を用いて学習用スロットル開度ＴＰｉが算出される。
【００５２】
ここで算出された学習用スロットル開度ＴＰｉと有効開口面積ＣＡｔｉとの関係は、図９のＣＡｔ−ＴＰマップ（破線）上の点ｃで示される。したがって、点ｂと点ｃとの間の差分で示されるスロットル開度学習基本値ΔＴＰ（＝ＴＰ＊−ＴＰｉ）が、点ａと点ｄとの間のスロットル開度学習基本値とほぼ等しいものと見なすことができる。このスロットル開度学習基本値ΔＴＰにゲインを掛けて積分されたものがスロットル開度学習値ＴＰＬＲＮとなり、目標スロットル開度ＴＰ＊にスロットル開度学習値ＴＰＬＲＮが加算されて算出された学習補正後の目標スロットル開度ＴＰＬＲＮ＊によりスロットル開度ＴＰを制御することで、目標吸入空気量Ｑａ＊と吸入空気量Ｑａとの誤差は減少する。
【００５３】
このようにすることで、目標吸入空気量Ｑａ＊を得るためのスロットル開度ＴＰを算出する際に、スロットルボディ及び各種センサなどのばらつきや、各種推定演算における誤差に対して、良好に目標吸入空気量Ｑａ＊が達成できるように有効開口面積ＣＡｔとスロットル開度ＴＰとの関係を学習補正することができる。このとき、ＣＡｔ−ＴＰマップ（破線）と実際のＣＡｔ−ＴＰ関係（実線）との誤差が、ほぼ一定（実質的に平行）の関係にあれば、スロットル開度学習値ＴＰＬＲＮを単独でフィードバック制御として用いた場合でも、全運転領域で良好に制御することができる。
【００５４】
ところで、例えば、図１０に示すように、実際のＣＡｔ−ＴＰ関係（実線参照）に対して、ＣＡｔ−ＴＰマップ（破線参照）がクロスしている場合や、ＣＡｔ−ＴＰマップ（１点鎖線参照）の誤差が、一定（平行）ではない場合には、スロットル開度学習値ＴＰＬＲＮを単独で用いると、過渡運転時に追従遅れやオーバーシュートなどの問題が発生する可能性がある。
【００５５】
そこで、このような場合に対処するためには、図８のように、スロットル開度学習基本値ΔＴＰが、フィードバック制御として用いるリアルタイム学習値ＴＰＲと、ＣＡｔ−ＴＰマップのＣＡｔ軸（図９、図１０の横軸）に対応する学習領域ごとに記憶するロングタイム学習値ＴＰＬとに分配して記憶され、それらに基づいてスロットル開度学習値ＴＰＬＲＮが算出されることが望ましい。これにより、ＣＡｔ−ＴＰマップ上の値とロングタイム学習値ＴＰＬとの和を、実際のＣＡｔ−ＴＰ関係に近づけることができる。また、リアルタイム学習値ＴＰＲを併用することにより、フィードバック制御により瞬時的な誤差を吸収することができる。以下、図８の機能ブロック図とともに、図１１及び図１２の説明図を参照しながら、スロットル開度学習値の算出及び格納方法について詳細に説明する。
【００５６】
図８において、ブロック８０１によりスロットル開度学習基本値ΔＴＰの分配処理が行われ、所定の割合でリアルタイム学習値ＴＰＲとロングタイム学習値ＴＰＬとに分配される。切換手段８０１ａでは、所定のリセット条件が成立した場合には、リアルタイム学習値を算出するブロック８０２に「０」が入力され、所定の更新禁止条件が成立した場合には、前回のリアルタイム学習値ＴＰＲ（ｎ−１）が入力され、リアルタイム学習値ＴＰＲのリセット条件や更新禁止条件が不成立の場合には、分配後のスロットル開度学習基本値ΔＴＰが入力される。したがって、ブロック８０２では、リアルタイム学習値ＴＰＲのリセット条件や更新禁止条件（後述する。）が不成立の場合には、分配後のスロットル開度学習基本値ΔＴＰに基づいて、最終的なリアルタイム学習値ＴＰＲが算出される。
【００５７】
切換手段８０１ｂでは、所定の更新禁止条件が成立した場合には、ブロック８０３に前回のロングタイム学習値ＴＰＬ（ｎ−１）が入力され、ロングタイム学習値ＴＰＬの更新禁止条件が不成立の場合には、分配後のスロットル開度学習基本値ΔＴＰが入力される。したがって、ブロック８０３では、ロングタイム学習値ＴＰＬの更新禁止条件が不成立の場合には、分配後のスロットル開度学習基本値ΔＴＰに基づいて、ＣＡｔ−ＴＰマップのＣＡｔ軸に応じた学習領域ごとに最終的なロングタイム学習値ＴＰＬが算出される。
【００５８】
なお、切換手段８０１ａ、８０１ｂにおける更新禁止条件の具体例として、インマニ圧Ｐｂと大気圧Ｐａとの圧力比Ｐｂ／Ｐａが所定値Ｆ以上を示す場合や、インマニ圧ピーク値の方が大気圧より大きい場合には、（２）式の演算に誤差が生じるため、リアルタイム学習値ＴＰＲ及びロングタイム学習値ＴＰＬの更新が禁止されるようにすることができる。
【００５９】
また、切換手段８０１ａにおけるリセット条件の具体例として、目標吸入空気量Ｑａ＊の時間変化率ｄＱａ＊／ｄｔが所定値Ｇ以上に達した後の経過時間が、所定値Ｈ以内を示す期間においては、リアルタイム学習値ＴＰＲがリセットされるようにしてもよい。この条件は、過渡運転を検出した場合に相当するが、ロングタイム学習値ＴＰＬの更新禁止条件としても使用することで、誤学習を抑制することができる。
【００６０】
ブロック８０４では、ＣＡｔ−ＴＰマップと、ロングタイム学習値ＴＰＬが加算されて補正された後の実際のＣＡｔ−ＴＰ関係とが、単調増加になるように、ロングタイム学習値ＴＰＬが制限される。これは、誤学習を抑制するための処理でもあり、スロットル開度ＴＰと吸入空気量Ｑａの関係を単調増加に保つための処理である。ブロック８０５では、単調増加処理手を介したロングタイム学習値ＴＰＬを学習領域毎に記憶する。ブロック８０６では、リアルタイム学習値ＴＰＲとロングタイム学習値ＴＰＬとを加算してスロットル開度学習値ＴＰＬＲＮを算出する。
【００６１】
なお、ブロック８０５では、ロングタイム学習値ＴＰＬはバックアップメモリに記憶される。すなわち、エンジン１の停止中またはＥＣＵ２０の電源オフ時においては、リアルタイム学習値ＴＰＲはリセットされるが、ロングタイム学習値ＴＰＬはバックアップメモリにより保持される。
【００６２】
次に、図１１及び図１２を参照しながら、図８に示したロングタイム学習値ＴＰＬの学習領域ごとの算出処理について、具体的に説明する。図１１及び図１２は、この発明の実施の形態１によるロングタイム学習値ＴＰＬの格納処理および単調増加処理をそれぞれ概略的に示す説明図である。図９において、スロットル開度学習基本値ΔＴＰは、点ｂと点ｃとの間の差分であるが、これは点ａと点ｄとの間の学習値としても適用される。ここで、スロットル開度学習基本値ΔＴＰを、ＣＡｔ−ＴＰマップのＣＡｔ軸に対して、たとえば１対１に対応する学習領域ごとに分配して記憶する場合を考える。このとき、図１１に示すように、目標有効開口面積ＣＡｔ＊の前後のＣＡｔ軸に対応する学習領域と、有効開口面積ＣＡｔｉの前後のＣＡｔ軸に対応する学習領域との少なくとも一方で、ロングタイム学習値ＴＰＬとして記憶することが可能である。
【００６３】
なお、各ＣＡｔ軸に対応する学習領域に記憶されるロングタイム学習値ＴＰＬは、前回のロングタイム学習値ＴＰＬ（ｎ−１）に対して、スロットル開度学習基本値ΔＴＰに基づく所定値が加算されるか、または、この所定値から目標有効開口面積ＣＡｔ＊及び有効開口面積ＣＡｔｉの前後のＣＡｔ軸までの比に応じた値が算出され、これが加算されることにより、算出することができる。また、目標有効開口面積ＣＡｔ＊と有効開口面積ＣＡｔｉとの双方でロングタイム学習値ＴＰＬを記憶すれば、ロングタイム学習値ＴＰＬの収束時間を短縮することができる。
【００６４】
このように、ロングタイム学習値ＴＰＬを算出する場合には、学習可能な条件は、更新禁止条件が不成立の場合（後述する。）のみなので、実際に学習が行われるのは、定常運転の常用域のみに限られる。また、一般的には、スロットル開度ＴＰと吸入空気量Ｑａとは単調増加の関係にあるので、有効開口面積ＣＡｔとスロットル開度ＴＰとの関係も単調増加である必要がある。
【００６５】
ところが、局所的に学習が行われた場合には、図１２の破線及び破線枠で示すように、ＣＡｔ−ＴＰマップ（実線参照。）の値とロングタイム学習値ＴＰＬとの和（破線参照。）が単調増加にならない場合が起こり得る。この場合には、例えば、目標吸入空気量Ｑａ＊が増加しているにも関わらず、学習補正後のスロットル目標開度ＴＰＬＲＮ＊が減少するので、エンジン１の出力低下やスロットル開度学習値ＴＰＬＲＮの誤学習といった問題が生じる。
【００６６】
そこで、ブロック８０４では、図１２の点線および点線枠で示すように、ＣＡｔ−ＴＰマップ（実線）の値とロングタイム学習値ＴＰＬとの和（点線参照。）が単調増加となるように、ロングタイム学習値ＴＰＬの学習領域毎にロングタイム学習値ＴＰＬを制限する処理を行う。これにより、スロットル開度学習値ＴＰＬＲＮの誤学習や誤作動を防止することができる。以上のようにすることで、スロットル開度学習算出部２３を実現することができ、スロットル開度ＴＰと有効開口面積ＣＡｔの関係を学習させることができる。
【００６７】
以上のように、実施の形態１に係る内燃機関の制御装置によれば、スロットル開度学習値を演算し、スロットル機差ばらつきに対するスロットル開度と有効開口面積の関係を学習しながら、スロットル開度学習値を考慮したスロットル開度とスロットル開度の偏差の統計的ばらつきを判断基準として、大気圧推定値を更新することで、スロットル機差ばらつきによらず大気圧の推定を精度良く推定することができるという効果がある。
【００６８】
実施の形態２．
図１３は、実施の形態２における大気圧推定処理手順を示すフローチャートである。内燃機関の制御装置が適用される車両の要部と、エンジン制御部の大気圧推定部は、それぞれ、実施の形態１の図１と図２に示すものと同様である。実施の形態１との違いは、実施の形態１が、有効開口面積ＣＡｔに対するスロットル開度ＴＰと学習補正後のスロットル開度ＴＰ’のばらつき量に基づいて大気圧を推定したのに対し、実施の形態２では、スロットル開度ＴＰに対する有効開口面積ＣＡｔと学習補正後の有効開口面積ＣＡｔ’のばらつき量に基づいて大気圧を推定するようにしたことである。
【００６９】
次に、ＥＣＵ２０内で行われる大気圧推定値更新部２６までの処理を、所定タイミング毎の演算処理（例えば、１０ｍｓ毎のメイン処理やＢＴＤＣ７５ｄｅｇＣＡ毎の割り込み処理）内で実施される図１３に示す大気圧推定処理手順であるフローチャートを参照しながら詳細に説明する。
【００７０】
図１３に示すフローチャートのステップＳ１３０１からＳ１３０４までの処理は、実施の形態１で説明した図３のステップＳ３０１からＳ３０４の処理と同様であるため省略する。また、ステップＳ１３０４のスロットル開度学習値の演算（スロットル開度学習値算出部２２）についても、実施の形態１で説明した内容と基本的には同じであるため省略する。
【００７１】
ステップＳ１３０５以降について説明する。ステップＳ１３０５では、有効開口面積ＣＡｔの誤差ばらつきを演算する。有効開口面積ＣＡｔの誤差ばらつきは、図１４に示すフローチャートにより演算される。図１４のフローチャートについて説明する。まず、ステップＳ１４０１で、スロットル開度センサ５から求められたスロットル開度ＴＰと、予め設定された有効開口面積とスロットル開度との関係と、前回の処理タイミングでの有効開口面積学習値から、今回の有効開口面積学習値を算出し、スロットル開度ＴＰに対する学習後の有効開口面積ＣＡｔ’を算出する。例えば、図１５に示すように、縦軸を有効開口面積、横軸をスロットル開度としたときに、予め設定された有効開口面積とスロットル開度との関係を実線とすると、スロットル開度学習値で補正された値は、破線のように表される。ここで、スロットル開度ＴＰをＴＰ５とすると、学習後の有効開口面積はＣＡｔ２のように求められる。なお、ステップＳ１３０３で算出された有効開口面積はＣＡｔ３とする。
【００７２】
つぎに、ステップＳ１４０２で有効開口面積ＣＡｔ３と学習後の有効開口面積ＣＡｔ２
から有効開口面積の誤差を算出し、ステップＳ１４０３では、有効開口面積ＣＡｔの誤差ばらつきを正規分布と仮定して、分散有効開口面積の誤差ばらつきとして算出する。本実施の形態２においては、平均値として過去のデータから求められる学習値を用い、各データと学習値の誤差の２乗を１次フィルタにより、なまし処理を施した値を分散に相当する値とする。具体的には、（９），（１０）式で算出する。
【数９】
0005840240.tif 000010
【数１０】
0005840240.tif 000011
ここで、ＣＡｔｓは有効開口面積の誤差の２乗、ＣＡｔｇは有効開口面積の誤差の分散、ＣＡｔ３はステップＳ１３０３で求めた有効開口面積ＣＡｔ、Ｋｇはフィルタ係数であり、予め適合された値を用いる。上記１次フィルタ値以外でも、例えば、移動平均値を用いてもよい。ｎは今回値を示し、ｎ−１は前回値を示す。
【００７３】
このように、有効開口面積ＣＡｔの誤差ばらつきを正規分布と仮定することで、有効開口面積ＣＡｔの誤差ばらつきに分散を使用することができ、ばらつき幅の見積もりを容易に行うことができる。以上で、有効開口面積ＣＡｔの誤差ばらつき演算が終了する。なお、ここでは分散を用いたが、分散の平方根である標準偏差を用いるようにしてもよい。
【００７４】
図１３のフローチャートに説明に戻る。ステップＳ１３０６で圧力比が所定値Ａより小さいかどうかを判定する。ＹＥＳであれば、ステップＳ１３０７へ進み、ＮＯであればステップＳ１３１２へ進む。ここで、所定値Ａの設定は、実施の形態１と同様である。ステップＳ１３１２では、大気圧推定値Ｐａを前回の大気圧推定値Ｐａとして処理終了となる。ここで、ＮＯの場合に、ステップＳ１３１２に進む前に、従来の方法（例えば、特許文献１の方法等）も併用するようにしてもよい。つまり、スロットル開度ＴＰが所定値より大きい場合や、インマニ圧Ｐｂ＞大気圧推定値Ｐａの場合には、ステップＳ１３０２に進み、それ以下の場合には、ステップＳ１３１２に進むようにしてもよい。
【００７５】
ステップＳ１３０７では、ステップＳ１３０５で算出した有効開口面積ＣＡｔの誤差ばらつきである分散が所定値Ｃより大きいかどうかを判定する。ＹＥＳであれば、ステップＳ１３０８へ進み、ＮＯであれば、ステップＳ１３１２へ進む。ステップＳ１３１２では、前回の大気圧推定値Ｐａを大気圧推定値Ｐａとして処理終了となる。
【００７６】
次に、ステップＳ１３０８にて、有効開口面積がスロットル開度学習上限値よりも大きいかどうかを判定する。ＹＥＳであれば、ステップＳ１３０９へ進み、ＮＯであれば、ステップＳ１３１０へ進む。図１６に示すように、縦軸を有効開口面積ＣＡｔ、横軸をスロットル開度ＴＰとしたときに、予め設定された有効開口面積とスロットル開度との関係を実線とすると、スロットル開度学習下限値は破線、スロットル開度学習上限値は一点鎖線で表される。スロットル開度学習上下限値は、スロットル機差ばらつきを考慮して予め設定される。図１６上で、ステップＳ１３０３にて算出された有効開口面積ＣＡｔ３とスロットル開度センサ５から求めたスロットル開度ＴＰ５（＝ＴＰ）の交点が、スロットル開度学習上限値ＣＡｔ５よりも上であればＹＥＳとなる。図１６に示した交点はスロットル開度学習上限値よりも上であるのでＹＥＳとなる。
【００７７】
ステップ１３０９では、前回の大気圧推定値Ｐａに所定値Ｐｔｇ＿ｕｐだけ加算し、今回の大気圧推定値Ｐａとして処理終了となる。交点がスロットル開度学習上限値よりも大きければスロットル機差ばらつきによるずれではなく、実際の大気圧が大気圧推定値Ｐａよりも大きいと考えられるため、大気圧推定値Ｐａを加算側へ更新する。所定値Ｐｔｇ＿ｕｐは、急激な大気圧推定値Ｐａの変化をさけるため、１［ｋＰａ］以下の値とすることが望ましい。
【００７８】
ステップＳ１３１０では、有効開口面積ＣＡｔがスロットル開度学習下限値ＣＡｔ４よりも小さいかどうかを判定する。ＹＥＳであれば、ステップＳ１３１１へ進み、前回の大気圧推定値Ｐａを所定値Ｐｔｇ＿ｄｏｗｎだけ減算し、今回の大気圧推定値Ｐａとして処理終了となる。スロットル開度学習値が学習下限値よりも小さければ、スロットル機差ばらつきによる変化ではなく、実際の大気圧が大気圧推定値Ｐａよりも小さいと考えられるため、大気圧推定値Ｐａを減算側へ更新する。所定値Ｐｔｇ＿ｄｏｗｎは急激な大気圧推定値Ｐａの変化をさけるため、１［ｋＰａ］以下の値とすることが望ましい。ＮＯであれば、ステップＳ１３１２へ進む。ステップＳ１３１２では、前回の大気圧推定値Ｐａを大気圧推定値Ｐａとして処理終了となる。
以上の処理によって大気圧推定値は更新される。
【００７９】
以上のように、実施の形態２に係る内燃機関の制御装置によれば、スロットル開度学習値を演算し、スロットル機差ばらつきに対するスロットル開度と有効開口面積の関係を学習しながら、スロットル開度学習値を考慮したスロットル開度とスロットル開度の偏差の統計的ばらつきを判断基準として、大気圧推定値を更新することで、スロットル機差ばらつきによらず大気圧の推定を精度良く推定することができるという効果がある。
【００８０】
なお、本発明は、その発明の範囲内において、各実施の形態を自由に組み合わせたり、各実施の形態を適宜、変形、省略したりすることが可能である。
【００８１】
また、図中、同一符号は、同一または相当部分を示す。
【符号の説明】
【００８２】
１  エンジン、２  エアフロ−センサ、３  吸気温センサ、４  電子制御スロットル、５  スロットル開度センサ、６  サージタンク、７  インテークマニホールド、８  圧力センサ、９  インジェクタ、１０  吸気ＶＶＴ、１１  排気ＶＶＴ、１２  点火コイル、１３  エキゾーストマニホールド、１４  ＩＧ−Ｓ／Ｗ、１５  各種センサ、１６  各種アクチュエータ、２０  ＥＣＵ、２１  有効開口面積算出部、２２  スロットル開度学習値算出部、２３  誤差ばらつき算出部、２４  ばらつき範囲判定部、２５  学習上下判定部、２６  大気圧推定値更新部、２７  目標スロットル開度算出部。
【図１】
0005840240.tif 000012
【図２】
0005840240.tif 000013
【図３】
0005840240.tif 000014
【図４】
0005840240.tif 000015
【図５】
0005840240.tif 000016
【図６】
0005840240.tif 000017
【図７】
0005840240.tif 000018
【図８】
0005840240.tif 000019
【図９】
0005840240.tif 000020
【図１０】
0005840240.tif 000021
【図１１】
0005840240.tif 000022
【図１２】
0005840240.tif 000023
【図１３】
0005840240.tif 000024
【図１４】
0005840240.tif 000025
【図１５】
0005840240.tif 000026
【図１６】
0005840240.tif 000027