(57)【要約】【課題】アルコール濃度を一層正確に推定することができる燃料のアルコール濃度推定装置を提供する。【解決手段】給油判定手段が、燃料貯蔵量検出手段の検出結果に基づいて燃料給油の有無を判定すると共に、閾値設定手段が、燃料給油が実施されていた場合に第１の閾値を判定閾値として設定し、燃料給油が実施されていない場合に第１の閾値よりも大きい第２の閾値を判定閾値として設定し、補正値変化度合演算手段によって演算された排気空燃比に基づくフィードバック補正値の変化度合の絶対値が判定閾値よりも大きい場合に、濃度推定値更新手段が、フィードバック補正値の変化度合に基づいて燃料のアルコール濃度推定値を更新する。【選択図】図５
2010090792.tif 000002
【特許請求の範囲】
【請求項１】
アルコールを混合した燃料を使用可能なエンジンの排気空燃比を検出する排気空燃比検出手段と、
該排気空燃比検出手段が検出した排気空燃比に基づいてフィードバック補正値の変化度合を演算する補正値変化度合演算手段と、
給油の有無を判定する給油判定手段と、
前記給油判定手段の判定結果に応じて前記フィードバック補正値の変化度合の大きさを判定するための判定閾値を設定する閾値設定手段と、
前記フィードバック補正値の変化度合の大きさが前記判定閾値よりも大きい場合に、当該フィードバック補正値の変化度合に基づいて燃料のアルコール濃度推定値を更新する濃度推定値更新手段と、を具備し、
前記閾値設定手段は、前記給油判定手段が給油ありと判定した場合に第１の閾値を前記判定閾値として設定し、前記給油判定手段が給油なしと判定した場合には前記第１の閾値よりも大きい第２の閾値を前記判定閾値として設定することを特徴とする燃料のアルコール濃度推定装置。
【請求項２】
前記アルコール濃度推定値が一回以上更新されたか否かを判定する推定値更新判定手段をさらに具備し、
前記閾値設定手段は、
前記給油判定手段が給油なしと判定し且つ前記推定値更新判定手段が前記濃度推定値更新手段によって前記アルコール濃度推定値が更新されていないと判定した場合に前記第２の閾値を前記判定閾値として設定すると共に、前記給油判定手段が給油なしと判定し且つ前記推定値更新判定手段が前記濃度推定値更新手段によって前記アルコール濃度推定値が更新されたと判定した場合に前記第２の閾値よりも小さい第４の閾値を前記判定閾値として設定することを特徴とする請求項１に記載の燃料のアルコール濃度推定装置。
【請求項３】
前記アルコール濃度推定値が一回以上更新されたか否かを判定する推定値更新判定手段をさらに具備し、
前記閾値設定手段は、
前記給油判定手段が給油ありと判定し且つ前記推定値更新判定手段が前記濃度推定値更新手段によって前記アルコール濃度推定値が更新されていないと判定した場合に前記第１の閾値を前記判定閾値として設定すると共に、前記給油判定手段が給油ありと判定し且つ前記推定値更新判定手段が前記濃度推定値更新手段によってアルコール濃度推定値が更新されたと判定した場合に前記第１の閾値よりも小さい第３の閾値を前記判定閾値として設定することを特徴とする請求項１又は２に記載の燃料のアルコール濃度推定装置。
【請求項４】
前記エンジンの燃料消費量を算出する消費量算出手段をさらに具備し、
前記閾値設定手段は、少なくとも前記消費量算出手段によって算出された燃料消費量が所定範囲内である場合に、前記判定閾値を設定することを特徴とする請求項１〜３の何れか一項に記載の燃料のアルコール濃度推定装置。
【請求項５】
前記給油判定手段が給油ありと判定した場合には、前記消費量算出手段が給油後の燃料消費量を算出すると共に、この給油後の燃料消費量が前記所定範囲としての第１の所定範囲内である場合に前記閾値設定手段が前記判定閾値を設定し、
前記給油判定手段が給油なしと判定した場合には、前記消費量算出手段が前記エンジンの始動後の燃料消費量を算出すると共に、この始動後の燃料消費量が前記所定範囲としての第２の所定範囲内である場合に前記閾値設定手段が前記判定閾値を設定することを特徴とする請求項４に記載の燃料のアルコール濃度推定装置。
【請求項６】
前記閾値設定手段は、
前記給油判定手段が給油ありと判定した場合には、前記給油後の燃料消費量が前記第１の所定範囲を超え且つ前記エンジンの温度が所定温度よりも高いときに、前記給油判定手段が給油なしと判定した場合には、前記始動後の燃料消費量が前記第２の所定範囲を超え且つ前記エンジンの温度が所定温度よりも高いときに、
それぞれ第５の閾値を前記判定閾値としてさらに設定することを特徴とする請求項５に記載の燃料のアルコール濃度推定装置。
【請求項７】
前記閾値設定手段により設定される前記第５の閾値は、その直前に設定されていた判定閾値と同じ値に設定されることを特徴とする請求項６に記載の燃料のアルコール濃度推定装置。
【請求項８】
前記エンジンの温度と相関する温度相関値を検出する温度相関値検出手段を備え、
前記濃度推定値更新手段は、
前記消費量算出手段によって算出された燃料消費量が所定範囲を超え、且つ前記温度相関値検出手段によって検出された温度相関値が所定値を超えた場合に、前記アルコール濃度推定値を更新するためのアルコール濃度の推定を所定回数実行することを特徴とする請求項４〜７の何れか一項に記載の燃料のアルコール濃度推定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、燃料のアルコール濃度を推定するアルコール濃度推定装置に関する。
【背景技術】
【０００２】
自動車等の車両用のエンジンには、燃料として一般的にガソリンが使用されているが、周知の通り、アルコールを混合した燃料を使用することができるものもある。アルコールを任意の割合（０％〜１００％）で混合した燃料を使用可能なエンジンを搭載した車両は、一般にＦＦＶ（Flexible Fuel Vehicle）と呼ばれている。
【０００３】
このようなＦＦＶ用のエンジンにおいても、ガソリンエンジンと同様に、酸素センサやＬＡＦＳ（リニア空燃比センサ）を設けて排気中の酸素濃度から排気空燃比を検出し、排気空燃比が目標空燃比に近づくように燃料供給量をフィードバック補正する制御を行っている。
【０００４】
この際、ＦＦＶにおいてはガソリンとアルコールとの理論空燃比の相違等、両燃料の特性の相違を考慮して燃料噴射量の制御を適正に行う必要がある。すなわち、混合燃料のアルコール濃度を的確に把握し、アルコール濃度に応じた的確な燃料供給量制御を行う必要がある。そして、アルコール濃度を的確に把握するためには、給油時等のようにアルコール濃度が変化し得る状況に応じて、適宜アルコール濃度の学習を行う必要がある。
【０００５】
ここで、給油があったことを検出すると、所定の演算周期を設定し、この演算周期内において燃料のアルコール濃度推定を実行するようにしたエンジンがある（例えば、特許文献１参照）。
【０００６】
【特許文献１】米国特許第６０１６７９６号明細書
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、給油があったことが検出された場合にのみ燃料のアルコール濃度推定を実行していると、例えば、給油量が少なく燃料タンク内の燃料量も少ないような場合等に、実際には給油されているにも拘わらず給油されていないと誤検出されてしまい、アルコール濃度の推定が実行されない虞がある。このように給油されたにも拘わらず燃料のアルコール濃度推定が実行されないと、燃料のアルコール濃度を正確に学習することができず、結果として空燃比を適正に制御できなくなる虞がある。
【０００８】
またこのような問題を解消するために、給油があったかどうかに拘わらず、定期的に燃料のアルコール濃度推定を実行することが考えられる。しかしながら、例えば、エンジン冷機時や過渡運転時には空燃比変動が大きく、アルコール濃度の変化以外の要因によっても排気空燃比に基づく補正値がばらついてしまうことがあり、燃料のアルコール濃度の推定精度は十分でない場合があるため、定期的にアルコール濃度推定を実行しただけでは、やはり燃料のアルコール濃度を誤学習してしまう虞がある。
【０００９】
本発明は、このような事情に鑑みてなされたものであり、アルコール濃度を一層正確に学習することができる燃料のアルコール濃度推定装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記課題を解決する本発明の第１の態様は、アルコールを混合した燃料を使用可能なエンジンの排気空燃比を検出する排気空燃比検出手段と、該排気空燃比検出手段が検出した排気空燃比に基づいてフィードバック補正値の変化度合を演算する補正値変化度合演算手段と、給油の有無を判定する給油判定手段と、前記給油判定手段の判定結果に応じて前記フィードバック補正値の変化度合の大きさを判定するための判定閾値を設定する閾値設定手段と、前記フィードバック補正値の変化度合の大きさが前記判定閾値よりも大きい場合に、当該フィードバック補正値の変化度合に基づいて燃料のアルコール濃度推定値を更新する濃度推定値更新手段と、を具備し、前記閾値設定手段は、前記給油判定手段が給油ありと判定した場合に第１の閾値を前記判定閾値として設定し、前記給油判定手段が給油なしと判定した場合には前記第１の閾値よりも大きい第２の閾値を前記判定閾値として設定することを特徴とする燃料のアルコール濃度推定装置にある。
【００１１】
かかる第１の態様では、給油の有無に拘わらずエンジンが始動される毎に燃料のアルコール濃度推定が実行されるため、給油が検出されなかった場合でも、燃料のアルコール濃度が正確に学習される。また給油の有無によって判定閾値の大きさを適宜変更することで、燃料のアルコール濃度の誤学習が効果的に抑制される。
【００１２】
なおフィードバック補正値の変化度合としては、例えば、フィードバック補正値の変化割合（変化率）が挙げられるが、これに限定されず、例えば、フィードバック補正値の変化量等であってもよい。
【００１３】
本発明の第２の態様は、前記アルコール濃度推定値が一回以上更新されたか否かを判定する推定値更新判定手段をさらに具備し、前記閾値設定手段は、前記給油判定手段が給油なしと判定し且つ前記推定値更新判定手段が前記濃度推定値更新手段によって前記アルコール濃度推定値が更新されていないと判定した場合に前記第２の閾値を前記判定閾値として設定すると共に、前記給油判定手段が給油なしと判定し且つ前記推定値更新判定手段が前記濃度推定値更新手段によって前記アルコール濃度推定値が更新されたと判定した場合に前記第２の閾値よりも小さい第４の閾値を前記判定閾値として設定することを特徴とする第１の態様の燃料のアルコール濃度推定装置にある。
【００１４】
本発明の第３の態様は、前記アルコール濃度推定値が一回以上更新されたか否かを判定する推定値更新判定手段をさらに具備し、前記閾値設定手段は、前記給油判定手段が給油ありと判定し且つ前記推定値更新判定手段が前記濃度推定値更新手段によって前記アルコール濃度推定値が更新されていないと判定した場合に前記第１の閾値を前記判定閾値として設定すると共に、前記給油判定手段が給油ありと判定し且つ前記推定値更新判定手段が前記濃度推定値更新手段によってアルコール濃度推定値が更新されたと判定した場合に前記第１の閾値よりも小さい第３の閾値を前記判定閾値として設定することを特徴とする第１又は２の態様の燃料のアルコール濃度推定装置にある。
【００１５】
かかる第２又は第３の態様では、燃料のアルコール濃度に実質的な変化がないにも拘わらず、燃料のアルコール濃度推定が頻繁に実行されるのを抑制し、アルコール濃度推定値が一回更新された後は、僅かな濃度変化を見逃さず、アルコール濃度推定値を更新することができる。
【００１６】
本発明の第４の態様は、前記エンジンの燃料消費量を算出する消費量算出手段をさらに具備し、前記閾値設定手段は、少なくとも前記消費量算出手段によって算出された燃料消費量が所定範囲内である場合に、前記判定閾値を設定することを特徴とする第１〜３の何れか一つの態様の燃料のアルコール濃度推定装置にある。
【００１７】
かかる第４の態様では、燃料のアルコール濃度が変化していない期間での無駄なアルコール濃度推定値の更新を抑制することができる。
【００１８】
本発明の第５の態様は、前記給油判定手段が給油ありと判定した場合には、前記消費量算出手段が給油後の燃料消費量を算出すると共に、この給油後の燃料消費量が前記所定範囲としての第１の所定範囲内である場合に前記閾値設定手段が前記判定閾値を設定し、前記給油判定手段が給油なしと判定した場合には、前記消費量算出手段が前記エンジンの始動後の燃料消費量を算出すると共に、この始動後の燃料消費量が前記所定範囲としての第２の所定範囲内である場合に前記閾値設定手段が前記判定閾値を設定することを特徴とする第４の態様の燃料のアルコール濃度推定装置にある。
【００１９】
かかる第５の態様では、燃料のアルコール濃度が変化している期間（アルコール濃度推定可能期間）がより正確に判定され、適正なタイミングで燃料のアルコール濃度推定値が更新される。
【００２０】
本発明の第６の態様は、前記閾値設定手段は、前記給油判定手段が給油ありと判定した場合には、前記給油後の燃料消費量が前記第１の所定範囲を超え且つ前記エンジンの温度が所定温度よりも高いときに、前記給油判定手段が給油なしと判定した場合には、前記始動後の燃料消費量が前記第２の所定範囲を超え且つ前記エンジンの温度が所定温度よりも高いときに、それぞれ第５の閾値を前記判定閾値としてさらに設定することを特徴とする第５の態様の燃料のアルコール濃度推定装置にある。
【００２１】
かかる第６の態様では、上述のアルコール濃度推定可能期間の経過後に、所定条件下で再度アルコール濃度推定値が更新される。これにより、アルコール濃度の推定値にずれが生じていた場合でも、アルコール濃度の推定値を正確な値に修正することができる。
【００２２】
本発明の第７の態様は、前記閾値設定手段により設定される前記第５の閾値は、その直前に設定されていた判定閾値と同じ値に設定されることを特徴とする第６の態様の燃料のアルコール濃度推定装置にある。
【００２３】
かかる第７の態様においても、上述のアルコール濃度推定可能期間の経過後に、所定条件下で再度アルコール濃度推定値が更新される。
【００２４】
本発明の第８の態様は、前記エンジンの温度と相関する温度相関値を検出する温度相関値検出手段を備え、前記濃度推定値更新手段は、前記消費量算出手段によって算出された燃料消費量が所定範囲を超え、且つ前記温度相関値検出手段によって検出された温度相関値が所定値を超えた場合に、前記アルコール濃度推定値を更新するためのアルコール濃度の推定を所定回数実行することを特徴とする第４〜７の何れか一つの態様の燃料のアルコール濃度推定装置にある。
【００２５】
かかる第８の態様では、温度相関値が所定値を超えた場合、すなわち、エンジンが十分に暖機運転されたと判断された後に、所定回数アルコール濃度の推定を実行することで、推定された燃料のアルコール濃度と実際のアルコール濃度とにずれが生じていたとしても、アルコール濃度を再推定して修正することができる。したがって、空燃比を一層適正に制御することができる。
【発明の効果】
【００２６】
以上のように本発明によれば、燃料のアルコール濃度を一層正確に推定することができる。したがって、空燃比を適正に制御して、排気ガス性能の悪化や、ドライバビリティの悪化等を効果的に抑制することができる。
【発明を実施するための最良の形態】
【００２７】
以下、図面を参照しつつ本発明の一実施形態について説明する。なお本実施形態では、アルコールを混合した燃料を使用可能なエンジンと、燃料のアルコール濃度推定装置を含むエンジンの制御装置とで構成されるエンジンシステムを例示して本発明を説明する。
【００２８】
まず、図１を参照しつつ、本実施形態に係るエンジンシステムの概略構成を説明する。
図１に示すエンジン１１は、ＦＦＶに搭載される、いわゆる吸気管噴射型(Multi Point Injection)のエンジンであり、シリンダヘッド１２とシリンダブロック１３とを有している。シリンダブロック１３の各シリンダ１４内には、ピストン１５が往復運動可能なように収容されている。このピストン１５とシリンダ１４とシリンダヘッド１２とで燃焼室１６が形成されている。ピストン１５は、コンロッド１７を介してクランクシャフト１８に接続されている。ピストン１５の往復運動は、コンロッド１７を介してクランクシャフト１８に伝達される。
【００２９】
シリンダヘッド１２には吸気ポート１９が形成されている。この吸気ポート１９には吸気マニホールド２０が接続されている。吸気ポート１９には吸気弁２１が設けられており、この吸気弁２１によって燃焼室１６と吸気ポート１９が連通・遮断されるようになっている。吸気マニホールド２０には、燃料パイプ２２を介して燃料タンク２３に接続された燃料噴射弁２４が吸気ポート１９内に混合燃料を噴射可能に設けられている。
【００３０】
なお燃料タンク２３は、燃料タンク２３内の蒸散燃料を吸着させるキャニスタ２５が接続されると共に、キャニスタ２５がパージ通路２６を介して吸気系を構成する吸気管（吸気通路）２７に接続されている。そして所定のパージ条件が成立したときに、パージ通路２６に設けられたパージ弁２８が開かれて、キャニスタ２５内に吸着された蒸散燃料をパージ通路２６から吸気管（吸気通路）２７に導入される。これにより蒸散燃料の大気中への放出を防止している。また燃料タンク２３内には、燃料タンク２３内の燃料貯蔵量を検出する燃料レベルセンサ２９が設けられている。
【００３１】
シリンダヘッド１２には、さらに排気ポート３０が形成されている。この排気ポート３０には排気マニホールド３１の一端が接続され、排気マニホールド３１の他端には排気管３２が接続されている。なお、排気ポート３０には排気弁３３が設けられており、吸気ポート１９における吸気弁２１と同様、燃焼室１６と排気ポート３０はこの排気弁３３によって連通・遮断されるようになっている。
【００３２】
シリンダヘッド１２には、各気筒毎に点火プラグ３４が取り付けられている。各点火プラグ３４には、高電圧を出力する点火コイル３５が接続されている。吸気マニホールド２０の上流側の吸気管２７には、サージタンク３６が設けられ、このサージタンク３６の上流側に吸気量を調整するスロットルバルブ３７及びスロットルバルブ３７の開度を検出するスロットルポジションセンサ（ＴＰＳ）３８が設けられている。さらにスロットルバルブ３７の上流には、吸気量を計測するエアフローセンサ３９が介装されている。
【００３３】
排気マニホールド３１に接続された排気管３２には、排気浄化用触媒である三元触媒４０が介装されている。三元触媒４０の上流側には、触媒通過前の排ガス中の酸素濃度、つまり排気空燃比を検出する排気空燃比検出手段としてのＯ２センサ４１が設けられている。
【００３４】
ＥＣＵ（電子コントロールユニット）４２は、入出力装置、記憶装置（ＲＯＭ、ＲＡＭ等のメモリ）、中央処理装置（ＣＰＵ）、タイマカウンタ等を備えている。このＥＣＵ４２によって、エンジン１１の総合的な制御が行われる。ＥＣＵ４２の入力側には、上述したスロットルポジションセンサ３８、エアフローセンサ３９、Ｏ２センサ４１の他、エンジン１１のクランク角を検出するクランク角センサ４３、エンジン１１の冷却水温度を検出する水温センサ４４等の各種センサ類が接続されており、これらセンサ類からの検出情報が入力される。
【００３５】
一方、ＥＣＵ４２の出力側には、上述の燃料噴射弁２４、点火コイル３５、スロットルバルブ３７、パージ弁２８等の各種出力デバイスが接続されている。これら各種出力デバイスには、ＥＣＵ４２で各種センサ類からの検出情報から演算された燃料噴射時間、点火時期、スロットル開度、弁開閉時期等のパラメータ値が出力されて、燃焼室１６内の燃焼状態が制御されている。
【００３６】
例えば、これら各種センサ類からの検出情報に基づいてエンジン１１の空燃比が適正に制御される。その際、燃料のアルコール濃度によって適正な空燃比は異なるため、空燃比を適正に制御するためには、燃料のアルコール濃度を正確に検出或いは推定しておく必要がある。
【００３７】
本発明の燃料のアルコール濃度推定装置１０では、以下に詳述するように燃料タンク２３内の混合燃料のアルコール濃度を所定のタイミングで適宜推定することで、燃料のアルコール濃度を給油の有無に拘らず正確に把握できるようにしている。そして、その推定値に基づいて燃料噴射弁２４による燃料噴射量を適宜調整することで、燃焼室１６内の空燃比を良好に制御している。
【００３８】
次に図２を参照しつつ、本実施形態のアルコール濃度推定装置について説明する。
【００３９】
図２は、本発明に係る燃料のアルコール濃度推定装置の概略を示す機能ブロック図である。図２に示すように、アルコール濃度推定装置１０を構成するＥＣＵ４２には、補正値変化度合演算手段５１と、給油判定手段５２と、消費量算出手段５３と、実行条件判定手段５４と、閾値設定手段５５と、濃度推定値更新手段５６とを含む濃度推定部５０とが備えられている。
【００４０】
補正値変化度合演算手段５１は、排気空燃比検出手段であるＯ２センサ４１によって検出された排気空燃比に基づいてフィードバック補正値の変化度合を算出する。本実施形態では、フィードバック補正値の変化度合として、フィードバック補正値の変化割合（以下、「補正値の変化割合」という）ΔＫを算出する。ここでフィードバック補正値とは、具体的には、燃料噴射弁２４から噴射される燃料噴射量を補正するためのものであるが、これに限定されず、例えば、吸気量を補正するものであってもよい。なおこの補正値の変化割合ΔＫの算出方法については後述する。
【００４１】
給油判定手段５２は、燃料貯蔵検出手段である燃料レベルセンサ２９の検出結果に基づいて給油の有無を判定する。すなわち、給油判定手段５２は、燃料レベルセンサ２９によって燃料タンク２３内の燃料貯蔵量の増量が検出されると「給油あり」と判定し、燃料レベルセンサ２９によって燃料タンク２３内の燃料貯蔵量の増量が検出されない場合に「給油なし」と判定する。
【００４２】
消費量算出手段５３は、エンジン１１における燃料消費量を算出する。すなわち消費量算出手段５３は、燃料給油が行われた場合には、給油後にエンジン１１で消費された燃料量（給油後燃料消費量）を算出し、燃料給油が行われていない場合には、エンジン１１が始動された後に消費された燃料量（始動後燃料消費量）を算出する。なお消費量算出手段５３による燃料消費量の算出方法は、特に限定されないが、例えば、燃料噴射弁２４による燃料噴射量の積算値に基づいて算出することができる。
【００４３】
実行条件判定手段５４は、燃料のアルコール濃度推定を実行するための条件（濃度推定実行条件）が成立しているか否かを判定する。具体的には、例えば、燃料消費量（給油後燃料消費量又は始動後燃料消費量）、エンジン１１の冷却水の温度、パージ処理の実行状況等に基づいて、濃度推定実行条件が成立しているか否かを判定する。
【００４４】
閾値設定手段５５は、濃度推定実行条件が成立した際に、燃料給油の有無に応じて補正値の変化割合ΔＫの大きさを判定するための判定閾値を設定する。例えば、閾値設定手段５５は、燃料給油が行われた場合には第１の閾値を判定閾値として設定し、燃料給油が行われていない場合には、第１の閾値よりも大きい第２の閾値を判定閾値として設定する。
【００４５】
そして濃度推定値更新手段５６が、補正値の変化割合ΔＫの絶対値が、この判定閾値よりも大きい場合に、補正値の変化割合ΔＫに基づき燃料のアルコール濃度推定値を更新する。
【００４６】
このように本発明のアルコール濃度推定装置１０では、燃料給油の有無に拘わらず、補正値変化度合演算手段５１によって演算された補正値の変化度合の大きさである変化割合ΔＫの絶対値が、閾値設定手段５５によって設定された判定閾値よりも大きい場合に、濃度推定値更新手段５６によって燃料のアルコール濃度推定値が更新される。
【００４７】
これにより燃料のアルコール濃度が一層正確に把握される。したがって、空燃比を適正に制御することができる。例えば、給油量が少なく燃料タンク２３内の燃料量も少ないような場合等には、給油判定手段５２が「給油なし」と誤判定してしまう虞がある。このような場合に燃料のアルコール濃度推定値が更新されないと、空燃比を適正に制御することができなくなる。しかしながら本発明のアルコール濃度推定装置１０によれば、給油判定手段５２が誤判定した場合でも、アルコール濃度推定値が確実に更新される。したがって空燃比を一層適正に制御することができる。
【００４８】
ここで本発明のアルコール濃度推定装置１０では、判定閾値は一定値ではなく、閾値設定手段５５が給油判定手段５２の判定結果に応じた値に設定している。これにより、燃料のアルコール濃度をさらに正確に推定することができる。
【００４９】
具体的には、まず給油判定手段５２が「給油あり」と判定した場合、実際に給油が行われた蓋然性が極めて高い。このような場合には、閾値設定手段５５が判定閾値を比較的小さい値（第１の閾値）に設定する。これにより燃料のアルコール濃度推定値が頻繁に更新されるようしている。
【００５０】
一方、給油判定手段５２が「給油なし」と判定した場合には、給油が行われた蓋然性は低いが、上述のように実際には給油が行われていることもある。このような場合には、閾値設定手段５５が、判定閾値を第１の閾値よりも大きい第２の閾値に設定する。つまり実際には給油が行われ、補正値の変化割合ΔＫが比較的大きく変化した場合に燃料のアルコール濃度推定値が更新されるようにしている。これにより、燃料のアルコール濃度の誤推定を防止することができ、空燃比を一層適正に制御することができる。なお本実施形態では、補正値変化度合演算手段５１が、補正値の変化度合として、補正値の変化割合ΔＫを算出し、この補正割合ΔＫの大きさに応じてアルコール濃度推定値を更新するようにしたが、例えば、補正値の変化量の大きさに応じてアルコール濃度推定値を更新するようにしてもよい。
【００５１】
さらに本実施形態では、濃度推定部５０は、濃度推定値更新手段５６によってアルコール濃度推定値が一回以上更新されたか否かを判定する推定値更新判定手段５７をさらに有する。そして、閾値設定手段５５は、給油判定手段５２の判定結果と共に推定値更新判定手段５７の判定結果に基づいて判定閾値を設定している。
【００５２】
具体的には、閾値設定手段５５は、まず給油判定手段５２が給油ありと判定し且つ推定値更新判定手段５７が濃度推定値更新手段５６によってアルコール濃度推定値が更新されていないと判定した場合に第１の閾値を判定閾値として設定し、また給油判定手段５２が給油ありと判定し且つ推定値更新判定手段５７が濃度推定値更新手段５６によってアルコール濃度推定値が更新されたと判定した場合に第１の閾値よりも小さい第３の閾値を判定閾値として設定する。
【００５３】
また閾値設定手段５５は、給油判定手段５２が給油なしと判定し且つ推定値更新判定手段５７が濃度推定値更新手段５６によってアルコール濃度推定値が更新されていないと判定した場合に第２の閾値を判定閾値として設定し、給油判定手段５２が給油なしと判定し且つ推定値更新判定手段５７が濃度推定値更新手段５６によってアルコール濃度推定値が更新されたと判定した場合に第２の閾値よりも小さい第４の閾値を判定閾値として設定する。
【００５４】
つまり給油判定手段５２が給油ありと判定した場合、濃度推定値更新手段５６は、補正値の変化割合ΔＫの絶対値が第１の閾値を超えた場合に１回目の燃料のアルコール濃度推定値更新を実行し、１回目のアルコール濃度推定値更新が実行された後は、第１の閾値よりも小さい第３の閾値を超えた場合に２回目以降のアルコール濃度推定値更新が実行される。
【００５５】
また給油判定手段５２が給油なしと判定した場合には、濃度推定値更新手段５６は、補正値の変化割合ΔＫの絶対値が第２の閾値を超えた場合に１回目の燃料のアルコール濃度推定値更新を実行し、１回目のアルコール濃度推定値更新が実行された後は、第２の閾値よりも小さい第４の閾値を超えた場合に２回目以降のアルコール濃度推定値更新が実行されることになる。
【００５６】
これにより、燃料のアルコール濃度に実質的な変化がないにも拘わらずアルコール濃度推定値が頻繁に更新されてしまうのを抑制しつつ、燃料のアルコール濃度が変化している状況では、わずかな濃度変化を見逃さずに、アルコール濃度推定値を更新することができる。
【００５７】
ところで、上述したように閾値設定手段５５は、濃度推定実行条件が成立した場合に判定閾値を設定するが、実行条件判定手段５４は、消費量算出手段５３が算出した燃料消費量（給油後燃料消費量又は始動後燃料消費量）が所定範囲内であることを濃度推定実行条件の一つとして判定している。例えば、図３中１段目に示すように、燃料消費量（給油後燃料消費量又は始動後燃料消費量）が第１の所定値Ａ１〜第２の所定値Ａ２の範囲（第１又は第２の所定範囲）内である場合に、実行条件判定手段５４は、濃度推定実行条件の一つが成立したと判定する。このような条件が判定されるのは次のような理由による。
【００５８】
燃料給油が実施された後に燃料のアルコール濃度推定値が更新される場合、給油後燃料消費量又は始動後燃料消費量が第１の所定値Ａ１よりも少ないと、燃料タンク２３と燃料噴射弁２４とを接続する燃料パイプ２２内に残留している燃料（すなわち給油前の燃料）がアルコール濃度推定に影響する虞がある。一方、燃料消費量が第２の所定値Ａ２よりも多くなると、給油前の燃料から給油後の燃料にほぼ入れ替わり、燃料のアルコール濃度は実質的に変化しなくなるからである。
【００５９】
このため本実施形態では、閾値設定手段５５が、上述のように燃料消費量が所定範囲内である場合に判定閾値を設定するようにしている。つまり燃料消費量が所定範囲内である場合に濃度推定値更新手段５６によってアルコール濃度推定値が更新されるようにしている。
【００６０】
さらに本実施形態では、エンジン１１が十分に暖機された後にも、再度、燃料のアルコール濃度推定値が更新されるようにしている。すなわち消費量算出手段５３によって算出された始動後燃料消費量が第２の所定値Ａ２を超え且つエンジン１１の冷却水の温度が所定温度よりも高い場合に、閾値設定手段５５が第５の閾値を判定閾値として設定するようにしている。本実施形態では、閾値設定手段５５は、その直前に設定されていた判定閾値と同じ値である第５の閾値を判定閾値として設定する。そして補正値の変化割合ΔＫの絶対値がこの判定閾値を超えた場合に、燃料のアルコール濃度推定値が再度更新されるようにしている。これにより空燃比をより適正に制御することができる。
【００６１】
以下、図４〜図６のフローチャートを参照しつつ、アルコール濃度推定装置１０によるアルコール濃度推定制御の一例について説明する。
【００６２】
図４に示すように、まずステップＳ１でエンストモード又は始動モードが成立しているか否かが判定される。すなわちイグニッションオンであるがエンジン１１が始動されていない状態であるか否かが判定される。ここで、上記モードが成立していると（ステップＳ１：Ｙｅｓ）、ステップＳ２で始動後燃料消費量がリセットされる（ΣＦＬＳ（ｋ）＝０）。始動後燃料消費量とは、エンジン１１の始動後に消費された燃料量であり、上述したように消費量算出手段５３によって算出される。
【００６３】
次に、ステップＳ３で燃料給油フラグがオフであるか否かを判定する。燃料給油フラグは、後述するステップで燃料タンク２３内の燃料レベルセンサ２９の検出結果に基づいて給油判定手段５２が燃料ありと判定した場合に、オンに設定されるフラグである。なお燃料給油フラグがオフに設定される場合については後述する。また燃料給油フラグは初期設定ではオフに設定されている。
【００６４】
ここで、燃料給油フラグがオフに設定されている場合には（ステップＳ３：Ｙｅｓ）、ステップＳ４で始動毎推定フラグがオンに設定され、燃料給油フラグがオンに設定されている場合には（ステップＳ３：Ｎｏ）、ステップＳ５で始動毎推定フラグがオフに設定される。上述したように初期設定では給油フラグはオフに設定されているため、初期設定の状態でイグニッションオンとなった場合には、ステップＳ４で始動毎推定フラグがオンに設定され、その後ステップＳ７に進む。
【００６５】
ここで始動毎推定フラグとは、ステップＳ４で燃料給油フラグがオフに設定された場合に、オンに設定されるフラグである。そして、この始動毎推定フラグや燃料給油フラグがオンに設定されている否かに応じて、後述するように閾値設定手段５５が判定閾値を所定値に設定する。なお始動毎推定フラグがオフに設定される場合については後述する。また始動毎推定フラグは初期設定ではオフに設定されている。
【００６６】
ステップＳ７では、燃料給油フラグがオンに設定されているか否かが判定される。例えば、初期設定では燃料給油フラグはオフに設定されているため（ステップＳ７：Ｎｏ）、ステップＳ８に進み、給油後燃料消費量がリセットされる（ΣＦＬ（ｋ）＝０）。なお給油後燃料消費量ΣＦＬ（ｋ）とは、燃料の給油後に消費された燃料量であり、上述したように消費量算出手段５３によって算出される。
【００６７】
次にステップＳ９で、給油判定手段５２が燃料給油の有無、つまり燃料レベルセンサ２９の検出結果に基づいて燃料タンク２３内の燃料レベル（燃料貯蔵量）が増加していないかどうかを判定する。そして燃料レベルが変化（上昇）している場合、つまり給油判定手段５２が「給油あり」と判定した場合には（ステップＳ９：Ｎｏ）、ステップＳ１０で燃料給油フラグがオンに設定されると共にステップＳ１１で始動毎推定フラグがオフに設定され、その後、後述するステップＳ２１に進む。
【００６８】
一方、燃料タンク２３内の燃料レベルが増加していない場合、つまり給油判定手段５２が「給油なし」と判定した場合には（ステップＳ９：Ｙｅｓ）、燃料給油フラグはオフの設定のまま維持され、次いでステップＳ１２で始動毎推定フラグがオンに設定されている否かを判定する。ここで始動毎推定フラグがオンに設定されている場合には（ステップＳ１２：Ｙｅｓ）、その後ステップＳ４１に進み、始動毎推定フラグがオフに設定されている場合には（ステップＳ１２：Ｎｏ）、後述するステップＳ６１に進む。
【００６９】
ステップＳ７で燃料給油フラグがオンに設定されている場合には（ステップＳ７：Ｙｅｓ）、ステップＳ１３で消費量算出手段５３によって給油後燃料消費量ΣＦＬ（ｋ）が算出され、その後ステップＳ２１に進む。
【００７０】
このようなステップＳ１〜ステップＳ１３の処理が終了した時点で、燃料給油フラグがオンに設定されている場合にはステップＳ２１に進み、燃料給油フラグがオフに設定され且つ始動毎推定フラグがオンに設定されている場合にはステップＳ４１に進む。さらに燃料給油フラグ及び始動毎推定フラグが共にオフに設定されている場合にはステップＳ６１に進む。
【００７１】
まずは給油フラグがオンに設定されている場合、つまり給油判定手段５２が「給油あり」と判定した場合（給油時）の処理について説明する。ステップＳ１１又はステップＳ１３からステップＳ２１に進むと、図５に示すように、まずは、実行条件判定手段５４が、燃料のアルコール濃度推定を実施可能な期間（以下、「濃度推定可能期間」という）であるか否か、すなわち燃料噴射弁２４から噴射される燃料のアルコール濃度が変化している期間であるか否かが判定される。具体的には、消費量算出手段５３によって算出された給油後燃料消費量ΣＦＬ（ｋ）が第１の所定範囲であるか否か、つまり第１の所定値Ａ１〜第２の所定値Ａ２の範囲（図３の１段目参照）であるか否かが判定される。
【００７２】
そしてステップＳ２１で給油後燃料消費量ΣＦＬ（ｋ）が第２の所定値Ａ２未満であり（ステップＳ２１：Ｙｅｓ）、さらに給油後燃料消費量ΣＦＬ（ｋ）が第１の所定値Ａ１以上である場合に（ステップＳ２２：Ｙｅｓ）、濃度推定可能期間であると判定される。一方、給油後燃料消費量ΣＦＬ（ｋ）が第２の所定値Ａ２以上である場合（ステップＳ２１：Ｎｏ）、或いは給油後燃料消費量ΣＦＬ（ｋ）が第１の所定値Ａ１未満である場合には（ステップＳ２２：Ｎｏ）、濃度推定可能期間ではないと判定される。
【００７３】
濃度推定可能期間であると判定されると、次いでステップＳ２３でフィードバック制御による空燃比（Ａ／Ｆ）学習が禁止されると共に、パージ周期が特別設定に切り替えられる。
【００７４】
濃度推定可能期間中は、上述したように燃料給油に伴って燃料噴射弁２４から噴射される燃料のアルコール濃度が変化していると考えられるため、フィードバック制御によるＡ／Ｆ学習を行うと空燃比を誤学習してしまう虞がある。このため濃度推定可能期間である場合にはＡ／Ｆ学習が禁止される。
【００７５】
また後述するステップで燃料のアルコール濃度推定を実行する際にパージが実施されていると、それに伴って排気空燃比が変化してしまいアルコール濃度を誤学習してしまう虞がある。このため、濃度推定値更新手段５６は、例えば、図３に示すように、パージが禁止されている期間（パージ周期：ＯＦＦ）のタイミング（例えば、時間Ｔ１，Ｔ２，Ｔ３）で実行することが好ましい。パージ周期が通常設定であるとパージが実施される期間が比較的長い。このため濃度推定可能期間であると判定された段階でパージ周期を特別設定としてパージカットの周期を短くし、アルコール濃度推定を頻繁に実行できるようにしている。
【００７６】
次いで、ステップＳ２４で、実行条件判定手段５４が、その他のアルコール濃度推定実行条件が成立している否か、例えば、パージの実行状況、冷却水の温度等の条件が成立しているか否かを判定する。
【００７７】
そして、実行条件判定手段５４が、これらのアルコール濃度推定実行条件が成立していると判定すると（ステップＳ２４：Ｙｅｓ）、その後、補正値変化度合演算手段５１が、Ｏ２センサ４１によって検出された排気空燃比に基づいて、空燃比をフィードバック制御する際の補正値（Ａ／Ｆ補正値）の変化割合ΔＫを演算する（ステップＳ２８）。
【００７８】
なお本実施形態では、Ａ／Ｆ補正値の変化割合ΔＫが算出される前に、ステップＳ２５で、給油後燃料消費量ΣＦＬ（ｋ）が第２の所定値Ａ２以上であるか否かが判定される。そして、給油後燃料消費量ΣＦＬ（ｋ）が第２の所定値Ａ２以上であれば（ステップＳ２５：Ｙｅｓ）、ステップＳ２６で濃度推定実行条件フラグがオンに設定され、給油後燃料消費量ΣＦＬ（ｋ）が第２の所定値Ａ２未満であれば（ステップＳ２５：Ｎｏ）、ステップＳ２７で濃度推定実行条件フラグがオフに設定される。これらの処理の必要性については後述する。
【００７９】
補正値変化度合演算手段５１は、具体的には下記（I）〜（IV）の手順でＡ／Ｆ補正値の変化割合ΔＫを算出する（ステップＳ２８）。
【００８０】
（I）Ａ／Ｆ補正値の平均値ＫI＿ＡＶＥを算出する。
（II）Ａ／Ｆ補正値ＫＰＲＳＴを下記式（１）によって算出する。
ＫＰＲＳＴ＝｛ＫＩ＿ＡＶＥ＋（ＫＬＲＮ−１）｝×ＫＡＬＣＨ・・・（１）
【００８１】
なお「ＫＬＲＮ」はＡ／Ｆ学習が禁止された際に固定値として記憶されたＡ／Ｆ学習補正値であり、「ＫＡＬＣＨ」はアルコール濃度補正値であり、初期設定では「１」であると擬制される。
【００８２】
（III）Ａ／Ｆ補正基準値ＫＢＡＳＥを下記式（２）によって算出する。
ＫＢＡＳＥ＝｛１＋（ＫＬＲＮ−１）｝×ＫＡＬＣＨ・・・（２）
（IV）Ａ／Ｆ補正値の変化割合ΔＫを下記式（３）によって算出する。
ΔＫ＝（ＫＰＲＳＴ−ＫＢＡＳＥ）／ＫＢＡＳＥ・・・（３）
【００８３】
このようにＡ／Ｆ補正値の変化割合ΔＫが演算された後は、ステップＳ２９で推定値更新判定手段５７が、濃度推定値更新手段５６によるアルコール濃度推定値が一回以上更新されたか否かを判定する。具体的には推定値更新判定手段５７は濃度変化フラグがオフに設定されている否かを判定する。この濃度変化フラグとは、アルコール濃度推定値が更新されるとオンに設定されるフラグである。
【００８４】
次に閾値設定手段５５が補正値の変化割合ΔＫの判定閾値を設定する。上述のようにステップＳ２１に進むのは、給油判定手段５２が「給油あり」と判定した場合である。このため、ステップＳ２９で濃度変化フラグがオフに設定されている場合、つまりアルコール濃度推定値が未更新であると判定された場合には（ステップＳ２９：Ｙｅｓ）、ステップＳ３０で閾値設定手段５５が第１の閾値Ｔｈ１を判定閾値として設定する。一方、濃度変化フラグがオンに設定されている場合、つまりアルコール濃度推定値が一回以上更新されていると判定された場合には（ステップＳ２９：Ｎｏ）、ステップＳ３１で閾値設定手段５５が第１の閾値よりも小さい値である第３の閾値Ｔｈ３を判定閾値として設定する。
【００８５】
そして、ステップＳ３２で補正値の変化割合の絶対値（｜ΔＫ｜）が、閾値設定手段５５によって設定された判定閾値（第１の閾値Ｔｈ１又は第３の閾値Ｔｈ３）よりも大きいか否かが判定される。ここで｜ΔＫ｜＞「判定閾値」である場合には（ステップＳ３２：Ｙｅｓ）、ステップＳ３３で濃度変化フラグがオンに設定された後、アルコール濃度補正値ＫＡＬＣＨが更新される（ステップＳ３４）。
【００８６】
その後、濃度推定値更新手段５６が、例えば、燃料のアルコール濃度とアルコール濃度補正値との関係を示すマップ等を参照し、ステップＳ３４で更新されたアルコール濃度補正値に基づいて燃料のアルコール濃度推定値を更新し（ステップＳ３５）、リターンされる。
【００８７】
例えば、図３に示す給油時の例で説明すると、まず時間Ｔ１における判定では、図中４段目（Ｆ／Ｂ補正値）に示すように、時間Ｔ１における補正値の変化割合ΔＫ（ΔＫ１）が判定閾値（第１の閾値Ｔｈ１）よりも大きいため、図中５段目（アルコール濃度）に実線で示すように、アルコール濃度が更新される。時間Ｔ１でアルコール濃度が一度更新されたため、時間Ｔ２の判定では、時間Ｔ２における補正値の変化割合ΔＫ（ΔＫ２）が判定閾値（第３の閾値Ｔｈ３）よりも大きいか否かが判定され、この例ではΔＫ２＞Ｔｈ３であるためアルコール濃度が更新される。その後の判定（例えば、時間Ｔ３の判定）では、補正値の変化割合ΔＫが判定閾値（第３の閾値Ｔｈ３）よりも大きければ、図示したようにアルコール濃度が更新されることになる。
【００８８】
図５に戻り、ステップＳ３２で｜ΔＫ｜≦「判定閾値」である場合、すなわち補正値の変化割合ΔＫが比較的小さい場合には（ステップＳ３２：Ｎｏ）、濃度推定値更新手段５６が燃料のアルコール濃度推定値の更新を行うことなくリターンされる。
【００８９】
そしてステップＳ１でエンジン１１が始動されている場合、つまりエンストモード又は始動モードが成立していない場合には（ステップＳ１：Ｎｏ）、ステップＳ６で消費量算出手段５３が始動後燃料消費量ΣＦＬＳ（ｋ）を算出する。また燃料給油フラグはオンに設定されているため（ステップＳ７：Ｙｅｓ）、ステップＳ１３で消費量算出手段５３が給油後燃料消費量ΣＦＬ（ｋ）を算出した後、上述した処理を繰り返す。
【００９０】
このように上述した一連の処理を繰り返している間に、給油後燃料消費量ΣＦＬ（ｋ）は徐々に増加する（ステップＳ８）。そしてステップＳ２１で給油後燃料消費量ΣＦＬ（ｋ）が第２の所定値Ａ２以上となると、次いでステップＳ３６で濃度推定実行条件フラグがオンにセットされているか否かが判定される。この濃度推定実行条件フラグは、上述したステップＳ２５〜ステップＳ２７で、給油後燃料消費量ΣＦＬ（ｋ）が第２の所定値Ａ２以上となった場合にオンに設定されるフラグであり、初期設定ではオフとなっている。
【００９１】
したがって、初めてステップＳ３６の判定が行われる場合には、濃度推定実行条件フラグはオフに設定されているため（ステップＳ３６：Ｎｏ）、ステップＳ２２に進む。ステップＳ３６の判定が行われる場合、給油後燃料消費量ΣＦＬ（ｋ）は常に第１の所定値Ａ１以上であるため（ステップＳ２２：Ｙｅｓ）、その後ステップＳ２３〜ステップＳ３５の処理が実施される。
【００９２】
すなわち本実施形態では、給油後燃料消費量ΣＦＬ（ｋ）が第１の所定値Ａ１〜第２の所定値Ａ２の範囲（第１の所定範囲）である場合に、濃度推定値更新手段５６が燃料のアルコール濃度推定を繰り返し実行すると共に、給油後燃料消費量ΣＦＬ（ｋ）が第２の所定値Ａ２を超えた後にも、所定のタイミング（例えば、図３の時間Ｔ３）で、さらにもう一回実行するようにしている。
【００９３】
また給油後燃料消費量ΣＦＬ（ｋ）が第２の所定値Ａ２を超え（ステップＳ２５：Ｙｅｓ）、その後、アルコール濃度推定が実施された場合には、ステップＳ２６で濃度推定実行条件フラグがオンに設定される。したがって、その後ステップＳ３６で濃度推定実行条件フラグがオンであるか否かが判定されると、濃度推定実行条件フラグはオンに設定されているため（ステップＳ３６：Ｙｅｓ）、次いでステップＳ３７で燃料給油フラグがオフに設定される。またステップＳ３８でＡ／Ｆ学習が許可されると共に、パージ周期が通常設定に切り替えられる。さらに濃度変化フラグがオフに設定されると共に、濃度推定実行条件フラグがオフに設定されて、その後リターンされる。
【００９４】
なおこのようにステップＳ３７で燃料給油フラグがオフに設定された後、ステップＳ１に戻る場合には、ステップＳ２１に進むことなくステップＳ６１に進むことになる。つまり上述したステップＳ２５〜ステップＳ２７を設けることで、給油後燃料消費量ΣＦＬ（ｋ）が第２の所定値Ａ２を超えた後に、さらに一回だけ、燃料のアルコール濃度推定が実行されるようにしている。
【００９５】
次に給油フラグがオフであり始動毎推定フラグがオンである場合、つまり給油判定手段５２が「給油なし」と判定した場合（非給油時）の処理について説明する。非給油時の処理は、上述した給油時の処理と基本的には同様の流れであるが、閾値設定手段５５が判定閾値を給油時の場合とは異なる値に設定している。またアルコール濃度推定可能期間であるか否かを、始動後燃料消費量ΣＦＬＳ（ｎ）に基づいて判定している。
【００９６】
図６に示すように、ステップＳ１２からステップＳ４１に進み、始動後燃料消費量ΣＦＬＳ（ｋ）が第２の所定範囲内であるか否かが判定される。そして、始動後燃料消費量ΣＦＬＳ（ｋ）が第２の所定範囲内である場合、つまり始動後燃料消費量ΣＦＬＳ（ｋ）が第２の所定値Ａ２未満であり（ステップＳ４１：Ｙｅｓ）、且つ第１の所定値Ａ１以上である場合に（ステップＳ４２：Ｙｅｓ）、濃度推定可能期間であると判定される。一方、始動後燃料消費量ΣＦＬＳ（ｋ）が第２の所定値Ａ２以上である場合（ステップＳ４１：Ｎｏ）、また始動後燃料消費量ΣＦＬＳ（ｋ）が第１の所定値Ａ１未満である場合には（ステップＳ４２：Ｎｏ）、濃度推定可能期間ではないと判定される。
【００９７】
なお上述した第１の所定範囲及び第２の所定範囲のそれぞれを、便宜上、第１の所定値Ａ１〜第２の所定値Ａ２の範囲と説明しているが、これら第１の所定範囲と第２の所定範囲とは、実際には異なる数値範囲である。
【００９８】
濃度推定可能期間であると判定されると、給油時の処理と同様に、ステップＳ４３でフィードバック制御による空燃比（Ａ／Ｆ）学習が禁止されると共に、パージ周期が特別設定に切り替えられる。さらにステップＳ４４でアルコール濃度推定実行条件が成立したか否かが判定される。アルコール濃度推定実行条件が成立していると（ステップＳ４４：Ｙｅｓ）、ステップＳ４５で始動後燃料消費量ΣＦＬＳ（ｋ）が第２の所定値Ａ２以上であるか否かが判定され、第２の所定値Ａ２以上であれば（ステップＳ４５：Ｙｅｓ）、濃度推定実行条件フラグがオンに設定され（ステップＳ４６）、第２の所定値Ａ２未満であれば（ステップＳ４５：Ｎｏ）、濃度推定実行条件フラグがオフに設定される（ステップＳ４７）。次いで、空燃比をフィードバック制御する際の補正値（Ａ／Ｆ補正値）の変化割合ΔＫが算出される（ステップＳ４８）。
【００９９】
次に閾値設定手段５５が補正値の変化割合ΔＫの判定閾値を設定する。上述のようにステップＳ４１に進むのは、給油判定手段５２が「給油なし」と判定した場合であるため、ステップＳ４９で濃度変化フラグがオフに設定されている場合、つまりアルコール濃度推定値が未更新であると判定された場合には（ステップＳ４９：Ｙｅｓ）、ステップＳ５０で閾値設定手段５５が第１の閾値Ｔｈ１よりも大きい値である第２の閾値Ｔｈ２を判定閾値として設定する。一方、濃度変化フラグがオンに設定されている場合、つまりアルコール濃度推定値が一回以上更新されていると判定された場合には（ステップＳ４９：Ｎｏ）、ステップＳ５１で閾値設定手段５５が第２の閾値よりも小さい値である第４の閾値Ｔｈ４を判定閾値として設定する。なおこの第４の閾値Ｔｈ４は上述した第３の閾値Ｔｈ３と同程度の値である。
【０１００】
そして、ステップＳ５２で補正値の変化割合の絶対値（｜ΔＫ｜）が、設定された判定閾値（第２の閾値Ｔｈ２又は第４の閾値Ｔｈ４）よりも大きいか否かが判定され、｜ΔＫ｜＞「判定閾値」である場合には（ステップＳ５２：Ｙｅｓ）、ステップＳ５３で濃度変化フラグがオンに設定された後、アルコール濃度補正値ＫＡＬＣＨが更新される（ステップＳ５４）。その後、濃度推定値更新手段５６が燃料のアルコール濃度推定値を更新し（ステップＳ５５）、リターンされる。
【０１０１】
例えば、図３に示す非給油時の例で説明すると、まず時間Ｔ１における判定では、図中６段目（Ｆ／Ｂ補正値）に示すように、時間Ｔ１における補正値の変化割合ΔＫ（ΔＫ３）が判定閾値（第２の閾値Ｔｈ２）よりも小さいため、図中７段目（アルコール濃度）に示すようにアルコール濃度は更新されない。その後、時間Ｔ２の判定の時点では、補正値の変化割合ΔＫ（ΔＫ４）が判定閾値（第２の閾値Ｔｈ２）よりも大きいため、時間Ｔ２で初めてアルコール濃度が更新される。その後の判定（例えば、時間Ｔ３の判定）では、補正値の変化割合ΔＫが判定閾値（第４の閾値Ｔｈ４）よりも大きければ、図示したようにアルコール濃度が更新されることになる。
【０１０２】
図６に戻り、ステップＳ５２で｜ΔＫ｜≦「判定閾値」である場合、すなわち補正値の変化割合ΔＫが比較的小さい場合には（ステップＳ５２：Ｎｏ）、濃度推定値更新手段５６が燃料のアルコール濃度推定値を更新することなくリターンされる。
【０１０３】
このような非給油時の一連の処理を繰り返している間に、始動後燃料消費量ΣＦＬＳ（ｋ）が徐々に増加する（ステップＳ６）。そしてステップＳ４１で始動後燃料消費量ΣＦＬＳ（ｋ）が第２の所定値Ａ２以上となると、次いでステップＳ５６で濃度推定実行条件フラグがオンに設定されているか否かが判定される。初めてステップＳ５６の判定が行われる場合には、濃度推定実行フラグはオフに設定されているため（ステップＳ５６：Ｎｏ）、ステップＳ４２に進む。ステップＳ５６の判定が行われる場合、給油後燃料消費量ΣＦＬ（ｋ）は常に第１の所定値以上であるため（ステップＳ４２：Ｙｅｓ）、その後ステップＳ４３〜ステップＳ５５の処理が実施される。
【０１０４】
また始動後燃料消費量ΣＦＬＳ（ｋ）が第２の所定値Ａ２を超え（ステップＳ４５：Ｙｅｓ）、その後、アルコール濃度推定が実施された場合には、ステップＳ４６で濃度推定実行条件フラグがオンに設定される。したがって、その後ステップＳ５６に進むと、濃度推定実行条件フラグはオンに設定されているため（ステップＳ５６：Ｙｅｓ）、次いでステップＳ５７で始動毎推定フラグがオフに設定される。またステップＳ５８でＡ／Ｆ学習が許可されると共に、パージ周期が通常設定に切り替えられる。さらに濃度変化フラグがオフに設定されると共に、濃度推定実行条件フラグがオフに設定され、その後リターンされる。
【０１０５】
このようにステップＳ５７で始動毎推定フラグがオフに設定された後、ステップＳ１に戻る場合には、ステップＳ４１に進むことはなく、ステップＳ６１に進むことになる。つまり上述したステップＳ４５〜ステップＳ４７を設けることで、始動後燃料消費量ΣＦＬＳ（ｋ）が第２の所定値Ａ２を超えた後に、さらに一回だけ所定のタイミング（例えば、図３の時間Ｔ３）で、燃料のアルコール濃度推定が実行されるようにしている。
【０１０６】
次に給油フラグ及び始動毎推定フラグが共にオフである場合、すなわち上述のようにステップＳ６１に進んだ場合の処理について説明する。
【０１０７】
図７に示すように、まずステップＳ６１で、実行条件判定手段５４が、温度相関値検出手段としての水温センサ４４の検出結果に基づいて冷却水の水温が所定温度Ｔｅ１を超えているか否かを判定する（図３参照）。このステップＳ６１では、温度相関検出手段が検出するエンジン１１の温度と相関する温度相関値に基づいて、エンジン１１が十分に暖機されて安定状態にあるか否かの判定を行っている。本実施形態では、温度相関値として水温センサ４４によって冷却水の水温を検出しているが、温度相関値はこれに限定されるものではなく、例えば、エンジン１１の油温、或いはエンジン１１の暖機状態と相関のある走行距離や経過時間等であってもよい。
【０１０８】
ここで冷却水の温度が所定温度Ｔｅ１よりも高い場合には（ステップＳ６１：Ｙｅｓ）、次いでステップＳ６２で暖機後濃度推定実行回数Ｎが所定回数よりも少ないか否かが判定される。なお暖機後濃度推定実行回数Ｎとは、エンジン１１が十分に暖機された後に燃料のアルコール濃度推定が実行された回数であり、初期設定ではゼロとなっている。
【０１０９】
暖機後濃度推定実行回数Ｎが所定回数よりも少ない場合（ステップＳ６２：Ｙｅｓ）、ステップＳ６３でフィードバック制御によるＡ／Ｆ学習が禁止されると共にパージ周期が特別設定に切り替えられる。さらにステップＳ６４でアルコール濃度推定実行条件が成立したか否かが判定される。アルコール濃度推定実行条件が成立していると（ステップＳ６４：Ｙｅｓ）、暖機後濃度推定実行回数Ｎが１回加算される（ステップＳ６５）。
【０１１０】
その後、ステップＳ６６で補正値変化度合演算手段５１が、所定のタイミング（例えば、図３に示す時間Ｔ４）で空燃比をフィードバック制御する際の補正値の変化割合ΔＫを演算する。次いで閾値設定手段５５が、その直前に設定されていた判定閾値と同じ値、例えば、第３の閾値Ｔｈ３又は第４の閾値Ｔｈ４と同じ値である第５の閾値Ｔｈ５を判定閾値として設定する（ステップＳ６７）。なおステップＳ６７において、閾値設定手段５５は、例えば、第２の閾値Ｔｈ２或いは第１の閾値Ｔｈ１を判定閾値として設定するようにしてもよい。
【０１１１】
そして、ステップＳ６８で補正値の変化割合の絶対値（｜ΔＫ｜）が、設定された判定閾値（第５の閾値Ｔｈ５）よりも大きいか否かが判定される。｜ΔＫ｜＞「判定閾値」である場合には（ステップＳ６８：Ｙｅｓ）、ステップＳ６９でアルコール濃度補正値ＫＡＬＣＨが更新されると共に、ステップＳ７０で燃料のアルコール濃度推定値が更新され（図３参照）、その後リターンされる。
【０１１２】
なおステップＳ６１で冷却水の温度が所定温度Ｔｅ１以下である場合には（ステップＳ６１：Ｎｏ）、ステップＳ７１で暖機後濃度推定実行回数Ｎがリセットされ（Ｎ＝０）、燃料のアルコール濃度推定は実行されないため、ステップＳ７２でＡ／Ｆ学習が許可されると共に、パージ周期が通常設定に切り替えられて、その後リターンされる。
【０１１３】
このように、エンジン１１が十分に暖機された後にも、所定回数（例えば、２，３回程度）だけ燃料のアルコール濃度推定を実行して完了することで、推定された燃料のアルコール濃度と実際のアルコール濃度とにずれが生じていたとしても、アルコール濃度を再推定して修正することができる。したがって、空燃比を一層適正に制御することができる。
【０１１４】
以上、本発明の実施形態について説明したが、勿論本発明はこの実施形態に限定されるものではない。例えば、上述の実施形態では、吸気管噴射型のエンジンを例示して本発明を説明したが、勿論、本発明は、例えば、筒内噴射型等、他のタイプのエンジンにも採用することができる。
【図面の簡単な説明】
【０１１５】
【図１】一実施形態に係るエンジンシステムの概略構成図である。
【図２】一実施形態に係る燃料のアルコール濃度推定装置の概略を示す機能ブロック図である。
【図３】本発明に係る燃料のアルコール濃度推定方法を説明するタイミングチャートである。
【図４】一実施形態に係る燃料のアルコール濃度推定方法を示すフローチャートである。
【図５】一実施形態に係る燃料のアルコール濃度推定方法を示すフローチャートである。
【図６】一実施形態に係る燃料のアルコール濃度推定方法を示すフローチャートである。
【図７】一実施形態に係る燃料のアルコール濃度推定方法を示すフローチャートである。
【符号の説明】
【０１１６】
１０アルコール濃度推定装置
１１  エンジン
１２  シリンダヘッド
１３  シリンダブロック
１４  シリンダ
１５  ピストン
１６  燃焼室
１７  コンロッド
１８  クランクシャフト
１９  吸気ポート
２０  吸気マニホールド
２１  吸気弁
２２  燃料パイプ
２３  燃料タンク
２４  燃料噴射弁
２５  キャニスタ
２６  パージ通路
２７  吸気管
２８  パージ弁
２９  燃料レベルセンサ
３０  排気ポート
３１  排気マニホールド
３２  排気管
３３  排気弁
３４  点火プラグ
３５  点火コイル
３６  サージタンク
３７  スロットルバルブ
３８  スロットルポジションセンサ
３９  エアフローセンサ
４０  三元触媒
４１  Ｏ２センサ
４２  ＥＣＵ
４３  クランク角センサ
４４  水温センサ
【図１】
2010090792.tif 000003
【図２】
2010090792.tif 000004
【図３】
2010090792.tif 000005
【図４】
2010090792.tif 000006
【図５】
2010090792.tif 000007
【図６】
2010090792.tif 000008
【図７】
2010090792.tif 000009