図1は、実施の形態の通信システム100の構成を示す。通信システム100の構成は、後述の第1の実施の形態および第2の実施の形態に共通である。通信システム100は、携帯型のゲーム機10と、ヘッドフォンとマイクロフォンが一体化されたヘッドセット12と、スマートフォン14と、タブレット端末16と、マルチメディアデータを格納するストレージ装置18を備える。通信システム100の各装置は、数メートルから数十メートルの近傍範囲内(例えばユーザ宅内)に置かれる情報機器であり、近距離無線通信に対応した通信装置でもある。本実施の形態では、通信システム100各機器は、ブルートゥース対応機器であることとし、ブルートゥース通信により相互にデータを交換する。
これまで、ゲーム機10等のディスプレイを有するブルートゥース対応機器では、近傍に存在する他のブルートゥース対応機器を検出して一覧表示させ、接続すべき相手機器をユーザに選択させることがあった。しかし、相手機器の選択操作は必ずしも簡単なものでなく、ユーザにとって煩雑でわかりづらいこともあった。
また、ヘッドセット12等のディスプレイを備えないブルートゥース対応機器は、電源オフの前に最後に接続されていた外部機器に対して、電源オン時に自動で再接続する仕様となっていることがあった。この場合、例えばヘッドセット12が電源オフの直前にスマートフォン14と接続していた場合、電源オン時にユーザがヘッドセット12とゲーム機10を接続したいと考えても、ヘッドセット12はスマートフォン14と再接続してしまう。そのため、ユーザはスマートフォン14からゲーム機10へ接続先を変更するための作業を行なう必要があり、ユーザの利便性を低下させてしまうことがあった。
また、ブルートゥースによる接続先を、ブルートゥース以外の通信方式、例えばNFC(Near Field Communication)等を使用して決定するOOB(Out Of Band)と呼ばれるペアリング技術も提案されている。しかし、OOBではNFC等、ブルートゥース以外の通信方式に対応した通信モジュールが別途必要になり、コストが高いという問題があった。
このように、多くの情報機器がブルートゥースに対応するのに伴い、複数のブルートゥース対応機器の中で所望の機器同士を接続させるためにユーザに煩雑な操作が要求され、ユーザの利便性が低下してしまうという問題が顕在化してきている。そして、複数の情報機器同士を接続させる際のユーザの利便性低下を効果的に抑制する具体的な方法は、これまで十分に提案されていなかった。
そこで実施の形態では、接続させたい機器同士をぶつける、言い換えれば、軽く突き合わせるというユーザにとってわかりやすい直感的な操作にもとづいて、所望の機器間でブルートゥースによる接続を確立させる技術を提案する。具体的には、第1の実施の形態として、接続対象機器同士を衝突させることで共通の状態変化を検出させて、接続対象機器のそれぞれが検出した状態変化の整合度合いにより接続相手を特定させる通信システム100を説明する。また第2の実施の形態として、接続元の機器が、接続先の機器に対して物理的な刺激(衝撃)を与えて、その刺激により発生した音にもとづいて接続相手を特定する通信システム100を説明する。
以下の第1および第2の実施の形態では、接続対象機器をゲーム機10およびヘッドセット12とし、これらの機器の間でブルートゥースによる接続を確立させることを例に説明する。ただし、他の機器(例えばスマートフォン14、タブレット端末16、ストレージ装置18)が接続対象機器である場合、また、接続方式がブルートゥース以外の場合にも実施の形態に記載の技術を適用できることはもちろんである。
(第1の実施の形態)
図2は、図1のゲーム機10の機能構成を示すブロック図である。ゲーム機10は、アンテナ20と、ディスプレイ22と、タッチパネル24と、センサ26と、通信IF部30と、データ保持部40と、制御部50を備える。
ブロック図において示される各ブロックは、ハードウェア的には、コンピュータのCPUやメモリをはじめとする素子や機械装置で実現でき、ソフトウェア的にはコンピュータプログラム等によって実現されるが、ここでは、それらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックはハードウェア、ソフトウェアの組合せによっていろいろなかたちで実現できることは、当業者には理解されるところである。以降のブロック図についても同様である。
例えば、制御部50の機能は、制御部50の各機能ブロックに対応するプログラムモジュールがゲーム機10のフラッシュメモリに格納され、ゲーム機10のCPUがそれらのプログラムモジュールをメインメモリへ適宜読み出して実行することにより実現されてもよい。またデータ保持部40は、ゲーム機10のフラッシュメモリやメインメモリにより実現されてもよい。また、所定のセンサを備えたゲーム機10に、状態変化検出部58・照合情報設定部60・照合部62・接続対象特定部64の機能が実装されたコンピュータプログラムがインストールされることにより、図2の各機能が実現されてもよい。
通信IF部30は、ゲーム機10における無線通信インタフェースであり、受信部32と送信部34を含む。受信部32は、アンテナ20を介して、外部機器が発信した無線信号を受信して制御部50に渡す。送信部34は、制御部50から送出された外部機器宛のデータを示す無線信号をアンテナ20を介して外部へ送信(発信)する。
ディスプレイ22は液晶ディスプレイであり、タッチパネル24はマルチタッチパネルである。本実施の形態では、ディスプレイ22とタッチパネル24とが一体化されたマルチタッチスクリーンがゲーム機10に搭載されている。
センサ26は、ゲーム機10と外部機器とが当接(接触、圧接、衝突等を含む)した事実、言い換えれば、ゲーム機10と外部機器とが当接したことにより実際に生じたゲーム機10の状態変化を検知する公知のセンサである。本実施の形態のセンサ26は、外部機器との衝突(また衝突させようとするユーザの操作)により生じたゲーム機10の動き(振動)の向きや大きさを検知する3軸の加速度センサであり、ゲーム機10の動きの方向や大きさを示す信号を制御部50へ送出する。変形例として、センサ26は、外部機器から圧力を加えられたことを検知し、その事実と圧力の大きさを示す信号を制御部50へ送出する圧力センサでもよい。また、外部機器と接触したことを検知し、その事実を示す信号を制御部50へ送出するタッチセンサでもよい。
データ保持部40は、制御部50によるデータ処理のための各種データを保持する記憶領域である。データ保持部40は、接続情報保持部42と、照合情報保持部44と、ユーザ支援情報保持部46を含む。
接続情報保持部42は、外部のブルートゥース対応機器との接続を確立させるために必要な情報(以下、「接続情報」とも呼ぶ。)を保持する。接続情報は、例えば外部機器の機器ID、アドレス(ブルートゥースアドレス)、パスキー(PIN)を対応づけたレコードであってもよい。接続情報は、ブルートゥースのペアリング時に設定される。
照合情報保持部44は、外部機器から通知された外部機器の状態変化を示す情報と照合するための照合情報を保持する。具体的には照合情報保持部44は、照合情報として、センサ26で検知されたゲーム機10の状態変化を示す情報を保持し、具体的にはセンサ26が状態変化を検知した時刻を示すタイムスタンプ情報を保持する。
ここで照合情報は、ゲーム機10と当接した外部機器において検出されることが想定される状態変化を示す情報と言える。本実施の形態では、ゲーム機10と接続対象機器とを当接させ、言い換えれば、ゲーム機10と接続対象機器の両方に共通する環境変化を与えて、両方の機器で共通する状態変化を検出させる。したがって、ゲーム機10のセンサ26による状態変化の検知時刻と近似する時刻に、接続対象機器のセンサでも状態変化が検知されると想定される。
ユーザ支援情報保持部46は、ゲーム機10と外部機器の間でブルートゥースによる接続を確立させるために必要なユーザの行為を促すための情報(以下、「ユーザ支援情報」とも呼ぶ。)を保持する。例えばユーザ支援情報は、ディスプレイ22に表示させるデータであり、ゲーム機10と接続させたい情報機器をゲーム機10と軽く衝突させることを指示するメッセージや画像であってもよい。
制御部50は、ゲーム機10を制御するための各種データ処理を実行する。制御部50は、操作検出部52と、表示制御部54と、アプリケーション部56と、状態変化検出部58と、照合情報設定部60と、照合部62と、接続対象特定部64と、プロトコル処理部70を含む。
プロトコル処理部70は、所定の無線通信プロトコルに即した処理を実行し、例えば、所定の無線通信プロトコルで定められた手順にしたがって外部機器の探索処理や、外部機器との接続処理を実行する。本実施の形態の無線通信プロトコルはブルートゥースである。プロトコル処理部70は、探索部72とペアリング部74と接続処理部76を含む。
探索部72は、数メートルから数十メートルの近傍範囲に存在するブルートゥース対応機器を発見するための無線信号である探索(Inquiry)信号を送信部34を介して送信する。そして、近傍範囲に存在するブルートゥース対応機器であり、探索可能状態(接続待受状態)にある情報機器から送信された、探索信号に応答する無線信号である探索応答(Inquiry Response)信号を受信部32を介して取得する。探索部72は、ペアリング部74によるペアリング処理時、および、接続処理部76による接続処理時に、探索信号を外部へ発信する。
探索部72は、探索信号への応答である探索応答信号を外部装置、例えばゲーム機10の近傍に置かれたヘッドセット12〜ストレージ装置18のそれぞれから受け付ける。本実施の形態では、ゲーム機10とヘッドセット12が当接されることとし、後述するヘッドセット12の構成によって、ヘッドセット12からの探索応答信号に、ゲーム機10との衝突に起因する状態変化を示す情報(具体的には状態変化の検出時刻を示すタイムスタンプ情報)が含まれる。すなわち、ゲーム機10からの探索信号を受信可能な近傍位置に置かれ、後述するヘッドセット12と同様のプロトコル処理や、状態変化の検出・通知を実行可能であり、(ゲーム機10との当接等に起因した)状態変化を検出した機器から、タイムスタンプ付きの探索応答信号が返されることになる。
ペアリング部74は、ブルートゥース規格で定められたペアリング処理、すなわち外部機器の登録処理を実行する。具体的にはペアリング部74は、探索部72で取得された探索応答信号にもとづいて近傍範囲に存在するブルートゥース対応機器を認識し、それらの一覧情報を表示制御部54を介してディスプレイ22に表示させる。ディスプレイ22上のタッチパネル24においてユーザがペアリング対象の外部機器を選択すると、選択された外部機器に対して所定のペアリング処理(例えばパスキーの入力や交換)を実行する。そして、ペアリング処理の結果として得られた外部機器との接続情報(例えば機器ID、アドレス、パスキー)を接続情報保持部42へ格納する。
接続処理部76は、後述の接続対象特定部64により接続相手装置が決定された場合に、その接続相手装置に関する接続情報にしたがって、ブルートゥースによる接続を確立させるための接続要求信号(Page信号)を設定する。そして、設定した接続要求信号を送信部34を介して接続相手装置へ送信する。例えば接続要求信号は、接続相手装置の機器IDおよびアドレスを指定し、パスキーにより暗号化したデータであってもよい。
操作検出部52は、タッチパネル24に対するユーザの操作入力を検出する。表示制御部54は、画面表示させるべき映像データや画像データをディスプレイ22へ送出して、各種の映像や画像をディスプレイ22に表示させる。例えば表示制御部54は、ユーザ支援情報保持部46に保持されたユーザ支援情報を表示させ、また、ペアリング対象装置や接続対象装置の選択画面を表示させる。
アプリケーション部56は、所定のアプリケーション(例えばゲームソフトウェア)を実行し、その映像や画像を表示制御部54を介してディスプレイ22に表示させる。またタッチパネル24に対するユーザの操作内容を操作検出部52を介して取得し、その操作内容に応じてアプリケーションの実行を制御する。またアプリケーション部56は、アプリケーションの実行に際して外部機器とデータを送受すべき場合に、接続処理部76が確立した無線通信セッションを使用して外部装置へデータを送信し、また外部装置からデータを受信する。例えば、ゲームの音声データをヘッドセット12へ送信して、ヘッドセット12のスピーカから出力させる。
状態変化検出部58は、センサ26からゲーム機10の状態変化を示す信号を受け付ける。照合情報設定部60は、状態変化検出部58による状態変化の検出時刻、例えばセンサ26からの状態変化信号の受付時刻を示すタイムスタンプ情報を照合情報として照合情報保持部44へ格納する。照合情報設定部60は、加速度センサであるセンサ26により予め定められた閾値以上の動きや振動が検知されたことを条件として、その検知時刻を示すタイムスタンプ情報を照合情報保持部44へ保存してもよい。またセンサ26が圧力センサの場合、予め定められた閾値以上の圧力が検知されたことを条件として、その検知時刻を示すタイムスタンプ情報を照合情報保持部44へ保存してもよい。これらの閾値は、接続対象機器同士を軽く当接させた場合に検知することが見込まれる想定値であってよく、開発者の知見や通信システム100を用いた実験等により適宜決定されてよい。
本実施の形態では、接続対象機器同士を当接させ、その当接により生じた両機器の状態変化のタイミング(すなわち検出時刻)を比較・照合する。変形例として、状態変化の内容(例えば振動の大きさや方向等)を比較・照合してもよく、この場合は状態変化の内容を示す照合情報が記録される。
照合部62は、1以上の外部機器のそれぞれから受け付けられた探索応答信号の中に、外部機器における状態変化を示す情報(本実施の形態では状態変化を検出したタイムスタンプ情報)が含まれるか否かを判定する。含まれる場合、探索応答信号のタイムスタンプ情報が示す時刻と、照合情報のタイムスタンプ情報が示す時刻との整合度合いを判定し、時刻の差異が所定の閾値以下の場合、両者のタイムスタンプ情報が整合すると判定する。この閾値は、接続対象機器同士を軽く当接させて双方の機器で状態変化を検出する場合に想定される検出時刻の差異であってもよく、その差異の許容範囲を示す値であってもよく、開発者の知見や通信システム100を用いた実験等により適宜決定されてよい。
接続対象特定部64は、照合部62により探索応答信号のタイムスタンプ情報が示す時刻と、照合情報のタイムスタンプ情報が示す時刻とが整合すると判定された場合、その探索応答信号の送信元を、ブルートゥース接続を確立すべき相手装置として特定する。言い換えれば、ブルートゥースによる無線通信の対向装置として決定する。接続対象特定部64は、探索応答信号に含まれる接続相手装置の識別情報を接続処理部76に渡して、ゲーム機10と接続相手装置との無線通信セッションを確立させる。
なお、照合情報と整合する探索応答信号を検出しなかった場合、照合部62は、探索応答信号を返したブルートゥース対応機器の一覧情報を、表示制御部54を介してディスプレイ22に表示させる。ディスプレイ22上のタッチパネル24においてユーザが接続対象の外部機器を選択すると、接続対象特定部64は、選択された外部機器を接続相手装置として認識し、ゲーム機10と接続相手装置との無線通信セッションを確立させる。
図3は、図1のヘッドセット12の機能構成を示すブロック図である。ヘッドセット12は、アンテナ110と、スピーカ112と、操作ボタン114と、センサ116と、通信IF部120と、データ保持部130と、制御部140を備える。
例えば、制御部140の機能は、専用の電子回路により実現されてもよい。また制御部140の機能は、制御部140の各機能ブロックに対応するプログラムモジュールがヘッドセット12のフラッシュメモリに格納され、ヘッドセット12のCPUがそれらのプログラムモジュールをメインメモリへ適宜読み出して実行することにより実現されてもよい。またデータ保持部130は、ヘッドセット12のフラッシュメモリやメインメモリにより実現されてもよい。また、所定のセンサを備えたヘッドセット12に、状態変化検出部146・状態変化通知部148の機能が実装されたコンピュータプログラムがインストールされることにより、図3の各機能が実現されてもよい。
通信IF部120は、ヘッドセット12における無線通信インタフェースであり、受信部122と送信部124を含む。受信部122は、アンテナ110を介して、外部機器が発信した無線信号を受信して制御部140に渡す。送信部124は、制御部140から送出された外部機器宛のデータを示す無線信号をアンテナ110を介して外部へ送信(発信)する。
センサ116は、ヘッドセット12と外部機器とが当接(圧接、接触、衝突等を含む)した事実、言い換えれば、ヘッドセット12と外部機器とが当接したことにより実際に生じたヘッドセット12の状態変化を検知する公知のセンサである。本実施の形態のセンサ116は、外部機器との衝突(また衝突させようとするユーザの操作)により生じたヘッドセット12の動き(振動)の向きや大きさを検知する3軸の加速度センサであり、ヘッドセット12の動きの方向や大きさを示す信号を制御部140へ送出する。変形例として、センサ116は、外部機器から圧力を加えられたことを検知し、その事実と圧力の大きさを示す信号を制御部140へ送出する圧力センサでもよい。また、外部機器と接触したことを検知し、その事実を示す信号を制御部140へ送出するタッチセンサでもよい。
データ保持部130は、制御部140によるデータ処理のための各種データを保持する記憶領域である。データ保持部130は、接続情報保持部132とセンサ情報保持部134を含む。
接続情報保持部132は、外部のブルートゥース対応機器との接続を確立させるために必要な接続情報を保持する。接続情報は、例えば外部機器の機器ID、アドレス、パスキー(すなわち「PIN」)を対応づけたレコードであってもよい。接続情報は、ブルートゥースのペアリング時に設定される。センサ情報保持部134は、センサ116で検知されたヘッドセット12の状態変化を示す情報を保持し、具体的には、センサ116が状態変化を検知した時刻を示すタイムスタンプ情報を保持することとする。
制御部140は、ヘッドセット12を制御するための各種データ処理を実行する。制御部140は、操作検出部142と、音声制御部144と、状態変化検出部146と、状態変化通知部148と、プロトコル処理部150を含む。
プロトコル処理部150は、所定の無線通信プロトコルに即した処理を実行し、例えば、所定の無線通信プロトコルで定められた手順にしたがって外部機器との接続処理を実行する。本実施の形態の無線通信プロトコルはブルートゥースである。プロトコル処理部150は、探索応答部152とペアリング部154と接続処理部156を含む。
探索応答部152は、外部機器から送信された探索信号を受信部122を介して受信し、探索応答信号を送信部124を介して送信する。後述するように、探索応答部152は、拡張探索応答(Extended Inquiry Response)信号を送信する。
ペアリング部154は、ブルートゥース規格で定められたペアリング処理、すなわち外部機器の登録処理を実行する。具体的にはペアリング部154は、外部機器から送信されたペアリング要求信号を受信部122を介して受信し、そのペアリング要求信号にもとづいて所定のペアリング処理(例えばパスキーの入力や交換)を実行する。そして、ペアリング処理の結果として得られた外部機器との接続情報(例えば機器ID、アドレス、パスキー)を接続情報保持部132へ格納する。
接続処理部156は、外部機器から送信された接続要求信号を受信部122を介して取得し、ブルートゥース規格で定められた接続処理(例えばpage動作)を実行することにより、接続要求信号の送信元との接続を確立させる。
操作検出部142は、操作ボタン114に対するユーザの操作入力を検出する。音声制御部144は、スピーカ112の音声出力を制御する。具体的には、外部装置から送信された音声データを受信部122を介して取得し、その音声データをスピーカ112へ渡して音声出力させる。図3には図示しないが、ヘッドセット12は、マイクロフォンを備え、マイクロフォンから出力された信号に基づいて周囲の音声を検出し、その音声データを外部へ出力する機能も有する。例えば、検出した音声データを、送信部124を介してゲーム機10等の外部装置へ送信してもよい。
状態変化検出部146は、センサ116からヘッドセット12の状態変化を示す信号を受け付ける。状態変化検出部146は、状態変化の検出時刻、例えばセンサ116からの状態変化信号の受付時刻を示すタイムスタンプ情報をセンサ情報保持部134へ格納する。状態変化検出部146は、加速度センサであるセンサ116により予め定められた閾値以上の動きや振動が検知したことを条件として、その検知時刻を示すタイムスタンプ情報をセンサ情報保持部134へ保存してもよい。またセンサ116が圧力センサの場合、予め定められた閾値以上の圧力が検知されたことを条件として、その検知時刻を示すタイムスタンプ情報をセンサ情報保持部134へ保存してもよい。これらの閾値は、接続対象機器同士を軽く当接させた場合に検知することが見込まれる想定値であってよく、開発者の知見や通信システム100を用いた実験等により適宜決定されてよい。
状態変化通知部148は、センサ情報保持部134に保持されたヘッドセット12の状態変化を示す情報、本実施の形態ではヘッドセット12における状態変化のタイムスタンプ情報をゲーム機10へ通知する。状態変化通知部148は、外部機器からの探索信号が受け付けられた場合に、探索応答部152が送信すべき拡張探索応答信号に対して状態変化のタイムスタンプ情報を付加する。探索応答部152は、状態変化のタイムスタンプ情報が付加された拡張探索応答信号を送信する。
図4は、拡張探索応答信号の構成を示す。拡張探索応答信号は、可変長のEIR構造体180を複数個含む。EIR構造体180は、長さフィールド182と、EIRデータタイプフィールド184と、EIRデータフィールド186を含む。例えば、拡張探索応答信号の1番目のEIR構造体180には、探索応答部152が、EIRデータタイプフィールド184に機器IDを示すタイプ値を設定し、EIRデータフィールド186に機器ID(ヘッドセット12のユニークな識別情報)を設定してもよい。
その一方、拡張探索応答信号の2番目のEIR構造体180には、状態変化通知部148が、EIRデータタイプフィールド184に状態変化情報を示す所定のタイプ値を設定し、EIRデータフィールド186に、センサ情報保持部134に保持された状態変化のタイムスタンプ情報を設定してもよい。なお状態変化情報を示すタイプ値は、ブルートゥース規格で予約済みでない(未使用)のタイプ値の中で設計者が選択した値でよく、例えば「0xDD」であってもよい。
以上の構成によるゲーム機10およびヘッドセット12の動作を説明する。
図5は、図1のゲーム機10の動作を示すフローチャートである。同図には不図示であるが、ここではゲーム機10は、外部のブルートゥース対応機器(ヘッドセット12、スマートフォン14、タブレット端末16、ストレージ装置18)のそれぞれと予めペアリング済みであり、各機器に関する接続情報が保存済であることとする。
ゲーム機10の電源がオンになると(S10)、この例ではブルートゥースによる外部機器との接続処理が実行されることとする。表示制御部54は、ユーザ支援情報保持部46が保持するユーザ支援情報をディスプレイ22に表示させて、接続相手装置との突き合わせ作業をユーザに促す(S12)。ユーザ支援情報にしたがってユーザはゲーム機10と所望の接続相手装置(ここではヘッドセット12)を軽く突き合わせる(S14)。このとき状態変化検出部58は、センサ26を介して、ゲーム機10の状態変化を検出し、照合情報設定部60は、状態変化が生じた時刻を示すタイムスタンプ情報を照合情報として照合情報保持部44へ記録する(S16)、探索部72は探索信号を外部へ送信し(S16)、近傍に存在する複数のブルートゥース対応機器(ヘッドセット12、スマートフォン14、タブレット端末16、ストレージ装置18)のそれぞれから探索応答信号を受信する(S20)。
照合部62は、複数の探索応答信号のそれぞれが状態変化情報(タイムスタンプ情報)を含むか否かを判定する。そして、タイムスタンプ情報を含む探索応答信号については、そのタイムスタンプ情報と、照合情報が示すタイムスタンプ情報とが整合するか否かを判定する(S22)。具体的には、複数の探索応答信号の中で、1)拡張探索応答信号であり、2)EIRデータタイプフィールド184が状態変化情報を示すタイプ値であるEIR構造体180を含み、3)EIRデータフィールド186のタイムスタンプ情報が示す時刻と、照合情報としてのタイムスタンプ情報が示す時刻との差異が所定範囲内の、探索応答信号を照合情報に整合するものとして特定する。照合情報に整合する探索応答信号が特定された場合(S24のY)、接続対象特定部64は、その探索応答信号の送信元装置を接続相手装置に決定する。本実施の形態の例では、上記1〜3の全ての条件を充足するものはゲーム機10と共通の衝撃を検出したヘッドセット12のみであり、ヘッドセット12を接続相手装置として決定する。
また照合情報に整合する複数の探索応答信号が特定された場合、接続対象特定部64は、照合情報としてのタイムスタンプ情報が示す時刻との差異が最も小さい探索応答信号の送信元装置を接続相手装置に決定する。さらにまた、照合情報に整合する探索応答信号が特定されなかった場合(S24のN)、表示制御部54は探索応答信号を返した1以上の外部機器をリスト表示し、ユーザによる接続相手装置の選択を促す選択画面をディスプレイ22に表示させる(S26)。そして接続対象特定部64は、その選択画面でユーザが選択した外部機器を接続相手装置として決定する。S26の変形例として、ユーザにより既定の接続先として予めヘッドセット12に登録された情報機器や、ヘッドセット12が最後に接続した情報機器を接続相手装置として決定してもよい。
接続処理部76は、接続対象特定部64が決定した接続相手装置に関して接続情報を使用して、接続相手装置に対して接続要求信号を送信する(S28)。接続相手装置との接続が確立すると(S30のY)、アプリケーション部56は、アプリケーション処理に関する各種データを接続相手装置と送受信する(S32)。例えば、接続相手装置がヘッドセット12の場合、アプリケーション部56は、アプリケーションの実行に際してスピーカから出力させるべき音声データをヘッドセット12へ送信する。接続相手装置との接続が未確立であれば(S30のN)、S32をスキップする。
図6は、図1のヘッドセット12の動作を示すフローチャートである。ユーザは、ヘッドセット12の電源をオンにし(S40)、ヘッドセット12と所望の接続相手装置(ここではゲーム機10)を軽く突き合わせる(S42)。このとき状態変化検出部146は、センサ116を介して、ヘッドセット12の状態変化を検出し、状態変化が生じた時刻を示すタイムスタンプ情報をセンサ情報保持部134へ記録する(S44)。そしてプロトコル処理部150は、外部機器からの探索要求および接続要求を受け付け可能な状態(接続待受状態)へ移行する(S46)。
ゲーム機10から送信された探索信号が受信されると(S48のY)、状態変化通知部148は、センサ情報保持部134に保持されたタイムスタンプ情報を拡張探索応答信号に付加する。探索応答部152は、タイムスタンプ情報が付加された拡張探索応答信号をゲーム機10へ送信する(S50)。探索信号を未受信であれば(S48のN)、S50をスキップする。ゲーム機10から送信された接続要求信号が受信されると(S52のY)、接続処理部156はゲーム機10とのブルートゥース接続を確立させる(S54)。接続要求信号を未受信であれば(S52のN)、S54をスキップする。以降、ゲーム機10から送信された音声データを受信部122が受信すると、音声制御部144はその音声データをスピーカ112に渡して音声出力させる。
図5および図6のフローチャートでは、電源オンから、衝突によりセンサ情報(タイムスタンプ情報)を記録して探索処理を実行するフローとしたが、電源オンがフロー開始のトリガでなくてもよいことはもちろんである。1つの例として、ヘッドセット12が電源オフの状態、言い換えれば、ヘッドセット12のCPUが停止している状態でゲーム機10とヘッドセット12とが当接されてもよい。この場合、ヘッドセット12のセンサ116はCPUを起動させるための割込(Interrupt)信号を出力し、その割込信号を契機としてヘッドセット12のCPUが起動し、ヘッドセット12の通信機能(プロトコル処理部70)が起動する。またこの場合、ヘッドセット12の状態変化通知部148は、状態変化を示す情報として、センサ情報に代えて、CPUが起動してからの経過時間もしくはCPUの起動時刻を示す情報を探索応答信号に設定してもよい。ゲーム機10は、ヘッドセット12との当接に起因した状態変化を検出してからの経過時間もしくは検出時刻を示す情報を保持して、ヘッドセット12からの通知情報と照合してもよい。この例では、ヘッドセット12に対する電源オンの操作が不要になり、ユーザはゲーム機10とヘッドセット12を単に当接させることで、これらの接続を確立させることができる。
また別の例として、ゲーム機10がヘッドセット12以外の機器(例えばスマートフォン14)と接続中に、ヘッドセット12と当接された場合、ゲーム機10は、その当接に起因する状態変化の検出を契機としてスマートフォン14との接続を切断してもよい。そして、探索信号の送信、探索応答信号の取得、新たな通信相手装置(すなわちヘッドセット12)の特定、ヘッドセット12との接続の確立、のフローを実行してもよい。なお、新たな通信相手装置が特定されたことを条件として、それまでの通信相手装置(例えばスマートフォン14)との接続を切断してもよい。言い換えれば、自装置と共通する状態変化を検出した他装置の存在が確認できたことを条件として、それまでの通信相手装置との接続を切断してもよい
第1の実施の形態の通信システム100によると、多くのブルートゥース対応機器が近傍範囲に存在する場合であっても、ユーザは所望の機器同士を軽く突き合わせるという直感的操作で、所望の機器間の接続を容易に確立させることができる。例えば、接続相手装置の選択画面において複数の機器の中から所望の機器を探し出して選択する操作や、現在の接続相手装置とのセッションを切断し、改めて所望の機器と接続させるための操作等が不要になり、ユーザ作業の繁雑性を低減できる。すなわち、複数の情報機器が存在する環境において、所望の機器同士を接続させる際のユーザの利便性低下を抑制できる。
また、既に販売済みの情報機器についても、機器同士の突き合わせに伴う状態変化を検出可能なセンサ(例えば加速度センサ等)を搭載していれば、必要な機能モジュールをファームウェア等により導入することで、実施の形態の接続方式を容易に実現できる。さらにまた、接続対象の情報機器の両方が画面インタフェースを有しない場合(例えばヘッドセット12とストレージ装置18を接続させたい場合)にも、実施の形態の接続方式は有用である。これまでは、画面インタフェースを有しない情報機器は、電源オフ前に最後に接続されていた外部機器と再接続するか、または外部からの接続要求を待つ仕様となることがあった。本実施の形態では、画面インタフェースを有しない情報機器同士を接続する場合に、これらの機器を突き合わせるという直感的な操作により容易に接続させることができる。
以上、本発明を第1の実施の形態をもとに説明した。この実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。以下変形例を示す。
第1の実施の形態に対する第1の変形例を説明する。
上記実施の形態では、接続対象機器(ゲーム機10およびヘッドセット12)同士を当接させて、双方の機器で共通する状態変化を検出させ、双方の機器での検出内容を照合することとした。変形例として、接続対象機器の一方(実施の形態のゲーム機10に対応する機器であり、以下では「接続元機器」と呼ぶ。)は、予め定められたユーザの行為に起因して接続対象機器の他方(実施の形態のヘッドセット12に対応する機器であり、以下では「接続先機器」と呼ぶ。)で生じること(検出されること)が想定される状態変化を示す照合情報を予め保持してもよい。この変形例では、接続先機器に対してのみ叩く・振動させる等のユーザの行為がなされればよい。接続先機器は、自装置に対するユーザの行為に起因する状態変化を検出し、その状態変化を示す情報を探索応答信号にて通知する。接続元機器は、接続先機器の探索応答信号から、接続先機器で検出された実際の状態変化を示す情報を抽出して、照合情報が示す想定の状態変化との整合性を判定し、接続相手装置として特定する。
照合情報は、接続先機器において状態変化が生じると想定される時期(例えば時刻)を示すタイムスタンプ情報であってもよく、接続先機器は、自装置のセンサにより状態変化を検出した時期を示すタイムスタンプ情報を拡張探索応答信号にて通知してもよい。また照合情報は、接続先機器において生じると想定される状態変化の内容(例えば動きの向きや大きさ)を示す情報であってもよく、接続先機器は、自装置のセンサにより検出した状態変化の内容を示す情報を拡張探索応答信号にて通知してもよい。
第1の変形例では、接続元機器の表示制御部54は、接続先機器に対するユーザの所定の行為を促すユーザ支援情報をディスプレイに表示させることが好ましい。図7および図8は、ディスプレイに表示されるユーザ支援情報を模式的に示す。図7は、照合情報が、接続先機器において状態変化が生じると想定される時期を示すタイムスタンプ情報である場合のユーザ支援情報を示している。接続元機器の表示制御部54は、同図のメッセージ(a)(b)を順次表示させ、メッセージ(b)の表示おいて、「3、2、1」を表示させた後に指示「動かして下さい」を表示させる。接続元機器の照合情報設定部60は、指示「動かして下さい」の表示時刻を示すタイムスタンプ情報を照合情報保持部44へ格納する。接続先機器は、自装置の動きを検出した時刻を示すタイムスタンプ情報を拡張探索応答信号にて通知する。
図8は、照合情報が、接続先機器において生じると想定される状態変化の内容を示す情報である場合のユーザ支援情報を示している。ここでは、接続元機器としての据置型ゲーム機に、接続先機器としてのコントローラを接続させる例を示している。接続先機器(コントローラ)は、内蔵された3軸の加速度センサにより自機の動きの大きさや方向を検出して、その検出内容を拡張探索応答信号により接続元機器(据置型ゲーム機)へ通知する。なお図8で示すように、複数の接続先機器(コントローラ)が同時に指示通りに動かされることにより、複数の接続先機器のそれぞれが接続元機器に対して状態変化の内容を通知してもよい。接続元機器は、複数の接続先機器の状態変化の内容と、複数の照合情報(各接続先機器で想定される状態変化の内容を定めたもの)とを照合してもよい、そして、接続元機器と、複数のコントローラ(接続先機器)との間で、ブルートゥース接続処理が一括して実行されてもよい。この場合も、状態変化の内容に代えて時期が照合されてもよいことはもちろんである。
第1の変形例によると、一方の情報機器(接続元機器)が指定するタイミングや方法で、他方の情報機器(接続先機器)に対するユーザの所定の行為がなされる。これにより、状態変化を検知するためのセンサは接続先機器のみ備えればよく、接続元機器にはセンサは不要となる。また、接続元機器が据置型の装置である等の理由によりユーザが直接動かすことが難しい場合にも好適である。また接続元機器は、ユーザ支援情報を画面表示することで、接続元機器の照合情報と、接続先機器での検出情報との整合性を高めることができる。
第1の実施の形態に対する第2の変形例を説明する。
第2の変形例は上記第1の変形例に関連するが、接続先機器に対するユーザの行為は、接続先機器から接続元機器への信号強度を変化させる行為である。また照合情報は、接続先機器からの信号強度が変化すると想定される時期および/または想定される変化の態様である。図9は、ディスプレイに表示されるユーザ支援情報を模式的に示す。接続元機器の表示制御部54は、同図のメッセージ(a)(b)(c)を順次表示させ、メッセージ(b)の表示おいて、「3、2、1」を表示させた後に指示「包んで下さい」を表示させる。また、メッセージ(c)の表示おいて、「3、2、1」を表示させた後に指示「離して下さい」を表示させる。接続元機器の照合情報設定部60は、指示「包んで下さい」の表示時刻を示すタイムスタンプ情報を照合情報として照合情報保持部44へ格納する。
接続元機器の状態変化検出部58は、受信部32において受信された外部のブルートゥース対応機器からの信号強度を取得して、各機器の信号強度の推移を認識し、ユーザが手で覆う前後の信号強度の変化量が所定量以上であればその旨を検出する。例えば、探索部72は一定時間が経過するたびに探索信号を発信し、受信部32は複数の探索信号に対する複数の探索応答信号を各機器から受信してもよい。そして状態変化検出部58は、各機器について、時系列での信号強度の変化を監視してもよい。照合部62は、状態変化検出部58により特定の外部装置からの信号強度がそれまでより所定量以上弱くなったことが検出された時刻(別の例として、信号強度が所定の閾値未満となったことが検出された時刻でもよい)と、照合情報のタイムスタンプ情報とが整合するか否かを判定する。そして接続対象特定部64は、照合情報のタイムスタンプ情報と整合するタイミングで信号強度が弱まった外部装置を接続相手として特定する。すなわち、接続元機器は、ユーザ支援情報によりアンテナを手で包むようユーザに指示したタイミングで、信号強度が弱くなった外部機器を接続相手として特定する。
第2の変形例によると、第1の変形例での効果に加えて、接続先機器にもセンサは不要となる。接続先機器が据置型の装置である等の理由によりユーザが直接動かすことが難しい場合にも好適である。
第1の実施の形態に対する第3の変形例を説明する。
上記実施の形態では、接続対象の複数の情報機器、すなわち接続元機器としてのゲーム機10と、接続先機器としてのヘッドセット12を互いに直接当接させ、その当接に伴う状態変化を双方の機器で検出させることとした。変形例として、接続元機器は、物理的に筐体が異なる外部機器であって、状態変化を検出するためのセンサを備える機器(ここでは「付属機器」と呼ぶ。)と接続され、その付属機器と接続先機器との当接による付属機器の状態変化を示す情報を付属機器から取得して照合情報として保存してもよい。また接続先機器も同様に、付属機器と接続され、その付属機器と接続元機器との当接による付属機器の状態変化を示す情報を付属機器から取得して、センサ情報保持部134へ格納してもよく、探索応答信号へ設定してもよい。さらにまた、接続元機器の付属機器と、接続先機器の付属機器とが当接対象であってもよい。
図10は、ディスプレイに表示されるユーザ支援情報を模式的に示す。同図のユーザ支援情報では、接続元機器としての据置型ゲーム機が、その付属機器としてのコントローラと接続されており、そのコントローラと接続先機器とを突き合わせることをユーザに指示している。第3の変形例によると、接続対象機器自体はセンサを備えない場合であっても、外部機器との容易な無線接続を実現できる。また、据置型の装置である等の理由により、ユーザが接続対象機器を直接動かすことが難しい場合にも好適である。
第1の実施の形態に対する第4の変形例を説明する。
接続対象装置に状態変化を検出するために、接続対象装置同士を衝突させることに代えて、音を利用してもよい。この場合、接続元機器のセンサ26および接続先機器のセンサ116はマイクロフォンであってもよい。例えば、ユーザが接続元機器と接続先機器を近接させた状態で、接続元機器または接続先機器がそのスピーカから音を発生させてもよい。接続元機器は、センサ26による検出音について、その検出時刻・音量・周波数特性等の音響情報を照合情報として記録してもよい。接続先機器は、センサ116による検出音について、その検出時刻・音量・周波数特性等の音響情報を探索応答信号により接続元機器へ通知してもよい。そして接続元機器は、照合情報に整合する音響情報が設定された探索応答信号の送信元を接続相手装置として決定してもよい。
別の変形例として、接続対象機器同士を近接もしくは接触させた場合に生じた磁界の変化を状態変化として双方の機器が検出してもよい。この場合、接続元機器のセンサ26および接続先機器のセンサ116はホール素子等を用いた磁気センサであってもよい。また双方の機器は、必要に応じて磁石をさらに備えてもよい。
第1の実施の形態に対する第5の変形例を説明する。
上記実施の形態では、ブルートゥースのペアリング時には周囲の外部機器を一覧表示させて、登録対象機器をユーザに選択させることとした。変形例として、実施の形態に記載した接続対象装置同士の当接による自動接続をペアリングに適用してもよい。例えば、ゲーム機10とヘッドセット12をペアリングさせる場合、ユーザはゲーム機10とヘッドセット12を軽く突き合わせ、ゲーム機10は状態変化を照合情報として記録し、ヘッドセット12は拡張探索応答信号にて状態変化を通知する。ゲーム機10のペアリング部74は、ヘッドセット12からの通知内容が照合情報と整合する場合に、ヘッドセット12をペアリング相手装置として認識し、ヘッドセット12宛にペアリング要求信号を自動で送信してパスキーの交換等を自動実行してもよい。さらなる変形例として、接続情報を参照してペアリングの実施有無を判定し、ペアリングを未実施の外部機器の場合にペアリング要求信号を送信する一方、ペアリングを実施済みの外部機器の場合に接続要求信号を送信してもよい。
第1の実施の形態に対する第6の変形例を説明する。
上記実施の形態では、照合情報に整合する探索応答信号を受け付けると、自動的にその探索応答信号の送信元との接続を確立させることとした。変形例として、接続元機器の表示制御部54は、照合情報に整合する探索応答信号の送信元装置を接続候補装置として示す画面を表示させ、その接続候補装置と接続するか否かをユーザに選択させてもよい。また、探索応答信号を返した複数の装置を一覧で示しつつ、照合情報に整合する探索応答信号の送信元装置を接続候補装置として、他装置よりも強調した態様で示す選択画面を表示させてもよい。そして接続相手装置を最終的にユーザに選択させてもよい。強調した態様は、複数装置を並べたリストの先頭で表示させることであってもよく、大文字や強調色を用いて表示させることであってもよい。
第1の実施の形態に対する第7の変形例を説明する。
上記実施の形態では、ゲーム機10は、照合情報に整合する探索応答信号を受け付けると、その探索応答信号の送信元との接続確立処理を実行することとした。変形例として、ゲーム機10は、照合情報に整合する探索応答信号を受け付けた場合に、その探索応答信号の送信元装置に対して、接続確立処理以外の各種通信処理を実行してもよい。例えば、照合情報に整合する探索応答信号の送信元装置との間で確立済みの接続を切断(破棄)するための処理を実行してもよい。
第1の実施の形態に対する第8の変形例を説明する。
上記実施の形態では、接続対象機器同士を当接させて、双方の機器での状態変化の検出時刻を示すタイムスタンプ情報を照合することとした。変形例として、時刻の差分をブルートゥース通信の基準となるクロック(ブルートゥースクロック)の差分で単純に表したものを利用してもよい。例えば、ゲーム機10の照合情報設定部60は、探索信号の送信時に、状態変化の検出タイミングが現在から何クロック前かを示す値Δtを照合情報保持部44に記録してもよい。またヘッドセット12の状態変化通知部148は、探索応答信号の送信時に、状態変化の検出タイミングが現在から何クロック前かを示す値Δtを探索応答信号に設定してもよい。そしてゲーム機10の照合部62は、照合情報保持部44に保持されたΔtと、探索応答信号に含まれるΔtとが整合するか否か(例えば差異が所定範囲内か否か)を判定し、接続対象特定部64は、整合するΔtを返した機器を接続相手として決定してもよい。
(第2の実施の形態)
図11は、図1のゲーム機10の機能構成を示すブロック図である。詳細は後述するが、第2の実施の形態の通信システム100では、ヘッドセット12が接続相手装置を決定し、ヘッドセット12から接続相手装置へ接続要求を送信する。したがって、第2の実施の形態のゲーム機10は、ブルートゥース通信に対応した一般的なゲーム機の構成であればよい。図11は図2に対応し、同一もしくは対応する機能ブロックには同一の符号を付している。図11の機能ブロックは第1の実施の形態においていずれも説明済みであるため、以下説明は省略する。
図12は、図1のヘッドセット12の機能構成を示すブロック図である。同図は図3に対応し、同一もしくは対応する機能ブロックには同一の符号を付している。以下、第1の実施の形態で既述の構成はその説明を適宜省略し、第1の実施の形態とは異なる構成を主に説明する。第2の実施の形態のヘッドセット12は駆動部160をさらに備える。またヘッドセット12の制御部140は、音検出部170と、解析部172と、基準音記録部174と、照合部176と、接続対象特定部178をさらに備える。
第1の実施の形態と同様に、制御部140の機能は、専用の電子回路により実現されてもよい。また制御部140の機能は、制御部140の各機能ブロックに対応するプログラムモジュールがヘッドセット12のフラッシュメモリに格納され、ヘッドセット12のCPUがそれらのプログラムモジュールをメインメモリへ適宜読み出して実行することにより実現されてもよい。またデータ保持部130は、ヘッドセット12のフラッシュメモリやメインメモリにより実現されてもよい。また、所定のセンサ(具体的にはマイクロフォン)および駆動部160を備えたヘッドセット12に、音検出部170・解析部172・基準音記録部174・照合部176・接続対象特定部178の機能が実装されたコンピュータプログラムがインストールされることにより、図12の各機能が実現されてもよい。
接続情報保持部132は、外部のブルートゥース対応機器との接続を確立させるために必要な接続情報と、打撃部164が接続相手装置に衝突して発生した打音の特徴データとを対応づけて保持する。接続情報は、例えば外部機器の機器ID、アドレス、パスキー(すなわち「PIN」)を対応づけたレコードであってもよい。接続情報および打音の特徴データは、ブルートゥースのペアリング時に設定される。
ペアリング部154は、外部の情報機器(例えばゲーム機10)から送信されたペアリング要求を受け付け、所定のペアリング処理を実行し、ペアリング要求元に関する接続情報を接続情報保持部132へ格納する。変形例として、ペアリング部154が外部の情報機器(例えばゲーム機10)に対してペアリング要求を送信してペアリング処理を実行してもよい。接続処理部156は、後述の接続対象特定部178が決定した接続相手装置に対して接続要求を送信し、接続相手装置との間でブルートゥースによる接続を確立させる。なおゲーム機10の接続処理部76は、ヘッドセット12からの接続要求を受け付けて所定の接続処理を実行し、ヘッドセット12とのブルートゥース接続を確立させる。
駆動部160は、電源スイッチ162と打撃部164とが一体的に形成された部材である。駆動部160は、電源のオンのためのユーザ操作と、接続相手装置に対して所定の物理的刺激を与える(本実施の形態では打撃を加える)ためのユーザ操作とを、一連の操作として一括して受け付ける。
図13は、駆動部の構成例を模式的に示し、ユーザ操作前の駆動部の初期状態を示している。駆動部160では、電源スイッチ162は所定位置に固設される一方、打撃部164はレール166に沿って移動可能に設けられている。ユーザは、打撃部164を操作方向にスライドさせて、打撃部164を電源スイッチ162に当接させ、ヘッドセット12の電源をオンにする。ここで打撃部164には、ばね168が固着されている。ユーザが打撃部164を図の操作方向にスライドさせるに伴ってばね168は伸びていく。そして打撃部164を電源スイッチ162に当接させてユーザが指を離すと、ばね168の復元力により、打撃部164は打撃方向へ移動して初期状態へ戻る。このとき打撃部164の先端が接続相手装置にぶつかって(衝突、当接、圧接等を含む)、打音が発生する。
このように電源スイッチ162と打撃部164とを一体化した駆動部160を設けることにより、電源操作の際に一定の力での打撃を接続相手装置に与えることが容易になる。その結果、一定の音響特徴を持つ打音を発生させやすくなり、後述する照合の精度を高めることができる。なお、打撃部164の構成は図13に示す態様に限らない。打撃部164は、予め定められた物理的衝撃を接触面を介して外部装置に与えることができる構成であればよく、例えばソレノイドや、圧電素子、ラッチ機構により構成されてもよい。
打撃部164が接続相手装置に衝突して発生する打音には、接続相手装置の内部構造に衝撃が伝播して返ってきた反響音が含まれる。接続相手装置による反響音を含む打音は、接続相手装置の機械的属性(例えば形状、寸法、密度、材質、構成)を反映したものであり、接続相手装置固有の一種の「指紋」であると言える。すなわち、打撃部164の衝突相手がゲーム機10、スマートフォン14、タブレット端末16、ストレージ装置18のそれぞれの場合で、発生する打音は異なるものとなる。後述するように、検出した打音を周波数解析することで、打撃部164が衝突した接続相手装置に固有の周波数分布を得ることができる。そこでヘッドセット12は、打撃部164が接続相手装置に衝突して発生した打音を解析して接続相手装置を特定し、ブルートゥースによる自動接続を実現する。
図12に戻り、センサ116はマイクロフォンであり、ヘッドセット12の周囲の音を検知して、その音のデータを制御部140へ送出する。音検出部170は、センサ116から送出された音データを受け付けて、その音量が予め定められた値以上である場合に、打撃部164が外部機器に衝突して生じた打音を示す音データであると認識して解析部172に渡す。解析部172は、音検出部170から渡された音データに対して公知の音響解析処理を実行し、打音の特徴を示す音響特徴データを取得する。例えば、音検出部170から渡された音データに対してフーリエ変換を実行し、打音の周波数分布を示すデータを音響特徴データとして取得してもよい。
ここで制御部140は、電源オンの際に電源スイッチ162が所定時間以上、長押しされた場合に、ヘッドセット12の通信モードをペアリングモードへ移行させる。その一方、電源スイッチ162の押下時間が所定時間未満の場合に、ヘッドセット12の通信モードを接続モードへ移行させる。既述したように、電源オンの操作に伴い打撃部164による外部装置への打撃もなされるため、ペアリングモードと接続モードのいずれの場合も、打撃部164による打音の音響特徴データが取得される。
基準音記録部174は、ペアリングモードにおいて、音検出部170による検出音(すなわち打撃部164による打音)の音響特徴データが取得されると、その音響特徴データを所定の記憶領域に一時的に記憶させる。そして、ペアリング部154によるペアリング処理がなされた場合に、ペアリング部154が設定した接続情報に対応づけて音響特徴データを接続情報保持部132へ格納する。接続情報に対応づけて接続情報保持部132に格納された音響特徴データを、以下、「基準音データ」とも呼ぶ。
照合部176は、接続モードにおいて、音検出部170による検出音(すなわち打撃部164による打音)の音響特徴データが取得されると、取得された音響特徴データと、接続情報保持部132に予め格納された1以上の基準音データとを照合して、検出音に整合する基準音が存在するか否かを判定する。照合部176は、公知の技術により検出音の音響特徴と基準音の音響特徴とが整合するか否かを判定してよい。例えば、検出音の周波数分布と基準音の周波数分布とが類似する、言い換えれば、両者の差異が所定範囲内である場合に、検出音と基準音とが整合すると判定してもよい。接続対象特定部178は、検出音に整合する基準音が存在する場合に、接続情報保持部132においてその基準音データと対応づけられた接続情報が示す外部機器を接続相手装置として特定する。
以上の構成による動作を以下説明する。
図14は、図1のヘッドセット12の動作を示すフローチャートである。ユーザはヘッドセット12を所望の接続対象機器(ここではゲーム機10とする)に近接させた状態で、打撃部164をスライドさせてヘッドセット12の電源をオンにする(S60)。ユーザが打撃部164から指を離すと、打撃部164はゲーム機10に衝突して打音が発生する(S62)。
図15は、ヘッドセット12と接続対象機器との突き合わせを模式的に示す。同図で示すように、本実施の形態ではゲーム機10のディスプレイ22に対して、ヘッドセット12の打撃部164(不図示)により打撃を加える。図16は、接続対象機器のディスプレイでの表示内容を模式的に示す。ディスプレイ22の画面には、ゲーム機10で実行中のアプリケーションの情報を表示するアプリケーション表示領域190と、ゲーム機10の状態を示す各種アイコンを表示する状態表示領域192が設けられる。状態表示領域192は、Wi−fi(登録商標)接続が可能であることを示すWi−fiアイコン194と、ブルートゥース接続が可能であることを示すブルートゥースアイコン196と、バッテリー残量を示すバッテリーアイコン198が含まれる。本実施の形態では、ユーザがブルートゥースによる接続処理を実行させたい場合、ブルートゥースアイコン196に対して、ヘッドセット12の打撃部164により打撃を加える。
同じ接続相手装置に打撃を加える場合でも、打撃を加える位置によって検出される打音は異なってくる。そのため基準音を得るためのペアリング時の打撃位置と、以降の接続時の打撃位置とは同じになることが望ましい。ここで、画面を有するブルートゥース対応機器では画面上の予め定められた固定位置にブルートゥースを示すマークを表示することが多い。そこで本実施の形態では、ペアリング時と接続時の両方において画面上のブルートゥースアイコン196の表示位置に打撃を加える。これにより、ペアリング時にブルートゥースアイコン196の表示位置に対する打音が基準音データとして記録され、また接続時に同位置への打音が基準音と照合されるため、同じ接続相手装置に打撃を加える場合の打音の差異を小さくして照合の精度を高めることができる。また画面上のブルートゥースアイコン196は、接続相手装置(例えばゲーム機10)においてブルートゥース機能がオフの場合には非表示となり、もしくは使用不能を示す態様で表示されることが多い。したがって、ユーザが所望する接続相手装置におけるブルートゥース接続の可否をユーザに容易に把握させることができるという効果も奏する。
変形例として、接続相手装置の筐体にブルートゥース対応機器であることを示すマークが設けられている場合、例えば、ブルートゥースを示す文字や絵柄が筐体に印字(刻印)されている場合、筐体上のブルートゥースマークの設定箇所に対して、ヘッドセット12の打撃部164により打撃を加えることとしてもよい。この変形例は、接続相手装置が画面を有さない装置の場合、例えば、図1のストレージ装置18や、ディスプレイと分離された据置型のゲーム機等の場合に特に好適である。この変形例においても、同じ接続相手装置に打撃を加える場合に、同じ音響特徴の打音を発生させやすくして、照合の精度を高めることができる。
図14に戻り、電源オンの操作において、ユーザが打撃部164を介して電源スイッチ162を所定時間以上長押しすると(S64のY)、ヘッドセット12の動作状態はペアリングモードとなる。ペアリングモードにおいて、音検出部170は打撃部164による打音を検出し(S66)、解析部172は打音の音響特徴を取得する(S68)。そしてゲーム機10からのペアリング要求をゲーム機10から受け付けると(S70のY)、基準音記録部174は、ペアリング処理の結果としての接続情報と対応づけてゲーム機10に対する打音の音響特徴データを保存する(S72)。例えば、ゲーム機10、スマートフォン14、タブレット端末16、ストレージ装置18のそれぞれについて、接続情報と、
打音の音響特徴データを保存する。ペアリング要求を受け付けなければ(S70のN)、S72をスキップする。なおS70のNにおいて、ペアリング部154がペアリング要求を外部へ発信して接続情報を設定してもよい。
電源オンの操作において、電源スイッチ162の押下時間が所定時間未満であれば(S64のN)、ヘッドセット12の動作状態は接続モードとなる。接続モードにおいて、音検出部170は打撃部164による打音を検出し(S74)、解析部172は打音の音響特徴を取得する(S76)。照合部176は、検出された打音と、接続情報保持部132に保持された基準音とを照合する(S78)。検出された打音と整合する基準音が存在する場合(S80のY)、接続処理部156はその基準音と対応づけられた接続情報にしたがって接続相手装置へ接続要求を送信する(S82)。例えば、接続情報保持部132に保存された各機器の接続情報のうち、打撃部164と衝突した外部機器であり、ここではゲーム機10の接続情報を用いた接続要求をアンテナ110から送信する。
ゲーム機10との接続が確立すると、以降、受信部122はゲーム機10から送信された音声データを受け付け、音声制御部144はその音声データをスピーカ112に渡して音声出力させる。検出された打音と整合する基準音が存在しない場合(S80のN)、S82をスキップする。なおS80のNにおける代替処理として、ユーザにより既定の接続先として予めヘッドセット12に登録された情報機器や、ヘッドセット12が最後に接続した情報機器に対して接続要求を送信してもよい。また、ヘッドセット12が画面インタフェースを備える場合には別の代替処理として、ペアリング済みの情報機器(すなわち接続情報保持部132に保持された接続情報が示す外部機器)を画面にリスト表示させて、接続させる情報機器をユーザに選択させてもよい。
第2の実施の形態の通信システム100によると、多くのブルートゥース対応機器が近傍範囲に存在する場合であっても、ユーザは所望の接続先機器に接続元機器を軽く衝突させる(実施の形態では接続先機器と接続元機器とを近接もしくは当接した状態で電源をオンする)という直感的操作で、所望の機器間の接続を容易に確立させることができる。例えば、接続相手装置の選択画面において複数の機器の中から所望の機器を探し出して選択する操作や、現在の接続相手装置とのセッションを切断し、改めて所望の機器と接続させるための操作等が不要になり、ユーザ作業の繁雑性を低減できる。すなわち、複数の情報機器が存在する環境において、所望の機器同士を接続させる際のユーザの利便性低下を抑制できる。
また第2の実施の形態によると、接続先機器(実施の形態の例ではゲーム機10)には特別な構成は不要であり、言い換えれば、接続元機器(実施の形態の例ではヘッドセット12)での対応だけで機器間の容易な接続を実現できる。さらにまた、第1の実施の形態で記載したように、接続対象の情報機器の両方が画面インタフェースを有しない場合(例えばヘッドセット12とストレージ装置18を接続させたい場合)にも、実施の形態の接続方式は有用である。
以上、本発明を第2の実施の形態をもとに説明した。この実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。以下変形例を示す。
第2の実施の形態に対する第1の変形例を説明する。
上記実施の形態では、ブルートゥースのペアリング時に取得した打音について、その音響特徴を基準音データとして記録し、以降の接続時にはこの基準音データを照合データとして用いた。変形例として、ブルートゥース接続を確立後、接続中の状態において、接続相手装置に打撃部164による打撃を与えた場合に、その打音の音響特徴データにもとづいて保存済みの基準音データを更新してもよい。例えば、接続中に取得した打音の音響特徴を新たな基準音データとして、元の基準音データと置き換えてもよい。また、接続中に取得した打音の音響特徴と元の基準音データの音響特徴とを平準化させる等、公知の音声処理技術により基準音データを洗練させてもよい。これにより、基準音データを順次洗練させ、照合データとしての質を高めることができる。また、接続相手装置に対する打撃位置が変更された場合も、変更後の打撃位置に応じた基準音を設定でき、打撃位置の変更への対応も容易になる。
第2の実施の形態に対する第2の変形例を説明する。
接続相手装置に対して打撃を与える接続元装置(実施の形態ではヘッドセット12)は、打撃部164を備えなくてもよい。接続元装置は、その筐体上の任意の箇所で接続相手装置に対して所定の物理的刺激(例えば打撃)を与え、そのときに生じた音をセンサ116(マイクロフォン)で検出してもよい。また、接続元装置と接続相手装置を近接させた状態で、ユーザは接続元装置以外の手段や媒体を用いて接続相手装置に対して所定の物理的刺激を与えてもよく、接続元装置は、そのユーザの行為に伴って生じた音をセンサ116で検出してもよい。
第2の実施の形態に対する第3の変形例を説明する。
上記実施の形態では、ヘッドセット12の打撃部164により接続相手装置に打撃を与えて打音を検出することとした。変形例として、ヘッドセット12もしくは接続相手装置は自身のスピーカから接続のための所定音を出力させて、この音をヘッドセット12のセンサ116が検出してもよい。この場合の検出音も、実施の形態の打音と同様に、接続相手装置の物理的属性を反映した接続相手装置に固有の反響音を含むものとなり、実施の形態と同様の接続処理を実現できる。
第2の実施の形態に対する第4の変形例を説明する。
上記実施の形態では、ヘッドセット12の打撃部164により接続相手装置に打撃を与えて打音を検出し、その音響特徴を基準音データとして記録することとした。変形例として、接続相手装置の種類ごとの基準音データが通信網を介して外部のサーバから配信されてもよく、ヘッドセット12は通信網に接続して、外部のサーバから配信された基準音データを取得して記憶してもよい。例えばゲーム機10用の基準音データ、スマートフォン14用の基準音データ等が配信されてもよい。別の変形例として、既に販売されている製品については、その基準音データと機器IDとを対応づけたデータが、予めヘッドセット12のファームウェア(例えば接続情報保持部132)に記録された上でヘッドセット12が出荷されてもよい。これらの変形例は、接続相手装置に打撃を与える位置が予め定められた位置、例えばブルートゥースマークの表示位置等に定められている場合に好適である。
第2の実施の形態に対する第5の変形例を説明する。
本変形例は第1の実施の形態に対する第3の変形例に対応し、接続元装置(実施の形態のヘッドセット12)は、物理的に筐体が異なる外部機器であり、センサ116と打撃部164を備える機器(ここでは「付属機器」と呼ぶ。)と接続されてもよい。付属機器(例えばコントローラ)は、打撃部164による打音を検出して接続元装置へ通知してもよく、接続元機器は、付属機器から通知された打音のデータにもとづいて基準音データを設定し、また照合処理を実行してもよい。この変形例によると、接続元装置自体がセンサ116や打撃部164を備えない場合であっても、外部機器との容易な無線接続を実現できる。
第2の実施の形態に対する第6の変形例を説明する。
上記実施の形態では、ヘッドセット12は、検出音に整合する基準音が存在すると、その基準音と対応づけられた外部装置との接続確立処理を実行することとした。変形例として、ヘッドセット12は、検出音に整合する基準音が存在する場合に、その基準音と対応づけられた外部装置に対して、接続確立処理以外の各種通信処理を実行してもよい。例えば、検出音に整合する基準音が存在する場合に、その基準音と対応づけられた外部装置との間で確立済みの接続を切断(破棄)するための処理を実行してもよい。
第2の実施の形態に対する第7の変形例を説明する。
本変形例は第1の実施の形態に対する第6の変形例に対応する。上記実施の形態では、検出音に整合する基準音が存在すると、自動的にその基準音と対応づけられた外部装置との接続を確立させることとした。本変形例におけるヘッドセット12は、所定の表示装置の画面表示内容を制御する表示制御部をさらに備える。この表示制御部は、検出音に整合する基準音と対応づけられた外部装置を接続候補装置として示す画面を表示させ、その接続候補装置と接続するか否かをユーザに選択させてもよい。また表示制御部54は、複数の基準音が検出音と整合する(差異が所定範囲内)と判定された場合に、複数の基準音と対応づけられた複数の外部装置を接続候補装置として示す画面を表示させ、いずれの装置と接続するかをユーザに選択させてもよい。
第2の実施の形態に対する第8の変形例を説明する。
本変形例におけるヘッドセット12は、所定の表示装置の画面表示内容を制御する表示制御部をさらに備える。この表示制御部は、外部装置に対して所定の物理的刺激(例えば打撃)を加えるべき位置をユーザに提示するユーザ支援情報を表示させてもよい。具体的には、外部装置の表示装置において所定位置に表示されるブルートゥースのマークを、打撃位置として示すユーザ支援情報を表示させてもよい。
第1の実施の形態と第2の実施の形態に共通の変形例を説明する。
上記第1および第2の実施の形態では、情報機器間の通信方式としてブルートゥースを例示したが、他の通信方式の場合にも実施の形態に記載の技術を適用可能であることはもちろんである。例えば、通信方式がWi−fiであってもよく、実施の形態の探索信号・探索応答信号に代えて、ビーコンにより接続先機器の状態変化が接続元機器へ通知されてもよい。また通信方式がDLNA(登録商標)(Digital Living Network Alliance)準拠の方式であってもよい。さらにまた、無線通信に限らず、有線通信(例えば有線LAN)により情報機器間を接続する場合にも実施の形態に記載の技術を適用可能であることはもちろんである。通信方式としてブルートゥース以外が採用される場合は、例えば図2、図3、図11、図12のプロトコル処理部が、採用される通信方式に対応した機能ブロックへ適宜置き換えられてもよい。
上述した実施の形態および変形例の任意の組み合わせもまた本発明の実施の形態として有用である。組み合わせによって生じる新たな実施の形態は、組み合わされる実施の形態および変形例それぞれの効果をあわせもつ。
例えば第1の実施の形態で提案した技術と、第2の実施の形態で提案した技術が通信システム100の中で組み合わせられてもよい。例えば通信システム100の第1機器は第1の実施の形態のゲーム機10に対応する構成で、第2機器は第2の実施の形態のヘッドセット12に対応する構成であってもよい。この場合、ユーザは、第1機器と第2機器とを軽く突き合わせることで、両機器で共通する衝撃を検知させるとともに、音を発生させてもよい。これにより、第1および第2の実施の形態で提案した2つの照合手段を組み合わせて、ユーザが所望する機器間の接続の確実性を一層高めることができる。
また1つの機器内に、第1の実施の形態のゲーム機10に対応する構成と、第2の実施の形態のヘッドセット12に対応する構成の両方を備えてもよい。この場合、接続相手装置からの状態変化の通知にもとづく第1の接続相手特定処理と、接続相手装置へ加えた打音にもとづく第2の接続相手特定処理の少なくとも一方で特定された接続相手装置に対して接続要求を送信してもよい。例えば、まず第1の接続相手特定処理を実行し、それにより接続相手の特定ができなかった場合、次に第2の接続相手特定処理を実行してもよい。このように2種類の接続相手特定処理を補完的に用いることで、ユーザにとって直感的な操作にもとづく簡単接続を利用可能な機器の組み合わせを広げることができる。すなわち、第1の接続相手特定処理は、接続の確実性が高いものの、接続相手装置にも状態変化の検出・通知のための構成が必要になる。その一方、第2の接続相手特定処理は、騒音等の環境の影響を受ける可能性があるものの、接続元機器単体で完結でき、接続相手装置は例えば一般的なブルートゥース対応機器であればよいため、簡単接続により接続可能な機器を広げることができる。言い換えれば、簡単接続の確実性と、接続可能機器の拡充とを両立させることができる。
請求項に記載の各構成要件が果たすべき機能は、実施の形態および変形例において示された各構成要素の単体もしくはそれらの連携によって実現されることも当業者には理解されるところである。