(57)【要約】【課題】複数の機器が使用するデータの管理を簡略化する。【解決手段】機器は、特定の機器に使用される旧第１データと、旧第１データの更新後のデータである新第１データとの差分を示す第１差分情報を受信する受信部と、第１差分情報と記憶部に記憶された旧第１データとに基づいて、新第１データを生成し、旧第１データと自機に使用される旧第２データとの差分を示す第２差分情報と、生成した新第１データとに基づいて、旧第２データの更新後のデータである新第２データを生成する生成部とを備える。【選択図】図４
2020198014.tif 000002
【特許請求の範囲】
【請求項１】
特定の機器に使用される旧第１データと、前記旧第１データの更新後のデータである新第１データとの差分を示す第１差分情報を受信する受信部と、
前記第１差分情報と記憶部に記憶された前記旧第１データとに基づいて、前記新第１データを生成し、前記旧第１データと自機に使用される旧第２データとの差分を示す第２差分情報と、生成した前記新第１データとに基づいて、前記旧第２データの更新後のデータである新第２データを生成する生成部と、
を備えたことを特徴とする機器。
【請求項２】
前記生成部は、前記記憶部に記憶された前記旧第２データと前記第２差分情報とに基づいて前記旧第１データを生成して、生成した前記旧第１データを前記記憶部に記憶させ、前記第１差分情報と前記旧第１データとに基づいて、前記新第１データを生成する
ことを特徴とする請求項１記載の機器。
【請求項３】
前記第２差分情報は、前記特定の機器の型式と、自機の型式とを含む
ことを特徴とする請求項１または２に記載の機器。
【請求項４】
コンピュータに、
特定の機器に使用される旧第１データと、前記旧第１データの更新後のデータである新第１データとの差分を示す第１差分情報を受信し、
前記第１差分情報と記憶部に記憶された前記旧第１データとに基づいて、前記新第１データを生成し、前記旧第１データと自機に使用される旧第２データとの差分を示す第２差分情報と、生成した前記新第１データとに基づいて、前記旧第２データの更新後のデータである新第２データを生成する、
処理を実行させるためのデータ生成プログラム。
【請求項５】
コンピュータが、
特定の機器に使用される旧第１データと、前記旧第１データの更新後のデータである新第１データとの差分を示す第１差分情報を受信し、
前記第１差分情報と記憶部に記憶された前記旧第１データとに基づいて、前記新第１データを生成し、前記旧第１データと自機に使用される旧第２データとの差分を示す第２差分情報と、生成した前記新第１データとに基づいて、前記旧第２データの更新後のデータである新第２データを生成する、
処理を実行することを特徴とするデータ生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機器、データ生成プログラム、およびデータ生成方法に関する。
【背景技術】
【０００２】
複数の機器に使用されたデータ（例えば、ファームウェア）を更新する際に、例えば、情報処理装置が、更新に用いるパッチファイルを全ての機器に送信し、各機器が、送信されたパッチファイルを用いて自機のデータを更新する方法が用いられる。
【０００３】
関連する技術として、新プログラムと旧プロブラムとを記憶し、旧プログラムを新プログラムに書き換えるための所定の情報を生成する技術が提案されている（例えば、特許文献１参照）。
【０００４】
また、関連する技術として、差分データを圧縮した差分圧縮データを分割してなる複数の分割データ、および旧プログラムに基づいて新プログラムを復元する技術が提案されている（例えば、特許文献２参照）。
【０００５】
また、関連する技術として、配信データから更新データを解凍し、解凍された更新データを用いて、指定された更新方式に従って更新後の新プログラムデータを復元する技術が提案されている（例えば、特許文献３参照）。
【０００６】
また、関連する技術として、差分データを旧版データに適用することにより、旧版データを書き換えて新版データを作成する技術が提案されている（例えば、特許文献４参照）。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００４−２２７５２０号公報
【特許文献２】特開２０１７−１９９１８３号公報
【特許文献３】特開２０１８−１８０９４８号公報
【特許文献４】特開２００９−２７７０６２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
管理対象の複数の機器に使用されるデータがそれぞれ異なる場合に、機器毎にデータを管理すると管理が煩雑となる。例えば、機器毎にデータを管理する場合、データの更新が発生した際に、機器が使用するデータを機器毎に送信する必要がある。
【０００９】
本発明は、複数の機器が使用するデータの管理を簡略化することを目的の１つとする。
【課題を解決するための手段】
【００１０】
本実施の形態の機器は、その一態様では、特定の機器に使用される旧第１データと、前記旧第１データの更新後のデータである新第１データとの差分を示す第１差分情報を受信する受信部と、前記第１差分情報と記憶部に記憶された前記旧第１データとに基づいて、前記新第１データを生成し、前記旧第１データと自機に使用される旧第２データとの差分を示す第２差分情報と、生成した前記新第１データとに基づいて、前記旧第２データの更新後のデータである新第２データを生成する生成部と、を備える。
【００１１】
本実施の形態のデータ生成プログラムは、その一態様では、コンピュータに、特定の機器に使用される旧第１データと、前記旧第１データの更新後のデータである新第１データとの差分を示す第１差分情報を受信し、前記第１差分情報と記憶部に記憶された前記旧第１データとに基づいて、前記新第１データを生成し、前記旧第１データと自機に使用される旧第２データとの差分を示す第２差分情報と、生成した前記新第１データとに基づいて、前記旧第２データの更新後のデータである新第２データを生成する、処理を実行させる。
【００１２】
本実施の形態のデータ生成方法は、その一態様では、コンピュータが、特定の機器に使用される旧第１データと、前記旧第１データの更新後のデータである新第１データとの差分を示す第１差分情報を受信し、前記第１差分情報と記憶部に記憶された前記旧第１データとに基づいて、前記新第１データを生成し、前記旧第１データと自機に使用される旧第２データとの差分を示す第２差分情報と、生成した前記新第１データとに基づいて、前記旧第２データの更新後のデータである新第２データを生成する、処理を実行する。
【発明の効果】
【００１３】
本発明によれば、複数の機器が使用するデータの管理を簡略化することができる。
【図面の簡単な説明】
【００１４】
【図１】実施形態のシステム構成の一例を示す図である。
【図２】各機器に対応するパッチファイルを個別に生成して送信する例を示す図である。
【図３】情報処理装置の機能構成の一例を示す図である。
【図４】機器の機能構成の一例を示す図である。
【図５】機器情報変換テーブルの一例を示す図である。
【図６】データ生成処理の一例を示す図である。
【図７】情報処理装置の処理の一例を示すフローチャートである。
【図８】機器の処理の一例を示すフローチャートである。
【図９】情報処理装置のハードウェア構成の一例を示す図である。
【図１０】機器のハードウェア構成の一例を示す図である。
【発明を実施するための形態】
【００１５】
図１は、実施形態のシステム構成の一例を示す図である。実施形態のシステムは、情報処理装置１と機器２−１〜機器２−ｎとを含む。なお、機器２−１〜２−ｎを区別しない場合、機器２と記載する。
【００１６】
情報処理装置１は、例えば、パーソナルコンピュータ、またはサーバであり、機器２の管理に用いられる。情報処理装置１は、機器２のデータ更新に用いるパッチファイルを機器２に送信する。本実施形態における各データは、例えば、機器２のハードウェアを制御するファームウェアである。
【００１７】
機器２は、情報処理装置１から受信したパッチファイルを用いて、自機に搭載されたデータを更新する。機器２は、例えば、スマートメータ、センサ等である。機器２は、コンピュータの一例である。各機器２に使用されるデータは機器２毎に異なっているとする。
【００１８】
本実施形態において、情報処理装置１と機器２との間の通信には、無線通信を適用するが、有線通信を適用してもよい。情報処理装置１と機器２との間の通信は、例えば、ＬＡＮ（Local Area Network）等のネットワークを介して行われる。
【００１９】
図２は、各機器に対応するパッチファイルを個別に生成して送信する例を示す図である。図２に示す例では、情報処理装置１は、２台の機器２（機器２−１、機器２−２）に対応するデータを更新するためのパッチファイルをそれぞれ生成し、送信する。
【００２０】
情報処理装置１は、機器２−１に使用されている旧第１データと、旧第１データの更新後のデータである新第１データとに基づいて、旧第１データから新第１データへの更新に用いる第１パッチファイルを生成する。同様に、情報処理装置１は、機器２−２に使用されている旧第２データと、旧第２データの更新後のデータである新第２データとに基づいて、旧第２データから新第２データへの更新に用いる第２パッチファイルを生成する。
【００２１】
情報処理装置１は、第１パッチファイルを機器２−１に送信し、第２パッチファイルを機器２−２に送信する。
【００２２】
機器２−１は、第１パッチファイルを受信し、旧第１データに第１パッチファイルを適用して、新第１データを生成する。同様に、機器２−２は、第２パッチファイルを受信し、旧第２データに第２パッチファイルを適用して、新第２データを生成する。
【００２３】
以上の処理により、各機器２のデータ更新が行われる。しかし、図２に示す例では、情報処理装置１は、各機器２に対応するパッチファイルを生成し、管理する必要がある。すなわち、機器２の数が多いほど、機器２が使用するデータの管理が煩雑となり、パッチファイルの生成処理量も増加する。
【００２４】
図３は、情報処理装置１の機能構成の一例を示す図である。情報処理装置１は、第１生成部１１と送信部１２と第１記憶部１３とを含む。情報処理装置１は、複数の機器２の管理に用いられる。なお、複数の機器２は、特定の機器２を含み、特定の機器２に使用されるデータは、他の機器２に使用されるデータを更新する際の基礎データとして用いられる。
【００２５】
第１生成部１１は、特定の機器２に使用されるデータである旧第１データと、この旧第１データの更新後のデータである新第１データとに基づいて、旧第１データと新第１データとの差分を示す第１差分情報を生成する。旧第１データおよび新第１データは、例えば、特定の機器２のハードウェアを制御するファームウェアである。第１生成部１１は、例えば、旧第１データと新第１データと比較して、旧第１データと新第１データとの差分を示す第１差分情報を生成する。第１差分情報は、例えば、旧第１データから新第１データへの更新に用いるパッチファイルである。第１生成部１１は、第１差分情報を圧縮してもよい。
【００２６】
送信部１２は、第１生成部１１が生成した第１差分情報を、各機器２に送信する。第１差分情報が圧縮されている場合、送信部１２は、圧縮された第１差分情報を各機器２に送信する。第１記憶部１３は、特定の機器２に使用される旧第１データと新第１データとを予め記憶している。
【００２７】
なお、本実施形態の各処理は、旧第１データと新第１データとの差分が、各機器２に共通する内容である場合に実施される。例えば、旧第１データと新第１データとの差分が、各機器２に共通する内容ではなく、機器２毎に異なる内容（例えば、型式）である場合、情報処理装置１は、第１差分情報の生成および送信を行わず、表示装置にエラーを示すメッセージを送信する。
【００２８】
図４は、機器２の機能構成の一例を示す図である。機器２は、受信部２１と第２生成部２２と第２記憶部２３とを含む。受信部２１は、情報処理装置１から、第１差分情報を受信する。以下、機器２の第２生成部２２および第２記憶部２３の機能を、機器２が特定の機器２に該当しない場合と該当する場合のそれぞれについて説明する。
【００２９】
＜特定の機器２に該当しない場合＞
第２生成部２２は、旧第１データと自機に使用されるデータである旧第２データとの差分を示す第２差分情報と、旧第２データとを第２記憶部２３から取得する。第２生成部２２は、第２差分情報と旧第２データとに基づいて、旧第１データを生成し、生成した旧第１データを第２記憶部２３に記憶させる。第２差分情報は、例えば、特定の機器２の型式と自機の型式とを含む機器情報変換テーブルである。第２差分情報は、例えば、特定の機器２の設定情報と自機の設定情報とを含んでいてもよい。
【００３０】
第２生成部２２は、受信部２１が受信した第１差分情報と第２記憶部２３に記憶された旧第１データとに基づいて、新第１データを生成する。第２生成部２２は、受信部２１が受信した第１差分情報が圧縮されている場合、解凍後の第１差分情報と旧第１データとに基づいて、新第１データを生成する。そして、第２生成部２２は、第２記憶部２３から取得した第２差分情報と、生成した新第１データとに基づいて、旧第２データの更新後のデータである新第２データを生成する。旧第２データおよび新第２データは、例えば、機器２のハードウェアを制御するファームウェアである。機器２は、生成した新第２データを、旧第２データと置き換えて、使用する。
【００３１】
第２記憶部２３は、旧第２データと第２差分情報とを予め記憶している。また、第２記憶部２３は、第２生成部２２が生成した旧第１データと新第１データとを記憶する。
【００３２】
生成された新第１データは、次回のデータ更新の際に、旧第１データとして扱われる。よって、次回のデータ更新の際には、旧第１データを生成せず、第２記憶部２３に記憶された旧第１データ（前回のデータ更新時に生成された新第１データ）を用いてもよい。
【００３３】
＜特定の機器２に該当する場合＞
機器２が、上記特定の機器２に該当する場合、旧第１データを生成する処理、新第２データを生成する処理を行わない。すなわち、第２生成部２２は、受信した第１差分情報と第２記憶部２３に記憶されている旧第１データとに基づいて、新第１データを生成する処理のみ実行する。機器２は、生成した新第１データを、旧第１データと置き換えて、使用する。
【００３４】
図５は、機器情報変換テーブルの一例を示す図である。上述のように機器情報変換テーブルは、第２差分情報の一例である。図５に示すように、機器情報変換テーブルは、機器型式、先頭アドレス、データ量（Ｂｙｔｅ）を含む。なお、先頭アドレスは、データ内において、機器型式が記録されている先頭位置を示す。データ量は、機器型式のデータ量を示す。機器情報変換テーブルに含まれる型式は、特定の機器２および自機の型式であるとする。
【００３５】
本実施形態では、機器２に使用されるデータのうち、機器２毎に異なる部分は、機器型式のみであるとする。その場合、機器２は、図５の例に示す機器情報変換テーブルを参照して、データ内の型式を変更することにより、特定の機器２に使用されるデータを自機に使用されるデータに変換したり、自機に使用されるデータを特定の機器２に使用されるデータに変換することが可能となる。機器２毎に設定情報が異なる場合、機器情報変換テーブルが、特定の機器２の設定情報と自機の設定情報とを含んでいてもよい。
【００３６】
図６は、データ生成処理の一例を示す図である。情報処理装置１の第１生成部１１は、機器２−１に使用されるデータである旧第１データと、この旧第１データの更新後のデータである新第１データとを比較して、旧第１データから新第１データへの更新に用いる第１パッチファイルを生成する。そして、情報処理装置１の送信部１２は、第１パッチファイルを機器２−１および機器２−２に送信する。
【００３７】
機器２−１の第２生成部２２は、受信した第１パッチファイルと第２記憶部２３に記憶されている旧第１データとに基づいて、新第１データを生成する。
【００３８】
機器２−２の第２生成部２２は、第２記憶部２３に記憶された機器情報変換テーブルと、旧第２データとに基づいて、旧第１データを生成する。そして、第２生成部２２は、受信した第１パッチファイルと生成した旧第１データとに基づいて、新第１データを生成する。そして、第２生成部２２は、第２記憶部２３に記憶された機器情報変換テーブルと、生成した新第１データとに基づいて、新第２データを生成する。
【００３９】
以上の処理により、各機器２のデータが更新される。なお、機器２が３台以上存在する場合、機器２−１以外の各機器２の処理は、機器２−２と同様であるとする。図６に示す例では、機器２−１が特定の機器２に該当する。
【００４０】
図７は、情報処理装置１の処理の一例を示すフローチャートである。情報処理装置１は、ユーザから差分情報の生成指示を受け付けているか判定する（ステップＳ１０１）。ステップＳ１０１でＮＯの場合、情報処理装置１は、ステップＳ１０２の処理に進まず、待機する。
【００４１】
ステップＳ１０１でＹＥＳの場合、第１生成部１１は、特定の機器２に使用されるデータである旧第１データと、この旧第１データの更新後のデータである新第１データとに基づいて、旧第１データと新第１データとの差分を示す第１差分情報を生成する（ステップＳ１０１）。送信部１２は、第１生成部１１が生成した第１差分情報を、各機器２に送信する（ステップＳ１０３）。
【００４２】
図８は、機器２の処理の一例を示すフローチャートである。なお、図８に示すフローチャートは、特定の機器２に該当しない機器２（例えば、図６に示す機器２−２）の処理を示す。
【００４３】
機器２は、受信部２１が情報処理装置１から第１差分情報を受信したか判定する（ステップＳ２０１）。第１差分情報は、特定の機器２に使用される旧第１データと、旧第１データの更新後のデータである新第１データとの差分を示す情報であり、例えば、パッチファイルである。受信部２１が第１差分情報を受信しない場合（ステップＳ２０１でＮＯ）、機器２は、第１差分情報を受信するまでステップＳ２０２に進まず、待機する。
【００４４】
受信部２１が第１差分情報を受信した場合（ステップＳ２０１でＹＥＳ）、第２生成部２２は、旧第１データと自機に使用される旧第２データとの差分を示す第２差分情報と、旧第２データとを第２記憶部２３から取得し、取得した第２差分情報と旧第２データとに基づいて、旧第１データを生成し、第２記憶部２３に記憶させる（ステップＳ２０２）。
【００４５】
第２生成部２２は、受信部２１が受信した第１差分情報と第２記憶部２３に記憶された旧第１データとに基づいて、新第１データを生成する（ステップＳ２０３）。そして、第２生成部２２は、第２記憶部２３に記憶された第２差分情報と、生成した新第１データとに基づいて、新第２データを生成する（ステップＳ２０４）。
【００４６】
以上のように、機器２は、特定の機器２に使用される旧第１データと新第１データとの差分である第１差分情報を用いて、自機に使用するデータを生成する。これにより、情報処理装置１は機器２毎の差分情報を生成せず、共通の情報（第１差分情報）を全機器２に送信して、全機器２のデータを更新することが可能になる。これにより、複数の機器が使用するデータの管理を簡略化することができる。
【００４７】
図９は、情報処理装置１のハードウェア構成の一例を示す図である。図９の例に示すように、情報処理装置１において、バス１００に、プロセッサ１１１とメモリ１１２と補助記憶装置１１３と通信インタフェース１１４と媒体接続部１１５と入力装置１１６と出力装置１１７とが接続される。
【００４８】
プロセッサ１１１は、メモリ１１２に展開されたプログラムを実行する。実行されるプログラムは、例えば、実施形態における処理を行うプログラムである。
【００４９】
メモリ１１２は、例えば、ＲＡＭ（Random Access Memory）である。補助記憶装置１１３は、例えばハードディスクドライブや半導体メモリ等が適用される。補助記憶装置１１３が、実施形態の処理を行うプログラムを記憶していてもよい。
【００５０】
通信インタフェース１１４は、ＬＡＮ、ＷＡＮ（Wide Area Network）等の通信ネットワークに接続され、通信に伴うデータ変換等を行う。媒体接続部１１５は、可搬型記録媒体１１８が接続可能なインタフェースである。可搬型記録媒体１１８は、例えば、光学式ディスク、または半導体メモリである。可搬型記録媒体１１８に実施形態の処理を行うプログラムが記録されていてもよい。
【００５１】
メモリ１１２、補助記憶装置１１３および可搬型記録媒体１１８は、コンピュータが読み取り可能であって有形の記憶媒体であり、信号搬送波のような一時的な媒体ではなく、非一時的な媒体である。
【００５２】
入力装置１１６は、例えば、キーボード、ポインティングデバイスであり、ユーザからの指示及び情報等の入力を受け付ける。出力装置１１７は、例えば、表示装置、プリンタ、スピーカであり、ユーザへの問い合わせ又は指示、及び処理結果等を出力する。
【００５３】
図３に示す第１記憶部１３は、例えば、メモリ１１２、補助記憶装置１１３または可搬型記録媒体１１８等により実現される。図３に示す第１生成部１１、および送信部１２は、例えば、メモリ１１２に展開されたプログラムをプロセッサ１１１が実行することにより実現される。
【００５４】
なお、情報処理装置１が図９に示す全ての構成要素を含んでいなくてもよく、一部の構成要素が省略されていてもよい。また、一部の構成要素が情報処理装置１の外部の装置に存在し、情報処理装置１がその装置に接続して、その装置内の構成要素を利用してもよい。
【００５５】
図１０は、機器２のハードウェア構成の一例を示す図である。図１０の例に示すように、機器２において、バス２００、プロセッサ２１１とメモリ２１２と補助記憶装置２１３と通信インタフェース２１４と入力装置２１５と出力装置２１６とが接続される。
【００５６】
プロセッサ２１１は、メモリ２１２に展開されたプログラムを実行する。実行されるプログラムは、例えば、実施形態における処理を行うデータ生成プログラムである。
【００５７】
メモリ２１２は、例えば、ＲＡＭである。補助記憶装置２１３は、例えば、ＲＯＭ（Read Only Memory）である。補助記憶装置２１３が、実施形態の処理を行うデータ生成プログラムを記憶していてもよい。メモリ２１２および補助記憶装置２１３は、コンピュータが読み取り可能であって有形の記憶媒体であり、信号搬送波のような一時的な媒体ではなく、非一時的な媒体である。
【００５８】
通信インタフェース２１４は、ＬＡＮ、ＷＡＮ等の通信ネットワークに接続され、通信に伴うデータ変換等を行う。入力装置２１５は、例えば、押しボタン、タッチパネル等であり、ユーザからの指示及び情報等の入力を受け付ける。出力装置２１６は、例えば、表示装置等であり、ユーザへの問い合わせ又は指示、及び処理結果等を出力する。
【００５９】
図４に示す第２記憶部２３は、例えば、メモリ２１２、または補助記憶装置２１３により実現される。図４に示す受信部２１、および第２生成部２２は、例えば、メモリ２１２に展開されたプログラムをプロセッサ２１１が実行することにより実現される。
【００６０】
なお、機器２が図１０に示す全ての構成要素を含んでいなくてもよく、一部の構成要素が省略されていてもよい。また、一部の構成要素が機器２の外部の装置に存在し、機器２がその装置に接続して、その装置内の構成要素を利用してもよい。
【００６１】
本実施形態は、以上に述べた実施の形態に限定されるものではなく、本実施形態の要旨を逸脱しない範囲内で様々な変更、追加、省略が適用可能である。
【符号の説明】
【００６２】
１        情報処理装置
２        機器
１１      第１生成部
１２      送信部
１３      第１記憶部
２１      受信部
２２      第２生成部
２３      第２記憶部
１００，２００    バス
１１１，２１１    プロセッサ
１１２，２１２    メモリ
１１３，２１３    補助記憶装置
１１４，２１４    通信インタフェース
１１５    媒体接続部
１１６，２１５    入力装置
１１７，２１６    出力装置
１１８    可搬型記録媒体
【図１】
2020198014.tif 000003
【図２】
2020198014.tif 000004
【図３】
2020198014.tif 000005
【図４】
2020198014.tif 000006
【図５】
2020198014.tif 000007
【図６】
2020198014.tif 000008
【図７】
2020198014.tif 000009
【図８】
2020198014.tif 000010
【図９】
2020198014.tif 000011
【図１０】
2020198014.tif 000012