(57)【特許請求の範囲】
【請求項１】
燃料ポンプとインジェクタとを接続する燃料流路に取り付けられた調圧装置と、同調圧装置から排出される燃料を燃料タンクに戻すためのリターン流路とを有する内燃機関の燃料供給システムにおいて、
前記リターン流路に配置された燃料性状センサと、
前記内燃機関が停止状態にあるときに、プログラムされた所定のタイミングで前記燃料ポンプを作動させる燃料ポンプ制御手段と、
前記内燃機関の停止状態において前記燃料ポンプが作動した場合に、前記燃料性状センサの出力値を用いて前記燃料タンク内の燃料の性状を判定する燃料性状判定手段と、
を備え、
前記燃料ポンプ制御手段は、前回の燃料性状の判定時点からの経過時間が所定の基準時間に達した場合に前記燃料ポンプを作動させることを特徴とする内燃機関の燃料供給システム。
【請求項２】
前記基準時間は、想定される使用燃料の劣化特性に応じて設定されていることを特徴とする請求項１に記載の内燃機関の燃料供給システム。
【請求項３】
前記基準時間は、前記燃料タンク内の燃料の温度に応じて補正されることを特徴とする請求項２に記載の内燃機関の燃料供給システム。
【請求項４】
燃料性状に関連するパラメータの値が前記燃料性状センサから前記インジェクタまでの間の燃料流路においてどのように分布しているのかを示すデータを記憶したパラメータ値分布データ記憶手段と、
前記パラメータ値分布データを用いて前記インジェクタの燃料噴射量を決定する燃料噴射量決定手段と、
前記燃料性状センサの出力値と前記インジェクタの燃料噴射量とを用いて前記パラメータ値分布データを更新するパラメータ値分布データ更新手段とをさらに備え、
前記パラメータ値分布データ更新手段は、前記インジェクタによる燃料噴射が停止している間は前記燃料性状センサの出力値を用いた前記パラメータ値分布データの更新を停止し、前記インジェクタによる燃料噴射が再開された後に前記燃料性状センサの出力値を用いた前記パラメータ値分布データの更新を再開することを特徴とする請求項１乃至３の何れか１項に記載の内燃機関の燃料供給システム。
【請求項５】
前記パラメータ値分布データ記憶手段は、前記燃料性状センサから前記インジェクタまでの間の燃料流路を容積の等しい複数のセルに仮想的に分割した場合の各セルに対応する複数の記憶部を有し、同記憶部のそれぞれに、対応するセルにおけるパラメータ値を記憶するように構成され、
前記燃料噴射量決定手段は、前記インジェクタに最も近いセルに対応する記憶部が記憶しているパラメータ値を燃料噴射量の決定に使用するように構成され、
前記パラメータ値分布データ更新手段は、
前記インジェクタによる燃料噴射によって前記セルの容積分の燃料消費が行われる間の前記燃料性状センサの出力値を用いて前記燃料性状センサの設置位置における前記パラメータの値（以下、初期値）を計算する手段と、
前記インジェクタによる燃料噴射によって前記セルの容積分の燃料消費があった場合に、各記憶部が記憶しているパラメータ値をそれぞれ１つ先のセルに対応する記憶部にシフトさせて更新するとともに、前記燃料性状センサに最も近いセルに対応する記憶部には前記初期値を記録する手段とを有することを特徴とする請求項４に記載の内燃機関の燃料供給システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内燃機関の燃料供給システムに関し、詳しくは、内燃機関で使用される燃料の性状を判別するための燃料性状センサを備えた燃料供給システムに関する。
【背景技術】
【０００２】
今日実用化されている一部の内燃機関では、性状の異なる複数種類の燃料を使用することができる。しかし、使用される燃料の性状は必ずしも既知ではなく、また、常に一定の性状であるとは限らない。例えばアルコール混合ガソリンの場合、市販されているアルコール混合ガソリンにはアルコール濃度の異なるものが複数種類あるため、燃料タンク内の燃料とは異なるアルコール濃度の燃料が給油により足される場合もある。このため、性状の異なる複数種類の燃料の使用が想定される内燃機関では、使用されている燃料の性状を知るための手段が必要となる。
【０００３】
上記の手段としては燃料性状センサを用いることができる。特開２００９−１３３２７３号公報には、燃料性状センサの一種であるアルコール濃度センサを備えた燃料供給システムが開示されている。同公報に開示されたシステムでは、燃料ポンプとインジェクタとを接続する燃料流路にアルコール濃度センサが設けられている。このシステムによれば、燃料ポンプによってインジェクタに供給された燃料、すなわち、暫くの後にインジェクタから筒内に噴射されることになる燃料のアルコール濃度を測定することができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−１３３２７３号公報
【特許文献２】特開平６−２２９３４０号公報
【特許文献３】特開平１１−３１５７４４号公報
【特許文献４】特開２００５−０４２６４９号公報
【特許文献５】特開２００８−２４８７２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、燃料性状センサを用いた燃料性状の判定は、タンク内の燃料の劣化の検知や異常燃料がタンク内に給油されたことの検知を目的として行われる場合がある。そのような目的では、燃料性状の判定は燃料が内燃機関に供給されるよりも前に行われることが望ましい。しかし、上述のシステムのように燃料ポンプとインジェクタとを接続する燃料流路に燃料性状センサが設けられている場合には、対象燃料が燃料ポンプからインジェクタに供給されて初めて対象燃料の燃料性状を判定することが可能となる。つまり、対象燃料が実際に使用されてからでないとその燃料性状を判別することができない。また、内燃機関を搭載する車両がハイブリッド車両（特に、プラグイン型ハイブリッド車両）の場合には、内燃機関が始動して燃料が消費される機会自体が少ない。このため、燃料ポンプとインジェクタとを接続する燃料流路に燃料性状センサが設けられている場合には、燃料の劣化や異常燃料が給油されたことを長期間にわたって検知できないおそれがある。
【０００６】
本発明は、このような課題に鑑みてなされたもので、内燃機関の運転時にはインジェクタから噴射される燃料の性状を判定することができ、内燃機関が停止状態のときには燃料タンク内の燃料の性状の変化を早期に検知することのできるシステムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
第１の発明は、上記の目的を達成するため、燃料ポンプとインジェクタとを接続する燃料流路に取り付けられた調圧装置と、同調圧装置から排出される燃料を燃料タンクに戻すためのリターン流路とを有する内燃機関の燃料供給システムにおいて、前記リターン流路に配置された燃料性状センサと、前記内燃機関が停止状態にあるときに、プログラムされた所定のタイミングで前記燃料ポンプを作動させる燃料ポンプ制御手段と、前記内燃機関の停止状態において前記燃料ポンプが作動した場合に、前記燃料性状センサの出力値を用いて前記燃料タンク内の燃料の性状を判定する燃料性状判定手段とを備え、前記燃料ポンプ制御手段は、前回の燃料性状の判定時点からの経過時間が所定の基準時間に達した場合に前記燃料ポンプを作動させることを特徴としている。
【０００９】
第２の発明は、第１の発明において、前記基準時間は、想定される使用燃料の劣化特性に応じて設定されていることを特徴としている。
【００１０】
第３の発明は、第２の発明において、前記基準時間は、前記燃料タンク内の燃料の温度に応じて補正されることを特徴としている。
【００１１】
第４の発明は、第１乃至第３の何れか１つの発明において、燃料性状に関連するパラメータの値が前記燃料性状センサから前記インジェクタまでの間の燃料流路においてどのように分布しているのかを示すデータを記憶したパラメータ値分布データ記憶手段と、前記パラメータ値分布データを用いて前記インジェクタの燃料噴射量を決定する燃料噴射量決定手段と、前記燃料性状センサの出力値と前記インジェクタの燃料噴射量とを用いて前記パラメータ値分布データを更新するパラメータ値分布データ更新手段とをさらに備え、前記パラメータ値分布データ更新手段は、前記インジェクタによる燃料噴射が停止している間は前記燃料性状センサの出力値を用いた前記パラメータ値分布データの更新を停止し、前記インジェクタによる燃料噴射が再開された後に前記燃料性状センサの出力値を用いた前記パラメータ値分布データの更新を再開することを特徴としている。
【００１２】
第５の発明は、第４の発明において、前記パラメータ値分布データ記憶手段は、前記燃料性状センサから前記インジェクタまでの間の燃料流路を容積の等しい複数のセルに仮想的に分割した場合の各セルに対応する複数の記憶部を有し、同記憶部のそれぞれに、対応するセルにおけるパラメータ値を記憶するように構成され、前記燃料噴射量決定手段は、前記インジェクタに最も近いセルに対応する記憶部が記憶しているパラメータ値を燃料噴射量の決定に使用するように構成され、前記パラメータ値分布データ更新手段は、前記インジェクタによる燃料噴射によって前記セルの容積分の燃料消費が行われる間の前記燃料性状センサの出力値を用いて前記燃料性状センサの設置位置における前記パラメータの値（以下、初期値）を計算する手段と、前記インジェクタによる燃料噴射によって前記セルの容積分の燃料消費があった場合に、各記憶部が記憶しているパラメータ値をそれぞれ１つ先のセルに対応する記憶部にシフトさせて更新するとともに、前記燃料性状センサに最も近いセルに対応する記憶部には前記初期値を記録する手段とを有することを特徴としている。
【発明の効果】
【００１３】
本発明によれば、内燃機関の運転時にはインジェクタに供給される燃料の一部がリターン流路に流れることから、燃料性状センサの出力値を用いてインジェクタから噴射される燃料の性状を判定することができる。一方、内燃機関が停止状態にあるときには、プログラムされた所定のタイミングで燃料ポンプが作動することで、燃料タンク内の燃料は燃料流路に送り出された後、調圧装置からリターン流路に排出され、燃料性状センサの設置場所を通って燃料タンク内に戻される。これにより、内燃機関が停止状態にある場合でも、燃料性状センサの出力値を用いて燃料タンク内の燃料の性状の変化を検知することができる。また、前回の燃料性状の判定時点から一定の時間が経過するまでは燃料ポンプを強制的に作動させることは行われないので、燃料ポンプを無駄に作動させることで生じる燃費の悪化は避けられる。
【００１５】
また、特に第４の発明によれば、インジェクタによる燃料噴射が停止している間は、その間に燃料ポンプの強制作動が行われたとしても、燃料性状センサの出力値を用いたパラメータ値分布データの更新は停止される。これにより、実際の燃料流路におけるパラメータ値分布と燃料噴射量の計算に使用されるパラメータ値分布データとの間にずれが生じてしまうことは避けられる。
【００１６】
また、特に第５の発明によれば、インジェクタによる燃料噴射によってセルの容積分の燃料消費が行われることを条件として各記憶部が記憶しているパラメータ値のシフトが行われるので、インジェクタによる燃料噴射が停止している間は、その間に燃料ポンプの強制作動が行われたとしても、パラメータ値分布データはそのまま維持されることになる。
【図面の簡単な説明】
【００１７】
【図１】本発明の実施の形態の内燃機関の燃料供給システムの構成を示す概略図である。
【図２】本発明の実施の形態において採られている燃料性状センサの出力値から噴射燃料の燃料性状を推定する方法について説明するための図である。
【図３】本発明の実施の形態において内燃機関が停止状態にあるときにＥＣＵにより実行される燃料性状判定のためのルーチンを示すフローチャートである。
【発明を実施するための形態】
【００１８】
本実施の形態の燃料供給システムは、ガソリンのみならずアルコール混合ガソリンも使用可能なＦＦＶ用内燃機関に適用される。図１は、本実施の形態の内燃機関の燃料供給システムの構成を示す概略図である。
【００１９】
図１に示す燃料供給システムでは、燃料タンク２の内部に電動式の燃料ポンプ４が設けられている。燃料ポンプ４からは燃料タンク２の外に向けて燃料流路６が延びている。燃料流路６は、各気筒のインジェクタ１０に燃料を分配するデリバリパイプ８に接続されている。燃料ポンプ４から送り出された加圧燃料は、燃料流路６を通ってデリバリパイプ８に供給され、インジェクタ１０によって各気筒に噴射される。また、燃料流路６の途中からはリターン流路１２が分岐している。リターン流路１２の途中にはプレッシャレギュレータ１４が設けられている。プレッシャレギュレータ１４は、燃料流路６の内部の燃料圧力を調整するための調圧装置であり、それが開くことで加圧燃料の一部がリターン流路１２を経由して燃料タンク２へ戻されるようになる。さらに、リターン流路１２のプレッシャレギュレータ１４よりも下流の部位には、燃料性状センサとしてのアルコール濃度センサ１６が配置されている。アルコール濃度センサ１６のセンシングの方法には限定はない。例えば、静電容量、屈折率、透過率、比重、或いは密度等からアルコール濃度を計測するセンサを用いることができる。アルコール濃度センサ１６の出力値は他の各種センサのセンサ出力値とともに内燃機関の制御装置であるＥＣＵ２０に取り込まれる。
【００２０】
ＥＣＵ２０が有する機能には使用されている燃料の性状を判定する機能が含まれている。ここでいう燃料性状とはアルコール濃度センサ１６の出力値を用いて判定できる燃料性状であり、具体的には、燃料のアルコール濃度を指す。アルコール濃度センサ１６の出力値はアルコール濃度の変化に対して連続的な変化を示すため、その出力値から使用燃料のアルコール濃度を測定することができる。つまり、本実施の形態では、燃料性状に関連するパラメータとしてアルコール濃度を使用し、アルコール濃度センサ１６の出力値からその値を測定する。使用されている燃料のアルコール濃度が分かれば、インジェクタ１０の燃料噴射量を適切な量に調整することができる。また、測定したアルコール濃度の値から燃料の劣化や異常燃料が給油されたことを検知することもできる。
【００２１】
インジェクタ１０の燃料噴射量を適切な量に調整するためには、燃料タンク２内の燃料のアルコール濃度ではなく、インジェクタ１０から噴射される燃料のアルコール濃度を知る必要がある。燃料タンク２内の燃料が燃料ポンプ４によって燃料流路６に送り出され、それがインジェクタ１０に到達するまでにはある程度の時間を要する。このため。給油によって燃料タンク２内のアルコール濃度に変化があった場合、アルコール濃度センサ１６の出力値から判定されるアルコール濃度と、インジェクタ１０から噴射される燃料のアルコール濃度との間には、少なくとも一時的にずれが生じることになる。そこで、ＥＣＵ２０は、以下に説明する方法によってインジェクタ１０から噴射される直前の燃料のアルコール濃度を推定し、その推定値を用いてインジェクタ１０の燃料噴射量を決定する。
【００２２】
図２は、本実施の形態において採られているアルコール濃度センサ１６の出力値から噴射直前燃料のアルコール濃度を推定する方法について説明するための図である。この図に示すように、ＥＣＵ２０が有する噴射直前燃料のアルコール濃度の推定機能によれば、リターン流路１２の分岐点からインジェクタ１０の手前までの間の燃料流路６は容積の等しいn-1個のセルに仮想的に分割される。１セル当たりの容積（以下、単位容積）は、リターン流路１２の分岐点からインジェクタ１０の手前までの間の燃料流路容積をVとすると、V/(n-1)で表すことができる。ＥＣＵ２０は、これらn-1個のセルと、リターン流路１２の分岐点に対応する入口領域と、インジェクタ１０の設置位置に対応する出口領域とからなる合計n+1個の領域それぞれに対応して合計n+1個の記憶部を有している。各記憶部には、対応するセルにおけるアルコール濃度の値が記憶される。
【００２３】
図２の（ａ）は、ある時点tにおける各領域のアルコール濃度Et(i)の分布を示している。“i”は領域ごとに付けられた番号であり、“0”が入口領域、“n”が出口領域、そして、“1”から“n-1”までが各セルに対応している。したがって、Et(0)は入口領域におけるアルコール濃度であり、Et(n)は出口領域におけるアルコール濃度である。そして、Et(1)〜Et(n-1)は各セルにおけるアルコール濃度を意味している。このうち、入口領域のアルコール濃度Et(0)には、アルコール濃度センサ１６の出力値をアルコール濃度に変換した値が入力される。また、出口領域のアルコール濃度Et(n)はインジェクタ１０の燃料噴射量の計算に用いられる。
【００２４】
図２の（ｂ）は、その後、インジェクタ１０による燃料噴射によって単位容積分の燃料消費が行なわれた時点t+1での各領域のアルコール濃度Et+1(i)の分布を示している。単位容積分の燃料消費があった場合には、図中に矢印で示すように、各記憶部が記憶しているアルコール濃度の値はそれぞれ１つ先のセルに対応する記憶部にシフトされる。具体的には、時点tにおけるi番目のセルのアルコール濃度Et(i)は、時点t+1においてはi+1番目のセルのアルコール濃度Et+1(i+1)となる。また、時点tにおけるn-1番目のセルのアルコール濃度Et(n-1)は、時点t+1における出口領域のアルコール濃度Et+1(n)として用いられる。一方、１番目のセル、つまり、アルコール濃度センサ１６に最も近いセルに対応する記憶部には、入口領域における時点tから時点t+1までの間の平均アルコール濃度が入力される。平均アルコール濃度の計算には次の各式が用いられる。
【００２５】
Esumj＝Esumj-1＋E(0)*Δq  ・・・式１
【００２６】
Qj＝Qj-1＋Δq  ・・・式２
【００２７】
Eavgt＝Esumj/Qj （ただし、Qj≧V/(n-1)）・・・式３
【００２８】
式１における“j”はＥＣＵ２０がプログラムされた処理を実行する際の時間ステップの順番を意味している。E(0)はアルコール濃度センサ１６の出力値をアルコール濃度に変換した値であり、Δqは前回の時間ステップj-1から今回の時間ステップjまでの間にインジェクタ１０による燃料噴射によって消費された燃料量である。したがって、Esummjは、時間ステップjまでの間のアルコール濃度E(0)と燃料消費量Δqとの積の合計値を意味している。また、式２におけるQjは、時間ステップjまでの間の燃料消費量Δqの合計値を意味している。式３におけるEavgtは、時点t+1において１番目のセルに対応する記憶部に入力されるべき入口領域の平均アルコール濃度である。この平均アルコール濃度Eavgtは、式２におけるQjが単位容積であるV/(n-1)以上になった時点でのEsumjをQjで除算することによって算出される。なお、時間ステップの順番を示すjの値は、式２におけるQjが単位容積に達するごとに初期値である１にリセットされ、再び時間ステップごとにインクリメントされていく。
【００２９】
ＥＣＵ２０は、以上のような方法にて内燃機関の運転時における燃料流路６内のアルコール濃度分布の変化を時々刻々と計算し、それを用いてインジェクタ１０から噴射される直前の燃料のアルコール濃度を推定している。なお、内燃機関が停止状態にあるときや燃料カットが実施されているときには、インジェクタ１０による燃料噴射の停止によって燃料消費が無くなるため、各記憶部が記憶しているアルコール濃度の値は１つ先のセルに対応する記憶部にシフトされることなく保持される。つまり、インジェクタ１０による燃料噴射が停止する直前のアルコール濃度分布データがそのまま保持される。また。その間にアルコール濃度センサ１６の出力値に変化があったとしても、上記の式１におけるΔqの値がゼロになっている限り、それがアルコール濃度分布データに影響することはない。内燃機関の運転再開時や燃料カットからの復帰時には、保持されていたアルコール濃度分布データを用いてインジェクタ１０の燃料噴射量の計算が行われる。
【００３０】
以上の処理は、インジェクタ１０の燃料噴射量を適切な量に調整することを目的として内燃機関の運転時に行われる。しかし、燃料タンク２内の燃料の劣化や異常燃料が燃料タンク２に給油されたことを検知する目的でアルコール濃度の測定を行うのであれば、それは内燃機関が停止状態にあるときにこそ行われるべきである。内燃機関が長期間停止しているときに燃料の劣化が進んだり、或いは、異常燃料が給油されたりする可能性が高いためである。
【００３１】
図３は、内燃機関が停止状態にあるときにＥＣＵ２０により実行されるアルコール濃度測定のためのルーチンを示すフローチャートである。このルーチンによれば、まず、最初のステップＳ２において、前回のアルコール濃度の測定時点からの経過時間Tが所定の基準時間Tnに達したかどうか判定される。経過時間Tが基準時間Tnに達してないのであれば、何もすることなく本ルーチンは終了される。なお、本ルーチンは、内燃機関が停止状態にある間は、一定の周期で繰り返し実行されるようになっている。
【００３２】
経過時間Tが基準時間Tnに達した場合には、ステップＳ４の処理が実施される。ステップＳ４では、アルコール濃度判定要求フラグがオンにされて燃料ポンプ４が作動させられる。燃料ポンプ４は電動式であるので内燃機関の運転／停止に係わらず任意のタイミングで作動させることができる。燃料ポンプ４が作動することによって燃料タンク２内の燃料は燃料流路６に送り出される。ところが、インジェクタ１０による燃料噴射は停止していることから、燃料流路６に送り出された燃料はプレッシャレギュレータ１４からリターン流路１２に排出され、アルコール濃度センサ１６の設置場所を通って燃料タンク２内に戻される。
【００３３】
次のステップＳ６では、燃料ポンプ４が作動してからの燃料吐出量Qが所定の基準量Qnに達したかどうか判定される。基準量Qnは燃料ポンプ４の出口からアルコール濃度センサ１６の設置場所までの流路容積よりも大きい値に設定されている。つまり、このステップＳ６では、燃料タンク２内の燃料がアルコール濃度センサ１６の設置場所まで到達したかどうかが判定される。燃料吐出量Qが基準量Qnに達してないのであれば、何もすることなく本ルーチンは終了される。
【００３４】
燃料吐出量Qが基準量Qnに達した場合には、ステップＳ８の処理が実施される。ステップＳ８では、アルコール濃度センサ１６に電源が入れられる。そして、アルコール濃度センサ１６の出力値から燃料タンク２内の燃料のアルコール濃度が測定される。測定されたアルコール濃度が異常な値を示しているのであれば、燃料が古くなって劣化したか或いは異常燃料が給油されたものと推測することができる。その場合には、ＭＩＬを点灯させてドライバに報知することが望ましい。なお、この間の燃料消費量Δqはゼロであるから、この間にアルコール濃度センサ１６が出力したセンサ値によって前述のアルコール濃度分布データが変化することはない。測定の終了後は、アルコール濃度センサ１６の電源が切られるとともに燃料ポンプ４は停止される。また、前述の経過時間Tの値はゼロにリセットされ、アルコール濃度判定要求フラグは再びオフにされ、そして、本ルーチンは終了される。
【００３５】
以上のようなルーチンが実行されることで、内燃機関が停止状態にある場合でも、アルコール濃度センサ１６の出力値を用いて燃料の劣化や異常燃料が給油されたことを検知することができる。また。前回の測定時点から一定の時間が経過するまでは燃料ポンプ４を強制的に作動させることは行われないので、燃料ポンプ４を無駄に作動させることで生じる燃費の悪化は避けることができる。
【００３６】
なお、ステップＳ２の判定で用いる基準時間Tnは任意の時間に設定することができる。ただし、その時間が長すぎる場合には、燃料の劣化の検知が遅れてしまうことになりかねない。逆にその時間が短すぎる場合には、頻繁に燃料ポンプ４を作動させることになって燃費の悪化を招くことになりかねない。したがって、基準時間Tnは想定される使用燃料の劣化特性に応じて設定することが好ましい。劣化のしやすさが温度によって変化するような燃料の使用を想定しているのであれば、燃料タンク２内の燃料温度（例えば一定時間における平均温度）を計測し、その計測値に応じて基準時間Tnを変更するようにしてもよい。また、内燃機関の運転時間や車両の走行距離に応じて基準時間Tnを変更することも可能である。
【００３７】
ところで、本発明は上述の実施の形態に限定されるものではない。本発明は、その趣旨を逸脱しない範囲で、上述の実施の形態ものから種々変形して実施することができる。例えば、上述の実施の形態では、燃料性状センサとしてアルコール濃度センサを用いているが、どのようなセンサを用いるかは使用される燃料に応じて決定すればよい。例えば、ガソリン機関において使用されるガソリンの質にばらつきがあるのであれば、燃料が重質か軽質かを検知するセンサや、オクタン価を検知するセンサを燃料性状センサとして用いてもよい。
【符号の説明】
【００３８】
２  燃料タンク
４  燃料ポンプ
６  燃料流路
８  デリバリパイプ
１０  インジェクタ
１２  リターン流路
１４  プレッシャレギュレータ
１６  アルコール濃度センサ
２０  ＥＣＵ
【図１】
0005375859.tif 000002
【図２】
0005375859.tif 000003
【図３】
0005375859.tif 000004