以下、本発明に係る空燃比制御装置及びエンジン制御システムを具体化した一実施形態について図面を参照しつつ説明する。なお、本実施形態の装置も、先の特許文献1に記載の装置と同様、吸入空気と供給燃料との反応に基づく燃料燃焼によるエネルギーを機械的な運動(回転運動)へ変換するエンジンを始動する際に、同エンジンでの燃料燃焼に係る空気と燃料との比率である空燃比を制御する装置であり、詳しくは、対象エンジンの排気通路に設けられた排気浄化用の触媒を早期に活性化させるために用いられる。
はじめに、図1を参照して、本実施形態のエンジン制御システムの概略構成及びその動作について説明する。この図1は同システムの概要を示す構成図であり、図中の信号線は配線レイアウトに相当する。なお、このシステムの制御対象とするエンジン(図中のエンジン10)としては、2輪自動車用の単気筒エンジンを想定している。このエンジン10は、4ストロークのレシプロ式吸気ポート噴射エンジン(内燃機関)である。すなわちこのエンジン10では、唯一のシリンダ20について、吸入・圧縮・燃焼・排気の4行程による1燃焼サイクルが「720°CA」周期で逐次実行される。
同図1に示されるように、このシステムは、シリンダ20内での燃焼を通じて生成したトルクにより出力軸であるクランク軸10a(図示部分はクランク軸に装着されたパルサ歯車)を回転させるエンジン10を制御対象として、該エンジン10を制御するための各種センサ及びECU(電子制御ユニット)50等を有して構築されている。以下、制御対象のエンジン10をはじめとするこのシステムを構成する各要素について詳述する。
ここで制御対象とされるエンジン10は、火花点火式レシプロエンジンであり、基本的には、シリンダブロック20aとシリンダヘッド20bとによりシリンダ(気筒)20が形成されて構成されている。シリンダブロック20aには、冷却水がエンジン10内を循環するための冷却水路(ウォータジャケット)21aと、同水路21a内の冷却水の温度(冷却水温)を検出する水温センサ21bと、が設けられており、その冷却水によりエンジン10が冷却されている。また、シリンダ20内には、ピストン20cが収容され、そのピストン20cの往復動により、エンジン10の出力軸であるクランク軸10aが回転するようになっている。なお、クランク軸10aの外周側には、所定クランク角毎に(例えば30°CA周期で)クランク角信号を出力するクランク角センサ10b(例えば電磁ピックアップ)が配設され、同クランク軸10a(エンジン出力軸)の回転角度位置や回転速度(エンジン回転速度)等が検出可能とされている。
シリンダブロック20a上端面に固定されるシリンダヘッド20bと、シリンダ20内のピストン20c冠面との間には、燃焼室20dが形成されている。シリンダヘッド20bには、燃焼室20dに開口する吸気ポート(吸気口)と排気ポート(排気口)とが例えば1つのシリンダ20に対して2つずつ(計4ポート)形成されている。そして、これら吸気ポート及び排気ポートが、それぞれ図示しないカム(詳しくはクランク軸10aと連動するカム軸に取り付けられたカム)によって駆動される吸気弁(吸気バルブ)22aと排気弁(排気バルブ)22bとにより開閉されるようになっている。さらに、これら各ポートを通じてシリンダ20内の燃焼室20dと車外(外気)とを連通可能にすべく、吸気ポートには、シリンダ20に外気(新気)を吸入するための吸気管11が接続され、排気ポートには、シリンダ20から燃焼ガス(排気)を排出するための排気管31が接続されている。
エンジン10の吸気系を構成する吸気管11(吸気通路)の吸気管11最上流部には、外気を浄化して取り込むためのエアクリーナ12が設けられ、このエアクリーナ12には、吸気温度を検出するための吸気温センサ13が設けられている。さらに、このエアクリーナ12の下流側には、DCモータ等のアクチュエータによって電子的に開度調節される電子制御式のスロットル弁14(吸気絞り弁)と、このスロットル弁14の開度(スロットル弁開度)や動き(開度変動)を検出するためのスロットル開度センサ14aとが設けられている。また、スロットル弁14の下流側には、吸気管圧力を検出するための吸気管圧力センサ16が設けられている。
こうした吸気管11には、吸気ポート近傍にて燃料を噴射供給する電磁駆動式(又はピエゾ駆動式等)のインジェクタ17(燃料噴射弁)が取り付けられている。エンジン10では、このインジェクタ17により、吸気通路、特に吸気ポートに対して、燃料(ガソリン)が噴射供給(ポート噴射)されるようになっている。また、このインジェクタ17は、燃料配管43や燃料ポンプ42を介して、燃料タンク41に接続されている。すなわち、燃料ポンプ42により汲み上げられた燃料タンク41内の燃料が、燃料配管43を通じてインジェクタ17へ供給されるようになっている。そして、このインジェクタ17により噴射された燃料(厳密には吸入空気との混合気)に対して点火を行うことでその燃料を燃焼させるようにしている。そのために、シリンダ20のシリンダヘッド20bには、点火コイル等からなる点火装置25aを備えた点火プラグ25が取り付けられている。すなわち、このエンジン10において点火を行う際には、ECU50により、上記点火プラグ25に対して、所望の点火時期で高電圧が印加される。そして、この高電圧の印加により、各点火プラグ25の対向電極間に火花放電が発生し、この発生した火花放電によって、燃焼室20d内に導入された混合気が着火し、吸気と燃料との反応に基づき燃料が燃焼する。
他方、エンジン10の排気系を構成する排気管31には、排出ガス中のCO,HC,NOx等を浄化するための三元触媒からなる触媒32が設けられ、この触媒32の上流側には、シリンダ20から排出された排気を検出対象として混合気の空燃比を検出するための酸素濃度センサ32a(例えばリニア検出式のA/Fセンサ)が設けられている。
こうしたシステムの中で、本実施形態の空燃比制御装置として機能するとともに、電子制御ユニットとして主体的にエンジン制御を行う部分がECU50である。このECU50(エンジン制御用ECU)は、周知のマイクロコンピュータ(図示略)を備えて構成され、上記各種センサの検出信号に基づいてエンジン10の運転状態やユーザの要求を把握し、それに応じて上記スロットル弁14やインジェクタ17等の各種アクチュエータを操作することにより、その時々の状況に応じた最適な態様で上記エンジン10に係る各種の制御を行っている。例えばエンジン10の定常運転時には、上記各センサの検出信号に基づいて、各種の燃焼条件(例えば点火時期や、燃料噴射量、吸入空気量、ひいては空燃比等)を算出するとともに、各種アクチュエータを操作することで、上記シリンダ20内(燃焼室20d)での燃料燃焼を通じて生成される図示トルク(生成トルク)、ひいては実際に出力軸(クランク軸10a)へ出力される軸トルク(出力トルク)を制御する。また、上記酸素濃度センサ32aのセンサ出力とその目標値とを比較しつつ、例えばシリンダ20内での燃焼に供される燃料や空気を供給するインジェクタ17の噴射時間やスロットル弁14の開度などを可変制御することで、上記触媒32周辺の排気中の空燃比を理論空燃比に近づける(望ましくは一致させる)制御、いわゆる空燃比フィードバック制御を実行する。基本的には、空燃比リーン(>理論空燃比)の場合には燃料噴射量を増量制御する一方、空燃比リッチ(<理論空燃比)の場合には燃料噴射量を減量制御することで、その空燃比が理論空燃比近傍の所定範囲内に維持されるようになっている。
また、このECU50に搭載されるマイクロコンピュータは、基本的には、各種の演算を行うCPU(基本処理装置)、その演算途中のデータや演算結果等を一時的に記憶するメインメモリとしてのRAM(Random Access Memory)、プログラムメモリとしてのROM(読み出し専用記憶装置)、データ保存用メモリとしてのEEPROM(電気的に書換可能な不揮発性メモリ)やバックアップRAM(ECUの主電源停止後も車載バッテリ等のバックアップ電源により常時給電されているメモリ)、さらにはA/D変換器やクロック発生回路等の信号処理装置、外部との間で信号を入出力するための入出力ポート等といった各種の演算装置、記憶装置、信号処理装置、通信装置、及び電源回路等によって構成されている。そして、ROMには、当該空燃比制御に係るプログラムを含めたエンジン制御に係る各種のプログラムや制御マップ等が、またデータ保存用メモリ(例えばEEPROM)には、エンジン10の設計データをはじめとする各種の制御データ等が、それぞれ予め格納されている。
ところで、本実施形態の装置も、前述した特許文献1に記載の装置と同様、エンジン10始動直後の所定期間において、いわゆるディザを実行し、触媒32周囲(特に排気上流側)のガス成分を制御することにより同触媒32を加熱して、その早期活性化を図るものである。ただしこの装置では、単位期間あたりの平均空燃比を可変制御することにより、ディザ実行中のドライバビリティについてもこれを、良好に維持するようにしている。以下、図2〜図10を参照して、エンジン10始動直後の所定期間(詳しくは暖機中)に行われる燃料噴射制御に係る処理について説明する。なお、図2の処理において用いられる各種パラメータの値は、例えばECU50に搭載されたRAMやEEPROM、あるいはバックアップRAM等の記憶装置に随時記憶され、必要に応じて随時更新される。そして、これら各図の一連の処理は、基本的には、ECU50でROMに記憶されたプログラムが実行されることにより、例えば1燃焼サイクルにつき1回の頻度で実行される。この燃料噴射制御により、触媒32の早期活性化が図られるとともに、エンジン始動時のトルクも制御されることになる。本実施形態では、こうした制御(エンジン10に関する所定の制御)を行う部分(詳しくはECU50に搭載されるプログラム)が「エンジン制御手段」に相当する。
同図2に示すように、この一連の処理においては、まずステップS11,S12で、所定のパラメータ、すなわちその時のエンジン回転速度(クランク角センサ10bによる実測値)、及びその時の吸気管圧力(吸気管圧力センサ16による実測値)を読み込む。
続くステップS13では、エンジン10が始動されたか否かを判断する。詳しくは、エンジン10の始動は、イグニッションスイッチのオン/オフ動作に基づいて行われる。イグニッションスイッチは、点火スイッチと始動スイッチを兼ね、運転者のキー操作によりオン/オフ駆動されるものである。すなわち、運転者がイグニッションキーをキーシリンダに差し込んで回すと、1段目でステアリングロックが解除され、2段目でアクセサリー類、3段目で点火装置に電流が流れ、もう1段回すとスタータモータ(図示略)がクランク軸(エンジン10の出力軸)を回転させ(クランキングし)、エンジン10を始動する。「エンジンが始動された」とは、スタータモータの助力無しにエンジンが自力で運転する(出力軸を回転させる)ようになったことをいう。本実施形態では、このエンジンが始動されたか否かを、エンジン回転速度(クランク軸10aの回転速度)に基づいて判断するようにしている。図3に、この始動判定の一態様を示す。なお、同図3において、(a)はエンジン10が始動されたか否か示す始動判定フラグの内容(「0(未始動)」か「1(始動)」か)の推移を、(b)はエンジン回転速度の推移を、それぞれ示すタイミングチャートである。
同図3(b)に示されるように、この例でのエンジン回転速度は、その大きな傾向として、まずスタータモータによるクランキングの開始に伴って上昇し始め、所定の回転速度(この例では「2000rpm」)で極大点(ピーク)に到達して下降へ転じ、その後、所定の回転速度(この例では「1500rpm」)で下降が止まり、安定する、といった傾向を示す。この安定状態は、いわゆるアイドリング状態である。本実施形態では、図2のステップS13で、その時のエンジン回転速度と所定の閾値(この例では「1000rpm」)とを比較して、その時のエンジン回転速度が十分大きい(例えば閾値以上である)場合には、同図3(a)に示すように、エンジン10が始動されたとして、始動判定フラグに「ON」を設定する。他方、その時のエンジン回転速度が十分大きくない(例えば閾値未満である)場合には、同図3(a)に示すように、エンジン10が始動されていないとして、始動判定フラグを「OFF」状態のままにする。
図2の処理の説明に戻る。このステップS13でエンジン10が始動されていない旨判断された場合には、この一連の処理を終了するようにしている。そうすることで、エンジン10が始動された旨判断された場合にのみ、ステップS14以降の処理を実行するようにしている。
ステップS14では、エンジン10の暖機が完了したか否かを判断する。すなわち、上記エンジン10の水冷式冷却装置では、エンジン10から奪った熱で冷却水路(ウォータジャケット)21a内の冷却水が温まると、その冷却水が、ラジエタ(図示略)へ送られるとともに、そのラジエタ内において、所定の冷却ファンからの通風により冷やされるようになっている。そして、その冷やされた冷却水が、再びエンジン10に戻されることで、同エンジン10の継続的な冷却が可能とされている。ただし、エンジン始動直後はシステム全体が冷えているので、速やかに水温を上昇させるべく、ラジエタを通さず、エンジン10の冷却水路21a内だけで、冷却水を循環させるようにしている。具体的には、水温が規定温度(例えば「85℃」)以上になった場合にのみオンするように設定されたサーモスタット(図示略)によって、上記冷却水路21aとラジエタとの連通/遮断がオン/オフ制御されるようになっている。そしてこれにより、基本的には十分高温になった場合に限り、上述のエンジン冷却が行われるようになっている。本実施形態では、エンジン10の暖機が完了したか否かを、エンジン冷却水温(例えば水温センサ21bによる実測値)に基づいて判断するようにしている。図4に、この暖機判定の一態様を示す。なお、同図4において、(a)はエンジン10の暖機が完了したか否か示す暖機判定フラグの内容(「0(暖機未完)」か「1(暖機完了)」か)の推移を、(b)はエンジン冷却水温の推移を、それぞれ示すタイミングチャートである。
同図4(b)に示されるように、この例でのエンジン冷却水温は、その大きな傾向として、まずスタータモータによるクランキングの開始に伴って上昇し始め、所定の冷却水温(この例では「85〜90(℃)」)で安定する、といった傾向を示す。ちなみに、冷却水温の高温域では、上記ラジエタの冷却ファンがオン/オフ制御されることで、安定状態が維持されるようになっている。本実施形態では、図2のステップS14で、その時のエンジン冷却水温と所定の閾値(この例では「80℃」)とを比較して、その時のエンジン冷却水温が十分大きい(例えば閾値以上である)場合には、同図4(a)に示すように、エンジン10の暖機が完了したとして、暖機判定フラグに「ON」を設定する。他方、その時のエンジン冷却水温が十分大きくない(例えば閾値未満である)場合には、同図4(a)に示すように、エンジン10の暖機が完了していない(暖機中である)として、暖機判定フラグを「OFF」状態のままにする。
図2の処理の説明に戻る。このステップS14でエンジン10の暖機が完了した旨判断された場合にはステップS15を行わず続くステップS16へ進む(スキップする)。こうすることで、エンジン10の暖機が完了していない(暖機中である)旨判断された場合にのみ、同ステップS15で、モード検索を行うようにしている。そしてこの場合も、同ステップS15の処理を終えたら、ステップS16へ進むようになっている。図5に、ステップS15の処理として行われるモード検索の処理内容をフローチャートとして示す。
同図5に示されるように、このモード検索に際しては、まずステップS21で、その時のエンジン冷却水温THW(例えば水温センサ21bによる実測値)を検出する(厳密には検出値を読み込む)。そして、その冷却水温THWの大きさに基づいて、モード検索を行う。
詳しくは、ステップS22で、上記ステップS21で取得された冷却水温THWと所定の閾値α(例えば「30℃」)とを比較する(詳しくは大小の判断を行う)。そして、このステップS22で冷却水温THWが閾値α以下である(THW≦α)旨判断された場合には、続くステップS241で、その時のモードとして「モードA」を取得する。他方、同ステップS22で冷却水温THWが閾値αよりも大きい(THW>α)旨判断された場合には、続くステップS23で、上記冷却水温THWと所定の閾値β(例えば「60℃」)とを比較する(詳しくは大小の判断を行う)。そして、このステップS23で冷却水温THWが閾値β以下である(すなわち「α<THW≦β」である)旨判断された場合には、続くステップS242で、その時のモードとして「モードB」を取得するとともに、同ステップS23で冷却水温THWが閾値β以下ではない(すなわち「THW>β」である)旨判断された場合には、続くステップS243で、その時のモードとして「モードC」を取得する。なお、ここで取得したモードは、例えばRAM又はEEPROM等の適宜の記憶装置に格納しておく。
ここまでに、図2のステップS14の処理(図4)及びステップS15の処理(図5)について、その詳細を説明した。そして前述のように、図2の一連の処理では、ステップS14に続いて、又はステップS15に続いて、ステップS16の処理が行われる。このステップS16では、その時のエンジン運転状態(例えばエンジン回転速度及び吸気管圧力)に基づいて、基本燃料噴射量TPを算出する。詳しくは、所定のマップ(例えばROM等に記憶、数式でも可)を用いて取得する。このマップとしては、例えばエンジン回転速度及び吸気管圧力の各々についてその大きさに応じた(最適な)上記基本燃料噴射量TPの適合値(最適値)が予め実験等により書き込まれたものを用いることができる。
そして、続くステップS17で、上記ステップS16で算出した基本燃料噴射量TPに基づいて最終燃料噴射量TAUを算出して、この一連の処理を終了する。本実施形態では、この最終燃料噴射量TAUに基づいて上記インジェクタ17に対する指令値(主に同インジェクタ17の通電時間に係る指令値)を生成するとともに、この指令値に基づいて同インジェクタ17の駆動を制御することにより、上記最終燃料噴射量TAUに見合った燃料を噴射供給するようにしている。
図6に、最終燃料噴射量TAUの算出態様、すなわち上記図2のステップS17の処理内容を、フローチャートとして示す。
同図6に示されるように、このモード検索に際しては、まずステップS31で、前述した図2のステップS14の処理と同様の処理を行って、エンジン10の暖機が完了したか否かを判断する。そして、このステップS31でエンジン10の暖機が完了していない旨判断された場合には、続くステップS32において、先の図2のステップS15で取得したモードが、先のモードA〜Cのうち、どのモードであったかを判別し、続くステップS331〜S333において、その判別したモードに応じた態様で、噴射量の補正係数FMODEを算出する。ここで、補正係数FMODEの算出態様は、モードごと、すなわちステップS331〜S333で異なる。図7〜図9に、先の図2のステップS15で取得したモードがモードA〜Cである場合の補正係数FMODEの算出態様を、それぞれフローチャートとして示す。まず図7を参照して、先の図2のステップS15で取得したモードがモードAである場合の、補正係数FMODEの算出態様について説明する。
同図7に示すように、この場合の算出処理に際しては、まずステップS41で、カウンタn(初期値は「0」)を読み込み、続くステップS42で、そのカウンタnの値を確認する。そして、このカウンタnが「0」又は「1」である場合には、続くステップS421で、補正係数FMODEに「1.05」(リッチ側空燃比に相当)を設定する。他方、このカウンタnが「2」である場合には、続くステップS422で、補正係数FMODEに「0.95」(リーン側空燃比に相当)を設定する。
次に、これらステップS421又はS422に続くステップS43で、カウンタnをインクリメントする(n=n+1)。さらに続くステップS44では、カウンタnが「3」である(n=3)か否かを判断する。そして、このステップS44でカウンタnが「3」である旨判断された場合には、続くステップS45でカウンタnに「0」を設定(カウンタリセット)し、他方、同ステップS44でカウンタnが「3」ではない旨判断された場合には、カウンタnの値はそのままで、この図7の一連の処理を終了する。なお、この図7の処理は、1燃焼サイクルにつき1回の頻度、すなわち1回の噴射(メイン噴射)につき1回の頻度で実行されるため、カウンタnは噴射の都度、ステップS43でインクリメントされることになる。このため、先の図2のステップS15でモードAが取得されている間、すなわち冷却水温THWが閾値α(例えば「30℃」)以下である間は、リッチ側空燃比を「R」、リーン側空燃比を「L」とした場合、3回の噴射(メイン噴射)を1周期として、「RRL」なる空燃比パターンで、繰り返し空燃比を制御する。
続けて、図8を参照して、先の図2のステップS15で取得したモードがモードBである場合の、補正係数FMODEの算出態様について説明する。
同図8に示すように、この場合の算出処理に際しては、まずステップS51で、カウンタn(初期値は「0」)を読み込み、続くステップS52で、そのカウンタnの値を確認する。そして、このカウンタnが「0」又は「1」又は「3」である場合には、続くステップS521で、補正係数FMODEに「1.05」(リッチ側空燃比に相当)を設定する。他方、このカウンタnが「2」又は「4」である場合には、続くステップS522で、補正係数FMODEに「0.95」(リーン側空燃比に相当)を設定する。
次に、これらステップS521又はS522に続くステップS53で、カウンタnをインクリメントする(n=n+1)。さらに続くステップS54では、カウンタnが「5」である(n=5)か否かを判断する。そして、このステップS54でカウンタnが「5」である旨判断された場合には、続くステップS55でカウンタnに「0」を設定(カウンタリセット)して、他方、同ステップS54でカウンタnが「5」ではない旨判断された場合には、カウンタnの値はそのままで、この図8の一連の処理を終了する。こうして、この図8の処理により、先の図2のステップS15でモードBが取得されている間、すなわち冷却水温THWが閾値α(例えば「30℃」)よりも高くて且つ閾値β(例えば「60℃」)以下である間は、リッチ側空燃比を「R」、リーン側空燃比を「L」とした場合、5回の噴射(メイン噴射)を1周期として、「RRLRL」なる空燃比パターンで、繰り返し空燃比を制御する。
続けて、図9を参照して、先の図2のステップS15で取得したモードがモードCである場合の、補正係数FMODEの算出態様について説明する。
同図9に示すように、この場合の算出処理に際しては、まずステップS61で、カウンタn(初期値は「0」)を読み込み、続くステップS62で、そのカウンタnの値を確認する。そして、このカウンタnが「0」である場合には、続くステップS621で、補正係数FMODEに「1.05」(リッチ側空燃比に相当)を設定する。また一方、このカウンタnが「1」である場合には、続くステップS622で、補正係数FMODEに「1.00」(基準空燃比に相当)を設定する。他方、このカウンタnが「2」である場合には、続くステップS623で、補正係数FMODEに「0.95」(リーン側空燃比に相当)を設定する。
次に、これらステップS621〜S623に続くステップS63で、カウンタnをインクリメントする(n=n+1)。さらに続くステップS64では、カウンタnが「3」である(n=3)か否かを判断する。そして、このステップS64でカウンタnが「3」である旨判断された場合には、続くステップS65でカウンタnに「0」を設定(カウンタリセット)して、他方、同ステップS64でカウンタnが「3」ではない旨判断された場合には、カウンタnの値はそのままで、この図9の一連の処理を終了する。こうして、この図9の処理により、先の図2のステップS15でモードCが取得されている間、すなわち冷却水温THWが閾値β(例えば「60℃」)よりも高い間は、基準空燃比を「S」、リッチ側空燃比を「R」、リーン側空燃比を「L」とした場合、3回の噴射(メイン噴射)を1周期として、「RSL」なる空燃比パターンで、繰り返し空燃比を制御する。
図10は、これら3種類の算出態様による空燃比パターンを示す図表である。なお、図10において、(a)は噴射番号(噴射回数に相当)、(b)は図7の算出態様による空燃比パターン、(c)は図8の算出態様による空燃比パターン、(d)は図9の算出態様による空燃比パターン、をそれぞれ示す図表である。
同図10(b)〜(d)に示すように、いずれの空燃比パターンも、所定の基準空燃比(S)よりもリッチ側の空燃比(R)をその期間内の制御目標値とする第1期間(Rの期間)と、同基準空燃比(S)よりもリーン側の空燃比(L)をその期間内の制御目標値とする第2期間(Lの期間)とを、連続的に(図10(b)及び図10(c))又は基準空燃比(S)を介して(図10(d))、交互に繰り返すようになっている。より具体的には、モードAの場合には「RRL」なる空燃比パターンを、モードBの場合には「RRLRL」なる空燃比パターンを、モードCの場合には「RSL」なる空燃比パターンを、それぞれ単位パターンとして空燃比を制御するようになっている。すなわちいずれの場合も、所定の単位パターンを繰り返すことで、空燃比を制御している。これら空燃比パターンは、リッチ側空燃比の単位期間とリーン側空燃比の単位期間と(いずれの単位期間も1燃焼サイクルに相当)の割合(所定期間あたりの数)が異なることから、所定期間(各パターンの1周期)の平均空燃比についてもこれが異なるものとなっている。
先の図6のステップS331〜S333では、このような処理が行われる。次いで、続くステップS34では、これらステップS331〜S333のうちの1つで算出した補正係数FMODEに基づいて、最終燃料噴射量TAUを算出する。詳しくは、「TAU=TP×FTOTAL×FMODE+TV」なる計算式に基づいて最終燃料噴射量TAUを算出する。なおこの式中、TPは基本燃料噴射量(図2のステップS16にて算出)、TVはインジェクタ17の無効噴射時間に関する補正係数である。また、FTOTALは、時々の各種パラメータ、例えばエンジン運転状態や、外気温度、エンジン冷却水温、燃料圧力、空燃比等に基づいて、総合的に最適な値として設定(マップや数式等により設定)される補正係数である。本実施形態では、エンジン10の暖機中に「FMODE=1」が成立している間は、触媒32周辺(特に排気上流側)の排気中の空燃比が理論空燃比になるように、補正係数FTOTALの値が設定される。すなわち、前述した各空燃比パターンにおいては、基準空燃比(S)が理論空燃比に、リッチ側空燃比(R)が理論空燃比よりもリッチ側の(燃料比率の高い)空燃比(リッチ空燃比)に、リーン側空燃比(L)が理論空燃比よりもリーン側の(燃料比率の低い)空燃比(リーン空燃比)に、それぞれ相当する。
他方、先のステップS31でエンジン10の暖機が完了した旨判断された場合には、続くステップS334で、補正係数FMODEに「1.00」を設定して、上記ステップS34に進み、この補正係数FMODE(=「1」)に基づいて、最終燃料噴射量TAUを算出する。
エンジン10の暖機完了前(暖機中)も暖機完了後も、上記ステップS34で最終燃料噴射量TAUを算出した後は、図6の一連の処理、ひいては図2の一連の処理を終了する。こうして、上記図2の処理を所定処理間隔で逐次実行することで、暖機完了前は、前述した所定の空燃比パターン(図10(b)〜(d))によって、また暖機完了後は、主に上記補正係数FTOTAL(ステップS34)によって、それぞれ空燃比制御を行うようにする。
すなわち、暖機完了前においては、始動からの経過時間が長くなるにつれ、すなわち暖機が進む(エンジン冷却水温が高くなる)につれ、空燃比制御に用いる空燃比パターンが、図10(b)のパターンから、図10(c)のパターン、図10(d)のパターンへと順に(段階的に)移行していくことになる。そしてこれにより、各空燃比パターンの平均空燃比(詳しくは各パターンの1周期の平均空燃比)についてもこれが、開始空燃比としてのリッチ空燃比(図10(b)のパターン)から、段階的に、目標空燃比としての理論空燃比(図10(d)のパターン)へ近づいてゆくことになる。
以上説明したように、本実施形態に係る空燃比制御装置及びエンジン制御システムによれば、以下のような優れた効果が得られるようになる。
(1)吸入空気と供給燃料との反応に基づく燃料燃焼によるエネルギーを機械的な運動(回転運動)へ変換するエンジン10を始動する際に、同エンジン10での燃料燃焼に係る空気量と燃料量との比率である空燃比を制御する。より詳しくは、上記インジェクタ17による燃料噴射量を制御する。こうした空燃比制御装置(エンジン制御用ECU50)として、エンジン始動後の所定期間である始動運転期間(エンジン始動初期の暖機中)においては、所定の基準空燃比(理論空燃比)よりもリッチ側の(燃料比率の高い)空燃比をその期間内の制御目標値とする第1期間(Rの期間)と、同基準空燃比よりもリーン側の(燃料比率の低い)空燃比をその期間内の制御目標値とする第2期間(Lの期間)とを、連続的に又は基準空燃比(S)を介して、交互に繰り返しながら(図10(b)〜(d)参照)、それら第1期間及び第2期間を含む所定の期間(各パターンの1周期)についての平均空燃比を可変制御するプログラム(空燃比制御手段、図6)を備える構成とした。こうすることで、エンジン10での燃料燃焼に係る空燃比を制御する際に、リッチ側の空燃比とリーン側の空燃比とを交互に繰り返す制御(いわゆるディザ)を行いつつ、所定期間の平均空燃比を可変制御することが可能になり、ひいては時々の状況に応じて平均空燃比として最適な空燃比を設定することが可能になる。すなわち、リッチ側の空燃比とリーン側の空燃比とを交互に繰り返しつつ、ドライバビリティ(運転性)についてもこれを良好に維持することができるようになる。
(2)図6の処理においては、各空燃比パターンの平均空燃比を、理論空燃比よりもリッチ側の所定の空燃比(開始空燃比)から、よりリーン側の空燃比(目標空燃比)へ、段階的に移行させるようにした。こうすることで、良好なドライバビリティ(運転性)を好適に維持することが可能になる。
(3)上記第1期間及び第2期間の長さを、噴射回数によって設定するようにした。こうすることで、容易且つ適切に各期間の長さが設定されることになる。
(4)始動運転期間を、エンジン回転速度(図2のステップS13)及びエンジン冷却水温(図2のステップS14)に基づいて設定するようにした。こうすることで、容易且つ適切にその期間が設定されることになる。
(5)この際、目標空燃比を理論空燃比とした。このように、始動時にリッチ空燃比から徐々に理論空燃比へ空燃比を移行させることで、良好なドライバビリティ(運転性)が得られるようになる。
(6)図6の処理においては、エンジン10の燃焼行程後に排気の排出される排気通路(排気管31)に、排気を浄化するための触媒32が設けられているシステムについて、同触媒32の活性化を促すために空燃比を制御する(ディザを実行する)ようにした。こうすることで、良好なドライバビリティ(運転性)を維持しつつ、触媒32の早期活性化を図ることが可能になる。
(7)触媒32周辺の温度を示すパラメータ(詳しくはエンジン本体温度を示すエンジン冷却水温)の値に応じて、上記平均空燃比を可変制御する(空燃比パターンを切り替える)ようにした。こうすることで、触媒活性化とドライバビリティ(運転性)との両立がより容易且つ的確に図られるようになる。
(8)図6の処理においては、平均空燃比の各異なる複数種の空燃比パターン(図10(b)〜(d))を切り替えることによって、上記平均空燃比を可変とするようにした。こうすることで、第1期間と第2期間とを交互に繰り返しながら平均空燃比の可変制御についてもこれを容易に行うことが可能になる。
(9)複数種の空燃比パターン(図10(b)〜(d))をそれぞれ、基準空燃比、及び、基準空燃比よりもリッチ側のリッチ側空燃比、及び、基準空燃比よりもリーン側のリーン側空燃比、を各期間内の制御目標値とする3種の単位期間(S,R,Lの単位期間)の、2種以上による組み合わせで構成され、その組み合わせ方の相違によって互いに異なる平均空燃比となっているものとした。こうした空燃比パターンであれば、リッチ側空燃比の単位期間とリーン側空燃比の単位期間との割合を変えるだけで、容易に平均空燃比の異なる複数種の空燃比パターン(ディザパターン)を実現することが可能になる。
(10)複数種の空燃比パターンの中に、リッチ側空燃比(R)、基準空燃比(S)、リーン側空燃比(L)の順に各空燃比による単位期間が連続する期間を有する空燃比パターン(図10(d))が含まれている構成とした。このように、リッチ側空燃比の単位期間とリーン側空燃比の単位期間との間に基準空燃比の単位時間を挟むことで、トルクの急激な変動を緩和することが可能になり、ひいてはより良好なドライバビリティ(運転性)が得られるようになる。
(11)空燃比パターン(図10(b)〜(d))として、単位パターンが繰り返されるものを用いることとした。こうすることで、制御を簡易にすることができる。
(12)当該ECU50(空燃比制御装置)を、ただ1つのシリンダで前記燃料燃焼を行う単気筒エンジンに適用した。上述の空燃比制御を行うことで、こうした単気筒エンジンにおいても、良好な始動特性が得られるようになる。
(13)上記各プログラムと共に、インジェクタ17の作動に基づいて、エンジン10に関する所定の制御(例えばエンジン出力軸のトルク制御など)を行うプログラム(エンジン制御手段)を、上記ECU50に搭載して、エンジン制御システムとして、このECU50の他に、上記各種プログラムにより駆動量を制御されてエンジン10での燃料燃焼に係る燃料量を可変とするインジェクタ17(アクチュエータ)をさらに備える構成とした。こうした構成では、上述のようにドライバビリティ(運転性)が改善されることで、より信頼性の高いエンジン制御を行うことが可能になる。特にこのシステムを2輪自動車(オートバイ等)に搭載した場合には、従来よりも格段に始動特性の優れる2輪自動車が実現可能になる。
なお、上記実施形態は、以下のように変更して実施してもよい。
・上記実施形態では、図10に例示した空燃比パターンに従って空燃比制御を行うようにした。しかし、空燃比パターンとしては、図10に示したものに限られない任意のパターンを採用することができる。
例えば上記実施形態では、第1期間(Rの期間)及び第2期間(Lの期間)を空燃比一定の期間としたが、これらを空燃比の異なる複数種の期間の組み合わせからなる期間としてもよい。具体的には、例えば先の図8の処理に代えて、図11(図8に対応するフローチャート)に示す処理を行うようにする。
すなわち同図11に示すように、この例では、まずステップS71で、カウンタn(初期値は「0」)を読み込み、続くステップS72で、そのカウンタnの値を確認する。そして、このカウンタnが「0」又は「3」である場合には、続くステップS721で、補正係数FMODEに「1.05」(第1のリッチ側空燃比に相当)を設定する。また一方、このカウンタnが「1」である場合には、続くステップS722で、補正係数FMODEに「1.10」(第2のリッチ側空燃比に相当)を設定する。他方、このカウンタnが「2」又は「4」である場合には、続くステップS723で、補正係数FMODEに「0.95」(リーン側空燃比に相当)を設定する。続くステップS73〜S75の処理は、前述したステップS53〜S55の処理に準ずるものであるため、ここでは説明を割愛する。すなわち、この例では、第1のリッチ側空燃比を「R1」、第2のリッチ側空燃比を「R2」、リーン側空燃比を「L」とした場合、5回の噴射(メイン噴射)を1周期として、「R1R2LR1L」なる空燃比パターンで、繰り返し空燃比を制御する。
このように、目標空燃比の種類を増やすことで、より精密に空燃比を制御することが可能になる。例えばリーン側空燃比で失火が生じないように、リーン側空燃比を制御目標値に設定する前には少し余分に燃料を供給する、あるいはリーン側空燃比の後は燃料濃度が薄くなっているため、リーン側空燃比を制御目標値に設定した後には少し余分に燃料を供給する、等々のパターンも容易に実現することができる。ただし、制御の複雑化を避ける上では、空燃比パターンの過剰な複雑化は好ましくない。また、燃料不足による失火を避ける上では、2回以上の噴射について連続してリーン側空燃比に設定することは好ましくないため、そうした連続はなるべく避けるなどの配慮も重要である。
また、上記実施形態では、リッチ側空燃比(R)、基準空燃比(S)、リーン側空燃比(L)の順に各空燃比による単位期間が連続する期間を有する空燃比パターン(図10(d)のパターン)を採用した。しかし、リーン側空燃比(L)からリッチ側空燃比(R)への移行に際してその間に基準空燃比(S)を挟むようにした場合、すなわちリーン側空燃比(L)、基準空燃比(S)、リッチ側空燃比(R)の順に各空燃比による単位期間が連続する期間を有する空燃比パターンでも、トルクの急激な変動を緩和する効果は奏されることになる。ただし通常、トルクの急激な変動は、リッチ側空燃比(R)からリーン側空燃比(L)への移行に際して特に問題になる。
・上記実施形態では、リッチ側空燃比及びリーン側空燃比を固定値(「1.05」及び「0.95」)とした。しかし、これらの空燃比は可変値としてもよい。例えばエンジン始動からの経過時間を示すパラメータ(例えば噴射回数やエンジン出力軸の回転速度等)と、触媒32自体又はその触媒32周辺の温度を示すパラメータ(例えば触媒床温やエンジン本体温度等)と、の少なくとも1つのパラメータの値に応じて、上述の各空燃比パターンにおけるリッチ側空燃比又はリーン側空燃比の値(例えば補正係数FMODE)を可変制御する構成が有効である。
そして、このように空燃比パターンの内容を変更する構成とすれば、複数種の空燃比パターンを用意してそれらパターンの切替を行わずとも、上述の平均空燃比を可変とすることが可能になる。具体的には、例えば2回の噴射を1周期として、「RL」なる空燃比パターンで繰り返し空燃比を制御する場合、図12中に実線L11a,L11bにて示すように、リッチ側空燃比(R)及びリーン側空燃比(L)の空燃比を決める補正係数FMODE(図6のステップS34)を、それぞれ噴射回数が増えるほど「1」に近づけるように可変設定する。例えばリッチ側空燃比(R)の補正係数FMODEを「1.10」から「1.00」へ噴射ごとに変化(徐変)させる(実線L11a)とともに、例えばリーン側空燃比(L)の補正係数FMODEを「0.90」から「1.00」へ噴射ごとに変化(徐変)させる(実線L11b)。あるいは図13中に実線L12a,L12bにて示すように、噴射ごとには(1回の噴射では)変化させずに、所定複数回の噴射が行われるごとに、それらリッチ側空燃比(R)及びリーン側空燃比(L)の各補正係数FMODEを変化させるようにしてもよい。これらの構成によれば、パターンの切替を行わずに、平均空燃比を可変制御することが可能になる。
・上記実施形態では、触媒32周辺の温度を示すパラメータ(詳しくはエンジン本体温度を示すエンジン冷却水温)の値に応じて、空燃比パターンを切り替えるようにした。しかしこれに限られず、エンジン始動からの経過時間を示すパラメータの値に応じて、空燃比パターンを切り替えるようにしてもよい。具体的には、例えばモード検索に際して、先の図5の処理に代えて、図14(図5に対応するフローチャート)に示す処理を行うようにする。
すなわち同図14に示されるように、このモード検索に際しては、まずステップS81で、その時点でのエンジン始動からの経過時間TSTART(例えば適宜の計時プログラムにて逐次計測される時間)を読み込む。そして、その経過時間TSTARTの大きさに基づいて、モード検索を行う。
詳しくは、ステップS821で、上記ステップS81で取得された経過時間TSTARTと所定の閾値γ(例えば「2min」)とを比較する(詳しくは大小の判断を行う)。そして、このステップS821で経過時間TSTARTが閾値γ以下である(TSTART≦γ)旨判断された場合には、続くステップS831で、その時のモードとして「モードA」を取得する。
また一方、同ステップS821で経過時間TSTARTが閾値γよりも大きい(TSTART>γ)旨判断された場合には、続くステップS822で、上記経過時間TSTARTと所定の閾値σ(例えば「5min」)とを比較する。そして、このステップS822で経過時間TSTARTが閾値σ以下である(すなわち「γ<TSTART≦σ」である)旨判断された場合には、続くステップS832で、その時のモードとして「モードB」を取得する。
また、同ステップS822で経過時間TSTARTが閾値σ以下ではない(TSTART>σ)旨判断された場合には、続くステップS823で、上記経過時間TSTARTと所定の閾値η(例えば「10min」)とを比較する。そして、このステップS823で経過時間TSTARTが閾値η以下である(すなわち「σ<TSTART≦η」である)旨判断された場合には、続くステップS833で、その時のモードとして「モードC」を取得する。
また、同ステップS823で経過時間TSTARTが閾値η以下ではない(TSTART>η)旨判断された場合には、続くステップS824で、上記経過時間TSTARTと所定の閾値ξ(例えば「20min」)とを比較する。そして、このステップS824で経過時間TSTARTが閾値ξ以下である(すなわち「η<TSTART≦ξ」である)旨判断された場合には、続くステップS834で、その時のモードとして「モードD」を取得する。他方、同ステップS824で経過時間TSTARTが閾値ξ以下ではない(TSTART>ξ)旨判断された場合には、経過時間TSTARTが閾値ξよりも大きい(ξ<TSTART)として、続くステップS835で、その時のモードとして「モードE」を取得する。
このように、エンジン始動からの経過時間を示すパラメータの値に応じて、空燃比パターンを切り替えるようにした場合にも、触媒活性化とドライバビリティ(運転性)との両立がより容易且つ的確に図られるようになる。
・さらに、上記図14の処理で用いられる判定値γ,σ,η,ξを所定パラメータ(例えばエンジン始動時の状況を示すパラメータ)に応じて可変設定することも可能である。例えばイグニッションスイッチがオンされたことをトリガにして、図15の一連の処理を1度だけ実行することで、上記判定値γ,σ,η,ξをその時の状況に応じた値に設定することができる。
すなわち同図15に示すように、この例では、まずステップS91で、その時のエンジン冷却水温THW(例えば水温センサ21bによる実測値)を検出する(厳密には検出値を読み込む)。そして、続くステップS92で、その冷却水温THWの大きさに基づいて、上記判定値γ,σ,η,ξの値を設定する。ここで、これら判定値γ,σ,η,ξの設定態様としては、例えば図16に示す態様又は図17に示す態様等を採用することが有効である。なお、図16中の実線L21a,L21b,L21c,L21d、及び図17中の実線L22a,L22b,L22c,L22dは、それぞれ上記判定値γ,σ,η,ξの値とエンジン冷却水温との関係を示す実線に相当する。これら各図に示す例は、どちらの場合も、エンジン冷却水温が高いほどより早い段階(より短い経過時間TSTART)でモードEの方へ移行させるような判定値が設定されるようになっている。ただし、図17に示す例では、エンジン冷却水温が高ければ、初期のモード(例えばモードA)をスキップして、初めから後ろのモード(例えばモードBやモードC)を取得(認識)することで、エンジン始動時の状況に対してより柔軟に対応することができるようになっている。
・また、上記図14に示した例のように、5種類の空燃比パターンを用いる場合には、例えば図18(b)〜(f)に示すような5種類の空燃比パターンが有効である。なお、この図18は、図10に対応する図表である。すなわちこの図18においても、(a)は噴射番号(噴射回数に相当)を示している。
同図18(b)〜(d)に示すように、モードA〜Cのパターンは、上記実施形態と同様である。一方、モードDのパターンは、図18(e)に示すように、「RSLRL」なる空燃比パターンを、またモードEのパターンは、図18(f)に示すように、「RL」なる空燃比パターンを、それぞれ単位パターンとして空燃比を制御するようになっている。こうした空燃比パターンを採用することで、空燃比パターンは、エンジン始動からの時間の経過と共に、図18(b)のパターンから、図18(c)、図18(d)、図18(e)、図18(f)と順に(ただし必要があれば適宜にスキップして)移行していくことになる。ここで、図18(d)〜(f)は、いずれも各パターンの1周期の平均空燃比が基準空燃比(理論空燃比)となっている。ただし、図18(d)のパターンよりも図18(e)のパターンの方が、また図18(e)のパターンよりも図18(f)のパターンの方が、基準空燃比による単位期間の割合が少なくなっている。このように、図18に示す空燃比パターンでは、エンジン始動からの経過時間が長くなるほど、すなわちエンジントルクが安定するほど、基準空燃比による単位期間を減らすことで、触媒32の活性化をより促進するようにしている。
・基準空燃比(S)を理論空燃比に設定することは必須の要件ではない。基準空燃比(S)には、用途等に応じて任意の空燃比を設定することができる。
・制御対象とするエンジンの種類(筒内噴射式のガソリンエンジンや圧縮着火式のディーゼルエンジン等も含む)やシステム構成も、用途等に応じて適宜に変更可能である。例えば対象エンジンは、単気筒エンジンに限られず、多気筒エンジンに対しても、本発明は適用可能である。そして、上記実施形態についてこうした構成の変更を行う場合には、上述した各種の処理(プログラム)についても、その細部を、実際の構成に応じて適宜最適なかたちに変更(設計変更)することが好ましい。
・上記実施形態及び変形例では、各種のソフトウェア(プログラム)を用いることを想定したが、専用回路等のハードウェアで同様の機能を実現するようにしてもよい。