(57)【特許請求の範囲】
【請求項１】
電池の出力電圧を検出する検出部と、
前記電池が複数の電流値夫々で充電または放電された場合における前記電池の容量に対する前記電池の残量の割合と、前記出力電圧との関係を示す第１データを、前記複数の電流値夫々に対応させて記憶する第１データ記憶部と、
前記電池の残量に応じた第２データを記憶する第２データ記憶部と、
前記第１データと、前記第２データと、前記出力電圧とに基づいて前記電池の充放電電流を算出する第１算出部と、
算出された前記充放電電流に基づいて、前記第２データを更新する更新部と、
を備えることを特徴とする電池残量算出回路。
【請求項２】
請求項１に記載の電池残量算出回路であって、
前記電池の残量の算出を開始するための指示信号が入力されると、前記複数の電流値のうち何れかの電流値に対応する第１データと前記出力電圧とに基づいて、前記第２データ記憶部に記憶される前記第２データを算出する第２算出部を更に備えること、
を特徴とする電池残量算出回路。
【請求項３】
請求項２に記載の電池残量算出回路であって、
前記検出部は、
前記電池の温度に応じた第１電圧を検出し、
前記第１データ記憶部は、
前記電池の複数の温度夫々に対し、前記電池が複数の電流値夫々で充電または放電された場合における前記電池の容量に対する前記電池の残量の割合と、前記出力電圧との関係を示すデータを前記第１データとして、前記複数の温度ごとに前記複数の電流値夫々に対応させて記憶し、
前記第１算出部は、
前記第１データと、前記第２データと、前記出力電圧と、前記第１電圧とに基づいて前記電池の充放電電流を算出すること、
を特徴とする電池残量算出回路。
【請求項４】
請求項３に記載の電池残量算出回路であって、
前記第２算出部は、
前記指示信号が入力されると、前記複数の温度夫々における前記複数の電流値のうち何れかの電流値に対応する第１データと、前記出力電圧と、前記第１電圧とに基づいて、前記第２データ記憶部に記憶する前記第２データを算出すること、
を特徴とする電池残量算出回路。
【請求項５】
請求項１に記載の電池残量算出回路であって、
前記検出部は、
前記電池の温度に応じた第１電圧を検出し、
前記第１データ記憶部は、
前記電池の複数の温度夫々に対し、前記電池が複数の電流値夫々で充電または放電された場合における前記電池の容量に対する前記電池の残量の割合と、前記出力電圧との関係を示すデータを前記第１データとして、前記複数の温度ごとに前記複数の電流値夫々に対応させて記憶し、
前記第１算出部は、
前記第１データと、前記第２データと、前記出力電圧と、前記第１電圧とに基づいて前記電池の充放電電流を算出すること、
を特徴とする電池残量算出回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電池残量算出回路に関する。
【背景技術】
【０００２】
携帯電話、デジタルカメラ等の携帯用電子機器では、電源として用いられる電池の残量を算出し、電池残量を表示することが一般に行われている。電池残量を算出する方法としては、例えば、電池の出力電圧を検出して電池残量を算出する方法と、電池の充放電電流を検出して電池残量を算出する方法とがある（例えば、特許文献１及び２参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−３４５１７２号公報
【特許文献２】特開２００７−２４０５２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
電池の出力電圧に基づいて電池残量を算出する方法では、例えば、電池の出力電圧を検出するマイコン等が、電池の出力電圧から一意的に電池残量を算出する。しかしながら、電池の出力電圧は、電池に接続される負荷の負荷電流や、電池の内部抵抗の変化等に応じて変化する。このため、電池の出力電圧のみから電池残量を算出する方法では、精度良く電池残量を算出することが難しい。一方、電池の充放電電流に基づいて電池残量を検出する方法では、例えば、電池の充放電電流を検出するマイコン等が、充放電電流を積算することにより電池残量を算出するため、電池残量を精度良く算出できる。しかしながら、充放電電流を検出するためには、充放電電流を検出するための抵抗等を電池に直列に接続する必要があるため、電源としての効率が悪化する。さらに、電池パック内に充放電電流を検出するＡＤ（Analog to Digital）コンバータ、マイコン等を設ける必要があるため、電池パックが高価になるという問題がある。
【０００５】
本発明は上記課題を鑑みてなされたものであり、電池の出力電圧に基づいて精度良く電池残量を算出することが可能な電池残量算出回路を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明の一つの側面に係る電池残量算出回路は、電池の出力電圧を検出する検出部と、前記電池が複数の電流値夫々で充電または放電された場合における前記電池の容量に対する前記電池の残量の割合と、前記出力電圧との関係を示す第１データを、前記複数の電流値夫々に対応させて記憶する第１データ記憶部と、前記電池の残量に応じた第２データを記憶する第２データ記憶部と、前記第１データと、前記第２データと、前記出力電圧とに基づいて前記電池の充放電電流を算出する第１算出部と、算出された前記充放電電流に基づいて、前記第２データを更新する更新部と、を備えることとする。
【発明の効果】
【０００７】
電池の出力電圧に基づいて精度良く電池残量を算出することが可能な電池残量算出回路を提供することができる。
【図面の簡単な説明】
【０００８】
【図１】本発明の一実施形態である電池残量表示回路１０の構成を示す図である。
【図２】電池残量算出回路２０の構成を示す図である。
【図３】メモリ４２の構成を示す図である。
【図４】データテーブル６１に記憶される充放電データ１００ａを説明するための図である。
【図５】データテーブル６１に記憶される充放電データ１００ａを説明するための図である。
【図６】データテーブル６１に記憶される充放電データ１００を説明するための図である。
【図７】ＣＰＵ４５がプログラムを実行することにより実現される機能ブロックの構成を示す図である。
【発明を実施するための形態】
【０００９】
本明細書および添付図面の記載により、少なくとも以下の事項が明らかとなる。
【００１０】
図１は、本発明の一実施形態である電池残量表示回路１０の構成を示す図である。電池残量表示回路１０は、例えば、携帯電話（不図示）に設けられ、携帯電話の電池パック１１における電池３０の残量を、携帯電話の表示部１２に表示するための回路である。また、電池残量表示回路１０は、電池残量算出回路２０、電源回路２１、マイコン２２、及び駆動回路２３を含んで構成される。
【００１１】
電池パック１１は、携帯電話を動作させるための電源として用いられ電池パックであり、例えば充電可能なリチウムイオン電池等の電池３０と、電池３０の温度に応じた電圧Ｖｔを生成するサーミスタ３１とを含んで構成される。なお、本実施形態においては、電池３０のマイナス側電極とプラス側電極との間に発生する電圧を、電池３０の出力電圧Ｖｂとする。  
表示部１２は、文字や映像等を表示すべく携帯電話に設けられた例えば液晶パネル等の表示画面である。
【００１２】
操作部１３は、携帯電話を操作するための例えばダイヤルキー、電源キー等（不図示）の各種キーパッドであり、キーパッドの操作に応じた制御データＣＯＮＴを出力する。例えば、利用者が、携帯電話を起動させるべく操作部１３における電源キーを操作すると、携帯電話を起動させるための制御データＣＯＮＴが操作部１３から出力される。  
システムＬＳＩ（Large Scale Integration）１４は、例えば携帯電話において通信等の各種機能を実現する回路である。
【００１３】
電池１５は、例えばボタン電池等の一次電池であり、携帯電話の電源がオフされた際に、携帯電話の時刻等を更新させるためのリアルタイムクロック回路（不図示）等を動作させるために用いられる。  
電源回路１６は、後述する電池残量算出回路２０からのイネーブル信号ＥＮが入力されると、電池３０の出力電圧Ｖｂに基づいて、例えばシステムＬＳＩ１４等が動作できるような電源を生成する回路である。
【００１４】
電池残量算出回路２０は、携帯電話を起動させるための制御データＣＯＮＴが入力されると、電池３０の出力電圧Ｖｂを抵抗１７，１８で分圧した電圧Ｖｍと、サーミスタ３１からの電圧Ｖｔとに基づいて電池３０の残量を算出するマイコンである。また、詳細は後述するが、本実施形態の電池残量算出回路２０は、電池３０の残量の算出を開始すると、電源回路１６を起動させるためのイネーブル信号ＥＮを生成するとともに、算出した残量や、電池３０の温度を示す電圧Ｖｔ等に応じたデータＤＯをマイコン２２に送信する。
【００１５】
電源回路２１は、電池１５から電池残量算出回路２０が動作するための電源を生成する回路である。  
マイコン２２は、操作部１３の操作結果に応じた制御データＣＯＮＴに基づいて、携帯電話を統括制御する回路である。また、マイコン２２は、電池残量算出回路２０から出力されるデータＤＯを、表示部１２を駆動する駆動回路２３に転送する。  
駆動回路２３は、マイコン２２からのテータＤＯに基づいて、例えば、電池３０の残量や、温度等が表示部１２に表示されるよう表示部１２を駆動する回路である。
【００１６】
図２は、電池残量算出回路２０の詳細を示す図である。電池残量算出回路２０は、セレクタ４０、ＡＤコンバータ４１（検出部）、メモリ４２、ＣＰＵ（Central Processing Unit）４３、及びＩＦ（Interface）回路４４を含んで構成される。
【００１７】
セレクタ４０は、後述するＣＰＵ４３からの指示に基づいて、入力される電圧Ｖｍまたは電圧Ｖｔを選択してＡＤコンバータ４１に出力する回路である。  
ＡＤコンバータ４１は、セレクタ４０から出力されるアナログの電圧Ｖｍ、電圧Ｖｔをデジタル値の電圧データＤＡＴに変換する回路である。本実施形態におけるＡＤコンバータ４１は、例えば、逐次比較方式のＡＤコンバータで実現される。  
メモリ４２は、ＣＰＵ４３が実行するプログラムや、各種データを記憶する回路である。  
ＣＰＵ４３は、電池残量算出回路２０全体を統括制御するものであり、メモリ４２に格納されているプログラムを実行することにより各種機能を実現する。  
ＩＦ回路４４は、操作部１３、電源回路１６、及びマイコン２２と、ＣＰＵ４３との間で各種データのやりとりを行う回路である。
【００１８】
図３に示すように、メモリ４２は、ＲＯＭ(Read only Memory)６０及びＲＡＭ（Random Access Memory）６１を含んで構成される。
【００１９】
ＲＯＭ５０の記憶領域には、ＣＰＵ４３を動作させるためのプログラムを記憶するプログラム記憶部６０、ＣＰＵ４３が電池３０の残量を算出する際に必要となるデータを記憶するデータテーブル６１、及び電圧Ｖｔと温度との関係を示すデータを記憶する温度データ記憶部６２が設けられている。  
ＲＡＭ５１の記憶領域には、電池３０の容量に対する電池３０の残量の割合（以下、残量率とする）を示す残量データ（第２データ）を記憶する残量データ記憶部７０（第２データ記憶部）が設けられている。
【００２０】
データテーブル６１（第１データ記憶部）には、例えば、図４に示すような、異なる電流値の電流で電池３０が充電または放電された際の、残量率と電池３０の出力電圧Ｖｂとの関係を示すデータが格納されている。異なる電流値ごとの数値データ（以下、充放電データと称する）である。また、本実施形態においては前述の充放電データが、図６に示すように、異なる温度ごとに存在する。なお、本実施形態においては、図５に示す充放電データを、充放電データ１００ａとする。また、充放電データ１００ａは、Ｔ＝２０℃におけるデータであることとする。また、充放電データ１００ｂ〜１００ｅ（不図示）は、Ｔ＝６０℃，４０℃，０℃，−２０℃の夫々におけるデータであることとする。なお、図４及び図５において、例えば５００との記載は、５００ｍＡの充電電流に相当し、例えば−５００との記載は５００ｍＡの放電電流に相当する。
【００２１】
図５において、例えば上段の２行目の夫々に対応する記憶領域には、電池３０が２０００ｍＡの電流で充電された際の、残量率が０％から９％の夫々における電池３０の出力電圧Ｖｂの値が格納されている。また、図５における下段の２行目の夫々に対応する記憶領域には、電池３０が２０００ｍＡの電流で充電された際の、残量率が１０％から１００％の夫々における出力電圧Ｖｂの値が格納されている。同様に、上段及び下段の３〜４行目の夫々に対応する記憶領域には、電池３０が１０００ｍＡ、５００ｍＡの電流で充電された際の残量率に対する出力電圧Ｖｂの値が格納されている。そして、上段及び下段の６〜８行目の夫々に対応する記憶領域には、電池３０が５００ｍＡ、１５００ｍＡ、３０００ｍＡの電流で放電された際の残量率に対する出力電圧Ｖｂの値が格納されている。また、上段及び下段の５行目に対応する記憶領域には、無負荷の場合、すなわち、電池３０の負荷の電流が０ｍＡの際の残量率に対する出力電圧Ｖｂの値が格納されている。
【００２２】
本実施形態においては、前述のような充放電データ１００ａ〜１００ｅからなる充放電データ１００（第１データ）がデータテーブル６１に格納されていることとしたが、充放電データ１００は予め作成されている必要がある。この様に図５は、図４に示された特性に対応したデータテーブルである。ここで、図４の特性カーブは、電池残量率により電池の内部抵抗が異なることにより、電池の残量率ごとに充放電時の電流によって、出力電圧が異なる特性を示したものである。
【００２３】
図７は、ＣＰＵ４３により実現される機能ブロックの一部を示す図である。図７に示すように、ＣＰＵ４３は、プログラム記憶部６０に記憶されたプログラムを実行することにより、データ変換部８０、初期値算出部８１、電流算出部８２、及び更新部８３を実現する。なお、データ変換部８０及び電流算出部８２が、本発明の第１算出部に相当し、データ変換部８０及び初期値算出部８１が本発明の第２算出部に相当する。
【００２４】
データ変換部８０は、後述する初期値算出部８１または電流算出部８２からの指示に基づいて、ＡＤコンバータ４１から出力される電圧データＤＡＴを取得し、電池３０の出力電圧Ｖｂと電池３０の温度とを算出する。具体的には、データ変換部８０は、初期値算出部８１または電流算出部８２からの指示に基づいて、セレクタ４０を制御して電圧Ｖｍと電圧Ｖｔとを順次ＡＤコンバータ４１に出力させる。そして、データ変換部８０は、ＡＤコンバータ４１で変換された電圧データＤＡＴを取得し、抵抗１７，１８の分圧比と、温度データ記憶部６２に記憶された温度データとに基づいて、電池３０の出力電圧Ｖｂと温度Ｔとを算出する。
【００２５】
初期値算出部８１は、例えば携帯電話を起動させるための制御データＣＯＮＴがＩＦ回路４４を介して入力されると、携帯電話が起動された際の電池３０の残量率を残量データとして算出する。具体的には、初期値算出部８１は、データ変換部８０に出力電圧Ｖｂ及び温度Ｔを算出させた後、データテーブル６１の充放電データ１００における無負荷のデータを参照して残量データを算出する。また、初期値算出部８１は、算出された残量データを残量データ記憶部７０に格納するとともに、電源回路１６を起動すべくイネーブル信号ＥＮを生成する。
【００２６】
電流算出部８２は、所定周期で電池３０の充放電電流を算出する。電流算出部８２は、例えば、初期値算出部８１が残量データを残量データ記憶部７０に格納すると、所定の周期でデータ変換部８０に出力電圧Ｖｂ及び温度Ｔを算出させるとともに、出力電圧Ｖｂと温度Ｔとを取得する。そして、取得した出力電圧Ｖｂ及び温度Ｔと、残量データ記憶部７０の残量データと、データテーブル６１の充放電データ１００とに基づいて、電池３０の充放電電流Ｉ１を算出する。
【００２７】
更新部８３は、残量データ記憶部７０の残量データに基づいて、電池３０の残量を算出するとともに、電流算出部８２で算出された充放電電流Ｉ１を電池３０の残量に積算する。そして、更新部８３は、電池３０の残量に充放電電流Ｉ１が積算されると、電池３０の残量と電池３０の容量とに基づいて、残量率を示す残量データを算出し、残量データ記憶部７０に格納する。つまり、本実施形態の更新部８３は、電池３０の残量に対して充放電電流Ｉ１を積算し、積算結果に応じて残量データを更新する。また、本実施形態の更新部８３は、残量データを更新すると、残量データ及び温度ＴをデータＤＯとしてマイコン２２に送信する。
【００２８】
＜＜電池残量表示回路１０の動作＞＞
ここで、電池残量表示回路１０の動作を、説明する。まず、利用者が携帯電話の操作部１８の電源キー（不図示）を操作し、携帯電話を起動すると、操作部１８からは、携帯電話を起動させるための制御データＣＯＮＴが出力される。
【００２９】
携帯電話を起動させるための制御データＣＯＮＴがＩＦ回路４４を介して、ＣＰＵ４３の初期値算出部８１に入力されると、初期値算出部８１は、電池３０の残量を算出すべく、データ変換部８０に電圧Ｖｍと、電圧Ｖｔとを取得させる。このため、データ変換部８０は、電池３０の出力電圧Ｖｂと温度Ｔとを算出することとなる。また、初期値算出部８１は、算出された出力電圧Ｖｂと温度Ｔとを取得する。そして、初期値算出部８１は、取得された出力電圧Ｖｂ、温度Ｔ，及び充放電データ１００における無負荷時のデータから残量データを算出する。そして、初期値算出部８１は、算出した残量率を残量データとして残量データ記憶部７０に格納するとともに、イネーブル信号ＥＮを生成し電源回路１６を起動する。電源回路１６が起動されると、電源回路１６は、電池３０の出力電圧Ｖｂに基づいて電源を生成するため、システムＬＳＩ１４、マイコン２２、及び駆動回路２３が起動されるそして、ＣＰＵ４３における電流算出部８２は、残量データ記憶部７０に残量データが格納されると、一定時間ごとに充放電電流Ｉ１を算出する。電流算出部８２は、所定時間経過後（ここで所定時間とは、例えば、満充電された電池が、２０００ｍAの放電電流で４時間で放電したとすると、０．０１％の放電時間に相当する時間は、４時間＝４×３６００（秒）×０．０００１＝１．４４（秒）であり、この時間をモニタ時間として用いることとする。）、データ変換部８０を制御してデータ変換部８０に電圧Ｖｍと電圧Ｖｔとを取得させる。この結果、データ変換部８０は、電圧Ｖｍ、電圧Ｖｔに基づいて、電池３０の出力電圧Ｖｂ、温度Ｔを算出する。そして、電流算出部８２は、算出された出力電圧Ｖｂと、温度Ｔと、残量データ記憶部７０に格納された残量データと、充放電データ１００とを用いて、充放電電流Ｉ１を算出する。つぎに、本実施形態の電流算出部８２は、出力電圧Ｖｂ、温度Ｔ、残量データと、充放電データ１００とを用いて、充放電電流Ｉ１を算出する。そして、充放電電流Ｉ１が算出されると、更新部８３は、充放電電流Ｉ１を電池３０の残量に積算する。さらに、更新部８３は、電池３０の残量と電池３０の容量から残量率を計算し、残量データとして残量データ記憶部７０の残量データを更新する。そして、更新部８３は、前述のように、残量データ及び温度ＴをデータＤＯとしてマイコン２２に送信する。また、マイコン２２は、データＤＯを駆動回路２３に転送するため、駆動回路２３はデータＤＯに基づいて表示部１２を駆動する。この結果、携帯電話の表示部１２においては、電池３０の残量率及び温度が表示されることとなる。また、本実施形態では、電流算出部８２が所定時間ごとに充放電電流Ｉ１の算出を行うこととしているため、上記ステップは残量率０％まで処理が繰り返されることとなる。したがって、表示部１２の表示も所定時間ごとに随時更新されることとなる。
【００３０】
以上に説明した構成からなる本実施形態の電池残量算出回路２０のＣＰＵ４３におけるデータテーブル６１には、異なる電流値の電流で電池３０が充電または放電された際の、残量率と電池３０の出力電圧Ｖｂとの関係を示す充放電データ１００ａが格納されている。また、残量データ記憶部７０には、電池３０の残量に応じた残量データが記憶されている。そして、電流算出部８２は、例えば、充放電データ１００ａと、電池３０の出力電圧Ｖｂと、残量データとを用いることにより、充放電電流Ｉ１を算出することが可能である）。このため、実際に、電池３０の充放電電流を検出することなく、充放電電流を算出できる。また、本実施形態では、更新部８３が、算出された充放電電流Ｉ１を、電池３０の残量に積算することにより、残量率を更新している。このため、本実施系形態では、電池３０の残量率が随時更新されることとなり、利用者は、適宜残量率を確認することが可能となる。
【００３１】
本実施形態の電池残量算出回路２０は、携帯電話を起動させるための制御データＣＯＮＴが入力されると、初期値算出部８１が、充放電データ１００の無負荷のデータに基づいて残量データを算出する。この際に、電源回路１６の動作は停止しているため、電池３０は無負荷の状態である。このように、本実施形態では、予め定められた条件において電池３０の残量データを算出している。このため、本実施形態においては、精度良く電池３０の残量データの初期値を算出することが可能である。
【００３２】
また、本実施形態の電流算出部８２は、出力電圧Ｖｂと温度Ｔとに基づいて充放電電流Ｉ１を算出する。このため、電池３０の温度が変化した場合であっても、電流算出部８２は、精度良く電池３０の残量を算出することが可能となる。
【００３３】
また、本実施形態の初期値算出部８１は、出力電圧Ｖｂと温度Ｔとに基づいて携帯電話が起動された際の残量データを算出する。このため、温度変化がある場合であっても、初期値算出部８１は、精度良く残量データの初期値を算出可能である。
【００３４】
なお、上記実施例は本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物も含まれる。
【００３５】
本実施形態では、ＣＰＵ４３が初期値算出部８１を設けることとしたが、それに限られるものでは無い。例えば、携帯電話が起動された際に動作する他のマイコン等（不図示）が本実施形態と同様に電池３０の残量に応じた残量データを算出し、残量データ記憶部７０に格納する構成としても良い。
【符号の説明】
【００３６】
１０  電池残量表示回路
１１  電池パック
１２  表示部
１３  操作部
１４  システムＬＳＩ
１５，３０  電池
１６  電源回路
１７，１８  抵抗
２０  電池残量算出回路
２１  電源回路
２２  マイコン
２３  駆動回路
３１  サーミスタ
４０  セレクタ
４１  ＡＤコンバータ
４２  メモリ
４３  ＣＰＵ
４４  ＩＦ回路
５０  ＲＯＭ
５１  ＲＡＭ
６０  プログラム記憶部
６１  データテーブル
６２  温度データ記憶部
７０  残量データ記憶部
８０  データ変換部
８１  初期値算出部
８２  電流算出部
８３  更新部
【図１】
0005608485.tif 000002
【図２】
0005608485.tif 000003
【図３】
0005608485.tif 000004
【図４】
0005608485.tif 000005
【図５】
0005608485.tif 000006
【図６】
0005608485.tif 000007
【図７】
0005608485.tif 000008