以下、本発明の実施形態について、図面を参照して説明する。なお、図中同一または相当部分には同一符号を付す。
(実施形態1)
図1に示すように、本発明の実施形態1に係る通信システム1000は、第一の通信装置である電子時計100と、第二の通信装置であるスマートホン200と、を備える。そして、スマートホン200はNTPクライアントであり、ネットワーク400を介してNTPサーバ300と通信する。ここでネットワーク400は、任意のネットワークを使用することができるが、例えばインターネットである。
また、電子時計100とスマートホン200とは、Bluetooth(登録商標) Low Energy(以下、BLEという。)を用いて互いに近距離無線通信を行う。BLEとは、近距離無線通信規格であるBluetooth(登録商標)において、低消費電力及び低コストを目的として策定された規格(モード)である。
上述したようにスマートホン200はNTPクライアントであり、NTPサーバ300と通信して、時刻情報を取得する。ここで、時刻情報とは、協定世界時を示す情報である。
以下、本実施形態に係る電子時計100の機能構成について説明する。図2に示すように、電子時計100は、制御部110と、記憶部120と、通信部131と、操作部132と、表示部133と、を備える。
制御部110は、CPU(Central Processing Unit)等のプロセッサを備え、記憶部120に記憶されたプログラムを実行することにより、電子時計100の全体の動作を制御する。
記憶部120は、ROM(Read Only Memory)や、RAM(Random Access Memory)を備え、制御部110が実行するプログラムや、必要なデータを記憶する。
通信部131は、RF(Radio Frequency)回路、BB(Base Band)回路、アンテナ等を備え、第二の通信装置であるスマートホン200とBLE規格に基づいて無線通信を行う。
操作部132は、例えば、操作ボタンやタッチパネル等を備え、ユーザの操作を受け付けるインタフェースである。
表示部133は、電子時計100がデジタル式の時計である場合は、LCD(Liquid Crystal Display)等を備え、電子時計100がアナログ式の時計である場合は、時針、分針等を備える。表示部133は、通常は時刻や日付を表示するが、制御部110からの制御により、操作メニュー等を表示することもできる。なお、電子時計100がアナログ式の時計である場合でも、時針や分針の位置により、操作メニュー等を表示することができる。
次に、電子時計100の制御部110の機能的構成について説明する。プロセッサとしての制御部110は、機能的には、通知信号生成部111、通知信号送信部112、時刻情報受信部113、時刻情報変更部114、計時部115を備える。これらの通知信号生成部111、通知信号送信部112、時刻情報受信部113、時刻情報変更部114、及び計時部115は、単一の制御部で機能しても良いし、各々別個に制御部が設けられて各動作が行われても良い。また、これらの通知信号生成部111、通知信号送信部112、時刻情報受信部113、時刻情報変更部114、及び計時部115の処理のうち一部又は全部が専用のハードウェア回路などで実行されても良い。
通知信号生成部111は、BLEのアドバタイズパケットのデータを生成する。アドバタイズパケットとは、BLEのペリフェラルが、BLEのセントラルに発見してもらうために周囲に送信するパケットである。実施形態1では、電子時計100はBLEのペリフェラルであり、スマートホン200はBLEのセントラルである。
通知信号送信部112は、通知信号生成部111が生成したアドバタイズパケットを、通信部131を介して周囲に送信する。時刻情報受信部113は、スマートホン200から時刻情報を、通信部131を介して受信する。本実施形態では、この時刻情報は、世界協定時を示す情報である。時刻情報変更部114は、後述する時刻情報記憶部122に記憶されている(計時部115が計時する)現在時刻の情報を、時刻情報受信部113が受信した時刻に変更する。計時部115は、時刻を計時し、時刻情報記憶部122に記憶されている現在時刻の情報を秒以下の所定の時間間隔で(例えば1/256秒毎に)更新する。つまり、制御部110はタイマーの機能も備える。
また、電子時計100の記憶部120は、機能的には、通知信号記憶部121、時刻情報記憶部122、通知時間記憶部123を備える。
通知信号記憶部121は、通知信号生成部111が生成したアドバタイズパケットを記憶する。時刻情報記憶部122は、現在時刻の情報を記憶する。通知時間記憶部123は、通知信号送信部112がアドバタイズパケットを周囲に送信する時間(例えば10秒)を記憶する。
以上、実施形態1に係る電子時計100の構成について説明した。なお、電子時計100は、スマートホン200から受信した協定世界時を、ユーザの所在地やサマータイムに基づく時差を考慮した現在時刻に変換する必要がある。本実施形態では、時刻情報受信部113がスマートホン200から時刻情報を受信する際に、時刻情報をユーザの所在地での現在時刻に変換し、その現在時刻を時刻情報記憶部122に記憶することとする。
続いて、実施形態1に係るスマートホン200の機能構成について説明する。図3に示すように、スマートホン200は、制御部210と、記憶部220と、通信部231と、操作部232と、表示部233と、サーバ通信部234と、を備える。
制御部210は、CPU等のプロセッサを備え、記憶部220に記憶されたプログラムを実行することにより、スマートホン200の全体の動作を制御する。制御部210はマルチスレッド機能に対応しており、複数のスレッド(異なる処理の流れ)を並行して実行することができる。
記憶部220は、ROMや、RAMを備え、制御部110が実行するプログラムや、必要なデータを記憶する。
通信部231は、RF回路、BB回路、アンテナ等を備え、第一の通信装置である電子時計100とBLE規格に基づいて無線通信を行う。
操作部232は、例えば、操作ボタンやタッチパネル等を備え、ユーザの操作を受け付けるインタフェースである。
表示部233は、LCDやEL(Electoro−Luminescence)ディスプレイ等を備える。
サーバ通信部234は、RF回路、BB回路、アンテナ等を備え、無線アクセスポイント等を経由して、NTPサーバ300と通信を行う。
次に、スマートホン200の制御部210の機能的構成について説明する。プロセッサとしての制御部210は、機能的には、通知信号受信部211、サーバ接続制御部212、サーバ時刻情報取得部213、時刻情報変更部214、計時部215、時刻情報送信部216を備える。これらのサーバ接続制御部212、サーバ時刻情報取得部213、時刻情報変更部214、計時部215、及び時刻情報送信部216は、単一の制御部で機能しても良いし、各々別個に制御部が設けられて各動作が行われても良い。また、これらのサーバ接続制御部212、サーバ時刻情報取得部213、時刻情報変更部214、計時部215、及び時刻情報送信部216の処理のうち一部又は全部が専用のハードウェア回路などで実行されても良い。
通知信号受信部211は、電子時計100が送信したアドバタイズパケットを、通信部231を介して受信する。
サーバ接続制御部212は、サーバ通信部234を介して、NTPサーバ300と接続する。サーバ時刻情報取得部213は、NTPサーバ300から協定世界時を示す時刻情報を、サーバ通信部234を介して取得する。時刻情報変更部214は、後述する時刻情報記憶部222に記憶されている(計時部215が計時する)時刻情報を、サーバ時刻情報得取得部213が取得した時刻に変更する。計時部215は、時刻を計時し、時刻情報記憶部222に記憶されている時刻情報を秒以下の所定の時間間隔で(例えば1/256秒毎に)更新する。つまり、制御部210はタイマーの機能も備える。時刻情報送信部216は、時刻情報記憶部222に記憶されている時刻情報を、通信部231を介して、電子時計100に送信する。
また、スマートホン200の記憶部220は、機能的には、通知信号記憶部221、時刻情報記憶部222、時刻同期完了フラグ223を備える。
通知信号記憶部221は、通知信号受信部211が受信したアドバタイズパケットを記憶する。時刻情報記憶部222は、計時部215により計時されている時刻を記憶する。時刻同期完了フラグ223は、後述する時刻同期処理スレッドにより、NTPサーバ300との時刻同期処理中は0が、時刻同期が完了すると1が、セットされるフラグである。
以上、実施形態1に係るスマートホン200の構成について説明した。なお、スマートホン200は、NTPサーバ300から取得した協定世界時を、ユーザの所在地やサマータイムに基づく時差を考慮した現在時刻に変換する必要がある。本実施形態では、スマートホン200は、時刻情報記憶部222に世界協定時を記憶し、表示部233に時刻を表示する際に、世界協定時をユーザの所在地の現在時刻に変換してから表示することとする。
次に、電子時計100及びスマートホン200それぞれの時刻修正処理について、図4及び図5を参照して説明する。図4は、電子時計100の時刻修正処理のフローチャートである。これは、ユーザから電子時計100をスマートホン200に接続して時刻同期する指示(時刻同期指示、リモート接続指示等)を受けた時に実行される。図5は、スマートホン200の時刻修正処理のフローチャートである。これは、スマートホン200が起動するとスマートホン200のメイン処理のスレッドとは別のスレッドとして実行が開始される。
最初に電子時計100の時刻修正処理について、図4を参照して説明する。まず、電子時計100の通知信号生成部111は、PDU(Protocol Data Unit) TypeがADV_INDであるアドバタイズパケットを生成する(ステップS101)。ここで生成されたアドバタイズパケットは、通知信号記憶部121に記憶される。PDU TypeがADV_INDであるアドバタイズパケットとは、CONNECTABLE(アドバタイズパケットを受信したセントラルと接続可能)で、UNDIRECTED(送信先指定無し)のアドバタイズパケットである。後述する実施形態2において、データ構造を説明するが、PDU Typeはアドバタイズパケットのヘッダ部で指定される。
そして、通知信号送信部112は、通知信号生成部111が生成したアドバタイズパケットを、通信部131を介して送信する(ステップS102)。この時、アドバタイズパケットの送信は、一回だけの送信で終了するのではなく、通知時間記憶部123に記憶されている時間(例えば10秒間)だけ送信し続ける。
次に、制御部110は、通信部131を介して、スマートホン200からの接続要求(Connection Request)を受信するまで待つ(ステップS103;No)。
スマートホン200から送信された接続要求を受信したら(ステップS103;Yes)、制御部110は、通信部131を介して、スマートホン200と接続する(ステップS104)。接続後、制御部110は、通信部131を介して、スマートホン200に対し、時刻情報送信要求を送信する(ステップS105)。
そして、時刻情報受信部113は、通信部131を介して、スマートホン200が送信した時刻情報を受信する(ステップS106)。次に、時刻情報変更部114は、時刻情報受信部113が受信した時刻情報を、ユーザの所在地の現在時刻に変更してから時刻情報記憶部122に記憶させることにより、計時部115が計時する時刻を変更する(ステップS107)。そして、制御部110は、スマートホン200との接続を切断し(ステップS108)、処理を終了する。
以上、電子時計100の時刻修正処理を説明した。次に、スマートホン200の時刻修正処理について、図5を参照して説明する。まず、通知信号受信部211は、通信部231を介して、電子時計100が送信するアドバタイズパケットを受信するまで待つ(ステップS201;No)。このステップS201の動作をスキャンとも呼ぶ。このスキャンは継続して行ってもよいし、スキャン停止を交えながら、定期的(例えば、10秒毎、数分毎等)に行ってもよい。
通知信号受信部211がアドバタイズパケットを受信したら(ステップS201;Yes)、サーバ接続制御部212は、NTPサーバ300に接続して時刻同期処理を行うスレッド(時刻同期処理スレッド)を起動して、時刻同期処理を本時刻修正処理と並行して実行させる(ステップS202)。時刻同期処理スレッドの処理については後述する。
次に、制御部210は、通信部231を介して、電子時計100に接続要求を送信し、電子時計100と接続する(ステップS203)。
電子時計100と接続後、制御部210は、通信部231を介して、電子時計100からの時刻情報送信要求を受信するまで待つ(ステップS204;No)。時刻情報送信要求を受信したら(ステップS204;Yes)、制御部210は、時刻同期完了フラグ223が0であるか否かを判定する(ステップS205)。
時刻同期完了フラグが0である間は(ステップS205;Yes)、時刻同期完了フラグ223が0であるか否かの判定処理を繰り返す。時刻同期完了フラグが0でなければ(ステップS205;No)、ステップS202で起動した時刻同期処理スレッドがNTPサーバ300との時刻同期処理を完了したということなので、時刻情報送信部216は、通信部231を介して、時刻情報を電子時計100に送信する(ステップS206)。そして、制御部210は、通信部231を介して、電子時計100との接続を切断し(ステップS207)、ステップS201に戻る。
なお、煩雑になるので上記では説明を省略したが、ステップS204において、時刻情報送信要求を受信する前に、電子時計100からの切断要求を受信したら、ステップS207に飛び、制御部210は、通信部231を介して、電子時計100との接続を切断し(ステップS207)、ステップS201に戻る。電子時計100は、ユーザから時刻同期の指示を受けていなくてもスマートホン200と接続するためにアドバタイズパケットを送信する場合があり、この場合は時刻情報送信要求無しで、接続が切断され得るからである。
以上、スマートホン200の時刻修正処理について説明した。次に、この処理中、ステップS202で起動される時刻同期処理スレッドについて、図6を参照して、説明する。
まず、制御部210は、時刻同期完了フラグ223に0をセットする(ステップS301)。次に、サーバ接続制御部212は、サーバ通信部234を介して、NTPサーバ300と接続する(ステップS302)。そして、サーバ時刻情報取得部213は、NTPサーバ300から協定世界時を示す時刻情報を取得する(ステップS303)。
次に、時刻情報変更部214は、サーバ時刻情報取得部213が取得した時刻情報を時刻情報記憶部222に記憶させることにより、計時部215が計時する時刻を変更する(ステップS304)。そして、制御部210は、時刻同期完了フラグ223に1をセットし(ステップS305)、処理を終了する。
以上、時刻同期処理スレッドの処理を説明した。この時刻同期処理スレッドの処理により、スマートホン200はNTPサーバ300との時刻同期処理を行い、時刻同期処理が完了すると、時刻同期完了フラグ223に1がセットされる。したがって、スマートホン200の時刻修正処理において、NTPサーバ300との時刻同期処理が完了してから、電子時計100に時刻情報を送信することが可能になる。
以上説明したように、実施形態1では、電子時計100がスマートホン200に対して時刻同期を行う場合には、電子時計100がスマートホン200との間で時刻同期処理を行うのに先立って、電子時計100からのアドバタイズパケットを受信した段階でスマートホン200がNTPサーバ300と接続して時刻同期処理を開始する。したがって、電子時計100が送信したアドバタイズパケットをスマートホン200が受信してから、電子時計100が時刻情報送信要求をスマートホン200に送信するまでの間、スマートホン200はNTPサーバ300との時刻同期処理を並列に処理することができる。よって、スマートホン200がNTPサーバ300との時刻同期処理を並列に処理できた時間の分だけ、電子時計100の時刻同期処理における待機時間を削減することができる。
(実施形態2)
時刻同期処理が必要な時のみ、スマートホン201がNTPサーバ300と接続する実施形態2について説明する。
本発明の実施形態2に係る通信システム1001のシステム構成は、図1に示される実施形態1に係る通信システム1000と同じである。実施形態2に係る電子時計101の構成も実施形態1に係る電子時計100と同じであり、図2に示される。
実施形態2に係るスマートホン201の機能構成は、図7に示すように、実施形態1に係るスマートホン200に、接続種別判定部217を追加した構成になっている。接続種別判定部217は、通知信号受信部211が受信したアドバタイズパケットに含まれる情報のうちの接続種別が、時刻データを必要とする接続種別であるかどうかを判定する。接続種別とは、電子時計101がスマートホン201と通信接続をする目的を示す情報である。
実施形態2に係る電子時計101が送信するアドバタイズパケットのデータ構造を図8に示す。図8に示すように、アドバタイズパケットは16ビットのヘッダと、ヘッダに続くペイロードとからなる。ヘッダにはアドバタイズパケットのタイプを示す4ビットのPDU Typeフィールドとペイロードの長さを示す6ビットのLengthフィールドが含まれている。実施形態2のアドバタイズパケットのPDU Typeフィールドには、実施形態1と同様にADV_INDを示す「0000」の4ビットが入る。Lengthフィールドで示されるペイロード長は6バイト以上37バイト以下の値である。ペイロードには、6バイトのアドバタイズアドレスと、0バイト以上31バイト以下のアドバタイズデータと、が含まれる。
アドバタイズデータは、いくつかのAD Structureを含む。AD Structureは、そのAD StructureのS_Dataのデータ長を表すS_Length(1バイト)と、S_Lengthで示されるバイト長のS_Dataと、を含む。S_Dataは、AD TypeとAD Dataを含む。AD Typeは通常1バイトであり、AD Dataのデータ種別を示す値が入る。
図8では、AD Typeの値は0xFFとなっている。これは、AD Dataが、Manufacturer Specific Dataであることを意味する。この場合のAD Dataは、最初の2バイトが製造業者の識別コードを示すCompany IDであり、後続するバイトには製造業者が任意の独自データを含めることができる。図8の例では後続する1バイトに接続種別を入れている。
接続種別は、電子時計101がスマートホン201と通信接続をする目的を示す情報であり、「ペアリング」、「通常接続」、「時刻合わせ」、「Find Me」等がある。「ペアリング」は、電子時計101とスマートホン201とがペアリングを行うときの接続種別である。「通常接続」は、電子時計101とスマートホン201とがお互いにリモート操作できるように通信接続するときの接続種別である。「時刻合わせ」は、電子時計101の時刻をスマートホン201の時刻に合わせるために接続するときの接続種別である。「Find Me」は、スマートホン201が見つからなくなった時など、電子時計101のボタン操作により、スマートホン201から音を出力させるために接続するときの接続種別である。
図8では、各接続種別を示す値の一例として、「ペアリング」は0x00、「通常接続」は0x01、「時刻合わせ」は0x02、「Find Me」は0x03を割り当てている。なお、これらの接続種別のうち、「Find Me」の接続の際は、電子時計101の時刻をスマートホン201の時刻に合わせる処理は行わない仕様になっている。したがって、「Find Me」は、時刻データを必要としない接続種別である。また、「ペアリング」「通常接続」「時刻合わせ」の接続の際は、電子時計101の時刻をスマートホン201の時刻に合わせる処理(時刻同期処理)を行う仕様になっている。したがって、「ペアリング」「通常接続」「時刻合わせ」は、時刻データを必要とする接続種別である。
実施形態2に係る電子時計101の時刻修正処理においては、アドバタイズデータに上述した接続種別を含める。この点以外は実施形態1に係る電子時計100の時刻修正処理と同じである。したがって、電子時計101の時刻修正処理を、図4を参照して説明すると、ステップS101において、電子時計101の通知信号生成部111は、図8に示すような、Manufacturer Specific Dataとして接続種別を含むアドバタイズパケットを生成する。その後の処理は、実施形態1に係る電子時計100の時刻修正処理と同じであり、図4に示すフローチャートに従って処理が進められる。なお、この電子時計101の時刻修正処理の実行タイミングも実施形態1と同じであり、ユーザから電子時計101をスマートホン201に接続して時刻同期する指示(時刻同期指示、リモート接続指示等)を、電子時計101が受けた時に実行される。
次に、実施形態2に係るスマートホン201の時刻修正処理について、図9を参照して説明する。この処理は、スマートホン201が起動すると、スマートホン201のメイン処理のスレッドとは別のスレッドとして実行が開始される。
まず、通知信号受信部211は、通信部231を介して、電子時計101が送信するアドバタイズパケットを受信するまで待つ(ステップS401;No)。
アドバタイズパケットを受信したら(ステップS401;Yes)、接続種別判定部217は、アドバタイズパケットに含まれる接続種別を取得する(ステップS402)。次に、接続種別判定部217は、取得した接続種別が、時刻データが必要な接続種別であるか否かを判定する(ステップS403)。時刻データが必要な接続種別でなければ(ステップS403;No)、ステップS401に戻る。
時刻データが必要な接続種別であるなら(ステップS403;Yes)、サーバ接続制御部212は、NTPサーバ300に接続して時刻同期処理を行うスレッド(時刻同期処理スレッド)を起動して、時刻同期処理を本時刻修正処理と並行して実行させる(ステップS404)。時刻同期処理スレッドの処理内容は、図6に示す実施形態1の時刻同期処理スレッドの処理内容と同じである。
次に、制御部210は、通信部231を介して、電子時計101に接続要求(Connection Request)を送信し、電子時計101と接続する(ステップS405)。
接続後、制御部210は、通信部231を介して、電子時計101からの時刻情報送信要求を受信するまで待つ(ステップS406;No)。時刻情報送信要求を受信したら(ステップS406;Yes)、制御部210は、時刻同期完了フラグ223が0であるか否かを判定する(ステップS407)。
時刻同期完了フラグが0である間は(ステップS407;Yes)、時刻同期完了フラグ223が0であるか否かの判定処理を繰り返す。時刻同期完了フラグが0でなければ(ステップS407;No)、ステップS404で起動した時刻同期処理スレッドがNTPサーバ300との時刻同期処理を完了したということなので、時刻情報送信部216は、通信部231を介して、時刻情報を電子時計101に送信する(ステップS408)。そして、制御部210は、通信部231を介して、電子時計101との接続を切断し(ステップS409)、ステップS401に戻る。
以上、スマートホン201の時刻修正処理について説明した。以上説明したように、実施形態2では、電子時計101がスマートホン201に対して時刻同期を行う場合にのみ、電子時計101がスマートホン201との間で時刻同期処理を行うのに先立って、スマートホン201はアドバタイズパケットを受信した段階でNTPサーバ300と接続して時刻同期処理を開始する。より具体的には、電子時計101が送信したアドバタイズパケットに時刻データを必要とする接続種別を示す情報が含まれていた場合にのみ、そのアドバタイズパケットをスマートホン201が受信してから、電子時計101が時刻情報送信要求をスマートホン201に送信するまでの間、スマートホン201はNTPサーバ300との時刻同期処理を並列に処理する。
したがって、スマートホン201がNTPサーバ300との時刻同期処理を並列に処理できた時間の分だけ、電子時計101の時刻同期処理における待機時間を削減することができる。そして、電子時計101が送信したアドバタイズパケットに時刻データを必要とする接続種別を示す情報が含まれていた場合にのみ、スマートホン201は時刻同期処理のためにNTPサーバ300と接続するので、NTPサーバ300との不要な接続を防ぐことができる。
(実施形態2の変形例1)
AD Typeとして、Manufacturer Specific Data以外を用いることにより、製造業者によらずに共通の値を用いることができる実施形態2の変形例1について、説明する。
実施形態2の変形例1に係る通信システム1002のシステム構成は、実施形態2に係る通信システム1001と同じであり、図1に示される。また、実施形態2の変形例1に係る電子時計102及びスマートホン202の各構成も、それぞれ実施形態2に係る電子時計101及びスマートホン201と同じであり、それぞれ図2及び図7に示される。実施形態2の変形例1と実施形態2とで異なる点は、接続種別を示すアドバタイズパケットのデータ構造のみである。
実施形態2の変形例1に係るアドバタイズパケットのデータ構造は図10に示すように、AD Typeの値として、0xFFではなく、0x02を使用する。これは、AD Dataが、Incomplete List of 16−bit Service Class UUID(Universally Unique Identifier)であることを意味する。つまり、電子時計102で使用可能なBLEのServiceの不完全な(Incomplete)リストがAD Dataに含まれる。これは、Serviceの不完全なリストであるので、電子時計102で使用可能なServiceの全てが含まれていなくても良い。
電子時計102は、使用可能なBLEのServiceとして、少なくともTx PowerとImmediate Alertの二つを含んでいるものとする。そして、Incomplete List of 16−bit Service Class UUIDのリストに、Tx PowerとImmediate Alertの二つを含む場合は、時刻データが必要な接続種別であることを表す。また、Incomplete List of 16−bit Service Class UUIDのリストに、Tx Powerのみを含み、Immediate Alertを含まない場合は、時刻データが不要な接続種別であることを表す。
実施形態2の変形例1に係る電子時計102の時刻修正処理においては、アドバタイズデータに上述した接続種別を表すIncomplete List of 16−bit Service Class UUIDのリストを含める。この点以外は実施形態1に係る電子時計100の時刻修正処理と同じである。したがって、電子時計102の時刻修正処理を、図4を参照して説明すると、ステップS101において、電子時計102の通知信号生成部111は、図10に示すような、Incomplete List of 16−bit Service Class UUIDで時刻データの必要/不要を表すアドバタイズパケットを生成する。その後の処理は、実施形態1に係る電子時計100の時刻修正処理と同じであり、図4に示すフローチャートに従って処理が進められる。なお、この電子時計102の時刻修正処理の実行タイミングも実施形態1と同じであり、ユーザから電子時計102をスマートホン202に接続して時刻同期する指示(時刻同期指示、リモート接続指示等)を、電子時計102が受けた時に実行される。
実施形態2の変形例1に係るスマートホン202の時刻修正処理は、実施形態2に係るスマートホン201の時刻修正処理と接続種別の判定処理以外は同じである。したがってスマートホン201の時刻修正処理との相違点のみを、図9を参照して説明する。この処理は、実施形態2と同様、スマートホン202が起動すると、スマートホン202のメイン処理のスレッドとは別のスレッドとして実行が開始される。
ステップS401は、実施形態2と同じ処理である。ステップS402では、実施形態2の接続種別判定部217はManufacturer Specific Dataに含まれている接続種別を取得したが、実施形態2の変形例1の接続種別判定部217は、Incomplete List of 16−bit Service Class UUIDに含まれているServiceのリストを接続種別として取得する(ステップS402)。
次に、接続種別判定部217は、取得した接続種別が、時刻データが必要な接続種別であるか否かを判定する(ステップS403)。時刻データが必要な接続種別でなければ(ステップS403;No)、ステップS401に戻る。つまり、Incomplete List of 16−bit Service Class UUIDに含まれているServiceのリストにTx Powerのみが入っているなら、ステップS401に戻る。
時刻データが必要な接続種別であるなら(ステップS403;Yes)、サーバ接続制御部212は、NTPサーバ300に接続して時刻同期処理を行うスレッド(時刻同期処理スレッド)を起動して、時刻同期処理を本時刻修正処理と並行して実行させる(ステップS404)。つまり、Incomplete List of 16−bit Service Class UUIDに含まれているServiceのリストにTx Power及びImmediate Alertが含まれているなら、ステップS404で時刻同期処理スレッドを起動する。時刻同期処理スレッドの処理は、図6に示す実施形態1の時刻同期処理と同じである。そして、ステップS405以降の処理は、図9に示される実施形態2の時刻修正処理と同じである。
以上、実施形態2の変形例1に係るスマートホン202の時刻修正処理について説明した。以上説明したように、実施形態2の変形例1では、電子時計102がスマートホン202に対して時刻同期を行う場合にのみ、電子時計102がスマートホン202との間で時刻同期処理を行うのに先立って、スマートホン202はアドバタイズパケットを受信した段階でNTPサーバ300と接続して時刻同期処理を開始する。より具体的には、電子時計102が送信したアドバタイズパケットに時刻データを必要とする接続種別を示す情報が含まれていた場合にのみ、そのアドバタイズパケットをスマートホン202が受信してから、電子時計102が時刻情報送信要求をスマートホン202に送信するまでの間、スマートホン202はNTPサーバ300との時刻同期処理を並列に処理する。
したがって、スマートホン202がNTPサーバ300との時刻同期処理を並列に処理できた時間の分だけ、電子時計102の時刻同期処理における待機時間を削減することができる。そして、電子時計102が送信したアドバタイズパケットに時刻データを必要とする接続種別を示す情報が含まれていた場合にのみ、スマートホン202は時刻同期処理のためにNTPサーバ300と接続するので、NTPサーバ300との不要な接続を防ぐことができる。さらに、接続種別を示す情報として、Incomplete List of 16−bit Service Class UUIDを用いることにより、製造業者によらずに共通の値を用いて、時刻同期処理が必要か否かを表すことができる。
(実施形態2の変形例2)
なお、実施形態2の図8及び実施形態2の変形例1の図10は、BLEのアドバタイズパケットのデータ構造に準拠したデータ構造になっているが、これに限られない。例えば、AD Typeで規定されたデータ長よりも長いS_Lengthを設定し、BLEに規定されたAD Dataの後ろに独自データを付加するようにしても良い。
このようなデータ構造を許すことにより、BLEのアドバタイズパケットのデータ構造にしばられない、自由なデータ構造によって、接続種別を表すことが可能になる。
(実施形態3)
NTPサーバとの時刻同期処理に必要な時間を予測して、電子時計がスマートホンからの接続要求を余計に待つ時間を削減することができるようにする実施形態3について説明する。
本発明の実施形態3に係る通信システム1003のシステム構成は、図1に示される実施形態1に係る通信システム1000と同じである。実施形態3に係る電子時計103の機能構成は、図11に示すように、実施形態1に係る電子時計100に、待機時間受信部116及び待機時間記憶部124を追加した構成になっている。
待機時間受信部116は、スマートホン203から送信された待機時間の値を、通信部131を介して受信する。待機時間受信部116が受信した待機時間は待機時間記憶部124に記憶される。この待機時間は、スマートホン203が過去にNTPサーバ300との時刻同期処理にかかった時間である。今後の時刻同期処理にも同じくらいの時間がかかることが想定できるため、電子時計103にこの待機時間を知らせておくことにより、スマートホン203からの接続要求を余計に待つ時間を削減することができる。
待機時間記憶部124には、初期値として例えば5(秒)が入っている。待機時間受信部116が新たな待機時間を受信すると、その新たに受信した待機時間が待機時間記憶部124に上書きされて記憶される。
実施形態3に係るスマートホン203の構成は、図12に示すように、実施形態2に係るスマートホン201に、時間計測部218、待機時間送信部219及び待機時間記憶部224を追加し、接続種別判定部217を削除した構成になっている。
時間計測部218は、時間を計測する。なお、計時部215が時間計測部218を兼ねても良く、その場合は時間計測部218は不要である。
待機時間送信部219は、通信部231を介して、電子時計103に待機時間を送信する。ここで、待機時間とは、前述したとおり、スマートホン203が過去にNTPサーバ300との時刻同期処理にかかった時間であり、時間計測部218によって計測される。
待機時間記憶部224は、時間計測部218によって計測された待機時間を記憶する。待機時間記憶部224に記憶された待機時間を、待機時間送信部219が電子時計103に送信する。
以上、実施形態3に係る電子時計103及びスマートホン203の構成について説明した。次に、電子時計103及びスマートホン203それぞれの時刻修正処理について、図13及び図14を参照して説明する。図13は、電子時計103の時刻修正処理であり、ユーザから電子時計103をスマートホン203に接続して時刻同期する指示(時刻同期指示、リモート接続指示等)を受けた時に実行される。図14は、スマートホン203の時刻修正処理であり、スマートホン203が起動するとスマートホン203のメイン処理のスレッドとは別のスレッドとして実行が開始される。
最初に電子時計103の時刻修正処理について、図13を参照して説明する。まず、通知信号生成部111は、PDU TypeがADV_NONCONN_INDであるアドバタイズパケットを生成する(ステップS501)。ここで生成するアドバタイズパケットは、接続種別を含まないアドバタイズパケットでも、図8や図10に示すような接続種別を含むアドバタイズパケットでもよいが、本実施形態においては、簡略に説明するため、接続種別を含まないアドバタイズパケットを生成することにする。PDU TypeがADV_NONCONN_INDであるアドバタイズパケットとは、NON−CONNECTABLE(アドバタイズパケットを受信したセントラルと接続不可能)で、UNDIRECTED(送信先指定無し)のアドバタイズパケットである。このアドバタイズパケットは、ヘッダ部のPDU Typeフィールドに、ADV_NONCONN_INDを示す「0010」の4ビットが入る。
そして、通知信号送信部112は、通知信号生成部111が生成したアドバタイズパケットを、通信部131を介して送信する(ステップS502)。この時アドバタイズパケットの送信は、一回だけの送信で終了するのではなく、通知時間記憶部123に記憶されている時間(例えば10秒間)だけ送信し続ける。
次に、制御部110は、待機時間記憶部124に記憶されている時間だけ待機する(ステップS503)。この待機時間は、スマートホン203が、NTPサーバ300との時刻同期処理に要すると考えられる時間である。この待機時間中は、制御部110が、計時部115以外の各機能部及び通信部131を省電力モードに設定するようにしても良い。省電力モードに設定することにより、電子時計103の消費電力をより低減することができる。
次に、通知信号生成部111は、PDU TypeがADV_INDであるアドバタイズパケットを生成する(ステップS504)。ここで生成するアドバタイズパケットは、接続種別を含まないアドバタイズパケットでも、図8や図10に示すような接続種別を含むアドバタイズパケットでもよいが、本実施形態においては、簡略に説明するため、接続種別を含まないアドバタイズパケットを生成することにする。このアドバタイズパケットのPDU TypeはADV_INDなので、ヘッダ部のPDU Typeフィールドには、ADV_INDを示す「0000」の4ビットが入る。
そして、通知信号送信部112は、通知信号生成部111が生成したアドバタイズパケットを、通信部131を介して送信する(ステップS505)。この時アドバタイズパケットの送信は、一回だけの送信で終了するのではなく、通知時間記憶部123に記憶されている時間(例えば10秒間)だけ送信し続ける。
次に、制御部110は、通信部131を介して、スマートホン203からの接続要求(Connection Request)を受信するまで待つ(ステップS506;No)。
スマートホン203から送信された接続要求を受信したら(ステップS506;Yes)、制御部110は、通信部131を介して、スマートホン203と接続する(ステップS507)。スマートホン203と接続後、制御部110は、通信部131を介して、スマートホン203に対し、時刻情報送信要求を送信する(ステップS508)。
その後、時刻情報受信部113は、通信部131を介して、スマートホン203が送信した時刻情報を受信する(ステップS509)。なお、本実施形態では、スマートホン203が送信する時刻情報は協定世界時であることとする。次に、時刻情報変更部114は、時刻情報受信部113が受信した時刻情報(協定世界時)を、ユーザの所在地の現在時刻に変更してから時刻情報記憶部122に記憶させることにより、計時部115が計時する時刻を変更する(ステップS510)。
次に、待機時間受信部116は、通信部131を介して、スマートホン203が送信した待機時間の値を受信する(ステップS511)。そして、待機時間受信部116は、受信した待機時間を待機時間記憶部124に記憶する(ステップS512)。そして、制御部110は、スマートホン203との接続を切断し(ステップS513)、処理を終了する。
以上、電子時計103の時刻修正処理を説明した。次に、スマートホン203の時刻修正処理について、図14を参照して説明する。まず、通知信号受信部211は、通信部231を介して、電子時計103が送信するNON−CONNECTABLEなアドバタイズパケットを受信するまで待つ(ステップS601;No)。
通知信号受信部211がNON−CONNECTABLEなアドバタイズパケットを受信したら(ステップS601;Yes)、サーバ接続制御部212は、NTPサーバ300に接続して時刻同期処理を行うスレッド(時刻同期処理スレッド)を起動して、時刻同期処理を並行して実行させる(ステップS602)。時刻同期処理スレッドの処理については後述する。
次に、通知信号受信部211は、通信部231を介して、電子時計103が送信するCONNECTABLEなアドバタイズパケットを受信するまで待つ(ステップS603;No)。通知信号受信部211がCONNECTABLEなアドバタイズパケットを受信したら(ステップS603;Yes)、制御部210は、時刻同期完了フラグ223が0であるか否かを判定する(ステップS604)。
時刻同期完了フラグが0である間は(ステップS604;Yes)、時刻同期完了フラグ223が0であるか否かの判定処理を繰り返す。時刻同期完了フラグが0でなければ(ステップS604;No)、制御部210は、通信部231を介して、電子時計103に接続要求(Connection Request)を送信し、電子時計103と接続する(ステップS605)。
接続後、制御部210は、通信部231を介して、電子時計103からの時刻情報送信要求を受信するまで待つ(ステップS606;No)。時刻情報送信要求を受信したら(ステップS606;Yes)、時刻情報送信部216は、通信部231を介して、時刻情報を電子時計103に送信する(ステップS607)。
そして、待機時間送信部219は、待機時間記憶部224に記憶されている待機時間を、通信部231を介して、電子時計103に送信する(ステップS608)。そして、制御部210は、通信部231を介して、電子時計103との接続を切断し(ステップS609)、ステップS601に戻る。
以上、スマートホン203の時刻修正処理について説明した。次に、この処理中、ステップS602で起動される時刻同期処理スレッドについて、図15を参照して説明する。
まず、制御部210は、時刻同期完了フラグ223に0をセットする(ステップS701)。次に、時間計測部218は、タイマーの値を0にクリアして、時間の計測を開始する(ステップS702)。具体的には、これ以後のNTPサーバ300との接続及び時刻同期にかかる時間の計測を開始する。ここで計測した時間は、電子時計103に送信する待機時間となる。
ステップS703〜ステップS705の処理は、図6のステップS302〜ステップS304の処理と同じなので、説明を省略する。次に、時間計測部218はそれまでに計測した時間を待機時間記憶部224に記憶する(ステップS706)。そして、制御部210は、時刻同期完了フラグ223に1をセットし(ステップS707)、処理を終了する。
以上、時刻同期処理スレッドの処理を説明した。この時刻同期処理スレッドの処理により、スマートホン203はNTPサーバ300との時刻同期処理を行い、時刻同期処理が完了すると、待機時間が待機時間記憶部224に記憶され、時刻同期完了フラグ223に1がセットされる。したがって、スマートホン203の時刻修正処理において、NTPサーバ300との時刻同期処理が完了してから、電子時計103に時刻情報及び待機時間を送信することが可能になる。
以上説明したように、実施形態3では、電子時計103がスマートホン203から待機時間を受信し、その待機時間だけ予め待機した後に、改めてアドバタイズパケットを送信することにより、電子時計103がスマートホン203からの接続要求を余計に待つ時間を削減することができる。
(実施形態4)
NTPサーバとの時刻同期処理を完了後に、スマートホンが電子時計にそのことを通知することによって、電子時計がすぐにスマートホンとの時刻同期処理を開始できるようにする実施形態4について説明する。
本発明の実施形態4に係る通信システム1004のシステム構成は、図1に示される実施形態1に係る通信システム1000と同じである。ただし、実施形態4では、電子時計104及びスマートホン204はいずれも、BLEのペリフェラルにもセントラルにもなり得る。電子時計104は通常はペリフェラルであるが、ロール変更によりセントラルになる場合がある。また、スマートホン204は通常はセントラルであるが、ロール変更によりペリフェラルになる場合がある。
実施形態4に係る電子時計104の機能構成は、図16に示すように、実施形態1に係る電子時計100に、完了通知信号受信部117を追加した構成になっている。完了通知信号受信部117は、スマートホン204が送信したアドバタイズパケットを、通信部131を介して受信する。電子時計104のロールがセントラルに変更されている時に完了通知信号受信部117は機能する。
実施形態4に係るスマートホン204の機能構成は、図17に示されるように、実施形態1に係るスマートホン200に、完了通知信号生成部2110、完了通知信号送信部2111及び完了通知時間記憶部225を追加した構成になっている。完了通知信号生成部2110は、BLEのアドバタイズパケットを生成する。完了通知信号送信部2111は、完了通知信号生成部2110が生成したアドバタイズパケットを、通信部231を介して周囲に送信する。完了通知時間記憶部225は、完了通知信号送信部2111がアドバタイズパケットを周囲に送信する時間(例えば10秒)を記憶する。スマートホン204のロールがペリフェラルに変更されている時に完了通知信号生成部2110及び完了通知信号送信部2111は機能する。
次に、電子時計104及びスマートホン204それぞれの時刻修正処理について、図18及び図19を参照して説明する。図18は、電子時計104の時刻修正処理であり、ユーザから電子時計104をスマートホン204に接続して時刻同期する指示(時刻同期指示、リモート接続指示等)を受けた時に実行される。図19は、スマートホン204の時刻修正処理であり、スマートホン204が起動するとスマートホン204のメイン処理のスレッドとは別のスレッドとして実行が開始される。
最初に電子時計104の時刻修正処理について、図18を参照して説明する。まず、通知信号生成部111は、PDU TypeがADV_NONCONN_INDであるアドバタイズパケットを生成する(ステップS801)。ここで生成するアドバタイズパケットは、接続種別を含まない通常のアドバタイズパケットでも、図8や図10に示すような接続種別を含むアドバタイズパケットでもよいが、本実施形態においては、簡略に説明するため、接続種別を含まない通常のアドバタイズパケットを生成することにする。
そして、通知信号送信部112は、通知信号生成部111が生成したアドバタイズパケットを、通信部131を介して送信する(ステップS802)。この時アドバタイズパケットの送信は、一回だけの送信で終了するのではなく、通知時間記憶部123に記憶されている時間(例えば10秒間)だけ送信し続ける。
次に、制御部110は、電子時計104のBLEのロールをペリフェラルからセントラルに変更する(ステップS803)。そして、完了通知信号受信部117は、通信部131を介して、スマートホン204が送信するアドバタイズパケットを受信するまで待つ(ステップS804;No)。このステップS804の動作をスキャンとも呼ぶ。このスキャンは継続して行ってもよいし、スキャン停止を交えながら、定期的(例えば、10秒毎、数分毎等)に行ってもよい。
完了通知信号受信部117がスマートホン204からのアドバタイズパケットを受信したら(ステップS804;Yes)、制御部110は、電子時計104のBLEのロールをセントラルからペリフェラルに戻す(ステップS805)。なお、スマートホン204からのアドバタイズパケットに、NTPサーバ300との時刻同期処理が完了したことを示す情報が含まれている場合は、制御部110は、完了通知信号受信部117が受信したアドバタイズパケットに、このことを示す情報が含まれていることを確認するまでは、ステップS804に戻るようにしても良い。
ステップS806〜ステップS812の処理は、図13のステップS504〜ステップS510の処理と同じなので、説明を省略する。次のステップS813では、制御部110は、スマートホン204との接続を切断し(ステップS813)、処理を終了する。
以上、電子時計104の時刻修正処理を説明した。次に、スマートホン204の時刻修正処理について、図19を参照して説明する。まず、通知信号受信部211は、通信部231を介して、電子時計104が送信するNON−CONNECTABLEなアドバタイズパケットを受信するまで待つ(ステップS901;No)。
通知信号受信部211がNON−CONNECTABLEなアドバタイズパケットを受信したら(ステップS901;Yes)、サーバ接続制御部212は、NTPサーバ300に接続して時刻同期処理を行うスレッド(時刻同期処理スレッド)を起動して、時刻同期処理を本時刻修正処理と並行して実行させる(ステップS902)。時刻同期処理スレッドの処理は、図6に示す実施形態1の時刻同期処理と同じである。
次に、制御部210は、時刻同期完了フラグ223が0であるか否かを判定する(ステップS903)。時刻同期完了フラグが0である間は(ステップS903;Yes)、時刻同期完了フラグ223が0であるか否かの判定処理を繰り返す。時刻同期完了フラグが0でなければ(ステップS903;No)、別スレッドで動かしていた時刻同期処理が完了したということなので、制御部210は、スマートホン204のBLEのロールをセントラルからペリフェラルに変更する(ステップS904)。
そして、完了通知信号生成部2110は、PDU TypeがADV_NONCONN_INDであるアドバタイズパケットを生成する(ステップS905)。このアドバタイズパケットには、電子時計104に、スマートホン204のNTPサーバ300との時刻同期処理が完了したことを示す情報を含めてもよい。
そして、完了通知信号送信部2111は、完了通知信号生成部2110が生成したアドバタイズパケットを、通信部231を介して送信する(ステップS906)。この時、アドバタイズパケットの送信は、一回だけの送信で終了するのではなく、完了通知時間記憶部225に記憶されている時間(例えば10秒間)だけ送信し続ける。その後、制御部210は、スマートホン204のBLEのロールをペリフェラルからセントラルに戻す(ステップS907)。
次に、通知信号受信部211は、通信部231を介して、電子時計104が送信するCONNECTABLEなアドバタイズパケットを受信するまで待つ(ステップS908;No)。通知信号受信部211がCONNECTABLEなアドバタイズパケットを受信したら(ステップS908;Yes)、制御部210は、通信部231を介して、電子時計104に接続要求(Connection Request)を送信し、電子時計104と接続する(ステップS909)。
接続後、制御部210は、通信部231を介して、電子時計104からの時刻情報送信要求を受信するまで待つ(ステップS910;No)。時刻情報送信要求を受信したら(ステップS910;Yes)、時刻情報送信部216は、通信部231を介して、時刻情報を電子時計104に送信する(ステップS911)。そして、制御部210は、通信部231を介して、電子時計104との接続を切断し(ステップS912)、ステップS901に戻る。
以上、スマートホン204の時刻修正処理について説明した。以上説明したように、実施形態4では、スマートホン204が、NTPサーバ300との時刻同期が完了したことを知らせるアドバタイズパケットを送信することにより、電子時計104がスマートホン204からの接続要求を余計に待つ時間を削減することができる。
以上で、各実施形態の説明を終了するが、これらの実施形態は適宜混在させることができる。例えば、実施形態3や実施形態4において、実施形態2における接続種別をアドバタイズパケットに含めてもよい。また、実施形態4において、実施形態3における待機時間をスマートホン204が電子時計104に送信し、電子時計104は図18のステップS802又はステップS803の後、この待機時間だけ待機してから、ステップS804のスキャン動作を開始するようにしても良い。
また、上記各実施形態は一例に過ぎないので、電子時計とスマートホンの具体的な構成や処理の内容などは上記実施形態で説明したものに限られない。以下、上記実施形態のさらなる変形例について説明する。
上記実施形態において、電子時計100,101,102,103,104は、制御部110が計時部115として機能し、スマートホン200,201,202,203,204は、制御部210が計時部215として機能するように構成されている。しかし、本発明は、このような構成に限られない。
例えば、計時部115は、制御部110とは別体のRTC(Real Time Clock)モジュールとして構成されてもよい。同様に、計時部215は、制御部210とは別体のRTCモジュールとして構成されてもよい。なお、RTCモジュールは、自装置のクロック信号のパルス数をカウントするカウンタ回路、基準クロックを生成する水晶発振器及び基準クロックから所望の周波数のクロック信号を生成する可変PLL(Phase Locked Loop)等から構成される。
上記実施形態では、通信部131、231は、BLE規格に基づいて互いに無線通信を行うものとして説明した。しかし、本発明は、BLE規格に基づいて無線通信を行うものに限られない。例えば、通信部131、231は、Wi−Fi(登録商標)又はZigBee(登録商標)等に基づく無線通信を行うものであってもよい。また、制御部110が通信部131の機能を含んでもよい。同様に、制御部210が通信部231の機能を含んでもよい。また、スマートホンのサーバ通信部234は、無線通信する構成ではなく有線通信をする構成であってもよい。すなわち、サーバ通信部234は、有線通信でNTPサーバ300と通信を行ってもよい。
上記実施形態において、スマートホン200,201,202,203,204は、NTPサーバ300から時刻情報を取得している。しかし、本発明はこのような構成に限られない。スマートホン200,201,202,203,204は、例えば、SNTP(Simple Network Time Protocol)サーバ等、その他のプロトコルで規定された時刻サーバから時刻情報を取得してもよい。また、上記実施形態において、NTPサーバ300から取得する時刻情報は協定世界時を示す情報であるが、協定世界時に限る必要はない。日本標準時(JST:Japan Standard Time)、グリニッジ標準時(GMT:Greenwich Mean Time)等、他の時刻を示す情報を時刻情報として、この時刻情報が取得できる時刻サーバに接続してもよい。
また、本発明に係る電子時計及びスマートホンは、上記通信装置によらず、例えば、コンピュータがプログラムを実行することで、電子時計の機能及びスマートホンの機能を実現してもよい。電子時計の機能及びスマートホンの機能を実現するためのプログラムは、USB(Universal Serial Bus)メモリ、CD−ROM(Compact Disc−Read Only Memory)、DVD(Digital Versatile Disc)、HDD(Hard Disk Drive)等のコンピュータ読み取り可能な記録媒体に記憶されてもよいし、ネットワークを介してコンピュータにダウンロードされてもよい。
以上、本発明の好ましい実施形態について説明したが、本発明は係る特定の実施形態に限定されるものではなく、本発明には、特許請求の範囲に記載された発明とその均等の範囲が含まれる。以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
(付記1)
プロセッサと、通信部と、を備える通信装置であって、
前記プロセッサは、
時刻を計時し、
他の通信装置と通信接続をする目的を示す情報である接続種別情報を含ませて自己の存在を示す通知信号を生成し、
前記通信部に前記通知信号を送信させ、
前記通信部に、前記通知信号を送信させた後に、前記他の通信装置から送信された時刻情報を受信させ、
前記通信部が受信した前記時刻情報に基づいて、前記計時する時刻を変更する、
通信装置。
(付記2)
前記プロセッサは、
前記他の通信装置から送信される情報であって、前記通信部が前記他の通信装置から前記時刻情報を受信する際の待機時間の情報を、前記通信部に受信させ、
前記通信部に前記通知信号を送信させた後に、前記通信部を前記待機時間だけ待機させ、
前記待機時間の経過後に、前記通信部に前記他の通信装置から送信される時刻情報を受信させる、
付記1に記載の通信装置。
(付記3)
前記プロセッサは、
前記他の通信装置から送信される前記他の通信装置がサーバとの時刻同期を完了したことを通知する完了通知信号を、前記通信部に受信させ、
前記通信部に、前記完了通知信号を受信させた後に、前記他の通信装置からの時刻情報を受信させる、
付記1又は2に記載の通信装置。
(付記4)
付記1乃至3のいずれか一つに記載の通信装置と、
前記プロセッサが計時する時刻を表示する表示部と、
を備える電子時計。
(付記5)
プロセッサと、通信部と、サーバ通信部と、を備える通信装置であって、
前記プロセッサは、
前記サーバ通信部を介してサーバが保持する時刻情報を取得し、
他の通信装置が時刻を受信する必要があることを通知する通知信号を、通信部に受信させ、
前記通信部に、前記通知信号を受信させた後に前記サーバ通信部を介して取得した前記時刻情報を、前記他の通信装置に送信させる、
通信装置。
(付記6)
サーバが保持する時刻情報を取得するサーバ時刻情報取得ステップと、
他の通信装置から送信される通信接続をする目的を示す情報である接続種別情報を含んだ自己の存在を示す通知信号を受信する通知信号受信ステップと、
前記サーバ時刻情報取得ステップで、前記通知信号を前記通知信号受信ステップで受信した後に取得した前記時刻情報を、前記他の通信装置に送信する時刻情報送信ステップと、
を含む通信方法。
(付記7)
コンピュータを、
サーバが保持する時刻情報を取得するサーバ時刻情報取得部、
他の通信装置から送信される通信接続をする目的を示す情報である接続種別情報を含んだ自己の存在を示す通知信号を受信する通知信号受信部、
前記サーバ時刻情報取得部が、前記通知信号を前記通知信号受信部が受信した後に取得した前記時刻情報を、前記他の通信装置に送信する時刻情報送信部、
として機能させるためのプログラム。