(57)【要約】      （修正有）【課題】異常データを受信する等の問題が発生した場合であっても、内部処理で正常な状態に復旧する。【解決手段】情報処理装置は、機器を特定する機器情報取得部３０１と、例外が発生したときに実行する例外処理を定義する例外処理シーケンス定義情報と、前記例外処理シーケンス定義情報を指定して、機器からデータを取得するためのシーケンスを定義する取得シーケンス定義情報とを機器ごとに記憶する定義情報記憶部３０２と、機器情報取得部３０１が特定した機器に応じた取得シーケンス定義情報に基づいて機器から送信されたデータを取得する取得シーケンス実行部３０４と、取得シーケンス実行部が取得したデータに例外が発生した場合に、取得シーケンス実行部３０４が実行する取得シーケンス定義情報に指定された例外処理シーケンス定義情報に基づいて例外処理を実行する例外処理シーケンス実行部３０５と、を備える。【選択図】図３
2016091327.tif 000002
【特許請求の範囲】
【請求項１】
機器と通信接続される情報処理装置であって、
前記機器に関する情報を取得して前記機器を特定する機器特定部と、
例外が発生したときに実行する例外処理を定義する例外処理シーケンス定義情報と、前記例外処理シーケンス定義情報を指定して、機器からデータを取得するためのシーケンスを定義する取得シーケンス定義情報とを機器ごとに記憶する定義情報記憶部と、
前記機器特定部が特定した前記機器に応じた取得シーケンス定義情報を前記定義情報記憶部から読み出し、読み出した前記取得シーケンス定義情報に基づいて前記機器から送信されたデータを取得する取得シーケンス実行部と、
前記取得シーケンス実行部が取得したデータに例外が発生した場合に、前記取得シーケンス実行部が実行する前記取得シーケンス定義情報に指定された例外処理シーケンス定義情報に基づいて例外処理を実行する例外処理シーケンス実行部と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記定義情報記憶部は、データフォーマットを定義するフォーマット定義情報を機器ごとに記憶し、
前記機器特定部が特定した前記機器に応じたフォーマット定義情報を前記定義情報記憶部から読み出し、読み出したフォーマット定義情報に基づいて前記機器から送信されたデータのデータフォーマットを変換するフォーマット変換部と、
前記フォーマット変換部が変換したデータフォーマットで前記機器から送信された前記データを送信するデータ送信部と、
をさらに備えることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
機器と通信接続される情報処理装置とを備える情報処理システムであって、
前記機器は、機器に関する情報を送信し、
前記情報処理装置は、
前記機器に関する情報に基づいて前記機器を特定する機器特定部と、
例外が発生したときに実行する例外処理を定義する例外処理シーケンス定義情報と、前記例外処理シーケンス定義情報を指定して、機器からデータを取得するためのシーケンスを定義する取得シーケンス定義情報とを機器ごとに記憶する定義情報記憶部と、
前記機器特定部が特定した前記機器に応じた取得シーケンス定義情報を前記定義情報記憶部から読み出し、読み出した前記取得シーケンス定義情報に基づいて前記機器から送信されたデータを取得する取得シーケンス実行部と、
前記取得シーケンス実行部が取得したデータに例外が発生した場合に、前記取得シーケンス実行部が実行する前記取得シーケンス定義情報に指定された例外処理シーケンス定義情報に基づいて例外処理を実行する例外処理シーケンス実行部と、
を備えることを特徴とする情報処理システム。
【請求項４】
機器と通信接続される情報処理装置における情報処理方法であって、
前記機器に関する情報を取得して前記機器を特定する機器特定過程と、
例外が発生したときに実行する例外処理を定義する例外処理シーケンス定義情報と、前記例外処理シーケンス定義情報を指定して、機器からデータを取得するためのシーケンスを定義する取得シーケンス定義情報とを機器ごとに記憶する定義情報記憶部から、前記機器特定過程が特定した前記機器に応じた取得シーケンス定義情報を読み出し、読み出した前記取得シーケンス定義情報に基づいて前記機器から送信されたデータを取得する取得シーケンス実行過程と、
前記取得シーケンス実行過程が取得したデータに例外が発生した場合に、前記取得シーケンス実行過程が実行する前記取得シーケンス定義情報に指定された例外処理シーケンス定義情報に基づいて例外処理を実行する例外処理シーケンス実行過程と、
を有することを特徴とする情報処理方法。
【請求項５】
機器と通信接続される情報処理装置のコンピュータに、
前記機器に関する情報を取得して前記機器を特定する機器特定ステップと、
例外が発生したときに実行する例外処理を定義する例外処理シーケンス定義情報と、前記例外処理シーケンス定義情報を指定して、機器からデータを取得するためのシーケンスを定義する取得シーケンス定義情報とを機器ごとに記憶する定義情報記憶部から、前記機器特定ステップが特定した前記機器に応じた取得シーケンス定義情報を読み出し、読み出した前記取得シーケンス定義情報に基づいて前記機器から送信されたデータを取得する取得シーケンス実行ステップと、
前記取得シーケンス実行ステップが取得したデータに例外が発生した場合に、前記取得シーケンス実行ステップが実行する前記取得シーケンス定義情報に指定された例外処理シーケンス定義情報に基づいて例外処理を実行する例外処理シーケンス実行ステップと、
を実行させるための情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理システム、情報処理方法および情報処理プログラムに関する。
【背景技術】
【０００２】
パーソナルコンピュータなどの情報処理装置により、複数の機器から出力されるデータを収集するものがある。例えば、特許文献１に記載の技術は、被測定者の健康状態を測定し、測定結果を表わす複数の測定値を、測定値を管理する情報取得装置に対して送信する測定データ通信装置であって、複数の測定値の属性を定義する属性定義列と、属性定義列と一意に対応するコード値とから、通信情報を生成する通信情報生成手段と、コード値と複数の測定値とから、測定データを生成する測定データ生成手段と、通信情報および測定データを情報取得装置に送信する送信手段とを備えるものである。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−１１７２３８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載の技術では、異常データを受信する等の問題が発生した場合に、通知（確認あり）通信送信先ＡＥからの確認通知通信が受信されない場合又は、確認通知通信の誤り確認内容が誤りであったときは、同じ内容のデータフレームを繰り返し送信するため、再送しても状況が変わらないと復旧が出来ない、という問題がある。
【０００５】
本発明は上記の点に鑑みてなされたものであり、異常データを受信する等の問題が発生した場合であっても、内部処理で正常な状態に復旧することができる情報処理装置、情報処理システム、情報処理方法および情報処理プログラムを提供することを課題とする。
【課題を解決するための手段】
【０００６】
（１）本発明は上記の課題を解決するためになされたものであり、本発明の第１の態様は、機器と通信接続される情報処理装置であって、前記機器に関する情報を取得して前記機器を特定する機器特定部と、例外が発生したときに実行する例外処理を定義する例外処理シーケンス定義情報と、前記例外処理シーケンス定義情報を指定して、機器からデータを取得するためのシーケンスを定義する取得シーケンス定義情報とを機器ごとに記憶する定義情報記憶部と、前記機器特定部が特定した前記機器に応じた取得シーケンス定義情報を前記定義情報記憶部から読み出し、読み出した前記取得シーケンス定義情報に基づいて前記機器から送信されたデータを取得する取得シーケンス実行部と、前記取得シーケンス実行部が取得したデータに例外が発生した場合に、前記取得シーケンス実行部が実行する前記取得シーケンス定義情報に指定された例外処理シーケンス定義情報に基づいて例外処理を実行する例外処理シーケンス実行部と、を備えることを特徴とする情報処理装置である。
【０００７】
（２）また、本発明の第２の態様は、機器と通信接続される情報処理装置とを備える情報処理システムであって、前記機器は、機器に関する情報を送信し、前記情報処理装置は、前記機器に関する情報に基づいて前記機器を特定する機器特定部と、例外が発生したときに実行する例外処理を定義する例外処理シーケンス定義情報と、前記例外処理シーケンス定義情報を指定して、機器からデータを取得するためのシーケンスを定義する取得シーケンス定義情報とを機器ごとに記憶する定義情報記憶部と、前記機器特定部が特定した前記機器に応じた取得シーケンス定義情報を前記定義情報記憶部から読み出し、読み出した前記取得シーケンス定義情報に基づいて前記機器から送信されたデータを取得する取得シーケンス実行部と、前記取得シーケンス実行部が取得したデータに例外が発生した場合に、前記取得シーケンス実行部が実行する前記取得シーケンス定義情報に指定された例外処理シーケンス定義情報に基づいて例外処理を実行する例外処理シーケンス実行部と、を備えることを特徴とする情報処理システムである。
【０００８】
（３）また、本発明の第３の態様は、機器と通信接続される情報処理装置における情報処理方法であって、前記機器に関する情報を取得して前記機器を特定する機器特定過程と、例外が発生したときに実行する例外処理を定義する例外処理シーケンス定義情報と、前記例外処理シーケンス定義情報を指定して、機器からデータを取得するためのシーケンスを定義する取得シーケンス定義情報とを機器ごとに記憶する定義情報記憶部から、前記機器特定過程が特定した前記機器に応じた取得シーケンス定義情報を読み出し、読み出した前記取得シーケンス定義情報に基づいて前記機器から送信されたデータを取得する取得シーケンス実行過程と、前記取得シーケンス実行過程が取得したデータに例外が発生した場合に、前記取得シーケンス実行過程が実行する前記取得シーケンス定義情報に指定された例外処理シーケンス定義情報に基づいて例外処理を実行する例外処理シーケンス実行過程と、を有することを特徴とする情報処理方法である。
【０００９】
（４）また、本発明の第４の態様は、機器と通信接続される情報処理装置のコンピュータに、前記機器に関する情報を取得して前記機器を特定する機器特定ステップと、例外が発生したときに実行する例外処理を定義する例外処理シーケンス定義情報と、前記例外処理シーケンス定義情報を指定して、機器からデータを取得するためのシーケンスを定義する取得シーケンス定義情報とを機器ごとに記憶する定義情報記憶部から、前記機器特定ステップが特定した前記機器に応じた取得シーケンス定義情報を読み出し、読み出した前記取得シーケンス定義情報に基づいて前記機器から送信されたデータを取得する取得シーケンス実行ステップと、前記取得シーケンス実行ステップが取得したデータに例外が発生した場合に、前記取得シーケンス実行ステップが実行する前記取得シーケンス定義情報に指定された例外処理シーケンス定義情報に基づいて例外処理を実行する例外処理シーケンス実行ステップと、を実行させるための情報処理プログラムである。
【発明の効果】
【００１０】
本発明によれば、異常データを受信する等の問題が発生した場合であっても、内部処理で正常な状態に復旧することができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の第１の実施形態に係る情報処理システムの構成の一例を示す概略ブロック図である。
【図２】第１の実施形態に係る情報処理装置のハードウェア構成の一例を示すハードウェア構成図である。
【図３】第１の実施形態に係る情報処理装置の機能構成の一例を示す概略ブロック図である。
【図４】第１の実施形態に係る定義情報記憶部が記憶するシーケンス定義情報の一例を示す概略図である。
【図５】第１の実施形態に係る変換処理部のデータ処理の一例を示すフローチャートである。
【図６】本発明の第２の実施形態に係る情報処理装置の機能構成の一例を示す概略ブロック図である。
【図７】第２の実施形態に係る定義情報記憶部が記憶するデータ定義および変換規則を含むフォーマット定義情報の一例を示すテーブルである。
【図８】第２の実施形態に係る送信データのデータフォーマットの一例を示す概略図である。
【図９】第２の実施形態に係る健康機器から送信される測定データおよびデータフォーマットの一例を示す概略図である。
【図１０】第２の実施形態に係る健康機器から送信される測定データおよびデータフォーマットの他の一例を示す概略図である。
【図１１】第２の実施形態に係るフォーマット変換部が生成した送信データおよびデータフォーマットの一例を示す概略図である。
【図１２】第２の実施形態に係る変換処理部のデータ処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下、図面を参照しながら本発明の実施形態について詳しく説明する。
（第１の実施形態）
まず、本発明の第１の実施形態について説明する。
図１は、本発明の第１の実施形態に係る情報処理システムＳ１の構成の一例を示す概略ブロック図である。
図１に示すように、情報処理システムＳ１は、データ収集サーバ装置１と、定義情報サーバ装置２と、情報処理装置３と、健康機器４と、を含んで構成される。情報処理装置３は、記憶部３１と、入力部３２と、第２通信部３３と、制御部３４と、第１通信部３５と、表示部３６と、を含んで構成される。
【００１３】
データ収集サーバ装置１は、インターネットなどの通信路を介して、情報処理装置３に通信接続されている。なお、データ収集サーバ装置１には、複数の情報処理装置３が通信接続されていてもよい。データ収集サーバ装置１は、後述する情報処理装置３が健康機器４から受信した測定データをデータ変換し、データ変換した測定データのデータフォーマットを変換して生成した送信データを記憶する。データ収集サーバ装置１は、情報処理装置３から後述する取得シーケンスに関する問い合わせを受信すると、当該問い合わせに対する応答を返信する。
【００１４】
定義情報サーバ装置２は、インターネットなどの通信路を介して、情報処理装置３に通信接続されている。なお、定義情報サーバ装置２には、複数の情報処理装置３が通信接続されていてもよい。定義情報サーバ装置２は、健康機器４を特定するための機器特定情報に対応する定義情報を記憶している。定義情報には、シーケンス定義情報と、メッセージ定義情報とが含まれる。シーケンス定義情報は、機器特定情報ごとのシーケンス定義情報であり、健康機器４との通信に関するシーケンスを示すデータである。メッセージ定義情報は、シーケンス定義情報に記載されているメッセージを定義するデータである。定義情報サーバ装置２は、情報処理装置３から機器特定情報を含む問い合わせを受けると、当該問い合わせに対する応答として、当該機器特定情報に対応する定義情報を情報処理装置３に返す。具体的には、定義情報サーバ装置２は、情報処理装置３から機器特定情報を含む問い合わせを受けると、当該問い合わせに対する応答として、当該機器特定情報に対応するシーケンス定義情報と当該シーケンス定義情報に記載されているメッセージのメッセージ定義情報とを情報処理装置３に返す。
【００１５】
情報処理装置３は、スマートフォン、タブレット、パーソナルコンピュータなどである。情報処理装置３は、健康機器４と当該健康機器４のアドレス、認証キー、暗号化キーなどを交換して通信接続を確立する。そして、情報処理装置３は、健康機器４から機器情報を取得し、当該機器情報に基づいて定義情報を特定する機器特定情報を生成する。情報処理装置３は、健康機器４から当該健康機器４により測定された測定データを取得し、機器特定情報に基づいて測定データをデータ変換し、データ変換した測定データのデータフォーマットを変換して送信データを生成し、当該送信データをデータ収集サーバ装置１に送信する。健康機器４は、生体の状態を測定する生体測定機器であり、例えば、歩数計、活動量計、体重計、体組成計、血圧計、脈拍計、体温計などである。健康機器４は、ブルートゥース（Ｂｌｕｅｔｏｏｔｈ（登録商標））などの通信路を介して、測定データを情報処理装置３に送信する。ここで、測定データには、測定項目に対応する一つまたは複数のデータ情報が含まれる。
【００１６】
次いで、情報処理装置３の構成を説明する。
記憶部３１は、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ；ランダムアクセスメモリ）、マスクＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ：ロム）、ＦｅＲＡＭ（Ｆｅｒｒｏｅｌｅｃｔｒｉｃ  Ｒａｎｄａｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ：強誘電体メモリ）、フラッシュメモリ、メモリカード、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ；ソリッドステートドライブ）などのメモリであり、制御部３４が実行するプログラムおよび制御部３４が当該プログラムを実行する際に必要となるデータを記憶する。当該プログラムには、アプリケーションやミドルウェアデバイスドライバ、オペレーションシステムなども含まれる。入力部３２は、タッチパネル、入力キー、マウス、音声入力装置など、ユーザによる入力操作を受け付ける入力デバイスである。
【００１７】
第２通信部３３は、無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ；ローカルエリアネットワーク）による通信を行う。情報処理装置３の各部がデータ収集サーバ装置１との間で行う通信は、第２通信部３３を介して行われる。また、情報処理装置３の各部が定義情報サーバ装置２との間で行う通信は、第２通信部３３を介して行われる。なお、第２通信部３３は、３Ｇ（第３世代）回線、４Ｇ回線、ＷｉＭＡＸ（Ｗｏｒｌｄｗｉｄｅ  Ｉｎｔｅｒｏｐｅｒａｂｉｌｉｔｙ  ｆｏｒ  Ｍｉｃｒｏｗａｖｅ  Ａｃｃｅｓｓ；ワイマックス）、ＬＴＥ（Ｌｏｎｇ  Ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ）などのその他の無線通信、あるいは、インターネットなどの有線通信を行ってもよい。
【００１８】
制御部３４は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ；中央演算処理装置）を備え、記憶部３１が記憶するプログラムを実行することで、情報処理装置３の各部を制御する。第１通信部３５は、ブルートゥース（Ｂｌｕｅｔｏｏｔｈ（登録商標））による通信を行う。本実施形態では、情報処理装置３の各部が健康機器４との間で行う通信は、第１通信部３５を介して行われる。なお、第１通信部３５は、ＮＦＣ（Ｎｅａｒ  Ｆｉｅｌｄ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ；近距離通信）、無線ＬＡＮなどのその他の無線通信、あるいは、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ；ユーエスビー）などの有線通信を行ってもよい。表示部３６は、液晶ディスプレイ、有機ＥＬ（Ｅｌｅｃｔｒｏ  Ｌｕｍｉｎｅｓｃｅｎｃｅ）ディスプレイ、プラズマディスプレイなどの表示装置を備え、画像を表示する。
【００１９】
図２は、第１の実施形態に係る情報処理装置３のハードウェア構成の一例を示すハードウェア構成図である。
情報処理装置３は、ＣＰＵ５０１と、第１通信部５０２と、第２通信部５０３と、出力部５０４と、メモリ５０５と、入力部５０６と、を備える。ＣＰＵ５０１と、第１通信部５０２と、第２通信部５０３と、出力部５０４と、メモリ５０５と、入力部５０６とは、バスＢ（母線）を介して相互に接続される。
ＣＰＵ５０１は、制御部３４であり、メモリ５０５が記憶するプログラムや各種データを読み出して実行し、情報処理装置３を制御する。第１通信部５０２は、第１通信部３５である。第２通信部５０３は、第２通信部３３である。出力部５０４は、表示部３６、スピーカなどの出力装置である。メモリ５０５は、記憶部３１である。入力部５０６は、入力部３２である。
【００２０】
図３は、第１の実施形態に係る情報処理装置３の機能構成の一例を示す概略ブロック図である。本図において、変換処理部３０は、制御部３４が記憶部３１からプログラムを読み出して実行することで実現される。変換処理部３０は、機器情報取得部３０１（機器特定部）と、定義情報記憶部３０２と、シーケンス実行管理部３０３と、取得シーケンス実行部３０４と、例外処理シーケンス実行部３０５と、データ送信部３０６と、を含んで構成される。
【００２１】
機器情報取得部３０１は、通信接続された健康機器４が提供するサービスを検索し、当該サービスに含まれる機器情報を提供するサービスに対してデータ要求を行い、健康機器４から機器情報を取得する。ここで、機器情報とは、健康機器４の機種名と、機種種別とを含む情報である。なお、機器情報は、健康機器４の機種を識別できる情報であればよく、ＪＡＮ（Ｊａｐａｎｅｓｅ  Ａｒｔｉｃｌｅ  Ｎｕｍｂｅｒ；ジャン）コードなどの商品識別コードであってもよいし、型番や機種名であってもよいし、メーカー名と型番とのように複数の機種を識別できる情報の組み合わせであってもよい。
なお、２回目以降、同じ健康機器４と接続する場合、機器情報取得部３０１は、機器情報の取得を行わなくてもよい。これにより、健康機器４と通信接続する毎に機器情報を取得する必要がなくなり、処理を簡素化できるとともに、処理時間を短縮することができる。また、当該処理の簡素化、処理時間の短縮により消費電力を削減することができる。
【００２２】
また、機器情報取得部３０１は、機器情報に含まれるメーカー名と型番ととから健康機器４の定義情報を特定するための機器特定情報を生成する。そして、機器情報取得部３０１は、生成した機器特定情報をシーケンス実行管理部３０３に出力する。また、機器情報取得部３０１は、生成した機器特定情報を定義情報記憶部３０２に記憶させる。
【００２３】
なお、機器特定情報には、歩数計、活動量計、体重計、体組成計、血圧計、脈拍計、体温計などの健康機器４の種別が含まれてもよい。また、機器情報には、一定の共通点を有する健康機器４が機器群に予め分類された機器群情報が含まれてもよく、当該機器群情報が機器情報に含まれる場合、機器情報取得部３０１は、当該機器群情報と、メーカー名とから機器特定情報を生成してもよい。
【００２４】
定義情報記憶部３０２は、機器特定情報と上述の定義情報とを対応付けて記憶する。シーケンス実行管理部３０３は、機器情報取得部３０１が特定した機器特定情報に対応するシーケンス定義情報を定義情報記憶部３０２から読み出し、読み出したシーケンス定義情報に基づいて、第１通信部３５を制御して健康機器４と通信する。シーケンス定義情報には、開始シーケンス定義情報と、終了シーケンス定義情報と、取得シーケンス定義情報と、例外処理シーケンス定義情報と、がある。開始シーケンス定義情報は、健康機器４と通信を開始する際のシーケンスである開始シーケンスを定義したシーケンス定義情報である。終了シーケンス定義情報は、健康機器４と通信を終了する際のシーケンスである終了シーケンスを定義したシーケンス定義情報である。取得シーケンス定義情報は、健康機器４からデータを取得するためのシーケンスである取得シーケンスを定義したシーケンス定義情報である。取得シーケンス定義情報は、例外処理シーケンス定義情報を指定する。例外処理シーケンス定義情報は、例外が発生したときに実行する例外処理シーケンスを定義したシーケンス定義情報である。シーケンス実行管理部３０３は、開始シーケンス定義情報に定義されているシーケンスに従って、健康機器４と通信を開始し、健康機器４からデータを受信する準備を整える。また、シーケンス実行管理部３０３は、終了シーケンス定義情報に定義されているシーケンスに従って、健康機器４との通信を終了する。
【００２５】
また、シーケンス実行管理部３０３は、送信データの送信先であるデータ収集サーバ装置１に基づいて、取得シーケンスを１つ選択する。具体的には、まず、シーケンス実行管理部３０３は、機器情報取得部３０１が特定した機器特定情報に対応する取得シーケンス定義情報を定義情報記憶部３０２から読み出す。続いて、シーケンス実行管理部３０３は、読み出した取得シーケンス定義情報が複数ある場合には、読み出した複数の取得シーケンス定義情報に関する問い合わせをデータ収集サーバ装置１に送信して、当該問い合わせに対する応答に基づいて最適な取得シーケンス定義情報を１つ選択する。最適な取得シーケンス定義情報は、読み出した複数の取得シーケンス定義情報のうち、これまでのデータ収集の状態等に基づく評価の最も高い取得シーケンス定義情報である。具体的には、シーケンス実行管理部３０３は、データ収集サーバ装置１におけるデータ収集の状態や、シーケンス実行管理部３０３が実行した開始シーケンスにおいて取得した健康機器４の機器状況等に基づいて、取得シーケンスを評価する。シーケンス実行管理部３０３は、最適な取得シーケンス定義情報を取得シーケンス実行部３０４に出力する。また、シーケンス実行管理部３０３は、取得シーケンス実行部３０４から入力された測定データをデータ送信部３０６に出力する。
【００２６】
取得シーケンス実行部３０４は、シーケンス実行管理部３０３が選択した最適な取得シーケンス定義情報を定義情報記憶部３０２から読み出し、読み出した取得シーケンス定義情報に定義されているシーケンスに従って、健康機器４に対して測定データを要求して取得する。取得シーケンス実行部３０４は、取得した測定データをシーケンス実行管理部３０３に出力する。例外処理シーケンス実行部３０５は、取得シーケンス実行部３０４が取得した測定データが期待しない問題のあるデータ（以下、例外メッセージとする）である場合に、例外が発生したと判定し、取得シーケンス実行部３０４が実行している取得シーケンス定義情報に指定されている例外シーケンス定義情報に基づいて例外処理を実行する。例外メッセージとは、期待するサイズではないメッセージや、フォーマットの異なるメッセージや、数値として期待している値以外の数値が入っているメッセージ等である。
なお、例外メッセージは、健康機器４から受信するメッセージに限定されず、例えば、シーケンス実行管理部３０３や取得シーケンス実行部３０４が受け取る情報処理装置３の内部で発生した例外処理であることを表す通知や、データの送受信に失敗した場合に発生する例外処理であることを表す通知などが含まれていてもよい。
【００２７】
データ送信部３０６は、シーケンス実行管理部３０３から入力された送信データに対し、データの符号化、変調、ＡＤ（Ａｎａｌｏｇ  ｔｏ  Ｄｉｇｉｔａｌ：アナログデジタル）変換、周波数変換、などの通信処理を施す。データ送信部３０６は、通信処理を施した送信データをデータ収集サーバ装置１に送信する。なお、データ送信部３０６は、通信処理を施した送信データを複数のデータ収集サーバ装置１に送信してもよい。
【００２８】
なお、本実施形態では、送信データをデータ収集サーバ装置１に送信すると説明したが、データ収集サーバ装置１の代わりに変換処理部３０に予めインストールされたデータ収集用のアプリケーションに送信データを送信してもよい。この場合、ネットワークを経由したデータ送信の必要がなくなるため、処理時間を短縮することができ、消費電力を削減することができる。また、第２通信部３３が一時的に通信不可能になった場合であっても、データ収集用のアプリケーションへのデータ送信は可能であり、表示部３６を用いて送信データを確認することもできる。
【００２９】
図４は、第１の実施形態に係る定義情報記憶部３０２が記憶するシーケンス定義情報の一例を示す概略図である。図示するように、シーケンス定義情報は、シーケンス名と、シーケンスｔｙｐｅと、シーケンスの各ステップを示すステップテーブルとを有するデータである。シーケンス名は、シーケンスの名称であり、シーケンス定義情報の識別情報である。シーケンスｔｙｐｅは、シーケンスの種別が「開始シーケンス」であるか「終了シーケンス」であるか「取得シーケンス」であるかを示し、これら以外の例外処理である場合は「例外処理シーケンス」である。シーケンスｔｙｐｅ「開始」は開始シーケンスを示し、シーケンスｔｙｐｅ「終了」は終了シーケンスを示し、シーケンスｔｙｐｅ「取得」は取得シーケンスを示し、これら以外の例外処理である場合は、「例外」としてシーケンスｔｙｐｅが例外処理シーケンスであることを示す。ステップテーブルは、ステップＮｏと、種類と、ステップ内容と、次ステップと、次シーケンスと、の各項目の列を有する行と列からなる２次元の表形式のデータである。ステップＮｏは、ステップの番号である。種類は、ステップおける処理である。種類「メッセージ」はメッセージを送信または受信することを示す。ステップ内容は、種類が「メッセージ」である場合に送信または受信するメッセージを示す。次ステップは、次のステップのステップＮｏである。次ステップ「ｅｎｄ」はシーケンスの終了を示す。次シーケンスは、次に実行するシーケンス定義情報のシーケンス名である。
【００３０】
図４（ａ）に示す例では、シーケンス名が取得シーケンス１であり、シーケンスｔｙｐｅが取得である。取得シーケンス１におけるステップテーブルの１行目は、ステップＮｏが１であり、種類がメッセージであり、ステップ内容がモード設定要求メッセージ１であり、次ステップが２であり、次シーケンスは定義されていない。２行目は、ステップＮｏが２であり、種類がメッセージであり、ステップ内容がデータ送信メッセージ（ＡＡＡＡ）であり、次ステップは定義されておらず、次シーケンスが取得シーケンス２である。３行目は、ステップＮｏが２であり、種類がメッセージであり、ステップ内容がデータ送信メッセージ（ＢＢＢＢ）であり、次ステップが３であり、次シーケンスは定義されていない。４行目は、ステップＮｏが３であり、種類がメッセージであり、ステップ内容がデータ送信メッセージ（ＣＣＣＣ）であり、次ステップがｅｎｄであり、次シーケンスは定義されていない。
【００３１】
図４（ｂ）に示す例では、シーケンス名が取得シーケンス２であり、シーケンスｔｙｐｅが取得である。取得シーケンス２におけるステップテーブルの１行目は、ステップＮｏが１であり、種類がメッセージであり、ステップ内容がモード設定要求メッセージ２であり、次ステップが２であり、次シーケンスは定義されていない。２行目は、ステップＮｏが２であり、種類がメッセージであり、ステップ内容がデータ送信メッセージ（ＡＡＡＡ）であり、次ステップが３であり、次シーケンスは定義されていない。３行目は、ステップＮｏが２であり、種類がメッセージであり、ステップ内容がデータ送信メッセージ（ＢＢＢＢ）であり、次ステップは定義されておらず、次シーケンスは取得シーケンス１である。４行目は、ステップＮｏが３であり、種類がメッセージであり、ステップ内容がデータ送信メッセージ（ＣＣＣＣ）であり、次ステップが４であり、次シーケンスは定義されていない。５行目は、ステップＮｏが４であり、種類がメッセージであり、ステップ内容がデータ送信メッセージ（ＤＤＤＤ）であり、次ステップは定義されておらず、次シーケンスは取得シーケンス１である。
【００３２】
図４（ｃ）に示す例では、シーケンス名が取得シーケンス３であり、シーケンスｔｙｐｅが取得である。取得シーケンス３におけるステップテーブルの１行目は、ステップＮｏが１であり、種類がメッセージであり、ステップ内容がモード設定要求メッセージ１であり、次ステップが２であり、次シーケンスは定義されていない。２行目は、ステップＮｏが２であり、種類がメッセージであり、ステップ内容が例外メッセージであり、次ステップは定義されておらず、次シーケンスは例外処理シーケンスである。３行目は、ステップＮｏが２であり、種類がメッセージであり、ステップ内容がデータ送信メッセージ（ＢＢＢＢ）であり、次ステップが３であり、次シーケンスは定義されていない。４行目は、ステップＮｏが３であり、種類がメッセージであり、ステップ内容がデータ送信メッセージ（ＣＣＣＣ）であり、次ステップがｅｎｄである。
【００３３】
図４（ｄ）に示す例では、シーケンス名が例外処理シーケンスであり、シーケンスｔｙｐｅが例外である。例外処理シーケンスにおけるステップテーブルの１行目は、ステップＮｏが１であり、種類がメッセージであり、ステップ内容が例外処理であり、次ステップが２であり、次シーケンスは定義されていない。２行目は、ステップＮｏが２であり、種類がメッセージであり、ステップ内容がデータ送信メッセージ（ＤＤＤＤ）であり、次ステップがｅｎｄである。
【００３４】
モード設定要求メッセージ１及びモード設定要求メッセージ２には、健康機器４を指定の動作モードに設定するために必要な情報（動作モード及びユーザ番号）が格納されている。すなわち、モード設定要求メッセージ１及びモード設定要求メッセージ２は、健康機器４を指定の動作モードに設定するためのメッセージである。データ送信メッセージ（ＡＡＡＡ）、データ送信メッセージ（ＢＢＢＢ）、データ送信メッセージ（ＣＣＣＣ）及びデータ送信メッセージ（ＤＤＤＤ）は、健康機器４から受信する測定データである。データ送信メッセージ（ＡＡＡＡ）、データ送信メッセージ（ＢＢＢＢ）、データ送信メッセージ（ＣＣＣＣ）及びデータ送信メッセージ（ＤＤＤＤ）のデータ構成は、メッセージ定義情報に定義されている。例外処理は、例外が発生した際に実行する処理である。
【００３５】
シーケンス実行管理部３０３は、シーケンス定義情報に基づいてシーケンスを実行する際、ステップＮｏの小さいステップから順に各ステップを実行する。また、シーケンス実行管理部３０３は、ステップの実行が完了すると、次ステップに記載されているステップＮｏのステップを実行する。また、シーケンス実行管理部３０３は、次ステップに「ｅｎｄ」が設定されている場合には、シーケンスの実行を終了する。なお、シーケンス実行管理部３０３は、次ステップが定義されていない場合は、次シーケンスのシーケンス定義情報を定義情報記憶部３０２から読み出し、読み出したシーケンス定義情報に基づいてシーケンスを実行する。また、シーケンス実行管理部３０３は、１つのステップＮｏに２以上のステップ内容が定義されている場合には、健康機器４から受信した測定データに合致するステップ内容（メッセージ）の次ステップ又は次シーケンスを実行する。
【００３６】
図４（ａ）に示す取得シーケンス１を実行する場合を例に説明する。まず、取得シーケンス実行部３０４は、ステップＮｏ．１の処理を実行する。続いて、取得シーケンス実行部３０４は、ステップＮｏ．１の次ステップであるステップＮｏ．２の処理を実行する。このとき、取得シーケンス実行部３０４は、健康機器４から取得した測定データがデータ送信メッセージ（ＡＡＡＡ）に合致する場合には、データ送信メッセージ（ＡＡＡＡ）の次シーケンスである取得シーケンス２を実行する。一方、取得シーケンス実行部３０４は、健康機器４から取得した測定データがデータ送信メッセージ（ＢＢＢＢ）である場合には、データ送信メッセージ（ＢＢＢＢ）の次ステップであるＮｏ．３の処理を実行し、シーケンスを終了する。
【００３７】
このように、取得メッセージ定義情報において、１つのステップＮｏに複数のステップ内容を定義することにより、健康機器４から取得した測定データに応じて、次に実行するステップまたはシーケンスを定義することができる。これにより、全てのデータの送受信のパターンを一つの取得シーケンス定義情報にまとめることなく、取得シーケンス実行部３０４で順次記載内容に従って取得シーケンス定義情報を遷移しながらデータ取得を実行することが可能である。
【００３８】
次に、健康機器４から例外メッセージを受信した場合の処理について説明する。図４（ｃ）に示す取得シーケンス３は、例外が発生した場合に実行する例外処理シーケンスを指定している。図４（ｃ）に示す例外処理シーケンスは、取得シーケンス３で指定された例外処理シーケンスである。取得シーケンス実行部３０４は、取得シーケンス３のステップＮｏ．２の処理を実行している際に、健康機器４から例外メッセージを受信した場合には、例外処理シーケンス実行部３０５に例外の発生を通知する。ここでいう例外メッセージは、ステップＮｏ．２に対応するステップ内容のデータ送信メッセージ（ＢＢＢＢ）に合致しない測定データである。例外処理シーケンス実行部３０５は、取得シーケンス３のステップＮｏ．２の例外メッセージに対応する次シーケンスに記載された例外処理シーケンスのシーケンス定義情報を定義情報記憶部３０２から読み出す。例外処理シーケンス実行部３０５は、読み出したシーケンス定義情報に定義された例外処理シーケンスを実行する。具体的には、まず、例外処理シーケンス実行部３０５は、例外処理シーケンスのＮｏ．１の例外処理を実行する。続いて、例外処理シーケンス実行部３０５は、Ｎｏ．１の次ステップであるＮｏ．２の処理を実行して例外シーケンスを終了する。
【００３９】
図５は、第１の実施形態に係る変換処理部３０のデータ処理の一例を示すフローチャートである。
ステップＳＴ１０１において、機器情報取得部３０１は、通信接続された健康機器４が提供するサービスを検索し、当該サービスに含まれる機器情報を提供するサービスに対してデータ要求を行い、健康機器４から機器情報を取得する。
ステップＳＴ１０２において、機器情報取得部３０１は、機器情報に含まれるメーカー名と型番とから機器特定情報を生成する。
ステップＳＴ１０３において、シーケンス実行管理部３０３は、機器情報取得部３０１が生成した機器特定情報に対応するシーケンス定義情報を定義情報記憶部３０２から読み出す。
【００４０】
ステップＳＴ１０４において、シーケンス実行管理部３０３は、複数の取得シーケンス定義情報から最適な取得シーケンス定義情報を１つ選択する。具体的には、シーケンス実行管理部３０３は、機器情報取得部３０１が生成した機器特定情報に対応する取得シーケンス定義情報を定義情報記憶部３０２から読み出し、読み出した取得シーケンス定義情報に関する問い合わせをデータ収集サーバ装置１に送信する。続いて、シーケンス実行管理部３０３は、当該問い合わせに対する応答に基づいて最適な取得シーケンス定義情報を選択する。
ステップＳＴ１０５において、シーケンス実行管理部３０３は、選択した取得シーケンス定義情報に従って取得シーケンスを取得シーケンス実行部３０４に実行させ、健康機器４にデータを要求する。
【００４１】
ステップＳＴ１０６において、取得シーケンス実行部３０４は、健康機器４から随時、送信される測定データを取得し、取得した測定データを判定する。
ステップＳＴ１０７において、取得シーケンス実行部３０４は、取得した測定データが期待するデータだったか（取得シーケンス定義情報に定義されているメッセージと合致するか）否かを判定する。測定データが期待するデータだった場合はステップＳＴ１０８に進む。一方、測定データが期待するデータでなかった場合はステップＳＴ１０９に進む。
ステップＳＴ１０８において、データ送信部３０６は、測定データを送信する。その後、処理を終了する。
【００４２】
ステップＳＴ１０９において、取得シーケンス実行部３０４は、シーケンス実行管理部３０３に例外処理シーケンスの実行要求を行う。
ステップＳＴ１１０において、シーケンス実行管理部３０３は、選択した取得シーケンス定義情報に指定された例外処理シーケンス定義情報の例外処理シーケンスを実行することをデータ収集サーバ装置１に通知する。そして、シーケンス実行管理部３０３は、例外処理シーケンス実行部３０５に当該例外処理シーケンス定義情報を出力する。
ステップＳＴ１１１において、例外処理シーケンス実行部３０５は、シーケンス実行管理部３０３から入力された例外処理シーケンス定義情報に基づいて例外処理を実行する。その後、処理を終了する。
【００４３】
なお、情報処理装置３は、必要な測定データが複数ある場合、該当するデータ要求をそれぞれ送信し、ステップＳＴ１０５からステップＳＴ１０７までの処理を繰り返し行ってもよい。
【００４４】
このように、本実施形態によれば、情報処理装置３は、機器（健康機器４）と通信接続される情報処理装置３であって、機器（健康機器４）に関する情報を取得して機器を特定する機器情報取得部３０１と、例外が発生したときに実行する例外処理を定義する例外処理シーケンス定義情報と、例外処理シーケンス定義情報を指定して、機器（健康機器４）からデータを取得するためのシーケンスを定義する取得シーケンス定義情報とを機器（健康機器４）ごとに記憶する定義情報記憶部３０２と、機器情報取得部３０１が特定した機器（健康機器４）に応じた取得シーケンス定義情報を定義情報記憶部３０２から読み出し、読み出した取得シーケンス定義情報に基づいて機器（健康機器４）から送信されたデータを取得する取得シーケンス実行部３０４と、取得シーケンス実行部３０４が取得したデータに例外が発生した場合に、取得シーケンス実行部３０４が実行する取得シーケンス定義情報に指定された例外処理シーケンス定義情報に基づいて例外処理を実行する例外処理シーケンス実行部３０５と、を備える。
【００４５】
これにより、情報処理装置３は、健康機器４から異常な測定データを受信する等の問題が発生した場合であっても、適切に例外処理シーケンスを実行するため、情報処理装置３の内部処理で正常な状態に復旧できる。また、情報処理装置３は、健康機器４の製品設計時に想定していなかった問題が発覚した場合であっても、プロファイルの更新で後から適切な例外処理シーケンスを追加できるため、安全に健康機器４を使用できる。
【００４６】
また、情報処理装置３は、通信開始時、または、通信終了時に所定の設定を行う必要のある健康機器４と通信するときに、事前にその健康機器４に設定すべき項目の内容（仕様）を実装していない場合であっても、その健康機器４に対応したシーケンス定義情報を基に、通信開始または通信終了時に必要な所定の設定を行う事ができる。これにより、情報処理装置３は、各健康機器４に応じた実装をすることなく、各健康機器４から測定データを的確に取得することができる。更に、情報処理装置３は、複数の取得シーケンスから最適な取得シーケンスを選択しているため、複数の条件の測定データを格納する健康機器４からも取得したい条件の測定データを選択して取得することができる。
【００４７】
（第２の実施形態）
次に、本発明の第２の実施形態について説明する。
第２の実施形態における情報処理システムＳ１の構成及び情報処理装置６のハードウェア構成は、図１及び図２に示す第１の実施形態における構成と同様であるため、その説明を省略する。
【００４８】
図６は、第２の実施形態に係る情報処理装置６の機能構成の一例を示す概略ブロック図である。本図において、変換処理部６０は、制御部３４が記憶部３１からプログラムを読み出して実行することで実現される。変換処理部６０は、ペアリング部６０１と、機器情報記憶部６０２と、機器特定部６０３と、定義情報取得部６０４と、定義情報記憶部６０５と、シーケンス実行管理部６０６と、シーケンス実行部６０７と、データ取得部６０８と、フォーマット変換部６０９と、データ送信部６１０と、を含んで構成される。
【００４９】
ペアリング部６０１は、広告（ａｄｖｅｒｔｉｓｉｎｇ）している健康機器４を検出し、当該健康機器４と接続し、情報処理装置６と健康機器４との間の通信に必要な通信情報を交換し、情報処理装置６と健康機器４との間の通信接続を確立する。そして、ペアリング部６０１は、当該通信情報を機器情報記憶部６０２に記憶させる。ここで、通信情報とは、健康機器４のアドレス情報、認証キー情報、暗号化キー情報などを含む通信接続を確立するための情報である。例えば、ペアリング部６０１は、広告しているブルートゥース機器（健康機器４）を検出し、当該ブルートゥース機器と接続し、情報処理装置６とブルートゥース機器との間の通信に必要なブルートゥース機器のアドレス、認証キー情報、暗号化キー情報を交換し、情報処理装置６とブルートゥース機器との間の通信接続を確立する。
【００５０】
ペアリング部６０１は、通信接続された健康機器４が提供するサービスを検索し、当該サービスに含まれる機器情報を提供するサービスに対してデータ要求を行い、健康機器４から機器情報を取得する。ペアリング部６０１は、通信接続を確立した健康機器４と、取得した機器情報と、を対応付けて機器情報記憶部６０２に記憶させる。
【００５１】
機器情報記憶部６０２は、健康機器４と機器情報とを対応付けて記憶する。具体的には、機器情報記憶部６０２は、健康機器４のアドレスと機器情報とを対応付けて記憶する。機器特定部６０３は、機器情報記憶部６０２から機器情報に含まれるメーカー名と型番とを読み出し、当該メーカー名と型番とから健康機器４の定義情報を特定するための機器特定情報を生成する。そして、機器特定部６０３は、生成した機器特定情報をデータ取得部６０８、定義情報取得部６０４及びシーケンス実行管理部６０６に出力する。
【００５２】
定義情報取得部６０４は、機器特定部６０３から入力された機器特定情報に基づいて定義情報サーバ装置２に問い合わせを送信し、当該問い合わせに対する応答として当該機器特定情報に対応する定義情報を取得する。本実施形態における定義情報には、第１の実施形態における定義情報に加えて、データフォーマットを定義するフォーマット定義情報が含まれる。フォーマット定義情報は、データ定義と、変換規則とを定義する定義情報である。データ定義には、データ名と、データＩＤと、データ構造と、データの位置と、データのサイズと、データのデータ型と、単位と、が含まれる。また、変換規則には、データフォーマットにおける変換位置と、変換するデータ型を表すデータ型変換と、単位変換とが含まれる。具体的には、定義情報取得部６０４は、機器特定部６０３から入力された機器特定情報に基づいて、定義情報サーバ装置２に問い合わせを送信し、当該問い合わせに対する応答として当該機器特定情報に対応するフォーマット定義情報とシーケンス定義情報と当該シーケンス定義情報に記載されたメッセージのメッセージ定義情報とを取得する。定義情報取得部６０４は、機器特定情報と、取得した定義情報と、を対応付けて定義情報記憶部６０５に記憶させる。定義情報記憶部６０５は、機器特定情報と定義情報とを対応付けて記憶する。
【００５３】
シーケンス実行管理部６０６は、第１の実施形態におけるシーケンス実行管理部３０３と同様であるため、その説明を省略する。シーケンス実行部６０７は、取得シーケンス実行部６０７１と、例外処理シーケンス実行部６０７２とを備え、シーケンス定義情報に基づいてシーケンスを実行する。取得シーケンス実行部６０７１は及び例外処理シーケンス実行部６０７２は、第１の実施形態における取得シーケンス実行部３０４及び例外処理シーケンス実行部３０５と同様であるため、その説明を省略する。
【００５４】
データ取得部６０８は、通信接続が確立された健康機器４から随時、送信される測定データを取得し、当該測定データをフォーマット変換部６０９に出力する。なお、この測定データの構造は、例えば、データＩＤとデータ情報とが対になったデータ構造である。また、データ情報は、一つの測定項目のデータ情報であってもよいし、複数の測定項目のデータ情報がまとめられたデータ情報であってもよい。
【００５５】
フォーマット変換部６０９は、機器特定部６０３から入力された機器特定情報に基づいて定義情報記憶部６０５からフォーマット定義情報を読み出し、当該フォーマット定義情報に含まれるデータ定義に基づいてデータ取得部６０８から入力された測定データに付随するデータＩＤを判定する。そして、フォーマット変換部６０９は、判定したデータＩＤに基づいて測定データの種類、構成、属性を特定し、フォーマット定義情報に含まれる変換規則に基づいて測定データのデータ情報ごとにデータ変換し、データ変換した測定データのデータフォーマットを変換することで送信データを生成する。フォーマット変換部６０９は、生成した送信データをデータ送信部６１０に出力する。
【００５６】
データ送信部６１０は、フォーマット変換部６０９から入力された送信データに対し、データの符号化、変調、ＡＤ変換、周波数変換、などの通信処理を施す。データ送信部６１０は、通信処理を施した送信データをデータ収集サーバ装置１に送信する。なお、データ送信部６１０は、通信処理を施した送信データを複数のデータ収集サーバ装置１に送信してもよい。
【００５７】
図７は、第２の実施形態に係る定義情報記憶部６０５が記憶するデータ定義および変換規則を含むフォーマット定義情報の一例を示すテーブルである。
図示するようにフォーマット定義情報のテーブルＴ１は、定義番号と、データ名と、データＩＤと、データ構造と、位置と、サイズと、データ型と、単位と、変換位置と、データ型変換と、単位変換と、の各項目の列を有する行と列からなる２次元の表形式のデータである。ここで、フォーマット定義情報には、定義番号、データ名、データＩＤ、データ構造、位置、サイズ、データ型、単位のデータ定義と、変換位置、データ型変換、単位変換の変換規則と、が含まれる。定義情報記憶部６０５は、機器特定情報ごとにフォーマット定義情報のテーブルを記憶している。
【００５８】
例えば、フォーマット定義情報のテーブルＴ１の１行目は、定義番号が１であり、データ名が体重であり、データＩＤがＡＡＡＡであり、データ構造が多重であり、位置が０であり、サイズが２であり、データ型が１６ビット浮動小数点数であり、単位がＫｇであり、変換位置が（３）であり、データ型変換が最大４桁小数点第１位であり、単位変換が「そのまま」である。
２行目は、定義番号が２であり、データ名が体脂肪率であり、データＩＤがＡＡＡＡであり、データ構造が多重であり、位置が２であり、サイズが２であり、データ型が１６ビット浮動小数点数であり、単位が％であり、変換位置が（４）であり、データ型変換が最大３桁小数点第１位であり、単位変換が「そのまま」である。
３行目は、定義番号が３であり、データ名が骨格筋率であり、データＩＤがＡＡＡＡであり、データ構造が多重であり、位置が４であり、サイズが２であり、データ型が１６ビット浮動小数点数であり、単位が％であり、変換位置が（５）であり、データ型変換が最大３桁小数点第１位であり、単位変換が「そのまま」である。
４行目は、定義番号が４であり、データ名がタイムスタンプであり、データＩＤがＡＡＡＡであり、データ構造が多重であり、位置が６であり、サイズが７であり、データ型が７バイト年月日時分秒であり、単位が秒であり、変換位置が（１）であり、データ型変換が年月日時分秒（文字列）であり、単位変換が「そのまま」である。
５行目は、定義番号が５であり、データ名がユーザ番号であり、データＩＤがＢＢＢＢであり、データ構造が単一であり、位置が０であり、サイズが１であり、データ型が８ビット整数であり、単位が「なし」であり、変換位置が（２）であり、データ型変換が最大３桁であり、単位変換が「そのまま」である。
【００５９】
ここで、データ名とは、健康機器４から送信される測定データに含まれる情報の名称であり、データＩＤとは、健康機器４から送信される測定データに付随する識別子（Ｉｄｅｎｔｉｆｉｅｒ；ＩＤ）である。また、データ構造には、健康機器４から送信される測定データのデータ構造が多重構造を表す「多重」、単一構造を表す「単一」が格納される。また、位置とは、健康機器４から送信される測定データに含まれるデータ情報の位置であり、サイズとは、当該データ情報のバイトサイズである。データ型とは、健康機器４から送信される測定データのデータ情報ごとのデータ型である。単位とは、健康機器４から送信される測定データのデータ情報ごとに付随する単位であり、変換位置とは、健康機器４から送信される測定データに含まれるデータ情報を送信データのフォーマットに埋め込む位置である。また、データ型変換とは、健康機器４から送信されるデータ情報を送信データに変換するときの変換方法であり、単位変換には、データ情報に付随する単位、例えば、体重に付随する単位であるｋｇをポンド、オンスなどへの単位変換のように、変換後の単位が格納される。
なお、本実施形態では、測定データに付随するデータＩＤが一つの場合について説明しているが、カテゴリＩＤ、データＩＤなど複数のＩＤを付随した階層型の測定データであってもよい。これにより、データ情報の数が増えた場合でも、測定データの管理を容易に行うことができる。
【００６０】
図８は、第２の実施形態に係る送信データのデータフォーマットの一例を示す概略図である。
図示するように、送信データのデータフォーマットは、例えば、データフォーマットの始点を表す“ＳＴＡＲＴ”、データ名“タイムスタンプ”、区切りを表す「，」、タイムスタンプのデータ情報を格納する“（１）”、区切りを表す「，」、データ名“ユーザ番号”、区切りを表す「，」、ユーザ番号のデータ情報を格納する“（２）”、区切りを表す「，」、データ名“体重”、区切りを表す「，」、体重のデータ情報を格納する（３）、区切りを表す「，」、データ名“体脂肪率”、区切りを表す「，」、体脂肪率のデータ情報を格納する“（４）”、区切りを表す「，」、データ名“骨格筋率”、区切りを表す「，」、骨格筋率のデータ情報を格納する“（５）”、データフォーマットの終了を表す“ＥＮＤ”の順にデータ名とデータ情報とを格納するものである。ここで、例えば、（１）は、フォーマット定義情報のテーブルＴ１における４行目の変換位置（１）に対応する。
【００６１】
図９は、第２の実施形態に係る健康機器４から送信される測定データおよびデータフォーマットの一例を示す概略図である。
図示するように、健康機器４から送信されるデータフォーマットには、ＡＡＡＡ、ｃｆ、ｆ２、ｃ９、ｆ０、４９、ｆ１、ｄｄ、０７、０２、１ｃ、１２、１ｅ、００の順に測定データのデータ情報のバイト列が格納されている。
フォーマット変換部６０９は、フォーマット定義情報に含まれるデータ定義に基づいて測定データに付随するデータＩＤを判定することでデータ構成を判定する。例えば、フォーマット変換部６０９は、データＩＤ、ＡＡＡＡからデータ構成を判定し、フォーマット定義情報のテーブルＴ１の位置の項目列からｃｆ、ｆ２が体重を表すデータ情報、ｃ９、ｆ０が体脂肪率を表すデータ情報、４９、ｆ１が骨格筋率を表すデータ情報、ｄｄ、０７、０２、１ｃ、１２、１ｅ、００がタイムスタンプを表すデータ情報と判定する。
【００６２】
図１０は、第２の実施形態に係る健康機器４から送信される測定データおよびデータフォーマットの他の一例を示す概略図である。
図示するように、健康機器４から送信されるデータフォーマットには、ＢＢＢＢ、０１の順に測定データのデータ情報のバイト列が格納されている。フォーマット変換部６０９は、例えば、データＩＤ、ＢＢＢＢからデータ構成を判定し、０１がユーザ番号を表すデータ情報と判定する。
【００６３】
図１１は、第２の実施形態に係るフォーマット変換部６０９が生成した送信データおよびデータフォーマットの一例を示す概略図である。
図７、図８および図９を参照して測定データのデータフォーマットの変換手段を説明する。フォーマット変換部６０９は、フォーマット定義情報のテーブルＴ１におけるサイズが２以上であるデータ情報に対しては、データの下位バイトからデータ変換処理を行うリトルエンディアンの方法を使用する。また、１６ビット浮動小数点数のフォーマットは、順に、基数１０の指数部４ビット（２の補数）、仮数部１２ビット（２の補数）から構成されるものとする。
【００６４】
例えば、フォーマット変換部６０９は、フォーマット定義情報のテーブルＴ１における１行目の体重のデータ情報のデータ型が１６ビット浮動小数点数、サイズが２であることから、図９における体重を表すバイト列ｃｆ、ｆ２からｆ２ｃｆｈと変換し、指数部をｆｈ＝−１、仮数部を２ｃｆｈ＝７１９と算出する。そして、フォーマット変換部６０９は、算出したｆｈ＝−１、２ｃｆｈ＝７１９から７１９×１０−１＝７１．９と変換することで体重を表すデータ情報のデータ変換を行う。そして、フォーマット変換部６０９は、フォーマット定義情報のテーブルＴ１における１行目の体重のデータ情報の変換位置が（３）であることから、図８におけるデータ名“体重”の次の“（３）”にデータ変換した７１．９を格納する。
同様に、フォーマット変換部６０９は、体脂肪率、骨格筋率のデータ情報をデータ変換する。
【００６５】
例えば、フォーマット変換部６０９は、フォーマット定義情報のテーブルＴ１における４行目のタイムスタンプのデータ情報のデータ型がバイト年月日時分秒、サイズが７であることから、図９における位置６から１２までのバイト列、ｄｄ、０７、０２、１ｃ、１２、１ｅ、００から、０７ｄｄｈ＝２０１３、０２ｈ＝２、１ｃｈ＝２８、１２ｈ＝１４、１ｅｈ＝３０、００ｈ＝００、０１ｈ＝１と算出し、２０１３−２−２８−１４：３０：００とタイムスタンプを表すデータ情報のデータ変換を行う。そして、フォーマット変換部６０９は、フォーマット定義情報のテーブルＴ１における４行目のタイムスタンプのデータ情報の変換位置が（１）であることから、図８におけるデータ名“タイムスタンプ”の次の“（１）”にデータ変換した２０１３−２−２８−１４：３０：００を格納する。
このようにして、フォーマット変換部６０９は、測定データをデータ変換し、測定データのデータフォーマットを変換して図１１に示す送信データを生成する。
【００６６】
図１２は、第２の実施形態に係る変換処理部６０のデータ処理の一例を示すフローチャートである。
ステップＳＴ２０１において、ペアリング部６０１は、広告（ａｄｖｅｒｔｉｓｉｎｇ）している健康機器４を検出し、当該健康機器４と接続し、初めて通信接続される健康機器４か否かを判定する。健康機器４が初めて通信接続される場合、ステップＳＴ２０２に進む。一方、初めて通信接続される健康機器４ではない場合、ステップＳＴ２０５に進む。
ステップＳＴ２０２において、ペアリング部６０１は、健康機器４と通信情報を交換し、通信接続を確立する（ペアリング実行）。
ステップＳＴ２０３において、ペアリング部６０１は、通信接続された健康機器４が提供するサービスを検索し、当該サービスに含まれる機器情報を提供するサービスに対してデータ要求を行い、健康機器４から機器情報を取得する。
【００６７】
なお、本実施形態では、情報処理装置６は、ステップＳＴ２０２及びステップＳＴ２０３において、ペアリングを行い、接続を確立した上で機器情報を取得しているが、これに限らず、ペアリングを行わない健康機器４と通信する場合には、ペアリングを行わずに接続を確立して機器情報を取得するようにしてもよい。或いは、情報処理装置６は、例えば、健康機器４の広告に機器情報が含まれる場合等、接続を確立せずとも機器情報を取得することができる場合は、接続を確立せずに取得した機器情報を利用してもよい。
【００６８】
ステップＳＴ２０４において、ペアリング部６０１は、取得した機器情報を機器情報記憶部６０２に記憶させ、ステップＳＴ２０６に進む。
ステップＳＴ２０５において、機器特定部６０３は、機器情報記憶部６０２から機器情報を読み出し、ステップＳＴ２０６に進む。
ステップＳＴ２０６において、機器特定部６０３は、機器情報に含まれるメーカー名と型番とから機器特定情報を生成する。
【００６９】
ステップＳＴ２０７において、機器特定部６０３は、機器特定情報に対応する定義情報が定義情報記憶部６０５に記憶されている、または定義情報が更新されているか否かを判定する。定義情報が記憶されておりかつ更新されていない場合、ステップＳＴ２１０に進む。一方、定義情報が記憶されていないまたは更新されている場合、ステップＳＴ２０８に進む。
ステップＳＴ２０８において、定義情報取得部６０４は、機器特定部６０３が生成した機器特定情報に基づいて定義情報サーバ装置２に問い合わせを送信し、当該問い合わせに対する応答として当該機器特定情報に対応する定義情報を取得する。
【００７０】
ステップＳＴ２０９において、定義情報取得部６０４は、機器特定部６０３が生成した機器特定情報と取得した定義情報とを対応付けて定義情報記憶部６０５に記憶させ、ステップＳＴ２１１に進む。
ステップＳＴ２１０において、シーケンス実行管理部６０６及びフォーマット変換部６０９は、機器特定部６０３が生成した機器特定情報に対応する定義情報を定義情報記憶部６０５から読み出し、ステップＳＴ２１１に進む。
【００７１】
なお、情報処理装置６が健康機器４と接続を開始して（ステップＳＴ２０１）から、定義情報サーバ装置２から定義情報を取得し（ステップＳＴ２０８）、取得した定義情報を記憶する（ステップＳＴ２０９）までに時間がかかることがある。この場合、健康機器４によっては、接続タイムアウトが発生し、確立した接続が切断されてしまうことがある。このような場合には、情報処理装置６は、定義情報が利用可能になった段階（ステップＳＴ２０９又はＳＴ２１０）で健康機器４と再接続して処理を継続する。
【００７２】
ステップＳＴ２１１〜ＳＴ２１４までの処理は、第１の実施形態におけるステップＳＴ１０４〜ＳＴ１０７までの処理と同様であるため、その説明を省略する。
ステップＳＴ２１５において、フォーマット変換部６０９は、機器特定部６０３が生成した機器特定情報に対応するフォーマット定義情報に基づいて測定データのデータ情報ごとにデータ変換し、データ変換した測定データのデータフォーマットを変換することで送信データを生成する。データ送信部６１０は、送信データを送信し、処理を終了する。
ステップＳＴ２１６〜ＳＴ２１８までの処理は、第１の実施形態におけるＳＴ１０９〜ＳＴ１１１までの処理と同様であるため、その説明を省略する。
【００７３】
このように、本実施形態によれば、情報処理装置６は、第１の実施形態における情報処理装置３の構成に加えて、定義情報記憶部６０５は、データフォーマットを定義するフォーマット定義情報を機器（健康機器４）ごとに記憶し、機器特定部６０３が特定した機器（健康機器４）に応じたフォーマット定義情報を定義情報記憶部６０５から読み出し、読み出したフォーマット定義情報に基づいて機器（健康機器４）から送信されたデータのデータフォーマットを変換するフォーマット変換部６０９と、フォーマット変換部６０９が変換したデータフォーマットで機器（健康機器４）から送信されたデータを送信するデータ送信部６１０と、をさらに備える。
【００７４】
これにより、情報処理装置６は、第１の実施形態における効果に加えて、データ長、開始フラグ、終了フラグなどのデータフォーマットの特徴が同じ場合であっても、機器特定情報に基づいて機器を特定できるため、当該機器に応じた定義情報に基づいてデータのデータフォーマットを変換できる。
【００７５】
なお、上述した実施形態における情報処理装置３、６の一部、例えば、変換処理部３０、６０をコンピュータで実現するようにしても良い。その場合、この制御機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現しても良い。なお、ここでいう「コンピュータシステム」とは、情報処理装置３、６に内蔵されたコンピュータシステムであって、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでも良い。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【００７６】
以上、図面を参照してこの発明の一実施形態について詳しく説明してきたが、具体的な構成は上述のものに限られることはなく、この発明の要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。
【００７７】
例えば、上述した実施形態では、情報処理装置３、６は、ネットワークを介して定義情報サーバ装置２から定義情報を取得しているが、これに限らず、情報処理装置３、５に接続可能な記憶媒体に定義情報を記憶しておき、当該記憶された定義情報を利用してもよい。記憶媒体は、例えば、光磁気ディスク、フレキシブルディスク、フラッシュメモリなどの可搬記憶媒体である。或いは、健康機器４に張り付けられたＱＲ（Ｑｕｉｃｋ  Ｒｅｓｐｏｎｓｅ）コードやＲＦＩＤ（Ｒａｄｉｏ  Ｆｒｅｑｕｅｎｃｙ  ＩＤｅｎｔｉｆｉｃａｔｉｏｎ）に定義情報を格納してもよい。この場合、情報処理装置３、５は、ＱＲコード（登録商標）またはＲＦＩＤから定義情報を読み取り、読み取った定義情報を利用する。
また、上述した実施形態では、第１通信部３５の通信をブルートゥースとしたが、これに限らず、例えば、シリアル（例えば、ＵＡＲＴ（Ｕｎｉｖｅｒｓａｌ  Ａｓｙｎｃｈｒｏｎｏｕｓ  Ｒｅｃｅｉｖｅｒ  Ｔｒａｎｓｍｉｔｔｅｒ））やＵＳＢなどの有線通信や、赤外線や無線ＬＡＮなどの無線通信であってもよい。
【００７８】
（１）機器と通信接続される情報処理装置であって、機器に関する情報を取得して機器を特定する機器特定部と、例外が発生したときに実行する例外処理を定義する例外処理シーケンス定義情報と、例外処理シーケンス定義情報を指定して、機器からデータを取得するためのシーケンスを定義する取得シーケンス定義情報とを機器ごとに記憶する定義情報記憶部と、機器特定部が特定した機器に応じた取得シーケンス定義情報を定義情報記憶部から読み出し、読み出した取得シーケンス定義情報に基づいて機器から送信されたデータを取得する取得シーケンス実行部と、取得シーケンス実行部が取得したデータに例外が発生した場合に、取得シーケンス実行部が実行する取得シーケンス定義情報に指定された例外処理シーケンス定義情報に基づいて例外処理を実行する例外処理シーケンス実行部と、を備えることを特徴とする情報処理装置。
【００７９】
（２）定義情報記憶部は、データフォーマットを定義するフォーマット定義情報を機器ごとに記憶し、機器特定部が特定した機器に応じたフォーマット定義情報を定義情報記憶部から読み出し、読み出したフォーマット定義情報に基づいて機器から送信されたデータのデータフォーマットを変換するフォーマット変換部と、フォーマット変換部が変換したデータフォーマットで機器から送信されたデータを送信するデータ送信部と、をさらに備えることを特徴とする（１）に記載の情報処理装置。
【００８０】
（３）機器と通信接続される情報処理装置とを備える情報処理システムであって、機器は、機器に関する情報を送信し、情報処理装置は、機器に関する情報に基づいて機器を特定する機器特定部と、例外が発生したときに実行する例外処理を定義する例外処理シーケンス定義情報と、例外処理シーケンス定義情報を指定して、機器からデータを取得するためのシーケンスを定義する取得シーケンス定義情報とを機器ごとに記憶する定義情報記憶部と、機器特定部が特定した機器に応じた取得シーケンス定義情報を定義情報記憶部から読み出し、読み出した取得シーケンス定義情報に基づいて機器から送信されたデータを取得する取得シーケンス実行部と、取得シーケンス実行部が取得したデータに例外が発生した場合に、取得シーケンス実行部が実行する取得シーケンス定義情報に指定された例外処理シーケンス定義情報に基づいて例外処理を実行する例外処理シーケンス実行部と、を備えることを特徴とする情報処理システム。
【００８１】
（４）機器と通信接続される情報処理装置における情報処理方法であって、機器に関する情報を取得して機器を特定する機器特定過程と、例外が発生したときに実行する例外処理を定義する例外処理シーケンス定義情報と、例外処理シーケンス定義情報を指定して、機器からデータを取得するためのシーケンスを定義する取得シーケンス定義情報とを機器ごとに記憶する定義情報記憶部から、機器特定過程が特定した機器に応じた取得シーケンス定義情報を読み出し、読み出した取得シーケンス定義情報に基づいて機器から送信されたデータを取得する取得シーケンス実行過程と、取得シーケンス実行過程が取得したデータに例外が発生した場合に、取得シーケンス実行過程が実行する取得シーケンス定義情報に指定された例外処理シーケンス定義情報に基づいて例外処理を実行する例外処理シーケンス実行過程と、を有することを特徴とする情報処理方法。
【００８２】
（５）機器と通信接続される情報処理装置のコンピュータに、機器に関する情報を取得して機器を特定する機器特定ステップと、例外が発生したときに実行する例外処理を定義する例外処理シーケンス定義情報と、例外処理シーケンス定義情報を指定して、機器からデータを取得するためのシーケンスを定義する取得シーケンス定義情報とを機器ごとに記憶する定義情報記憶部から、機器特定ステップが特定した機器に応じた取得シーケンス定義情報を読み出し、読み出した取得シーケンス定義情報に基づいて機器から送信されたデータを取得する取得シーケンス実行ステップと、取得シーケンス実行ステップが取得したデータに例外が発生した場合に、取得シーケンス実行ステップが実行する取得シーケンス定義情報に指定された例外処理シーケンス定義情報に基づいて例外処理を実行する例外処理シーケンス実行ステップと、を実行させるための情報処理プログラム。
【符号の説明】
【００８３】
Ｓ１・・・情報処理システム、１・・・データ収集サーバ装置、２・・・定義情報サーバ装置、３、６・・・情報処理装置、４・・・健康機器、３０、６０・・・変換処理部、３１・・・記憶部、３２・・・入力部、３３・・・第２通信部、３４・・・制御部、３５・・・第１通信部、３６・・・表示部、３０１・・・機器情報取得部、３０２・・・定義情報記憶部、３０３・・・シーケンス実行管理部、３０４・・・取得シーケンス実行部、３０５・・・例外処理シーケンス実行部、３０６・・・データ送信部、６０１・・・ペアリング部、６０２・・・機器情報記憶部、６０３・・・機器特定部、６０４・・・定義情報取得部、６０５・・・定義情報記憶部、６０６・・・シーケンス実行管理部、６０７・・・シーケンス実行部、６０８・・・データ取得部、６０９・・・フォーマット変換部、６１０・・・データ送信部、６０７１・・・取得シーケンス実行部、６０７２・・・例外処理シーケンス実行部
【図１】
2016091327.tif 000003
【図２】
2016091327.tif 000004
【図３】
2016091327.tif 000005
【図４】
2016091327.tif 000006
【図５】
2016091327.tif 000007
【図６】
2016091327.tif 000008
【図７】
2016091327.tif 000009
【図８】
2016091327.tif 000010
【図９】
2016091327.tif 000011
【図１０】
2016091327.tif 000012
【図１１】
2016091327.tif 000013
【図１２】
2016091327.tif 000014