JP3962100B2 - 内燃機関の制御装置 - Google Patents
内燃機関の制御装置 Download PDFInfo
- Publication number
- JP3962100B2 JP3962100B2 JP06177695A JP6177695A JP3962100B2 JP 3962100 B2 JP3962100 B2 JP 3962100B2 JP 06177695 A JP06177695 A JP 06177695A JP 6177695 A JP6177695 A JP 6177695A JP 3962100 B2 JP3962100 B2 JP 3962100B2
- Authority
- JP
- Japan
- Prior art keywords
- air
- fuel ratio
- value
- sensor
- engine
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F02—COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
- F02D—CONTROLLING COMBUSTION ENGINES
- F02D41/00—Electrical control of supply of combustible mixture or its constituents
- F02D41/0002—Controlling intake air
- F02D2041/001—Controlling intake air for engines with variable valve actuation
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F02—COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
- F02D—CONTROLLING COMBUSTION ENGINES
- F02D41/00—Electrical control of supply of combustible mixture or its constituents
- F02D41/02—Circuit arrangements for generating control signals
- F02D41/14—Introducing closed-loop corrections
- F02D41/1438—Introducing closed-loop corrections using means for determining characteristics of the combustion gases; Sensors therefor
- F02D41/1444—Introducing closed-loop corrections using means for determining characteristics of the combustion gases; Sensors therefor characterised by the characteristics of the combustion gases
- F02D41/1454—Introducing closed-loop corrections using means for determining characteristics of the combustion gases; Sensors therefor characterised by the characteristics of the combustion gases the characteristics being an oxygen content or concentration or the air-fuel ratio
- F02D41/1456—Introducing closed-loop corrections using means for determining characteristics of the combustion gases; Sensors therefor characterised by the characteristics of the combustion gases the characteristics being an oxygen content or concentration or the air-fuel ratio with sensor output signal being linear or quasi-linear with the concentration of oxygen
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Electrical Control Of Air Or Fuel Supplied To Internal-Combustion Engine (AREA)
- Feedback Control In General (AREA)
Description
【産業上の利用分野】
本発明は、内燃機関の制御装置に関し、特に現代制御理論を応用したフィードバック制御により機関に供給する混合気の空燃比をフィードバック制御する制御装置に関する。
【0002】
【従来の技術】
内燃機関の排気ガス中の酸素濃度を検出する酸素濃度センサの出力に基づいて機関に供給する混合気の空燃比をフィードバック制御する空燃比制御装置において、酸素濃度センサの異常と判定したときは、前記フィードバック制御を停止するようにしたものが、従来より知られている(特公昭60−56253号公報)。
【0003】
また、現代制御理論の1つである最適レギュレータをこの空燃比フィードバック制御に応用し、機関の排気系に設けられた広域空燃比センサの出力と、機関の動的モデルに基づいて算出した最適フィードバックゲインに基づいて空燃比をフィードバック制御する空燃比制御装置において、前記広域空燃比センサが半暖機状態(完全な暖機状態に達する前の状態)にあるときは、適応制御ではなくPID制御により空燃比のフィードバック制御を行うようにしたものが、既に提案されている(特開平5−52140号公報)。
【0004】
【発明が解決しようとする課題】
しかしながら、上記前者の空燃比制御装置では、酸素濃度センサの異常を検出したときは、フィードバック制御を停止するようにしているため、その間の排気ガス特性や運転性の面で改善の余地が残されていた。
【0005】
また、上記後者の空燃比制御装置では、広域空燃比センサの半暖機状態は考慮しているが、該広域空燃比センサや他のセンサ等の異常状態は考慮していないため、改善の余地が残されていた。
【0006】
本発明は上述した点に着目してなされたものであり、センサ等の異常検出時においても可能な限りフィードバック制御を継続し、排気ガス特性の悪化や運転性の低下を最小限に留めることができる内燃機関の制御装置を提供することを目的とする。
【0007】
【課題を解決するための手段】
上記目的を達成するため、請求項1に係る発明は、内燃機関1の排気系(実施形態における(以下、本項において同じ)排気管16)に設けられた空燃比センサ(広域空燃比センサ(LAFセンサ)17)を含み、前記機関1の運転状態を検出する機関運転状態検出手段と、適応パラメータ調整機構を用い、前記空燃比センサの出力に基づいて適応パラメータ(θ(k)、数式2〜5)を所定の制御サイクルで調整するとともに、前記適応パラメータが入力された漸化式形式の適応制御器(STRコントローラ、図3のブロック19、図16、数式2)を用い、前記空燃比センサの出力に基づいて、前記機関に供給する混合気の空燃比をフィードバック制御するフィードバック制御手段(ECU5、図3のブロック19、図16)とを有する内燃機関の制御装置において、前記機関運転状態検出手段の出力に基づいて、前記空燃比センサの応答特性の劣化を含む前記機関又は当該制御装置の異常を検知する異常検知手段(ECU5、図18のステップ172〜174、179)と、該異常検知手段により検知された異常が前記空燃比センサの応答特性の劣化でないときに、前記フィードバック制御手段の作動を禁止する異常処理手段(ECU5、図18のステップ186)と、前記異常検知手段により検知された異常が前記空燃比センサの応答特性の劣化であるときに、前記適応パラメータの調整速度を低減する調整速度低減手段(ECU5)と、を設けたものである。
【0010】
【作用】
請求項1に係る発明によれば、適応パラメータ調整機構により、空燃比センサの出力に基づいて、適応パラメータを所定の制御サイクルで調整するとともに、当該調整された適応パラメータを用いた漸化式形式の適応制御器により、空燃比センサの出力に基づいて、内燃機関に供給する混合気の空燃比がフィードバック制御される。また、機関運転状態検出手段の出力に基づいて、空燃比センサの応答特性の劣化を含む機関又は制御装置の異常が検知される。そして、検知した異常が空燃比センサの応答特性の劣化でないときには、フィードバック制御手段の作動が禁止される。また、検知した異常が空燃比センサの応答特性の劣化であるときには、適応パラメータの調整速度が低減される。
【0011】
【実施例】
以下本発明の実施例を図面を参照して説明する。
【0012】
図1は本発明の一実施例にかかる内燃機関(以下「エンジン」という)及びその制御装置の構成を示す図である。同図中、1はエンジンである。
【0013】
エンジン1の吸気管2は分岐部(吸気マニホルド)11を介してエンジン1の各気筒の燃焼室に連通する。吸気管2の途中にはスロットル弁3が配されている。スロットル弁3にはスロットル弁開度(θTH)センサ4が連結されており、スロットル弁開度θTHに応じた電気信号を出力して電子コントロールユニット(以下「ECU」という)5に供給する。吸気管2には、スロットル弁3をバイパスする補助空気通路6が設けられており、該通路6の途中には補助空気量制御弁7が配されている。補助空気量制御弁7は、ECU5に接続されており、ECU5によりその開弁量が制御される。
【0014】
吸気管2のスロットル弁3の上流側には吸気温(TA)センサ8が装着されており、その検出信号がECU5に供給される。吸気管2のスロットル弁3と吸気マニホルド11の間には、チャンバ9が設けられており、チャンバ9には吸気管内絶対圧(PBA)センサ10が取り付けられている。PBAセンサ10の検出信号はECU5に供給される。
【0015】
エンジン1の本体にはエンジン水温(TW)センサ13が装着されており、その検出信号がECU5に供給される。ECU5には、エンジン1のクランク軸(図示せず)の回転角度を検出するクランク角度位置センサ14が接続されており、クランク軸の回転角度に応じた信号がECU5に供給される。クランク角度位置センサ14は、エンジン1の特定の気筒の所定クランク角度位置で信号パルス(以下「CYL信号パルス」という)を出力する気筒判別センサ、各気筒の吸入行程開始時の上死点(TDC)に関し所定クランク角度前のクランク角度位置で(4気筒エンジンではクランク角180度毎に)TDC信号パルスを出力するTDCセンサ及びTDC信号パルスより短い一定クランク角周期(例えば30度周期)で1パルス(以下「CRK信号パルス」という)を発生するCRKセンサから成り、CYL信号パルス、TDC信号パルス及びCRK信号パルスがECU5に供給される。これらの信号パルスは、燃料噴射時期、点火時期等の各種タイミング制御及びエンジン回転数NEの検出に使用される。
【0016】
吸気マニホルド11の吸気弁の少し上流側には、各気筒毎に燃料噴射弁12が設けられており、各噴射弁は図示しない燃料ポンプに接続されているとともにECU5に電気的に接続されて、ECU5からの信号により燃料噴射時期及び燃料噴射時間(開弁時間)が制御される。エンジン1の点火プラグ(図示せず)もECU5に電気的に接続されており、ECU5により点火時期θIGが制御される。
【0017】
排気管16は分岐部(排気マニホルド)15を介してエンジン1の燃焼室に接続されている。排気管16には分岐部15が集合する部分の直ぐ下流側に、広域空燃比センサ(以下「LAFセンサ」という)17が設けられている。さらにLAFセンサ17の下流側には直下三元触媒19及び床下三元触媒20が配されており、またこれらの三元触媒19及び20の間には酸素濃度センサ(以下「O2センサ」という)18が装着されている。三元触媒19、20は、排気ガス中のHC,CO,NOx等の浄化を行う。
【0018】
LAFセンサ17は、ローパスフィルタ22を介してECU5に接続されており、排気ガス中の酸素濃度(空燃比)に略比例した電気信号を出力し、その電気信号をECU5に供給する。O2センサ18は、その出力が理論空燃比の前後において急激に変化する特性を有し、その出力は理論空燃比よりリッチ側で高レベルとなり、リーン側で低レベルとなる。O2センサ18は、ローパスフィルタ23を介してECU5に接続されており、その検出信号はECU5に供給される。
【0019】
排気還流機構30は、吸気管2のチャンバ9と排気管16とを接続する排気還流路31と、排気還流路31の途中に設けられ、排気還流量を制御する排気還流弁(EGR弁)32と、EGR弁32の弁開度を検出し、その検出信号をECU5に供給するリフトセンサ33とから成る。EGR弁32は、ソレノイドを有する電磁弁であり、ソレノイドはECU5に接続され、その弁開度がECU5からの制御信号によりリニアに変化させることができるように構成されている。
【0020】
次に図2も合わせて参照して、蒸発燃料処理装置40について説明する。燃料タンク41は通路42を介してキャニスタ45に連通し、キャニスタ45はパージ通路43を介して吸気管2のチャンバ9に連通している。キャニスタ45は、燃料タンク41内で発生する蒸発燃料を吸着する吸着剤46を内蔵し、外気取込口47を有する。通路42の途中には、正圧バルブ及び負圧バルブから成る2ウェイバルブ44が配設され、パージ通路43の途中にはデューティ制御型の電磁弁であるパージ制御弁48、パージ通路43を流れる燃料蒸気を含む混合気の流量を検出する流量センサ49及び該混合気中のHC濃度を検出するHC濃度センサ50が設けられている。パージ制御弁48及びセンサ49、50は、ECU5に接続されており、パージ制御弁48はECU5からの信号に応じて制御され、センサ49、50の検出信号はECU5に供給される。
【0021】
蒸発燃料処理装置40によれば、燃料タンク41内で発生した蒸発燃料は、所定の設定圧に達すると2ウェイバルブ44の正圧バルブを押し開き、キャニスタ45に流入し、キャニスタ45内の吸着剤46によって吸着され貯蔵される。パージ制御弁48はECU5からのデューティ信号によって開弁/閉弁作動し、その開弁時間中においてはキャニスタ45に一時蓄えられていた蒸発燃料は、チャンバ9の負圧により、キャニスタ45の外気取込口47から吸入された外気とともにパージ制御弁48を経てチャンバ9へ吸引され、各気筒に送られる。また、外気などで燃料タンク41が冷却されて燃料タンク内の負圧が増すと、2ウェイバルブ44の負圧バルブが開弁し、キャニスタ45に一時蓄えられていた蒸発燃料は燃料タンク41へ戻される。このようにして、燃料タンク41内で発生した燃料蒸気が大気に放出されることをが抑止される。
【0022】
エンジン1は、吸気弁及び排気弁のバルブタイミングを、エンジンの高速回転領域に適した高速バルブタイミングと、低速回転領域に適した低速バルブタイミングとの2段階に切換可能なバルブタイミング切換機構60を有する。このバルブタイミングの切換は、弁リフト量の切換も含み、さらに低速バルブタイミング選択時は2つの吸気弁のうちの一方を休止させて、空燃比を理論空燃比よりリーン化する場合においても安定した燃焼を確保するようにしている。
【0023】
バルブタイミング切換機構60は、バルブタイミングの切換を油圧を介して行うものであり、この油圧切換を行う電磁弁及び油圧センサがECU5接続されている。油圧センサの検出信号はECU5に供給され、ECU5は電磁弁を制御してバルブタイミングの切換制御を行う。
【0024】
また、ECU5には、大気圧を検出する大気圧(PA)センサ21が接続されており、その検出信号がECU5に供給される。
【0025】
ECU5は、上述した各種センサからの入力信号波形を整形して電圧レベルを所定レベルに修正し、アナログ信号値をデジタル信号値に変化する等の機能を有する入力回路と、中央処理回路(CPU)と、該CPUで実行される各種演算プログラムや後述する各種マップ及び演算結果等を記憶するROM及びRAMからなる記憶回路と、燃料噴射弁12等の各種電磁弁や点火プラグに駆動信号を出力する出力回路とを備えている。
【0026】
ECU5は、上述の各種エンジン運転パラメータ信号に基づいて、LAFセンサ17及びO2センサ18の出力に応じたフィードバック制御運転領域やオープン制御運転領域等の種々のエンジン運転状態を判別するとともに、エンジン運転状態に応じ、下記数式1により燃料噴射弁12の燃料噴射時間TOUTを演算し、この演算結果に基づいて燃料噴射弁12を駆動する信号を出力する。
【0027】
【数1】
TOUT=TIMF×KTOTAL×KCMDM×KFB
図3は上記数式1による燃料噴射時間TOUTの算出手法を説明するための機能ブロック図であり、これを参照して本実施例における燃料噴射時間TOUTの算出手法の概要を説明する。なお、本実施例ではエンジンへの燃料供給量は燃料噴射時間として算出されるが、これは噴射される燃料量に対応するので、TOUTを燃料噴射量若しくは燃料量とも呼んでいる。
【0028】
図3においてブロックB1は、吸入空気量に対応した基本燃料量TIMFを算出する。この基本燃料量TIMFは、基本的にはエンジン回転数NE及び吸気管内絶対圧PBAに応じて設定されるが、スロットル弁3からエンジン1の燃焼室に至る吸気系をモデル化し、その吸気系モデルに基づいて吸入空気の遅れを考慮した補正を行うことが望ましい。その場合には、検出パラメータとしてスロットル弁開度θTH及び大気圧PAをさらに用いる。
【0029】
ブロックB2〜B4は乗算ブロックであり、ブロックの入力パラメータを乗算して出力する。これらのブロックにより、上記数式1の演算が行われ、燃料噴射量TOUTが得られる。
【0030】
ブロックB9は、エンジン水温TWに応じて設定されるエンジン水温補正係数KTW,排気還流実行中に排気還流量に応じて設定されるEGR補正係数KEGR,蒸発燃料処理装置40によるパージ実行時にパージ燃料量に応じて設定されるパージ補正係数KPUG等のフィードフォワード系補正係数をすべて乗算することにより、補正係数KTOTALを算出し、ブロックB2に入力する。
【0031】
ブロックB21は、エンジン回転数NE、吸気管内絶対圧PBA等に応じて目標空燃比係数KCMDを決定し、ブロックB22に入力する。目標空燃比係数KCMDは、空燃比A/Fの逆数、すなわち燃空比F/Aに比例し、理論空燃比のとき値1.0をとるので、目標当量比ともいう。ブロックB22は、ローパスフィルタ23を介して入力されるO2センサ出力VMO2の基づいて目標空燃比係数KCMDを修正し、ブロックB18及びB23に入力する。ブロックB23は、KCMD値に応じて燃料冷却補正を行い最終目標空燃比係数KCMDMを算出し、ブロックB3に入力する。
【0032】
ブロックB10は、ローパスフィルタ22を介して入力されるLAFセンサ出力値を、CRK信号パルスの発生毎にサンプリングし、そのサンプル値をリングバッファメモリに順次記憶し、エンジン運転状態に応じて最適のタイミングでサンプリングしたサンプル値を選択し(LAFセンサ出力選択処理)、ローパスフィルタブロックB16及びB17を介してブロックB18及びB19に入力する。このLAFセンサ出力選択処理は、サンプリングのタイミングによっては変化する空燃比を正確に検出できないこと、燃焼室から排出される排気ガスがLAFセンサ17に到達するまでの時間やLAFセンサ自体の反応時間がエンジン運転状態によって変化することを考慮したものである。
【0033】
ブロックB18は、検出空燃比と目標空燃比との偏差に応じてPID制御によりPID補正係数KLAFを算出してブロックB20に入力する。 ブロックB19は、検出空燃比に基づいて適応制御(Self Tuning Regulation)により適応補正係数KSTRを算出してブロックB20に入力する。この適応制御は、目標空燃比係数KCMD(KCMDM)を基本燃料量TIMFに乗算するだけでは、エンジンの応答遅れがあるため目標空燃比がなまされた検出空燃比になってしまうため、これを動的に補償し、外乱に対するタフネス性を向上させるために導入したものである。
【0034】
ブロックB20は、入力されるPID補正係数KLAF及び適応補正係数KSTRのいずれか一方をエンジン運転状態に応じて選択し、フィードバック補正係数KFBとしてブロックB4に入力する。これは、エンジン運転状態によっては、適応制御ではなく従来のPID制御によって算出したKLAF値を用いた方がよいことを考慮したものである。
【0035】
以上のように本実施例では、LAFセンサ17の出力の応じて通常のPID制御により算出したPID補正係数KLAFと、適応制御により算出した適応補正係数KSTRとを切り換えて、補正係数KFBとして上記数1に適用して、燃料噴射量TOUTを算出している。適応補正係数KSTRにより、目標空燃比を変更したときの追従性及び外乱に対するタフネス性を向上させ、触媒の浄化率を向上させ、種々のエンジン運転状態において良好な排気ガス特性を得ることができる。
【0036】
本実施例では、上述した図3の各ブロックの機能は、ECU5のCPUによる演算処理により実現されるので、この処理のフローチャートを参照して処理の内容を具体的に説明する。
【0037】
図4は、LAFセンサ17の出力に応じてPID補正係数KLAF及び適応補正係数KSTRを算出し、最終的にフィードバック補正係数KFBを算出する処理のフローチャートである。本処理はTDC信号パルスの発生毎に実行される。
【0038】
ステップS1では、始動モードか否か、すなわちクランキング中か否かを判別し、始動モードのときは始動モードの処理へ移行する。始動モードでなければ、目標空燃比係数(目標当量比)KCMD及び最終目標空燃比係数KCMDMの算出(ステップS2)及びLAFセンサ出力選択処理を行う(ステップS3)とともに検出当量比KACTの演算を行う(ステップS4)。検出当量比KACTは、LAFセンサ17の出力を当量比に変換したものである。
【0039】
次いでLAFセンサ17の活性化が完了したか否かの活性判別を行う(ステップS5)。これは、例えばLAFセンサ17の出力電圧とその中心電圧との差を所定値(例えば0.4V)と比較し、該差が所定値より小さいとき活性化が完了したと判別するものである。
【0040】
次にエンジン運転状態がLAFセンサ17の出力に基づくフィードバック制御を実行する運転領域(以下「LAFフィードバック領域」という)にあるか否かの判別を行う(ステップS6)。これは、例えばLAFセンサ17の活性化が完了し、且つフュエルカット中やスロットル全開運転中でないとき、LAFフィードバック領域と判定するものである。この判別の結果、LAFフィードバック領域にないときはリセットフラグFKLAFRESETを「1」に設定し、LAFフィードバック領域にあるときは「0」とする。
【0041】
続くステップS7では、リセットフラグFKLAFRESETが「1」か否かを判別し、FKLAFRESET=1のときは、ステップS8に進んでPID補正係数KLAF、適応補正係数KSTR及びフィードバック補正係数KFBをいずれもに「1.0」に設定するとともに、PID制御の積分項KLAFIを「0」に設定して、本処理を終了する。また、FKLAFRESET=0のときは、フィードバック補正係数KFBの演算を行って(ステップS9)、本処理を終了する。
【0042】
以下上記ステップS2〜S4,S6及びS9における処理の詳細を順次説明する。
【0043】
図5は、図4のステップS2における最終目標空燃比係数KCMDMを算出する処理のフローチャートである。
【0044】
ステップS21では、吸気管内絶対圧センサ10の異常を検出したか否かを判別し、検出していなければ直ちにステップS23に進み、異常を検出したときは、スロットル弁開度θTHに応じて算出した代替値を吸気管内絶対圧PBAとしてステップS23に進む。
【0045】
ステップS23では、エンジン回転数NE及び吸気管内絶対圧PBAに応じてマップを検索し、基本値KBSを算出する。なお、そのマップにはアイドル時用の値も設定されている。
【0046】
続くステップS24では、エンジン始動直後のリーンバーン制御を実行すべき条件が成立するか否かを判別し、条件が成立したときは始動後リーンフラグFASTLEANを「1」に設定する一方、条件不成立のときは「0」とする。このリーンバーン制御実行条件は、例えばエンジン始動後所定期間内であって、エンジン水温TW、エンジン回転数NE及び吸気管内絶対圧PBAが所定範囲内にあるとき成立する。なお、始動直後のリーンバーン制御は、エンジン始動直後の触媒が未活性の状態でHCの排出量が増加すること防止する目的で行うものである。
【0047】
次いでステップS25では、スロットル弁が全開(WOT)の状態か否かを判別し、全開のときはWOTフラグFWOTを「1」に設定し、全開でなければ「0」とする。次いで、エンジン水温TWに応じて増量補正係数KWOTを算出する(ステップS26)。このとき高水温時の補正係数KXWOTも算出する。
【0048】
続くステップS27では、目標空燃比係数KCMDを算出し、次いで算出したKCMD値のリミット処理(所定上下限値の範囲内に入るようにする処理)を行う(ステップS28)。このステップS27の処理は図6を参照して後述する。
【0049】
続くステップS29では、O2センサ18の活性化が完了しているか否かの判別を行い、活性化が完了したときは、活性フラグFMO2を「1」に設定し、完了していないときは、「0」とする。例えばエンジン始動後所定期間経過したとき、活性化完了と判定する。次いで、O2センサ18の異常を検出しているか否かを判別し(ステップS30)、異常を検出していないときは、ステップS32に進み、O2センサ18の出力VMO2に応じて目標空燃比係数KCMDの補正項DKCMDO2を算出する。この処理は、O2センサ出力VMO2と基準値VREFMとの偏差に応じてPID制御により、補正項DKCMDO2を算出するものである。
【0050】
ステップS30でO2センサ18の異常を検出していたときは、補正項DKCMDO2を「0」として(ステップS31)、ステップS33に進む。
【0051】
ステップS33では、次式により目標空燃比係数KCMDの補正を行う。
【0052】
KCMD=KCMD+DKCMDO2
これにより、LAFセンサ17の出力のずれを補償するように目標空燃比係数KCMDを設定することができる。
【0053】
続くステップS34では、算出したKCMD値に応じてKCMD−KETCテーブルを検索して補正係数KETCを算出し、次式により最終目標空燃比係数KCMDMを算出する。
【0054】
KCMDM=KCMD×KETC
補正係数KETCは、KCMD値が増加し、燃料噴射量が増加するほど、噴射による燃料冷却効果が大きくなることを考慮して、その影響を補正するものであり、KCMD値が増加するほど大きな値に設定される。
【0055】
次いで、KCMDM値のリミット処理を行うとともに(ステップS35)、ステップS33で得られたKCMD値をリングバッファに格納して(ステップS36)、本処理を終了する。
【0056】
図6は、図5のステップS27におけるKCMD算出処理のフローチャートである。
【0057】
先ずステップS51では、図5のステップS24で設定した始動後リーンフラグFASTLEANが「1」か否かを判別し、FASTLEAN=1であるときは、KCMDASTLEANマップを検索して、リーン制御時の中心空燃比に相当するリーン目標値KCMDASTLEANを算出する(ステップS52)。ここで、KCMDASTLEANマップは、エンジン水温TW及び吸気管内絶対圧PBAに応じてリーン目標値KCMDASTLEANが設定されたマップである。そして、目標空燃比係数KCMDをリーン目標値KCMDASTLEANに設定して(ステップS53)、ステップS59に進む。
【0058】
一方前記ステップS51でFASTLAEAN=0であって、始動後リーンバーン制御実行条件が成立しないときは、エンジン水温TWが所定水温TWCMD(例えば80℃)より高いか否かを判別する。そしてTW>TWCMDが成立するときは、KCMD値を図5のステップS23で算出した基本値KBSに設定して(ステップS57)、ステップS59に進む。また、TW≦TWCMDが成立するときは、エンジン水温TW及び吸気管内絶対圧PBAに応じて設定されたマップを検索して、低水温用目標値KTWCMDを算出し(ステップS55)、基本値KBSがこのKTWCMD値より大きいか否かを判別する(ステップS56)。その結果KBS>KTWCMDであるときは、前記ステップS57に進み、KBS≦KTWCMDであるときは、基本値KBSを低水温用目標値KTWCMDに置き換えて(ステップS58)、ステップS59に進む。
【0059】
ステップS59では、O2センサ18の異常が検出されているか否かを判別し、異常が検出されていなければ直ちにステップS61に進む一方、異常が検出されているときは、調整用加算項KCMDOFFSETを異常時用の調整値KCMDOFFSETFSに設定して(ステップS60)、ステップS61に進む。
【0060】
ここで、異常時用の調整値KCMDOFFSETFSは、空燃比がややリッチ方向にバイアスされるような値に設定される。これにより、O2センサの異常時において空燃比のリーン化によるトルク変動やノッキングを防止することができる。
【0061】
そしてステップS61では、下記式によりKCMD値を補正してステップS62に進む。調整用加算項KCMDOFFSETは、エンジンの排気系やLAFセンサの特性のばらつきや経時変化の影響を反映させて、目標空燃比係数KCMDを微調整し、三元触媒のウィンドウゾーンの最適な位置をとるようにするためのパラメータである。
【0062】
KCMD=KCMD+KCMDOFFSET
ステップS62では、図5のステップS25で設定したWOTフラグFWOTが「1」か否かを判別し、FWOT=0であれば直ちに本処理を終了し、FWOT=1のときは、高負荷用のKCMD値の設定処理を行い(ステップS63)、本処理を終了する。この処理は、KCMD値を図5のステップS26で算出した高負荷用増量補正係数KWOT,KXWOTと比較し、KCMD値がこれらの係数値より小さいときは、KCMD値に補正係数KWOT又はKXWOTを乗算して補正を行うものである。
【0063】
なお、吸気管内絶対圧(PBA)センサの異常を検出したときは、目標当量比KCMDを固定値としてもよい。
【0064】
次に図4のステップS3におけるLAFセンサ出力選択処理について説明する。
【0065】
エンジンの排気ガスは排気行程で排出されることから、多気筒エンジンの排気系集合部において空燃比の挙動を見ると、明らかにTDC信号パルスに同期している。したがって、LAFセンサ17により空燃比を検出するときもTDC信号パルスに同期して行う必要がある。ところが、センサ出力のサンプルタイミングによっては空燃比の挙動を正確に把握できない場合が生じる。例えば、TDC信号パルスに対して排気系集合部の空燃比が図7のようであるとき、ECU5が認識する空燃比は図8に示すように、サンプルタイミングによって全く異なる値となる。この場合、実際のLAFセンサの出力変化を可能な限り正確に把握できるタイミングでサンプリングすることが望ましい。
【0066】
さらに、空燃比の変化は排気ガスのセンサまでの到達時間やセンサの反応時間によっても相違する。そのうち、センサまでの到達時間は排気ガス圧力、排気ガスボリューム等に依存して変化する。さらに、TDC信号パルスに同期してサンプリングすることはクランク角度に基づいてサンプリングすることになるので、必然的にエンジン回転数NEの影響を受ける。このように、空燃比の検出の最適なタイミングは、エンジン運転状態に大きく依存する。
【0067】
そこで、本実施例では図9に示すように、CRK信号パルス(クランク角度30度毎に発生する)の発生毎にサンプリングしたLAFセンサ出力をリングバッファ(本実施例では18個の格納場所を有する)に順次格納し、最適タイミングの出力値(17回前の値から今回値までの中の最適の値)を検出当量比KACTに変換してフィードバック制御に使用するようにしている。
【0068】
図10は、図4のステップS3におけるLAFセンサ出力選択処理のフローチャートある。
【0069】
先ずステップS81では、エンジン回転数NE及び吸気管内絶対圧PBAを読み出し、次いで現在のバルブタイミングが高速バルブタイミングか否かを判別する(ステップS82)。その結果高速バルブタイミングのときは高速バルブタイミング用のタイミングマップを検索し(ステップS83)、低速バルブタイミングのときは低速バルブタイミング用のタイミングマップを検索し(ステップS84)、その検索結果に応じてリングバッファに格納したLAFセンサ出力VLAFを選択して(ステップS85)、本処理を終了する。
【0070】
上記タイミングマップは、図11に示すように、エンジン回転数NE及び吸気管内絶対圧PBAに応じて、エンジン回転数NEが低いほど、あるいは吸気管内絶対圧PBAが高いほど早いクランク角度位置でサンプリングした値を選択するように設定されている。ここで、「早い」とは、前のTDC位置により近い位置でサンプリングした値(換言すれば古い値)を意味する。このように設定したのは、LAFセンサ出力は、図8に示したように、実際の空燃比の極大値又は極小値(以下「極値」という)に可能な限り近い位置でサンプリングするのが最良であるが、その極値、例えば最初のピーク値は、センサの反応時間を一定と仮定すれば、図12に示すように、エンジン回転数NEが低下するほど早いクランク角度位置で生じ、また、負荷が高いほど排気ガス圧力や排気ガスボリュームが増加し、排気ガスの流速が増してセンサへの到達時間が早まるからである。
【0071】
また、高速バルブタイミング用マップは、同一のエンジン回転数NE又は吸気管内絶対圧PBAに対しては、低速バルブタイミング用マップより早期のタイミングとなるように設定されている。これは、高速バルブタイミングでは、低速バルブタイミングより排気弁の開弁開始時期が早いからである。
【0072】
以上のように、図10の処理によれば、エンジン運転状態に応じて最適なタイミングでサンプリングしたセンサ出力VLAFが選択されるので、空燃比の検出精度を向上させることができる。
【0073】
なお、CRKセンサの異常を検出したときは、TDC信号パルスの発生時のLAFセンサ出力を採用する。これにより、フィードバック制御を継続することができる。
【0074】
次に図4のステップS4における検出当量比KACTの算出処理について説明する。図13は、このKACT算出処理のフローチャートである。
【0075】
先ずステップS101では、上述した図10の処理により選択されたセンサ出力選択値VLAFSELからセンサ出力中心値VCENTを減算して、テンポラリ値VLAFTEMPを算出する。ここで、中心値VCENTは、混合気の空燃比が理論空燃比のときのLAFセンサ出力値である。
【0076】
次いで、VLAFTEMP値が負の値か否かを判別し(ステップS102)、VLAFTEMP<0であって、空燃比が理論空燃比よりリーン側のときは、リーン補正係数KLBLLを乗算して、VLAFTEMP値を補正する(ステップS103)一方、、VLAFTEMP≧0であって、空燃比が理論空燃比よりリッチ側のときは、リッチ補正係数KLBLRを乗算して、VLAFTEMP値を補正する(ステップS104)。ここで、リーン補正係数KLBLL及びリッチ補正係数KLBLRは、LAFセンサに装着されたラベル抵抗の値に応じて算出されるばらつき補正用の補正係数である。ラベル抵抗値は、予めLAFセンサの特性を測定して、その結果に応じて設定されており、ECU5がその値を読み取って補正係数KLBLL,KLBLRを決定する。
【0077】
続くステップS105では、テンポラリ値VLAFTEMPにテーブル中心値VOUTCNTを加算して、修正出力値VLAFEを算出し、次いでVLAFE値に応じてKACTテーブルを検索して、検出当量比KACTを算出する(ステップS106)。ここで、KACTテーブルは、修正出力値VLAFEに応じて検出当量比KACTを算出するためのテーブルであり、テーブル中心値VOUTCNTは理論空燃比(KACT=1.0)に対応する格子点データ(修正出力値)である。
【0078】
以上の処理により、LAFセンサの特性ばらつきの影響を排除した検出当量比KACTを得ることができる。
【0079】
図14は、図4のステップS6におけるLAFフィードバック領域判別処理のフローチャートである。
【0080】
先ずステップS121では、LAFセンサ17が不活性状態にあるか否かを判別し、活性状態にあるときはフュエルカット中であることを「1」で示すフラグFFCが「1」か否かを判別し(ステップS122)、FFC=0であるときは、スロットル弁全開中であることを「1」で示すフラグFWOTが「1」か否かを判別し(ステップS123)、FWOT=1でないときは、図示しないセンサによって検出したバッテリ電圧VBATが所定下限値VBLOWより低いか否かを判別し(ステップS124)、VBAT≧VBLOWであるときは、理論空燃比に対応するLAFセンサ出力のずれ(LAFセンサストイキずれ)があるか否かを判別する。そして、ステップS121〜S125のいずれかの答が肯定(YES)のときは、LAFセンサ出力に基づくフィードバック制御を停止すべき旨を「1」で示すKLAFリセットフラグFKLAFRESETを「1」に設定する(ステップS132)。
【0081】
一方、ステップS121〜S125の答がすべて否定(NO)のときは、さらにLAFセンサ17のラベル抵抗の異常が検出されているか否かを判別し(ステップS126)、その答が肯定(YES)のときは、ストイキフィードバック制御中であるか否か、すなわち目標当量比KCMD=1.0であるか否かを判別する(ステップS127)。そして、ラベル抵抗の異常が検出されていないとき又はラベル抵抗の異常が検出されてもストイキフィードバック中のときは、エンジン水温センサの異常が検出されているか否かを判別し(ステップS128)、この答が否定(NO)のときは、吸気管内絶対圧センサの異常が検出されているか否かを判別する(ステップS129)。その結果、ステップS127の答が否定(NO)のとき又はステップS128又はS129のいずれかの答が肯定(YES)のときは、前記ステップS132に進み、ステップS126〜S129の答がすべて否定(NO)のときは、KLAFリセットフラグFKLAFRESETを「0」に設定する(ステップS131)。
【0082】
続くステップS133では、O2センサ18が不活性状態にあるか否かを判別し、活性状態にあるときは、エンジン水温TWが所定下限水温TWLOW(例えば0℃)より低いか否かを判別する(ステップS134)。そして、O2センサ18が不活性状態のときまたはTW<TWLOWであるときは、PID補正係数KLAFを現在値に維持すべきことを「1」で示すホールドフラグFKLAFHOLDを「1」に設定して(ステップS136)、本処理を終了する。一方、O2センサ18が活性状態にあり且つTW≧TWLOWであるときは、FKLAFHOLD=0として(ステップS135)、本処理を終了する。
【0083】
本処理によれば、LAFセンサ17、エンジン水温センサ13又は吸気管内絶対圧センサ10の異常検出時は、LAFセンサ出力に基づくフィードバック制御が停止されるので、センサ異常時にLAFフィードバック制御を実行してかえって空燃比の制御性を悪化させることを防止することができる。
【0084】
次に図4のステップS9におけるフィードバック補正係数KFBの算出処理を説明する。
【0085】
フィードバック補正係数KFBは、前述したようにエンジン運転状態に応じてPID補正係数KLAF又は適応補正係数KSTRに設定される。そこで、先ず図15及び図16を参照して、これらの補正係数の算出手法を説明する。
【0086】
図15は、PID補正係数KLAF算出処理のフローチャートである。
【0087】
同図のステップS301では、ホールドフラグFKLAFHOLDが「1」か否かを判別し、FKLAFHOLD=1のときは、直ちに本処理を終了し、FKLAFHOLD=0のときは、KLAFリセットフラグFKLAFRESETが「1」か否かを判別する(ステップS302)。その結果、FKLAFRESET=1のときは、ステップS303に進み、PID補正係数KLAFを1.0に設定するとともに、積分制御ゲインKI及び目標当量比KCMDと検出当量比KACTとの偏差DKAFを「0」に設定して、本処理を終了する。
【0088】
ステップS302でFKLAFRESET=0のときは、ステップS304に進み、比例制御ゲインKP、積分制御ゲインKI及び微分制御ゲインKDをエンジン回転数NE及び吸気管内絶対圧PBAに応じて設定されたマップから検索する。ただし、アイドル状態のときはアイドル用のゲインを採用する。次いで、目標当量比KCMDと検出当量比KACTとの偏差DKAF(k)(=KCMD(k)−KACT(k))を算出し(ステップS305)、偏差DKAF(k)及び各制御ゲインKP,KI,KDを下記式に適用して、比例項KLAFP(k)、積分項KLAFI(k)及び微分項KLAFD(k)を算出する(ステップS306)。
【0089】
KLAFP(k)=DKAF(k)×KP
KLAFI(k)=DKAF(k)×KI+KLAF(k−1)
KLAFD(k)=(DKAF(k)−DKAF(k−1))×KD
続くステップS307〜S310では、積分項KLAFI(k)のリミット処理を行う。すなわち、KLAFI(k)値が所定上下限値KLAFILMTH,KLAFILMTLの範囲内にあるか否かを判別し(ステップS307、S308)、KLAFI(k)>KLAFILMTHであるときは、KLAFI(k)=KLAFLMTHとし(ステップS310)、KLAFI(k)<KLAFILMTLであるときは、KLAFI(k)=KLAFILMTLとする(ステップS309)。
【0090】
続くステップS311では、下記式によりPID補正係数KLAF(k)を算出する。
【0091】
KLAF(k)=KLAFP(k)+KLAFI(k)+KLAFD(k)
+1.0
次いで、KLAF(k)値が所定上限値KLAFLMTHより大きいか否かを判別し(ステップS312)、KLAF(k)>KLAFLMTHであるときは、KLAF(k)=KLAFLMTHとして(ステップS316)、本処理を終了する。
【0092】
ステップS312で、KLAF(k)≦KLAFLMTHであるときは、KLAF(k)値が所定下限値KLAFLMTLより小さいか否かを判別し(ステップS314)、KLAF(k)≧KLAFLMTLであれば直ちに本処理を終了する一方、KLAF(k)<KLAFLMTLであるときは、KLAF(k)=KLAFLMTLとして(ステップS315)、本処理を終了する。
【0093】
本処理により、検出当量比KACTが目標当量比KCMDに一致するように、PID制御によりPID補正係数KLAFが算出される。
【0094】
次に適応補正係数KSTR算出処理について、図16を参照して説明する。
【0095】
図16は、図3のブロックB19、すなわち適応制御(STR(Self Tuning Regulator))ブロックの構成を示すブロック図であり、このSTRブロックは、目標空燃比係数(目標当量比)KCMD(k)と検出当量比KACT(k)とが一致するように適応補正係数KSTRを設定するSTRコントローラと、該STRコントローラで使用するパラメータを設定するパラメータ調整機構とからなる。
【0096】
本実施例における適応制御の調整則の一つに、ランダウらが提案したパラメータ調整則がある。この手法は、適応システムを線形ブロックと非線形ブロックとから構成される等価フィードバック系に変換し、非線形ブロックについては入出力に関するポポフの積分不等式が成立し、線形ブロックは強正実となるように調整則を決めることによって、適応システムの安定を保証する手法である。この手法は、例えば「コンピュートロール」(コロナ社刊)No.27,28頁〜41頁、ないしは「自動制御ハンドブック」(オーム社刊)703頁〜707頁に記載されているように、公知技術である。
【0097】
本実施例では、このランダウらの調整則を用いた。以下説明すると、ランダウらの調整則では、離散系の制御対象の伝達関数A(Z-1)/B(Z-1)の分母分子の多項式を数式2で▲1▼、▲2▼のようにおいたとき、適応パラメータθハット(k)及び適応パラメータ調整機構への入力ζ(k)は、数式2で▲3▼、▲4▼のように定められる。数式2では、m=1、n=1、d=3の場合、即ち1次系で3制御サイクル分の無駄時間を持つプラントを例にとった。ここで、kは時刻、より具体的には制御サイクルを示す。また、数式2において、u(k)及びy(k)は、本実施例では、それぞれKSTR(k)及びKACT(k)に対応する。
【0098】
【数2】
ここで、適応パラメータθハット(k)は、数式3で表される。また、数式3中のΓ(k)及びeアスタリスク(k)は、それぞれゲイン行列及び同定誤差信号であり、数式4及び数式5のような漸化式で表される。
【0099】
【数3】
【0100】
【数4】
【0101】
【数5】
また数式4中のλ1(k)、λ2(k)の選び方により、種々の具体的なアルゴリズムが与えられる。λ1(k)=1,λ2(k)=λ(0<λ<2)とすると漸減ゲインアルゴリズム(λ=1の場合、最小自乗法)、λ1(k)=λ1(0<λ1<1)、λ2(k)=λ2(0<λ2<2)とすると、可変ゲインアルゴリズム(λ2=1の場合、重み付き最小自乗法)、λ1(k)/λ2(k)=σとおき、λ3が数式6のように表されるとき、λ1(k)=λ3とおくと固定トレースアルゴリズムとなる。また、λ1(k)=1,λ2(k)=0のとき固定ゲインアルゴリズムとなる。この場合は数式4から明らかなように、Γ(k)=Γ(k−1)となり、よってΓ(k)=Γの固定値となる。
【0102】
【数6】
ここで、図16にあっては、前記STRコントローラ(適応制御器)と適応パラメータ調整機構とは燃料噴射量演算系の外におかれ、検出当量比KACT(k)が目標当量比KCMD(k−d’)(ここでd’はKCMDがKACTに反映されるまでの無駄時間)に適応的に一致するように動作して適応補正係数KSTR(k)を演算する。
【0103】
このように、適応補正係数KSTR(k)及び検出当量比KACT(k)が求められて適応パラメータ調整機構に入力され、そこで適応パラメータθハット(k)が算出されてSTRコントローラに入力される。STRコントローラには入力として目標当量比KCMD(k)が与えられ、検出当量比KACT(k)が目標当量比KCMD(k)に一致するように漸化式を用いて適応補正係数KSTR(k)が算出される。
【0104】
適応補正係数KSTR(k)は、具体的には数式7に示すように求められる。
【0105】
【数7】
なお、LAFセンサ17の応答特性が劣化した(応答遅れが大きくなった)ことを検出したときは、無駄時間の次数dを増加させたり、ゲイン行列Γをゲインのより小さい行列に変更することにより、適応パラメータの調整(同定)速度をより低くすることが望ましい。これにより、LAFセンサ17の応答特性が劣化したときにおいても、適応制御を継続し、排気ガス特性の悪化や運転性の低下を最小限に留めることができる。なお、LAFセンサ17の応答特性が劣化したときは、適応制御をPID制御に切り換えるようにしてもよい。
【0106】
次に上述のようにして算出するPID補正係数KLAFと適応補正係数KSTRとを切り換えて、すなわちPID制御と適応制御とを切り換えて、フィードバック補正係数KFBを算出する手法を説明する。
【0107】
図17は、図4のステップS9におけるフィードバック補正係数KFBの算出処理のフローチャートである。
【0108】
先ずステップS151では、図4の処理の前回実行時がオープンループ制御であったか(FKLAFRESET=1であったか)否かを判別し、オープンループ制御でなかったときは、目標当量比KCMDの変化量DKCMD(=|KCMD(k)−KCMD(k−1)|)が基準値DKCMDREFより大きいか否かを判別する。そして、前回がオープンループ制御だったとき又は、前回がフィードバック制御であり且つ変化量DKCMDが基準値DKCMDREFより大きいときは、PID補正係数KLAFによるフィードバック制御を実行すべき運転領域(以下「PID制御領域」という)と判定し、カウンタCを「0」にリセットするとともに(ステップS153)、ステップS164に進み、PID補正係数KLAF演算処理(図19(a))を実行する。
【0109】
図19(a)のステップS201では、前回の制御でSTRフラグFKSTRが「1」であったか否かを判別する。このSTRフラグFKSTRは、適応補正係数KSTRによるフィードバック制御を実行すべき運転領域(以下「適応制御領域」という)であることを「1」で示し、フィードバック補正係数算出後に設定される(ステップS204、図19(b)、ステップS213)。
【0110】
ステップS201で、前回はFKSTR=0であったときは直ちにステップS203に進み、前回はFKSTR=1であったときは、PID制御の積分項の前回値KALFI(k−1)を、適応補正係数の前回値KSTR(k−1)に設定して(ステップS202)、ステップS203に進む。ステップS203では、前述した図15の処理によりPID補正係数KLAFを算出し、次いでステップS204に進み、STRフラグFKSTRを「0」に設定して、図19(a)の処理を終了する。
【0111】
ここで、適応制御からPID制御への切換時(前回FKSTR=1のとき)は、PID制御の積分項KLAFIが急変する可能性があるため、ステップS202により、KLAFI(k−1)=KSTR(k−1)としている。これにより、適応補正係数KSTR(k−1)とPID補正係数KLAF(k)との差を小さくとどめ、切換を滑らかにして制御の安定性を確保することができる。
【0112】
図17にもどり、続くステップS165では、フィードバック補正係数KFBをステップS164で算出したPID補正係数KLAF(k)に設定して(ステップS165)、本処理を終了する。
【0113】
なお、前回がオープンループ制御であったときは、PID制御領域と判定するのは、例えばフュエルカット状態からの復帰時のような場合には、LAFセンサの検出遅れなどから、必ずしも検出値が真の値を示すとは限らないため、制御が不安定となる可能性があるからである。また、同様の理由で、目標当量比KCMDの変化量DKCMDが大きいとき、例えばスロットル全開増量状態から復帰したとき、リーンバーン制御から理論空燃比制御に復帰したとき等においてもPID制御領域と判定している。
【0114】
ステップS151及びS152の答がともに否定(NO)のとき、すなわち前回もフィードバック制御であり、かつ目標当量比KCMDの変化量DKCMDが基準値DKCMDREF以下のときは、カウンタCを「1」だけインクリメントして(ステップS154)、ステップS155でカウンタCの値を所定値CREF(例えば5)と比較する。ここで、カウンタCの値がCREF値以下の場合は前記ステップS164に進む。
【0115】
カウンタCの値がCREF値以下のときPID制御領域とするのは、オープンループ制御からの復帰直後や目標当量比KCMDが大きく変化した直後は、燃料の燃焼が完了するまでの遅れやLAFセンサの検出遅れの影響を吸収できないからである。
【0116】
次にステップS156に進み、適応制御領域か否かの判別処理(図18)を実行する。図18の処理は、現在のエンジン運転状態及びセンサ等が異常か否かに応じて、フィードバック補正係数KFBを、適応制御則にしたがって求めるか、PID制御則に従って求めるか判別するものである。
【0117】
すなわち、バルブタイミング切換の異常が検出されているか否かを判別し(ステップS172)、検出されていなければCYLセンサ又はTDCセンサの異常が検出されているか否かを判別し(ステップS173)、いずれのセンサの異常も検出されていなければ、適応制御が発散したか否かを判別する(ステップS174)。そして、ステップS172〜S174のいずれかの答が肯定(YES)のときは、PID制御領域と判定して(ステップS186)、本処理を終了する一方、ステップS172〜S174の答がすべて否定(NO)のときは、さらにステップS175〜S179の判別を行う。なお、適応制御が発散したか否かは、例えば適応補正係数KSTRの値が所定上下限値の範囲外となったか否かにより判別する。
【0118】
すなわち、エンジン水温TWが所定水温TWSTRONより低いか否かを判別し(ステップS175)、TW≧TWSTRONであるときは、エンジン回転数NEが所定回転数NESTRLMT以上であるか否かを判別し(ステップS176)、NE<NESTRLMTであるときは、現在のバルブタイミングが高速バルブタイミングか否かを判別し(ステップS177)、高速バルブタイミングでないときは、エンジンがアイドル状態か否かを判別する(ステップS178)。その結果、ステップS175〜S178のいずれかの答が肯定(YES)のときは、PID制御領域と判定して(ステップS186)、本処理を終了し、ステップS175〜S178の答がすべて否定(NO)のときは、ステップS179に進む。
【0119】
ステップS179では、スロットル弁開度センサ4の異常が検出されているか否かを判別し、異常が検出されていなければ直ちにステップS182に進む。また、スロットル弁開度センサの異常が検出されているときは、エンジン回転数NEに応じてPBTHFSテーブルを検索し、STR停止判定値PBTHFSを決定する(ステップS180)。ここで、PBTHFSテーブルは、図20に示すように、エンジン回転数NEが増加するほどPBTHFS値が低下するように設定されている。次いで、このPBTHFS値を低負荷判定値PBLOWとして(ステップS181)、ステップS182に進む。
【0120】
ステップS182では、吸気管内絶対圧PBAが低負荷判定値PBLOWより低い低負荷状態か否かを判別し、PBA<PBLOWであるときは、PID制御領域と判定して(ステップS186)本処理を終了する一方、PBA≧PBLOWであるときは、ステップS183に進む。
【0121】
ここで、低負荷判定値PBLOWは、スロットル弁開度センサの正常時は所定値に設定されており、異常時のみステップS180でエンジン回転数NEの応じて算出したSTR停止判定値PBTHFSに持ち換えられる。これは、スロットル弁開度センサの異常時は、スロットル弁開度θTHによってアイドル状態の判定を正確に行うことができない(スロットル弁開度センサの異常時は、前記ステップS178の答は常に否定(NO)となる)ので、吸気管内絶対圧PBAによりアイドル状態の判定を行うためである。
【0122】
なお、スロットル弁開度センサの異常検出時は、適応制御及びPID制御をともに禁止する(フラグFKLAFRESET=1とする)ようにしてもよく、その場合にはスロットル弁開度センサの異常が検出されていないときのみ、本処理が実行され、ステップS179の答は常に否定(NO)となる。
【0123】
ステップS183では、検出当量比KACTが所定値aより小さいか否かを判別し、所定値a以上のときは、検出当量比KACTが所定値b(>a)より大きいか否かを判別する(ステップS184)。そして、ステップS183又はS184の答が肯定(YES)のときは、PID制御領域と判定して(ステップS186)、本処理を終了する。また、ステップS183及びS184の答がともに否定(NO)のときは、適応制御領域と判定して(ステップS185)、本処理を終了する。
【0124】
ここで、PID制御領域と判定し、PID制御によりフィードバック補正係数KFBを算出することとした理由は以下の通りである。低水温時(TW<TWSTRON)は、燃焼が安定せず、失火などが生じるおそれがあり、安定した検出当量比KACTが得られないからである。なお、エンジン水温TWが異常に高いときも、同様の理由でPID制御によりフィードバック補正係数KFBを算出する。また、高回転時(NE≧NESTRLMT)は、ECUの演算時間が不足しがちであるとともに、燃焼も安定しないからである。また、高速バルブタイミング選択時は、吸排気弁がともに開弁しているオーバラップ期間が長いので、吸気がそのまま排気弁を通過して排出される、いわゆる吹き抜けが生じるおそれがあり、安定した検出当量比KACTを期待できないからである。また、エンジンのアイドル時は、運転状態がほぼ安定しており、適応制御のような高いゲインの制御は必要としないからである。
【0125】
また、検出当量比KACTが所定値aより小さいとき若しくは所定値bより大きいときは、エンジンの空燃比がリーン又はリッチのときであり、適応制御のような高いゲインの制御は行わない方がよいからである。この判別は、本実施例においては、検出当量比KACTで行ったが、目標当量比KCMDを用いて行ってもよい。
【0126】
図17に戻り、ステップS157では、図18の処理の結果から、フィードバック補正係数KFBを適応制御で算出するか否かを判別する。ステップS157の答が否定(NO)のときは、前記ステップS164に進み、ステップS157の答が肯定(YES)のときは、ステップS158に進み、前回STRフラグFKSTRが「0」であったか否かを判別する。
【0127】
その結果前回FKSTR=1であったときは、直ちにステップS161に進み、前回はFKSTR=0であったときは、検出当量比KACTが所定上下限値KACTLMTH(例えば1.01),KACTLMTL(例えば0.99の範囲内にあるか否かを判別し(ステップS159、S160)、KACT<KACTLMTL又はKACT>KACTLMTHであるときは、前記ステップS164に進んで、PID補正係数KLAFを算出する。また、KACTLMTL≦KACT≦KACTLMTHであるときは、ステップS161に進み、KSTR演算処理(図19(b))を実行する。
【0128】
ステップS158〜S160により、PID制御から適応制御への切換は、適応制御領域であって、且つ検出当量比KACTが1.0付近の値のときに行われる。これにより、PID制御から適応制御への切換を滑らかに行うことができ、制御の安定性を確保することができる。
【0129】
図19(b)のステップS210では、前回フラグKSTRが「0」であったか否かを判別する。その結果、前回はFKSTR=1であったときは、直ちにステップS212に進み、前述した手法により適応補正係数KSTRを算出し、次いでフラグFKSTRを「1」に設定して、図19(b)の処理を終了する。
【0130】
一方、前回はFKSTR=0であったときは、適応パラメータ(ゲインを決定するスカラ量)b0を、PID補正係数の前回値KLAF(k−1)で除算した値に置き換えて(ステップS211)、前記ステップS212に進む。
【0131】
ステップS211で、適応パラメータb0をb0/KLAF(k−1)に置き換えることにより、PID制御から適応制御への切換をより滑らかに行うことができ、制御の安定性を確保することができる。これは、以下のような理由による。前記数式7のb0をb0/KLAF(k−1)に置き換えると、数式8の第1式に示すようになるが、第1式の第1項は、PID制御実行中はKSTR(k)=1としているので、1となる。従って、適応制御開始当初のKSTR(k)値は、KLAF(k−1)に等しくなり、補正係数値が滑らかに切り換えられることになる。
【0132】
【数8】
図17に戻り、ステップS161で求めた適応補正係数KSTRの値と1.0との差の絶対値|KSTR(k)−1.0|が基準値KSTRREFより大きいか否かを判別し(ステップS162)、|KSTR(k)−1.0|>KSTRREFであるときは、前記ステップS164に進む一方、|KSTR(k)−1.0|≦KSTRREFであるときは、フィードバック補正係数KFBをKSTR(k)値に設定して(ステップS163)、本処理を終了する。
【0133】
ここで、適応補正係数KSTRと1.0との差の絶対値が基準値KSTRREFより大きいときは、PID制御領域とするのは、制御の安定性確保のためである。
【0134】
以上のように、図18の処理では、ステップS172〜S174、ステップS179〜S181により、センサ等の異常検出時は、フィードバック補正係数KFBをPID補正係数KLAFに設定するようにしたので、異常発生時においても、適応制御に比べて応答速度の遅い空燃比フィードバック制御が実行され、排気ガス特性や運転性の悪化を最小限に留めることができる。
【0135】
なお上述した実施例において、センサの異常検出は、例えばセンサ出力値が所定の上下限値の範囲外となったか否か、あるいはセンサ出力値が所定時間以上に亘って変化しないか否か等を判別することにより行う。また、LAFセンサ17のラベル抵抗は、その値が読みとれないとき異常と判定する。
【0136】
また、LAFセンサ17のストイキずれ(図14、ステップS125)は、例えば以下のようにして検出する。即ち、O2センサ18の出力が低レベルのときは、目標当量比KCMDを徐々に増加させ、O2センサ出力が高レベルのときは、目標当量比KCMDを徐々に減少させる制御を所定時間継続し、O2センサ出力の反転時における検出当量比KACTの平均値KACTAV(ただし、O2センサ出力の低レベルから高レベルへの反転時に得られるKACT値の数と、逆方向への反転時に得られるKACT値の数とが同じになるようにする)を算出する。そして、平均値KACTAVが所定上下限値の範囲外(例えば1.0±0.5の範囲外)となったとき、ストイキずれと判定する。
【0137】
また、LAFセンサ17の応答劣化の判定は、例えば以下のようにして行う。すなわち、フュエルカット実行開始時点からLAFセンサ出力が空燃比A/F=30に対応する値となるまでの時間TFCを計測し、LAFセンサの使用開始時に予め計測した基準時間TFCREFとTFC値との差が所定以上となったとき、応答劣化と判定する。
【0138】
また、バルブタイミング切換の異常は、例えばバルブタイミング切換機構の油圧と、ECU5から出力している切換指令信号と比較することにより判定する。
【0139】
【発明の効果】
以上詳述したように、請求項1に係る発明によれば、機関運転状態検出手段の出力に基づいて、空燃比センサの応答特性の劣化を含む機関又は制御装置の異常が検知され、検知した異常が空燃比センサの応答特性の劣化でないときには、フィードバック制御手段の作動が禁止される一方、検知した異常が空燃比センサの応答特性の劣化であるときには、適応パラメータの調整速度が低減されるので、可能な限りフィードバック制御を継続し、排気ガス特性の悪化や運転性の低下を最小限に留めることができる。
【図面の簡単な説明】
【図1】本発明の一実施例にかかる内燃機関及びその制御装置の構成を示す図である。
【図2】図1の一部の詳細な構成を示す図である。
【図3】本実施例における空燃比制御手法を説明するための機能ブロック図である。
【図4】LAFセンサ出力に基づいて空燃比補正係数を算出する処理のフローチャートである。
【図5】最終目標空燃比係数(KCMDM)算出処理のフローチャートである。
【図6】目標空燃比係数(KCMD)算出処理のフローチャートである。
【図7】TDC信号パルスとLAFセンサ出力との関係を示す図である。
【図8】LAFセンサ出力の最適なサンプリング時期を説明するための図である。
【図9】LAFセンサ出力選択処理を説明するための図である。
【図10】LAFセンサ出力選択処理のフローチャートである。
【図11】LAFセンサ出力選択用タイミングマップを示す図である。
【図12】図11のマップの設定傾向説明するための図である。
【図13】検出当量比(KACT)算出処理のフローチャートである。
【図14】LAFフィードバック領域判別処理のフローチャートである。
【図15】PID補正係数(KLAF)算出処理のフローチャートである。
【図16】適応補正係数(KSTR)の算出処理を説明するためのブロック図である。
【図17】フィードバック補正係数(KFB)の算出処理のフローチャートである。
【図18】適応制御領域を判別する処理のフローチャートである。
【図19】KLAF演算処理及びKSTR演算処理のフローチャートである。
【図20】異常判定基準値(PBTHFS)算出用のテーブルを示す図である。
【符号の説明】
1 内燃機関(本体)
2 吸気管
5 電子コントロールユニット(ECU)
12 燃料噴射弁
16 排気管
17 広域空燃比センサ
18 酸素濃度センサ
19、20 三元触媒
Claims (1)
- 内燃機関の排気系に設けられた空燃比センサを含み、前記機関の運転状態を検出する機関運転状態検出手段と、適応パラメータ調整機構を用い、前記空燃比センサの出力に基づいて適応パラメータを所定の制御サイクルで調整するとともに、前記適応パラメータが入力された漸化式形式の適応制御器を用い、前記空燃比センサの出力に基づいて、前記機関に供給する混合気の空燃比をフィードバック制御するフィードバック制御手段とを有する内燃機関の制御装置において、
前記機関運転状態検出手段の出力に基づいて、前記空燃比センサの応答特性の劣化を含む前記機関又は当該制御装置の異常を検知する異常検知手段と、
該異常検知手段により検知された異常が前記空燃比センサの応答特性の劣化でないときに、前記フィードバック制御手段の作動を禁止する異常処理手段と、
前記異常検知手段により検知された異常が前記空燃比センサの応答特性の劣化であるときに、前記適応パラメータの調整速度を低減する調整速度低減手段と、
を設けたことを特徴とする内燃機関の制御装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP06177695A JP3962100B2 (ja) | 1995-02-24 | 1995-02-24 | 内燃機関の制御装置 |
US08/602,115 US5619976A (en) | 1995-02-24 | 1996-02-23 | Control system employing controller of recurrence formula type for internal combustion engines |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP06177695A JP3962100B2 (ja) | 1995-02-24 | 1995-02-24 | 内燃機関の制御装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH08232726A JPH08232726A (ja) | 1996-09-10 |
JP3962100B2 true JP3962100B2 (ja) | 2007-08-22 |
Family
ID=13180845
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP06177695A Expired - Fee Related JP3962100B2 (ja) | 1995-02-24 | 1995-02-24 | 内燃機関の制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3962100B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102004051427A1 (de) * | 2004-10-22 | 2006-05-11 | Ina-Schaeffler Kg | Verfahren zum Betreiben einer Brennkraftmaschine |
JP4883000B2 (ja) * | 2007-12-25 | 2012-02-22 | トヨタ自動車株式会社 | 内燃機関の空燃比制御装置 |
AR091524A1 (es) * | 2012-06-20 | 2015-02-11 | Fisher Controls Int | Metodos y sistemas para respaldo de retroalimentacion de bucle menor |
-
1995
- 1995-02-24 JP JP06177695A patent/JP3962100B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH08232726A (ja) | 1996-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3581737B2 (ja) | 内燃機関の空燃比制御装置 | |
JP3841842B2 (ja) | 内燃機関の制御装置 | |
JP3765617B2 (ja) | 内燃機関の空燃比制御装置 | |
JP3729295B2 (ja) | 内燃機関の空燃比制御装置 | |
JP3683357B2 (ja) | 内燃機関の気筒別空燃比推定装置 | |
JP3372723B2 (ja) | 内燃機関の空燃比制御装置 | |
JP3683356B2 (ja) | 内燃機関の空燃比制御装置 | |
JP4430270B2 (ja) | プラントの制御装置及び内燃機関の空燃比制御装置 | |
JPH1073040A (ja) | 内燃機関の空燃比制御装置 | |
JP3683363B2 (ja) | 内燃機関の空燃比制御装置 | |
US5878733A (en) | Air-fuel ratio control system for internal combustion engines | |
JP3962100B2 (ja) | 内燃機関の制御装置 | |
JP3549144B2 (ja) | 内燃機関の空燃比制御装置 | |
JP3847304B2 (ja) | 内燃機関の空燃比制御装置 | |
JP3889410B2 (ja) | 内燃機関の空燃比制御装置 | |
JP3575708B2 (ja) | 内燃機関の空燃比制御装置 | |
JP2009264115A (ja) | 多気筒内燃機関の制御装置 | |
JPH08232731A (ja) | 内燃機関の制御装置 | |
JP4073563B2 (ja) | 内燃機関の制御装置 | |
JPH08232707A (ja) | 内燃機関の制御装置 | |
US5669368A (en) | Fuel metering control system for internal combustion engine | |
JP2754500B2 (ja) | 内燃エンジンの空燃比制御方法 | |
JP3535722B2 (ja) | 内燃機関の空燃比制御装置 | |
JP3634056B2 (ja) | 内燃機関の燃料噴射制御装置 | |
JP3743591B2 (ja) | 内燃機関の空燃比制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040330 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040528 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20040629 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040830 |
|
A911 | Transfer of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20040902 |
|
A912 | Removal of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20041015 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20060301 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070322 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070518 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110525 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110525 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130525 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130525 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140525 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |