上記のように従来の電池パック1とこれが装着される電子機器等の本体2との間で行われる双方向通信では、電池パック1側としては、常に最新の情報を収集して用意し、本体2側の問い合わせのために待機するようにしている。このような要請に答えるには、電池パック1のマイクロコンピュータ11は高速処理ができるもの(動作クロックの周波数が高いもの)でなければならないため、高価なマイクロコンピュータを使用する必要があるだけでなく、消費電力も増大してしまうという課題があった。また、本体側も問い合わせをしなければ電池パックの情報が得られず、この分、本体側のマイクロコンピュータ21に負担がかかるという課題があった。
また、電池パックの残容量を求める過程で補正計算を2度行うため、計算が繁雑になるだけでなく、特に温度による補正計算の誤差が大きいため、計算精度が悪化するという課題があった。しかも、この残容量は現在の負荷がこれ以降も続くものとして算出されているため、最大負荷が掛かった場合の最悪の場合の残容量が分からず、算出された残容量より早めに電池がなくなって慌ててしまうなどの課題があった。
更に、従来のΔV方式による総容量の算出では、特に温度対内部抵抗の関係に高精度の予測補正が必要で、その補正が複雑であるため、算出された総容量の精度が低くなってしまうという課題があった。充放電サイクル後の総容量を求める計算にも予測補正を施すため、計算が繁雑になると共に計算精度が悪化するという課題があった。
また、電池の電圧がマイクロコンピュータ11の動作可能な基準電圧より低下すると、以降の前記電池の過電圧検出動作が不安定になって、前記電池を過充電してしまう可能性を払拭できないという課題があった。
また、電池パックの電池の状態を示す情報を表示させるには、ユーザが電池パックを本体に装着しなければならず、ユーザに負担がかかるだけでなく、電池パックの状態を事前にチェックすることができないという課題があった。
本発明は、このような状況に鑑みてなされたものであり、その第1の目的は低速処理のマイクロコンピュータを用いて且つ省電力で本体側に各種情報を送信すること、その第2の目的は電池の残容量及び充放電回数を経た後の電池の総容量の計算精度を上げること、その第3の目的は最大負荷時の電池の残容量を算出すること、その第4の目的はマイクロコンピュータが低電圧で不安定な動作状態になったとしても、電池の過電圧検出を安全サイドで確実に行うこと、その第5の目的は電池の状態などを示す各種データの表示をユーザに負担を掛けず省電力で行うことができることである。
請求項1の発明の電池パックは、電子機器に電力を供給する2次電池と、前記2次電池の端子電圧から残りの電池容量を時間を単位として求めるためのデータを収容したテーブルを記憶する記憶手段と、第1の所定時間ごとに、前記2次電池の端子電圧のデータを収集するデータ収集手段と、前記データ収集手段により収集された前記端子電圧から前記記憶手段内のテーブルのデータを参照して前記2次電池の残りの電池容量を時間を単位として求める残容量算出手段と、前記残容量算出手段により算出された残りの電池容量を、前記第1の所定時間より短い第2の所定時間おきに、前記2次電池を電源として動作する前記電子機器に対してその電子機器からの制御とは独立に一方向性で送信する送信手段とを備えたことを特徴とする。
このような構成により、前記残容量算出手段により算出された残りの電池容量を、前記2次電池を電源として動作する電子機器からの制御とは独立に一方向性で送信するので、前記送信手段や前記残容量算出手段の動作クロックを前記電子機器の動作クロックに合わせる必要がないため、低周波の動作クロックにても上記データ収集及び送信処理を十分こなせる。また、前記残容量算出手段は前記データ収集手段により収集された前記端子電圧のデータから前記記憶手段内のテーブルデータを参照して前記2次電池の残りの時間を単位とした電池容量を複数回の補正計算をすることなく求める。
請求項2の発明の電池パックは、前記残容量計算手段が前記テーブルに収容されていない前記データ収集手段により収集された前記2次電池の端子電圧のデータに対しては、前記テーブルに収容されているデータを補間することにより前記2次電池の残りの電池容量を求めることを特徴とする。
このような構成により、前記残容量計算手段は前記テーブルに収容されていない前記データ収集手段により収集された前記2次電池の端子電圧のデータに対して、補間計算を1回行うだけで前記2次電池の残りの電池容量を求める。
請求項3の発明の通信方法は、電子機器に電力を供給する2次電池を備える電池パックの通信方法において、第1の所定時間ごとに、前記2次電池の端子電圧のデータを収集し、前記2次電池の端子電圧から残りの電池容量を時間を単位として求めるためのデータを収容したテーブルを参照することにより、収集された前記端子電圧から前記2次電池の残りの電池容量を時間を単位として求め、求められた前記残りの電池容量を、前記第1の所定時間より短い第2の所定時間おきに、前記2次電池を電源として動作する前記電子機器に対してその電子機器からの制御とは独立に一方向性で送信することを特徴とする。
このような構成により、求められた残りの電池容量は、2次電池を電源として動作する電子機器の制御系とは独立に、例えば一般的なUART(universal asynchronous receiver/transmitter)に則ったプロトコルで一方向性で送信されるので、送信や残りの電池容量の算出を行う動作クロックを前記電子機器の動作クロックに合わせる必要がなくなり、低周波の動作クロックにても上記データ収集及び送信処理が十分行われる。また、収集された前記端子電圧のデータから前記記憶手段内のテーブルデータを参照して前記2次電池の残りの時間を単位とした電池容量が複数回の予測計算や補正計算などを行うことなく求められる。
請求項4の発明の電池パックは、電子機器に電力を供給する2次電池と、第1の所定時間ごとに、前記2次電池の端子電圧のデータを収集するデータ収集手段と、前記2次電池の端子電圧から残りの電池容量を求める残容量算出手段と、過去n回の放電の繰り返し回数の中での最大負荷を記憶する記憶手段と、前記残容量算出手段により求められた残りの電池容量を前記記憶手段に記憶した最大負荷で補正して、最大負荷での前記2次電池の残りの電池容量を求める補正手段と、前記最大負荷での残りの電池容量を、前記第1の所定時間より短い第2の所定時間おきに、前記2次電池を電源として動作する前記電子機器に対してその電子機器からの制御とは独立に一方向性で送信する送信手段とを備えたことを特徴とする。
このような構成により、前記残容量算出手段は2次電池の残りの電池容量を求め、前記求まった電池容量を前記補正手段により最大負荷で補正して前記最大負荷での前記2次電池の残りの電池容量を求めている。
請求項5の発明の通信方法は、電子機器に電力を供給する2次電池を備える電池パックの通信方法において、第1の所定時間ごとに、前記2次電池の端子電圧のデータを収集し、前記2次電池の端子電圧から残りの電池容量を求めた後、前記残りの電池容量を過去n回の放電の繰り返し回数の中での最大負荷で補正して、最大負荷での前記2次電池の残りの電池容量を求め、前記最大負荷での残りの電池容量を、前記第1の所定時間より短い第2の所定時間おきに、前記2次電池を電源として動作する前記電子機器に対してその電子機器からの制御とは独立に一方向性で送信することを特徴とする。
このような構成により、2次電池の残りの電池容量が求められ、前記求まった電池容量を最大負荷で補正して、前記最大負荷での前記2次電池の残りの電池容量が求められる。
請求項6の発明の電池パックは、電子機器に電力を供給する2次電池と、前記2次電池の初期の充電時に、第1の基準電圧E1Vから第2の基準電圧E2Vまでその端子電圧が上昇する間に前記2次電池に充電された容量としての初期容量、及び前記2次電池の初期の充電時における総容量としての初期総容量を記憶する記憶手段と、前記2次電池の充電時に、前記第1の基準電圧E1Vから第2の基準電圧E2Vまでその端子電圧が上昇する間に前記2次電池に充電される容量を求める容量取得手段と、第1の所定時間ごとに、前記容量取得手段により求められた前記容量並びに前記記憶手段に記憶されている前記初期容量及び前記初期総容量から、現在の前記2次電池の総容量を演算する演算手段と、前記現在の2次電池の総容量を、前記第1の所定時間より短い第2の所定時間おきに、前記2次電池を電源として動作する前記電子機器に対してその電子機器からの制御とは独立に一方向性で送信する送信手段とを備えることを特徴とする。
このような構成により、前記容量取得手段は前記2次電池の充電時に第1の基準電圧E1Vから第2の基準電圧E2Vまでその端子電圧が上昇する間に、前記2次電池に充電される容量を求める。演算手段は例えば、前記容量取得手段により求められた前記容量と前記記憶手段内の初期容量との比率を算出し、前記比率を前記記憶手段内の初期総容量に乗じることにより現在の前記2次電池の総容量を予測補正なしで算出する。
請求項7の発明の通信方法は、電子機器に電力を供給する2次電池を備える電池パックの通信方法において、前記2次電池の初期の充電時に、第1の基準電圧E1Vから第2の基準電圧E2Vまでその端子電圧が上昇する間に前記2次電池に充電された容量としての初期容量、及び前記2次電池の初期の充電時における総容量としての初期総容量を予め記憶した後、前記2次電池の充電時に、前記第1の基準電圧E1Vから第2の基準電圧E2Vまでその端子電圧が上昇する間に前記2次電池に充電される容量を求め、第1の所定時間ごとに、前記求められた容量並びに前記予め記憶した初期容量及び前記初期総容量から、現在の前記2次電池の総容量を演算し、前記現在の2次電池の総容量を、前記第1の所定時間より短い第2の所定時間おきに、前記2次電池を電源として動作する前記電子機器に対してその電子機器からの制御とは独立に一方向性で送信することを特徴とする。
このような構成により、前記2次電池の充電時に第1の基準電圧E1Vから第2の基準電圧E2Vまでその端子電圧が上昇する間に、前記2次電池に充電される容量が求められる。次に前記求められた前記容量と前記記憶手段内の初期容量との比率が算出され、前記比率を前記記憶手段内の初期総容量に乗じることにより現在の前記2次電池の総容量が予測補正なしで算出される。
請求項8の発明の電池パックは、電子機器に電力を供給する2次電池と、第1の所定時間ごとに、前記2次電池の状態及び充放電に関わるデータを収集するデータ収集手段と、前記データ収集手段により収集されたデータを、前記第1の所定時間より短い第2の所定時間おきに、前記2次電池を電源として動作する前記電子機器に対してその電子機器からの制御とは独立に一方向性で送信する送信手段と、前記2次電池の端子電圧を検出する検出手段と、前記2次電池の端子電圧が過電圧になったとき、前記2次電池への充電電流を遮断する遮断手段と、前記2次電池の過電圧を検出するための第1の基準電圧を記憶する不揮発性の第1の記憶手段と、前記2次電池の過電圧を検出するための集2の基準電圧を記憶する揮発性の第2の記憶手段と、前記検出手段により検出された前記2次電池の端子電圧の過電圧を、通常時、少なくとも、前記第2の記憶手段に記憶されている前記第2の基準電圧を用いて判定し、前記2次電池の電圧が低下し、前記第2の記憶手段の記憶が消去されたとき、前記第1の記憶手段に記憶されている前記第1の基準電圧を用いて判定し、その判定結果に対応して前記遮断手段を制御し、前記2次電池の充電電流を遮断させる制御手段とを備えたことを特徴とする。
このような構成により、前記制御手段は前記検出手段により検出された前記2次電池の端子電圧の過電圧を、通常時、少なくとも、前記第2の記憶手段に記憶されている前記第2の基準電圧を用いて判定し、一方、前記2次電池の電圧が低下し、前記第2の記憶手段の記憶が消去されたとき、前記第1の記憶手段に記憶されている前記第1の基準電圧を用いて判定するので、前記第1の基準電圧を前記第2の基準電圧より低く設定しておけば、前記第2の記憶手段の記憶が消去されたときに、前記2次電池の端子電圧を通常時よりも低い電圧で過電圧と判断して、前記遮断手段を制御し、前記2次電池の充電電流を早期に遮断する。
請求項9の発明の電池パックにおいては、前記第1の基準電圧が、通常時、前記2次電池の過電圧を検出する基準電圧より、所定の閾値電圧だけ実質的に低いことを特徴とする。
このような構成により、前記制御手段は前記第1の基準電圧は、前記第2の記憶手段の記憶が消去されたときに、前記2次電池の端子電圧を通常時よりも低い電圧で過電圧と判断して、前記遮断手段を制御し、前記2次電池の充電電流を早期に遮断する。
請求項10の発明の電池パックは、前記第2の基準電圧は、前記閾値電圧であり、前記制御手段は、前記検出手段により検出された前記2次電池の端子電圧の過電圧を、通常時、前記第1の記憶手段に記憶されている前記第1の基準電圧と、前記第2の記憶手段に記憶されている前記閾値電圧の和と比較して判定し、前記2次電池の電圧が低下し、前記第2の記憶手段の記憶が消去されたとき、前記第1の記憶手段に記憶されている前記第1の基準電圧と比較して判定することを特徴とする。
このような構成により、前記制御手段は前記検出手段により検出された前記2次電池の端子電圧の過電圧を、通常時、前記第1の記憶手段に記憶されている前記第1の基準電圧と、前記第2の記憶手段に記憶されている前記閾値電圧の和と比較して判定し、一方、前記2次電池の電圧が低下し、前記第2の記憶手段の記憶が消去されたとき、前記第1の記憶手段に記憶されている前記第1の基準電圧と比較して判定するため、前記第2の記憶手段の記憶が消去されたときに、前記2次電池の端子電圧を通常時よりも低い電圧で過電圧と判断して、前記遮断手段を制御し、前記2次電池の充電電流を早期に遮断する。
請求項11の発明の電池パックは、前記第2の基準電圧は、前記第1の基準電圧と前記閾値電圧の和に等しく、前記制御手段は、前記検出手段により検出された前記2次電池の端子電圧の過電圧を、通常時、前記第2の記憶手段に記憶されている前記第2の基準電圧と比較して判定し、前記2次電池の電圧が低下し、前記第2の記偉手段の記憶が消去されたとき、前記第1の記憶手段に記憶されている前記第1の基準電圧と比較して判定することを特徴とする。
このような構成により、前記制御手段は前記検出手段により検出された前記2次電池の端子電圧の過電圧を、通常時、前記第2の記憶手段に記憶されている前記第2の基準電圧を用いて判定し、一方、前記2次電池の電圧が低下し、前記第2の記憶手段の記憶が消去されたとき、前記第1の記憶手段に記憶されている前記第1の基準電圧を用いて判定するので、前記第2の記憶手段の記憶が消去されたときに、前記2次電池の端子電圧を通常時よりも低い電圧で過電圧と判断して、前記遮断手段を制御し、前記2次電池の充電電流を早期に遮断する。
請求項12の発明の通信方法は、電子機器に電力を供給する2次電池を備える電池パックの通信方法において、第1の所定時間ごとに、前記2次電池の状態及び充放電に関わるデータを収集し、前記データを、前記第1の所定時間より短い第2の所定時間おきに、前記2次電池を電源として動作する前記電子機器に対してその電子機器からの制御とは独立に一方向性で送信し、前記2次電池の過充電を検出するための第1の基準電圧を不揮発性の記憶部に記憶し、前記2次電池の過充電を検出するための第2の基準電圧を揮発性の記憶部に記憶し、前記2次電池の端子電圧を検出し、検出された前記2次電池の端子電圧の過電圧を、通常時、少なくとも、前記第2の基準電圧を用いて判定し、前記2次電池の電圧が低下し、揮発性の前記記憶部に記憶されている前記第2の基準電圧が消去されたとき、不揮発牲の前記記憶部に記憶されている前記第1の基準電圧を用いて判定し、その判定結果に対応して、前記2次電池の充電電流を遮断させることを特徴とする。
このような構成により、検出された前記2次電池の端子電圧の過電圧は、通常時、少なくとも、前記第2の記憶手段に記憶されている前記第2の基準電圧を用いて判定され、一方、前記2次電池の電圧が低下し、前記第2の記憶手段の記憶が消去されたとき、前記第1の記憶手段に記憶されている前記第1の基準電圧を用いて判定されるので、前記第1の基準電圧を前記第2の基準電圧より低く設定しておけば、前記第2の記憶手段の記憶が消去されたときに、前記2次電池の端子電圧は通常時よりも低い電圧で過電圧と判断され、前記2次電池の充電電流は早期に遮断される。
請求項13の発明の電池パックは、電子機器に電力を供給する2次電池と、第1の所定時間ごとに、前記2次電池の状態及び充放電に関わるデータを収集するデータ収集手段と、前記データ収集手段により収集されたデータを、前記第1の所定時間より短い第2の所定時間おきに、前記2次電池を電源として動作する前記電子機器に対してその電子機器からの制御とは独立に一方向性で送信する送信手段と、前記データ収集手段により収集されたデータに対応して、前記2次電池に関する情報を表示する表示手段とを備えたことを特徴とする。
このような構成により、ユーザが何もしなくとも、表示手段は前記収集手段が収集した前記2次電池の状態及び充放電に関わるデータに対応して、前記2次電池に関する情報を表示する。
請求項14の発明の電池パックの通信方法は、電子機器に電力を供給する2次電池を備えた電池パックの通信方法において、第1の所定時間ごとに、前記2次電池の状態及び充放電に関わるデータを収集し、前記データを、前記第1の所定時間より短い第2の所定時間おきに、前記2次電池を電源として動作する前記電子機器に対してその電子機器からの制御とは独立に一方向性で送信し前記電池パックに設けた表示部に、前記データに対応して、前記2次電池に関する情報を表示することを特徴とする。
このような構成により、ユーザが何もしなくとも、前記2次電池の状態及び充放電に関わるデータに対応して、前記2次電池に関する情報が表示される。
以上の如く、請求項1乃至14の発明によれば、低速処理の安価なマイクロコンピュータを用いて且つ省電力で前記送信動作を行うことができる。
請求項1、3の発明によれば、さらに、求められた2次電池の時間を単位とした残りの電池容量の精度を向上させることができる。
請求項2の発明によれば、さらに、求められた2次電池の時間を単位とした残りの電池容量の精度を向上させることができる。
請求項4、5の発明によれば、さらに、ユーザは最大負荷での2次電池の残りの電池容量を直観的に把握することができる。
請求項6、7の発明によれば、さらに、2次電池の現在の総容量を求める計算を容易にすると共にその精度を向上させることができる。
請求項8乃至12の発明によれば、さらに、2次電池の低電圧のため、揮発性の記憶が揮発した場合の2次電池の過充電制御を安全サイドで確実に行うことができる。
請求項13、14の発明によれば、さらに、2次電池の状態及び充放電に関わるデータを電池パックに常時自動的に表示することにより、電池パックを電子機器に装着しなくてもユーザは負担なく、前記データを見ることができる。
以下、本発明の実施の形態を図面を参照して説明する。図1は本発明の電池パックの一実施の形態を示した機能ブロック図である。マイクロコンピュータ51は図8の本体2に対応する電子機器(図示せず)への情報通信、各種情報の収集及び計算、各種情報の表示及び過電圧保護を行う。このマイクロコンピュータ51には、2次電池(以降電池と称する)251、電池252の端子電圧を検出する端子電圧検出回路53が接続されている。LCD等で構成された表示部54はマイクロコンピュータ51により制御され、電池251、252の状態等を表示する。ブレーカ55は電池251、252の充放電電流を最終的に遮断する。電池251、252の充放電電流に対応して抵抗R32に発生する降下電圧を増幅するアンプ57の出力側がマイクロコンピュータ51に接続されている。データを本体側に送信するためデータ出力端子59はマイクロコンピュータ51の出力するデータを電子機器に出力するために設けられている。初期校正値読込処理実行端子61の出力と、パック内の温度を検出するサーミスタ62の出力がマイクロコンピュータ51に供給されている。このマイクロコンピュータ51は電池251、252に対して2次保護回路を形成し、後述する1次保護回路が何らかの原因で動作しなかった時に動作して、電池251、252の過電圧または過放電を防止する動作を行う。
電池制御回路52は電池251、252の充放電電圧及び電流を監視して、これら電池の過放電や過充電を防止する制御をスイッチ回路56をオンオフして行うものであり、抵抗R32の電圧降下分を分圧抵抗R1,R2により分圧して得た電圧により充放電電流を検出している。この電池制御回路52は電池251、252に対して1次保護回路を形成している。前記スイッチ回路56はFET1、FET2により形成される2個のスイッチが直列接続されて構成されている。また、直列に接続されている電池251、252は図示されない本体に放電電流を出力したり、或いは図示されない充電器からの充電電流を入力するバッテリ端子58、60にその正極と負極が接続されている。
図2は図1に示したマイクロコンピュータ51の詳細構成例を示した機能ブロック図である。CPU31は揮発性メモリのRAM(第2の記憶手段)33をワークメモリとして、不揮発性メモリのROM(第1の記憶手段)32に記憶されているプログラムを実行して各種動作を行う。これら処理の1つとして各種情報を表示制御部34を介して表示部54に表示する。CPU31はアンプ57からの電圧を充放電電流検出インターフェース36を介して読み込み、電池251、252の各端子電圧を電池電圧検出インターフェース37を介して読み込む。さらにCPU31は、サーミスタ62により検出されたパック内の温度を温度検出インターフェース38を介して読み込み、また、通信インターフェース39を介して各種データをデータ出力端子59から電子機器に送信する。CPU31は電池251、252の端子電圧に基づいて過充電を検出すると、ブレーカ制御駆動インターフェース40を制御してブレーカ55を遮断する。
ここで、サーミスタ62、温度検出インターフェース38、抵抗R32,アンプ57、充放電電流検出インターフェース36、電池電圧検出インターフェース37及びCPU31はデータ収集手段又は状態検出手段を構成し、CPU31と通信インターフェース39は送信手段を構成する。電池電圧検出インターフェース37とCPU31は測定手段を構成し、CPU31は残容量算出手段、補正手段、容量取得手段、演算手段を構成する。CPU31、ブレーカ制御駆動インターフェース40及びブレーカ55は制御手段を構成する。CPU31と表示制御部34、或いは表示部54は表示手段を構成する。
次に本実施の形態の動作について説明する。放電動作時、電池252、251、ブレーカ55、バッテリ端子58、バッテリ端子60、スイッチ回路56、抵抗R32の経路で放電電流が流れる。マイクロコンピュータ51のCPU31は、電池電圧検出インターフェース37を介して各電池251、252の端子電圧を、サーミスタ62から温度検出インターフェース38を介してパック内の温度を、それぞれ検出する。CPU31はまた、アンプ57の出力電圧を充放電電流検出インターフェース36により10秒間隔で読み込み、RAM33内に記憶させる。CPU31はまた、読み込んだデータを用いて後述する各種計算を行って、その結果を前記データと共にRAM33内に送信データとして保存し、この送信データを通信インターフェース39から電子機器に図3に示すような通信フォーマットにのせて1秒間隔で送信する。
図3は上記した通信インターフェースで作成される通信フォーマットの一例を示した図である。通信フォーマットは図3(A)に示すように32バイトで出来ており、その最初の2バイトは図3(B)に示すようなスタートブロックコードとなっている。以降第3、第4バイトは電池パックにかかっている現在負荷での使用可能時間、第5、第6バイトは過去の最大負荷での使用可能時間、第7バイトは容量の相対的状態、第8、第9バイトは電池251、252の残容量、第10バイトは電池251、252の総容量である。第11バイトは電池の状態1を示す以下に述べるような情報である。即ち、(1)電池寿命の終了(初期容量の60%)、(2)初期容量の80%、(3)過充電、(4)過放電、(5)温度オーバー、(6)FET1(充電用FET)の故障、(7)FET2(放電用FET)の故障である。第12バイトは電池の状態2を示す以下に述べるような情報である。すなわち、(8)充電モード、(9)放電モード、(10)電池の端子電圧のアンバランス(0.5V以上)である。最後の4ビット((10)乃至(14))は予備で空いている。
第13バイトは充電回数、第14バイトはモデルの番号、第15バイトは本電池の最低の電圧である。第16バイトは電池251の端子電圧、第17バイトは電池252の端子電圧、第18バイトと第19バイトは拡張した場合の電池(図示せず)の端子電圧である。第20バイトは電池251、252を流れる電流、第21バイトは現在のパック内の温度、第22バイトは仕様(バージョン)である。第23バイト乃至第30バイトは未定義とされている。第31バイトと第32バイトは終了ブロックコードである。尚、モデル番号、仕様及び電圧電流の校正値などはROM32内に予め記憶されているものとする。
図4は上記したCPU31の電子機器へのデータ送信動作処理を示したフローチャートである。まず、CPU31はステップ401において、電池251、252の電圧や放電電流或いは温度などのデータを読み込んで収集すると共に、これらデータを使って、電池251、252の残容量や充放電回数を重ねた後の電池251、252の総容量等を算出するための計算を行う。そして、その計算により得た送信データをRAM33内に保存した後、ステップ402に進んで、送信データを通信インターフェース39から電子機器に送信してからステップ403に進む。
CPU31はステップ403にてデータを電子機器へ送信してから1秒の経過待ちを行い、1秒経過すると、ステップ404に進んで、RAM33内の送信データを通信インターフェース39に送り、この通信インターフェース39から本体にデータを送信した後、ステップ405へ進む。ステップ405にて、CPU31は前回データを読み込んで計算処理をしてから10秒経過したかどうかを判定し、10秒経過していない場合はステップ403に戻す。10秒経過した場合はステップ406へ進み、電池251、252の電圧や放電電流或いは温度などの各種データを読み込んで収集すると共に、これらデータを使って上記と同様の計算を行ってからステップ403へ戻る。
このようなCPU31による通信処理によって、1秒おきにデータが電子機器に自動的に送信されると共に、送信データが10秒毎に更新される。尚、通信インターフェース39により送信されるデータのフォーマット及び送信データの種類は図3のところで説明したとおりである。一方、電子機器側のCPUは電池パック側から1秒置きに送信されて来るデータを10秒間に少なくとも1回取り込めばよく、しかも、従来のようにデータを送信させるための問い合わせを電池パック側にしなくて済む。
次に、CPU31が電池251、252の残容量を算出する際の計算方法について図5を参照して説明する。図5は残容量を計算するために、1つの電池の端子電圧と残容量(時間)の関係を温度をパラメータとして示した特性図で、この複数のパラメータ(実施例の場合、0.2C、0.5C、1C、2Cの4つのパラメータ(Cは公称容量))の特性図は参照テーブルとしてROM32に予め記憶されている。このテーブルは実験データに基づいて作成してあるもので、実用的に高精度な値を有している。例えば、温度が0.5℃の時、電池251の端子電圧がV4に下がった場合(点bの場合)、残容量は10分であることが分かる。CPU31はこのテーブルを参照して残容量を求め、本体側にこれを送信する。
ところで、上記したテーブルの特性線上にない例えばe点における残容量を求めたい場合、CPU31は以下に述べる補間計算を行う。ここで、図中の各点の間の長さ(以下、例えば点fと点eの間の長さをfeと表す)を、fe:ec=1:4、ad:dk=2:3とする。点a、点c、点bが同一直線上にあるものと近似すると、ΔakbとΔcjbは相似であるため、kb:jb=5:3の関係がある。また、kb=(18−10)であるから、jb=(18−10)×3/5となる。従って、ph=jb+mh=(18−10)×3/5+10=14.8となる。
ここで、点eにおける残容量であるonの時間は、点fにおける残容量であるqgの時間(10分)と、点cにおける残容量であるphの時間(14.8分)との間にあり、しかも、この間の残容量の増加分は横軸方向にほぼ比例すると考えられる。点fから点cまでの残容量の増加分は(14.8−10)分であり、点eは点fからの距離が点cまでの距離の1/5の位置にあるため、点eでの残容量の増加分は(14.8−10)×1/5となる。従って、この点eのトータルの残容量としてのonの時間は、10+(14.8−10)×1/5=10.96となる。
図5に示すような特性のテーブルが、温度毎に設けられており、温度についての補正も、この温度毎のテーブルを用いて同様の方法で行なわれる。
更にCPU31は直近から過去3回の放電時の最大負荷をRAM33に記憶しておき、上記のようにして実測電圧に基づいて求めた残容量を前記放電時の最大負荷で補正することにより、最小残容量を分単位で求め、この分単位で求めた最大負荷での残容量(使用出来る最短時間)を本体に送信する。
また、CPU31が電池251、252の充電回数を重ねた後の総容量を算出する際の計算方法について図6を参照して説明する。電池251、252に充電/放電を繰り返し行うと、電池が劣化し、その総容量(充電直後から使用できる時間)は次第に減少していく。換言すれば、充電特性のカーブが、図6のカーブがAからカーブBのように立ってきて、充電が早く完了してしまう。そこで、電池の状態を知る上で、充放電回数を重ねた後の総容量を求める必要が出てくる。CPU31は、例えば電池251の充電時の端子電圧のある範囲の所定値までの上昇を監視し、この範囲で端子電圧が所定値まで上昇するのに要した時間とその時の充電電流値とから、この間に充電された容量(mAh)を求め、これを同様のことを最初に行って得た初期容量値と比較し、この比較値を用いて、現在の総容量を求める。
図6に示すように前記端子電圧の上昇を監視する電圧範囲を3.7Vから3.9V(所定値)の範囲とする。まず、3.7Vから3.9Vまでの電池251の初期充電容量X0を充電電流毎にROM32に保存しておくと共に、この電池251の初期の総容量W0も保存しておく。ここで、充電回数がn回目の時の前記充電電流をinとし、充電容量をXn、充電時間をtnとすると、Xn=in×tnとなる。また、前記充電電流inの時の初期充電容量X0をROM32から読み出す。充電回数がn回目の時の総容量WnはWn=W0×Xn/X0となり、CPU31はこの総容量Wnを充電回数が更新される度に算出して、電子機器本体側にこれを送信する。
また、CPU31が電池251、252に対する過電圧(過充電)を検出するための、基準電圧がV0であったとすると、(V0−閾値電圧)の値V1、即ち前記基準電圧V0よりも所定の閾値電圧(例えば0.5V)だけ低い値V1をROM32に予め保存しておく。CPU12はこのROM32から読みだした基準電圧V1に0.5Vを加算した値、即ちV0VをRAM33に保存しておき、このRAM33内の基準電圧V0を用いて通常の過充電検出を行う。
ところで、マイクロコンピュータ51を正常に動作させるには、最低限の電圧を供給する必要があり、電池の電圧がそれより低下すると、マイクロコンピュータ51の動作は不安定になる。万一CPU31が低電圧でリセットされた場合、RAM33内の前記基準電圧V0もクリアされてしまう。しかしながら、前記リセットが行われたとき、即ち、RAM33内の前記基準電圧V0がクリアされたとき、以後、CPU31は前記ROM32内の0.5V低い基準電圧V1に基づいて前記電池251、252の過充電検出を行う。このため、この0.5Vだけ低い分、過充電検出が早期に働き、基準電圧V0に達する前に図2のブレーカ制御駆動インターフェース40を介してブレーカ55のヒューズが溶断され、充電電流が遮断される。即ち、電池パック内の全動作が安全サイドで停止される(過充電により電池が損傷する前に充電が停止される)。
ここで上記とは異なり、RAM33には閾値電圧(0.5V)を記憶させておくこともできる。この場合、CPU31は、通常時、ROM32に記憶されている基準電圧V1にRAM33に記憶されている前記閾値電圧(0.5V)を加算して得られる基準電圧V0を用いて前記電池251、252の端子電圧の過電圧を検出して、これら電池に対する過充電保護制御を行う。しかしながら、前記電池251、252の低電圧で、RAM33の記憶が消去された場合には、以後、CPU31はROM32に記憶されている基準電圧V1を用いて、前記電池の過電圧検出を行うことにより、ブレーカ55のヒューズを溶断して、上記と同様に、電池パック内の全動作を自己も含めて安全サイドで停止させる。
図7は本電池パックの外形とその外形面に設けられているLCDで形成された表示部54を示した平面図である。図7(A)と(B)は電池パックの平面図と側面図で、図7(C)は表示部の拡大図である。電池パックの表面には、ユーザがメモを通常の筆記具で書き込めるような書き込み部71が設けられ、その隣に、表示部54が設けられている。
CPU31は表示制御部34を通して表示部54の図7(C)に示した表示部351に容量を表示する。即ち、容量がフルの場合はこの複数の表示部351全てが点灯され、容量がなくなってくると右側から順番に消灯されるように表示される。この表示部351はその1つが、例えば10分といった所定の時間に対応される。また、充電中には表示部352を点滅させて、充電中であることを表示する。また、総容量が初期値の60%になると、表示部353を点灯表示して、電池寿命が尽きたことを知らせる。また、充電回数が10回を越える毎に複数の表示部354を左から順番に点灯表示して、充電回数がどのくらいであるかを表示する。
本実施の形態によれば、電池パックのCPU31は1秒置きにデータを本体側に送り、且つこのデータを10秒に1度更新するだけで良く、その上、高速処理を行う本体側のCPUからの問い合わせに送信データを用意して待機する必要もないため、その動作クロックを従来の4MHzから38.4kHzに低下させても、前記通信動作を十分果たすことができる。このようなCPU31としては安価なものを使用でき、電池パックのコストを低下させることができる。また、CPU31の動作クロックを低下させた分、CPUに供給する電流を従来必要であった4mA乃至7mAから30μAで済ませることができ、消費電力を著しく削減することができる。また、本体側のCPUは電池パック側から1秒置きに送信されて来るデータを10秒間に少なくとも1回取り込めばよく、しかも、従来のようにデータを送信させるための問い合わせを電池パック側にしなくて済むため、前記データを取り込む処理に負担が掛からず、この分、他の処理を効率的に行うことができる。
また、電池251、252の残容量計算を、電池の端子電圧と残容量(時間)の関係を、複数の公称容量と温度をパラメータとして特性図化する実測値テーブルを用いて行うことにより、また前記実測テーブル中にない端子電圧からの残容量は補間計算をして得ることにより、計算過程での補正を1回にするか、又は全く回避しているため、電池251、252の残容量を簡単且つ精度良く求めることができる。更に、こうして求めた残容量を過去3回の放電回数中の最大の負荷で補正した最大負荷での残容量を時間単位(分)で求め、これを本体側に送信して本体で表示するか、又は電池パックの表示部54に表示するため、ユーザは直観的に電池251、252が最悪の場合でもどのくらい持つかを把握することができる。
更に、充電を繰り返した後の電池251、252の総容量を、充電中の例えば電池251の端子電圧が所定電圧上昇する際に充電された容量と初期値の容量とを比較し、この比較結果により初期値の総容量を校正して、現在の総容量を求めることにより、電池251、252の残容量を従来のΔV方式に比べて精度良く求めることができる。
また、ROM32に過電圧を検出する基準電圧を0.5V低く保存し、これを0.5V高く補正してRAM33に保存することで通常の過電圧検出を行うようにすることにより、CPU31が低電圧でリセットして、RAM33がクリアされた後、CPU31はROM32の基準電圧で過電圧を検出することによって、過電圧検出を早めて、安全サイドで電池パックの全充電動作を停止することができる。
更に、CPU31は電池容量、充電中の表示、電池の寿命などの電池の状態に関わる各種データを表示部54に常に且つ自動的に表示することにより、これらデータをユーザに負担を掛けることなく常に提供することができる。また、電池パックを本体や充電器に装着しなくとも前記データを表示することができる。尚、このように表示部54に前記データを常時表示しても、CPU31の消費電力が削減され、しかも表示部54もLCD等の消費電力が少ないもので構成されているため、表示で電力を消費しても電池251、252の常時の消費により電池251、252の容量が従来に比べて減ることはない。
31 CPU, 32 ROM, 33 RAM, 34 表示制御部, 36 充放電電流検出インターフェース, 37 電池電圧検出インターフェース, 38 温度検出インターフェース, 39 通信インターフェース, 40 ブレーカ制御駆動インターフェース, 51 マイクロコンピュータ, 52 電池制御回路, 53 端子電圧検出回路, 54 表示部, 55 ブレーカ, 56 スイッチ回路, 57 アンプ, 58,60 バッテリ端子, 59 データ出力端子, 61 初期校正値読込処理実行端子, 62 サーミスタ, 251,252 電池