(57)【特許請求の範囲】
【請求項１】
ａ．負荷に接続可能な汎用型のエンジンと、
ｂ．操作者によって設定された前記エンジンの目標回転数を入力する目標回転数入力手段と、
ｃ．前記エンジンの回転数を検出するエンジン回転数検出手段と、
ｄ．前記検出された回転数が前記入力された目標回転数に一致するように前記エンジンの吸気管に設けられたスロットルバルブのスロットル開度を調整するスロットル開度調整手段と、
ｅ．前記検出された回転数と前記調整されたスロットル開度に基づいて予め設定された燃料噴射量特性に従って前記エンジンの燃料噴射量を算出する燃料噴射量算出手段と、
ｆ．前記算出された燃料噴射量に基づいて燃料を噴射する燃料噴射手段と、
を備えた汎用型エンジンの空燃比制御装置において、
ｇ．前記エンジンに接続された負荷が一定であるか否か判断する負荷判断手段と、
ｈ．前記エンジンに接続された負荷が一定であると判断されるとき、前記算出された燃料噴射量に対して増加あるいは増減させた増減燃料噴射量を前記燃料噴射手段によって噴射させる増減燃料噴射量噴射手段と、
ｉ．前記増減燃料噴射量を噴射させたときに調整される前記スロットル開度に基づいて前記エンジンの出力が最大となる空燃比を推定する空燃比推定手段と、
ｊ．前記推定された空燃比に基づいて前記燃料噴射量特性を補正する補正手段、
を備えると共に、前記空燃比推定手段は、前記増減燃料噴射量を噴射させたときに調整される前記スロットル開度の最小値を求め、前記求めた最小値に対応する空燃比を前記エンジンの出力が最大となる空燃比と推定することを特徴とする汎用型エンジンの空燃比制御装置。
【請求項２】
前記補正手段は、前記補正前の燃料噴射量特性に従って算出された前記エンジンの出力が最大となる空燃比を達成する燃料噴射量と前記推定された前記エンジンの出力が最大となる空燃比を達成する燃料噴射量との比に基づいて前記燃料噴射量特性を補正することを特徴とする請求項１記載の汎用型エンジンの空燃比制御装置。
【請求項３】
さらに、
ｋ．前記補正手段によって前記燃料噴射量特性が補正されたとき、前記燃料噴射量特性が補正されたことを報知する報知手段、
を備えたことを特徴とする請求項１または２記載の汎用型エンジンの空燃比制御装置。
【請求項４】
さらに、
ｌ．前記補正手段によって前記燃料噴射量特性が補正されたとき、前記燃料噴射量特性を補正する補正係数を記憶する補正係数記憶手段、
を備えたことを特徴とする請求項１から３のいずれかに記載の汎用型エンジンの空燃比制御装置。
【請求項５】
前記負荷判断手段は、前記検出された回転数が所定時間継続して前記目標回転数に基づいて設定される所定範囲にあるとき、前記エンジンに接続された負荷が一定であると判断することを特徴とする請求項１から４のいずれかに記載の汎用型エンジンの空燃比制御装置。
【請求項６】
前記負荷判断手段は、前記調整されたスロットル開度が所定スロットル開度以下であって前記調整されたスロットル開度の変化量が所定時間継続して所定変化量以下であるとき、前記エンジンに接続された負荷が一定であると判断することを特徴とする請求項１から５のいずれかに記載の汎用型エンジンの空燃比制御装置。
【請求項７】
前記燃料は、アルコールとガソリンからなる混合燃料であることを特徴とする請求項１から６のいずれかに記載の汎用型エンジンの空燃比制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は汎用型エンジンの空燃比制御装置に関する。
【背景技術】
【０００２】
従来、エンジンの空燃比制御においては、下記特許文献１に示されるように、排気管に排気中の空燃比を検出する空燃比センサを設け、検出された空燃比が理論空燃比となるように燃料噴射量を補正する空燃比フィードバック制御が知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−１２２０３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、発電機や芝刈り機といった製品に搭載される汎用型のエンジンにあっては、理論空燃比よりもリッチ側のエンジンの出力が最大となる空燃比（いわゆる出力空燃比）で駆動するのが望ましい。そのため、理論空燃比の近傍で出力が変化するＯ２（酸素）センサでは出力空燃比でエンジンを駆動制御することができない。空燃比に比例した出力を生じる広域空燃比センサ（ＬＡＦセンサ）を用いれば可能となるが、そもそもＯ２センサやＬＡＦセンサ、特にＬＡＦセンサは高価であるため、小型であって価格が低廉な汎用型のエンジンにはコストの観点からそのような空燃比センサを設けることはできないといった問題があった。  
【０００５】
従って、この発明の目的は上記した課題を解決し、Ｏ２センサやＬＡＦセンサなどの高価な空燃比センサを設けることなく、出力空燃比を推定し、出力空燃比でエンジンを駆動するように燃料噴射量をフィードバック補正するようにした汎用型エンジンの空燃比制御装置を提供することにある。
【課題を解決するための手段】
【０００６】
上記の目的を達成するために、請求項１にあっては、負荷に接続可能なエンジンと、操作者によって設定された前記エンジンの目標回転数を入力する目標回転数入力手段と、前記エンジンの回転数を検出するエンジン回転数検出手段と、前記検出された回転数が前記入力された目標回転数に一致するように前記エンジンの吸気管に設けられたスロットルバルブのスロットル開度を調整するスロットル開度調整手段と、前記検出された回転数と前記調整されたスロットル開度に基づいて予め設定された燃料噴射量特性に従って前記エンジンの燃料噴射量を算出する燃料噴射量算出手段と、前記算出された燃料噴射量に基づいて燃料を噴射する燃料噴射手段とを備えた汎用型エンジンの空燃比制御装置において、前記エンジンに接続された負荷が一定であるか否か判断する負荷判断手段と、前記エンジンに接続された負荷が一定であると判断されるとき、前記算出された燃料噴射量に対して増加あるいは増減させた増減燃料噴射量を前記燃料噴射手段によって噴射させる増減燃料噴射量噴射手段と、前記増減燃料噴射量を噴射させたときに調整される前記スロットル開度に基づいて前記エンジンの出力が最大となる空燃比を推定する空燃比推定手段と、前記推定された空燃比に基づいて前記燃料噴射量特性を補正する補正手段を備えると共に、前記空燃比推定手段は、前記増減燃料噴射量を噴射させたときに調整される前記スロットル開度の最小値を求め、前記求めた最小値に対応する空燃比を前記エンジンの出力が最大となる空燃比と推定する如く構成した。
【０００７】
また、請求項２に係る汎用型エンジンの空燃比制御装置にあっては、前記補正手段は、前記補正前の燃料噴射量特性に従って算出された前記エンジンの出力が最大となる空燃比を達成する燃料噴射量と前記推定された前記エンジンの出力が最大となる空燃比を達成する燃料噴射量との比に基づいて前記燃料噴射量特性を補正する如く構成した。
【０００８】
また、請求項３に係る汎用型エンジンの空燃比制御装置にあっては、さらに、前記補正手段によって前記燃料噴射量特性が補正されたとき、前記燃料噴射量特性が補正されたことを報知する報知手段を備える如く構成した。
【０００９】
また、請求項４に係る汎用型エンジンの空燃比制御装置にあっては、さらに、前記補正手段によって前記燃料噴射量特性が補正されたとき、前記燃料噴射量特性を補正する補正係数を記憶する補正係数記憶手段を備える如く構成した。
【００１０】
また、請求項５に係る汎用型エンジンの空燃比制御装置にあっては、前記負荷判断手段は、前記検出された回転数が所定時間継続して前記目標回転数に基づいて設定される所定範囲にあるとき、前記エンジンに接続された負荷が一定であると判断する如く構成した。
【００１１】
また、請求項６に係る汎用型エンジンの空燃比制御装置にあっては、前記負荷判断手段は、前記調整されたスロットル開度が所定スロットル開度以下であって前記調整されたスロットル開度の変化量が所定時間継続して所定変化量以下であるとき、前記エンジンに接続された負荷が一定であると判断する如く構成した。
【００１２】
また、請求項７に係る汎用型エンジンの空燃比制御装置にあっては、前記燃料は、アルコールとガソリンからなる混合燃料である如く構成した。
【発明の効果】
【００１３】
請求項１にあっては、検出されたエンジン回転数が入力された目標回転数に一致するようにエンジンの吸気管に設けられたスロットルバルブのスロットル開度を調整するスロットル開度調整手段と、検出されたエンジン回転数と調整されたスロットル開度に基づいて予め設定された燃料噴射量特性に従ってエンジンの燃料噴射量を算出する燃料噴射量算出手段と、算出された燃料噴射量に基づいて燃料を噴射する燃料噴射手段とを備えた汎用型エンジンの空燃比制御装置において、エンジンに接続された負荷が一定であるか否か判断し、一定であると判断されるとき、算出された燃料噴射量に対して増加あるいは増減させた増減燃料噴射量を燃料噴射手段によって噴射させ、そのときに調整されるスロットル開度に基づいてエンジンの出力が最大となる空燃比（出力空燃比）を推定し、推定された空燃比に基づいて燃料噴射量特性を補正する如く構成、即ち、エンジン回転数が目標回転数に一致するようにスロットル開度を制御するガバナを備えたエンジン制御装置において、エンジン負荷が一定である状況で予め設定された燃料噴射量特性に従って算出された燃料噴射量を故意に増減変化させることでエンジン出力、延いてはエンジン回転数を変動させ、それに応じて変動するスロットル開度を利用して出力空燃比を推定し、推定された出力空燃比に基づいて燃料噴射量特性をフィードバック補正する如く構成したので、Ｏ２センサやＬＡＦセンサなどの高価な空燃比センサを設けることなく、出力空燃比でエンジンを駆動するように燃料噴射量をフィードバック補正することができる。また、増減燃料噴射量を噴射させたときに調整されるスロットル開度の最小値を求め、求めた最小値に対応する空燃比をエンジンの出力が最大となる空燃比と推定する如く構成、即ち、求めたスロットル開度最小値に対応する燃料噴射量を噴射させた場合、エンジン出力が最大となることを利用して出力空燃比を推定する如く構成したので、簡易な構成でありながら出力空燃比を適切に推定することができる。
【００１４】
請求項２に係る汎用型エンジンの空燃比制御装置にあっては、補正前の燃料噴射量特性に従って算出されたエンジンの出力が最大となる空燃比を達成する燃料噴射量と推定されたエンジンの出力が最大となる空燃比を達成する燃料噴射量との比に基づいて燃料噴射量特性を補正する如く構成したので、上記した効果に加え、出力空燃比でエンジンを駆動するように燃料噴射量をより適切にフィードバック補正することができる。
【００１５】
請求項３に係る汎用型エンジンの空燃比制御装置にあっては、さらに、燃料噴射量特性が補正されたとき、燃料噴射量特性が補正されたことを報知する如く構成したので、上記した効果に加え、出力空燃比でエンジンが適切に駆動されていることを操作者に知らせることができる。
【００１６】
請求項４に係る汎用型エンジンの空燃比制御装置にあっては、さらに、燃料噴射量特性が補正されたとき、燃料噴射量特性を補正する補正係数を記憶する如く構成したので、上記した効果に加え、次回のエンジン始動時にその補正係数を用いて補正された燃料噴射量特性に従って燃料噴射量を算出することで、エンジンを適切に始動することができる。
【００１７】
請求項５に係る汎用型エンジンの空燃比制御装置にあっては、検出された回転数が所定時間継続して目標回転数に基づいて設定される所定範囲にあるとき、エンジンに接続された負荷が一定であると判断する如く構成したので、上記した効果に加え、簡易な構成でありながらエンジン負荷が一定であることを適切に判断することができる。
【００１８】
請求項６に係る汎用型エンジンの空燃比制御装置にあっては、調整されたスロットル開度が所定スロットル開度以下であって調整されたスロットル開度の変化量が所定時間継続して所定変化量以下であるとき、エンジンに接続された負荷が一定であると判断する如く構成、即ち、所定時間継続してアイドル回転数を維持するとき、エンジン負荷が一定であると判断する如く構成したので、上記した効果に加え、簡易な構成でありながらエンジン負荷が一定であることを適切に判断することができる。
【００１９】
請求項７に係る汎用型エンジンの空燃比制御装置にあっては、燃料は、アルコールとガソリンからなる混合燃料である如く構成したので、上記した効果に加え、アルコールとガソリンの混合割合によって出力空燃比が変化する場合であっても出力空燃比を推定することで、様々な割合の混合燃料にも適切に対応してエンジンを出力空燃比で駆動することができる。
【図面の簡単な説明】
【００２０】
【図１】この発明の実施例に係る汎用型エンジンの空燃比制御装置を全体的に示す概略図である。
【図２】図１に示す目標回転数入力ボリュームの詳細図である。
【図３】図１に示すマップ切換スイッチの詳細図である。
【図４】図１に示す電子制御ユニット（ＥＣＵ）の構成を示すブロック図である。
【図５】図１に示す制御装置の動作を示すフロー・チャートである。
【図６】図５のフィードバック補正係数算出処理を示すサブ・ルーチン・フロー・チャートである。
【図７】図６の出力空燃比推定処理を示すサブ・ルーチン・フロー・チャートである。
【図８】図７の出力空燃比推定の原理を示すグラフである。
【図９】図７の出力空燃比相当燃料噴射量（Ｑｍｉｎ）の算出を示すグラフである。
【図１０】図５のアルコール割合推定処理と燃料噴射量マップ切換処理を示すサブ・ルーチン・フロー・チャートである。
【発明を実施するための形態】
【００２１】
以下、添付図面に即してこの発明に係る汎用型エンジンの空燃比制御装置を実施するための形態について説明する。
【実施例】
【００２２】
図１は、この発明の実施例に係る汎用型エンジンの空燃比制御装置を全体的に示す概略図である。
【００２３】
図１において、符号１０は汎用型エンジンの空燃比制御装置を示す。制御装置１０は、エンジン（燃焼室付近を断面で示す）１２と、それを電子的に制御する電子制御ユニット（Electronic Control Unit。以下「ＥＣＵ」という）１４からなる。ＥＣＵ１４は、ＣＰＵやメモリ（具体的には不揮発性メモリからなるＥＥＰＲＯＭ）などを備えたマイクロ・コンピュータからなる。
【００２４】
エンジン１２は空冷４サイクルの単気筒ＯＨＶ型で４４０ｃｃ程度の排気量を有し、例えば発電機や芝刈り機や除雪機といった製品への搭載が予定される汎用型のエンジンである。エンジン１２には、製品が負荷として接続される。
【００２５】
エンジン１２の吸気管１６にはスロットルバルブ１８とインジェクタ２０が設けられ、スロットルバルブ１８によって調量された吸気とインジェクタ２０から噴射された燃料が混合した混合気は、吸気弁２２が開弁させられるとき、燃焼室２４に導入され、点火プラグ２６で点火されると燃焼（爆発）し、ピストン２８を駆動させる。駆動したピストン２８は、コンロッド３０を介してクランクシャフト３２を回転させる。クランクシャフト３２は各製品の負荷に接続され、その回転力が負荷に伝達される。
【００２６】
クランクシャフト３２には円周部に沿って複数個（８個）のパルサコイル３４が設けられ、クランクシャフト３２が回転させられるとき、パルサコイル３４の外周に配置されたパルサコイル検出器３６によってピストン２８の位置を示す信号（クランク角信号Ｐｃ）が出力される。
【００２７】
尚、燃焼した混合気は排気として排気弁３８が開弁されるとき、排気管４０に排出される。
【００２８】
スロットルバルブ１８にはスロットルモータ（電動モータ）４２が接続される。具体的には、スロットルモータ４２はステッパモータからなり、減速機を介してスロットルバルブ１８の回転シャフトに接続される。よって、スロットルモータ４２を駆動することでスロットルバルブ１８の開度（スロットル開度）が調整される。
【００２９】
インジェクタ２０には燃料タンクや燃料ポンプからなる燃料供給装置（図示せず）によって加圧された燃料が供給される。燃料として、アルコール（具体的にはエタノール）とガソリンからなる混合燃料が用いられる。
【００３０】
シリンダ４４の近傍には温度センサ４６が設けられ、エンジン１２の温度を示す信号が出力される。
【００３１】
上記したインジェクタ２０、点火プラグ２６、パルサコイル検出器３６、スロットルモータ４２および温度センサ４６はＥＣＵ１４に電気的に接続される。
【００３２】
ＥＣＵ１４には操作者によって設定されたエンジン１２の目標回転数を入力するための目標回転数入力ボリューム４８と、燃料噴射量マップを切り換えるためのマップ切換スイッチ５０と、表示灯５２が接続される。
【００３３】
図２は目標回転数入力ボリューム４８、図３はマップ切換スイッチ５０の詳細図である。
【００３４】
目標回転数入力ボリューム４８は１０００ｒｐｍから５０００ｒｐｍの目盛り範囲において連続的に回転可能とされる。マップ切換スイッチ５０はアルコール割合低、アルコール割合中、アルコール割合高の３段のいずれかに切り換えられるように回転可能とされる。目標回転数入力ボリューム４８とマップ切換スイッチ５０はそれぞれ操作者によって操作自在に設けられる。操作者は燃料タンクに存在する混合燃料のアルコール割合を概ね把握し、アルコール割合に応じた切換位置にマップ切換スイッチ５０を切り換える。
【００３５】
例えば、アルコール割合低は２５％前後のアルコール割合を、アルコール割合中は５０％前後のアルコール割合を、アルコール割合高は７５％前後のアルコール割合を意味するものとする。
【００３６】
表示灯５２はＬＥＤ（発光ダイオード）などからなり、操作者に視認可能な位置に設けられる。
【００３７】
ＥＣＵ１４はパルサコイル検出器３６と温度センサ４６からの検出信号および目標回転数入力ボリューム４８とマップ切換スイッチ５０からの入力信号に基づき、インジェクタ２０、点火プラグ２６、スロットルモータ４２および表示灯５２の動作を制御する。
【００３８】
図４はＥＣＵ１４の構成を示すブロック図である。ＥＣＵ１４はエンジン回転数検出ブロック、ガバナ制御ブロック、燃料噴射量算出ブロック、フィードバック補正係数算出ブロックおよび点火時期算出ブロックを備える。
【００３９】
エンジン回転数検出ブロックはパルサコイル検出器３６で検出されたクランク角信号Ｐｃをカウントし、エンジン回転数ＮＥ（ｒｐｍ）を検出する。
【００４０】
ガバナ制御ブロックは、目標回転数入力ボリューム４８で入力されたエンジン１２の目標回転数Ｎｄとエンジン回転数検出ブロックで検出されたエンジン回転数ＮＥを入力し、検出されたエンジン回転数ＮＥが入力された目標回転数Ｎｄに一致するようにスロットル開度を調整する。
【００４１】
具体的には、検出されたエンジン回転数ＮＥが目標回転数Ｎｄより小さい場合、現在のスロットル開度指令値θｔｈより所定開度だけ増大させたスロットル開度指令値θｔｈを出力する。逆に、検出されたエンジン回転数ＮＥが目標回転数Ｎｄより大きい場合、現在出力しているスロットル開度指令値θｔｈより所定開度だけ減少させたスロットル開度指令値θｔｈを出力する。出力されたスロットル開度指令値θｔｈはスロットルモータ４２に送信され、スロットルモータ４２によってスロットル開度が調整される。
【００４２】
尚、スロットル開度を増大または減少させる際の所定開度はＰＩＤ制御に基づいて決定される。
【００４３】
燃料噴射量算出ブロックは、エンジン回転数検出ブロックで検出されたエンジン回転数ＮＥとガバナ制御ブロックで出力されたスロットル開度指令値θｔｈに基づいて予め設定された燃料噴射量マップに従ってマップ燃料噴射量Ｑｍａｐを算出する。燃料噴射量マップは理想状態（外気温２５℃、高度０ｍ、湿度５０％）においてエンジン１２の出力が最大となる空燃比（この明細書において「出力空燃比」という）が達成されるような燃料噴射量を予め実験で求め、設定されたものである。
【００４４】
燃料噴射量マップはアルコールの割合が低、中、高（具体的には２５％、５０％、７５％）の混合燃料について３種類準備されると共に、燃料噴射量算出ブロックにはマップ切換スイッチ５０から切換位置を示す信号が入力される。即ち、マップ切換スイッチ５０の切換位置に応じた燃料噴射量マップが選択され、選択された燃料噴射量マップに従って燃料噴射量が算出される。
【００４５】
尚、燃料噴射量算出ブロックには、温度センサ４６で検出されたエンジン温度Ｔｅも入力され、エンジン始動時において燃料噴射量マップに従って算出された燃料噴射量をエンジン温度Ｔｅに基づいて補正する。
【００４６】
燃料噴射量算出ブロックで算出されたマップ燃料噴射量Ｑｍａｐはフィードバック補正係数算出ブロックに送られる。フィードバック補正係数算出ブロックでは、後述するようにフィードバック補正係数Ｋが算出される。また、フィードバック補正係数算出ブロックは、算出されたフィードバック補正係数Ｋに基づいて表示灯５２を動作させる。
【００４７】
フィードバック補正係数Ｋは燃料噴射量算出ブロックに送信され、送信されたフィードバック補正係数Ｋを燃料噴射量マップの各燃料噴射量に乗算して燃料噴射量マップを再構築（補正）し、再構築された燃料噴射量マップに従って算出された燃料噴射量を最終燃料噴射量指令値Ｑｆとしてインジェクタ２０に送信する。インジェクタ２０は送信された指令値Ｑｆに基づいて燃料を噴射する。
【００４８】
点火時期算出ブロックは、パルサコイル検出器３６からのクランク角信号Ｐｃに基づいて点火時期を算出し、算出された点火時期に点火プラグ２６に点火信号を送信する。
【００４９】
図５は、この発明に係る制御装置の動作を示すフロー・チャートである。図示のプログラムは装置の電源がオンされたとき、ＥＣＵ１４において実行される。
【００５０】
先ずＳ１０において、マップ切換スイッチ５０が切り換えられたか否か判断する。具体的には、マップ切換スイッチ５０が前回のエンジン停止時における切換位置から他の切換位置に切り換えられたか否か判断する。
【００５１】
Ｓ１０において肯定される場合、Ｓ１２に進んで後述するようにメモリに記憶されたフィードバック補正係数Ｋを初期化する。具体的にはフィードバック補正係数Ｋを１に設定する。
【００５２】
Ｓ１０において否定される場合、Ｓ１４に進んでメモリに記憶されたフィードバック補正係数Ｋを読み出し、燃料噴射量マップを再構築する。具体的には、マップ切換スイッチ５０の切換位置に対応する燃料噴射量マップに対してフィードバック補正係数Ｋを乗じてマップを再構築する。次いでＳ１６に進み、表示灯５２を点灯させる。
【００５３】
次いでＳ１８に進み、エンストが発生したか否か判断する。具体的には、スタータモータあるいはリコイルスタータでクランクシャフト３２をクランキングさせてエンジン１２を始動したとき、完爆回転数に到達せずにエンジン１２が停止したか否か判断する。Ｓ１８で肯定される場合は、再構築された燃料噴射量マップが適切ではないと判断し、Ｓ１２に進んでフィードバック補正係数Ｋを初期化し、燃料噴射量マップを再構築される前の元の燃料噴射量マップに戻す。また、表示灯５２も消灯させる。
【００５４】
次いでＳ２０に進み、エンジン１２が始動して暖機運転が終了したか否か判断する。暖機運転の終了は、温度センサ４６の出力信号に基づいて判断する。暖機運転が終了したと判断されるとＳ２２に進み、フィードバック補正係数Ｋの算出処理を実行する。
【００５５】
図６はフィードバック補正係数Ｋの算出処理を示すサブ・ルーチン・フロー・チャートである。
【００５６】
先ずＳ１００において、所定範囲内の目標回転数Ｎｄが入力されているか判断する。具体的には、目標回転数入力ボリューム４８が１０００ｒｐｍから３０００ｒｐｍの範囲内に設定されているか否か判断する。
【００５７】
Ｓ１００において肯定される場合、Ｓ１０２に進んで検出されたエンジン回転数ＮＥが所定時間継続して目標回転数Ｎｄ近傍の値を示したか否か判断する。具体的には、エンジン回転数ＮＥが目標回転数Ｎｄに対して±２００ｒｐｍの範囲で５秒間継続して検出されたか否か判断する。
【００５８】
Ｓ１０２において肯定される場合、Ｓ１０４に進んでスロットル開度（正確にはスロットル開度指令値θｔｈ）が所定スロットル開度以下であって、かつ、スロットル開度の変化量（正確にはスロットル開度指令値θｔｈの変化量）が所定時間継続して所定変化量以下である否か判断する。具体的には、スロットル開度が３０％以下の開度であるか否か判断し、５秒間継続してスロットル開度の変化量が±１％であるか否か判断する。
【００５９】
Ｓ１０４において肯定される場合、Ｓ１０６に進んでエンジン１２に接続される負荷が一定であると判断する。
【００６０】
次いでＳ１０８に進み、マップ燃料噴射量Ｑｍａｐを算出する。具体的には、エンジン１２に接続される負荷が一定である状態において検出されるエンジン回転数ＮＥとスロットル開度指令値θｔｈに基づいて燃料噴射量マップ（Ｓ１４で再構築される前の元の燃料噴射量マップ）に従ってマップ燃料噴射量Ｑｍａｐを算出する。
【００６１】
次いでＳ１１０に進み、出力空燃比推定処理を実行する。
【００６２】
図７は出力空燃比推定処理を示すサブ・ルーチン・フロー・チャートである。
【００６３】
このフロー・チャートを説明する前に出力空燃比推定の原理について説明する。
【００６４】
図８はその原理を示すグラフである。横軸は空燃比Ａ／Ｆであり、グラフ中の破線は空燃比Ａ／Ｆに対するエンジン１２の出力特性を示す。一般的にエンジン出力は理論空燃比（Ａ／Ｆ＝１４．７（質量比））よりもリッチ側の空燃比で最大となる特性を有する。即ち、エンジン出力が最大となる空燃比（出力空燃比）よりもリーン側またはリッチ側に移行するに従って出力は低下する。
【００６５】
一方、エンジン１２に接続される負荷が一定であってエンジン回転数ＮＥが目標回転数Ｎｄに一致している状態においては、スロットル開度指令値θｔｈも電子ガバナ制御によってほぼ一定値を保持する。
【００６６】
その状態において、燃料噴射量を故意に増加あるいは減少させる、即ち空燃比を変化させるとエンジン出力が変化することからエンジン回転数ＮＥも変化する。従って、スロットル開度指令値θｔｈも電子ガバナ制御によって変化することとなる。即ち、図中で示すように燃料噴射量を変化させると、スロットル開度指令値θｔｈは出力空燃比において最小値を示し、それよりもリーン側またはリッチ側に移行するに従って増加することとなる。
【００６７】
従って、エンジン１２に接続される負荷が一定であってエンジン回転数ＮＥが目標回転数Ｎｄに一致する状態において、燃料噴射量を故意に増加あるいは減少させ、スロットル開度指令値θｔｈの最小値を求めることにより、出力空燃比を推定することができる。
【００６８】
図７の出力空燃比推定処理のフロー・チャートを説明すると、先ずＳ２００において燃料噴射量を増加させつつ、スロットル開度指令値θｔｈを読み込む。具体的には、燃料噴射量を１秒毎に５％ずつ増加させる。それによって調整されたスロットル開度指令値θｔｈを１００ｍｓｅｃ毎に読み込み、１秒間におけるスロットル開度指令値θｔｈの平均値を算出する。増加させて噴射した燃料噴射量とスロットル開度指令値θｔｈの平均値を逐次メモリに記憶する。
【００６９】
次いでＳ２０２に進み、スロットル開度指令値θｔｈが規定開度以上増加したか否か判断する。具体的には、燃料噴射量を増加させた後のスロットル開度指令値θｔｈ（平均値）が燃料噴射量を増加させる前に算出されたスロットル開度指令値θｔｈ（平均値）に対して１０％以上増加したか否か判断する。図８で言えば、点ａ付近に達したか否か判断する。
【００７０】
Ｓ２０２で肯定される場合、Ｓ２０４に進んで今度は逆に燃料噴射量を減少させつつ、スロットル開度指令値θｔｈを読み込む。具体的には、燃料噴射量を１秒毎に５％ずつ減少させる。それによって調整されたスロットル開度指令値θｔｈを１００ｍｓｅｃ毎に読み込み、１秒間におけるスロットル開度指令値θｔｈの平均値を算出する。減少させて噴射した燃料噴射量とスロットル開度指令値θｔｈの平均値を逐次メモリに記憶する。
【００７１】
次いでＳ２０６に進み、スロットル開度指令値θｔｈが規定開度以上増加したか否か判断する。具体的には、燃料噴射量を減少させた後のスロットル開度指令値θｔｈ（平均値）が燃料噴射量を減少させる前に算出されたスロットル開度指令値θｔｈ（平均値）に対して５％以上増加したか否か判断する。図８で言えば、点ｂ付近に達したか否か判断する。
【００７２】
Ｓ２０６で肯定される場合、Ｓ２０８に進んで出力空燃比相当燃料噴射量Ｑｍｉｎを算出する。具体的には、図９に示す如く、増加あるいは減少させて噴射した燃料噴射量とそのときに算出されたスロットル開度指令値θｔｈ（平均値）をプロットする。次いでスロットル開度指令値θｔｈの変化特性を２次曲線として最小２乗法によって近似する。次いで、近似された２次曲線におけるスロットル開度指令値θｔｈの最小値を求め、スロットル開度指令値θｔｈの最小値に対応する燃料噴射量を求める。このスロットル開度指令値θｔｈの最小値に対応する燃料噴射量が出力空燃比を達成する燃料噴射量、即ち出力空燃比相当燃料噴射量Ｑｍｉｎである。
【００７３】
図６のフロー・チャートに戻って説明を続けると、次いでＳ１１２に進んでフィードバック補正係数Ｋを算出する。フィードバック補正係数Ｋは、図示の如く、Ｓ１０８のマップ燃料噴射量ＱｍａｐとＳ２０８の出力空燃比相当燃料噴射量Ｑｍｉｎの比に基づいて算出する。
【００７４】
即ち、フィードバック補正係数Ｋは、理想状態（即ち燃料噴射量マップを設定する際の状態）において出力空燃比を達成する燃料噴射量と、エンジンが駆動される環境において実際に出力空燃比を達成する燃料噴射量とのずれの度合いを示す係数である。
【００７５】
図５のフロー・チャートに戻って説明を続けると、次いでＳ２４に進んで燃料噴射量マップを再構築する。具体的には、マップ切換スイッチの切換位置に対応する燃料噴射量マップに対してＳ１１２で算出されたフィードバック補正係数Ｋを乗じてマップを再構築する。
【００７６】
次いでＳ２６に進み、表示灯５２を点灯させる。表示灯５２を点灯させるのは、出力空燃比推定に基づいたフィードバック補正によって燃料噴射量マップが適切に再構築されたのを操作者に報知するためである。
【００７７】
次いでＳ２８に進み、Ｓ１１２で算出されたフィードバック補正係数Ｋをメモリに保存する。フィードバック補正係数Ｋを記憶するのは、Ｓ１４で述べたように次回のエンジン始動時に燃料噴射量マップを再構築し、出力空燃比で駆動されるような適切な燃料噴射量マップを得るためである。
【００７８】
次いでＳ３０に進み、アルコール割合推定と燃料噴射量マップ切換の処理を実行する。
【００７９】
図１０はそれら処理を示すサブ・ルーチン・フロー・チャートである。
【００８０】
先ずＳ３００においてフィードバック補正係数Ｋが所定値α以上であるか否か判断する。所定値αは１よりも大きい値、１．２などを設定する。
【００８１】
Ｓ３００で肯定される場合、Ｓ３０２に進んでマップ切換スイッチ５０がアルコール割合高の切換位置にあるか否か判断する。
【００８２】
Ｓ３０２で肯定される場合、Ｓ３０４に進んで表示灯５２を点滅させる。即ち、Ｓ３０２で肯定される場合は、アルコール割合高の燃料噴射量マップに対して算出されたフィードバック補正係数Ｋが１．２よりも大きい場合であり、この場合は混合燃料のアルコール割合が極めて高いもの（アルコール割合９０％以上）であると推定される。そのことから、操作者にガソリンを給油するよう促すべく表示灯５２を点滅させる。
【００８３】
Ｓ３０２で否定される場合、Ｓ３０６に進んでマップ切換スイッチ５０がアルコール割合中の切換位置にあるか否か判断する。
【００８４】
Ｓ３０６で肯定される場合、Ｓ３０８に進んで混合燃料のアルコール割合が高いと推定する。即ち、Ｓ３０６で肯定される場合は、アルコール割合中の燃料噴射量マップに対して算出されたフィードバック補正係数Ｋが１．２以上の場合であることから、アルコール割合中よりもアルコール割合の高いもの（アルコール割合７５％前後）であると推定される。従って、次いでＳ３１０に進んで、アルコール割合高の燃料噴射量マップに切り換える。
【００８５】
Ｓ３０６で否定される場合、Ｓ３１２に進んで混合燃料のアルコール割合が中程度と推定する。即ち、Ｓ３０６で否定される場合は、アルコール割合低の燃料噴射量マップに対して算出されたフィードバック補正係数Ｋが１．２以上の場合であることから、アルコール割合低よりも少しだけアルコール割合の高い中程度のもの（アルコール割合５０％前後）であると推定される。従って、次いでＳ３１４に進んで、アルコール割合中の燃料噴射量マップに切り換える。
【００８６】
Ｓ３００で否定される場合、Ｓ３１６に進んでフィードバック補正係数Ｋが所定値β以下であるか否か判断する。所定値βは１よりも小さい値、０．８などを設定する。
【００８７】
Ｓ３１６で肯定される場合、Ｓ３１８に進んでマップ切換スイッチ５０がアルコール割合高の切換位置にあるか否か判断する。
【００８８】
Ｓ３１８で肯定される場合、Ｓ３２０に進んで混合燃料のアルコール割合が中程度と推定する。即ち、Ｓ３１８で肯定される場合は、アルコール割合高の燃料噴射量マップに対して算出されたフィードバック補正係数Ｋが０．８以下の場合であることから、アルコール割合高よりも少しだけアルコール割合の低い中程度もの（アルコール割合５０％前後）であると推定される。従って、次いでＳ３２２に進んで、アルコール割合中の燃料噴射量マップに切り換える。
【００８９】
Ｓ３１８で否定される場合、Ｓ３２４に進んでマップ切換スイッチ５０がアルコール割合中の切換位置にあるか否か判断する。
【００９０】
Ｓ３２４で肯定される場合、Ｓ３２６に進んで混合燃料のアルコール割合が低いと推定する。即ち、Ｓ３２４で肯定される場合は、アルコール割合中の燃料噴射量マップに対して算出されたフィードバック補正係数Ｋが０．８以下の場合であることから、アルコール割合中よりもアルコール割合の低いもの（アルコール割合２５％前後）であると推定される。従って、次いでＳ３２８に進んで、アルコール割合低の燃料噴射量マップに切り換える。
【００９１】
Ｓ３１６やＳ３２４で否定される場合、燃料噴射量マップを切り換えることなく、そのままプログラムを終了する。
【００９２】
上記した如く、この発明の実施例にあっては、負荷に接続可能なエンジン（１２）と、操作者によって設定された前記エンジンの目標回転数（Ｎｄ）を入力する目標回転数入力手段（目標回転数入力ボリューム４８）と、前記エンジンの回転数（ＮＥ）を検出するエンジン回転数検出手段（ＥＣＵ１４（エンジン回転数算出ブロック））と、前記検出された回転数が前記入力された目標回転数に一致するように前記エンジンの吸気管（１６）に設けられたスロットルバルブ（１８）のスロットル開度（スロットル開度指令値θｔｈ）を調整するスロットル開度調整手段（ＥＣＵ１４（ガバナ制御ブロック）、スロットルモータ４２）と、前記検出された回転数と前記調整されたスロットル開度に基づいて予め設定された燃料噴射量特性（燃料噴射量マップ）に従って前記エンジンの燃料噴射量（マップ燃料噴射量Ｑｍａｐ）を算出する燃料噴射量算出手段（ＥＣＵ１４（燃料噴射量算出ブロック））と、前記算出された燃料噴射量に基づいて燃料を噴射する燃料噴射手段（インジェクタ２０）とを備えた汎用型エンジンの空燃比制御装置（１０）において、前記エンジンに接続された負荷が一定であるか否か判断する負荷判断手段（ＥＣＵ１４、Ｓ２２、Ｓ１０２からＳ１０４）と、前記エンジンに接続された負荷が一定であると判断されるとき、前記算出された燃料噴射量に対して増加あるいは増減させた増減燃料噴射量を前記燃料噴射手段によって噴射させる増減燃料噴射量噴射手段（ＥＣＵ１４、Ｓ２２、Ｓ１１０、Ｓ２００からＳ２０６）と、前記増減燃料噴射量を噴射させたときに調整される前記スロットル開度に基づいて前記エンジンの出力が最大となる空燃比（出力空燃比相当燃料噴射量Ｑｍｉｎ）を推定する空燃比推定手段（ＥＣＵ１４、Ｓ２２、Ｓ１１０、Ｓ２０８）と、前記推定された空燃比に基づいて前記燃料噴射量特性を補正する補正手段（ＥＣＵ１４、Ｓ２４）を備えると共に、前記空燃比推定手段は、前記増減燃料噴射量を噴射させたときに調整される前記スロットル開度の最小値を求め、前記求めた最小値に対応する空燃比を前記エンジンの出力が最大となる空燃比と推定する（ＥＣＵ１４、Ｓ２２、Ｓ１１０、Ｓ２０８）如く構成した。
【００９３】
即ち、エンジン回転数が目標回転数に一致するようにスロットル開度を制御するガバナを備えたエンジン制御装置において、エンジン負荷が一定である状況で予め設定された燃料噴射量特性に従って算出された燃料噴射量を故意に増減変化させることでエンジン出力、延いてはエンジン回転数を変動させ、それに応じて変動するスロットル開度を利用して出力空燃比を推定し、推定された出力空燃比に基づいて燃料噴射量特性をフィードバック補正する如く構成したので、Ｏ２センサやＬＡＦセンサなどの高価な空燃比センサを設けることなく、出力空燃比でエンジンを駆動するように燃料噴射量をフィードバック補正することができる。
【００９４】
また、前記空燃比推定手段は、前記増減燃料噴射量を噴射させたときに調整される前記スロットル開度の最小値を求め、前記求めた最小値に対応する空燃比を前記エンジンの出力が最大となる空燃比と推定する（ＥＣＵ１４、Ｓ２２、Ｓ１１０、Ｓ２０８）如く構成、即ち、求めたスロットル開度最小値に対応する燃料噴射量を噴射させた場合、エンジン出力が最大となることを利用して出力空燃比を推定する如く構成したので、簡易な構成でありながら出力空燃比を適切に推定することができる。
【００９５】
また、前記補正手段は、前記補正前の燃料噴射量特性に従って算出された前記エンジンの出力が最大となる空燃比を達成する燃料噴射量（マップ燃料噴射量）Ｑｍａｐと前記推定された前記エンジンの出力が最大となる空燃比を達成する燃料噴射量（出力空燃比相当燃料噴射量）Ｑｍｉｎとの比に基づいて前記燃料噴射量特性を補正する如く構成したので、出力空燃比でエンジンを駆動するように燃料噴射量をより適切にフィードバック補正することができる。
【００９６】
さらに、前記補正手段によって前記燃料噴射量特性が補正されたとき、前記燃料噴射量特性が補正されたことを報知する報知手段（表示灯５２、ＥＣＵ１４、Ｓ１６、Ｓ２６）を備える如く構成した。
【００９７】
それにより、出力空燃比でエンジンが適切に駆動されていることを操作者に知らせることができる。
【００９８】
さらに、前記補正手段によって前記燃料噴射量特性が補正されたとき、前記燃料噴射量特性を補正する補正係数を記憶する補正係数記憶手段を備える（ＥＣＵ１４、Ｓ２８）如く構成した。
【００９９】
それにより、次回のエンジン始動時にその補正係数を用いて補正された燃料噴射量特性に従って燃料噴射量を算出することで、エンジンを適切に始動することができる。
【０１００】
また、前記負荷判断手段は、前記検出された回転数が所定時間継続して前記目標回転数に基づいて設定される所定範囲にあるとき、前記エンジンに接続された負荷が一定であると判断する（ＥＣＵ１４、Ｓ２２、Ｓ１０２）如く構成した。
【０１０１】
それにより、簡易な構成でありながらエンジン負荷が一定であることを適切に判断することができる。
【０１０２】
また、前記負荷判断手段は、前記調整されたスロットル開度が所定スロットル開度以下であって前記調整されたスロットル開度の変化量が所定時間継続して所定変化量以下であるとき、前記エンジンに接続された負荷が一定であると判断する（ＥＣＵ１４、Ｓ２２、Ｓ１０４）如く構成した。
【０１０３】
即ち、所定時間継続してアイドル回転数を維持するとき、エンジン負荷が一定であると判断する如く構成したので、簡易な構成でありながらエンジン負荷が一定であることを適切に判断することができる。
【０１０４】
また、前記燃料は、アルコールとガソリンからなる混合燃料である如く構成した。
【０１０５】
それにより、アルコールとガソリンの混合割合によって出力空燃比が変化する場合であっても出力空燃比を推定することで、様々な割合の混合燃料にも適切に対応してエンジンを出力空燃比で駆動することができる。
【０１０６】
尚、上記において、フィードバック補正係数Ｋを燃料噴射量マップの各燃料噴射量に乗算して燃料噴射量マップを再構築するようにしたが、燃料噴射量マップに従って算出された燃料噴射量に対して単にフィードバック補正係数Ｋを乗算し、最終燃料噴射量指令値Ｑｆとしても良い。
【０１０７】
また、Ｓ１０２とＳ１０４において肯定されるとき、エンジンに接続される負荷が一定であると判断するようにしたが、いずれか一方のステップで肯定されるときにそのように判断するようにしても良い。
【０１０８】
また、マップ切換スイッチ５０の切り換えを３段としたが、燃料噴射量マップの数に応じて増加させても良く、燃料噴射量をマップ間で補完することによって連続的に切換可能なスイッチとしても良い。
【０１０９】
また、表示灯５２を点灯させるなどして視覚を通じて操作者に報知するようにしたが、ブザーなどを用いて聴覚を通じて報知するようにしても良い。
【符号の説明】
【０１１０】
１０：汎用型エンジンの空燃比制御装置、１２：エンジン、１４：ＥＣＵ、１６：吸気管、１８：スロットルバルブ、２０：インジェクタ、２２：吸気弁、２４：燃焼室、２６：点火プラグ、２８：ピストン、３０：コンロッド、３２：クランクシャフト、３４：パルサコイル、３６：パルサコイル検出器、３８：排気弁、４０：排気管、４２：スロットルモータ、４４：シリンダ、４６：温度センサ、４８：目標回転数入力ボリューム、５０：マップ切換スイッチ、５２：表示灯
【図１】
0005443195.tif 000002
【図２】
0005443195.tif 000003
【図３】
0005443195.tif 000004
【図４】
0005443195.tif 000005
【図５】
0005443195.tif 000006
【図６】
0005443195.tif 000007
【図７】
0005443195.tif 000008
【図８】
0005443195.tif 000009
【図９】
0005443195.tif 000010
【図１０】
0005443195.tif 000011