(57)【要約】【課題】電力使用を減らすことができるコーディネータを提供する。【解決手段】パーソナルエリアネットワーク(PAN)コーディネータによって電力を節約するためのシステムおよび方法を説明する。PANコーディネータは、1つまたは複数のデバイスとワイヤレスPANを形成するために提供される。さらに、PANコーディネータは電力を節約するためにスリープ状態に入る。ワイヤレスPANは、PANコーディネータがアクティブ状態に入る場合に利用可能である。【選択図】図３
2014168306.tif 000002
【特許請求の範囲】
【請求項１】
1つまたは複数のコマンドを記憶するように構成されたキューを備えるパーソナルエリアネットワーク(PAN)コーディネータであって、
1つまたは複数のデバイスとのワイヤレスPANを形成するように構成され、
第1の条件が満たされた後に、第1の期間の間、アクティブ状態からスリープ状態へ移行し、
第2の条件が満たされた後に、前記スリープ状態から前記アクティブ状態へ移行し、
前記第2の条件は、ユーザの前記PANコーディネータのアクティベーションおよび前記ワイヤレスPAN内の少なくとも1つのデバイスでコマンドが保留されていることであり、前記第2の条件の後に、前記PANコーディネータは、第2の期間の間、前記アクティブ状態から前記スリープ状態へ移行することなく、前記コマンドを保留している少なくとも1つの前記デバイスからポーリングメッセージを受信することを待機し、前記ポーリングメッセージは、前記少なくとも1つのデバイスのためのコマンドが前記キューに保留されているかどうかを決定するために前記PANコーディネータをポーリングすることを特徴とするPANコーディネータ。
【請求項２】
前記1つまたは複数のデバイスと通信するように構成されたトランシーバであって、前記スリープ状態では電源を切断されるトランシーバを備えることを特徴とする請求項１に記載のPANコーディネータ。
【請求項３】
前記スリープ状態ではデータを送信または受信することができないことを特徴とする請求項１に記載のPANコーディネータ。
【請求項４】
前記ワイヤレスPANは、前記PANコーディネータが前記スリープ状態から前記アクティブ状態へ移行した後に前記1つまたは複数のデバイスに利用可能であることを特徴とする請求項１に記載のPANコーディネータ。
【請求項５】
前記第1の条件は、前記PANコーディネータがある期間の間アイドルであることを備えることを特徴とする請求項１に記載のPANコーディネータ。
【請求項６】
前記第1の条件は、前記PANコーディネータが前記スリープ状態に入ることを要求する前記PANコーディネータでの入力を受信することを備えることを特徴とする請求項１に記載のPANコーディネータ。
【請求項７】
前記第1の条件は、前記キューが空であることを備えることを特徴とする請求項１に記載のPANコーディネータ。
【請求項８】
前記第2の条件は、前記PANコーディネータが前記アクティブ状態に入ることを要求する前記PANコーディネータでの入力を受信することを備えることを特徴とする請求項１に記載のPANコーディネータ。
【請求項９】
前記第2の条件は、コマンドが前記キューで保留中であることを備えることを特徴とする請求項１に記載のPANコーディネータ。
【請求項１０】
前記1つまたは複数のコマンドのうちの少なくとも1つは、前記1つまたは複数のデバイスのうちの少なくとも1つによって実行されるジョブを備えることを特徴とする請求項１に記載のPANコーディネータ。
【請求項１１】
パーソナルエリアネットワーク(PAN)コーディネータと1つまたは複数のデバイスとの間でワイヤレスPANを形成するステップと、
第1の条件が満たされた後に、前記PANコーディネータを第1の期間の間、アクティブ状態からスリープ状態へ移行するステップと、
第2の条件が満たされた後に、前記PANコーディネータを前記スリープ状態から前記アクティブ状態へ移行するステップとを備え、
前記第2の条件は、ユーザの前記PANコーディネータのアクティベーションおよび前記ワイヤレスPAN内の少なくとも1つのデバイスでコマンドが保留されていることであり、前記第2の条件の後に、前記PANコーディネータは、第2の期間の間、前記アクティブ状態から前記スリープ状態へ移行することなく、前記コマンドを保留している少なくとも1つの前記デバイスからポーリングメッセージを受信することを待機し、前記ポーリングメッセージは、前記少なくとも1つのデバイスのためのコマンドがキューに保留されているかどうかを決定するために前記PANコーディネータをポーリングすることを特徴とする方法。
【請求項１２】
前記PANコーディネータは、前記1つまたは複数のデバイスと通信するように構成されたトランシーバであって、前記スリープ状態では電源を切断されるトランシーバを備えることを特徴とする請求項１１に記載の方法。
【請求項１３】
前記PANコーディネータは、前記スリープ状態ではデータを送信または受信することができないことを特徴とする請求項１１に記載の方法。
【請求項１４】
前記スリープ状態から前記アクティブ状態へ移行した後に、前記ワイヤレスPANを使用可能にするステップをさらに備えることを特徴とする請求項１１に記載の方法。
【請求項１５】
前記第1の条件は、前記PANコーディネータがある期間の間アイドルであることを備えることを特徴とする請求項１１に記載の方法。
【請求項１６】
前記第1の条件は、前記PANコーディネータが前記スリープ状態に入ることを要求する前記PANコーディネータでの入力を受信することを備えることを特徴とする請求項１１に記
載の方法。
【請求項１７】
前記第1の条件は、前記キューが空であることを備えることを特徴とする請求項１１に記載の方法。
【請求項１８】
前記第2の条件は、前記PANコーディネータが前記アクティブ状態に入ることを要求する前記PANコーディネータでの入力を受信することを備えることを特徴とする請求項１１に記載の方法。
【請求項１９】
前記第2の条件は、コマンドが前記キューで保留中であることを備えることを特徴とする請求項１１に記載の方法。
【請求項２０】
1つまたは複数のデバイスに向けられた1つまたは複数のコマンドを記憶するステップと、
前記1つまたは複数のメッセージのうちの少なくとも1つは、前記1つまたは複数のデバイスのうちの少なくとも1つによって実行されるジョブをさらに備えることを特徴とする請求項１１に記載の方法。
【請求項２１】
1つまたは複数のコマンドを記憶するための手段と、
PANコーディネータと1つまたは複数のデバイスとの間でワイヤレスパーソナルエリアネットワーク(PAN)を形成するための手段と、
第1の条件が満たされた後に、第1の期間の間、アクティブ状態からスリープ状態へ移行するための手段と、
第2の条件が満たされた後に、前記スリープ状態から前記アクティブ状態へ移行するための手段とを備え、
前記第2の条件は、ユーザの前記PANコーディネータのアクティベーションおよび前記ワイヤレスPAN内の少なくとも1つのデバイスでコマンドが保留されていることであり、前記第2の条件の後に、前記PANコーディネータは、第2の期間の間、前記アクティブ状態から前記スリープ状態へ移行することなく、前記コマンドを保留している少なくとも1つの前記デバイスからポーリングメッセージを受信することを待機し、前記ポーリングメッセージは、前記少なくとも1つのデバイスのためのコマンドが前記記憶するための手段に保留されているかどうかを決定するために前記PANコーディネータをポーリングすることを特徴とするワイヤレス装置。
【請求項２２】
パーソナルエリアネットワーク(PAN)のコンピュータに、1つまたは複数のコマンドを記憶させるためのコードと、
前記コンピュータに、1つまたは複数のデバイスとのワイヤレスPANを形成させるためのコードと、
前記コンピュータに、第1の条件が満たされた後に、第1の期間の間、アクティブ状態からスリープ状態へ移行させるためのコードと、
前記コンピュータに、第2の条件が満たされた後に、前記スリープ状態から前記アクティブ状態へ移行させるためのコードと
を記録し、
前記第2の条件は、ユーザの前記PANコーディネータのアクティベーションおよび前記ワイヤレスPAN内の少なくとも1つのデバイスでコマンドが保留されていることであり、前記第2の条件の後に、前記PANコーディネータは、第2の期間の間、前記アクティブ状態から前記スリープ状態へ移行することなく、前記コマンドを保留している少なくとも1つの前記デバイスからポーリングメッセージを受信することを待機し、前記ポーリングメッセージは、前記少なくとも1つのデバイスのためのコマンドが前記PANコーディネータに保留されているかどうかを決定するために前記PANコーディネータをポーリングすることを特徴とするコンピュータ可読な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、一般にパーソナルエリアネットワーク(PAN)に関し、より詳細には電力を節約するように構成されたZigBeeコーディネータに関する。
【背景技術】
【０００２】
パーソナルエリアネットワーク(PAN)は、身近にある多数のコンピューティングデバイスの間の通信ネットワークである。典型的なPANでは、コーディネータがネットワークツリーの根(root)を形成する。コーディネータは、1つまたは複数のデバイスに接続する。したがって、コーディネータは1つまたは複数のデバイスと通信することができる。しかしながら、典型的なPANでは、コーディネータはネットワークツリーの根であるので、常にオンのままである。オンのままでいることで、コーディネータは連続的に電力を使用する必要がある。したがって、電力使用を減らすことができるコーディネータが必要とされている。
【発明の概要】
【課題を解決するための手段】
【０００３】
本発明のシステム、方法およびデバイスはそれぞれ複数の態様を有し、それらのうちの単一のものが単独で、その望ましい属性を担うわけではない。以下で説明する特許請求の範囲によって表す本発明の範囲を限定することなく、そのより顕著な特徴をここで簡単に考察する。本考察を考慮した後で、また特に「発明を実施するための形態」と題するセクションを読んだ後で、本発明の特徴が、どのようにして電力を節約するように構成されたコーディネータを含む利点を提供するのかが理解されよう。
【０００４】
本開示の一態様は、パーソナルエリアネットワーク(PAN)コーディネータである。PANコーディネータは、1つまたは複数のデバイスに向けられた1つまたは複数のメッセージを記憶するように構成されたキューを備える。PANコーディネータは、1つまたは複数のデバイスとのワイヤレスPANの形成を開始するように構成される。PANコーディネータは第1の条件が満たされた後に、アクティブ状態からスリープ状態へ移行する。PANコーディネータは第2の条件が満たされた後に、スリープ状態からアクティブ状態へ移行する。
【０００５】
本開示の別の態様は、パーソナルエリアネットワーク(PAN)コーディネータによって電力を節約する方法である。本方法は、1つまたは複数のデバイスに向けられた1つまたは複数のメッセージを記憶するステップを備える。本方法は、1つまたは複数のデバイスとのワイヤレスPANの形成を開始するステップをさらに備える。本方法は、第1の条件が満たされた後に、アクティブ状態からスリープ状態へ移行するステップをさらに備える。本方法は、第2の条件が満たされた後に、スリープ状態からアクティブ状態へ移行するステップをさらに備える。
【０００６】
本開示のさらに別の態様は、ワイヤレス装置である。ワイヤレス装置は、1つまたは複数のデバイスに向けられた1つまたは複数のメッセージを記憶するための手段を備える。
ワイヤレス装置は、1つまたは複数のデバイスとのワイヤレスパーソナルエリアネットワーク(PAN)の形成を開始するための手段をさらに備える。ワイヤレス装置は、第1の条件が満たされた後に、アクティブ状態からスリープ状態へ移行するための手段をさらに備える。ワイヤレス装置は、第2の条件が満たされた後に、スリープ状態からアクティブ状態へ移行するための手段をさらに備える。
【０００７】
本開示のさらなる態様は、コンピュータ可読媒体を備えるコンピュータプログラム製品である。コンピュータ可読媒体は、コンピュータに、1つまたは複数のデバイスに向けられた1つまたは複数のメッセージを記憶させるためのコードを備える。コンピュータ可読媒体は、コンピュータに、1つまたは複数のデバイスとのワイヤレスパーソナルエリアネットワーク(PAN)の形成を開始させるためのコードをさらに備える。コンピュータ可読媒体は、コンピュータに、第1の条件が満たされた後に、アクティブ状態からスリープ状態へ移行させるためのコードをさらに備える。コンピュータ可読媒体は、コンピュータに、第2の条件が満たされた後に、スリープ状態からアクティブ状態へ移行させるためのコードをさらに備える。
【図面の簡単な説明】
【０００８】
【図１】例示的なパーソナルエリアネットワークを示す図である。
【図２】図1に示す例示的なデバイスの機能ブロック図である。
【図３】図1に示す例示的なコーディネータの機能ブロック図である。
【図４】図1に示すコーディネータと通信するデバイスの例示的なプロセスのフローチャートである。
【図５】図1に示すデバイスと通信するコーディネータの例示的なプロセスのフローチャートである。
【発明を実施するための形態】
【０００９】
「例示的な」という言葉は、「例、実例、または例示として機能すること」を意味するために本明細書で使用される。「例示的な」として本明細書で説明されるいかなる実施形態も、他の実施形態よりも好ましいまたは有利であると必ずしも解釈されるべきではない。本明細書で説明する技法は、Z-Wave、6LowPAN、Synkro、Wireless HART、MIWi、SP100、ZigBeeネットワーク、ブルートゥースなどの様々なパーソナルエリアネットワークのために使用されてもよい。これらの様々な通信技術は、当技術分野で知られている。明快のために、本方法およびデバイスのいくつかの態様を、ZigBeeネットワークを実装するZigBeeシステムについて説明する。
【００１０】
従来から、ZigBeeネットワークは互いに通信する2つ以上のZigBeeデバイスを備える。ZigBeeデバイスの1つのタイプは、コーディネータ(「コーディネータ」)である。コーディネータは、「ネットワークツリー」の「根」を形成することができる。したがって、コーディネータはネットワークを開始し、維持することができる。したがって、コーディネータはネットワークについての情報を記憶することができる。さらに、コーディネータは他のネットワークへのブリッジとしての役割ができる。ZigBeeデバイスの別のタイプは、ZigBeeエンドデバイス(「デバイス」)である。このデバイスは、コーディネータからメッセージまたはコマンドを受信することができる。コーディネータは、1つまたは複数のデバイスとネットワーク(たとえばペア)を形成することができる。
【００１１】
本明細書で説明する方法およびデバイスは、電力を節約するように構成されたコーディネータに対応する。このコーディネータは、使用中ではない場合、節電状態(たとえばスリープ状態)に入ることができる。
【００１２】
図1は、例示的なパーソナルエリアネットワークを示す図である。PAN100は、カバレージエリア101の中で1つまたは複数のデバイス(たとえばデバイス115、120、125)と通信するように構成されたコーディネータ110を備える。コーディネータ110は、デバイス115、120、125によって実行されるコマンドを記憶するように構成される。たとえば、コーディネータ110のユーザは、コーディネータ110でデバイス115のためのコマンド(たとえばジョブ)を入力することができる。コーディネータ110は、コーディネータ110でキューの中など、メモリの中にコマンドを記憶することができる。さらに、PAN100の中のデバイス115、120、125は、それぞれのデバイス115、120、125のために保留中の任意のコマンドについて、コーディネータをポーリングするように構成される。たとえば、デバイス115は周期的に保留中コマンドについてコーディネータをポーリングすることができる。コマンドが保留中である場合、コーディネータ110はコマンドをデバイス115に通信することができる。デバイス115は次いで、通信されたコマンドを実行することができる。さらに、デバイス115、120、125はコーディネータ110に接続し、通信チャネルを介して通信するように構成されてもよい。図示していないが、PAN100は追加のデバイスをさらに備えてもよい。
【００１３】
一実施形態では、デバイス115、120、125がコーディネータ110と通信する前に、デバイス115、120、125とコーディネータ110とは関連または「ペアリング」する。ペアリング(pairing)は、ユーザの制御下を含めて、デバイス115、120、125がコーディネータ110に登録するプロセスである。一旦ペアになると、デバイス115、120、125は典型的には、それらが範囲内にありアクティブである場合にはいつでも、ペアリングプロセスを再実行することなく、コーディネータ110と通信することができる。
【００１４】
ペアリングの前に、デバイス115、120、125とコーディネータ110は最初に、たとえば、デバイス115、120、125とコーディネータ110が発見メッセージの交換を通じて互いを発見する発見可能状態(discoverable state)に入ることによって、互いを発見しなければなら
ない。発見すると、デバイス115、120、125およびコーディネータ110は、互いにペアリングすることができる。ペアリングは、少なくとも部分的に、特定のデバイスに対してペアリングを制限するセキュリティ機能である。たとえば、ペアリングは、無許可の、または望ましくないデバイスのペアリングを防ぐために、第1のデバイスおよび/またはコーディネータが第2のデバイスおよび/またはコーディネータにパスワード(しばしばデバイスおよび/またはコーディネータのために工場で固定されている4ケタの数字など)で応答しなければならないパスワード認証方式を含み得るメッセージの交換を含む。ブルートゥースなどのネットワーキングプロトコルでは、発見およびペアリングは個別のプロシージャである。しかしながら、それらは、たいていの場合一緒に実行される。一旦ペアになると、デバイス115、120、125とコーディネータ110は互いに登録され、範囲内にありアクティブである場合、自動的に接続することができる。
【００１５】
一実施形態では、関連の後で、デバイス115、120、125はスリープ状態に入ってもよい。スリープ状態では、デバイスは若干の電力を使用し得るが、能動的に情報を送信/受信することはない。デバイス115、120、125はスリープ状態から起動し、アクティブ状態に入ってもよい。デバイス115、120、125は、周期的に(たとえば数秒ごとに)起動するように構成されてもよい。デバイス115、120、125は、メッセージをコーディネータ110に送信するようにさらに構成されてもよい。デバイス115、120、125はコーディネータ110から応答を受信する場合、応答に基づいて応答してもよい。デバイス115、120、125はコーディネータ110から応答を受信しない場合、スリープ状態に戻ってもよい。デバイス115、120、125はスリープ状態に戻る前に、設定した期間(たとえばタイムアウト期間)の間待機してもよい。
【００１６】
さらに、一実施形態では、関連の後で、コーディネータ110はスリープ状態に入ってもよい。スリープ状態の一実施形態では、コーディネータ110は電源を省電および/またはオフにしてもよいので、スリープ状態では使う電力はほんの少量からゼロである。別の実施形態では、コーディネータ110は、制限された操作性を維持するためなどに若干の電力を使用し得るが、能動的に情報を送信/受信することはない。コーディネータ110は、第1の条件が満たされる場合、スリープ状態に入ってもよい。一実施形態では、条件は、コーディネータ110が所定の期間(たとえば数秒)の間アイドルであるかどうかである。別の実施形態では、ユーザは、コーディネータ110上のボタンを押すなどして、スリープ状態を開始する。さらに別の実施形態では、コーディネータ110は、コーディネータ110と同じPANの中で、デバイスのためにコーディネータ110で保留中のコマンドが存在しない場合にスリープ状態に入る。コーディネータ110は、第2の条件が満たされる場合、スリープ状態から起動してアクティブ状態に入ってもよい。一実施形態では、ユーザがコーディネータ110上のボタンを押すなどしてアクティブ状態を開始する場合に、第2の条件が満たされる。
別の実施形態では、コーディネータ110は、コーディネータ110と同じPANの中の少なくとも1つのデバイスのためにコマンドがコーディネータ110で保留中の場合に起動する。アクティブ状態の一実施形態では、コーディネータ110は、コマンドが保留中の状態で、少なくとも1つのデバイスからメッセージを受信することを待機する。メッセージは、保留中コマンドを確認するためのポーリングメッセージを備えてもよい。応答して、コーディネータ110は、コマンドを少なくとも1つのデバイスに通信することができる。したがって、コーディネータ110は、ただアクティブ状態のままであることとは反対に、スリープ状態に入り、一定の条件の下でだけアクティブ状態に入ることによって、電力を節約することができる。
【００１７】
図2は、図1に示す例示的なデバイスの機能ブロック図である。図1に関して上記で考察したように、デバイス115はコーディネータ110と通信することができる。デバイス115は、アンテナ210を介してコーディネータ110からデータ(たとえばメッセージ、コマンド)を送受信することができる。アンテナ210は、さらに、トランシーバ220に結合され得る。トランシーバ220は、アンテナ210から送受信されたデータを変調および復調するように構成され得る。トランシーバ220は、さらに、プロセッサ230に結合され得る。プロセッサ230は、送信または受信されたデータを処理し得る、および/またはデバイス115の他の構成要素を制御し得る。プロセッサ230は、さらに、メモリ240からデータを読み出すため、またはメモリ240にデータを書き込むために、1つまたは複数のバスを介して結合され得る。
【００１８】
プロセッサ230は、さらに、ポーリングメッセージ生成器270に結合され得る。ポーリングメッセージ生成器270は、図1に関して考察したように、たとえば、コーディネータ110に送信されるポーリングメッセージを生成するように構成され得る。たとえば、ポーリングメッセージ生成器270は、ポーリングメッセージを生成することができる。ポーリングメッセージは、デバイス115の識別子を示す情報を備えてもよい。ポーリングメッセージは、さらに、保留メッセージを確認するための要求を示す情報を備えてもよい。ポーリングメッセージ生成器270は、ポーリングメッセージを処理のためにプロセッサ230に送信することができる。プロセッサ230は、ポーリングメッセージをトランシーバ220に送信することができる。トランシーバ220はポーリングメッセージを変調し、変調されたポーリングメッセージを、アンテナ210を介してコーディネータ110に送信することができる。
【００１９】
さらに、デバイス115は、デバイス115にコマンドを実行するように要求するコーディネータ110からメッセージを受信するように構成され得る。デバイス115は次いで、コマンドを実行することができる。たとえば、コーディネータ110は、デバイス115からポーリングメッセージを受信し、デバイス115のための保留中コマンドが存在すると判定した後で、コーディネータ110は、コマンドを示すメッセージをデバイス115に送信することができる。デバイス115は、トランシーバ220でメッセージを受信する。トランシーバ220は、メッセージを復調することができる。次いで、プロセッサ230はさらに、メッセージを処理する、および/またはメッセージの中で受信した情報をメモリ240に記憶することができる。
プロセッサ230はコマンドを実行するか、またはイベントハンドラ280などのデバイス115の適切な構成要素にコマンドを転送することができる。プロセッサはさらに、イベントハンドラ280に結合され得る。イベントハンドラ280は、受信したコマンドを実行するように構成され得る。たとえば、イベントハンドラ280は、光源のオン/オフを切り替えるスイッチであり得る。
【００２０】
一実施形態では、コマンドが実行された後、プロセッサ230はさらに、コマンドが実行されたことを示す返信メッセージを生成してもよい。プロセッサ230は、メッセージを変調するトランシーバ220にメッセージを送信することができる。次いで、トランシーバはアンテナ210を介して、メッセージをコーディネータ110に送信する。
【００２１】
プロセッサ230は、図1に関して上記で考察したように、アクティブ状態とスリープ状態との間でデバイス115を移行するように構成され得る。たとえば、プロセッサ230は、電力レベルを調整するように、および/またはデバイス115の様々な構成要素をオフ/オンにするように構成され得る。
【００２２】
トランシーバ220は、デバイス115がスリープ状態にある場合に、電力をオフにするか、または減らすように構成され得る。さらに、トランシーバ220は、デバイス115がアクティブ状態にある場合に、オンになるように、および/または情報を送信/受信するように構成され得る。
【００２３】
デバイス115に関して説明する機能ブロックは、個別に説明しているが、個別の構造要素でなくてもよいということを了解されたい。たとえば、プロセッサ230とメモリ240は単一のチップの中で具体化され得る。プロセッサ230は追加または代替として、プロセッサレジスタなどのメモリを含み得る。同様に、プロセッサ230、トランシーバ220、ポーリングメッセージ生成器270およびイベントハンドラ280のうちの2つ以上は、単一のチップの中で具体化され得る。さらに、トランシーバ220はトランスミッタ、レシーバ、または両方を備え得る。他の実施形態では、トランスミッタとレシーバは2つの個別の構成要素である。
【００２４】
メモリ240は、異なるレベルが異なる能力およびアクセス速度を有する多重レベル階層型キャッシュを含むプロセッサキャッシュを備え得る。メモリ240はまた、ランダムアクセスメモリ(RAM)、他の揮発性記憶デバイス、または不揮発性記憶デバイスを備え得る。記憶装置は、ハードドライブ、コンパクトディスク(CD)またはデジタルビデオディスク(DVD)などの光ディスク、フラッシュメモリ、フロッピー(登録商標)ディスク、磁気テープおよびZipドライブを含み得る。
【００２５】
デバイス115に関して説明する機能ブロックのうちの1つまたは複数および/または機能ブロックのうちの1つまたは複数の組合せは、汎用プロセッサ、デジタルシグナルプロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)または他のプログラマブル論理デバイス、個別ゲートまたはトランジスタ論理、個別ハードウェア構成要素、または本明細書で説明する機能を実行するように設計されたそれらの任意の適切な組合せとして具体化され得る。デバイス115に関して説明する機能ブロックのうちの1つまたは複数および/または機能ブロックのうちの1つまたは複数の組合せはまた、たとえばDSPとマイクロプロセッサとの組合せ、複数のマイクロプロセッサ、DSP通信と関連した1つまたは複数のマイクロプロセッサ、または任意の他のそのような構成などのコンピューティングデバイスの組合せとして実装され得る。
【００２６】
図3は、図1に示す例示的なコーディネータの機能ブロック図である。図1に関して上記で考察したように、コーディネータ110は1つまたは複数のデバイスと通信することができる。コーディネータ110は、アンテナ310を介してデバイス115、120、125からデータ(たとえばポーリングメッセージ、コマンド)を送受信することができる。アンテナ310は、さらに、トランシーバ320に結合され得る。トランシーバ320は、アンテナ310から送受信されたデータを変調および復調するように構成され得る。トランシーバ320は、さらに、プロセッサ330に結合され得る。プロセッサ330は、送信または受信されたデータを処理し得る、および/またはコーディネータ110の他の構成要素を制御し得る。プロセッサ330は、さらに、メモリ340からデータを読み出すため、またはメモリ340にデータを書き込むために、1つまたは複数のバスを介して結合され得る。
【００２７】
プロセッサ330は、さらに、入力デバイス370に結合され得る。入力デバイス370は、入力(たとえばユーザ入力)を受信するように構成され得る。たとえば、入力デバイス370は、コーディネータ110のユーザが押すことができる1つまたは複数の物理的ボタンを備え得る。入力デバイス370は、さらなる処理および/またはメモリ340への記憶のために、入力を示す情報をプロセッサ330に送信することができる。入力は、1つまたは複数のデバイス(たとえばデバイス115、120、125)に送信されるコマンドを備え得る。代替として、またはさらに、入力は、スリープ状態またはアクティブ状態に入るようにコーディネータ110のために指示することができる。プロセッサ330は、図1に関して上記で考察したように、アクティブ状態とスリープ状態との間でコーディネータ110を移行するように構成され得る。たとえば、プロセッサ330は、電力レベルを調整するように、および/またはコーディネータ110の様々な構成要素をオフ/オンにするように構成され得る。
【００２８】
プロセッサ330は、さらに、イベントハンドラ380に結合され得る。イベントハンドラ380は、1つまたは複数のデバイス(たとえばデバイス115、120、125)から受信したポーリングメッセージに応答するように構成され得る。たとえば、コーディネータ110は、アンテナ310を介して、トランシーバ320でデバイス115からポーリングメッセージを受信することができる。トランシーバ320は、ポーリングメッセージを復調することができる。次いで、プロセッサ330はさらに、メッセージを処理する、および/またはメッセージの中で受信した情報をメモリ340に記憶することができる。プロセッサ330は、ポーリングメッセージをイベントハンドラ380に転送することができる。イベントハンドラ380は、ポーリングメッセージを送信したデバイスを判定するように構成され得る。たとえば、ポーリングメッセージはデバイス115の識別子を備え得る。さらに、イベントハンドラ380は、デバイス115のために保留中のメッセージが存在するかどうかを判定するように構成され得る。たとえば、メモリ340は、保留中コマンドが記憶されるキューを備え得る。イベントハンドラ380は、デバイス115のために任意の保留中コマンドがキューにあるかどうかを判定するためにメモリ340にアクセスすることができる。イベントハンドラ380は、さらに、1つまたは複数の保留中コマンドを示す、または保留中のコマンドがないことを示す応答メッセージを生成するように構成され得る。イベントハンドラ380は、応答メッセージを処理のためにプロセッサ330に転送することができる。プロセッサ330は、処理された応答メッセージをトランシーバ320に送信することができる。トランシーバ320は応答メッセージを変調し、その応答メッセージを、アンテナ310を介してデバイス115に送信することができる。
【００２９】
トランシーバ320は、コーディネータ110がスリープ状態にある場合に、電力をオフにするか、または減らすように構成され得る。さらに、トランシーバ320は、コーディネータ110がアクティブ状態にある場合に、オンになるように、および/または情報を送信/受信するように構成され得る。
【００３０】
コーディネータ110に関して説明する機能ブロックは、個別に説明しているが、個別の構造要素でなくてもよいということを了解されたい。たとえば、プロセッサ330とメモリ340は単一のチップの中で具体化され得る。プロセッサ330は追加または代替として、プロセッサレジスタなどのメモリを含み得る。同様に、プロセッサ330、トランシーバ320およびイベントハンドラ380のうちの2つ以上は、単一のチップの中で具体化され得る。さらに、トランシーバ320はトランスミッタ、レシーバ、または両方を備え得る。他の実施形態では、トランスミッタとレシーバは2つの個別の構成要素である。
【００３１】
メモリ340は、異なるレベルが異なる能力およびアクセス速度を有する多重レベル階層型キャッシュを含むプロセッサキャッシュを備え得る。メモリ340はまた、ランダムアクセスメモリ(RAM)、他の揮発性記憶デバイス、または不揮発性記憶デバイスを備え得る。記憶装置は、ハードドライブ、コンパクトディスク(CD)またはデジタルビデオディスク(DVD)などの光ディスク、フラッシュメモリ、フロッピー(登録商標)ディスク、磁気テープおよびZipドライブを含み得る。
【００３２】
入力デバイス370は、限定されないが、キーボード、ボタン、キー、スイッチ、ポインティングデバイス、マウス、ジョイスティック、遠隔制御装置、赤外線検出器、(おそらくは、たとえば手のジェスチャーまたは顔のジェスチャーを検出するためにビデオ処理ソフトウェアに結合された)ビデオカメラ、動作検出器、および/または(おそらくは、たとえばボイスコマンドを検出するためにオーディオ処理ソフトウェアに結合された)マイクロフォンを備え得る。
【００３３】
コーディネータ110に関して説明する機能ブロックのうちの1つまたは複数および/または機能ブロックのうちの1つまたは複数の組合せは、汎用プロセッサ、デジタルシグナルプロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)または他のプログラマブル論理デバイス、個別ゲートまたはトランジスタ論理、個別ハードウェア構成要素、または本明細書で説明する機能を実行するように設計されたそれらの任意の適切な組合せとして具体化され得る。コーディネータ110に関して説明する機能ブロックのうちの1つまたは複数および/または機能ブロックのうちの1つまたは複数の組合せはまた、たとえばDSPとマイクロプロセッサとの組合せ、複数のマイクロプロセッサ、DSP通信と関連した1つまたは複数のマイクロプロセッサ、または任意の他のそのような構成などのコンピューティングデバイスの組合せとして実装され得る。
【００３４】
図4は、図1に示すコーディネータと通信するデバイスの例示的なプロセスのフローチャートである。ステップ405で、デバイス115、120、125のうちの少なくとも1つはコーディネータ110とペアリングする(たとえばネットワークを形成する)。ステップ410に進むと、デバイス115、120、125のうちの少なくとも1つはスリープ状態に入る。さらに、ステップ415で、デバイス115、120、125のうちの少なくとも1つは起動する。たとえば、デバイス115、120、125のうちの少なくとも1つは、所定の期間(たとえば数秒)の後で起動してもよい。ステップ417に進むと、デバイス115、120、125のうちの少なくとも1つは、コーディネータ110とともに形成されたネットワークがアクティブである(たとえばコーディネータ110がアクティブ状態である)かどうかを判定する。ステップ417で、デバイス115、120、125のうちの少なくとも1つが、ネットワークがアクティブではないと判定する場合、プロセス400はステップ410に戻る。ステップ417で、デバイス115、120、125のうちの少なくとも1つが、ネットワークがアクティブであると判定する場合、プロセス400はステップ420へ進む。ステップ420で、デバイス115、120、125のうちの少なくとも1つは、ポーリングメッセージをコーディネータ110へ送信する。ステップ425で、デバイス115、120、125のうちの少なくとも1つは、応答メッセージが所定のタイムアウト期間(たとえば数秒)内にコーディネータ110から受信されたかどうかを判定する。応答メッセージは、デバイス115、120、125のうちの少なくとも1つによって実行されるコマンドを備え得る。デバイス115、120、125のうちの少なくとも1つが、応答メッセージが受信されないと判定する場合、プロセス400はステップ410に戻る。デバイス115、120、125のうちの少なくとも1つが、応答メッセージが受信されたと判定する場合、プロセス400はステップ430に進む。ステップ430で、デバイス115、120、125のうちの少なくとも1つは、応答メッセージに応答する。
たとえば、デバイス115、120、125のうちの少なくとも1つは、応答メッセージの中に含まれたコマンドを実行することができる。任意選択のステップ435で、デバイス115、120、125のうちの少なくとも1つは、デバイス115、120、125のうちの少なくとも1つがメッセージに応答したことを示すコーディネータ110への返信メッセージを送信する。さらに、プロセス400はステップ410に戻る。
【００３５】
図5は、図1に示すデバイスと通信するコーディネータの例示的なプロセスのフローチャートである。ステップ505で、デバイス115、120、125のうちの少なくとも1つはコーディネータ110とペアリングする。ステップ510に進むと、コーディネータ110はスリープ状態に入る。さらに、ステップ515で、コーディネータ110は、図1に関して考察したように、コーディネータ110を起動するためにコーディネータ110でイベントが生じたかどうかを判定する。たとえば、コーディネータ110は、デバイス115、120、125のうちの少なくとも1つのためにコマンドが保留中であるかどうかを判定する。コーディネータ110がイベントが生じていないと判定する場合、プロセス500はステップ515に戻る。コーディネータ110がイベントが生じていると判定する場合、プロセス500はステップ520に進む。ステップ520で、コーディネータ110は起動し、アクティブ状態に入る。次にステップ525で、コーディネータ110は、デバイス115、120、125のうちの少なくとも1つからポーリングメッセージが受信されるかどうかを判定する。ポーリングメッセージは、デバイス115、120、125のうちの少なくとも1つの識別子および/または保留中コマンドを確認するための要求を備え得る。コーディネータ110がポーリングメッセージが受信されていないと判定する場合、プロセス500はステップ525に戻る。コーディネータ110が、デバイス115、120、125のうちの少なくとも1つからポーリングメッセージが受信されていると判定する場合、プロセスはステップ530に進む。ステップ530で、コーディネータ110は、デバイス115、120、125のうちの少なくとも1つのために保留中のコマンドを示す応答メッセージを、デバイス115、120、125のうちの少なくとも1つに送信する。任意選択のステップ535で、コーディネータ110は、コマンドが実行されたことを示す返信メッセージがデバイス115、120、125のうちの少なくとも1つから受信されているかどうかを判定する。コーディネータ110が返信メッセージが受信されていないと判定する場合、プロセスはステップ535に戻る。コーディネータ110が返信メッセージが受信されていると判定する場合、プロセスはステップ510に戻る。
【００３６】
実施形態に応じて、本明細書で説明する任意の方法のうちのいくつかの行為またはイベントは異なる順序で実行されてもよく、すべて追加、併合または省略されてもよい(たとえば、説明する行為またはイベントのすべてが方法の実施のために必要なわけではない)ということを認識されたい。さらに、いくつかの実施形態では、行為またはイベントは、連続的にではなく、たとえばマルチスレッド処理、割り込み処理またはマルチプロセッサを通して同時に実行され得る。
【００３７】
本明細書で開示した実施形態に関して説明する様々な例示的な論理ブロック、モジュール、回路、およびアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、または両方の組合せとして実装され得ることを、当業者は了解されよう。ハードウェアおよびソフトウェアのこの互換性を明確に示すために、様々な例示的構成要素、ブロック、モジュール、回路、およびステップが、それらの機能に関して上記で全体的に説明されている。そのような機能がハードウェアとして実装されるか、ソフトウェアとして実装されるかは、特定のアプリケーションおよび全体的なシステムに課せられた設計制約に依存する。当業者は、説明する機能を各特定の適用ごとに様々な方法で実装することができるが、そのような実装の決定は、本発明の範囲からの逸脱を生じるものと解釈すべきではない。
【００３８】
本明細書で開示する実施形態に関して説明する様々な例示的な論理ブロック、モジュール、および回路は、汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)もしくは他のプログラマブル論理デバイス、個別ゲートもしくはトランジスタ論理、個別ハードウェア構成要素、または本明細書で説明する機能を実行するように設計されたそれらの任意の組合せで実装または実行することができる。汎用プロセッサはマイクロプロセッサであり得るが、代替として、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、または状態機械であり得る。プロセッサはまた、コンピューティングデバイスの組合せ、たとえば、DSPとマイクロプロセッサとの組合せ、複数のマイクロプロセッサ、DSPコアと関連した1つまたは複数のマイクロプロセッサ、あるいは任意の他のそのような構成として実装され得る。
【００３９】
本明細書で開示する実施形態に関して説明する方法またはアルゴリズムのステップは、直接ハードウェアで具体化されるか、プロセッサによって実行されるソフトウェアモジュールで具体化されるか、またはその2つの組合せで具体化され得る。ソフトウェアモジュールは、RAMメモリ、フラッシュメモリ、ROMメモリ、EPROMメモリ、EEPROMメモリ、レジスタ、ハードディスク、取外し可能ディスク、CD-ROM、または当技術分野で知られている任意の他の形態の記憶媒体中に存在し得る。例示的な記憶媒体は、プロセッサが記憶媒体から情報を読み取り、記憶媒体に情報を書き込むことができるように、プロセッサに結合される。代替として、記憶媒体はプロセッサと一体であり得る。プロセッサおよび記憶媒体はASIC中に存在し得る。ASICはユーザ端末中に存在し得る。代替として、プロセッサおよび記憶媒体は、ユーザ端末中に個別構成要素として存在し得る。
【００４０】
上記の詳細な説明は、様々な実施形態に適用した本発明の新規の特徴を示し、説明し、指摘しているが、本発明の範囲から逸脱することなく、示したデバイスまたはプロセスの形式および詳細における様々な省略、置換および変更が当業者によってなされ得ることが理解されよう。認識されるように、本発明は、いくつかの特徴が他のものと別々に使用または実施されてもよいように、本明細書に記載する特徴および利点のすべてを提供するわけではない形式内で具体化され得る。本発明の範囲は、上記の説明によってではなく、添付の特許請求の範囲によって示される。特許請求の範囲の均等の意味および範囲内に入るすべての変更は、それらの範囲内に包含される。
【符号の説明】
【００４１】
100  PAN
101  カバレージエリア
110  コーディネータ
115、120、125  デバイス
210  アンテナ
220  トランシーバ
230  プロセッサ
240  メモリ
270  ポーリングメッセージ生成器
280  イベントハンドラ
310  アンテナ
320  トランシーバ
330  プロセッサ
340  メモリ
370  入力デバイス
380  イベントハンドラ
【図１】
2014168306.tif 000003
【図２】
2014168306.tif 000004
【図３】
2014168306.tif 000005
【図４】
2014168306.tif 000006
【図５】
2014168306.tif 000007