(57)【特許請求の範囲】
【請求項１】
ニッケル水素電池と、
前記ニッケル水素電池のメモリ効果による電圧変化量を示すメモリ量を推定する推定装置とを備え、
前記推定装置は、前記ニッケル水素電池の使用開始時からの経過時間と前記メモリ量との対応関係を示すデータを記憶し、
前記データは、前記ニッケル水素電池の開放電圧と温度とを含んで定義された使用条件毎に区分して定められ、
前記推定装置は、
記憶されたデータを参照して、前記使用条件の区分が変化しない時間内でのメモリ量を算出するとともに、前記使用条件の区分が変化すると、変化後の区分が持続する時間内でのメモリ量を算出し、
前記使用条件の区分が変化しない時間内でのメモリ量と変化後の区分が持続する時間内でのメモリ量とを積算することによって前記ニッケル水素電池の現在のメモリ量を推定する、電池システム。
【請求項２】
前記推定装置は、前記メモリ量の積算値を示す積算メモリ量を推定する積算メモリ量推定処理を繰り返し実行するように構成され、
前記積算メモリ量推定処理は、所定期間中の前記使用条件に対応するデータを参照して前記所定期間の開始時までの積算メモリ量と前記所定期間中の使用条件とから前記所定期間中に生じたメモリ量を算出し、算出されたメモリ量を前記所定期間の開始時までの積算メモリ量に加算する処理である、請求項１に記載の電池システム。
【請求項３】
前記データは、前記経過時間の累乗根と前記メモリ量の発生速度との対応関係を示すデータであり、
前記累乗根の指数は、前記経過時間の累乗根に対して前記発生速度が一定になるように定められ、
前記推定装置は、所定期間中の前記使用条件に対応するデータを参照して前記所定期間中における前記発生速度を算出し、算出された発生速度と前記所定期間の累乗根との積を前記所定期間中に生じたメモリ量として算出し、算出されたメモリ量を前記所定期間の開始時までのメモリ量に加算することによって前記所定期間の終了時におけるメモリ量を算出する、請求項１に記載の電池システム。
【請求項４】
前記推定装置は、
前記電池システムの停止時刻における第１の使用条件と、前記電池システムの起動時刻における第２の使用条件とを取得し、
前記停止時刻から前記起動時刻までの前記電池システムの停止期間中の使用条件を、前記第１および第２の使用条件を用いて前記電池システムの起動後に補完し、
補完された使用条件に対応するデータを参照することによって、前記停止期間中に生じたメモリ量を算出する、請求項１に記載の電池システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は電池システムに関し、より特定的には、ニッケル水素電池のメモリ効果による電圧変化量を推定するための技術に関する。
【背景技術】
【０００２】
ニッケル水素電池においてメモリ効果が生じることが知られている。メモリ効果とは、ニッケル水素電池に蓄えられた電力が完全に消費されていない状態での充電（いわゆる継ぎ足し充電）が繰り返された場合に、ニッケル水素電池の放電電圧が正常時（メモリ効果が生じていないとき）と比べて低くなる現象である。メモリ効果はニッケル水素電池の充電側においても生じる可能性があり、充電側においては充電電圧が正常時と比べて高くなる。
【０００３】
ニッケル水素電池のメモリ効果による電圧変化量（以下「メモリ量」とも称する）を推定するための技術が提案されている。メモリ量を推定することによって、たとえばニッケル水素電池の充電状態（ＳＯＣ：State  Of  Charge）の推定精度を向上させることが可能になるためである。たとえば特開２００７−３３３４４７号公報（特許文献１）は、ニッケル水素電池の開放電圧に基づいてニッケル水素電池の起電力を算出し、算出された起電力とＳＯＣとの関係を用いて起電力からＳＯＣを推定する充電状態推定装置を開示する。特許文献１に開示された充電状態推定装置では、ＳＯＣの推定に先立ちメモリ量に応じて開放電圧を補正することによってＳＯＣの推定精度を向上させる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−３３３４４７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に開示された充電状態推定装置では、上述のように、ＳＯＣ推定に際してメモリ量が考慮される。より詳細に説明すると、メモリ効果による電圧変化に対応して変化するパラメータとメモリ量との関係を規定したマップが予め準備され、このマップを用いてメモリ量が算出される。特許文献１には上記パラメータとして、ニッケル水素電池に充放電された総電気量、ニッケル水素電池が搭載された車両の総走行距離、およびニッケル水素電池の総充放電時間が記載されている。
【０００６】
特許文献１に開示された上記パラメータは、いずれも現在までの積算結果を示すものである。そのため、現在までの積算結果が同じであれば、ニッケル水素電池の使用期間中の条件にかかわらず、現在のメモリ量も同じになることになる。しかしながら、メモリ効果は使用期間中の条件に依存し得るものであり、特許文献１に開示の技術ではメモリ量の推定精度に改善の余地が存在する。
【０００７】
本発明は上記課題を解決するためになされたものであり、その目的は、ニッケル水素電池のメモリ量の推定精度を向上させるための技術を提供することである。
【課題を解決するための手段】
【０００８】
本発明のある局面に従う電池システムは、ニッケル水素電池と、ニッケル水素電池のメモリ効果による電圧変化量を示すメモリ量を推定する推定装置とを備える。推定装置は、ニッケル水素電池の使用開始時からの経過時間とメモリ量との対応関係を示すデータを記憶する。データは、ニッケル水素電池の開放電圧と温度とを含んで定義された使用条件毎に区分して定められる。推定装置は、記憶されたデータを参照して使用条件の区分が変化しない時間内でのメモリ量を逐次算出するとともに、算出されたメモリ量を積算することによってニッケル水素電池の現在のメモリ量を推定する。
【０００９】
好ましくは、推定装置は、メモリ量の積算値を示す積算メモリ量を推定する積算メモリ量推定処理を繰り返し実行するように構成される。積算メモリ量推定処理は、所定期間中の使用条件に対応するデータを参照して所定期間の開始時までの積算メモリ量と所定期間中の使用条件とから所定期間中に生じたメモリ量を算出し、算出されたメモリ量を所定期間の開始時までの積算メモリ量に加算する処理である。
【００１０】
本発明者らの実験結果（後述）によれば所定期間中に生じたメモリ量を決定する主要因がニッケル水素電池の開放電圧と温度とであるところ、上記構成によれば、推定装置には、ニッケル水素電池の使用開始時からの経過時間とメモリ量との対応関係を示すデータが、ニッケル水素電池の開放電圧と温度とを含んで定義された使用条件毎に記憶されている。したがって、推定装置は、ニッケル水素電池の使用条件に対応するデータを参照することにより、使用条件の区分が変化しない時間内でのメモリ量を高精度に算出することができる。さらに、このようにして高精度に算出されたメモリ量を積算することによって、ニッケル水素電池の現在のメモリ量についても高精度に推定することができる。
【００１１】
好ましくは、データは、上記経過時間の累乗根とメモリ量の発生速度との対応関係を示すデータである。累乗根の指数は、経過時間の累乗根に対して発生速度が一定になるように定められる。推定装置は、所定期間中の使用条件に対応するデータを参照して所定期間中における発生速度を算出し、算出された発生速度と所定期間の累乗根との積を所定期間中に生じたメモリ量として算出し、算出されたメモリ量を所定期間の開始時までのメモリ量に加算することによって所定期間の終了時におけるメモリ量を算出する。
【００１２】
上記構成によれば、上記経過時間とメモリ量との対応関係を示すデータにおいて、経過時間の累乗根に対してメモリ量の発生速度が一定になるように累乗根の指数（経過時間のｎ乗根におけるｎ）が定められる。このことは、経過時間とメモリ量との対応関係を示すデータにおける時間軸を、一般的な通常目盛りに代えて累乗根目盛りとすることによって、上記データを曲線から直線へと変換することに相当する（後述する図１１（Ａ），（Ｂ）参照）。これにより、推定装置には、曲線の形状に代えて直線の傾きを記憶させればよくなるので、データサイズを低減することができる。さらに、曲線を用いる場合には曲線のうちの参照すべき箇所を決定するための演算処理が必要であるところ、直線を用いることによって、そのような演算処理が不要になる。これにより、積算メモリ量を逐次更新しなくてもよくなり、積算メモリ量を任意のタイミングで算出することが可能になる（詳細は図面を参照しながら後述）。
【００１３】
好ましくは、推定装置は、電池システムの停止時点における第１の使用条件と、電池システムの起動時点における第２の使用条件とを取得し、停止時点から起動時点までの電池システムの停止期間中の使用条件を、第１および第２の使用条件を用いて電池システムの起動後に補完する。推定装置は、補完された使用条件に対応するデータを参照することによって、停止期間中に生じたメモリ量を算出する。
【００１４】
上記構成によれば、電池システムの停止期間中に生じたメモリ量についても考慮することで、現在のメモリ量の推定精度を向上させることができる。さらに、電池システムの起動後に停止期間中のメモリ量を算出することにより、停止期間中には推定装置を停止させることが可能になるので、停止期間中における推定装置の消費電力を低減することができる。
【発明の効果】
【００１５】
本発明によれば、ニッケル水素電池のメモリ量の推定精度を向上させることができる。
【図面の簡単な説明】
【００１６】
【図１】実施の形態１に係る電池システムが搭載された車両の全体構成を概略的に示すブロック図である。
【図２】セルの構成を示す図である。
【図３】発明者らが実施した３種類の試験結果を説明するための図である。
【図４】各使用条件下での経過時間とメモリ量との対応関係を示すタイムチャートである。
【図５】実施の形態１におけるメモリ量推定処理を説明するためのタイムチャートである。
【図６】実施の形態１におけるＥＣＵの機能ブロック図である。
【図７】実施の形態１においてメモリ量算出部に記憶されるマップの概念図である。
【図８】実施の形態１における積算メモリ量推定処理を示すフローチャートである。
【図９】ＩＧ−ＯＦＦ期間中に生じた積算メモリ量の推定処理を説明するためのタイムチャートである。
【図１０】ＩＧ−ＯＦＦ期間中に生じた積算メモリ量の推定処理を示すフローチャートである。
【図１１】実施の形態１と実施の形態２とを対比して説明するための図である。
【図１２】実施の形態２におけるマップの概念図である。
【図１３】期間算出処理を説明するための図である。
【図１４】実施の形態２における積算メモリ量推定処理を説明するための図である。
【図１５】実施の形態２におけるＥＣＵの機能ブロック図である。
【図１６】期間算出処理を示すフローチャートである。
【図１７】実施の形態２における積算メモリ量推定処理を示すフローチャートである。
【図１８】実施の形態２の変形例における積算メモリ量推定処理を説明するための図である。
【図１９】実施の形態２の変形例における積算メモリ量推定処理を示すフローチャートである。
【発明を実施するための形態】
【００１７】
以下、本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中同一または相当部分には同一符号を付してその説明は繰り返さない。
【００１８】
以下では、本発明の実施の形態１に係る電池システムが車両に搭載される構成を例に説明する。しかし、電池システムの用途は車両用に限定されるものではなく、定置用であってもよい。
【００１９】
［実施の形態１］
＜電池システムの構成＞
図１は、実施の形態１に係る電池システムが搭載された車両の全体構成を概略的に示すブロック図である。車両１は、ハイブリッド自動車、電気自動車または燃料自動車であって、モータジェネレータ（ＭＧ：Motor  Generator）１０と、動力伝達ギア２０と、駆動輪３０と、電力制御ユニット（ＰＣＵ：Power  Control  Unit）４０と、システムメインリレー（ＳＭＲ：System  Main  Relay）５０と、電池システム２とを備える。電池システム２は、バッテリ１００と、電圧センサ２１０と、電流センサ２２０と、温度センサ２３０と、電子制御ユニット（ＥＣＵ：Electronic  Control  Unit）３００とを備える。
【００２０】
モータジェネレータ１０は、たとえば三相交流回転電機である。モータジェネレータ１０の出力トルクは、減速機および動力分割機構を含んで構成された動力伝達ギア２０を介して駆動輪３０に伝達される。モータジェネレータ１０は、車両１の回生制動動作時には、駆動輪３０の回転力によって発電することも可能である。モータジェネレータ１０に加えてエンジン（図示せず）が搭載されたハイブリッド自動車では、エンジンおよびモータジェネレータ１０を協調的に動作させることによって必要な車両駆動力を発生させる。なお、図１ではモータジェネレータが１つだけ設けられる構成が示されるが、モータジェネレータの数はこれに限定されず、モータジェネレータを複数（たとえば２つ）設ける構成としてもよい。
【００２１】
ＰＣＵ４０は、いずれも図示しないが、インバータとコンバータとを含む。バッテリ１００の放電時には、コンバータは、バッテリ１００から供給された電圧を昇圧してインバータに供給する。インバータは、コンバータから供給された直流電力を交流電力に変換してモータジェネレータ１０を駆動する。一方、バッテリ１００の充電時には、インバータは、モータジェネレータ１０によって発電された交流電力を直流電力に変換してコンバータに供給する。コンバータは、インバータから供給された電圧を降圧してバッテリ１００に供給する。
【００２２】
ＳＭＲ５０は、バッテリ１００とＰＣＵ４０とを結ぶ電流経路に電気的に接続されている。ＳＭＲ５０がＥＣＵ３００からの制御信号に応じて閉成されている場合、バッテリ１００とＰＣＵ４０との間で電力の授受が行なわれ得る。
【００２３】
バッテリ１００は、再充電が可能に構成された直流電源であり、本実施の形態ではニッケル水素電池を含んで構成される。バッテリ１００に含まれる各セル１１０の詳細な構成については図２にて説明する。
【００２４】
電圧センサ２１０は、バッテリ１００の電圧Ｖｂを検出する。電流センサ２２０は、バッテリ１００に入出力される電流Ｉｂを検出する。温度センサ２３０は、バッテリ１００の温度Ｔｂを検出する。各センサは、その検出結果をＥＣＵ３００に出力する。
【００２５】
ＥＣＵ３００は、ＣＰＵ（Central  Processing  Unit）３０１と、メモリ（ＲＯＭ（Read  Only  Memory）およびＲＡＭ（Random  Access  Memory））３０２と、タイマ３０３と、入出力バッファ（図示せず）と等を含んで構成される。ＥＣＵ３００は、各センサから受ける信号、ならびにメモリ３０２に記憶されたマップおよびプログラムに基づいて、車両１および電池システム２が所望の状態となるように各機器を制御する。ＥＣＵ３００により実行される主要な処理として、バッテリ１００に生じたメモリ効果による電圧変化量の推定処理が挙げられるが、この処理については後述する。
【００２６】
図２は、セル１１０の構成を示す図である。バッテリ１００に含まれる各セル１１０の構成は共通であるため、図２では１つのセル１１０のみを代表的に示す。セル１１０は、たとえば角形密閉式のセルであり、ケース１２０と、ケース１２０に設けられた安全弁１３０と、ケース１２０内に収容された電極体１４０および電解液（図示せず）とを含む。なお、図２ではケース１２０の一部を透視して電極体１４０を示している。
【００２７】
ケース１２０は、いずれも金属からなるケース本体１２１および蓋体１２２を含み、蓋体１２２がケース本体１２１の開口部上で全周溶接されることにより密閉されている。安全弁１３０は、ケース１２０内部の圧力が所定値を超えると、ケース１２０内部のガス（水素ガス等）の一部を外部に排出する。
【００２８】
電極体１４０は、正極板と、負極板と、セパレータとを含む。正極板は袋状のセパレータ内に挿入されており、セパレータ内に挿入された正極板と、負極板とが交互に積層されている。正極板および負極板は、図示しない正極端子および負極端子にそれぞれ電気的に接続されている。
【００２９】
電極体１４０および電解液の材料としては従来公知の各種材料を用いることができる。本実施の形態においては、一例として、正極板には、水酸化ニッケル（Ｎｉ（ＯＨ）２またはＮｉＯＯＨ）を含む正極活物質層と、発泡ニッケルなどの活物質支持体とを含む電極板が用いられる。負極板には、水素吸蔵合金を含む電極板が用いられる。セパレータには、親水化処理された合成繊維からなる不織布が用いられる。電解液には、水酸化カリウム（ＫＯＨ）または水酸化ナトリウム（ＮａＯＨ）を含むアルカリ水溶液が用いられる。
【００３０】
＜バッテリのメモリ効果＞
以上のように構成された電池システム２において、バッテリ１００のメモリ効果による電圧変化量（電圧降下量または電圧上昇量）を示す「メモリ量」を高精度に推定することが求められる。
【００３１】
本発明者らは、後述する３種類の実験結果から、メモリ量の大きさを定める主要因として、バッテリ１００の電圧Ｖｂ（より詳細には開放電圧）および温度Ｔｂに関する条件に着目した。以下では、バッテリ１００の開放電圧（ＯＣＶ：Open  Circuit  Voltage）と温度Ｔｂとの組合せを含んで定義される条件をバッテリ１００の「使用条件」とも称する。さらに、本発明者らは、ある期間中に生じたメモリ量を推定する際には、その期間以前のバッテリ１００の「使用条件」については考慮しなくてよいことに着目した（後述）。これらの知見に基づいて、実施の形態１においては、所定期間中に生じたメモリ量を逐次積算することによって、その積算値である総量としてのメモリ量（以下「積算メモリ量」とも称する）を推定する構成を採用する。このような手法を採用することにより、実験結果またはシミュレーション結果を用いて所定期間中のメモリ量を高精度に推定することができれば、その積算メモリ量についても高精度に推定することが可能になるためである。以下、この手法について詳細に説明する。
【００３２】
図３は、本発明者らが実施した３種類の実験結果を説明するための図である。図３（Ａ）に示すように、３種類の実験とは、バッテリ１００の定電圧試験、放置試験およびサイクル試験である。
【００３３】
定電圧試験とは、所定期間（図３に示す例では数日間）、図示しない外部電源を用いてバッテリ１００外部からバッテリ１００に電圧を印加することによってバッテリ１００の電圧Ｖｂを一定に保持する試験である。放置試験とは、外部電源による電圧印加を行なうことなく所定期間、バッテリ１００を放置する試験である。放置試験ではバッテリ１００の自己放電によるＳＯＣ低下の影響が現れるのに対し、定電圧試験では自己放電によるＳＯＣ低下の影響が現れない。したがって、これらの試験結果を比較することによって、バッテリ１００の自己放電がメモリ量に与える影響の大きさを求めることができる。
【００３４】
サイクル試験とは、所定期間、所定のＳＯＣ幅でバッテリ１００の充放電を繰り返し行なう試験である。充放電電流の大きさが互いに異なる複数のサイクル試験の結果を比較することによって、充放電電流がメモリ量に与える影響の大きさを求めることができる。
【００３５】
バッテリ１００の温度ＴｂがＴ１（室温）の場合と、温度ＴｂがＴ１よりも高いＴ２（高温）の場合とで、いずれも等しい期間（上記所定期間）に亘って３種類の試験を実施した結果を図３（Ｂ）に示す。白い正方形のマーカは温度Ｔ１における定電圧試験結果を示し、白い円形のマーカは温度Ｔ１における放置試験結果を示し、白い菱形のマーカは温度Ｔ１におけるサイクル試験結果を示す。黒い正方形のマーカは温度Ｔ２における定電圧試験結果を示し、黒い円形のマーカは温度Ｔ２における放置試験結果を示し、黒い菱形のマーカは温度Ｔ２におけるサイクル試験結果を示す。
【００３６】
図３（Ｂ）において、横軸は各セル１１０のＯＣＶを表し、縦軸はメモリ量（ここでは放電時の電圧低下量）Ｍを表す。図３（Ｂ）に示すように、ＯＣＶが所定範囲内の場合にメモリ量Ｍが特に大きい。また、バッテリ１００（各セル１１０）の温度Ｔｂが高いほどメモリ量Ｍが大きくなる。これらの結果から、バッテリ１００のＯＣＶと温度Ｔｂとの組合せにより定義される使用条件（ＯＣＶ，Ｔｂ）に応じて、所定期間中に生じたメモリ量が定まることが分かる。
【００３７】
その一方で、各温度Ｔ１，Ｔ２において、定電圧試験結果（正方形のマーカ参照）と放置試験結果（円形のマーカ参照）とは互いに近い箇所にプロットされる。このことから、バッテリ１００の自己放電がメモリ量に与える影響が相対的に小さいことが分かる。さらに、サイクル試験結果（菱形マーカ参照）も他の２つの試験結果（正方形および円形のマーカ参照）に近い箇所にプロットされる。このことから、バッテリ１００の充放電電流についてもメモリ量に与える影響が比較的小さいことが分かる。
【００３８】
なお、ＯＣＶとＳＯＣとの間には相関関係が存在するので、ＯＣＶに代えてＳＯＣを横軸に用いた場合でも図３（Ｂ）と同様の結果が得られる。また、図３では放電側のメモリ効果について代表的に説明したが、電圧変化量の符号が異なるものの、充電側のメモリ効果についても使用条件（ＯＣＶ，Ｔｂ）によってメモリ量を定義することができる。
【００３９】
図３に一例を示した実験を様々な使用条件（ＯＣＶ，Ｔｂ）下で行なうことによって、バッテリ１００の使用開始時からの時間の経過とともに生じるメモリ量を使用条件（ＯＣＶ，Ｔｂ）に応じて推定することが可能になる。
【００４０】
図４は、各使用条件下での経過時間とメモリ量との対応関係を示すタイムチャートである。図４において、横軸はバッテリ１００の使用開始時からの経過時間を表し、縦軸はメモリ量を表す。なお、バッテリ１００の使用開始時（経過時間の初期値）は、バッテリ１００の製造時であってもよいし、バッテリ１００のリフレッシュ充放電時（バッテリ１００に生じたメモリ効果を解消するための充電時または放電時）であってもよい。
【００４１】
上述の実験を使用条件毎に実施することにより、図４に示すように、時間経過に伴うメモリ量の増加を示す曲線を使用条件毎に取得することができる。なお、図４および後述する図５では、理解を容易にするため、３種類の使用条件Ｐ〜Ｒにそれぞれ対応する曲線ＣＰ〜ＣＲが取得される例について説明するが、実際にはより多くの使用条件について同様の曲線が取得される。
【００４２】
＜積算メモリ量推定処理＞
使用条件Ｐ〜Ｒ下で生じたメモリ量を曲線ＣＰ〜ＣＲを参照することでそれぞれ算出し、算出されたメモリ量を積算する処理を繰り返し実行することによって「積算メモリ量」を推定することができる。この処理を「積算メモリ量推定処理」とも称し、以下に詳細に説明する。
【００４３】
図５は、実施の形態１における積算メモリ量推定処理を説明するためのタイムチャートである。図５（Ａ）において、横軸はバッテリ１００の使用開始時からの経過時間を表し、縦軸は使用条件を表す。図５（Ａ）では、所定期間Δｔ毎に使用条件が判定され、使用条件がＰ，Ｑ，Ｒの順に変化する場合について説明する。使用条件Ｐ，Ｑ，Ｒ下での期間をＬＰ，ＬＱ，ＬＲでそれぞれ示す。
【００４４】
図５（Ｂ）において、横軸はバッテリ１００の使用開始時からの経過時間を表し、縦軸はメモリ量を表す。まず、使用条件Ｐ下では、曲線ＣＰを参照して所定期間Δｔ毎にメモリ量Ｍを逐次積算する。その結果、使用条件Ｐ下で期間ＬＰが経過する間に生じたメモリ量はＭＰになる。メモリ量Ｍの積算結果を「積算メモリ量ΣＭ」と記載すると、期間ＬＰが経過したときの積算メモリ量ΣＭはＭＰである。
【００４５】
次に、使用条件がＰからＱへと変化すると、積算メモリ量ΣＭ＝ＭＰに対応する曲線ＣＱ（図４に示した曲線ＣＱを時間軸方向にＬＰだけ平行移動した曲線）上の点から曲線ＣＱを参照して、所定期間Δｔ毎にメモリ量Ｍを逐次積算する。使用条件Ｑ下で期間ＬＱが経過する間に生じたメモリ量がＭＱである場合、期間ＬＱが経過したときの積算メモリ量ΣＭは、ＭＰとＭＱとの和（ＭＰ＋ＭＱ）である。
【００４６】
さらに、使用条件がＱからＲへと変化すると、積算メモリ量ΣＭ＝（ＭＰ＋ＭＱ）に対応する曲線ＣＲ（図４に示した曲線ＣＲを時間軸方向に（ＬＰ＋ＬＱ）だけ平行移動した曲線）上の点から曲線ＣＲを参照して、所定期間Δｔ毎にメモリ量Ｍを逐次積算する。使用条件Ｒ下で期間ＬＲが経過する間に生じたメモリ量がＭＲである場合、全期間（ＬＰ＋ＬＱ＋ＬＲの期間）に生じた積算メモリ量ΣＭは、ＭＰとＭＱとＭＲとの和（ＭＰ＋ＭＱ＋ＭＲ）である。
【００４７】
このように、本実施の形態では、使用条件の変化に伴い異なる曲線へと移行して積算メモリ量ΣＭを算出する際に、移行前の曲線に従って算出された積算メモリ量ΣＭの引き継が可能であることを前提としている。すなわち、ある曲線に従って積算メモリ量ΣＭが所定値に達した場合と、他の曲線に従って積算メモリ量ΣＭと上記所定値に達した場合とでは、メモリ効果に影響を与えるバッテリ１００の状態（主に正極活物質層の状態）が互いに等しいとの電気化学的知見を前提としている。
【００４８】
以上のように、実施の形態１では、所定期間Δｔ毎に使用条件Ｐ〜Ｒに応じたメモリ量Ｍを算出し、算出されたメモリ量Ｍを遂次積算する処理を繰り返し実行することによって、全期間にわたって生じた積算メモリ量ΣＭを算出することができる。
【００４９】
上記の内容は漸化式を用いて説明することができる。すなわち、下記式（１）に示すように、Ｎ回目の積算処理での積算メモリ量ΣＭ（Ｎ）は、（Ｎ−１）回目の積算処理までの積算メモリ量ΣＭ（Ｎ−１）に、（Ｎ−１）回目の積算処理時からＮ回目の積算処理時までの間（所定期間Δｔの間）の使用条件に応じたメモリ量Ｍ（Ｎ）を加算することによって算出することができる。なお、Ｎは自然数である。
ΣＭ（Ｎ）＝ΣＭ（Ｎ−１）＋Ｍ（Ｎ）                              ・・・（１）
【００５０】
図６は、実施の形態１におけるＥＣＵ３００の機能ブロック図である。ＥＣＵ３００は、ＯＣＶ算出部３１０と、記憶部３２０と、メモリ量算出部３３０と、積算メモリ量算出部３４０と、制御部３５０とを含む。図６では、Ｎ回目の積算処理における各機能ブロックの機能について説明する。
【００５１】
ＯＣＶ算出部３１０は、電圧センサ２１０、電流センサ２２０および温度センサ２３０からバッテリ１００の電圧Ｖｂ（Ｎ）、電流Ｉｂ（Ｎ）および温度Ｔｂ（Ｎ）をそれぞれ受ける。ＯＣＶ算出部３１０は、電圧Ｖｂ（Ｎ）から電圧降下量（電流Ｉｂ（Ｎ）とバッテリ１００の内部抵抗Ｒとの積）を減算してバッテリ１００のＯＣＶ（Ｎ）を算出し、ＯＣＶ（Ｎ）および温度Ｔｂ（Ｎ）をメモリ量算出部３３０に出力する。
【００５２】
記憶部３２０は、（Ｎ−１）回目の積算処理時に算出された積算メモリ量ΣＭ（Ｎ−１）を記憶している。記憶部３２０は、積算メモリ量ΣＭ（Ｎ−１）をメモリ量算出部３３０に出力するとともに、積算メモリ量ΣＭ（Ｎ−１）を積算メモリ量算出部３４０に出力する。
【００５３】
メモリ量算出部３３０は、以下で説明するマップＭＰ１を記憶している。メモリ量算出部３３０は、（Ｎ−１）回目の積算処理時からＮ回目の積算処理時までの間（所定期間Δｔの間）の使用条件（Ｎ回目の積算処理時の使用条件）としてＯＣＶ算出部３１０からＯＣＶ（Ｎ）および温度Ｔｂ（Ｎ）を受けると、マップＭＰ１を参照する。
【００５４】
図７は、実施の形態１においてメモリ量算出部３３０に記憶されるマップＭＰ１の概念図である。マップＭＰ１では、バッテリ１００のＯＣＶと温度Ｔｂとの組合せにより定義される使用条件（ＯＣＶ，Ｔｂ）毎に経過時間とメモリ量との対応関係を示すデータ（図４および図５の曲線ＣＰ〜ＣＲ参照）が規定されている。したがって、図４にて説明したように、ＥＣＵ３００は、Ｎ回目の積算処理時の使用条件に応じた曲線を参照することによって、（Ｎ−１）回目の積算処理時からＮ回目の積算処理時までの間に新たに生じたメモリ量Ｍ（Ｎ）を算出することができる。
【００５５】
マップＭＰ１内の使用条件数が多いことは、図３にて説明した実験をより多くのＯＣＶ条件および温度Ｔｂ条件下で実施して得られた結果をマップＭＰ１に反映させることができることを意味するので、メモリ量Ｍの推定精度が向上し得る。その一方で、マップＭＰ１はＥＣＵ３００のメモリ３０２に記憶されるところ、使用条件数が多くなるほどマップサイズ（マップＭＰ１のデータ量）が大きくなるので、メモリ３０２に必要な容量が大きくなるとともにＣＰＵ３０１の演算負荷が大きくなり得る。したがって、マップＭＰ１内の使用条件数は、メモリ量Ｍの推定精度とＥＣＵ３００の処理能力とのバランスを考慮した上で決定することが望ましい。
【００５６】
なお、各使用条件下での経過時間とメモリ量との対応関係を示す曲線は本発明に係る「使用条件に対応するデータ」に相当するが、「使用条件に対応するデータ」を規定するための手法はマップに限定されず、関数（関係式）であってもよい。また、図３にて説明したように３種類の実験からは同等の結果が得られるので、マップＭＰ１を準備するためにすべての実験を実施することは必須ではなく、いずれか１つまたは２つの実験を実施してマップＭＰ１を準備することも可能である。
【００５７】
図６に戻り、時間経過に伴うメモリ量の増加は曲線で表される（図５（Ｂ）の曲線ＣＰ〜ＣＲ参照）。よって、Ｎ回目の積算処理に新たに生じたメモリ量Ｍ（Ｎ）を上記曲線を参照することによって算出する際には、曲線のうちの参照すべき箇所を決定するために、（Ｎ−１）回目の積算処理時までの積算メモリ量ΣＭ（Ｎ−１）の情報が必要になる。メモリ量算出部３３０は、Ｎ回目の積算処理時の使用条件に応じた曲線をマップＭＰ１から参照して、Ｎ回目の積算処理時のＯＣＶ（Ｎ）および温度Ｔｂと（Ｎ−１）回目の積算処理時までの積算メモリ量ΣＭ（Ｎ−１）とからメモリ量Ｍ（Ｎ）を算出し、算出されたメモリ量Ｍ（Ｎ）を積算メモリ量算出部３４０に出力する。
【００５８】
積算メモリ量算出部３４０は、メモリ量算出部３３０からＮ回目の積算処理時のメモリ量Ｍ（Ｎ）を受けるとともに、記憶部３２０から（Ｎ−１）回目の積算処理時までの積算メモリ量ΣＭ（Ｎ−１）を受ける。積算メモリ量算出部３４０は、積算メモリ量ΣＭ（Ｎ−１）にメモリ量Ｍ（Ｎ）を加算することによって積算メモリ量ΣＭ（Ｎ）を算出し（上記式（１）参照）、算出された積算メモリ量ΣＭ（Ｎ）を制御部３５０に出力する。また、積算メモリ量算出部３４０は、積算メモリ量ΣＭ（Ｎ）を記憶部３２０に出力して記憶部３２０に記憶させる。
【００５９】
制御部３５０は、積算メモリ量算出部３４０からの積算メモリ量ΣＭ（Ｎ）に基づいてバッテリ１００への充放電指令を出力する。たとえば、制御部３５０は、積算メモリ量ΣＭ（Ｎ）の絶対値が基準値以上になることを含む所定条件が成立した場合に、バッテリ１００に生じたメモリ効果を解消するためにリフレッシュ充電指令またはリフレッシュ放電指令を出力する。
【００６０】
＜積算メモリ量推定処理フロー＞
図８は、実施の形態１における積算メモリ量推定処理を示すフローチャートである。図８ならびに後述する図１０、図１６、図１７および図１９に示すフローチャートの処理は、所定周期毎または所定条件が成立する度にメインルーチン（図示せず）から呼び出されて実行される。これらのフローチャートに含まれる各ステップ（以下「Ｓ」と略す）は、基本的にはＥＣＵ３００によるソフトウェア処理によって実現されるが、その一部または全部がＥＣＵ３００内に作製されたハードウェア（電気回路）によって実現されてもよい。
【００６１】
図８に示すフローチャートの処理が繰り返し実行されることにより、積算メモリ量ΣＭが順次更新される。このフローチャートはＮ回目の積算処理を示し、（Ｎ−１）回目（前回）の積算処理時までの積算メモリ量ΣＭ（Ｎ−１）がメモリ３０２に記憶されている。
【００６２】
Ｓ１１０において、ＥＣＵ３００は、（Ｎ−１）回目の積算処理時までの積算メモリ量ΣＭ（Ｎ−１）をメモリ３０２から読み出す。
【００６３】
Ｓ１２０において、ＥＣＵ３００は、電圧センサ２１０および電流センサ２２０を用いてバッテリ１００の電圧Ｖｂ（Ｎ）および電流Ｉｂ（Ｎ）を取得し、電圧Ｖｂ（Ｎ）から充放電電流による電圧降下量（Ｉｂ（Ｎ）×Ｒ）を減算してＯＣＶ（Ｎ）を算出する。
【００６４】
Ｓ１３０において、ＥＣＵ３００は、温度センサ２３０を用いてバッテリ１００の温度Ｔｂ（Ｎ）を取得する。これにより、マップＭＰ１（図７参照）において参照すべき使用条件（ＯＣＶ（Ｎ）と温度Ｔｂ（Ｎ）との組合せ）が決定される。
【００６５】
Ｓ１４０において、ＥＣＵ３００は、所定期間Δｔが経過するまで待機する。メモリ量Ｍを適切に算出するためには、所定期間Δｔだけ待機している間に使用条件の区分が変化しないことが求められる。よって、所定期間Δｔは、待機中に使用条件の区分が変化しない時間に定めることが好ましい。
【００６６】
Ｓ１５０において、ＥＣＵ３００は、メモリ３０２に記憶されたマップＭＰ１（図７参照）から使用条件（ＯＣＶ（Ｎ），Ｔｂ（Ｎ））に対応する曲線を参照して、所定期間Δｔに生じたメモリ量Ｍ（Ｎ）を算出する。この処理については図５（Ｂ）にて詳細に説明したため、説明は繰り返さない。
【００６７】
Ｓ１６０において、ＥＣＵ３００は、Ｓ１１０にて読み出した（Ｎ−１）回目の積算処理までの積算メモリ量ΣＭ（Ｎ−１）にＳ１５０にて算出されたメモリ量Ｍ（Ｎ）を加算することによって、Ｎ回目の積算処理までの積算メモリ量ΣＭ（Ｎ）を算出する（上記式（１）参照）。なお、車両１の出荷時には積算メモリ量の初期値ΣＭ（０）が、たとえば０に設定される。また、バッテリ１００のリフレッシュ充放電の実施後にも積算メモリ量の初期値ΣＭ（０）を０に設定してもよい。
【００６８】
Ｓ１７０において、ＥＣＵ３００は、図８に示すフローチャートが次回呼び出された場合に備えて、Ｓ１６０にて算出された積算メモリ量ΣＭ（Ｎ）をメモリ３０２に記憶する。
【００６９】
以上のように、実施の形態１によれば、本発明者らの実験結果に基づいて予め準備されたマップＭＰ１内の曲線（ＣＰ〜ＣＲ等）を用いて、所定期間Δｔ毎に生じたメモリ量Ｍがバッテリ１００の使用条件（ＯＣＶおよび温度Ｔｂ）に応じて算出される。使用条件に上記パラメータを採用することにより、所定期間Δｔ毎のメモリ量Ｍを高精度に推定することができる。さらに、実施の形態１によれば、上記曲線間で積算メモリ量ΣＭを引き継ぐことが可能であるとの電気化学的知見の下、高精度に算出されたメモリ量Ｍを逐次積算することによって積算メモリ量ΣＭが算出される。これにより、積算メモリ量ΣＭについても高精度に推定することができる。
【００７０】
なお、実施の形態１では、「所定期間」Δｔ毎にメモリ量Ｍを推定する処理を例に説明したが、一定周期でメモリ量Ｍを推定することは必須ではない。所定期間Δｔの長さは、たとえばバッテリ１００の使用条件またはＥＣＵ３００の演算負荷の状況等に応じた可変値としてもよい。あるいは、バッテリ１００の使用条件を監視し、使用条件が変化したことをトリガとして（言い換えれば曲線ＣＰ〜ＣＲ間を移行すべきことをトリガとして）メモリ量Ｍを推定するようにしてもよい。この場合には、使用条件がある条件から他の条件へと変化するまでの期間（図５（Ｂ）における期間ＬＰ，ＬＱ，ＬＲ）が「所定期間」に相当する。これにより、メモリ量Ｍの推定回数を低減してＥＣＵ３００の演算負荷を低減することができる。
【００７１】
［実施の形態１の変形例］
車両１のイグニッションオフ（ＩＧ−ＯＦＦ）に伴いＥＣＵ３００が停止すると、実施の形態１のフローチャート（図８参照）に示した一連の処理を実行して積算メモリ量ΣＭを推定することはできなくなる。しかし、バッテリ１００の放置試験（図３参照）の結果からも分かるように、車両１がＩＧ−ＯＦＦ状態である期間（以下「ＩＧ−ＯＦＦ期間」とも称する）中にも積算メモリ量ΣＭは増加し得る。積算メモリ量ΣＭを常時推定するためにＩＧ−ＯＦＦ期間中にもＥＣＵ３００の動作を継続させることも考えられるが、そうするとＥＣＵ３００の消費電力が増大してしまうことになる。実施の形態１の変形例では、ＩＧ−ＯＦＦ期間中にはＥＣＵ３００を停止させ、車両１のイグニッションオン（ＩＧ−ＯＮ）後にＩＧ−ＯＦＦ期間中の積算メモリ量ΣＭを推定するための処理について説明する。
【００７２】
図９は、ＩＧ−ＯＦＦ期間中に生じた積算メモリ量ΣＭの推定処理を説明するためのタイムチャートである。図９において、横軸は時間の経過を表し、縦軸はバッテリ１００の温度Ｔｂを表す。時刻ｔＯＦＦまでの期間、車両１はＩＧ−ＯＮ状態である。時刻ｔＯＦＦにおいてＩＧ−ＯＦＦ操作が行なわれ、車両１はＩＧ−ＯＦＦ状態へと移行する。その後、時刻ｔＯＮにおいてＩＧ−ＯＮ操作が行なわれる。このような場合、時刻ｔＯＦＦから時刻ｔＯＮまでのＩＧ−ＯＦＦ期間（停止期間）、ＥＣＵ３００は温度Ｔｂを取得することができない。
【００７３】
そこで、実施の形態１の変形例において、ＥＣＵ３００は、時刻ｔＯＦＦにおけるバッテリ１００の温度ＴｂＯＦＦと時刻ｔＯＮにおけるバッテリ１００の温度ＴｂＯＮとから、ＩＧ−ＯＦＦ期間中の温度ＴｂをＩＧ−ＯＮ後に補完する。より具体的には、ＥＣＵ３００は、ＩＧ−ＯＦＦ期間中には温度Ｔｂが所定の関数に従って変化すると推定する。関数の種類（関数形）は実験結果またはシミュレーション結果に基づいて予め設定されるが、たとえば一次関数（Ｃ１参照）または指数関数（Ｃ２参照）を用いることができる。ＥＣＵ３００は、温度ＴｂＯＦＦと温度ＴｂＯＮとを接続するように上記関数の各パラメータを算出する。これにより、ＩＧ−ＯＦＦ期間中の温度Ｔｂを補完することができる。
【００７４】
なお、図示しないが、バッテリ１００の電圧Ｖｂについても同様の処理によりＩＧ−ＯＦＦ期間中の電圧ＶｂがＩＧ−ＯＮ後に補完される。これにより、ＩＧ−ＯＦＦ期間中のＯＣＶについても補完することができる。
【００７５】
図１０は、ＩＧ−ＯＦＦ期間中に生じた積算メモリ量ΣＭの推定処理を示すフローチャートである。このフローチャートは、たとえば車両１のＩＧ−ＯＮ操作が行なわれた場合に実行される。なお、実施の形態１の変形例では、ＩＧ−ＯＦＦ操作が行なわれると、ＥＣＵ３００は、その動作を停止する前に、ＩＧ−ＯＦＦ操作時（時刻ｔＯＦＦ）におけるバッテリ１００の電圧ＶｂＯＦＦおよび温度ＴｂＯＦＦをメモリ３０２に不揮発的に記憶する。
【００７６】
Ｓ２１０において、ＥＣＵ３００は、前回のＩＧ−ＯＦＦ操作時における電圧ＶｂＯＦＦおよび温度ＴｂＯＦＦ（第１の使用条件）をメモリ３０２から読み出す。また、Ｓ２２０において、ＥＣＵ３００は、ＩＧ−ＯＮ操作時における電圧ＶｂＯＮおよび温度ＴｂＯＮ（第２の使用条件）をセンサ（電圧センサ２１０および温度センサ２３０）から取得する。
【００７７】
Ｓ２３０において、ＥＣＵ３００は、Ｓ２１０にて読み出した電圧ＶｂＯＦＦと、Ｓ２２０にて取得した電圧ＶｂＯＮとから、ＩＧ−ＯＦＦ期間中の電圧Ｖｂを補完するための関数の各パラメータを算出する。また、ＥＣＵ３００は、Ｓ２１０にて読み出した温度ＴｂＯＦＦと、Ｓ２２０にて取得した温度ＴｂＯＮとから、ＩＧ−ＯＦＦ期間中の温度Ｔｂを補完するための関数の各パラメータを算出する。この補完手法は図９にて詳細に説明したため、説明は繰り返さない。
【００７８】
Ｓ２４０において、ＥＣＵ３００は、ＩＧ−ＯＦＦ期間を所定期間Δｔ毎に分割する。そして、Ｓ２５０において、ＥＣＵ３００は、Ｓ２３０にて算出された関数に従って、分割された期間のうちのｉ番目の期間におけるバッテリ１００の電圧Ｖｂ（ｉ）および温度Ｔｂ（ｉ）を算出する。また、ＥＣＵ３００は電圧Ｖｂ（ｉ）をＯＣＶ（ｉ）に変換する。なお、ｉは自然数であり、ｉの初期値は１である。
【００７９】
Ｓ２６０において、ＥＣＵ３００は、使用条件（ＯＣＶ（ｉ），Ｔｂ（ｉ））に対応する曲線をマップＭＰ１（図７参照）から参照して、（ｉ−１）番目の期間までの積算メモリ量ΣＭ（ｉ−１）からｉ番目の期間のメモリ量Ｍ（ｉ）を算出する。なお、ｉ＝１の場合には、ＩＧ−ＯＦＦ操作時の使用条件と積算メモリ量ΣＭとから１番目の期間のメモリ量Ｍ（１）が算出される。
【００８０】
Ｓ２７０において、ＥＣＵ３００は、Ｓ２７０にて算出されたメモリ量Ｍ（ｉ）を（ｉ−１）番目の期間までの積算メモリ量ΣＭ（ｉ−１）に加算することにより、ｉ番目の期間までの積算メモリ量ΣＭ（ｉ）を算出する（下記式（２）参照）。なお、ｉ＝１の場合には、ＩＧ−ＯＦＦ操作時の積算メモリ量ΣＭにＭ（１）が加算される。
ΣＭ（ｉ）＝ΣＭ（ｉ−１）＋Ｍ（ｉ）                              ・・・（２）
【００８１】
Ｓ２８０において、ＥＣＵ３００は、すべてのｉについてＳ２５０〜Ｓ２７０の処理が実行されてメモリ量Ｍ（ｉ）が積算されたか否かを判定する。すべてのｉについてメモリ量Ｍ（ｉ）の積算が完了していない場合（Ｓ２８０においてＮＯ）、ＥＣＵ３００は、ｉを１だけインクリメントし（Ｓ２８２）、処理をＳ２５０に戻す。これにより、すべてのｉについてメモリ量Ｍ（ｉ）の積算が完了するまでＳ２５０〜Ｓ２７０の処理が繰り返される。メモリ量Ｍ（ｉ）の積算が完了すると（Ｓ２８０においてＹＥＳ）、ＥＣＵ３００は、ＩＧ−ＯＦＦ期間中の積算メモリ量ΣＭをメモリ３０２に記憶させて（Ｓ２９０）、処理をメインルーチンへと戻す。
【００８２】
その後はＩＧ−ＯＮ期間中のフローチャート（図８参照）の処理が実行される。こうすることにより、ＥＣＵ３００が前回の積算処理時までの積算メモリ量（ΣＭ（Ｎ−１））をメモリ３０２から読み出す処理（Ｓ１１０参照）において、Ｓ２９０にてメモリ３０２に記憶された積算メモリ量ΣＭが読み出される。
【００８３】
以上のように、実施の形態１の変形例によれば、ＩＧ−ＯＦＦ期間中に生じたメモリ量についても考慮することによって、現在までの積算メモリ量ΣＭの推定精度を向上させることができる。また、ＩＧ−ＯＦＦ期間中にはＥＣＵ３００を停止させつつ、ＩＧ−ＯＮ後に積算メモリ量ΣＭを算出することにより、ＩＧ−ＯＦＦ期間中のＥＣＵ３００の消費電力を低減することができる。
【００８４】
［実施の形態２］
一般にＥＣＵの演算負荷をできるだけ低減することが望ましいところ、実施の形態１では所定期間Δｔが経過する毎にメモリ量Ｍが算出されるので、ＥＣＵ３００の演算負荷が比較的大きい。そのため、実施の形態２においては、ＥＣＵ３００の演算負荷を低減するための処理について説明する。なお、実施の形態２に係る電池システムおよび車両の構成は、実施の形態１に係る電池システム２および車両１の構成（図１および図２参照）と同等である。
【００８５】
＜時間軸目盛りの変更＞
図１１は、実施の形態１と実施の形態２とを対比して説明するための図である。実施の形態１のタイムチャート（図４参照）を図１１（Ａ）に再び示す。このタイムチャートの横軸（時間軸）は通常目盛りで、バッテリ１００の使用開始時からの経過時間を表す。
【００８６】
これに対し、図１１（Ｂ）に示す実施の形態２のタイムチャートは、時間軸が累乗根（ｎ乗根）目盛りになっている点において実施の形態１のフローチャートと異なる。このように横軸の目盛りを変更することにより、各使用条件Ｐ〜Ｒ下でのメモリ量の変化を直線によって表すことができる（直線ＣＰ’〜ＣＲ’参照）。
【００８７】
累乗根の指数ｎは、自然数（たとえば２）であってもよいが、１よりも大きい自然数以外の小数であってもよい。指数ｎの最適値は、経過時間のｎ乗根に対して直線の傾きＳＰ〜ＳＲ（言い換えればメモリ効果の発生速度［単位：Ｖ／（時間のｎ乗根）］）が一定になるように実験またはシミュレーションにより適宜定められる。なお、図１１（Ｂ）では縦軸が通常目盛りである例を示すが、縦軸についても他の目盛り（たとえば対数目盛り）に変更してもよい。
【００８８】
図１２は、実施の形態２におけるマップＭＰ２の概念図である。マップＭＰ２では、使用条件（ＯＣＶ，Ｔｂ）毎に経過時間の累乗根とメモリ量との対応関係を示す直線の傾きＳＡ，ＳＢ，ＳＣ，・・・が規定される。このように、マップＭＰ２の構成を実施の形態１のマップＭＰ１（図７参照）の構成と比べて単純化することによって、マップのデータサイズを低減することができる。
【００８９】
＜期間算出処理＞
実施の形態２では、横軸（時間軸）の目盛りの変更に伴い、以下に説明するようにしてバッテリ１００が使用された期間の長さを使用条件毎に算出する期間算出処理が実行される。
【００９０】
図１３は、期間算出処理を説明するための図である。図１３では、一例として、バッテリ１００の使用条件がＰ，Ｑ，Ｒ，Ｑ，Ｐの順に変化した場合について説明する。
【００９１】
実施の形態２においては、バッテリ１００のＯＣＶおよび温度Ｔｂの組合せである使用条件が監視される。そして、使用条件が変化する度に、変化前の使用条件下でバッテリ１００が使用された期間が算出される。図１３（Ａ）に示す例では、まず、バッテリ１００の使用条件がＰであった期間の開始時刻ｔ０と終了時刻ｔ１とから下記式（３）に従って期間Ｌ１が算出される。同様に、期間Ｌ２〜Ｌ４がそれぞれ下記式（４）〜（６）に従って算出される。
Ｌ１＝（ｔ１のｎ乗根）−（ｔ０のｎ乗根）                          ・・・（３）
Ｌ２＝（ｔ２のｎ乗根）−（ｔ１のｎ乗根）                          ・・・（４）
Ｌ３＝（ｔ３のｎ乗根）−（ｔ２のｎ乗根）                          ・・・（５）
Ｌ４＝（ｔ４のｎ乗根）−（ｔ３のｎ乗根）                          ・・・（６）
【００９２】
その後、時刻ｔ５において積算メモリ量推定処理が実行される際に、使用条件Ｐ〜Ｒ毎に期間が加算される。図１３（Ｂ）に示すように、バッテリ１００の使用条件がＰであった全期間ＬＰはＬ１である（ＬＰ＝Ｌ１）。使用条件Ｑの全期間ＬＱは、Ｌ２とＬ４との和として表される（ＬＱ＝Ｌ２＋Ｌ４）。使用条件Ｒの全期間ＬＲはＬ３である（ＬＲ＝Ｌ３）。
【００９３】
＜積算メモリ量推定処理＞
図１４は、実施の形態２における積算メモリ量推定処理を説明するための図である。実施の形態２では、使用条件Ｐ下でのメモリ量の増加が直線ＣＰ’で表されるため、使用条件Ｐ下で生じたメモリ量ＭＰは、直線ＣＰ’の傾きＳＰと期間ＬＰとの積により算出することができる（ＭＰ＝ＳＰ×ＬＰ）。使用条件Ｑ，Ｒについても同様である。
【００９４】
図１３に示した全期間（時刻ｔ０から時刻ｔ４までの期間）経過後の積算メモリ量ΣＭは、使用条件Ｐ〜Ｒ下でそれぞれ生じたメモリ量ＭＰ〜ＭＲを上記期間開始前（図１３（Ａ）の時刻ｔ０）までの積算メモリ量ΣＭ（ｔ０）に加算することによって算出することができる（ΣＭ＝ΣＭ（ｔ０）＋ＭＰ＋ＭＱ＋ＭＲ）。
【００９５】
実施の形態１では、上述のように、時間経過に伴うメモリ量の増加が曲線で表される（図５（Ｂ）の曲線ＣＰ〜ＣＲ参照）。そのため、ある期間Ｌ内に新たに生じたメモリ量Ｍを上記曲線を参照することによって算出する際には、曲線のうちの参照すべき箇所を決定するために、期間Ｌ開始前までの積算メモリ量の情報が必要になる。つまり、実施の形態１では、少なくとも曲線間を移行する度に（使用条件が変化する度に）積算メモリ量ΣＭを逐次更新しなければ、曲線のうちの参照すべき箇所を決定することができない。
【００９６】
これに対し、実施の形態２においては、図１１にて説明したように時間軸の累乗根の指数ｎを適宜決定することにより、上記曲線が直線に変換される（直線ＣＰ’〜ＣＲ’参照）。これにより、期間Ｌ内に生じたメモリ量Ｍについては直線の傾きＳと期間Ｌとの積として算出することができ、直線のうちの参照すべき箇所を決定するための演算処理は不要である。したがって、実施の形態１と異なり積算メモリ量ΣＭを逐次更新しなくてもよい。実施の形態２によれば、メモリ量ＭＰ，ＭＱ，ＭＲを任意のタイミングで算出することができるとともに、算出されたメモリ量ＭＰ，ＭＱ，ＭＲを任意のタイミングで過去の積算メモ量（ΣＭ（ｔ０））に加算することができる。
【００９７】
図１５は、実施の形態２におけるＥＣＵ３００Ａの機能ブロック図である。ＥＣＵ３００Ａは、傾き算出部３１２および期間算出部３１４をさらに含むとともに、メモリ量算出部３３０に代えてメモリ量算出部３３０Ａを含む点において、実施の形態１におけるＥＣＵ３００と異なる。
【００９８】
ＯＣＶ算出部３１０は、実施の形態１と同様に、バッテリ１００の電圧ＶｂからＯＣＶを算出し、ＯＣＶおよび温度Ｔｂを傾き算出部３１２および期間算出部３１４に出力する。
【００９９】
傾き算出部３１２は、ＯＣＶ算出部３１０からＯＣＶおよび温度Ｔｂを受けると、マップＭＰ２（図１２参照）を参照して、使用条件に応じた直線の傾きＳｋをメモリ量算出部３３０Ａに出力する。なお、ｋは、使用条件を互いに区別するための添字（図１３および図１４におけるＰ〜Ｒに相当）である。
【０１００】
期間算出部３１４は、ＯＣＶ算出部３１０からＯＣＶおよび温度Ｔｂを受けると、ＯＣＶおよび温度Ｔｂの組合せにより定義される使用条件が変化するか否かを監視する。期間算出部３１４は、使用条件が変化すると、変化前の使用条件下でバッテリ１００が使用された期間Ｌｋを算出し、算出された期間Ｌｋをメモリ量算出部３３０Ａに出力する。この算出手法は図１３にて詳細に説明したため、説明は繰り返さない。
【０１０１】
メモリ量算出部３３０Ａは、傾き算出部３１２から傾きＳｋを受けるとともに、期間算出部３１４から期間Ｌｋを受ける。メモリ量算出部３３０Ａは、直線の傾きＳｋと期間Ｌｋとの積をメモリ量Ｍｋとして算出し、算出されたメモリ量Ｍｋを積算メモリ量算出部３４０に出力する。なお、積算メモリ量算出部３４０および制御部３５０の機能は実施の形態１における機能と同等である。
【０１０２】
実施の形態２では、記憶部３２０に記憶された過去の積算メモリ量（ΣＭ（ｔ０））をメモリ量算出部３３０Ａに出力しなくてよい。このことは、曲線を直線に変換することによって、直線のうちの参照すべき箇所を決定するための演算処理が不要になることに相当する。
【０１０３】
図１６は、期間算出処理を示すフローチャートである。ＥＣＵ３００Ａは、図８に示すフローチャートにおけるＳ１２０，Ｓ１３０の処理と同様に、バッテリ１００のＯＣＶを算出するとともに温度Ｔｂを取得する（Ｓ３１０，Ｓ３２０）。すなわち、ＥＣＵ３００Ａはバッテリ１００の使用条件を取得する。
【０１０４】
Ｓ３３０において、ＥＣＵ３００Ａは、ある条件から他の条件へと使用条件が変化したか否かを判定する。ＥＣＵ３００Ａは、使用条件が変化するまで待機し、使用条件が変化すると、変化前の使用条件の期間を算出する。たとえば使用条件がＰから他の条件へと変化した場合には（Ｓ３３０においてＰ）、ＥＣＵ３００Ａは、使用条件Ｐの終了時刻ｔ（ｊ＋１）のｎ乗根と開始時刻ｔ（ｊ）のｎ乗根との差分により、使用条件がＰであった期間ＬＰを算出（更新）する（Ｓ３４０）（時刻ｔ（ｊ）は図１３におけるｔ１〜ｔ４に相当）。他の使用条件Ｑ，Ｒについても同様である（Ｓ３５０，Ｓ３６０）。これらの処理については図１３にて詳細に説明したため、説明は繰り返さない。期間Ｌｋ（ｋ＝Ｐ〜Ｒ）の算出が完了すると、ＥＣＵ３００Ａは、処理をメインルーチンへと戻す。これにより、図１６に示すフローチャートが繰り返し実行される。
【０１０５】
図１７は、実施の形態２における積算メモリ量推定処理を示すフローチャートである。このフローチャートは任意のタイミングで実行可能であるので、たとえば車両１のＩＧ−ＯＦＦ操作後などＥＣＵ３００の演算処理に時間的余裕がある期間に実行することが好ましい。
【０１０６】
Ｓ４１０において、ＥＣＵ３００Ａは、マップＭＰ２（図１２参照）を参照して、各使用条件に対応する直線の傾きＳｋ（ｋ＝Ｐ〜Ｒ）を算出する。
【０１０７】
Ｓ４２０において、ＥＣＵ３００Ａは、各使用条件下でのメモリ量Ｍｋを算出する。メモリ量Ｍｋは、Ｓ４１０にて算出された直線の傾きＳｋと、図１６に示すフローチャートにより算出された期間Ｌｋとの積として算出される（Ｍｋ＝Ｓｋ×Ｌｋ）。
【０１０８】
Ｓ４３０において、ＥＣＵ３００Ａは，期間算出処理開始前（図１３（Ａ）では時刻ｔ０）までの積算メモリ量ΣＭ（ｔ０）をメモリ３０２から読み出す。
【０１０９】
Ｓ４４０において、ＥＣＵ３００Ａは、各使用条件下でのメモリ量Ｍｋ（すべてのｋについてのメモリ量Ｍｋ）を時刻ｔ０における積算メモリ量ΣＭ（ｔ０）に加算することにより積算メモリ量ΣＭを更新する（ΣＭ＝ΣＭ（ｔ０）＋Ｍｋ）。その後、ＥＣＵ３００Ａは処理をメインルーチンへと戻す。
【０１１０】
以上のように、実施の形態２によれば、バッテリ１００の使用開始時からの経過時間に対するメモリ量の対応関係を示すデータ（図１１参照）において、時間軸を経過時間の通常目盛から累乗根目盛りに変更することによって、上記データを曲線（ＣＰ〜ＣＲ）から直線（ＣＰ’〜ＣＲ’）へと変換する。この変換は、累乗根の指数ｎを、経過時間の累乗根に対してメモリ量の発生速度（傾きＳＰ〜ＳＲ）が一定になるように定めることによって実現される。これにより、曲線の形状に代えて直線の傾きを規定したマップＭＰ２をメモリ３０２に記憶させればよくなるので、マップのデータサイズを低減することができる。
【０１１１】
さらに、実施の形態２によれば、直線を用いることによって直線のうちの参照すべき箇所を決定するための演算処理が不要になるので、実施の形態１と異なり積算メモリ量ΣＭを逐次更新しなくてよい。つまり、積算メモリ量ΣＭを任意のタイミングで算出することができるので、たとえば車両１がＩＧ−ＯＦＦ操作が行なわれた後（あるいは、たとえば車両１が一時停止している期間）などＥＣＵ３００Ａの演算負荷が比較的小さい期間に積算メモリ量ΣＭを算出することができる。
【０１１２】
［実施の形態２の変形例］
実施の形態２では、バッテリ１００が各使用条件下で使用された期間を算出する際に、上記式（３）〜（６）にて説明したように、ある使用条件の終了時刻のｎ乗根と開始時刻のｎ乗根との差分が算出される。この演算を使用条件の変化に応じて実行しなければならないので、使用条件が頻繁に変化する場合には、ＥＣＵ３００Ａの演算負荷が比較的大きくなる可能性がある。実施の形態２の変形例においては、ＥＣＵ３００Ａの演算負荷を一層低減するための処理について説明する。
【０１１３】
図１８は、実施の形態２の変形例における積算メモリ量推定処理を説明するための図である。この積算メモリ量推定処理は任意のタイミングで実行可能であるが、以下では、あるトリップ中（ＩＧ−ＯＮ時からＩＧ−ＯＦＦ時までのＩＧ−ＯＮ期間中）に生じたメモリ量を当該トリップ終了後に推定する場合を例に説明する。実施の形態２の変形例においては、ＩＧ−ＯＮ期間中の使用条件に応じて、たとえば車両１の出荷時からの経過期間の合計値を示す合計期間Ｌｔｏｔａｌと、車両１の出荷時からのメモリ量の平均傾きＳａｖｅとが更新される。
【０１１４】
より詳細に説明すると、図１８に示すように、車両１の出荷時からＩＧ−ＯＮ時までの合計期間をＬｔｏｔａｌ０と表す。ＥＣＵ３００Ａのメモリ３０２には、ＩＧ−ＯＮ時までのメモリ量の平均傾きＳａｖｅ０［単位：Ｖ／（時間のｎ乗根）］が記憶されている。この場合、ＩＧ−ＯＮ時までの積算メモリ量ΣＭ０は、平均傾きＳａｖｅ０と合計期間Ｌｔｏｔａｌ０のｎ乗根との積として表される（ΣＭ０＝Ｓａｖｅ０×（Ｌｔｏｔａｌ０のｎ乗根））。
【０１１５】
今回のトリップ終了時（ＩＧ−ＯＦＦ時）までの合計期間Ｌｔｏｔａｌは、合計期間Ｌｔｏｔａｌ０と、ＩＧ−ＯＮ期間中にバッテリ１００が使用条件Ｐ下であった期間ＬＰと、使用条件Ｑ下での期間ＬＱと、使用条件Ｒ下での期間ＬＲとの和により算出される（Ｌｔｏｔａｌ＝Ｌｔｏｔａｌ０＋ＬＰ＋ＬＱ＋ＬＲ）。図１３（Ａ）に示した例を再び用いると、各期間ＬＰ，ＬＱ，ＬＲは下記式（７）〜（９）のようにそれぞれ算出され、実施の形態２のような累乗根の演算は行なわれない（上記式（３）〜（６）参照）。
ＬＰ＝ｔ１−ｔ０                                                  ・・・（７）
ＬＱ＝（ｔ２−ｔ１）＋（ｔ４−ｔ３）                              ・・・（８）
ＬＲ＝ｔ３−ｔ２                                                  ・・・（９）
【０１１６】
一方、平均傾きＳａｖｅの算出においては、下記式（１０）に示すように、合計期間Ｌｔｏｔａｌ０および期間ＬＰ〜ＬＲの長さに応じて、傾きＳａｖｅ０およびＳＰ〜ＳＲに重み付けが行なわれる。なお、式（１０）では式を見やすくするために、傾きＳａｖｅのｎ乗を左辺に示している。
Ｓａｖｅｎ＝Ｓａｖｅ０ｎ×（Ｌ０／Ｌｔｏｔａｌ）＋ＳＰｎ×（ＬＰ／Ｌｔｏｔａｌ）＋ＳＱｎ×（ＬＱ／Ｌｔｏｔａｌ）＋ＳＲｎ×（ＬＲ／Ｌｔｏｔａｌ）・・・（１０）
【０１１７】
トリップ終了時における積算メモリ量ΣＭは、上記のように算出された合計期間Ｌｔｏｔａｌと平均傾きＳａｖｅとを用いて下記式（１１）のように表される。
ΣＭ＝Ｓａｖｅ×（Ｌｔｏｔａｌのｎ乗根）                        ・・・（１１）
【０１１８】
図１９は、実施の形態２の変形例における積算メモリ量推定処理を示すフローチャートである。この処理は、実施の形態２と同様に、たとえば車両１のＩＧ−ＯＦＦ操作が行なわれた場合に実行される。
【０１１９】
Ｓ５１０において、ＥＣＵ３００Ａは、前回のＩＧ−ＯＮ時までの合計期間Ｌｔｏｔａｌ０および平均傾きＳａｖｅ０をメモリ３０２から読み出す。
【０１２０】
Ｓ５２０において、ＥＣＵ３００Ａは、ＩＧ−ＯＮ期間中の各使用条件下での期間Ｌｋ（ｋ＝Ｐ〜Ｒ）を算出する。この処理は、上記式（７）〜（９）にて説明したように使用条件毎に期間の和を算出することにより実現され、累乗根の演算は行なわれない。さらに、ＥＣＵ３００Ａは、今回のトリップ終了時までの合計期間Ｌｔｏｔａｌを算出する（Ｌｔｏｔａｌ＝Ｌｔｏｔａｌ０＋ＬＰ＋ＬＱ＋ＬＲ）。
【０１２１】
Ｓ５３０において、ＥＣＵ３００Ａは、各使用条件に対応するメモリ量の傾きＳｋ（ｋ＝Ｐ〜Ｒ）および期間Ｌｋ、ならびにＩＧ−ＯＮ時までの平均傾きＳａｖｅ０および合計期間Ｌｔｏｔａｌ０を用いて、今回のトリップ終了時までの平均傾きＳａｖｅを算出する（上記式（１０）参照）。
【０１２２】
Ｓ５４０において、ＥＣＵ３００Ａは、今回のトリップ終了時までの積算メモリ量ΣＭを算出する（上記式（１１）参照）。
【０１２３】
Ｓ５５０において、ＥＣＵ３００は、算出された積算メモリΣＭと、Ｓ５２０にて算出された合計期間Ｌｔｏｔａｌとを次回処理に備えてメモリ３０２に記憶する。その後、ＥＣＵ３００Ａは処理をメインルーチンへと戻す。
【０１２４】
以上のように、実施の形態２の変形例によれば、実施の形態２と同様に直線（メモリ量の傾き）を用いることにより、積算メモリ量ΣＭを任意のタイミングで算出することができる。
【０１２５】
実施の形態２では、各使用条件の期間Ｌｋ（ｋ＝Ｐ〜Ｒ）の算出において、使用条件の変化に応じて累乗根の演算（上記式（３）〜（６）参照）を実行しなければならないので、使用条件が頻繁に変化する場合には演算負荷が大きくなり得る。これに対し、実施の形態２の変形例においては、上記式（１０）に示したようにメモリ量の平均傾きＳａｖｅに各使用条件の期間Ｌｋの情報が盛り込まれ、期間Ｌｋの算出では累乗根の演算は行なわれない（上記式（７）〜（９）参照）。したがって、たとえ使用条件が頻繁に変化する場合であっても、平均傾きＳａｖｅおよび期間Ｌｋの演算負荷の増加を抑制することができる。
【０１２６】
なお、実施の形態１の変形例を実施の形態２（またはその変形例）に適用することも可能である。すなわち、実施の形態１の変形例にて説明したようにＩＧ−ＯＦＦ期間中の使用条件を補完して、ＩＧ−ＯＦＦ期間についても実施の形態２（またはその変形例）にて説明したのと同様に積算メモリ量推定処理を実行することができる。
【０１２７】
今回開示された実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した実施の形態の説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【０１２８】
１  車両、２  電池システム、１０  モータジェネレータ、２０  動力伝達ギヤ、３０  駆動輪、４０  ＰＣＵ、５０  ＳＭＲ、１００  バッテリ、１１０  セル、１２０  ケース、１２１  ケース本体、１２２  蓋体、１３０  安全弁、１４０  電極体、２１０  電圧センサ、２２０  電流センサ、２３０  温度センサ、３００，３００Ａ  ＥＣＵ、３０１  ＣＰＵ、３０２  メモリ、３０３  タイマ、３１０  ＯＣＶ算出部、３１２  傾き算出部、３１４  期間算出部、３２０  記憶部、３３０，３３０Ａ  メモリ量算出部、３４０  積算メモリ量算出部、３５０  制御部。
【図１】
0006481661.tif 000002
【図２】
0006481661.tif 000003
【図３】
0006481661.tif 000004
【図４】
0006481661.tif 000005
【図５】
0006481661.tif 000006
【図６】
0006481661.tif 000007
【図７】
0006481661.tif 000008
【図８】
0006481661.tif 000009
【図９】
0006481661.tif 000010
【図１０】
0006481661.tif 000011
【図１１】
0006481661.tif 000012
【図１２】
0006481661.tif 000013
【図１３】
0006481661.tif 000014
【図１４】
0006481661.tif 000015
【図１５】
0006481661.tif 000016
【図１６】
0006481661.tif 000017
【図１７】
0006481661.tif 000018
【図１８】
0006481661.tif 000019
【図１９】
0006481661.tif 000020