"電源装置に接続された接続機器に、電源装置に含まれる電池から電力を供給する際に電池の残容量を検出する方法であって、接続機器の駆動中は接続機器を流れる充放電電流及び/又は充放電電圧を検出してこれを積算することで積算残容量を検出し、接続機器の駆動を行っていないときはパルス放電を複数回繰り返し、放電電流及び放電電圧並びに電池温度を検出して、放電電流及び放電電圧から電池の内部抵抗及び初期起電力を算出し、算出された電池の内部抵抗及び初期起電力、並びに検出された電池温度に基づいて、予め作成された初期起電力Voiniまたは改訂起電力Voresetの起電力テーブルを参照して電池の残容量を推定することを特徴とする電池の残容量検出方法。請求項1に記載の電池の残容量検出方法であって、さらに推定された推定残容量に基づいて積算残容量を補正することを特徴とする電池の残容量検出方法。請求項1または2に記載の電池の残容量検出方法であって、複数回のパルス放電により電池の内部抵抗及び初期起電力を算出する際に、フィルタリングを行うことを特徴とする電池の残容量検出方法。請求項1から3のいずれかに記載の電池の残容量検出方法であって、接続機器が車載用モータであり、車両用モータを駆動する電源装置に含まれる電池の残容量を検出することを特徴とする電池の残容量検出方法。複数の二次電池を備える電池ユニットと、前記電池ユニットに含まれる二次電池の電圧を検出するための電圧検出部と、前記電池ユニットに含まれる二次電池の温度を検出するための温度検出部と、前記電池ユニットに含まれる二次電池に流れる電流を検出するための電流検出部と、前記電圧検出部と温度検出部と電流検出部から入力される信号を演算して二次電池の残容量を検出するための残容量演算部と、前記残容量演算部で演算された残容量を接続機器に伝送する通信処理部とを備えており、接続機器の駆動中は、電圧検出部及び/又は電流検出部で接続機器を流れる充放電電流及び/又は充放電電圧を検出し、これを積算することで残容量演算部が積算残容量を検出し、接続機器の駆動を行っていないときは、残容量演算部がパルス放電を複数回繰り返し、電圧検出部及び/又は電流検出部で放電電流及び/又は放電電圧を検出して、電池の内部抵抗及び起電力を算出し、算出された電池の内部抵抗及び起電力に基づいて、予め作成されたテーブルを参照して残容量演算部が電池の残容量を推定することを特徴とする電源装置。しかしながら、電源に使用する電池によってはメモリ効果が発生し、これにより残容量の特定が困難になることがあった。メモリ効果とは、ニッケル-カドミウム電池やニッケル水素電池等を浅い放電深度でサイクル充放電した場合に、深い放電時に一時的に放電電圧が低下する現象である。メモリ効果によって電池の残容量が変化するため、正確な電池の残容量を推定することができない。残容量の検出を誤ると、電池の充放電の際に過大な負荷がかかる動作を行ってしまうことがあり、電池の寿命を著しく低下させる原因となる。また一方で、電池が自己放電することによっても残容量が変化する。これらの要因によって電池の残容量の推測は困難となり、正確な残容量を把握することは極めて困難であった。本発明は、このような問題点を解決するためになされたものである。本発明の主な目的は、電池の残容量をより正確に検出可能な電池の残容量検出方法及び電源装置を提供することにある。上記の目的を達成するために、本発明の電池の残容量検出方法は、電源装置に接続された接続機器に、電源装置に含まれる電池から電力を供給する際に電池の残容量を検出する方法であって、接続機器の駆動中は接続機器を流れる充放電電流及び/又は充放電電圧を検出してこれを積算することで積算残容量を検出し、接続機器の駆動を行っていないときはパルス放電を複数回繰り返し、放電電流及び放電電圧並びに電池温度を検出して、放電電流及び放電電圧から電池の内部抵抗及び初期起電力を算出し、算出された電池の内部抵抗及び初期起電力、並びに検出された電池温度に基づいて、予め作成された初期起電力Voiniまたは改訂起電力Voresetの起電力テーブルを参照して電池の残容量を推定する。これにより、複数回のパルス放電の間に演算を行うことにより演算の精度を高めることができる。さらに複数のパルス放電を繰り返すことで残容量のヒステリシスを一定にする効果が得られるので、この点からもより高精度に演算することができる。さらにまた、本発明の電池の残容量検出方法は、さらに、推定された推定残容量に基づいて積算残容量を補正する。さらにまた、本発明の残容量検出方法は、複数回のパルス放電により電池の内部抵抗及び初期起電力を算出する際に、フィルタリングを行う。さらにまた、本発明の電池の残容量検出方法は、接続機器が車載用モータであり、車両用モータを駆動する電源装置に含まれる電池の残容量を検出する。これにより、車載用の電源装置における電池の残容量検出に好適に利用できる。さらにまた、本発明の電源装置は、複数の二次電池を備える電池ユニット20と、電池ユニット20に含まれる二次電池の電圧を検出するための電圧検出部12と、電池ユニット20に含まれる二次電池の温度を検出するための温度検出部14と、電池ユニット20に含まれる二次電池に流れる電流を検出するための電流検出部16と、電圧検出部12と温度検出部14と電流検出部16から入力される信号を演算して二次電池の残容量を検出するための残容量演算部18と、残容量演算部18で演算された残容量を接続機器に伝送する通信処理部19とを備えており、接続機器の駆動中は、電圧検出部12及び/又は電流検出部16で接続機器を流れる充放電電流及び/又は充放電電圧を検出し、これを積算することで残容量演算部18が積算残容量を検出し、接続機器の駆動を行っていないときは、残容量演算部18がパルス放電を複数回繰り返し、電圧検出部12及び/又は電流検出部16で放電電流及び/又は放電電圧を検出して、電池の内部抵抗及び起電力を算出し、算出された電池の内部抵抗及び起電力に基づいて、予め作成されたテーブルを参照して残容量演算部18が電池の残容量を推定する。この構成によって、完全な放電を行うことなく正確な電池の残容量を検出することが可能となる。本発明の電池の残容量検出方法及び電源装置は、メモリ効果の発生状態に拘わらず正確に電池の残容量を検出できるという優れた特長を有する。特に、メモリ効果の発生による残容量の変動を、電池温度などの影響を加味したテーブルを用いて予測している。テーブルを参照して経験値から演算する方法は、簡単な構成で確実に、かつ比較的精度よく各時点における電池の残容量を検出できる。またこの方法によれば、メモリ効果のみならず、自己放電による誤差をも考慮した残容量検出が可能となる。以下、本発明の実施の形態を図面に基づいて説明する。ただし、以下に示す実施の形態は、本発明の技術思想を具体化するための電池の残容量検出方法及び電源装置を例示するものであって、本発明は電池の残容量検出方法及び電源装置を以下のものに特定しない。また特許請求の範囲に示される部材を、実施の形態の部材に特定するものでは決してない。なお、各図面が示す部材の大きさや位置関係等は、説明を明確にするため誇張していることがある。さらに以下の説明において、同一の名称、符号については同一もしくは同質の部材を示しており、詳細説明を適宜省略する。さらに、本発明を構成する各要素は、複数の要素を同一の部材で構成して一の部材で複数の要素を兼用する態様としてもよいし、逆に一の部材の機能を複数の部材で分担して実現することもできる。電源装置100図1に、本発明の一実施の形態に係る電源装置の構成を示すブロック図を示す。この図に示す電源装置100は、二次電池22を含む電池ユニット20と、残容量検出装置10とを備える。残容量検出装置10は、電池の電圧を検出する電圧検出部12と、電池の温度を検出する温度検出部14と、電池に流れる電流を検出する電流検出部16と、電圧検出部12と温度検出部14と電流検出部16から入力される信号を演算して電池の残容量を検出すると共に、残容量や電池温度から電池ユニット20の最大制限電流値を検出する残容量演算部18と、演算された残容量や最大制限電流値を接続機器に伝送する通信処理部19とを備えている。通信処理部19は接続機器通信端子30に接続している。通信処理部19は、接続機器通信端子30を介して接続機器に接続されて、残容量や最大制限電流値を示す信号を接続機器に伝送する。この例では、接続機器として自動車等の車両を用い、電源装置100を車両に搭載して車両を走行させるモータMを駆動する。通信処理部19は車両に設けられた車両側制御部と接続されて通信を行う。以下、車両用の電源装置について説明する。電池ユニット20に内蔵される二次電池22は、ニッケル水素電池である。ただし、電池はニッケルカドミウム電池とすることもできる。また、電池は一つ又は複数を直列、または並列あるいは直列と並列を組み合わせて接続している。電圧検出部12は、電池ユニット20に内蔵される二次電池22の電圧を検出する。図の電池ユニット20は、複数の二次電池22を直列に接続しているので、電圧検出部12は直列に接続している電池のトータル電圧を検出している。電圧検出部12は、検出した電圧をアナログ信号として残容量演算部18に出力し、あるいはA/Dコンバータでアナログ信号をデジタル信号に変換して残容量演算部18に出力する。電圧検出部12は、一定のサンプリング周期で、あるいは連続的に電池電圧を検出して、検出した電圧を残容量演算部18に出力する。温度検出部14は、電池ユニット20に内蔵される電池の温度を検出する温度センサ17を備える。温度センサ17は、電池の表面に接触し、あるいは熱伝導材を介して電池に接触し、あるいはまた電池の表面に接近して電池に熱結合されて電池温度を検出する。温度センサ17はサーミスタである。ただし、温度センサ17には、PTCやバリスタ等、温度を電気抵抗に変換できる全ての素子を使用できる。また、温度センサ17には、電池から放射される赤外線を検出して電池に非接触な状態で温度を検出できる素子も使用できる。温度検出部14も、検出した電池温度をアナログ信号で残容量演算部18に出力し、あるいはA/Dコンバータでアナログ信号をデジタル信号に変換して残容量演算部18に出力する。温度検出部14は一定のサンプリング周期で、あるいは連続的に電池温度を検出して、検出した電池温度を残容量演算部18に出力する。電流検出部16は、電池と直列に抵抗素子を接続し、この抵抗素子の両端に誘導される電圧を検出して、電池に流れる放電電流を検出する。抵抗素子は低抵抗な抵抗器である。ただ抵抗素子には、トランジスタやFET等の半導体も使用できる。電池の充電電流と放電電流は電流が流れる方向が逆であるから、抵抗素子に誘導される正負の極性が反転する。したがって、抵抗素子の極性で放電電流と判定して、抵抗素子に誘導される電圧で電流を検出できる。電流が抵抗素子に誘導される電圧に比例するからである。この電流検出部16は電池の放電電流を正確に検出できる。ただし、電流検出部16には、リード線に流れる電流で外部に漏れる磁束を検出して電流を検出する構造とすることもできる。電流検出部16も、検出した放電電流をアナログ信号で残容量演算部18に出力し、あるいはA/Dコンバータでアナログ信号をデジタル信号に変換して残容量演算部18に出力する。電流検出部16は、一定のサンプリング周期で、あるいは連続的に放電電流を検出して、検出した放電電流を残容量演算部18に出力する。電圧検出部12と温度検出部14と電流検出部16から、一定のサンプリング周期でデジタル値の信号を残容量演算部18に出力する装置は、各々の検出部から残容量演算部18にデジタル信号を出力するタイミングをずらせて、順番にデジタル信号を残容量演算部18に出力する。残容量演算部18は、電池の放電電流を積算して放電容量を検出し、検出した放電容量を減算して電池の残容量を演算する。例えば、満充電容量を1000mAhとする電池が500mAh放電されると、残容量は50となる。したがって、満充電された電池が放電されるに従って、残容量は次第に低下する。さらに、残容量演算部18は、後述する方法で残容量を補正する。補正に関する必要な値やデータ、設定は、残容量演算部18に接続しているメモリ11に記憶される。メモリ11はE2PROM等の不揮発性メモリやRAMなどの揮発性メモリが利用できる。なお、後述するようにパルス放電を利用して残容量を検出しているが、このような放電は、別途、車両側に設置された抵抗図示せずにて放電する。また、このような放電のための抵抗については、特開2002-267698号に開示されるようなプリチャージ抵抗を利用した放電回路を設けて、プリチャージ抵抗にて放電することもできる。電池の残容量の検出方法電源装置で車両を駆動するには、電池の残容量を正確に検出することが必要となる。電池の残容量は、一般には充電電流と放電電流を検出し、検出した電流を積算して演算される。この方法は、充電電流から放電電流を減算して残容量を演算する。充電容量は充電電流を積算して演算される。放電容量は放電電流を積算して演算される。充電容量と放電容量から残容量を演算する方式は、二次電池22をニッケル水素電池とし、あるいはニッケルカドミウム電池とする場合も残容量を演算できる。ただ、残容量は放電電流や電池温度によって誤差が生じる。したがって、正確に把握することが重要となる。実施例1まず、実施例1について以下に説明する。車の運転中は、図2に示すようにSOCは変化しており、車の運転中の電池容量の演算は、電流センサによる積算を利用して行われている。そして、本実施例においては、運転を停止した状態で、以下に詳細に説明するようにパルス放電を行うことで電池の初期起電力Voiniに基づいて、改訂起電力Voresetに対応する残容量を求める。なお、運転を停止した状態とは電池による車の駆動すなわち電池駆動をしていない状態を意味し、実施例1ではキーオフ時を採用しているが、キーオン時とすることもできる。改訂起電力Voresetに対応する残容量によって、キーオフの期間中により正確な残容量を検出して、上述の運転中の電流積算により求めた電池容量に代わって、改訂起電力Voresetに対応する残容量に書き換え、即ち、補正する。これにより、正確な残容量を得ることができる。そして、車両の電源装置として利用され、車両の駆動開始時に電力を必要とする場合は、残容量を正確に知ることで、車両の駆動が可能であるかを知ることができる。よって、駆動が不可能である残容量程度である場合は、家庭の商用電源から充電するなどの必要な充電の対応策をとることができる。特に、燃料電池とニッケル水素電池等の二次電池との電力で駆動する車両においては、燃料電池が駆動開始するときに電力を必要とするので、上述のように残容量を正確に知ることが重要である。また、このようなパルス放電は、運転を停止した状態即ち、駐車中に行われるが、停止する前の運転、電池駆動が、所定時間例えば、3時間未満であるなら、パルス放電をせず、電池容量が低下することを防止している。以下、パルス放電によって電池の残容量を求める方法について説明する。パルス放電は、図3に示すようにパルス電流を複数回放電して行う。パルス放電は、電源装置を接続した車両側からの制御により行われる。ここで電源装置に含まれる電池は、図4に示すように内部抵抗を含んでいる。したがって、外部に出力される出力電圧Vと内部の電池の起電力Voは、次式で表される。上式においてIは放電電流、Rは電池の内部抵抗である。IとVは電流センサ、電圧センサにより実測可能であるため、計算によりVoとRを求めることができる。またパルス電流を複数回放電し、その間にIとVとを検出してVoとRを求めることにより、VoとRの精度を高めることができる。図3の例では30Aの放電とリセットを各1秒間、29~34回実施することでVo,Rの値の精度を高めている。よって、このようなパルス放電は、約1分間程度の時間となる。特に複数回のパルス電流を通電することで、残容量のヒステリシスを一定にする効果も得られるため、より精度よくVoなどを求めることができる。さらにフィルタを加えることでVo,Rの急激な変化を抑制している。具体的には、パルス放電における電圧、電流の測定値をそれぞれVn、Inとすると、電圧、電流の微少変化量dV、dIはそれぞれ次式で表される。ここで電圧及び電流は、所定時間毎に測定され、任意の測定時期における電圧、電流を、Vn、Inとしている。この例では、dV,dIは0.1秒毎に演算している。すなわち、1回のパルス放電で10回dV,dIを演算していることになる。数1から、Rが判れば計算によりVoを求めることができる。そこで、Rを次式のようにして求める。なお、dI=In-In1が、0.2A以下では、適切なRを求めることができないので演算せず、dV/dI=0として、以下の数3を演算している。なお、本明細書においては掛け算を示している。上式において1-a及びaの乗算によってフィルタをかけ急激な変化を抑制し、ノイズなどによる変動を低減している。ここで、aの値を調整することで、直近に測定されたdV/dIに重みを付した、単位時間変化における内部抵抗Rを演算することができる。この例ではa=0.01としている。ここで得られたRはメモリ11に温度毎に保持し、次回の演算に利用する。さらにVon及びVoは次式で求めることができる。そして、パルス放電を終了した時点で、Voを演算することができる。上式においても1-a及びaの乗算によってフィルタをかけている。この例ではa=0.01としている。なお、数3と数4のaは、同一の値に限らず独立変数として設定することもできる。以上のようにVoそのものを演算するのでなく、フィルタをかけて時間変化の影響を抑制した値とすることで、安定したVoを得ることができる。このようにして得られたVoはメモリ効果を含んでいる。メモリ効果が発生すると電池の残容量が変化するため、正確な電池の残容量を求めることができない。これについて、図5に示す電池の残容量と起電力の関係を示すグラフに基づいて説明する。曲線Voiniは、メモリ効果がないときの、電池の1セルあたりの起電力Vo単位電圧と、残容量との関係とを示している。曲線Voresetは、メモリ効果が発生した電池において経験的に実測された電圧Voreset単位電圧と、残容量との関係とを示している。ここで、メモリ効果について以下に説明する。実施例1の車両用の電源装置の駆動においては、電池のSOCが50付近となるように、充放電が制御されている。図5にてSOC駆動領域として示すように、残容量が50近傍を中心として電池を使用するとき、メモリ効果がないときの曲線Voiniと比較して、メモリ効果が発生した曲線Voresetは、同じ残容量でも、電圧が低くなる。この低い分、すなわちメモリ効果低下分を、後述するVmCSOCとして求め、改訂起電力Voresetを演算する。この、メモリ効果低下分の要素を差し引いた改訂起電力Voreset単位電圧は、残容量と対応しているので、演算された改訂起電力Voresetより、残容量をより適切かつ正確に求めることができる。なお、図5に示すメモリ効果が発生した曲線Voresetは、ある程度電池を使用した状態を表したものであり、別途、電圧測定と放電による残容量測定を行って得られた実測値である。このような曲線Voresetは、電池の使用時間の経過、電池駆動状態等により、異なる曲線になるが、使用途中の各種電池においては、図5で表されるVoiniとVoresetとの間隔の差=VmCSOCの傾向は、同様のものとなる。そこで、メモリ効果を考慮した電池の残容量を得るために、以下の演算を行う。ここで初期起電力Voiniは起電力Voの初期値であり、表1に示すように、予め得られている残容量との相関関係を示すテーブル等を利用する。またVmはメモリ効果発生量であり、表2に示すように、この値はテーブル等を利用して求める。さらにCSOCは駆動中の残容量の動きによるメモリ効果発生量の補正値である。ここでVoini、Vmを求めるテーブルの一例を、以下に示す。なお、表1、2も含めて、実施例1で利用される表であるテーブルは、直線補間して利用される。表1において、温度Temperatureは、Vo演算中の測定される電池温度である。そして、表1、表2を利用した数5の改訂起電力Voresetの求め方について以下に説明する。まず数4に基づいて、Voを求める。例えば、測定、演算されたVoがVo=15.31V実施例1では、12セル直列のニッケル水素電池を利用で、電池温度30°Cである場合、表1より、表1の左端欄のVoiniSOC40を得る。ここで、未使用の電池であるなら、このSOC40が残容量となる。一方、使用した電池である場合は、後述するCtrが581900のとき、表2の0.17VSOC10~0.25VSOC65を得る。この値に、後述するCSOCの値を掛ける。CSOCが1であるなら、Vmは0.17V~0.25Vのままであり、各温度の各SOC毎に、表1のVoinitableの各値からVmを引き算し、表3のVoresettableとなる。そして、初回以降の運転を停止したキーオフの状態の非電池駆動状態でパルス放電を実施して、数4に従い起電力Voを演算する。測定、演算された起電力VoがVo=15.10V,電池温度30°Cの場合、表4を参照し、残容量SOC=40を得ることができる。このことを、数5のVoreset=Voini-VmCSOCの式の形で示すと、次式のようになる。Voreset値15.10、表3の30°C、Vo40=Voini値15.31、表1の30°C、Vo40-Vm値0.21、表2の0.21、Vm40CSOC値1次にCtrは、以下の式で演算される。ここでCtrはメモリ効果の発生量を決めるためのカウンタ値であり、車両の運転ドライブ中である電池の駆動状態において、Iは電流値所定時間例えば、1S毎に測定される値詳細には、所定時間中における測定された電流値の平均値、単位A、aCtbは電池の劣化に伴う補正係数、bTは電池温度による補正係数Iと同じく所定時間毎に測定される温度に対応した表4の値をそれぞれ示している。そして、Ctrは、所定時間毎例えば、1Sに、これら値を乗算して、積算している。ここで、Ctrは、数6のように乗算して積算した値であって、表2に示すように、Vmと正の相関関係を有している。これらの内、bTおよびaCtbはテーブルなどを利用して演算でき、例えば以下の表を参照して求めることができる。表4に示すように、bTは、電池温度と正の相関関係を備える。Ctrは、電池の利用を開始してから、メンテナンスにて電池を完全放電を行う等の処理を行うまで、データを累積することになる。このように、Ctrは、電池を完全放電処理リフレッシュ処理等を行うと、ゼロに戻る値である。メモリ効果の発生量Vmにおいて、Ctbは後述するように累積する値であり、Ctrがゼロになった後、数6のように、累積しているCtbをかけて積算するので、リフレッシュ処理の後、Ctrはすぐに大きな値となる。また電池の劣化を決めるための要素であるカウンタ値Ctbは、次式で演算できる。ここで、Iは、数6のIと同様で電流値所定時間例えば、1S毎に測定される値、単位A、aTは電池温度による補正係数Iと同じく所定時間毎に測定される温度に対応した表6の値であり、電池温度をパラメータにしてテーブルなどから求めることができる。aTを決定するテーブルの一例を、以下の表6に示し、電池温度による補正係数aTは、電池温度と正の相関関係を備える。そして、Ctbは、所定時間毎例えば、1Sに、これら値を乗算して、積算している。Ctbの要素は、電池の利用を開始してから、電池を交換するまで、累積される値であり、このため、電池の劣化を決める要素である。表5で確認できるように、電池の劣化に伴う補正係数であるaCtbは、Ctbと正の相関がある。また、数5におけるメモリ効果の補正量CSOCは、テーブルなどに基づいて決定される。この例では、以下の表に基づいて決定される。ここで、パルス放電を終了した時点における表中のCANSOCは電流値の積算により演算された残容量SOCcalであり、また図6aに示すように、aは駆動=ドライブ中の残容量の最小値SOCmin、bは駆動中の残容量の最大値SOCmaxである。これによって、CANSOC=SOCcalがa-b間のどこにあるか求めたのち、CSOCを求める。そして、運転を停止した状態でのパルス放電を実施する毎にSOCminとSOCmaxは書き換え、その後の駆動中のSOCminとSOCmaxの値を更新しながら記憶し、次の運転を停止した状態でのパルス放電時に用いる。例えば、通常の使用であれば、aが45、bが55程度であり、上記表7の中段の値は、左側より、45、46、48、50、53、55となる。パルス放電前の残容量は、通常50程度であって、実施例1ではパルス放電は、SOCの5相当の放電であることより、パルス放電により、SOCcalが45となり、表7のCSOCは1になるのが、通常である。パルス放電を終了した時点におけるSOCcalが、aに近いと1、bに近いと0となるように処理している。これは、図5に示すように、運転中の残容量においては、SOC駆動領域の左端付近にaが位置し、右端付近にbが位置することになり、メモリ効果がないときの曲線Voiniと、メモリ効果が発生した曲線Voresetの差については、左端付近では大きく、右端付近では小さいことより、表7のCSOCの値を利用している。また、上述の実施例では、aは駆動中走行中の残容量の最小値SOCmin、bは駆動中の残容量の最大値SOCmaxを利用しているが、これに代わって、運転を停止した状態のキーオフ時前の所定時間例えば、10分から40分の間の所定時間、望ましくは15分から25分の間の所定時間、更に望ましくは約20分前からキーオフまでの間の駆動状態における残容量の最小値SOCmin、残容量の最大値SOCmaxを採用し、表7を利用してもよい。駆動中全体での最大、最小残容量よりも、キーオフ前の所定時間からキーオフまでの最大、最小残容量を利用する方が、CSOC並びにVoreset=Voini-VmCSOCが適切に得られる傾向にある。なお、図5のメモリ効果低下分である曲線Voresetは、ある程度使用した状態の電池を表したものであり、別途、電圧測定と放電による残容量測定を行い得られた実測値である。このような曲線Voresetは、電池の使用時間の経過、電池駆動状態等により、異なる曲線になるが、使用途中の各種電池においては、図5で表されるVoiniとVoresetとの間隔の差=VmCSOCの傾向は、同様のものとなる。上述の実施例では、パルス放電を終了した時点におけるSOCcalを利用しているが、これに代わって、運転を停止したキーオフ時の電流を積算した残容量SOCcalでも良い。この場合は、表7のテーブル値とは異なる値となる。このようなメモリ効果の補正量CSOCの意味について、以下に説明する。図5で示されるように、メモリ効果がないときの曲線Voiniと比較して、メモリ効果が発生した曲線Voresetは、同じ残容量でも、電圧に差が生じている。差の縦方向の幅は、電池の使用状態により異なるが、残容量に対応した差の傾向は、図5のようになる。メモリ効果発生量の補正値CSOCは、起電力Voを演算する以前の電池駆動状態で使用する残容量が、このような差が大きいところメモリ効果の大きい残容量領域で使用されるときは、1に近く、差が小さいときメモリ効果の小さい残容量領域はゼロに近くなる。そして、電池駆動状態においては、SOC50を中心として、充放電が繰り返されることより、上述のようにして駆動中の残容量の履歴を把握して、メモリ効果発生量の補正値CSOCとして反映させている。以上のように、本実施例では、メモリ効果に基づく発生量Vmにおいて、メモリ効果の発生量のカウンタCtrを利用し、この中に、電池の劣化を決めるための要素であるカウンタ値Ctbを有している。メモリ効果に関する項Ctrと寿命に関する項にそれぞれカウンタCtbを用意し、2つのカウンタでもってこれらの要因を考慮した電池残容量の検出を行っている。特にメモリ効果に関する項と寿命に関する項は、いずれも電池の残容量に影響を与えるものの、挙動は異なっている。例えばメモリ効果は電池を一旦完全に放電すると解消するが、寿命は変化しない。またメモリ効果は電池温度が高いほど大きくなる。さらに寿命はメモリ効果に影響を及ぼす。したがって、これらの要因を別個の補正係数として演算することにより、精度よく電池の残容量を推定することが可能となる。なお、本明細書の各種表において相関が示された値は、測定、実測、演算等に基づいている。より適切、正確に、電池の残容量を得るために、測定、実測、演算等に基づいて、異なる値、補正係数等を利用することもあり得る。実施例2さらに、実施例2に係る電池の残容量検出方法では、数6に代わって、メモリ効果の推定のために以下の数8を利用する。ここで、Ctrはメモリ効果の発生量を決めるためのカウンタ、車両の運転ドライブ中において、Iは電流値所定時間例えば、1S毎に測定される値であり、単位Aである。、Rは抵抗値直前回のキーオフ時のパルス放電にて表れた上述の数3で示される内部抵抗を利用する、aCtbは電池の劣化に伴う補正係数数6のaCtbと同じ、bTは電池温度による補正係数数6のbTと同じとする。そして、Ctrは、所定時間毎例えば、1Sに、これら値を乗算して、積算している。CtrとVmとの相関関係については、表2と同様なものを利用でき、適宜、固定係数等を掛けた表2の値を利用できる。数8は、発熱量に比例するI2Rを含んでおり、メモリ効果に基づく発生量Vmが、発熱量にも依存しているので、本実施例2は有効である。実施例3さらにまた、実施例3に係る電池の残容量検出方法では、上述の数6で表されるメモリ効果の発生量を決めるカウンタ値Ctrに代わって、以下の数9で示されるカウンタ値Ctrを利用し、車両の運転ドライブ中において、電流の充電放電が切り替えられたタイミングで積算する。またこの際、例えば充電電流値などに応じて残容量を直接補正することもできる。一例として、次式を利用する。上式は、電流の通電方向が逆転する際即ち、充電放電が切り替わる際、すなわちIn>0でかつIn1<0の場合やIn<0でかつIn1>0の場合に、Ctr1を積算してCtrを求める。ここで、Inは、所定時間毎に測定される電流値Iであって、任意の測定時期の電流値を示しており、よって、In1は、Inが測定された測定時期のひとつ前の所定時間に測定された電流値となる。bT、aCtbは、数6と同じである。ここでCtrはメモリ効果の発生量を決めるためのカウンタであり、数6のCtrと同様にして利用される。また、CtrとVmとの相関関係については、表2と同様なものを利用でき、適宜、固定係数等を掛けた表2の値を利用できる。aCtbは電池の劣化に伴う補正係数、bTは電池温度による補正係数、ccapaは、前回の充放電が切り替え時から今回の充放電が切り替わる前までの充電または放電量に伴う係数であり、表8に示す。このように充放電が切り替わった時点における温度係数bT、寿命係数aCtb並びに充放電量係数ccapaを掛けたものを積算する。ここでは、数6と比較して、数9のCtrの有効な点について、以下に説明する。メモリ効果の要因のひとつとして、充電、放電での電流の切替回数が多いほど、メモリ効果が大きいと考えられる。よって、通電方向が逆転する際に、Ctr1を積算することで、数9のCtrを大きくしている。また、係数ccapaは、1回の充電、放電量が多い場合、メモリ効果が低減される現象に対応しており、充電、放電量が多い場合は、この係数を小さくして、Ctr1、数6のCtrを小さくしている。実施例4さらにまた、実施例4に係る電池の残容量検出方法では、メモリ効果発生量の補正値CSOCについて、上述の表7にて説明した方法に代わって、以下のように求める。ここでは図6bに示すように、駆動中の残容量として最大値SOCmax=b,最小値SOCmin=a,及び平均値SOCave=cを求める。そして補正前の積算により演算された残容量SOCcalCANSOCが、下記の表9、表10に基づいて、a-b間のいずれに位置しているかを確認してCSOCを求める。上述のようにして駆動中の残容量の履歴を反映するメモリ効果発生量の補正値CSOCにおいては、上述の表7と比べて、本実施例4では平均値SOCave=cも利用していることより、駆動中の残容量の履歴をより適切に反映することができる。運転を停止した状態でのパルス放電を実施する毎にSOCmin、SOCave、SOCmaxは書き換え、その後の駆動中のSOCmin、SOCave、SOCmaxの値を更新しながら記憶し、次の運転を停止した状態でのパルス放電時に用いる。例えば、aが40、bが60、cが50なら、表9の中段の値は、左側より、40、41、43、45、48、50となり、上記表10の中段の値は、左側より、50、51、53、55、58、50となる。実施例5さらにまた、実施例5に係る電池の残容量検出方法では、メモリ効果発生量の補正値CSOCについて、上述の表7にて説明した方法に代わって、以下のように求める。図7に示すように所定時間毎に時分割して各区間毎に残容量を求めると共に、直近のものほど影響が大きくなるように重み付けを行う。まずモータの駆動中に、所定時間毎に分割して、各区間毎に残容量の最大値SOCmax=b,最小値SOCmin=aを求める。これに基づいて区間毎に、表7の方法と同様にしてCSOCを演算する。各区間毎に演算したCSOCについて、下記の数10に基づいて、最終的なCSOCの値を求める。CSOCnは、任意の区間nにおけるCSOCを示している。これにより、直近の値ほど係数k、l、m等が大きいので、メモリ効果発生量の補正値CSOCは、直前のドライブ中の使用した残容量の履歴をより反映していることになる。実施例6上記の実施例で説明したように、パルス放電を行って、数5のVoreset=Voini-VmCSOCより、残容量を演算している。一方、本出願人は、電池を利用することなく、車を長期間例えば、1ケ月以上駐車した場合は、十分な理由づけはできていないものの、以下について確認した。初期起電力Voiniからのメモリ効果低下分であるVmCSOCよりも、自己放電量に影響される初期起電力Voiniからの自己放電低下分Vmsが支配的になることを確認した。この場合は、以下の数11にて、改訂起電力Voresetを求めて、これに対応した残容量を求める。メモリ効果低下分であるVmCSOCと、自己放電低下分Vmsのどちらかが大きく、支配的となるかは、以下のようにして決定し、残容量を求めている。長期間の駐車又は不使用のあと電池を駆動させた後、上述の実施例1のパルス放電を行って演算された起電力Voを得る。具体的には、実施例1と同じ結果であれば、実施例1の方法では、Voreset値15.10、表4の30°C、Vo40=Voini値15.31、表1の30°C-Vm値0.21、表2の0.21、Vm40CSOC値1を得る。そして、この場合、Ctrが581900である。一方、本実施例6においては、自己放電量が0.3Ahであるなら、表11、表12に従い詳しくは後述する、Voreset値15.10、表12の30°C、直線補間してVo58=Voini値15.64、表1の30°CでのSOC58を直線補間して得る-Vms直線補間して表11の値0.54、Vms58CSOC値1を得る。そして、CSOCが値1なら、表2におけるCtrが581900における各SOCでのVmの値と、表11における自己放電量が0.3Ahでの各SOCでのVmsの値とを、同じSOCにて、比較する。この場合、いずれのSOC[]においても、Vmsが大きいので、上記のように数11のVoresetより残容量SOC=58を得る。以下に、本実施例6における改訂起電力Voreset測定される起電力Voから残容量を求める手順を説明する。別途、自己放電量[AH]を測定し、表11に従い、例えば、0.3[AH]の場合、表11の0.29VSOC10~0.56VSOC65を得、各SOC毎に、表1のVoinitableの各値からこれら値を引き算し、表12のVoresettableとなる。そして、自己放電後の運転を停止したキーオフの状態でパルス放電を実施して、数4に従い起電力Voを演算する。測定、演算された起電力VoがVo=15.10V,電池温度30度の場合、表12を参照し、残容量SOC=58を得ることができる。この例では、VmsがVmCSOCが値1の場合より常に大きいので、Vmsを採用することになるが、種々の場合を想定して、VmCSOCとVmsとを比較して大きい方を採用した各SOCでのVmCSOC、orVmsの値を利用して、表1のVoinitableの各値からこれら値を引き算し、表3又は表12のようなVoresettableを作成し、測定、演算された起電力Vo、電池温度より、残容量SOCを求める。具体的には、実施例1において、Ctrが3879330の場合、CSOCが値1なら、表2のVmの値となり、実施例6において、自己放電量が0.3[AH]の場合、表12のVmsの値を得る。これら値を、同じSOCにて、比較する。理解を容易にするために、以下の表13にて比較すると、SOC10以外は、Vmsが大きく、SOC10では、VmCSOCが大きい。各SOCにて、大きい方の値を採用したVmCSOCorVmsを作成し、各SOC毎に、表1のVoinitableの各値からこれら値を引き算し、表3又は表12のようなVoresettableを新たに作成する。そして、測定、演算された起電力Vo、電池温度より、残容量SOCを求める。この場合において、Voresetが、SOC10の値であるなら、この場合は、Vmを採用していることになる。また、Voresetが、SOC20以上の場合は、Vmsを採用していることなる。上記において、Voreset=Voini-Vmsである。以下に、本実施例6に利用した自己放電量の演算方法を示すが、これ以外の方法で自己放電を演算しても良い。まず、図8に示す自己放電特性のデータは、二次電池を満充電したとき、各種温度における自己放電量の変化を表している。また、図9に示すように、二次電池を満充電しなかった例えば、80まで充電した場合にも、図9に実線100充電及び破線80充電に示す如く自己放電特性は全く同じであることが判明した。即ち、二次電池2の自己放電量は、二次電池2の充電を何まで行ったかに関係なく、常に略同じような特性を有することを確認した。更には、ここで、残容量演部18には図8に示すような、自己放電が開始されてからの経過時間に対応して、二次電池であるニッケル水素電池の残容量の変化が記憶されており、これより、開始からの任意の経過時間[day]における所定時間Tの間に減少する容量であるΔSOC[AH]又はを得て、積算することで、自己放電量を算出することができる。また、例えば、簡略化した説明として、自己放電開始から5日までは、電池温度が40°Cで、5日以降は電池温度25°Cとなった場合は、図9に示されるように、自己放電量を算出する。つまり、図8で示された電池温度25°Cの残容量の変化を利用して、電池温度25°Cの残容量の変化曲線を上下方向に平行移動して、5日時点で温度40°Cの残容量の変化曲線と交差させる。そして、自己放電開始から5日までは、電池温度が40°Cの残容量の変化曲線にて、5日以降は、電池温度25°Cの残容量の変化曲線にて、自己放電量を算出する。"