(57)【特許請求の範囲】
【請求項１】
識別情報を第１所定間隔で送信する送信部と、
前記識別情報を受信した他の無線通信装置から、所定のサービスを自身が提供可能か否
かの問い合わせを含むスキャン要求を取得する取得部と、
前記スキャン要求を取得すると、前記所定のサービスを提供可能か否か判定する判定部
と、
前記判定部による判定結果に基づいて、前記他の無線通信装置との接続を確立する接続
確立部と、
を備え、
前記送信部は、前記判定部が前記所定のサービスを提供可能であると判定した場合、前
記第１所定間隔よりも短い第２所定間隔で前記識別情報を送信する、
ことを特徴とする無線通信装置。
【請求項２】
前記判定部は、前記所定のサービスを提供可能であると判定した場合、前記他の無線通
信装置に、前記所定のサービスを提供可能である旨の応答を送信し、
前記接続確立部は、前記応答を受信した前記他の無線通信装置からの接続要求を受信す
ると、前記他の無線通信装置との接続を確立する、
ことを特徴とする請求項１に記載の無線通信装置。
【請求項３】
前記接続確立部は、前記第２所定間隔で送信された前記識別情報を受信した前記他の無
線通信装置からの接続要求を受信すると、前記他の無線通信装置との接続を確立する、
ことを特徴とする請求項１または２に記載の無線通信装置。
【請求項４】
前記送信部は、前記判定部が前記所定のサービスを提供可能であると判定した場合、前
記他の無線通信装置からの接続要求のみを受け付ける旨の前記識別情報を送信し、
前記接続確立部は、前記他の無線通信装置からの接続要求のみを受け付ける旨の前記識
別情報を受信した前記他の無線通信装置からの接続要求を受信すると、前記他の無線通信
装置との接続を確立する、
ことを特徴とする請求項１乃至３のいずれか１項に記載の無線通信装置。
【請求項５】
第１無線通信装置と、当該第１無線通信装置と無線通信を行う第２無線通信装置と、か
ら構成される無線通信システムであって、
前記第１無線通信装置は、
識別情報を第１所定間隔で送信する第１送信部と、
前記識別情報を受信した前記第２無線通信装置から、所定のサービスを自身が提供可能
か否かの問い合わせを含むスキャン要求を取得する第１取得部と、
前記スキャン要求を取得すると、前記所定のサービスを提供可能か否か判定する判定部
と、
前記判定部による判定結果に基づいて、前記第２無線通信装置との接続を確立する第１
接続確立部と、を備え、
前記第１送信部は、前記判定部が前記所定のサービスを提供可能であると判定した場合、前記第１所定間隔よりも短い第２所定間隔で前記識別情報を送信し、
前記第２無線通信装置は、
前記第１無線通信装置から送信された識別情報を取得する第２取得部と、
前記識別情報を取得すると、前記第１無線通信装置に、前記所定のサービスを前記第１無線通信装置が提供可能か否かの問い合わせを含むスキャン要求を送信する第２送信部と、
前記スキャン要求に対する前記第１無線通信装置からの応答に基づいて、前記第１無線
通信装置との接続を確立する第２接続確立部と、
を備えることを特徴とする無線通信システム。
【請求項６】
他の無線通信装置と無線通信を行う無線通信装置が実行する無線通信方法であって、
識別情報を第１所定間隔で送信する送信ステップと、
前記識別情報を受信した前記他の無線通信装置から、所定のサービスを自身が提供可能
か否かの問い合わせを含むスキャン要求を取得する取得ステップと、
前記スキャン要求を取得すると、前記所定のサービスを提供可能か否か判定する判定ス
テップと、
前記判定ステップにおける判定結果に基づいて、前記他の無線通信装置との接続を確立
する接続確立ステップと、
を含み、
前記判定ステップで前記所定のサービスを提供可能であると判定した場合、前記送信ステップで前記識別情報を送信する間隔を前記第１所定間隔よりも短い第２所定間隔とする、
こと特徴とする無線通信方法。
【請求項７】
無線通信装置と無線通信を行うコンピュータを、
識別情報を第１所定間隔で送信する送信手段、
前記識別情報を受信した前記無線通信装置から、所定のサービスを自身が提供可能か否
かの問い合わせを含むスキャン要求を取得する取得手段、
前記スキャン要求を取得すると、前記所定のサービスを提供可能か否か判定する判定手
段、
前記判定手段による判定結果に基づいて、前記無線通信装置との接続を確立する接続確
立手段、
前記判定手段が前記所定のサービスを提供可能であると判定した場合、前記送信手段で前記識別情報を送信する間隔を前記第１所定間隔よりも短い第２所定間隔とする間隔変更手段、
として機能させること特徴とするプログラム。
【請求項８】
マスター装置とBluetooth（登録商標） low energyに基づく無線通信を行うスレーブ装置であって、
アドバタイズを第１所定間隔で送信する送信部と、
前記アドバタイズを受信した前記マスター装置から、所定のサービスを自身が提供可能
か否かの問い合わせを含むスキャン要求を取得する取得部と、
前記スキャン要求を取得すると、前記所定のサービスを提供可能か否か判定する判定部
と、
前記判定部による判定結果に基づいて、前記マスター装置との接続を確立する接続確立
部と、
を備え、
前記送信部は、前記判定部が前記所定のサービスを提供可能であると判定した場合、前
記第１所定間隔よりも短い第２所定間隔で前記識別情報を送信する、
ことを特徴とするスレーブ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、無線通信装置、無線通信システム、無線通信方法、プログラム、及びスレーブ装置に関する。
【背景技術】
【０００２】
近距離無線通信規格のBluetooth（登録商標） low energyに基づいて無線通信を行う無線通信機器であるマスター装置は、通信相手となる他の無線通信機器であるスレーブ装置が定期的に送信するアドバタイズと呼ばれる識別情報を受信し、当該スレーブ装置に対して接続要求を送信してから、当該スレーブ装置との間でデータの送受信を行う（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−１４２８７７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記のようにBluetooth（登録商標） low energyに基づいて無線通信を行う無線通信機器において、スレーブ装置は、アドバタイズにより、自身がマスター装置に提供できるサービスを通知することが可能である。しかし、アドバタイズ・パケットに載せることができるデータ量には制約があり、自身が提供可能な全てのサービスを通知できるとは限らない。そのため、マスター装置は、自身が必要とするサービスを提供可能なスレーブ装置を探索する際、受信したアドバタイズから、そのアドバタイズを送信したスレーブ装置が、そのサービスを提供可能か否か判定出来なかった場合、そのスレーブ装置と接続を確立し、データ通信を介して詳細にそのサービスの提供可否を調べる必要が生じる。さらに、そのスレーブ装置がそのサービスを提供出来ない場合、マスター装置は、さらに別のスレーブ装置との間で同様にサービスを提供可能か調べる必要があり、効率が悪い。
【０００５】
本発明はかかる問題点に鑑みてなされたものであって、効率的に必要とするサービスを提供可能な他の無線通信装置を探索可能な無線通信装置、無線通信システム、無線通信方法、プログラム、及びスレーブ装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、本発明の第１の観点に係る無線通信装置は、
識別情報を第１所定間隔で送信する送信部と、
前記識別情報を受信した他の無線通信装置から、所定のサービスを自身が提供可能か否
かの問い合わせを含むスキャン要求を取得する取得部と、
前記スキャン要求を取得すると、前記所定のサービスを提供可能か否か判定する判定部
と、
前記判定部による判定結果に基づいて、前記他の無線通信装置との接続を確立する接続
確立部と、
を備え、
前記送信部は、前記判定部が前記所定のサービスを提供可能であると判定した場合、前
記第１所定間隔よりも短い第２所定間隔で前記識別情報を送信する、
ことを特徴とする。
【０００９】
また、上記目的を達成するため、本発明の第２の観点に係るスレーブ装置は、
マスター装置とBluetooth（登録商標） low energyに基づく無線通信を行うスレーブ装置であって、
アドバタイズを第１所定間隔で送信する送信部と、
前記アドバタイズを受信した前記マスター装置から、所定のサービスを自身が提供可能
か否かの問い合わせを含むスキャン要求を取得する取得部と、
前記スキャン要求を取得すると、前記所定のサービスを提供可能か否か判定する判定部
と、
前記判定部による判定結果に基づいて、前記マスター装置との接続を確立する接続確立
部と、
を備え、
前記送信部は、前記判定部が前記所定のサービスを提供可能であると判定した場合、前
記第１所定間隔よりも短い第２所定間隔で前記識別情報を送信する、
ことを特徴とする。
【発明の効果】
【００１０】
本発明によれば、効率的に必要とするサービスを提供可能な他の無線通信装置を探索できる。
【図面の簡単な説明】
【００１１】
【図１】実施の形態に係る無線通信システムの構成例を示す図である。
【図２】実施の形態に係るマスター装置の構成例を示す図である。
【図３】（ａ）は、従来のＢＬＥの規格により定義されるスキャン要求のパケットのフォーマットを示す図、（ｂ）は、実施の形態に係るスキャン要求送信部により送信されるスキャン要求のパケットのフォーマットを示す図である。
【図４】実施の形態に係るスレーブ装置の構成例を示す図である。
【図５】（ａ）は、実施の形態に係るスキャン応答のパケットの一部のフォーマットの一例を示す図、（ｂ）は、実施の形態に係るスキャン応答のパケットの一部のフォーマットの別の例を示す図である。
【図６】実施の形態に係る無線通信システムの動作の一例を示すシーケンス図である。
【図７】実施の形態に係るマスター装置が実行するマスター装置側接続処理の一例を示すフローチャートである。
【図８】実施の形態に係るスレーブ装置が実行するスレーブ装置側接続処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態について図面を参照して説明する。
【００１３】
図１は、本発明の実施の形態に係る無線通信システム１の構成例を表す図である。
【００１４】
図１に示す構成例において、無線通信システム１は、無線通信装置としてのマスター装置１００と、マスター装置１００とは異なる無線通信装置としてのスレーブ装置２００とを備えている。マスター装置１００とスレーブ装置２００は、Bluetooth（登録商標） low energy（以下、ＢＬＥという。）に基づいて、互いに無線通信を行う。ＢＬＥとは、Bluetooth（登録商標）と呼ばれる近距離無線通信規格において、低消費電力を目的として策定された規格（モード）である。マスター装置１００は、スレーブ装置２００から提供されたサービス（例えば、測定されたデータなど）を利用する装置である。また、スレーブ装置２００は、マスター装置１００にサービス（例えば、測定したデータなど）を提供する装置である。
【００１５】
マスター装置１００は、例えば、携帯電話機、スマートフォン、タブレット型パーソナルコンピュータ、ノート型パーソナルコンピュータ等の機器であって、ＢＬＥに基づく無線通信機能を有する端末である。本実施の形態では、一例として、マスター装置１００はスマートフォンから構成される。マスター装置１００は、各種データをスレーブ装置２００から受信し、受信したデータに基づいて、後述する表示部１０８に各種情報を表示したり、後述するスピーカ１０６からアラーム等の音声を鳴らしたりする（図２参照）。
【００１６】
スレーブ装置２００は、例えば、温度測定サービスを提供可能な温度センサ等、マスター装置１００に提供可能なサービスを保有する機器であって、ＢＬＥに基づく無線通信機能を有する端末である。
【００１７】
ＢＬＥに基づいて行われる無線通信では、マスター装置１００とスレーブ装置２００との間でデータの送受信を行う前に、スレーブ装置２００がアドバタイズを送信し、マスター装置１００がアドバタイズを受信する。アドバタイズとは、スレーブ装置２００が、マスター装置１００に対して自分の存在を知らせるための識別情報のことをいう。
【００１８】
なお、ＢＬＥでは、２４００ＭＨｚ〜２４８３．５ＭＨｚの周波数帯を２ＭＨｚ幅の４０個のチャネルに分割して利用する。この４０個のチャネルのうち、中間周波数（Center Frequency）が２４０２，２４２６，２４８０ＭＨｚの３個のアドバタイズ用チャネル（Advertising Channel Indexが３７，３８，３９のチャネル）は、アドバタイズに利用される。それ以外の３７個のデータ通信用チャネル（Data Channel Indexが０〜３６のチャネル）は、マスター装置１００とスレーブ装置２００との間で接続が確立した後のデータ通信に利用される。
【００１９】
次に、本実施の形態に係る無線通信システム１のハードウェア構成などについて説明する。
【００２０】
図２は、本実施の形態に係るマスター装置１００の構成例を概略的に示すブロック図である。図２に示すように、マスター装置１００は、制御部１０１、ＲＯＭ（Read Only Memory）１０２、ＲＡＭ（Random Access Memory）１０３、無線通信処理部１０４、アンテナ１０５、スピーカ１０６、ドライバ１０７、表示部１０８及びタッチパネル１０９を備える。
【００２１】
制御部１０１は、例えばＣＰＵ（Central Processing Unit）によって構成される。制御部１０１は、ＲＯＭ１０２に記憶されたプログラム（例えば、後述する図７に示すマスター装置１００の動作を実現するためのプログラム）に従ってソフトウェア処理を実行することにより、マスター装置１００が具備する各種機能を制御する。
【００２２】
ＲＯＭ１０２は、フラッシュメモリ等の不揮発性メモリから構成され、上述したように制御部１０１が各種機能を制御するためのプログラムやデータを記憶する。
【００２３】
ＲＡＭ１０３は、揮発性メモリから構成され、制御部１０１が各種処理を行うためにデータを一時的に記憶するための作業領域として用いられる。
【００２４】
無線通信処理部１０４は、例えば無線周波数（ＲＦ：Radio Frequency）回路やベースバンド（ＢＢ：Baseband）回路等を用いて構成される。無線通信処理部１０４は、アンテナ１０５を介して、ＢＬＥに基づく無線信号の送信及び受信を行う。
【００２５】
スピーカ１０６は、制御部１０１からの音声データに基づいて、音声を出力する。ドライバ１０７は、制御部１０１から出力された画像データに基づく画像信号を表示部１０８へ出力する。表示部１０８は、例えば、ＬＣＤ（Liquid Crystal Display）、ＥＬ（Electroluminescence）ディスプレイ等によって構成される。表示部１０８は、ドライバ１０７から出力された画像信号に従って画像を表示する。
【００２６】
タッチパネル１０９は、表示部１０８の上面に配置され、ユーザの操作内容を入力するために用いられるインタフェースである。タッチパネル１０９は、例えば図示しない透明電極を内蔵し、ユーザの指等が接触した場合に、電圧が変化した位置を接触位置として検出し、その接触位置の情報を入力指示として制御部１０２へ出力する。
【００２７】
次に、マスター装置１００の制御部１０１の機能的構成について説明する。図２に示すように、制御部１０１は、受付部１１０、スキャン部１２０、接続確立部１３０、データ通信部１４０として機能する。
【００２８】
受付部１１０は、マスター装置１００が必要とするサービス（以下、「要求サービス」と呼ぶ）を受け付ける。例えば、受付部１１０は、ユーザからタッチパネル１０９を介して要求サービスを受け付ける。または、例えば、受付部１１０は、マスター装置１００が実行するアプリケーションから、要求サービスを受け付ける。
【００２９】
スキャン部１２０は、３つのアドバタイズ用チャネルを順にスキャンすることにより、受付部１１０により受け付けられた要求サービスを提供可能なスレーブ装置２００を探索する。より具体的には、スキャン部１２０は、アドバタイズ取得部１２１と、スキャン要求送信部１２２と、を備える。
【００３０】
アドバタイズ取得部１２１は、３つのアドバタイズ用チャネルを順にスキャンすることにより、スレーブ装置２００から送信されたからのアドバタイズを取得する。
【００３１】
スキャン要求送信部１２２は、アドバタイズ取得部１２１により取得されたアドバタイズを送信したスレーブ装置２００に対し、要求サービスをそのスレーブ装置２００が提供可能か否かの問い合わせを含むスキャン要求を送信する。
【００３２】
ここで、スキャン要求のパケットについて説明する。図３（ａ）は、従来のＢＬＥの規格により定義されるスキャン要求（Scan Request）のパケットのフォーマットを示す図、図３（ｂ）は、スキャン要求送信部１２２により送信されるスキャン要求のパケットのフォーマットを示す図である。図３（ａ）に示すように、従来のＢＬＥの規格により定義されるスキャン要求のパケットのペイロード（Payload）には、スキャンを行うマスター装置１００の装置アドレス（ScanA:Scan Address）、及びアドバタイズを行うスレーブ装置２００の装置アドレス（AdvA:Advertise Address）のみが含まれる。
【００３３】
これに対し、図３（ｂ）に示すように、本実施の形態に係るスキャン要求のパケットは、ペイロードに、ScanA及びAdvAの他、さらに、データＤ（太線で囲まれた部分）が含まれるように拡張されている。具体的には、データＤには、Length、AD typeとしてService Solicitation、UUIDのリスト（List of UUIDs）を示す値が含まれる。
【００３４】
ここで、AD typeは、アドバタイズやスキャン応答のパケットに載せることができるデータの種類を表し、ＢＬＥの規格において定義されている。また、Service Solicitationは、AD Typeの１つであって、従来のＢＬＥに基づく無線通信では、マスター装置が提供可能なサービスをスレーブ装置が利用したい場合に、AD typeとしてService Solicitationが指定され、利用したいサービスのUUID（Universally Unique Identifier）の値を含むアドバタイズをスレーブ装置が送信する際に利用される。そして、AD typeとしてService Solicitationが指定されたアドバタイズを受信したマスター装置は、そのUUIDに対応するサービスを提供可能な場合、そのアドバタイズを送信したスレーブ装置に対し、接続要求を送信し、そのスレーブ装置との接続を確立する。この結果、マスター装置として動作していた無線通信装置がサービス提供側であるスレーブ装置として動作するとともに、スレーブ装置として動作していた無線通信装置がサービス利用側であるスレーブ装置として動作することとなる。
【００３５】
このような従来のＢＬＥに基づく無線通信におけるService SolicitationというAd Typeを、本実施の形態では、マスター装置１００がスレーブ装置２００に対し、要求サービスを提供可能か否かを問い合わせるために用いられる。具体的には、図３（ｂ）に示すデータＤに、AD typeとしてService Solicitationが指定され、要求サービスのUUIDのリストを示す値が含まれる。
【００３６】
なお、スキャン要求のパケットに載せることができるデータ量には、図３（ａ）及び（ｂ）に示すように制約がある。しかし、スキャン要求のペイロードは最大３７バイトまでデータを載せることが可能であるため、それぞれ６バイトのScanA及びAdvAを載せたとしても、図３（ｂ）に示すようにさらにデータＤを載せることができるようにスキャン要求を拡張することが可能である。
【００３７】
また、スキャン要求送信部１２２は、取得されたアドバタイズの種類に応じて、上記のスキャン要求を送信するか否かを決定してもよい。ここで、ＢＬＥの規格において、アドバタイズの種類として、接続要求及びスキャン要求を受け付け可能な旨を示すADV_IND、指定された機器からの接続要求のみ受け付け可能な旨を示すADV_DIRECT_IND、いかなる機器からの接続要求及びスキャン要求も受け付けない旨を示すADV_NONCONN_IND、スキャン要求のみを受け付け可能な旨を示すADV_SCAN_INDの４つが定義されている。従って、スキャン要求送信部１２２は、例えば、取得されたアドバタイズの種類がADV_INDの場合、上述した拡張されたスキャン要求を送信し、取得されたアドバタイズの種類がADV_IND以外の場合、当該スキャン要求を送信しないと決定してもよい。これは、取得されたアドバタイズの種類がADV_DIRECT_INDまたはADV_NONCONN_INDの場合、そのアドバタイズを送信したスレーブ装置２００は、マスター装置１００からのスキャン要求を受け付けないためである。また、取得されたアドバタイズの種類がADV_SCAN_INDの場合、そのアドバタイズを送信したスレーブ装置２００は、マスター装置１００からのスキャン要求を受け付けても、接続要求は受け付けないため、結果として接続することが出来ないためである。
【００３８】
接続確立部１３０は、スキャン要求送信部１２２が送信したスキャン要求に対するスレーブ装置２００からの応答に基づいて、スレーブ装置２００との接続を確立する。
【００３９】
例えば、接続確立部１３０は、スキャン要求送信部１２２が送信したスキャン要求に対するスレーブ装置２００からスキャン応答を受信する。そして、接続確立部１３０は、受信したスキャン応答が、要求サービスを提供可能である旨を示す場合、そのスキャン応答を送信したスレーブ装置２００に、接続要求を送信する。そして、接続確立部１３０は、そのスレーブ装置２００との接続を確立する。
【００４０】
データ通信部１４０は、接続確立部１３０によりスレーブ装置２００との接続が確立した後、前述した３７個のデータ通信用チャネルでスレーブ装置２００との間でデータ通信を行う。
【００４１】
図４は、本実施の形態に係るスレーブ装置２００の構成例を概略的に示すブロック図である。図４に示すように、スレーブ装置２００は、制御部２０１、ＲＯＭ２０２、ＲＡＭ２０３、無線通信処理部２０４、アンテナ２０５、操作部２０６、ドライバ２０７、及び表示部２０８を備える。
【００４２】
制御部２０１は、例えばＣＰＵによって構成される。制御部２０１は、ＲＯＭ２０２に記憶されたプログラム（例えば、後述する図８に示すスレーブ装置２００の動作を実現するためのプログラム）に従ってソフトウェア処理を実行することにより、スレーブ装置２００が具備する各種機能を制御する。
【００４３】
ＲＯＭ２０２は、フラッシュメモリ等の不揮発性メモリから構成され、上述したように制御部２０１が各種機能を制御するためのプログラムやデータを記憶する。
【００４４】
ＲＡＭ２０３は、揮発性メモリから構成され、制御部２０１が各種処理を行うためにデータを一時的に記憶するための作業領域として用いられる。
【００４５】
無線通信処理部２０４は、例えば無線周波数（ＲＦ）回路やベースバンド（ＢＢ）回路等を用いて構成される。無線通信処理部２０４は、アンテナ２０５を介して、ＢＬＥに基づく無線信号の送信及び受信を行う。
【００４６】
操作部２０６は、例えばスイッチ等から構成され、電源のＯＮ・ＯＦＦなどのユーザの操作内容を入力するために用いられる。
【００４７】
ドライバ２０７は、制御部２０１から出力された画像データに基づく画像信号を表示部２０８へ出力する。表示部２０８は、例えば、ＬＣＤ、ＥＬディスプレイ等によって構成される。表示部２０８は、ドライバ２０７から出力された画像信号に従って画像を表示する。
【００４８】
次に、スレーブ装置２００の制御部２０１の機能的構成について説明する。図４に示すように、制御部２０１は、アドバタイズ送信部２１０、スキャン要求取得部２２０、サービス判定部２３０、接続確立部２４０、データ通信部２５０として機能する。
【００４９】
アドバタイズ送信部２１０は、アドバタイズ・インターバルと呼ばれる時間間隔で周期的にアドバタイズ用チャネルを用いてアドバタイズを送信する。また、本実施の形態において、アドバタイズ送信部２１０は、通常時、すなわち、マスター装置からスキャン要求を受信する前のアドバタイジングでは、第１所定間隔でアドバタイズを送信する。
【００５０】
また、スレーブ装置２００自身が、スキャン要求に含まれる問い合わせに係る要求サービスを提供可能である場合、アドバタイズ送信部２１０は、第１所定間隔よりも短い第２所定間隔で、アドバタイズを送信する。さらにこの場合、アドバタイズ送信部２１０は、アドバタイズの種類として、そのスキャン要求を送信したマスター装置１００からの接続要求のみを受け付ける旨を示すADV_DITECT_INDを選択してアドバタイズを送信する。このように、アドバタイズの種類がADV_DITECT_INDであるアドバタイズを通常よりも短い周期で送信する動作は、High Duty Cycle Direct Advertisingと呼ばれる。なお、High Duty Cycle Direct Advertisingでは、アドバタイズのパケットが短い周期で繰り返し送信されるため、電力消費や他の機器に対する無線チャネルの干渉の影響等も考慮され、最長でも１．２８秒までと規定されている。
【００５１】
スキャン要求取得部２２０は、アドバタイズ送信部２１０により送信されたアドバタイズを受信したマスター装置１００から、スキャン要求を取得する。
【００５２】
サービス判定部２３０は、スキャン要求取得部２２０によりスキャン要求が取得されたとき、そのスキャン要求に含まれる問い合わせに係る要求サービスをスレーブ装置２００自身が提供可能か否かを判定する。例えば、サービス判定部２３０は、スキャン要求のパケットに含まれるAD TypeがService SolicitationであるUUIDのリストについて、そのリストに含まれるUUIDに対応するサービスを要求サービスとして特定する。そして、予めスレーブ装置２００自身のＲＯＭ等に記録された自身が提供可能なサービスのリストに、要求サービスが含まれているか否かを判定する。
【００５３】
また、サービス判定部２３０は、取得されたスキャン要求に含まれる問い合わせに係る要求サービスをスレーブ装置２００自身が提供可能であると判定した場合、提供可能である旨のスキャン応答を、そのスキャン要求を送信したマスター装置１００に送信する。また、サービス判定部２３０は、要求サービスをスレーブ装置２００自身が提供可能でないと判定した場合、提供可能でない旨のスキャン応答を、そのスキャン要求を送信したマスター装置１００に送信する。
【００５４】
ここで、スキャン応答のパケットについて説明する。図５（ａ）は、本実施の形態に係るスキャン応答のパケットの一部のフォーマットの一例を示す図、図５（ｂ）は、本実施の形態に係るスキャン応答のパケットの一部のフォーマットの別の例を示す図である。本実施の形態に係るスキャン応答は、図３（ｂ）に示すスキャン要求のパケットと同様のフォーマットにより構成され、図５（ａ）及び（ｂ）では、図３（ｂ）のデータＤに含まれるAD type及びList of UUIDsの代わりにスキャン応答に載せられるデータのフォーマットを表している。
【００５５】
図５（ａ）に示す例では、AD typeとしてService UUIDが指定され、Service UUIDのリスト（List of Service UUIDs）を示す値が含まれる。Service UUIDのリストには、スキャン要求に含まれるService SolicitationのUUIDのリストのうち、スレーブ装置２００自身が提供可能なサービスのUUIDが含まれる。例えば、マスター装置１００からのスキャン要求に含まれるService SolicitationのUUIDのリストに、サービスＳ１，Ｓ２，Ｓ３のUUIDが要求サービスとして含まれている場合、サービス判定部２３０は、スレーブ装置２００自身がサービスＳ１，Ｓ２を提供可能であると判定すると、Service UUIDのリストにサービスＳ１，Ｓ２のUUIDを含めてスキャン応答を送信する。
【００５６】
図５（ｂ）に示す例では、AD typeとしてService Dataが指定され、Service UUID及びフラグ（Flag）を示す値が含まれる。このService UUIDは、スキャン要求に含まれるService SolicitationのUUIDのリストに含まれるUUIDに対応する。また、フラグは、Service UUID毎に対応付けられ、スレーブ装置２００自身がそのService UUIDに対応するサービスを提供可能か否かを示す。フラグには、例えば、提供可能なときは「0x01」、提供不可能なときは「0x00」といった値が格納される。例えば、マスター装置１００からのスキャン要求に含まれるService SolicitationのUUIDのリストに、サービスＳ１，Ｓ２，Ｓ３のUUIDが要求サービスとして含まれている場合、サービス判定部２３０は、スレーブ装置２００自身がサービスＳ１，Ｓ２を提供可能であると判定すると、サービスＳ１のUUIDとフラグ「0x01」、サービスＳ２のUUIDとフラグ「0x01」、及びサービスＳ３のUUIDとフラグ「0x00」がそれぞれ対応づけられたスキャン応答を送信する。
【００５７】
接続確立部２４０は、サービス判定部２３０の判定結果に基づいて、マスター装置１００との接続を確立する。例えば、サービス判定部２３０が、スキャン要求に含まれる要求サービスを提供可能であると判定すると、提供可能である旨を示すスキャン応答がマスター装置１００に送信される。その後、接続確立部２４０は、アドバタイズ送信部２１０により送信されたアドバタイズを受信したマスター装置１００からの接続要求を受信し、マスター装置１００との間で接続を確立する。
【００５８】
データ通信部２５０は、接続確立部２４０によりマスター装置１００との接続が確立した後、上述した３７個のデータ通信用チャネルでマスター装置１００との間でデータ通信を行う。
【００５９】
次に、本実施の形態における無線通信システム１の動作の一例を図６のシーケンス図を参照しつつ説明する。
【００６０】
スレーブ装置２００は、例えば、現在時刻が所定の時刻になったことを契機として、アドバタイズ用チャネルを利用して、アドバタイズを第１所定間隔Ｔ１で定期的に送信する（ステップＳ１０）。
【００６１】
マスター装置１００は、例えば、データ取得用アプリケーションの実行中において、そのアプリケーションが要求するサービスを要求サービスとして受け付け（ステップＳ１１）、スレーブ装置２００からのアドバタイズを受信するためのスキャン処理を実行する（ステップＳ１２）。
【００６２】
そして、マスター装置１００は、スレーブ装置２００からアドバタイズを受信すると、そのアドバタイズを送信したスレーブ装置２００に、そのスレーブ装置２００が要求サービスを提供可能か否かの問い合わせを含むスキャン要求（Scan Request）を送信する（ステップＳ１３）。
【００６３】
そして、スキャン要求を受信したスレーブ装置２００は、そのスキャン要求に含まれる要求サービスを提供可能か否かを示すスキャン応答（Scan Response）をマスター装置１００に送信する（ステップＳ１４）。また、スレーブ装置２００は、自身がサービスを提供可能であると判定すると、High Duty Cycle Direct Advertisingにより、第２所定間隔Ｔ２でアドバタイズを送信する（ステップＳ１５）。
【００６４】
マスター装置１００は、スレーブ装置２００から受信したスキャン応答が、要求サービスを提供可能である旨を示す場合、スレーブ装置２００からのアドバタイズを受信した後、接続要求（Connection Request）を送信する（ステップＳ１６）。その結果、マスター装置１００及びスレーブ装置２００にて接続処理が行われ、接続が確立する（ステップＳ１７）。
【００６５】
次に、本実施の形態に係るマスター装置１００の動作について、図７を参照して説明する。図７は、本実施の形態に係るマスター装置１００の制御部１０１が実行するマスター装置側接続処理の一例を示すフローチャートである。なお、このマスター装置側接続処理は、ＲＯＭ１０２内に予め記憶されているプログラムを読み出して実行する制御部１０１によって行われる。
【００６６】
マスター装置１００の制御部１０１は、例えば、受付部１１０が、サービス要求を受け付けたことを契機として、図７に示すマスター装置側接続処理を開始する。
【００６７】
まず、アドバタイズ取得部１２１は、アドバタイズのスキャンを開始する（ステップ１０１）。
【００６８】
そして、アドバタイズ取得部１２１は、スレーブ装置２００からアドバタイズを受信したか否かを判定する（ステップＳ１０２）。アドバタイズ取得部１２１は、アドバタイズを受信したと判定するまで、スキャンを続行する（ステップＳ１０２；Ｎｏ）。
【００６９】
アドバタイズ取得部１２１は、アドバタイズを受信したと判定した場合（ステップＳ１０２；Ｙｅｓ）、取得したアドバタイズの種類が、ADV_INDか否かを判定する（ステップＳ１０３）。取得したアドバタイズの種類が、ADV_INDでないと判定した場合（ステップＳ１０３；Ｎｏ）、アドバタイズ取得部１２１は、ステップＳ１０２に戻って処理を続行する。
【００７０】
アドバタイズ取得部１２１は、取得したアドバタイズの種類が、ADV_INDであると判定した場合（ステップＳ１０３；Ｙｅｓ）、スキャン要求送信部１２２は、受け付けたサービス要求のUUIDを含むスキャン要求を、ステップＳ１０２で受信したアドバタイズを送信したスレーブ装置２００に送信する（ステップＳ１０４）。
【００７１】
そして、接続確立部１３０は、スレーブ装置２００からスキャン応答を受信したか否かを判定する（ステップＳ１０５）。接続確立部１３０は、スキャン応答を受信したと判定するまで、待機する（ステップＳ１０５；Ｎｏ）。
【００７２】
接続確立部１３０は、スキャン応答を受信したと判定した場合（ステップＳ１０５；Ｙｅｓ）、取得したスキャン応答が、スレーブ装置２００が要求サービスを提供可能であることを示すか否かを判定する（ステップＳ１０６）。スキャン応答が、要求サービスを提供可能でないことを示すと判定した場合（ステップＳ１０６；Ｎｏ）、ステップＳ１０２に戻ってスキャン処理を続行する。
【００７３】
接続確立部１３０は、スキャン応答が、要求サービスを提供可能であることを示すと判定した場合（ステップＳ１０６；Ｙｅｓ）、そのスレーブ装置２００に対し、接続要求を送信する（ステップＳ１０７）。そして、マスター装置１００は、スレーブ装置２００との接続を確立して本処理を終了する。
【００７４】
次に、本実施の形態に係るスレーブ装置２００の動作について、図８を参照して説明する。図８は、本実施の形態に係るスレーブ装置２００の制御部２０１が実行するスレーブ装置側接続処理の一例を示すフローチャートである。なお、このスレーブ装置側接続処理は、ＲＯＭ２０２内に予め記憶されているプログラムを読み出して実行する制御部２０１によって行われる。
【００７５】
スレーブ装置２００のアドバタイズ送信部２１０は、例えば現在時刻が所定の時刻になったことを契機として、図８に示すスレーブ装置側接続処理を開始する。
【００７６】
まず、アドバタイズ送信部２１０は、第１所定間隔だけ待機する（ステップＳ２０１）。
【００７７】
次に、アドバタイズ送信部２１０は、アドバタイズのパケットを送信する（ステップＳ２０２）。
【００７８】
次に、接続確立部２４０は、マスター装置１００から接続要求を受信したか否かを判定する（ステップＳ２０３）。接続確立部２４０は、接続要求を受信したと判定した場合（ステップＳ２０３；Ｙｅｓ）、マスター装置１００との接続を確立して本処理を終了する。
【００７９】
接続確立部２４０が、マスター装置１００から接続要求を受信していないと判定した場合（ステップＳ２０３；Ｎｏ）、スキャン要求取得部２２０は、マスター装置１００からスキャン要求を受信したか否かを判定する（ステップＳ２０４）。マスター装置１００からスキャン要求を受信していないと判定した場合（ステップＳ２０４；Ｎｏ）、ステップＳ２０１に戻ってアドバタイズの送信を続行する。
【００８０】
スキャン要求取得部２２０は、マスター装置１００からスキャン要求を受信したと判定した場合（ステップＳ２０４；Ｙｅｓ）、サービス判定部２３０は、受信したスキャン要求が要求サービスのUUIDを含むか否かを判定する（ステップＳ２０５）。サービス判定部２３０は、受信したスキャン要求が要求サービスのUUIDを含まないと判定した場合（ステップＳ２０５；Ｎｏ）、通常のスキャン応答をマスター装置１００に送信し（ステップＳ２０６）、ステップＳ２０１に戻ってアドバタイズの送信を続行する。
【００８１】
サービス判定部２３０は、受信したスキャン要求が要求サービスのUUIDを含むと判定した場合（ステップＳ２０５；Ｙｅｓ）、要求サービスのUUIDに対応するサービスをスレーブ装置２００自身が提供可能か否かを判定する（ステップＳ２０７）。
【００８２】
サービス判定部２３０は、要求サービスのUUIDに対応するサービスをスレーブ装置２００自身が提供可能であると判定した場合（ステップＳ２０７；Ｙｅｓ）、要求サービスを提供可能である旨のスキャン応答をマスター装置１００に送信する（ステップＳ２０８）。
【００８３】
次に、アドバタイズ送信部２１０は、アドバタイズの種類がADV_DIRECT_INDであって、スキャン要求を送信したマスター装置１００からの接続要求のみを受け付けることを示すアドバタイズを送信する（ステップＳ２０９）。そして、接続確立部２４０は、マスター装置１００から接続要求を受信したか否かを判定する（ステップＳ２１０）。接続確立部２４０は、接続要求を受信したと判定した場合（ステップＳ２１０；Ｙｅｓ）、マスター装置１００との接続を確立して本処理を終了する。
【００８４】
接続確立部２４０は、接続要求を受信していないと判定した場合（ステップＳ２１０；Ｎｏ）、アドバタイズ送信部２１０は、第２所定間隔だけ待機し（ステップＳ２１１）、ステップＳ２０９に戻ってアドバタイズの送信を続行する。
【００８５】
サービス判定部２３０が、要求サービスのUUIDに対応するサービスをスレーブ装置２００自身が提供可能でないと判定した場合（ステップＳ２０７；Ｎｏ）、接続確立部２４０は、要求サービスを提供不可能である旨のスキャン応答をマスター装置１００に送信する（ステップＳ２１２）。そして、ステップＳ２０１に戻ってアドバタイズの送信を続行する。
【００８６】
以上説明したように、上記実施の形態に係るマスター装置１００がスレーブ装置２００に送信するスキャン要求のパケットは、自身が必要とするサービスの情報である要求サービスのUUIDを付加できるように拡張されている。そして、スレーブ装置２００は、受信したスキャン要求のパケットに含まれている要求サービスを提供可能か否かを示す情報をスキャン応答のパケットに付加してマスター装置１００に送信する。従って、マスター装置１００は、スレーブ装置２００と接続することなく、そのスレーブ装置２００が要求サービスを提供可能か否かを判定することができるため、効率良く要求サービスを提供可能なスレーブ装置２００を探索することができる。
【００８７】
また、マスター装置１００は、スレーブ装置２００から受信したアドバタイズの種類に応じて、スキャン要求を送信するか否か判定するため、無用なパケットの送信を抑制することができる。
【００８８】
また、要求サービスを提供可能であると判定したスレーブ装置２００は、その後のアドバタイズを通常のアドバタイズ・インターバルよりも短いインターバルで送信するため、マスター装置１００との間で迅速に接続を確立することができる。また、スレーブ装置２００は、アドバタイズの種類がADV_DIRECT_INDであるアドバタイズを送信するため、他の機器からの接続要求やスキャン要求の影響を受けずに、スキャン要求を送信したマスター装置１００と確実に接続することができる。
【００８９】
以上、本発明の実施の形態及び変形例について説明したが、本発明は上記の実施の形態及び変形例によって限定されるものではない。
【００９０】
例えば、上記実施の形態では、スレーブ装置２００は、受信したスキャン要求のパケットに含まれている要求サービスを提供可能であると判定した場合、提供可能である旨を示す情報をスキャン応答のパケットに付加してマスター装置１００に送信する。しかし、スレーブ装置２００は、要求サービスを提供可能である場合、スキャン応答を送信せずに、High Duty Cycle Direct Advertisingを行ってもよい。これにより、マスター装置１００は、要求サービスを提供可能なスレーブ装置２００と迅速かつ確実に接続することができる。
【００９１】
また、上記実施の形態では、図１に示すように無線通信システム１を、１つのマスター装置１００と、１つのスレーブ装置２００とで構成した。しかし、無線通信システム１を構成するマスター装置１００及びスレーブ装置２００の数はこれに限られず、それぞれ複数のマスター装置１００及びスレーブ装置２００から構成されてもよい。
【００９２】
また、本発明に係るマスター装置１００及びスレーブ装置２００は、専用の装置によらず、通常のコンピュータシステムを用いて実現可能である。例えば、コンピュータがプログラムを実行することで、マスター装置１００の機能及びスレーブ装置２００の機能を実現してもよい。マスター装置１００の機能及びスレーブ装置２００の機能を実現するためのプログラムは、ＵＳＢ（Universal Serial Bus）メモリ、ＳＤ（Secure Digital）メモリカード、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＤＶＤ（Digital Versatile Disc）、ＢＤ（Blu-ray（登録商標） Disc）、ＨＤＤ（Hard Disk Drive）等のコンピュータ読み取り可能な記録媒体に記憶されてもよいし、ネットワークを介してコンピュータにダウンロードされてもよい。
【００９３】
以上、本発明の好ましい実施の形態について説明したが、本発明は係る特定の実施の形態に限定されるものではなく、本発明には、特許請求の範囲に記載された発明とその均等の範囲が含まれる。以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
【００９４】
（付記１）
他の無線通信装置から送信された識別情報を取得する取得部と、
前記識別情報を取得すると、前記他の無線通信装置に、所定のサービスを前記他の無線通信装置が提供可能か否かの問い合わせを含むスキャン要求を送信する送信部と、
前記スキャン要求に対する前記他の無線通信装置からの応答に基づいて、前記他の無線通信装置との接続を確立する接続確立部と、
を備えることを特徴とする無線通信装置。
【００９５】
（付記２）
前記接続確立部は、前記スキャン要求に対する前記他の無線通信装置からの応答が、前記所定のサービスを提供可能である旨を示す場合、前記他の無線通信装置との接続を確立する、
ことを特徴とする付記１に記載の無線通信装置。
【００９６】
（付記３）
前記送信部は、取得された前記識別情報の種類に応じて、前記スキャン要求を送信するか否かを決定する、
ことを特徴とする付記１または２に記載の無線通信装置。
【００９７】
（付記４）
識別情報を第１所定間隔で送信する送信部と、
前記識別情報を受信した他の無線通信装置から、所定のサービスを自身が提供可能か否かの問い合わせを含むスキャン要求を取得する取得部と、
前記スキャン要求を取得すると、前記所定のサービスを提供可能か否か判定する判定部と、
前記判定部による判定結果に基づいて、前記他の無線通信装置との接続を確立する接続確立部と、
を備えることを特徴とする無線通信装置。
【００９８】
（付記５）
前記判定部は、前記所定のサービスを提供可能であると判定した場合、前記他の無線通信装置に、前記所定のサービスを提供可能である旨の応答を送信し、
前記接続確立部は、前記応答を受信した前記他の無線通信装置からの接続要求を受信すると、前記他の無線通信装置との接続を確立する、
ことを特徴とする付記４に記載の無線通信装置。
【００９９】
（付記６）
前記送信部は、前記判定部が前記所定のサービスを提供可能であると判定した場合、前記第１所定間隔よりも短い第２所定間隔で前記識別情報を送信し、
前記接続確立部は、前記第２所定間隔で送信された前記識別情報を受信した前記他の無線通信装置からの接続要求を受信すると、前記他の無線通信装置との接続を確立する、
ことを特徴とする付記４または５に記載の無線通信装置。
【０１００】
（付記７）
前記送信部は、前記判定部が前記所定のサービスを提供可能であると判定した場合、前記他の無線通信装置からの接続要求のみを受け付ける旨の前記識別情報を送信し、
前記接続確立部は、前記他の無線通信装置からの接続要求のみを受け付ける旨の前記識別情報を受信した前記他の無線通信装置からの接続要求を受信すると、前記他の無線通信装置との接続を確立する、
ことを特徴とする付記４乃至６のいずれか１つに記載の無線通信装置。
【０１０１】
（付記８）
第１無線通信装置と、当該第１無線通信装置と無線通信を行う第２無線通信装置と、から構成される無線通信システムであって、
前記第１無線通信装置は、
識別情報を所定間隔で送信する第１送信部と、
前記識別情報を受信した前記第２無線通信装置から、所定のサービスを自身が提供可能か否かの問い合わせを含むスキャン要求を取得する第１取得部と、
前記スキャン要求を取得すると、前記所定のサービスを提供可能か否か判定する判定部と、
前記判定部による判定結果に基づいて、前記第２無線通信装置との接続を確立する第１接続確立部と、を備え、
前記第２無線通信装置は、
前記第１無線通信装置から送信された識別情報を取得する第２取得部と、
前記識別情報を取得すると、前記第１無線通信装置に、前記所定のサービスを前記第１無線通信装置が提供可能か否かの問い合わせを含むスキャン要求を送信する第２送信部と、
前記スキャン要求に対する前記第１無線通信装置からの応答に基づいて、前記第１無線通信装置との接続を確立する第２接続確立部と、
を備えることを特徴とする無線通信システム。
【０１０２】
（付記９）
他の無線通信装置と無線通信を行う無線通信装置が実行する無線通信方法であって、
前記他の無線通信装置から送信された識別情報を取得する取得ステップと、
前記識別情報を取得すると、前記他の無線通信装置に、所定のサービスを前記他の無線通信装置が提供可能か否かの問い合わせを含むスキャン要求を送信する送信ステップと、
前記スキャン要求に対する前記他の無線通信装置からの応答に基づいて、前記他の無線通信装置との接続を確立する接続確立ステップと、
を含むことを特徴とする無線通信方法。
【０１０３】
（付記１０）
他の無線通信装置と無線通信を行う無線通信装置が実行する無線通信方法であって、
識別情報を所定間隔で送信する送信ステップと、
前記識別情報を受信した前記他の無線通信装置から、所定のサービスを自身が提供可能か否かの問い合わせを含むスキャン要求を取得する取得ステップと、
前記スキャン要求を取得すると、前記所定のサービスを提供可能か否か判定する判定ステップと、
前記判定ステップにおける判定結果に基づいて、前記他の無線通信装置との接続を確立する接続確立ステップと、
を含むこと特徴とする無線通信方法。
【０１０４】
（付記１１）
無線通信装置と無線通信を行うコンピュータを、
前記無線通信装置から送信された識別情報を取得する取得手段、
前記識別情報を取得すると、前記無線通信装置に、所定のサービスを前記無線通信装置が提供可能か否かの問い合わせを含むスキャン要求を送信する送信手段、
前記スキャン要求に対する前記無線通信装置からの応答に基づいて、前記無線通信装置との接続を確立する接続確立手段、
として機能させることを特徴とするプログラム。
【０１０５】
（付記１２）
無線通信装置と無線通信を行うコンピュータを、
識別情報を所定間隔で送信する送信手段、
前記識別情報を受信した前記無線通信装置から、所定のサービスを自身が提供可能か否かの問い合わせを含むスキャン要求を取得する取得手段、
前記スキャン要求を取得すると、前記所定のサービスを提供可能か否か判定する判定手段、
前記判定手段による判定結果に基づいて、前記無線通信装置との接続を確立する接続確立手段、
として機能させること特徴とするプログラム。
【０１０６】
（付記１３）
スレーブ装置とBluetooth（登録商標） low energyに基づく無線通信を行うマスター装置であって、
前記スレーブ装置から送信されたアドバタイズを取得する取得部と、
前記アドバタイズを取得すると、前記スレーブ装置に、所定のサービスを前記スレーブ装置が提供可能か否かの問い合わせを含むスキャン要求を送信する送信部と、
前記スキャン要求に対する前記スレーブ装置からの応答に基づいて、前記スレーブ装置との接続を確立する接続確立部と、
を備えること特徴とするマスター装置。
【０１０７】
（付記１４）
マスター装置とBluetooth（登録商標） low energyに基づく無線通信を行うスレーブ装置であって、
アドバタイズを所定間隔で送信する送信部と、
前記アドバタイズを受信した前記マスター装置から、所定のサービスを自身が提供可能か否かの問い合わせを含むスキャン要求を取得する取得部と、
前記スキャン要求を取得すると、前記所定のサービスを提供可能か否か判定する判定部と、
前記判定部による判定結果に基づいて、前記マスター装置との接続を確立する接続確立部と、
を備えるスレーブ装置。
【符号の説明】
【０１０８】
１…無線通信システム、１００…マスター装置、１０１…制御部、１０２…ＲＯＭ、１０３…ＲＡＭ、１０４…無線通信処理部、１０５…アンテナ、１０６…スピーカ、１０７…ドライバ、１０８…表示部、１０９…タッチパネル、１１０…受付部、１２０…スキャン部、１２１…アドバタイズ取得部、１２２…スキャン要求送信部１２２、１３０…接続確立部、１４０…データ通信部、２００…スレーブ装置、２０１…制御部、２０２…ＲＯＭ、２０３…ＲＡＭ、２０４…無線通信処理部、２０５…アンテナ、２０６…操作部、２０７…ドライバ、２０８…表示部、２１０…アドバタイズ送信部、２２０…スキャン要求取得部、２３０…サービス判定部、２４０…接続確立部、２５０…データ通信部
【図１】
0006394177.tif 000002
【図２】
0006394177.tif 000003
【図３】
0006394177.tif 000004
【図４】
0006394177.tif 000005
【図５】
0006394177.tif 000006
【図６】
0006394177.tif 000007
【図７】
0006394177.tif 000008
【図８】
0006394177.tif 000009