(57)【要約】【課題】情報処理装置に含まれる複数のコントローラの制御プログラムを、バージョン構成の整合性を取ってアップデートできるようにする。【解決手段】複数のコントローラと管理コントローラを有する情報処理装置の制御方法であって、管理コントローラがアップデートファイルを受信するステップと、複数のコントローラを通常動作の状態からファームウェアをアップデートするアップデート状態へと移行させるステップと、アップデートファイルに含まれるファームウェアのバージョンと、現在のファームウェアのバージョンを比較して、ファームウェアの更新が必要なコントローラを決定するステップと、ファームウェアの更新が必要と決定されたコントローラに対してファームウェアを送信するステップと、更新を終えたのち複数のコントローラを通常動作の状態に移行させるステップとを含む情報処理装置の制御方法。【選択図】図２
2012128571.tif 000002
【特許請求の範囲】
【請求項１】
複数のコントローラと、前記複数のコントローラのファームウェアのバージョンを管理する管理コントローラと、を有する情報処理装置の制御方法であって、
前記管理コントローラが、前記複数のコントローラそれぞれのファームウェアを結合したアップデートファイルを受信するステップと、
前記管理コントローラが、前記複数のコントローラを、通常動作の状態からファームウェアをアップデートするアップデート状態へと移行させるステップと、
前記複数のコントローラがアップデート状態になったのち、前記管理コントローラが、前記アップデートファイルに含まれるファームウェアのバージョンと、前記複数のコントローラの現在のファームウェアのバージョンを比較して、前記複数のコントローラのうち、ファームウェアの更新が必要なコントローラを決定するステップと、
前記管理コントローラが、ファームウェアの更新が必要と決定されたコントローラに対してファームウェアを送信するステップと、
ファームウェアを送信されたコントローラがファームウェアの更新を終えたのち、前記管理コントローラが、前記複数のコントローラを通常動作の状態に移行させるステップと、
を含むことを特徴とする情報処理装置の制御方法。
【請求項２】
前記アップデートファイルは、ファームウェアごとに、当該ファームウェアのバージョンを示す情報を含むタグを有しており、
前記複数のコントローラが、前記管理コントローラによってアップデート状態へと移行させられたのち、現在のファームウェアのバージョンを前記管理コントローラに送信するステップをさらに有し、
前記管理コントローラは、前記決定するステップにおいて、前記タグおよび前記複数のコントローラから送信された現在のファームウェアのバージョンを用いて、ファームウェアの更新が必要なコントローラを決定し、かつ、ファームウェアの更新が必要なコントローラが無い場合は、アップデート処理を中止する
ことを特徴とする請求項１に記載の情報処理装置の制御方法。
【請求項３】
前記アップデートファイルのタグは、ファームウェアごとに、当該ファームウェアの正当性を保証するチェックサムをさらに含んでおり、
前記管理コントローラは、前記チェックサムを用いて正当性が保証された場合にファームウェアの更新を行う
ことを特徴とする請求項２に記載の情報処理装置の制御方法。
【請求項４】
前記アップデートファイルは外部記憶装置に記憶されており、
作業者が前記外部記憶装置を前記情報処理装置に接続することにより、前記管理コントローラは前記アップデートファイルを受信する
ことを特徴とする請求項１ないし３のいずれか１項に記載の情報処理装置の制御方法。
【請求項５】
前記情報処理装置は、光を照射された被検体から発生する音響波を探触子により検出して被検体内部を画像化する生体情報イメージング装置であり、
前記複数のコントローラは、光を照射する照射ユニットのコントローラ、被検体を保持する保持機構のコントローラ、および、被検体に対して前記探触子および前記照射ユニットを走査する走査制御部のコントローラを含む
ことを特徴とする請求項１ないし４のいずれか１項に記載の情報処理装置の制御方法。
【請求項６】
複数のコントローラと、前記複数のコントローラのファームウェアのバージョンを管理する管理コントローラと、を有する情報処理装置であって、
前記管理コントローラは、
前記複数のコントローラそれぞれのファームウェアを結合したアップデートファイルを受信し、
前記複数のコントローラを、通常動作の状態からファームウェアをアップデートするアップデート状態へと移行させ、
前記複数のコントローラがアップデート状態になったのち、前記アップデートファイルに含まれるファームウェアのバージョンと、前記複数のコントローラの現在のファームウェアのバージョンを比較して、前記複数のコントローラのうち、ファームウェアの更新が必要なコントローラを決定し、
ファームウェアの更新が必要と決定されたコントローラに対してファームウェアを送信し、
ファームウェアを送信されたコントローラがファームウェアの更新を終えたのち、前記複数のコントローラを通常動作の状態に移行させる
ことを特徴とする情報処理装置。
【請求項７】
複数のコントローラを有する情報処理装置において、前記複数のコントローラのファームウェアのバージョンを管理する管理コントローラであって、
前記複数のコントローラそれぞれのファームウェアを結合したアップデートファイルを受信し、
前記複数のコントローラを、通常動作の状態からファームウェアをアップデートするアップデート状態へと移行させ、
前記複数のコントローラがアップデート状態になったのち、前記アップデートファイルに含まれるファームウェアのバージョンと、前記複数のコントローラの現在のファームウェアのバージョンを比較して、前記複数のコントローラのうち、ファームウェアの更新が必要なコントローラを決定し、
ファームウェアの更新が必要と決定されたコントローラに対してファームウェアを送信し、
ファームウェアを送信されたコントローラがファームウェアの更新を終えたのち、前記複数のコントローラを通常動作の状態に移行させる
ことを特徴とする管理コントローラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置およびその制御方法に関する。
【背景技術】
【０００２】
従来、複数のコントローラを有する情報処理装置において、コントローラに内蔵された制御プログラム（ファームウェア）などの書き換えを行う場合には、コントローラそれぞれについて手作業で制御プログラムを書き換えていた。しかし、情報処理装置を構成するコントローラの数が増加するにつれて、様々な問題が発生している。
【０００３】
複数のコントローラで構成される情報処理装置においては、各コントローラが相互通信を行い、協調動作することで情報処理装置全体の制御を行なう。その時、各コントローラの制御プログラムのバージョンが所望の組み合わせでは無い場合、情報処理装置全体の制御に支障をきたす可能性がある。そのため、制御プログラムの書き換えを行う作業者は各コントローラの制御プログラムのバージョンを適切に管理し、アップデート時には適したバージョンの制御プログラムで書き換える必要がある。
【０００４】
しかし、コントローラ数が増加し、手作業でのアップデート作業が多くなるにつれて、作業者のミスにより誤った制御プログラムで書き換えてしまう可能性が高くなる。これにより制御プログラムのバージョンの整合性が取れなくなり、情報処理装置の制御に支障をきたす可能性がある。
【０００５】
また、複数のコントローラから構成される情報処理装置では、その中の特定のコントローラに対して制御プログラムを書き換える場合がある。制御プログラムの書き換え時には通常動作をおこなうことはできない。そのため、例えば装置を構成する各種コントローラが、制御プログラムを書き換え中のコントローラに対しての通信を試みると、正常な通信を行うことができないことから異常状態とみなしてしまい、装置を正常に動作することができなくなるという問題があった。
【０００６】
前記の問題点に鑑み各種方法が提案されている。特許文献1では複数のコントローラの
うち、所定の代表コントローラの記憶領域に、代表コントローラ自身を特定するＩＤ情報と他のコントローラを特定するＩＤ情報を記憶させている。そして、外部ツール（メモリ書き換え装置）からの要求により、制御プログラムの書き換え対象となるコントローラのＩＤ情報と、制御プログラムの書き換え順番を外部ツールに送信する。この受信したＩＤ情報から、制御プログラムや制御パラメータを書き換える必要があるコントローラを判定することができる。
【０００７】
特許文献１では、これにより作業者はすべてのコントローラ用のパラメータファイルから設定するパラメータファイルを選択するのではなく、限られたパラメータファイルから制御プログラムやデータを設定することが可能になる。さらに制御プログラムの書き換え順番に基づいた最適な順番で各種コントローラを制御プログラムの書き換え可能な状態に移行した後、各種コントローラに制御プログラムを転送する。かかる手法を用いることで、複数備えられた各コントローラ内の制御プログラムやデータを好適な順番で書き換える方法を提供している。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００４−３１０２２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
上記の先行技術では、制御プログラムや制御データをアップデートする必要のあるコントローラの情報を外部ツールに送信することで、作業者が選択するパラメータなどの量は減る。しかし、最終的には作業者によってアップデートする制御プログラムや制御データを選択する必要がある。そのため、制御プログラムや制御データの選択時に誤りが起こる原因になり、アップデート時に制御プログラムのバージョンの整合性が取れなくなる可能性がある。
【００１０】
また、外部ツールには制御プログラムの更新が必要なコントローラの情報を判断し作業者に提示する機能や、データを更新するコマンドをコントローラに送信する機能などを有していなければならない。さらに代表のコントローラにも制御プログラム更新時に自身のＩＤ番号や、構成する各種コントローラのＩＤ番号を外部ツールに送信する機能を備えていなければならない。この構成によるとアップデートを情報処理装置内で完結することができないため、外部ツールとのデータの送受信が必要となる。そのため、外部ツールや代表のコントローラを変更した場合、その変更に応じてアップデートに必要な外部ツールや代表のコントローラの構成を変更しなければならない。
【００１１】
本発明は上記の課題に鑑みてなされたものであり、その目的は、情報処理装置に含まれる複数のコントローラの制御プログラムを、バージョン構成の整合性を取ってアップデートできるようにすることである。
【課題を解決するための手段】
【００１２】
本発明は以下の構成を採用する。すなわち、複数のコントローラと、前記複数のコントローラのファームウェアのバージョンを管理する管理コントローラと、を有する情報処理装置の制御方法であって、前記管理コントローラが、前記複数のコントローラそれぞれのファームウェアを結合したアップデートファイルを受信するステップと、前記管理コントローラが、前記複数のコントローラを、通常動作の状態からファームウェアをアップデートするアップデート状態へと移行させるステップと、前記複数のコントローラがアップデート状態になったのち、前記管理コントローラが、前記アップデートファイルに含まれるファームウェアのバージョンと、前記複数のコントローラの現在のファームウェアのバージョンを比較して、前記複数のコントローラのうち、ファームウェアの更新が必要なコントローラを決定するステップと、前記管理コントローラが、ファームウェアの更新が必要と決定されたコントローラに対してファームウェアを送信するステップと、ファームウェアを送信されたコントローラがファームウェアの更新を終えたのち、前記管理コントローラが、前記複数のコントローラを通常動作の状態に移行させるステップと、を含むことを特徴とする情報処理装置の制御方法である。
【００１３】
本発明はまた、以下の構成を採用する。すなわち、複数のコントローラと、前記複数のコントローラのファームウェアのバージョンを管理する管理コントローラと、を有する情報処理装置であって、前記管理コントローラは、前記複数のコントローラそれぞれのファームウェアを結合したアップデートファイルを受信し、前記複数のコントローラを、通常動作の状態からファームウェアをアップデートするアップデート状態へと移行させ、前記複数のコントローラがアップデート状態になったのち、前記アップデートファイルに含まれるファームウェアのバージョンと、前記複数のコントローラの現在のファームウェアのバージョンを比較して、前記複数のコントローラのうち、ファームウェアの更新が必要なコントローラを決定し、ファームウェアの更新が必要と決定されたコントローラに対してファームウェアを送信し、ファームウェアを送信されたコントローラがファームウェアの更新を終えたのち、前記複数のコントローラを通常動作の状態に移行させることを特徴と
する情報処理装置である。
【００１４】
本発明はまた、以下の構成を採用する。すなわち、複数のコントローラを有する情報処理装置において、前記複数のコントローラのファームウェアのバージョンを管理する管理コントローラであって、前記複数のコントローラそれぞれのファームウェアを結合したアップデートファイルを受信し、前記複数のコントローラを、通常動作の状態からファームウェアをアップデートするアップデート状態へと移行させ、前記複数のコントローラがアップデート状態になったのち、前記アップデートファイルに含まれるファームウェアのバージョンと、前記複数のコントローラの現在のファームウェアのバージョンを比較して、前記複数のコントローラのうち、ファームウェアの更新が必要なコントローラを決定し、ファームウェアの更新が必要と決定されたコントローラに対してファームウェアを送信し、ファームウェアを送信されたコントローラがファームウェアの更新を終えたのち、前記複数のコントローラを通常動作の状態に移行させることを特徴とする管理コントローラである。
【発明の効果】
【００１５】
本発明によれば、情報処理装置に含まれる複数のコントローラの制御プログラムを、バージョン構成の整合性を取ってアップデートすることが可能になる。
【図面の簡単な説明】
【００１６】
【図１】生体情報イメージング装置のブロック図。
【図２】本発明によるアップデート方法の概略を示すフローチャート。
【図３】生体情報イメージング装置内に搭載された複数のコントローラの概念図。
【図４】アップデートファイルとタグ情報の概念図。
【図５】実施例のアップデート管理用コントローラ側の処理を示すフローチャート。
【図６】実施例の装置を構成するコントローラ側の処理を示すフローチャート。
【発明を実施するための形態】
【００１７】
本実施例に係る生体情報イメージング装置は、光音響トモグラフィー（ＰＡＴ）を利用したイメージング装置である。この生体情報イメージング装置は光源から被検体に光を照射し、被検体内の光吸収体が光を吸収することにより発生する光音響波を検出することで、被検体内部の情報を画像化する装置である。
なお、本実施例では情報処理装置の例として生体情報イメージング装置を挙げたが、本発明の適用可能な対象はこれに限られない。複数のコントローラを含む情報処理装置であれば適用可能である。
【００１８】
図１は、本実施形態に係る生体情報イメージング装置を示すブロック図である。
生体情報イメージング装置は被検体（乳房）１０１を保持する保持板１０２、保持板１０２を制御する保持機構１０６を備える。生体情報イメージング装置はまた、計測光を照射する照射ユニット１０３、光音響波を検出する光音響波検出ユニット１０４、光音響波検出ユニット１０４が検出した信号を増幅してデジタル信号に変換する光音響計測部１０５を備える。生体情報イメージング装置はまた、走査位置を２次元的に制御する走査制御部１０８、外部処理装置としての画像処理装置１２０とのＩ／Ｆ１０９、検出した光音響信号の記録処理などを行う信号処理部１０７を備える。
【００１９】
１０３は、被検体１０１に対して計測光を照射する照射ユニットである。光照射により、被験体１０１に光音響波を発生させる。照射ユニット１０３は、５３０〜１３００ｎｍの近赤外領域に中心波長を有するパルス光（幅１００ｎｓｅｃ以下）を発するレーザ光源により構成されている。
１０４は、被検体１０１で生じた光音響波を受信して電気信号に変換する光音響波検出
ユニットである。光音響波検出ユニット１０４は、複数の音響検出素子から構成される探触子により構成されている。
【００２０】
１０６は、保持板１０２を制御する保持機構である。保持板１０２を駆動して被検体１０１を挟むことにより、被検体１０１を装置に固定し被検体１０１が動くことによる計測誤差を低減することができる。また、計測光の浸達深度に合わせて、被検体１０１を光音響の計測に適した厚さに調整することができる。
【００２１】
１０８は、被検体１０１に対して、照射ユニット１０３および探触子１０４を二次元走査させるための走査制御部である。また、本実施例では、照射ユニット１０３および探触子１０４は、ステージ駆動される台座（キャリッジ）に固定されている。この走査制御部１０８はステージを制御することで、任意の座標で測定することや、２次元的にスキャンしながら光音響波測定を行うことが可能となっている。
【００２２】
１２０は、光音響診断装置から受信した光音響の撮像データに基づいて光音響診断画像の構成と表示を行うための外部装置としての画像処理装置である。生体情報イメージング装置とのＩ／Ｆ１２１、光音響の撮像データから光音響診断画像を構成する画像構成部１２２、光音響診断画像を表示する表示部１２３から構成される。一般にパソコンやワークステーション等の高性能な演算処理機能やグラフィック表示機能を備える装置を用いる。
【００２３】
以上の構成を有する生体情報イメージング装置により、光音響効果に基づいて撮像することで、被検体１０１の光学特性分布を画像化し、光音響診断画像を提示することができる。
【００２４】
（アップデート手順）
以下で本発明の概略を説明する。
図２は本発明による、コントローラを複数備えた情報処理装置に内蔵された制御プログラムのアップデート方法の手順の概略である。制御プログラムはファームウェアとも呼ばれ、各コントローラの動作を制御する。図２に示す手順に基づいてアップデートを行うことで、アップデートを、情報処理装置を構成するコントローラのみで、複数のコントローラの制御プログラムをバージョン構成の整合性を取って実現することができる。図２のステップＳ００１〜Ｓ００６に示した手順それぞれについては、後ほどさらに詳しく記述する。
【００２５】
図３は、本発明の特徴を説明するための概念図である。図３は生体情報イメージング装置内に搭載された複数のコントローラを示している。図３に示すように、例えば走査制御部１０８用のコントローラ２０１、保持機構１０６用のコントローラ２０２や照射ユニット１０３用のコントローラ２０３などが、生体情報イメージング装置には含まれている。
各種コントローラは内蔵された制御プログラムに従って動作しており、相互に接続された通信回路２０４を通して相互通信し、協調動作することで装置全体を制御している。各コントローラには特定のＩＤが割り振られており、自身のＩＤを送信メッセージに付加することで、受信側ではそのＩＤから、どのコントローラから送信されたメッセージなのかを特定することができる。
【００２６】
制御プログラムのアップデートを行う際には、外部記憶装置２１０に格納した後述のアップデートファイル３０１を、走査制御部１０８用コントローラ２０１とのＩ／Ｆ２１１を通して走査制御部１０８用コントローラ２０１に転送する。アップデートファイル３０１を転送された走査制御部１０８用コントローラ２０１は、アップデートを管理するコントローラ（以下、アップデート管理用コントローラ）として動作する。アップデート管理用コントローラは装置を構成する各コントローラの状態を制御し、アップデートファイル
３０１を用いることで装置を構成するコントローラのアップデートを行う。アップデート管理コントローラは、本発明の管理コントローラに相当する。
【００２７】
次に制御プログラムの書き換えに用いるアップデートファイル３０１の構成を、図４に基づいて説明する。アップデートファイル３０１には情報処理装置を構成する全コントローラの制御プログラムが含まれている。つまり、情報処理装置の全コントローラの制御プログラムの、制御に好適なバージョンを組み合わせることで、アップデートファイル３０１を構築する。装置を構成する全コントローラの制御プログラムでアップデートファイル３０１を構成することによって、例えば１つのコントローラの制御プログラムだけを書き換えたせいで装置を構成するコントローラ間でのバージョンに整合性が取れないという問題がなくなる。
【００２８】
図４では走査制御部１０８用コントローラ２０１、保持機構１０６用のコントローラ２０２、照射ユニット１０３用のコントローラ２０３それぞれの制御プログラムを結合し、タグ情報３０２を付加している。
タグ情報３０２には、制御プログラム特定ＩＤ、制御プログラムバージョン番号、チェックサムが含まれている。制御プログラム特定ＩＤは、アップデートファイル３０１に含まれている複数の制御プログラムそれぞれが、どのコントローラに対応する制御プログラムなのかを特定可能なＩＤである。チェックサムは、各制御プログラムの正当性を保証するために用いられる。なお、チェックサムは、誤り検出符号の一例である。
【００２９】
前記アップデート管理用コントローラは、このタグ情報３０２を用いて、各種コントローラの制御プログラムのアップデートを行う。
具体的には、アップデート時に、アップデート管理用コントローラが各コントローラの現在の制御プログラムのバージョン番号を受信する。そのために、装置を構成する保持機構１０６用のコントローラ２０２や、照射ユニット１０３用のコントローラ２０３は、自制御プログラムのバージョン情報を各自の記憶領域に格納しておくことができるようになっている。
【００３０】
そして、各コントローラは、アップデート管理用コントローラに対して、自制御プログラムのバージョン番号と自身に割り振られたＩＤ番号、送信するデータの正当性を保証するチェックサム機構を送信する手段を持つ。これにより、各コントローラから送信するＩＤ番号やバージョン番号の正当性を保証することができ、誤った制御プログラムで更新されることを防ぐことができる。
【００３１】
その後、アップデート管理用コントローラでは、コントローラから受信した制御プログラムのバージョン番号、ＩＤ番号とアップデートファイル３０１のタグ情報３０２を比較する。そして、更新が必要なコントローラの制御プログラムとそのタグ情報３０２のみを通信回路２０４を通してブロードキャストする。この時、タグ情報に含まれるチェックサム機構により受信した制御プログラム、バージョン番号、ＩＤ番号の正当性を保証することができる。
【００３２】
装置を構成する保持機構１０６用のコントローラ２０２や、照射ユニット１０３用のコントローラ２０３は受信した制御プログラムのタグ情報のＩＤ番号を参照することで、自分宛の制御プログラムかを判断する。自分宛の制御プログラムだった場合、制御プログラムを受信し、アップデートを開始する。
【００３３】
この手順により、アップデート管理用コントローラでは、更新が必要な制御プログラムのみを転送することが可能となるため、データの転送量を抑えることができる。また、アップデート管理用コントローラでは、アップデートファイル３０１の必要な個所をブロー
ドキャストする処理のみで装置全体のアップデートを行うことが可能となる。そのため、装置を構成するコントローラの制御プログラムのバージョン番号などをデータベースで記憶する必要がなく、メモリ使用量も少なくすることができる。さらにデータベース管理などの処理を行う必要がないため、簡単に装置のアップデートを実現可能である。
【００３４】
以上をふまえ、本発明により制御プログラムをアップロードする際の具体的な手順について、図５及び図６に基づいて説明する。なお、図５はアップデート管理用コントローラ側の処理を示すフローチャートであり、図６はそれ以外のコントローラ側の処理を示すフローチャートである。
【００３５】
（アップデート管理用コントローラ側処理）
アップデート管理用コントローラ側では、まず、図５のステップＳ１００において、外部記憶装置２０１からアップデートファイル３０１を受信する。例えば、作業者によって、アップデートファイル３０１を格納した外部記憶装置２０１をアップデート管理用コントローラのＩ／Ｆ２１１に接続することでアップデートファイル３０１を転送する。アップデート時に作業者が行う作業はこれだけであり、装置を構成するコントローラそれぞれについて手作業で制御プログラムを書き換える必要はない。これにより、誤った制御プログラムで書き換えるなどのヒューマンエラーを防ぐことが可能となる。
【００３６】
ステップＳ１０１において、アップデートファイル３０１のタグ情報３０２に含まれているチェックサム機構により転送されたアップデートファイル３０１に誤りがあるかを判定する。
誤りがあった場合には、システムのアップデートは行わず、ステップＳ１１４において外部記憶装置２０１にエラー情報を転送し、アップデートを終了する。これにより誤った制御プログラムでアップデートをすることがなくなるため、装置を構成するコントローラの制御プログラムの正当性を保証することができる。
【００３７】
アップデートファイル３０１に誤りがなかった場合には、ステップＳ１０２において、アップデート管理用コントローラは、装置を構成するコントローラすべてに対してアップデートを開始するメッセージを送信する。図３の場合、保持機構１０６用のコントローラ２０２と照射ユニット１０３用のコントローラ２０３がメッセージ送信の対象となる。
【００３８】
ステップＳ１０３において、アップデート管理用コントローラは、アップデートを開始するメッセージを受信したコントローラからＩＤと制御プログラムのバージョン番号とチェックサム機構を受信する。この時チェックサム機構によって送られてきたＩＤと制御プログラムのバージョン番号の正当性を保証することが可能である。
【００３９】
なお、もし受信したＩＤと制御プログラムのバージョン番号がノイズなどの原因で正確な情報ではない場合もありうる。このときは、アップデート管理用コントローラは、管理対象のコントローラに対して、ＩＤと制御プログラムのバージョン番号を再送させるメッセージを送信しても良い。そして、コントローラ側から正しいＩＤと制御プログラムのバージョン番号が送られてくるまでＩＤと制御プログラムのバージョン番号の受信を繰り返す。
このような方式により、アップデート管理用コントローラが、装置を構成するすべてのコントローラの制御プログラムのバージョン番号を記憶、管理する必要がなくなるので、簡単な構成で装置全体のアップデートを行うことが可能となる。
【００４０】
ステップＳ１０４において、アップデート管理用コントローラは、ステップＳ１０３で受信したコントローラの制御プログラムのバージョン番号とＩＤをもとにアップデートファイル３０１内のタグ情報３０２を参照する。タグ情報３０２に書かれている制御プログ
ラムのバージョン番号と各コントローラから送られてきた制御プログラムのバージョン番号との比較を行う。この比較はすべてのコントローラの制御プログラムのバージョン番号と、そのコントローラに対応するタグ情報３０２のバージョン番号について行われる。
【００４１】
ステップＳ１０５において、ステップＳ１０４での比較結果を用いて、アップデート必要性の有無が判断される。具体的には、受信したすべてのコントローラの制御プログラムのバージョン番号の中に、タグ情報３０２に書かれた制御プログラムのバージョン番号の方が新しいものがあるかが判断される。１つでもあった場合、アップデート必要なコントローラと決定され、ステップＳ１０６に進む。
【００４２】
すべてのコントローラの制御プログラムの現在のバージョン番号がタグ情報のバージョン番号より新しい場合はステップＳ１１３に進み、すべてのコントローラに対してアップデートの終了を通知する。そしてコントローラにおけるアップデート作業は中止となる。これにより、必要な場合のみアップデート作業を行うことができるため、不必要なアップデートによって通常動作を停止することがなくなる。
【００４３】
ステップＳ１０６において、アップデート管理用コントローラは、アップデート状態に移行するメッセージをすべてのコントローラに対して転送する。こうして装置全体を通常動作からアップデート状態に移行することで、装置の通常動作を停止する。これにより、通常動作をおこなっている際に、特定のコントローラがアップデート中であることによって起きる通信エラーなどの問題を回避することができる。生体情報イメージング装置ではレーザ光源や、圧迫機構が制御されている。通信エラーによってそれらの安全機構が作動して、電源遮断などでアップデートに支障をきたしたり、不必要なエラーログが記憶されたり、警告がなったりする問題が起こりうる。アップデート状態に移行することで、これらの問題を回避することができる。
【００４４】
ステップＳ１０７において、アップデート管理用コントローラは、すべてのコントローラがアップデート状態に移行したことを確認する。
【００４５】
ステップＳ１０８において、アップデート管理用コントローラは、ステップＳ１０３で受信した制御プログラムのバージョン番号とＩＤと、タグ情報３０２を比較し、更新が必要か判断する。そして、アップデート管理用コントローラは、更新の必要なコントローラの制御プログラムにタグ情報を付加して、通信回路２０４を用いて順次ブロードキャストする。
【００４６】
ステップＳ１０９において、アップデート管理用コントローラは、制御プログラムのアップデートが終わったことをコントローラから受信する。この時受信するアップデート完了通知にはアップデート完了時の制御プログラムのバージョン番号やチェックサム機構が含まれており、チェックサム機構によって、通知された制御プログラムのバージョン番号が保証できる。
なお、通知された制御プログラムのバージョン番号に誤りがあった場合にはアップデート完了通知を再送させるメッセージを送信し、正しいバージョン番号が送られてくるまでアップデート完了通知の受信を繰り返す。アップデート管理用コントローラではアップデート完了通知とタグ情報３０２と比較することでアップデートが正確に行われたことを確認することができる。
【００４７】
ステップＳ１１０において、装置を構成するコントローラのアップデートが正常に行われたことを確認後、アップデート管理用コントローラ自身の制御プログラムのアップデートが必要かを判断する。
【００４８】
アップデート管理用コントローラのアップデートが必要な場合は、ステップＳ１１１において、アップデート管理用コントローラの制御プログラムをアップデートする。
一方、アップデート管理用コントローラのアップデートの必要がなかった場合、そのままステップＳ１１２に進む。
【００４９】
ステップＳ１１１でアップデートが終了した後、ステップ１１２で装置をリブートし、アップデートを完了する。
【００５０】
（コントローラ側処理）
コントローラは、まず、図６のステップＳ２００においてアップデート管理用コントローラからアップデート開始メッセージを受信する。
【００５１】
ステップＳ２０１において、コントローラは、記憶している自身に割り振られたＩＤ、制御プログラムのバージョン情報とチェックサム機構をアップデート管理用コントローラに送信する。
【００５２】
ステップＳ２０２において、アップデート管理用コントローラからのメッセージ受信を試み、メッセージ内容がアップデート状態に移行するものか判断する。メッセージ内容が移行するというものであれば、ステップＳ２０３に移行する。メッセージ内容が移行しないというものであれば、ステップＳ２１０へ移行し、アップデート処理を終了し、通常処理に戻る。
【００５３】
ステップＳ２０３において、コントローラは、アップデート管理用コントローラに対してアップデート状態に移行したことを通知するメッセージを送信する。
【００５４】
すべてのコントローラがアップデート状態に移行すると、ステップＳ２０４において、アップデート管理用コントローラは、アップデートが必要なコントローラの制御プログラムをすべてのコントローラに対してブロードキャストする。
ステップＳ２０５において、コントローラは、ブロードキャストされた制御プログラムを受信する。
【００５５】
ステップＳ２０６において、コントローラは、ステップＳ２０５で受信した制御プログラムが自身のものかを、送られてくるタグ情報３０２のＩＤと自身の記憶しているＩＤをもとに判断する。自分用の制御プログラムではなかった場合ステップＳ２０５に戻り、再度制御プログラムの受信を行う。
自身の制御プログラムを受信し、チェックサム機構により、制御プログラムが正しいものと判断した場合は、コントローラは、ステップＳ２０７において、制御プログラムの書き換えを行う。
【００５６】
なお、通知された制御プログラムに誤りがあった場合には制御プログラムを再送させるメッセージを送信し、正しい制御プログラムが送られてくるまで制御プログラムの受信を繰り返す。コントローラ自身が送られてくる制御プログラムが自身のものなのかを判断する手段を持つことで、アップデート管理用コントローラがアップデートファイル３０１を加工して、特定のコントローラあてのメッセージとして形成するなどの処理をする必要がなくなる。つまり、アップデート管理用コントローラではアップデートファイル３０１の必要な個所のみをタグ情報をふくめて、そのままブロードキャストするだけでよいことになる。このことで、アップデート管理用コントローラでの処理を簡略化することが可能となる。
【００５７】
ステップＳ２０８において、コントローラは、書き換えた制御プログラムのバージョン
番号を記憶する。
【００５８】
ステップＳ２０９において、コントローラは、ステップＳ２０８で記憶した制御プログラムのバージョン番号と自身のＩＤ番号、チェックサム機構をアップデート完了通知としてアップデート管理用コントローラに転送する。
【００５９】
以上でアップデートを終了し、アップデート管理用コントローラによってシステムがリブートされるのを待つ。
【符号の説明】
【００６０】
２０１：走査制御部用コントローラ，２０２：保持機構制御用コントローラ，２０３：照射ユニット制御用コントローラ，２１０：外部記憶装置，２１１：Ｉ／Ｆ，３０１：アップデートファイル，３０２：タグ情報
【図１】
2012128571.tif 000003
【図２】
2012128571.tif 000004
【図３】
2012128571.tif 000005
【図４】
2012128571.tif 000006
【図５】
2012128571.tif 000007
【図６】
2012128571.tif 000008