(57)【要約】【課題】過重な演算負担を回避しつつニューラルネット演算により残存容量を高精度に抽出可能な二次電池の残存容量演算方法を提供すること。【解決手段】ニューラルネット部１０７は、満充電から所定容量放電した時の電池状態量xmと、この電池状態量の現在値xtとの比（xt/xm）、又はxmとxtとの一次関数値をニューラルネット演算における入力パラメータ、特にその電池劣化関連量としての入力パラメータとして用いてＳＯＣを演算する。これにより、ニューラルネットに入力される劣化関連量とＳＯＣとの相関が電池ばらつきによりばらつくのが減少するため、高精度にＳＯＣをニューラルネット演算することができる。【選択図】図１
2006329707.tif 000002
【特許請求の範囲】
【請求項１】
二次電池から検出した所定の電池状態量の関数値を入力パラメータの少なくとも一つとして前記二次電池の蓄電状態量をニューラルネット演算する二次電池の残存容量演算方法において、
前記電池状態量の関数値は、
前記電池状態量の所定容量放電時の値である所定容量放電時電池状態量xmと、前記電池状態量の現在値xtとの比（xt/xm）を入力変数とする関数値であることを特徴とする二次電池の残存容量演算方法。
【請求項２】
二次電池から検出した所定の電池状態量の関数値を入力パラメータの少なくとも一つとして前記二次電池の蓄電状態量をニューラルネット演算する二次電池の残存容量演算方法において、
前記電池状態量の関数値は、
前記電池状態量の所定容量放電時の値である所定容量放電時電池状態量xmと、前記電池状態量の現在値xtとを変数とする一次関数値（xt＋ｋ・xm）であることを特徴とする二次電池の残存容量演算方法。
【請求項３】
請求項１又は２記載の二次電池の残存容量演算方法において、
前記電池状態量は、
平均電圧（Ｖa）と、開路電圧（Ｖｏ）、内部抵抗（Ｒ）及び最大放電電力（Ｖo・Ｖo／（４Ｒ））の少なくとも一つとを含むことを特徴とする二次電池の残存容量演算方式。
【請求項４】
請求項１又は２記載の二次電池の残存容量演算方法において、
前記電池状態量は、
平均電圧（Ｖa）、開路電圧（Ｖｏ）、内部抵抗（Ｒ）及び最大放電電力（Ｖo・Ｖo／（４Ｒ））のすべてを含むことを特徴とする二次電池の残存容量演算方式。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ニューラルネットを用いた二次電池の残存容量演算方法に関し、好適にはニューラルネット演算を用いる車両用蓄電装置の残存容量率（ＳＯＣ）演算方法に関する。内部状態（特にその蓄電状態）の検出技術の改良に関する。
【背景技術】
【０００２】
二次電池の電池状態量（たとえば電池の電圧、電流やそれら関数値（劣化関連量）としての開路電圧や内部抵抗など）と、残存容量率（ＳＯＣ）や残存容量（ＳＯＨ）との相関関係は電池劣化や電池の種類などにより種々ばらつくため、電池状態量から残存容量率（ＳＯＣ）や残存容量（ＳＯＨ）を高精度に検出することは困難であった。以下、残存容量という用語はＳＯＣとＳＯＨの両方を含む技術概念とする。このため、従来では安全性の観点から推定残存容量が狭い範囲から逸脱しないように充放電制御せざるを得ないという問題があった。
【０００３】
この問題を改善するため、被測定対象の特性ばらつきに柔軟に対応可能なニューラルネットワークを用いてＳＯＣやＳＯＨを検出する方法（以下、ニューラルネット式電池状態検出技術）が提案されている（特許文献１、２）。
【０００４】
更に詳しく説明すると、特許文献１は、少なくとも開路電圧OCV、放電開始直後電圧VO及び内部抵抗Ｒを入力パラメータとして、既に学習済みニューラルネットにより演算して残存容量Ｔeを検出することを提案している。
【０００５】
また、特許文献２は、バッテリ電圧、電流、内部インピーダンス（交流法による検出）及び温度を学習済みの第１のニューラルネットに導入してバッテリ劣化情報を演算し、このバッテリ劣化情報とバッテリ電圧、電流、内部インピーダンスとを学習済みの第２のニューラルネットに導入して電池の残存容量を演算することを提案している。
【特許文献１】特開平9-243716号公報
【特許文献２】特開2003-249271号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記した特許文献１、２によるニューラルネット式電池状態検出技術を用いたＳＯＣやＳＯＨなどの判定は、ニューラルネット演算を行わない残存容量検出方式に比べて回路規模や演算規模の負担が格段に大きいにもかかわらず、残存容量検出精度の誤差が大きく、実用化のために更なる検出精度向上が必要となっていた。また、このニューラルネット演算方式の検出精度向上を回路規模や演算規模の増大を抑止しつつ行うことも要望されていた。
【０００７】
本発明は上記問題点に鑑みなされたものであり、過重な演算負担を回避しつつニューラルネット演算により残存容量を高精度に抽出可能な二次電池の残存容量演算方法を提供することをその目的としている。
【課題を解決するための手段】
【０００８】
本発明の二次電池の残存容量演算方法は、二次電池から検出した所定の電池状態量の関数値を入力パラメータの少なくとも一つとして前記二次電池の蓄電状態量をニューラルネット演算する二次電池の残存容量演算方法に適用される。
【０００９】
第１発明は特に、前記電池状態量の関数値が、前記電池状態量の所定容量放電時の値である所定容量放電時電池状態量xmと、前記電池状態量の現在値xtとの比（xt/xm）を入力変数とする関数値であることを特徴としている。なお、比（xt/xm）に所定の定数を掛けたり、所定の定数を加減算してから入力パラメータとしてもよい。
【００１０】
第２発明は特に、前記電池状態量の関数値が、前記電池状態量の所定容量放電時の値である所定容量放電時電池状態量xmと、前記電池状態量の現在値xtとを変数とする一次関数値であることを特徴としている。
【００１１】
すなわち、これら両発明は、所定の電池状態量の所定容量放電時電池状態量ｘｍと現在値ｘｔとの比（xt/xm）又は一次関数値（xt＋ｋ・xm）を入力変数とする関数値を、ニューラルネット演算の入力パラメータとする。なお、上記したｋは、それぞれー１〜＋１の範囲の所定の定数とすることが好適であるが、それに限定されるものではない。
【００１２】
このようにすれば、電池劣化の程度や使用履歴や初期容量が種々異なる各種の二次電池に対して、ニューラルネット演算回路の回路規模や演算規模の増大を抑止しつつ二次電池の残存容量演算精度を良好に向上できることがわかった。とりわけこの二次電池の残存容量演算方法は、従来のニューラルネット演算方式に比べて時間順次にサンプリングされた多数の電圧Ｖと電流Ｉとのペアからなる電圧電流履歴をニューラルネットの入力パラメータとして採用することなく、良好な演算精度を確保できるため、ニューラルネット演算の回路規模や演算処理負担を著しく低減することができる。
【００１３】
なお、上記で言う蓄電状態量は残存容量（ＳＯＨ）や残存容量率（ＳＯＣ）を含む。入力パラメータとして用いる二次電池の電圧（端子電圧）や電流としては、ノイズ低減などのためにその直流成分をローパスフィルタで抽出したり、直前の所定期間における平均値を演算したりすることが好適である。開路電圧Ｖｏや内部抵抗Ｒは、過去の電圧・電流データから従来通り近似的に演算することができる。
【００１４】
好適な態様において、前記電池状態量は、平均電圧（Ｖa）と、開路電圧（Ｖｏ）、内部抵抗（Ｒ）及び最大放電電力（Ｖo・Ｖo／（４Ｒ））の少なくとも一つとを含む。このようにすれば、蓄電状態量（ＳＯＣ又はＳＯＨ）を精度よくニューラルネット演算することができる。
【００１５】
つまり、この態様では、残存容量率（ＳＯＣ）に相関を有する平均電圧（Ｖａ）に加えて、電池劣化に強い相関をもつパラメータである開路電圧（Ｖｏ）、内部抵抗（Ｒ）及び最大放電電力（Ｖo・Ｖo／（４Ｒ））の少なくとも一つを、ニューラルネット演算の入力パラメータとし、更に、これら平均電圧（Ｖａ）に加えて、電池劣化に強い相関をもつパラメータである開路電圧（Ｖｏ）、内部抵抗（Ｒ）及び最大放電電力（Ｖo・Ｖo／（４Ｒ））の現在値を、上記した所定容量放電時電池状態量ｘｍに対する比又は一次関数値（本質的に和又は差）として用いるため、劣化のばらつきにもかかわらず良好な蓄電状態量の演算が可能となることがわかった。なお、開路電圧（Ｖｏ）、内部抵抗（Ｒ）及び最大放電電力（Ｖo・Ｖo／（４Ｒ））に所定の定数を掛けたり、加減算してもよい。
【００１６】
更に説明すると、二次電池は劣化度合いにより放電可能量が変動し、劣化度合いは開路電圧Ｖｏや内部抵抗Ｒや最大放電電力（Ｖo・Ｖo／（４Ｒ））の現在値に相関を有するため、蓄電状態量の算出において劣化度合いの影響を加味するため、開路電圧Ｖｏや内部抵抗Ｒや最大放電電力（Ｖo・Ｖo／（４Ｒ））をニューラルネット演算の入力パラメータ（劣化関連量）とすることは好ましいと考えられる。しかし、これら劣化関連量である開路電圧Ｖｏや内部抵抗Ｒや最大放電電力（Ｖo・Ｖo／（４Ｒ））は、残存容量にも相関を有するため、残存容量変化がこれら劣化関連量に与える影響を減殺することが好適と考えられる。この態様は、上記観点からこれら劣化関連量を、所定容量放電時の値を基準として決定する（比）、又は、残存容量変化による変動が無い劣化関連量を加味して（一次関数）、ニューラルネット演算の入力パラメータとする。もちろん、上記劣化関連量の比と一次関数との両方をニューラルネット演算のための入力パラメータとして用いてもよい。
【００１７】
好適な態様において、前記電池状態量は、平均電圧（Ｖa）、開路電圧（Ｖｏ）、内部抵抗（Ｒ）及び最大放電電力（Ｖo・Ｖo／（４Ｒ））のすべてを含む。このようにすれば、一層優れた残存容量演算精度が得られることがわかった。
【発明を実施するための最良の形態】
【００１８】
本発明の車両用蓄電装置のニューラルネット演算方式を実施例を参照して図面に沿って具体的に説明する。
【実施例１】
【００１９】
（回路構成）
実施例１の車両用蓄電装置のニューラルネット演算方式について以下に説明する。まず、装置の回路構成を図１に示すブロック図を参照して説明する。
【００２０】
１０１は車載蓄電装置（以下、バッテリとも呼ぶ）、１０２はこの車載蓄電装置を充電する車載発電機、１０３は車載蓄電装置１０１から給電される車載電気負荷をなす電気装置、１０４は車載蓄電装置１０１の充放電電流を検出する電流センサ、１０５は車載蓄電装置１０１の状態を検出する電子回路装置である蓄電池状態検知装置、１０６はバッテリ１０１及び電流センサ１０４から入力される電池の電圧及び電流に基づいてニューラルネット演算用の入力信号（入力パラメータ）を形成するバッファ部、１０７はバッファ部１０６から入力される各種の入力信号をニューラルネット演算してＳＯＣを出力するニューラルネット部、１０８はニューラルネット部１０７などから読み込んだ信号に基づいて車載発電機１０２の発電量を制御する発電機制御装置である。１０９は、発電量の制御のために発電機制御装置１０８に入力される他の入力信号や指令信号である。バッファ部１０６、ニューラルネット部１０７及び補正信号発生部１０９はこの実施例ではマイコン装置によるソフトウエア演算により実現されるが、専用のハードウエア回路により構成されてよいことはもちろんである。
【００２１】
（バッファ部１０６）
バッファ部１０６の回路機能を、図２に示すフローチャートを参照して説明する。
【００２２】
まず、ニューラルネット部１０７の前置信号処理回路であって、車載蓄電装置１０１の電圧と電流センサ１０４からの電流とを一定時間ごとに同時にサンプリングして電池の電圧・電流ペアとして検出し、記憶する（Ｓ１００）。次に、これら電圧・電流ペアに基づいて、直前の所定期間の平均電圧（Ｖａ）、開路電圧（Ｖｏ）、内部抵抗（Ｒ）及び最大放電電力（Ｐ＝Ｖｏ・Ｖｏ／（４Ｒ））の現在値Ｖａt、Ｖｏt、Ｒt、Ｐtを算出する（Ｓ１０２）。ここで、Ｖａtは平均電圧（Ｖａ）の現在値、Ｖｏtは開路電圧（Ｖｏ）の現在値、Ｒtは内部抵抗（Ｒ）の現在値、Ｐtは最大放電電力（Ｖｏ・Ｖｏ／（４Ｒ））の現在値である。開路電圧（Ｖｏ）、内部抵抗（Ｒ）の算出方法は後述する。
【００２３】
次に、現在の蓄電状態が、満充電から所定容量（ここでは１．４Ah）放電した状態か否かを判定し（Ｓ１０４）、そうでなければステップＳ１０８にジャンプし、そうであればステップＳ１０２で算出した各現在値Ｖａt、Ｖｏt、Ｒt、Ｐtを所定容量放電時の値Ｖａf、Ｖｏf、Ｒf、Ｐfとする。なお、Ｖａfは所定容量放電時の平均電圧（Ｖａ）の値、Ｖｏfは所定容量放電時の開路電圧（Ｖｏ）の値、Ｒfは所定容量放電時の内部抵抗（Ｒ）の値、Ｐfは所定容量放電時の最大放電電力（Ｖｏ・Ｖｏ／（４Ｒ））の値である。
【００２４】
次に、ステップＳ１０８において、各比Ｖａt／Ｖａf、Ｖｏt／Ｖof、Ｒt／Ｒf、Ｐt／Ｐfを算出してニューラルネット１０７に入力パラメータとして出力し、ルーチンを次回の電圧・電流ペアのサンプリングまで休止する。ここで、Ｖａt／Ｖａfは平均電圧（Ｖａ）の比、Ｖｏt／Ｖofは開路電圧（Ｖｏ）の比、Ｒt／Ｒfは内部抵抗（Ｒ）の比、Ｐt／Ｐfは最大放電電力（Ｖｏ・Ｖｏ／（４Ｒ））の比である。
【００２５】
満充電から所定容量放電したかどうかの判定は、たとえば図３のルーチンにて行うことができる。すなわち、満充電判定を行い、満充電と判定したらその後の充放電電流の積算を行い、積算値（放電量）Ahがあらかじめ設定した所定のしきい値容量値Ahthに達したら、満充電から所定容量放電したと判定すればよい。上記所定容量値としては、満充電から初期満充電容量の５％だけ放電した値とすることが好ましいがこれに限定されるものではない。種々実験によればこのように満充電から僅かに放電した状態は基準として用いるのに好適である。
【００２６】
（満充電の判定）
次に、図３に示す満充電の判定動作を以下に説明する。この実施例では、あらかじめ記憶する電池の電圧・電流の二次元空間の所定の二次元領域を満充電領域としてあらかじめ記憶しておき、入力された電流・電圧ペアにより指定される二次元座標がこの満充電領域（図３参照）に入ったら満充電と判定する。
【００２７】
（開路電圧（Ｖｏ）及び内部抵抗（Ｒ）の算出）
次に、開路電圧（Ｖｏ）及び内部抵抗（Ｒ）の算出方法を図４、図５を参照して以下に説明する。この算出方法は、記憶する電圧・電流ペアの群を電圧及び電流を座標軸とする二次元空間上にそれぞれ座標表示し、この二次元空間上の電圧・電流ペアの各座標群から最小自乗法により電圧と電流との関係を示す近似式を演算、創成し、この近似式により切片（開路電圧）及び／又は傾斜（内部抵抗）を演算する公知の方法を採用する。つまり、上記近似式の切片として開路電圧（Ｖｏ）を求め、この近似式の傾きを内部抵抗（Ｒ）として求める。なお、上記直線近似の精度を向上するために、電池の分極状態を過去の電流情報などから求めて分極指数として表し、この分極指数が所定の範囲内であるデータを選別することが好ましい。この種の最小自乗法を用いた直線近似式の創成と、この直線近似式を用いた開路電圧の抽出自体は公知事項であるため、更なる説明は省略する。
【００２８】
（ニューラルネット部１０７）
図６に示すニューラルネット部１０７の構成例を参照して、ニューラルネット部１０７の演算を説明する。このニューラルネットワーク部１０７は３階層のフィードフォワード型で誤差逆伝播方法により学習する形式であるが、この形式に限定されるものではない。ニューラルネット部１０７は、複数の入力ポート（入力セル）をもつ入力層２０１、複数の中間ポート（中間セル）をもつ中間層２０２及び一つの出力ポート（出力セル）からなる出力層２０３により構成され、各層が所定の結合係数を有して接続されている。ただし、ニューラルネット部１０７は、実際には所定の演算インタバルで実施されるソフトウエア処理により構成される。つまり、ニューラルネット部１０７は、実際にはマイコン回路のソフトウエア演算により構成されるため、図１に示す回路構成は機能的なものにすぎない。
【００２９】
入力層２０１は所定数の入力セルからなる。各入力セルはそれぞれ、バッファ部１０６からの所定個数の入力パラメータを入力データ（入力信号）として中間層２０２の各演算セルすべてに出力する。中間層２０２の各演算セルは、入力層２０１の各入力セルから入力される各入力データに後述するニューラルネット演算を行い、演算結果を出力層２０３の出力セルに出力する。出力層２０３の出力セルは、この実施例では充電率（SOC）を出力する。
【００３０】
ニューラルネット部１０７の入力層201のｊ番目のセルの入力データをINj、入力層201のｊ番目と中間層202のｋ番目のセルの結合係数をＷjkとすると中間層のｋ番目のセルへの入力信号は、
INPUTk(t)＝Σ( Wjk * INj )             ( j = 1 to ２ｍ+3 )
となる。中間層のｋ番目のセルからの出力信号は、
OUTk(t)＝ｆ(ｘ)＝ｆ( INPUTk(t) + b )
で表される。ｂは定数である。ｆ( INPUTk(t) + b) は INPUTk(t) + bを入力変数とするいわゆるシグモイド関数と呼ばれる非線形関数であり、
f (  INPUTk(t) + b )＝１／（１＋exp（−（ INPUTk(t) + b）））
で定義される関数である。中間層202のｋ番目のセルと出力層203のセルとの結合係数をＷkとすれば、出力層への入力信号は同様に、
INPUTｏ(t)＝Σ Wk * OUTk(t)
k＝1 to Q
で表される。 Qは中間層202のセル数である。時刻ｔにおける出力信号は、
OUT(t)＝L * INPUTｏ(t)
となる。Ｌは線形定数である。
【００３１】
この明細書で言う学習過程とは、時刻ｔにおける最終出力OUT(t)と、あらかじめ測定した後述の教師信号（即ち真値tar(t)）との間の誤差を最小にするように各セル間の結合係数を最適化することである。なお、出力OUT(t)は、出力層２０３が出力すべき出力パラメータであり、ここでは時点ｔにおけるＳＯＣである。
【００３２】
次に各結合係数の更新方法について説明する。
【００３３】
中間層のｋ番目のセルと出力層のセル間の結合係数Wkの更新は、
Wk ＝ Wk + △Wk
で行われる。ここで△Wkは以下で定義される。
【００３４】
△Wk = −η*∂Ek／∂Wk                      η；定数
= η* [ OUT(t) − tar(t) ]* [ ∂OUT(t)／∂Wk ]
= η* [ OUT(t) − tar(t) ]* L *[ ∂INPUTｏ(t)／∂Wk ]
= η* L* [ OUT(t) − tar(t) ] * OUTk(t)
で表される。Ekは教師データとネットワーク出力の誤差を表す量で次の式で定義される。
【００３５】
Ek＝[ OUT(t) − tar(t) ]×[ OUT(t) − tar(t) ]／2
次に、中間層202のｋ番目のセルと入力層201のｊ番目のセルの結合係数Ｗjkの更新ルールを説明する。結合係数Wjkの更新は以下の式で実現される。
【００３６】
Wjk ＝ Wjk ＋ △Wjk
ここで△Ｗjkは以下で定義される。
【００３７】
△Wjk ＝ −η*∂Ek／∂Wjk
＝ −η*[∂Ek／∂INPUTk(t) ] * [∂INPUTk(t)／∂Ｗjk ]
＝ −η*[∂Ek／∂OUTk(t) ] *[∂OUTk(t)／∂INPUTk(t) ] * INj
＝ −η*[∂Ek／∂OUT(t) ] * [∂OUT(t)／∂INPUTｏ] *
[∂INPUTｏ／OUTk(t) ] * ｆ’（INPUTk(t)＋ｂ）* INj
＝  −η*( OUT(t)−tar(t)) *Ｌ* Ｗk *ｆ’（INPUTk(t)＋ｂ）* INj
＝  −η* L * Wk * INj * ( OUTsoc(t)−tar(t))* f’(INPUTk(t)＋ｂ)
ここで、ｆ’（INPUTk(t)＋ｂ）は伝達関数fの微分値である。
【００３８】
こうして更新された新たな結合係数 Wk、Wjk で再び出力OUT(t)すなわち時点ｔにおけるＳＯＣを計算し、誤差関数Ekが所定の微小値以下になるまで結合係数を更新しつづける。このように誤差関数Ekを所定値以下になるよう結合係数を更新してゆく過程が学習過程である。
【００３９】
上記学習過程のフローチャートを図７を参照して説明する。ただし、ニューラルネット部１０７が出力するべき蓄電装置の蓄電状態量はSOC(充電率)である。
【００４０】
まず、ニューラルネット部１０７の各結合係数の適当な初期値を設定する（ステップ302）。これは例えば乱数などにより適当に決定すればよい。次に、学習用の入力信号をニューラルネット部１０７の入力層201の各セルに個別に入力し（ステップ303）、この入力信号を上記した結合係数の初期値を用いてニューラルネット演算することにより出力パラメータとしてのSOCを算出する（ステップ304）。
【００４１】
次に、上記した方法で誤差関数Ｅｋを算出し（ステップ305）、この誤差関数が所定の微小値ｔｈより小さいか否か判定する（ステップ306）。誤差関数Ｅｋが微小値ｔｈより大きければ、前記学習過程で定義された各結合係数の更新量△Ｗを計算し（ステップ307）、各結合係数を更新する（ステップ308）。
【００４２】
次に、再び学習用の入力信号を入力層201の各セルに入力してSOCを計算する。次に、誤算関数Ｅｋを評価してそれが微小値ｔｈを下回れば学習を完了したと判定して（ステップ309）、この学習課程を終了する。誤差関数Ｅｋが微小値を下回ってなければ、結合係数を再び更新してSOC計算し、誤差関数Ｅｋの評価を実施し、誤差関数Ｅｋがこの微小値を下回るまでこの課程を繰り返す。製品の出荷前に代表的な充放電パターンを幾つかの電池種類を用いて上記した学習課程をニューラルネット部１０７に学習させておく。
【００４３】
（試験）
図８に示す学習用のバッテリA〜Gを所定充放電パターン(10.15モード)で運転することにより、これらバッテリA〜Gの入力パラメータと出力パラメータ（ＳＯＣ）との関係を入力パラメータ１０７に実際に学習させた。この実施例では、入力パラメータとして、平均電圧（Ｖａ）、開路電圧（Ｖｏ）、内部抵抗（Ｒ）、最大放電電力（Ｖｏ・Ｖｏ／（４Ｒ））を採用した。
【００４４】
各バッテリＡ〜Eの開路電圧（Ｖｏ）とＳＯＣとの関係を図９に、各バッテリＡ〜Eの内部抵抗（Ｒ）とＳＯＣとの関係を図１０に、各バッテリＡ〜Eの最大放電電力（Ｖｏ・Ｖｏ／（４Ｒ））とＳＯＣとの関係を図１１に示す。
【００４５】
次に、別の３つの試験用のバッテリを所定の充放電パターン(10.15モード)で運転して平均電圧（Ｖａ）、開路電圧（Ｖｏ）、内部抵抗（Ｒ）及び最大放電電力（Ｖｏ・Ｖｏ／（４Ｒ））を求め、それらを入力パラメータとして上記学習済みニューラルネット部１０７でＳＯＣの演算を行った。その結果を図１２〜図１４に示す。図１２は第１の試験バッテリのＳＯＣ演算結果、図１３は第２の試験バッテリのＳＯＣ演算結果、図１４は第３の試験バッテリのＳＯＣ演算結果を示す。各試験バッテリの算出ＳＯＣの平均自乗誤差は８．５％、１２．５％、１４．６％であった。
【００４６】
次に、学習用のバッテリＡ〜Ｇを上記と同様に、所定充放電パターン(10.15モード)で運転することにより、これらバッテリA〜Gの入力パラメータと出力パラメータ（ＳＯＣ）との関係を入力パラメータ１０７に実際に学習させた。この実施例では、入力パラメータとして、後述する  ４つの比を用いた。
【００４７】
更に説明すると、満充電から所定容量（Ahth）放電した状態（初期満充電容量の５％放電した状態＝満充電から１．４Ah放電した状態）となるたびに、平均電圧（Ｖａ）、開路電圧（Ｖｏ）、内部抵抗（Ｒ）及び最大放電電力（Ｖｏ・Ｖｏ／（４Ｒ））の値をＶａｆ、Ｖｏｆ、Ｒｆ及びPfとして書き換えて記憶し、一定インタバルで入力される平均電圧（Ｖａ）、開路電圧（Ｖｏ）、内部抵抗（Ｒ）及び最大放電電力（Ｖｏ・Ｖｏ／（４Ｒ））の現在値（今回値）Ｖａt、Ｖｏt、Ｒt、Ｐtを分子、Ｖａｆ、Ｖｏｆ、Ｒｆ及びPfを分母とする４つの比を求め、これらの比Ｖａt／Ｖａf、Ｖｏt／Ｖof、Ｒt／Ｒf、Ｐt／Ｐfをニューラルネット部１０７の入力パラメータとしてＳＯＣをニューラルネット演算した。比Ｖｏt／ＶofとＳＯＣとの相関を図１５に、比Ｒt／ＲfとＳＯＣとの相関を図１６に、比Ｐt／ＰfとＳＯＣとの相関を図１７に示す。これらの比はＳＯＣと良い相関をもち、特に比Ｖｏt／Ｖof、比Ｒt／ＲfはＳＯＣに対して特に強い相関をもつことがわかった。
【００４８】
次に、別の３つの試験用のバッテリを所定の充放電パターン(10.15モード)で運転して上記４つの比を求め、それらを入力パラメータとして上記学習済みニューラルネット部１０７でＳＯＣの演算を行った。その結果を図１８〜図２０に示す。図１８は第１の試験バッテリのＳＯＣ演算結果、図１９は第２の試験バッテリのＳＯＣ演算結果、図２０は第３の試験バッテリのＳＯＣ演算結果を示す。各試験バッテリの算出ＳＯＣの平均自乗誤差は４．３％、６．７％、３．９％であった。
【００４９】
図１２〜図１４と図１８〜図２０とを比較すれば明らかなように、多数の入力データ数が増大してニューラルネット演算が複雑化する電圧履歴や電流履歴を入力パラメータとして用いなくても、平均電圧（Ｖａ）、開路電圧（Ｖｏ）、内部抵抗（Ｒ）及び最大放電電力（Ｖｏ・Ｖｏ／（４Ｒ））を上記比の形式でニューラルネット演算することにより、バッテリのＳＯＣを高精度に検出することができる。すなわち、満充電から所定容量放電した時点の平均電圧（Ｖａ）、開路電圧（Ｖｏ）、内部抵抗（Ｒ）及び最大放電電力（Ｖｏ・Ｖｏ／（４Ｒ））を基準として現在のそれらの値をニューラルネット演算の入力パラメータとすることにより、多数の入力データとなる電圧履歴や電流履歴を入力パラメータとして用いなくても高精度にＳＯＣを演算できることがわかった。
【００５０】
（変形態様）
上記実施例では、平均電圧（Ｖａ）も比表示したが、平均電圧（Ｖａ）は比表示せずに入力パラメータとして直接用いても、誤差増加は小さかった。その他、上記実施例に加えて、平均電流の今回値（Ia）又はその比Ia/If（Ifは満充電から上記所定容量放電した時点の平均電流の値）を入力パラメータとして追加してもよく、この場合には更に誤差が減少した。その他、ニューラルネット演算処理量が増大するが、電圧履歴や電流履歴も更に入力パラメータとして付け加えても良く、この場合には更に誤差が減少した。
【実施例２】
【００５１】
他の実施例を図２１〜図２８を参照して説明する。
【００５２】
この実施例は、開路電圧（Ｖｏ）を次の式にて補正したものである。
【００５３】
Ｖot’＝Ｖot＋αＶoｆ１＋βΔＶox
Ｖox＝Ｖｏｆ１ーＶｏｆ２
ここで、Ｖot’はニューラルネットに入力パラメータとして入力する補正開路電圧であり、Ｖｏｔは開路電圧（Ｖｏ）の今回値（現在値）である。α、βは１より小さい係数であり、Ｖｏｆ１は満充電から１Ah（初期（定格）満充電容量の５％）放電した時点の開路電圧（Ｖｏ）の値、Ｖｏｆ２は満充電から５Ah（初期（定格）満充電容量の２５％）放電した時点の開路電圧（Ｖｏ）の値である。したがって、上記２式は、次式に展開することができる。
【００５４】
Ｖot’＝Ｖot＋αＶoｆ１＋β（Ｖｏｆ１ーＶｏｆ２）
＝Ｖot＋（α＋β）Ｖoｆ１ーβＶｏｆ２
すなわち、この実施例では、ニューラルネットに入力する開路電圧信号Ｖｏｔ’は、開路電圧（Ｖｏ）の今回値と、満充電から所定容量放電した時点の開路電圧（Ｖｏ）の値（Ｖoｆ１、Ｖｏｆ２）との一次関数とになる。開路電圧（Ｖｏ）をこのように満充電から所定容量放電した時点の値にて一次関数補正することにより、開路電圧（Ｖｏ）とＳＯＣとの相関を向上できることがわかった。たとえば、３つの試験用のバッテリの開路電圧（Ｖｏ）の今回値VotとＳＯＣとの相関を図２１に示し、これら３つの試験用のバッテリの開路電圧（Ｖｏ）の一次関数補正開路電圧Vot’とＳＯＣとの相関を図２２に示す。図２１と図２２との比較から明らかなように、各試験用のバッテリの間の劣化状態や初期ばらつきにもかかわらず、一次関数補正開路電圧Ｖｏｔ’とＳＯＣとのばらつきは大幅に低減できることがわかった。
【００５５】
（試験）
図８に示す学習用のバッテリA〜Gを所定充放電パターン(10.15モード)で運転することにより、これらバッテリA〜Gの入力パラメータと出力パラメータ（ＳＯＣ）との関係を入力パラメータ１０７に実際に学習させた。この実施例では、入力パラメータとして、電圧履歴、電流履歴及び開路電圧（Ｖｏ）を採用した。電圧履歴、電流履歴は、は現時点から所定時間前までの期間に一定インタバルでサンプリングされた電圧・電流ペアからなる。
【００５６】
次に、互いに開路電圧特性が異なる別の３つの試験用のバッテリを所定の充放電パターン(10.15モード)で運転して求めた電圧履歴、電流履歴、開路電圧を入力パラメータとして上記学習済みニューラルネット部１０７でＳＯＣの演算を行った。その結果を図２３〜図２５に示す。図２３は第１の試験バッテリのＳＯＣ演算結果、図２４は第２の試験バッテリのＳＯＣ演算結果、図２５は第３の試験バッテリのＳＯＣ演算結果を示す。各試験バッテリの算出ＳＯＣの平均自乗誤差は１３．５％、２３．３％、２１．０％であった。
【００５７】
次に、学習用のバッテリＡ〜Ｇを上記と同様に、所定充放電パターン(10.15モード)で運転することにより、これらバッテリA〜Gの入力パラメータと出力パラメータ（ＳＯＣ）との関係を入力パラメータ１０７に実際に学習させた。この実施例では、入力パラメータとして、上記説明した電圧履歴、電流履歴及び一次関数補正開路電圧Ｖｏｔ’を用いた。
【００５８】
更に説明すると、満充電から１Ah放電した時点の開路電圧（Ｖｏ）の値ＶｏｔをＶｏｆ１として、満充電から５Ah放電した時点の開路電圧（Ｖｏ）の値ＶｏｔをＶｏｆ２として書き換えて記憶する。次に、求めた値Ｖｏｆ１、Ｖｏｆ２と開路電圧（Ｖｏ）の今回値Ｖｏｔを用いて、一次関数補正開路電圧Ｖｏｔ’を求める。次に、一次関数補正開路電圧Ｖｏｔ’と電圧履歴と電流履歴とをニューラルネット部１０７に入力パラメータとして入力してＳＯＣを演算した。その結果を図２６〜図２８に示す。図２６は第１の試験バッテリのＳＯＣ演算結果、図２７は第２の試験バッテリのＳＯＣ演算結果、図２８は第３の試験バッテリのＳＯＣ演算結果を示す。各試験バッテリの算出ＳＯＣの平均自乗誤差は８．０％、９．４％、８．１％であった。
【００５９】
図２３〜図２５と図２６〜図２８とを比較すれば明らかなように、開路電圧（Ｖｏ）を一次関数補正するだけで、ＳＯＣのニューラルネット演算精度を大幅に向上することができることが判明した。
【００６０】
（変形態様）
上記実施例では、開路電圧（Ｖｏ）の一次関数補正のみを行ったが、内部抵抗（Ｒ）や最大放電電力（Ｖｏ・Ｖｏ／（４Ｒ））も同様に一次関数補正してニューラルネット演算の入力パラメータとして採用してもよい。また、電圧履歴や電流履歴に代えて平均電圧や平均電流を入力パラメータとしてもよい。
【００６１】
上記実施例の一次関数補正では、満充電からの所定容量放電時の開路電圧（Ｖｏ）の値として互いに放電量が異なる時点の２つの値を採用したが、満充電からの所定容量放電時の開路電圧（Ｖｏ）の値として一つの値を採用してもよく、更に多くの値を採用しても良い。更に、劣化関連電池状態量としての開路電圧（Ｖｏ）、内部抵抗（Ｒ）及び最大放電電力（Ｖｏ・Ｖｏ／（４Ｒ））に対して実施例１で求めた比補正と、実施例２で求めた一次関数補正とをそれぞれ異なる入力パラメータとしてニューラルネット演算に用いても良い。更には、開路電圧（Ｖｏ）、内部抵抗（Ｒ）及び最大放電電力（Ｖｏ・Ｖｏ／（４Ｒ））に対して実施例２で開示した一次関数補正を行い、この一次関数補正した開路電圧（Ｖｏ）、内部抵抗（Ｒ）及び最大放電電力（Ｖｏ・Ｖｏ／（４Ｒ））に対して、実施例１で行った比表示をそれぞれ行い、これらの比を入力パラメータとしてニューラルネット演算に用いても良い。
【図面の簡単な説明】
【００６２】
【図１】実施例１の装置の回路構成を示すブロック図である。
【図２】実施例１の走行中における各比の演算方法を示すフローチャートである。
【図３】実施例１の満充電から所定容量放電時点を判定するためのフローチャートである。
【図４】実施例１の満充電判定のための満充電領域を示す図である。
【図５】実施例１の開路電圧と内部抵抗を得るための近似式の例を示す図である。
【図６】電池状態検知装置を構成するニューラルネットワーク部の構成を示すブロック図である。
【図７】図６のニューラルネット部の学習過程のフローチャートである。
【図８】学習に用いた各バッテリの満充電容量を示す図である。
【図９】学習に用いた各バッテリの開路電圧（Ｖｏ）とＳＯＣとの相関を示す特性図である。
【図１０】学習に用いた各バッテリの内部抵抗（Ｒ）とＳＯＣとの相関を示す特性図である。
【図１１】学習に用いた各バッテリの最大放電電力（Ｖｏ・Ｖｏ／（４Ｒ））とＳＯＣとの相関を示す特性図である。
【図１２】比表示しない入力パラメータを用いて第１の試験バッテリのＳＯＣをニューラルネット演算した結果を示す図である。
【図１３】比表示しない入力パラメータを用いて第２の試験バッテリのＳＯＣをニューラルネット演算した結果を示す図である。
【図１４】比表示しない入力パラメータを用いて第３の試験バッテリのＳＯＣをニューラルネット演算した結果を示す図である。
【図１５】学習に用いた各バッテリの比表示した開路電圧（Ｖｏ）とＳＯＣとの相関を示す特性図である。
【図１６】学習に用いた各バッテリの比表示した内部抵抗（Ｒ）とＳＯＣとの相関を示す特性図である。
【図１７】学習に用いた各バッテリの比表示した最大放電電力（Ｖｏ・Ｖｏ／（４Ｒ））とＳＯＣとの相関を示す特性図である。
【図１８】比表示した入力パラメータを用いて第１の試験バッテリのＳＯＣをニューラルネット演算した結果を示す図である。
【図１９】比表示した入力パラメータを用いて第２の試験バッテリのＳＯＣをニューラルネット演算した結果を示す図である。
【図２０】比表示した入力パラメータを用いて第３の試験バッテリのＳＯＣをニューラルネット演算した結果を示す図である。
【図２１】実施例２の試験用のバッテリの一次関数補正しない場合の開路電圧（Ｖｏ）とＳＯＣとの関係を示す特性図である。
【図２２】実施例２の試験用のバッテリの一次関数補正した場合の開路電圧（Ｖｏ）とＳＯＣとの関係を示す特性図である。
【図２３】一次関数補正しない開路電圧（Ｖｏ）を用いて第１の試験バッテリのＳＯＣをニューラルネット演算した結果を示す図である。
【図２４】一次関数補正しない開路電圧（Ｖｏ）を用いて第２の試験バッテリのＳＯＣをニューラルネット演算した結果を示す図である。
【図２５】一次関数補正しない開路電圧（Ｖｏ）を用いて第３の試験バッテリのＳＯＣをニューラルネット演算した結果を示す図である。
【図２６】一次関数補正した開路電圧（Ｖｏ）を用いて第１の試験バッテリのＳＯＣをニューラルネット演算した結果を示す図である。
【図２７】一次関数補正した開路電圧（Ｖｏ）を用いて第２の試験バッテリのＳＯＣをニューラルネット演算した結果を示す図である。
【図２８】一次関数補正した開路電圧（Ｖｏ）を用いて第３の試験バッテリのＳＯＣをニューラルネット演算した結果を示す図である。
【符号の説明】
【００６３】
１０１      車載蓄電装置
１０２      車載発電機
１０４      電流センサ
１０５      蓄電池状態検知装置（演算手段）
１０６      バッファ部
１０７      ニューラルネットワーク部（ニューラルネット部）
１０８      発電機制御装置
２０１      入力層
２０２      中間層
２０３      出力層
【図１】
2006329707.tif 000003
【図２】
2006329707.tif 000004
【図３】
2006329707.tif 000005
【図４】
2006329707.tif 000006
【図５】
2006329707.tif 000007
【図６】
2006329707.tif 000008
【図７】
2006329707.tif 000009
【図８】
2006329707.tif 000010
【図９】
2006329707.tif 000011
【図１０】
2006329707.tif 000012
【図１１】
2006329707.tif 000013
【図１２】
2006329707.tif 000014
【図１３】
2006329707.tif 000015
【図１４】
2006329707.tif 000016
【図１５】
2006329707.tif 000017
【図１６】
2006329707.tif 000018
【図１７】
2006329707.tif 000019
【図１８】
2006329707.tif 000020
【図１９】
2006329707.tif 000021
【図２０】
2006329707.tif 000022
【図２１】
2006329707.tif 000023
【図２２】
2006329707.tif 000024
【図２３】
2006329707.tif 000025
【図２４】
2006329707.tif 000026
【図２５】
2006329707.tif 000027
【図２６】
2006329707.tif 000028
【図２７】
2006329707.tif 000029
【図２８】
2006329707.tif 000030