(57)【要約】【課題】充電率の推定精度の劣化を防止できる推定プログラム等を提供する。【解決手段】コンピュータに実行させる推定プログラムの処理として、コンピュータに、電池の測定電流および測定端子電圧に基づいて、カルマンフィルタを用いて電池の充電率および予測端子電圧を算出する処理を実行させる。また、コンピュータに、測定端子電圧と予測端子電圧との差分を算出する処理を実行させる。また、コンピュータに、差分を測定電流の絶対値で除算した値と、カルマンフィルタのカルマンゲインとに基づいて、充電率を補正する処理を実行させる。【選択図】図１
2015105863.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
電池の測定電流および測定端子電圧に基づいて、カルマンフィルタを用いて前記電池の充電率および予測端子電圧を算出し、前記測定端子電圧と前記予測端子電圧との差分を算出し、
前記差分を前記測定電流の絶対値で除算した値と、前記カルマンフィルタのカルマンゲインとに基づいて、前記充電率を補正する
処理を実行させることを特徴とする推定プログラム。
【請求項２】
前記補正する処理は、前記測定電流の絶対値が所定値を超える場合に、前記差分を前記測定電流の絶対値で除算した値と、前記カルマンフィルタのカルマンゲインとに基づいて、前記充電率を補正し、前記測定電流の絶対値が所定値以下の場合に、前記差分と前記カルマンフィルタのカルマンゲインとに基づいて、前記充電率を補正することを特徴とする請求項１に記載の推定プログラム。
【請求項３】
前記補正する処理は、前記充電率を補正する補正値に所定の修正値を乗じた値が所定値以上の場合に、前記補正値をゼロとして前記充電率を補正することを特徴とする請求項１または２に記載の推定プログラム。
【請求項４】
前記コンピュータに、
さらに、前記電池の動作モードが定電圧モードであるか否かを判定する処理を実行させ、
前記補正する処理は、前記電池が前記定電圧モードである場合に、前記充電率を補正する補正値をゼロとして前記充電率を補正することを特徴とする請求項１〜３のいずれか１項に記載の推定プログラム。
【請求項５】
コンピュータが、
電池の測定電流および測定端子電圧に基づいて、カルマンフィルタを用いて前記電池の充電率および予測端子電圧を算出し、前記測定端子電圧と前記予測端子電圧との差分を算出し、
前記差分を前記測定電流の絶対値で除算した値と、前記カルマンフィルタのカルマンゲインとに基づいて、前記充電率を補正する
処理を実行することを特徴とする推定方法。
【請求項６】
電池の測定電流および測定端子電圧に基づいて、カルマンフィルタを用いて前記電池の充電率および予測端子電圧を算出し、前記測定端子電圧と前記予測端子電圧との差分を算出する算出部と、
前記差分を前記測定電流の絶対値で除算した値と、前記カルマンフィルタのカルマンゲインとに基づいて、前記充電率を補正する補正部と
を有することを特徴とする推定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、推定プログラム、推定方法および推定装置に関する。
【背景技術】
【０００２】
近年、電気自動車や電動バイク等では、二次電池をモジュールごと交換することで、充電時間による使用時間のロスを無くす運用が知られている。また、電気自動車や電動バイク等に用いられる二次電池として、リチウムイオン二次電池が用いられる場合がある。電池モジュールを交換する運用では、個々の電池モジュールにおけるリチウムイオン二次電池の充電率であるＳｏＣ（States  of  Charge）を管理することが必要である。ＳｏＣは、リチウムイオン二次電池内部の電気量を測ることで測定可能であるが、実運用中に測定することは難しい。このため、実運用中のＳｏＣは、測定可能な端子電圧と電流から推定する。ＳｏＣの推定は、リチウムイオン二次電池を電気回路としてとらえた等価電気回路モデルに対して、カルマンフィルタを適用することで推定する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−０７２６７７号公報
【特許文献２】特開２００８−０１０４２０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、リチウムイオン二次電池の内部抵抗は、温度、ＳｏＣ、電流等の要因によって変化するので、カルマンフィルタを適用する等価電気回路モデルとの誤差が生じる。従って、内部抵抗に基づく電圧から予測される端子電圧に、実測した端子電圧との誤差が生じる。カルマンフィルタは、端子電圧の誤差に基づいて予測を修正するが、端子電圧の誤差は電流に対する依存度が大きいため、大電流時には誤差が大きくなる。このため、カルマンフィルタは、大電流時に端子電圧に対して過剰な修正を行うので、ＳｏＣの推定精度を著しく劣化させる。
【０００５】
一つの側面では、本発明は、充電率の推定精度の劣化を防止できる推定プログラム、推定方法および推定装置を提供することにある。
【課題を解決するための手段】
【０００６】
一つの態様では、コンピュータに実行させる推定プログラムの処理として、コンピュータに、電池の測定電流および測定端子電圧に基づいて、カルマンフィルタを用いて前記電池の充電率および予測端子電圧を算出する処理を実行させる。また、コンピュータに、前記測定端子電圧と前記予測端子電圧との差分を算出する処理を実行させる。また、コンピュータに、前記差分を前記測定電流の絶対値で除算した値と、前記カルマンフィルタのカルマンゲインとに基づいて、前記充電率を補正する処理を実行させる。
【発明の効果】
【０００７】
充電率の推定精度の劣化を防止できる。
【図面の簡単な説明】
【０００８】
【図１】図１は、実施例の推定装置の構成の一例を示すブロック図である。
【図２】図２は、リチウムイオン二次電池の等価電気回路モデルの一例を示す説明図である。
【図３】図３は、ＯＣＶ特性曲線の一例を示すグラフである。
【図４】図４は、カルマンフィルタを用いたＳｏＣ推定処理の一例を示す説明図である。
【図５】図５は、実施例の推定装置の処理の一例を示すフローチャートである。
【図６】図６は、推定プログラムを実行するコンピュータの一例を示す説明図である。
【発明を実施するための形態】
【０００９】
以下、図面に基づいて、本願の開示する推定プログラム、推定方法および推定装置の実施例を詳細に説明する。なお、本実施例により、開示技術が限定されるものではない。また、以下の実施例は、矛盾しない範囲で適宜組みあわせてもよい。
【実施例】
【００１０】
図１は、実施例の推定装置の構成の一例を示すブロック図である。図１に示す推定装置１００は、測定部１０１と、出力部１０２と、記憶部１２０と、制御部１３０とを有する。推定装置１００は、例えば、リチウムイオン二次電池モジュールに組み込まれる。また、推定装置１００は、セルの充放電を制御する制御部を含んでもよい。なお、推定装置１００は、例えば、電気自動車や電動バイク等の制御装置の一機能として実装して、リチウムイオン二次電池モジュールを制御するようにしてもよい。
【００１１】
測定部１０１は、リチウムイオン二次電池の電流および端子電圧を測定する。測定部１０１は、例えば、電流計および電圧計で、それぞれ電流および端子電圧を測定する。測定部１０１は、測定された電流および端子電圧を、それぞれ測定電流および測定端子電圧として制御部１３０に出力する。また、測定部１０１は、リチウムイオン二次電池の動作モードを取得して制御部１３０に出力する。
【００１２】
出力部１０２は、制御部１３０から充電率情報が入力されると、充電率情報を、例えば、他の装置に出力する。ここで、他の装置は、例えば、電気自動車や電動バイク等であれば、車両の制御装置であり、例えば、スマートフォン等の携帯情報端末であれば、画面を表示する表示部である。他の装置は、充電率情報が入力されると、例えば、使用者が視認できるように、車両のメータや表示部に充電率を表示する。
【００１３】
記憶部１２０は、例えば、ＲＡＭ（Random  Access  Memory）、フラッシュメモリ（Flash  Memory）等の半導体メモリ素子、ハードディスクや光ディスク等の記憶装置によって実現される。記憶部１２０は、条件記憶部１２１を有する。また、記憶部１２０は、制御部１３０での処理に用いる情報を記憶する。
【００１４】
条件記憶部１２１は、ＯＣＶ（Open  Circuit  Voltage）特性曲線、カルマンフィルタの各種パラメータ、等価電気回路モデルの各パラメータ、閾値ｒ、閾値ａ等を記憶する。ＯＣＶ特性曲線は、リチウムイオン二次電池のＯＣＶ−ＳｏＣ特性を示すグラフであり、詳細は後述する。カルマンフィルタの各種パラメータとしては、例えば、予測ノイズを示すΣｖ、および、測定ノイズを示すΣｗ等が挙げられる。等価電気回路モデルの各パラメータは、後述するＲ０、Ｒ１、Ｒ２、Ｃ１、Ｃ２等が挙げられる。なお、等価電気回路モデルの各パラメータは、予め実際のリチウムイオン二次電池に合致するように設定する。
【００１５】
閾値ｒは、測定端子電圧とカルマンフィルタにより予測された予測端子電圧との差分である誤差を、電流に対して正規化する際に場合分けを行う閾値である。閾値ｒは、例えばｒ＝５とすることができる。閾値ａは、カルマンフィルタによる充電率の補正値に突発的な過剰誤差が発生した場合に、過剰誤差による補正を行わないためのしきい値である。
【００１６】
制御部１３０は、例えば、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）等によって、内部の記憶装置に記憶されているプログラムがＲＡＭを作業領域として実行されることにより実現される。また、制御部１３０は、例えば、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）等の集積回路により実現されるようにしてもよい。制御部１３０は、算出部１３１と、補正部１３２と、判定部１３３とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部１３０の内部構成は、図１に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。
【００１７】
算出部１３１は、測定部１０１から測定電流および測定端子電圧が入力されると、カルマンフィルタを用いて、ＳｏＣ（充電率）、および、予測端子電圧を算出する。また、算出部１３１は、測定端子電圧と予測端子電圧との差分ｙ＊（ｋ）を誤差として算出する。さらに、算出部１３１は、ＳｏＣを補正するために、後述するカルマンフィルタで算出された状態推定値の逆行列と、差分ｙ＊（ｋ）と、カルマンゲインＧ（ｋ）とを、１ステップごとに補正部１３２に出力する。また、算出部１３１は、１ステップごとに補正部１３２から１ステップ前の状態推定値が入力される。
【００１８】
ここで、図２および図３を用いて、カルマンフィルタを用いたＳｏＣ推定処理について説明する。図２は、リチウムイオン二次電池の等価電気回路モデルの一例を示す説明図である。図２に示すように、リチウムイオン二次電池の等価電気回路モデルは、ＳｏＣの変化に応じて変化する電位差ＯＣＶを表す電流源ＶＯＣＶ＿ＤＣ（ＳｏＣ）、および、ＶＯＣＶ＿ＣＣ（ＳｏＣ）を有する。ここで、電流源ＶＯＣＶ＿ＤＣ（ＳｏＣ）、および、ＶＯＣＶ＿ＣＣ（ＳｏＣ）は、それぞれ、放電時の電位差ＯＣＶおよび充電時の電位差ＯＣＶを表す。また、図２に示す等価電気回路モデルは、電流変化に対して発生する電圧ｖ０の変化を表す抵抗Ｒ０、電流変化に対して過渡的な電圧ｖ１、ｖ２の変化を表すＲＣ回路（Ｒ１Ｃ１、および、Ｒ２Ｃ２）を有する。つまり、等価電気回路モデルは、リチウムイオン二次電池の内部抵抗を、測定電流ｉに依存する関数とするために用いる。なお、内部抵抗の正確性は、カルマンフィルタを用いたＳｏＣ推定精度に大きな影響を与える。
【００１９】
図２に示す等価電気回路モデルの端子電圧ｖは、電位差ＯＣＶと、電圧ｖ０と、電圧ｖ１と、電圧ｖ２との和で表現される。つまり、端子電圧ｖは、下記の式（１）で表すことができる。算出部１３１は、カルマンフィルタを用いて、ＯＣＶがＳｏＣに応じて変化することを利用して、ＳｏＣの推定を行う。
【００２０】
【数１】
2015105863.tif 000003
【００２１】
図３は、ＯＣＶ特性曲線の一例を示すグラフである。図３に示すＯＣＶ特性曲線は、条件記憶部１２１に記憶されている。算出部１３１は、カルマンフィルタを用いてＳｏＣの推定を行う際に、条件記憶部１２１に記憶されたＯＣＶ特性曲線を参照する。
【００２２】
算出部１３１は、等価電気回路モデルを用いて、１ステップ前のｖ１、ｖ２、およびＯＣＶと、入力される測定電流ｉとに基づいて、現在のｖ１、ｖ２、およびＯＣＶと、予測端子電圧とを予測する。また、算出部１３１は、ＯＣＶ特性曲線を用いてＯＣＶからＳｏＣを算出する。ここで、下記の式（２）〜（４）に、対応する式を示す。ここで、式（２）は現在の状態推定値を示す。式（３）は、ＯＣＶ特性に基づく端子電圧を示す。式（４）は、１ステップ前の状態推定値を示す。
【００２３】
【数２】
2015105863.tif 000004
【数３】
2015105863.tif 000005
【数４】
2015105863.tif 000006
【００２４】
次に、算出部１３１は、実際に測定された測定端子電圧と、予測端子電圧との差分を算出する。算出部１３１は、ｖ１、ｖ２、およびＳｏＣと、端子電圧とに想定されるノイズを考慮して、測定端子電圧と予測端子電圧との誤差の原因となるｖ１、ｖ２、およびＳｏＣの誤差を推定する。算出部１３１は、推定したｖ１、ｖ２、およびＳｏＣの誤差を、予測したｖ１、ｖ２、およびＳｏＣに加えて補正することで、正しいＳｏＣの推定値を充電率情報として出力部１０２に出力する。
【００２５】
続いて、図４を用いてカルマンフィルタを用いたＳｏＣ推定処理の詳細について説明する。図４は、カルマンフィルタを用いたＳｏＣ推定処理の一例を示す説明図である。まず、図４の説明に用いる文字を説明する。ｋは、カルマンフィルタのステップ数を示す。
［文字１］
2015105863.tif 000007
は、ステップｋ−１のカルマンフィルタの状態推定値を示し、以下、１ステップ前の状態推定値という。
［文字２］
2015105863.tif 000008
は、ステップｋのカルマンフィルタの状態推定値を示し、以下、状態推定値という。
［文字３］
2015105863.tif 000009
は、ステップｋの測定端子電圧を示し、以下、測定端子電圧という。
［文字４］
2015105863.tif 000010
は、ステップｋの測定端子電圧と予測端子電圧との差分を正規化した差分を示し、以下、差分の正規化値という。
［文字５］
2015105863.tif 000011
は、ステップｋのカルマンフィルタの状態推定値の逆行列を示し、以下、状態推定値の逆行列という。
［文字６］
2015105863.tif 000012
は、ステップｋのカルマンフィルタの状態推定値の修正値を示し、以下、修正値という。Ｇ（ｋ）は、ステップｋのカルマンゲインを示す。Ａは、ヤコビアンを示す。Ｐ（ｋ）は、ステップｋの誤差の共分散行列、つまり推定値の精度を示す。Σｖは、予測ノイズを示す。Σｗは、測定ノイズを示す。
【００２６】
カルマンフィルタは、フィードバック系の処理であるので、図４のＳｏＣ推定処理の説明では、便宜上「Ｓ」から処理を説明する。ここで、本実施例では、以下のカルマンフィルタのステップＳ１１〜Ｓ１６に相当する処理を算出部１３１で実行し、ステップＳ１７〜Ｓ１９に相当する処理を補正部１３２で実行する。従って、以下の説明では、制御部１３０がカルマンフィルタの処理を実行するものとして説明する。
【００２７】
制御部１３０は、測定電流ｉ（ｋ）が入力されると、１ステップ前の状態推定値と、測定電流ｉ（ｋ）とに基づいて、下記の式（５）を用いて状態推定値の逆行列、つまり予測値を算出する（ステップＳ１１）。ここで、測定電流ｉ（ｋ）は、１秒ごとに入力される場合を示しており、下記に示す式（６）の関係となる。
【００２８】
【数５】
2015105863.tif 000013
【数６】
2015105863.tif 000014
【００２９】
制御部１３０は、測定端子電圧が入力されると、測定端子電圧と、状態推定値の逆行列と、測定電流ｉ（ｋ）とに基づいて、下記の式（７）を用いて測定端子電圧と予測端子電圧ｙ（ｋ）との差分ｙ＊（ｋ）を算出する（ステップＳ１２）。また、式（７）は、予測端子電圧ｙ（ｋ）を用いて、下記の式（８）とも表現できる。ここで、測定端子電圧は、下記の式（９）の関係となる。
【００３０】
【数７】
2015105863.tif 000015
【数８】
2015105863.tif 000016
【数９】
2015105863.tif 000017
【００３１】
次に、制御部１３０は、１ステップ前の状態推定値に基づいて、下記の式（１０）を用いてヤコビアンＡを算出する（ステップＳ１３）。
【００３２】
【数１０】
2015105863.tif 000018
【００３３】
制御部１３０は、ヤコビアンＡと、１ステップ前の共分散行列Ｐ（ｋ−１）と、予測ノイズΣｖとに基づいて、下記の式（１１）を用いて共分散行列の逆行列Ｐ−（ｋ）を算出する（ステップＳ１４）。
【００３４】
【数１１】
2015105863.tif 000019
【００３５】
制御部１３０は、共分散行列の逆行列Ｐ−（ｋ）と、測定ノイズΣｗとに基づいて、下記の式（１２）を用いてカルマンゲインＧ（ｋ）を算出する（ステップＳ１５）。
【００３６】
【数１２】
2015105863.tif 000020
【００３７】
制御部１３０は、カルマンゲインＧ（ｋ）と、共分散行列の逆行列Ｐ−（ｋ）とに基づいて、下記の式（１３）を用いて共分散行列Ｐ（ｋ）を算出する（ステップＳ１６）。制御部１３０は、ステップＳ１４〜Ｓ１６を１ステップごとに繰り返す。
【００３８】
【数１３】
2015105863.tif 000021
【００３９】
次に、制御部１３０は、ステップＳ１２で算出された差分ｙ＊（ｋ）と、ステップＳ１５で算出されたカルマンゲインＧ（ｋ）とに基づいて、下記の式（１４）を用いて、状態推定値を修正するための修正値を算出する（ステップＳ１７）。
【００４０】
【数１４】
2015105863.tif 000022
【００４１】
制御部１３０は、ステップＳ１１で算出された状態推定値の逆行列と、ステップＳ１７で算出された修正値とに基づいて、下記の式（１５）を用いて状態推定値を算出する（ステップＳ１８）。ここで、状態推定値は、下記の式（１６）とも表すことができる。
【００４２】
【数１５】
2015105863.tif 000023
【数１６】
2015105863.tif 000024
【００４３】
制御部１３０は、状態推定値に基づいて、下記の式（１７）を用いてＳｏＣを算出する（ステップＳ１９）。
【００４４】
【数１７】
2015105863.tif 000025
【００４５】
このように、制御部１３０は、ＳｏＣ推定処理として、ステップＳ１１〜Ｓ１９の処理を１ステップごとに繰り返すことによって、例えば、１秒ごとにＳｏＣを算出できる。
【００４６】
図１に戻って、補正部１３２は、まず、初期設定として、制御部１３０が条件記憶部１２１を参照して、閾値ｒと、閾値ａとが設定される。補正部１３２は、測定部１０１から測定電流、つまり、当該ステップの測定電流ｉ（ｋ）が入力される。また、補正部１３２は、算出部１３１から状態推定値の逆行列と、差分ｙ＊（ｋ）と、カルマンゲインＧ（ｋ）とが、１ステップごとに入力される。
【００４７】
補正部１３２は、測定電流ｉ（ｋ）を用いて、差分ｙ＊（ｋ）を正規化する。まず、補正部１３２は、測定電流ｉ（ｋ）が閾値ｒより大きいか否かを判定する。補正部１３２は、測定電流ｉ（ｋ）が閾値ｒより大きい場合には、下記の式（１８）に示すように、差分ｙ＊（ｋ）を測定電流ｉ（ｋ）の絶対値で除算した値と、閾値ｒとを乗算して、差分の正規化値を算出する。補正部１３２は、測定電流ｉ（ｋ）が閾値ｒ以下の場合には、下記の式（１９）に示すように、差分ｙ＊（ｋ）を、そのまま差分の正規化値とする。
【００４８】
【数１８】
2015105863.tif 000026
【数１９】
2015105863.tif 000027
【００４９】
また、補正部１３２は、判定部１３３からモード情報が入力される。補正部１３２は、モード情報がＣＣ（Constant  Current）モード、つまり定電流モードである場合には、下記の式（２０）に示すように、カルマンゲインＧ（ｋ）と、差分の正規化値と、ＳｏＣの修正値とに基づいた値が、閾値ａより大きいか否かを判定する。これは、予測端子電圧の誤差が突発的に極めて大きくなる場合に対応する。例えば、ＳｏＣの推定に、カルマンフィルタをより簡単にしたモデルを用いた場合や、電池パック内の測定器の精度が悪い場合などが挙げられる。
【００５０】
【数２０】
2015105863.tif 000028
【００５１】
補正部１３２は、カルマンゲインＧ（ｋ）と、差分の正規化値と、ＳｏＣの修正値とに基づいた値が、閾値ａより大きい場合には、状態推定値の逆行列に、カルマンゲインＧ（ｋ）と差分の正規化値とを乗算した値を加算した値を状態推定値とする。この場合の状態推定値は、下記の式（２１）によって算出できる。
【００５２】
【数２１】
2015105863.tif 000029
【００５３】
補正部１３２は、カルマンゲインＧ（ｋ）と、差分の正規化値と、ＳｏＣの修正値とに基づいた値が、閾値ａ以下の場合には、下記の式（２２）に示すように、状態推定値の逆行列を状態推定値とする。
【００５４】
【数２２】
2015105863.tif 000030
【００５５】
補正部１３２は、式（２１）または式（２２）によって算出された状態推定値を、１ステップごとに算出部１３１に出力する。また、補正部１３２は、算出された状態推定値から式（１７）によってＳｏＣを算出する。補正部１３２は、算出されたＳｏＣを出力部１０２に出力する。
【００５６】
補正部１３２は、モード情報がＣＶ（Constant  Voltage）モード、つまり定電圧モードである場合には、ＳｏＣをクーロンカウンタにより推定する。補正部１３２は、推定したＳｏＣと、ｖ１、ｖ２とに基づいて、状態推定値を算出する。補正部１３２は、算出された状態推定値を、１ステップごとに算出部１３１に出力する。補正部１３２は、推定されたＳｏＣを出力部１０２に出力する。
【００５７】
判定部１３３は、出力部１０２から動作モードが入力されると、動作モードがＣＶモード（定電圧モード）であるか否かを判定する。判定部１３３は、動作モードがＣＶモードである場合には、モード情報をＣＶモードとして補正部１３２に出力する。判定部１３３は、動作モードがＣＶモードでない場合には、モード情報をＣＣモードとして補正部１３２に出力する。
【００５８】
次に、実施例の推定装置１００の動作について説明する。
【００５９】
図５は、実施例の推定装置の処理の一例を示すフローチャートである。推定装置１００の制御部１３０は、条件記憶部１２１から各種パラメータを読み込んで、算出部１３１、補正部１３２および判定部１３３に初期設定する。制御部１３０は、例えば、条件記憶部１２１を参照して、閾値ｒ、閾値ａを補正部１３２に設定する（ステップＳ１０１）。
【００６０】
推定装置１００は、接続されたリチウムイオン二次電池のＳｏＣの推定を開始する。測定部１０１は、測定された電流および端子電圧を、それぞれ測定電流および測定端子電圧として制御部１３０に出力する。また、測定部１０１は、リチウムイオン二次電池の動作モードを取得して制御部１３０に出力する。
【００６１】
算出部１３１は、測定部１０１から測定電流および測定端子電圧が入力されると、カルマンフィルタを用いて、１ステップ前の状態推定値と、測定電流ｉ（ｋ）とに基づいて、ＳｏＣと、予測端子電圧ｙ（ｋ）と、状態推定値の逆行列と、カルマンゲインＧ（ｋ）とを算出する（ステップＳ１０２）。
【００６２】
算出部１３１は、測定端子電圧と、予測端子電圧ｙ（ｋ）との差分ｙ＊（ｋ）とを算出する（ステップＳ１０３）。
【００６３】
補正部１３２は、測定部１０１から測定電流、つまり、当該ステップの測定電流ｉ（ｋ）が入力される。また、補正部１３２は、算出部１３１から状態推定値の逆行列と、差分ｙ＊（ｋ）と、カルマンゲインＧ（ｋ）とが、１ステップごとに入力される。補正部１３２は、測定電流ｉ（ｋ）が閾値ｒより大きいか否かを判定する（ステップＳ１０４）。補正部１３２は、測定電流ｉ（ｋ）が閾値ｒより大きい場合には（ステップＳ１０４：肯定）、式（１８）に示すように、差分ｙ＊（ｋ）を測定電流ｉ（ｋ）の絶対値で除算した値と、閾値ｒとを乗算して、差分の正規化値を算出する（ステップＳ１０５）。補正部１３２は、測定電流ｉ（ｋ）が閾値ｒ以下の場合には（ステップＳ１０４：否定）、式（１９）に示すように、差分ｙ＊（ｋ）を、そのまま差分の正規化値とする（ステップＳ１０６）。
【００６４】
判定部１３３は、出力部１０２から動作モードが入力されると、動作モードがＣＶモードであるか否かを判定する（ステップＳ１０７）。判定部１３３は、動作モードがＣＶモードである場合には（ステップＳ１０７：肯定）、モード情報をＣＶモードとして補正部１３２に出力する。判定部１３３は、動作モードがＣＶモードでない場合には（ステップＳ１０７：否定）、モード情報をＣＣモードとして補正部１３２に出力する。
【００６５】
補正部１３２は、判定部１３３からＣＣモードであるモード情報が入力されると、式（２０）に示すように、カルマンゲインＧ（ｋ）と、差分の正規化値と、ＳｏＣの修正値とに基づいた値が、閾値ａより大きいか否かを判定する（ステップＳ１０８）。補正部１３２は、カルマンゲインＧ（ｋ）と、差分の正規化値と、ＳｏＣの修正値とに基づいた値が、閾値ａ以下の場合には（ステップＳ１０８：否定）、状態推定値を、式（２１）に示すように算出する。つまり、補正部１３２は、状態推定値の逆行列に、カルマンゲインＧ（ｋ）と差分の正規化値とを乗算した値を加算した値を状態推定値とする（ステップＳ１０９）。
【００６６】
補正部１３２は、カルマンゲインＧ（ｋ）と、差分の正規化値と、ＳｏＣの修正値とに基づいた値が、閾値ａより大きい場合には（ステップＳ１０８：肯定）、式（２２）に示すように、状態推定値の逆行列を状態推定値とする（ステップＳ１１０）。
【００６７】
補正部１３２は、判定部１３３からＣＶモードであるモード情報が入力されると（ステップＳ１０７：肯定）、ＳｏＣをクーロンカウンタにより推定する（ステップＳ１１１）。補正部１３２は、推定したＳｏＣと、ｖ１、ｖ２とに基づいて、状態推定値を算出する。補正部１３２は、ステップＳ１１０またはステップＳ１１１によって算出された状態推定値を、１ステップごとに算出部１３１に出力する。
【００６８】
補正部１３２は、算出された状態推定値から式（１７）によってＳｏＣを算出する（ステップＳ１１２）。補正部１３２は、算出されたＳｏＣを出力部１０２に出力する（ステップＳ１１３）。補正部１３２は、カルマンフィルタを次のステップに進めるために、ｋをインクリメントして（ステップＳ１１４）、ステップＳ１０２の処理に戻る。推定装置１００は、ステップＳ１０２〜Ｓ１１４を繰り返す。これにより、大電流時における過剰な補正を防止し、突発的に発生する過剰な誤差に基づく過剰な補正を防止するので、充電率の推定精度の劣化を防止できる。
【００６９】
このように、推定装置１００は、電池の測定電流および測定端子電圧に基づいて、カルマンフィルタを用いて電池の充電率および予測端子電圧を算出し、測定端子電圧と予測端子電圧との差分を算出する。また、推定装置１００は、差分を測定電流の絶対値で除算した値と、カルマンフィルタのカルマンゲインとに基づいて、充電率を補正する。その結果、充電率の推定精度の劣化を防止できる。すなわち、推定装置１００は、等価電気回路モデル誤差、測定誤差、動作モードの違いによる突発性の誤差によるＳｏＣ推定精度の劣化を防止できる。
【００７０】
また、推定装置１００は、測定電流の絶対値が所定値を超える場合に、差分を測定電流の絶対値で除算した値と、カルマンフィルタのカルマンゲインとに基づいて、充電率を補正する。また、推定装置１００は、測定電流の絶対値が所定値以下の場合に、差分とカルマンフィルタのカルマンゲインとに基づいて、充電率を補正する。その結果、大電流時における過剰な補正を防止できる。
【００７１】
また、推定装置１００は、充電率を補正する補正値に所定の修正値を乗じた値が所定値以上の場合に、補正値をゼロとして充電率を補正する。その結果、突発的に発生する過剰な誤差に基づく過剰な補正を防止できる。
【００７２】
また、推定装置１００は、さらに、電池の動作モードが定電圧モードであるか否かを判定する。また、推定装置１００は、電池が定電圧モードである場合に、充電率を補正する補正値をゼロとして充電率を補正する。その結果、ＳｏＣの推定モデルが異なることによる過剰な補正を防止できる。
【００７３】
なお、上記実施例では、二次電池の一例として、リチウムイオン二次電池を挙げたが、これに限定されない。推定装置１００は、対象となる電池のＯＣＶ特性曲線と、等価電気回路モデルとが得られれば、他の種類の電池に対してもＳｏＣを推定することができる。他の電池としては、例えば、リチウムイオンポリマー二次電池、カルシウムイオン二次電池、ナノワイヤバッテリ、ニッケル水素二次電池、鉛蓄電池等にも適用できる。また、リチウムイオン二次電池としては、コバルト酸リチウムイオン電池、リン酸鉄リチウムイオン電池等に適用できる。これにより、多種の電池のＳｏＣを推定できる。
【００７４】
また、上記実施例では、等価電気回路モデルとして、電流変化に対して過渡的な電圧の変化を表すＲＣ回路として、Ｒ１Ｃ１、および、Ｒ２Ｃ２の２組のＲＣ回路を用いたが、これに限定されない。推定装置１００は、等価電気回路モデルとして、例えば、３組以上とした等価電気回路モデルを用いてもよい。これにより、等価電気回路モデルの精度が上がるので、カルマンフィルタによるＳｏＣの推定精度が向上する。
【００７５】
また、図示した各部の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各部の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。例えば、補正部１３２と判定部１３３とを統合して、電池の動作モードによる判定を補正と同時に行うようにしてもよい。
【００７６】
さらに、各部で行われる各種処理機能は、ＣＰＵ（又はＭＰＵ、ＭＣＵ（Micro  Controller  Unit）等のマイクロ・コンピュータ）上で、その全部又は任意の一部を実行するようにしても良い。また、各種処理機能は、ＣＰＵ（又はＭＰＵ、ＭＣＵ等のマイクロ・コンピュータ）で解析実行されるプログラム上、又はワイヤードロジックによるハードウェア上で、その全部又は任意の一部を実行するようにしても良いことは言うまでもない。
【００７７】
ところで、上記の実施例で説明した各種の処理は、予め用意されたプログラムをコンピュータで実行することで実現できる。そこで、以下では、上記の実施例と同様の機能を有するプログラムを実行するコンピュータの一例を説明する。図６は、推定プログラムを実行するコンピュータの一例を示す説明図である。
【００７８】
図６が示すように、コンピュータ２００は、各種演算処理を実行するＣＰＵ２０１と、ユーザからのデータ入力を受け付ける入力装置２０２と、モニタ２０３とを有する。また、コンピュータ２００は、記憶媒体からプログラム等を読み取る媒体読取装置２０４と、他の装置と接続するためのインタフェース装置２０５と、他の装置と有線または無線により接続するための通信装置２０６とを有する。また、コンピュータ２００は、各種情報を一時記憶するＲＡＭ２０７と、ハードディスク装置２０８とを有する。また、各装置２０１〜２０８は、バス２０９に接続される。コンピュータ２００は、例えば、電気自動車や電動バイクの制御装置、スマートフォン、ノート型のパーソナルコンピュータ等である。
【００７９】
ハードディスク装置２０８には、図１に示した算出部１３１、補正部１３２および判定部１３３の各処理部と同様の機能を有する情報処理プログラムが記憶される。また、ハードディスク装置２０８には、条件記憶部１２１が記憶される。また、ハードディスク装置２０８には、情報処理プログラムを実現するための各種データが記憶される。モニタ２０３は、図１に示した出力部１０２と同様の機能を有する。インタフェース装置２０５は、図１に示した測定部１０１と同様の機能を有する。インタフェース装置２０５は、例えば印刷装置が接続された場合には印刷装置と一体として、図１に示した出力部１０２と同様の機能を有する。また、インタフェース装置２０５は、例えば、データロガー等が接続され、リチウムイオン二次電池の充放電の状態を記録できるようにしてもよい。通信装置２０６は、例えば他のコンピュータからコンピュータ２００の状態を把握する場合に、入力部１０１および出力部１０２と同様の機能を有する。
【００８０】
ＣＰＵ２０１は、ハードディスク装置２０８に記憶された各プログラムを読み出して、ＲＡＭ２０７に展開して実行することで、各種の処理を行う。また、これらのプログラムは、コンピュータ２００を図１に示した算出部１３１、補正部１３２および判定部１３３として機能させることができる。
【００８１】
なお、上記の情報処理プログラムは、必ずしもハードディスク装置２０８に記憶されている必要はない。例えば、コンピュータ２００が読み取り可能な記憶媒体に記憶されたプログラムを、コンピュータ２００が読み出して実行するようにしてもよい。コンピュータ２００が読み取り可能な記憶媒体は、例えば、ＣＤ−ＲＯＭやＤＶＤディスク、ＵＳＢ（Universal  Serial  Bus）メモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリ、ハードディスクドライブ等が対応する。また、公衆回線、インターネット、ＬＡＮ（Local  Area  Network）等に接続された装置にこの情報処理プログラムを記憶させておき、コンピュータ２００がこれらから情報処理プログラムを読み出して実行するようにしてもよい。なお、コンピュータ２００は、ＣＰＵ２０１と、ＲＡＭ２０７と、ハードディスク装置２０８を代替する不揮発性メモリ（例えば、フラッシュメモリ）と、測定部１０１および出力部１０２と同様の機能を有するインタフェース装置２０５とを有する構成としてもよい。当該構成では、コンピュータ２００は、例えば、リチウムイオン二次電池に組み込まれるモジュールや、ＭＰＵを用いたいわゆる組込用マイコン等としてもよい。
【符号の説明】
【００８２】
１００  推定装置
１０１  測定部
１０２  出力部
１２０  記憶部
１２１  条件記憶部
１３０  制御部
１３１  算出部
１３２  補正部
１３３  判定部
【図１】
2015105863.tif 000031
【図２】
2015105863.tif 000032
【図３】
2015105863.tif 000033
【図４】
2015105863.tif 000034
【図５】
2015105863.tif 000035
【図６】
2015105863.tif 000036