(57)【特許請求の範囲】
【請求項１】
電池に流れる電流を検出する電流センサと、
前記電池の電圧を検出する電圧センサと、
前記電池のＯＣＶとＳＯＣとの相関関係に関する情報が記憶されるメモリと、
制御部と、を備え、
前記制御部は、
前記電流センサの検出結果に基づき、前記電池に流れる電流を時間で積算する電流積算により推定ＳＯＣを求めるＳＯＣ積算処理と、
前記電圧センサの検出結果に基づき、前記電池のＯＣＶを測定する電圧測定処理と、
前記相関関係に関する情報に基づき、当該相関関係上、前記電圧測定処理でのＯＣＶの測定値が属する領域における、ＳＯＣに対するＯＣＶの変化率が小さいほど、幅が広い基準範囲を設定する基準範囲設定処理と、
前記ＳＯＣ積算処理で求められた推定ＳＯＣが、前記基準範囲設定処理で設定された基準範囲外である場合、当該推定ＳＯＣを前記基準範囲側にシフトさせ、前記推定ＳＯＣが前記基準範囲以内である場合、当該推定ＳＯＣをシフトさせない、ＳＯＣ調整処理と、を実行する、電池管理装置。
【請求項２】
請求項１に記載の電池管理装置であって、
前記制御部は、
前記ＳＯＣ積算処理で求めた推定ＳＯＣと、前記ＳＯＣ調整処理で使用した前記基準範囲とを、履歴情報として前記メモリに記憶する履歴記録処理を実行し、
前記ＳＯＣ調整処理では、前記履歴情報に基づき、前記ＳＯＣ積算処理にて求めた推定ＳＯＣを結ぶＳＯＣ変化線をＳＯＣ軸方向に平行移動したシフト線であって、且つ、今回を含む複数回分の前記基準範囲設定処理により設定された基準範囲とのクロス数が前記ＳＯＣ変化線と同数以上である特性シフト線を抽出し、前記推定ＳＯＣの現在値を、前記基準範囲側であって、且つ、特定シフト線側にシフトさせる、電池管理装置。
【請求項３】
請求項２に記載の電池管理装置であって、
前記制御部は、
ＳＯＣ調整処理で、前記特定シフト線を複数抽出した場合、前記推定ＳＯＣの現在値を、前記クロス数が最も多い特定シフト線のいずれかにシフトさせる、電池管理装置。
【請求項４】
請求項２または請求項３に記載の電池管理装置であって、
前記制御部は、
前記ＳＯＣ調整処理で、前記クロス数が同じ特定シフト線を複数抽出した場合には、前記推定ＳＯＣの現在値を、２つの前記シフト線の中心値にシフトさせる、電池管理装置。
【請求項５】
請求項１から請求項４のいずれか一項に記載の電池管理装置であって、
前記制御部は、
少なくとも前記ＳＯＣ積算処理で求めた推定ＳＯＣを、履歴情報として前記メモリに記録する履歴記録処理と、
前記ＳＯＣ調整処理では、前記履歴情報として前記メモリに記録された過去の推定ＳＯＣを、前記推定ＳＯＣの現在値を当該ＳＯＣ調整処理にてシフトした量と同量だけシフトさせた情報に更新する、電池管理装置。
【請求項６】
複数のセルが直列接続された組電池と、
請求項１から請求項５のいずれか一項に記載の組電池監視装置と、を備える電池パック。
【請求項７】
電池に流れる電流を検出する電流センサ、及び、前記電池の電圧を検出する電圧センサから検出結果を取得する制御ユニットが有するコンピュータに、
前記電流センサの検出結果に基づき、電池に流れる電流を時間で積算する電流積算により推定ＳＯＣを求めるＳＯＣ積算処理と、
前記電圧センサの検出結果に基づき、前記電池のＯＣＶを測定する電圧測定処理と、
前記電池のＯＣＶとＳＯＣとの相関関係上、前記電圧測定処理でのＯＣＶの測定値が属する領域における、ＳＯＣに対するＯＣＶの変化率が小さいほど、幅が広い基準範囲を設定する基準範囲設定処理と、
前記ＳＯＣ積算処理で求められた推定ＳＯＣが、前記基準範囲設定処理で設定された基準範囲外である場合、当該推定ＳＯＣを前記基準範囲側にシフトさせ、前記推定ＳＯＣが前記基準範囲以内である場合、当該推定ＳＯＣをシフトさせない、ＳＯＣ調整処理と、を実行させる電池管理プログラム。
【請求項８】
電池のＳＯＣ推定方法であって、
電池に流れる電流の検出結果に基づき、前記電池に流れる電流を時間で積算する電流積算により推定ＳＯＣを求めるＳＯＣ積算工程と、
前記電池の電圧の検出結果に基づき、前記電池のＯＣＶを測定する電圧測定工程と、
前記電池のＯＣＶとＳＯＣとの相関関係上、前記電圧測定工程でのＯＣＶの測定値が属する領域における、ＳＯＣに対するＯＣＶの変化率が小さいほど、幅が広い基準範囲を設定する基準範囲設定工程と、
前記ＳＯＣ積算工程で求められた推定ＳＯＣが、前記基準範囲設定工程で設定された基準範囲外である場合、当該推定ＳＯＣを前記基準範囲側にシフトさせ、前記推定ＳＯＣが前記基準範囲以内である場合、当該推定ＳＯＣをシフトさせない、ＳＯＣ調整工程と、を含む、電池のＳＯＣ推定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電池のＳＯＣ（残存容量  Ｓｔａｔｅ  Ｏｆ  Ｃｈａｒｇｅ）を推定する技術に関する。
【背景技術】
【０００２】
従来から、電池のＳＯＣを推定する方法として、電池のＯＣＶ（開放電圧  Ｏｐｅｎ  Ｃｉｒｃｕｉｔ  Ｖｏｌｔａｇｅ）によるＳＯＣ推定方法がある。これは、電池のＯＣＶを測定し、予め定められたＯＣＶとＳＯＣとの相関関係を参照して、測定されたＯＣＶに対応するＳＯＣを、推定ＳＯＣとする方法である。また、これ以外に、電池のＳＯＣを推定する方法として、電流積算によるＳＯＣ推定方法がある。これは、最初にＯＣＶを測定して初期ＳＯＣを算出し、その後、電池の充放電電流を積算して積算ＳＯＣを求めつつ、初期ＳＯＣに積算ＳＯＣを加算したＳＯＣを、推定ＳＯＣとする方法である。
【０００３】
ここで、ＯＣＶを正確に測定できないことが多々ある。例えば二次電池が搭載された電気自動車やハイブリット自動車では、走行を開始すると、信号待ちで停止しているときでも無負荷状態にはならず、二次電池に微少電流が流れるため、ＯＣＶを正確に測定することはできないことがある。この点、ＯＣＶによるＳＯＣ推定方法では、ＳＯＣを推定するとき、常にその時のＯＣＶを測定する必要である。これに対し、電流積算によるＳＯＣ推定方法では、最初にＯＣＶを測定する必要はあるものの、その後、ＳＯＣを推定するときに、ＯＣＶを測定する必要はない。即ち、電流積算によるＳＯＣ推定方法は、ＯＣＶの測定誤差による影響を受け難くＳＯＣの変化量を正確に測定できるという点で、ＯＣＶによるＳＯＣ推定方法よりも有利である。
【０００４】
しかし、電流積算によるＳＯＣ推定方法では、例えば電流センサの測定誤差等により、電流積算が長期間実行されると、推定ＳＯＣと実際のＳＯＣとの間の誤差が積算されて大きくなるおそれがある。このため、ＯＣＶによるＳＯＣ推定方法は、推定ＳＯＣと実際のＳＯＣとの間の誤差が積算されない点で、電流積算によるＳＯＣ推定方法よりも有利である。
【０００５】
そこで、従来から、電流積算によるＳＯＣ推定方法とＯＣＶによるＳＯＣ推定方法とを組み合わせた技術がある（下記特許文献１参照）。具体的には、この従来技術は、通常は、電流積算によるＳＯＣ推定方法で推定ＳＯＣを求めつつ、所定のタイミングで、その推定ＳＯＣを、上記ＯＣＶによるＳＯＣ推定方法で求めたＳＯＣにシフトさせることにより、電流積算によるＳＯＣの積算誤差を抑制する方法である。また、上記従来技術では、積算ＳＯＣから逆算したＯＣＶと、測定したＯＣＶとの差ΔＶが、所定範囲内であれば、電流積算によるＳＯＣの積算誤差は許容できる範囲であるとして、推定ＳＯＣを、ＯＣＶによるＳＯＣ推定方法で求めたＳＯＣにシフトさせる補正を行わないようにしている（特に、下記特許文献１の段落３８及び図４参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００７−１７１２０５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところが、上記ＯＣＶとＳＯＣとの相関関係は正比例ではなく曲線を描くため、ＯＣＶの測定誤差に対し、そのＯＣＶによるＳＯＣ推定方法で求めたＳＯＣの誤差幅は、ＯＣＶの測定値によってばらつく。しかし、上記従来技術では、このことを全く考慮しておらず、ＯＣＶの測定値にかかわらず、上記差ΔＶを、一律、同じ所定範囲、換言すれば同一幅と比較している。このため、従来技術では、推定ＳＯＣを、ＯＣＶによるＳＯＣ推定方法で求めたＳＯＣにシフトさせると、却って、シフト前よりも、推定ＳＯＣと実際のＳＯＣとの間の誤差が大きくなってしまうおそれがある。
【０００８】
本明細書では、推定ＳＯＣを、ＯＣＶによるＳＯＣ推定方法で求めたＳＯＣにシフトさせることにより推定ＳＯＣがシフト前よりも増大してしまうことを抑制することが可能な技術を開示する。
【課題を解決するための手段】
【０００９】
本明細書によって開示される電池管理装置は、電池に流れる電流を検出する電流センサと、前記電池の電圧を検出する電圧センサと、前記電池のＯＣＶとＳＯＣとの相関関係に関する情報が記憶されるメモリと、制御部と、を備え、前記制御部は、前記電流センサの検出結果に基づき、前記電池に流れる電流を時間で積算する電流積算により推定ＳＯＣを求めるＳＯＣ積算処理と、前記電圧センサの検出結果に基づき、前記電池のＯＣＶを測定する電圧測定処理と、前記相関関係に関する情報に基づき、当該相関関係上、前記電圧測定処理でのＯＣＶの測定値が属する領域における、ＳＯＣに対するＯＣＶの変化率が小さいほど、幅が広い基準範囲を設定する基準範囲設定処理と、前記ＳＯＣ積算処理で求められた推定ＳＯＣが、前記基準範囲設定処理で設定された基準範囲外である場合、当該推定ＳＯＣを前記基準範囲側にシフトさせ、前記推定ＳＯＣが前記基準範囲以内である場合、当該推定ＳＯＣをシフトさせない、ＳＯＣ調整処理と、を実行する。
【００１０】
この発明によれば、相関関係上、電圧測定処理でのＯＣＶの測定値が属する領域における、ＳＯＣに対するＯＣＶの変化率（ＳＯＣの単位量当たりにおけるＯＣＶの変化量）が小さいほど、幅が広い基準範囲が設定される。即ち、基準範囲の幅は、ＯＣＶの測定誤差に対するＳＯＣの誤差範囲が大きいほど、広く設定される。そして、ＳＯＣ積算処理で求められた推定ＳＯＣが、基準範囲外である場合、当該推定ＳＯＣを基準範囲側にシフトさせ、推定ＳＯＣが基準範囲以内である場合、当該推定ＳＯＣをシフトさせない。これにより、推定ＳＯＣを、ＯＣＶによる方法で求めたＳＯＣにシフトさせることにより推定ＳＯＣがシフト前よりも増大してしまうことを抑制することが可能である。
【００１１】
上記電池管理装置では、前記制御部は、前記ＳＯＣ積算処理で求めた推定ＳＯＣと、前記ＳＯＣ調整処理で使用した前記基準範囲とを、履歴情報として前記メモリに記録する履歴記録処理を実行し、前記ＳＯＣ調整処理では、前記履歴情報に基づき、今回を含む複数回分の推定ＳＯＣを結ぶＳＯＣ変化線と同一の線形を示し、且つ、前記複数回分の基準範囲とのクロス点が前記ＳＯＣ変化線と同数以上である特定シフト線を抽出し、今回の推定ＳＯＣを、前記基準範囲側であって、且つ、前記特定シフト線側にシフトさせてもよい。
【００１２】
この発明によれば、ＳＯＣ調整処理では、今回を含む複数回分の推定ＳＯＣを結ぶＳＯＣ変化線と同一の線形を示し、且つ、複数回分の基準範囲とのクロス点がＳＯＣ変化線と同数以上である特定シフト線が抽出され、今回の推定ＳＯＣは、基準範囲側であって、且つ、特定シフト線側にシフトされる。これにより、単に、今回の推定ＳＯＣを、今回の基準範囲内にシフトさせる場合に比べて、過去の推定ＳＯＣと基準範囲との関係を考慮した、より正確な推定ＳＯＣを求めることができる。
【００１３】
上記電池管理装置では、前記制御部は、前記ＳＯＣ調整処理で、前記特定シフト線が複数有る場合には、前記今回の推定ＳＯＣを、前記クロス数が最も多い特定シフト線側にシフトさせてもよい。
【００１４】
この発明によれば、特定シフト線が複数有る場合、今回の推定ＳＯＣは、クロス数が最も多い特定シフト線側にシフトされる。これにより、過去の推定ＳＯＣと基準範囲との関係を更に考慮した、より正確な推定ＳＯＣを求めることができる。
【００１５】
上記電池管理装置では、前記制御部は、前記ＳＯＣ調整処理で、前記クロス数が同じ特定シフト線が複数有る場合には、前記今回の推定ＳＯＣを、２つの前記シフト線の中心値にシフトさせてもよい。
【００１６】
この発明によれば、クロス数が同じ特定シフト線が複数有る場合、今回の推定ＳＯＣは、２つのシフト線の中心値にシフトされる。これにより、今回の推定ＳＯＣを各シフト線上にシフトさせる構成に比べて、シフト後の推定ＳＯＣが、実際のＳＯＣから大きくずれることを抑制することができる。
【００１７】
上記電池管理装置では、前記制御部は、少なくとも前記ＳＯＣ積算処理で求めた推定ＳＯＣを、履歴情報として前記メモリに記録する履歴記録処理と、前記ＳＯＣ調整処理では、今回を含む複数回分の推定ＳＯＣを同量だけシフトさせた情報に、前記メモリに記憶された前記履歴情報を更新してもよい。
この発明によれば、過去の推定ＳＯＣの履歴情報に、直近の推定ＳＯＣのシフト結果を反映させることができる。
【００１８】
電池パックは、複数のセルが直列接続された組電池と、上記組電池監視装置と、を備える。
【００１９】
電池管理プログラムは、電池に流れる電流を検出する電流センサ、及び、前記電池の電圧を検出する電圧センサから検出結果を取得する制御ユニットが有するコンピュータに、前記電流センサの検出結果に基づき、電池に流れる電流を時間で積算する電流積算により推定ＳＯＣを求めるＳＯＣ積算処理と、前記電圧センサの検出結果に基づき、前記電池のＯＣＶを測定する電圧測定処理と、前記電池のＯＣＶとＳＯＣとの相関関係上、前記電圧測定処理でのＯＣＶの測定値が属する領域における、ＳＯＣに対するＯＣＶの変化率が小さいほど、幅が広い基準範囲を設定する基準範囲設定処理と、前記ＳＯＣ積算処理で求められた推定ＳＯＣが、前記基準範囲設定処理で設定された基準範囲外である場合、当該推定ＳＯＣを前記基準範囲側にシフトさせ、前記推定ＳＯＣが前記基準範囲以内である場合、当該推定ＳＯＣをシフトさせない、ＳＯＣ調整処理と、を実行させる。
【００２０】
電池のＳＯＣ推定方法は、電池に流れる電流の検出結果に基づき、前記電池に流れる電流を時間で積算する電流積算により推定ＳＯＣを求めるＳＯＣ積算工程と、前記電池の電圧の検出結果に基づき、前記電池のＯＣＶを測定する電圧測定工程と、前記電池のＯＣＶとＳＯＣとの相関関係上、前記電圧測定工程でのＯＣＶの測定値が属する領域における、ＳＯＣに対するＯＣＶの変化率が小さいほど、幅が広い基準範囲を設定する基準範囲設定工程と、前記ＳＯＣ積算工程で求められた推定ＳＯＣが、前記基準範囲設定工程で設定された基準範囲外である場合、当該推定ＳＯＣを前記基準範囲側にシフトさせ、前記推定ＳＯＣが前記基準範囲以内である場合、当該推定ＳＯＣをシフトさせない、ＳＯＣ調整工程と、を含む。
【発明の効果】
【００２１】
本発明によれば、推定ＳＯＣを、ＯＣＶによるＳＯＣ推定方法で求めたＳＯＣにシフトさせることにより推定ＳＯＣがシフト前よりも増大してしまうことを抑制することが可能である。
【図面の簡単な説明】
【００２２】
【図１】一実施形態に係る電池パックの構成を示す概略図
【図２】電池管理処理を示すフローチャート
【図３】組電池の電圧値及び電流値の変化を示すグラフ
【図４】ＯＣＶとＳＯＣとの相関関係を示すグラフ
【図５】シフト処理を示すフローチャート
【図６】Ａパターンにおけるシフト前後のＳＯＣ変化線を示すグラフ
【図７】Ｂパターンにおけるシフト前後のＳＯＣ変化線を示すグラフ
【図８】Ｃパターンにおけるシフト前後のＳＯＣ変化線を示すグラフ
【図９】Ｄパターンにおけるシフト前後のＳＯＣ変化線を示すグラフ（クロス数が増加）
【図１０】Ｄパターンにおけるシフト前後のＳＯＣ変化線を示すグラフ（クロス数が同数）
【図１１】履歴情報、及び、ＳＯＣ変化線Ｌの推移を示すグラフ
【発明を実施するための形態】
【００２３】
一実施形態について、図１〜図１１を参照しつつ説明する。
本実施形態の電池パック１は、例えば電気自動車やハイブリット自動車に搭載され、電気エネルギーで作動する動力源に電力を供給する。
【００２４】
（電池パックの構成）
図１に示すように、電池パック１は、組電池２、及び、電池管理装置（Ｂａｔｔｅｒｙ  Ｍａｎａｇｅｍｅｎｔ  Ｓｙｓｔｅｍ  以下、ＢＭＳという）３を備える。組電池２は、複数の電池セルＣが直列接続された構成であり、各電池セルＣは、繰り返し充電可能な二次電池であり、より具体的にはリチウムイオン電池である。組電池２は、電気自動車等の内部または外部に設けられた充電装置４０、または、電気自動車等の内部に設けられた動力源等の負荷（図示せず）に、配線４を介して電気的に接続される。組電池２は、電池の一例である。なお、充電装置は、図示しない外部電源から電力供給を受けて、組電池２を充電する。
【００２５】
ＢＭＳ３は、制御ユニット３１、アナログ−デジタル変換機（以下、ＡＤＣという）３２、電流センサ３３、電圧センサ３４を備える。制御ユニット３１は、中央処理装置（以下、ＣＰＵという）３５、ＲＯＭやＲＡＭなどのメモリ３６を有する。メモリ３６には、ＢＭＳ３の動作を制御するための各種のプログラム（電池管理プログラムを含む）が記憶されており、ＣＰＵ３５は、メモリ３６から読み出したプログラムに従って、後述する管理処理を実行するなど、各部の制御を行う。制御ユニット３１は、制御部の一例である。
【００２６】
電流センサ３３は、配線４を介して組電池２を流れる充電電流または放電電流（以下、充放電電流という）の電流値Ｉを所定期間毎に検出し、その検出した電流値Ｉ［Ａ］に応じたアナログの検出信号ＳＧ１をＡＤＣ３２に送信する。電圧センサ３４は、組電池２の両端に接続され、組電池２の両端電圧である電圧値Ｖ［Ｖ］を検出し、その検出した電圧値Ｖに応じたアナログの検出信号ＳＧ２をＡＤＣ３２に送信する。電圧センサ３４では、配線４を介さず、両端電圧を直接検出することで、配線４の配線抵抗による影響を抑制した正確な電圧値Ｖを検出することができる。
【００２７】
ＡＤＣ３２は、電流センサ３３及び電圧センサ３４から送信される検出信号ＳＧ１、ＳＧ２を、アナログ信号からデジタル信号に変換し、電流値Ｉ及び電圧値Ｖを示すデジタルデータをメモリ３６に記憶する。
【００２８】
なお、充電装置４０には、ユーザからの入力を受け付ける操作部（図示せず）、組電池２の劣化状態等を表示する液晶ディスプレイからなる表示部（図示せず）が設けられている。
【００２９】
（電池管理処理）
例えば電気自動車に電源が投入されると、ＢＭＳ３が起動し、制御ユニット３１は電池管理処理の実行を開始する。具体的には、ＣＰＵ３５は、上記プログラムをメモリ３６から読み出して、図２に示す電池管理処理を実行する。
【００３０】
電池管理処理では、ＣＰＵ３５は、ＯＣＶによるＳＯＣ推定方法により、起動時ＳＯＣの初期値を算出する（Ｓ１）。具体的には、ＣＰＵ３５は、電圧センサ３４からの検出信号ＳＧ２に基づき、ＢＭＳ３起動時における組電池２の両端電圧の電圧値Ｖ０を検出し、この電圧値Ｖ０を、ＯＣＶの初期値とする。ＣＰＵ３５は、予め定められたＯＣＶ−ＳＯＣ関係データを参照して、ＯＣＶの初期値Ｖ０に対応するＳＯＣを抽出し、これを、推定ＳＯＣの初期値とする方法である。なお、ＯＣＶ−ＳＯＣ関係データは、組電池２について、ＯＣＶとＳＯＣとの相関関係を示す情報であり、これは組電池２の実験や仕様等により予め定められてメモリ３６に記憶されている。ＯＣＶ−ＳＯＣ関係データは、ＯＣＶとＳＯＣとの相関関係に関する情報の一例であり、ＯＣＶとＳＯＣとの対応関係テーブルでもよいし、関数データでもよい。
【００３１】
１．ＳＯＣ積算処理、及び、第１履歴記録処理
次に、ＣＰＵ３５は、電流積算によるＳＯＣ推定方法により推定ＳＯＣを求めるＳＯＣ積算処理、及び、第１履歴記録処理の実行を開始し（Ｓ２）、これ以降、これらの処理を、所定時間ごとに繰り返し実行する。具体的には、ＣＰＵ３５は、ＳＯＣ積算処理では、電流センサ３３からの検出信号ＳＧ１に基づき、電流値Ｉを時間で積算していく。ＣＰＵ３５は、この電流値Ｉの積算値に組電池２の実際の充電効率を乗算し、且つ、組電池２の総容量（Ｔｏｔａｌ  Ａｍｏｕｎｔ  ｏｆ  Ｃｈａｒｇｅ）で除算した値に、１００を乗算した値を、積算ＳＯＣの現在値［％］とする。ＣＰＵ３５は、この積算ＳＯＣの現在値に、上記推定ＳＯＣの初期値を加算した値を、推定ＳＯＣの現在値とする。また、ＣＰＵ３５は、第１履歴情報記録処理では、この推定ＳＯＣの現在値を、履歴情報として、メモリ３６に記録していく。
【００３２】
２．電圧測定処理
ＣＰＵ３５は、ＳＯＣ積算処理、及び、第１履歴記録処理の実行を開始した後、ＯＣＶ検出条件を満たすかどうかを判断し（Ｓ３）、ＯＣＶ検出条件を満たすと判断した場合に（Ｓ３：ＹＥＳ）、ＯＣＶの現在値を測定する電圧測定処理を実行する（Ｓ４）。本実施形態では、ＯＣＶ検出条件は、組電池２の電圧値Ｖが、所定時間継続して、基準電流範囲内であったことである。基準電流範囲は、無負荷状態の電流値を含む範囲であり、具体的には、上限値が０［Ａ］から所定電流値だけＩｔｈだけ高い値であり、下限値が０［Ａ］から所定電流値だけＩｔｈだけ低い値である。
【００３３】
図３には、組電池２の電圧値Ｖ及び電流値Ｉの変化の推移が例示されている。同図に示すように、電流値Ｉが基準電流範囲内に入ると、ＣＰＵ３５は、その時点からの経過時間をカウントすることと、電圧センサ３４からの検出信号ＳＧ２に基づく電池値Ｖをメモリ３６に記録することを開始する。電流値Ｉが所定時間継続して基準電流範囲内にあったときには、ＣＰＵ３５は、上記ＯＣＶ検出条件を満たしたと判断し（Ｓ３：ＹＥＳ）、その後、電流値Ｉが最初に基準電流範囲外となったときの直前の電圧値Ｖ１を、ＯＣＶの現在値とみなす（Ｓ４）。なお、ＯＣＶ検出条件の他の例としては、例えば電気自動車等が、信号待ち等により所定時間停止状態になったことなどが挙げられる。
【００３４】
３．基準範囲設定処理
ＣＰＵ３５は、ＯＣＶの現在値を測定すると、ＯＣＶ−ＳＯＣ関係データに基づき、当該ＯＣＶの現在値に対応するＳＯＣの基準範囲Ｈを設定する基準範囲設定処理を実行する（Ｓ５）。この基準範囲Ｈは、ＯＣＶの測定誤差が所定幅ΔＶであるとした場合、上記ＯＣＶとＳＯＣとの相関関係上、そのＯＣＶの所定幅ΔＶに対応するＳＯＣの誤差範囲をいう。なお、所定幅ΔＶは、電圧センサ３４の測定誤差、温度など、ＯＣＶ測定時の条件、組電池２の固体バラツキ等を考慮して決定することが好ましい。
【００３５】
図４には、リチウムイオン電池についてのＯＣＶとＳＯＣとの相関関係を示すグラフが例示されている。同図では、縦軸がＯＣＶ［Ｖ］であり、横軸がＳＯＣ（％）である。同図から解るように、ＯＣＶとＳＯＣとの相関関係のグラフは、直線ではなく曲線を描く。即ち、ＯＣＶとＳＯＣとの相関関係のグラフには、ＳＯＣに対するＯＣＶの変化率（＝ＳＯＣの単位量当たりのＯＣＶの変化量）、換言すれば、同グラフの勾配が互いに異なる領域が存在する。
【００３６】
このため、ＯＣＶの測定誤差に対し、そのＯＣＶによるＳＯＣ推定方法で求めたＳＯＣの誤差幅は、ＯＣＶの測定値によってばらつく。例えばＯＣＶの測定値がＶ２の場合とＶ３の場合と比較する。図４に示すように、ＯＣＶの測定値がＶ２の場合は、相対的にグラフの勾配が急峻な領域に属するから、測定値Ｖ２に対応するＳＯＣの基準範囲Ｈ２は比較的に狭い。これに対して、ＯＣＶの測定値がＶ３の場合は、相対的にグラフの勾配が緩やかな領域に属するから、測定値Ｖ３に対応するＳＯＣの基準範囲Ｈ２は比較的に広くなる。なお、基準範囲Ｈ２は、ＯＣＶの測定値Ｖ２に対応するＳＯＣの値Ｘ２を含み、基準範囲Ｈ３は、ＯＣＶの測定値Ｖ３に対応するＳＯＣの値Ｘ３を含む。
【００３７】
ＣＰＵ３５は、ＯＣＶ−ＳＯＣ関係データを参照して、Ｓ４でのＯＣＶの測定値に対応する基準範囲Ｈ、より具体的には、当該基準範囲ＨのＳＯＣの最大値と最小値とを算出する。なお、メモリ３６に、予め、ＯＣＶと、基準範囲Ｈとの対応関係情報を記憶しておき、ＣＰＵ３５は、当該対応関係情報を参照して、ＯＣＶの測定値に対応する基準範囲Ｈを抽出する構成でもよい。この構成の場合、この対応関係情報も、ＯＣＶとＳＯＣとの相関関係に関する情報の一例である。
【００３８】
４．ＳＯＣ調整処理
ＣＰＵ３５は、基準範囲Ｈを設定すると、ＳＯＣ調整処理を実行する。具体的には、ＣＰＵ３５は、推定ＳＯＣの現在値が、Ｓ５で設定した基準範囲Ｈ以内にあるかどうかを判断する（Ｓ６）。ここで、上述したように、基準範囲Ｈは、ＯＣＶの測定値を中心とし、且つ、所定幅ΔＶを有するＯＣＶ範囲に対応するＳＯＣの誤差範囲である。即ち、基準範囲Ｈは、ＯＣＶによるＳＯＣ推定方法により求められたＳＯＣは、この範囲で実際のＳＯＣに対して誤差が生じ得ることを意味する。このため、推定ＳＯＣの現在値が基準範囲Ｈ以内にある場合に、仮に、推定ＳＯＣの現在値を、ＯＣＶの推定値に対応するＳＯＣにシフトさせると、却って、シフト後の推定ＳＯＣの値が、シフト前よりも実際のＳＯＣから離れてしまうおそれがある。例えば、図４に示すように、実際のＳＯＣがＸ０、推定ＳＯＣの現在値がＸ１、ＯＣＶの測定値がＶ３である場合、推定ＳＯＣの現在値を、ＯＣＶの測定値Ｖ３に対応するＳＯＣの値Ｘ３にシフトさせると、推定ＳＯＣは、シフト前よりも実際のＳＯＣから離れてしまう。
【００３９】
そこで、ＣＰＵ３５は、推定ＳＯＣの現在値が基準範囲Ｈ以内にあると判断すれば（Ｓ６：ＹＥＳ）、電流積算によるＳＯＣ推定方法による累積誤差は、ＯＣＶによるＳＯＣ推定方法による単発的な誤差に比べて小さいとみなし、推定ＳＯＣをシフトさせずに、そのまま電流積算によるＳＯＣ推定を継続し、Ｓ８に進む。一方、ＣＰＵ３５は、推定ＳＯＣの現在値が基準範囲Ｈ外にあると判断すれば（Ｓ６：ＮＯ）、電流積算によるＳＯＣ推定方法による累積誤差は、ＯＣＶによるＳＯＣ推定方法による単発的な誤差に比べて大きいとみなし、推定ＳＯＣを、基準範囲Ｈ側または基準範囲以内にシフトさせるシフト処理を実行する（Ｓ７）。
【００４０】
５．シフト処理
図５には、シフト処理を示すフローチャートが示されている。ここで、ＢＭＳ３は、図示しない設定部にて、複数のシフトパターンの中から１つのシフトパターンを設定可能とされている。なお、この設定は、電池パック１の製造段階において製造者により、電池パック１が搭載される機器の特性に応じて設定されることが好ましい。ＣＰＵ３５は、まず設定されているシフトパターンを判別し、判別したシフトパターンで推定ＳＯＣの現在値をシフトさせる。
【００４１】
図６〜図１０には、各パターンにおけるシフト前後の推定ＳＯＣの変化線（以下、ＳＯＣ変化線という）、及び、シフト線が示されている。同図中の実線Ｌ０はシフトタイミング以前のＳＯＣ変化線であり、実線Ｌ１はシフトタイミング以後のＳＯＣ変化線である。点線Ｌ２は、上記ＳＯＣ変化線Ｌ０をシフトさせた後のシフト線Ｌ２である。また、同図中の両端に矢印付きの直線は、各推定ＳＯＣに対応する基準範囲Ｈを示す。
【００４２】
ＣＰＵ３５は、Ａパターンに設定されていると判別した場合（Ｓ２１：ＹＥＳ）、図６に示すように、推定ＳＯＣを、現在値Ｘ１から、Ｓ５で設定した基準範囲Ｈの両端のうち、当該現在値Ｘ１に近い方の端の値にシフトさせる（Ｓ２２）。同図の例では、推定ＳＯＣは、基準範囲Ｈの最小値Ｘ４Ａにシフトされている。これにより、ＣＰＵ３５は、シフトタイミング以降、改めて、最小値Ｘ４Ａを初期値として、電流積算によるＳＯＣの上記推定処理を開始する。即ち、ＣＰＵ３５は、最小値Ｘ４Ａに、シフトタイミング以降の積算ＳＯＣを加算したものを、推定ＳＯＣとする。このＡパターンであれば、シフト量を最小限に抑えることにより、積算電流によるＳＯＣ推定方法による結果を極力、尊重させることができる。
【００４３】
ＣＰＵ３５は、Ｂパターンに設定されていると判別した場合（Ｓ２１：ＮＯ、且つ、Ｓ２３：ＹＥＳ）、図７に示すように、推定ＳＯＣを、現在値Ｘ１から、ＯＣＶとＳＯＣとの相関関係上、ＯＣＶの測定値に対応するＳＯＣの値Ｘ４Ｂにシフトさせる（Ｓ２４）。これにより、ＣＰＵ３５は、シフトタイミング以降、改めて、ＳＯＣの値Ｘ４Ｂを初期値として、電流積算によるＳＯＣの推定処理を開始する。このＢパターンであれば、ＯＣＶによるＳＯＣ推定方法による結果を最も尊重させることができる。
【００４４】
ＣＰＵ３５は、Ｃパターンに設定されていると判別した場合（Ｓ２１、Ｓ２３：ＮＯ、且つ、Ｓ２５：ＹＥＳ）、図８に示すように、推定ＳＯＣを、現在値Ｘ１から、Ｓ５で設定した基準範囲Ｈの中心値Ｘ４Ｃにシフトさせる（Ｓ２６）。これにより、ＣＰＵ３５は、改めて、シフトタイミング以降、中心値Ｘ４Ｃを初期値として、電流積算によるＳＯＣの推定処理を開始する。このＣパターンであれば、上記ＡパターンやＢパターンに比べて、推定ＳＯＣを実際のＳＯＣに近付けることができない可能はあるが、シフト後の推定ＳＯＣが、ＯＣＶの測定誤差により、実際のＳＯＣから大きく外れることを抑制することができる。
【００４５】
ＣＰＵ３５は、Ｄパターンに設定されていると判別した場合（Ｓ２１、Ｓ２３、Ｓ２５：ＮＯ）、シフトタイミング以前の基準時間内のＳＯＣ変化線Ｌ０が、過去に使用した基準範囲Ｈとクロスするクロス数をカウントし、そのクロス数が、シフト前よりも増加するシフト線が有るかどうかを判断する。以下、このシフト線を、増加シフト線といい、これは、特定シフト線の一例である。
【００４６】
ここで、上記基準時間は、短すぎると、推定ＳＯＣと基準範囲との比較回数、換言すれば上記クロス数が少なくなり実際のＳＯＣとの誤差が大きくなってしまうおそれがある。逆に、基準時間は、長すぎると、電流センサ３３の測定誤差を時間で積算した累積誤差によって実際のＳＯＣとの誤差が大きくなってしまうおそれがある。そこで、基準時間は、電流センサ３３の測定誤差と、その測定誤差を時間で積算した累積誤差の許容範囲とを考慮して決定することが好ましい。例えば、電流センサ３３の最大測定範囲の１時間当たりの測定誤差が±０．１％、累積誤差の許容範囲が±２０％とすると、累積誤差の許容範囲を、測定誤差で除算した結果である２００時間を、基準時間として決定する。
【００４７】
図９の例では、シフト前のＳＯＣ変化線Ｌ０のクロス数は７つであるのに対し、シフト線Ｌ２Ｄのクロス数は８つに増加しているため、シフト線Ｌ２Ｄは、増加シフト線である。なお、同図中のシフト線Ｌ２Ｄｍｉｎは、最低レベルの増加シフト線であり、シフト線Ｌ２Ｄｍａｘは、最大レベルの増加シフト線である。
【００４８】
図９の場合、ＣＰＵ３５は、増加シフト線有りと判断し（Ｓ２７：ＹＥＳ）、推定ＳＯＣを、現在値Ｘ１から、当該増加シフト線上の値にシフトさせる（Ｓ２８）。ここで、図９において、仮に、推定ＳＯＣを、基準範囲Ｈの最大値側にシフトさせると、シフト線Ｌ２は、ほとんど基準範囲Ｈから外れてしまう。そうすると、過去の推定ＳＯＣと基準範囲Ｈとの関係が全く無視され、シフト前とシフト後のＳＯＣ変化線の連続性が断たれてしまうおそれがある。これに対し、このＤパターンであれば、現在だけでなく、過去の推定ＳＯＣと基準範囲Ｈとの関係を考慮した、より正確な推定ＳＯＣを求めることができる。
【００４９】
推定ＳＯＣは、増加シフト線Ｌ２Ｄｍｉｎの右端の値Ｘ４Ｄｍｉｎから、増加シフト線Ｌ２Ｄｍａｘの右端の値Ｘ４Ｄｍａｘまでのいずれかの値にシフトさせればよい。図９の例では、推定ＳＯＣが、値Ｘ４Ｄｍｉｎと値Ｘ４Ｄｍａｘとの中心値Ｘ４Ｄにシフトされている例が示されている。
【００５０】
図１０の例では、増加シフト線はなく、シフト前のＳＯＣ変化線Ｌ０のクロス数は８つであるのに対し、シフト線Ｌ２Ｄのクロス数も８つであり、互いにクロス数が同数である。以下、このシフト数Ｌ２Ｄを、特に同シフト線といい、これは特定シフト線の一例である。なお、同図中の同シフト線Ｌ２Ｄｍｉｎは、最低レベルのシフト線であり、同シフト線Ｌ２Ｄｍａｘは、最大レベルのシフト線である。
【００５１】
図１０の場合、ＣＰＵ３５は、増加シフト線無しと判断し（Ｓ２７：ＮＯ）、推定ＳＯＣを、現在値Ｘ１から、同数パターン上、或いは、複数の同数パターンの間の値にシフトさせる（Ｓ２９）。これにより、このＤパターンであれば、現在だけでなく、過去の推定ＳＯＣと基準範囲Ｈとの関係を考慮した、より正確な推定ＳＯＣを求めることができる。
【００５２】
推定ＳＯＣは、同シフト線Ｌ２Ｄｍｉｎの右端の値Ｘ４Ｄｍｉｎから、同シフト線Ｌ２Ｄｍａｘの右端の値Ｘ４Ｄｍａｘまでのいずれかの値にシフトさせればよい。図１０の例では、推定ＳＯＣが、値Ｘ４Ｄｍｉｎと値Ｘ４Ｄｍａｘとの中心値Ｘ４Ｄにシフトされている例が示されている。
【００５３】
ＣＰＵ３５は、推定ＳＯＣを、いずれかのシフトパターンでシフトさせた後、メモリ３６に記録されている履歴情報に基づき、過去の推定ＳＯＣを結ぶＳＯＣ変化線Ｌ０を、推定ＳＯＣの現在値と同量だけシフトさせて（Ｓ３０  各図のＬ２参照）、本シフト処理を終了し、図２のＳ８に進む。
【００５４】
ＣＰＵ３５は、Ｓ８では、第２履歴記録処理を実行する。具体的には、ＣＰＵ３５は、シフト処理を実行していない場合には（Ｓ６：ＹＥＳ）、推定ＳＯＣの現在値、及び、Ｓ５で設定した基準範囲を、履歴情報としてメモリ３６に記録する。ＣＰＵ３５は、シフト処理を実行した場合には（Ｓ６：ＮＯ）、推定ＳＯＣの現在値、及び、Ｓ５で設定した基準範囲を、履歴情報としてメモリ３６に記録すると共に、履歴情報として既に記録されている過去の推定ＳＯＣを、Ｓ３０によるシフト後の推定ＳＯＣに書き換え更新する。
【００５５】
ＣＰＵ３５は、第２履歴記録処理の実行後、劣化判定処理を実行する（Ｓ９）。劣化判定処理では、ＣＰＵ３５は、メモリ３６に記憶された履歴情報に基づき、組電池２が劣化して寿命末期であるかどうかを判定する。具体的には、ＣＰＵ３５は、メモリ３６に記録されている過去の推定ＳＯＣを結ぶＳＯＣ変化線（シフト線）Ｌ２と各基準範囲Ｈとのずれ幅Ｙを累計した値が、予め定めた閾値を超える場合に、寿命末期や機器異常であると判定する。組電池２や各電池セルＣの容量減少により、実際のＯＣＶとＳＯＣとの相関関係が変化し、実際のＳＯＣの誤差範囲と、設定されている基準範囲Ｈとに相違が生じることにより、電流積算して求めた推定ＳＯＣの値が基準範囲Ｈから大きく外れることが想定される。また、組電池２の寿命だけでなく、電流センサ３３等の機器の故障や劣化により、電流積算値に大きな誤差が生まれ、推定ＳＯＣの値が基準範囲Ｈから大きく外れることが想定される。従って、上記ずれ幅Ｙの累計値を閾値と比較することにより、寿命末期等であるかどうかを判定することができる。
【００５６】
図１１には、ＯＣＶ検出条件を満たした直近１０回（Ｔ１〜Ｔ１０）分の推定ＳＯＣと基準範囲との比較等（Ｓ４〜Ｓ８）の実行過程における、メモリ３６に記録される履歴情報、及び、ＳＯＣ変化線Ｌの推移が示されている。同図の例では、２，６，７，８，１０回目にシフト処理が実行されており、各曲線Ｌは次のＳＯＣ変化線を示す。
曲線Ｌ１：２回目のシフトタイミング前のＳＯＣ変化線
曲線Ｌ２：２回目のシフトタイミング後のＳＯＣ変化線、及び、更新後の過去のＳＯＣ変化線（シフト線）
曲線Ｌ６：６回目のシフトタイミング後のＳＯＣ変化線、及び、更新後の過去のＳＯＣ変化線
曲線Ｌ７：７回目のシフトタイミング後のＳＯＣ変化線、及び、更新後の過去のＳＯＣ変化線
曲線Ｌ８：８回目のシフトタイミング後のＳＯＣ変化線、及び、更新後の過去のＳＯＣ変化線
曲線Ｌ１０は、１０回目のシフトタイミング後のＳＯＣ変化線、及び、更新後の過去のＳＯＣ変化線
【００５７】
従って、図１１の例では、Ｔ１０が現時点であるとすると、現在、メモリ３６に記録されている履歴情報は、ＳＯＣ変化線Ｌ１０上の推定ＳＯＣである。そして、このＳＯＣ変化線Ｌ１０と、各基準範囲Ｈ１〜Ｈ１０とのずれ幅Ｙの累計値は、Ｙ１＋Ｙ２＋Ｙ３＋Ｙ４＋Ｙ５＋Ｙ６＋Ｙ７であり、この累計値が閾値を超えた場合に、組電池２は寿命末期であると判定される。なお、その他の劣化判定方法としては、所定時間内におけるシフト処理の実行回数が、上限回数を超えた場合に、寿命末期であると判定する方法でもよい。更に、ＣＰＵ３５は、ＢＭＳ３の起動後、ＯＣＶ検出条件を満たした回数が所定回数（例えば２回）以内であるうちに、推定ＳＯＣが基準範囲から外れた場合には、電流センサ３３の故障であると判定する処理を行ってもよい。
【００５８】
（本実施形態の効果）
本実施形態によれば、ＯＣＶとＳＯＣとの相関関係上、電圧測定処理でのＯＣＶの測定値が属する領域における、ＳＯＣに対するＯＣＶの変化率（ＳＯＣの単位量当たりにおけるＯＣＶの変化量）が小さいほど、幅が広い基準範囲が設定される。即ち、基準範囲の幅は、ＯＣＶの測定誤差に対するＳＯＣの誤差範囲が大きいほど、広く設定される。そして、ＳＯＣ積算処理で求められた推定ＳＯＣが、基準範囲外である場合、当該推定ＳＯＣを基準範囲側にシフトさせ、推定ＳＯＣが基準範囲以内である場合、当該推定ＳＯＣをシフトさせない。これにより、推定ＳＯＣを、ＯＣＶによる方法で求めたＳＯＣにシフトさせることにより推定ＳＯＣがシフト前よりも増大してしまうことを抑制することが可能である。
【００５９】
また、ＳＯＣ調整処理では、今回を含む複数回分の推定ＳＯＣを結ぶＳＯＣ変化線と同一の線形を示し、且つ、複数回分の基準範囲とのクロス点がＳＯＣ変化線と同数以上である特定シフト線が抽出され、今回の推定ＳＯＣは、基準範囲側であって、且つ、特定シフト線側にシフトされる。これにより、単に、今回の推定ＳＯＣを、今回の基準範囲内にシフトさせる場合に比べて、過去の推定ＳＯＣと基準範囲との関係を考慮した、より正確な推定ＳＯＣを求めることができる。
【００６０】
また、特定シフト線が複数有る場合、今回の推定ＳＯＣは、クロス数が最も多い特定シフト線側にシフトされる。これにより、過去の推定ＳＯＣと基準範囲との関係を更に考慮した、より正確な推定ＳＯＣを求めることができる。
【００６１】
また、クロス数が同じ特定シフト線が複数有る場合、今回の推定ＳＯＣは、２つのシフト線の中心値にシフトされる。これにより、今回の推定ＳＯＣを各シフト線上にシフトさせる構成に比べて、シフト後の推定ＳＯＣが、実際のＳＯＣから大きくずれることを抑制することができる。
【００６２】
また、図５のＳ３０の処理により、過去の推定ＳＯＣの履歴情報に、直近の推定ＳＯＣのシフト結果を反映させることができる。
【００６３】
＜他の実施形態＞
本明細書が開示する技術は上記記述及び図面によって説明した実施形態に限定されるものではなく、例えば次のような種々の態様も本発明の技術的範囲に含まれる。特に、各実施形態の構成要素のうち、最上位の発明の構成要素以外の構成要素は、付加的な要素なので適宜省略可能である。
【００６４】
上記実施形態では、電池の一例として、組電池２を例に挙げた。しかし、電池は、これに限らず、１つの単電池からなる電池でもよく、また、二次電池以外の電池でもよい。
【００６５】
上記実施形態では、メモリの一例として、制御ユニット３１の内部に設けられたメモリ３６を例に挙げた。しかし、メモリは、これに限らず、制御ユニット３１の外部に設けられたものでもよい。
【００６６】
上記実施形態では、電池のＯＣＶを測定する測定処理の一例として、無負荷に近い状態になったときの電圧値Ｖを検出し、これをＯＣＶの現在値とした。しかし、測定処理は、これに限らず、様々な公知のＯＣＶ測定方法を利用することができる。例えば、制御ユニット３１が、組電池２の電圧値Ｖと電流値Ｉと予め求められた抵抗値とから、ＯＣＶの現在値を算出する構成でもよい。この構成であれば、組電池２が無負荷状態に近いかどうかにかかわらず、ＣＯＶの現在値を測定することが可能である。
【００６７】
上記実施形態では、制御ユニット３１は、Ｓ６で推定ＳＯＣが基準範囲Ｈ以内かどうかに基づき、シフト処理を実行するかどうかを判断した。しかし、これに限らず、制御ユニット３１は、ＯＣＶの測定値が、ＯＣＶ用基準範囲以内かどうかを判断することにより、間接的に、推定ＳＯＣが、基準範囲以内かどうかを判断してもよい。この場合、ＯＣＶ用基準範囲は、上記基準範囲とは逆に、ＯＣＶとＳＯＣとの相関関係上、電圧測定処理でのＯＣＶの測定値が属する領域における、ＳＯＣに対するＯＣＶの変化率が小さいほど、幅が狭くなる。
【００６８】
上記実施形態では、制御部の一例として、１つのＣＰＵ３５等を備える制御ユニット３１を例挙げた。しかし、制御部は、複数のＣＰＵを備える構成や、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）などのハード回路を備える構成や、ハード回路及びＣＰＵの両方を備える構成でもよい。要するに、制御部は、上記１〜５の処理を、ソフト処理またはハード回路を利用して実行するものであればよい。
【００６９】
上記実施形態では、電池管理プログラムの一例として、メモリ３６に記憶されたものを例に挙げた。しかし、電池管理プログラムは、これに限らず、ハードディスク装置、フラッシュメモリ（登録商標）などの不揮発性メモリや、ＣＤ−Ｒなどの記憶媒体などに記憶されたものでもよい。
【符号の説明】
【００７０】
１：電池パック  ２：組電池  ３：ＢＭＳ  ３１：制御ユニット  ３３：電流センサ  ３４：電圧センサ  ３６：メモリ
【図１】
0005699870.tif 000002
【図２】
0005699870.tif 000003
【図３】
0005699870.tif 000004
【図４】
0005699870.tif 000005
【図５】
0005699870.tif 000006
【図６】
0005699870.tif 000007
【図７】
0005699870.tif 000008
【図８】
0005699870.tif 000009
【図９】
0005699870.tif 000010
【図１０】
0005699870.tif 000011
【図１１】
0005699870.tif 000012