IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ カシオ計算機株式会社の特許一覧

特開2022-149277電子機器、ファームウェア更新方法及びプログラム
<>
  • 特開-電子機器、ファームウェア更新方法及びプログラム 図1
  • 特開-電子機器、ファームウェア更新方法及びプログラム 図2
  • 特開-電子機器、ファームウェア更新方法及びプログラム 図3
  • 特開-電子機器、ファームウェア更新方法及びプログラム 図4
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022149277
(43)【公開日】2022-10-06
(54)【発明の名称】電子機器、ファームウェア更新方法及びプログラム
(51)【国際特許分類】
   G06F 8/65 20180101AFI20220929BHJP
【FI】
G06F8/65
【審査請求】未請求
【請求項の数】12
【出願形態】OL
(21)【出願番号】P 2021051342
(22)【出願日】2021-03-25
(71)【出願人】
【識別番号】000001443
【氏名又は名称】カシオ計算機株式会社
(74)【代理人】
【識別番号】100095407
【弁理士】
【氏名又は名称】木村 満
(72)【発明者】
【氏名】石原 正規
【テーマコード(参考)】
5B376
【Fターム(参考)】
5B376CA45
5B376CA51
(57)【要約】
【課題】新たな部品に適合したファームウェアを確実に適用することのできる電子機器、ファームウェア更新方法及びプログラムを提供する。
【解決手段】部品識別情報取得部121が、電子機器1の搭載済みの部品から交換された新たな部品の識別情報を取得し、ファームウェア書き換え部122が、ファームウェア141を新たなファームウェア141に書き換える。ファームウェア判定部123は、部品識別情報取得部121が取得した識別情報に基づいて、書き換えられたファームウェア141と新たな部品160の種類又は特性とが互いに適合しているか否かを判定する。ファームウェア判定部123により、書き換えられたファームウェア141と新たな部品160の種類又は特性とが互いに適合していないと判定した場合に、予め定めた動作が実行され、又は、予め定めた動作が実行されないように動作指示がなされる。
【選択図】図2
【特許請求の範囲】
【請求項1】
搭載済みの部品から交換された新たな前記部品の識別情報を取得する部品識別情報取得部と、
前記部品又は前記部品の周辺部品のファームウェアを新たな前記ファームウェアに書き換えるファームウェア書き換え部と、
前記部品識別情報取得部が取得した前記識別情報に基づいて、新たな前記ファームウェアと新たな前記部品の種類又は特性とが互いに適合しているか否かを判定するファームウェア判定部と、
前記ファームウェア判定部により、新たな前記ファームウェアと新たな前記部品の種類又は特性とが互いに適合していないと判定された場合に、予め定めた動作を実行し、又は、予め定めた動作を実行しない指示を行う動作指示部と、
を備える電子機器。
【請求項2】
外部の情報通信端末と通信する通信部を更に備え、
前記通信部は、前記情報通信端末から、前記ファームウェアの書き換えプログラムを受信し、
前記ファームウェア書き換え部は、前記ファームウェアの書き換えプログラムを実行することにより、前記部品又は前記部品の周辺部品のファームウェアを新たな前記ファームウェアに書き換える、
請求項1に記載の電子機器。
【請求項3】
搭載済みの部品から交換された新たな前記部品の識別情報を取得する部品識別情報取得部と、
前記部品又は前記部品の周辺部品のファームウェアを含む複数のファームウェアを記憶するファームウェアストレージと、
前記部品識別情報取得部が取得した前記識別情報に基づいて、前記複数のファームウェアから選択した前記ファームウェアと新たな前記部品の種類又は特性とが互いに適合しているか否かを判定するファームウェア判定部と、
前記ファームウェア判定部により、選択した前記ファームウェアと新たな前記部品の種類又は特性とが互いに適合していないと判定された場合に、予め定めた動作を実行し、又は、予め定めた動作を実行しない指示を行う動作指示部と、
を備える電子機器。
【請求項4】
外部の情報通信端末と通信する通信部を更に備え、
前記通信部は、前記情報通信端末から、前記ファームウェアを受信して前記ファームウェアストレージに記憶する、
請求項3に記載の電子機器。
【請求項5】
前記部品は、電池であり、
前記ファームウェアは、電池残量ゲージICのファームウェアを含む、
請求項1から4のいずれか1項に記載の電子機器。
【請求項6】
前記動作指示部は、前記ファームウェアと新たな前記部品の種類又は特性とが互いに適合していると判定された場合に、前記電池残量ゲージICの電池残量を算出するための参照テーブルを、交換された前記電池に対応したテーブルに切り替える、
請求項5に記載の電子機器。
【請求項7】
前記電子機器は、前記部品識別情報取得部が取得した前記部品の前記識別情報に基づく前記ファームウェアの一部更新を実行しない、
請求項1から6のいずれか1項に記載の電子機器。
【請求項8】
前記動作指示部は、前記ファームウェア判定部により、前記ファームウェアと新たな前記部品の種類又は特性とが互いに適合していないと判定された場合に、警告を出力する指示を行う、
請求項1から7のいずれか1項に記載の電子機器。
【請求項9】
第1制御部と、
前記部品識別情報取得部、前記ファームウェア判定部及び前記動作指示部を有する第2制御部と、を有し、
前記第2制御部の前記ファームウェア判定部が、前記ファームウェアと前記部品の種類又は特性とが互いに適合していないと判定した場合に、前記動作指示部は、前記第1制御部の動作を停止する指示を行う、
請求項1から8のいずれか1項に記載の電子機器。
【請求項10】
前記部品を前記第2制御部に接続する部品用インタフェースを更に備え、
前記部品用インタフェースの端子のうち、前記部品の回路基板上で短絡させる端子の組み合わせを前記部品の種類ごとに変えておき、
前記第2制御部の前記部品識別情報取得部は、導通している前記端子の組み合わせを検知することによって、前記部品の前記識別情報を取得する、
請求項9に記載の電子機器。
【請求項11】
搭載済みの部品から交換された新たな前記部品の識別情報を取得する部品識別情報取得ステップと、
前記部品又は前記部品の周辺部品のファームウェアを新たな前記ファームウェアに書き換えるファームウェア書き換えステップと、
前記部品識別情報取得ステップで取得した前記識別情報に基づいて、新たな前記ファームウェアと新たな前記部品の種類又は特性とが互いに適合しているか否かを判定するファームウェア判定ステップと、
前記ファームウェア判定ステップにより、新たな前記ファームウェアと新たな前記部品の種類又は特性とが互いに適合していないと判定した場合に、予め定めた動作を実行し、又は、予め定めた動作を実行しない指示を行う動作指示ステップと、
を有するファームウェア更新方法。
【請求項12】
コンピュータを、
搭載済みの部品から交換された新たな前記部品の識別情報を取得する部品識別情報取得部、
前記部品又は前記部品の周辺部品のファームウェアを新たな前記ファームウェアに書き換えるファームウェア書き換え部、
前記部品識別情報取得部が取得した前記識別情報に基づいて、新たな前記ファームウェアと新たな前記部品の種類又は特性とが互いに適合しているか否かを判定するファームウェア判定部、及び
前記ファームウェア判定部により、新たな前記ファームウェアと新たな前記部品の種類又は特性とが互いに適合していないと判定された場合に、予め定めた動作を実行し、又は、予め定めた動作を実行しない指示を行う動作指示部、
として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、電子機器、ファームウェア更新方法及びプログラムに関する。
【背景技術】
【0002】
リスト機器等の電子機器には、搭載されているIC(Integrated Circuit)等の部品を正常に動作させるためのファームウェアがインストールされている。電子機器の再製造時、設計変更時又は修理時等に部品を交換する場合には、交換後の部品に適合したファームウェア又はパラメータに変更する必要がある。ファームウェア又はパラメータの変更に際して、予め電子機器に記憶させておいたファームウェア更新プログラム又はネットワークを介してダウンロードしたファームウェア更新プログラム等を電子機器で実行することにより、ファームウェア等の変更を行っていた(例えば、特許文献1)。
【0003】
特許文献1に記載の機器装置は、ネットワークに接続された際に、交換する部品の名称又はバージョンを含む情報をクラウドベースソフトウェアリポジトリに送信し、クラウドベースソフトウェアリポジトリが、受信した情報に適したソフトウェアを機器装置にダウンロードさせる。これにより、機器装置に必要なファームウェア等のソフトウェアをダウンロード及びインストールすることができると説明されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2017-37620号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
従来の電子機器は、部品の交換時に、新たな部品の名称又はバージョンを含む情報を読み出して、当該情報をネットワーク上のソフトウェアリポジトリ等に対して送信する必要がある。しかし、情報の読み出しに際し、何らかの障害が発生して情報が読み出せず、又は、誤った情報を読み出す場合があり、このような場合、新たな部品に適合したファームウェア又はパラメータに書き換えることができないという問題があった。
【0006】
また、情報の読み出し時の障害により新たな部品に適合したファームウェア又はパラメータに書き換えることができなかった場合には、当該部品の設計通りの性能が得られない、又は、誤作動を起こすという問題があった。
【0007】
本発明は上記実情に鑑みてなされたものであり、新たな部品に適合したファームウェアを確実に適用することのできる電子機器、ファームウェア更新方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
上記目的を達成するため、本発明に係る電子機器の一態様は、
搭載済みの部品から変更された新たな前記部品の識別情報を取得する部品識別情報取得部と、
前記部品又は前記部品の周辺部品のファームウェアを新たな前記ファームウェアに書き換えるファームウェア書き換え部と、
前記部品識別情報取得部が取得した前記識別情報に基づいて、新たな前記ファームウェアと新たな前記部品の種類又は特性とが互いに適合しているか否かを判定するファームウェア判定部と、
前記ファームウェア判定部により、新たな前記ファームウェアと新たな前記部品の種類又は特性とが互いに適合していないと判定された場合に、予め定めた動作を実行し、又は、予め定めた動作を実行しない指示を行う動作指示部と、
を備える。
【発明の効果】
【0009】
本発明によれば、新たな部品に適合したファームウェアを確実に適用することが可能になる。
【図面の簡単な説明】
【0010】
図1】実施の形態1に係る電子機器のハードウェア構成を示すブロック図である。
図2】実施の形態1に係る電子機器の機能構成を示すブロック図である。
図3】実施の形態1に係るFW書き換え処理のフローチャートである。
図4】実施の形態2に係るFW書き換え処理のフローチャートである。
【発明を実施するための形態】
【0011】
(実施の形態1)
以下に、本発明を実施するための形態について図面を参照して詳細に説明する。なお、図中同一又は相当する部分には同一符号を付す。本実施の形態1に係る電子機器1は、交換可能な電子部品を搭載した任意の機器であり、例えば、電池で駆動され、ネットワークに接続可能な情報通信端末である。本実施の形態1では、電子機器1がリスト機器等の小型の情報通信端末の場合について説明する。
【0012】
図1は、本実施の形態1に係る電子機器1のハードウェア構成を示すブロック図であり、図2は、電子機器1の機能構成を示すブロック図である。
【0013】
電子機器1は、図1に示すように、第1制御部110と、第2制御部120と、データストレージ(Data Storage)130と、ファームウェアストレージ(Firmware storage:図面中FWストレージと記す)140と、通信部150と、を備え、これらはデータバス200を介して接続されている。電子機器1はさらに、電子機器1に搭載されている1以上の部品160と、各部品160を接続するための部品用インタフェース170と、を備え、部品用インタフェース170もデータバス200に接続されている。
【0014】
第1制御部110は、プロセッサ101と、メモリ102と、を備える。第1制御部110は、自分自身をスリープさせて電力消費を抑える機能を持つ。スリープした第1制御部110は、基本的には動作を停止しているが、外部から割り込み信号(ウェイクアップ信号)を受信するとスリープ状態からアクティブ状態になり、動作を開始する。
【0015】
プロセッサ101は、高機能OS(Operating System)を実装可能な処理能力の高い演算処理装置であり、CPU(Central Processing Unit)からなる。メモリ102は、プロセッサ101の作業領域となるRAM(Random Access Memory)であり、電子機器1の全ての機能を実現するために必要となる容量の大部分をまかなうことができる容量を有する。
【0016】
第2制御部120は、プロセッサ103と、メモリ104と、を備える。プロセッサ103は、第1制御部110のプロセッサ101と比較して、低機能で速度が遅いCPUである。そのため、プロセッサ103は高機能OSには向かないが、その反面、プロセッサ101よりも低消費電力である。電子機器1は、再製造時、設計変更時又は修理時等に第2制御部120のみで動作させることが可能である。
【0017】
メモリ104は、プロセッサ103の作業領域となるRAM(Random Access Memory)であり、プロセッサ103の処理を実現するために必要となる容量を有する。
【0018】
ここで、メモリ102及びメモリ104の上記構成は一例であり他の任意の構成でもよい。例えば、メモリ102及びメモリ104の少なくとも一方は、第1制御部110又は第2制御部120の外部に設けられてもよく、また、メモリ102及びメモリ104が1つのRAMから構成されていてもよい。
【0019】
データストレージ130は、大容量の記憶装置であり、第1制御部110が実現する電子機器1の主要機能により取得又は生成されるデータを記憶する。また、データストレージ130は、第1制御部110及び第2制御部120が実行するプログラム及び電子機器1に搭載される各部品160のファームウェア書き換えプログラムも記憶する。
【0020】
データストレージ130に記憶されたファームウェア(Firmware:図面中FWと記す。以下同じ)書き換えプログラム131を第2制御部120が実行することにより、第2制御部120は、図2に示すように、部品識別情報取得部121と、ファームウェア書き換え部122と、ファームウェア判定部123と、動作指示部124として機能する。
【0021】
部品識別情報取得部121は、電子機器1に搭載済みの部品160が交換されたときに新たな部品160の識別情報を取得する。ファームウェア書き換え部122は、交換後の部品160又は部品160の周辺部品に適用するファームウェア141を新たなファームウェア141に書き換える。
【0022】
ファームウェア判定部123は、書き換えられたファームウェア141と、新たな部品の種類又は特性と、が互いに適合しているか否かを判定する。動作指示部124は、ファームウェア判定部123が、書き換えられたファームウェア141と新たな部品の種類又は特性とが互いに適合していないと判定した場合に、予め定めた動作を実行し、又は、予め定めた動作を実行しない指示を行う。
【0023】
ファームウェアストレージ140は、電子機器1で動作する各部品160に対応するファームウェア141を記憶する記憶装置である。ファームウェア141を実行するためのパラメータが必要な場合には、ファームウェアストレージ140は、ファームウェア141に対応づけてパラメータも記憶する。
【0024】
通信部150は、電子機器1の外部に存する他の情報通信端末と通信するためのデバイスである。通信部150の通信方式は任意であり、USB等の有線通信方式でもよく、Bluetooth(登録商標)等の無線通信方式でもよい。通信部150は、通信接続されたサーバ、製造調整装置等の情報通信端末から、部品160用のファームウェア書き換えプログラム131を含むデータを受信する。
【0025】
部品160は、電子機器1に搭載済みの電子部品であり、交換可能な部品である。部品160は、例えば、電子機器1用の電池、表示装置、入力装置又はセンサ装置等である。これらの部品は、消耗、故障、他の周辺部品の改変等により交換が必要になる場合がある。製造現場での再製造時、設計変更時又は修理時等に、旧部品が新部品に交換され、あるいは、ユーザにより交換される。部品が切り替わった場合、その新たな部品160の特性に合わせたファームウェア又はパラメータを適用する必要があり、ファームウェア又はパラメータが部品の特性に適合していない場合には、誤作動を起こす可能性がある。
【0026】
部品用インタフェース170は、第2制御部120に部品160を接続するためのインタフェースであり、予め定めた情報を送受信するための信号線を有する。第2制御部120の部品識別情報取得部121は、部品用インタフェース170を用いて、部品160の識別情報を含む情報を取得できる。
【0027】
部品用インタフェース170を用いた識別情報の取得方法は従来の任意の方法である。例えば、部品用インタフェース170の端子のうち、部品160の回路基板上で短絡させる端子の組み合わせを部品の種類ごとに変えておき、部品識別情報取得部121が、導通している端子の組み合わせを検知することによって、部品の識別情報を取得する。部品識別情報取得部121が部品用インタフェース170を用いて部品160の識別情報を取得できない場合は、通信部150を介して識別情報を取得し、又は、操作者の操作入力に基づいて識別情報を取得してもよい。
【0028】
以上のように構成された電子機器1の動作について、図3のフローチャートを用いて説明する。図3は、部品160を交換した後に実行されるファームウェア書き換え処理のフローチャートである。
【0029】
図3に示すファームウェア書き換え処理を実行する前に、データストレージ130には、各部品160及び各部品160の種類又はバージョンに応じたファームウェア書き換えプログラム131が記憶されている。これらのファームウェア書き換えプログラム131は、例えば、通信部150が、通信接続されたサーバ、製造調整装置等の情報通信端末から受信したプログラムである。
【0030】
電子機器1に搭載されている、電池、表示装置、入力装置又はセンサ装置等の任意の部品160が交換された後に、データストレージ130に記憶されているファームウェア書き換えプログラム131から、交換された部品160又は部品160の周辺部品に対応するファームウェア書き換えプログラム131が選択される。ファームウェア書き換えプログラム131は、操作者の操作により選択され、又は、部品識別情報取得部121が取得した部品160の識別情報に基づいて選択される。そして、選択されたファームウェア書き換えプログラム131を実行することにより、図3に示すファームウェア書き換え処理が実行される。
【0031】
まず、部品識別情報取得部121が、新たに部品用インタフェース170に接続された部品160の識別情報を取得する(ステップS101:部品識別情報取得ステップ)。次に、第2制御部120のファームウェア書き換え部122がファームウェアストレージ140に記憶されているファームウェア141を新たなファームウェア141に書き換える(ステップS102:ファームウェア書き換えステップ)。このとき、ファームウェア141を実行するために必要なパラメータがある場合には、ファームウェア書き換え部122は、ファームウェア141とともにパラメータも書き換える。
【0032】
ここで、ステップS102で実行される、ファームウェアストレージ140におけるファームウェア141の書き換えは、既に書き込まれている古いバージョンのファームウェア141に対してバージョンアップするものではなく、ファームウェア141の全データを新たに書き込むものである。言い換えれば、第2制御部120は、ファームウェア141を、クリーンインストールする。
【0033】
つまり、ファームウェア書き換え部122は、部品識別情報取得部121が取得した部品160の識別情報に基づくファームウェア141の一部更新を実行しない。
【0034】
ステップS102において、ファームウェアストレージ140のファームウェア141を書き換えた後に、ファームウェア判定部123がファームウェア141の全データの整合性を判定する(ステップS103:ファームウェア判定ステップ)。
【0035】
具体的には、ファームウェア判定部123は、書き込まれたファームウェア141のデータに誤り又は欠損がないか検証する。また、ファームウェア判定部123は、ファームウェア141のバージョンを含むデータが、部品識別情報取得部121が取得した識別情報に基づいて識別される新たな部品160の種類又は特性に適合しているか否かを判定する。
【0036】
ファームウェア判定部123がファームウェア141の全データに整合性があると判定した場合は(ステップS104:Yes)、ファームウェア書き換え処理を終了し、その後、動作指示部124が第1制御部110の動作を開始する指示を行う。ファームウェア判定部123がファームウェア141のデータに整合性がないと判定した場合は(ステップS104:No)、動作指示部124が異常を示す警告を出力し、第1制御部110を停止したままにする指示を行う(ステップS105,S106:動作指示ステップ)。なお、動作指示部124が行う動作の指示は、警告の出力又は第1制御部110の停止に限られず、予め定めた任意の動作を実行し、又は、実行しないようにする指示でよい。
【0037】
このようにして、部品160の交換後に書き換えられたファームウェア141と新たな部品160とが互いに適合している場合には、正常に電子機器1を動作させることができる。一方、書き換えられたファームウェア141と新たな部品160とが互いに適合していない場合には、部品160が正常動作できない状態で電子機器1を動作させることを回避できる。
【0038】
以上説明したように、本実施の形態に係る電子機器1において、搭載済みの部品160が交換されたときに、第2制御部120の部品識別情報取得部121が、新たな部品160の識別情報を取得し、ファームウェア書き換え部122が、部品160又は部品160の周辺部品のファームウェア141を新たなファームウェア141に書き換える。ファームウェア判定部123は、書き換えられたファームウェア141のバージョンを含むデータを検証し、データの整合性があるか否かを判定する。ファームウェア判定部123が、ファームウェア141のデータに整合性がないと判定した場合は、動作指示部124が警告を出力し、第1制御部110を実行しないように指示することとした。これにより、新たな部品160に適合したファームウェア141を確実に適用することが可能となる。
【0039】
また、電子機器1は、部品識別情報取得部121が取得した部品160の識別情報に基づくファームウェアの一部更新を実行しないこととした。これにより、部品160のバージョンの読み出し時の障害により新たな部品160に適合したファームウェア141に書き換えることができなくなるといった不具合を回避することができる。
【0040】
また、第2制御部120のファームウェア判定部123が、書き換えられたファームウェア141と部品160の種類又は特性とが互いに適合していないと判定した場合に、第1制御部110の動作を停止することとした。これにより、ファームウェア141が適合していないことにより部品160が正常動作できない状態で、第1制御部110を動作させることによる電子機器1の故障等を回避できる。
【0041】
(実施の形態2)
以下に、実施の形態2に係る電子機器1について、図4を参照して説明する。本実施の形態2に係る電子機器1は、実施の形態1と同様の構成を有する。本実施の形態に係る電子機器1の、ファームウェア141の書き換えの対象となる部品160は、電池である。
【0042】
電池はEOL(End of Life)により交換が必要な部品であり、EOL時の他、製造現場での再製造時、設計変更時又は修理時等に、旧電池から新電池に交換され、あるいは、ユーザにより交換される。電池が切り替わった場合、その電池の特性に適合した電池残量ゲージIC(Integrated Circuit)のファームウェア又はパラメータを適用する必要があり、ファームウェア又はパラメータが電池の特性に適合していない場合には、誤作動を起こす可能性がある。また、ファームウェア又はパラメータが電池の特性に適合していない場合には、設計通りの電池の特性が得られない場合もある。
【0043】
本実施の形態2に係る電子機器1のハードウェア構成及び機能構成は、実施の形態1と同様である。本実施の形態2に係る電子機器1の動作について、図4のフローチャートを用いて説明する。図4は、部品160が電池であるときの、ファームウェア書き換え処理のフローチャートである。
【0044】
図4に示すファームウェア書き換え処理を実行する前に、データストレージ130には、部品160である電池の種類又はバージョンに適合した電池残量ゲージICのファームウェア書き換えプログラム131が記憶されている。これらのファームウェア書き換えプログラム131は、例えば、通信部150が、通信接続されたサーバ、製造調整装置等の情報通信端末から受信したプログラムである。
【0045】
電子機器1に搭載されている電池が交換された後に、データストレージ130に記憶されているファームウェア書き換えプログラム131から、交換された新電池に対応するファームウェア書き換えプログラム131が選択される。ファームウェア書き換えプログラム131は、操作者の操作により選択され、又は、部品識別情報取得部121が取得した部品160の識別情報に基づいて選択される。そして、選択されたファームウェア書き換えプログラム131を実行することにより、図4に示すファームウェア書き換え処理が実行される。
【0046】
まず、部品識別情報取得部121が、新たに部品用インタフェース170に接続された部品160である電池の識別情報を取得する(ステップS201)。部品識別情報取得部121が取得した識別情報に基づいて、部品用インタフェース170に接続された電池が新電池であると判定された場合は(ステップS202:Yes)、ファームウェア書き換え部122がファームウェアストレージ140に記憶されている電池残量ゲージICのファームウェア141を全て、新電池に適合した電池残量ゲージICのファームウェア141に書き換える(ステップS203)。
【0047】
本実施の形態2においても、ステップS203で実行される、ファームウェアストレージ140におけるファームウェア141の書き換えは、既に書き込まれている古いバージョンのファームウェア141に対してバージョンアップするものではなく、ファームウェア141の全データを新たに書き込むものである。言い換えれば、第2制御部120は、ファームウェア141を、クリーンインストールする。その後ステップS204に進む。
【0048】
ステップS202において、部品用インタフェース170に接続された電池が新電池でなく電池の交換がなされなかったと判定された場合は(ステップS202:No)、ファームウェア141の書き換えは行わず、ステップS204に進む。
【0049】
次に、ファームウェア判定部123は、ファームウェアストレージ140にインストールされている電池残量ゲージICのファームウェア141の全データの整合性を判定する(ステップS204)。
【0050】
具体的には、ファームウェア判定部123は、書き込まれたファームウェア141のデータに誤り又は欠損がないか検証する。また、ファームウェア判定部123は、電池残量ゲージICのファームウェア141のバージョンを含むデータが、部品識別情報取得部121が取得した識別情報に基づいて識別される新たな電池の種類又は特性に適合しているか否かを判定する。
【0051】
ファームウェア判定部123が、部品識別情報取得部121が取得した部品識別情報に基づいて、新電池が接続されていることを判定し、かつ、電池残量ゲージICのファームウェア141が、新電池に対応していると判定した場合には(ステップS205:Yes)、動作指示部124が、電池残量ゲージICの電池残量を算出するための参照テーブルを新電池に対応したテーブルに切り替えて、電子機器1を再起動する(ステップS206)。
【0052】
また、ファームウェア判定部123が、部品識別情報取得部121が取得した部品識別情報に基づいて、旧電池が接続されていることを判定し、かつ、電池残量ゲージICのファームウェア141が、旧電池に対応していると判定した場合には(ステップS205:No,ステップS207:Yes)、動作指示部124が、電池残量ゲージICの参照テーブルを旧電池に対応したテーブルに切り替えて、電子機器1を再起動する(ステップS206)。
【0053】
一方、ファームウェア判定部123が、新電池が接続され、かつ、電池残量ゲージICのファームウェア141が新電池対応でない場合には(ステップS205,S207:No)、動作指示部124が異常を示す警告を出力し(ステップS208)、第1制御部110を停止したままにする指示を行う(ステップS209)。また、ファームウェア判定部123が、旧電池が接続され、かつ、電池残量ゲージICのファームウェア141が旧電池対応でない場合にも(ステップS205,S207:No)、動作指示部124が異常を示す警告を出力し(ステップS208)、第1制御部110を停止したままにする指示を行う(ステップS209)。
【0054】
以上説明したように、本実施の形態に係る電子機器1において、搭載済みの電池が交換されたときに、第2制御部120の部品識別情報取得部121が、新たな部品160である電池の識別情報を取得し、ファームウェア書き換え部122が、電池の電池残量ゲージICのファームウェア141を新たなファームウェア141に書き換える。ファームウェア判定部123は、書き換えられたファームウェア141のバージョンを含むデータを検証し、データの整合性があるか否かを判定する。ファームウェア判定部123が、ファームウェア141のデータに整合性がないと判定した場合は、動作指示部124が警告を出力し、また、第1制御部110を動作させない指示を行うこととした。これにより、新しい電池に適合した電池残量ゲージICのファームウェア141を確実に適用することが可能となる。
【0055】
(変形例)
以上、本発明の実施の形態について説明したが、この実施の形態は一例であり、本発明の適用範囲はこれに限られない。すなわち、本発明の実施の形態は種々の応用が可能であり、あらゆる実施の形態が本発明の範囲に含まれる。
【0056】
例えば、実施の形態1において、データストレージ130とファームウェアストレージ140とは別に設けられ、データストレージ130にファームウェア書き換えプログラム131が記憶され、ファームウェアストレージ140にファームウェア141を記憶されるとしたが、データストレージ130及びファームウェアストレージ140の構成は、他の任意の構成でもよい。例えば、データストレージ130及びファームウェアストレージ140が1つの記憶装置から構成されていてもよい。あるいは、ファームウェアストレージ140の一部又は全部が、第1制御部110又は第2制御部120に含まれていてもよい。
【0057】
また、実施の形態1,2において、ファームウェア書き換えプログラム131を実行することにより、ファームウェアストレージ140に記憶されているファームウェア141を新たな部品160のファームウェア141に書き換えるとしたが、ファームウェアストレージ140に予め、部品160又は部品160の周辺部品のファームウェア141を含む複数のファームウェアを記憶しておいてもよい。この場合、ファームウェア判定部123は、部品識別情報取得部121が取得した新たな部品160の識別情報に基づいて、複数のファームウェアから新たな部品160に対応するファームウェア141を選択し、選択したファームウェア141と新たな部品160の種類又は特性とが互いに適合しているか否かを判定する。
【0058】
ファームウェアストレージ140に複数のファームウェア141を記憶する場合は、通信部150が、外部の情報通信端末からファームウェア141を受信してファームウェアストレージ140に記憶してもよい。あるいは、部品識別情報取得部121が取得した新たな部品160の識別情報に基づいて、外部の情報通信端末にファームウェア141を要求し、通信部150が新たな部品160に対応するファームウェア141を受信してファームウェアストレージ140に記憶してもよい。
【0059】
また、実施の形態1,2において、ファームウェアストレージ140のファームウェア141を新たな部品160に対応するファームウェア141に書き換えた後に、ファームウェア判定部123がファームウェア141と新たな部品160の種類又は特性とが互いに適合しているか否かを判定するとしたが、新たな部品160に対応するファームウェア141をファームウェアストレージ140に書き込む前に、ファームウェア141と新たな部品160の種類又は特性とが互いに適合しているか否かを判定してもよい。
【0060】
また、上記実施の形態1,2に示したハードウェア構成及びフローチャートは一例であり、任意に変更及び修正が可能である。第2制御部120が実現する各機能は、専用のシステムによらず、通常のコンピュータシステムを用いて実現可能である。
【0061】
例えば、上記実施の形態の動作を実行するためのプログラムを、コンピュータが読み取り可能なCD-ROM(Compact Disc Read Only Memory)、DVD(Digital Versatile Disc)、MO(Magneto Optical Disc)、メモリカード等の記録媒体に格納して配布し、プログラムをコンピュータにインストールすることにより、各機能を実現することができるコンピュータを構成してもよい。そして、各機能をOS(Operating System)とアプリケーションとの分担、又はOSとアプリケーションとの協同により実現する場合には、OS以外の部分のみを記録媒体に格納してもよい。
【0062】
以上、本発明の好ましい実施の形態について説明したが、本発明は係る特定の実施の形態に限定されるものではなく、本発明には、特許請求の範囲に記載された発明とその均等の範囲とが含まれる。以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
【0063】
(付記1)
搭載済みの部品から交換された新たな前記部品の識別情報を取得する部品識別情報取得部と、
前記部品又は前記部品の周辺部品のファームウェアを新たな前記ファームウェアに書き換えるファームウェア書き換え部と、
前記部品識別情報取得部が取得した前記識別情報に基づいて、新たな前記ファームウェアと新たな前記部品の種類又は特性とが互いに適合しているか否かを判定するファームウェア判定部と、
前記ファームウェア判定部により、新たな前記ファームウェアと新たな前記部品の種類又は特性とが互いに適合していないと判定された場合に、予め定めた動作を実行し、又は、予め定めた動作を実行しない指示を行う動作指示部と、
を備える電子機器。
【0064】
(付記2)
外部の情報通信端末と通信する通信部を更に備え、
前記通信部は、前記情報通信端末から、前記ファームウェアの書き換えプログラムを受信し、
前記ファームウェア書き換え部は、前記ファームウェアの書き換えプログラムを実行することにより、前記部品又は前記部品の周辺部品のファームウェアを新たな前記ファームウェアに書き換える、
付記1に記載の電子機器。
【0065】
(付記3)
搭載済みの部品から交換された新たな前記部品の識別情報を取得する部品識別情報取得部と、
前記部品又は前記部品の周辺部品のファームウェアを含む複数のファームウェアを記憶するファームウェアストレージと、
前記部品識別情報取得部が取得した前記識別情報に基づいて、前記複数のファームウェアから選択した前記ファームウェアと新たな前記部品の種類又は特性とが互いに適合しているか否かを判定するファームウェア判定部と、
前記ファームウェア判定部により、選択した前記ファームウェアと新たな前記部品の種類又は特性とが互いに適合していないと判定された場合に、予め定めた動作を実行し、又は、予め定めた動作を実行しない指示を行う動作指示部と、
を備える電子機器。
【0066】
(付記4)
外部の情報通信端末と通信する通信部を更に備え、
前記通信部は、前記情報通信端末から、前記ファームウェアを受信して前記ファームウェアストレージに記憶する、
付記3に記載の電子機器。
【0067】
(付記5)
前記部品は、電池であり、
前記ファームウェアは、電池残量ゲージICのファームウェアを含む、
付記1から4のいずれか1つに記載の電子機器。
【0068】
(付記6)
前記動作指示部は、前記ファームウェアと新たな前記部品の種類又は特性とが互いに適合していると判定された場合に、前記電池残量ゲージICの電池残量を算出するための参照テーブルを、交換された前記電池に対応したテーブルに切り替える、
付記5に記載の電子機器。
【0069】
(付記7)
前記電子機器は、前記部品識別情報取得部が取得した前記部品の前記識別情報に基づく前記ファームウェアの一部更新を実行しない、
付記1から6のいずれか1つに記載の電子機器。
【0070】
(付記8)
前記動作指示部は、前記ファームウェア判定部により、前記ファームウェアと新たな前記部品の種類又は特性とが互いに適合していないと判定された場合に、警告を出力する指示を行う、
付記1から7のいずれか1つに記載の電子機器。
【0071】
(付記9)
第1制御部と、
前記部品識別情報取得部、前記ファームウェア判定部及び前記動作指示部を有する第2制御部と、を有し、
前記第2制御部の前記ファームウェア判定部が、前記ファームウェアと前記部品の種類又は特性とが互いに適合していないと判定した場合に、前記動作指示部は、前記第1制御部の動作を停止する指示を行う、
付記1から8のいずれか1つに記載の電子機器。
【0072】
(付記10)
前記部品を前記第2制御部に接続する部品用インタフェースを更に備え、
前記部品用インタフェースの端子のうち、前記部品の回路基板上で短絡させる端子の組み合わせを前記部品の種類ごとに変えておき、
前記第2制御部の前記部品識別情報取得部は、導通している前記端子の組み合わせを検知することによって、前記部品の前記識別情報を取得する、
付記9に記載の電子機器。
【0073】
(付記11)
搭載済みの部品から交換された新たな前記部品の識別情報を取得する部品識別情報取得ステップと、
前記部品又は前記部品の周辺部品のファームウェアを新たな前記ファームウェアに書き換えるファームウェア書き換えステップと、
前記部品識別情報取得ステップで取得した前記識別情報に基づいて、新たな前記ファームウェアと新たな前記部品の種類又は特性とが互いに適合しているか否かを判定するファームウェア判定ステップと、
前記ファームウェア判定ステップにより、新たな前記ファームウェアと新たな前記部品の種類又は特性とが互いに適合していないと判定した場合に、予め定めた動作を実行し、又は、予め定めた動作を実行しない指示を行う動作指示ステップと、
を有するファームウェア更新方法。
【0074】
(付記12)
コンピュータを、
搭載済みの部品から交換された新たな前記部品の識別情報を取得する部品識別情報取得部、
前記部品又は前記部品の周辺部品のファームウェアを新たな前記ファームウェアに書き換えるファームウェア書き換え部、
前記部品識別情報取得部が取得した前記識別情報に基づいて、新たな前記ファームウェアと新たな前記部品の種類又は特性とが互いに適合しているか否かを判定するファームウェア判定部、及び
前記ファームウェア判定部により、新たな前記ファームウェアと新たな前記部品の種類又は特性とが互いに適合していないと判定された場合に、予め定めた動作を実行し、又は、予め定めた動作を実行しない指示を行う動作指示部、
として機能させるプログラム。
【符号の説明】
【0075】
1…電子機器、101,103…プロセッサ、102,104…メモリ、110…第1制御部,120…第2制御部、121…部品識別情報取得部、122…ファームウェア(FW)書き換え部、123…ファームウェア判定部、124…動作指示部、130…データストレージ、131…ファームウェア書き換えプログラム、140…ファームウェアストレージ、141…ファームウェア、150…通信部、160…部品、170…部品用インタフェース、200…データバス。
図1
図2
図3
図4