(57)【要約】【課題】車両に搭載されたバッテリの放電電気量によるエコランが実施されやすくする。【解決手段】エコラン制御装置１０は、エコラン許可判定部４６により、メインバッテリが放電できる放電電気量およびサブバッテリが放電できる放電電気量の両方に基づいてエコランを許可するか禁止するかを判定するようにしたので、サブバッテリの放電電気量が所定値以上であればエコランを許可でき、また、サブバッテリの放電電気量が少ない場合でもメインバッテリの放電電気量が所定値以上であればエコランを許可できるようになる。【選択図】図３
2007218230.tif 000002
【特許請求の範囲】
【請求項１】
車載電気ユニットへの電源供給を行う第１のバッテリと、エコランからのエンジン再始動時に前記第１のバッテリの電圧低下を抑制する第２のバッテリとを備えた車両にて、所定のエンジン停止条件が成立するとエンジンを自動的に停止し、所定のエンジン再始動条件が成立すると前記エンジンを自動的に再始動するエコラン制御装置において、
エンジン始動のために前記第１のバッテリが放電できる放電電気量および前記第２のバッテリが放電できる放電電気量と、エンジン始動時から前記エンジンが完爆するまでの間に必要とされる電気量とに基づき、エコランを許可するか禁止するかの判定をするエコラン許可判定手段、
を備えていることを特徴とするエコラン制御装置。
【請求項２】
前記第１のバッテリの電圧値、電流値および液温度を監視する第１のバッテリ監視手段と、
前記第２のバッテリの電圧値、電流値および雰囲気温度を監視する第２のバッテリ監視手段と、
エンジン始動時に前記第１のバッテリの電圧値が所定電圧変動する間に前記第１のバッテリから放電される放電電気量を示す第１のバッテリのバッテリ容量、および、前記第１のバッテリの内部抵抗値を算出する第１のバッテリ状態検出手段と、
前記第２のバッテリが放電できる放電電気量を示す第２のバッテリのバッテリ容量を取得する第２のバッテリ状態検出手段と、
エンジン始動時から前記エンジンが完爆するまでの間に必要とされる電気量を算出する際に用いる、エンジン始動時から前記エンジンが完爆するまでの間の前記第１のバッテリの電圧値の電圧降下量を算出する電圧降下量算出手段と、
をさらに備えていることを特徴とする請求項１記載のエコラン制御装置。
【請求項３】
前記エコラン許可判定手段は、前記第１のバッテリの電圧値の前記電圧降下量に前記第１のバッテリのバッテリ容量を乗算してエンジン始動時に前記第１のバッテリが放電すべき必要放電電気量を算出し、前記必要放電電気量が前記第２のバッテリのバッテリ容量未満の場合は前記第２のバッテリの放電電気量によるエコランを許可し、前記必要放電電気量が前記第２のバッテリのバッテリ容量以上の場合には前記第２のバッテリの放電電気量によるエコランを禁止することを特徴とする請求項２記載のエコラン制御装置。
【請求項４】
前記エコラン許可判定手段は、前記第２のバッテリの放電電気量によるエコランが禁止された場合でも、前記第１のバッテリの電圧値が、エコランを許可することができるエコラン許可電圧閾値以上であれば、前記第１のバッテリの放電電気量によりエコランを許可することを特徴とする請求項３記載のエコラン制御装置。
【請求項５】
前記エコラン許可判定手段は、前記エコラン許可電圧閾値を、エンジン始動時に前記第１のバッテリの電圧値がこれ以下に低下しないと判定される低電圧判定電圧値、および、前記第１のバッテリの電圧値の前記電圧降下量に基づき、算出することを特徴とする請求項４記載のエコラン制御装置。
【請求項６】
前記エコラン許可判定手段は、前記第１のバッテリの電圧値の前記電圧降下量に前記第１のバッテリのバッテリ容量を乗算してエンジン始動時に前記第１のバッテリが放電すべき必要放電電気量を算出し、前記必要放電電気量から前記第２のバッテリのバッテリ容量を減算してエンジン始動時における前記第２のバッテリの不足放電電気量を算出し、前記不足放電電気量が所定値未満の場合は前記第２のバッテリの放電電気量によるエコランを許可し、前記不足放電電気量が前記所定値以上の場合には前記第２のバッテリの放電電気量によるエコランを禁止することを特徴とする請求項２記載のエコラン制御装置。
【請求項７】
前記エコラン許可判定手段は、前記第２のバッテリの放電電気量によるエコランが禁止された場合でも、前記第１のバッテリの電圧値が、エコランを許可することができるエコラン許可電圧閾値以上であれば、前記第１のバッテリの放電電気量によりエコランを許可することを特徴とする請求項６記載のエコラン制御装置。
【請求項８】
前記エコラン許可判定手段は、前記エコラン許可電圧閾値を、エンジン始動時に前記第１のバッテリの電圧値がこれ以下に低下しないと判定される低電圧判定電圧値、前記不足放電電気量および前記第１のバッテリのバッテリ容量に基づき、算出することを特徴とする請求項７記載のエコラン制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はエコラン制御装置に関し、特に車載電気ユニットへの電源供給を行うメインバッテリと、エコランからのエンジン再始動時にメインバッテリの電圧低下を抑制するサブバッテリとを備えた車両にて、所定のエンジン停止条件が成立するとエンジンを自動的に停止し、所定のエンジン再始動条件が成立するとエンジンを自動的に再始動するエコラン制御装置に関する。
【背景技術】
【０００２】
現在、車両には、所定のエンジン停止条件が成立するとエンジンを自動的に停止し、所定のエンジン再始動条件が成立するとエンジンを自動的に再始動するエコランシステムが搭載されているものがある。
【０００３】
このような車両において、エンジンを停止したエコラン実施中は発電していないにも拘らずカーオーディオなどの車載電気ユニットを使用できるので、バッテリのバッテリ電圧値の低下が予測される。エンジンを再始動してエコランから復帰する場合に、このバッテリ電圧値の低下のために車載電気ユニットが電源供給を制限されてリセットされることや、エンジンを再始動できないことなどが考えられる。
【０００４】
このようなバッテリ電圧値の低下を防止するため、バッテリ電圧値を計測し、このバッテリ電圧値の落ち込みが大きい場合にはエンジンの自動停止を禁止し、エコランを禁止する技術が提案されている（たとえば、特許文献１参照。）。
【０００５】
また、車両にエンジン再始動時におけるバッテリ電圧値の低下分を補うためのサブバッテリ（キャパシタ）が搭載されているものがあり、サブバッテリが所定の充電状態となるまではエンジンの自動停止を禁止し、エコランを禁止する技術が提案されている（たとえば、特許文献２参照。）。
【特許文献１】特開２００２−１１５５７８号公報
【特許文献２】特開２００４−２５１２３４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、従来の技術では、バッテリまたはサブバッテリの放電電気量に余裕がない場合、エコランを実施しないようにしているので、バッテリの放電電気量に余裕があってもサブバッテリの放電電気量に余裕がなければ、エコランを実施できないことから、エコランを実施できる機会を少なくしているという問題点があった。
【０００７】
本発明は、このような点に鑑みてなされたものであり、エコランが実施されやすいエコラン制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明では、上記課題を解決するために、車載電気ユニットへの電源供給を行う第１のバッテリと、エコランからのエンジン再始動時に前記第１のバッテリの電圧低下を抑制する第２のバッテリとを備えた車両にて、所定のエンジン停止条件が成立するとエンジンを自動的に停止し、所定のエンジン再始動条件が成立すると前記エンジンを自動的に再始動するエコラン制御装置において、エンジン始動のために前記第１のバッテリが放電できる放電電気量および前記第２のバッテリが放電できる放電電気量と、エンジン始動時から前記エンジンが完爆するまでの間に必要とされる電気量とに基づき、エコランを許可するか禁止するかの判定をするエコラン許可判定手段を備えていることを特徴とするエコラン制御装置が提供される。
【０００９】
このようなエコラン制御装置によれば、第１および第２のバッテリが放電できる放電電気量の両方に基づいてエコランを許可するか禁止するかを判定するようにしたので、第２のバッテリの放電電気量が所定値以上であればエコランを許可でき、また、第２のバッテリの放電電気量が少ない場合でも第１のバッテリの放電電気量が所定値以上であればエコランを許可できるようになる。
【発明の効果】
【００１０】
本発明のエコラン制御装置は、第１および第２のバッテリが放電できる放電電気量の両方に基づいてエコランを許可するか禁止するかを判定するようにしたので、第２のバッテリの放電電気量が所定値以上であればエコランを許可でき、また、第２のバッテリの放電電気量が少ない場合でも第１のバッテリの放電電気量が所定値以上であればエコランを許可できるようになる。このように、エコラン頻度が増加することにより、車両の燃費を向上させることができる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の実施の形態を、図面を参照して詳細に説明する。
まず、エコラン制御システムのハードウェア構成について説明する。
図１はエコラン制御システムのハードウェアブロック図である。
【００１２】
エコラン制御システムは、エコランを制御するエコラン制御装置１０を備え、このエコラン制御装置１０には、エンジン動作中に発電するオルタネータ１１、車載電気ユニット１２、この車載電気ユニット１２への電源供給を行うメインバッテリ１３、および、エコランからのエンジン再始動時にメインバッテリ１３の電圧低下を抑制するサブバッテリ（たとえば、キャパシタなどの蓄電池）１４が電源ライン１５を介して接続されている。
【００１３】
メインバッテリ１３には、電圧を検出する電圧センサ１６、電流を検出する電流センサ１７および温度を検出する温度センサ１８が設けられ、これらの電圧センサ１６、電流センサ１７および温度センサ１８の出力端子は図示はしないがエコラン制御装置１０に接続されている。また、サブバッテリ１４には、電圧センサ１９、電流センサ２０および温度センサ２１が設けられ、これらの電圧センサ１９、電流センサ２０および温度センサ２１の出力端子は図示はしないがエコラン制御装置１０に接続されている。
【００１４】
車載電気ユニット１２は、車両に搭載される電気ユニットであり、たとえば、エンジン制御システムやブレーキ制御システムなどの電子制御ユニットやカーオーディオなどが挙げられる。
【００１５】
エコラン制御装置１０は、メインバッテリ１３の電圧センサ１６、電流センサ１７および温度センサ１８により検出された信号、および、サブバッテリ１４の電圧センサ１９、電流センサ２０および温度センサ２１により検出された信号に基づき、メインバッテリ１３のメインバッテリ電圧値が所定電圧変動する間にメインバッテリ１３から放電される放電電気量、サブバッテリ１４が放電できる放電電気量、エンジン始動時からエンジンが完爆するまでの間のメインバッテリ電圧値の電圧降下量を算出する。これらの算出結果に基づき、エコラン制御装置１０は、エコランを許可するか禁止するかの判定をする。
【００１６】
次に、エコラン制御装置１０のハードウェア構成について説明する。
図２はエコラン制御装置のハードウェアブロック図である。
エコラン制御装置１０は、マイクロコンピュータ（マイコン）３０を備え、このマイコン３０は、エコラン制御装置１０内のバス３１に接続されていて、Ｉ／Ｆ(Interface)３２を介して外部の信号ライン３３に接続されている。
【００１７】
マイコン３０は、ＣＰＵ(Central Processing Unit)３４を有し、ＣＰＵ３４には、ＲＯＭ(Read Only Memory)３５およびＲＡＭ(Random Access Memory)３６がマイコン３０内のバス３７を介して接続されている。また、ＣＰＵ３４には、バス３１がバス３７を介して接続されている。
【００１８】
ＣＰＵ３４は、エコラン制御装置１０全体を制御する。ＲＡＭ３６には、ＣＰＵ３４が実行するＯＳ(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ３６には、ＣＰＵ３４の処理に必要な各種データが格納される。ＲＯＭ３５には、ＯＳのプログラムやアプリケーションプログラムなどが格納される。
【００１９】
このアプリケーションプログラムは、エコラン制御装置１０が実行するメインバッテリ状態検出処理、サブバッテリ状態検出処理、電圧降下量算出処理、エコラン許可判定処理のためのプログラムなどを含んでいる。
【００２０】
次に、エコラン制御装置１０の機能構成について説明する。
図３はエコラン制御装置の機能ブロック図である。
エコラン制御装置１０は、メインバッテリ監視部４１、サブバッテリ監視部４２、メインバッテリ状態検出部４３、サブバッテリ状態検出部４４、電圧降下量算出部４５およびエコラン許可判定部４６を備えている。
【００２１】
メインバッテリ監視部４１は、電圧センサ１６、電流センサ１７および温度センサ１８がそれぞれ検出したメインバッテリ１３のメインバッテリ電圧値、メインバッテリ電流値およびバッテリ液温度をサンプリングする。また、サブバッテリ監視部４２は、電圧センサ１９、電流センサ２０および温度センサ２１がそれぞれ検出したサブバッテリ１４のサブバッテリ電圧値、サブバッテリ電流値およびバッテリ雰囲気温度をサンプリングする。
【００２２】
これらのサンプリング結果に基づき、メインバッテリ状態検出部４３は、メインバッテリ電圧値が所定電圧変動する間にメインバッテリ１３から放電される放電電気量を示すメインバッテリ容量を算出し、サブバッテリ状態検出部４４は、サブバッテリ１４が放電できる放電電気量を示すサブバッテリ容量を取得し、電圧降下量算出部４５は、エンジン始動時からエンジンが完爆するまでの間のメインバッテリ電圧値の電圧降下量を算出する。
【００２３】
これらの算出結果に基づき、エコラン許可判定部４６は、メインバッテリ１３およびサブバッテリ１４からエンジン始動のために供給できる電気量とエンジン始動時からエンジンが完爆するまでの間に必要とされる電気量とを比較することで、エコランを許可するか禁止するかの判定をする。
【００２４】
次に、メインバッテリ状態検出部４３による処理について説明する。
図４はメインバッテリ状態検出処理を示すフローチャートである。
メインバッテリ状態検出部４３は、スタータ駆動によりエンジンが始動された場合、メインバッテリ状態検出処理プログラムにより以下のステップに従った処理を実行する。
【００２５】
［ステップＳ１１］ＣＰＵ３４は、スタータ駆動によりエンジンが始動されたか否かを判定する。始動された場合、処理はステップＳ１２に進み、始動されていない場合、メインバッテリ状態検出処理は終了する。
【００２６】
［ステップＳ１２］ＣＰＵ３４は、エンジンが始動されてから所定時間が経過したか否かを判定する。これは、エンジン始動の初期段階にスタータ突入電流が流れていて、このスタータ突入電流をメインバッテリ電流値としてサンプリングしないようにするため、エンジン始動から所定時間待つためのものである。所定時間が経過した場合、処理はステップＳ１４に進み、所定時間が経過していない場合、処理はステップＳ１３に進む。
【００２７】
［ステップＳ１３］ＣＰＵ３４は、今後のメインバッテリ電圧値と比較するために現状のエンジン始動直後のメインバッテリ電圧値を始動時電圧値Ｖ０として記憶して所定の時間の経過を待つ。
【００２８】
［ステップＳ１４］ＣＰＵ３４は、電圧センサ１６および電流センサ１７によりそれぞれ検出されたメインバッテリ電圧値およびメインバッテリ電流値のサンプリングを開始する。
【００２９】
［ステップＳ１５］ＣＰＵ３４は、今回サンプリングしたメインバッテリ電圧値およびメインバッテリ電流値と前回サンプリングしたメインバッテリ電圧値およびメインバッテリ電流値とから、メインバッテリ電圧値の変化量およびメインバッテリ電流値の変化量を算出し、メインバッテリ電圧値の変化量をメインバッテリ電流値の変化量で除算してバッテリ内部抵抗値Ｒｎを算出する。すなわち、バッテリ内部抵抗値Ｒｎ（Ｖ／Ａ）は、今回サンプリングしたメインバッテリ電圧値およびメインバッテリ電流値をそれぞれＶｎｏｗ（Ｖ）およびＩｎｏｗ（Ａ）とし、前回サンプリングしたメインバッテリ電圧値およびメインバッテリ電流値をそれぞれＶｏｌｄ（Ｖ）およびＩｏｌｄ（Ａ）とすると、
Ｒｎ＝（Ｖｎｏｗ−Ｖｏｌｄ）／（Ｉｎｏｗ−Ｉｏｌｄ）・・・（１）
により算出される。このサンプリングごとに個別に算出されたバッテリ内部抵抗値Ｒｎは、順次積算され、バッテリ内部抵抗値の合計値Ｒｓｕｍが次式のように求められる。
Ｒｓｕｍ＝Ｒ０＋Ｒ１＋Ｒ３＋・・・＋Ｒｎ・・・（２）
［ステップＳ１６］ＣＰＵ３４は、ステップＳ１２の処理で所定時間が経過してから現在までの間にメインバッテリ１３から放電された放電電気量Ｉｓｕｍ０、すなわち、メインバッテリ電流値の積算値を算出する。
【００３０】
［ステップＳ１７］ＣＰＵ３４は、ステップＳ１４で計測したメインバッテリ電圧値Ｖ１が始動時電圧値Ｖ０よりも所定値Ｖ２以上大きいか否かを判定する。大きい場合、処理はステップＳ２０に進み、小さい場合、処理はステップＳ１８に進む。
【００３１】
［ステップＳ１８］ＣＰＵ３４は、エンジンが完爆したか否かを判定する。完爆した場合、処理はステップＳ２０に進み、完爆していない場合、処理はステップＳ１９に進む。
［ステップＳ１９］ＣＰＵ３４は、サンプリング開始から所定時間が経過したか否かを判定する。これは、エンジンが始動されて完爆していない状態が所定時間続くと、スタータが正常に駆動されていないなどのトラブルの可能性があるので、そのようなトラブルの際にはメインバッテリ状態検出処理を終了するためのものである。所定時間が経過した場合、メインバッテリ状態検出処理は終了し、所定時間が経過していない場合、処理はステップＳ１５に戻る。
【００３２】
以上までの処理では、現状のメインバッテリ電圧値Ｖ１と始動時電圧値Ｖ０との差が所定値Ｖ２以上になるか、エンジンが完爆するまで、メインバッテリ電圧値およびメインバッテリ電流値のサンプリング、バッテリ内部抵抗値の個別および合計の算出、放電電気量Ｉｓｕｍ０の算出が周期的に行われていることになる。
【００３３】
［ステップＳ２０］ＣＰＵ３４は、ステップＳ１６の処理で算出された放電電気量Ｉｓｕｍ０を、現状のメインバッテリ電圧値Ｖ１から始動時電圧値Ｖ０を減算した値で除算し、メインバッテリ電圧値が１Ｖ変動する間にメインバッテリ１３から放電される放電電気量を示すメインバッテリ容量を算出する。すなわち、メインバッテリ容量Ｃｍ（Ａｓｅｃ／Ｖ）は、現状のメインバッテリ電圧値をＶ１（Ｖ）とし、始動時電圧値をＶ０（Ｖ）とし、放電電気量をＩｓｕｍ０（Ａｓｅｃ）とすると、
Ｃｍ＝ａ／（｜Ｖ１−Ｖ０｜）×Ｉｓｕｍ０・・・（３）
により算出される。なお、定数ａは、メインバッテリ１３における電圧の単位変動幅で、ここでは、ａ＝１である。
【００３４】
［ステップＳ２１］ＣＰＵ３４は、バッテリ内部抵抗値を決定する。本実施の形態では、このバッテリ内部抵抗値は、ステップＳ１５の処理で算出されたバッテリ内部抵抗値の合計値Ｒｓｕｍをサンプリング数ｎで除算した平均値としている。もちろん、このバッテリ内部抵抗値は、最大値または最頻値としてもよく、各バッテリ内部抵抗値の中の外れ値を削除してからバッテリ内部抵抗値を決定してもよい。
【００３５】
［ステップＳ２２］ＣＰＵ３４は、今後のバッテリ液温度と比較するために現状のバッテリ液温度をＴＨＢ０として記憶する。
以上の処理により、エンジン始動から所定時間経過後にメインバッテリ電圧値が始動時電圧値から回復するかエンジンが完爆するまでの間に計測したメインバッテリ電圧値およびメインバッテリ電流値に基づき、メインバッテリ容量およびバッテリ内部抵抗値を求め、最後に、バッテリ液温度を求めることで、メインバッテリ１３の状態が検出される。
【００３６】
ここで、バッテリ内部抵抗値は、メインバッテリ電流値およびバッテリ液温度の変化によって常に変化しているので、算出されたバッテリ内部抵抗値を変化分に対応したバッテリ内部抵抗値で更新する必要がある。
【００３７】
次に、メインバッテリ状態検出部４３によるバッテリ内部抵抗値更新処理について説明する。
図５はバッテリ内部抵抗値更新処理を示すフローチャート、図６はバッテリ液温度に対するバッテリ内部抵抗値特性を示す図である。
【００３８】
メインバッテリ状態検出部４３は、メインバッテリ状態検出処理プログラムにより以下のステップに従った処理を繰り返し実行する。
［ステップＳ３１］ＣＰＵ３４は、バッテリ内部抵抗値の初回算出が完了しているか否かを判定する。完了している場合、処理はステップＳ３２に進み、完了していない場合、バッテリ内部抵抗値更新処理は終了する。
【００３９】
［ステップＳ３２］ＣＰＵ３４は、現状のメインバッテリ電流値とバッテリ内部抵抗値決定時のメインバッテリ電流値との差が所定値Ｉ０以上であるか否かを判定する。ここで、メインバッテリ電流値が所定値Ｉ０以上変化すると、その分、バッテリ内部抵抗値も変化しているので、バッテリ内部抵抗値を更新する必要がある。差が所定値Ｉ０以上の場合、処理はステップＳ３３に進み、差が所定値Ｉ０未満の場合、処理はステップＳ３８に進む。
【００４０】
［ステップＳ３３］ＣＰＵ３４は、電圧センサ１６および電流センサ１７によりそれぞれ検出されたメインバッテリ電圧値およびメインバッテリ電流値のサンプリングを開始する。
【００４１】
［ステップＳ３４］ＣＰＵ３４は、バッテリ内部抵抗値Ｒｎを算出する。このバッテリ内部抵抗値Ｒｎ（Ｖ／Ａ）は、前述の式（１）により算出される。次いで、バッテリ内部抵抗値の合計値Ｒｓｕｍが、前述の式（２）により算出される。
【００４２】
［ステップＳ３５］ＣＰＵ３４は、サンプリング開始から所定時間が経過したか否かを判定する。これは、メインバッテリ電圧値およびメインバッテリ電流値を所定時間に渡って所定周期ごとにサンプリングするためのものである。所定時間が経過した場合、処理はステップＳ３６に進み、所定時間が経過していない場合、処理はステップＳ３３に戻る。
【００４３】
以上までの処理では、サンプリング開始から所定時間が経過するまで、メインバッテリ電圧値およびメインバッテリ電流値のサンプリング、バッテリ内部抵抗値の個別および合計の算出が周期的に行われていることになる。
【００４４】
［ステップＳ３６］ＣＰＵ３４は、バッテリ内部抵抗値を決定する。本実施の形態では、このバッテリ内部抵抗値は、ステップＳ３４の処理で算出されたバッテリ内部抵抗値の合計値Ｒｓｕｍをサンプリング数ｎで除算した平均値としている。もちろん、このバッテリ内部抵抗値は、最大値または最頻値としてもよく、各バッテリ内部抵抗値の中の外れ値を削除してからバッテリ内部抵抗値を決定してもよい。
【００４５】
［ステップＳ３７］ＣＰＵ３４は、今後のバッテリ液温度と比較するために現状のバッテリ液温度をＴＨＢ０として記憶する。
［ステップＳ３８］ＣＰＵ３４は、現状のバッテリ液温度とバッテリ内部抵抗値決定時のバッテリ液温度との差が所定値ＴＨＢ１以上であるか否かを判定する。ここで、バッテリ液温度が所定値ＴＨＢ１以上変動すると、その分、バッテリ内部抵抗値も変動しているので、バッテリ内部抵抗値を更新する必要がある。差が所定値ＴＨＢ１以上の場合、処理はステップＳ３９に進み、差が所定値ＴＨＢ１未満の場合、バッテリ内部抵抗値更新処理を終了する。
【００４６】
ここで、メインバッテリ１３は、図６に示したように、バッテリ液温度の変化に対応してバッテリ内部抵抗値が変化する温度特性を有している。この温度特性のデータは、バッテリ液温度とバッテリ内部抵抗値とが関連付けられたテーブルの形式でＲＯＭ３５に格納されている。
【００４７】
［ステップＳ３９］ＣＰＵ３４は、予めＲＯＭ３５に格納されている上記の温度特性のデータを参照し、バッテリ液温度に対応するバッテリ内部抵抗値を取得して仮に更新する。
【００４８】
このステップＳ３９の処理は、バッテリ液温度が変化しているにも拘らずメインバッテリ電流値が変化しないでバッテリ内部抵抗値の更新ができないときに、バッテリ内部抵抗値を実測値の代りに理論値のバッテリ内部抵抗値で仮に更新するものである。たとえば、高速道路などを長時間に渡って定速で走行した場合、エンジン回転数が一定なので、オルタネータ１１の発電量の変化が少なくなってメインバッテリ電流値が変化しにくくなり、ステップＳ３６の処理に進みにくくなり、バッテリ内部抵抗値が更新されにくくなる。このような状況でバッテリ液温度が大きく変化した場合にバッテリ内部抵抗値が更新されない状況を回避するため、ステップＳ３９の処理で、バッテリ内部抵抗値を仮に更新している。なお、バッテリ内部抵抗値を仮に更新した後に、次回以降のサイクルでステップＳ３６の処理に進むことができた場合、実測値のバッテリ内部抵抗値で更新することになる。
【００４９】
以上の処理により、メインバッテリ電流値が変化した場合、その変化分に応じてバッテリ内部抵抗値が更新され、メインバッテリ電流値の変化量は小さいがバッテリ液温度の変化量が大きい場合には、バッテリ液温度に対応したバッテリ内部抵抗値に更新され、常に、最新のバッテリ内部抵抗値になるようにしている。
【００５０】
次に、メインバッテリ状態検出部４３によるメインバッテリ容量補正処理について説明する。
図７はメインバッテリ容量補正処理を示すフローチャート、図８はバッテリ液温度に対するメインバッテリ容量の補正係数特性を示す図、図９はバッテリ内部抵抗値に対するメインバッテリ容量の補正係数特性を示す図である。
【００５１】
メインバッテリ状態検出部４３は、メインバッテリ状態検出処理プログラムにより以下のステップに従った処理を繰り返し実行する。
ここで、メインバッテリ１３は温度特性を有しているので、バッテリ液温度が変化した分メインバッテリ容量も変化している。このメインバッテリ容量の変化分に対応するため、メインバッテリ容量をバッテリ液温度に応じて補正する必要がある。
【００５２】
メインバッテリ１３は、バッテリ液温度Ｔｍが上昇するとメインバッテリ１３内部のイオンが活性化されやすく、メインバッテリ容量が大きくなる傾向を有している。そのため、図８に示したように、バッテリ液温度が上昇するに従ってメインバッテリ容量を補正する補正係数が大きくなるようにしている。この温度特性のデータは、バッテリ液温度と補正係数とが対応付けられたテーブルの形式でＲＯＭ３５に格納されている。
【００５３】
［ステップＳ４１］ＣＰＵ３４は、現状のバッテリ液温度とメインバッテリ容量算出時のバッテリ液温度との差が所定値ＴＨＢ１以上であるか否かを判定する。ここで、バッテリ液温度の変化が所定値ＴＨＢ１以上の場合、その分、メインバッテリ容量も変動しているので、メインバッテリ容量を補正するために処理はステップＳ４２に進み、変化が所定値ＴＨＢ１未満の場合、処理はステップＳ４４に進む。
【００５４】
［ステップＳ４２］ＣＰＵ３４は、予めＲＯＭ３５に格納されている上記の温度特性のデータを参照し、バッテリ液温度に対応するメインバッテリ容量の補正係数を取得する。次いで、ＣＰＵ３４は、メインバッテリ容量にこの補正係数を乗算し、メインバッテリ容量を補正する。
【００５５】
［ステップＳ４３］ＣＰＵ３４は、今後のバッテリ液温度と比較するために現状のバッテリ液温度をＴＨＢ０として記憶する。
ここで、メインバッテリ１３はバッテリ内部抵抗値の変化に対応してメインバッテリ容量が変化する特性を有しているので、バッテリ内部抵抗値が変化した分メインバッテリ容量も変化している。このメインバッテリ容量の変化分に対応するため、メインバッテリ容量をバッテリ内部抵抗値に応じて補正する必要がある。
【００５６】
メインバッテリ１３は、バッテリ内部抵抗値Ｒｍの上昇に従ってメインバッテリ電流値が減少し、メインバッテリ容量が小さくなる傾向を有している。そのため、図９に示したように、バッテリ内部抵抗値が上昇するに従ってメインバッテリ容量を補正する補正係数が小さくなるようにしている。この特性のデータは、バッテリ内部抵抗値と補正係数とが関連付けられたテーブルの形式でＲＯＭ３５に格納されている。
【００５７】
［ステップＳ４４］ＣＰＵ３４は、現状のバッテリ内部抵抗値とメインバッテリ容量算出時のバッテリ内部抵抗値との差が所定値Ｒ０以上であるか否かを判定する。ここで、バッテリ内部抵抗値の変化が所定値Ｒ０以上の場合、その分、メインバッテリ容量も変動しているので、メインバッテリ容量を補正するために処理はステップＳ４５に進み、変化が所定値Ｒ０未満の場合、メインバッテリ容量補正処理は終了する。
【００５８】
［ステップＳ４５］ＣＰＵ３４は、予めＲＯＭ３５に格納されている上記の特性のデータを参照し、バッテリ内部抵抗値に対応するメインバッテリ容量の補正係数を取得する。次いで、ＣＰＵ３４は、メインバッテリ容量にこの補正係数を乗算し、メインバッテリ容量を補正する。
【００５９】
以上の処理により、バッテリ液温度が大きく変化すれば、メインバッテリ容量をそのバッテリ液温度に応じたメインバッテリ容量に補正し、バッテリ液温度があまり変化しなくてもバッテリ内部抵抗値が大きく変化すれば、メインバッテリ容量をそのバッテリ内部抵抗値に応じたメインバッテリ容量に補正し、常に、最新のメインバッテリ容量になるようにしている。
【００６０】
次に、サブバッテリ状態検出部４４による処理について説明する。
図１０はサブバッテリ状態検出処理を示すフローチャート、図１１はサブバッテリ電圧値に対するサブバッテリ容量特性を示す図、図１２はバッテリ雰囲気温度に対するサブバッテリ容量の補正係数特性を示す図である。
【００６１】
サブバッテリ状態検出部４４は、サブバッテリ状態検出処理プログラムにより以下のステップに従った処理を繰り返し実行する。
［ステップＳ５１］ＣＰＵ３４は、電圧センサ１９により検出されたサブバッテリ電圧値を取得する。
【００６２】
［ステップＳ５２］ＣＰＵ３４は、サブバッテリ電圧値に対応する、サブバッテリ１４が放電できる放電電気量を示すサブバッテリ容量を取得する。つまり、サブバッテリ１４は、図１１に示すように、サブバッテリ電圧値Ｖｓに応じてサブバッテリ容量が変化する特性を有しているので、ＣＰＵ３４は、その特性のデータを格納しているＲＯＭ３５を参照し、サブバッテリ電圧値に対応するサブバッテリ容量を取得する。
【００６３】
［ステップＳ５３］ＣＰＵ３４は、温度センサ２１により検出されたサブバッテリ雰囲気温度を取得する。これは、サブバッテリ１４においても、図１２に示すように、多少の温度特性を有しているので、サブバッテリ雰囲気温度に応じ、サブバッテリ電圧値に対応するサブバッテリ容量を補正するためのものである。なお、この温度特性のデータは、ＲＯＭ３５に格納されている。
【００６４】
［ステップＳ５４］ＣＰＵ３４は、ＲＯＭ３５を参照することにより、バッテリ雰囲気温度に対応するサブバッテリ容量の補正係数を取得し、ステップＳ５２で取得したサブバッテリ容量にその補正係数を乗算し、サブバッテリ１４が放電できる放電電気量、つまり、サブバッテリ容量を補正するようにしている。
【００６５】
以上の処理により、サブバッテリ電圧値およびバッテリ雰囲気温度に対応するサブバッテリ容量を取得することで、サブバッテリ１４の状態が検出される。
次に、電圧降下量算出部４５は、スタータ駆動時のメインバッテリ１３の電圧降下量を算出する処理を行う。この電圧降下量から、スタータ駆動時に必要とされる放電電気量を求めることができる。
【００６６】
図１３は電圧降下量算出処理を示すフローチャートである。
電圧降下量算出部４５は、電圧降下量算出処理プログラムにより以下のステップに従った処理を実行する。
【００６７】
［ステップＳ６１］ＣＰＵ３４は、今後のメインバッテリ電圧値と比較するためにエンジン始動直前のメインバッテリ電圧値をＶ３として記憶する。
［ステップＳ６２］ＣＰＵ３４は、スタータ駆動によりエンジンが始動されたか否かを判定する。始動された場合、処理はステップＳ６３に進み、始動されていない場合、電圧降下量算出処理は終了する。
【００６８】
［ステップＳ６３］ＣＰＵ３４は、電圧センサ１６および電流センサ１７によりそれぞれ検出されたメインバッテリ電圧値およびメインバッテリ電流値のサンプリングを開始する。
【００６９】
［ステップＳ６４］ＣＰＵ３４は、サンプリングしたメインバッテリ電流値の中における最大のメインバッテリ電流値をＩｍａｘとして検出する。
［ステップＳ６５］ＣＰＵ３４は、サンプリングしたメインバッテリ電圧値の中における最小のメインバッテリ電圧値をＶｍｉｎとして検出する。
【００７０】
［ステップＳ６６］ＣＰＵ３４は、エンジンが始動されてから現在までの間にメインバッテリ１３から放電された放電電気量Ｉｓｕｍ０を算出する。
［ステップＳ６７］ＣＰＵ３４は、エンジンが完爆したか否かを判定する。完爆した場合、処理はステップＳ７０に進み、完爆していない場合、処理はステップＳ６８に進む。
【００７１】
［ステップＳ６８］ＣＰＵ３４は、サンプリング開始から所定時間が経過したか否かを判定する。これは、エンジンが始動されて完爆していない状態が所定時間続くと、スタータが正常に駆動されていないなどのトラブルの可能性があるので、そのようなトラブルの際には電圧降下量算出処理を終了するためのものである。所定時間が経過した場合、電圧降下量算出処理は終了し、所定時間が経過していない場合、処理はステップＳ６９に進む。
【００７２】
［ステップＳ６９］ＣＰＵ３４は、スタータ駆動が完了したか否かを判定する。これは、エンジンが始動されて完爆するまでの間はスタータ駆動が実施されるが、エンジンが完爆していないにも拘らずにスタータ駆動が完了した場合、スタータが正常に駆動されていないなどのトラブルの可能性があるので、そのようなトラブルの際には電圧降下量算出処理を終了するためのものである。エンジンが完爆していないにも拘らずにスタータ駆動が完了した場合、電圧降下量算出処理は終了し、スタータ駆動が完了していない場合、処理はステップＳ６３に戻る。
【００７３】
［ステップＳ７０］ＣＰＵ３４は、放電電気量Ｉｓｕｍ０をメインバッテリ容量で除算し、メインバッテリ電圧値の電圧降下量の推定値を算出する。すなわち、メインバッテリ電圧値の電圧降下量の推定値Ｖｄ１（Ｖ）は、メインバッテリ容量をＣｍとすると、
Ｖｄ１＝Ｉｓｕｍ０／Ｃｍ・・・（４）
により算出される。
【００７４】
［ステップＳ７１］ＣＰＵ３４は、エンジン始動直前のメインバッテリ電圧値Ｖ３から最小のメインバッテリ電圧値Ｖｍｉｎを減算し、メインバッテリ電圧値の電圧降下量の実測値を算出する。すなわち、メインバッテリ電圧値の電圧降下量の実測値Ｖｄ２（Ｖ）は、エンジン始動直前のメインバッテリ電圧値をＶ３（Ｖ）とし、最小のメインバッテリ電圧値をＶｍｉｎ（Ｖ）とすると、
Ｖｄ２＝Ｖ３−Ｖｍｉｎ・・・（５）
により算出される。
【００７５】
［ステップＳ７２］ＣＰＵ３４は、メインバッテリ電圧値の電圧降下量を決定する。この電圧降下量は、ステップＳ７０の処理で算出された電圧降下量の推定値およびステップＳ７１で算出された電圧降下量の実測値に基づいて決定される。ここでは、メインバッテリ電圧値の電圧降下量は、ステップＳ７０の処理で算出された電圧降下量の推定値とステップＳ７１で算出された電圧降下量の実測値とを比較して値の大きい方に決定される。なお、ここで決定される電圧降下量は、電圧降下量の推定値と電圧降下量の実測値との平均値としてもよい。
【００７６】
以上の処理により、スタータを駆動したときに、スタータを駆動してからスタータ駆動が完了するまでの間にメインバッテリ１３から放電された最大のメインバッテリ電流値Ｉｍａｘとメインバッテリ電圧値の電圧降下量とが得られる。
【００７７】
ここで、電圧降下量は、メインバッテリ容量およびバッテリ内部抵抗値の変化によって常に変化しているので、算出された電圧降下量を変化分に対応した電圧降下量で更新する必要がある。
【００７８】
次に、電圧降下量算出部４５による電圧降下量更新処理について説明する。
図１４は電圧降下量更新処理を示すフローチャートである。
電圧降下量算出部４５は、電圧降下量算出処理プログラムにより以下のステップに従った処理を繰り返し実行する。
【００７９】
［ステップＳ８１］ＣＰＵ３４は、現状のメインバッテリ容量と電圧降下量算出時のメインバッテリ容量との差が所定値Ｃｍ１以上であるか否かを判定する。ここで、メインバッテリ容量が所定値Ｃｍ１以上変動すると、その分、メインバッテリ電圧値の電圧降下量も変動しているので、メインバッテリ電圧値の電圧降下量を更新する必要がある。差が所定値Ｃｍ１以上の場合、処理はステップＳ８２に進み、差が所定値Ｃｍ１未満の場合、処理はステップＳ８３に進む。
【００８０】
［ステップＳ８２］ＣＰＵ３４は、電圧降下量算出時の放電電気量Ｉｓｕｍ０を現状のメインバッテリ容量で除算し、メインバッテリ電圧値の電圧降下量を再算出して更新する。
【００８１】
［ステップＳ８３］ＣＰＵ３４は、現状のバッテリ内部抵抗値と電圧降下量算出時のバッテリ内部抵抗値との差が所定値Ｒ１以上であるか否かを判定する。ここで、バッテリ内部抵抗値が所定値Ｒ１以上変動すると、その分、メインバッテリ電圧値の電圧降下量も変動しているので、メインバッテリ電圧値の電圧降下量を更新する処理を行う必要がある。差が所定値Ｒ１以上の場合、処理はステップＳ８４に進み、差が所定値Ｒ１未満の場合、電圧降下量更新処理は終了する。
【００８２】
［ステップＳ８４］ＣＰＵ３４は、電圧降下量算出時の最大のメインバッテリ電流値Ｉｍａｘに現状のバッテリ内部抵抗値を乗算し、メインバッテリ電圧値の電圧降下量を再算出して更新する。
【００８３】
以上の処理により、スタータ駆動完了後において、メインバッテリ容量が所定値Ｃｍ１以上変化した場合、または、メインバッテリ容量が変化していないときにバッテリ内部抵抗値が所定値Ｒ１以上変化した場合、すでに算出されているメインバッテリ電圧値の電圧降下量は更新され、常に、現状のメインバッテリ電圧値の電圧降下量に更新されることになる。
【００８４】
以上の処理により求められたメインバッテリ状態およびサブバッテリ状態を基に、次に、エコラン許可判定部４６は、エコランを許可するか禁止するかの判定処理を実施することになる。
【００８５】
エコラン許可判定部４６は、第１のエコラン許可判定処理および／または第２のエコラン許可判定処理プログラムを含んでおり、これらは、必要に応じて選択される。
まず、エコラン許可判定部４６による第１のエコラン許可判定処理について説明する。
【００８６】
図１５は第１のエコラン許可判定処理を示すフローチャートである。
エコラン許可判定部４６は、エコラン許可判定処理プログラムにより以下のステップに従った処理を繰り返し実行する。
【００８７】
［ステップＳ９１］ＣＰＵ３４は、スタータ駆動時にメインバッテリ１３が放電すべき必要放電電気量Ｉｎｄ０を算出する。この必要放電電気量Ｉｎｄ０（Ａｓｅｃ）は、ステップＳ７２の処理で算出された電圧降下量にメインバッテリ容量を乗算することにより算出され、メインバッテリ電圧値の電圧降下量をＶｄ（Ｖ）として式で表すと、
Ｉｎｄ０＝Ｖｄ×Ｃｍ・・・（６）
となる。
【００８８】
［ステップＳ９２］ＣＰＵ３４は、必要放電電気量Ｉｎｄ０がサブバッテリ容量（サブバッテリ１４の放電電気量）以上大きいか否かを判定する。小さい場合、メインバッテリ１３が放電すべき全ての放電電気量をサブバッテリ１４の放電電気量により完全にアシストできるので、処理はステップＳ９７に進み、大きい場合、処理はステップＳ９３に進む。
【００８９】
［ステップＳ９３］必要放電電気量Ｉｎｄ０がサブバッテリ容量以上では、サブバッテリ１４はメインバッテリ１３を完全にアシストできないので、ＣＰＵ３４は、サブバッテリ１４の放電電気量によるエコランを禁止する。
【００９０】
［ステップＳ９４］ＣＰＵ３４は、メインバッテリ１３の放電電気量によるエコランを許可できるエコラン許可電圧閾値Ｖ４を算出する。このエコラン許可電圧閾値Ｖ４は、スタータ駆動時にメインバッテリ電圧値がこれ以上低下しないと判定される低電圧判定電圧値に、ステップＳ７２の処理で算出された電圧降下量を加算することにより算出される。
【００９１】
［ステップＳ９５］ＣＰＵ３４は、メインバッテリ電圧値がエコラン許可電圧閾値Ｖ４以上大きいか否かを判定する。大きい場合、メインバッテリ１３が放電すべき全ての放電電気量をメインバッテリ１３自身が保持していることになり、処理はステップＳ９６に進み、小さい場合、処理はステップＳ９８に進む。
【００９２】
［ステップＳ９６］ＣＰＵ３４は、サブバッテリ１４の放電電気量によるエコラン禁止を解除する。
［ステップＳ９７］ＣＰＵ３４は、メインバッテリ１３の放電電気量によるエコラン、または、サブバッテリ１４の放電電気量によるエコランを許可する。
【００９３】
［ステップＳ９８］ＣＰＵ３４は、メインバッテリ１３の放電電気量によるエコランを禁止する。
このようにして、エコラン許可判定部４６は、まず、サブバッテリ１４だけでエンジンを再始動できるか否かを判定し、サブバッテリ１４によるエコランを禁止した場合でも、メインバッテリ電圧値がエコラン許可電圧閾値以上であれば、サブバッテリ１４によるエコラン禁止を解除してエコランを許可することができる。これにより、エコランを許可してエンジンを停止しても、メインバッテリ１３またはサブバッテリ１４がスタータ駆動時にメインバッテリ１３が放電すべき必要放電電気量を保持しているので、エコランから復帰する際に確実にエンジンを再始動できる。
【００９４】
次に、エコラン許可判定部４６による第２のエコラン許可判定処理について説明する。
図１６は第２のエコラン許可判定処理を示すフローチャートである。
エコラン許可判定部４６は、エコラン許可判定処理プログラムにより以下のステップに従った処理を繰り返し実行する。
【００９５】
［ステップＳ１０１］ＣＰＵ３４は、スタータ駆動時にメインバッテリ１３が放電すべき必要放電電気量Ｉｎｄ０を算出する。この必要放電電気量Ｉｎｄ０は、ステップＳ７２の電圧降下量算出処理で算出された電圧降下量にメインバッテリ容量を乗算することによって算出される。
【００９６】
［ステップＳ１０２］ＣＰＵ３４は、スタータ駆動時におけるサブバッテリ１４の不足放電電気量を算出する。この不足放電電気量は、必要放電電気量Ｉｎｄ０からステップ５３の処理で算出されたサブバッテリ容量（サブバッテリ１４の放電電気量）を減算することにより算出される。
【００９７】
［ステップＳ１０３］ＣＰＵ３４は、不足放電電気量が所定値Ｉｎｄ１以上大きいか否かを判定する。小さい場合、メインバッテリ１３が放電すべき全ての放電電気量をサブバッテリ１４の放電電気量により十分にアシストできるので、処理はステップＳ１０８に進み、大きい場合、処理はステップＳ１０４に進む。
【００９８】
［ステップＳ１０４］不足放電電気量が所定値Ｉｎｄ１以上では、サブバッテリ１４はメインバッテリ１３を十分にアシストできないので、ＣＰＵ３４は、サブバッテリ１４の放電電気量によるエコランを禁止する。
【００９９】
［ステップＳ１０５］ＣＰＵ３４は、メインバッテリ１３の放電電気量によるエコランを許可できるエコラン許可電圧閾値Ｖ５を算出する。このエコラン許可電圧閾値Ｖ５は、不足放電電気量をメインバッテリ容量で除算し、その除算結果に、スタータ駆動時にメインバッテリ電圧値がこれ以下に低下しないと判定される低電圧判定電圧値を加算することにより算出される。すなわち、エコラン許可電圧閾値Ｖ５（Ｖ）は、不足放電電気量をＩｆ（Ａｓｅｃ）とし、必要放電電気量をＩｎｄ０（Ａｓｅｃ）とし、補助バッテリ容量をＣｓ（Ａｓｅｃ）とし、低電圧判定電圧値をＶｔ（Ｖ）とし、メインバッテリ容量をＣｍ（Ａｓｅｃ／Ｖ）とすると、
Ｖ５＝Ｖｔ＋（Ｉｆ／Ｃｍ）・・・（７）
により算出される。
【０１００】
［ステップＳ１０６］ＣＰＵ３４は、メインバッテリ電圧値がエコラン許可電圧閾値Ｖ５以上大きいか否かを判定する。大きい場合、メインバッテリ１３が放電すべき全ての放電電気量をメインバッテリ１３およびサブバッテリ１４が保持していることになり、処理はステップＳ１０７に進み、小さい場合、処理はステップＳ１０９に進む。
【０１０１】
［ステップＳ１０７］ＣＰＵ３４は、サブバッテリ１４の放電電気量によるエコラン禁止を解除する。
［ステップＳ１０８］ＣＰＵ３４は、メインバッテリ１３の放電電気量によるエコラン、または、サブバッテリ１４の放電電気量によるエコランを許可する。
【０１０２】
［ステップＳ１０９］ＣＰＵ３４は、メインバッテリ１３の放電電気量によるエコランを禁止する。
このようにして、エコラン許可判定部４６は、まず、不足放電電気量からサブバッテリ１４だけでエンジンを再始動できるか否かを判定し、サブバッテリ１４によるエコランを禁止した場合でも、メインバッテリ電圧値がエコラン許可電圧閾値以上であれば、サブバッテリ１４によるエコラン禁止を解除してエコランを許可することができる。これにより、エコランを許可してエンジンを停止しても、メインバッテリ１３またはサブバッテリ１４がスタータ駆動時にメインバッテリ１３が放電すべき必要放電電気量を保持しているので、エコランから復帰する際に確実にエンジンを再始動できる。
【０１０３】
次に、エコラン許可判定部４６によるエコラン時容量更新処理について説明する。
図１７はエコラン時容量更新処理を示すフローチャートである。
エコラン許可判定部４６は、エコラン実施中にエコラン許可判定処理プログラムにより以下のステップに従った処理を繰り返し実行する。
【０１０４】
［ステップＳ１１１］ＣＰＵ３４は、エコランを実施しているか否かを判定する。実施している場合、処理はステップＳ１１３に進み、実施していない場合、処理はステップＳ１１２に進む。
【０１０５】
［ステップＳ１１２］ＣＰＵ３４は、今後のメインバッテリ電圧値と比較するためにエコラン実施前のメインバッテリ電圧値を始動時電圧値Ｖ０として記憶する。
［ステップＳ１１３］ＣＰＵ３４は、電圧センサ１６および電流センサ１７によりそれぞれ検出されたメインバッテリ電圧値およびメインバッテリ電流値のサンプリングを開始する。
【０１０６】
［ステップＳ１１４］ＣＰＵ３４は、バッテリ内部抵抗値Ｒｎを算出する。このバッテリ内部抵抗値Ｒｎ（Ｖ／Ａ）は、前述の式（１）により算出される。次いで、バッテリ内部抵抗値の合計値Ｒｓｕｍが、前述の式（２）により算出される。
【０１０７】
［ステップＳ１１５］ＣＰＵ３４は、サンプリング開始から現在までの間にメインバッテリ１３から放電された放電電気量Ｉｓｕｍ０を算出する。
［ステップＳ１１６］ＣＰＵ３４は、サンプリング開始から所定時間が経過したか否かを判定する。これは、メインバッテリ電圧値およびメインバッテリ電流値を所定時間に渡って所定周期ごとにサンプリングするためのものである。所定時間が経過した場合、処理はステップＳ１１７に進み、所定時間が経過していない場合、処理はステップＳ１１３に戻る。
【０１０８】
以上までの処理では、サンプリング開始から所定時間が経過するまで、メインバッテリ電圧値およびメインバッテリ電流値のサンプリング、バッテリ内部抵抗値の個別および合計の算出、放電電気量の算出が周期的に行われていることになる。
【０１０９】
［ステップＳ１１７］ＣＰＵ３４は、メインバッテリ電圧値Ｖ１が始動時電圧値Ｖ０よりも所定値Ｖ２以上大きいか否かを判定する。大きい場合、メインバッテリ電圧値の変動が大きいことによりエコラン継続を許可するか禁止するかの判定を行う必要が発生し、処理はステップＳ１１８に進み、小さい場合、エコラン時容量更新処理は終了する。
【０１１０】
［ステップＳ１１８］ＣＰＵ３４は、ステップＳ１１５の処理で算出された放電電気量Ｉｓｕｍ０を、現状のメインバッテリ電圧値Ｖ１から始動時電圧値Ｖ０を減算した値で除算し、メインバッテリ電圧値が１Ｖ変動する間にメインバッテリ１３から放電される放電電気量を示すメインバッテリ容量を算出する。このメインバッテリ容量Ｃｍ（Ａｓｅｃ／Ｖ）は、前述の式（３）により算出される。
【０１１１】
［ステップＳ１１９］ＣＰＵ３４は、バッテリ内部抵抗値を決定する。本実施の形態では、このバッテリ内部抵抗値は、ステップＳ１１４の処理で算出されたバッテリ内部抵抗値の合計値Ｒｓｕｍをサンプリング数ｎで除算した平均値としている。もちろん、このバッテリ内部抵抗値は、最大値または最頻値としてもよく、各バッテリ内部抵抗値の中の外れ値を削除してからバッテリ内部抵抗値を決定してもよい。
【０１１２】
［ステップＳ１２０］ＣＰＵ３４は、今後のバッテリ液温度と比較するために現状のバッテリ液温度をＴＨＢ０として記憶する。
以上の処理により、エコラン実施中にはメインバッテリ電圧値の低下が予測される中でメインバッテリ電圧値が所定値未満に低下した場合、メインバッテリ容量およびバッテリ内部抵抗値が更新される。
【０１１３】
次に、エコラン許可判定部４６によるエンジン自動再始動処理について説明する。
図１８はエンジン自動再始動処理を示すフローチャートである。
エコラン許可判定部４６は、エコラン実施中にエコラン許可判定処理プログラムにより以下のステップに従った処理を繰り返し実行する。
【０１１４】
［ステップＳ１３１］ＣＰＵ３４は、エコラン中であるか否かを判定する。エコラン中である場合、処理はステップＳ１３２に進み、エコラン中でない場合、エンジン自動再始動処理は終了する。
【０１１５】
［ステップＳ１３２］ＣＰＵ３４は、メインバッテリ電圧値がステップＳ９４またはステップＳ１０５の処理で算出されたエコラン許可電圧閾値以上大きいか否かを判定する。大きい場合、エンジン始動時からエンジンが完爆するまでの間に必要とされる電気量をメインバッテリ１３およびサブバッテリ１４が保持していることになり、処理はステップＳ１３３に進み、小さい場合、処理はステップＳ１３４に進む。
【０１１６】
［ステップＳ１３３］ＣＰＵ３４は、エコラン継続を許可する。
［ステップＳ１３４］ＣＰＵ３４は、エコラン継続を禁止し、エンジンを強制的に再始動する。
【０１１７】
以上の処理により、メインバッテリ電圧値がエコラン許可電圧閾値以上であった際は、エコランの実施が継続され、メインバッテリ電圧値がエコラン許可電圧閾値未満であった際には、エンジンが強制的に再始動される。これにより、エコラン実施中にメインバッテリ１３およびサブバッテリ１４が十分な電気量を保持している限り、エコランを継続することができる。
【０１１８】
なお、上記の説明では、エコラン制御装置１０が単体で構成される場合について説明したが、これに限られるものでなく、たとえば、エンジンを制御するエンジン制御装置と一体に構成されるようにしてもよい。また、エコラン制御装置１０から、バッテリおよびオルタネータ１１を制御する電源マネジメント装置を分離するよう構成するようにしてもよい。
【図面の簡単な説明】
【０１１９】
【図１】エコラン制御システムのハードウェアブロック図である。
【図２】エコラン制御装置のハードウェアブロック図である。
【図３】エコラン制御装置の機能ブロック図である。
【図４】メインバッテリ状態検出処理を示すフローチャートである。
【図５】バッテリ内部抵抗値更新処理を示すフローチャートである。
【図６】バッテリ液温度に対するバッテリ内部抵抗値特性を示す図である。
【図７】メインバッテリ容量補正処理を示すフローチャートである。
【図８】バッテリ液温度に対するメインバッテリ容量の補正係数特性を示す図である。
【図９】バッテリ内部抵抗値に対するメインバッテリ容量の補正係数特性を示す図である。
【図１０】サブバッテリ状態検出処理を示すフローチャートである。
【図１１】サブバッテリ電圧値に対するサブバッテリ容量特性を示す図である。
【図１２】バッテリ雰囲気温度に対するサブバッテリ容量の補正係数特性を示す図である。
【図１３】電圧降下量算出処理を示すフローチャートである。
【図１４】電圧降下量更新処理を示すフローチャートである。
【図１５】第１のエコラン許可判定処理を示すフローチャートである。
【図１６】第２のエコラン許可判定処理を示すフローチャートである。
【図１７】エコラン時容量更新処理を示すフローチャートである。
【図１８】エンジン自動再始動処理を示すフローチャートである。
【符号の説明】
【０１２０】
１０  エコラン制御装置
４１  メインバッテリ監視部
４２  サブバッテリ監視部
４３  メインバッテリ状態検出部
４４  サブバッテリ状態検出部
４５  電圧降下量算出部
４６  エコラン許可判定部
【図１】
2007218230.tif 000003
【図２】
2007218230.tif 000004
【図３】
2007218230.tif 000005
【図４】
2007218230.tif 000006
【図５】
2007218230.tif 000007
【図６】
2007218230.tif 000008
【図７】
2007218230.tif 000009
【図８】
2007218230.tif 000010
【図９】
2007218230.tif 000011
【図１０】
2007218230.tif 000012
【図１１】
2007218230.tif 000013
【図１２】
2007218230.tif 000014
【図１３】
2007218230.tif 000015
【図１４】
2007218230.tif 000016
【図１５】
2007218230.tif 000017
【図１６】
2007218230.tif 000018
【図１７】
2007218230.tif 000019
【図１８】
2007218230.tif 000020