(実施形態)
以下、本発明の実施形態について図面を参照して説明する。図1に示すように、本発明の実施形態に係る無線通信システム1は、無線通信装置であるセントラル100と、セントラル100とは異なる他の無線通信装置である複数のペリフェラル201、202とから構成される。
セントラル100とペリフェラル201、202とは、Bluetooth(登録商標) low energy(以下、BLEという。)に基づいて、互いに無線通信を行う。BLEとは、Bluetooth(登録商標)と呼ばれる近距離無線通信規格において、低消費電力を目的として策定された規格(モード)である。
ここで、セントラル100は、ペリフェラル201、202にサービスを提供する。ペリフェラル201、202は、セントラル100から提供されたサービスを利用する。
セントラル100及びペリフェラル201、202は、例えば、携帯電話機、スマートフォン、タブレット型パーソナルコンピュータ、ノート型パーソナルコンピュータ、時計等の持ち運びが可能であって、BLEに基づく無線通信機能を有する端末である。
本実施形態では、一例として、セントラル100は、スマートフォンとし、ペリフェラル201、202は、セントラル100から各種データを受信して表示部250に表示する電子時計とする。
以下、この実施形態に係るセントラル100の構成について説明する。図2に示すように、セントラル100は、無線通信部110と、ROM(Read Only Memory)120と、RAM(Random Access Memory)130と、操作部140と、表示部150と、制御部160とを備える。
無線通信部110は、例えば無線周波数(RF:Radio Frequency)回路、ベースバンド(BB:Base Band)回路、集積回路(LSI:Large Scale Integration)等から構成される。無線通信部110は、アンテナ111を介して信号の送受信を行い、他の無線通信装置であるペリフェラル201、202とBLEに基づく無線通信を行う。
ROM120は、フラッシュメモリ等の不揮発性メモリから構成され、制御部160が各種機能を制御するためのプログラムや各種データ(例えばペリフェラル201、202から受信したタイミング情報や歩度情報)を記憶する。
RAM130は、揮発性メモリから構成され、制御部160が各種処理を行うためにデータを一時的に記憶するための作業領域として用いられる。
操作部140は、タッチパネル等から構成され、ユーザが指示を入力するために用いられるインタフェースである。
表示部150は、例えば、LCD(Liquid Crystal Display)、EL(Electroluminescence)ディスプレイ等によって構成され、制御部160から入力された画像データに応じて画像を表示する。
制御部160は、例えばCPU(Central Processing Unit)によって構成される。制御部160は、ROM120に記憶された各種プログラム(例えば、後述する制御処理を実現するためのプログラム)を実行することにより、セントラル100の全体の動作を制御する。
次に、セントラル100の制御部160の機能的構成について説明する。制御部160は、アドバタイズメント受信部161、接続要求送信部162、タイミング情報受信部163、判別部164、タイミング情報変更部165、変更通知部166、計時部167、クロック信号生成部168、切断要求送信部169として機能する。
アドバタイズメント受信部161は、スキャン指示に基づいて、ペリフェラル201、202から送信されるアドバタイズメントをアンテナ111及び無線通信部110を介して受信する。なお、アドバタイズメントとは、ペリフェラル201、202が自己の存在を知らしめるための告知情報である。スキャン指示のためのユーザ操作としては、例えば、セントラル100のサービスを利用するためのアプリケーションの起動などが考えられる。また、スキャン指示は、ユーザ操作に限らずアプリケーション起動後、定期的に行われてもよい。なお、アドバタイズメント受信部161は告知情報受信手段に相当する。
接続要求送信部162は、無線通信部110及びアンテナ111を介してペリフェラル201、202に接続を要求する接続要求の送信を行う。接続要求は、ペリフェラル201、202から送信されるアドバタイズメントを受信後、接続が必要な場合に送信される。ただし、セントラル100は、複数のペリフェラル201、202と同時に接続確立することはできないため、接続要求は、複数のペリフェラル201、202のいずれか一方に送信される。なお、接続要求送信部162は、接続要求手段に相当する。
タイミング情報受信部163は、ペリフェラル201、202から送信されるタイミング情報をアンテナ111及び無線通信部110を介して受信する。ここで、タイミング情報とは、ペリフェラル201、202がセントラル100に接続してセントラル100から時刻情報を取得するタイミングを示す情報である。受信したタイミング情報は、送信元のペリフェラルの識別情報と関連付けてROM120に記憶される。
判別部164は、タイミング情報受信部163がペリフェラル(例えばペリフェラル201)から受信したタイミング情報が示すタイミングが、他のペリフェラル(例えばペリフェラル202)から既に受信しているタイミング情報が示すタイミングと重なるかどうかを判別する。
判別部164は、他のペリフェラルから既に受信しているタイミング情報がない場合、受信したタイミング情報が示すタイミングを他のタイミング情報が示すタイミングと対比するまでもなくタイミングの重複はないものと判別する。判別部164は、ペリフェラルからタイミング情報の代わりにNullデータを受信した場合にもタイミングの重複はないものと判別する。
なお、このNullデータとは、空データであり、時刻情報を取得するタイミングであるためにタイミング情報の送信を行わない場合にペリフェラルから送信される。判別部164は、タイミングが同一の場合だけでなく、タイミング間のずれが所定時間より短い場合もタイミングの重複ありと判別する。
ここで、所定時間とは、後述する制御処理の接続確立〜接続解除までに要する時間を考慮して設定される時間である。これは、そのペリフェラル(例えばペリフェラル202)がセントラル100と通信する時間が、セントラル100が他のペリフェラル(例えばペリフェラル201)と通信する時間と重ならないようにするものである。なお、判別部164は、判別手段に相当する。
タイミング情報変更部165は、判別部164が重なる(重複あり)と判別した場合に、その受信したタイミング情報が示すタイミングを変更する。タイミングの変更は、その受信したタイミング情報が示すタイミングを、他のペリフェラル(例えばペリフェラル201)のタイミング情報が示すタイミングより遅いタイミングとなるように一定間隔ずらして変更する。
一定間隔とは、上述した所定時間以上の時間であり、例えば2分などである。また、制御部160は、タイミングが変更されたタイミング情報を送信元であるペリフェラル(例えばペリフェラル202)の識別情報と関連付けてROM120に記憶する。なお、タイミング情報変更部165は、タイミング情報変更手段に相当する。
変更通知部166は、タイミング情報変更部165によって変更されたタイミング情報に基づいて、そのタイミング情報の送信元であるペリフェラル201又はペリフェラル202に、そのペリフェラル201又はペリフェラル202(すなわち自装置)のタイミング情報を設定変更させる変更通知を送信する。なお、変更通知部166は、変更通知手段に相当する。
計時部167は、自装置(セントラル100)のクロック信号のパルス数をカウントするカウンタ回路から構成される。計時部167はカウントされるパルス数に基づいて時刻を計時する。また、制御部160は、計時部167がカウントするパルス数に基づいたタイミングで各種制御を実行する。なお、計時部167の計時時刻は、図示しない時刻情報取得部によるGPS(Global Positioning System)衛星又は基地局との時刻同期によって定期的に補正される。計時部167は、計時手段に相当する。
クロック信号生成部168は、基準クロックを生成する水晶発振器及び基準クロックから所望の周波数のクロック信号を生成する可変PLL(Phase locked loop)等から構成され、自装置(セントラル100)のクロック信号を生成する。このクロック信号の周波数は、可変PLLの分周比を変えることによって制御される。
切断要求送信部169は、無線通信部110を介して接続されているペリフェラル(ペリフェラル201又はペリフェラル202)に接続を切断するための切断要求の送信を行う。切断要求は、例えば、接続されているペリフェラルとのデータ通信が終了した場合又はユーザの切断操作があった場合に送信される。切断要求送信部169は、切断要求送信手段に相当する。
次に、この実施形態に係るペリフェラル201、202の構成について説明する。ここでは、ペリフェラル201とペリフェラル202は、同一の構成とし、ペリフェラル201の構成をそれらの代表例として説明する。また、以下の説明において、ペリフェラル202の構成要素には、ペリフェラル201と同一の符号を付して説明する。
図3に示すように、ペリフェラル201は、無線通信部210と、ROM220と、RAM230と、操作部240と、表示部250と、制御部260とを備える。
無線通信部210は、例えばRF回路、BB回路、LSI等から構成される。無線通信部210は、アンテナ211を介して、他の無線通信装置であるセントラル100とBLEに基づく無線通信を行う。
ROM220は、フラッシュメモリ等の不揮発性メモリから構成され、制御部260が各種機能を制御するためのプログラムやデータを記憶する。
RAM230は、揮発性メモリから構成され、制御部260が各種処理を行うためにデータを一時的に記憶するための作業領域として用いられる。
操作部240は、ボタンやスイッチ等から構成され、ユーザの操作を受け付けるインタフェースである。
表示部250は、例えば、LCD、ELディスプレイ等によって構成され、制御部260から入力された画像データに応じて画像を表示する。
制御部260は、例えばCPUによって構成される。制御部260は、ROM220に記憶された各種プログラム(例えば、後述する制御処理を実現するためのプログラム)を実行することにより、ペリフェラル201の全体の動作を制御する。
次に、ペリフェラル201の制御部260の機能的構成について説明する。図3に示すように、制御部260は、アドバタイズメント送信部261、接続要求受信部262、時刻補正部263、タイミング情報送信部264、タイミング設定変更部265、計時部266、クロック信号生成部267、切断要求受信部268として機能する。
アドバタイズメント送信部261は、アドバタイズメントを無線通信部210及びアンテナ211を介してセントラル100に送信する。アドバタイズメントの送信は、プログラムの処理に応じて定期的なタイミングで、又はユーザ操作が発生したタイミングで行われる。なお、アドバタイズメント送信部261は、告知情報送信手段に相当する。
接続要求受信部262は、セントラル100からの接続要求をアンテナ211及び無線通信部210を介して受信してセントラル100との接続を確立する。この接続の確立によってセントラル100とのデータ通信が可能となる。接続要求受信部262は、接続要求受信手段に相当する。
時刻補正部263は、セントラル100から送信される時刻情報を取得し、その時刻情報に基づいて計時部266が計時する時刻を補正する。換言すると、時刻補正部263は、セントラル100の計時する時刻に合致させるように、自装置(ペリフェラル201)の計時する時刻を補正する。時刻補正部263は、時刻補正手段に相当する。
タイミング情報送信部264は、セントラル100にタイミング情報を無線通信部210及びアンテナ211を介して送信する。このタイミング情報は、自装置(ペリフェラル201)がセントラル100に接続してセントラル100から時刻情報を取得するタイミングを示す情報である。また、初期状態において、タイミング情報が示すタイミングは、1日1回で「5:00:00」(AM5:00)の時刻として、ROM220に記憶されているものとする。タイミング情報送信部264は、タイミング情報送信手段に相当する。
タイミング設定変更部265は、セントラル100から受信したタイミング情報の変更通知に基づいて、自装置(ペリフェラル201)のタイミング情報を、変更後のタイミングを示すタイミング情報となるように設定変更する。タイミング設定変更部265は、タイミング設定変更手段に相当する。
計時部266は、自装置(ペリフェラル201)のクロック信号のパルス数をカウントするカウンタ回路から構成される。計時部266はカウントされるパルス数に基づいて時刻を計時する。計時部266が計時する時刻は、上述のように時刻補正部263によって適宜補正される。また、制御部260は、計時部266がカウントするパルス数に基づいたタイミングで各種制御を実行する。計時部266は、計時手段に相当する。
クロック信号生成部267は、基準クロックを生成する水晶発振器及び基準クロックから所望の周波数のクロック信号を生成する可変PLL等から構成され、自装置(ペリフェラル201)のクロック信号を生成する。このクロック信号の周波数は、可変PLLの分周比を変えることによって制御される。
切断要求受信部268は、セントラル100から接続を切断するための切断要求をアンテナ211及び無線通信部210を介して受信し、セントラル100との接続を切断する。切断要求受信部268は、切断要求受信手段に相当する。
次に、図4を参照しながらセントラル100及びペリフェラル201、202の時刻補正及びタイミング情報変更を行う制御処理について説明する。
この説明では、一例として、先にセントラル100とペリフェラル201が一通りの制御処理を行い、その後にセントラル100とペリフェラル202が一通りの制御処理を行う場合を説明する。また、この制御処理の開始時においてセントラル100のROM120には、ペリフェラルのタイミング情報がまだ一つも記憶されていない状態とする。換言すると、セントラル100がタイミング情報を取得するペリフェラルとして、ペリフェラル201が1台目であり、ペリフェラル202が2台目であるものとする。
まず、ペリフェラル201は、電源がONにされた場合にこの制御処理を開始し、制御部260が各種イベントの発生を検出できる状態にする。各種イベントは、所定のユーザ操作があった場合又はプログラム処理に基づく制御を実行するタイミングになった場合に発生する。なお、所定のユーザ操作とは、例えばセントラル100とペリフェラル201とのペアリング(初期認証)させる操作やペリフェラル201のプログラムを起動させる操作等である。
ここで、何らかの各種イベントが発生すると、ペリフェラル201の制御部260は、その発生したイベントを検出する(ステップS201)。イベントを検出すると、ペリフェラル201の制御部260は、そのイベントが何であるかの特定を行う。まず、ペリフェラル201の制御部260は、制御処理の契機(すなわちイベント)が所定のユーザ操作であるのかどうかを判別する(ステップS202)。
まず、所定のユーザ操作であると判別された場合(ステップS202;Yes)について一通り説明する。この場合、ペリフェラル201のアドバタイズメント送信部261は、アドバタイズメントをセントラル100に送信し、ペリフェラル201の接続要求受信部262は、セントラル100から接続要求を受信してセントラル100との接続を確立する(ステップS203)。一方、セントラル100のアドバタイズメント受信部161は、アドバタイズメントが送信される周波数帯域のチャンネルをスキャンしてペリフェラル201から送信されたアドバタイズメントを受信し、セントラル100の接続要求送信部162は、接続要求をペリフェラル201に送信してペリフェラル201との接続を確立する(ステップS101)。
接続が確立すると、セントラル100の制御部160は、ペリフェラル201にデータ要求を通知し、セントラル100のタイミング情報受信部163は、ペリフェラル201からタイミング情報を受信する(ステップS102)。一方、ペリフェラル201のタイミング情報送信部264は、セントラル100から通知されたデータ要求に応じて、タイミング情報をセントラル100へ送信する(ステップS204)。なお、このタイミング情報が示すタイミングは、ペリフェラル201のROM220が初期状態で記憶している「5:00:00」とする。
次に、セントラル100の判別部164は、ペリフェラル201から受信したタイミング情報が示すタイミングが、すでに他のペリフェラルから受信したタイミング情報が示すタイミングと重なるかどうかを判別する(ステップS103)。
しかし、上述のように、セントラル100のROM120には未だ1つもタイミング情報が記憶されていない。そのため、セントラル100の判別部164は、タイミングの重複なしと判別する(ステップS103;No)。その結果、1台目のペリフェラル201から受信したタイミング情報は、そのままセントラル100のROM120に記憶される。
その後、セントラル100の制御部160(又は変更通知部166)は、ペリフェラル201に時刻情報とタイミング情報とを送信する(ステップS105)。一方、ペリフェラル201の制御部260は、セントラル100から送信された時刻情報とタイミング情報とを受信する(ステップS205)。
ペリフェラル201の時刻補正部263及びタイミング設定変更部265は、受信した時刻情報及びタイミング情報に基づいて、計時部266で計時する時刻を補正するとともにタイミング情報を設定変更する(ステップS206)。ただし、上述のようにタイミング情報にはタイミングの変更が生じていないため、実質的には同じタイミング情報を上書きするだけである。
その後、セントラル100の切断要求送信部169は、切断要求をペリフェラル201に送信し、ペリフェラル201との接続を解除する(ステップS106)。一方、ペリフェラル201の切断要求受信部268は、セントラル100から切断要求を受信して、セントラル100との接続を解除する(ステップS212)。
これで、セントラル100とペリフェラル201との制御処理は一旦終了となり、セントラル100はペリフェラル201以外の他のペリフェラル(即ちペリフェラル202)との制御処理が可能な状態となる。
以上が、上記ステップS202で所定のユーザ操作であると判別された場合(ステップS202;Yes)の処理である。次に、上記ステップS202で所定のユーザ操作ではないと判別された場合(ステップS202;No)の処理について説明する。
まず、ペリフェラル201は、所定のユーザ操作ではない場合、現在の時刻が、タイミング情報が示すタイミング(接続タイミング)であるかどうかを判別する(ステップS207)。接続タイミングでない場合(ステップS207;No)、接続タイミングになるまで待機する。
現在の時刻が接続タイミングである場合(ステップS207;Yes)、ペリフェラル201のアドバタイズメント送信部261は、アドバタイズメントをセントラル100に送信し、セントラル100から接続要求を受信してセントラル100との接続を確立する(ステップS208)。一方、セントラル100のアドバタイズメント受信部161は、アドバタイズメントが送信される周波数帯域のチャンネルをスキャンしてペリフェラル201から送信されたアドバタイズメントを受信し、セントラル100の接続要求送信部162は、接続要求をペリフェラル201に送信してペリフェラル201との接続を確立する(ステップS101)。
接続が確立すると、セントラル100のタイミング情報受信部163は、ペリフェラル201にデータ要求を通知し、ペリフェラル201からNullデータを受信する(ステップS102)。一方、ペリフェラル201のタイミング情報送信部264は、セントラル100から通知されたデータ要求に応じて、Nullデータを送信する(ステップS209)。
次に、セントラル100の判別部164は、ペリフェラル201から受信したタイミング情報が示すタイミングが、すでに他のペリフェラルから受信したタイミング情報が示すタイミングと重なるかどうかを判別する(ステップS103)。
しかし、上述のように、セントラル100は、ペリフェラル201からタイミング情報ではなくNullデータを受信している。そのため、セントラル100の判別部164は、タイミングの重複なしと判別する(ステップS103;No)。
その後、セントラル100の制御部160は、ペリフェラル201に時刻情報を送信する(ステップS105)。一方、ペリフェラル201は、セントラル100から送信された時刻情報を受信する(ステップS210)。
ペリフェラル201の時刻補正部263は、受信した時刻情報に基づいて、計時部266で計時する時刻を補正する(ステップS211)。
その後、セントラル100の切断要求送信部169は、切断要求をペリフェラル201に送信し、ペリフェラル201との接続を解除する(ステップS106)。一方、ペリフェラル201の切断要求受信部268は、セントラル100から切断要求を受信して、セントラル100との接続を解除する(ステップS212)。
これで、セントラル100とペリフェラル201との制御処理は一旦終了となり、セントラル100はペリフェラル201以外の他のペリフェラル(即ちペリフェラル202)との制御処理が可能な状態となる。以上が、上記ステップS202で所定のユーザ操作ではないと判別された場合(ステップS202;No)の処理である。
次に、セントラル100とペリフェラル201の制御処理が終わった後に、セントラル100とペリフェラル202が制御処理を開始した場合の説明を行う。ただし、次の説明では、理解の容易のために、上記セントラル100とペリフェラル201の制御処理の説明と重複する説明を省略する。
まず、ペリフェラル202の制御部260は、上記ペリフェラル201の場合と同様にこの制御処理を開始し、各種イベントの発生を検出する(ステップS201)。イベントを検出すると、ペリフェラル202の制御部260は、そのイベントが何であるかの特定を行う。
まず、ペリフェラル202の制御部260は、制御処理の契機(すなわちイベント)が所定のユーザ操作であるのかどうかを判別する(ステップS202)。
以下、所定のユーザ操作であると判別された場合(ステップS202;Yes)についてのみ説明する。なお、所定のユーザ操作ではないと判別された場合(ステップS202;No)の処理については、上記ペリフェラル201の場合と同様の処理であるため説明を省略する。
まず、ペリフェラル202及びセントラル100は、上記ペリフェラル201の場合と同様に、アドバタイズメント及び接続要求の送受信を行って接続を確立する(ステップS203、ステップS101)。
接続が確立すると、セントラル100の制御部160は、ペリフェラル202にデータ要求を通知し、セントラル100のタイミング情報受信部163はペリフェラル202からタイミング情報を受信する(ステップS102)。一方、ペリフェラル202のタイミング情報送信部264は、セントラル100から通知されたデータ要求に応じて、タイミング情報をセントラル100へ送信する(ステップS204)。なお、このタイミング情報が示すタイミングは、ペリフェラル202のROM220が初期状態で記憶している「5:00:00」とする。
次に、セントラル100の判別部164は、ペリフェラル202から受信したタイミング情報が示すタイミングが、すでに他のペリフェラルから受信したタイミング情報が示すタイミングと重なるかどうかを判別する(ステップS103)。
ここで、セントラル100のROM120にはすでにペリフェラル201から受信したタイミング情報が記憶されている。そこで、セントラル100の判別部164は、ROM120に記憶されているペリフェラル201のタイミング情報と、今回ペリフェラル202から受信したタイミング情報を比較する。
そうすると、今回ペリフェラル202から受信したタイミング情報が示すタイミングは、ペリフェラル201のタイミング情報が示すタイミングと同じ「5:00:00」である。したがって、セントラル100の判別部164は、タイミングの重複ありと判別する(ステップS103;Yes)。
この場合、セントラル100のタイミング情報変更部165は、ペリフェラル202から受信したタイミング情報が示すタイミングを「5:00:00」から上述した所定時間(ここでは2分とする)だけずらして「5:02:00」に変更する(ステップS104)。セントラル100は、変更したタイミング情報をROM120に記憶する。
その後、セントラル100の制御部160(又は変更通知部166)は、ペリフェラル202に時刻情報と変更後のタイミング情報(変更通知)とを送信する(ステップS105)。一方、ペリフェラル202の制御部260は、セントラル100から送信された時刻情報とタイミング情報(変更通知)とを受信する(ステップS205)。
ペリフェラル202の時刻補正部263及びタイミング設定変更部265は、受信した時刻情報及び変更後のタイミング情報に基づいて、計時部266で計時する時刻を補正するとともにタイミング情報を設定変更する(ステップS206)。
その後、セントラル100の切断要求送信部169は、切断要求をペリフェラル202に送信し、ペリフェラル202の切断要求受信部268はセントラル100から接続切断要求を受信してセントラル100との接続を解除する(ステップS106、ステップS212)。
これで、セントラル100とペリフェラル202との制御処理は一旦終了となり、セントラル100はペリフェラル201、202以外の他のペリフェラル(本実施形態では存在しない)との制御処理が可能な状態となる。
以上説明したように、ペリフェラル201、202は、時刻情報を取得するタイミングを示すタイミング情報をセントラル100に送信する。セントラル100は、ペリフェラル(例えばペリフェラル202)から受信したタイミング情報が示すタイミングが、すでに受信した他のペリフェラル(例えばペリフェラル201)のタイミング情報が示すタイミングと重複しないように、その受信したタイミング情報のタイミングを変更する。また、セントラル100は、変更したタイミング情報に基づいてそのペリフェラル(例えばペリフェラル202)に、タイミング情報を設定変更させている。
このように、本実施形態の無線通信システム1によれば、ペリフェラル201とペリフェラル202が時刻情報を取得するタイミングが重複することを防止することができる。その結果、ペリフェラル201とペリフェラル202が同時にセントラル100に接続して時刻情報を取得しようとすることによって接続不良が発生し、時刻同期を実現できない虞がなくなる。
したがって、本実施形態の無線通信システム1によれば、セントラル100に時刻同期させるペリフェラルが2台(ペリフェラル201、202)であっても時刻同期を実現することができる。
以上で実施形態の説明を終了するが、上記実施形態は一例に過ぎない。そのため、ペリフェラル201、202とセントラル100の具体的な構成や処理の内容などは上記実施形態で説明したものに限られない。以下、上記実施形態の変形例について説明する。
(変形例)
また、セントラル100は、ペリフェラル201、202からタイミング情報を受信して、ペリフェラル201、202から受信したタイミング情報が示すタイミングに重複があった場合、制御処理の接続確立〜接続解除までに要する時間を考慮して設定される所定時間以上ずらしてタイミングの変更を行っている。この所定時間は、これに限られず、ペリフェラル201、202の歩度情報を考慮して設定されるものであってもよい。
例えば、セントラル100の変形例として図5の示すようにセントラル300を構成する。セントラル300の制御部170は、セントラル100の制御部160と同様な構成に加えて、さらに歩度情報受信部171を備える。歩度情報受信部171は、歩度情報受信手段に相当する。なお、図5において、セントラル100と共通する構成には同一の符号を付する。
一方、ペリフェラル201、202の変形例として、図6に示すようにペリフェラル401を構成する。ペリフェラル401の制御部270は、ペリフェラル201、202の制御部260と同様な構成に加えて、さらに歩度情報送信部269を備える。歩度情報送信部269は、歩度情報送信手段に相当する。なお、図6において、ペリフェラル201、202と共通する構成には同一の符号を付する。
このように構成されたセントラル300及びペリフェラル401の間において、ペリフェラル401からセントラル300に歩度情報を送信し、セントラル300は、受信した歩度情報に基づいて、所定時間を設定する。タイミングを変更する際にタイミングをずらす一定間隔は、この所定時間以上に設定される。なお、歩度情報とは、ペリフェラル401が計時する時刻のずれ量(即ち日差、月差等)を示す情報である。
以上説明したセントラル300に時刻同期させるペリフェラル401が複数台である場合、複数台のペリフェラル401同士で、それぞれ日差、月差の時刻ずれによって計時する時刻にずれが生じた場合であっても、複数台のペリフェラル401のタイミング情報同士のタイミングの間隔は、そのずれより大きい一定間隔となっている。したがって、複数台のペリフェラル401が各々の計時時刻のずれによってセントラル300に同時に接続しようとすることをより確実に防止することができる。
上記実施形態において、セントラル100に時刻同期させるペリフェラルはペリフェラル201、202の2台としている。しかし、ペリフェラルは3台以上であってもよい。
ペリフェラルは3台以上である場合、セントラル100のタイミング重複の判別(ステップS103)において既に受信したタイミング情報が2つ以上ある場合には、タイミングの変更(ステップS104)は、その中で最も遅いタイミングよりも一定間隔(例えば2分)ずらして変更する。すなわち、1台目のペリフェラルは「5:00:00」、2台目のペリフェラルは「5:02:00」、3台目のペリフェラルは「5:04:00」・・・となるように、ペリフェラルのタイミング情報が示すタイミングが設定変更される。
上記実施形態において、タイミング情報が示すタイミングを変更する場合、一定間隔(例えば2分)だけ遅いタイミングに変更している。しかし、一定間隔(例えば2分)だけ早いタイミングに変更するようにしてもよい。また、ペリフェラルが3台以上である場合、1台目のペリフェラルは「5:00:00」、2台目のペリフェラルは「4:58:00」、3台目のペリフェラルは「4:56:00」・・・となるように、ペリフェラルのタイミング情報が示すタイミングが設定変更されてもよい。なお、タイミング変更の際にずらす一定間隔は上記実施形態の2分に限られない。
このように、タイミングの変更が、他のペリフェラルのタイミング情報が示すタイミングよりも、早いタイミング又は遅いタイミングの一方に一定間隔ずらして変更する場合、タイミング変更の度にその都度、より早いタイミングにするかより遅いタイミングにするかを判別する必要がない。また、新たにタイミング情報を受信したペリフェラルに対しては、必ず一方に一定間隔ずらしてタイミングを変更すればよく、そのタイミングが空いているタイミングかどうかを判別する必要がなくなる。これは、上記実施形態のように2分程度の短い間隔だけずらす場合、24時間に数百台以上ものペリフェラルのタイミングを設定できるためである。また、セントラル100とのペアリングが抹消されたペリフェラルのタイミング情報を削除したりする必要もないし、それによって空きのタイミングが発生しても考慮することなく、順次タイミングを設定変更できるからである。したがって、セントラル100のタイミング変更の処理を簡単化することができる。
上記実施形態では、BLEに基づいて互いに無線通信を行うセントラル100及びペリフェラル201、202を無線通信装置の一例として示している。しかし、本発明は、BLEに基づいて無線通信を行う無線通信装置に限られない。例えば、本発明は、Wi−Fi(登録商標)又はZigBee(登録商標)等に基づく無線通信を行う無線通信装置等であってもよい。
また、上記実施形態では、判別部164は、ペリフェラル201からNullデータを受信した場合にタイミングの重複はないものと判別しているが、これに限られない。例えば、判別部164は、一定時間内にタイミング情報若しくはNullデータを受信できない場合にタイミングの重複はないものと判別してもよい。
また、上記実施形態では、ペリフェラル201が、受信したタイミング情報に基づいて、タイミング情報を設定変更するときに、タイミングの変更が生じていない場合には、実質的に同じタイミング情報を上書きしているが、これに限られない。例えば、実質的に同じタイミング情報を上書きせず、保持しているタイミング情報を引き続き保持するようにしてもよい。
また、上記実施の形態では、制御部160及び制御部260及び制御部170及び制御部270が時刻補正及びタイミング情報変更の制御処理を行ったが、これに限られない。例えば、これらの制御処理のうち一部又は全部を無線通信部110及び無線通信部210が行っても良い。
また、本発明に係るセントラル100及びペリフェラル201、202は、上記装置によらず、例えば、コンピュータがプログラムを実行することで、セントラル100の機能及びペリフェラル201、202の機能を実現してもよい。セントラル100の機能及びペリフェラル201、202の機能を実現するためのプログラムは、USB(Universal Serial Bus)メモリ、CD−ROM(Compact Disc−Read Only Memory)、DVD(Digital Versatile Disc)、HDD(Hard Disk Drive)等のコンピュータ読み取り可能な記録媒体に記憶されてもよいし、ネットワークを介してコンピュータにダウンロードされてもよい。
以上、本発明の好ましい実施形態について説明したが、本発明は係る特定の実施形態に限定されるものではなく、本発明には、特許請求の範囲に記載された発明とその均等の範囲が含まれる。以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
(付記1)
時刻を計時する計時手段と、
他の無線通信装置から時刻情報を取得して前記計時手段の時刻を補正する時刻補正手段と、
前記時刻情報を取得するタイミングを示すタイミング情報を、前記他の無線通信装置へ送信するタイミング情報送信手段と、
前記他の無線通信装置から前記タイミング情報の変更通知を受信し、該変更通知に基づいて前記タイミング情報を設定変更するタイミング設定変更手段と、
を備えることを特徴とする無線通信装置。
(付記2)
付記1に記載の無線通信装置を備えることを特徴とする電子時計。
(付記3)
無線通信装置に時刻情報を取得させるタイミングを示すタイミング情報を、該無線通信装置から受信するタイミング情報受信ステップと、
前記タイミング情報受信ステップにおいて受信したタイミング情報が示すタイミングが、前記無線通信装置以外の他の無線通信装置のタイミング情報が示すタイミングと重なるかどうかを判別する判別ステップと、
前記判別ステップにおいて重なると判別された場合には、前記タイミング情報が示すタイミングを変更するタイミング情報変更ステップと、
前記変更されたタイミング情報に基づいて前記無線通信装置に、該無線通信装置の前記タイミング情報を設定変更させる変更通知を送信する変更通知ステップと、
を備えることを特徴とする無線通信方法。
(付記4)
前記無線通信装置から該無線通信装置が計時する時刻のずれ量を示す歩度情報を受信する歩度情報受信ステップをさらに備え、
前記タイミング情報変更ステップにおけるタイミングの変更は、前記歩度情報に基づいて行う、
ことを特徴とする付記3に記載の無線通信方法。
(付記5)
前記タイミング情報変更ステップにおけるタイミングの変更は、前記他の無線通信装置のタイミング情報が示すタイミングよりも、早いタイミング又は遅いタイミングの一方に一定間隔ずらして変更する、
ことを特徴とする付記3又は4に記載の無線通信方法。
(付記6)
コンピュータを、 無線通信装置に時刻情報を取得させるタイミングを示すタイミング情報を、該無線通信装置から受信するタイミング情報受信手段、
前記タイミング情報受信手段において受信したタイミング情報が示すタイミングが、前記無線通信装置以外の他の無線通信装置のタイミング情報が示すタイミングと重なるかどうかを判別する判別手段、
前記判別手段によって重なると判別された場合には、前記タイミング情報が示すタイミングを変更するタイミング情報変更手段、
前記変更されたタイミング情報に基づいて前記無線通信装置に、該無線通信装置の前記タイミング情報を設定変更させる変更通知を送信する変更通知手段、
として機能させるためのプログラム。