(57)【要約】【課題】瞬断や外部ノイズ混入等による一時的な異常が発生してもエンジン回転数の極端な低下による運転性の悪化などを招くことがないようにできるエンジンの吸入空気量測定装置を提供する。【解決手段】エアフローセンサからのパルス信号のエッジ間隔を順次周期として計測するとともに、計測された周期の逆数である周波数に基づいてエンジン制御に使用する吸入空気量を演算する第一の空気量演算手段と、前記周波数もしくはそれから換算される吸入空気量に基づいて、それらが急変したと認識されたとき、及び／又は、前記周波数もしくはそれから換算される吸入空気量が予め定められた異常判定用上下限しきい値を上まわるか下まわったとき、前記エアフローセンサに一時的な異常が発生したと判定する一時的異常判定手段と、前記一時的異常判定手段により前記エアフローセンサに一時的な異常が発生したと判定されてから該判定が解消されるまでの間の異常時用空気量を演算する第二の空気量演算手段と、を具備する。【選択図】図１０
2014020210.tif 000002
【特許請求の範囲】
【請求項１】
吸入空気量に応じた時間間隔でパルス信号を出力するエアフローセンサを備えたエンジンの吸入空気量測定装置であって、
前記エアフローセンサからのパルス信号のエッジ間隔を順次周期として計測するとともに、計測された周期又はその逆数である周波数に基づいてエンジン制御に使用する吸入空気量を演算する第一の空気量演算手段と、
前記周波数もしくはそれから換算される吸入空気量に基づいて、それらが急変したと認識されたとき、及び／又は、前記周波数もしくはそれから換算される吸入空気量が予め定められた異常判定用上下限しきい値を上まわるか下まわったとき、前記エアフローセンサに一時的な異常が発生したと判定する一時的異常判定手段と、
前記一時的異常判定手段により前記エアフローセンサに一時的な異常が発生したと判定されてから該判定が解消されるまでの間の異常時用空気量を演算する第二の空気量演算手段と、を具備して構成されたエンジンの吸入空気量測定装置。
【請求項２】
前記異常判定用上下限しきい値は、エンジン回転数、スロットル開度等のエンジン負荷、及び充填効率のうちの少なくとも一つに基づいて設定されていることを特徴とする請求項１に記載のエンジンの吸入空気量測定装置。
【請求項３】
前記一時的異常判定手段は、前記急変認識用として前記周波数もしくは吸入空気量の所定時間又は所定クランク角度当たりの変化量を求め、該変化量が予め定められたしきい値を超えたとき、以降の所定時間の間は前記一時的な異常期間中とみなし判定するようにされていることを特徴とする請求項１又は２に記載のエンジンの吸入空気量測定装置。
【請求項４】
前記急変認識用の変化量についてのしきい値は、エンジン回転数及び／又はスロットル開度等のエンジン負荷又は充填効率とに基づき、エンジン回転数が高いほど大きく、スロットル開度等のエンジン負荷又は充填効率が高いほど大きく設定されていることを特徴とする請求項３に記載のエンジンの吸入空気量測定装置。
【請求項５】
前記第二の空気量演算手段は、前記一時的な異常が発生したと判定される直前の前記周期、周波数もしくは吸入空気量、あるいは、直前を含む所定期間内における前記周期、周波数もしくは吸入空気量に基づいて前記異常時用空気量を演算することを特徴とする請求項１から４のいずれかに記載のエンジンの吸入空気量測定装置。
【請求項６】
前記第二の空気量演算手段は、前記周期、周波数もしくは吸入空気量について一次遅れ演算もしくは加重平均演算によるフィルタ処理を施すことによって前記異常時用空気量を求めることを特徴とする請求項１から５のいずれかに記載のエンジンの吸入空気量測定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、吸入空気量に応じた時間間隔(周期)でパルス信号を出力するエアフローセンサを備えたエンジンの吸入空気量測定装置に関する。
【背景技術】
【０００２】
近年、特に車載用エンジンの分野では、燃費や排気エミッション特性等を向上させることが重要な課題となっており、そのため、アナログ式センサからの信号は、マイクロコンピュータを内蔵したコントロールユニットにおいてA/D変換し、デジタル演算処理によって、エンジンの主要な操作量である燃料噴射量(空燃比)や点火時期等の制御を行うことが一般的になっている。特に、吸入空気量は、吸気管圧力センサを用いて体積流量として間接的に検出する手法では要求される精度が出にくいため、質量流量を検出できるエアフローセンサを用い、さらにデジタル演算処理でその測定精度を高めることが望まれる。
【０００３】
前記エアフローセンサとしては、吸入空気量に応じたレベルの電圧を出力する電圧出力型のものが一般的であるが、最近は、前記のように高い測定精度が要求されることから、特許文献1、2等に見られるように、吸入空気量に応じた時間間隔(周期)で検出信号としてのパルス信号を出力するパルス出力型あるいは周波数出力型と呼ばれるエアフローセンサが普及しつつある。
【０００４】
このパルス(周波数)出力型と呼ばれるエアフローセンサを用いて吸入空気量を測定する場合、通常、該エアフローセンサから次々に到来するパルスの立ち上がりエッジ(もしくは立ち下がりエッジ)を検出し、各パルスの時間的間隔、詳しくは、先行パルスの立ち上がりエッジ(もしくは立ち下がりエッジ)が検出された時点から後行パルスの立ち上がりエッジ(もしくは立ち下がりエッジ)が検出された時点までの時間間隔(以下、パルスエッジ間隔、あるいは単にエッジ間隔と称す)を内蔵のタイマー機能で周期として計測し、この計測された周期を用いて燃料噴射制御等のエンジン制御に使用する吸入空気量を演算するようにされる。
【０００５】
また、前記周期を用いて吸入空気量を演算する場合、吸入空気量の演算タイミングは、所定サンプリング周期(期間)毎、あるいは、クランク軸の所定回転角度毎とされており、この演算タイミングの直前に求められた前記周期の値を吸入空気量に換算する場合と、前記サンプリング期間において前記周期を複数個を求め、それらの平均周期を算出し、この平均周期を吸入空気量に換算する場合とがある。
【０００６】
さらに、エアフローセンサ及びその配線系(以下、単にエアフローセンサと称すことがある)に故障が発生した場合には、エンジン制御に支障をきたすおそれがあるため、故障したか否かを判定し、故障したと判定される場合は運転席パネル上のランプを点灯あるいは点滅して運転者に警報を発することなどが特定の国では義務付けられており、そのため、例えば特許文献3に所載のように、エアフローセンサからの検出信号を予め設定されている異常判定用しきい値と比較して故障が発生したか否かを判定することなどが知られている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特許第3808038号公報
【特許文献２】特開平2-129522号公報
【特許文献３】特許第3483968号号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
ところで、エアフローセンサが電圧出力型の場合は、入力回路の時定数等を通した電圧値をAD変換して空気量に変換する方法がとられる。マイコンによる演算処理のため、所定の期間あるいはクランク角度に同期したデジタル的な検出処理として空気量が演算されるが、エアフローセンサの出力信号はアナログ的に連続性がある。
【０００９】
エアフローセンサ配線系において断線、バッテリー電圧VBへのショート等が発生した場合に、電圧出力型のエアフローセンサの出力は前述したように入力回路の時定数等により、一次遅れの出力として変化する。エアフローセンサに故障が発生したか否かは、電圧値が上下限しきい値を超えた（上まわるか下まわっている）状態が所定時間継続している場合に故障が発生したと判定するのが一般的である。
【００１０】
エアフローセンサの故障としては、その配線系を構成するコネクタ、ハーネスの一時的な断線（以下、瞬断と称す）や、電波、電磁波等の影響により信号パルスと誤認される外部ノイズの混入などによって発生する一時的なもの(一時的な異常と称す)と、回復する見込みのない真の故障（完全な断線やショート等）とがあるが、エアフローセンサ故障判定に必要な前記故障判定用の所定時間(しきい値を超えている時間)は、エアフローセンサの故障が前記一時的な異常である場合は、誤判定を避けるためには、なるべく長い時間に設定することが好ましい。
【００１１】
それに対し、エアフローセンサの故障が真の故障である場合は、特に走行中あるいは車両停止中のアイドル状態において、最悪エンストに至るなどの運転性や走行時の安全性を損なう可能性があるため、故障と判定されたら即座にフェールセーフ動作に移行させることが要求されるので、できるだけ短い時間に設定することが好ましい。
【００１２】
また、エアフローセンサが電圧出力型である場合は、瞬断や外部ノイズの混入等による一時的な異常が発生したときは、前述のように入力回路の時定数等により、一次遅れの出力となることで、判定時の信号が異常値であるものの吸入空気量として演算できるので、エンストに至ることなく正常状態に復帰させることが可能である。
【００１３】
ところが、エアフローセンサがパルス(周波数)出力型である場合には、所定サンプリング期間におけるパルス数あるいはパルス信号のエッジ間隔(周期、周波数)を計測してそれを吸入空気量に換算する必要があり、このパルス(周波数)出力型のエアフローセンサにおいて、瞬断や外部ノイズの混入等による一時的異常が発生した場合は、入力回路の時定数等があっても、パルス信号のため、L(=0V)とH(=5V)に即座に信号が変化するため、電圧出力型のもののような一次遅れの出力が殆ど存在せず、次のサンプリング期間で信号が極端な異常値を示すことになり、上述した故障判定（故障確定）に至らず、エンジン回転数の極端な低下による運転性の悪化等を招き、最悪エンストに至ってしまうという問題がある。
【００１４】
本発明は、上記事情に鑑みてなされたもので、その目的とするところは、吸入空気量に応じた時間間隔でパルス信号を出力するエアフローセンサに瞬断や外部ノイズ混入等による一時的な異常が発生したとき、それを確実に検知し得て、即座に正常値に近い異常時用吸入空気量を求めることができ、もって、瞬断や外部ノイズ混入等による一時的な異常が発生してもエンジン回転数の極端な低下による運転性の悪化などを招くことがないようにできるエンジンの吸入空気量測定装置を提供することにある。
【課題を解決するための手段】
【００１５】
上記目的を達成すべく、本発明に係るエンジンの吸入空気量測定装置は、吸入空気量に応じた時間間隔でパルス信号を出力するエアフローセンサを備え、該エアフローセンサからのパルス信号のエッジ間隔を順次周期として計測するとともに、計測された周期又はその逆数である周波数に基づいてエンジン制御に使用する吸入空気量を演算する第一の空気量演算手段と、前記周波数もしくはそれから換算される吸入空気量に基づいて、それらが急変したと認識されたとき、及び／又は、前記周波数もしくはそれから換算される吸入空気量が予め定められた異常判定用上下限しきい値を上まわるか下まわったとき、前記エアフローセンサに一時的な異常が発生したと判定する一時的異常判定手段と、前記一時的異常判定手段により前記エアフローセンサに一時的な異常が発生したと判定されてから該判定が解消されるまでの間の異常時用空気量を演算する第二の空気量演算手段と、を具備して構成される。
【発明の効果】
【００１６】
本発明によれば、エアフローセンサに瞬断や外部ノイズ混入等による一時的な異常が発生したとき、それを確実に検知し得て、即座に正常値に近い異常時用吸入空気量を求めることができ、瞬断や外部ノイズ混入等による一時的な異常が発生してもエンジン回転数の極端な低下による運転性の悪化などを招くことがないようにでき、最悪の事態であるエンストに至るのを確実に防止できる。。
上記した以外の、課題、構成、及び効果は、以下の実施形態により明らかにされる。
【図面の簡単な説明】
【００１７】
【図１】本発明に係る吸入空気量測定装置の一実施例を、それが適用された車載用エンジンと共に示す概略構成図。
【図２】図1に示されるコントロールユニットを含むエンジン制御系の説明に供される図。
【図３】エアフローセンサがパルス(周波数)出力型である場合の吸入空気量演算手法の一例の説明に供される機能ブロック図。
【図４】エアフローセンサの出力周波数及び周期と吸入空気量との関係を示す特性図。
【図５】本発明実施例のエアフローセンサ異常故障対策がとられた吸入空気量演算手法の一例の説明に供される機能ブロック図。
【図６】エアフローセンサの出力信号と周期演算タイミングの関係の説明に供されるタイムチャート。
【図７】瞬断によりエアフローセンサに一時的な異常が発生した場合の例を示すタイムチャート。
【図８】ノイズ混入によりエアフローセンサに一時的な異常が発生した場合の例を示すタイムチャート。
【図９】従来技術により吸入空気量を測定する場合において、エアフローセンサに瞬断が発生したケースの説明に供されるタイムチャート。
【図１０】本発明実施例において、エアフローセンサに瞬断による一時的な異常が発生したケースの説明に供されるタイムチャート。
【図１１】本発明実施例において、エアフローセンサにノイズ混入による一時的な異常が発生したケースの説明に供されるタイムチャート。
【図１２】本発明実施例において、空気量Qについての上下限しきい値（Low側のしきい値QLsとHi側のしきい値QHｓ）をそれぞれエンジン回転数に応じたテーブル検索値として設定する場合の一例の説明に供される図。
【図１３】本発明実施例において、急変判定用しきい値を三次元マップで設定する場合の一例の説明に供される図。
【図１４】本発明実施例において、パルスエッジ間隔(周期)を求める際の処理手順の一例を示すフローチャート。
【図１５】本発明実施例において使用するしきい値の設定ルーチンの一例を示すフローチャート。
【図１６】本発明実施例において、吸入空気量を演算する際(正常時並びに一時的な異常発生時)の処理手順の一例を示すフローチャート。
【発明を実施するための形態】
【００１８】
以下、本発明の実施の形態を図面を参照しながら説明する。
図1は、本発明に係る吸入空気量測定装置の一実施例を、それが適用された車載用エンジンの一例と共に示す概略構成図である。
【００１９】
図1において、本実施例の吸入空気量測定装置が適用されたエンジン10は、例えば4つの気筒(#1、#2、#3、#4)を有するポート噴射式の多気筒エンジン(MPI式エンジン)であって、シリンダヘッド11a及びシリンダブロック11bからなるシリンダ11と、このシリンダ11の各気筒内に摺動自在に嵌挿されたピストン15と、を有し、ピストン15はコンロッド14を介してクランク軸13に連結されている。ピストン15上方には、所定形状の天井部を持つ燃焼室17が画成され、各気筒の燃焼室17には、点火コイル34から高電圧化された点火信号が供給される点火プラグ35が臨設されている。
【００２０】
燃料の燃焼に供せられる空気は、エアークリーナ22から、電制スロットル25が配在されたスロットルボディ26等、コレクタ27、吸気マニホールド28、吸気ポート29等からなる吸気通路20を通り、下流端である吸気ポート29端部に配在された、吸気カム軸23により開閉駆動される吸気弁21を介して各気筒の燃焼室17に吸入される。そして、吸気通路20の下流部分である吸気マニホールド28には、各気筒毎に、吸気ポート29に向けて燃料を噴射する燃料噴射弁30が臨設されている。
【００２１】
燃焼室17に吸入された空気と燃料噴射弁30から噴射された燃料との混合気は、点火コイル34に接続された点火プラグ35による火花点火により燃焼せしめられ、その排気ガスは、燃焼室17から、排気カム軸24により開閉駆動される排気弁22を介して排気ポート、排気マニホールド、排気管等からなる排気通路40を通って外部の大気中に排出される。排気通路40には、排気浄化用の三元触媒60が配備され、該触媒60より上流側には、触媒前空燃比に対して線形の出力特性を持つリニヤ空燃比センサ51が配在され、触媒60より下流側には、触媒後空燃比がストイキ(理論空燃比)よりリッチ側かリーン側かを識別するためのスイッチング信号を出力するO2センサ52が配在されている。
【００２２】
また、各気筒毎に配備された燃料噴射弁30には、燃料タンク71内の燃料が燃料ポンプ72や燃圧レギュレータ73等を備えた燃料供給機構により所定燃圧に調圧されて供給され、燃料噴射弁30は、後述するコントロールユニット100から供給される、そのときの運転状態に応じたデューティ(=パルス幅=開弁時間に相当する)を持つ燃料噴射パルス信号により開弁駆動され、その開弁時間に応じた量の燃料を吸気ポート29に向けて噴射するようになっている。
【００２３】
一方、前記エンジン10の種々の制御、つまり、前記燃料噴射弁30による燃料噴射制御(空燃比制御)、前記点火プラグ35による点火時期制御等を行なうべく、マイクロコンピュータを内蔵するコントロールユニット100が備えられている。
【００２４】
コントロールユニット100は、基本的には、図2に示される如くに、そのハードウェア自体はよく知られているもので、CPU101、EP-ROM102、RAM103、A/D&D/A変換器等を含むI/OLSI105等で構成される。なお、本例では、CPU101、EP-ROM102、RAM103、I/OLSI105が別個に設けられているが、近年ではそれらが一つに纏められているものもあり、それを使用しても良いことはいうまでもない。
【００２５】
コントロールユニット100のI/OLSI105には、入力信号として、吸気通路20における電制スロットル25より上流側に配在された熱線式(後で詳述するが、ホットワイヤ式、熱式、熱抵抗式等とも呼ばれる)エアフローセンサ50により検出される吸入空気量に応じた信号、スロットルセンサ54により検出される電制スロットル25の開度に応じた信号、クランク軸13に添設されたクランク角センサ(回転数センサ)55から得られるクランク軸13の回転・位相(クランク角)をあらわすクランク角信号、排気カム軸24に添設されたカム角センサ56から得られるカム軸24の回転・位相をあらわすカム角信号、排気通路40に配在された空燃比センサ51、52からの排気空燃比に応じた信号、アクセルセンサ53からのアクセルペダル踏込量に応じた信号、シリンダブロック11bに配設された水温センサ58により検出されるエンジン冷却水温に応じた信号、吸気通路20に最上流部に配設された吸気温センサ59により検出される吸気温度に応じた信号、コントロールユニット100に付設された大気圧センサ57からの大気圧に応じた信号等が供給され、その他、エンジン10の運転、停止のメインスイッチであるイグニッションキー49からの信号等も供給され、さらに、図示はされていないが変速機のシフトポジションや車速等の情報も、車両コントロールユニットからユニット間通信によりもたらされる。
【００２６】
コントロールユニット100は、EP-ROM102に格納されているプログラムに従って、上記センサ類からの信号を入力として取り込み、所定の演算処理を実行し、エンジン10の運転状態を把握するとともに、この運転状態に基づき燃料噴射量、点火時期、スロットル開度等のエンジン10の主要な操作量を演算して、必要な制御信号を生成し、駆動回路を介してアクチュエータである燃料噴射弁30、点火コイル34、電制スロットル25等に所定のタイミングで供給して燃料噴射制御(空燃比制御)、点火時期制御、スロットル開度制御等を行う。
【００２７】
次に、前記熱線式エアフローセンサ50について説明する。
エアフローセンサ50は、測定対象である空気流の中に配置された熱線(発熱抵抗体)に流れる電流値が吸入空気量(質量流量)が多い程増え、逆に吸入空気量が少ないほど減るようにブリッジ回路が構成されており、流れる発熱抵抗電流より電圧信号として取り出される。吸入空気量に対応した電圧信号は、電圧周波数(VF変換回路)変換により、周波数に変換された後、波形整形が施され、エアフローセンサ50からは空気量に応じて出力信号電圧の周期が変化する信号、言い換えれば、検出信号として吸入空気量に応じた時間間隔(周期)でパルス信号が出力されるようになっている。
【００２８】
図4(A)、(B)は、エアフローセンサの出力周波数及び周期と吸入空気量との関係を示す。
【００２９】
図示のように、吸入空気量が小さいと、出力信号の周波数は低く、吸入空気量が大きいと、出力信号の周波数は高くなり、その特性は非線形となる。なお、周波数と周期は逆数の関係にあるため、周期と吸入空気量との関係は、周波数と吸入空気量との関係の逆の特性になる。また、エンジンの要求空気量に合わせてセンサ出力を設定するため、周波数と吸入空気量あるいは周期と吸入空気量との関係が逆の特性の場合もあり、また、その特性が線形のケースもあるが、演算処理については変換テーブルが変わるだけである。
【００３０】
ここで、図示のような非線形特性の場合は、単位周期(周波数)当りの空気量の変化量が一律ではないため、例えば故障状態あるいは変化量をもとに制御しようとする際に、空気量に変換した値を使用するか、周期(周波数)を使用するかを考慮する必要がある。
【００３１】
コントロールユニット100は、エアフローセンサ50からのパルス信号を用いて吸入空気量を演算し、得られた吸入空気量を上記燃料噴射制御、点火時期制御、スロットル開度制御等に用いる。ここで、燃料噴射制御を例にとれば、コントロールユニット100は、図3に機能ブロックで示されているように、ブロック151、152においてエアフローセンサ50からのパルス信号のパルスエッジ間隔(周期Pt)を内蔵タイマで計測するとともに、その逆数(1/Pt)である周波数Fuを演算し、演算された周波数Fuを、周波数-空気量換算ブロック150のブロック153において、例えば後述の図4(A)に示される如くの関係で表される周波数-吸入空気量変換テーブルに照合して吸入空気量に換算し、換算された吸入空気量をブロック154において各種の制御に使用できるようにデジタルフィルタ処理にかけて吸入空気量Qを得、ブロック155においてこの吸入空気量Qと、ブロック156においてクランク角センサ55からのクランク角信号を用いて求められるエンジン回転数とに基づいて基本燃料噴射量を算出し、この基本燃料噴射量に、水温センサ58により検出されるエンジン冷却水温等に応じた補正量、空燃比センサ51、52からの信号に基づいて演算される排気空燃比に応じた補正係数等による補正を加えて燃料噴射量を演算し、この燃料噴射量に対応した燃料噴射パルス幅(デューティ)を持った駆動パルス信号Toutを生成して燃料噴射弁30に所定のタイミングで供給する。
【００３２】
同様にして、前記吸入空気量Qを、点火時期制御やスロットル開度制御等にも使用し、それらの演算結果をRAM103やEP-ROM102に保存する。
【００３３】
前記吸入空気量Qが燃料噴射制御等のエンジン制御に使用する吸入空気量であり、この吸入空気量Qを使用吸入空気量あるいは単に空気量Q(Qa、Qb、Qc・・・)と呼ぶことがある。
【００３４】
図6は、パルス(周波数)出力型のエアフローセンサ50の出力信号と周期演算タイミングの関係の説明に供されるタイムチャートである。
【００３５】
以下、図6中の流量計算タイミングである時点Taから時点Tdにおける、算出空気量QaからQdの演算方法を具体的に説明する。流量演算タイミングは所定のサンプリング間隔(Tsm)、例えば2ms毎に実行される。
【００３６】
まずタイマカウンタでは、エアフローセンサ50の出力であるパルス信号の立ち上がりエッジを検出し、その時点のタイマ値を保存する。
【００３７】
サンプリングタイミング(時点)Taにおいては、直前に演算されたタイマカウント値(周期Pt_an)を一度周波数Fu(=1/Pt_an)によりに変換した後、図4(A)示される如くの周波数-空気量変換テーブルにより流量単位に変換して空気量Qaを求める。
【００３８】
ここでは直前のパルス周期をもとにQを演算する例を示しているが、サンプリング間隔(期間Tsm)の間には複数のパルス周期が検出されるため、これらを平均処理してQを演算する手法もとられる。
【００３９】
同様に次のサンプリングタイミングTbでは直前に保存されているタイマカウント値Pt_b4を用いて空気量Qbを求め、以下同様にしてQc、Qd、・・・[Q(n)]を求める。
【００４０】
なお、上記した例では、周波数Fuを変換テーブルにより流量単位を持つ空気量QFoへ変換しているが、図4(B)のような周期-空気量変換テーブルにより、周期Pt_anを直接空気量へ変換するようにしても良い。
【００４１】
一方、図7は、図6に示される場合と同様な条件にて、一時的な断線（瞬断）によりエアフローセンサ50からの出力信号が時点G1から一時的に来なくなった場合の例を示す。
【００４２】
上記のような状態では、時点G1以降は一時的にパルスが検出されないため、次のサンプリングタイミングTcにおけるタイマカウンタ(Pt_c1)から換算される空気量Qc’は前回のサンプリングタイミングTbにおけるタイマカウンタ(Pt_b4)から換算される空気量Qbより、極端に小さい値となり、さらに次のサンプリングタイミングTdにおける空気量換算値はQd≒Qbとなる。すなわち、瞬断時間（一時的な異常期間）が2ms（サンプリング期間Tsm）以内であれば、次のサンプリング期間には正常値に復帰するが、瞬断時間が長いほどエンジン回転数の低下等の運転性への影響が大きくなる。
【００４３】
図8は、図6に示される場合と同様な条件にて、時点G2において、電波、電磁波等の影響によりエアフローセンサ50からの出力信号に信号パルスと誤認されるノイズが混入した場合の例を示す。時点G2でノイズが混入した場合、時点G2以降における最初のサンプリングタイミングTcでのタイマカウンタ値Pt_c5から換算される空気量Qc’’は、前回のサンプリングタイミングTbでのタイマカウンタ値Pt_b4から換算される空気量Qbより極端に大きな値となり、さらに次のサンプリングタイミングTdにおける空気量換算値はQd≒Qbとなる。すなわち、2ms（サンプリング期間Tsm）以内における信号パルスと誤認されるノイズの混入回数が多いほど、空気量換算値がQc’’のように極端に大きな値となる可能性が高くなるため、頻繁にノイズが混入すると、燃料噴射量が過大になる等して、エンジン回転数の低下等の運転性への影響が大きくなる。
【００４４】
また、サンプリング期間Tsmにおいて周期Ptを複数個を求め、それらの平均周期を算出（平均化処理）し、この平均周期を空気量Qに換算する場合は、図７、図８に示される例におけるQc’、Qc’’ほどの極端な値とはならずに緩和される傾向となるが、それでも瞬断あるいはノイズ混入が発生したときは空気量Qが正常値（真の空気量）から相当外れるため、真の空気量に対する影響割合が大きい場合は平均化処理の効果はさほど得られない。
【００４５】
図9は、従来技術（一時的な異常に対する対策がなされていない）により吸入空気量を測定する場合において、パルス（周波数）出力型のエアフローセンサに瞬断が発生したケースの時間軸を広げて、(a)エアフローセンサ出力、(b)周波数、(c)空気量Q、(d)エンジン回転数の変化を示したもので、図７に示される場合と同様に時点G1において瞬断が発生したとすると、周波数Fu(Hz)はＦ1からＦ2に低下し、このときの空気量（換算値）QFoはQ1から極端に小さいQf2へと変化する。
【００４６】
ここで、一般的な故障（真の故障）判定方法では、故障判定用のしきい値FLLは相当低いレベルに設定され、周波数Fuがしきい値FLLを下まわっている状態が所定時間継続した時点で故障が確定されるが、瞬断等の一時的な異常では、故障判定用のしきい値FLLを下まわらないか、下まわっても下まわっている時間が短く、故障を確定するまでには至らないため、空気量Qとして極端に小さいQf2が用いられて燃料噴射量等が制御されることになり、エンジン回転数NfはN1からNf2へ大幅に低下して、エンジン回転数の極端な低下による運転性の悪化等を招き、最悪エンストに至ってしまう。
【００４７】
次に、本発明実施例(エアフローセンサ50の一時的な異常の対策がなされている場合)を、図5及び図10、図11を参照しながら説明する。
【００４８】
図5に機能ブロックで示されているように、エアフローセンサ50が正常である場合には、図3を用いて前述したように、エアフローセンサ50からのパルス信号のパルスエッジ間隔(周期Pt)を内蔵タイマで計測するとともに(図3のブロック151)、ブロック152でその逆数(1/Pt)である周波数Fuを演算し、演算された周波数Fuを、周波数-空気量換算ブロック150において、例えば図4(A)に示される如くの関係で表される周波数-吸入空気量変換テーブルに照合して吸入空気量に換算し、換算された吸入空気量を各種の制御に使用できるようにデジタルフィルタ処理にかけて吸入空気量Q(QFo)を得、ブロック155においてこの吸入空気量Q(QFo)とエンジン回転数とを用いてエンジンの運転状態に応じた燃料噴射量を演算し、この燃料噴射量に対応した燃料噴射パルス幅(デューティ)を持った駆動パルス信号Toutを生成して燃料噴射弁30に所定のタイミングで供給する。
【００４９】
上記に加えて、本実施例では、エアフローセンサ50に一時的な異常が発生した場合の対策が次のように講じられている。
【００５０】
すなわち、一時的な異常が発生したか否かを判定する一時的な異常判定手段320と、正常時の吸入空気量（通常空気量と称することがある）QFoを演算する、前述した周期-周波数演算ブロック152及び周波数-空気量換算ブロック150などからなる第一の空気量演算手段140と、一時的な異常が発生した場合の異常時用空気量QFwを演算する第二の空気量演算手段330と、エアフローセンサ50に一時的な異常が発生したと判定された場合に、第一の空気量演算手段140により演算される正常時空気量QFoから第二の空気量演算手段330により演算される異常時用空気量QFwへの切り換えを行う異常時切換え手段335と、を備える。
【００５１】
前記一時的異常判定手段320は、周期-周波数演算ブロック152で演算された周波数Fuと周波数-空気量換算ブロック150で演算された空気量QFoとに基づいてエアフローセンサ50に一時的な異常が発生したか否かを判定する(詳細は後述)。
【００５２】
前記第二の空気量演算手段330は、周期-周波数演算ブロック152で演算された周波数Fuと周波数-空気量換算ブロック150で演算された直前の空気量QFoとに基づいて異常時用空気量QFwを演算する。
【００５３】
一時的な異常判定手段320は、前記周波数Fu又は空気量QFoが急変したか否かを判定する急変判定手段321と、前記周波数Fu又は空気量QFoと予め設定された異常判定用しきい値とを比較する異常時用しきい値比較手段322を有し、それらの少なくとも一方によってエアフローセンサ50に一時的な異常が発生したと判定されたとき、異常時切換え手段335において、第一の空気量演算手段140により演算される通常空気量QFoから第二の空気量演算手段330により演算される異常時用空気量QFwへの切り換えを行う。
【００５４】
このように、一時的異常判定手段320により一時的な異常が発生したと判定されてから該判定が解消されるまでの間（一時的な異常が発生しているとの判定がなされなくなるまで）は異常時切換え手段335において、異常時用空気量QFwが空気量Qとして使用される。
【００５５】
次に、上記した如くの構成を有する本発明実施例の吸入空気量測定装置において、一時的な異常が発生した場合にコントロールユニット100が実行する処理内容を図10、図１１を参照しながら具体的に説明する。
【００５６】
図１０はエアフローセンサ50に瞬断が発生したケース、図１１はノイズ混入が発生したケース）であり、それぞれ、(a)エアフローセンサ出力、(b)周波数、(c)空気量Q、(d)空気量Qが急変したか否かを認識（判定）するための変化量|dQ／dt|（空気量Qの変化量の絶対値）、(e)エンジン回転数の変化を示したもので、図5を用いて説明した如くの一時的な異常が発生した場合の対策がとられている場合（本発明実施例）は実線で、また、異常対策がとられていない場合（従来例）は破線［(c)の空気量Qと(e)のエンジン回転数のみ］で示されている。
【００５７】
前記(d)の空気量Qが急変したか否かを認識（一時的な異常が発生したか否かを判定）するための変化量|dQ／dt|（空気量Qの変化量の絶対値）は、より詳細には、空気量Qfoについて、所定時間毎に、前回値との差分の絶対値をとったもので、変化量|dQ/dt|=(QFo-QFo[old])として演算される([old]:前回値)。なお、空気量Qfoに代えて周波数Fuについて、所定時間毎に、前回値との差分の絶対値をとり、|dF/dt|=(Fu-Fu[old])］を演算するようにしてもよい。
【００５８】
また、周波数Fuについては『故障が確定』したか否かを判定するLow側及びHi側の故障判定用しきい値FLs、FHsが固定値、あるいはテーブル検索値で設定されており、また、空気量Qについては、『一時的な異常』が発生したか否かを判定するLow側及びHi側の異常判定用上下限しきい値QLs、QHｓと、『急変認識（判定）用』の急変判定用しきい値dQsが予め設定されている。
【００５９】
ここで、異常判定用上下限しきい値QLs（QHｓ）に代えて、空気量Qではなく周波数について、『故障確定』用の故障判定用しきい値とは別に(『故障確定』用しきい値より高いレベルの異常判定用しきい値FLs’（FHｓ’)設定しても良く、この場合、急変時に空気量Qが非線形であることから、空気量Qよりも周波数によってより早く『一時的な異常』が発生したことを検出できるケースもある。
【００６０】
図12は、上述した空気量Qについての上下限しきい値（Low側のしきい値QLsとHi側のしきい値QHｓ）をそれぞれエンジン回転数に応じたテーブル検索値として設定した場合を示す。ここでは、例えば、Low側の下限しきい値QLsは減速域の空気量より小さい値に、また、Hi側の上限しきい値QHｓは吸気脈動を考慮して最大空気量より大きい値に設定しておく。また、別の方法としては、例えば横軸にエンジン回転数がとられ、縦軸にスロットル開度等のエンジン負荷又は充填効率がとられたマップからそのときの運転状態に対応したものを読み出すことにより設定する方法等もある。
【００６１】
図13は、上述した急変判定用しきい値dQs（Ｚ軸）を、Ｘ軸にエンジン回転数がとられ、Ｙ軸にスロットル開度等のエンジン負荷又は充填効率がとられた三次元マップで設定した場合を示す。急変判定用しきい値dQsは、通常の運転状態では有り得ない単位時間当たりの空気量Qの変化量が設定され、例えば各運転状態で(i)スロットル弁を100ｍs程度で全開にした場合に得られる空気量変化よりも大きい変化量と、(ii)各運転状態で逆にスロットル弁を全開から全閉にした場合に得られる変化量とから、各運転状態でそれ以上の変化量値としておくため、前記急変判定用のしきい値dQsは、エンジン回転数及び／又はスロットル開度等エンジン負荷又は充填効率とに基づき、エンジン回転数が高いほど大きく、スロットル開度等のエンジン負荷又は充填効率が高いほど大きく設定される。なお、図には示していないが、急変判定用しきい値dQsを例えばエンジン回転数に応じたテーブル値として設定する方法でもよいが、この場合は、各運転状態で、スロットル弁を全開から全閉にした場合の変化量を主として、それ以上の変化量値を設定しておく。
【００６２】
なお、ここでは、急変判定用しきい値dQsを絶対値として処理しているが、符号付きで上記(i)の条件では+dQs、(ii)の条件では-dQsの値をそれぞれ設定するようにしてもよい。この場合は、上述の(i)、(ii)の状態判定としきい値+dQs、-dQsとでメモリ容量が増大する懸念があり、(i)、(ii)を両立でき、かつ、メモリ容量の増大を抑える方策の一つの例として絶対値を用いている。
【００６３】
一方で、異常時用空気量QFwとして、サンプリング周期毎に(1)式に示される一次遅れのデジタルフィルタが施された値を演算する。ここで、ゲインGは小さい値すなわち減衰時間を長くなるような値としておくと良い。
【００６４】
【数１】
2014020210.tif 000003
【００６５】
【数２】
2014020210.tif 000004
【００６６】
また、他の手段としては、サンプリング周期毎に(2)式で示される如くの平均値、あるいは、サンプリング周期(例えば2ms)より長い時間(例えば20ms)で、最新値あるいは上記の(1)式フィルタ演算結果や(2)式平均値を更新して保存していくような方法がとられる。
【００６７】
これらの演算は常時行われ、一旦、一時的な異常が発生したと判定された後は、新たな更新をやめ、正常範囲となるまでは直前の値が保持される。
【００６８】
次に、図10を参照しながらエアフローセンサ50に瞬断による一時的な異常が発生したケースを詳細に説明する。図１０において時点G1にて瞬断が発生すると、周波数FuはF1_a(Hz)からF2_a(Hz)に達する。このときの空気量（演算値）QFoは破線で示される如くにQ1_aからQf2_aへ下降する。
【００６９】
このとき、急変判定用の変化量|dQ/dt|はしきい値dQsを超えてピーク値dQs_aをとり、変化量|dQ/dt|がしきい値dQsを超えたときに(1)『空気量（演算値）QFoが急変したことが認識、言い換えれば一時的な異常が発生したと判定』される。また、(2)空気量（演算値）QFoが一時的異常判定用の下限しきい値QLsを下まわったときに『一時的な異常が発生したと判定』される。
【００７０】
より詳細には、『一時的な異常』が発生したか否かは、下記(i)、(ii)のいずれかを満たしたか否かで判定する。
(1)  :上記(1)または(2)が成立したとき
(2)  :上記(1)かつ(2)が成立したとき
【００７１】
前者(1)は、空気量特性が非線形である場合に、スロットル全開などの比較的空気量の大きい領域では変化量|dQ/dt|により通常有り得る最速の変化量より大きい値として、通常では有り得ない値を設定しておくことができるため、速く検出したい場合に有利である。
【００７２】
後者(2)は、一時的な異常判定の確実性を高めていること意味しており、急変したか否かの誤判定を避ける効果があるが、その分検出が送れる可能性があるため、実際の運転性への影響を考慮して選択すれば良い。
【００７３】
以上により、瞬断等で周波数Fuが故障判定用のしきい値FLLに達しない場合において、より早いタイミングで、一時的な異常が発生したことを検出できる。一時的な異常が発生したと判定されると、その判定時点以降、一時的な異常が発生していると判定されなくなるまで、言い換えれば、一時的な異常が発生したと判定されてから該判定が解消されるまでの間は、空気量Qとして異常時用空気量QFwを演算する。
【００７４】
本実施例では、急変判定用の変化量|dQ/dt|がしきい値dQsを超えた時点から所定時間tqの間は前記一時的な異常期間中とみなし判定するようにされている。所定時間tqは、実車試験・実験等により、瞬断やノイズ混入等による一時的な異常時間を多数計測し、例えばその平均値を求めることなどにより設定する。なお、所定時間tqを瞬断の場合とノイズ混入の場合とで個別に設定するようにしてもよいし、使用環境やエンジンの運転状態等に応じて変えるようにしてもよいし、さらに、変化量|dQ/dt|がしきい値dQsを越える毎に段階的に短くするようにしてもよい。
【００７５】
図10に示される例では、時点G1以降において変化量|dQ/dt|がしきい値dQsを最初に超えた時点から所定時間tqが経過する前に、周波数Fu及び空気量QFoが上昇に転じて、変化量|dQ/dt|がもう一度しきい値dQsを越えているので、変化量|dQ/dt|がしきい値dQsを二度目に越えた時点から所定時間tqが経過するまでは、前記一時的な異常期間中とみなし判定され、この二度目の所定時間tqが経過するまでに、変化量|dQ/dt|がしきい値dQsを越えることはなかったので、二度目の所定時間tqが経過した時点で、一時的な異常が発生しているとみなし判定されなくなり（一時的な異常期間が終了した判定され）、この時点以降は、空気量Qとして正常時空気量QFoが演算される。
【００７６】
このようにされることにより、図10(c)に示される如くに、一時的な異常が発生していると判定されている期間、空気量Qは、前記した(1)式に示される一次遅れのデジタルフィルタが施された場合には空気量QFｗ(1)、(2)式で示される如くの平均値等がとられた場合には、空気量QFｗ(2)に示される如くの値をとることになる。つまり、一時的な異常期間中は、空気量Qがその直前の空気量に基づいた、さほど減量されていない値に演算される。
【００７７】
したがって、瞬断による一時的な異常が発生した場合、従来技術では、空気量Qが極めて小なるQf2_aまで低下していたが、本発明実施例では、最低でも正常時空気量からさほど低下していないQf2_a1、Qf2_a２に演算されることになり、これに伴い、エンジン回転数Nfは、従来技術ではN1からNf2まで大きく低下していたが、本発明実施例では、最低でも正常時回転数からさほど低下していないNf2_aまでの低下に抑制することができ、以降は迅速にエンジン回転数が正常値に復帰して維持できるので、瞬断等による一時的な異常が発生してもエンジン回転数の極端な低下による運転性の悪化などを招くことがないようにでき、最悪の事態であるエンストに至るのを確実に防止できる。
【００７８】
続いて、図11を参照しながらエアフローセンサ50にノイズ混入による一時的な異常が発生したケースを詳細に説明する。図１1において時点G2にてノイズ混入が発生すると、周波数FuはF1_b(Hz)からF2_b(Hz)に達する。このときの空気量（演算値）QFoは破線で示される如くにQ1_bからQf2_bへ上昇する。
【００７９】
このとき、急変判定用の変化量|dQ/dt|はしきい値dQsを超えてピーク値dQs_bをとり、変化量|dQ/dt|がしきい値dQsを超えたときに(1)『空気量（演算値）QFoが急変したことが認識、言い換えれば一時的な異常が発生したと判定』される。また、(2)空気量（演算値）QFoが一時的異常判定用の上限しきい値QLsを上まわったときに『一時的な異常が発生したと判定』される。
【００８０】
以降は、前述した図10に示される瞬断が発生したケースと同様に処理され、図11(c)に示される如くに、一時的な異常が発生していると判定されている期間、空気量Qは、前記した(1)式に示される一次遅れのデジタルフィルタが施された場合には空気量QFｗ(1)、(2)式で示される如くの平均値等がとられた場合には、空気量QFｗ(2)に示される如くの値をとることになる。つまり、一時的な異常期間中は、空気量Qがその直前の空気量に基づいた、さほど減量されていない値に演算される。
【００８１】
したがって、ノイズ混入による一時的な異常が発生した場合、従来技術では、空気量Qが極めて大なるQf2_bまで低下していたが、本発明実施例では、最低でも正常時空気量からさほど上昇していないQf2_c1、Qf2_c２に演算されることになり、これに伴い、エンジン回転数Nfは、従来技術ではN1_bからNf2_bまで大きく低下していたが、本発明実施例では、最低でも正常時回転数からさほど低下していないN2f_bまでの低下に抑制することができ、以降は迅速にエンジン回転数が正常値に復帰して維持できるので、ノイズ混入等による一時的な異常が発生してもエンジン回転数の極端な低下による運転性の悪化などを招くことがないようにでき、最悪の事態であるエンストに至るのを確実に防止できる。
【００８２】
次に、コントロールユニット100が吸入空気量を演算する際(正常時並びに一時的な異常発生時)に実行するプログラム(処理手順)の一例を、図14から図1６のフローチャートを参照しながら説明する。
【００８３】
図14は、エアフローセンサ50から検出される周波数信号の立ち上りまたは立下りパルスエッジ毎に起動する処理を示したもので、一般的には割込み演算処理として起動するほか、マイコンの機能として同様の処理を有するものもある。
【００８４】
まず、ステップ510にてエッジが検出されると、ステップ520でタイマ機能にて計測しているカウント値Pt(n)をラッチする。次にステップ530では前回のエッジ検出時に記憶したPt(n-1)との差をとり、Ptを演算する。これが最新の周期情報となる。
【００８５】
図15は、しきい値設定ルーチンを示し、ステップ610で空気量QFoについてのLow側及びHi側の異常判定用上下限しきい値QLs、QHｓを前述した如くにテーブルあるいはマップ等によりそのときの運転状態に応じて設定し、続くステップ620で、変化量|dQ/dt|についての急変判定用しきい値dQsを前述した如くにテーブルあるいはマップ等によりそのときの運転状態に応じて設定する。
【００８６】
図16は、例えばプログラムの演算JOB周期などで繰り返し実行される、吸入空気量を演算する際(正常時並びに一時的な異常発生時)の処理手順を示したもので、ステップ1000において、前述した図14に示される如くの処理手順で周期Ptを演算し、次のステップ1010において、1/Ptの除算相当による演算を行い、各パルス毎の周波数Fuを演算する。
【００８７】
ステップ1020では、演算された周波数Fuから、図3のブロック152に示される如くの周波数-空気量変換テーブルにより空気量QFoを演算する。
【００８８】
次のステップ1025では、演算された空気量QFoまたはFuと前回値からの変化量|dQ/dt|を演算し、ステップ1030では、前述した式(1)または式(2)等により、異常時用空気量QFwを演算する。
【００８９】
ステップ1040では、変化量|dQ/dt|がしきい値dQsを越えているか否かを演算し、NOの場合（変化量|dQ/dt|がしきい値dQsを越えていない場合）はステップ1060に進み、YESの場合（変化量|dQ/dt|がしきい値dQsを越えている場合）は、ステップ1050に進む。
【００９０】
ステップ1050では、変化量|dQ/dt|がしきい値dQsを越えてから所定時間tqが経過したか否かを割り込み・フラグセット処理等により判断し、所定時間tqが経過した判断された場合は、一時的な異常期間が終了したと判断してステップ1060に進み、所定時間tqが経過していないと判断された場合は、一時的な異常期間中であると判断してステップ1200に進み、空気量Qとして異常時用空気量QFｗを設定して本ルーチンを終了する。
【００９１】
一方、ステップ1060では、空気量QFoがLow側及びHi側の異常判定用上下限しきい値QLs、QHｓを越えたか否かを判断し、空気量QFoがしきい値QLs、QHｓを越えていると判断された場合には、一時的な異常期間中であると判断してステップ1200に進み、空気量Qとして異常時用空気量QFｗを設定して本ルーチンを終了し、空気量QFoがしきい値QLs、QHｓを越えていないと判断された場合には、空気量Qとして正常時用空気量QFoを設定して本ルーチンを終了する。
【００９２】
以上により、エアフローセンサに瞬断や外部ノイズ混入等による一時的な異常が発生したとき、それを確実に検知し得て、即座に正常値に近い異常時用吸入空気量を求めることができ、瞬断や外部ノイズ混入等による一時的な異常が発生してもエンジン回転数の極端な低下による運転性の悪化などを招くことがないようにでき、最悪の事態であるエンストに至るのを確実に防止できる。
【符号の説明】
【００９３】
10      エンジン
11      シリンダ
20      吸気通路
25      電制スロットル
30      燃料噴射弁
34      点火コイル
35      点火プラグ
50      熱線式エアフローセンサ
55      クランク角センサ
100      コントロールユニット
【図１】
2014020210.tif 000005
【図２】
2014020210.tif 000006
【図３】
2014020210.tif 000007
【図４】
2014020210.tif 000008
【図５】
2014020210.tif 000009
【図６】
2014020210.tif 000010
【図７】
2014020210.tif 000011
【図８】
2014020210.tif 000012
【図９】
2014020210.tif 000013
【図１０】
2014020210.tif 000014
【図１１】
2014020210.tif 000015
【図１２】
2014020210.tif 000016
【図１３】
2014020210.tif 000017
【図１４】
2014020210.tif 000018
【図１５】
2014020210.tif 000019
【図１６】
2014020210.tif 000020