特許第6744980号(P6744980)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ NECエナジーデバイス株式会社の特許一覧

特許6744980電池モジュール、制御方法、プログラム、及び情報処理システム
<>
  • 特許6744980-電池モジュール、制御方法、プログラム、及び情報処理システム 図000002
  • 特許6744980-電池モジュール、制御方法、プログラム、及び情報処理システム 図000003
  • 特許6744980-電池モジュール、制御方法、プログラム、及び情報処理システム 図000004
  • 特許6744980-電池モジュール、制御方法、プログラム、及び情報処理システム 図000005
  • 特許6744980-電池モジュール、制御方法、プログラム、及び情報処理システム 図000006
  • 特許6744980-電池モジュール、制御方法、プログラム、及び情報処理システム 図000007
  • 特許6744980-電池モジュール、制御方法、プログラム、及び情報処理システム 図000008
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6744980
(24)【登録日】2020年8月4日
(45)【発行日】2020年8月19日
(54)【発明の名称】電池モジュール、制御方法、プログラム、及び情報処理システム
(51)【国際特許分類】
   H04L 12/40 20060101AFI20200806BHJP
【FI】
   H04L12/40 A
【請求項の数】16
【全頁数】19
(21)【出願番号】特願2019-501246(P2019-501246)
(86)(22)【出願日】2018年2月14日
(86)【国際出願番号】JP2018004986
(87)【国際公開番号】WO2018155271
(87)【国際公開日】20180830
【審査請求日】2019年8月14日
(31)【優先権主張番号】特願2017-30350(P2017-30350)
(32)【優先日】2017年2月21日
(33)【優先権主張国】JP
(73)【特許権者】
【識別番号】310010081
【氏名又は名称】株式会社エンビジョンAESCエナジーデバイス
(74)【代理人】
【識別番号】100110928
【弁理士】
【氏名又は名称】速水 進治
(74)【代理人】
【識別番号】100127236
【弁理士】
【氏名又は名称】天城 聡
(72)【発明者】
【氏名】岩崎 良
【審査官】 宮島 郁美
(56)【参考文献】
【文献】 特開2013−157851(JP,A)
【文献】 特開2015−177234(JP,A)
【文献】 特開2013−109628(JP,A)
【文献】 特表2015−507451(JP,A)
【文献】 特開2009−296079(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L12/00−12/955
(57)【特許請求の範囲】
【請求項1】
バス型トポロジを構成する通信網に接続される電池モジュールであって、
前記通信網を介して他の前記電池モジュールと通信可能であり、
当該電池モジュールが使用する通信識別子の候補である候補識別子を示す識別子情報を、前記通信網を介して他の全ての前記電池モジュールへ送信する送信手段と、
前記送信した識別子情報について通信調停を行う通信調停手段と、
前記通信調停に勝った場合に、前記送信した識別子情報に示される前記候補識別子を当該電池モジュールが使用する通信識別子として決定する決定手段と、
当該電池モジュールの通信識別子が記憶される記憶手段とを有し、
前記送信手段は、前記通信調停に負けた場合に前記識別子情報をさらに送信し、
前記送信手段は、前記記憶手段に当該電池モジュールの通信識別子が記憶されていない場合に、前記識別子情報の送信を行い、
前記電池モジュールは、
前記送信手段によって前記識別子情報が送信される前に前記記憶手段に前記通信識別子が記憶されている場合に、所定の通知を行う通知手段をさらに有する、電池モジュール。
【請求項2】
前記通信網は CAN(Controller Access Network)通信網である、請求項1に記載の電池モジュール。
【請求項3】
前記送信手段は、前記識別子情報の送信する前の所定時間、他の前記電池モジュールから送信されるデータを受信し、前記データを用いてそのデータを送信した他の前記電池モジュールが利用する通信識別子を特定し、前記特定した通信識別子以外の値を前記候補識別子にする、請求項1又は2に記載の電池モジュール。
【請求項4】
前記送信手段は、前記通信調停に負けた場合、前記識別子情報が示す候補識別子を変更してから前記識別子情報を送信する、請求項1乃至3いずれか一項に記載の電池モジュール。
【請求項5】
バス型トポロジを構成する通信網に接続される電池モジュールによって実行させる制御方法であって、
前記電池モジュールは、前記通信網を介して他の前記電池モジュールと通信可能であり、
前記電池モジュールが使用する通信識別子の候補である候補識別子を示す識別子情報を、前記通信網を介して他の全ての前記電池モジュールへ送信する送信ステップと、
前記送信した識別子情報について通信調停を行う通信調停ステップと、
前記通信調停に勝った場合に、前記送信した識別子情報に示される前記候補識別子を前記電池モジュールが使用する通信識別子として決定する決定ステップと、を有し、
前記送信ステップにおいて、前記通信調停に負けた場合に前記識別子情報をさらに送信し、
前記電池モジュールは、前記電池モジュールの通信識別子が記憶される記憶手段を有し、
前記送信ステップにおいて、前記記憶手段に前記電池モジュールの通信識別子が記憶されていない場合に、前記識別子情報の送信を行い、
前記送信ステップにおいて前記識別子情報が送信される前に前記記憶手段に前記通信識別子が記憶されている場合に、所定の通知を行う通知ステップを有する、制御方法。
【請求項6】
前記通信網は CAN(Controller Access Network)通信網である、請求項に記載の制御方法。
【請求項7】
前記送信ステップにおいて、前記識別子情報の送信する前の所定時間、他の前記電池モジュールから送信されるデータを受信し、前記データを用いてそのデータを送信した他の前記電池モジュールが利用する通信識別子を特定し、前記特定した通信識別子以外の値を前記候補識別子にする、請求項又はに記載の制御方法。
【請求項8】
前記送信ステップにおいて、前記通信調停に負けた場合、前記識別子情報が示す候補識別子を変更してから前記識別子情報を送信する、請求項乃至いずれか一項に記載の制御方法。
【請求項9】
請求項乃至いずれか一項に記載の制御方法が有する各ステップをコンピュータに実行させるプログラム。
【請求項10】
バス型トポロジを構成する通信網によって複数の電池モジュールが互いに通信可能に接続されており、
前記電池モジュールは、
当該電池モジュールが使用する通信識別子の候補である候補識別子を示す識別子情報を、前記通信網を介して他の全ての前記電池モジュールへ送信する送信手段と、
前記送信した識別子情報について通信調停を行う通信調停手段と、
前記通信調停に勝った場合に、前記送信した識別子情報に示される前記候補識別子を当該電池モジュールが使用する通信識別子として決定する決定手段と、を有し、
前記送信手段は、前記通信調停に負けた場合に前記識別子情報をさらに送信し、
前記電池モジュールの通信識別子が記憶される記憶手段を有し、
前記送信手段は、前記記憶手段に前記電池モジュールの通信識別子が記憶されていない場合に、前記識別子情報の送信を行い、
前記電池モジュールは、前記送信手段によって前記識別子情報が送信される前に前記記憶手段に前記通信識別子が記憶されている場合に、所定の通知を行う通知手段を有する、情報処理システム。
【請求項11】
前記通信網は CAN(Controller Access Network)通信網である、請求項10に記載の情報処理システム。
【請求項12】
前記送信手段は、前記識別子情報の送信する前の所定時間、他の前記電池モジュールから送信されるデータを受信し、前記データを用いてそのデータを送信した他の前記電池モジュールが利用する通信識別子を特定し、前記特定した通信識別子以外の値を前記候補識別子にする、請求項10又は11に記載の情報処理システム。
【請求項13】
前記送信手段は、前記通信調停に負けた場合、前記識別子情報が示す候補識別子を変更してから前記識別子情報を送信する、請求項10乃至12いずれか一項に記載の情報処理システム。
【請求項14】
バス型トポロジを構成する通信網に接続される電池モジュールであって、
前記通信網を介して他の前記電池モジュールと通信可能であり、
当該電池モジュールが使用する通信識別子の候補である第1候補識別子を示す第1識別子情報を、前記通信網を介して他の全ての前記電池モジュールへ送信する送信手段と、
前記送信した第1識別子情報について通信調停を行う通信調停手段と、
前記通信調停に勝った場合に、前記送信した第1識別子情報に示される前記第1候補識別子を当該電池モジュールが使用する通信識別子として決定する決定手段と、を有し、
前記通信調停は、前記送信した第1識別子情報と、前記他の全ての電池モジュールのいずれかである他の電池モジュールから送信された識別子情報以外のデータとの通信調停である第1の通信調停、又は、前記送信した第1識別子情報と、前記他の電池モジュールから送信され、当該他の電池モジュールが使用する通信識別子の候補である第2候補識別子を示す第2識別子情報との通信調停である第2の通信調停であり、
前記送信手段は、前記第1の通信調停に負けた場合、又は、前記送信された第1識別子情報とは異なる候補識別子を示す前記第2識別子情報との前記第2の通信調停に負けた場合に前記第1候補識別子と同じ候補識別子を示す第1識別子情報をさらに送信する、電池モジュール。
【請求項15】
前記通信網は CAN(Controller Access Network)通信網である、請求項14に記載の電池モジュール。
【請求項16】
前記送信手段は、前記送信された第1識別子情報と同じ候補識別子を示す前記第2識別子情報との前記第2の通信調停に負けた場合、前記識別子情報が示す候補識別子を変更してから前記識別子情報を送信する、請求項14又は15に記載の電池モジュール。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は電池モジュール、制御方法、プログラム、及び情報処理システムに関する。
【背景技術】
【0002】
蓄電池が様々な場面で利用されている。例えば蓄電池は、太陽光などの再生可能エネルギーを利用した発電によって得られた電力を蓄えるために利用される。
【0003】
蓄電池には1つ以上の電池モジュールが含まれる。電池モジュールは、リチウムイオン電池などの二次電池を1つ以上まとめたものである。さらに電池モジュールには、他の電池モジュールと制御情報などのやりとりをするためのコントローラが内包されている。このコントローラは、BMU(Battery Management Unit)とも呼ばれる。電池モジュール間における通信は、例えば CAN(Controller Area Network)などの通信網を介して行われる。
【0004】
通信網を介して制御情報などをやりとりする場合、各電池モジュールを識別するための識別子が必要となる。電池モジュールに識別子を設定する方法の1つとして、電池モジュールの管理者などが手動で識別子を設定するという方法がある。例えば、電池モジュールに、ディップスイッチなどの識別子設定用の回路を設けておく。そして、管理者が電池モジュールのディップスイッチなどを所望の設定に変更することで、所望の識別子を設定する。
【0005】
特許文献1から特許文献3には、電池モジュールの識別子を自動で設定する技術が開示されている。特許文献1の発明では電池モジュールが直列につながれている。そしてこの発明では、各電池モジュールに対してその位置に応じた識別子が割り当てられる。例えば先頭の電池モジュールには「1」という識別子が割り当てられる。特許文献2及び3では、マスタとなる電池モジュールによって他の電池モジュールの識別子が決定され、他の電池モジュールに識別子が割り当てられる。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2012−244794号公報
【特許文献2】特開2013−109628号公報
【特許文献3】特表2015−507451号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
1つのネットワーク内に同じ識別子を持つ電池モジュールが複数存在すると、通信の衝突が発生し、正常な通信が行えなくなる。本発明者は、電池モジュール間で重複が生じないように各電池モジュールが自律的に識別子を決定する新たな方法を見出した。本発明は、電池モジュール間で重複が生じないように各電池モジュールが自律的に識別子を決定する新たな技術を提供することをその目的の一つとする。
【課題を解決するための手段】
【0008】
本発明の電池モジュールは、バス型トポロジを構成する通信網に接続される電池モジュールであり、前記通信網を介して他の前記電池モジュールと通信可能である。
本発明の第1の観点に係る電池モジュールは、1)当該電池モジュールが使用する通信識別子の候補である候補識別子を示す識別子情報を、前記通信網を介して他の全ての前記電池モジュールへ送信する送信手段と、2)前記送信した識別子情報について通信調停を行う通信調停手段と、3)前記通信調停に勝った場合に、前記送信した識別子情報に示される前記候補識別子を当該電池モジュールが使用する通信識別子として決定する決定手段と、4)当該電池モジュールの通信識別子が記憶される記憶手段とを有する。
前記送信手段は、前記通信調停に負けた場合に前記識別子情報をさらに送信し、
前記送信手段は、前記記憶手段に当該電池モジュールの通信識別子が記憶されていない場合に、前記識別子情報の送信を行い、
前記電池モジュールは、
前記送信手段によって前記識別子情報が送信される前に前記記憶手段に前記通信識別子が記憶されている場合に、所定の通知を行う通知手段をさらに有する。
本発明の第2の観点に係る電池モジュールは、1)当該電池モジュールが使用する通信識別子の候補である第1候補識別子を示す第1識別子情報を、前記通信網を介して他の全ての前記電池モジュールへ送信する送信手段と、2)前記送信した第1識別子情報について通信調停を行う通信調停手段と、3)前記通信調停に勝った場合に、前記送信した第1識別子情報に示される前記第1候補識別子を当該電池モジュールが使用する通信識別子として決定する決定手段と、を有し、
前記通信調停は、前記送信した第1識別子情報と、前記他の全ての電池モジュールのいずれかである他の電池モジュールから送信された識別子情報以外のデータとの通信調停である第1の通信調停、又は、前記送信した第1識別子情報と、前記他の電池モジュールから送信され、当該他の電池モジュールが使用する通信識別子の候補である第2候補識別子を示す第2識別子情報との通信調停である第2の通信調停であり、
前記送信手段は、前記第1の通信調停に負けた場合、又は、前記送信された第1識別子情報とは異なる候補識別子を示す前記第2識別子情報との前記第2の通信調停に負けた場合に、前記候補識別子と同じ候補識別子を示す識別子情報をさらに送信する。
【0009】
本発明の制御方法は、バス型トポロジを構成する通信網に接続される電池モジュールによって実行させる。前記電池モジュールは、前記通信網を介して他の前記電池モジュールと通信可能である。
当該制御方法は、1)前記電池モジュールが使用する通信識別子の候補である候補識別子を示す識別子情報を、前記通信網を介して他の全ての前記電池モジュールへ送信する送信ステップと、2)前記送信した識別子情報について通信調停を行う通信調停ステップと、3)前記通信調停に勝った場合に、前記送信した識別子情報に示される前記候補識別子を前記電池モジュールが使用する通信識別子として決定する決定ステップと、を有する。
前記送信ステップにおいて、前記通信調停に負けた場合に前記識別子情報をさらに送信し、
前記電池モジュールは、前記電池モジュールの通信識別子が記憶される記憶手段を有し、
前記送信ステップにおいて、前記記憶手段に前記電池モジュールの通信識別子が記憶されていない場合に、前記識別子情報の送信を行い、
前記送信ステップにおいて前記識別子情報が送信される前に前記記憶手段に前記通信識別子が記憶されている場合に、所定の通知を行う通知ステップを有する。
【0010】
本発明のプログラムは、本発明の制御方法が有する各ステップをコンピュータに実行させる。
本発明の情報処理システムは、バス型トポロジを構成する通信網によって複数の電池モジュールが互いに通信可能に接続されている。
前記電池モジュールは、1)当該電池モジュールが使用する通信識別子の候補である候補識別子を示す識別子情報を、前記通信網を介して他の全ての前記電池モジュールへ送信する送信手段と、2)前記送信した識別子情報について通信調停を行う通信調停手段と、3)前記通信調停に勝った場合に、前記送信した識別子情報に示される前記候補識別子を当該電池モジュールが使用する通信識別子として決定する決定手段と、を有する。
前記送信手段は、前記通信調停に負けた場合に前記識別子情報をさらに送信し、
前記電池モジュールの通信識別子が記憶される記憶手段を有し、
前記送信手段は、前記記憶手段に前記電池モジュールの通信識別子が記憶されていない場合に、前記識別子情報の送信を行い、
前記電池モジュールは、前記送信手段によって前記識別子情報が送信される前に前記記憶手段に前記通信識別子が記憶されている場合に、所定の通知を行う通知手段を有する。
【発明の効果】
【0011】
本発明によれば、電池モジュール間で重複が生じないように各電池モジュールが自律的に識別子を決定する新たな技術が提供される。
【図面の簡単な説明】
【0012】
上述した目的、およびその他の目的、特徴および利点は、以下に述べる好適な実施の形態、およびそれに付随する以下の図面によってさらに明らかになる。
【0013】
図1】実施形態1に係る情報処理システム3000を例示するブロック図である。
図2】電池モジュール2000のハードウエア構成を例示する図である。
図3】実施形態1の情報処理システム3000における処理の流れを例示するフローチャートである。
図4】2つの電池モジュール2000が識別子情報の送信を同時に行ったケースについて、各電池モジュール2000における処理の流れを例示するフローチャートである。
図5】CAN 通信網に対して電池モジュール2000から送信される識別子情報のデータ構造を例示する図である。
図6】識別子記憶部2100を有する電池モジュール2000を例示する図である。
図7】実施形態2の情報処理システム3000を例示するブロック図である。
【発明を実施するための形態】
【0014】
以下、本発明の実施の形態について、図面を用いて説明する。尚、すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。
【0015】
[実施形態1]
図1は、実施形態1に係る情報処理システム3000を例示するブロック図である。図1において、各ブロックは、ハードウエア単位の構成ではなく、機能単位の構成を表している。
【0016】
情報処理システム3000は通信網3020及び複数の電池モジュール2000を有する。通信網3020は、各電池モジュール2000を互いに通信可能に接続する通信網である。各電池モジュール2000は、通信網3020を介して、情報処理システム3000に含まれる他の各電池モジュール2000と互いに通信可能である。ここで、通信網3020のトポロジはバス型である。通信網3020は、例えば CAN 通信網である。
【0017】
電池モジュール2000には、通信網3020を介した通信で利用される識別子が設定される。以下、この識別子を通信識別子と呼ぶ。電池モジュール2000は、当該電池モジュール2000の通信識別子を決定する機能を有する。そのために電池モジュール2000は、送信部2020、通信調停部2060、及び決定部2080を有する。
【0018】
送信部2020は、通信網3020を介し、他の全ての電池モジュール2000へ識別子情報を送信する。送信部2020から送信される識別子情報は、その送信部2020を有する電池モジュール2000が使用する通信識別子の候補(以下、候補識別子)を示す。
【0019】
通信調停部2060は、送信部2020が送信した識別子情報について通信調停を行う。ここで、バス型トポロジの通信網では、複数の通信端末(本実施形態における電池モジュール2000)から同時にデータが送信されると、データの衝突(collision)が発生する。このようなデータの衝突に対処する方法の一つとして、通信調停(arbitration)がある。通信調停を行うことで、複数の通信端末の中から、データを送信することができる1つの通信端末が決定される。なお、一般に、通信調停の結果としてデータを送信できることを、「通信調停に勝つ」と表現する。一方で、通信調停の結果としてデータを送信できないことを、「通信調停に負ける」と表現する。通信調停に勝った通信端末は、データの送信を継続する。一方、通信調停に負けた通信端末は、データの送信を中断又は中止する。結果として、各通信端末が受信するデータは、通信調停に勝った通信端末によって送信されたデータとなる。
【0020】
決定部2080は、通信調停部2060による通信調停において通信調停に勝った場合、その送信された識別子情報に示される候補識別子を、電池モジュール2000が使用する通信識別子として決定する。一方、通信調停部2060による通信調停において通信調停に負けた場合、送信部2020が再度識別子情報の送信を行う。送信部2020によって再度識別子情報が送信された場合、通信調停部2060や決定部2080による処理が再度行われる。そして、決定部2080によって電池モジュール2000の通信識別子が決定されるまで、送信部2020、通信調停部2060、及び決定部2080による処理が繰り返し行われる。
【0021】
<作用効果>
本実施形態の情報処理システム3000によれば、電池モジュール2000は、通信網3020を介した通信に利用する通信識別子の候補である候補識別子を示す識別子情報を、他の各電池モジュール2000へ送信する。そして、この送信において通信調停に勝った場合に、その候補識別子を通信識別子として決定する。ここで、電池モジュール2000が通信調停に勝つことは、他の電池モジュール2000が通信調停に負けることを意味する。よって、識別子情報を送信する際に通信調停に勝ったことを条件として候補識別子を通信識別子として決定するようにすることにより、仮に複数の電池モジュール2000が同じ候補識別子を示す識別子情報を同時に送信したとしても、その候補識別子を通信識別子として決定する電池モジュール2000は1つだけとなる。よって、複数の電池モジュール2000の間で通信識別子が重複することを防ぐことができる。また、本実施形態の情報処理システム3000によれば、各電池モジュール2000が自律的に通信識別子の決定を行うことができる。
【0022】
以下、本実施形態についてさらに詳細に説明する。
【0023】
<電池モジュール2000のハードウエア構成例>
電池モジュール2000の各機能構成部は、各機能構成部を実現するハードウエア(例:ハードワイヤードされた電子回路など)で実現されてもよいし、ハードウエアとソフトウエアとの組み合わせ(例:電子回路とそれを制御するプログラムの組み合わせなど)で実現されてもよい。以下、電池モジュール2000の各機能構成部がハードウエアとソフトウエアとの組み合わせで実現される場合について、さらに説明する。
【0024】
図2は、電池モジュール2000のハードウエア構成を例示する図である。電池モジュール2000には、コントローラ1000及び電池セル10が含まれている。電池セル10は、リチウムイオン電池などの二次電池である。コントローラ1000は、電池セル10の充電や放電の制御を行ったり、他の電池モジュール2000が有するコントローラ1000と制御情報のやりとりを行ったりする装置である。例えばコントローラ1000は、BMU である。
【0025】
コントローラ1000は、バス1020、プロセッサ1040、メモリ1060、ストレージデバイス1080、入出力インタフェース1100、及びネットワークインタフェース1120を有する。バス1020は、プロセッサ1040、メモリ1060、ストレージデバイス1080、入出力インタフェース1100、及びネットワークインタフェース1120が、相互にデータを送受信するためのデータ伝送路である。ただし、プロセッサ1040などを互いに接続する方法は、バス接続に限定されない。プロセッサ1040は、MPU(Micro Processing Unit)又は CPU(Central Processing Unit)などの演算処理装置である。メモリ1060は、RAM(Random Access Memory)などの主記憶装置である。ストレージデバイス1080は、ROM(Read Only Memory)やフラッシュメモリなどの補助記憶装置である。入出力インタフェース1100は、コントローラ1000と入出力デバイスとを接続するためのインタフェースである。
【0026】
ネットワークインタフェース1120は、コントローラ1000と通信網3020とを接続するインタフェースである。送信部2020は、ネットワークインタフェース1120に識別子情報を出力させることで、識別子情報の送信を実現する。また、通信調停部2060は、ネットワークインタフェース1120を介して受信したデータを用いて通信調停を行う。
【0027】
ストレージデバイス1080は、電池モジュール2000の各機能構成部を実現するプログラムモジュールを記憶している。プロセッサ1040は、これら各プログラムモジュールをメモリ1060に読み出して実行することで、そのプログラムモジュールに対応する各機能を実現する。
【0028】
コントローラ1000のハードウエア構成は図2に示した構成に限定されない。例えば、各プログラムモジュールはメモリ1060に格納されてもよい。この場合、コントローラ1000は、ストレージデバイス1080を備えていなくてもよい。
【0029】
<処理の流れ>
図3は、実施形態1の情報処理システム3000における処理の流れを例示するフローチャートである。送信部2020は識別子情報の送信を行う(S102)。通信調停部2060は通信調停を行う(S104)。通信調停に勝った場合(S106:YES)、決定部2080は、送信部2020から送信された識別子情報に示される候補識別子を、電池モジュール2000の通信識別子として決定する(S108)そして、図3の処理は終了する。
【0030】
一方、通信調停に負けた場合(S106:NO)、図3の処理はS102に戻る。この際、識別子情報に示す候補識別子を変更するケースと変更しないケースがある。この点についての詳細は後述する。
【0031】
図4は、2つの電池モジュール2000が識別子情報の送信を同時に行ったケースについて、各電池モジュール2000における処理の流れを例示するフローチャートである。
【0032】
S202において、電池モジュール2000−1の送信部2020が識別子情報の送信を行う。また、S302において、電池モジュール2000−2の送信部2020が識別子情報の送信を行う。
【0033】
S204において、電池モジュール2000−1の通信調停部2060が通信調停を行う。S304において、電池モジュール2000−2の通信調停部2060が通信調停を行う。ここで、電池モジュール2000−1と電池モジュール2000−2から同時に識別子情報が送信され、なおかつ電池モジュール2000−1が通信調停に勝ったとする。
【0034】
電池モジュール2000−1の決定部2080は、通信調停に勝ったか否かを判定する(S206)。前述した通り、電池モジュール2000−1が通信調停に勝ったため、電池モジュール2000−1の決定部2080は、送信部2020から送信された識別子情報に示される候補識別子を、電池モジュール2000−1の通信識別子として決定する(S208)。
【0035】
同様に、電池モジュール2000−2の決定部2080も、通信調停に勝ったか否かを判定する(S306)。ただし、電池モジュール2000−2は通信調停に負けたため、電池モジュール2000−2の送信部2020が、識別子情報を再度送信する(S308)。その後、電池モジュール2000−2の通信調停部2060が通信調停を行い、(S310)。電池モジュール2000−2の決定部2080が通信調停に勝ったか否かを判定する(S312)。ここで、他の電池モジュール2000からはデータの送信が行われなかったため、電池モジュール2000−2が通信調停に勝ったとする。そのため、電池モジュール2000−2の決定部2080は、S308において送信された識別子情報が示す候補識別子を、電池モジュール2000−2の通信識別子に決定する(S314)。
【0036】
<識別子情報について>
電池モジュール2000の送信部2020によって送信される識別子情報は、その電池モジュール2000が通信網3020を介した通信で利用しようとしている通信識別子の候補(前述した候補識別子)を示す。電池モジュール2000は、識別子情報を送信することにより、他の電池モジュール2000に対し、識別子情報に示されている候補識別子を通信識別子として利用しようとしていることを宣言する。例えば通信網3020が CAN 通信網である場合、通信識別子は CAN 通信網における ID(identifier)を表す。以下、CAN 通信網における ID を CAN-ID と表記する。
【0037】
図5は、CAN 通信網に対して電池モジュール2000から送信される識別子情報のデータ構造を例示する図である。一般に、CAN 通信網において送受信されるデータには、CAN ID とデータ本体が含まれる。識別子情報は、例えば、1)CAN ID 部分に識別子情報に共通の固定値(例えば 0x6F2)を示し、2)データ本体部分に候補識別子及び固有番号を示すように構成される。CAN ID 部分に上記固定値が示されているデータを受信した電池モジュール2000は、そのデータが識別子情報であることを認識することができる。
【0038】
データ本体部分に示される固有番号は、電池モジュール2000に固有の番号である。電池モジュール2000に固有の番号としては、例えば電池モジュール2000の製造番号や、電池モジュール2000が有するネットワークインタフェースの製造番号を利用することができる。データ本体部分に候補識別子と固有番号の組が示された識別子情報を受信した電池モジュール2000は、「その固有番号で特定される電池モジュール2000が、その候補識別子を通信識別子として使用しようとしている」ということを把握できる。
【0039】
なお、図5に示す識別子情報のデータ構造は、通信網3020が CAN 通信網以外である場合においても採用することが可能である。また、識別子情報のデータ構造は、上述したデータ構造に限定されない。
【0040】
<識別子情報の送信:S102>
送信部2020は、通信網3020において識別子情報を送信する(S102)。なお、CAN 通信網などを介してデータを送信する技術には、既知の技術を利用することができる。
【0041】
ここで、送信部2020は、送信する識別子情報を生成する。具体的には、送信部2020は、候補識別子を決定し、決定した候補識別子を示す識別子情報を生成する。送信部2020は、他の電池モジュール2000が利用しない通信識別子の一つを候補識別子とする。具体的には、送信部2020は、通信識別子として利用可能な値であり、なおかつ他の電池モジュール2000が利用する通信識別子に該当しない値の中から、候補識別子とする値を決定する。
【0042】
例えば送信部2020は、通信識別子として利用可能な値であり、なおかつ他の電池モジュール2000が利用する通信識別子に該当しない値の中から、ランダムに1つの値を決定し、その決定した値を候補識別子とする。その他にも例えば、送信部2020は、通信識別子として利用可能な値であり、なおかつ他の電池モジュール2000が利用しない通信識別子に該当しない値のうち、最大又は最小の値を候補識別子とする。
【0043】
上述の方法で候補識別子を決定するため、送信部2020は、他の電池モジュール2000によって利用される通信識別子を特定する必要がある。ここで、他の電池モジュール2000が利用する通信識別子を特定する方法は様々である。以下、2つの方法を例示する。
【0044】
<<特定方法1>>
送信部2020は、候補識別子を決定する前に、他の電池モジュール2000によって送信される1つ以上のデータを通信網3020から受信する。例えばこの受信は、所定の期間行われる。この所定の期間を定義する情報は、予め送信部2020に設定されていてもよいし、送信部2020からアクセス可能な記憶装置に記憶されていてもよい。
【0045】
例えば通信網3020が CAN 通信網である場合、受信したデータが識別子情報以外であれば、受信したデータの CAN ID 部分に、そのデータを送信した電池モジュール2000が既に利用している通信識別子が示されている。よって、送信部2020は、CAN ID 部分に示されている値を、他の電池モジュール2000が利用する通信識別子として特定する。これに対し、受信したデータが識別子情報であれば、データ本体部分の所定の位置に候補識別子が示されている。この候補識別子は、他の電池モジュール2000が通信識別子として利用しようとしているものである。そこで送信部2020は、受信した識別子情報に示されている候補識別子についても、他の電池モジュール2000が利用する通信識別子として特定する。
【0046】
<<特定方法2>>
送信部2020は、他の電池モジュール2000が利用する通信識別子が記憶されている記憶装置にアクセスすることで、他の電池モジュール2000が利用する通信識別子を特定してもよい。この場合、情報処理システム3000は、電池モジュール2000とは別に、各電池モジュール2000が利用する通信識別子を特定して上記記憶装置に記憶させる装置を有する。以下、この装置を識別子管理装置と呼ぶ。
【0047】
識別子管理装置は、通信網3020を介して送信される各データを受信し、そのデータを用いて、そのデータを送信した電池モジュール2000が利用する通信識別子を特定する。ここで、通信網3020を介して送信されるデータから、そのデータを送信した電池モジュール2000が利用する通信識別子を特定する方法は、前述した特定方法1で説明した方法と同様である。識別子管理装置は、この方法で特定した通信識別子を、上記記憶装置に記憶させる。こうすることで、この記憶装置に、電池モジュール2000によって利用される通信識別子の一覧が形成される。
【0048】
ここで、上述した2つの特定方法ではいずれも、電池モジュール2000によって送信されるデータを利用して、その電池モジュール2000が利用する通信識別子を特定する。そのため、各電池モジュール2000が、定期的に何らかのデータを送信するように構成されていることが好適である。なお、ここで送信されるデータは、通信識別子を含む任意のデータでよい。このように、定期的に各電池モジュール2000からデータが送信されるようにすることで、各電池モジュール2000が利用する通信識別子を、電池モジュール2000や識別子管理装置がより確実に把握できるようになる。
【0049】
<通信調停:S104>
前述したように、通信網3020はバス型のトポロジであるため、複数の通信端末から同時にデータが送信されると、データの衝突が発生する。なお、通信調停には既存の様々な技術を利用することができる。以下では、通信網3020が CAN 通信網であるケースについて、通信調停の方法を具体的に例示する。
【0050】
一般に、CAN 通信網には、通信調停を実現するために以下のような機能が備わっている。まず、CAN 通信網において、或る時点における信号線の状態は、論理値0を表す状態(ドミナント)と論理値1を表す状態(リセッシブ)のいずれかとなる。そして、ドミナントとリセッシブが同時に送信された場合にはドミナントが優先され、信号線の状態はドミナントになる。よって、データの衝突が生じた場合、信号線の状態は、同時に送信されたビットのうち、値が小さい方のビットを表す。
【0051】
通信調停の勝ち負けを判断するため、CAN 通信網に接続されている通信端末は、CAN 通信網を介してデータを送信しつつ、CAN 通信網を介して受信されるデータをチェックする。そして、通信端末は、送信したビットと受信したビットが異なる場合、通信調停に負けたと判断して、データの送信を中断又は中止する。一方、通信端末は、送信したビットと受信したビットが同一である場合、少なくともその時点では通信調停に勝っていると判断して、データの送信を継続する。このことから、通信調停に勝つ通信端末は、最後までデータの送信を継続できる。言い換えれば、送信したデータを構成するビット列と同一のビット列を受信した通信端末が、最終的に通信調停に勝った通信端末となる。
【0052】
通信調停部2060は、上述した方法と同様の方法により、通信調停を行う。即ち、送信部2020から識別子情報が送信される間、通信網3020からデータを受信する。そして、通信網3020から受信するビットと送信部2020から送信されるビットが同じである間、通信調停に勝っていると判定して、送信部2020に識別子情報の送信を継続させる。一方、通信網3020から受信するビットと送信部2020から送信されるビットが異なる場合、通信調停に負けたと判定して、送信部2020に識別子情報の送信を中止させる。
【0053】
<通信識別子の決定:S108>
決定部2080は、前述した通信調停に勝った場合、送信部2020によって送信された識別子情報が示す候補識別子を、電池モジュール2000が利用する通信識別子として決定する。一方、決定部2080は、前述した通信調停に負けた場合、送信部2020によって送信された識別子情報が示す候補識別子を、電池モジュール2000が利用する通信識別子として決定しない。
【0054】
決定部2080は、上記決定した通信識別子を記憶装置に記憶させる。この記憶装置を識別子記憶部と呼ぶ。図6は、識別子記憶部2100を有する電池モジュール2000を例示する図である。例えば識別子記憶部2100は、前述したコントローラ1000が有するストレージデバイス1080を用いて実現される。
【0055】
<通信調停に負けた場合について:S110>
通信調停に負けるケースは、他の電池モジュール2000から送信されたデータに着目して、以下の3つのケースに分けることできる。第1のケースは、識別子情報以外のデータが他の電池モジュール2000から送信されたケースである。第2のケースは、電池モジュール2000の候補識別子とは異なる候補識別子を示す識別子情報が、他の電池モジュール2000から送信されたケースである。第3のケースは、電池モジュール2000の候補識別子と同じ候補識別子を示す識別子情報が、他の電池モジュール2000から送信されたケースである。
【0056】
第1のケースと第2のケースでは、通信調停に負けたものの、識別子情報に示した候補識別子が他の電池モジュール2000によって利用されるわけではない。そのため、送信部2020は、識別子情報に示す候補識別子を変更せずに、再度識別子情報の送信を行う。
【0057】
一方、第3のケースでは、識別子情報に示した候補識別子が、他の電池モジュール2000によって利用されてしまうと考えられる。そのため、送信部2020は、候補識別子を変更した上で、識別子情報の送信を行う。具体的には、送信部2020は、通信調停に負けた際の識別子情報に示されていた候補識別子を、他の電池モジュール2000が利用する通信識別子に加えた上で、前述した候補識別子を決定する方法を実行する。
【0058】
ここで、通信網3020が CAN 通信網であるケースを例に、第1から第3のケースの判別方法について例示する。まず前述したように、通信網3020が CAN 通信網である場合、識別子情報の CAN ID 部分には固定値が設定される。そのため、通信調停部2060が他の電池モジュール2000から識別子情報以外のデータを受信するケース(第1のケース)では、通信調停部2060が通信網3020から受信したデータの CAN ID 部分が、識別子情報の CAN ID 部分に設定される値と異なる。よって、第1のケースとそれ以外のケースとの判別は、通信網3020から受信するデータの CAN ID 部分に基づいて実現できる。具体的には、第1のケースは、通信調停部2060が、通信網3020から CAN ID 部分を受信している間に通信調停に負けたと判定するケースとなる。
【0059】
次に、第2のケースと第3のケースの判別方法について説明する。ここで、識別子情報が図5に示した構成であり、なおかつデータ本体部分が「候補識別子、固有番号」の順で構成されているとする。この場合、複数の電池モジュール2000から候補識別子が互いに異なる識別情報が送信されるケース(第2のケース)では、通信調停部2060が通信網3020からデータの候補識別子部分を受信している間に、通信調停の勝ち負けが決定する。一方、複数の電池モジュール2000から候補識別子が同一の識別子情報が送信されるケース(第3のケース)では、通信調停部2060が通信網3020からデータの候補識別子の部分を受信している間には通信調停の勝ち負けが決定せず、固有番号部分を受信している間に通信調停の勝ち負けが決定する。このことから、第2のケースは、通信調停部2060が、通信網3020からデータの候補識別子部分を受信している間に通信調停に負けたと判定するケースである。一方、第3のケースは、通信調停部2060が、通信網3020からデータの固有番号部分を受信している間に通信調停に負けたと判定するケースである。
【0060】
なお、識別子情報が図5に示した構成であり、なおかつデータ本体部分が「固有番号、候補識別子」の順で構成されているとする。固有番号部分には電池モジュール2000に固有の値が設定されるため、同時に送信されるデータに同一の固有番号が設定されていることはない。よって、通信調停部2060が行う通信調停は、遅くとも、固有番号部分を受信している間に勝ち負けが決定してしまう。そのため、固有番号の後に候補識別子が設定されている場合には候補識別子の異同の判別ができない。つまり、第2のケースと第3のケースを判別できない。そこで送信部2020は、第1のケースに該当しない場合、即ち通信調停部2060が識別子情報の固有番号部分で通信調停に負けたと判定した場合、必ず候補識別子を変更した上で識別子情報を送信する。
【0061】
なお、送信部2020は、第1のケースから第3のケースを判別しなくてもよい。この場合、送信部2020は、通信調停に負けた場合、必ず候補識別子を変更した上で、再度識別子情報の送信を行う。
【0062】
<電池モジュール2000が一連の処理を実行するタイミング>
電池モジュール2000が一連の処理(図3に示した処理)を行うタイミングは任意である。例えば電池モジュール2000は、電池モジュール2000が起動した際に行われる一連の初期化処理の一つとして、図3に示した一連の処理を行って、通信識別子を決定する。この起動は、電源スイッチをONにする操作などに伴う通常の起動であってもよいし、停電などの異常からの復帰に伴う起動であってもよい。その他にも例えば、電池モジュール2000は、電池モジュール2000が起動してから所定時間経過した後や、電池モジュール2000の初期化処理が終了してから所定時間経過した後に、図3に示した一連の処理を実行してもよい。この所定時間は、送信部2020に予め設定されていてもよいし、送信部2020からアクセス可能な記憶装置に記憶されていてもよい。
【0063】
なお、電池モジュール2000の初期化処理は、電池モジュール2000が起動した際に毎回行われなくてもよい。この場合、例えば電池モジュール2000は、初期化処理を実行するか否かを指定する入力を受け付ける。そして、電池モジュール2000は、初期化処理を実行すると指定された場合に、初期化処理を実行し、その初期化処理の実行に伴って図3の一連の処理を実行する。
【0064】
上述の入力は、電池モジュール2000が起動する前に行われてもよいし、電池モジュール2000が起動した後に行われてもよい。電池モジュール2000が起動する前に行われる入力は、例えばディップスイッチによる入力である。電池モジュール2000が起動した後に行われる入力は、例えばキーボードなどの入力デバイスを利用して行われる入力である。
【0065】
その他にも例えば、電池モジュール2000は、識別子記憶部2100に通信識別子が記憶されているか否かを判定し、識別子記憶部2100に通信識別子が記憶されていない場合に、図3の一連の処理を実行するようにしてもよい。
【0066】
[実施形態2]
図7は、実施形態2の情報処理システム3000を例示するブロック図である。下記で説明する点を除き、実施形態2の情報処理システム3000は、実施形態1の情報処理システム3000と同様の機能を有する。
【0067】
実施形態2の電池モジュール2000は、識別子記憶部2100及び通知部2120を有する。識別子記憶部2100については前述した通りである。通知部2120は、送信部2020によって識別子情報の送信が行われる前に識別子記憶部2100に通信識別子が記憶されている場合に、その旨の通知を行う。
【0068】
このように送信部2020によって識別子情報の送信が行われる前に識別子記憶部2100に通信識別子が記憶されているケースとしては、例えば、過去に電池モジュール2000を運用していた際に電池モジュール2000に設定されていた通信識別子が消去されないまま識別子記憶部2100に記憶され続けていたというケースである。このようなケースでは、通信識別子が記憶されたままとなっている旨をユーザに通知することが好適である。そこで、本実施形態の通知部2120は、この通知を行う。こうすることで、以前に利用されていた通信識別子がユーザに把握されることなく利用され続けてしまうことを防ぐことができる。
【0069】
通知部2120による通知を把握した電池モジュール2000のユーザは、例えば、識別子記憶部2100に記憶されている通信識別子の消去を行い、その後に図3の一連の処理を電池モジュール2000に行わせる。例えば、ユーザは、識別子記憶部2100に記憶されている通信識別子を消去した後、電池モジュール2000に対し、初期化処理の実行する指定する入力を行う。
【0070】
ここで、通知部2120が行う通知は任意である。例えば通知部2120は、ブザーなどの音声をスピーカから出力することで、識別子記憶部2100に通信識別子が記憶されていることを通知する。その他にも例えば、通知部2120は、電池モジュール2000の筐体に設けられているランプ(例えば LED(Light Emitting Diode)ランプ)を点灯させることで、識別子記憶部2100に通信識別子が記憶されていることを通知してもよい。その他にも例えば、通知部2120は、電池モジュール2000に接続されているディスプレイ装置に、識別子記憶部2100に通信識別子が記憶されている旨のメッセージを表示することで通知を行ってもよい。
【0071】
<ハードウエア構成>
本実施形態の電池モジュール2000のハードウエア構成は、実施形態1の電池モジュール2000のハードウエア構成と同様に、例えば図2で表される。ただし、本実施形態のストレージデバイス1080には、通知部2120の機能を実現するプログラムモジュールがさらに含まれる。また、本実施形態の入出力インタフェース1100には、通知部2120を実現するためのハードウエア(スピーカ、ランプ、又はディスプレイ装置など)が接続される。
【0072】
以上、図面を参照して本発明の実施形態について述べたが、これらは本発明の例示であり、上記各実施形態の組み合わせ、又は上記以外の様々な構成を採用することもできる。
【0073】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
1. バス型トポロジを構成する通信網に接続される電池モジュールであって、
前記通信網を介して他の前記電池モジュールと通信可能であり、
当該電池モジュールが使用する通信識別子の候補である候補識別子を示す識別子情報を、前記通信網を介して他の全ての前記電池モジュールへ送信する送信手段と、
前記送信した識別子情報について通信調停を行う通信調停手段と、
前記通信調停に勝った場合に、前記送信した識別子情報に示される前記候補識別子を当該電池モジュールが使用する通信識別子として決定する決定手段と、を有し、
前記送信手段は、前記通信調停に負けた場合に前記識別子情報をさらに送信する、電池モジュール。
2. 前記通信網は CAN(Controller Access Network)通信網である、1.に記載の電池モジュール。
3. 前記送信手段は、前記識別子情報の送信する前の所定時間、他の前記電池モジュールから送信されるデータを受信し、前記データを用いてそのデータを送信した他の前記電池モジュールが利用する通信識別子を特定し、前記特定した通信識別子以外の値を前記候補識別子にする、1.又は2.に記載の電池モジュール。
4. 前記送信手段は、前記通信調停に負けた場合、前記識別子情報が示す候補識別子を変更してから前記識別子情報を送信する、1.乃至3.いずれか一つに記載の電池モジュール。
5. 当該電池モジュールの通信識別子が記憶される記憶手段を有し、
前記送信手段は、前記記憶手段に当該電池モジュールの通信識別子が記憶されていない場合に、前記識別子情報の送信を行い、
前記送信手段によって前記識別子情報が送信される前に前記記憶手段に前記通信識別子が記憶されている場合に、所定の通知を行う通知手段を有する、1.乃至4.いずれか一つに記載の電池モジュール。
6. バス型トポロジを構成する通信網に接続される電池モジュールによって実行させる制御方法であって、
前記電池モジュールは、前記通信網を介して他の前記電池モジュールと通信可能であり、
前記電池モジュールが使用する通信識別子の候補である候補識別子を示す識別子情報を、前記通信網を介して他の全ての前記電池モジュールへ送信する送信ステップと、
前記送信した識別子情報について通信調停を行う通信調停ステップと、
前記通信調停に勝った場合に、前記送信した識別子情報に示される前記候補識別子を前記電池モジュールが使用する通信識別子として決定する決定ステップと、を有し、
前記送信ステップにおいて、前記通信調停に負けた場合に前記識別子情報をさらに送信する、制御方法。
7. 前記通信網は CAN(Controller Access Network)通信網である、6.に記載の制御方法。
8. 前記送信ステップにおいて、前記識別子情報の送信する前の所定時間、他の前記電池モジュールから送信されるデータを受信し、前記データを用いてそのデータを送信した他の前記電池モジュールが利用する通信識別子を特定し、前記特定した通信識別子以外の値を前記候補識別子にする、6.又は7.に記載の制御方法。
9. 前記送信ステップにおいて、前記通信調停に負けた場合、前記識別子情報が示す候補識別子を変更してから前記識別子情報を送信する、6.乃至8.いずれか一つに記載の制御方法。
10. 前記電池モジュールは、前記電池モジュールの通信識別子が記憶される記憶手段を有し、
前記送信ステップにおいて、前記記憶手段に前記電池モジュールの通信識別子が記憶されていない場合に、前記識別子情報の送信を行い、
前記送信ステップにおいて前記識別子情報が送信される前に前記記憶手段に前記通信識別子が記憶されている場合に、所定の通知を行う通知ステップを有する、6.乃至9.いずれか一つに記載の制御方法。
11. 6.乃至10.いずれか一つに記載の制御方法が有する各ステップをコンピュータに実行させるプログラム。
12. バス型トポロジを構成する通信網によって複数の電池モジュールが互いに通信可能に接続されており、
前記電池モジュールは、
当該電池モジュールが使用する通信識別子の候補である候補識別子を示す識別子情報を、前記通信網を介して他の全ての前記電池モジュールへ送信する送信手段と、
前記送信した識別子情報について通信調停を行う通信調停手段と、
前記通信調停に勝った場合に、前記送信した識別子情報に示される前記候補識別子を当該電池モジュールが使用する通信識別子として決定する決定手段と、を有し、
前記送信手段は、前記通信調停に負けた場合に前記識別子情報をさらに送信する、情報処理システム。
13. 前記通信網は CAN(Controller Access Network)通信網である、12.に記載の情報処理システム。
14. 前記送信手段は、前記識別子情報の送信する前の所定時間、他の前記電池モジュールから送信されるデータを受信し、前記データを用いてそのデータを送信した他の前記電池モジュールが利用する通信識別子を特定し、前記特定した通信識別子以外の値を前記候補識別子にする、12.又は13.に記載の情報処理システム。
15. 前記送信手段は、前記通信調停に負けた場合、前記識別子情報が示す候補識別子を変更してから前記識別子情報を送信する、12.乃至14.いずれか一つに記載の情報処理システム。
16. 前記電池モジュールの通信識別子が記憶される記憶手段を有し、
前記送信手段は、前記記憶手段に前記電池モジュールの通信識別子が記憶されていない場合に、前記識別子情報の送信を行い、
前記電池モジュールは、前記送信手段によって前記識別子情報が送信される前に前記記憶手段に前記通信識別子が記憶されている場合に、所定の通知を行う通知手段を有する、12.乃至15.いずれか一つに記載の情報処理システム。
【0074】
この出願は、2017年2月21日に出願された日本出願特願2017−030350号を基礎とする優先権を主張し、その開示の全てをここに取り込む。
図1
図2
図3
図4
図5
図6
図7