(57)【要約】【課題】アイドル運転からアイドル運転外の運転への移行を、トルク段差および回転の落込みを確実に防止しながら、円滑に行える内燃機関の制御装置を提供する。【解決手段】目標回転数ＮＯＢＪを設定する目標回転数設定手段２と、アイドル運転時の目標トルクＰＭＲＥＧＯＲＧを設定するための制御値ＰＭＦＢＮを、内燃機関３の回転数ＮＥが目標回転数ＮＯＢＪになるようにフィードバック制御する制御手段２と、制御値に基づき、アイドル運転時の要求トルクの学習値ＰＭＲＥＦＮを算出する学習値算出手段２と、要求トルクＰＭＣＭＤを内燃機関の運転状態に応じて算出する要求トルク算出手段２と、要求トルクＰＭＣＭＤを学習値を加算して補正する要求トルク補正手段２と、補正された要求トルクＰＭＣＤＴＭＰＸに基づき、アイドル運転以外の運転時の目標トルクＰＭＣＭＤＲＥＧを設定する目標トルク設定手段２と、を備える。【選択図】  図９
2004176671.tif 000002
【特許請求の範囲】
【請求項１】
設定した目標トルクに基づいてトルク制御を行う内燃機関の制御装置であって、
当該内燃機関の回転数を含む運転状態を検出する運転状態検出手段と、
前記内燃機関のアイドル運転時の目標回転数を設定する目標回転数設定手段と、
前記内燃機関の前記アイドル運転時の前記目標トルクを設定するための制御値を、前記検出された回転数が前記設定された目標回転数になるようにフィードバック制御するフィードバック制御手段と、
当該フィードバック制御された制御値に基づき、前記アイドル運転時の要求トルクの学習値を算出する学習値算出手段と、
前記アイドル運転以外の運転時の要求トルクを、前記検出された運転状態に応じて算出する要求トルク算出手段と、
前記算出された要求トルクを前記学習値を加算することによって補正する要求トルク補正手段と、
当該補正された要求トルクに基づいて、前記アイドル運転以外の運転時の前記目標トルクを設定する目標トルク設定手段と、
を備えることを特徴とする内燃機関の制御装置。
【請求項２】
前記内燃機関によって駆動される補機の作動状態を検出する補機作動状態検出手段をさらに備え、
前記学習値算出手段は、前記補機が作動していないときに前記学習値を算出することを特徴とする、請求項１に記載の内燃機関の制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、設定した目標トルクに基づいてトルク制御を行う内燃機関の制御装置に関し、特に内燃機関がアイドル運転からアイドル運転外の運転へ移行する際のトルク制御に関する。
【０００２】
【従来の技術】
従来のこの種の内燃機関の制御装置として、例えば特許文献１に開示されたものが知られている。この内燃機関は、スロットル弁の開度をアクセルペダルの操作状態と独立して制御可能に構成されており、このスロットル弁の目標開度は次のようにして設定される。すなわち、アクセルペダルの操作量に応じて要求トルクを演算し、この要求トルクをスロットル弁の開口面積に換算する。また、補機負荷の作動状態でのアイドル要求空気量を演算し、このアイドル要求空気量をスロットル弁の開口面積に換算する。そして、換算した上記２つの開口面積を加算した値を目標総開口面積として演算し、この目標総開口面積に基づいてスロットル弁の目標開度を設定する。以上のような目標開度の設定により、アイドル時の補機負荷の作動状態からアクセルペダルを踏み込んでトルクを要求した場合の吸入空気量のつながりを滑らかにし、トルクショックや回転数低下を防止するようにしている。
【０００３】
また、上記のアイドル要求空気量の演算は、次のようにして行われる。すなわち、アイドル運転時の目標回転数を演算し、この目標回転数と例えばエンジン冷却水温から、目標回転数を維持するのに必要な回転維持空気量を演算する。また、実際のアイドル回転数と目標回転数との偏差に応じてフィードバック補正空気量を演算する。さらに、補機負荷分の補機負荷補正空気量を演算する。そして、これらの３つの空気量の合計がアイドル要求空気量として演算される。
【０００４】
【特許文献１】
特開２０００−１１０６３２号公報
【０００５】
【発明が解決しようとする課題】
上述したように、この従来の制御装置では、基本的に空気量を制御パラメータとしてエンジンの出力が制御される。すなわち、アイドル運転以外の運転時には、アクセルペダルの操作量に応じて演算された要求トルクがスロットル弁の開口面積に換算されるものの、アイドル運転時には、補機負荷が作動している状態で目標回転数を維持するための制御パラメータとして、回転維持空気量、フィードバック補正空気量および補機負荷補正空気量の合計であるアイドル要求空気量が用いられている。このように、アイドル運転時に目標回転数を維持するのに必要なエンジンの出力が、要求トルクに基づくことなく、空気量によってのみ評価される。このため、アイドル運転からアクセルペダルが踏み込まれ、通常の運転に移行した際に、その前後において、エンジンの出力トルクの連続性を確保できず、その結果、トルク段差や回転の落込みが発生するおそれがある。
【０００６】
本発明は、このような課題を解決するためになされたものであり、内燃機関のアイドル運転からアイドル運転外の運転への移行を、トルク段差および回転の落込みを確実に防止しながら、円滑に行うことができる内燃機関の制御装置を提供することを目的とする。
【０００７】
【課題を解決するための手段】
この目的を達成するため、本発明の請求項１は、設定した目標トルクに基づいてトルク制御を行う内燃機関の制御装置であって、内燃機関３の回転数ＮＥを含む運転状態（実施形態における（以下、この項において同じ）エンジン回転数ＮＥ、アクセル開度ＡＰ）を検出する運転状態検出手段（ＥＣＵ２、クランク角センサ１１、アクセル開度センサ１６）と、内燃機関３のアイドル運転時の目標回転数ＮＯＢＪを設定する目標回転数設定手段（ＥＣＵ２、図４）と、内燃機関３のアイドル運転時の目標トルクＰＭＲＥＧＯＲＧを設定するための制御値（フィードバック補正項ＰＭＦＢＮ）を、検出された回転数ＮＥが設定された目標回転数ＮＯＢＪになるようにフィードバック制御するフィードバック制御手段（ＥＣＵ２、図６）と、フィードバック制御された制御値に基づき、アイドル運転時の要求トルクの学習値（Ｉ項学習値ＰＭＲＥＦＮ）を算出する学習値算出手段（ＥＣＵ２、図７）と、アイドル運転以外の運転時の要求トルクＰＭＣＭＤを、検出された運転状態に応じて算出する要求トルク算出手段（ＥＣＵ２、図９のステップ１０１）と、算出された要求トルクＰＭＣＭＤを学習値を加算することによって補正する要求トルク補正手段（ＥＣＵ２、図９のステップ１０５、１０８）と、補正された要求トルク（補正後要求トルクＰＭＣＤＴＭＰＸ）に基づいて、アイドル運転以外の運転時の目標トルクＰＭＣＭＤＲＥＧを設定する目標トルク設定手段（ＥＣＵ２、図９のステップ１１２）と、を備えることを特徴とする。
【０００８】
この内燃機関の制御装置によれば、アイドル運転時においては、目標トルクを設定するための制御値を、内燃機関の回転数が目標回転数になるようにフィードバック制御するとともに、フィードバック制御された制御値に基づき、アイドル運転時の要求トルクの学習値を算出する。したがって、そのように算出された学習値は、内燃機関の回転数を目標回転数に維持するのに必要な、すなわちアイドル回転を維持するのに必要なアイドル運転時の正味の要求トルクを表す。また、内燃機関のアイドル運転以外の運転時には、そのときの運転状態に応じて要求トルクを算出するとともに、算出した要求トルクを上記学習値を加算することによって補正し、補正された要求トルクに基づいて、アイドル運転以外の運転時の目標トルクを設定する。以上のように、アイドル運転以外の運転時の要求トルクは、運転状態に応じて算出した要求トルクと、アイドル回転の維持に必要な正味の要求トルクを表す学習値との和として設定される。したがって、アイドル運転外の運転を、アイドル時の正味の要求トルクをベースとして開始することによって、要求トルクの連続性を確保でき、それにより、トルク段差および回転の落込みを確実に防止でき、アイドル運転からアイドル運転外の運転への移行を円滑に行うことができる。
【０００９】
また、本発明の請求項２は、請求項１に記載の内燃機関の制御装置において、内燃機関３によって駆動される補機（エアコン１９、パワステ２０）の作動状態を検出する補機作動状態検出手段（エアコンスイッチ１７、パワステスイッチ１８）をさらに備え、学習値算出手段は、補機が作動していないときに学習値ＰＭＲＥＦＮを算出すること（図７のステップ８３、８４）を特徴とする。
【００１０】
この構成によれば、内燃機関の補機が作動していないときにのみ、学習値が算出される。したがって、補機の回転負荷による影響を排除した状態でフィードバック制御された制御値に基づいて、アイドル回転の維持に必要な正味の要求トルクをより適正に表す学習値を算出でき、それにより、請求項１による前述した作用をより良く得ることができる。
【００１１】
【発明の実施の形態】
以下、図面を参照しながら、本発明の実施形態について説明する。図１は、本発明の実施形態による制御装置およびこれを適用した内燃機関の概略構成を示している。同図に示すように、この制御装置１はＥＣＵ２を備えており、このＥＣＵ２は、後述するように、内燃機関（以下「エンジン」という）３のトルク制御を実行する。
【００１２】
エンジン３は、例えば車両用の４気筒（１つのみ図示）ガソリンエンジンであり、各気筒のピストン３ａとシリンダヘッド３ｂとの間に、燃焼室３ｃが形成されている。ピストン３ａの上面の中央部には、凹部３ｄが形成されている。また、シリンダヘッド３ｂには、燃焼室３ｃに臨むように燃料噴射弁（以下「インジェクタ」という）４、点火プラグ５、吸気バルブ６および排気バルブ７が取り付けられている。すなわち、このエンジン３は、燃料を燃焼室３ｃ内に直接、噴射する筒内噴射式のものである。
【００１３】
インジェクタ４は、燃焼室３ｃの天壁中央部に配置されており、燃料パイプ４ａを介して高圧の燃料ポンプ４ｂに接続されている。燃料は、図示しない燃料タンクから供給され、この燃料ポンプ４ｂで高圧に昇圧された後、レギュレータ（図示せず）により調圧された状態で、インジェクタ４に供給される。そして、燃料がインジェクタ４からピストン３ａの上面の凹部３ｄに向かって噴射され、これに衝突することによって、燃料噴流が形成される。特に、後述する成層燃焼モードのときには、インジェクタ４から噴射された燃料の大部分が凹部３ｄに衝突することで、燃料噴流が形成される。
【００１４】
インジェクタ４はＥＣＵ２に接続されており、その開弁時間である燃料噴射時間Ｔｏｕｔ、および燃料噴射時期θｉｎｊ（開弁タイミングおよび閉弁タイミング）は、ＥＣＵ２からの駆動信号によって制御される。点火プラグ５も、ＥＣＵ２に接続されており、ＥＣＵ２から点火時期θｉｇに応じたタイミングで高電圧が加えられることで放電し、それにより燃焼室３ｃ内で混合気が燃焼される。また、エンジン３の吸気管９に設けられたスロットルバルブ９ａには、これを駆動する電動モータ２１が連結されており、ＥＣＵ２からの駆動信号により電動モータ２１を制御することによって、スロットルバルブ９ａの開度、すなわち吸入空気量が制御される。
【００１５】
エンジン３のクランクシャフト３ｅの付近には、クランク角センサ１１（運転状態検出手段）が設けられている。このクランク角センサ１１は、マグネットロータ１１ａとＭＲＥピックアップ１１ｂを組み合わせたものであり、クランクシャフト３ｅの回転に伴い、パルス信号であるＣＲＫ信号およびＴＤＣ信号を出力する。ＣＲＫ信号は、所定のクランク角（例えば３０゜）ごとに出力され、ＥＣＵ２は、このＣＲＫ信号に基づき、エンジン３の回転数（以下「エンジン回転数」という）ＮＥを求める。また、ＴＤＣ信号は、各気筒においてピストン３ａが吸入行程開始時のＴＤＣ（上死点）付近の所定クランク角度位置にあることを表す信号であり、４気筒タイプの本例では、クランク角１８０゜ごとに出力される。
【００１６】
また、エンジン３の本体には、エンジン水温センサ１２が取り付けられている。エンジン水温センサ１２は、エンジン３の本体内を循環する冷却水の温度であるエンジン水温ＴＷを検出し、その検出信号をＥＣＵ２に出力する。一方、エンジン３の吸気管９のスロットルバルブ９ａよりも下流側には、吸気管内絶対圧センサ１３が取り付けられている。吸気管内絶対圧センサ１３は、吸気管９内の絶対圧である吸気管内絶対圧ＰＢＡを検出し、その検出信号をＥＣＵ２に出力する。
【００１７】
また、排気管１０には、排気ガスを浄化する三元触媒２２が設けられており、その上流側にはＬＡＦセンサ１４が配置されている。ＬＡＦセンサ１４は、理論空燃比よりもリッチなリッチ領域から極リーン領域までの広範囲な空燃比Ａ／Ｆの領域において、排気ガス中の酸素濃度をリニアに検出し、その検出信号をＥＣＵ２に出力する。さらに、ＥＣＵ２には、アクセル開度センサ１５（運転状態検出手段）から、アクセルペダル（図示せず）の操作量（以下「アクセル開度」という）ＡＰを表す検出信号が、大気圧センサ１６から大気圧ＰＡを表す検出信号が、エアコンスイッチ１７（補機作動状態検出手段）およびパワステスイッチ１８（補機作動状態検出手段）から、エアコンディショナ（以下「エアコン」という）１９（補機）およびパワーステアリング（以下「パワステ」という）２０（補機）の各作動・停止状態を表す検出信号が、それぞれ出力される。
【００１８】
ＥＣＵ２は、本実施形態において、運転状態検出手段、目標回転数設定手段、フィードバック制御手段、学習値算出手段、要求トルク算出手段、要求トルク補正手段、および目標トルク設定手段を構成するものである。ＥＣＵ２は、ＣＰＵ、ＲＡＭ、ＲＯＭおよび入出力インターフェースなどから成るマイクロコンピュータ（いずれも図示せず）で構成されている。前述したセンサ１１〜１６などの検出信号は、それぞれ入力インターフェースでＡ／Ｄ変換や整形がなされた後、ＣＰＵに入力される。
【００１９】
ＣＰＵは、これらの入力信号に応じ、ＲＯＭに記憶された制御プログラムなどに従って、エンジン３の燃焼モードの切換制御処理を実行する。具体的には、後述するようにして算出した要求トルクＰＭＣＭＤとエンジン回転数ＮＥに応じて、エンジン３の運転状態を判別し、その判別結果に応じて、エンジン３の燃焼モードを成層燃焼モードおよび均一燃焼モードのいずれかに決定する。また、決定した燃焼モードに応じ、インジェクタ４の燃料噴射時間Ｔｏｕｔおよび燃料噴射時期θｉｎｊ、ならびに点火プラグ５の点火時期θｉｇなどを制御することによって、エンジン３の燃焼モードを成層燃焼モードまたは均一燃焼モードに切り換える。
【００２０】
成層燃焼モードは、アイドル運転などの極低負荷運転時に実行される。この成層燃焼モードでは、燃料をインジェクタ４から圧縮行程中に燃焼室３ｃ内に噴射し、混合気を点火プラグ５の付近に偏在させながら、理論空燃比よりも極リーンな空燃比Ａ／Ｆ（例えば２７〜６０）で、成層燃焼が行われる。一方、均一燃焼モードは、極低負荷運転以外の運転時に実行される。この均一燃焼モードでは、燃料を吸気行程中に燃焼室３ｃ内に噴射し、混合気を燃焼室３ｃ内に均一に分散させながら、成層燃焼モードよりもリッチな空燃比Ａ／Ｆ（例えば１２〜２７）で、均一燃焼が行われる。
【００２１】
また、ＣＰＵは、判別した運転状態に応じて、目標トルクの設定などを含むエンジン３のトルク制御処理を実行する。以下、このトルク制御処理について説明する。図２および図３は、アイドル運転時の目標トルク（以下「アイドル時目標トルク」という）ＰＭＲＥＧＯＲＧの算出処理を示す。この算出処理は、アイドル運転時のエンジン回転数ＮＥを目標回転数ＮＯＢＪに維持するアイドル回転数制御のために、アイドル時目標トルクＰＭＲＥＧＯＲＧを算出する処理である。
【００２２】
まず、そのステップ１（「Ｓ１」と図示。以下同じ）およびステップ２では、アイドル時目標トルクＰＭＲＥＧＯＲＧの水温補正項ＰＭＴＷおよび始動後補正項ＰＭＡＳＴを、エンジン水温ＴＷに応じて、それぞれのテーブル（図示せず）から検索し、決定する。始動後補正項ＰＭＡＳＴは、エンジン３の始動中にのみ設定され、水温補正項ＰＭＴＷは、エンジン３の暖機が完了した後には、値０に設定される。次に、ジェネレータ負荷補正項ＰＭＡＣＧを算出する（ステップ３）。このジェネレータ負荷補正項ＰＭＡＣＧは、図示しないジェネレータの作動時には所定値に、停止時には値０に設定される。次いで、エアコン負荷補正項ＰＭＨＡＣを算出する（ステップ４）。このエアコン負荷補正項ＰＭＨＡＣは、エアコンスイッチ１７の検出信号に応じ、エアコン１９の作動時には所定値に、停止時には値０に設定される。
【００２３】
次に、トルクショット補正項ＰＭＳＡを算出する（ステップ５）。このトルクショット補正項ＰＭＳＡは、エンジン回転数ＮＥのダウンシュートを防止するための一時的なトルク増加（トルクショット）を実行するときに算出される。また、スイッチ＃ＳＷＥＰＳの値が「１」であるか否かを判別する（ステップ６）。このスイッチ＃ＳＷＥＰＳは、パワステ２０が電気式のときに「１」に、油圧式のときに「０」にそれぞれセットされるものである。この答がＹＥＳで、パワステ２０が電気式のときには、パワステ２０がエンジン３の直接の負荷にならないことから、パワステ負荷補正項ＰＭＰＳを値０に設定する（ステップ７）。一方、ステップ６の答がＮＯで、パワステ２０が油圧式のときには、パワステ負荷補正項ＰＭＰＳを算出する（ステップ８）。このパワステ負荷補正項ＰＭＰＳは、パワステスイッチ１８の検出信号に応じ、パワステ２０の作動時には所定値に、停止時には値０に設定される。
【００２４】
ステップ７または８に続くステップ９では、ＡＴフラグＦ＿ＡＴが「１」であるか否かを判別する。この答がＹＥＳで、エンジン３に接続された変速機が自動変速機（ＡＴ）のときには、ＡＴインギヤフラグＦ＿ＰＭＡＴが「０」であるか否かを判別する（ステップ１０）。このＡＴインギヤフラグＦ＿ＰＭＡＴは、ＡＴのギヤが接続されているとき（インギヤ状態）に、「１」にセットされるものである。この答がＮＯで、ＡＴがインギヤ状態のときには、ＡＴ補正項ＰＭＡＴをエンジン水温ＴＷに応じて算出する（ステップ１１）。次いで、アイドル時目標トルクＰＭＲＥＧＯＲＧのオープン制御を実行するために、フィードバック許可フラグＦ＿ＰＭＦＢを「０」にセットする（ステップ１２）とともに、フィードバック補正項ＰＭＦＢＮを値０に設定した（ステップ１３）後、後述するステップ３１に進む。また、前記ステップ１０の答がＹＥＳで、ＡＴがインギヤ状態でないときには、前記ステップ５で算出したトルクショット補正項ＰＭＳＡが、値０であるか否かを判別する（ステップ１４）。この答がＮＯで、トルクショットの実行中のときには、オープン制御を実行するものとして、前記ステップ１１〜１３に進む。
【００２５】
上記ステップ１４の答がＹＥＳで、トルクショットの実行中でないときには、前記ステップ１１と同様、ＡＴ補正項ＰＭＡＴを算出した（ステップ１５）後、エンジン水温ＴＷがフィードバック制御実行用の判定値＃ＴＷＰＭＦＢ（例えば−１０℃）よりも高いか否かを判別する（ステップ１６）。この答がＮＯで、ＴＷ≦＃ＴＷＰＭＦＢのときには、エンジン３が十分に暖機されていないとして、フィードバック制御を禁止し、前記ステップ１２および１３と同様、フィードバック許可フラグＦ＿ＰＭＦＢを「０」にセットし（ステップ１７）、フィードバック補正項ＰＭＦＢＮを値０に設定した（ステップ１８）後、ステップ３１に進む。
【００２６】
一方、上記ステップ１６の答がＹＥＳで、ＴＷ＞＃ＴＷＰＭＦＢのときには、エンジン３の暖機が完了し、アイドル時目標トルクＰＭＲＥＧＯＲＧのフィードバック制御の実行条件が成立しているとして、フィードバック許可フラグＦ＿ＰＭＦＢを「１」にセットし（ステップ１９）、フィードバック補正項ＰＭＦＢＮを後述するように算出した（ステップ２０）後、ステップ３１に進む。
【００２７】
前記ステップ９の答がＮＯで、変速機が手動変速機（ＭＴ）のときには、前記ステップ１４と同様、トルクショット補正項ＰＭＳＡが値０であるか否かを判別する（ステップ２１）。この答がＮＯで、トルクショットの実行中のときには、ＡＴ補正項ＰＭＡＴを値０に設定する（ステップ２２）とともに、フィードバック許可フラグＦ＿ＰＭＦＢを「０」にセットし（ステップ２３）、フィードバック補正項ＰＭＦＢＮを値０に設定した（ステップ２４）後、ステップ３１に進む。
【００２８】
上記ステップ２１の答がＹＥＳで、トルクショットの実行中でないときには、ＡＴ補正項ＰＭＡＴを値０に設定する（ステップ２５）。次いで、前記ステップ１６〜２０と同様、エンジン水温ＴＷ＞判定値＃ＴＷＰＭＦＢの判別を行い（ステップ２６）、この答がＮＯのときには、フィードバック制御を禁止するものとして、フィードバック許可フラグＦ＿ＰＭＦＢを「０」にセットし（ステップ２７）、フィードバック補正項ＰＭＦＢＮを値０に設定した（ステップ２８）後、ステップ３１に進む。一方、上記ステップ２５でＴＷ＞＃ＴＷＰＭＦＢのときには、フィードバック制御の実行条件が成立しているとして、フィードバック許可フラグＦ＿ＰＭＦＢを「１」にセットし（ステップ２９）、フィードバック補正項ＰＭＦＢＮを算出した（ステップ３０）後、ステップ３１に進む。
【００２９】
このステップ３１では、アイドル時目標トルクＰＭＲＥＧＯＲＧを、次式（１）によって算出し、本プログラムを終了する。
ＰＭＲＥＧＯＲＧ
＝（ＰＭＡＳＴ＋ＰＭＴＷ＋ＰＭＡＣＧ＋ＰＭＨＡＣ＋ＰＳ＋ＰＭＡＳ    ＋ＰＭＡＴ＋ＰＭＦＢＮ）＊ＫＰＭＰＡ＋ＰＭＰＡ          ・・・（１）
ここで、ＫＰＭＰＡ、ＰＭＰＡはそれぞれ、大気圧ＰＡに応じて設定される大気圧補正係数および大気圧補正項である。この式（１）から明らかなように、アイドル時目標トルクＰＭＲＥＧＯＲＧは、前述した各種の補正項の和に大気圧補正係数ＫＰＭＰＡを乗算し、さらに大気圧補正項ＰＭＰＡを加算した値として算出される。
【００３０】
図４は、アイドル時目標トルクＰＭＲＥＧＯＲＧのフィードバック制御に用いられる目標回転数ＮＯＢＪの算出処理を示す。まず、そのステップ４１では、始動後フラグＦ＿ＡＳＴが「１」であるか否かを判別する。この答がＮＯで、エンジン３が始動中のときには、図示しないテーブルから、エンジン水温ＴＷに応じて始動時用の目標回転数＃ＭＰＮＯＢＪ１を検索し、目標回転数ＮＯＢＪとして設定する（ステップ４２）。
【００３１】
前記ステップ４１の答がＮＯで、エンジン３の始動が終了しているときには、燃焼モードモニタＳＴ＿ＥＭＯＤ０が「２」であるか否かを判別する（ステップ４３）。この燃焼モードモニタＳＴ＿ＥＭＯＤ０は、エンジン３の燃焼モードが成層燃焼モードに設定されているときに「２」にセットされるものである。この答がＮＯで、燃焼モードが均一燃焼モードのときには、図示しないテーブルから、エンジン水温ＴＷに応じて均一燃焼モード用の目標回転数＃ＭＰＮＯＢＪＳＴを検索し、目標回転数ＮＯＢＪとして設定する（ステップ４４）。
【００３２】
また、前記ステップ４３の答がＹＥＳで、燃焼モードが成層燃焼モードのときには、発進タフネスモードフラグＦ＿ＳＴＵＰが「０」であるか否かを判別する（ステップ４５）。この答がＹＥＳで、発進タフネスモードでないときには、図示しないテーブルから、エンジン水温ＴＷに応じて成層燃焼モード用の目標回転数＃ＭＰＮＯＢＪ０を検索し、目標回転数ＮＯＢＪとして設定する（ステップ４６）。一方、ステップ４５の答がＮＯで、発進タフネスモードのときには、目標回転数ＮＯＢＪを発進タフネスモード用の所定回転数＃ＮＯＢＪＣＬに設定し、本プログラムを終了する。
【００３３】
図５は、図３のステップ２０または３０で実行されるフィードバック補正項ＰＭＦＢＮの算出処理のサブルーチンを示す。まず、ステップ５１では、フィードバック補正項ＰＭＦＢＮをＰＩＤフィードバック制御するためのＰ項ゲインＰＭＦＢ＿ＫＰ、Ｉ項ゲインＰＭＦＢ＿ＫＩおよびＤ項ゲインＰＭＦＢ＿ＫＤを算出する。この算出は、エンジン３の燃焼モード、エンジン回転数ＮＥの変化状態や始動後の経過時間などに応じて、行われる。
【００３４】
次いで、ステップ５２〜５８において、Ｉ項の前回値（以下「Ｉ項前回値」という）ＰＭＮ＿ＰＲＥを設定する。まず、ステップ５２では、触媒暖機フラグの前回値Ｆ＿ＦＩＲＥ１またはＡＴインギヤフラグの前回値Ｆ＿ＰＭＡＴ１が、「１」であるか否かを判別する（ステップ５２）。この触媒暖機フラグＦ＿ＦＩＲＥは、エンジン３の始動後に吸入空気量や点火時期θｉｇの制御によって三元触媒１７の暖機を促進する暖機促進モードを実行するときに、「１」にセットされるものである。このステップ５２の答がＹＥＳのとき、すなわち、今回のループが、暖機促進モードまたはＡＴのインギヤ状態であることでオープン制御が実行されていた状態から、フィードバック制御に移行した直後に相当するときには、Ｉ項前回値ＰＭＮ＿ＰＲＥを所定値＃ＰＭＲＥＦＭに設定する（ステップ５３）。
【００３５】
前記ステップ５２の答がＮＯのときには、アイドルフラグの前回値Ｆ＿ＩＤＬＥ１が「０」であるか否かを判別する（ステップ５４）。この答がＹＥＳで、今回のループが、アイドル運転以外の運転状態からアイドル運転に移行した直後に相当するときには、Ｉ項前回値ＰＭＮ＿ＰＲＥを後述するＩ項学習値ＰＭＲＥＦＮＭに設定する（ステップ５５）。前記ステップ５２の答がＮＯのときには、フューエルカットフラグＦ＿ＦＣまたはフューエルカットディレイフラグＦ＿ＦＣＤＬＹが「１」であるか否かを判別する（ステップ５６）。この答がＹＥＳで、フューエルカット中またはフューエルカットからの復帰中であるときには、前記ステップ５３と同様、Ｉ項前回値ＰＭＮ＿ＰＲＥを所定値＃ＰＭＲＥＦＭに設定する（ステップ５７）。前記ステップ５６の答がＮＯで、すでにフィードバック制御の実行中であるときには、Ｉ項前回値ＰＭＮ＿ＰＲＥを、Ｉ項の前回算出値ＰＭＮ１に設定する（ステップ５８）。
【００３６】
前記ステップ５３、５５、５７または５８に続くステップ５９では、前記ステップ５６と同様、Ｆ＿ＦＣ＝１またはＦ＿ＦＣＤＬＹ＝１であるか否かを判別し、その答がＹＥＳで、フューエルカット中またはその復帰中であるときには、フィードバック制御を実行しないものとし、フィードバック補正項ＰＭＦＢＮを値０に設定する（ステップ６０）。
【００３７】
一方、ステップ５９の答がＮＯのときには、ステップ６１〜７３において、ＰＩＤフィードバック制御によりフィードバック補正項ＰＭＦＢＮを算出する。まず、ステップ６１では、前記ステップ５１で算出したＰ項ゲインＰＭＦＢ＿ＫＰを用い、次式（２）によって、Ｐ項ＰＭＦＢ＿Ｐを算出する。
ＰＭＦＢ＿Ｐ＝  ＰＭＦＢ＿ＫＰ＊（−ＤＮＯＢＪ）        ・・・（２）
ここで、ＤＮＯＢＪは、検出された実際のエンジン回転数ＮＥと図４の算出処理で算出された目標回転数ＮＯＢＪとの回転偏差（＝ＮＥ−ＮＯＢＪ）である。
【００３８】
次に、Ｉ項ゲインＰＭＦＢ＿ＫＩおよび前記ステップ５３などで設定したＩ項前回値ＰＭＮ＿ＰＲＥを用い、次式（３）によって、Ｉ項ＰＭＦＢ＿Ｉを算出する。
ＰＭＦＢ＿Ｉ＝  ＰＭＮ＿ＰＲＥ＋＊ＰＭＦＢ＿ＫＰ（−ＤＮＯＢＪ）・・・（３）
【００３９】
次いで、ステップ６３〜６６において、算出したＩ項ＰＭＦＢ＿Ｉのリミット処理を実行する。すなわち、Ｉ項ＰＭＦＢ＿Ｉが所定の下限値＃ＰＭＣＭＤＬＭＬ以下であるか否を判別し（ステップ６３）、その答がＹＥＳで、ＰＭＦＢ＿Ｉ≦＃ＰＭＣＭＤＬＭＬのときには、Ｉ項ＰＭＦＢ＿Ｉを下限値＃ＰＭＣＭＤＬＭＬに設定し（ステップ６４）、ステップ６７に進む。ステップ６３の答がＮＯのときには、Ｉ項ＰＭＦＢ＿Ｉが所定の上限値＃ＰＭＣＭＤＬＭＨ以上であるか否を判別し（ステップ６５）、その答がＹＥＳで、ＰＭＦＢ＿Ｉ≧＃ＰＭＣＭＤＬＭＨのときには、Ｉ項ＰＭＦＢ＿Ｉを上限値＃ＰＭＣＭＤＬＭＨに設定した（ステップ６６）後、ＮＯのときにはそのまま、ステップ６７に進む。このステップ６７では、上述したようにして算出またはリミット処理されたＩ項ＰＭＦＢ＿Ｉを、Ｉ項の前回算出値ＰＭＮ１として設定する。
【００４０】
次に、Ｄ項ゲインＰＭＦＢ＿ＫＤを用い、次式（４）によって、Ｄ項ＰＭＦＢ＿Ｄを算出する。
ＰＭＦＢ＿Ｄ＝  ＰＭＦＢ＿ＫＤ＊（−ＤＮＯＢＪ＋ＤＮＥＬＡＳＴ）・・・（４）
ここで、ＤＮＥＬＡＳＴは、回転偏差ＤＮＯＢＪの前回値である。
【００４１】
次いで、以上のようにして算出したＰ項ゲインＰＭＦＢ＿ＫＰ、Ｉ項ゲインＰＭＦＢ＿ＫＩおよびＤ項ゲインＰＭＦＢ＿ＫＤを互いに加算することによって、フィードバック補正項ＰＭＦＢＮを算出する（ステップ６９）。
【００４２】
次に、ステップ７０〜７３において、算出したフィードバック補正項ＰＭＦＢＮのリミット処理を実行する。すなわち、フィードバック補正項ＰＭＦＢＮが前記下限値＃ＰＭＣＭＤＬＭＬ以下であるか否を判別し（ステップ７０）、その答がＹＥＳのときには、フィードバック補正項ＰＭＦＢＮを下限値＃ＰＭＣＭＤＬＭＬに設定し（ステップ７１）、ステップ７４に進む。ステップ７０の答がＮＯのときには、フィードバック補正項ＰＭＦＢＮが前記上限値＃ＰＭＣＭＤＬＭＨ以上であるか否を判別し（ステップ７２）、その答がＹＥＳのときには、フィードバック補正項ＰＭＦＢＮを上限値＃ＰＭＣＭＤＬＭＨに設定した（ステップ７３）後、ＮＯのときにはそのまま、ステップ７４に進む。
【００４３】
このステップ７４では、Ｉ項学習値ＰＭＲＥＦＮの算出処理を実行する。次に、今回の回転偏差ＤＮＯＢＪをその前回値ＤＮＥＬＡＳＴとして設定し（ステップ７５）、本プログラムを終了する。
【００４４】
図７は、上記ステップ７４で実行されるＩ項学習値ＰＭＲＥＦＮの算出処理のサブルーチンを示す。本処理では、ステップ８１〜８７において、Ｉ項学習値ＰＭＲＥＦＮの学習条件が成立しているか否かが判定され、この学習条件の成立時に、Ｉ項学習値ＰＭＲＥＦＮが算出される。
【００４５】
具体的には、フィードバック許可フラグＦ＿ＰＭＦＢが「１」であるか否か（ステップ８１）、始動後フラグＦ＿ＡＳＴが「１」であるか否か（ステップ８２）、エアコン負荷補正項ＰＭＨＡＣ、パワステ負荷補正項ＰＭＰＳおよび水温補正項ＰＭＴＷが、それぞれ値０であるか否か（ステップ８３〜８５）、ＬＡＦセンサ１４の検出結果に応じた空燃比フィードバックの実行中であることを表す空燃比フィードバックフラグＦ＿ＬＡＦＦＢが「１」であるか否か（ステップ８６）、およびトルクショット補正項ＰＭＳＡが値０であるか否か（ステップ８７）をそれぞれ判別する。そして、これらの答のいずれかがＮＯのときには、Ｉ項学習値ＰＭＲＥＦＮの学習条件が成立していないとして、そのまま本プログラムを終了する。
【００４６】
一方、前記ステップ８１〜８７の答がいずれもＹＥＳのとき、すなわち、エンジン３の始動後であって、アイドル時目標トルクＰＭＲＥＧＯＲＧおよび空燃比のフィードバック制御の実行中で、エンジン３の暖機が完了しているとともに、エアコン１７およびパワステ２０が停止状態にあり、かつトルクショットの実行中でないときに、Ｉ項学習値ＰＭＲＥＦＮの学習条件が成立しているとして、その算出処理を実行する（ステップ８８）。
【００４７】
図８は、このステップ８８の算出処理のサブルーチンを示す。そのステップ９１では、なまし係数ＰＭＣＸＲＥＦを所定値＃ＣＸＲＥＦＮ０Ａ（０〜１）に設定する。次いで、Ｉ項ＰＭＦＢ＿Ｉおよびなまし係数ＰＭＣＸＲＥＦを用い、次式（５）によって、Ｉ項学習値ＰＭＲＥＦＮを算出する（ステップ９２）。
ＰＭＲＥＦＮ＝  ＰＭＣＸＲＥＦ＊ＰＭＦＢ＿Ｉ＋（１−ＰＭＣＸＲＥＦ）＊ＰＭＲＥＦＮ    ・・・（５）
ここで、式（５）の右辺のＰＭＲＥＦＮは、Ｉ項学習値ＰＭＲＥＦＮの前回値である。
【００４８】
図７に戻り、前記ステップ８８に続くステップ８９では、算出したＩ項学習値ＰＭＲＥＦＮが所定の上限値と下限値との間になるようリミット処理を実行し、本プログラムを終了する。
【００４９】
図９は、エンジン３のアイドル運転から走行運転への移行時における目標トルクＰＭＣＭＤＲＥＧを算出する処理を示す。まず、ステップ１０１では、要求トルクＰＭＣＭＤを算出する。この要求トルクＰＭＣＭＤは、運転者から要求されている、エンジン３が出力すべきトルクを表すものであり、エンジン回転数ＮＥおよびアクセル開度ＡＰに応じ、図示しないマップを検索することによって算出される。
【００５０】
次いで、移行時補正フラグＦ＿ＩＤＯＰＭが「１」であるか否かを判別し（ステップ１０２）、その答がＮＯのときには、今回のアイドルフラグＦ＿ＩＤＬＥが「０」で、かつその前回値Ｆ＿ＩＤＬＥ１が「１」であるか否かを判別する（ステップ１０３）。この答がＹＥＳで、今回のループが、アイドル運転から走行運転に移行した直後に相当するときには、要求トルクＰＭＣＤＴＭＰＸの移行時補正を実行するために、移行時補正フラグＦ＿ＩＤＯＰＭを「１」にセットする（ステップ１０４）。また、次式（６）により、ステップ１０１で算出した要求トルクＰＭＣＭＤに、図７の算出処理で算出したＩ項学習値ＰＭＲＥＦＮを加算することによって補正し、補正後要求トルクＰＭＣＤＴＭＰＸとして設定する（ステップ１０５）。
ＰＭＣＤＴＭＰＸ＝  ＰＭＣＭＤ＋ＰＸＰＭＲＥＦＮ        ・・・（６）
【００５１】
また、前記ステップ１０４の実行により移行時補正フラグＦ＿ＩＤＯＰＭが「１」にセットされた後には、前記ステップ１０２の答がＹＥＳになるので、その場合には、ステップ１０６に進み、移行後の経過時間を計時するカウンタＴＩＤＯＰＭの値が所定値＃ＸＴＩＤＯＰＭ（例えば１０秒相当）よりも大きいか否かを判別する。この答がＮＯで、走行運転への移行後、所定値＃ＸＴＩＤＯＰＭに相当する所定時間が経過していないときには、カウンタ値ＴＩＤＯＰＭをインクリメントした（ステップ１０７）後、前記ステップ１０５と同様、補正後要求トルクＰＭＣＤＴＭＰＸを前記式（６）によって算出し（ステップ１０８）、移行時補正を継続する。
【００５２】
一方、前記ステップ１０６の答がＹＥＳで、ＴＩＤＯＰＭ＞＃ＸＴＩＤＯＰＭが成立し、走行運転への移行後、所定時間が経過したときには、移行時補正期間が終了したとして、ステップ１０１で算出した要求トルクＰＭＣＭＤを、補正後要求トルクＰＭＣＤＴＭＰＸとして設定する（ステップ１０９）。次いで、移行時補正期間が終了したことを表すために、移行時補正フラグＦ＿ＩＤＯＰＭを「０」にリセットする（ステップ１１０）とともに、カウンタＴＩＤＯＰＭを値０にリセットする（ステップ１１１）。
【００５３】
次いで、上述したようにして算出した補正後要求フラグＰＭＣＤＴＭＰＸに基づいて、目標トルクＰＭＣＭＤＲＥＧを算出し（ステップ１１２）、本プログラムを終了する。
【００５４】
以上のように、本実施形態によれば、アイドル運転時においては、アイドル時目標トルクＰＭＲＥＧＯＲＧを設定するためのフィードバック補正項ＰＭＦＢＮを、エンジン回転数ＮＥが目標回転数ＮＯＢＪになるようにＰＩＤフィードバック制御するとともに、フィードバック制御されたＩ項ＰＭＦＢ＿Ｉの学習値であるＩ項学習値ＰＭＲＥＦＮを算出する。また、エンジン３のアイドル運転から走行運転への移行時補正期間内では、そのときのエンジン回転数ＮＥおよびアクセル開度ＡＰに応じて要求トルクＰＭＣＭＤを算出するとともに、算出した要求トルクＰＭＣＭＤに学習値ＰＭＲＥＦＮを加算することによって、補正後要求トルクＰＭＣＤＴＭＰＸを算出し、この補正後要求トルクＰＭＣＤＴＭＰＸに基づいて、目標トルクＰＭＣＭＤＲＥＧを設定する。
【００５５】
以上のように、アイドル運転から走行運転への移行時補正期間では、補正後要求トルクＰＭＣＤＴＭＰＸが、運転状態に応じて算出した要求トルクと、アイドル回転の維持に必要な正味の要求トルクを表す学習値との和として算出される。したがって、アイドル運転からの走行運転を、アイドル時の正味の要求トルクをベースとして開始することによって、要求トルクの連続性を確保でき、それにより、トルク段差および回転の落込みを確実に防止でき、アイドル運転から走行運転への移行を円滑に行うことができる。
【００５６】
また、前述したように、Ｉ項学習値ＰＭＲＥＦＮの算出は、エアコン負荷補正項ＰＭＨＡＣ、パワステ負荷補正項ＰＭＰＳおよび水温補正項ＰＭＴＷが、いずれも値０であることを条件として、すなわち、エンジン３の補機であるエアコン１７およびパワステ１８が停止状態にあり、かつエンジン３の暖機が完了した状態で、実行される。したがって、エアコン１７およびパワステ１８などによる回転負荷の影響を排除した状態でフィードバック制御されたＩ項制御値に基づいて、アイドル回転の維持に必要な正味の要求トルクをより適正に表すＩ項学習値ＰＭＲＥＦＮを算出でき、それにより、上述した効果をより良く得ることができる。
【００５７】
図１０は、本発明の第２実施形態による、アイドル運転から走行運転への移行時の目標トルクＰＭＣＭＤＲＥＧの算出処理を示す。この算出処理は、図９に示した第１実施形態による算出処理と比較し、ステップ１０８の実行内容、すなわち補正後要求トルクＰＭＣＤＴＭＰＸの算出方法のみが異なるので、その部分についてのみ説明を行うものとする。すなわち、ステップ１０６の答がＮＯで、ＴＩＤＯＰＭ≦＃ＸＴＩＤＯＰＭのときには、ステップ１０７でカウンタ値ＴＩＤＯＰＭをインクリメントした後、そのときのカウンタ値ＴＩＤＯＰＭに応じ、図１１のテーブルを検索することによって、補正係数ＫＧＩＤＯを算出する（ステップ１０８Ａ）。このテーブルでは、補正係数ＫＧＩＤＯは、カウンタ値ＴＩＤＯＰＭが、前記所定値＃ＸＴＩＤＯＰＭよりも小さな第２所定値＃ＸＴＩＤＯＰＭ０（例えば５秒相当）以下のときに値１．０に設定され、カウンタ値ＴＩＤＯＰＭが大きくなるにつれて減少し、カウンタ値ＴＩＤＯＰＭが所定値＃ＸＴＩＤＯＰＭのときに値０になるように設定されている。
【００５８】
次いで、ステップ１０８Ｂに進み、算出した補正係数ＫＧＩＤＯを用い、次式（７）によって、補正後要求トルクＰＭＣＤＴＭＰＸを算出する。
ＰＭＣＤＴＭＰＸ＝  ＰＭＣＭＤ＋ＰＸＰＭＲＥＦＮ＊ＫＧＩＤＯ・・・（７）
補正係数ＫＧＩＤＯが上述したように設定されることから、式（７）によって算出される補正後要求トルクＰＭＣＤＴＭＰＸは、走行運転への移行直後においては、要求トルクＰＭＣＤＴＭＰＸとＩ項学習値ＰＭＲＥＦＮの和に等しく、第１実施形態の場合と同じであり、その後、時間の経過とともに減少し、移行時補正期間の終了時に、要求トルクＰＭＣＤＴＭＰＸに等しくなる。したがって、第１実施形態と同様、移行時のトルク段差および回転の落込みを確実に防止できるとともに、アイドル運転から走行運転への移行をより円滑に行うことができる。
【００５９】
なお、本発明は、説明した実施形態に限定されることなく、種々の態様で実施することができる。例えば、説明した内燃機関は、燃料噴射弁から燃焼室に燃料を直接、噴射する筒内噴射式のものであるが、本発明を、燃料を吸気ポートに噴射する吸気ポート噴射式の内燃機関に適用してもよい。また、本発明は、クランクシャフトを鉛直方向に配置した船外機などの船舶推進機用の内燃機関の制御にも適用可能である。
【００６０】
【発明の効果】
以上のように、本発明の内燃機関の制御装置は、内燃機関のアイドル運転からアイドル運転外の運転への移行を、トルク段差および回転の落込みを確実に防止しながら、円滑に行うことができるなどの効果を有する。
【図面の簡単な説明】
【図１】本発明の実施形態による制御装置およびこれを適用した内燃機関の概略構成を示す図である。
【図２】アイドル運転時の目標トルクＰＭＲＥＧＯＲＧの算出処理を示すフローチャートである。
【図３】図２の算出処理の残りの部分を示すフローチャートである。
【図４】目標回転数ＮＯＢＪの算出処理を示すフローチャートである。
【図５】フィードバック補正項ＰＭＦＢＮの算出処理のサブルーチンを示すフローチャートである。
【図６】図５の算出処理の残りの部分を示すフローチャートである。
【図７】Ｉ項学習値ＰＭＲＥＦＮの算出処理のサブルーチンを示すフローチャートである。
【図８】図７のステップ８８の算出サブルーチンを示すフローチャートである。
【図９】本発明の第１実施形態による、アイドル運転から走行運転への移行時における目標トルクＰＭＣＭＤＲＥＧの算出処理を示すフローチャートである。
【図１０】本発明の第２実施形態による目標トルクＰＭＣＭＤＲＥＧの算出処理を示すフローチャートである。
【図１１】図１０のステップ１０８Ａで用いられるテーブルの一例である。
【符号の説明】
１  制御装置
２  ＥＣＵ（運転状態検出手段、目標回転数設定手段、フィードバック制御手段、学習値算出手段、要求トルク算出手段、要求トルク補正手段、および目標トルク設定手段）
３  内燃機関
１１  クランク角センサ（運転状態検出手段）
１６  アクセル開度センサ（運転状態検出手段）
１７  エアコンスイッチ（補機作動状態検出手段）
１８  パワステスイッチ（補機作動状態検出手段）
１９  エアコン（補機）
２０  パワステ（補機）
ＮＥ  エンジン回転数（運転状態）
ＡＰ  アクセル開度（運転状態）
ＮＯＢＪ  目標回転数
ＰＭＲＥＧＯＲＧ  アイドル運転時の目標トルク
ＰＭＦＢＮ  フィードバック補正項（制御値）
ＰＭＲＥＦＮ  Ｉ項学習値（学習値）
ＰＭＣＭＤ  要求トルク
ＰＭＣＤＴＭＰＸ  補正後要求トルク（補正された要求トルク）
ＰＭＣＭＤＲＥＧ  走行運転時の目標トルク
【図１】
2004176671.tif 000003
【図２】
2004176671.tif 000004
【図３】
2004176671.tif 000005
【図４】
2004176671.tif 000006
【図５】
2004176671.tif 000007
【図６】
2004176671.tif 000008
【図７】
2004176671.tif 000009
【図８】
2004176671.tif 000010
【図９】
2004176671.tif 000011
【図１０】
2004176671.tif 000012
【図１１】
2004176671.tif 000013