(57)【特許請求の範囲】
【請求項１】
ウェアラブルデバイス間の接続関係を提供する、コンピュータで実施される方法であって、
第１のウェアラブルデバイスの一以上のセンサーによりユーザのベースバイタルサインを測定することと、
前記ベースバイタルサインが所定閾値基準を満たすか否か判定することと、
前記ベースバイタルサインが前記所定閾値基準を満たすことに応じて、第２のウェアラブルデバイスの一以上のセンサーにより前記ユーザの第２バイタルサインの測定を要求することと、
前記ベースバイタルサインと前記第２バイタルサインとの組み合わせに基づいて警告動作を決定することと、
前記警告動作に基づいて前記ユーザへの通知を生成することとを含む、方法。
【請求項２】
前記第１のウェアラブルデバイスは、複数のウェアラブルデバイスから、前記ユーザのバイタルサインの測定値を受け取る、
請求項１に記載の方法。
【請求項３】
ウェアラブルデバイス間の接続関係を提供する、コンピュータで実施される方法であって、
第１のウェアラブルデバイスの一以上のセンサーによりユーザのベース健康パラメータを測定することと、
前記ベース健康パラメータが所定閾値基準を満たすか否か判定することと、
前記ベース健康パラメータが前記所定閾値基準を満たすことに応じて、第２のウェアラブルデバイスの一以上のセンサーにより前記ユーザの第２の健康パラメータの測定を要求することであって、前記第２のウェアラブルデバイスは、
前記ユーザが装着しているウェアラブルデバイスのセットを判定することであって、前記セット中の各ウェアラブルデバイスは対応する測定方法を用いて前記第２の健康パラメータを測定するように構成されている、判定することと、
前記第１のウェアラブルデバイスのメモリに記憶された、異なる健康パラメータを異なる測定方法にマッチングするルックアップテーブルから、前記セット中の各ウェアラブルデバイスの測定方法を決定して、測定方法のセットを生成する、決定することと、
決定された測定方法のセットから前記第２の健康パラメータを測定するために最適な測定方法を選択することと、
対応する最適な測定方法を有するウェアラブルデバイスを、前記第２の健康パラメータを測定するスレーブロールを有する第２のウェアラブルデバイスとして選択することと、により選択される、要求することと、
前記ベース健康パラメータと前記第２の健康パラメータとの組み合わせに基づいて警告動作を決定することと、
前記警告動作に基づいて前記ユーザへの通知を生成することとを含む、方法。
【請求項４】
最適な測定方法は対応するウェアラブルデバイスの装着方法に基づいて決定される、
請求項３に記載の方法。
【請求項５】
前記第２バイタルサインの測定を要求する前に前記ユーザに警告することをさらに含む、
請求項１に記載の方法。
【請求項６】
前記警告動作はスマートフォンにより決定され、前記第１と第２のウェアラブルデバイスは異なる装着方法を有する、
請求項１に記載の方法。
【請求項７】
前記第１のウェアラブルデバイスのセンサーにより前記第２バイタルサインをさらに測定することと、
前記第１と第２のウェアラブルデバイスのセンサーにより測定され前記第２バイタルサインの測定値の関数に基づいて、前記ベースバイタルサインと比較する前記第２バイタルサインの測定値を選択することをさらに含む、
請求項１に記載の方法。
【請求項８】
前記ユーザの活動の変化を検出することと、
前記変化の検出に応じて前記関数を更新することとをさらに含む、
請求項７に記載の方法。
【請求項９】
前記関数は前記第１と第２のウェアラブルデバイスのセンサーにより測定される第２バイタルサインの測定値の加重平均を決定し、前記更新は前記加重平均の加重を修正する、
請求項８に記載の方法。
【請求項１０】
ウェアラブルデバイス間の接続関係を与えるシステムであって、
第１のウェアラブルデバイスを有し、前記第１のウェアラブルデバイスは、
前記第１のウェアラブルデバイスを装着しているユーザのベースバイタルサインを測定するように構成された一以上のセンサーと、
無線通信ネットワークにより、第２のウェアラブルデバイスから、前記ユーザの第２バイタルサインの測定値を受け取るように構成されたトランシーバと、
プロセッサであって、
前記ベースバイタルサインの測定値が所定閾値基準を満たすとき、前記トランシーバを用いて、前記第２のウェアラブルデバイスに、前記第２バイタルサインの測定を要求し、
前記ベースバイタルサインおよび前記第２バイタルサインの測定値の組み合わせに基づいて警告動作を決定するように構成され、前記警告動作に基づいて前記ユーザへの通知を生成するようにさらに構成されたプロセッサとを有する、システム。
【請求項１１】
前記第２のウェアラブルデバイスは、
前記ユーザの第２バイタルサインを測定するように構成された一以上のセンサーと、
前記第２バイタルサインの測定値を、前記第１のウェアラブルデバイスのトランシーバに送信するように構成されたトランシーバとを有する、
請求項１０に記載のシステム。
【請求項１２】
前記第１のウェアラブルデバイスはマスターロールに割り当てられ、前記第２のウェアラブルデバイスはスレーブロールに割り当てられる、請求項１１に記載のシステム。
【請求項１３】
ウェアラブルデバイス間にオンデマンド無線サービスを提供するコンピュータプログラムであって、
プロセッサに、
第１のデバイスの一以上のセンサーにより一以上のベースバイタルサインを測定することと、
測定されたベースバイタルサインのうち一以上が所定閾値基準を満たすことを判定することと、
測定されたベースバイタルサインのうち一以上が所定閾値基準を満たすとき、一以上の第２のデバイスに、一以上の追加バイタルサイン測定値を要求することと、
測定されたベースバイタルサインと、一以上の第２のデバイスから受け取った一以上の追加バイタルサイン測定値との組み合わせに基づいて、警告動作を決定することと、
決定された警告動作に基づいてユーザへの通知を生成することとを実行させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、概してウェアラブルデバイスに関する。より具体的には、本発明は、ウェアラブルデバイス間の接続関係を提供するためのデータ収集、送信および処理に関する。
【背景技術】
【０００２】
ウェアラブル技術は、ユーザが装着し得る様々な目立たないセンサーを介してデータを取得することができる、新しいクラスの電子システムである。センサーは、例えば環境、ユーザの活動、またはユーザの健康状態に関する情報を収集する。しかし、収集されるデータの調整、計算、通信、プライバシー、セキュリティ、およびプレゼンテーションには大きな課題がある。
【０００３】
また、バッテリ技術の現状を考えると、電力管理に関連する課題がある。さらに、センサーによって収集されるデータをエンドユーザに有用かつ関連性のあるものにするには、データの分析が必要である。場合によっては、センサーによって収集されたデータを補うために、追加の情報源を使用することができる。ウェアラブル技術が提示する多くの課題には、ハードウェアとソフトウェアの新しい設計が必要となる。
【０００４】
ウェアラブルデバイスの利点は、ユーザとの近接性およびその計算の一貫性を含む。例えば、多くのウェアラブルデバイスは、ユーザが装着している間、ユーザのデータおよび／またはユーザのバイタルサインを絶えず連続的に監視する。このような情報は、ユーザの状態および行動のその後の分析において有用であり、および／または測定によって必要とされる動作を実行するために使用され得る。
【０００５】
しかし、ユーザのデータを絶えず監視することは、ウェアラブルデバイスが実行できる測定の柔軟性を低下させ、望ましくない結論につながる可能性がある。
【発明の概要】
【０００６】
本発明のいくつかの実施形態の目的は、ウェアラブルデバイス間の接続関係を提供するシステムおよび方法を開示することである。本明細書で使用される場合、「ウェアラブル（ｗｅａｒａｂｌｅ）」という用語は、ユーザに関連付けられたデバイス、例えば、身体部分に装着されまたは取り付けられ、または衣類または履物に埋め込まれ、複数のアプローチにより様々な健康パラメータの接触または非接触感知をするように構成されている。例えば、心拍数は、フォトプレチスモグラフまたはバイオインピーダンス測定によって測定することができる。
【０００７】
ここで、健康パラメータは、血圧測定、水分レベル、カロリーレート、血糖値、血中グルコース値、インスリン値、体重値、睡眠測定値、歩数、体温、心拍数、心音、呼吸数、呼吸音、移動速度、皮膚水分、発汗レベル、汗組成物、および神経発火を含む任意のバイタルサイン（ｖｉｔａｌ  ｓｉｇｎ）を含み得る。
【０００８】
本発明のいくつかの実施形態は、多くのウェアラブルデバイスが存在し、様々な状況下での測定においてはあるものが他のものより優れているという認識に基づいている。例えば、ユーザの足に装着された歩数計は、歩数の計数において、腕に装着された歩数計よりも効果的である。一方、腕に装着された活動モニタは、脈拍走査に対してより効果的である。
【０００９】
追加的にまたは代替的に、いくつかの実施形態は、例えば、潜在的な危険性についてユーザに警告する必要性を協調的に決定するために、異なるウェアラブルデバイスがユーザの同じまたは異なる健康パラメータを測定できるという認識に基づいている。例えば、あるウェアラブルデバイスは、他のウェアラブルデバイスが、ある期間にわたってユーザによって行われた歩み（ｓｔｅｐｓ）の数および／または速度を測定することができるときに、血圧を測定することができる。健康パラメータのこれらの２つの測定値は、より良くユーザに知らせるために協力的に使用することができる。
【００１０】
例えば、一実施形態では、ウェアラブルデバイスは、マスタースレーブ関係を形成する。この実施形態では、ウェアラブルデバイスの１つがマスターロール（ｍａｓｔｅｒ  ｒｏｌｅ）に割り当てられ、これを第３のデバイス（例えば、スマートフォン）によって実行させる代わりに、健康パラメータの比較を実行する。したがって、この実施形態は、システムに接続されるデバイスが１つ少なくなり、システムによって消費される電力が少なくなる。代替的な実施形態では、比較は、第３のデバイス、例えばスマートフォンによって実行される。この実施形態では、両方のウェアラブルデバイスがスレーブロール（ｓｌａｖｅ  ｒｏｌｅ）に割り当てられている。追加的に又は代替的に、マスター−スレーブ関係は、マスターデバイスを複数のスレーブに接続することができる。この懸念にさらに対処するために、第１の態様は、ウェアラブルデバイス間の接続関係を提供するコンピュータ実装方法を含み、この方法は、第１のウェアラブルデバイスの一以上のセンサーによりユーザの第１の健康パラメータを測定するステップと、第２のウェアラブルデバイスの一以上のセンサーにより前記ユーザの第２の健康パラメータを測定するステップと、前記第１の健康パラメータと前記第２の健康パラメータとの測定値の組み合わせに基づいて警告動作を決定するステップと、前記警告動作に基づいて前記ユーザへの通知を生成するステップとを含む。本発明のさらに別の態様は、ウェアラブルデバイス間の接続関係を与えるシステムを提供し、外システムは、第１のウェアラブルデバイスを有し、該デバイスは、前記第１のウェアラブルデバイスを装着しているユーザの第１の健康パラメータを測定するように構成された一以上のセンサーと、無線通信ネットワークにより前記ユーザの第２の健康パラメータの測定値を受け取るように構成されたトランシーバと、第１の健康パラメータおよび第２の健康パラメータの測定値の組み合わせに基づいて警告動作を決定するように構成され、前記警告動作に基づいて前記ユーザへの通知を生成するようにさらに構成されたプロセッサとを有する。
【００１１】
本発明のさらに別の態様は、プログラムを化体した非一時的コンピュータ読み取り可能記憶媒体を提供し、該記憶媒体は、前記プログラムはプロセッサにより実行されると、オンデマンド無線サービスを提供する方法を実行し、前記方法は、第１のデバイスの一以上のセンサーにより一以上のベースパラメータを測定するステップと、測定されたベースパラメータが所定基準を満たすことを判定するステップと、一以上の補助デバイスに一以上の追加測定値を要求するステップと、前記ベースパラメータの測定値と前記補助デバイスから受け取った追加測定値との組み合わせに基づいて、警告動作を決定するステップと、前記警告動作に基づいて前記ユーザへの通知を生成するステップとを含む。
【００１２】
本開示の好ましい実施形態は従属項に規定した。言うまでもなく、ウェアラブルデバイス間の接続関係を提供する、請求項に記載されたコンピュータ実施方法、システム、および請求項に記載された非一時的コンピュータ可読記憶媒体は、請求項に記載された方法および従属する請求項に規定された方法と同じ好ましい実施形態及び対応する利点を有し得る。
【００１３】
したがって、健康パラメータを測定するウェアラブルデバイス間の接続関係を提供する改良されたシステムおよび方法の技術的必要性が達成される。
【図面の簡単な説明】
【００１４】
【図１】本発明の一実施形態によるウェアラブルデバイス間の接続関係を提供する例示的なシステムにおいて、様々なウェアラブルデバイスが様々なパラメータを測定することを示す図である。
【図２】本発明の一実施形態による、ウェアラブルデバイス間の接続関係を提供する例示的なシステムが実装され得るネットワーク環境を示す図である。
【図３】本発明の一実施形態による、ウェアラブルデバイス間の接続関係を提供するシステムにおける例示的な割り当てられた動作を示す図である。
【図４】本発明の一実施形態による、ウェアラブルデバイス間の接続関係を提供するシステムにおける例示的なシステムを示す図である。
【図５】本発明の一実施形態による、ウェアラブルデバイス間の接続関係を提供するシステムにおける代替的なシステムを示す図である。
【図６】本発明の一実施形態による、本明細書で説明される特徴およびプロセスを実施することができる例示的なコンピューティングデバイスを示すブロック図である。
【図７】本発明の一実施形態による、ウェアラブルデバイス間の接続関係を提供するマスターベースソフトウェアモジュール方法を示すフローチャートである。
【図８】本発明の一実施形態による、ウェアラブルデバイス間の接続関係を提供するマスタートリガー方法を示すフローチャートである。
【図９Ａ】本発明の一実施形態による、ウェアラブルデバイス間の接続関係を提供する例示的な調整方法の実装を示す図である。
【図９Ｂ】本発明の一実施形態による、ウェアラブルデバイス間の接続関係を提供する調整方法を示すフローチャートである。
【図１０】本発明の一実施形態による、ウェアラブルデバイス間の接続関係を提供する方法を示すフローチャートである。
【図１１】本発明の一実施形態による、ウェアラブルデバイス間の接続関係を提供するコンピュータに実装される方法を示すブロック図である。
【図１２Ａ】ウェアラブルデバイスがマスター−スレーブロールに割り当てられている異なる実施形態による方法を示すブロック図である。
【図１２Ｂ】ウェアラブルデバイスがマスター−スレーブロールに割り当てられている異なる実施形態による方法を示すブロック図である。
【図１３】本発明のいくつかの実施形態による、ユーザの同じ健康パラメータを測定するように構成するために選択することができる３つのデバイスを示す。
【図１４Ａ】健康パラメータを測定するウェアラブルデバイスを選択するためにいくつかの実施形態によって使用されるルックアップテーブルを示す図である。
【図１４Ｂ】健康パラメータを測定するウェアラブルデバイスを選択するためにいくつかの実施形態によって使用されるルックアップテーブルを示す図である。
【図１５】本発明の一実施形態による第１のウェアラブルデバイスと協働する第２のウェアラブルデバイスを選択する方法を示すブロック図である。
【発明を実施するための形態】
【００１５】
添付した図面を参照して、本発明のいくつかの実施形態を説明する。以下の説明および図面は、本発明を例示するものであり、本発明を限定するものとして解釈されるべきではない。本発明の様々な実施形態の完全な理解を提供するために、多くの具体的な詳細が記載されている。しかし、場合によっては、本発明の実施形態を簡潔に説明するため、周知または従来通りの詳細は説明されない。
【００１６】
本明細書において「一実施形態（「ｏｎｅ  ｅｍｂｏｄｉｍｅｎｔ」又は「ａｎ  ｅｍｂｏｄｉｍｅｎｔ」）」とは、その実施形態に関して説明する具体的な機能、構造、特徴などが本発明の少なくとも１つの実施形態に含まれることを意味している。本明細書ではいろいろな箇所で「一実施形態において（“ｉｎ  ｏｎｅ  ｅｍｂｏｄｉｍｅｎｔ”）」と記載するが、必ずしも同じ実施形態を指すものではない。
【００１７】
図１は、ウェアラブルデバイスを装着しているユーザの様々な健康パラメータを測定する様々なウェアラブルデバイスを示す。このようなパラメータは、水分、カロリー、血圧、血糖またはグルコース、インシュリン、体温（すなわち体温計）、心拍数、体重、睡眠、歩数（すなわち歩数計）、速度または加速度（すなわち加速度計）ビタミンレベル、呼吸数、心音（すなわち、マイクロフォン）、呼吸音（すなわちマイクロフォン）、移動速度、皮膚水分、汗の検出、汗の組成、神経発火（すなわち、電磁センサー）、または類似の健康測定を含み得る。いくつかの実施形態では、追加のセンサーはまた、アレルゲン、空気の品質、空気湿度、空気温度、および同様の環境測定値を測定してもよい。幾つかのパラメータはさらに、様々な組み合わせに統合されてもよい（例えば、血圧と血糖とをまとめてもよい）。いくつかのウェアラブルデバイス（例えば、アップルウォッチ）は、異なるパラメータを監視する異なる複数のセンサーを有してもよい。
【００１８】
図１のウェアラブルデバイスは、チャートに沿って曲線１０１の下に描かれており、チャートの１つの軸は、技術進歩１０３の年を示し、チャートの他の軸は、様々なデバイス１０５を示している。チャートは、ウェアラブル技術の例示的な仮説的進展を示し、技術が進歩するにつれて、さまざまなパラメータを測定するために必要なウェアラブルデバイスが少なくなる可能性があることを示している。
【００１９】
図２は、本発明の一実施形態による、ウェアラブルデバイス間の接続関係を提供する例示的なシステムが実装され得るネットワーク環境を示す。図示されているように、ウェアラブルデバイス（２１１，２１３，２１５，２１７、および２１９）は、様々なベンダーから製造または販売され、異なるセンサーおよび機能（例えば、カロリー、血糖、歩数、体重の測定）を有する。各デバイスは、マスターまたはスレーブロール（ｍａｓｔｅｒ  ｏｒ  ｓｌａｖｅ  ｒｏｌｅ）を割り当てられてもよく、マスター／スレーブアプリケーション２４３を実行するスマートフォンなどのユーザモバイルデバイス２４１およびベンダー／ウェアラブルネットワークサーバ２３３に、クラウド／インターネット２３１を介して接続されてもよい。
【００２０】
例えば、ベンダー１はマスターデバイス１  ２１１に関連付けられ、ベンダー２はカロリーを測定するスレーブデバイス２  ２１３に関連付けられ、ベンダー３は血糖を測定するスレーブデバイス３  ２１５に関連付けられ、ベンダー４は歩数をカウントするスレーブデバイス４  ２１７に関連付けられ、およびベンダー５は、体重を測るスレーブデバイス５  ２１９に関連付けられることができる。各デバイスは、それぞれのロール（ｒｏｌｅ）に基づいて構成された対応するマスター／スレーブアプリケーションを有することができる。図２では、マスターデバイス１  ２１１のマスターロールは、円２０１によって示されている。
【００２１】
ロール（すなわち、マスターロール２０１またはスレーブロール）は、ウェアラブルデバイスの能力を含む様々な要因に基づいて割り当てられてもよい。ウェアラブルデバイスの中には、スレーブとしてしか動作できないものがあり、要求に応じてマスターウェアラブルデバイスにデータを出力する。マスターとなることができるいくつかのデバイスは、マスターロール２０１により適した別のマスターデバイスがある場合はスレーブとなってもよい。マスターロール２０１は、いくつかの実施形態では、どのウェアラブルデバイスが現在のマスターロール２０１に最も適しているかに応じて、ある時間に、第１のウェアラブルデバイスから第２のウェアラブルデバイスに移行することができる。
【００２２】
ベンダー／ウェアラブルネットワーク２３３は、一以上のサーバを含んでもよく、各ウェアラブルデバイスに関する情報を提供してもよい。この情報は、最良のマスタースレーブがどれであるか、またはマスタースレーブ関係をどのように構成するかを決定するために使用され得る。いくつかの実施形態では、ベンダー／ウェアラブルネットワーク２３３は、単一のウェアラブルデバイスに結び付けられてもよく、単一のベンダーによる複数のウェアラブルデバイスに結びつけられてもよく、または複数のベンダーによる複数のウェアラブルデバイスに結び付けられてもよい。いくつかの実施形態では、ベンダー／ウェアラブルネットワーク２３３は、クラウド／インターネット２３１を介して接続された様々な個別ベンダーネットワークおよび／またはウェアラブルネットワークを含む。
【００２３】
図３は、ウェアラブルデバイス間のマスター−スレーブ関係を提供するシステムにおける例示的な割り当てられた動作を示す。図３を参照すると、マスターデバイスによって実行される例示的な動作が「マスター」見出し３０１の下に示され、スレーブデバイス（またはいくつかの実施形態では複数のスレーブデバイス）によって実行される例示的な動作が「スレーブ」見出し３０３の下に示されている。以下、「スレーブデバイス３０３」とは、１つまたは複数の例示的なスレーブデバイスのセットのスレーブデバイスを指すと理解されるべきである。以下、「マスターデバイス３０１」とは、マスターロール２０１を満たす例示的なデバイスを指すと理解されるべきである。
【００２４】
マスターデバイス３０１は、マスターデバイスの１つ以上のキーパラメータ（例えば、ブロック３１１における血圧の上昇）の測定に基づいて、他の（スレーブ）デバイスをトリガすることができる。このように、マスターは、心臓が装着したスレーブデバイスが、他のタイプのデータ（例えば心拍リズムデータ）を取得し、このデータをマスターデバイスに報告することを要求することができる（ブロック３１３）。マスターデバイス３０１は、いくつかの実施形態では、スレーブデバイス３０３が単一の最新の測定値をマスターデバイス３０１に報告することを要求することができる。他の実施形態では、マスターデバイス３０１は、スレーブデバイス３０３が複数の最新の測定値をマスターデバイス３０１に報告することを要求することができる。例えば、マスターデバイス３０１は、スレーブデバイス３０３が要求を受信する前または後の最後の３分間にわたってスレーブデバイス３０３によって測定された心拍リズムデータを要求する優先リクエストをスレーブデバイス３０３に送信することができる。それぞれのスレーブデバイス３０３は、そのようなデータをマスターデバイス３０１に報告してもよく（ブロック３１３）、マスターデバイス３０１は、分析のためにスレーブデバイス３０３からのデータを使用することができる。
【００２５】
いくつかの実施形態では、マスターデバイス３０１は、スレーブデバイス３０３に追加のデータを要求するとき、アラートまたは通知をトリガすることができる。例えば、スレーブデバイス３０３は、ユーザの健康パラメータ（例えば、図３の心拍リズムデータ（ｈｅａｒｔ  ｒｈｙｔｈｍ  ｄａｔａ））を測定する前に、振動、テキスト／グラフィックス／ビデオの表示、音の再生、または小さな電気ショックを行ってもよい。あるいは、マスターデバイス３０１は、スレーブデバイスがユーザの健康パラメータを測定する前に、振動する、テキスト／グラフィックス／ビデオを表示する、音を再生する、または小さな電気ショックを与えるデバイスであってもよい。このような警報を用いて、適切な測定を行う（例えば、呼吸モニタのスレーブデバイスがユーザの胸部にあり、他の場所にないことを保証する）ために、例えば、ユーザに通知して、スレーブデバイスを配置または再構成して測定を適切に行うようにし、それによってスレーブデバイスがセキュア（ｓｅｃｕｒｅ）であること、またはスレーブデバイスがユーザの体の正しい位置に配置されることを確実にする。このような警報を用いて、マスターデバイス３０１の測定に存在する潜在的な危険性（スレーブデバイスによって未確認である）の警告をユーザに提供することもできる。また、このような警報を用いて、ユーザが特定の動作を実行するか、身体部分の視覚的チェックを実行すべきであることをユーザに示すこともできる。例えば、レイノー病を患っているユーザは、ユーザの手首に配置されたスレーブデバイス３０３またはマスターデバイスで振動または警報を受け取って、ユーザが自分の手を見て、結構が悪い為にそれらが白くなっていないことを確認してもよい。
【００２６】
マスターデバイス３０１は、いくつかの実施形態では、スレーブデバイス３０３に配置されたすべてのセンサーからの情報の単なるコレクタであり、複数の異なるデバイスから個別に情報を収集する必要はない（ブロック３２１、ブロック３２３）。そのような場合、マスターデバイス３０１は、（ブロック３１３のように）レポートを受信する割り当てられたデバイスであってもよく、マスターデバイス３０１は、ユーザモバイルデバイス２４１またはベンダー／ウェアラブルネットワーク２３３に報告してもよい（ブロック３１１）。いくつかの実施形態では、マスターデバイス３０１は、スレーブデバイス３０３から定期的にデータを収集または集めることができる（ブロック３２１）。
【００２７】
あるいは、スレーブデバイス３０３の出力を用いて、マスターデバイス３０１の出力を改善してもよい。例えば、歩数カウンタとして機能し、足に装着されるスレーブデバイス３０３は、ユーザの歩数の最も正確な測定値を提供することができる（ステップ３３３）。しかし、マスターデバイス３０１は手首に装着されてもよい。そのような場合、マスターデバイス３０１は、スレーブデバイス３０３から歩数（ｓｔｅｐ  ｃｏｕｎｔ）を収集し、次いで、例えばスレーブデバイス３０３によって報告された歩数を用いて合計距離を計算することによって、スレーブデバイス３０３からのデータに基づく計算のためにその歩数を用いる調整デバイスとして働くことができる（ブロック３３１）。いくつかの実施形態では、マスターデバイス３０１は、別のパラメータ（例えば、心拍数または位置）の最も正確な測定値を提供することができる。このような実施形態では、マスターデバイス３０１は、センサー測定値（ｓｅｎｓｏｒ  ｒｅａｄｉｎｇｓ）の組み合わせに基づいて計算を実行する（例えば、マスターデバイス３０１によって測定された心拍数とスレーブデバイス３０３によって報告された歩みの頻度の両方を使用して燃焼されたカロリーを計算する）こともできる。このように、スレーブデバイス３０３からの高精度のデータを提供して、マスターデバイス３０１によって実行される計算の精度を向上させることができる。
【００２８】
幾つかの実施形態では、マスターデバイス３０１は複数のスレーブデバイス３０３とリンクしていてもよい。いくつかの実施形態では、各スレーブデバイス３０３は、他のスレーブデバイス３０３の存在を知らない。他の実施形態では、あるスレーブデバイス３０３は、他のスレーブデバイス３０３も同じマスターデバイス３０１とリンクしていることを知っていてもよい。このような実施形態では、第１のスレーブデバイス３０３は、マスターデバイス３０１が第２のスレーブデバイス３０３からさらなる測定値を取得することを「コールする」または「推奨する」ことができ、特に、かかる測定値を併せて調べることが有用である場合（例えば、心拍数および心音、または血糖値およびインスリンレベルの場合）にそうである。マスターデバイス３０１は、この「コール（ｃａｌｌ）」または「推奨（ｒｅｃｏｍｍｅｎｄａｔｉｏｎ）」に従うかどうかを決定することができる。あるいは、マスターデバイス３０１は、複数のスレーブデバイス３０３からの測定値を使うべきか、または単一のスレーブデバイス３０３からの測定値で十分であるかどうかを単独で決定してもよい。
【００２９】
図４は、ユーザマスターモバイルデバイス２４１およびウェアラブルデバイス４０１を含む例示的なシステムを示す。ユーザマスターモバイルデバイス２４１は、例えば、スマートフォン、タブレット、ラップトップコンピュータ、デスクトップコンピュータ、ゲームコンソール、スマートテレビ、ホームエンターテインメントシステム、第２のウェアラブルデバイス、その他のデバイスであってもよい。ユーザマスターモバイルデバイス２４１は、いくつかの実施形態では、通信モジュール４６１、プロセッサ４６５、メモリ４６７、およびグローバルポジショニングシステム（ＧＰＳ）モジュール４６９を含むことができる。プロセッサ４６５は、マスタースレーブソフトウェアモジュールアプリケーション２４３を実行することができ、これは、マスタートリガソフトウェアモジュール４５１、調整ソフトウェアモジュール４５３、モバイルベースソフトウェアモジュール４５５、およびその他のソフトウェアモジュール４５７を含むことができる。
【００３０】
ユーザマスターウェアラブルデバイス４０１は、いくつかの実施形態では、通信モジュール４２１、プロセッサ４２５、メモリ４２７、およびグローバルポジショニングシステム（ＧＰＳ）モジュール４２９を含むことができる。例えば、通信モジュール４２１および４６１は、無線チャネルを介してデータを交換するトランシーバを含むことができる。プロセッサ４２５は、マスタースレーブソフトウェアモジュールアプリケーション４０３を実行できる。これは、マスター・トリガ・ソフトウェア・モジュール４１１、調整ソフトウェアモジュール４１３、マスター／スレーブ・ベース・ソフトウェア・モジュール４１５（すなわち、ベース・マスター・ソフトウェア・モジュール５３１、ベース・スレーブ・ソフトウェア・モジュール５３３、またはその両方）、およびその他のソフトウェアモジュール４１７を含む。図示したユーザマスターウェアラブルデバイス４０１は、一以上のセンサーを含むセンサー４２３をさらに含む。ユーザマスターウェアラブルデバイス４０１は、マスターロール（ｍａｓｔｅｒ  ｒｏｌｅ）２０１またはスレーブロール（ｓｌａｖｅ  ｒｏｌｅ）として機能することができる。いくつかの実施形態では、ユーザマスターモバイルデバイス２４１および／またはユーザマスターウェアラブルデバイス４０１は、図４には図示されていない追加のモジュールを有することができる。同様に、いくつかの実施形態では、ユーザマスターモバイルデバイス２４１および／またはユーザマスターウェアラブルデバイス４０１は、図４に図示されている一以上のモジュールを有していなくてもよい。
【００３１】
図５は、ウェアラブルデバイス間のマスター−スレーブ関係を提供する代替的なシステムを示す。図示されたシステムは、様々なデバイスを含むことができ、それぞれがマスターデバイスまたはスレーブデバイスとして動作することが可能であってもなくてもよい。例えば、このシステムは、マスターのみのウェアラブルデバイス５０１を含むことができる。これは、スレーブデバイスロールではなくマスターデバイスロール２０１のみで動作できるウェアラブルデバイスである。このシステムは、スレーブのみのウェアラブルデバイス５０５を含むことができる。これは、マスターデバイスロールではなくスレーブデバイスロール２０１のみで動作できるウェアラブルデバイスである。このシステムはまた、マスターまたはスレーブのウェアラブルデバイス５０３を含むことができる。これは、状況に応じてマスターデバイスロール２０１またはスレーブデバイスロールのいずれかで動作できる。このシステムはまた、マスターデバイスロール２０１またはスレーブデバイスロールのいずれかで動作することができない、接続可能でないウェアラブルデバイス５０７を含むことができる。
【００３２】
図４のユーザマスターウェアラブルデバイス４０１と同様に、図５のウェアラブルデバイス（５０１，５０３，５０５，５０７）は、プロセッサ４２５、センサー４２３、メモリ４２７、通信モジュール４２１、およびＧＰＳモジュール４２９を含むことができる。これらウェアラブルデバイスのプロセッサ４２５は、マスター／スレーブアプリケーション４０３（図５には図示せず）を実行することができる。これはマスタートリガソフトウェアモジュール４１１、調整ソフトウェアモジュール４１３、およびその他のソフトウェアモジュール４１７を含むことができる。図５のデバイスは、バッテリ５１１、ディスプレイ５１３、およびディスプレイ５１３に表示されるグラフィカルユーザインタフェース５１５を含むことができる。言うまでもなく、図４及び図５のウェアラブルデバイスは、様々な例示的な実施形態を示しており、任意のユーザマスターウェアラブルデバイス４０１は、図４または図５に示されるいずれかのコンポーネント、または両図には図示しない追加的コンポーネントを含んでいてもよく、さらに、図４および図５のコンポーネントを含んでいなくてもよい。
【００３３】
マスターのみウェアラブルデバイス５０１およびマスターまたはスレーブウェアラブルデバイス５０３のような、マスターデバイスロール２０１を果たすことができるデバイスは、それらのプロセッサ４２５で、ベースマスターソフトウェアモジュール５３１および自己決定ソフトウェアモジュール５２１を実行することができる。
【００３４】
スレーブのみウェアラブルデバイス５０５およびマスターまたはスレーブウェアラブルデバイス５０３のような、スレーブデバイスロールを果たすことができるデバイスは、それらのプロセッサ４２５で、ベーススレーブソフトウェアモジュール５３３を実行することができる。マスターまたはスレーブウェアラブルデバイス５０３は、マスターデバイスロール２０１またはスレーブデバイスロールのいずれかを果たすことができるので、ベースマスターソフトウェアモジュール５３１およびベーススレーブソフトウェアモジュール５３３の両方を含むことができる。
【００３５】
自己決定ソフトウェアモジュール５２１は、マスターデバイスを扱うユーザが、どのデバイスがマスターになり、どのデバイスがスレーブになるのかを把握することを可能にする。いくつかの実施形態では、マスターデバイスロール２０１を果たすことができるウェアラブルデバイスは、（複数のマスター対応デバイスがある場合）ハンドシェイク動作を実行して情報を交換し、どのデバイスがマスターとなるべきかを把握することができる。いくつかの実施形態では、スレーブのみウェアラブルデバイスであっても、そのようなハンドシェイクに参加することができ、どのデバイスをマスターとすべきかを把握する助けとなることができる。例えば、マスターは、計算能力が最高であるか、またはバッテリ寿命スペクトルが最大のデバイスであってもよい。あるいは、デバイスのグループの１つとして１つのマスター専用デバイス５０１がある場合、それは、他のより多くのデバイスを同時に使用できるように、マスターデバイスロール２０１として選択することができる。
【００３６】
マスター・トリガ・ソフトウェア・モジュール４１１は、スレーブデバイスに送信される優先権要求のトリガを可能にする。調整ソフトウェアモジュール４１３は、マスター２０１とスレーブとの間の、式への入力（ａｎ  ｉｎｐｕｔ  ｔｏ  ａ  ｆｏｒｍｕｌａ）をリアルタイムに調整する。例えば、スレーブによって提供される歩数は、その精度を向上させるためにマスターによって使用されてもよい。
【００３７】
ベーススレーブソフトウェアモジュール５３２は、スレーブデバイスを動作させてスレーブとして動作させる。スレーブとして、一般的な責任は、そのセンサー４２３でその特定のパラメータを感知し、そのような情報をマスターデバイスロール２０１に報告することに限定されてもよい。マスターは一般的により多くの働きをしなければならない。
【００３８】
このように、デバイスは、自己決定ソフトウェアモジュール５２１を実行して、それが現在マスター２０１またはスレーブのどちらとして動作しているかどうかを判定することができる。デバイスがマスター２０１であると判定された場合、マスター・トリガ・ソフトウェア・モジュール４１１および調整ソフトウェアモジュール４１３と同様に、ベース・マスター・ソフトウェア・モジュール５３１が実行されてもよい。ベーススレーブソフトウェアモジュール５３３（存在する場合）は、マスターデバイス２０１になるよう割り当てられたデバイスでは実行されない。逆に、スレーブデバイスは、ベースマスターソフトウェアモジュール５３１を欠いており、マスタートリガソフトウェアモジュール４１１、調整ソフトウェアモジュール４１３、およびベーススレーブソフトウェアモジュール５３３のみを有する。一部のデバイスは接続することができもの（すなわち、接続可能でないウェアラブルデバイス５０７）もあり、それによってマスターまたはスレーブとして機能することができず、各ロールに固有のソフトウェアモジュールを有しない。
【００３９】
図６は、本明細書で説明される様々な特徴およびプロセスを実施するために利用され得るモバイルデバイスアーキテクチャを示す。アーキテクチャ６００は、スマートウェアラブルデバイスを含むスマートデバイスを含むが、これに限定されない任意の数の携帯デバイスに実装することができる。図６に示すアーキテクチャ６００は、メモリインターフェース６０２と、プロセッサ６０４と、周辺インターフェース６０６とを含む。メモリインターフェース６０２、プロセッサ６０４、および周辺インターフェース６０６は、別々のコンポーネントであってもよく、または１つまたは複数の集積回路の一部として集積されてもよい。様々なコンポーネントは、１つ以上の通信バスまたは信号線によって結合することができる。
【００４０】
図６に示すプロセッサ６０４は、データプロセッサ、画像プロセッサ、中央処理デバイス、または任意の様々なマルチコア処理デバイスを含むことを意図している。様々なセンサー、外部デバイス、および外部サブシステムを周辺機器インターフェース６０６に結合して、例示的なモバイルデバイスのアーキテクチャ６００内の任意の数の機能を可能にすることができる。例えば、モーションセンサ６１０、光センサー６１２、および近接センサー６１４は、周辺機器インターフェース６０６に結合されて、モバイルデバイスの向き、照明および近接機能を可能にすることができる。例えば、光センサー６１２は、タッチ面６４６の輝度の調整を可能にするために利用することができる。加速度計またはジャイロスコープのコンテキストで例示することができるモーションセンサ６１０を使用して、モバイルデバイスの動きおよび向きを検出することができる。検出された方向（例えば、ポートレートまたはランドスケープ）に従って表示オブジェクトまたは媒体を提示することができる。
【００４１】
他のセンサーは、温度センサー、バイオメトリックセンサ、またはその他の検知デバイスなどの周辺インターフェース６０６に結合して、対応する機能性を可能にすることができる。ロケーション・プロセッサ６１５（例えば、グローバル・ポジショニング・トランシーバ）は、周辺機器インターフェース６０６に結合して、地理的位置データを生成することを可能にして、それによりジオ・ポジショニング（ｇｅｏ−ｐｏｓｉｔｉｏｎｉｎｇ）を可能にする。集積回路チップのような電子磁力計６１６を周辺インターフェース６０６に接続して、真の磁北の方向に関連するデータを提供し、それによってモバイルデバイスはコンパスまたは方向性機能を有することができる。カメラサブシステム６２０および電荷結合素子（ＣＣＤ）または相補型金属酸化物半導体（ＣＭＯＳ）光学センサーなどの光センサー６２２は、写真およびビデオクリップの記録などのカメラ機能を可能にすることができる。
【００４２】
通信機能は、１つまたは複数の無線通信サブシステムを含むことができる１つまたは複数の通信サブシステム６２４によって可能にすることができる。無線通信サブシステム６２４は、赤外線などの光トランシーバと同様に８０２．５またはＢｌｕｅｔｏｏｔｈ（登録商標）トランシーバを含むことができる。有線通信システムは、ネットワークアクセスデバイス、パーソナルコンピュータ、プリンタ、ディスプレイ、またはデータを送受信することができるその他の処理デバイスなどの他のコンピューティングデバイスへの有線結合を確立するために使用できるユニバーサルシリアルバス（ＵＳＢ）ポートまたはその他の有線ポート接続などのポートデバイスを含むことができる。通信サブシステム６２４の特定の設計および実装は、デバイスが動作することが意図されている通信ネットワークまたは媒体に依存してもよい。例えば、デバイスは、ＧＳＭ（登録商標）（ａ  ｇｌｏｂａｌ  ｓｙｓｔｅｍ  ｆｏｒ  ｍｏｂｉｌｅ  ｃｏｍｍｕｎｉｃａｔｉｏｎｓ）ネットワーク、ＧＰＲＳネットワーク、拡張データＧＳＭ（登録商標）環境（ＥＤＧＥ）ネットワーク、８０２．５通信ネットワーク、符号分割多元接続（ＣＤＭＡ）ネットワークまたはＢｌｕｅｔｏｏｔｈ（登録商標）ネットワークなどで動作するように設計された無線通信サブシステムを含むことができる。通信サブシステム６２４は、デバイスが他の無線デバイスのための基地局として構成され得るように、ホスティングプロトコルを含み得る。通信サブシステムは、ＴＣＰ／ＩＰ、ＨＴＴＰ、またはＵＤＰなどの１つ以上のプロトコルを使用して、デバイスをホストデバイスと同期させることもできる。
【００４３】
オーディオサブシステム６２６は、音声対応機能を可能にするために、スピーカ６２８および１つ以上のマイクロホン６３０に結合することができる。これらの機能には、音声認識、音声複製、デジタル録音などがある。また、オーディオサブシステム６２６は、従来の電話機能を含むことができる。
【００４４】
Ｉ／Ｏサブシステム６４０は、タッチコントローラ６４２および／または他の入力コントローラ６４４を含むことができる。タッチコントローラ６４２は、タッチ面６４６に結合することができる。タッチ面６４６およびタッチコントローラ６４２は、容量性、抵抗性、赤外線または表面音波技術を含むがこれに限定されないいくつかのタッチ検知技術のいずれかを使用して、接触および動きを検出してもよい。タッチ面６４６との１つ以上の接触点を決定するための他の近接センサアレイまたは要素を同様に利用することができる。一実施形態では、タッチ面６４６は、仮想ボタンまたはソフトボタンと仮想キーボードを表示することができ、これはユーザが入出力デバイスとして使用できる。
【００４５】
他の入力コントローラ６４４は、１つまたは複数のボタン、ロッカースイッチ、親指ホイール、赤外線ポート、ＵＳＢポート、および／またはスタイラスなどのポインタデバイスなどの他の入力／制御デバイス６４８に結合することができる。１つまたは複数のボタン（図示せず）は、スピーカ６２８および／またはマイクロホン６３０の音量制御のためのアップ／ダウンボタンを含むことができる。いくつかの実施形態では、デバイス６００は、オーディオおよび／またはビデオの再生または記録デバイスの機能を含むことができ、他のデバイスにテザリングするためのピンコネクタを含むことができる。
【００４６】
メモリインターフェース６０２は、メモリ６５０に結合することができる。メモリ６５０は、高速ランダムアクセスメモリ、または磁気ディスク記憶デバイス、光学記憶デバイス、またはフラッシュメモリなどの不揮発性メモリを含むことができる。メモリ６５０は、Ｄａｒｗｉｎ、ＲＴＸＣ、ＬＩＮＵＸ、ＵＮＩＸ（登録商標）、ＯＳ  Ｘ、ＡＮＤＲＯＩＤ（登録商標）、ＷＩＮＤＯＷＳ（登録商標）、またはＶＸＷｏｒｋｓなどの組み込みオペレーティングシステムなどのオペレーティングシステム６５２を格納することができる。オペレーティングシステム６５２は、基本システムサービスを処理し、ハードウェア依存タスクを実行するための命令を含むことができる。いくつかの実装形態では、オペレーティングシステム６５２はカーネルを含むことができる。
【００４７】
メモリ６５０はまた、通信命令６５４を格納して、他のモバイル計算デバイスまたはサーバとの通信を可能にすることができる。また、通信命令６５４を用いて、ＧＰＳ／ナビゲーション命令６６８によって取得され得る地理的位置に基づいてデバイスによって使用される動作モードまたは通信媒体を選択することができる。メモリ６５０は、インターフェースの生成などのグラフィックユーザインタフェース処理を可能にするグラフィカルユーザインタフェース命令６５６；センサーに関連する処理および機能を可能にするためのセンサー処理命令６５８；電話関連のプロセスおよび機能を可能にする電話命令６６０；電子メッセージングに関連するプロセスおよび機能を可能にする電子メッセージング命令６６２；ウェブブラウジング関連のプロセスおよび機能を容易にするウェブブラウジング命令６６４；メディア処理に関連する処理および機能を可能にするメディア処理命令６６６；ＧＰＳおよびナビゲーションに関連するプロセスを可能にするためのＧＰＳ／ナビゲーション命令６６８；カメラ関連のプロセスおよび機能を可能にするためのカメラ命令６７０；歩数計関連プロセスを可能にする歩数計ソフトウェア６７２；アクティベーションレコード／ＩＭＥＩ関連プロセスを可能にするアクティベーションレコード／ＩＭＥＩソフトウェア６７４；及びモバイルコンピューティングデバイス上で、またはモバイルコンピューティングデバイスと関連して動作する他のアプリケーションの他の命令６７６を含み得る。メモリ６５０は、ナビゲーション、ソーシャルネットワーキング、ロケーションベースのサービスまたは地図表示に関連するアプリケーションのような他のプロセス、機能およびアプリケーションを可能にする他のソフトウェア命令を格納することもできる。
【００４８】
本明細書で説明される様々な実施形態は、プロセッサによる命令の実行を通じて様々な機能を実現する。言うまでもなく、ステップまたは他のアクションを能動的に実行する命令の文脈で様々な例を説明するが、そのようなアクションは、そのような命令を実行するプロセッサによって実際に実行される。
【００４９】
留意点として、マスター／スレーブアプリケーション（２４３，４０３）、マスタートリガソフトウェアモジュール（４１１，４５１）、調整ソフトウェアモジュール（４１３，４５３）、モバイルベースソフトウェアモジュール４５５、マスター／スレーブベースソフトウェアモジュール４１５、他のソフトウェアモジュール（４１７，４５７）、自己決定ソフトウェアモジュール５２１、ベースマスターソフトウェアモジュール５３１、ベーススレーブソフトウェアモジュール５１１、歩数計ソフトウェア６７２、起動記録／ＩＭＥＩソフトウェア６７４は、プロセッサによる実行のためのメモリ中に格納されるソフトウェアである。
【００５０】
メモリ６５０は、オペレーティングシステム命令６５２、通信命令６５４、ＧＵＩ命令６５６、センサー処理命令６５８、電話命令６６０、電子メッセージング命令６６２、ウェブブラウジング命令６６４、メディア処理命令６６６、ＧＮＳＳ／ナビゲーション命令６６８、カメラ命令６７０、およびプロセッサ６０４による実行のための他の命令６７６を含み得る。言うまでもなく、これらの命令は、参照リンクデータベースを格納する記憶デバイスまたは他の記憶デバイス（図示せず）のような不揮発性記憶デバイスに代替的または追加的に格納されてもよい。例えば、命令がプロセッサによって実行されるまで、フラッシュメモリまたは電子的読出し専用メモリ（ＲＯＭ）に格納されてもよく、命令は、実行時にメモリ６５０にコピーされる。本明細書で使用される場合、用語「記憶（ｓｔｏｒａｇｅ）」は、不揮発性メモリを指すと理解される。
【００５１】
プロセッサ６０４は、オペレーティングシステム命令６５２、通信命令６５４、ＧＵＩ命令６５６、センサー処理命令６５８、電話命令６６０、電子メッセージング命令６６２、メディア処理命令６６６、ＧＮＳＳ／ナビゲーション命令６６８、カメラ命令６７０及びその他の命令６７６に関連して上述した機能を含む、本明細書に記載する機能を実行できる任意のデバイスであってよい。例えば、プロセッサ６０４は、１つ以上のマイクロプロセッサ、１つ以上のフィールドプログラマブルゲートアレイ（ＦＰＧＡ）、または１つ以上の特定用途集積回路（ＡＳＩＣ）を含むことができる。いくつかの実施形態では、プロセッサは、ここに記載された機能の一部または全部を実行するために格納された命令を利用しないことがある。例えば、ＡＳＩＣは、オペレーティングシステム命令６５２、通信命令６５４、ＧＵＩ命令６５６、センサー処理命令６５８、電話命令６６０、電子メッセージング命令６６２、ウェブブラウジング命令６６４、メディア処理命令６６６、ＧＮＳＳ／ナビゲーション命令６６８、カメラ命令６７０、およびその他の命令６７６を参照して上述した機能の１つ以上を実行するように配線されてもよい。幾つかのかかる実施形態では、オペレーティングシステム命令６５２、通信命令６５４、ＧＵＩ命令６５６、センサー処理命令６５８、電話命令６６０、電子メッセージング命令６６２、ウェブブラウジング命令６６４、メディア処理命令６６６、ＧＮＳＳ／ナビゲーション命令６６８、カメラ命令６７６、およびプロセッサ６０４による実行のための他の命令６７６は省略されてもよい。これらはすでにプロセッサ６０４に実装されており、命令を記憶する必要はないからである。
【００５２】
上記の特定された命令およびアプリケーションのそれぞれは、上記の１つまたは複数の機能を実行するための１組の命令に対応し得る。これらの命令は、別々のソフトウェアプログラム、手順、またはモジュールとして実装する必要はない。メモリ６５０が含む命令は、追加されてもより少なくてもよい。さらに、モバイルデバイスの様々な機能は、１つまたは複数の信号処理および／または特定用途向け集積回路を含むハードウェアおよび／またはソフトウェアで実施することができる。
【００５３】
一定の機能は、データサーバなどのバックエンドコンポーネントを含むコンピュータシステム、アプリケーションサーバまたはインターネットサーバなどのミドルウェアコンポーネントを含むコンピュータシステム、またはグラフィカルユーザインタフェースまたはインターネットブラウザを有するクライアントコンピュータなどのフロントエンドコンポーネントを含むコンピュータシステム、またはこれらの任意の組み合わせで実装されてもよい。システムのコンポーネントは、通信ネットワークなどの任意形式または媒体のデジタルデータ通信により接続され得る。通信ネットワークのいくつかの例には、ＬＡＮ、ＷＡＮ、およびインターネットを構成するコンピュータとネットワークが含まれている。コンピュータシステムはクライアント及びサーバを含み得る。クライアントとサーバは、一般的に、互いに離れており、一般的には通信ネットワークを通してインターラクトする。クライアントとサーバとの関係は、それぞれのコンピュータ上で実行され、互いにクライアント・サーバ関係を有するコンピュータプログラムにより生じる。
【００５４】
開示された実施形態の１つまたは複数の特徴またはステップは、呼び出し元アプリケーションと、オペレーティングシステム、ライブラリルーチン、サービスを提供する関数、データを提供する関数、又は動作もしくは計算を実行する関数などの他のソフトウェアコードとの間で渡される１つまたは複数のパラメータを定義することができるＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）データを用いて実装してもよい。ＡＰＩは、ＡＰＩ仕様書に定義されている呼び出し規約（ｃａｌｌ  ｃｏｎｖｅｎｔｉｏｎ）に基づいて、パラメータリストまたは他の構造を介して１つまたは複数のパラメータを送受信するプログラムコード内の１つまたは複数の呼び出し（ｃａｌｌ）として実装できる。パラメータは、定数、キー、データ構造、オブジェクト、オブジェクトクラス、変数、データ型、ポインタ、配列、リスト、またはその他の呼び出し（ｃａｌｌ）であってもよい。ＡＰＩコールおよびパラメータは、任意のプログラミング言語で実装できる。プログラミング言語は、ＡＰＩをサポートする機能にアクセスするためにプログラマーが使用することができる語彙および呼び出し規約を定義することができる。いくつかの実装では、ＡＰＩコールは、入力機能、出力機能、処理機能、電力機能、および通信機能など、アプリケーションを実行するデバイスの機能をアプリケーションに報告することができる。
【００５５】
図７は、ウェアラブルデバイス間のマスター−スレーブ関係を提供するための例示的なマスターデバイスベースソフトウェア方法を示すフローチャートである。ユーザは、ユーザマスターウェアラブルデバイス４０１を起動することができる（ブロック７０１）。これにより、ユーザマスターウェアラブルデバイス４０１およびセンサアルゴリズムが開始される（ブロック７０３）。その後、ユーザは、ユーザマスターウェアラブルデバイス４０１がマスター２０１またはスレーブになるかどうかを決定することができる（ブロック７０５）。ユーザマスターウェアラブルデバイス４０１がマスター２０１になる場合（ブロック７２１）、ユーザは、マスター２０１がユーザマスターモバイルデバイス２４１であるかユーザマスターウェアラブルデバイス４０１であるかのいずれかをさらに選択することができる（ブロック７２３）。マスター２０１がユーザマスターモバイルデバイス２４１になる場合（ブロック７４１）、信号をユーザマスターモバイルデバイス２４１に送信して、そのマスターベースソフトウェアモジュールをトリガすることができる（ブロック７４３）。マスター２０１がユーザマスターウェアラブルデバイス４０１になる場合（ブロック７３１）、ユーザマスターウェアラブルデバイス４０１に信号を送信して、そのマスタートリガソフトウェアモジュールをトリガすることができる（ブロック７３３）。これにより、調整ソフトウェアモジュール（ブロック７３７）、マスターベースソフトウェアモジュール（ブロック７３９）、および他のソフトウェアモジュール（ブロック７３５）を開始することができる。
【００５６】
ブロック７０５でユーザがスレーブを選択すると（ブロック７１１）、ベーススレーブソフトウェアモジュールがロードされ（ブロック７１３）、そのそれぞれのトリガソフトウェアモジュール（４３１）（ブロック７１７）および調整ソフトウェアモジュール（ブロック７１５）を開始する。このようにして、自己決定（ｓｅｌｆ−ｄｅｔｅｒｍｉｎａｔｉｏｎ）はユーザの好みまたは選択に基づいてもよいが、自動的に実行されてもよい。    
図７のフロー図は、本発明の一定の実施形態によって実行される動作のある順序を示しているが、言うまでもなく、そのような順序は例示的なものである（例えば、代替的な実施形態は異なる順序で動作を実行してもよいし、ある動作を結合してもよいし、ある動作をオーバーラップしてもよい）。
【００５７】
図８は、ウェアラブルデバイス間のマスター−スレーブ関係を提供するための例示的なマスタートリガー方法を示すフローチャートである。そのようなトリガ方法は、マスターデバイスがベースパラメータ（例えば、血圧）を測定することを可能にできる（ブロック８０１）。マスターデバイスのパラメータがリスクのある範囲または危険な範囲にない（例えば、ブロック８０３で１２０ｍｍＨｇ未満の血圧）と判定された場合、マスターデバイスはセンサデータを収集し、必要に応じて分析し、データを（例えば、ユーザモバイルデバイス２４１またはベンダー／ウェアラブルネットワーク２３３に）報告することができる（ブロック８１３）。
【００５８】
マスターデバイスのパラメータが、リスクがある範囲または危険な範囲にあると判定された場合（例えば、ブロック８０３で１２０ｍｍＨｇを超える血圧が検出された場合）、マスターは（例えば、ブロック８２３の心拍リズムについて）スレーブデバイスをポーリング（ｐｏｌｌ）することができる。スレーブデバイスからのデータ（例えば、心拍リズム）が危険な範囲（例えば、測定可能な心臓不整脈）にある場合、スレーブデバイスからのデータをマスターデバイスに入力し戻すことができる（ブロック８２７）。マスターデバイスは、スレーブデバイスからのデータが危険な範囲内にあるかどうかを判定することができる（ブロック８３１）。
【００５９】
スレーブデバイスからのデータが危険な範囲にないが、マスターデバイスからのデータが危険な範囲にある場合、マスターデバイスは、潜在的な健康問題をマスターデバイスのユーザに通知することができる（ブロック８３５）。
【００６０】
スレーブデバイスからのデータが危険な範囲にあり、マスターデバイスからのデータも危険な範囲にある場合、マスターデバイスは、マスターデバイスのユーザに、ユーザが現在危険な状態にあること、または危険性の初期の潜在的な兆候が確認されているので、少なくとも危険な状態である確率が高いことを警告してもよい（ブロック８４３）。
【００６１】
マスタースレーブ間の結果が異なった場合の表を使用して、危険（または潜在的な危険）が存在するか否かを判定してもよい（ブロック８４５）。この表によれば、潜在的または検出された危険に関する通知がユーザに送信されてもよい。
【００６２】
図８のフロー図は、本発明の一定の実施形態によって実行される動作のある順序を示しているが、言うまでもなく、そのような順序は例示的なものである（例えば、代替的な実施形態は異なる順序で動作を実行してもよいし、ある動作を結合してもよいし、ある動作をオーバーラップしてもよい）。
【００６３】
図９Ａは、ウェアラブルデバイス間のマスター−スレーブ関係を提供する例示的な調整方法の一実施形態を示す。そのような調整は、例えば、性別、年齢、および体重の異なるユーザのカロリーの測定に関して行われても良い（例示的結果９１１を参照）。そのような統計は、事前に入力することができ、それにより、式で使用できるデータ（例えば、提供される例示的な式の係数または比率）を提供する。元の式は、歩数を使用することができる（例えば、歩数に１．５フィート／秒を乗算して、次いで５２８０で除算してマイルに変換する）（ブロック９０１）。
【００６４】
しかし、リアルタイムの歩数を生成するために調整（ｃｏｏｒｄｉｎａｔｉｏｎ）を使用してもよい。したがって、マスター調整ソフトウェアモジュールを実行しているマスターは、スレーブ調整ソフトウェアモジュールを実行しているスレーブ（例えば、足首に装着された歩数計）が正確な歩数を提供するように要求することができる（ブロック９０３）。応答に基づいて、パラメータ（すなわち、歩数）が更新され（ブロック９０５）、リアルタイムで正確な測定値を有する修正された式が提供される（ブロック９０７）。
【００６５】
図９Ｂは、ウェアラブルデバイス間のマスター−スレーブ関係を提供する例示的な調整方法を示すフローチャートである。一実施形態では、これは、ユーザがマスターデバイス２０１を開始することから始まる（ブロック９５１）。次いでユーザは、ベースパラメータを入力する（ブロック９５３）。次に、マスターデバイス２０１は、スレーブウェアラブルデバイス（例えば、ブロック９５５の歩数計ウェアラブルデバイス）を検索する。マスターデバイス２０１がスレーブウェアラブルデバイスを見つけられない場合、または、スレーブウェアラブルデバイスに接続できない場合、ブロック９５９において、マスターデバイス２０１は、元の計算式（例えば、ブロック９０１の式）を使用し続けることができる。しかし、マスターデバイス２０１がスレーブデバイスを見つけた場合、そのスレーブデバイスに測定を行うよう命令し（ブロック９６３）、そのスレーブデバイスに測定を同期させるように命令し（ブロック９６５）、最終的にスレーブデバイスから測定値をリアルタイムでダウンロードすることができる（ブロック９６７）。この後、ブロック９０７に示すように、いくつかの実施形態では、マスターデバイス２０１はその式を修正することができる。
【００６６】
図９Ａと図９Ｂのフロー図は、本発明の一定の実施形態によって実行される動作のある順序を示しているが、言うまでもなく、そのような順序は例示的なものである（例えば、代替的な実施形態は異なる順序で動作を実行してもよいし、ある動作を結合してもよいし、ある動作をオーバーラップしてもよい）。
【００６７】
図１０は、ウェアラブルデバイス間のマスター−スレーブ関係を提供する例示的な方法を示すフローチャートである。
スレーブ対応デバイス（ブロック１００３）とともに、マスターとして機能することができるウェアラブルデバイスを提供することができる（ブロック１００１）。マスターには、ベースソフトウェアモジュール、自己決定ソフトウェアモジュール、調整ソフトウェアモジュール、トリガソフトウェアモジュール、他のソフトウェアモジュール、および通信モジュール／インターフェースが設けられてもよい（ブロック１００５）。同様に、スレーブ対応デバイスには、ベースソフトウェアモジュール、トリガーソフトウェアソフトウェアモジュール、調整ソフトウェアモジュール、その他のソフトウェアモジュール、および通信モジュール／インターフェースが設けられてもよい（ブロック１００７）。
【００６８】
ユーザは、全てのウェアラブルデバイスを起動し（ブロック１００９）、自己決定ソフトウェアモジュールからマスターデバイスを選択することができる（ブロック１０１１）。その後、マスターは、スレーブデバイスをトリガし、スレーブにデータを要求し、それにより、かかるデータをマスターデバイスの動作と調整または統合することができる（ブロック１０１３）。
【００６９】
図１１は、本発明の一実施形態による、ウェアラブルデバイス間の接続関係を提供するコンピュータに実装される方法を示すブロック図である。この方法は、第１のウェアラブルデバイス１１１０の１つ以上のセンサーを介してユーザの第１の健康パラメータを測定するステップと、第２のウェアラブルデバイス１１２０の１つ以上のセンサーを介してユーザの第２の健康パラメータを測定するステップとを含む。この方法はまた、第１および第２の健康パラメータ１１３０の測定値の組み合わせに基づいて警告動作を決定するステップと、警告動作１１４０に基づいてユーザへの通知を生成するステップとを含む。このようにして、異なるセンサーによって決定されたユーザの複数の健康パラメータを使用して、ユーザの健康状態をよりよく評価することができる。例えば、本方法は、血圧及び心拍数の測定値を使用して、より正確な警告動作を決定することができる（例えば、血圧パラメータのみに基づいて決定された警告動作）。
【００７０】
実施形態の異なる実装では、第１または第２のウェアラブルデバイスは、マスターデバイスとして機能し、比較を実行することができる。あるいは、マスターロールをスマートフォンなどの第３のデバイスに委託することもできる。
【００７１】
図１２Ａは、一実施形態による方法のブロック図を示し、警告動作の決定は、マスターロールに割り当てられた第１のウェアラブルデバイスによって実行される。この実施形態では、第１の健康パラメータは、ユーザの健康状態を監視するベースパラメータである。この方法のステップは、第１のウェアラブルデバイスのプロセッサによって実行することができる。
【００７２】
この方法は、ベースパラメータが所定の基準１２０５を満たすとき、ベースパラメータの測定値をベンチマーク基準１２００と比較するステップと、スレーブロールに割り当てられた第２のウェアラブルデバイスに第２の健康パラメータの測定を要求するステップとを含む。比較の基準の例には、ベースパラメータの測定値の突然の変化、ユーザの潜在的な危険状態の検出、例えば、ウェアラブルデバイスのエネルギーの不足に起因する受信測定値の質の低下が含まれるが、これらに限定されない。
【００７３】
図１２Ｂは、ユーザの潜在的な危険性の存在を判定する、別の実施形態による方法を示すブロック図である。この方法は、ベースパラメータの測定値がユーザの潜在的な危険を示しているかどうかを判定するステップ１２１０と、スレーブロールに割り当てられた第２のウェアラブルデバイスに第２の健康パラメータの測定を要求するステップ１２２０とを含む。この方法はさらに、警告動作（ａｌｅｒｔ  ａｃｔｉｏｎ）が、高い潜在的危険性が存在することを示すかするステップ１２３０と、高い潜在的危険の存在の判定に基づいて通知を生成するステップ１２４０とを含む。この実施形態では、ユーザの危険が存在する場合にのみ、異なるウェアラブルデバイスからの測定値を比較する。さらに、１つの実施形態では、この方法は、第２の健康パラメータの測定を要求する前に、ユーザに警告するステップを含む。
【００７４】
本発明のいくつかの実施形態は、異なるウェアラブルデバイスのセンサーによって同じ健康パラメータを測定できるという認識に基づいている。例えば、歩数に対する健康パラメータは、ユーザの腕の揺動運動を使用する手首ブレスレット内の歩数計センサー、およびＧＰＳ信号を使用する歩数計センサーによって測定することができる。場合によっては、センサーの１つが利用できないか、または健康パラメータの正確な測定に適さない場合がある。例えば、ＧＰＳを使用して、屋外で走っているユーザの歩数を決定することができるが、ユーザが屋内で、トレッドミルで走っているときにはあまり有用ではない。
【００７５】
図１３は、ユーザの同じ健康パラメータを測定するように構成するように選択することができる３つのデバイスを示す。この例では、健康パラメータは、ユーザが移動した歩数であり、デバイスには加速度計を有する第１のウェアラブルデバイス１３２０（すなわち、手首ブレスレット）と、ユーザの足に取り付けられた第２のウェアラブルデバイス１３２２（すなわち、歩数計）と、ユーザの履物に埋め込まれた第３のウェアラブルデバイス１３２４（すなわち、位置センサ）を含む。これらのデバイスはすべて、異なる測定方法を使用してユーザの歩数を数えるように構成されている。例えば、第１の測定方法１３３０はユーザの加速度を用いて歩数を測定し、第２の測定方法１３３２はユーザの足の振りを使用し、第３の測定方法１３３４はユーザのＧＰＳ位置の変化を使用して、そのような変更に要する歩数を推定する。
【００７６】
本発明のいくつかの実施形態によれば、マスターロールに割り当てられたウェアラブルデバイスは、特定の健康パラメータに最適な装着方法を、利用可能な装着方法から選択することができる。本明細書で使用されるように、健康パラメータを測定するための最適な測定方法および／または最適なウェアラブルデバイスは、マスターデバイスが利用可能な他の方法よりも健康パラメータを測定するためにより適している。例えば、上記の例では、他の利用可能な方法よりもよく歩数を測定することができる歩数計の測定方法を選択することができる。別の例では、および／または別の健康パラメータを測定するために、その他の測定方法を選択することができる。
【００７７】
場合によっては、この方法は、最適な測定方法を選択するために、ウェアラブルデバイス１３４０，１３４２および１３４４を装着する方法を使用する。例えば、ユーザの足に取り付けられた歩数計は、腕に取り付けられた歩数計よりも正確である。マスターデバイスは、異なる健康パラメータを、異なる測定方法および／またはウェアラブルデバイスを装着する方法とマッチングさせるルックアップテーブルをメモリに格納することができる。いくつかの実施形態では、ルックアップテーブルが順序付けられているので、マスターデバイスは、ユーザに利用可能な測定方法から最適な測定方法を選択することができる（１３１０）。
【００７８】
図１４Ａおよび図１４Ｂは、健康状態パラメータを測定するウェアラブルデバイスを選択するためにいくつかの実施形態によって使用されるルックアップテーブルを示す図である。ルックアップテーブルは、健康パラメータ１４１０のリストを、ウェアラブルデバイス１４２０の様々な方法および対応する測定方法１４３０に関連付けることができる。このルックアップテーブルを使用して、マスターデバイスは、使用可能なウェアラブルデバイスが必要な健康パラメータを測定することができるかテストし、使用可能なウェアラブルデバイスのセットから最適なウェアラブルデバイスを選択できる。例えば、図１５Ａでは、２つのウェアラブルデバイスが健康パラメータ１を測定するように構成されている。ユーザが両方のウェアラブルデバイスを装着している場合、マスターはリストの先頭から第１のウェアラブルデバイスを選択することができる。
【００７９】
図１４Ｂは、測定方法１４４０とウェアラブルデバイス１４５０の装着方法とを関連付けるルックアップテーブルの一例を示す。例えば、健康パラメータを測定するために複数の測定方法が等しく最適である場合、マスターデバイスはウェアラブルデバイスの装着方法をテストして最適なものを選択することができる。
【００８０】
図１５は、第１のウェアラブルデバイスと協働する第２のウェアラブルデバイスを選択する方法を示すブロック図である。この方法は、ユーザが装着しているウェアラブルデバイスのセットを決定するステップであって、セット中の各ウェアラブルデバイスは、対応する測定方法を使用して第２の健康パラメータを測定するように構成されているステップ（１５１０）と、セット中の各ウェアラブルデバイスの測定方法を決定して測定方法のセットを生成するステップ（１５２０）とを含む。この方法はまた、第２の健康パラメータを測定するのに最適な測定方法を複数の測定方法のセットから選択するステップ（１５３０）と、第２の健康パラメータを測定するスレーブロールを有する第２のウェアラブルデバイスとして、対応する最適測定方法を用いてウェアラブルデバイスを選択するステップ（１５４０）とを含む。
【００８１】
幾つかの実施形態では、最適な測定方法は対応するウェアラブルデバイスの装着方法に基づいて決定される。       例えば、一実施形態は、異なる装着方法を有する少なくとも２つのウェアラブルデバイスを使用して、第２の健康パラメータの少なくとも２つの測定値を決定する。着用方法の例には、アームウェア、アイウェア、フットウェアおよび使用者の衣服に埋め込まれたウェアラブルデバイスが含まれる。この実施形態は、いくつかのタイプの健康パラメータに対して、いくつかの着用方法がより有利であるという認識に基づいている。
【００８２】
追加的または代替的に、いくつかの実施形態は、第２の健康パラメータの少なくとも２つの測定値の関数に基づいて、第２の健康パラメータの測定値を選択する。例えば、関数は、第１および第２のウェアラブルデバイスのセンサー、または第２の健康パラメータを測定するためのスレーブロールを有するセンサーによって測定された第２の健康パラメータの測定値の加重平均であってもよい。例えば、本方法は、デバイス１３３０，１３３２および１３３４によって決定された歩数を平均することができる。
【００８３】
いくつかの実施形態では、加重は、全部のまたは一部の測定で等しい。これらの場合では、加重関数が数学的平均を決定する。しかし、代替的な実施形態では、加重平均の加重は、測定が異なれば異なり、場合に応じて関数を適応させることができる。例えば、加重は、ユーザ活動の変化を検出することに応じて更新することができ、または加速度計の測定値より歩数計の測定値に対する加重を大きくすることができる。
【００８４】
ここで用いる図は、本発明の一定の実施形態によって実行される動作のある順序を示しているが、言うまでもなく、そのような順序は例示的なものである（例えば、代替的な実施形態は異なる順序で動作を実行してもよいし、ある動作を結合してもよいし、ある動作をオーバーラップしてもよい）。
【００８５】
本発明の実施形態は、これらの動作を実行するデバイスにも関する。そのようなコンピュータプログラムは、非一時的なコンピュータ可読媒体に格納される。機械読み取り可能媒体には、機械による読み取りが可能な形式で情報を記憶するいかなるメカニズムも含まれる。例えば、機械可読媒体（例えば、コンピュータ可読媒体）は、機械（例えば、コンピュータ）可読記憶媒体（例えば、ＲＯＭ（ｒｅａｄ  ｏｎｌｙ  ｍｅｍｏｒｙ）、ランダムアクセスメモリ（ＲＡＭ）、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリデバイス）を含む。
【００８６】
前出の図に示されたプロセスまたは方法は、ハードウェア（例えば、回路、専用論理など）、ソフトウェアモジュール（例えば、非一時的コンピュータ可読媒体に化体されたもの）、または両方の組み合わせを含む処理論理により実行され得る。プロセスまたは方法は、いくつかの逐次的動作に関して上記で説明されているが、言うまでもなく、説明した動作の一部は、異なる順序で実行してもよい。さらに、いくつかの動作は、順次的ではなく並列的に実行することができる。
【００８７】
様々な実施形態を説明したが、言うまでもなく、これらの実施形態は例示であり限定ではない。この説明は、本発明の範囲を本明細書に記載された特定の形態に限定するものではない。したがって、好ましい実施形態の幅および範囲は、上記の例示的な実施形態のいずれによっても限定されるべきではない。言うまでもなく、上記の説明は例示的なものであり、限定的なものではない。それとは反対に、本説明は、添付の特許請求の範囲によって規定されるような本発明の精神および範囲内に含まれ、そうでなくても当業者によって認識されるような代替物、改変物、および等価物を包含するものである。したがって、本発明の範囲は、上記の説明を参照せずに、その代わりに、添付の特許請求の範囲を参照して均等物の全範囲も考慮して決定すべきである。
【図１】
0006684797.tif 000002
【図２】
0006684797.tif 000003
【図３】
0006684797.tif 000004
【図４】
0006684797.tif 000005
【図５】
0006684797.tif 000006
【図６】
0006684797.tif 000007
【図７】
0006684797.tif 000008
【図８】
0006684797.tif 000009
【図９Ａ】
0006684797.tif 000010
【図９Ｂ】
0006684797.tif 000011
【図１０】
0006684797.tif 000012
【図１１】
0006684797.tif 000013
【図１２Ａ】
0006684797.tif 000014
【図１２Ｂ】
0006684797.tif 000015
【図１３】
0006684797.tif 000016
【図１４Ａ】
0006684797.tif 000017
【図１４Ｂ】
0006684797.tif 000018
【図１５】
0006684797.tif 000019