"蓄電装置の充電電流および放電電流の電流値を取得する電流値取得部と、前記蓄電装置の端子間電圧の電圧値を取得する電圧値取得部と、前記蓄電装置の内部抵抗の値を記憶する第1記憶部と、前記電流値取得部によって取得された電流値と、前記電圧値取得部によって取得された電圧値と、前記内部抵抗の値より、前記蓄電装置の開放端電圧を推定する開放端電圧推定部と、開放端電圧と蓄電装置のSOCとの関係について予め作成された相関関係を記憶する第2記憶部と、前記開放端電圧推定部により推定された前記開放端電圧を前記相関関係に対応させることにより、前記蓄電装置のSOCを推定する残容量推定部と、目標SOCと、前記残容量推定部により推定されたSOCとの差である偏差を算出する偏差算出部と、前記偏差算出部によって算出された前記偏差に応じて、充電電力値または放電電力値の設定を変更する設定変更部と、を備える充放電制御装置。請求項1に記載の充放電制御装置において、前記開放端電圧推定部は、前記電流値取得部によって取得された電流値をIとし、前記電圧値取得部によって取得された電圧値をVとし、前記内部抵抗の値をrとし、前記開放端電圧をVOCとして、VOC=V-Irの式より前記開放端電圧を推定する充放電制御装置。請求項1または2に記載の充放電制御装置において、前記設定変更部は、ΔSOCが小さくなるにつれて、前記充電電力値または前記放電電力値の絶対値を小さく設定することを特徴とする充放電制御装置。請求項1から3のいずれか1に記載の充放電制御装置において、前記設定変更部は、ΔSOCが予め定めた変更閾値を超える値のときは予め定めた定電力充電値または定電力放電値に設定し、ΔSOCが前記変更閾値以下となるときに、前記定電力充電値または前記定電力放電値に予め定めた低減係数を乗じた低電力放電値または低電力放電値に設定することを特徴とする充放電制御装置。蓄電装置に対する充電が充電限界を超すと過充電となり、放電限界を超すと過放電となり、いずれも蓄電装置に損傷を与えることがある。したがって、蓄電装置の充放電は、現在の充電状態を把握して、そこからの充放電が充電限界と放電限界を超えないように制御が行われる。蓄電装置の現在の充電状態を示す指標として、SOCStateOfChargeが用いられる。ところで、蓄電装置の内部抵抗は、蓄電装置が充放電を繰り返すうちに経時変化する。また、蓄電装置を使用する温度条件によっても内部抵抗は変化する。内部抵抗の変化は、実際のSOCの値と、推定されたSOCの値との間に誤差を生じさせる場合がある。この誤差により、所定のSOCまで充放電しようとする場合に、所定のSOCまで充放電できない場合がある。場合によっては、蓄電装置の過充電、過放電が生じ得る。本発明の目的は、蓄電装置の過充電、過放電を防止しながら、目標とするSOCに近づけるような充放電を可能にする充放電制御装置を提供することである。本発明に係る充放電制御装置は、蓄電装置の充電電流および放電電流の電流値を取得する電流値取得部と、蓄電装置の端子間電圧の電圧値を取得する電圧値取得部と、蓄電装置の内部抵抗の値を記憶する第1記憶部と、電流値取得部によって取得された電流値と、電圧値取得部によって取得された電圧値と、内部抵抗の値より、蓄電装置の開放端電圧を推定する開放端電圧推定部と、開放端電圧と蓄電装置のSOCとの関係について予め作成された相関関係を記憶する第2記憶部と、開放端電圧推定部により推定された開放端電圧を相関関係に対応させることにより、蓄電装置のSOCを推定する残容量推定部と、目標SOCと残容量推定部により推定されたSOCとの差である偏差を算出する偏差算出部と、偏差算出部によって算出された偏差に応じて、充電電力値または放電電力値の設定を変更する設定変更部と、を備える。上記構成により、蓄電装置の内部抵抗の値rが経時変化等によって初期値から変化した場合でも、蓄電装置の過充電、過放電を防止しながら、目標SOCに近づける充放電が可能になる。以下に図面を用いて本発明に係る実施の形態につき、詳細に説明する。以下では、蓄電池としてリチウムイオン二次電池を説明するが、これ以外の二次電池であってもよい。例えばニッケル水素電池、ニッケルカドミウム電池等であってもよい。以下では、充放電制御システムの制御対象として、5つの蓄電池を直列接続した組電池をさらに4つ並列接続して構成される蓄電池集合体を述べるが、これは説明のため例示である。組電池、蓄電池集合体とするのは、負荷の必要電力に対応するための電圧と電流とを得るためである。したがって、蓄電池集合体を構成する組電池の数、組電池を構成する蓄電池の数等は、充放電制御システムの仕様に応じ適宜なものとできる。場合によっては、以下で説明する蓄電池集合体をさらに複数組み合わせた蓄電池集合体システムとしてもよい。以下では、SOCを推定する対象の蓄電装置として、蓄電池を説明するが、これ以外の構成の蓄電装置であってもよい。すなわち、SOCを推定する蓄電装置としては、動作中における電流と端子間電圧を用いてSOCを推定するものであればよい。例えば1つの組電池のSOCを推定するものとしてもよく、組電池を複数組み合わせた蓄電池集合体のSOCを推定するものとしてもよい。以下では、全ての図面において同様の要素には同一の符号を付し、重複する説明を省略する。また、本文中の説明においては、必要に応じそれ以前に述べた符号を用いるものとする。図1は、蓄電池集合体の充放電制御システム10の構成を示す図である。蓄電池集合体の充放電制御システム10は、複数の蓄電池34を組み合わせた蓄電池集合体30と、電源部12と、負荷部14との間の電力管理を通して、蓄電池集合体30の最適な充放電制御を行うシステムである。ここで、充放電制御装置52が、蓄電池34のSOCを推定する。そして、蓄電池34が、充放電の目標とするSOCに近づけるような充放電を行えるように、電力変換器16が、充電電力値または放電電力値の設定を適切に変更する機能を有する。なお、充放電の目標とするSOCを目標SOCという。電源部12は、外部商用電源、太陽光発電システム等を含む。外部商用電源は、単相または三相の交流電力源であり、例えば外部の電力会社から供給される。太陽光発電システムは、太陽光エネルギを直流電力に変換する光電変換システムである。負荷部14は、例えば、工場の負荷であり、機械設備の他、一般照明、一般空調、厨房器具、サーバやPC等の事務機器、工場内空調等を含む。電力変換器16は、充放電制御装置52から送信される充放電指令の下で、電源部12からの充電電力を蓄電池集合体30へ供給し、あるいは、蓄電池集合体30からの放電電力を負荷部14へ供給する機能を有する。具体的には、充放電指令に基づいて、電源部12の交流電力を蓄電池34に充電するために直流電力へ電力変換し、または電源部12の直流電力の電圧を蓄電池34に適した電圧へ電圧変換し、あるいは蓄電池34の電圧を負荷部14に適した電圧へ電圧変換を行う。電力変換器16は、双方向AC/DCコンバータ、双方向DC/DCコンバータ等のコンバータで、実際に行われる変換の内容に応じて、用いられるコンバータの種類が選択される。充放電メインバス18は、電力変換器16と蓄電池集合体30を接続する電力バスである。蓄電池集合体30は、スイッチ部20を介して充放電メインバス18に接続される。蓄電池集合体30は、負荷部14への供給電力に応じて予め定められた個数の蓄電池34を直列接続した組電池32を、図1の例では、5つの蓄電池34を直列接続して1つの組電池32を形成し、その組電池32を4列並列接続して、蓄電池集合体30が構成されている。すなわち、蓄電池集合体30は、20個の蓄電池34から構成される。なお、1つの蓄電池34は、セルと呼ばれる300個の単位蓄電池から構成される。蓄電池34のそれぞれの端子間電圧は、図示されていない電圧検出器によって検出される。各蓄電池34の端子間電圧を合計すると、組電池32としての端子間電圧となる。なお、後述する蓄電池34の端子間電圧Vとは、複数の蓄電池34の端子間電圧の平均値である。また、蓄電池34の温度は、蓄電池温度として、図示されていない温度検出器によって検出される。また、蓄電池34に流れる電流は、電池電流Iとして電流値取得部60によって検出される。これらのデータは、サブコントローラ56を経由して、充放電制御装置52に伝送される。スイッチ部20は、蓄電池集合体30と、充放電メインバス18との間に配置される回路基板である。スイッチ部20は、図1のように複数の組電池32が相互に並列接続されるときに、並列接続された各組電池32の間で電圧差があるときに、その電圧差のために各組電池32の間に過大電流が流れることを防止し、かつ電圧差を解消するために設けられる。スイッチ部20の構成としては、並列接続される各組電池32ごとに、各組電池32と充放電メインバス18との間に保護抵抗を直列接続するものが考えられる。これによって、並列接続された各組電池32の間に電圧差があっても、その電圧差のために過大電流が流れることを抑制できる。また、保護抵抗を電流が流れることで、各組電池32の間の電圧差が次第に解消する。そして、各保護抵抗には、それぞれ並列にスイッチが設けられる。各組電池32の間の電圧差が次第に解消して、予め定めた閾値電圧差以下まで解消すると、このスイッチをオンして、保護抵抗を介さずに組電池32を直接的に充放電メインバス18に接続する。各組電池32の間の電圧差を監視してスイッチをオンオフするのは、サブコントローラ56によって行われる。このように、サブコントローラ56とスイッチ部20との作用により、各組電池32の間の電圧差がない状態で、図1の例では4つの組電池32が共に充放電に寄与することになる。以下では、そのような状態であるものとして、説明を続ける。サブコントローラ56は、蓄電池集合体30を構成する各蓄電池34の電池電流に関するデータと、各蓄電池34の端子間電圧と、各蓄電池34の温度に関するデータを取得し、充放電制御装置52に伝送する機能を有する。また、サブコントローラ56は、上記のように、各組電池32を構成する5つの蓄電池34の端子間電圧から、各組電池32の端子間電圧Vを算出して監視し、スイッチ部20のスイッチをオンオフする機能を有する。図1におけるシステムコントローラ50は、電源部12の供給電力に関するデータと、負荷部14の負荷電力に関するデータと、蓄電池集合体30のSOCや充放電電力等の蓄電池電力に関するデータとに基づいて、蓄電池集合体30の充放電制御を行うための充放電制御指令を生成する。生成された充放電制御指令は、充放電制御装置52に伝送される。なお、充放電制御指令には、目標SOCに関する情報も含まれる。充放電制御装置52は、各蓄電池34について、電池電流に関するデータを取得する電流値取得部60と、端子間電圧を取得する電圧値取得部62と、温度に関するデータを取得する温度取得部64を備える。また、システムコントローラ50からの充放電制御指令を受け取る受信部と、電力変換器16に充放電指令を送信する送信部を含む送受信部66を備える。充放電制御装置52の受信部は、システムコントローラ50から充放電制御指令を受け取る。そして、充放電制御装置52は、充放電制御指令に基づいて、充放電指令を生成する。そして、充放電制御装置52の送信部は、電力変換器16に充放電指令を送信する。なお、充放電指令の内容には、設定変更部74で設定変更された充電電力値または放電電力値に関する情報が含まれる。充放電制御装置52は、コンピュータで構成することができる。もちろん、個別の制御回路を組み合わせて構成してもよい。充放電制御装置52は、開放端電圧推定部68と、残容量推定部70と、偏差算出部72と、設定変更部74を含んで構成される。また、充放電制御装置52に含まれ、あるいは接続される記憶部54には、蓄電池34の内部抵抗の値rに関する内部抵抗ファイル76、開放端電圧VOCとSOCとの関係を示す相関関係図に関する相関関係図ファイル78が記憶される。開放端電圧推定部68は、電流値取得部60によって取得された電流値と、電圧値取得部62によって取得された電圧値と、記憶部54に記憶される蓄電池34の内部抵抗の値より、蓄電池34の開放端電圧を推定する。残容量推定部70は、記憶部54に記憶される相関関係図を用いて、開放端電圧推定部68により推定された開放端電圧VOCからSOCを推定する。偏差算出部72は、目標SOCと、残容量推定部70により推定されたSOCとの差である偏差を算出する。設定変更部74は、偏差算出部72によって算出された偏差に応じて、充電電力値または放電電力値の設定を変更する。設定変更部74が、偏差に応じて充電電力値や放電電力値の設定を変更するために、設定変更に関するデータ、例えば、後述する図5や図6に関するデータは、予め設定変更部74の内部メモリや記憶部54等に記憶される。これらの機能は、ソフトウェアを実行することで実現できる。具体的には、充放電制御プログラムを実行することで、これらの機能を実現できる。なお、これらの機能の一部をハードウェアで実現するものとしてもよい。ここで、蓄電池34の充電状態を示す指標であるSOCについて述べる。SOCは、蓄電池34の現在の充電状態を示す指標である。蓄電池34の電池容量は、電力×時間の電力時間積で示すことができる。蓄電池34の充電限界のときの容量から放電限界のときの容量を差し引いたものを満充電容量とし、現在の電池容量を満充電容量で除し、これを百分率で示したものがSOCである。したがって、蓄電池34の充放電制御は、SOCが0から100の間で余裕を持った範囲で行われる。すなわち、目標SOCは、SOCが0から100までの範囲で設定される。蓄電池34の寿命を考慮すると、浅い充放電深度で使用することが好ましく、例えば、SOCが40~90の浅い充放電深度で蓄電池34を使用する。そこで、目標SOCの下限値を40とし、目標SOCの上限値を90とすることができる。目標SOCは、予めシステムコントローラ50の内部メモリや記憶部54等に記憶される。このように、蓄電池34の充電状態は、蓄電池34に蓄電されている電力時間積で示すことができる。したがって、充電状態を示す1つの方法は、蓄電池34に出入りする電力量を時々刻々追跡して、蓄電池34における電力時間積を逐次計算し、これに基づいてSOCを算出する方法である。もう1つの方法は、蓄電池34の開放端電圧VOCとSOCとの相関関係を利用するものである。図2は、蓄電池34の開放端電圧VOCとSOCの相関関係を示す図である。横軸は、蓄電池34におけるSOCである。縦軸は、それぞれのSOCの状態である蓄電池34のVOCである。白丸が実験値、破線が近似特性線である。VOCとSOCの相関関係は、実験により求めることができる。すなわち、蓄電池の種類により、SOCが0になる開放端電圧とSOCが100になる開放端電圧が定まっている。リチウムイオン二次電池の場合、電圧が3.0VでSOCがほぼ0、4.0VでSOCがほぼ100になる。また、SOCと開放端電圧とは、一次直線関係にあることが知られている。そこで、リチウムイオン二次電池について、以下の手順で、VOCとSOCの相関関係を求める。まず、1サイクル目の充電を行う。1サイクル目の充電は、50mAの電流で4時間、定電流充電を行った後、200mAの電流で電池電圧が4.2Vになるまで、定電流充電を行い、さらに、4.2Vの電圧で電流値が50mAとなるまで、定電圧充電を行う。そして、1サイクル目の充電における充電開始から充電終了までの電流×時間の積算したものを求める。これがSOC100のときの容量単位はAhである。その後、200mAの電流で、SOCが90になるまで、つまり、満充電容量×10の放電を行って、そこで放電を停止する。停止後の開放端電圧VOCを測定する。同様に、SOC80,70,60,10になるまでの放電と、これらに対応する開放端電圧VOCの測定を繰り返す。そして、電池電圧が2.75Vになったら、定電流放電を停止する。そして、定電流放電により求められたSOCと開放端電圧VOCとを用い、横軸にSOCをとり、縦軸に開放端電圧VOCをとり、VOCとSOCの一次直線関係を求める。図2は、このようにして求められた開放端電圧VOCとSOCの相関関係を示す図である。求められた相関関係図は、相関関係図ファイル78として、記憶部54に記憶される。図2を用いてVOCからSOCを推定することができるが、VOCは、蓄電池34の開放端電圧であるので、動作中の蓄電池34においてはVOCを得ることは困難である。そこで、充放電中の蓄電池34の電流Iの値と、充放電中の蓄電池34の端子間電圧Vの値を用いると、蓄電池34の内部抵抗をrとして、蓄電池34の開放端電圧VOCは、VOC=V-Irの関係式から計算することにより推定される。このようにして推定されたVOCから、図2で示したSOCとVOCの相関関係図を用いて、充放電中の蓄電池34のSOCを推定する。なお、内部抵抗の値rは、所定の固定値であり、記憶部54の内部抵抗ファイル76に記憶される。内部抵抗の値rは、例えば、蓄電池34の初期状態の内部抵抗の値とすることができる。VOCの推定は、充放電制御装置52の開放端電圧推定部68の機能によって実行され、SOCの推定は、充放電制御装置52の残容量推定部70の機能によって実行される。具体的には、動作中の蓄電池34の電流Iの値と端子間電圧Vを、サブコントローラ56を経由して、充放電制御装置52の電流値取得部60、電圧値取得部62が取得する。そして、取得された電流値Iと端子間電圧Vの値を用いて、VOC=V-Irの関係式を用いてVOCを推定する。次に図2の相関関係図を用いて、SOCを推定する。そして、推定されたSOCと目標SOCとの間の偏差であるΔSOC={目標SOC-推定SOCの絶対値}をゼロに近づけるように、充放電制御が行われる。この充放電制御については後述する。上記SOCの推定には、蓄電池34の内部抵抗の値rが用いられる。rは所定の固定値であるが、実際には、蓄電池34の内部抵抗は、蓄電池34が充放電を繰り返すうちに、次第にその値が大きくなる。したがって、仮に、初期状態の内部抵抗の値を、VOCを推定する際の固定値として採用する場合、実際の内部抵抗の値が大きくなると、充電の場合には、推定されるVOCの値よりも実際のVOCの値は小さめの値になる。したがって、推定SOCは、実際のSOCよりも大きめの値に推定される。放電の場合には、推定されるVOCの値よりも実際のVOCの値が大きめの値となる。したがって、推定SOCは、実際のSOCよりも、小さめの値に推定される。図3は、充電電流とSOCの関係を示した図であり、横軸が充電電流、縦軸がSOCである。開放端電圧VOCをVOC=V-Irの関係式から求め、求められたVOCを図2に示されるSOCとVOCの相関関係図に当てはめることにより、図3のSOCを求めた。なお、VOCを求める際の内部抵抗としては、40mΩ、60mΩ、80mΩを用いた。図4は、放電電流とSOCの関係を示した図であり、横軸が放電電流、縦軸がSOCである。開放端電圧VOCをVOC=V-Irの関係式から求め、求められたVOCを図2に示されるSOCとVOCの相関関係図に当てはめることにより、図4のSOCを求めた。なお、VOCを求める際の内部抵抗としては、40mΩ、60mΩ、80mΩを用いた。図3に示されるように、充電電流がより大きくなると、内部抵抗の値rの影響がより大きく現われる。図4に示されるように、放電電流がより大きくなると、内部抵抗の値rの影響がより大きく現われる。前述したように、内部抵抗の値rを所定の固定値にした場合、実際の内部抵抗の値との差が生じ、推定SOCと実際のSOCとの間でも差が生じる。しかしながら、図3、図4から理解できるように、SOCの推定において、内部抵抗の値rの影響を抑制するには、充放電電流をより小さくすればよい。充放電電力をより小さくすることで、VOCを求める際およびSOCの推定における内部抵抗の値rの影響をより小さくできる。したがって、VOCを求める際の内部抵抗を所定の固定値とすることにより、実際の内部抵抗の値と差が生じた場合でも、充放電電力値を小さくすることにより、内部抵抗に起因する推定SOCと実際のSOCとの差分も小さくすることができる。充放電制御装置52の設定変更部74は、図3、図4の知見を用い、ΔSOCに応じて、充放電電力値の設定を変更する機能を有する。具体的には、ΔSOCが小さくなるにつれて、充放電電力値を小さく設定する。これにより、推定SOCと実際のSOCとの差分を小さくすることができる。なお、この設定変更は、内部抵抗の値の変動の大小、すなわち、推定SOCと実際のSOCとの差分の大小にかかわらず行う。推定SOCと実際のSOCとの差分の大小にかかわらず、推定SOCと実際のSOCとの差分が生じていれば、充放電電力を小さくすることにより、この差分を緩和することができるためである。図5は、充電制御における充電電力値の設定変更の1例を示す図である。横軸は充電開始の時間t0からの経過時間、縦軸は推定SOCの値である。ここでは、目標SOCがSOCTとして示されている。充電は、時間t0から充電電力値=1Akwの定電力充電が実行される。時間経過とともに、推定SOCは次第に増加し、時間t1でΔSOC=目標SOC-推定SOC=10となる。そこで、SOC=SOCT-10となる時間t1において、充電電力値を1AkWから、0.5AkWに変更する。これによって、推定SOCの増加速度が小さくなる。図3からは、充電電力値を小さくすることで、内部抵抗の値rの影響が小さくなるので、推定SOCの誤差が小さくなる。その後、ΔSOC=目標SOC-推定SOC=5となると、SOC=SOCT-5となる時間t2において、充電電力値を0.5AkWから、0.1AkWに変更する。これによって、推定SOCの増加速度がさらに小さくなる。図3からは、充電電力値をさらに小さくすることで、内部抵抗の値rの影響がさらに小さくなるので、推定SOCの誤差がさらに小さくなる。このように、ΔSOCが小さくなるにつれて、充電電力値を小さい値に変更することで、推定SOCの誤差が小さくなる。これによって、実際のSOCを目標SOCにより近づけることができる。図5では、充電電力値の変更として、ΔSOCが予め定めた変更閾値を超える値のときは予め定めた定電力充放電値に設定し、ΔSOCが変更閾値以下となるときに、定電力充放電値に予め定めた低減係数を乗じた低電力充放電値に設定した。具体的には、変更閾値=10として、ΔSOCが10以下となると、低減係数0.5を乗じた。さらに、もう1段階の設定変更として、変更閾値=5として、ΔSOCが5以下となると、当初の定電力充電値に低減係数0.1を乗じた。なお、変更閾値は、推定SOCの誤差によって、蓄電池34が過充電とならないように、図3で示される内部抵抗の値rの影響の大きさを考慮して設定することができる。図6は、図5とは異なる設定変更の例を示す図である。横軸は図5と同じであるが、縦軸には推定SOCと、充電電力値とが取られている。図6では、時間t0から1Akwの低電力充電制御が開始し、時間t1でΔSOC=10となる。ここまでは図5と同じである。時間t1以後は、一定の低減係数を乗じるのではなく、ΔSOCの関数として、ΔSOCが小さくなるにつれて、滑らかに充電電力値を低減させる。図6の場合でも、ΔSOCが小さくなるにつれて推定SOCの誤差が小さくなるので、実際のSOCを目標SOCにより近づけることができる。図5、図6は、充電制御の場合について説明したが、放電制御の場合も同様である。すなわち、ΔSOCが小さくなるにつれて、放電電力値が小さくなるように設定変更が行われる。これによって、放電制御の場合も、内部抵抗の値rの影響を抑制し、実際のSOCを目標SOCにより近づけることができる。この場合も、変更閾値は、推定SOCの誤差によって、蓄電池34が過放電とならないように、図4で示される内部抵抗の値rの影響の大きさを考慮して設定することができる。"