以下において、図面を参照しながら、本開示を実施するための形態を説明する。本実施形態では、組電池制御装置を図1に示す組電池ECU(以下、単にECU)100に適用した例を採用する。
ECU100は、いわゆるハイブリッド車両(プラグインハイブリッド車両を含む)や電気車両のように、電気モータを走行駆動源とする車両に搭載されるものである。これらの車両では、組電池200により供給される電力により、走行用電気モータが駆動される。
ECU100は、組電池200が電気的に接続されている。ECU100は、組電池200の各種パラメータ(電圧、電流、内部抵抗など)を取得し、車両の各種制御を行う自身以外の制御装置へ情報提供するものである。
組電池200は、複数の電池セルcXYが直列に接続されてなるものである。この組電池200は、回生ブレーキにより充電されたり、発電用モータを備えている場合には、その発電用モータによって発電された電力によって充電されたりする。さらに、プラグインハイブリッド車両や電気車両の場合、組電池200は、いわゆる充電スタンドにて充電することも可能である。
組電池200は、車両の走行に伴って、充放電が繰り返し実行されるものである。また、プラグインハイブリッド車両や電気車両の場合には、組電池200は、走行用電気モータの電力源以外の電力源(例えば、車両内の電装品や車両外の電化製品などの電力源)としても使用することができる。つまり、ECU100は、車両に搭載された電力源としての組電池200の制御を行うものである。ただし、本開示の組電池制御装置は、車両に搭載された電力源としての組電池200の制御を行うものに限定されるものではない。本開示の組電池制御装置は、直列に接続された複数の電池セルcXYを含む組電池200の制御を行うものであれば目的を達成できる。
複数の電池セルcXYは、複数のセル群に区分けすることができ、各セル群には複数の電池セルcXYが含まれる。電池セルの符号は、Xがセル群の群番号を示し、Yが各セル群におけるセル番号を示す。
本実施形態では、第1電池セル群c11〜c1k、第2電池セル群c21〜c2l(エル)、第3電池セル群c31〜c3m、第4電池セル群c41〜c4nを含む複数の電池セルを採用する。よって、第1電池セル群は、第1電池セルc11〜第k電池セルc1kを含んでいると言える。同様に、第2電池セル群は、第1電池セルc21〜第l(エル)電池セルc2l(エル)を含んでいる。第3電池セル群は、第1電池セルc31〜第m電池セルc3mを含んでいる。第4電池セル群は、第1電池セルc41〜第n電池セルc4nを含んでいる。なお、k、l(エル)、m、nは、それぞれ2以上の自然数である。k、l、m、nは、同じ数であってもよいし、異なる数であってもよい。本実施形態では、一例として、k、l、m、nのそれぞれが24である例を採用する。しかしながら、本開示は、これに限定されない。
例えば、符号c11は、第1電池セル群の第1電池セルである。符号c21は、第2電池セル群の第2電池セルである。符号c3mは、第3電池セル群の第m電池セルである。c4nは、第4電池セル群の第n電池セルである。なお、以下においては、便宜的に、どの電池セルであっても電池セルcXYと記載することもある。
なお、近年、組電池200は、電池容量が大きくなってきている、充放電時間が長くなってきている、均等化処理の時間が減ってきているなどの課題がある。
組電池200には、電流センサ300が取り付けられている。この電流センサ300は、組電池200に流れる電流に応じた電気信号(アナログ信号)を出力するものである。電流センサ300は、制御マイコン10と接続されており、電流に応じた電気信号を制御マイコン10に出力する。詳述すると、電流センサ300は、電流をAD変換した後に、DA変換し、信号線を介して制御マイコン10に出力する。なお、信号線は、じか線と言い換えることもできる。また、制御マイコン10は、電流センサ300からの電気信号をSENT(Single EdgeNibble Transmission)通信で取得してもよい。
組電池200は、リレー400が接続されているときに電源供給が可能であり、リレー400が遮断されると電源供給を停止する。つまり、リレー400を遮断することで、組電池200からの電源供給を停止させることができる。なお、リレー400は、システムメインリレーと称することもできる。
ここで、図1を用いて、ECU100の構成に関して説明する。ECU100は、電子制御装置(Electronic Control Unit)である。ECU100は、少なくともひとつの演算処理装置(CPU)と、プログラムとデータとを記憶する記憶媒体としての少なくともひとつのメモリ装置(MMR)とを有する。ECU100は、コンピュータによって読み取り可能な記憶媒体を備えるマイクロコンピュータによって提供される。記憶媒体は、コンピュータによって読み取り可能なプログラムを非一時的に格納している。記憶媒体は、半導体メモリまたは磁気ディスクなどによって提供されうる。
ECU100は、ひとつのコンピュータ、またはデータ通信装置によってリンクされた一組のコンピュータ資源によって提供されうる。プログラムは、ECU100によって実行されることによって、ECU100をこの明細書に記載される装置として機能させ、この明細書に記載される方法を実行するように制御装置を機能させる。ECU100は、多様な要素を提供する。それらの要素の少なくとも一部は、機能を実行するための手段と呼ぶことができ、別の観点では、それらの要素の少なくとも一部は、構成的なブロック、またはモジュールと呼ぶことができる。
なお、ECU100が提供する手段および/または機能は、実体的なメモリ装置に記録されたソフトウェアおよびそれを実行するコンピュータ、ソフトウェアのみ、ハードウェアのみ、あるいはそれらの組み合わせによって提供することができる。例えば、ECU100がハードウェアである電子回路によって提供される場合、それは多数の論理回路を含むデジタル回路、またはアナログ回路によって提供することができる。
詳述すると、ECU100は、主に、制御マイコン10と、第1監視IC21〜第4監視IC24と、マイコン用発振子30とを備えて構成されている。なお、第1監視IC21〜第4監視IC24のそれぞれを区別する必要がない場合は、単に監視IC21〜24とも称する。また、本実施形態では、四つの監視IC21〜24を備える構成を採用している。しかしながら、本開示はこれに限定されるものではない。本開示は、複数の監視ICを備えるものであれば、目的を達成することができる。
制御マイコン10は、制御部に相当し、処理部11、記憶部12、AD変換器13、タイマ14などを含んでいる。制御マイコン10は、監視IC21〜24と通信可能に構成され、各監視IC21〜24が電圧AD変換した結果であるAD変換結果を取得する。また、制御マイコン10は、AD変換器13によって、電流センサ300から出力された電流に応じた電気信号をAD変換する。つまり、AD変換器13は、組電池200を流れる電流の電流AD変換を行う。
制御マイコン10は、マイコン用発振子30と電気的に接続されている。処理部11は、マイコン用発振子30からのクロックに同期して各種処理を実行する。処理部11は、AD変換器13で電流AD変換されたAD変換結果を取得する。
制御マイコン10は、監視IC21〜24のうち、第1監視IC21と第4監視IC24と直接通信を行う。処理部11は、第1監視IC21にコマンドを送信することで、監視IC21〜24に対して、電圧AD変換の変換開始と、各監視ICに接続された複数の電池セルcXYのうち最初の電圧AD変換の対象である開始電池セルcSTとを指示する。つまり、処理部11は、電圧AD変換の変換開始と、各監視IC21〜24に接続された複数の電池セルcXYのうち最初の電圧AD変換の対象である開始電池セルcSTの指示を示すコマンドを第1監視IC21に送信する。
なお、このコマンドには、例えば、開始電池セルcSTの指示を示す情報として開始セル番号が含まれている。また、このコマンドは、第1監視IC21〜第4監視IC24に共通のコマンドである。以下においては、電圧AD変換の変換開始と、開始電池セルcSTの指示を示すコマンドをAD起動コマンドと称する。このAD起動コマンドは、指示コマンドに相当する。
処理部11は、AD起動コマンドの他に、各監視IC21〜24での電圧AD変換の結果であるAD変換結果の送信指示を示すコマンドを、第1監視IC21を介して、監視IC22〜24に送信する。これによって、処理部11は、第4監視IC24から各監視IC21〜24によるAD変換結果を取得する。このコマンドは、第1監視IC21〜第4監視IC24に共通のコマンドである。以下においては、AD変換結果の送信指示を示すコマンドを送信要求コマンドと称する。
処理部11は、各監視IC21〜24で電圧AD変換されたAD変換結果と、AD変換器13で電流AD変換されたAD変換結果とによって、組電池200の内部抵抗を算出してもよい。この場合、処理部11は、監視IC21〜24による電圧AD変換のタイミングと、電流AD変換のタイミングとを同期させることで、組電池200の内部抵抗を正確に算出することができる。なお、処理部11は、電流AD変換を行うことで、組電池200に流れる電流の電流検出を行うとも言える。同様に、監視IC21〜24は、電圧AD変換を行うことで、各電池セルcXYの電圧検出を行うとも言える。
記憶部12は、変換開始タイマ値や、最初に電圧AD変換を行う開始電池セルcSTを示すセル番号などを記憶している。変換開始タイマ値は、タイマ14で計時した経過時間(タイマ値)と比較される値である。後程説明するがAD変換器13は、経過時間が変換開始タイマ値に達すると電流AD変換を開始する。タイマ14では、電圧AD変換の開始を示す割り込みが発生してからの経過時間またはAD起動コマンドを送信してからの経過時間と、電流AD変換を行ってからの経過時間を計時する。なお、以下においては、電圧AD変換の開始を示す割り込みを単にAD割り込みとも称する。
また、変換開始タイマ値は、各監視IC21〜24が複数の電池セルcXYを開始電池セルcSTから順番に電圧AD変換する際に、全監視IC21〜24が同じ順番の電池セルcXYを電圧AD変換している期間に、AD変換器13が電流AD変換を行うための値である。言い換えると、変換開始タイマ値は、全監視IC21〜24が同じ順番の電池セルcXYを電圧AD変換している期間にオーバーラップして、AD変換器13が電流AD変換を行うための値である。つまり、図6のタイミングt4、t5に示すように、変換開始タイマ値は、クロックが遅い監視ICや速い監視ICを含んでいても、各監視IC21〜24が電圧AD変換中に、AD変換器13による電流AD変換が実施される値とする。
なお、各監視IC21〜24は、昇順で電圧AD変換を行う場合、例えばセル番号1の電池セルc11、c21、c31、c41を対象として電圧AD変換を行い、次に、セル番号2の電池セルc12、c22、c32、c42を対象として電圧AD変換を行う。そして、各監視IC21〜24は、その後も同様にして、最後のセル番号の電池セル1k、2l(エル)、3m、4nまで順番に電圧AD変換を行う。また、各監視IC21は、開始電池セルcSTから降順で電圧AD変換を行ってもよい。
よって、全監視IC21〜24が同じ順番の電池セルcXYを電圧AD変換している期間とは、例えば、全ての監視IC21〜24がセル番号1の電池セルc11などを電圧AD変換している期間、セル番号2の電池セルc12などをAD変換している期間などである。この場合、全監視IC21〜24が同じ順番の電池セルcXYを電圧AD変換している期間は、全監視IC21〜24が同じセル番号の電池セルcXYを電圧AD変換している期間と同意である。このため、変換開始タイマ値は、各監視IC21〜24が同じセル番号の電池セルcXYを対象として電圧AD変換を行っている各期間で、AD変換器13が電流AD変換を行うための値と言える。
しかしながら、本開示は、これに限定されない。同じ順番は、開始電池セルcSTを基準とした電圧AD変換を行う順番が同じであることを示している。このため、同じ順番は、各監視IC21〜24で電圧AD変換を行っている電池セルcXYのセル番号が異なっていても、開始電池セルcSTを基準とした電圧AD変換を行う順番が同じであればよい。
なお、変換開始タイマ値は、各監視IC21〜24間におけるクロックの差異に基づいて設定されている。また、変換開始タイマ値は、各監視IC21〜24の処理速度や電圧AD変換に要する時間などに応じて予め設定することができる。さらに、変換開始タイマ値は、実機を用いた実験やシミュレーションなどによって予め設定することができる。このようにすることで、ECU100は、各監視IC21〜24におけるクロックに差異があった場合でも、各監視IC21〜24による電圧AD変換と、AD変換器13による電流AD変換を同期させやすくなる。
開始電池セルcSTを示す開始セル番号は、AD割り込みが発生した各タイミングで、最初に電圧AD変換を行う電池セルcXYのセル番号である。例えば、開始電池セルcSTを示すセル番号が1、4、7の場合、制御マイコン10は、最初のAD割り込み発生時に、開始セル番号としてセル番号1を各監視IC21〜24に送信することで開始電池セルcSTを指示する。また、制御マイコン10は、次のAD割り込み発生時に、開始セル番号としてセル番号4を各監視IC21〜24に送信することで開始電池セルcSTを指示する。そして、制御マイコン10は、次のAD割り込み発生時に、開始セル番号としてセル番号7を各監視IC21〜24に送信することで開始電池セルcSTを指示する。
AD変換器13は、タイマ14で計時されたタイマ値が変換開始タイマ値に達するたびに、電流センサ300から出力された電流に応じた電気信号を電流AD変換する。本実施形態では、一例として、タイマ値が変換開始タイマ値に達するたびに、制御マイコン10のハードウェア割り込みで電流AD変換を行うAD変換器13を採用する。つまり、AD変換器13は、ソフトウェアを介さずに電流AD変換を行う。よって、AD変換器13は、処理部11が実行しているプログラムとは無関係に電流AD変換を行うことができる。
このようにすることで、制御マイコン10は、ソフト割り込みでの他処理に影響されずに、狙ったタイミングで電流AD変換を実施することができる。よって、制御マイコン10は、ハードウェア割り込みで電流AD変換を行う構成でない場合よりも、各監視IC21〜24による電圧AD変換と、AD変換器13による電流AD変換のタイミングのずれを抑制できる。しかしながら、本開示は、これに限定されず、ソフトウェアを介して電流AD変換を行ってもよい。
各監視IC21〜24は、複数の電池セルcXYが接続されている。各監視IC21〜24は、自身に接続された複数の電池セルcXYを電源として動作する。詳述すると、第1監視IC21には、第1電池セル群の各電池セルc11〜c1kが電気的に接続されている。第2監視IC22には、第2電池セル群の各電池セルc21〜c2l(エル)が電気的に接続されている。第3監視IC23には、第3電池セル群の各電池セルc31〜c3mが電気的に接続されている。第4監視IC24には、第4電池セル群の各電池セルc41〜c4nが電気的に接続されている。つまり、各監視IC21〜24は、自身以外の監視IC21〜24に接続された電池セルcXYとは異なる複数の電池セルcXYが電圧の検出対象として接続されていると言える。
各監視IC21〜24は、自身に接続されている複数の電池セルcXYの最上位の電池セルcXYから最下位の電池セルcXYまでのそれぞれに対する通し番号であるセル番号を有している。つまり、各監視IC21〜24は、自身に接続されている複数の電池セルcXYの最上位の電池セルcXYから最下位の電池セルcXYのそれぞれに対してセル番号を関連付けて記憶している。なお、各監視IC21〜24は、自身の記憶装置(図示省略)にセル番号を記憶しておく。
例えば、第1監視IC21に接続されている電池セルc11〜c1kにおいては、最上位の電池セルcXYが電池セルc1kであり、最下位の電池セルcXYが電池セルc11である。よって、第1監視IC21は、第1電池セルc11〜第n電池セルc1kに対応するセル番号である1〜kを有している。この点は、他の監視IC22〜24に関しても同様である。
このように、本実施形態では、最下位の電池セルcXYをセル番号1として、最下位の電池セルcXYから最上位の電池セルcXYまで順番にセル番号を付与している。よって、最上位のセル番号とセル数とが同じ値を示すことになる。なお、各監視IC21〜24に接続された最上位の電池セルcXYは、例えば、各監視IC21〜24に接続された複数の電池セルcXYのなかで最高電位の電池セルcXYである。一方、各監視IC21〜24に接続された最下位の電池セルcXYは、例えば、各監視IC21〜24に接続された複数の電池セルcXYのなかで最低電位の電池セルcXYである。
各監視IC21〜24は、図1に示すように、信号線を介して直列に接続されている。具体的には、第1監視IC21は、制御マイコン10および第2監視IC22と直接接続されており、両者と信号(各種コマンドやAD変換結果など)のやり取りを行う。第2監視IC22は、第1監視IC21と第3監視IC23と直接接続されており、両者と信号のやり取りを行う。第3監視IC23は、第2監視IC22と第4監視IC24と直接接続されており、両者と信号のやり取りを行う。第4監視IC24は、第3監視IC23と制御マイコン10と直接接続されており、両者と信号のやり取りを行う。
このように、各監視IC21〜24のうち、制御マイコン10との間で直接通信を行なっているのは第1監視IC21と第4監視IC24だけである。よって、各監視IC21〜24は、信号を梯子渡しする。
各監視IC21〜24は、自身に接続されている各電池セルcXYの電圧AD変換を行うとともに、電圧AD変換、すなわち各電池セルcXYの電圧値を制御マイコン10に送信する。本開示では、各監視IC21〜24が各電池セルcXYの電圧AD変換を行う際、例えばΔΣ方式のAD変換を採用することができる。このため、各監視IC21〜24の電圧AD変換は、例えば並列比較方式の電圧AD変換よりも変換時間が長い。
詳述すると、第1監視IC21は、制御マイコン10からAD起動コマンドを取得すると、第1電池セル群に含まれる第1電池セルc11〜第k電池セルc1kから開始電池セルcSTを決定する。そして、第1監視IC21は、開始電池セルcSTから順番に第1電池セルc11〜第k電池セルc1kの電圧AD変換を行うとともに、AD起動コマンドを第2監視IC22に送信(転送)する。また、第1監視IC21は、制御マイコン10から送信要求コマンドを取得すると、AD変換結果を第2監視IC22に送信する。第2監視IC22〜第4監視IC24は、第1監視IC21と同様に、開始電池セルcSTの決定、自身に接続された各電池セルcXYの電圧AD変換を行うとともに、AD起動コマンドの転送、AD変換結果の送信を行う。
なお、各監視IC21〜24cは、少なくとも電池セルcXYの電圧AD変換を行うものであればよく、電池セルcXYのその他の状態を検出するものであってもよい。また、複数の監視IC21〜24は、同一通信線内に接続することが可能で、各監視IC21〜24に識別子が付与されていてもよい。この場合、各AD変換結果には、各監視IC21〜24の識別子が付与されている。
各監視IC21〜24は、第1発振子21a〜第4発振子24aを含んでおり、異なるクロックが入力されて動作する。つまり、第1監視IC21は、第1発振子21aを含んでいる。第2監視IC22は、第2発振子22aを含んでいる。第3監視IC23は、第3発振子23aを含んでいる。第4監視IC24は、第4発振子24aを含んでいる。
第1発振子21a〜第4発振子24aのそれぞれは、発振周波数が異なるものとする。よって、各監視IC21〜24は、処理性能、言い換える処理速度が異なる。本実施形態では、第2監視IC22を基準として、第1監視IC21の方が第2監視IC22よりも処理速度が速く、第3監視IC23や第4監視IC24の方が第2監視IC22よりも処理速度が遅い例を採用する。さらに、第3監視IC23は、第4監視IC24よりも処理速度が遅い例を採用する。このため、第1監視IC21は、第2監視IC22よもサンプリング速度が速い。また、第3監視IC23や第4監視IC24は、第2監視IC22よもサンプリング速度が遅い。さらに、第3監視IC23は、第4監視IC24よりもサンプリング速度が遅い。
このため、図6に示すように、各監視IC21〜24は、複数の電池セルcXYを順番に1電池セルずつ電圧AD変換する際に、電圧AD変換のタイミングがずれる。つまり、電圧AD変換のタイミングは、各監視IC21〜24でずれが生じる。このタイミングずれは、開始電池セルcSTほど小さく、後半の電池セルcXYほど大きい。
例えば、タイミングt3で各監視IC21〜24が電圧AD変換を開始した場合、タイミングずれは、セル番号1〜3よりも、セル番号k〜nの方が大きい。また、開始電池セルcSTがセル番号4の場合、タイミングずれは、セル番号4〜6よりも、セル番号1〜3の方が大きい。同様に、開始電池セルcSTがセル番号7の場合、タイミングずれは、セル番号7〜9よりも、セル番号6の方が大きい。
ところで、各監視IC21〜24は、上記のように制御マイコン10から送信されたコマンドを梯子渡しする。よって、例えば、監視IC21が制御マイコン10から送信されたコマンドを取得するタイミングと、監視IC22が制御マイコン10から送信されたコマンドを取得するタイミングとは異なる。しかしながら、各監視IC21〜23は、自身が受け取ったコマンドを他の監視IC22〜24に転送するだけである。よって、第1監視IC21と第2監視IC22との間に生じるコマンドを取得するタイミングのズレは、第1監視IC21がコマンドを第2監視IC22に転送するのに要する時間程度である。このため、コマンドの取得タイミングのずれは、電圧AD変換と電流AD変換とを同期させる際に考慮しなくてもよい。
なお、各監視IC21〜24は、セレクトモードでの電圧AD変換と、スキャンモードでの電圧AD変換を行うことができる。この電圧AD変換のモードは、制御マイコン10が各監視IC21〜24に対して指示する。
セレクトモードは、各監視IC21〜24に接続されている複数の電池セルcXYにおける一部の電池セルcXYのみを電圧AD変換の対象として電圧AD変換を行うモードである。このセレクトモードでは、各監視IC21〜24が決定した電池セルcXYのみの電圧AD変換を行う。なお、セレクトモードでは、単一の電池セルcXYのみを電圧AD変換としてもよい。各監視IC21〜24が決定した電池セルcXYは、制御マイコン10から命令されたセル番号の電池セルcXY、または最上位の電池セルcXY、または最下位の電池セルcXYである。
一方、スキャンモードは、各監視IC21〜24に接続されている複数の電池セルcXYにおける全ての電池セルcXYを順番に電圧AD変換の対象として電圧AD変換を行うモードである。このスキャンモードでは、各監視IC21〜24が決定した電池セルcXYから順番に最下位または最上位の電池セルcXYまで電圧AD変換を行う。言い換えると、スキャンモードでは、各監視IC21〜24cが決定した電池セルcXYから、セル番号が小さい方またはセル番号が大きい方に順番に電圧AD変換を行う。
また、スキャンモードで電圧AD変換を行う際には、リング状に電圧AD変換を行うようにしてもよい。一例として、セル番号1〜24の電池セルc11〜c124が接続された第1監視IC21を用いて説明する。第1監視IC21は、最初に電圧を検出する電池セルcXYのセル番号をセル番号13に決定することもありうる。このような場合、リング状に電圧AD変換を行うと、検出順番は、セル番号13→12・・・→1→24・・・→14またはセル番号13→14・・・→24→1・・・→12となる。よって、最上位の電池セルcXYから電圧AD変換を行わなくても、全ての電池セルcXYの電圧AD変換を行うことができる。本実施形態では、一例として、スキャンモードでリング状に電圧を検出する例を採用している。
このように、ECU100は、セレクトモードでの電圧AD変換と、スキャンモードでの電圧AD変換を備えている。このため、ECU100は、制御マイコン10から各監視IC21〜24に対する指令の自由度が高まり好適である。
なお、監視IC21〜24のそれぞれは、例えばAD変換器を2個備えている例を採用できる。この場合、各監視IC21〜24は、24個の電池セルcXYが電気的に接続されていると、24個の電池セルcXYを2個のAD変換器で、それぞれ12セルシリーズで電圧をモニタする。しかしながら、各監視IC21〜24におけるAD変換の個数は、これに限定されない。
ここで、図2〜図6を用いて、ECU100の処理動作に関して説明する。図5は、開始電池セルcSTの電圧AD変換と2番目の電池セルcXYの電圧AD変換のタイミングと、電流AD変換のタイミングとの関係を示すタイミングチャートである。図6は、各監視IC21〜24がAD起動コマンドを受けた後の電圧AD変換の処理と、それに同期した電流AD変換の処理との関係を示すタイミングチャートである。図6は、タイミングt0、t10、t20でAD割り込みが発生した例を採用している。また、図5は、図6の一部であるAD割り込みの発生から第2電池セルcXYの電圧AD変換までのみを図示したタイミングチャートである。
制御マイコン10と各監視IC21〜24は、AD割り込みが発生すると、図5で示されるスケジュール通りに処理を実行する。図5では、タイミングt0でAD割り込みが発生した例を採用している。制御マイコン10は、タイミングt0でAD割り込みが発生すると図2のフローチャートに示す処理を実行する。
なお、AD割り込みは、所定時間毎に発生するものであってもよい。この場合、制御マイコン10は、所定時間毎に、図2のフローチャートに示す処理を実行する。また、AD割り込みは、予め決められた時刻になると発生するものであってもよい。この場合、制御マイコン10は、予め決められた時刻になると、図2のフローチャートに示す処理を実行する。
ステップS10では、コマンド準備処理を行う(準備部)。制御マイコン10は、AD割り込みが発生すると、AD起動コマンドを準備する。
制御マイコン10のコマンド準備処理に関しては、図3を用いて説明する。ステップS11では、何回目の通信であるかを確認する。処理部11は、開始電池セルcSTを決定するために、何回目の通信であるかを確認する。言い換えると、処理部11は、何回目のAD割り込みであるかを確認する。
開始電池セルcSTは、各電池セル群における電池セル数と、各監視IC21〜24が各電池セルcXYを電圧AD変換する際のタイミングのずれによって予め設定することができる。また、後程説明するが、電流AD変換は、電流AD変換と同期可能な、複数の電池セルcXYにおける開始電池セルcSTから一部の電池セルcXYが電圧AD変換されている期間において行われる。このため、各開始電池セルcSTは、電流AD変換と同期して電圧AD変換が行われる電池セルcXYにおける最初に電圧AD変換が行われる電池セルcXYとすることができる。
なお、この一部の電池セルcXYは、同期用電池セルcSNと称することができる。よって、電流AD変換は、開始電池セルcSTが電圧AD変換されている期間と、同期用電池セルcSNが電圧AD変換されている期間においてのみ行われる。また、開始電池セルcSTおよび同期用電池セルcSNは、AD割り込み毎に違う電池セルcXYとなる。
本実施形態では、一例として、セル番号1、4、7を開始電池セルcSTに採用している。この場合、セル番号1〜3や、4〜6などの電池セルcXYは、電流AD変換と同期可能な電池セルcXYとみなすことができる。そして、セル番号1,4、7は、電流AD変換と同期して電圧AD変換が行われる電池セルcXYにおける最初に電圧AD変換が行われる電池セルcXYとみなすことができる。なお、セル番号2、3、5、6などの電池セルcXYは、同期用電池セルcSNに相当する。
なお、例えば、処理部11は、イグニッションスイッチがオンになってからの第1監視IC21との通信回数を記憶部12などに記憶しておき、今回が何回目の通信であるかを確認する。この場合、処理部11は、イグニッションがオフのオフに伴うシャットダウン処理において、回数をリセットしてもよい。また、処理部11は、自身への電源の供給が開始されてからの第1監視IC21との通信回数を記憶部12などに記憶しておき、今回が何回目の通信であるかを確認してもよい。
ステップS12では、回数に応じた開始電池セルを選択する。処理部11は、ステップS11で確認した通信回数に応じて、開始電池セルcSTを選択する。
処理部11は、通信が1回目であった場合は開始電池セルcSTとしてセル番号1の電池セルcXYを選択する。そして、処理部11は、通信が2回目であった場合は開始電池セルcSTとしてセル番号4の電池セルcXYを選択し、通信が3回目であった場合は開始電池セルcSTとしてセル番号7の電池セルcXYを選択する。これによって、処理部11は、電流AD変換と同期した電圧AD変換が未実施の電池セルcXYが、開始電池セルcSTおよび同期用電池セルcSNとなるAD起動コマンドを生成できる。
ここで、図2のフローチャートの説明に戻る。ステップS20では、割り込み禁止処理を行う(割り込み禁止部)。処理部11は、以降の処理が中断されないように割り込みを禁止にする。つまり、処理部11は、AD起動コマンドの準備ができてからAD起動コマンドが送信されるまでの間、つまり、タイマ設定からAD起動コマンドが送信されるまでの間、割り込みを禁止する。
ステップS30では、タイマ設定を行う。つまり、処理部11は、変換開始タイマ値を設定して、タイマ14での計時をスタートする。タイマ設定は、各監視IC21〜24へのAD起動コマンドの送信との時間差が最小になるように、AD起動コマンドの送信直前で実施すると好ましい。
ステップS40では、コマンドを送信する(指示部)。処理部11は、ステップS10で準備したAD起動コマンドを第1監視IC21に対して送信する。つまり、処理部11は、第1監視IC21を介して第2監視IC22〜第4監視IC24に対して、AD起動コマンドを送信する。このように、処理部11は、AD起動コマンドを送信することで、各監視IC21〜24に対して、電圧AD変換の変換開始と開始電池セルcSTとを指示する。
また、処理部11は、上記のように準備したAD起動コマンドを送信して、電圧AD変換の変換開始と開始電池セルcSTとを指示することで、各監視IC21〜24に対して指示を行うたびに開始電池セルcSTと同期用電池セルcSNを切り替える。よって、制御マイコン10は、各監視IC21〜24による電圧AD変換と、制御マイコン10による電流AD変換との同期生が確保された状態で、各監視IC21〜24によって電圧AD変換された全電池セルcXYのAD変換結果を取得することができる。
処理部11は、図5のタイミングt1でAD起動コマンドを送信する。つまり、処理部11は、図5のタイミングt0〜t1の期間で、ステップS10〜S40を行う。図5のタイミングt1〜t2の期間は、制御マイコン10と第1監視IC21や第4監視IC24とが通信する期間である。よって、AD起動コマンドは、図5のタイミングt1〜t2の期間に、制御マイコン10から第1監視IC21に送信される。
ステップS50では、割り込み許可処理を行う(割り込み禁止部)。処理部11は、AD起動コマンドを送信すると、ステップS20で設定した割り込み禁止を解除して、割り込みを許可する。制御マイコン10は、タイマ設定と各監視IC21〜24へのAD起動コマンドの送信開始の間における割り込みを防止できる。よって、制御マイコン10は、割り込みによって電圧AD変換と電流AD変換の同時性が乱されることなく、電圧AD変換と電流AD変換の同時性を確保できる。
各監視IC21〜24は、処理部11から送信されたAD起動コマンドを受信すると、開始電池セルcSTから順番に全ての電池セルcXYの電圧AD変換を行う。つまり、各監視IC21〜24は、開始電池セルcSTと同期用電池セルcSNだけでなく、自身に接続されている全ての電池セルcXYの電圧AD変換を行う。電圧AD変換は、過充電等をモニタするために内部抵抗算出よりも早い周期で行うこと好ましい。このため、各監視IC21〜24は、途中の電池セルcXYで電圧AD変換を止めることなく全ての電池セルcXYの電圧AD変換を行う。
各監視IC21〜24は、図5のタイミングt2から、受信したAD起動コマンドの情報に基づいて開始電池セルcSTを決定し測定準備を行う。各監視IC21〜24は、測定準備として、電圧AD変換を行う準備を行う。そして、各監視IC21〜24は、準備が完了すると電圧AD変換を行う。つまり、ECU100は、準備が完了した各監視IC21〜24から電圧AD変換を開始する。
準備に要する時間は、各監視IC21〜24のクロックにより異なる。図5に示すように、例えば、第1監視IC21は、図5のタイミングt3で準備が完了して電圧AD変換を開始する。これに対して、第2監視IC22〜第4監視IC24は、タイミングt3以降に準備が完了して電圧AD変換を開始する。各監視IC21〜24は、電圧AD変換を行う場合、1電池セルずつ電圧AD変換を行う。電圧AD変換を行う変換時間に関しても、各監視IC21〜24のクロックにより異なる。よって、図5に示すように、各監視IC21〜24は、開始電池セルcSTの次に電圧AD変換を開始するタイミングが異なる。
ここで、図4を用いて、制御マイコン10の電流AD変換処理に関して説明する。
ステップS60では、タイマが満了したか否かを判定する(電流AD変換部)。制御マイコン10は、ステップS30で計時をスタートしたタイマ14のタイマ値が変換開始タイマ値に達したか否かを判定する。つまり、制御マイコン10は、タイマ値が変換開始タイマ値に達すると、AD変換器13で電流AD変換が行われるように、ハードウェア割り込みが発生するように構成されている。
ステップS70では、電流AD変換を行う(電流AD変換部)。制御マイコン10は、ワードウェア割り込みが発生するとAD変換器13で電流AD変換を行う。また、制御マイコン10は、ステップS60、S70を繰り返し実行する。
制御マイコン10は、タイマ満了時の割り込みで、ソフトウェアで電流AD変換することも考えられる。しかしながら、制御マイコン10は、ソフトウェアで電流AD変換を行うと、優先度の高い処理中であった場合、電流AD変換に遅延が発生し、狙ったタイミングで電流AD変換を行うことができない可能性がある。よって、制御マイコン10は、ワードウェア割り込みが発生するとAD変換器13で電流AD変換を行うことで、ソフトウェアを介在せずに電流AD変換を行うことができ、電流AD変換に遅延が発生することを抑制できる。
制御マイコン10は、変換開始タイマ値が上記のように設定されているため、全ての監視IC21〜24が同じ順番の電池セルcXYを電圧AD変換している期間に電流AD変換を行うことができる。制御マイコン10は、例えば、図5、図6のタイミングt4に示すように、全監視IC21〜24が第1電池セルc11などを対象として電圧AD変換を行っている期間に、電流AD変換を行う。その後、制御マイコン10は、例えば、図5、図6のタイミングt5に示すように、全監視IC21〜24が第1電池セルc11などを対象として電圧AD変換を行っている期間に、電流AD変換を行う。
また、上記のように、電圧AD変換のタイミングずれは、開始電池セルcSTほど小さく、後半の電池セルcXYほど大きい。そこで、制御マイコン10は、図6に示すように、各監視IC21〜24が開始電池セルcSTから同期用電池セルcSNまでの電圧AD変換を行う各期間のみで電流AD変換を行う(電流AD変換部)。つまり、各監視IC21〜24は、開始電池セルcSTから全ての電池セルcXYの電圧AD変換を行う。これに対して、制御マイコン10は、開始電池セルcSTと同期用電池セルcSNの電圧AD変換が行われている各期間のみで電流AD変換を行う。
制御マイコン10は、例えば図6のタイミングt0でAD割り込みが発生した場合、全監視IC21〜24がセル番号1〜3の電池セルcXYを電圧AD変換している期間のみで電流AD変換を行う。また、制御マイコン10は、例えば図6のタイミングt10でAD割り込みが発生した場合、全監視IC21〜24がセル番号4〜6の電池セルcXYを電圧AD変換している期間のみで電流AD変換を行う。そして、制御マイコン10は、例えば図6のタイミングt20でAD割り込みが発生した場合、全監視IC21〜24がセル番号7〜9の電池セルcXYを電圧AD変換している期間のみで電流AD変換を行う。
このように、ECU100は、全監視IC21〜24が同じ順番の電池セルcXYを電圧AD変換している期間で、且つ、各監視IC21〜24が開始電池セルcSTから同期用電池セルcSNの電圧AD変換を行う各期間のみで電流AD変換を行うことができる。このため、ECU100は、各監視IC21〜24の処理性能のばらつきによって生じる電圧AD変換のタイミングのずれが小さい状況で電流AD変換を行うことができる。よって、ECU100は、各監視IC21〜24による電圧AD変換と、制御マイコン10による電流AD変換の同期生を確保することができる。従って、ECU100は、各監視IC21〜24による電圧AD変換の結果と、各電圧AD変換に同期した制御マイコン10による電流AD変換の結果とを取得することができる。
ECU100は、複数の監視IC21〜24が直列に接続されている。そして、処理部11は、ひとつのAD起動コマンドを第1監視IC21に送信することで、全監視IC21〜24に対して、電圧AD変換の変換開始と開始電池セルcSTとを指示する。このため、ECU100は、処理部11が各監視IC21〜24に個別にAD起動コマンドを送信する構成よりも、制御マイコン10と監視IC21〜24との間における通信負荷を低減できる。
各監視IC21〜24は、AD起動コマンドに含まれる情報に基づいて、自身に接続されている複数の電池セルcXYの中から開始電池セルcSTを決定して電圧AD変換を行う。これによって、ECU100は、制御マイコン10からのAD起動コマンド(命令)を、各監視IC21〜24に接続された電池セルcXYの個数に依存することなく単一化できる。このためECU100は、制御マイコン10から各監視IC21〜24に対する命令の自由度が高まる。
なお、電池電流のサンプリングの方が高速で、監視ICのスペックに合わせてサンプリング指示する。また、電圧、電流の同期地点は、ECU100のコネクタ部である。
以上、本開示の好ましい実施形態について説明した。しかしながら、本開示は、上記実施形態に何ら制限されることはなく、本開示の趣旨を逸脱しない範囲において、種々の変形が可能である。