(57)【要約】【課題】燃料ポンプの異常を早期に検出し、異常からの復帰を図るとともに、運転状態の変化を低減する燃料ポンプの制御装置を提供する。【解決手段】ブラシレスモータ３２の回転数は、バッテリ１４の電圧に依存する。そこで、ＥＣＵ２０は、バッテリ１４の電圧とブラシレスモータ３２の回転数とから燃料ポンプ３０の異常を検出する。ＥＣＵ２０は、燃料ポンプ３０に異常を検出すると、燃料ポンプ３０を一旦停止した後、再起動する。これにより、燃料ポンプ３０のブラシレスモータ３２に生じている脱調異常、あるいはポンプ部３１に生じているかみ込み異常など、燃料ポンプ３０の異常が解消され、正常な運転状態に復帰する。また、ＥＣＵ２０は、燃料ポンプ３０を停止しているとき、エンジン６０への燃料の噴射量を増加したり、点火時期を進角することにより、エンジン６０の運転状態の変化を低減する。【選択図】図１
2008038895.tif 000002
【特許請求の範囲】
【請求項１】
電源の電圧によって回転数が決定するブラシレスモータによって駆動され、燃料タンクに蓄えられている燃料を加圧して吐出する燃料ポンプの制御装置であって、
前記電源の電圧と前記ブラシレスモータの回転数との関係を記憶する記憶手段と、
前記電源の電圧を検出する電圧検出手段と、
前記ブラシレスモータの回転数を検出する回転数検出手段と、
前記回転数検出手段で検出した前記ブラシレスモータの回転数と前記電圧検出手段で検出した前記電源の電圧とが前記記憶手段に記憶された所定の範囲内にあるか否かを判断し、所定の範囲外のとき前記燃料ポンプは異常と判断する異常検出手段と、
を備える燃料ポンプの制御装置。
【請求項２】
前記異常検出手段が前記燃料ポンプの異常を検出すると、前記ブラシレスモータを一旦停止し再起動する再起動手段をさらに備える請求項１記載の燃料ポンプの制御装置。
【請求項３】
前記燃料ポンプが停止しているとき、前記燃料タンクから燃料が供給される内燃機関における燃料の噴射量または点火時期の少なくともいずれか一方を調整する特性調整手段をさらに備える請求項２記載の燃料ポンプの制御装置。
【請求項４】
電源の電圧によって回転数が決定するブラシレスモータによって駆動され、燃料タンクに蓄えられている燃料を加圧して吐出する燃料ポンプの制御装置であって、
前記電源の電圧と前記ブラシレスモータの回転数との関係を記憶する記憶手段と、
前記電源の電圧を検出する電圧検出手段と、
前記ブラシレスモータの回転数を検出する回転数検出手段と、
前記回転数検出手段で検出した前記ブラシレスモータの回転数と前記電圧検出手段で検出した前記電源の電圧とが前記記憶手段に記憶された所定の範囲内にあるか否かを判断し、所定の範囲外のとき前記燃料ポンプは異常と判断する異常検出手段と、
前記異常検出手段が前記燃料ポンプの異常を検出すると、前記ブラシレスモータを一旦停止し再起動する再起動手段と、
を備える燃料ポンプの制御装置。
【請求項５】
電源の電圧によって回転数が決定するブラシレスモータによって駆動され、燃料タンクに蓄えられている燃料を加圧して吐出する燃料ポンプの制御装置であって、
前記電源の電圧と前記ブラシレスモータの回転数との関係を記憶する記憶手段と、
前記電源の電圧を検出する電圧検出手段と、
前記ブラシレスモータの回転数を検出する回転数検出手段と、
前記回転数検出手段で検出した前記ブラシレスモータの回転数と前記電圧検出手段で検出した前記電源の電圧とが前記記憶手段に記憶された所定の範囲内にあるか否かを判断し、所定の範囲外のとき前記燃料ポンプは異常と判断する異常検出手段と、
前記燃料ポンプの異常が検出されたとき、前記燃料タンクから燃料が供給される内燃機関における燃料の噴射量または点火時期の少なくともいずれか一方を調整する特性調整手段と、
を備える燃料ポンプの制御装置。
【請求項６】
電源の電圧によって回転数が決定するブラシレスモータによって駆動され、燃料タンクに蓄えられている燃料を加圧して吐出する燃料ポンプの制御装置であって、
前記電源の電圧と前記ブラシレスモータの回転数との関係を記憶する記憶手段と、
前記電源の電圧を検出する電圧検出手段と、
前記ブラシレスモータの回転数を検出する回転数検出手段と、
前記回転数検出手段で検出した前記ブラシレスモータの回転数と前記電圧検出手段で検出した前記電源の電圧とが前記記憶手段に記憶された所定の範囲内にあるか否かを判断し、所定の範囲外のとき前記燃料ポンプは異常と判断する異常検出手段と、
前記異常検出手段が前記燃料ポンプの異常を検出すると、前記ブラシレスモータを一旦停止し再起動する再起動手段と、
前記ブラシレスモータが停止されたとき、前記燃料タンクから燃料が供給される内燃機関における燃料の噴射量または点火時期の少なくともいずれか一方を調整する特性調整手段と、
を備える燃料ポンプの制御装置。
【請求項７】
前記特性調整手段は、前記ブラシレスモータが停止されたとき、前記内燃機関に噴射する燃料の噴射期間を延長する請求項３、５または６記載の燃料ポンプの制御装置。
【請求項８】
前記特性調整手段は、前記ブラシレスモータの停止期間が長くなるにしたがって、前記内燃機関に噴射する燃料の噴射期間を延長する請求項７記載の燃料ポンプの制御装置。
【請求項９】
前記特性調整手段は、前記ブラシレスモータが停止されたとき、前記内燃機関に噴射する燃料の噴射量を増大する請求項３、５または６記載の燃料ポンプの制御装置。
【請求項１０】
前記特性調整手段は、前記ブラシレスモータの停止期間が長くなるにしたがって、前記内燃機関に噴射する燃料の噴射量を増大する請求項９記載の燃料ポンプの制御装置。
【請求項１１】
前記特性調整手段は、前記ブラシレスモータが停止されたとき、前記内燃機関の点火時期を進角側へ補正する請求項３、５または６記載の燃料ポンプの制御装置。
【請求項１２】
前記特性調整手段は、前記ブラシレスモータが停止期間が長くなるにしたがって、前記内燃機関の点火時期の進角側への補正量を増大する請求項１１記載の燃料ポンプの制御装置。
【請求項１３】
電源の電圧によって回転数が決定するブラシレスモータによって駆動され、燃料タンクに蓄えられている燃料を加圧して吐出する燃料ポンプの制御装置であって、
前記電源の電圧と前記ブラシレスモータの回転数との関係を記憶する記憶手段と、
前記電源の電圧を検出する電圧検出手段と、
前記ブラシレスモータの回転数を検出する回転数検出手段と、
前記回転数検出手段で検出した前記ブラシレスモータの回転数と前記電圧検出手段で検出した前記電源の電圧とが前記記憶手段に記憶された所定の範囲内にあるか否かを判断し、所定の範囲外のとき、前記燃料ポンプが収容されている燃料タンクにおける燃料の残量に基づいて、前記燃料ポンプの異常の有無を判断する異常検出手段と、
を備える燃料ポンプの制御装置。
【請求項１４】
前記燃料タンクにおける燃料の残量を検出する燃料残量検出手段をさらに備え、
前記燃料残量検出手段で検出した前記燃料タンクにおける燃料の残量が所定値より小さいとき、前記異常検出手段はガス欠状態と判断する請求項１３記載の燃料ポンプ制御装置。
【請求項１５】
前記異常検出手段は、あらかじめ設定された設定期間内に、前記ブラシレスモータの回転数と前記電源の電圧とが前記記憶手段に記憶された所定の範囲外にある回数に基づいて前記燃料ポンプの異常を検出する請求項１３または１４記載の燃料ポンプ制御装置。
【請求項１６】
前記異常検出手段は、前記設定期間内に、前記ブラシレスモータの回転数と前記電源の電圧とが前記記憶手段に記憶された所定の範囲外にある回数が所定値より大きいとき、ガス欠状態と判断する請求項１５記載の燃料ポンプの制御装置。
【請求項１７】
前記異常検出手段がガス欠状態と判断したとき、警告を発する警告手段をさらに備える請求項１４または請求項１６記載の燃料ポンプの制御装置。
【請求項１８】
前記燃料タンクは、前記燃料ポンプが収容されるメインタンクと、前記メインタンクと区切られているリザーバタンクとを有し、
前記リザーバタンクと前記メインタンクとを接続する接続通路を開閉する開閉弁手段をさらに備え、
前記異常検出手段は、ガス欠と判断したとき、前記開閉弁手段により前記接続通路を開放し、前記リザーバタンクに蓄えられている燃料を前記メインタンクへ供給する請求項１４または１６記載の燃料ポンプの制御装置。
【請求項１９】
前記異常検出手段が前記燃料ポンプの異常を検出すると、前記ブラシレスモータを一旦停止し再起動する再起動手段をさらに備える請求項１３または１５記載の燃料ポンプの制御装置。
【請求項２０】
前記燃料ポンプが停止しているとき、前記燃料タンクから燃料が供給される内燃機関における燃料の噴射量または点火時期の少なくともいずれか一方を調整する特性調整手段をさらに備える請求項１９記載の燃料ポンプの制御装置。
【請求項２１】
使用される燃料の特性に応じて、前記記憶手段に記憶された前記電源の電圧と前記ブラシレスモータの回転数との関係を補正する補正手段をさらに備える請求項１から２０のいずれか一項記載の燃料ポンプの制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、燃料タンクの燃料を内燃機関へ供給する燃料ポンプの制御装置に関し、特にブラシレスモータによって駆動される燃料ポンプの制御装置に関する。
【背景技術】
【０００２】
近年、小型化および省電力化を図るために、燃料ポンプの駆動源として従来のブラシモータに代えてブラシレスモータの適用が提案されている（例えば、ブラシレスモータを適用した燃料ポンプについて特許文献１、ブラシレスモータの制御方法について特許文献２参照）。このような燃料ポンプのブラシレスモータは、回路構成を簡略化するため、電源の電圧によって直接駆動される。そのため、例えば車両に搭載する場合、燃料ポンプのブラシレスモータの回転数は電源であるバッテリの電圧に依存する。すなわち、燃料ポンプによる燃料の吐出量を決定するブラシレスモータの回転数は、バッテリの電圧によって変化する。
【０００３】
しかしながら、ブラシレスモータにより駆動される燃料ポンプの場合、ブラシレスモータは電源の電圧によって直接駆動される。そのため、燃料ポンプから吐出される燃料の流量が変化しても、その変化が電源の電圧の変化によるものなのか、燃料ポンプの異常によるものかは判断できない。その結果、燃料ポンプの異常の検出は困難となる問題がある。
【０００４】
【特許文献１】特開平０３−２８４１８７号公報
【特許文献２】特開平０８−３１７６８６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
そこで、本発明の目的は、燃料ポンプの異常を早期に検出する燃料ポンプの制御装置を提供することにある。
また、本発明の他の目的は、燃料ポンプの異常を検出すると、燃料ポンプの正常な状態への復帰を図る燃料ポンプの制御装置を提供することにある。
また、本発明の他の目的は、燃料ポンプの異常によって燃料の供給量が変化しても、安定した内燃機関の運転を確保する燃料ポンプの制御装置を提供することにある。
【課題を解決するための手段】
【０００６】
請求項１から３のいずれか記載の発明では、電源の電圧およびブラシレスモータの回転数を検出する。異常判定手段は、検出した電源の電圧とブラシレスモータの回転数とが記憶手段にあらかじめ記憶されている電圧と回転数との関係の所定の範囲内にあるか否かを判断する。そして、異常検出手段は、その関係が所定の範囲外にあるとき、燃料ポンプに異常が生じていると判断する。例えば、ある電源電圧に対しブラシレスモータの回転数が上限よりも多い場合、ブラシレスモータは脱調などにより空転し、燃料ポンプからの燃料の吐出量に異常が生じていると考えられる。また、例えば、ある電源電圧に対しブラシレスモータの回転数が下限より少ない場合、ブラシレスモータあるいはブラシレスモータによって駆動される燃料ポンプは異物のかみ込みなどにより回転が規制され、燃料ポンプからの燃料の吐出量に異常が生じていると考えられる。このように、異常検出手段は、電源電圧とブラシレスモータの回転数とから燃料ポンプの異常を検出している。したがって、ブラシレスモータおよび燃料ポンプの異常を早期に検出することができる。
【０００７】
請求項２記載の発明では、異常検出手段が燃料ポンプの異常を検出すると、再起動手段はブラシレスモータを一旦停止した後、再起動する。例えばブラシレスモータが脱調により空転しているとき、ブラシレスモータを停止し、さらに再起動することにより、正常な回転状態に復帰する。また、ブラシレスモータが異物のかみ込みなどによって回転が規制されているとき、ブラシレスモータを停止し、さらに再起動することにより、異物のかみ込みが解除され、正常な回転状態に復帰する。このように、再起動手段は、ブラシレスモータを一旦停止しさせた後、再起動することにより、ブラシレスモータの回転状態を安定させる。したがって、燃料ポンプの異常が検出されても、燃料ポンプを正常な運転状態に復帰することができる。
【０００８】
請求項３記載の発明では、特性調整手段は、燃料ポンプに異常が検出され、燃料ポンプが停止しているとき、内燃機関の特性の調整する。燃料ポンプの再起動時に燃料ポンプが停止すると、燃料ポンプからの燃料の吐出量が低下する。このように、燃料ポンプに異常が検出され一旦停止すると、内燃機関に供給される燃料の流量が変化する。そのため、内燃機関の運転状態が変化し、内燃機関を搭載した車両の挙動が不安定になるおそれがある。そこで、特性調整手段は、内燃機関への燃料の噴射量、または点火時期などを調整し、内燃機関の運転状態の変化を最小限にとどめる。したがって、内燃機関の運転状態の変化を低減し、安定した運転状態を確保することができる。
【０００９】
請求項４記載の発明では、電源の電圧およびブラシレスモータの回転数を検出する。異常判定手段は、検出した電源の電圧とブラシレスモータの回転数とが記憶手段にあらかじめ記憶されている電圧と回転数との関係の所定の範囲内にあるか否かを判断する。そして、異常検出手段は、その関係が所定の範囲外にあるとき、燃料ポンプに異常が生じていると判断する。例えば、ある電源電圧に対しブラシレスモータの回転数が上限よりも多い場合、ブラシレスモータは脱調などにより空転し、燃料ポンプからの燃料の吐出量に異常が生じていると考えられる。また、例えば、ある電源電圧に対しブラシレスモータの回転数が下限より少ない場合、ブラシレスモータあるいはブラシレスモータによって駆動される燃料ポンプは異物のかみ込みなどにより回転が規制され、燃料ポンプからの燃料の吐出量に異常が生じていると考えられる。このように、異常検出手段は、電源電圧とブラシレスモータの回転数とから燃料ポンプの異常を検出している。したがって、ブラシレスモータおよび燃料ポンプの異常を早期に検出することができる。
また、異常検出手段が燃料ポンプの異常を検出すると、再起動手段はブラシレスモータを一旦停止させた後、再起動する。再起動手段は、ブラシレスモータを一旦停止した後、再起動することにより、ブラシレスモータの回転状態を安定させる。したがって、燃料ポンプの異常が検出されても、燃料ポンプを正常な運転状態に復帰することができる。
【００１０】
請求項５記載の発明では、電源の電圧およびブラシレスモータの回転数を検出する。異常判定手段は、検出した電源の電圧とブラシレスモータの回転数とが記憶手段にあらかじめ記憶されている電圧と回転数との関係の所定の範囲内にあるか否かを判断する。そして、異常検出手段は、その関係が所定の範囲外にあるとき、燃料ポンプに異常が生じていると判断する。例えば、ある電源電圧に対しブラシレスモータの回転数が上限よりも多い場合、ブラシレスモータは脱調などにより空転し、燃料ポンプからの燃料の吐出量に異常が生じていると考えられる。また、例えば、ある電源電圧に対しブラシレスモータの回転数が下限より少ない場合、ブラシレスモータあるいはブラシレスモータによって駆動される燃料ポンプは異物のかみ込みなどにより回転が規制され、燃料ポンプからの燃料の吐出量に異常が生じていると考えられる。このように、異常検出手段は、電源電圧とブラシレスモータの回転数とから燃料ポンプの異常を検出している。したがって、ブラシレスモータおよび燃料ポンプの異常を早期に検出することができる。
【００１１】
また、特性調整手段は、燃料ポンプが異常から復帰すると内燃機関の特性の調整する。燃料ポンプに異常が生じ、燃料ポンプが一旦停止されると、燃料ポンプからの燃料の吐出量が低下する。このように、燃料ポンプに異常が検出され燃料ポンプが停止すると、内燃機関に供給される燃料の流量が変化する。そのため、内燃機関の運転状態が変化し、内燃機関を搭載した車両の挙動が不安定になるおそれがある。そこで、特性調整手段は、内燃機関への燃料の噴射量、または点火時期などを調整し、内燃機関の運転状態の変化を最小限にとどめる。したがって、内燃機関の運転状態の変化を低減し、安定した運転状態を確保することができる。
【００１２】
請求項６記載の発明では、電源の電圧およびブラシレスモータの回転数を検出する。異常判定手段は、検出した電源の電圧とブラシレスモータの回転数とが記憶手段にあらかじめ記憶されている電圧と回転数との関係の所定の範囲内にあるか否かを判断する。そして、異常検出手段は、その関係が所定の範囲外にあるとき、燃料ポンプに異常が生じていると判断する。例えば、ある電源電圧に対しブラシレスモータの回転数が上限よりも多い場合、ブラシレスモータは脱調などにより空転し、燃料ポンプからの燃料の吐出量に異常が生じていると考えられる。また、例えば、ある電源電圧に対しブラシレスモータの回転数が下限より少ない場合、ブラシレスモータあるいはブラシレスモータによって駆動される燃料ポンプは異物のかみ込みなどにより回転が規制され、燃料ポンプからの燃料の吐出量に異常が生じていると考えられる。このように、異常検出手段は、電源電圧とブラシレスモータの回転数とから燃料ポンプの異常を検出している。したがって、ブラシレスモータおよび燃料ポンプの異常を早期に検出することができる。
【００１３】
また、異常検出手段が燃料ポンプの異常を検出すると、再起動手段はブラシレスモータを一旦停止させた後、再起動する。再起動手段は、ブラシレスモータを一旦停止させた後、再起動することにより、ブラシレスモータの回転状態を安定させる。したがって、燃料ポンプの異常が検出されても、燃料ポンプを正常な運転状態に復帰することができる。
さらに、特性調整手段は、ブラシレスモータが一旦停止された後、再起動されると、内燃機関の特性の調整する。燃料ポンプに異常が生じ、燃料ポンプが停止されると、燃料ポンプからの燃料の吐出量が低下する。そのため、燃料の流量の変化によって内燃機関の運転状態が変化し、内燃機関を搭載した車両の挙動が不安定になるおそれがある。そこで、特性調整手段は、内燃機関への燃料の噴射量、または点火時期などを調整し、内燃機関の運転状態の変化を最小限にとどめる。したがって、内燃機関の運転状態の変化を低減し、安定した運転状態を確保することができる。
【００１４】
請求項７記載の発明では、ブラシレスモータが停止されると、特性調整手段は、燃料の噴射期間を延長する。ブラシレスモータが停止されると、燃料ポンプからの燃料の吐出が停止する。そのため、燃料ポンプから吐出された燃料の圧力は低下する。そこで、特性調整手段は、燃料の噴射期間を延長することにより、内燃機関の運転を継続するために十分な燃料の噴射量を確保する。これにより、燃料ポンプが停止しても、内燃機関の運転状態の変化は低減される。したがって、内燃機関の安定した運転状態を確保することができる。
【００１５】
請求項８記載の発明では、ブラシレスモータの停止期間が長くなるにしたがって、特性調整手段は、燃料の噴射期間を徐々に延長する。ブラシレスモータが停止した後、燃料の噴射が実施されるごとに、燃料ポンプから吐出された燃料の圧力は徐々に低下する。そのため、特性調整手段は、徐々に低下する燃料の圧力に応じて燃料の噴射期間を徐々に延長する。これにより、燃料ポンプの停止が継続しても、内燃機関の運転を継続するために十分な燃料の噴射量が確保される。したがって、内燃機関の安定した運転状態を確保することができる。
【００１６】
請求項９記載の発明では、ブラシレスモータが停止されると、特性調整手段は、燃料の噴射量を増大する。ブラシレスモータが停止されると、燃料ポンプからの燃料の吐出が停止する。そのため、燃料ポンプから吐出された燃料の圧力は低下する。そこで、特性調整手段は、燃料の噴射量を増大すなわちリッチ化することにより、内燃機関の運転を継続するために十分な燃料を確保する。これにより、燃料ポンプが停止しても、内燃機関の運転状態の変化は低減される。したがって、内燃機関の安定した運転状態を確保することができる。
【００１７】
請求項１０記載の発明では、ブラシレスモータの停止期間が長くなるにしたがって、特性調整手段は、燃料の噴射量を徐々に延長する。ブラシレスモータが停止した後、燃料の噴射が実施されるごとに、燃料ポンプから吐出された燃料の圧力は徐々に低下する。そのため、特性調整手段は、徐々に低下する燃料の圧力に応じて燃料の噴射量を徐々に増大すなわちリッチ化する。これにより、燃料ポンプの停止が継続しても、内燃機関の運転を継続するために十分な燃料の噴射が確保される。したがって、内燃機関の安定した運転状態を確保することができる。
【００１８】
請求項１１記載の発明では、ブラシレスモータが停止されると、特性調整手段は、内燃機関の点火時期を進角側へ補正する。ブラシレスモータが停止されると、燃料ポンプからの燃料の吐出が停止する。そのため、燃料ポンプから吐出された燃料の圧力は低下する。そこで、特性調整手段は、内燃機関における混合気の点火時期を進角側へ補正することにより、内燃機関の出力トルクの変動を低減する。これにより、燃料ポンプが停止しても、内燃機関の運転状態の変化は低減される。したがって、内燃機関の安定した運転状態を確保することができる。
【００１９】
請求項１２記載の発明では、ブラシレスモータの停止期間が長くなるにしたがって、特性調整手段は、点火時期の進角側への補正量を徐々に増大する。ブラシレスモータが停止した後、燃料の噴射が実施されるごとに、燃料ポンプから吐出された燃料の圧力は徐々に低下し、燃料の噴射量は減少する。そのため、特性調整手段は、徐々に減少する燃料の噴射量に応じて点火時期を徐々に進角側へ補正する。これにより、燃料ポンプの停止が継続しても、内燃機関の出力トルクの変動は低減される。したがって、内燃機関の安定した運転状態を確保することができる。
【００２０】
請求項１３または１４記載の発明では、電源の電圧およびブラシレスモータの回転数を検出する。異常判定手段は、検出した電源の電圧とブラシレスモータの回転数とが記憶手段にあらかじめ記憶されている電圧と回転数との関係の所定の範囲内にあるか否かを判断する。このとき、異常判定手段は、燃料タンクの燃料の残量から、燃料ポンプの異常を検出する。例えば、ある電源電圧に対するブラシレスモータの回転数から、燃料ポンプに異常があると判断されたとき、その異常は燃料ポンプに起因するものなのか、燃料タンクのガス欠に起因するものか判断することができない。すなわち、燃料タンクにおける燃料の残量が少ない、いわゆるガス欠状態のとき、燃料ポンプは空転し、電源の電圧とブラシレスモータの回転数との関係は所定の範囲外となることがある。そこで、異常判定手段は、燃料ポンプの異常を検出する際、燃料タンクに蓄えられている燃料の残量に基づいて、燃料ポンプの異常を検出している。したがって、燃料タンクにおける燃料の残量による影響を低減しつつ、ブラシレスモータおよび燃料ポンプの異常を早期に検出することができる。
【００２１】
請求項１５または１６記載の発明では、異常検出手段は燃料ポンプの異常が設定期間内に複数回生じるか否かを判断する。ガス欠状態のとき、燃料タンク内の燃料の残量が低減するため、燃料の液面位置によって異常検出手段は間欠的に燃料ポンプの異常を検出する。一方、燃料ポンプのブラシレスモータに異常が生じている場合、燃料ポンプのブラシレスモータは異常な状態から正常な状態への回復が困難である。そのため、異常検出手段は、継続的に燃料ポンプの異常を検出する。そこで、異常検出手段は、燃料ポンプの異常頻度に基づいて、ブラシレスモータおよび燃料ポンプの異常を検出する。したがって、燃料タンクにおける燃料の残量に応じてブラシレスモータおよび燃料ポンプの異常を検出することができる。
【００２２】
請求項１７記載の発明では、異常検出手段はガス欠と判断したとき、警告手段から警告を発する。警告手段は、例えばランプの点滅などによる視覚的な警告、ブザーの鳴動などの聴覚的な警告、あるいは所定の部位の振動などによる触覚的な警告など、任意の手法で警告する。これにより、例えば車両の搭乗者に異常発生の認知を促し、迅速な対応を図ることができる。
【００２３】
請求項１８記載の発明では、異常検出手段はガス欠と判断したとき、開閉手段により燃料ポンプのリザーバタンクとメインタンクとを接続する接続通路を開放する。これにより、メインタンクと別個に燃料が蓄えられているリザーバタンクからメインタンクへ燃料が補給される。したがって、燃料ポンプは燃料タンクから外部へ燃料を吐出することができる。
【００２４】
請求項１９記載の発明では、異常検出手段が燃料ポンプの異常を検出すると、再起動手段はブラシレスモータを一旦停止した後、再起動する。例えばブラシレスモータが脱調により空転しているとき、ブラシレスモータを停止し、さらに再起動することにより、正常な回転状態に復帰する。また、ブラシレスモータが異物のかみ込みなどによって回転が規制されているとき、ブラシレスモータを停止し、さらに再起動することにより、異物のかみ込みが解除され、正常な回転状態に復帰する。このように、再起動手段は、ブラシレスモータを一旦停止しさせた後、再起動することにより、ブラシレスモータの回転状態を安定させる。したがって、燃料ポンプの異常が検出されても、燃料ポンプを正常な運転状態に復帰することができる。
【００２５】
請求項２０記載の発明では、特性調整手段は、燃料ポンプに異常が検出され、燃料ポンプが停止しているとき、内燃機関の特性の調整する。燃料ポンプの再起動時に燃料ポンプが停止すると、燃料ポンプからの燃料の吐出量が低下する。このように、燃料ポンプに異常が検出され一旦停止すると、内燃機関に供給される燃料の流量が変化する。そのため、内燃機関の運転状態が変化し、内燃機関を搭載した車両の挙動が不安定になるおそれがある。そこで、特性調整手段は、内燃機関への燃料の噴射量、または点火時期などを調整し、内燃機関の運転状態の変化を最小限にとどめる。したがって、内燃機関の運転状態の変化を低減し、安定した運転状態を確保することができる。
【００２６】
請求項２１記載の発明では、補正手段は使用される燃料の特性に応じて記憶手段に記憶された電源の電圧とブラシレスモータの回転数との関係を補正する。近年、環境への影響を考慮し、例えばバイオエタノールなどの生物由来の燃料を用いる内燃機関が提案されている。一方、これらの生物由来の燃料は、従来のガソリンや軽油などの石油系の燃料と粘度などの特性に差が存在する。そのため、例えばガソリンの使用を前提として電源の電圧とブラシレスモータの回転数との関係を設定しても、混入するエタノールの割合によってその関係に差が生じる。そこで、補正手段は、例えば所定の電源の電圧とこの電圧に対応するブラシレスモータの回転数とから、燃料に含まれるバイオエタノールの割合を推定し、その推定した割合から記憶手段に記憶された記憶値を補正する。したがって、燃料の種類に関係なく、ブラシレスモータおよび燃料ポンプの異常を早期に検出することができる。
【発明を実施するための最良の形態】
【００２７】
以下、本発明の複数の実施形態を図面に基づいて説明する。
（燃料ポンプの制御装置の第１実施形態）
まず、本発明の第１実施形態による燃料ポンプの制御装置を図１に示す。図１に示す燃料ポンプの制御装置１０は、制御ユニット１１および燃料ポンプ３０から構成されている。燃料ポンプ３０は、例えば内燃機関として排気量が１５０ｃｃ程度のガソリンエンジンを搭載した二輪車両の燃料タンクの内部に設置される。燃料ポンプ３０は、図２に示すようにポンプ部３１とポンプ部３１を駆動するブラシレスモータ３２とを備えている。ハウジング３３は、ポンプ部３１およびブラシレスモータ３２の双方のハウジングを形成している。ハウジング３３には、ポンプケース３４、ポンプカバー３５およびエンドカバー３６が固定されている。
【００２８】
ポンプ部３１は、ポンプケース３４、ポンプカバー３５およびインペラ３７を有するタービンポンプである。ポンプケース３４およびポンプカバー３５は、回転部材としてのインペラ３７を回転可能に収容している。ポンプケース３４と、ポンプカバー３５と、インペラ３７との間には、燃料ポンプ３０の周方向へＣ字形状のポンプ通路３８が形成されている。ポンプカバー３５に設けられた吸入口３９から吸入された燃料は、インペラ３７の回転によりポンプ通路３８で昇圧される。昇圧された燃料は、ブラシレスモータ３２側に圧送され、ステータコア４１とロータ４２との間の燃料通路４３および吐出通路４４を経由して吐出口４５から吐出される。
【００２９】
ブラシレスモータ３２は、ブラシおよび整流子を有していないセンサレス駆動のブラシレスモータである。ブラシレスモータ３２は、ステータコア４１およびロータ４２を有している。ステータコア４１は、周方向に配置され、コイル４６が巻かれた複数のコア４７を有している。ロータ４２の回転位置に応じてコイル４６への通電を制御することにより、ロータ４２と向き合う各コア４７の内周面に形成される磁極は切り換えられる。ロータ４２は、シャフト４８および永久磁石４９を有している。ロータ４２は、ステータコア４１の内周に回転可能に設置されている。シャフト４８の軸方向における両端部は、それぞれ軸受部５１および軸受部５２に支持されている。永久磁石４９は、ステータコア４１と向き合う外周面側に回転方向に交互に異なる磁極を形成するように着磁されている。
【００３０】
図１に示すように、制御装置としての制御ユニット１１は、制御回路部１２およびＥＣＵ２０を備えている。なお、制御回路部１２は、ＥＣＵ２０と一体の電子回路として構成してもよい。制御回路部１２は、燃料ポンプ３０のブラシレスモータ３２へ制御信号を出力し、ブラシレスモータ３２を回転駆動する。ブラシレスモータ３２は、制御回路部１２から出力される制御信号によってコイル４６への通電が制御される。これにより、ステータコア４１の各コア４７の内周面に形成される磁極は切り換えられ、ロータ４２は回転する。ロータ４２が回転することにより、シャフト４８ともにインペラ３７が回転し、ポンプ通路３８の燃料が加圧される。
【００３１】
制御回路部１２は、ブラシレスモータ３２の回転数を検出する回転数検出手段としての回転数検出部１３を有している。回転数検出部１３は、例えば制御回路部１２から出力される制御信号を読み取ることによりブラシレスモータ３２の回転数を検出する。回転数検出部１３は、検出したブラシレスモータ３２の回転数を電気信号としてＥＣＵ２０へ出力する。
【００３２】
ＥＣＵ２０は、ＣＰＵ２１、ＲＯＭ２２およびＲＡＭ２３を有するマイクロコンピュータによって構成されている。ＣＰＵ２１は、例えばＲＯＭ２２に記録されているコンピュータプログラムによって燃料ポンプ３０をはじめとするエンジン６０が搭載された車両の全体を制御する。ＥＣＵ２０は、制御回路部１２と電気的に接続されている。ＥＣＵ２０は、制御回路部１２を経由してブラシレスモータ３２を制御する。また、ＥＣＵ２０は、ＲＯＭ２２に記録されているコンピュータプログラムにしたがって作動することにより、特許請求の範囲における異常検出手段および再起動手段としても機能する。なお、ＥＣＵ２０は、ＲＯＭ２２に限らず例えばＥＥＰＲＯＭなどの不揮発性のメモリ、またはハードディスクやＤＶＤなどの記録媒体にコンピュータプログラムあるいは所定のデータを記録する構成としてもよい。
【００３３】
ＥＣＵ２０には、制御回路部２１だけでなくエンジン制御部６１に接続している。エンジン制御部６１は、燃料ポンプ３０によって燃料が供給されるエンジン６０を制御する。本実施形態の場合、エンジン制御部６１は、インジェクタ制御部６２および点火時期制御部６３を有している。なお、エンジン制御部６１は、ＥＣＵ２０と一体の電子回路として構成してもよい。ＥＣＵ２０と、エンジン制御部６１を構成するインジェクタ制御部６２および点火時期制御部６３とは、特許請求の範囲における特性調整手段を構成している。インジェクタ制御部６２は、エンジン６０に燃料を噴射するインジェクタ６４を駆動する。インジェクタ６４は、電磁弁であり、インジェクタ制御部６２から出力される制御信号によって開閉する。インジェクタ制御部６２から出力する制御信号によって、インジェクタ６４から噴射される燃料の量が調整される。また、点火時期制御部６３は、エンジン６０に吸入された混合気に着火する点火装置６５を駆動する。点火装置６５は、例えば点火プラグを有しており、点火時期制御部６３から出力される制御信号によって混合気の点火を断続する。これにより、点火時期制御部６３から出力する制御信号によって、エンジン６０に吸入された混合気の点火時期が調整される。
【００３４】
ＥＣＵ２０は、電源としてのバッテリ１４から電力が供給されている。ＥＣＵ２０は、バッテリ１４から供給された電力を燃料ポンプ３０をはじめとする車両の各部へ供給する。ＥＣＵ２０は、バッテリ１４の電圧を検出する電圧検出手段としての電圧検出部２４を有している。これにより、ＥＣＵ２０は、電圧検出部２４を経由してバッテリ１４の電圧を検出する。
【００３５】
ＥＣＵ２０のＲＯＭ２２には、バッテリ１４の電圧に対するブラシレスモータ３２の回転数がマップとして記録されている。すなわち、ＥＣＵ２０のＲＯＭ２２は、特許請求の範囲における記憶手段である。ブラシレスモータ３２の回転数は、図３に示すようにバッテリ１４の電圧の変化にともなって変化する。ＲＯＭ２２に記録されているマップには、バッテリ１４の電圧に対するブラシレスモータ３２の基準回転数、上限値および下限値が含まれている。
【００３６】
（燃料ポンプの異常検出）
次に、上記の構成による燃料ポンプ３０の制御装置１０による燃料ポンプ３０の異常検出手順について説明する。
１．異常検出の第１実施形態
異常検出の第１実施形態を図４に基づいて説明する。
ＥＣＵ２０は、所定の時期になると、燃料ポンプ３０の異常が生じているか否かの異常判定ルーチンを実施する。異常判定ルーチンは、例えばＥＣＵ２０による車両全体を監視するルーチンの一つとして含まれており、エンジン６０の始動後に定期的に実施される。異常判定ルーチンに移行すると、ＥＣＵ２０はまずバッテリ１４の電圧Ｂを検出する（Ｓ１０１）。ＥＣＵ２０は、電圧検出部２４からバッテリ１４の電圧Ｂを入手する。ＥＣＵ２０は、入手したバッテリ１４の電圧ＢをＲＡＭ２３に記録する。バッテリ１４の電圧を検出すると、ＥＣＵ２０は燃料ポンプ３０のブラシレスモータ３２の回転数ＮＰを検出する（Ｓ１０２）。ＥＣＵ２０は、制御回路部１２の回転数検出部１３からブラシレスモータ３２の回転数ＮＰを入手する。ＥＣＵ２０は、入手したブラシレスモータ３２の回転数ＮＰをＲＡＭ２３に記録する。
【００３７】
ＥＣＵ２０は、ステップＳ１０１で入手しＲＡＭ２３に記録したバッテリ１４の電圧Ｂに対応するブラシレスモータ３２の基準回転数ＮＰ０を、ＲＯＭ２２に記録されているマップから算出する（Ｓ１０３）。ＥＣＵ２０は、算出した基準回転数ＮＰ０をＲＡＭ２３に記録する。ＥＣＵ２０は、基準回転数ＮＰ０が算出されると、その基準回転数ＮＰ０に応じて上限値ＮＰ０＋αおよび下限値ＮＰ０−αを算出する。
【００３８】
ＥＣＵ２０は、上限値ＮＰ０＋αおよび下限値ＮＰ０−αが算出されると、ステップＳ１０２で入手したブラシレスモータ３２の回転数ＮＰが、所定の範囲内にあるか否かを判断する（Ｓ１０４）。すなわち、ＥＣＵ２０は、検出したブラシレスモータ３２の回転数ＮＰが、算出した上限値ＮＰ０＋αと下限値ＮＰ０−αとの間にあるかを判断する。ブラシレスモータ３２およびこれを備える燃料ポンプ３０は、生産工程上のばらつきにより、ある電圧に対する回転数には図３に示すように分布がある。そこで、ＥＣＵ２０は、基準回転数ＮＰ０を基準に予め設定された上限値および下限値を算出し、検出したブラシレスモータ３２の回転数ＮＰが所定の範囲内にあるか否かを判断する。
【００３９】
ＥＣＵ２０は、検出したブラシレスモータ３２の回転数ＮＰが上限値ＮＰ０＋αより大きい、または下限値ＮＰ０−αより小さいと判断すると、燃料ポンプ３０に異常が生じていると判断する（Ｓ１０５）。そして、ＥＣＵ２０は、ポンプ異常判別フラグＦＦＰＦをＦＦＰＦ＝１としてＲＡＭ２３に記録する（Ｓ１０６）。一方、ＥＣＵ２０は、検出したブラシレスモータ３２の回転数ＮＰが上限値と下限値との間、すなわち正常範囲であると判断すると、ポンプ異常判別フラグＦＦＰＦをＦＦＰＦ＝０としてＲＡＭ２３に記録する（Ｓ１０７）。
以上の手順により燃料ポンプ３０の異常検出を終了する。
【００４０】
２．異常検出の第２実施形態
異常検出の第２実施形態を図５に基づいて説明する。なお、異常検出の第１実施形態と実質的に同一の手順については詳細な説明を省略する。
ＥＣＵ２０は、異常判定ルーチンに移行すると、バッテリ１４の電圧Ｂを検出し、検出したバッテリ１４の電圧ＢをＲＡＭ２３に記録する（Ｓ２０１）。また、ＥＣＵ２０は、燃料ポンプ３０のブラシレスモータ３２の回転数ＮＰを検出し、検出したブラシレスモータ３２の回転数ＮＰをＲＡＭ２３に記録する（Ｓ２０２）。さらに、ＥＣＵ２０は、ステップＳ２０１で入手したバッテリ１４の電圧Ｂから、この電圧Ｂに対応するブラシレスモータ３２の基準回転数ＮＰ０を算出する（Ｓ２０３）。そして、ＥＣＵ２０は、算出した基準回転数ＮＰ０に応じて燃料ポンプ３０の個体差を含めた上限値ＮＰ０＋β、および下限値ＮＰ０−γを算出する。
【００４１】
ＥＣＵ２０は、上限値ＮＰ０＋βおよび下限値ＮＰ０−γが算出されると、ステップＳ２０２で入手したブラシレスモータ３２の回転数ＮＰが、上限値ＮＰ０＋β以下であるか否かを判断する（Ｓ２０４）。そして、回転数ＮＰが上限値ＮＰ０＋βより大きいとき、ＥＣＵ２０は脱調異常判別フラグＦＦＰＦ１をＦＦＰＦ１＝１とする（Ｓ２０５）。回転数ＮＰが上限値ＮＰ０＋βより大きいとき、ブラシレスモータ３２は制御回路部１２から出力される制御信号の位相とずれて空回りする状態すなわち脱調状態にあると考えられる。つまり、ブラシレスモータ３２は、電源であるバッテリ１４から供給される電圧Ｂに対し決定される回転数より大きな回転数で回転していると考えられる。そこで、ＥＣＵ２０は、回転数ＮＰが上限値ＮＰ０＋βより大きいと判断すると、ブラシレスモータ３２に脱調異常が生じていると判断し、脱調異常判別フラグＦＦＰＦ１＝１としてＲＡＭ２３に記録する。
【００４２】
一方、ステップＳ２０４において回転数ＮＰが上限値ＮＰ０＋β以下であると判断されると、ＥＣＵ２０は回転数ＮＰが下限値ＮＰ０−γ以上であるか否かを判断する（Ｓ２０６）。そして、回転数ＮＰが下限値ＮＰ０−γより小さいとき、ＥＣＵ２０はかみ込み異常判別フラグＦＦＰＦ２をＦＦＰＦ２＝１とする（Ｓ２０７）。回転数ＮＰが下限値ＮＰ０−γより小さいとき、ブラシレスモータ３２は回転数が低下している状態であると考えられる。すなわち、ブラシレスモータ３２は、電源であるバッテリ１４から供給される電圧Ｂに対し決定される回転数より小さな回転数で回転していると考えられる。これは、例えばポンプ部３１やブラシレスモータ３２の回転部分に異物がかみ込んだ場合のように、燃料ポンプ３０に回転の妨げとなる原因が作用した場合に生じる。そこで、ＥＣＵ２０は、回転数ＮＰが下限値ＮＰ０−γより小さいと判断すると、ブラシレスモータ３２または燃料ポンプ３０にかみ込み異常が生じていると判断し、かみ込み異常判別フラグＦＦＰＦ２＝１としてＲＡＭ２３に記録する。
【００４３】
ＥＣＵ２０は、ステップＳ２０６において回転数ＮＰが下限値ＮＰ０−γ以上であると判断されると、燃料ポンプ３０には異常が生じていないと判断する。そこで、ＥＣＵ２０は、脱調異常判別フラグＦＦＰＦ１、およびかみ込み異常判別フラグＦＦＰＦ２のいずれもＦＦＰＦ１＝０、ＦＦＰＦ２＝０としてＲＡＭ２３に記録する（Ｓ２０８）。
異常の手順により燃料ポンプ３０の異常検出を終了する。異常検出の第２実施形態では、燃料ポンプ３０の異常の有無だけでなく、異常の原因が脱調によるものか、または異物のかみ込みによるものなのかを判別することができる。
【００４４】
（燃料ポンプの異常復帰手順）
次に、上記の手順によって異常が検出された燃料ポンプ３０の異常復帰手順について説明する。
１．異常復帰の第１実施形態
図４に示す手順によって燃料ポンプ３０に異常が検出されると、ＥＣＵ２０は図６に示す異常復帰ルーチンに移行し燃料ポンプ３０を異常な状態から正常な状態へ復帰させる。
ＥＣＵ２０は、図４に示す手順によって燃料ポンプ３０の異常検出ルーチンを実施し、ポンプ異常判別フラグＦＦＰＦがＦＦＰＦ＝１であるか否かを判断する（Ｓ３０１）。ポンプ異常判別フラグＦＦＰＦがＦＦＰＦ＝０のとき、燃料ポンプ３０には異常が検出されていないので、ＥＣＵ２０は異常検出ルーチンを終了する。
【００４５】
ポンプ異常判別フラグＦＦＰＦがＦＦＰＦ＝１であるとき、ＥＣＵ２０は再起動待機カウンタＣＦＰＲＳＴの値が１００であるか否かを判断する（Ｓ３０２）。再起動待機カウンタＣＦＰＲＳＴは、燃料ポンプ３０の異常が検出され、異常復帰ルーチンが完了した時点でカウントが１００となる。すなわち、再起動待機カウンタＣＦＰＲＳＴの初期値は、１００である。そのため、ステップＳ３０１において異常復帰ルーチンへ移行した時点では、ＣＦＰＲＳＴ＝１００となっている。
【００４６】
ＥＣＵ２０は、再起動待機カウンタＣＦＰＲＳＴが１００となっているとき、再起動待機カウンタＣＦＰＲＳＴを０にセットする（Ｓ３０３）。すなわち、ＥＣＵ２０は、ポンプ異常復帰ルーチンが開始されたと判断する。そして、ＥＣＵ２０は、ポンプ異常復帰ルーチンが開始されると、燃料ポンプ３０すなわちブラシレスモータ３２への電力の供給を停止する（Ｓ３０４）。さらに、ＥＣＵ２０は、燃料ポンプ３０すなわちブラシレスモータ３２への電力の供給を停止すると、再起動待機カウンタＣＦＰＲＳＴの値を一つ進める（Ｓ３０５）。
【００４７】
そして、ＥＣＵ２０は、再起動待機カウンタＣＦＰＲＳＴが１００であるか否かを判断する（Ｓ３０６）。再起動待機カウンタＣＦＰＲＳＴが１００でないとき、ステップＳ３０２へリターンする。ステップＳ３０６からリターンしたとき、再起動待機カウンタＣＦＰＲＳＴは１００でないので、ステップＳ３０２からステップＳ３０７へ移行する。ステップＳ３０７では、再起動待機カウンタＣＦＰＲＳＴが５０であるか否かを判断する。そして、再起動待機カウンタＣＦＰＲＳＴが５０でないとき、ステップＳ３０５へ移行し、ＣＦＰＲＳＴの値が一つ進められる。これにより、ＥＣＵ２０は、再起動待機カウンタＣＦＰＲＳＴ＝５０になるまでブラシレスモータ３２への電力の供給を停止した状態を継続する。
【００４８】
一方、再起動待機カウンタＣＦＰＲＳＴが５０になると、燃料ポンプ３０すなわちブラシレスモータ３２への電力の供給が再開される（Ｓ３０８）。そして、ステップＳ３０５へ移行し、ＣＦＰＲＳＴの値が一つ進められる。これにより、ＥＣＵ２０は、ブラシレスモータ３２への電力の供給を継続する。そして、ステップＳ３０５で進められる再起動待機カウンタＣＦＰＲＳＴのカウントが１００に達すると、ＥＣＵ２０はブラシレスモータ３２が再起動されて十分な時間が経過したと判断する。したがって、ＥＣＵ２０は、異常復帰ルーチンを終了する（Ｓ３０９）。
【００４９】
上記のように異常復帰の第１実施形態では、再起動待機カウンタのカウントを利用して燃料ポンプ３０の作動を一定期間停止させた後、燃料ポンプ３０すなわちブラシレスモータ３２を再起動している。これにより、例えば脱調により空転が生じた燃料ポンプ３０は、脱調が解消され、正常な回転状態に復帰する。また、例えばポンプ部３１に異物がかみ込んでいた場合、ブラシレスモータ３２を停止することにより異物のかみ込みが解消される。したがって、ブラシレスモータ３２の再起動により、燃料ポンプ３０は正常な運転状態に復帰することができる。
【００５０】
２．異常復帰の第２実施形態
図５に示す手順によって燃料ポンプ３０に異常が検出されると、ＥＣＵ２０は図７に示す異常復帰ルーチンに移行し燃料ポンプ３０を異常な状態から正常な状態へ復帰させる。
ＥＣＵ２０は、図５に示す手順によって燃料ポンプ３０に異常が検出されると図７に示す異常復帰ルーチンへ移行し、ポンプ再起動待機カウンタＣＦＰＲＳＴをＣＦＰＲＳＴ＝１００にセットする（Ｓ４０１）。また、ＥＣＵ２０は、ポンプ逆転判別カウンタＣＮＦＰＲＶをＣＮＦＰＲＶ＝０にセットする（Ｓ４０２）。
【００５１】
ＥＣＵ２０は、ポンプ再起動待機カウンタＣＦＰＲＳＴおよびポンプ逆転判別カウンタＣＮＦＰＲＶのセットが完了すると、脱調異常判別フラグＦＦＰＦ１の状態を検出する（Ｓ４０３）。ＥＣＵ２０は、ＲＡＭ２３に記録されている脱調異常判別フラグＦＦＰＦ１がＦＦＰＦ１＝１のとき、後述する第１復帰モードルーチンへ移行する（Ｓ４０４）。一方、脱調異常判別フラグＦＦＰＦ１がＦＦＰＦ１＝０のとき、ＥＣＵ２０は燃料ポンプ３０に生じている異常が脱調状態でないと判断する。
【００５２】
そして、ＥＣＵ２０は、かみ込み異常判別フラグＦＦＰＦ２の状態を検出する（Ｓ４０５）。ＥＣＵ２０は、ＲＡＭ２３に記録されているかみ込み異常判別フラグＦＦＰＦ２がＦＦＰＦ２＝１のとき、後述する第２復帰モードルーチンへ移行する（Ｓ４０６）。一方、かみ込み異常判別フラグＦＦＰＦ２がＦＦＰＦ２＝０のとき、ＥＣＵ２０は燃料ポンプに異常が生じていないと判断し、異常復帰ルーチンを終了する。
【００５３】
・第１復帰モードルーチン
上述のステップＳ４０３において脱調異常判別フラグＦＦＰＦ１がＦＦＰＦ１＝１と判断されたとき、ステップＳ４０４において図８に示す第１復帰モードルーチンへ移行する。
図８に示す第１復帰モードルーチンとしての脱調復帰モードは、図６に示す異常復帰モードと概ね同一であるので簡単に説明する。
【００５４】
ＥＣＵ２０は、再起動待機カウンタＣＦＰＲＳＴの値が１００であるか否かを判断する（Ｓ５０１）。再起動待機カウンタＣＦＰＲＳＴの初期値は１００である。そのため、第１復帰モードルーチンに移行した時点では、ＣＦＰＲＳＴ＝１００となっている。
ＥＣＵ２０は、再起動待機カウンタＣＦＰＲＳＴが１００となっているとき、再起動待機カウンタＣＦＰＲＳＴを０にセットする（Ｓ５０２）。そして、ＥＣＵ２０は、第１復帰モードルーチンが開始されると、燃料ポンプ３０への電力の供給を停止する（Ｓ５０３）。さらに、ＥＣＵ２０は、燃料ポンプ３０への電力の供給を停止すると、再起動待機カウンタＣＦＰＲＳＴの値を一つ進める（Ｓ５０４）。
【００５５】
そして、ＥＣＵ２０は、再起動待機カウンタＣＦＰＲＳＴが１００であるか否かを判断する（Ｓ５０５）。再起動待機カウンタＣＦＰＲＳＴが１００でないとき、ステップＳ５０１へリターンする。このとき、再起動待機カウンタは１００でないので、ステップＳ５０１からステップＳ５０６へ移行する。ステップＳ５０６では、再起動待機カウンタＣＦＰＲＳＴが５０であるか否かを判断する。そして、再起動待機カウンタＣＦＰＲＳＴが５０でないとき、ステップＳ５０４へ移行し、ＣＦＰＲＳＴの値が一つ進められる。これにより、ＥＣＵ２０は、再起動待機カウンタが５０になるまで燃料ポンプ３０への電力の供給を停止した状態を継続する。
【００５６】
一方、再起動待機カウンタＣＦＰＲＳＴが５０になると、燃料ポンプ３０への電力の供給が再開される（Ｓ５０７）。そして、ステップＳ５０４に移行し、ＣＦＰＲＳＴの値が一つ進められる。これにより、ＥＣＵ２０は、燃料ポンプ３０への電力の供給を継続する。そして、ステップＳ５０４で進められる再起動待機カウンタＣＦＰＲＳＴのカウントが１００に達すると、ＥＣＵ２０は燃料ポンプ３０が再起動されて十分な時間が経過したと判断する。したがって、ＥＣＵ２０は、第１復帰モードルーチンを終了する（Ｓ５０８）。
【００５７】
・第２復帰モードルーチン
上述の図７のステップＳ４０５においてかみ込み異常判別フラグＦＦＰＦ２がＦＦＰＦ２＝１と判断されたとき、ステップＳ４０６において図９に示す第２復帰モードルーチンへ移行する。
ＥＣＵ２０は、かみ込み防止再起動待機カウンタＣＦＰＲＶＳＳを１００にセットする（Ｓ６０１）。そして、ＥＣＵ２０は、ＣＦＰＲＶＳＳが１００であるか否かを検出する（Ｓ６０２）。第２復帰モードルーチンへ移行したとき、ステップＳ６０１においてＣＦＰＲＶＳＳは１００にセットされているので、ステップＳ６０２ではＣＦＰＲＶＳＳ＝１００と判断される。
【００５８】
ステップＳ６０２でＣＦＰＲＶＳＳ＝１００と判断されると、ＥＣＵ２０は第２復帰モードルーチンが開始されたと判断し、ＣＦＰＲＶＳＳを０に設定する（Ｓ６０３）。そして、ＥＣＵ２０は、ブラシレスモータ３２すなわち燃料ポンプ３０への電力の供給を停止する（Ｓ６０４）。さらに、ＥＣＵ２０は、ポンプ逆転開始カウンタＣＦＰＲＶＳＥを１００にセットする（Ｓ６０５）。
【００５９】
ＣＦＰＲＶＳＥのセットが完了すると、ＥＣＵ２０はＣＦＰＲＶＳＥ＝０であるか否かを判断する（Ｓ６０６）。ＣＦＰＲＶＳＥは、ステップＳ６０５において１００にセットされている。したがって、ＥＣＵ２０は、ＣＦＰＲＶＳＥが０になるまで、ステップＳ６０２にリターンする。ステップＳ６０３においてＣＦＰＲＶＳＳ＝０にセットされているため、ステップＳ６０２へリターンしたとき、ＣＦＰＲＶＳＳ＝１００ではない。これにより、ＥＣＵ２０は、ステップＳ６１１へ移行し、ＣＦＰＲＶＳＳ＝５０であるか否かを判断する（Ｓ６１１）。ＣＦＰＲＶＳＳ＝５０でないとき、ＣＦＰＲＶＳＳの値は一つ進められる（Ｓ６１２）。そして、ＣＦＰＲＶＳＳ＝５０となるまで、ＥＣＵ２０はステップＳ６０２、Ｓ６１１、Ｓ６０６を繰り返し実行する。
【００６０】
ＣＦＰＲＶＳＳは、燃料ポンプ３０への電力の供給が停止された期間を示している。そのため、ステップＳ６１１においてＣＦＰＲＶＳＳ＝５０であると判断されると、燃料ポンプ３０には停止期間が十分に確保されたと考えることができる。そこで、ＥＣＵ２０は、燃料ポンプ３０の再起動を実行する。ここで、ＥＣＵ２０は、ポンプ逆転判別カウンタＣＮＦＰＲＶの値が偶数であるか否かを判断する。ＣＮＦＰＲＶは、図７のステップＳ４０２で０がセットされている。そのため、図９のステップＳ６１３では、ＣＮＦＰＲＶ＝偶数と判断される。
【００６１】
ステップＳ６１３においてＣＮＦＰＲＶ＝偶数と判断されると、ＥＣＵ２０は燃料ポンプ３０を逆転方向へ駆動する（Ｓ６１４）。すなわち、ＥＣＵ２０は、燃料ポンプ３０が燃料をエンジン６０側へ吐出する際に回転する正回転方向と逆方向へ燃料ポンプ３０を駆動する。ＥＣＵ２０は、燃料ポンプ３０の逆回転方向へ駆動すると、ポンプ逆転開始カウンタＣＦＰＲＶＳＥを０に設定する（Ｓ６１５）。
【００６２】
ステップＳ６１５においてＣＦＰＲＶＳＥは０に設定されているため、ＥＣＵ２０はステップＳ６０６においてＣＦＰＲＶＳＥ＝０と判断する。さらに、ＥＣＵ２０は、ステップＳ６２１へ移行し、ＣＦＰＲＶＳＥ＝５０ではないと判断する。これにより、ＥＣＵ２０は、ＣＦＰＲＶＳＥのカウントを一つ進める（Ｓ６２２）。そして、ＥＣＵ２０は、ＣＦＰＲＶＳＥが５０以上であるか否かを判断する（Ｓ６２４）。これにより、ＣＦＰＲＶＳＥ＝５０になるまで、ＥＣＵはステップＳ６２１およびＳ６２２を繰り返す。ＣＦＰＲＶＳＥは、ステップＳ６１４において燃料ポンプ３０が逆転方向へ駆動されてからの経過期間を示している。そのため、ＣＦＰＲＶＳＥ＝５０に達するまで、ＥＣＵ２０は燃料ポンプ３０の駆動期間が不十分と判断する。
【００６３】
一方、ステップＳ６２４において、ＥＣＵ２０がＣＦＰＲＶＳＥ＝５０と判断すると、ステップＳ６２１にリターンし、ステップＳ６２３へ移行する。すなわち、ＥＣＵ２０は、燃料ポンプ３０の駆動期間が十分に確保されたと判断する。そして、ＥＣＵ２０は、ポンプ逆転判別カウンタＣＮＦＰＲＶの値を一つ進める（Ｓ６２３）。
【００６４】
ＥＣＵ２０は、ステップＳ６２４においてＣＦＰＲＶＳＥが５０以上であると判断すると、引き続きカウントを進めたＣＮＦＰＲＶが５以上であるか否かを判断する（Ｓ６２５）。ＣＮＦＰＲＶが５より小さいとき、ステップＳ６０１へリターンする。その結果、ステップＳ６０４において、燃料ポンプ３０は停止される。そして、所定期間経過後、すなわちＣＦＰＲＶＳＳが５０に達すると、ステップＳ６１３へ移行する。ここで、ステップＳ６２３においてＣＮＦＰＲＶのカウントは一つ進められているため、ＣＮＦＰＲＶは奇数となっている。そのため、燃料ポンプ３０は、正回転方向へ駆動される（Ｓ６１６）。
【００６５】
以上の手順により、ＥＣＵ２０は、ＣＮＦＰＲＶが５以上になるまで燃料ポンプ３０の停止、逆回転、停止および正回転を繰り返し実行する。そして、ＣＮＦＰＲＶが５以上になると、ＥＣＵ２０は第２復帰モードルーチンを終了する（Ｓ６２６）。
第２復帰モードルーチンでは、ＥＣＵ２０は、燃料ポンプ３０の停止、逆回転、停止および正回転を繰り返して実施する。これにより、ポンプ部３１あるいはブラシレスモータ３２に異物のかみ込みによる回転不良が生じているとき、異物は正回転および逆回転の繰り返しにより除去される。したがって、燃料ポンプ３０に異常が生じても、その原因を取り除き、燃料ポンプ３０の確実な作動を確保することができる。
【００６６】
（燃料ポンプ異常時の安全確保）
１．安全確保の第１実施形態
図４に示す手順によって燃料ポンプ３０に異常が検出されると、ＥＣＵ２０は図６に示す異常復帰ルーチンに移行し燃料ポンプ３０を正常な状態へ復帰させる。このとき、図６に示すように燃料ポンプ３０は、一定期間停止される。そのため、燃料ポンプ３０からエンジン６０へ供給される燃料の圧力は低下する。そこで、安全確保の第１実施形態では、図４に示す手順によって燃料ポンプ３０に異常が検出され、燃料ポンプ３０が停止されているとき、図１０に示す流れによりインジェクタ６４からの燃料噴射量を補正しエンジン６０の安定した運転を確保する。
【００６７】
ＥＣＵ２０は、燃料ポンプ３０の異常の有無に関わらず、ＴＡＵの算出タイミングであるか否かを判断する（Ｓ７０１）。ＴＡＵとは、インジェクタ６４からの燃料の噴射期間である。ＥＣＵ２０は、エンジン制御の基本ルーチンにおいてインジェクタ６４からの燃料の噴射を実施する時期になると、燃料の噴射量を算出する。燃料ポンプ３０から供給される燃料の圧力が一定であれば、インジェクタ６４からの燃料の噴射量はインジェクタ６４の開弁時間すなわち噴射時間に相関する。そこで、ＥＣＵ２０は、インジェクタ６４からの燃料の噴射時期になると、ＴＡＵの算出へ移行する。
【００６８】
ＥＣＵ２０は、ＴＡＵを算出するために、エンジン６０の回転速度ＮＥを算出する（Ｓ７０２）。エンジン６０には、図１に示すように回転速度センサ６６が設置されている。ＥＣＵ２０は、回転速度センサ６６から出力される電気信号からエンジン６０の回転速度を算出する。また、ＥＣＵ２０は、エンジン６０の負荷Ｐを算出する（Ｓ７０３）。ＥＣＵ２０は、エンジン６０に吸入される吸気が流れる図示しない吸気通路の圧力を検出する。吸気通路には圧力センサ６７が設置され、圧力センサ６７は検出した圧力を電気信号としてＥＣＵ２０へ出力する。ＥＣＵ２０は、検出した吸気通路の圧力からエンジン６０の負荷Ｐを算出する。
【００６９】
さらに、ＥＣＵ２０は、エンジン６０の状態を検出する（Ｓ７０４）。ここで、ＥＣＵ２０は、例えば吸気通路を流れる吸気の温度ＴＨＡ、エンジン６０を冷却する冷却水の温度ＴＨＷ、大気圧ＰＡなど、さまざまなパラメータを図示しない各種のセンサから検出する。これにより、ＥＣＵ２０は、ＴＡＵの算出の基礎となるエンジン６０の状態を検出する。
【００７０】
ＥＣＵ２０は、エンジン６０の回転速度ＮＥおよびエンジン６０の負荷Ｐの算出、ならびにエンジン６０の状態を検出すると、ポンプ異常判別フラグＦＦＰＦがＦＦＰＦ＝１であるか否かを判断する（Ｓ７０５）。上述のように図４に示す手順によって燃料ポンプ３０に異常が検出されているとき、ＦＦＰＦ＝１となっている。
【００７１】
ＦＦＰＦ＝１のとき、ＥＣＵ２０は燃料圧力補正係数ＦＰＦとして基準燃料圧力ＰＦ０の平方根を設定する（Ｓ７０６）。燃料圧力補正係数ＦＰＦは、異常の検出にともなう燃料ポンプ３０の停止によって低下する燃料の吐出圧力を補正する係数である。基準燃料圧力ＰＦ０は、燃料ポンプ３０から吐出される燃料の圧力である。一方、燃料ポンプ３０の異常が検出されないＦＦＰＦ＝０のとき、ＥＣＵはＦＰＦ＝１．０と設定する（Ｓ７０７）。すなわち、ＦＰＦは補正されない。
【００７２】
燃料圧力補正係数ＦＰＦが設定されると、ＥＣＵ２０は下記の式１にしたがってＴＡＵを算出する（Ｓ７０８）。ＥＣＵ２０は、基準噴射パルス幅ＴＰをステップＳ７０７で算出したＦＰＦ、および各種のパラメータで補正する。基準噴射パルス幅ＴＰは、ステップＳ７０２で算出されるエンジン６０の回転速度ＮＥおよびステップＳ７０３で算出されるエンジン６０の負荷Ｐから求められる。ＥＣＵ２０は、例えばＲＯＭ２２に回転速度ＮＥと負荷Ｐとの関数としてのＴＰをマップとして有している。したがって、ＥＣＵ２０は、算出したＮＥおよびＰに基づいて、ＲＯＭ２２からＴＰを読み出す。また、ＴＰを補正する各種パラメータとしては、例えばステップＳ７０４で検出した吸気の温度ＴＨＡ、冷却水の温度ＴＨＷ、大気圧ＰＡなどである。ＥＣＵ２０は、設定したＴＰをＦＰＦおよび各種パラメータで補正するとともに、インジェクタ無効噴射時間ＴＶを加算する。インジェクタ無効噴射時間ＴＶは、例えばインジェクタ６４の開弁遅れなどによって、ＥＣＵ２０からインジェクタ６４へ開弁を指令する制御信号を出力しても、燃料の噴射が行われない時間を意味する。したがって、ＥＣＵ２０は、下記の式１によりＴＡＵを算出する。
【００７３】
ＴＡＵ＝ＴＰ×ｆ（ＴＨＡ，ＴＨＷ，ＰＡ，・・・）×ＦＰＦ＋ＴＶ      式１
ＥＣＵ２０は、ＴＡＵが算出されると、算出したＴＡＵに基づいてインジェクタ６４へ制御信号を出力する。これにより、インジェクタ６４からは、ＥＣＵ２０から出力されたＴＡＵにしたがって燃料が噴射される（Ｓ７０９）。
【００７４】
安全確保の第１実施形態では、燃料ポンプ３０が停止し燃料ポンプ３０から吐出される燃料の圧力が低下したとき、インジェクタ６４から燃料を噴射する噴射期間が延長される。これにより、燃料ポンプ３０から吐出される燃料の圧力が低下しても、インジェクタ６４から噴射される燃料の総量に大きな変化は生じない。その結果、燃料ポンプ３０の異常の検出によって燃料ポンプ３０を停止させるときでも、エンジン６０には所定量の燃料が噴射される。したがって、エンジン６０の運転を安定して継続することができ、安全性を確保することができる。
【００７５】
上述の安全確保の第１実施形態では、ステップＳ７０６においてＦＰＦをＰＦ０の平方根から算出する例について説明した。しかし、ＦＰＦは、例えばエンジン６０の負荷Ｐによって変化する係数として、ＲＯＭ２２に記録してもよい。また、ＦＰＦの精度を高めるために、ＦＰＦは、エンジン６０の負荷Ｐおよびエンジン６０の回転速度ＮＥの両者によって変化する係数として、ＲＯＭ２２に記録してもよい。さらに、ＦＰＦは、エンジン６０の負荷Ｐの関数として、ステップＳ７０３で検出したエンジン６０の負荷Ｐに基づいて算出する構成としてもよい。
【００７６】
２．安全確保の第２実施形態
上述の安全確保の第１実施形態で説明したように、図４に示す手順によって燃料ポンプ３０に異常が検出され、燃料ポンプ３０が停止されると、燃料ポンプ３０からエンジン６０へ供給される燃料の圧力は低下する。そのため、インジェクタ６４から噴射される燃料の噴射量が低減し、エンジン６０の出力トルクが低減する。そこで、安全確保の第２実施形態では、図４に示す手順によって燃料ポンプ３０に異常が検出され、燃料ポンプ３０が停止されているとき、図１１に示す流れによりエンジン６０の点火時期を進角側に補正しエンジン６０の出力トルクの安定を図る。安全確保の第２実施形態は、上述の安全確保の第１実施形態とともに実施してもよく、単独で実施してもよい。
【００７７】
ＥＣＵ２０は、燃料ポンプ３０の異常の有無に関わらず、ＡＥＳＡの算出タイミングであるか否かを判断する（Ｓ８０１）。ＡＥＳＡとは、エンジン６０における燃料の点火時期である。ＥＣＵ２０は、エンジン制御の基本ルーチンにおいてエンジン６０の点火時期になると、点火時期を算出する。
ＥＣＵ２０は、ＡＥＳＡを算出するために、エンジン６０の回転速度ＮＥを算出する（Ｓ８０２）。また、ＥＣＵ２０は、エンジン６０の負荷Ｐを算出する（Ｓ８０３）。さらに、ＥＣＵ２０は、エンジン６０の状態を検出する（Ｓ８０４）。ここで、エンジン６０の回転速度ＮＥの算出およびエンジン６０の負荷Ｐの算出、ならびにエンジン６０の状態の検出は、安全確保の第１実施形態と同様であるので、説明を省略する。
【００７８】
ＥＣＵ２０は、エンジン６０の回転速度ＮＥおよびエンジン６０の負荷Ｐの算出、ならびにエンジン６０の状態を検出すると、ポンプ異常判別フラグＦＦＰＦがＦＦＰＦ＝１であるか否かを判断する（Ｓ８０５）。上述のように図４に示す手順によって燃料ポンプ３０に異常が検出されているとき、ＦＦＰＦ＝１となっている。
【００７９】
ＦＦＰＦ＝１のとき、ＥＣＵ２０は燃料圧力補正進角量ＡＰＦを、ＡＰＦ＝αとして、あらかじめ決定されている補正値αを設定する（Ｓ８０６）。燃料圧力補正進角量ＡＰＦは、異常の検出にともなう燃料ポンプ３０の停止によって燃料の噴射量が低下したとき、エンジン６０の出力トルクの変動を低減するために点火時期を進角側へ補正する係数である。一方、燃料ポンプ３０の異常が検出されないＦＦＰＦ＝０のとき、ＥＣＵ２０はＡＰＦ＝０と設定する（Ｓ８０７）。すなわち、点火時期は進角側へ補正されない。
【００８０】
燃料圧力補正進角量ＡＰＦが設定されると、ＥＣＵ２０は下記の式２にしたがってＡＥＳＡを算出する（Ｓ８０８）。ＥＣＵ２０は、基準点火時期ＡＢＳＥをステップＳ８０６で算出したＡＰＦ、および各種のパラメータで補正する。基準点火時期ＡＢＳＥは、ステップＳ８０２で算出されるエンジン６０の回転速度ＮＥおよびステップＳ８０３で算出されるエンジン６０の負荷Ｐから求められる。ＥＣＵ２０は、例えばマップとしてＲＯＭ２２に記録しているＡＢＳＥを読み出す。また、ＡＢＳＥを補正する各種パラメータとしては、例えばステップＳ８０４で検出した吸気の温度ＴＨＡ、冷却水の温度ＴＨＷ、大気圧ＰＡなどである。ＥＣＵ２０は、設定したＡＢＳＥに各種パラメータに応じた補正値およびＡＰＦを加算する。したがって、ＥＣＵ２０は、下記の式２によりＡＥＳＡを算出する。
【００８１】
ＡＥＳＡ＝ＡＢＳＥ＋ｆ（ＴＨＡ，ＴＨＷ，ＰＡ，・・・）＋ＡＰＦ      式２
ＥＣＵ２０は、ＡＥＳＡが算出されると、算出したＡＥＳＡに基づいて点火装置６５へ制御信号を出力する。これにより、点火装置６５では、ＥＣＵ２０から出力されたＡＢＳＥにしたがって点火時期が進角側へ移行する（Ｓ８０９）。
【００８２】
安全確保の第２実施形態では、燃料ポンプ３０が停止し燃料ポンプ３０から吐出される燃料が低下したとき、点火時期が進角側へ切り換えられる。これにより、燃料ポンプ３０から吐出される燃料の圧力が低下し、インジェクタ６４から噴射される燃料の量が低減しても、エンジン６０の出力トルクの低下は最小限にとどめられる。したがって、エンジン６０の運転を安定して継続することができ、安全性を確保することができる。
【００８３】
上述の安全確保の第２実施形態では、ステップＳ８０６においてＡＰＦを所定の値αに固定して適用する例について説明した。しかし、ＡＰＦは、エンジン６０の回転速度ＮＥに応じて段階的に決定される値でもよく、エンジン６０の回転速度ＮＥに依存する関数として求めてもよい。
【００８４】
３．安全確保の第３実施形態
安全確保の第３実施形態では、図１０に示す安全確保の第１実施形態とＴＡＵの算出手法が相違する。そこで、図１２に基づいて図１０に示す安全確保の第１実施形態と相違する点を説明する。
安全確保の第３実施形態では、図１０に示す流れのステップＳ７０４からステップＳ７０８までの手法が相違する。そのため、図１０に示す流れにしたがってＴＡＵの算出タイミングであるか否かの判断（Ｓ７０１）、エンジン６０の回転速度ＮＥの算出（Ｓ７０２）、エンジン６０の負荷Ｐの算出（Ｓ７０３）、およびエンジン状態の検出（Ｓ７０４）が終了すると、図１２に示すステップＳ９０１に移行する。
【００８５】
ＥＣＵ２０は、エンジン６０の回転速度ＮＥおよびエンジン６０の負荷Ｐの算出、ならびにエンジン６０の状態を検出すると、ポンプ異常判別フラグＦＦＰＦがＦＦＰＦ＝１であるか否かを判断する（Ｓ９０２）。図４に示す手順によって燃料ポンプ３０に異常が検出されているとき、ＦＦＰＦ＝１となっている。
ＦＦＰＦ＝１のとき、ＥＣＵ２０はポンプ異常モード係数カウンタＣＦＰＦがＣＦＰＦ＝１であるか否かを判断する（Ｓ９０３）。図１２に示す流れにはじめて移行したとき、ＣＦＰＦはＣＦＰＦ＝０である。したがって、ＥＣＵ２０は、燃料圧力補正係数ＦＰＦをＦＰＦ＝１．０と設定する（Ｓ９０４）。
【００８６】
燃料圧力補正係数ＦＰＦをＦＰＦ＝１．０に設定すると、ＥＣＵ２０はＣＦＰＦのカウントを一つ進める（Ｓ９０５）。そして、図１０に示すステップＳ７０８へリターンし、設定したＦＰＦを用いてＴＡＵを設定する。図１２に示すルーチンへはじめて移行したとき、ＦＰＦ＝１に設定される。そのため、ＥＣＵ２０は、基準噴射パルス幅ＴＰをＦＰＦで補正することなく、ＴＡＵを設定する。
【００８７】
図１２に示すルーチンへ移行し、ＣＦＰＦ＝０のとき、燃料ポンプ３０は停止した直後である。そのため、燃料ポンプ３０から吐出された燃料の圧力は十分に維持されている。そこで、ＥＣＵ２０は、ＣＦＰＦ＝０のとき、ＴＰをＦＰＦによって補正することなくＴＡＵを設定する。したがって、ＴＰに応じて燃料が噴射される。
【００８８】
図１２に示すルーチンが二回目以降になると、ステップＳ９０３においてＣＦＰＦ＝０と判断されない。そのため、ＥＣＵ２０は、ＣＦＰＦと予め設定されている定数αとを比較する（Ｓ９１０）。定数αは、燃料ポンプ３０の停止後にインジェクタ６４から噴射される燃料圧力が維持されているか否かを示す値であり、燃料ポンプ３０の停止後に行われたインジェクタ６４からの燃料の噴射回数を示している。そのため、ＣＦＰＦがα以上のとき、燃料ポンプ３０の停止後に十分な回数の燃料噴射が行われ、燃料の圧力はほぼ大気圧と等しい状態であると判断される。一方、ＣＦＰＦがαより小さいとき、燃料ポンプ３０の停止後における燃料の噴射回数は少なく、燃料ポンプ３０から吐出された燃料は大気圧より大きな圧力を有していると判断される。
【００８９】
したがって、ステップＳ９１０においてＣＦＰＦ≧αと判断されると、ＥＣＵ２０はＦＰＦとして基準燃料圧力ＰＦ０の平方根を設定する（Ｓ９１１）。そして、ＥＣＵ２０は、ＣＦＰＦを一つ進めた後（Ｓ９０５）、ステップＳ７０８へリターンする（Ｓ９０６）。
一方、ステップＳ９１０においてＣＦＰＦ＜αと判断されると、ＥＣＵ２０はＦＰＦとして以下の式３に示す値を設定する（Ｓ９１２）。
【００９０】
ＦＰＦ＝｛ＰＦ０／（ＰＦ０−ＤＰＦ×ＣＦＰＦ）｝1/2      式３
ここで、ＤＰＦは、インジェクタ６４からの燃料の噴射一回当たりに低下する燃料の圧力である。また、ＣＦＰＦは、燃料の噴射回数に対応する。そのため、式３で設定されるＦＰＦは、燃料ポンプ３０の停止後において燃料の噴射ごとに低下する燃料の圧力を考慮して段階的に設定される。
【００９１】
ステップＳ９１２においてＦＰＦが設定されると、ＥＣＵ２０は、ＣＦＰＦを一つ進めた後（Ｓ９０５）、ステップＳ７０８へリターンする（Ｓ９０６）。
ステップＳ９０２においてＦＦＰＦ＝１でない、すなわち燃料ポンプ３０の異常が検出されていないと判断されたとき、ＥＣＵ２０はＣＦＰＦ＝０と設定し（Ｓ９２１）、ＦＰＦ＝１．０と設定する（Ｓ９２２）。したがって、燃料ポンプ３０に異常が生じていないとき、インジェクタ６４からは通常の噴射量の燃料が噴射される。
【００９２】
以上説明したように、安全確保の第３実施形態では、ＥＣＵ２０は、燃料ポンプ３０の停止後にインジェクタ６４から燃料が噴射されると、燃料が噴射されるごとに低下する燃料の圧力を考慮して燃料圧力補正係数ＦＰＦを設定している。そのため、燃料ポンプ３０の停止後において、インジェクタ６４へ供給される燃料の圧力が変化しても、所定の燃料の噴射量が確保される。したがって、エンジン６０の運転を安定して継続することができ、安全性を確保することができる。
【００９３】
上述の安全確保の第３実施形態では、ステップＳ９０３からステップＳ９０５において、燃料の噴射回数に応じてＦＰＦを算出する例について説明した。しかし、ＦＰＦは、燃料ポンプ３０が停止した後のインジェクタ６４からの燃料噴射回数に応じて値をあらかじめ設定し、ＲＯＭ２２に記録しておいてもよい。
【００９４】
４．安全確保の第４実施形態
安全確保の第４実施形態では、図１１に示す安全確保の第２実施形態とＡＥＳＡの算出手法が相違する。そこで、図１３に基づいて図１１に示す安全確保の第２実施形態と相違する点を説明する。
安全確保の第４実施形態では、図１１に示す流れのステップＳ８０４からステップＳ８０８までの手法が相違する。そのため、図１１に示す流れにしたがってＡＥＳＡの算出タイミングであるか否かの判断（Ｓ８０１）、エンジン６０の回転速度ＮＥの算出（Ｓ８０２）、エンジン６０の負荷Ｐの算出（Ｓ８０３）、およびエンジン状態の検出（Ｓ８０４）が終了すると、図１３に示すステップＳ１００１に移行する。
【００９５】
ＥＣＵ２０は、エンジン６０の回転速度ＮＥおよびエンジン６０の負荷Ｐの算出、ならびにエンジン６０の状態を検出すると、ポンプ異常判別フラグＦＦＰＦがＦＦＰＦ＝１であるか否かを判断する（Ｓ１００２）。図４に示す手順によって燃料ポンプ３０に異常が検出されているとき、ＦＦＰＦ＝１となっている。
ＦＦＰＦ＝１のとき、ＥＣＵ２０はポンプ異常モード係数カウンタＣＦＰＦがＣＦＰＦ＝１であるか否かを判断する（Ｓ１００３）。図１３に示す流れに移行したとき、ＣＦＰＦはＣＦＰＦ＝０である。したがって、ＥＣＵ２０は、燃料圧力補正進角量ＡＰＦをＡＰＦ＝０と設定する（Ｓ１００４）。
【００９６】
燃料圧力補正進角量ＡＰＦをＡＰＦ＝１．０に設定すると、ＥＣＵ２０はＣＦＰＦのカウントを一つ進める（Ｓ１００５）。そして、図１１に示すステップＳ８０８へリターンし、設定したＡＰＦを用いてＡＥＳＡを設定する。図１３に示すルーチンへはじめて移行したとき、ＡＰＦ＝０に設定される。そのため、ＥＣＵ２０は、基準点火時期ＡＢＳＥをＡＰＦで補正することなく、ＡＥＳＡを設定する。
【００９７】
図１３に示すルーチンへ移行し、ＣＦＰＦ＝０のとき、燃料ポンプ３０は停止した直後である。そのため、燃料ポンプ３０から吐出された燃料の圧力は十分に維持されている。そこで、ＥＣＵ２０は、ＣＦＰＦ＝０のとき、ＡＢＳＥをＡＰＦで補正することなくＡＥＳＡを設定する。したがって、ＡＢＳＥに応じて点火時期が設定される。
【００９８】
図１３に示すルーチンが二回目以降になると、ステップＳ１００３においてＣＦＰＦ＝０と判断されない。そのため、ＥＣＵ２０は、ＣＦＰＦと予め設定されている定数βとを比較する（Ｓ１０１０）。定数βは、燃料ポンプ３０の停止後にエンジン６０において燃焼が行われた回数を示す値である。そのため、ＣＦＰＦがβ以上のとき、燃料ポンプ３０の停止後にエンジン６０で十分な回数の燃焼が行われていると判断される。一方、ＣＦＰＦがβより小さいとき、燃料ポンプ３０の停止後におけるエンジン６０での燃焼回数は少ないと判断される。
【００９９】
したがって、ステップＳ１０１０においてＣＦＰＦ≧βと判断されると、ＥＣＵ２０はＡＰＦとして予め設定された補正値γを設定する。そして、ＥＣＵ２０は、ＣＦＰＦを一つ進めた後（Ｓ１００５）、ステップＳ８０８へリターンする（Ｓ１００６）。
一方、ステップＳ１０１０においてＣＦＰＦ＜βと判断されると、ＥＣＵ２０はＡＰＦとして以下の式４に示す値を設定する（Ｓ１０１２）。
【０１００】
ＡＰＦ＝ＤＡ×ＣＦＰＦ      式４
ここで、ＤＡは、エンジン６０での燃焼一回当たりに設定される進角補正値である。また、ＣＦＰＦは、エンジン６０での燃焼回数に対応する。そのため、式４で設定されるＡＰＦでは、燃料ポンプ３０の停止後において、エンジン６０での燃焼ごとに低下する燃料の圧力を考慮して、進角量が設定される
【０１０１】
ステップＳ１０１２においてＡＰＦが設定されると、ＥＣＵ２０は、ＣＦＰＦを一つ進めた後（Ｓ１００５）、ステップＳ８０８へリターンする（Ｓ１００６）。
ステップＳ１００２においてＦＦＰＦ＝１でない、すなわち燃料ポンプ３０の異常が検出されていないと判断されたとき、ＥＣＵ２０はＣＦＰＦ＝０と設定し（Ｓ１０２１）、ＡＰＦ＝０と設定する（Ｓ１０２２）。したがって、燃料ポンプ３０に異常が生じていないとき、噴射時期は進角されない。
【０１０２】
以上説明したように、安全確保の第４実施形態では、ＥＣＵ２０は、燃料ポンプ３０の停止後にエンジン６０で燃焼が行われると、エンジン６０の燃焼が行われるごとに低下する燃料の圧力を考慮して燃料圧力補正進角量ＡＰＦを設定している。そのため、燃料ポンプ３０の停止後において燃料の圧力が変化しても、噴射時期を進角側へ補正することにより、エンジン６０の出力トルクが確保される。したがって、エンジン６０の運転を安定して継続することができ、安全性を確保することができる。
【０１０３】
上述の安全確保の第４実施形態では、ステップＳ１００３からステップＳ１００５において、エンジン６０での燃焼回数に応じてＡＰＦを算出する例について説明した。しかし、ＡＰＦは、燃料ポンプ３０が停止した後のエンジン６０での燃焼回数に応じた値をあらかじめ設定し、ＲＯＭ２２に記録しておいてもよい。
【０１０４】
５．安全確保の第５実施形態
安全確保の第５実施形態では、安全確保の第３実施形態と同様に図１０に示す安全確保の第１実施形態とＴＡＵの算出手法が相違する。そこで、図１４に基づいて安全確保の第５実施形態を説明する。
ＥＣＵ２０は、図１０に示す流れにおいてＴＡＵの算出タイミングであるか否かの判断（Ｓ７０１）、エンジン６０の回転速度ＮＥの算出（Ｓ７０２）、エンジン６０の負荷Ｐの算出（Ｓ７０３）、およびエンジン状態の検出（Ｓ７０４）が終了すると、図１４に示すステップＳ１１０１に移行し、ポンプ異常判別フラグＦＦＰＦがＦＦＰＦ＝１であるか否かを判断する（Ｓ１１０２）。図４に示す手順によって燃料ポンプ３０に異常が検出されているとき、ＦＦＰＦ＝１となっている。
【０１０５】
ＦＦＰＦ＝１のとき、ＥＣＵ２０はポンプ異常モード係数カウンタＣＦＰＦがＣＦＰＦ＝１であるか否かを判断する（Ｓ１１０３）。図１４に示す流れにはじめて移行したとき、ＣＦＰＦはＣＦＰＦ＝０である。そのため、ＥＣＵ２０は、燃料ポンプ３０に異常が検出され、燃料ポンプ３０が停止してからはじめての燃料の噴射であると判断する。そこで、ＥＣＵ２０は、実効燃料噴射時間積算値ＳＵＭＩＮＪとしてＳＵＭＩＮＪ＝０を設定する（Ｓ１１０４）。実効燃料噴射時間積算値ＳＵＭＩＮＪは、文字通りインジェクタ６４から実際に燃料が噴射された時間を積算したものである。燃料ポンプ３０が停止してはじめての燃料の噴射であるとき、燃料ポンプ３０から吐出された燃料の圧力は維持されている。そこで、ＥＣＵ２０は、燃料圧力補正係数ＦＰＦをＦＰＦ＝１．０と設定する（Ｓ１１０５）。
【０１０６】
燃料圧力補正係数ＦＰＦをＦＰＦ＝１に設定すると、ＥＣＵ２０はＣＦＰＦのカウントを一つ進める（Ｓ１１０６）。そして、図１０に示すステップＳ７０８へリターンし（Ｓ１１０７）、設定したＦＰＦを用いてＴＡＵを設定する。図１４に示すルーチンへはじめて移行したとき、ＦＰＦ＝１に設定される。そのため、ＥＣＵ２０は、基準噴射パルス幅ＴＰをＦＰＦで補正することなく、ＴＡＵを設定する。
【０１０７】
図１４に示すルーチンへ移行し、ＣＦＰＦ＝０のとき、燃料ポンプ３０が停止してから最初の燃料噴射である。そのため、燃料ポンプ３０から吐出された燃料の圧力は十分に維持されている。そこで、ＥＣＵ２０は、ＣＦＰＦ＝０のとき、ＴＰをＦＰＦによって補正することなくＴＡＵを設定する。したがって、ＴＰに応じて燃料が噴射される。
【０１０８】
図１４に示すルーチンが二回目以降になると、ステップＳ１１０３においてＣＦＰＦ＝０と判断されない。そのため、ＥＣＵ２０は、ＳＵＭＩＮＪに前回の実効燃料噴射時間ＩＮＪ０を加算する（Ｓ１１１１）。ここで、前回の実効燃料噴射時間ＩＮＪ０は、前回の噴射において設定された最終的な燃料噴射期間ＴＡＵ０から前回の噴射における無効噴射時間ＴＶ０を減じた値を、前回の噴射において設定された燃料圧力補正係数ＦＰＦ０で除した値である。
【０１０９】
ＥＣＵ２０は、ＳＵＭＩＮＪを算出すると、算出したＳＵＭＩＮＪに対応する燃料圧力ＰＦを算出する（Ｓ１１１２）。ＳＵＭＩＮＪとＰＦとの関係は、例えばマップとしてＥＣＵ２０のＲＯＭ２２に記録されている。ＥＣＵ２０は、算出したＰＦを用いて、ＦＰＦを算出する。ＥＣＵ２０は、ＦＰＦとして以下の式５に示す値を設定する（Ｓ１１１３）。
【０１１０】
ＦＰＦ＝（ＰＦ０／ＰＦ）1/2      式５
ここで、ＰＦ０は基準燃料圧力である。
ステップＳ１１１３においてＦＰＦが設定されると、ＥＣＵ２０は、ＣＦＰＦを一つ進めた後（Ｓ１００６）、ステップＳ７０８へリターンする（Ｓ１１０７）。
【０１１１】
ステップＳ１１０２においてＦＦＰＦ＝１でない、すなわち燃料ポンプ３０の異常が検出されていないと判断されたとき、ＥＣＵ２０はＣＦＰＦ＝０と設定し（Ｓ１１２１）、ＦＰＦ＝１．０と設定する（Ｓ１１２２）。したがって、燃料ポンプ３０に異常が生じていないとき、インジェクタ６４からは通常の噴射量の燃料が噴射される。
【０１１２】
以上説明したように、安全確保の第５実施形態では、ＥＣＵ２０は、燃料ポンプ３０の停止後のインジェクタ６４からの燃料噴射時間を積算する。燃料ポンプ３０の停止後にインジェクタ６４から燃料が噴射されると、その噴射時間に応じて燃料の圧力は低下する。そこで、インジェクタ６４からの燃料の噴射時間を積算し、積算した燃料の噴射時間を考慮して燃料圧力補正係数ＦＰＦを設定している。そのため、燃料ポンプ３０の停止後における燃料の圧力変化にかかわらず所定の燃料の噴射量が確保される。したがって、エンジン６０の運転を安定して継続することができ、安全性を確保することができる。
【０１１３】
６．安全確保の第６実施形態
図４に示す手順によって燃料ポンプ３０に異常が検出されると、ＥＣＵは図６に示す異常復帰ルーチンに移行し燃料ポンプ３０を正常な状態へ復帰させる。このとき、図６に示すように燃料ポンプ３０は、一定期間停止される。そのため、燃料ポンプ３０からエンジン６０へ供給される燃料の圧力は低下する。そこで、安全確保の第６実施形態では、図４に示す手順によって燃料ポンプ３０に異常が検出され、燃料ポンプ３０が停止されているとき、図１５に示す手順にしたがってインジェクタ６４からの燃料の噴射量を強制的に増量しエンジン６０の安定した運転を確保する。
【０１１４】
ＥＣＵ２０は、燃料ポンプ３０の異常の有無に関わらず、ＴＡＵの算出タイミングであるか否かを判断する（Ｓ１２０１）。ＥＣＵ２０は、インジェクタ６４のからの燃料の噴射時期になると、ＴＡＵの算出へ移行する。
ＥＣＵ２０は、ＴＡＵを算出するために、エンジン６０の回転速度ＮＥを算出する（Ｓ１２０２）。また、ＥＣＵ２０は、エンジン６０の負荷Ｐを算出する（Ｓ１２０３）。エンジン６０の回転速度ＮＥおよびエンジン６０の負荷Ｐの算出は、安全確保の第１実施形態と同様である。さらに、ＥＣＵ２０は、エンジン６０の状態を検出する（Ｓ１２０４）。ＥＣＵ２０は、安全確保の第１実施形態と同様に吸気の温度ＴＨＡ、冷却水の温度ＴＨＷ、大気圧ＰＡなどからエンジン６０の状態を検出する。
【０１１５】
ＥＣＵ２０は、エンジン６０の回転速度ＮＥおよびエンジン６０の負荷Ｐの算出、ならびにエンジン６０の状態を検出すると、ポンプ異常判別フラグＦＦＰＦがＦＦＰＦ＝１であるか否かを判断する（Ｓ１２０５）。図４に示す手順によって燃料ポンプ３０に異常が検出されているとき、ＦＦＰＦ＝１となっている。
ＦＦＰＦ＝１のとき、ＥＣＵ２０は燃料圧力補正係数ＦＰＦとして基準燃料圧力ＰＦ０の平方根を設定する（Ｓ１２０６）。燃料圧力補正係数は、異常の検出にともなう燃料ポンプ３０の停止によって低下する燃料ポンプ３０からの吐出圧力を補正する係数である。基準燃料圧力ＰＦ０は、燃料ポンプ３０から吐出される燃料の圧力である。そして、ＥＣＵ２０は、ポンプ異常時補正係数ＦＦＰＦＳとして所定値δを設定する（Ｓ１２０７）。ポンプ異常時補正係数ＦＦＰＦＳは、燃料ポンプ３０の停止にともなう燃料の圧力低下を考慮して、燃料の噴射量の増大すなわちリッチ化を図るための係数である。ＦＦＰＦＳにより、燃料ポンプ３０の停止によって燃料の圧力が低下しても、インジェクタ６４から噴射される燃料の総量は増加する。
【０１１６】
一方、燃料ポンプ３０の異常が検出されないＦＦＰＦ＝０のとき、ＥＣＵ２０はＦＰＦ＝１．０と設定する（Ｓ１２１１）。また、ＥＣＵ２０は、ＦＦＰＦＳ＝１．０と設定する（Ｓ１２１２）。すなわち、燃料ポンプ３０の異常が検出されないとき、補正係数は設定されない。
燃料圧力補正係数ＦＰＦおよびポンプ異常時補正係数ＦＦＰＦＳが設定されると、ＥＣＵ２０は下記の式６にしたがってＴＡＵを算出する（Ｓ１２０８）。ＥＣＵ２０は、基準噴射パルス幅ＴＰをステップＳ１２０６で算出したＦＰＦ、ステップＳ１２０７で算出したＦＦＰＦＳ、および各種のパラメータで補正する。基準噴射パルス幅ＴＰは、安全確保の第１実施形態で説明したようにステップＳ１２０２で算出されるエンジン６０の回転速度ＮＥおよびステップＳ７０３で算出されるエンジンの負荷Ｐから求められる。また、ＴＰを補正する各種パラメータとしては、例えばステップＳ１２０４で検出した吸気の温度ＴＨＡ、冷却水の温度ＴＨＷ、大気圧ＰＡなどである。ＥＣＵ２０は、設定したＴＰをＦＰＦ、ＦＦＰＦＳおよび各種パラメータで補正するとともに、インジェクタ６４の無効噴射時間ＴＶを加算する。したがって、ＥＣＵ２０は、下記の式６によりＴＡＵを算出する。
ＴＡＵ＝ＴＰ×ｆ（ＴＨＡ，ＴＨＷ，ＰＡ，・・・）×ＦＰＦ×ＦＦＰＦＳ＋ＴＶ  式６
【０１１７】
ＥＣＵ２０は、ＴＡＵが算出されると、算出したＴＡＵに基づいてインジェクタ６４へ制御信号を出力する。これにより、インジェクタ６４からは、ＥＣＵ２０から出力された制御信号にしたがって燃料が噴射される（Ｓ１２０９）。
安全確保の第６実施形態では、燃料ポンプ３０が停止し燃料ポンプ３０から吐出される燃料の圧力が低下したとき、インジェクタ６４から燃料を噴射する燃料が増加する。これにより、燃料ポンプ３０から吐出される燃料の圧力が低下しても、インジェクタ６４から噴射される燃料の総量に大きな変化は生じない。その結果、燃料ポンプ３０の異常の検出によって燃料ポンプ３０を停止させるときでも、エンジン６０には所定量の燃料が噴射される。したがって、エンジン６０の運転を安定して継続することができ、安全性を確保することができる。
【０１１８】
上述の安全確保の第６実施形態では、ステップＳ１２０７においてＦＦＰＦＳを所定値δに設定する例について説明した。しかし、ＦＦＰＦＳは、例えばエンジン６０の負荷Ｐによって変化する係数のマップとしてＲＯＭ２２に記録し、補間計算して用いてもよい。また、ＦＦＰＦＳは、エンジン６０の負荷Ｐおよびエンジン６０の回転速度ＮＥの両者によって変化する係数のマップとしてＲＯＭ２２に記録し、補間計算して用いてもよい。さらに、ＦＦＰＦＳは、エンジン６０の負荷Ｐの関数として、ステップＳ１２０３で検出したエンジン６０の負荷Ｐに基づいて算出する構成としてもよい。
【０１１９】
７．安全確保の第７実施形態
安全確保の第７実施形態では、安全確保の第６実施形態におけるＴＡＵの算出手法が相違する。そこで、図１６に基づいて安全確保の第７実施形態を説明する。
ＥＣＵ２０は、図１５に示す流れにおいてＴＡＵの算出タイミングであるか否かの判断（Ｓ１２０１）、エンジン６０の回転速度ＮＥの算出（Ｓ１２０２）、エンジン６０の負荷Ｐの算出（Ｓ１２０３）、およびエンジン状態の検出（Ｓ１２０４）が終了すると、図１６に示すステップＳ１３０１に移行し、ポンプ異常判別フラグＦＦＰＦがＦＦＰＦ＝１であるか否かを判断する（Ｓ１３０２）。図４に示す手順によって燃料ポンプ３０に異常が検出されているとき、ＦＦＰＦ＝１となっている。
【０１２０】
ＦＦＰＦ＝１のとき、ＥＣＵ２０はポンプ異常モード係数カウンタＣＦＰＦがＣＦＰＦ＝１であるか否かを判断する（Ｓ１３０３）。図１６に示す流れにはじめて移行したとき、ＣＦＰＦはＣＦＰＦ＝０である。そのため、ＥＣＵ２０は、燃料ポンプ３０に異常が検出され、燃料ポンプ３０が停止してからはじめての燃料噴射であると判断する。燃料ポンプ３０が停止してからはじめての燃料の噴射であるとき、燃料ポンプ３０から吐出された燃料の圧力は維持されている。そこで、ＥＣＵ２０は、燃料圧力補正係数ＦＰＦをＦＰＦ＝１．０と設定する（Ｓ１３０４）。
【０１２１】
ＥＣＵ２０は、燃料圧力補正係数ＦＰＦ＝１．０と設定すると、ポンプ異常時補正係数ＦＦＰＦＳをＦＦＰＦＳ＝１．０と設定する（Ｓ１３０５）。ポンプ異常時補正係数ＦＦＰＦＳは、安全確保の第６実施形態で説明したように燃料ポンプ３０の停止にともなう燃料の圧力低下を考慮して、燃料の噴射量の増大すなわちリッチ化を図るための係数である。
【０１２２】
ＥＣＵ２０は、ＦＰＦおよびＦＦＰＦＳを設定すると、ＣＦＰＦのカウントを一つ進める（Ｓ１３０６）。そして、図１５に示すステップＳ１２０８へリターンし、設定したＦＰＦおよびＦＦＰＦＳを用いてＴＡＵを設定する。図１６に示すルーチンへはじめて移行したとき、ＦＰＦ＝１．０およびＦＦＰＦＳ＝１．０に設定される。そのため、ＥＣＵ２０は、基準噴射パルス幅ＴＰをＦＰＦおよびＦＦＰＦＳで補正することなく、ＴＡＵを設定する。
【０１２３】
図１６に示すルーチンが二回目以降になると、ステップＳ１３０３においてＣＦＰＦ＝０と判断されない。そのため、ＥＣＵ２０は、ＣＦＰＦと予め設定されている定数αとを比較する（Ｓ１３１１）。定数αは、安全確保の第３実施形態で説明したとおりインジェクタ６４からの燃料の噴射回数を示している。そのため、ＣＦＰＦがα以上のとき燃料の圧力はほぼ大気圧と等しい状態であると判断され、ＣＦＰＦがαより小さいとき燃料ポンプ３０から吐出された燃料は大気圧より大きな圧力を有していると判断される。
【０１２４】
したがって、ステップＳ１３１１においてＣＦＰＦ≧αと判断されると、ＥＣＵ２０はＦＰＦとして基準燃料圧力ＰＦ０の平方根を設定する（Ｓ１３１２）。そして、ＥＣＵ２０は、ポンプ異常時補正係数ＦＦＰＦＳを所定値μに設定する（Ｓ１３１３）。これにより、ＣＦＰＦがα以上のとき、燃料ポンプ３０から吐出された燃料の圧力が大気圧とほぼ等しいと判断され、燃料の噴射量は所定値μにしたがって増量される。ＦＰＦおよびＦＦＰＦＳが設定されると、ＥＣＵ２０は、ＣＦＰＦを一つ進めた後（Ｓ１２０６）、ステップＳ１２０８へリターンする（Ｓ１３０７）。
【０１２５】
一方、ステップＳ１３１１においてＣＦＰＦ＜αと判断されると、ＥＣＵ２０はＦＰＦとして以下の式７に示す値を設定する（Ｓ１３１４）。
ＦＰＦ＝｛ＰＦ０／（ＰＦ０−ＤＰＦ×ＣＦＰＦ）｝1/2      式７
ここで、ＤＰＦは、インジェクタ６４からの燃料の噴射一回当たりに低下する燃料の圧力である。また、ＣＦＰＦは、燃料の噴射回数に対応する。そのため、式７で設定されるＦＰＦは、燃料ポンプ３０の停止後において燃料の噴射ごとに低下する燃料の圧力を考慮して段階的に設定される。
【０１２６】
ステップＳ１３１４においてＦＰＦが設定されると、ＥＣＵ２０は、ＦＦＰＦＳ＝γと設定し（Ｓ１３１３）、ＣＦＰＦを一つ進めた後（Ｓ１３０６）、ステップＳ１２０８へリターンする（Ｓ１３０７）。
ステップＳ１３０２においてＦＦＰＦ＝１でない、すなわち燃料ポンプ３０の異常が検出されていないと判断されたとき、ＥＣＵ２０はＣＦＰＦ＝０と設定し（Ｓ１３２１）、ＦＰＦ＝１．０と設定し（Ｓ１３２２）、ＦＦＰＦＳ＝１．０と設定する（Ｓ１３２３）。したがって、燃料ポンプ３０に異常が生じていないとき、インジェクタ６４からは通常の噴射量の燃料が噴射される。
【０１２７】
以上説明したように、安全確保の第７実施形態では、ＥＣＵ２０は、燃料ポンプ３０の停止後にインジェクタ６４から燃料が噴射されると、燃料が噴射されるごとに低下する燃料の圧力を考慮して燃料圧力補正係数ＦＰＦを設定し、ポンプ異常時補正係数ＦＦＰＦＳとともに燃料の噴射量を補正している。そのため、燃料ポンプ３０の停止後における燃料の圧力変化にかかわらず所定の燃料の噴射量が確保される。したがって、エンジン６０の運転を安定して継続することができ、安全性を確保することができる。
【０１２８】
上述の安全確保の第７実施形態では、ステップＳ１３０５、ステップＳ１３１３においてＦＦＰＦＳを所定値μに設定する例について説明した。しかし、ＦＦＰＦＳは、安全確保の第６実施形態と同様にエンジン６０の負荷Ｐ、エンジン６０の回転速度ＮＥなどの関数あるいはマップとして算出してもよい。
【０１２９】
８．安全確保の第８実施形態
安全確保の第８実施形態では、安全確保の第６実施形態におけるＴＡＵの算出手法が相違する。そこで、図１７に基づいて安全確保の第８実施形態を説明する。
ＥＣＵは、図１５に示す流れにおいてＴＡＵの算出タイミングであるか否かの判断（Ｓ１２０１）、エンジン６０の回転速度ＮＥの算出（Ｓ１２０２）、エンジン６０の負荷Ｐの算出（Ｓ１２０３）、およびエンジン状態の検出（Ｓ１２０４）が終了すると、図１７に示すステップＳ１４０１に移行し、ポンプ異常判別フラグＦＦＰＦがＦＦＰＦ＝１であるか否かを判断する（Ｓ１４０２）。図４に示す手順によって燃料ポンプ３０に異常が検出されているとき、ＦＦＰＦ＝１となっている。
【０１３０】
ＦＦＰＦ＝１のとき、ＥＣＵ２０はポンプ異常モード係数カウンタＣＦＰＦがＣＦＰＦ＝１であるか否かを判断する（Ｓ１４０３）。図１７に示す流れにはじめて移行したとき、ＣＦＰＦはＣＦＰＦ＝０である。そのため、ＥＣＵ２０は、燃料ポンプに異常が検出され、燃料ポンプが停止してからはじめての燃料噴射であると判断する。燃料ポンプ３０が停止してからはじめての燃料の噴射であるとき、燃料ポンプ３０から吐出された燃料の圧力は維持されている。そこで、ＥＣＵ２０は、燃料圧力補正係数ＦＰＦをＦＰＦ＝１．０と設定する（Ｓ１４０４）。
【０１３１】
ＥＣＵ２０は、燃料圧力補正係数ＦＰＦ＝１．０と設定すると、ポンプ異常時補正係数ＦＦＰＦＳをＦＦＰＦＳ＝１．０と設定する（Ｓ１４０５）。ポンプ異常時補正係数ＦＦＰＦＳは、安全確保の第６実施形態で説明したように燃料ポンプ３０の停止にともなう燃料の圧力低下を考慮して、燃料の噴射量の増大すなわちリッチ化を図るための係数である。
【０１３２】
ＥＣＵ２０は、ＦＰＦおよびＦＦＰＦＳを設定すると、ＣＦＰＦのカウントを一つ進める（Ｓ１４０６）。そして、図１５に示すステップＳ１２０８へリターンし、設定したＦＰＦおよびＦＦＰＦＳを用いてＴＡＵを設定する。図１７に示すルーチンへはじめて移行したとき、ＦＰＦ＝１．０およびＦＦＰＦＳ＝１．０に設定される。そのため、ＥＣＵ２０は、基準噴射パルス幅ＴＰをＦＰＦおよびＦＦＰＦＳで補正することなく、ＴＡＵを設定する。
【０１３３】
図１７に示すルーチンが二回目以降になると、ステップＳ１４０３においてＣＦＰＦ＝０と判断されない。そのため、ＥＣＵ２０は、ＣＦＰＦと予め設定されている定数αとを比較する（Ｓ１４１１）。定数αは、安全確保の第３実施形態で説明したとおりインジェクタ６４からの燃料の噴射回数を示している。そのため、ＣＦＰＦがα以上のとき燃料の圧力はほぼ大気圧と等しい状態であると判断され、ＣＦＰＦがαより小さいとき燃料ポンプ３０から吐出された燃料は大気圧より大きな圧力を有していると判断される。
【０１３４】
したがって、ステップＳ１４１１においてＣＦＰＦ≧αと判断されると、ＥＣＵ２０はＦＰＦとして基準燃料圧力ＰＦ０の平方根を設定する（Ｓ１４１２）。一方、ステップＳ１４１１においてＣＦＰＦ＜αと判断されると、ＥＣＵ２０はＦＰＦとして以下の式８に示す値を設定する（Ｓ１４１４）。
【０１３５】
ＦＰＦ＝｛ＰＦ０／（ＰＦ０−ＤＰＦ×ＣＦＰＦ）｝1/2      式８
ここで、ＤＰＦは、インジェクタ６４からの燃料の噴射一回当たりに低下する燃料の圧力である。また、ＣＦＰＦは、燃料の噴射回数に対応する。そのため、式８で設定されるＦＰＦは、燃料ポンプ３０の停止後において燃料の噴射ごとに低下する燃料の圧力を考慮して段階的に設定される。
ステップＳ１４１２およびステップＳ１４２１においてＦＰＦが設定されると、ＥＣＵ２０はエンジン６０が始動時であるか否かを判断する（Ｓ１４１３）。ここで、エンジン６０の始動時とは、例えばエンジン６０が始動直後の暖機運転を行っているときであり、冷却水の温度ＴＨＷが所定の温度に達していない場合、あるいはエンジン６０が始動してから所定の時間が経過するまでなどである。このエンジン６０の始動時の定義は、任意に設定することができる。
【０１３６】
ＥＣＵ２０は、エンジン６０が始動時であると判断すると、ＦＦＰＦＳ＝ρに設定する（Ｓ１４１５）。エンジン６０の始動時は、エンジン６０の運転が比較的不安定であるため、インジェクタ６４から噴射する燃料をリッチ化する必要がある。そのため、ステップＳ１４１５で設定されるρは、燃料の噴射量をリッチ側へ補正する値である。ＦＦＰＦＳの値としてのρは、例えば図１８に示すようにＣＦＰＦの値によって変化する数値としてＲＯＭ２２に記録されている。
【０１３７】
一方、ＥＣＵ２０は、ステップＳ１４１３においてエンジン６０が始動時でないと判断すると、エンジン６０の回転速度ＮＥが予め設定されている所定値Ｋ以下であるか否かを判断する（Ｓ１４３１）。ＥＣＵ２０は、図１５に示すステップＳ１２０２で検出したエンジン６０の回転速度ＮＥが所定値Ｋ以下であれば、エンジン６０が低回転数領域であると判断する。また、ＥＣＵ２０は、エンジン６０の回転速度ＮＥが所定値Ｋより大きければ、エンジン６０が高回転数領域であると判断する。ＥＣＵ２０は、ステップＳ１４３１においてエンジン６０の回転速度ＮＥが所定値Ｋ以下の低回転数領域であると判断すると、ＦＦＰＦＳ＝σと設定する（Ｓ１４３２）。ＦＦＰＦＳの値としてのσは、例えば図１９に示すようにＣＦＰＦによって変化する数値としてＲＯＭ２２に記録されている。
【０１３８】
これに対し、ＥＣＵ２０は、ステップＳ１４３１においてエンジン６０の回転速度ＮＥが所定値Ｋより大きいと判断すると、ＦＦＰＦＳ＝κと設定する（Ｓ１４３３）。ＦＦＰＦＳの値としてのκは、例えば図２０に示すようにＮＥによって変化する数値としてＲＯＭ２２に記録されている。
このように、ＥＣＵ２０は、エンジン６０の始動時およびエンジン６０の回転数に応じてＦＦＰＦＳを設定している。これにより、必要とする燃料の濃度によってインジェクタ６４から噴射する燃料の量を変化させることができる。
【０１３９】
ＥＣＵ２０は、ポンプ異常時補正係数ＦＦＰＦＳが所定値ρ、σまたはκに設定されると、ＣＦＰＦを一つ進めた後（Ｓ１４０６）、ステップＳ１２０８へリターンする（Ｓ１４０７）。
ステップＳ１４０２においてＦＦＰＦ＝１でない、すなわち燃料ポンプ３０の異常が検出されていないと判断されたとき、ＥＣＵ２０はＣＦＰＦ＝０と設定し（Ｓ１４２１）、ＦＰＦ＝１．０と設定し（Ｓ１４２２）、ＦＦＰＦＳ＝１．０と設定する（Ｓ１４２３）。したがって、燃料ポンプ３０に異常が生じていないとき、インジェクタ６４からは通常の噴射量の燃料が噴射される。
【０１４０】
以上説明したように、安全確保の第８実施形態では、ＥＣＵ２０は、燃料ポンプ３０の停止後にインジェクタ６４から燃料が噴射されると、燃料が噴射されるごとに低下する燃料の圧力を考慮して燃料圧力補正係数ＦＰＦを設定し、ポンプ異常時補正係数ＦＦＰＦＳとともに燃料の噴射量を補正している。また、ポンプ異常時補正係数ＦＦＰＦＳは、エンジン６０の運転状態すなわちエンジン６０の始動時であるか否か、およびエンジン６０の回転速度によって変化する。そのため、燃料ポンプ３０の停止後における燃料の圧力変化、およびエンジン６０の状態にかかわらず所定の燃料の噴射量が確保される。したがって、エンジン６０を確実に始動、あるいはエンジン６０の運転を安定して継続することができ、安全性を確保することができる。
【０１４１】
（燃料ポンプの制御装置の第２実施形態）
本発明の第２実施形態による燃料ポンプの制御装置を図２１に示す。なお、図１に示す燃料ポンプの制御装置の第１実施形態と実質的に同一の構成部位には同一の符号を付し、説明を省略する。
燃料ポンプの制御装置の第２実施形態の場合、燃料ポンプの制御装置１１０は、燃料タンク７０に収容されている燃料ポンプ３０を備えている。すなわち、第２実施形態の場合、燃料ポンプ３０は燃料タンク７０に収容されている。制御装置１１０は、燃料タンク７０の内部に蓄えられている燃料の残量を検出する燃料残量検出手段としての液面センサ７１を備えている。液面センサ７１は、燃料タンク７０の内部において上下する燃料の液面位置を検出する。液面センサ７１は、例えば燃料ポンプ３０と一体のセンダゲージや、燃料タンク７０に設けられているセンサなどから構成されている。制御装置１１０の制御ユニット１１は、燃料ポンプの制御装置の第１実施形態と同様に特許請求の範囲の異常検出手段として機能する。
【０１４２】
その他の構成は、図１に示す燃料ポンプの制御装置の第１実施形態と実質的に同様であるので、説明は省略する。
次に、上記の燃料ポンプの制御装置１１０による燃料ポンプ３０の異常検出手順について図２２に基づいて説明する。
【０１４３】
１．燃料の残量に基づく異常検出の第１実施形態
ＥＣＵ２０は、所定の時期になると、燃料ポンプ３０の異常が生じているか否かの異常判定ルーチンを実施する。異常判定ルーチンは、例えばＥＣＵ２０による車両全体を監視するルーチンの一つとして含まれており、エンジン６０の始動後に定期的に実施される。異常判定ルーチンに移行すると、ＥＣＵ２０はまずバッテリ１４の電圧Ｂを検出する（Ｓ１５０１）。ＥＣＵ２０は、電圧検出部２４からバッテリ１４の電圧Ｂを入手する。ＥＣＵ２０は、入手したバッテリ１４の電圧ＢをＲＡＭ２３に記録する。バッテリ１４の電圧を検出すると、ＥＣＵ２０は燃料ポンプ３０のブラシレスモータ３２の回転数ＮＰを検出する（Ｓ１５０２）。ＥＣＵ２０は、制御回路部１２の回転数検出部１３からブラシレスモータ３２の回転数ＮＰを入手する。ＥＣＵ２０は、入手したブラシレスモータ３２の回転数ＮＰをＲＡＭ２３に記録する。
【０１４４】
ＥＣＵ２０は、ステップＳ１５０１で入手しＲＡＭ２３に記録したバッテリ１４の電圧Ｂに対応するブラシレスモータ３２の基準回転数ＮＰ０を、ＲＯＭ２２に記録されているマップから算出する（Ｓ１５０３）。ＥＣＵ２０は、算出した基準回転数ＮＰ０をＲＡＭ２３に記録する。ＥＣＵ２０は、基準回転数ＮＰ０が算出されると、その基準回転数ＮＰ０に応じて上限値ＮＰ０＋αを算出する。
【０１４５】
さらに、ＥＣＵ２０は、燃料タンク７０に蓄えられている燃料の残量ＱＦを検出する（Ｓ１５０４）。ＥＣＵ２０は、液面センサ７１の出力値から燃料タンク７０に蓄えられている燃料の液面位置すなわち燃料の残量を入手する。ＥＣＵ２０は、入手した燃料タンク７０における燃料の残量ＱＦをＲＡＭ２３に記録する。
【０１４６】
ＥＣＵ２０は、上限値ＮＰ０＋αが算出されると、ステップＳ１５０２で入手したブラシレスモータ３２の回転数ＮＰが、上限値ＮＰ０＋αより大きいか否かを判断する（Ｓ１５０５）。上述のように、ブラシレスモータ３２およびこれを備える燃料ポンプ３０は、生産工程上のばらつきにより、ある電圧に対する回転数には図３に示すように分布がある。また、ブラシレスモータ３２および燃料ポンプ３０の製品上のばらつきを排除しても、バッテリ１４の電圧Ｂに対するブラシレスモータ３２の回転数ＮＰは燃料の残量ＱＦによって変化する。すなわち、燃料タンク７０における燃料の残量ＱＦが減少するほど、ブラシレスモータ３２の負荷は低下する。そのため、バッテリ１４の電圧Ｂが一定であっても、ブラシレスモータ３２の回転数ＮＰは増大する。
【０１４７】
そこで、ＥＣＵ２０は、ブラシレスモータ３２の回転数ＮＰが上限値ＮＰ０＋αより大きいか否かを判断する。そして、ブラシレスモータ３２の回転数ＮＰが上限値ＮＰ０＋αより大きいと判断されたとき、ＥＣＵ２０はさらにステップＳ１５０６に記録されている燃料の残量ＱＦが所定の残量しきい値Ｑ１より大きいか否かを判断する（Ｓ１５０６）。ここで、ＥＣＵ２０は、ブラシレスモータ３２の回転数ＮＰが上限値ＮＰ０＋αより大きく、燃料の残量ＱＦが残量しきい値Ｑ１よりも大きいとき、ブラシレスモータ３２または燃料ポンプ３０の異常と判断する（Ｓ１５０７）。一方、ＥＣＵ２０は、ブラシレスモータ３２の回転数ＮＰが上限値ＮＰ０＋αより大きく、燃料の残量ＱＦが残量しきい値Ｑ１よりも小さいとき、燃料タンク７０の内部における燃料の残量がわずかなガス欠状態と判断する（Ｓ１５０８）。
【０１４８】
このように、ＥＣＵ２０は、ブラシレスモータ３２の回転数ＮＰが上限値ＮＰ０＋αより大きいとき、燃料タンク７０における燃料の残量ＱＦが残量しきい値Ｑ１よりも大きいか否かを判断する。燃料タンク７０における燃料の残量ＱＦが残量しきい値Ｑ１よりも少ないとき、燃料タンク７０は空転状態となり、バッテリ１４の電圧Ｂが一定であっても、ブラシレスモータ３２の回転数は増大する。そこで、ブラシレスモータ３２の回転数ＮＰとともに燃料タンク７０における燃料の残量ＱＦを検出することにより、ブラシレスモータ３２および燃料ポンプ３０の異常がそれら自身の異常に起因するものなのか、ガス欠状態に起因するものかを判別することができる。
以上の手順により燃料ポンプの異常検出を終了する。
【０１４９】
２．燃料の残量に基づく異常検出の第２実施形態
上記の構成の制御装置１１０による異常検出の第２実施形態を図２３に基づいて説明する。なお、上記の図２２に示す異常検出の第１実施形態と実質的に同一の手順については詳細な説明を省略する。
ＥＣＵ２０は、異常判定ルーチンに移行すると、バッテリ１４の電圧Ｂを検出し、検出したバッテリ１４の電圧ＢをＲＡＭ２３に記録する（Ｓ１６０１）。また、ＥＣＵ２０は、燃料ポンプ３０のブラシレスモータ３２の回転数ＮＰを検出し、検出したブラシレスモータ３２の回転数ＮＰをＲＡＭ３２に記録する（Ｓ１６０２）。さらに、ＥＣＵ２０は、ステップＳ１６０１で入手したバッテリ１４の電圧Ｂから、この電圧Ｂに対応するブラシレスモータ３２の基準回転数ＮＰ０を算出する。そして、ＥＣＵ２０は、算出した基準回転数ＮＰ０に応じて上限値ＮＰ０＋αを算出する。
【０１５０】
ＥＣＵ２０は、上限値ＮＰ０＋αが算出されると、ポンプ異常判定実施回数カウンタＣＮＰＪＡＮをＣＮＰＪＡＮ＝ＣＮＰＪＡＮ＋１として、カウンタを「１」進める（Ｓ１６０３）。
ポンプ異常判定実施回数カウンタＣＮＰＪＡＮが「１」進められると、ＥＣＵ２０はステップＳ１６０２で検出したブラシレスモータ３２の回転数ＮＰと、基準回転数ＮＰ０の上限値ＮＰ０＋αとを比較する（Ｓ１６０４）。ここで、ＥＣＵ２０は、ブラシレスモータ３２の回転数ＮＰが上限値ＮＰ０＋αより小さいと判断したとき、異常検出を終了し、ステップＳ１６１２へ移行する。一方、ＥＣＵ２０は、ブラシレスモータ３２の回転数ＮＰが上限値ＮＰ０＋αより大きいと判断したとき、燃料ポンプ３０の異常を検出したとして、ポンプ異常検出カウンタＣＮＰＡＮをＣＮＰＡＮ＝ＣＮＰＡＮ＋１として、カウンタを「１」進める（Ｓ１６０５）。
【０１５１】
ＥＣＵ２０は、ポンプ異常検出カウンタＣＮＰＡＮを「１」進めると、ステップＳ１６０３でカウントされたポンプ異常判定実施回数カウンタＣＮＰＪＡＮがあらかじめ設定された所定値Ｃ１以上であるか否かを判断する（Ｓ１６０６）。すなわち、ＥＣＵ２０は、所定の期間に該当する所定値Ｃ１に対応する期間が経過したか否かを判断する。ここで、ＥＣＵ２０は、ポンプ異常判定実施回数カウンタＣＮＰＪＡＮが所定値Ｃ１より小さいと判断したとき、異常検出を終了し、ステップＳ１６１２へ移行する。一方、ＥＣＵ２０は、ポンプ異常判定実施回数カウンタＣＮＰＪＡＮが所定値Ｃ１以上であると判断したとき、ステップＳ１６０５でカウントされたポンプ異常検出カウンタＣＮＰＡＮがあらかじめ設定された所定値Ｃ２以上であるか否かを判断する（Ｓ１６０７）。すなわち、ＥＣＵ２０は、ポンプ異常判定実施回数カウンタＣＮＰＪＡＮでカウントされた所定期間Ｃ１の間に、ポンプ異常検出カウンタＣＮＰＡＮが所定値Ｃ２に対応する回数カウントされたか否かを判断する。ここで、所定値Ｃ１と所定値Ｃ２とは、Ｃ１≧Ｃ２の関係を有する。
【０１５２】
ＥＣＵ２０は、ポンプ異常検出カウンタＣＮＰＡＮが所定値Ｃ２以上のとき、燃料ポンプ３０またはブラシレスモータ３２に異常が生じていると判断する（Ｓ１６０８）。燃料ポンプ３０またはブラシレスモータ３２に異常が生じると、その異常は例えば燃料ポンプ３０を再起動または逆回転などをさせるまで継続する。そのため、燃料ポンプ３０またはブラシレスモータ３２に異常が検出されたポンプ異常検出カウンタＣＮＰＡＮの値と、ポンプ異常判定実施回数カウンタＣＮＰＪＡＮのカウントの値Ｃ１とは近似する。特に、燃料ポンプ３０またはブラシレスモータ３２に異常が生じているとき、所定値Ｃ１と所定値Ｃ２とはほぼ一致する。
【０１５３】
これに対し、ＥＣＵ２０は、ポンプ異常検出カウンタＣＮＰＡＮが所定値Ｃ２より小さいとき、燃料タンク７０における燃料の残量が少ない、いわゆるガス欠状態であると判断する（Ｓ１６０９）。燃料タンク７０における燃料の残量が少なくなると、燃料タンク７０の内部における燃料の液面位置の変化によって燃料ポンプ３０は間欠的に燃料を吐出する。そのため、燃料ポンプ３０またはブラシレスモータ３２の異常は、間欠的に検出される。その結果、燃料ポンプ３０またはブラシレスモータ３２に異常が検出されたポンプ異常検出カウンタＣＮＰＡＮの値が所定値Ｃ２に達するまでに、ポンプ異常判定実施回数カウンタＣＮＰＪＡＮのカウントの値Ｃ１は大きくなる。
【０１５４】
このように、ＥＣＵ２０は、ポンプ異常判定実施回数カウンタＣＮＰＪＡＮの値と、ポンプ異常検出カウンタＣＮＰＡＮの値とから、燃料ポンプ３０もしくはブラシレスモータ３２に異常が生じているか、または燃料タンク７０における燃料の残量が減少しているかを判断する。ＥＣＵ２０は、燃料ポンプ３０もしくはブラシレスモータ３２に異常が生じているか、または燃料タンク７０における燃料の残量が減少していることを判断すると、ポンプ異常検出カウンタＣＮＰＡＮをＣＮＰＡＮ＝０にリセットするとともに（Ｓ１６１０）、ポンプ異常判定実施回数カウンタＣＮＰＪＡＮをＣＮＰＪＡＮ＝０にリセットする（Ｓ１６１１）。
【０１５５】
ＥＣＵ２０は、上記の処理をポンプ異常判定実施回数カウンタＣＮＰＪＡＮが所定値Ｃ３に達するまで繰り返す（Ｓ１６１２）。すなわち、ＥＣＵ２０は、ステップＳ１６０４、ステップＳ１６０６またはステップＳ１６１１からステップＳ１６１２に移行すると、ポンプ異常判定実施回数カウンタＣＮＰＪＡＮが所定値Ｃ３以上であるか否かを判断する。この所定値Ｃ３は、所定値Ｃ１および所定値Ｃ２よりも大きな値である。ＥＣＵ２０は、ポンプ異常判定実施回数カウンタＣＮＰＪＡＮがＣ３以上であると判断すると、ポンプ異常判定実施回数カウンタＣＮＰＪＡＮをＣＮＰＪＡＮ＝０とリセットし（Ｓ１６１３）、再び上述の処理を繰り返す。一方、ＥＣＵ２０は、ポンプ異常判定実施回数カウンタＣＮＰＪＡＮが所定値Ｃ３より小さいと判断すると、ポンプ異常判定実施回数カウンタＣＮＰＪＡＮが所定値Ｃ３に達するまで上述の処理を繰り返す。
【０１５６】
以上のように、本実施形態では、所定の期間内に燃料ポンプ３０またはブラシレスモータ３２に検出された異常の頻度から、異常が燃料ポンプ３０もしくはブラシレスモータ３２に起因するものなのか、または燃料タンク７０における燃料の残量に起因するものかを判別することができる。
【０１５７】
３．燃料の残量に基づく異常検出の第３実施形態
上記の構成の制御装置１１０による異常検出の第３実施形態を図２４に基づいて説明する。なお、上記の図２２に示す第１実施形態または図２３に示す第２実施形態と実質的に同一の手順については詳細な説明を省略する。
ＥＣＵ２０は、異常判定ルーチンに移行すると、バッテリ１４の電圧Ｂを検出し、検出したバッテリ１４の電圧ＢをＲＡＭ２３に記録する（Ｓ１７０１）。また、ＥＣＵ２０は、燃料ポンプ３０のブラシレスモータ３２の回転数ＮＰを検出し、検出したブラシレスモータ３２の回転数ＮＰをＲＡＭ３２に記録する（Ｓ１７０２）。さらに、ＥＣＵ２０は、ステップＳ１７０１で入手したバッテリ１４の電圧Ｂから、この電圧Ｂに対応するブラシレスモータ３２の基準回転数ＮＰ０を算出する。そして、ＥＣＵ２０は、算出した基準回転数ＮＰ０に応じて上限値ＮＰ０＋αを算出する。
【０１５８】
ＥＣＵ２０は、上限値ＮＰ０＋αが算出されると、ステップＳ１７０２で検出したブラシレスモータ３２の回転数ＮＰと、基準回転数ＮＰ０の上限値ＮＰ０＋αとを比較する（Ｓ１７０３）。ＥＣＵ２０は、ブラシレスモータ３２の回転数ＮＰが上限値ＮＰ０＋αより大きいと判断したとき、燃料ポンプ３０またはブラシレスモータ３２に異常が生じていると判断する。したがって、ＥＣＵ２０は、ポンプ異常検出カウンタＣＮＰＡＮをＣＮＰＡＮ＝ＣＮＰＡＮ＋１として、カウンタを「１」進める（Ｓ１７０４）。一方、ＥＣＵ２０は、ブラシレスモータ３２の回転数ＮＰが上限値ＮＰ０＋αより小さいと判断したとき、ポンプ異常検出カウンタＣＮＰＡＮを進めることなく、後続のステップへ移行する。
【０１５９】
ＥＣＵ２０は、ステップＳ１７０４が完了すると、ポンプ異常判定実施回数カウンタＣＮＰＪＡＮが所定値Ｄ１に達したか否かを判断する（Ｓ１７０５）。ポンプ異常判定実施回数カウンタＣＮＰＪＡＮは、図２４に示す異常判定ルーチンを行うごとに「１」進められる。したがって、異常判定ルーチンに移行した直後の場合、ポンプ異常判定実施回数カウンタＣＮＰＪＡＮは、ＣＮＰＪＡＮ＝０である。すなわち、ステップＳ１７０５では、異常判定ルーチンが所定値Ｄ１に対応する回数行われたか否かを判断する。ＥＣＵ２０は、ポンプ異常判定実施回数カウンタＣＮＰＪＡＮが所定値Ｄ１に達していないとき、異常検出を終了し、ステップＳ１７１３へ移行する。
【０１６０】
ＥＣＵ２０は、ポンプ異常判定実施回数カウンタＣＮＰＪＡＮが所定値Ｄ１であると判断すると、ステップＳ１７０４でカウントしたポンプ異常検出カウンタＣＮＰＡＮが所定値Ｄ２より小さいか否かを判断する（Ｓ１７０６）。ここで、所定値Ｄ２は、所定値Ｄ１より小さな値として設定されている。ポンプ異常検出カウンタＣＮＰＡＮが所定値Ｄ２より小さいとき、ポンプ異常判定実施回数カウンタＣＮＰＪＡＮが所定値Ｄ１に達するまでに検出された燃料ポンプ３０またはブラシレスモータ３２の異常の回数は所定値Ｄ２より少ない。したがって、ＥＣＵ２０は、ポンプ異常検出カウンタＣＮＰＡＮが所定値Ｄ２より小さいとき、燃料ポンプ３０またはブラシレスモータ３２は正常であると判断する。
【０１６１】
一方、ＥＣＵ２０は、ポンプ異常検出カウンタＣＮＰＡＮが所定値Ｄ２より大きいとき、さらにポンプ異常検出カウンタＣＮＰＡＮが所定値Ｄ３より小さいか否かを判断する（Ｓ１７０８）。この所定値Ｄ３、所定値Ｄ１および所定値Ｄ２の関係は、Ｄ１≧Ｄ３＞Ｄ２に設定されている。これにより、ポンプ異常検出カウンタＣＮＰＡＮが所定値Ｄ３より小さいとき、ポンプ異常判定実施回数カウンタＣＮＰＪＡＮが所定値Ｄ１に達するまでに燃料ポンプ３０またはブラシレスモータ３２には異常が検出されているものの、その頻度は低いと判断される。燃料タンク７０における燃料の残量が減少すると、燃料タンク７０における燃料の液面位置によって燃料ポンプ３０から間欠的に燃料が吐出される。その結果、燃料ポンプ３０またはブラシレスモータ３２の異常は、間欠的に検出され、所定値Ｄ３より小さくなる。したがって、ＥＣＵ２０は、ポンプ異常検出カウンタＣＮＰＡＮの値が所定値Ｄ２と所定値Ｄ３との間にあるとき、いわゆるガス欠状態であると判断する（Ｓ１７０９）。
【０１６２】
さらに、ＥＣＵ２０は、ポンプ異常検出カウンタＣＮＰＡＮが所定値Ｄ３より大きいとき、燃料ポンプ３０またはブラシレスモータ３２に異常が生じていると判断する（Ｓ１７１０）。すなわち、ポンプ異常検出カウンタＣＮＰＡＮが所定値Ｄ３より大きいとき、ポンプ異常判定実施回数カウンタＣＮＰＪＡＮが所定値Ｄ１に達するまでに燃料ポンプ３０またはブラシレスモータ３２に検出される異常の頻度が高い。そのため、燃料ポンプ３０またはブラシレスモータ３２には、継続して異常が生じていると考えられる。したがって、ＥＣＵ２０は、ポンプ異常検出カウンタＣＮＰＡＮが所定値Ｄ３より大きいとき、燃料ポンプ３０またはブラシレスモータ３２に異常が生じていると判断する。
【０１６３】
ＥＣＵ２０は、燃料ポンプ３０もしくはブラシレスモータ３２の異常の有無、または燃料タンク７０における燃料の残量が減少を判断すると、ポンプ異常検出カウンタＣＮＰＡＮをＣＮＰＡＮ＝０にリセットするとともに（Ｓ１７１１）、ポンプ異常判定実施回数カウンタＣＮＰＪＡＮをＣＮＰＪＡＮ＝０にリセットする（Ｓ１７１２）。
上記の手順が終了すると、ＥＣＵ２０は、ポンプ異常判定実施回数カウンタＣＮＰＪＡＮを「１」進める（Ｓ１７１３）。
【０１６４】
以上のように、本実施形態では、所定の期間内に燃料ポンプ３０またはブラシレスモータ３２に検出された異常の頻度から、異常が燃料ポンプ３０もしくはブラシレスモータ３２に起因するものなのか、または燃料タンク７０における燃料の残量に起因するものかを判別することができる。
【０１６５】
４．異常検出時の安全確保（１）
上述のように燃料残量に基づく異常検出の第１実施形態、第２実施形態または第３実施形態において、燃料タンク７０におけるガス欠、または燃料ポンプ３０もしくはブラシレスモータ３２の異常が検出されたとき、ＥＣＵ２０は安全確保のための処理を実施することができる。以下、異常検出時の安全確保（１）について説明する。ここで、異常検出時の安全確保（１）の場合、燃料タンク７０におけるガス欠、または燃料ポンプ３０もしくはブラシレスモータ３２の異常の検出までの手順は、図２２、図２３または図２４で説明した通りである。したがって、図２２、図２３または図２４で説明した各実施形態との変更点のみを説明し、その他の手順には同一のステップ番号を付与して説明を省略する。
【０１６６】
例えば図２２に示す燃料残量に基づく異常検出の第１実施形態では、ステップＳ１５０７でＥＣＵ２０は燃料ポンプ３０またはブラシレスモータ３２の異常と判断する。このとき、図２５に示すように、ＥＣＵ２０は警告手段を経由して燃料ポンプ３０の異常を警告する（Ｓ１５１１）。一方、図２２に示す燃料残量に基づく異常検出の第１実施形態では、ＥＣＵ２０はステップＳ１５０８で燃料タンク７０における燃料のガス欠と判断する。このとき、図２５に示すように、ＥＣＵ２０は警告手段を経由して燃料タンク７０における燃料の残量の減少を警告する（Ｓ１５１２）。
【０１６７】
このように図２５に示す処理の流れは、図２２に示す燃料残量に基づく異常検出の第１実施形態の変形例であり、ステップＳ１５０７に続いて燃料ポンプ３０の異常を警告するステップＳ１５１１、およびステップＳ１５０８に続いてガス欠を警告するステップＳ１５１２を含んでいる。ここで、ＥＣＵ２０は、例えば視覚的、聴覚的あるいは触覚的な警告手段を経由して異常の警告を発する。視覚的な警告手段として例えばダッシュボードにおけるランプの点滅などが適用でき、聴覚的な警告手段として例えばブザーやホーンの鳴動などを適用でき、触覚的な警告手段として例えばハンドルやシフトノブの振動などを適用することができる。このように警告手段は、任意に選択して適用することができる。
【０１６８】
また、図２３に示す燃料残量に基づく異常検出の第２実施形態では、ステップＳ１６０８でＥＣＵ２０は燃料ポンプ３０またはブラシレスモータ３２の異常と判断する。このとき、図２６に示すように、ＥＣＵ２０は警告手段を経由して燃料ポンプ３０の異常を警告する（Ｓ１６２１）。一方、図２３に示す燃料残量に基づく異常検出の第２実施形態では、ステップＳ１６０９でＥＣＵ２０は燃料タンク７０における燃料のガス欠と判断する。このとき、図２６に示すように、ＥＣＵ２０は警告手段を経由して燃料タンク７０における燃料の残量の減少を警告する（Ｓ１６２２）。
【０１６９】
このように図２６に示す処理の流れは、図２３に示す燃料残量に基づく異常検出の第２実施形態の変形例であり、ステップＳ１６０８に続いて燃料ポンプ３０の異常を警告するステップＳ１６２１、およびステップＳ１６０９に続いてガス欠を警告するステップＳ１６２２を含んでいる。
【０１７０】
さらに、図２４に示す燃料残量に基づく異常検出の第３実施形態では、ステップＳ１７０９でＥＣＵ２０は燃料タンク７０における燃料のガス欠と判断する。このとき、図２７に示すように、ＥＣＵ２０は警告手段を経由して燃料タンク７０における燃料の残量の減少を警告する（Ｓ１７２１）。一方、図２４に示す燃料残量に基づく異常検出の第２実施形態では、ステップＳ１７１０でＥＣＵ２０は燃料ポンプ３０またはブラシレスモータ３２の異常と判断する。このとき、図２７に示すように、ＥＣＵ２０は警告手段を経由して燃料ポンプ３０の異常を警告する（Ｓ１７２２）。
【０１７１】
このように図２７に示す処理の流れは、図２４に示す燃料残量に基づく異常検出の第３実施形態の変形例であり、ステップＳ１７０９に続いてガス欠を警告するステップＳ１７２１、およびステップＳ１７１０に続いて燃料ポンプ３０の異常を警告するステップＳ１７２２を含んでいる。
【０１７２】
以上の図２５から図２７で説明したように、ＥＣＵ２０はガス欠または燃料ポンプ３０の異常を検出すると、警告手段を経由して車両の搭乗者に異常の認識を促す。したがって、早期に異常を検出することができるとともに、速やかに安全対策を施すことができる。
【０１７３】
５．異常検出時の安全確保（２）
上述のように燃料残量に基づく異常検出の第１実施形態、第２実施形態または第３実施形態において、燃料タンク７０におけるガス欠、または燃料ポンプ３０もしくはブラシレスモータ３２の異常が検出されたとき、ＥＣＵ２０は安全確保のための処理を実施することができる。以下、異常検出の安全確保（２）について図２２に示す燃料残量に基づく異常検出の第１実施形態の変形例として説明する。異常検出時の安全確保（２）の場合、燃料タンク７０におけるガス欠、または燃料ポンプ３０もしくはブラシレスモータ３２の異常の検出までの手順は、図２２で説明した通りである。したがって、図２２で説明した実施形態との変更点のみを説明し、その他の手順には同一のステップ番号を付与して説明を省略する。なお、図２３および図２４で説明した各実施形態についても、異常検出時の安全確保（２）は適用することができる。
【０１７４】
例えば図２２に示す燃料残量に基づく異常検出の第１実施形態では、ステップＳ１５０７でＥＣＵ２０は燃料ポンプまたはブラシレスモータ３２の異常と判断する。このとき、図２８に示すように、ＥＣＵ２０は警告手段を経由して燃料ポンプ３０の異常を警告する（Ｓ１５１１）。一方、図２２に示す燃料残量に基づく異常検出の第１実施形態では、ＥＣＵ２０はステップＳ１５０８で燃料タンク７０における燃料のガス欠と判断する。このとき、図２８に示すように、ＥＣＵ２０は燃料タンク７０の燃料を移送する。
【０１７５】
図２９に示すように、燃料タンク７０は、メインタンク７２およびリザーバタンク７３を有している。メインタンク７２とリザーバタンク７３とは、隔壁部７４によって区切られている。メインタンク７２には燃料ポンプ３０が収容されている。リザーバタンク７３は、天地方向においてメインタンク７２の上方に設けられている。燃料タンク７０に燃料が満たされ、燃料の液面位置が隔壁部７４よりも高いとき、メインタンク７２およびリザーバタンク７３における燃料の液面位置はほぼ同一となる。一方、燃料ポンプ３０はメインタンク７２に収容されているため、燃料ポンプ３０はメインタンク７２に蓄えられている燃料を吸引し燃料タンク７０の外部へ吐出する。このとき、燃料の吐出にともないメインタンク７２に蓄えられている燃料の液面位置が低下しても、隔壁部７４で仕切られているリザーバタンク７３には隔壁部７４の高さに対応する位置において燃料の液面が維持される。すなわち、メインタンク７２の燃料が減少しても、所定量の燃料がリザーバタンク７３に蓄えられる。
【０１７６】
メインタンク７２とリザーバタンク７３との間には、接続通路７５が設けられている。接続通路７５は、リザーバタンク７３の底壁とメインタンク７２の底壁近傍の側壁とを接続している。接続通路７５には、開閉弁手段としての開閉弁部７６が設けられている。開閉弁部７６は、接続通路７５を開閉し、リザーバタンク７３とメインタンク７２との間における燃料の流れを断続する。開閉弁部７６は、例えばＥＣＵ２０からの指示によりアクチュエータが駆動するコックや、ＥＣＵ２０からの指示により開閉する電磁弁など、任意の弁を適用することができる。
【０１７７】
このように、図２８に示すステップＳ１５０８においてＥＣＵ２０がガス欠状態であると判断すると、ＥＣＵ２０はステップＳ１５２１において開閉弁部７６によって接続通路７５を開放し、リザーバタンク７３からメインタンク７２へ燃料を移送する。これにより、メインタンク７２にはリザーバタンク７３に蓄えられた燃料が補給され、燃料ポンプ３０は燃料を外部へ吐出する。したがって、燃料タンク７０における燃料の量が減少しても、車両の運転を継続することができる。
【０１７８】
（その他の実施形態）
以上説明した複数の実施形態では、例えばガソリンなどの単一種類の燃料を用いる場合を例に説明した。そのため、制御装置１０、１１０のＲＯＭ２２には、単一の種類の燃料にあわせてバッテリ１４の電圧Ｂとブラシレスモータ３２の基準回転数ＮＰとの関係、ならびに上限値ＮＰ０＋αおよび下限値ＮＰ０−αが記録されている。一方、近年では、例えばエタノールを混合したガソリンなど、ガソリンなどの従来の燃料に生物由来の燃料を添加する例が増加している。エタノールなどのガソリン以外の燃料は、例えば粘度や密度などの特性がガソリンと相違する。また、混合燃料の特性は、エタノールなどの含有率によって変化する。混合燃料の特性が変化すると、バッテリ１４の電圧Ｂが一定であっても、その燃料の特性によってブラシレスモータ３２の基準回転数ＮＰが変化する。例えばガソリンに比較して粘度の高いエタノールの含有量が増大すると、ブラシレスモータ３２の負荷が増加し、バッテリ１４の電圧Ｂが一定であっても、ブラシレスモータ３２の基準回転数ＮＰは低下する。そこで、ＥＣＵ２０は、制御装置１０、１１０のＲＯＭ２２に記録されているバッテリ１４の電圧Ｂとブラシレスモータ３２の基準回転数ＮＰとの関係を、燃料の種類によって補正してもよい。すなわち、ＥＣＵ２０は、燃料の種類によって電圧Ｂと基準回転数ＮＰとの関係を補正する補正手段として機能する。
【０１７９】
関係を補正する場合、ＥＣＵ２０は、異常検出に先立ってバッテリ１４から特定の電圧をブラシレスモータ３２に印加する。そして、この特定の電圧とブラシレスモータ３２の回転数との関係から、燃料に含まれるエタノールなどの濃度を推定する。上述のように、粘度や密度の高い燃料の濃度が増加するほど、バッテリ１４の電圧Ｂが一定であれば、ブラシレスモータ３２の基準回転数ＮＰは低下する。これらの関係の変化から、ＥＣＵ２０は燃料に含まれるエタノールなどの濃度を推定する。そして、ＥＣＵ２０は、推定したエタノールなどの濃度に基づいて、ＲＯＭ２２に記録されている基準回転数ＮＰを補正する。
【０１８０】
以上のように、使用する燃料に応じてバッテリ１４の電圧Ｂとブラシレスモータ３２の基準回転数ＮＰとの関係を補正することにより、燃料の種類に関係なく、ブラシレスモータ３２および燃料ポンプ３０の異常を早期かつ確実に検出することができる。
また、上述の燃料ポンプの制御装置の第２実施形態では、燃料ポンプ３０またはブラシレスモータ３２に異常が検出されたとき、またはガス欠が検出されたとき、その安全確保として警告手段による警告または燃料タンク７０の燃料の移送を例に説明した。しかし、燃料ポンプの制御装置の第２実施形態において燃料ポンプ３０またはブラシレスモータ３２に異常が検出された場合、燃料ポンプの制御装置の第１実施形態と同様に、燃料ポンプ３０を再起動、あるいは正回転や逆回転を繰り返したり、再起動などにともなう燃料吐出圧の低下にともなって燃料の噴射量または点火時期を変更する制御を行うこともできる。
【０１８１】
以上説明したように、本発明は、上記実施形態に限定されるものではなく、その要旨を逸脱しない範囲で種々の実施形態に適用可能である。
【図面の簡単な説明】
【０１８２】
【図１】本発明の第１実施形態による燃料ポンプの制御装置を適用したエンジンシステムを示すブロック図。
【図２】本発明の第１実施形態による燃料ポンプの制御装置に適用される燃料ポンプの概略を示す断面図。
【図３】本発明の第１実施形態による燃料ポンプのバッテリ電圧と回転数との関係を示す模式図。
【図４】本発明の第１実施形態による燃料ポンプの制御装置による燃料ポンプの異常検出の第１実施形態の流れを示す概略図。
【図５】本発明の第１実施形態による燃料ポンプの制御装置による燃料ポンプの異常検出の第２実施形態の流れを示す概略図。
【図６】本発明の第１実施形態による燃料ポンプの制御装置による燃料ポンプの異常復帰の第１実施形態の流れを示す概略図。
【図７】本発明の第１実施形態による燃料ポンプの制御装置による燃料ポンプの異常復帰の第２実施形態の流れを示す概略図。
【図８】本発明の第１実施形態による燃料ポンプの制御装置による燃料ポンプの異常復帰の第２実施形態において第１復帰モードルーチンの流れを示す概略図。
【図９】本発明の第１実施形態による燃料ポンプの制御装置による燃料ポンプの異常復帰の第２実施形態において第２復帰モードルーチンの流れを示す概略図。
【図１０】本発明の第１実施形態による燃料ポンプの制御装置による安全確保の第１実施形態の流れを示す概略図。
【図１１】本発明の第１実施形態による燃料ポンプの制御装置による安全確保の第２実施形態の流れを示す概略図。
【図１２】本発明の第１実施形態による燃料ポンプの制御装置による安全確保の第３実施形態の流れを示す概略図。
【図１３】本発明の第１実施形態による燃料ポンプの制御装置による安全確保の第４実施形態の流れを示す概略図。
【図１４】本発明の第１実施形態による燃料ポンプの制御装置による安全確保の第５実施形態の流れを示す概略図。
【図１５】本発明の第１実施形態による燃料ポンプの制御装置による安全確保の第６実施形態の流れを示す概略図。
【図１６】本発明の第１実施形態による燃料ポンプの制御装置による安全確保の第７実施形態の流れを示す概略図。
【図１７】本発明の第１実施形態による燃料ポンプの制御装置による安全確保の第８実施形態の流れを示す概略図。
【図１８】本発明の第１実施形態による燃料ポンプの制御装置による安全確保の第８実施形態において設定されるＣＦＰＦとρとの関係を示す概略図。
【図１９】本発明の第１実施形態による燃料ポンプの制御装置による安全確保の第８実施形態において設定されるＣＦＰＦとσとの関係を示す概略図。
【図２０】本発明の第１実施形態による燃料ポンプの制御装置による安全確保の第８実施形態において設定されるＣＦＰＦとκとの関係を示す概略図。
【図２１】本発明の第２実施形態による燃料ポンプの制御装置を適用したエンジンシステムを示すブロック図。
【図２２】本発明の第２実施形態による燃料ポンプの制御装置による燃料の残量に基づく異常検出の第１実施形態の流れを示す概略図。
【図２３】本発明の第２実施形態による燃料ポンプの制御装置による燃料の残量に基づく異常検出の第２実施形態の流れを示す概略図。
【図２４】本発明の第２実施形態による燃料ポンプの制御装置による燃料の残量に基づく異常検出の第３実施形態の流れを示す概略図。
【図２５】本発明の第２実施形態による燃料ポンプの制御装置による燃料の残量に基づく異常検出の第１実施形態の安全確保（１）の流れを示す概略図。
【図２６】本発明の第２実施形態による燃料ポンプの制御装置による燃料の残量に基づく異常検出の第２実施形態の安全確保（１）の流れを示す概略図。
【図２７】本発明の第２実施形態による燃料ポンプの制御装置による燃料の残量に基づく異常検出の第３実施形態の安全確保（１）の流れを示す概略図。
【図２８】本発明の第２実施形態による燃料ポンプの制御装置による燃料の残量に基づく異常検出の第１実施形態の安全確保（２）の流れを示す概略図。
【図２９】本発明の第２実施形態による燃料ポンプの制御装置に適用される燃料タンクを示す概略的な断面図。
【符号の説明】
【０１８３】
１０、１１０：制御装置、１３：回転数検出部（回転数検出手段）、１４：バッテリ（電源）、２０：ＥＣＵ（異常検出手段、再起動手段、特性調整手段、補正手段）、２２：ＲＯＭ（記憶手段）、２４：電圧検出部（電圧検出手段）、３０：燃料ポンプ、３２：ブラシレスモータ、６２：インジェクタ制御部（特性調整手段）、６３：点火時期制御部（特性調整手段）、７０：燃料タンク、７１：液面センサ、７２：メインタンク、７３：リザーバタンク、７４：隔壁部、７５：接続通路、７６：開閉弁部
【図１】
2008038895.tif 000003
【図２】
2008038895.tif 000004
【図３】
2008038895.tif 000005
【図４】
2008038895.tif 000006
【図５】
2008038895.tif 000007
【図６】
2008038895.tif 000008
【図７】
2008038895.tif 000009
【図８】
2008038895.tif 000010
【図９】
2008038895.tif 000011
【図１０】
2008038895.tif 000012
【図１１】
2008038895.tif 000013
【図１２】
2008038895.tif 000014
【図１３】
2008038895.tif 000015
【図１４】
2008038895.tif 000016
【図１５】
2008038895.tif 000017
【図１６】
2008038895.tif 000018
【図１７】
2008038895.tif 000019
【図１８】
2008038895.tif 000020
【図１９】
2008038895.tif 000021
【図２０】
2008038895.tif 000022
【図２１】
2008038895.tif 000023
【図２２】
2008038895.tif 000024
【図２３】
2008038895.tif 000025
【図２４】
2008038895.tif 000026
【図２５】
2008038895.tif 000027
【図２６】
2008038895.tif 000028
【図２７】
2008038895.tif 000029
【図２８】
2008038895.tif 000030
【図２９】
2008038895.tif 000031