(57)【要約】【課題】通信装置の接続を、簡易な操作で確立する。【解決手段】通信装置は他の物体との接触による振動を検知したとき、その接触を検知した時刻を記憶する。そして、通信装置は、通信装置が管理している他の通信装置の中に、ほぼ同一の接触時刻情報を記憶している通信装置が存在するか否かを判断する。通信装置は、ほぼ同一の接触時刻情報を有する通信装置を特定し、接続を確立する。したがって、通信装置は、通信装置が管理している他の通信装置の中から、接触した相手の通信装置を確実に特定でき、通信を確立することができる。 【選択図】図１
2013038617.tif 000002
【特許請求の範囲】
【請求項１】
他の通信装置と通信を実行する通信装置であって、
１または複数の前記他の通信装置を探索する探索手段と、
前記探索手段によって探索された１または複数の前記他の通信装置の情報を記憶する通信装置記憶手段と、
前記通信装置に発生するトリガーを検知するトリガー検知手段と、
時刻情報を管理する時刻管理手段と、
前記トリガーが検知された時刻であるトリガー情報を記憶するトリガー情報記憶手段と、
前記トリガーが検知されたとき、前記通信装置記憶手段によって記憶されている前記他の通信装置の前記トリガー情報を前記他の通信装置から取得するトリガー情報取得手段と、
前記通信装置の前記トリガー情報と、前記他の通信装置の前記トリガー情報との差が既定値内である前記他の通信装置を特定する特定手段と、
前記特定手段によって特定される通信装置と接続する接続手段とを備える、通信装置。
【請求項２】
前記トリガー検知手段によって前記トリガーが検知されたとき、前記トリガーの振幅の時間的推移を示す情報である振幅推移情報を検出する振幅推移検出手段と、
前記振幅推移情報が所定の条件の振幅推移情報であるか否かを判断する振幅推移判断手段とをさらに備え、
前記振幅推移判断手段が、前記振幅推移情報が前記所定の条件の前記振幅推移情報でないと判断する場合、前記通信装置の前記接続手段が、前記他の通信装置と接続しない、請求項１に記載の通信装置。
【請求項３】
前記トリガー情報記憶手段が、前記トリガー検知手段によって前記トリガーが検知され始めたトリガー発生時刻に加え、前記トリガーが検知されなくなった時刻であるトリガー終了時刻をさらに前記トリガー情報として記憶し、
前記トリガー情報取得手段が、前記トリガー発生時刻と前記トリガー終了時刻とを前記他の通信装置から取得し、
前記特定手段が、前記通信装置の前記トリガー発生時刻と、前記他の通信装置の前記トリガー発生時刻との差が既定値内であり、かつ、前記通信装置の前記トリガー終了時刻と、前記他の通信装置の前記トリガー終了時刻との差が既定値内である前記他の通信装置を特定する、請求項１または２に記載の通信装置。
【請求項４】
前記通信装置が前記他の通信装置と通信中に前記トリガーを検知した場合、前記通信装置が、前記通信装置が現在通信中の前記他の通信装置との接続を切断しない、請求項１〜３のいずれかに記載の通信装置。
【請求項５】
前記通信装置が前記他の通信装置と通信中に前記通信装置が前記トリガーを検知した場合、接続先の前記他の通信装置を切り替えるか否かを設定する設定手段をさらに備え、
前記設定手段に通信先の前記通信装置を切り替えない設定がされているとき、前記通信装置は、前記通信装置が現在通信中の前記他の通信装置との接続を切断しない、請求項１〜３のいずれかに記載の通信装置。
【請求項６】
前記トリガーが、前記通信装置が接触することによって生じる振動信号である、請求項１〜５のいずれかに記載の通信装置。
【請求項７】
請求項１〜６のいずれかに記載の前記通信装置の各手段をコンピュータに実行させる、通信プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、無線方式で通信する通信装置に関する。
【背景技術】
【０００２】
近年、携帯電話や、携帯ゲーム機などの通信装置を無線方式の通信手段によって相互に接続し、情報データを送受信することが頻繁に行われている。無線方式とは、たとえばＢｌｕｅｔｏｏｔｈ(登録商標。以下、Ｂｌｕｅｔｏｏｔｈという。)等である。
【０００３】
無線方式の通信手段を備える通信装置（以下、通信装置という。）を相互に認証し、接続及び通信を開始するためには、ユーザが通信装置上に配置されるボタンや、通信装置に接続される画面を操作し、接続先の通信装置を選択し、かつ、接続を開始するための操作をしなくてはならない。また、通信装置が別の通信装置と接続中の場合、ユーザは接続中の機器との接続を切断し、新たな接続先とする通信装置の設定をしなくてはならず、煩雑な操作が必要である。
【０００４】
特開２００４−２８９５８４号公報には、携帯電話同士を接触させ、情報データの交換が行われるようにする装置が記載されている。
【０００５】
しかし、上記技術によると、携帯電話は、携帯電話の接触が発生したことを、接触時に生じる振動の周波数情報によって判断している。したがって、周波数情報が、携帯電話同士の接触によって生じる振動であるか否かの判断基準から外れたものであった場合、確実に携帯電話同士の接続を確立することができない。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００４−２８９５８４公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明は上記従来の課題を解決するためになされたものであり、その目的は、ユーザが通信の確立を所望する通信装置同士を接触させるだけで、確実に接続を確立することができる通信装置を提供することである。
【課題を解決するための手段】
【０００８】
本発明の好ましい実施形態による通信装置は、他の通信装置と通信を実行する通信装置であって、１または複数の他の前記通信装置を探索する探索手段と、前記探索手段によって探索された１または複数の前記他の通信装置の情報を記憶する通信装置記憶手段と、前記通信装置に発生するトリガーを検知するトリガー検知手段と、時刻情報を管理する時刻管理手段と、前記トリガーが検知された時刻であるトリガー情報を記憶するトリガー情報記憶手段と、前記トリガーが検知されたとき、前記通信装置記憶手段によって記憶されている前記他の通信装置の前記トリガー情報を前記他の通信装置から取得するトリガー情報取得手段と、前記通信装置の前記トリガー情報と、前記他の通信装置の前記トリガー情報との差が既定値内である前記他の通信装置を特定する特定手段と、前記特定手段によって特定される通信装置と接続する接続手段とを備える。
【０００９】
通信装置は、通信装置が他の任意の物体に接触した場合や、通信装置に対して音声が入力された場合、接触によって生じた振動や、入力された音声データを、トリガーとして検知する。以下、トリガーは通信装置が任意の他の物体と接触することによって生じる振動であるとして説明する。通信装置は他の物体との接触による振動を検知したとき、その接触を検知した時刻を記憶する。そして、通信装置は、通信装置が管理している他の通信装置の中に、ほぼ同一の接触時刻情報を記憶している通信装置が存在するか否かを判断する。通信装置は、ほぼ同一の接触時刻情報を有する通信装置を特定し、接続を確立する。接触した通信装置同士は、接触を検知したとき、ほぼ同時に接触時刻情報を更新可能である。したがって、通信装置は、通信装置が管理している他の通信装置の中から、接触した相手の通信装置を確実に特定でき、通信を確立することができる。
【００１０】
好ましい実施形態においては、前記トリガー検知手段によって前記トリガーが検知されたとき、前記トリガーの振幅の時間的推移を示す情報である振幅推移情報を検出する振幅推移検出手段と、前記振幅推移情報が所定の条件の振幅推移情報であるか否かを判断する振幅推移判断手段とをさらに備え、前記振幅推移判断手段が、前記振幅推移情報が前記所定の条件の前記振幅推移情報でないと判断する場合、前記通信装置の前記接続手段が、前記他の通信装置と接続をしない。
【００１１】
通信装置は、接触を検知したとき、接触によって生じる振動の振幅の時間推移情報を取得する。そして通信装置は、振幅の時間推移情報が通信装置の接触によって生じる振幅特性を示しているか否かを判断する。そして、通信装置は、接触によって生じた振幅の時間推移情報でないと判断するとき、一切の処理を実行しない。この結果、通信装置が何らかの物体に接触していないことが明らかであるときに通信装置における無駄な処理を省くことができる。
【００１２】
好ましい実施形態においては、前記トリガー情報記憶手段が、前記トリガー検知手段によって前記トリガーが検知され始めたトリガー発生時刻に加え、前記トリガーが検知されなくなった時刻であるトリガー終了時刻をさらに前記トリガー情報として記憶し、前記トリガー情報取得手段が、前記トリガー発生時刻と前記トリガー終了時刻とを前記他の通信装置から取得し、前記特定手段が、前記通信装置の前記トリガー発生時刻と、前記他の通信装置の前記トリガー発生時刻との差が既定値内であり、かつ、前記通信装置の前記トリガー終了時刻と、前記他の通信装置の前記トリガー終了時刻との差が既定値内である前記他の通信装置を特定する、請求項１または２に記載の通信装置。
【００１３】
通信装置は、接触による振動を検知し始めた開始時刻と、振動を検知し終えた終了時刻とを記憶する。そして、通信装置は、振動開始時刻と振動終了時刻とが一致する通信装置をネットワーク内の通信装置の中から特定し、接続する。振動開始時刻と、振動終了時刻との両値が同一時刻である２台の通信装置は、確実に相互に接触したことを示すので、通信装置は、ネットワーク内で接触した相手の通信装置をより確実に特定することができる。
【００１４】
好ましい実施形態においては、前記通信装置が前記他の通信装置と通信中に前記トリガーを検知した場合、前記通信装置が、前記通信装置が現在通信中の前記他の通信装置との接続を切断しない、請求項１〜３のいずれかに記載の通信装置。
【００１５】
通信装置は、他の通信装置とデータを送受信しているとき、接触を検知しても接続を切り替えないので、ユーザが通信装置を使用中に誤って接触させた場合に、通信装置の接続先が変更され、使用中の通信装置を使用できなくなることを防止できる。
【００１６】
好ましい実施形態においては、前記通信装置が前記他の通信装置と通信中に前記通信装置が前記トリガーを検知した場合、接続先の前記他の通信装置を切り替えるか否かを設定する設定手段をさらに備え、前記設定手段に通信先の前記通信装置を切り替えない設定がされているとき、前記通信装置は、前記通信装置が現在通信中の前記他の通信装置との接続を切断しない、請求項１〜３のいずれかに記載の通信装置。
【００１７】
ユーザは、通信装置が別の通信装置とデータを送受信しているとき、通信装置が接触を検知した場合に接続を切り替えるか否かを設定できる。ユーザは通信装置を使用中に接触させた場合、通信装置の接続先の変更を実行するか否かを選択できる。
【発明の効果】
【００１８】
ユーザは接続の確立を所望する通信装置同士を接触させるだけで、確実に通信装置の接続を確立することができる。
【図面の簡単な説明】
【００１９】
【図１】本発明の好ましい実施形態による通信装置のブロック図である。
【図２】本発明の好ましい実施形態による通信装置の接続動作を示す図である。
【図３】通信装置の通信装置管理テーブルを示す図である。
【図４】振動検知時刻情報を示す図である。
【図５】通信装置の制御部の処理を示すフローチャートである。
【図６】通信装置の制御部の処理を示すフローチャートである。
【図７】通信装置の制御部の処理を示すフローチャートである。
【図８】振動の振幅の時間推移情報を示す図である。
【図９】振動検知時刻情報を示す図である。
【図１０】通信装置の制御部の処理を示すフローチャートである。
【図１１】通信装置の制御部の処理を示すフローチャートである。
【図１２】通信中の切替設定を示す図である。
【図１３】通信装置の制御部の処理を示すフローチャートである。
【図１４】通信装置の制御部の処理を示すフローチャートである。
【図１５】通信装置の通信装置管理テーブルを示す図である。
【図１６】通信装置の制御部の処理を示すフローチャートである。
【発明を実施するための形態】
【００２０】
以下、本発明の好ましい実施形態による通信装置について、図面を参照して具体的に説明するが、本発明はこれらの実施形態には限定されない。図１は、本発明の好ましい実施形態による通信装置１００のブロック図を示す。
【００２１】
通信装置１００は、たとえばＢｌｕｅｔｏｏｔｈ等の任意の規格の無線通信によって接続可能な装置である。通信装置１００は、制御部１１、メモリ１２、振動検知部１３、及び通信部１４を備える。制御部１１とは、たとえばマイコンやＣＰＵである。メモリ１２とは、たとえばＲＯＭやＲＡＭである。
【００２２】
制御部１１は、時刻管理部１１Ａ、時刻判断部１１Ｂ、及び振幅推移判断部１１Ｃを備える。時刻管理部１１Ａは、現在の時刻を管理しており、時計機能を有する。時刻判断部１１Ｂは、通信装置１００が、他の通信装置１００の振動時刻情報１２Ａを取得し、自身の振動時刻情報１２Ａとの比較処理を実行する。振幅推移判断部１１Ｃは、通信装置１００が振動を検知したとき、振動の振幅情報に基づき、通信装置１００が他の物体に接触したか否かを判断する。
【００２３】
メモリ１２は、振動時刻情報１２Ａ、通信装置管理テーブル１２Ｂ、及び通信中切替設定１２Ｃを格納している。
【００２４】
振動検知部１３は、通信装置１００が任意の物体と接触したときに通信装置１００に生じるトリガーを検知する。トリガーとは、たとえば通信装置１００が任意の物体と接触することによって生じる振動である。振動検知部１３は、たとえば振動検知センサである。振動検知部１３は、振動を検知すると、制御部１１に振動が発生したことを通知する。
【００２５】
通信部１４は、通信装置１００が他の通信装置１００と通信し、データを送受信する機能を有する。
【００２６】
図２は、通信装置１００が他の通信装置１００と相互に認証し、ネットワークを形成するときの概要動作を示す。ネットワークとは、たとえばＢｌｕｅｔｏｏｔｈのピコネットである。以下、ネットワークを形成するときの概要を説明する。
【００２７】
通信装置１００Ｅは、同一プロトコルで動作する通信装置１００を探索し、通信装置１００Ａを検出する（図２（ａ））。通信装置１００Ｅは、通信装置１００Ａに接続し、認証処理を実行する（図２（ｂ））。認証処理とは、認証キーの送受信などである。通信装置１００Ｅは、他の通信装置１００との接続及び認証を実行するために、通信装置１００Ａとの接続を切断する（図２（ｃ））。通信装置１００Ｅは、図２（ａ）の処理によって検出されるすべての通信装置１００（通信装置１００Ｂ〜１００Ｄ）について図２（ａ）〜図２（ｃ）の処理を実行する。さらに、通信装置１００Ａ〜通信装置１００Ｄも、通信装置１００Ｅと同様の処理を実行する。以上の処理により、図２（ｄ）のネットワークが形成される。なお、各通信装置１００は、すでに認識済みの相手の通信装置１００と再度認証処理を実行する必要はない。ネットワークが形成された後、各通信装置１００は、他の通信装置１００を相互に認識しており、通信装置管理テーブル１２Ｂにネットワーク内の通信装置１００の情報を格納している。通信装置１００は、複数の通信装置１００と同時に接続できず、１つの通信装置１００のみと同時に接続が可能である、１：１の通信方式を採用している。なお、ネットワークが形成された状態で、新たな通信装置１００が検出されたときも、図２（ａ）〜（ｃ）と同一の処理が行われる。
【００２８】
通信装置１００は、相互に接続及び認証を実行するとき、接続先の通信装置１００の情報を記憶する。図３は、通信装置１００Ｅが記憶する通信装置管理テーブル１２Ｂを示す。通信装置管理テーブル１２Ｂは、ネットワーク内の他の通信装置１００の識別情報と通信装置１００Ｅが現在接続中の通信装置１００であるか否かを示すフラグとを有する。識別情報は、図２（ｂ）において通信装置１００が相互に交換しあい、登録する情報であり、たとえば、通信装置１００のアドレスと暗号鍵との組み合わせである。なお、図３の通信装置管理テーブル１２Ｂでは通信装置１００の識別情報を単に「通信装置１００Ａ」等と略して記述する。また、通信装置１００Ｅは、通信装置管理テーブル１２Ｂの接続中フラグがＴＲＵＥの通信装置１００と接続中である。たとえば、図３の通信装置管理テーブル１２Ｂは、通信装置１００Ｅが通信装置１００Ｄと接続中であることを示す。通信装置１００Ａ〜通信装置１００Ｄも通信装置１００Ｅと同様の通信装置管理テーブル１２Ｂを有し、他の通信装置１００を管理している。
【００２９】
制御部１１は、通信装置１００が他の通信装置１００と接触したときに生じる振動情報を振動検知部１３から受信する。そして、制御部１１は、振動情報を受信したときの時刻を、時刻管理部１１Ａから取得し、振動時刻情報１２Ａに記憶する。制御部１１は通信装置管理テーブル１２Ｂに登録されている他の通信装置１００の振動時刻情報１２Ａを取得し、時刻判断部１１Ｂによって同一の時刻に振動を検知した通信装置１００を特定する。そして、通信装置１００は、特定される他の通信装置１００と接続を確立する。
【００３０】
[通信装置が接続を確立する実施形態１]
図４は、メモリ１２が格納する振動時刻情報１２Ａを示す。通信装置１００は振動を検知したとき、振動を検知した時刻を振動時刻情報１２Ａに設定する。図５は、通信装置１００が接続を確立する際の制御部１１の実施形態１のフローチャートを示す。なお、以下では、通信装置１００Ｅが他の通信装置１００と接触したことを仮定し、通信装置１００Ｅの制御部１１が実行する処理について説明する。また、通信装置１００Ｅを通信装置１００（ａ）と記載する。さらに、通信装置１００Ｅの通信装置管理テーブル１２Ｂに登録されている他の通信装置１００を、通信装置１００（ｂ）と記載する。
【００３１】
通信装置１００（ａ）の制御部１１は、振動を検知したか否かを判断し（Ｓ２１）、振動を検知したと判断した場合（Ｓ２１でＹＥＳ）、現在の時刻を、振動時刻情報１２Ａに登録する（Ｓ２２）。制御部１１は、振動を検知しない場合、振動の検知を待ち続ける（Ｓ２１でＮＯ）。図４は制御部１１が振動を検知した時刻が２０１１年５月５日１３時２３分３秒であることを示す。
【００３２】
制御部１１は、通信装置１００（ａ）が通信装置１００（ｂ）と接続中であるか否かを判断する（Ｓ２３）。具体的には、通信装置管理テーブル１２Ｂの接続中フラグにＴＲＵＥが登録されている通信装置１００（ｂ）が存在するか否かが判断される。
【００３３】
制御部１１は、通信装置１００（ｂ）と接続中であると判断した場合（Ｓ２３でＹＥＳ）、接続中の通信装置１００（ｂ）から振動時刻情報１２Ａを取得する（Ｓ２５）。なお、好ましくは、通信装置１００（ａ）は、Ｓ２５の処理を実行する前に、数百ｍｓｅｃのウエイト処理を実行するとよい。通信装置１００（ｂ）が振動を検出し、振動時刻情報１２Ａを更新するタイミングが、通信装置１００（ａ）よりわずかに遅れる可能性がある。その場合、通信装置１００（ａ）がＳ２５の処理を行うとき、通信装置１００（ｂ）の振動時刻情報１２Ａがまだ更新されていない。したがって、通信装置１００（ａ）は、Ｓ２５を実行する前に、ウエイト処理を実行し、通信装置１００（ｂ）が振動時刻情報１２Ａを更新するのを待った後、Ｓ２５の処理を行う。制御部１１は、通信装置１００（ｂ）と接続中でないと判断した場合（Ｓ２３でＮＯ）、ネットワーク内の通信装置１００（ｂ）のいずれかと接続する（Ｓ２４）。なお、Ｓ２４の処理において通信装置１００（ａ）が接続する通信装置１００（ｂ）は、たとえば、通信装置管理テーブル１２Ｂの先頭に登録されている通信装置１００（ｂ）である。
【００３４】
ところで、通信装置１００（ｂ）の制御部１１は通信装置１００（ａ）へ振動時刻情報１２Ａを送信する処理を実行する。図６は、通信装置１００（ｂ）の制御部１１が実行するフローチャートである。以下、図６のフローチャートについて説明する。
【００３５】
通信装置１００（ｂ）の制御部１１は、振動を検知したとき、振動時刻情報１２Ａを更新する（Ｓ４１）。そして、通信装置１００（ａ）から振動時刻情報１２Ａの取得要求を受信したか否かを判断する（Ｓ４２）。通信装置１００（ｂ）の制御部１１は振動時刻情報１２Ａの取得要求を受信したと判断した場合（Ｓ４２でＹＥＳ）、通信装置１００（ｂ）が有する振動時刻情報１２Ａを通信装置１００（ａ）へ送信する（Ｓ４３）。制御部１１は、振動時刻情報１２Ａの取得要求を受信していないと判断する場合（Ｓ４２でＮＯ）、Ｓ４１以降の処理を繰り返す。本処理により、通信装置１００（ａ）は、図５のＳ２５において通信装置１００（ｂ）から振動時刻情報１２Ａを取得できる。なお、通信装置１００（ａ）と通信装置１００（ｂ）とは、図５に示すフローチャートの処理と、図６のフローチャートの処理とを同時に実行してもよい。その場合、通信装置１００は、自身に発生する振動の発生を監視するとともに、他の通信装置１００からの振動時刻情報１００の取得要求があるか否かを監視する。また、通信装置１００（ａ）がマスターデバイスの場合は、図５の処理のみを実行し、通信装置１００（ｂ）がスレーブデバイスの場合は図６の処理のみを実行するようにしてもよい。
【００３６】
図５の説明に戻る。制御部１１は、自身の振動時刻情報１２Ａと、通信装置１００（ｂ）の振動時刻情報１２Ａとを比較し、振動時刻情報１２Ａの時刻の差分が所定の範囲内であるか否かを判断する（Ｓ２６）。所定の範囲内とは、たとえば１秒などである。
【００３７】
制御部１１は、自身の振動時刻情報１２Ａと、通信装置１００（ｂ）の振動時刻情報１２Ａとの差分が１秒以内であると判断した場合（Ｓ２６でＹＥＳ）、通信装置管理テーブル１２Ｂの接続中フラグを更新し（Ｓ３０）、同一時刻に振動を検知した通信装置１００（ｂ）との接続を維持した状態で処理を終了する。通信装置管理テーブル１２Ｂの更新は、具体的には、接続中フラグがＴＲＵＥである通信装置１００（ｂ）の接続中フラグをＦＡＬＳＥに変更し、通信装置１００（ａ）が接続中の通信装置１００（ｂ）の接続中フラグをＴＲＵＥに変更する。
【００３８】
制御部１１は、自身の振動時刻情報１２Ａと、通信装置１００（ｂ）の振動時刻情報１２Ａとの差分が１秒以内でないと判断した場合（Ｓ２６でＮＯ）、制御部１１は、通信装置１００（ｂ）との接続を切断する（Ｓ２７）。制御部１１が、通信装置１００（ｂ）との接続を切断するのは、通信装置１００（ａ）と通信装置１００（ｂ）とが、前述した１：１の通信方式に基づいて動作する通信装置であるからである。
【００３９】
制御部１１は、通信装置管理テーブル１２Ｂに登録されているすべての通信装置１００（ｂ）に対し、Ｓ２５及びＳ２６の処理を実行したか否かを判断し（Ｓ２８）、すべての通信装置１００（ｂ）に対してＳ２５及びＳ２６の処理を実行していないと判断した場合（Ｓ２８でＮＯ）、制御部１１は、通信装置管理テーブル１２Ｂに登録されている次の通信装置１００（ｂ）と接続する（Ｓ２９）。そして、制御部１１はＳ２５以降の処理を繰り返す。
【００４０】
制御部１１は、通信装置管理テーブル１２Ｂに登録されているすべての通信装置１００（ｂ）に対し、Ｓ２５及びＳ２６の処理を実行したと判断した場合（Ｓ２８でＹＥＳ）、処理を終了する。なお、ネットワーク内のすべての通信装置１００（ｂ）がＳ２６の処理においてＹＥＳに該当しなかった場合、制御部１１は、通信装置１００（ａ）の接続状態を、本フローチャートの処理が開始される前の接続状態に戻してもよい。すなわち、Ｓ２３でＹＥＳであった場合は、通信装置１００（ａ）は、Ｓ２３の時点で接続されていた通信装置１００（ｂ）と接続を再開する。また、Ｓ２３でＮＯであった場合は、通信装置１００（ａ）は他の通信装置１００（ｂ）と接続を再開する必要はない。
【００４１】
以上のように、本実施形態によると、通信装置１００（ａ）は振動を検知したときの自身の振動時刻情報１２Ａと、ネットワーク内の通信装置１００（ｂ）の振動時刻情報１２Ａとを比較し、ほぼ同一の時刻が記憶されている通信装置１００（ｂ）を特定し、特定される通信装置１００（ｂ）との接続を確立する。この結果、ユーザは非常に簡易な操作で接続先の通信装置１００（ｂ）を切り替えることができる。
【００４２】
[通信装置が接続を確立する実施形態２]
図７は、通信装置１００（ａ）が接続を確立する実施形態２のフローチャートを示す。実施形態２によると、通信装置１００（ａ）は、自身の振動の振幅の時間的推移情報を取得し、通信装置１００（ａ）が任意の物体と接触したことによって生じた振動であるか否かを振幅の時間的推移から判断する。図５と同一の処理には同一符号を付し、説明を省略する。
【００４３】
制御部１１は、振動を検知したとき（Ｓ２１でＹＥＳ）、振動時刻情報１２Ａを更新し（Ｓ２２）、振動の振幅の時間的推移が、通信装置１００（ａ）が任意の物体に接触したことよって生じる特性を示しているか否かを判断する（Ｓ５１）。
【００４４】
図８は、通信装置１００（ａ）が他の物体に接触したときに生じる典型的な振動の時間推移情報を示す。図８のグラフは、横軸が時間（ｍｓｅｃ）であり、縦軸は振幅値（振動の強度）である。制御部１１は、振動検知部１３から送信される振動の強度を時間軸上にプロットする。制御部１１は、振動を検知したとき、その振動が、通信装置１００(ａ)が任意の物体に接触したことによって生じた振動か、自己共振による振動かの判断を、振動の振幅が図８のように時間とともに減衰しているか否かによって判断する。自己共振とは、たとえば、バイブレーション機能などによる共振などである。すなわち、振幅値が一定強度以上になってから、一定時間後にほぼ０になっている場合は、制御部１１は、任意の物体との接触による振動であると判断する。一定時間とは、たとえば１秒などである。自己共振による振動の場合は振幅値が時間とともに減衰せず、一定時間後に振幅値が０にならないので、制御部１１は、接触による振動と自己共振による振動とを区別できる。
【００４５】
制御部１１は、発生した振動が、通信装置１００（ａ）が任意の物体に接触したことによって発生した振動ではないと判断した場合（Ｓ５１でＮＯ）、Ｓ２３以降の処理を行わず、処理を終了する。制御部１１は、振動が、通信装置１００（ａ）が任意の物体に接触したことによる振動である可能性があると判断した場合（Ｓ５１でＹＥＳ）、Ｓ２３以降の処理を実行する。なお、図７におけるＳ２３以降の処理は、図５におけるＳ２３以降の処理と同一である。
【００４６】
以上のように、本実施形態によると、通信装置１００（ａ）は、振動を検知したとき、振動が通信装置１００（ａ）の接触以外によって生じたことが明らかであるときは、ネットワーク内に通信装置１００（ａ）と接触をした通信装置１００（ｂ）が存在するか否かを判断する処理（Ｓ２３以降の処理）を行わないので、無駄な処理を削減できる。
【００４７】
[通信装置が接続を確立する実施形態３]
図９は、実施形態３の処理において用いられる振動時刻情報１２Ａを示す。実施形態３の通信装置１００（ａ）は、振動時刻情報１２Ａに、通信装置１００（ａ）が振動を検知し始めた時刻(以下、振動開始時刻という。)と、振動を検知し終えた時刻（以下、振動終了時刻という。）とを管理する。図１０は、通信装置１００（ａ）が接続を確立する実施形態３のフローチャートを示す。図５と同一の処理には同一符号を付し、説明を省略する。
【００４８】
制御部１１は、振動を検知したとき（Ｓ２１でＹＥＳ）、現在の時刻を振動時刻情報１２Ａの振動開始時刻として記憶する（Ｓ２２）。
【００４９】
制御部１１は、振動検知部１３から、振動が起きていることを通知する情報を受信できなくなったか否かを判断し（Ｓ６１）、受信できなくなったと判断するとき（Ｓ６１でＹＥＳ）、制御部１１は現在の時刻を振動時刻情報１２Ａの振動終了時刻として記憶する（Ｓ６２）。なお、振動検知部１３は、ある基準値よりも振幅が小さい場合、制御部１１へ振動が起きていることを通知しない。制御部１１は、振動を検知している場合（Ｓ６１でＮＯ）、振動が検知できなくなるのを待つ。
【００５０】
制御部１１は、通信装置１００（ａ）が通信装置１００（ｂ）と接続中か否かを判断し（Ｓ２３）、Ｓ２３でＹＥＳのとき通信装置１００（ｂ）から振動時刻情報１２Ａを取得（Ｓ２５）する。Ｓ２５の処理において制御部１１が取得する振動時刻情報１２Ａは、振動開始時刻と振動終了時刻とを含む。制御部１１は、自身の振動開始時刻と、Ｓ２５によって取得される通信装置１００（ｂ）の振動開始時刻との差が、所定の範囲内であるか否かを判断し（Ｓ６３）、所定の範囲内であると判断した場合（Ｓ６３でＹＥＳ）、自身の振動終了時刻と、Ｓ２５によって取得された通信装置１００（ｂ）の振動終了時刻との差が、所定の範囲内であるか否かを判断し（Ｓ６４）、所定の範囲内であると判断された場合（Ｓ６４でＹＥＳ）、通信装置管理テーブル１２Ｂを更新する（Ｓ３０）。なお、所定の範囲とは、たとえば１秒である。そして、通信装置１００（ａ）は、同一時刻に振動を検知した通信装置１００（ｂ）との接続を維持した状態で処理を終了する。
【００５１】
制御部１１は、自身の振動開始時刻と、Ｓ２５によって取得された通信装置１００（ｂ）の振動開始時刻との差が、所定の範囲内でないと判断する場合（Ｓ６３でＮＯ）、現在接続中の通信装置１００（ｂ）との通信を切断し（Ｓ２７）、Ｓ２８以降の処理を実行する。また、制御部１１によって、自身の振動終了時刻と、Ｓ２５によって取得された通信装置１００（ｂ）の振動終了時刻との差が所定の範囲内でないと判断される場合（Ｓ６４でＮＯ）、通信装置１００（ａ）は接続を切断し（Ｓ２７）、Ｓ２８以降の処理を実行する。
【００５２】
以上のように、本実施形態によると、制御部１１は、振動開始時刻と、振動終了時刻とを用いて、ネットワーク内で接触した通信装置１００（ｂ）を探索する。振動開始時刻と、振動終了時刻との両値が同一時刻である２台の通信装置１００は、確実に相互に接触したことを示すので、通信装置１００（ａ）は、ネットワーク内で接触した相手の通信装置１００（ｂ）をより確実に特定することができる。また、振動の検知終了時刻に代えて、振動を継続して検知し続けた時間長を用いてもよい。
【００５３】
[通信装置が接続を確立する実施形態４]
図１１は、通信装置１００（ａ）が接続を確立する実施形態４のフローチャートを示す。実施形態４における通信装置１００（ａ）は、通信中に通信装置１００（ａ）が振動を検知した場合、通信装置１００（ａ）は接続先を変更しない。図５と同一の処理には同一符号を付し、説明を省略する。
【００５４】
制御部１１は、振動を検知したとき（Ｓ２１でＹＥＳ）、通信装置１００（ａ）が通信装置１００（ｂ）と通信中であるか否かを判断する（Ｓ７１）。通信中とは、たとえば、通信装置１００（ａ）が通信装置１００（ｂ）とデータの送受信を行っている状態である。制御部１１は、通信装置１００（ａ）が接続中の状態で待機し、実際にデータを送受信していない場合、通信中と判断しない。
【００５５】
制御部１１は、通信装置１００（ａ）が、通信装置１００（ｂ）と通信中であると判断する場合（Ｓ７１でＹＥＳ）、処理を終了する。制御部１１は、通信装置１００（ａ）が、通信装置１００（ｂ）と通信中でないと判断する場合（Ｓ７１でＮＯ）、Ｓ２２以降の処理を実行する。なお、Ｓ２２以降の処理は、図５のＳ２２以降の処理と同一である。
【００５６】
以上のように、本実施形態によると、通信装置１００（ａ）が通信中のときは、接触によって振動が発生しても制御部１１は接続先の通信装置１００（ｂ）を切り替える処理を実行せずに、通信状態を維持する。したがって、ユーザは通信装置１００（ａ）を使用中に誤って接触させた場合でも、通信装置１００（ａ）の通信状態を維持できる。
【００５７】
[通信装置が接続を確立する実施形態５]
図１２は、通信装置１００（ａ）が通信中に接触によって振動を検知したとき、通信中の通信装置１００（ａ）を切り替えるか否かを管理する通信中切替設定１２Ｃを示す。通信中切替設定１２ＣがＯＮに設定されているときは、通信装置１００（ａ）は通信中に接触によって振動を検知したとき、通信先の通信装置１００（ｂ）を切り替える。なお、ユーザは、通信中切替設定１２Ｃを通信装置１００（ａ）の図示しない操作部を介して変更することができる。図１３は、通信装置１００（ａ）が接続を確立する実施形態５のフローチャートを示す。図５または図１１と同一の処理には同一符号を付し、説明を省略する。
【００５８】
制御部１１は、振動を検知したとき（Ｓ２１でＹＥＳ）、通信装置１００（ａ）が通信装置１００（ｂ）と通信中であるか否かを判断する（Ｓ７１）。制御部１１は、通信装置１００（ａ）が通信中であると判断した場合（Ｓ７１でＹＥＳ）、通信中切替設定１２ＣがＯＮに設定されているか否かを判断する（Ｓ８１）。
【００５９】
制御部１１は、通信中切替設定１２ＣがＯＮに設定されていると判断した場合（Ｓ８１でＹＥＳ）、Ｓ２２以降の処理を行い、制御部１１が通信中切替設定１２ＣがＯＮでないと判断した場合（Ｓ８１でＮＯ）、処理を終了する。なお、Ｓ２２以降の処理は、図５のＳ２２以降の処理と同一である。
【００６０】
以上のように、実施形態５によると、通信装置１００（ａ）が通信中に接触によって振動が発生した場合に、通信先の通信装置１００（ｂ）を変更するか否かをユーザ操作により設定可能である。
【００６１】
[通信装置が接続を確立する実施形態６]
図１４は、通信装置１００（ａ）が接続を確立する実施形態６のフローチャートを示す。実施形態６の通信装置１００（ａ）は、ネットワーク内に、ほぼ同一時刻に振動を検知した通信装置１００（ｂ）が自分を含めて３台以上存在したとき、接続を切り替えない。図５と同一の処理には同一符号を付し、説明を省略する。
【００６２】
制御部１１は、振動を検知したとき（Ｓ２１でＹＥＳ）、変数ｎｕｍに０を設定する（Ｓ９１）。変数ｎｕｍは、ネットワーク内で同一時刻に振動を検知した通信装置１００（ｂ）の個数を示す変数である。
【００６３】
制御部１１は、自身の振動時刻情報１２Ａと、現在接続中の通信装置１００（ｂ）の振動時刻情報１２Ａとの差分が所定の範囲内であると判断した場合（Ｓ２６でＹＥＳ）、通信装置１００（ｂ）の情報を記憶する（Ｓ９２）。通信装置１００（ｂ）の情報とは、後述する通信装置管理テーブル１２Ｂを更新するときに必要な情報であり、たとえば、通信装置１００（ｂ）のアドレスと暗号鍵との組み合わせである。
【００６４】
制御部１１は、変数ｎｕｍをインクリメントする（Ｓ９３）。制御部１１は、変数ｎｕｍが１より大きいか否かを判断し（Ｓ９４）、変数ｎｕｍが１より大きいと判断した場合（Ｓ９４でＹＥＳ）、処理を終了する。すなわち、ネットワーク内に、同一時刻に振動を検知した通信装置１００が自身を含めて３台以上存在するので、処理を終了する。
【００６５】
制御部１１は、変数ｎｕｍが１以下であると判断した場合（Ｓ９４でＮＯ）、Ｓ２８以降の処理を実行する。Ｓ２８の処理によって、ネットワーク内のすべての通信装置１００（ｂ）に対してＳ２５及びＳ２６の判断処理を実行したと判断されたとき（Ｓ２８でＹＥＳ）、制御部１１は、変数ｎｕｍが１であるか否かを判断し（Ｓ９５）、変数ｎｕｍが１であると判断するとき（Ｓ９５でＹＥＳ）、制御部１１は、通信装置管理テーブル１２Ｂを、Ｓ９２の処理によって記憶されている情報を用いて更新する（Ｓ３０）。制御部１１は、変数ｎｕｍが１でないと判断したとき（Ｓ９５でＮＯ）、処理を終了する。なお、Ｓ９５の処理によってＮＯと判断されるときは、ｎｕｍが０であるので、ネットワーク内に同一の時刻に接触した通信機器１００が存在しない。
【００６６】
以上のように、実施形態６によると、通信装置１００（ａ）はネットワーク内で同時に３台以上の通信装置１００が接触した場合、接続先の通信装置１００（ｂ）を一意に特定できないので、接続状態を変更しない。
【００６７】
[通信装置が接続を確立する実施形態７]
図１５は、実施形態７で用いられる、通信装置１００（ａ）が有する通信装置管理テーブル１２Ｂである。図１５の通信装置管理テーブル１２Ｂは、図３の通信装置管理テーブル１２Ｂに加え、カテゴリ項目を備える。カテゴリとは、通信装置１００の種別であり、通信装置１００の各々が、受信装置であるか、送信装置であるかを示す。カテゴリが受信である通信装置１００は、カテゴリが送信である通信装置１００と通信し、カテゴリが送信である通信装置１００からデータを受信して動作する。カテゴリが送信である通信装置１００とは、たとえば、オーディオトランスミッター、リモコン、マウス、キーボードなどである。カテゴリが受信である通信装置１００とは、たとえば、オーディオレシーバ、ヘッドフォンなどである。なお、送信、受信の両者の動作をする通信装置１００の場合は、カテゴリが送受信となる。カテゴリ情報は、図２（ｂ）の処理を実行するときに、通信装置１００が相互に送受信し、通信装置管理テーブル１２Ｂに記憶する。図１６は、通信装置１００（ａ）が接続を確立する実施形態７のフローチャートを示す。実施形態７の通信装置１００（ａ）は、ネットワーク内に、ほぼ同一時刻に振動を検知した通信装置１００（ｂ）が自身を含めて３台以上存在するとき、接続することが妥当であると判断する通信装置１００（ｂ）と優先的に接続する。図５と同一の処理には同一符号を付し、説明を省略する。
【００６８】
制御部１１は、変数ｎｕｍが１より大きいか否かを判断し（Ｓ９４）、変数ｎｕｍが１より大きいと判断した場合（Ｓ９４でＹＥＳ）通信装置管理テーブル１２Ｂのカテゴリを参照し、自身のカテゴリと対になるカテゴリを有する通信装置１００（ｂ）と接続する。たとえば、通信装置１００（ａ）のカテゴリが送信である場合、通信装置１００（ａ）は、カテゴリが受信である通信装置１００（ｂ）を通信装置管理テーブル１２Ｂから選択し、接続する（Ｓ１０１）。なお、カテゴリが受信である通信装置１００（ｂ）が複数存在する場合は、通信装置管理テーブル１２Ｂに登録されている任意の通信装置１００（ｂ）と接続する。
【００６９】
以上のように、実施形態７によると、通信装置１００（ａ）は、同時に３台以上の通信装置１００（ｂ）と接触したことを検知した場合、通信可能なカテゴリを有する通信装置１００（ｂ）を選択して接続するので、通信ができない通信装置１００（ｂ）と誤って接続してしまうことを防止できる。
【００７０】
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態には限定されない。通信装置１００は、携帯型端末以外の据え置き型のデバイスであってもよい。通信規格がＢｌｕｅｔｏｏｔｈに限定されるものではなく、任意の通信規格を適宜選択して採用できる。また、振動ではなく、音声を検知して接続を確立してもよい。その場合、マイクなどの音声検知手段を備える必要がある。また、通信装置１００は、時刻管理部１１Ａに時計機能を有する代わりに、ネットワーク内のすべての通信装置１００が同一の時間情報を共有するためのタイマ機能を有していてもよい。すなわち、ネットワークが形成開始されるときを基準としてカウントアップされるタイマ等である。また、通信装置１００は、相互に直接通信せずに、マスターとなる通信装置１００を介して通信してもよい。
【産業上の利用可能性】
【００７１】
本発明は、携帯型の無線方式による通信装置に好適に採用され得る。
【符号の説明】
【００７２】
１００          通信装置
１１                    制御部
１１Ａ          時刻管理部
１１Ｂ          時刻判断部
１１Ｃ          振幅推移判断部
１２            メモリ
１２Ａ                振動時刻情報
１２Ｂ          通信装置管理テーブル
１２Ｃ          通信中切替設定
１３            振動検知部
１４            通信部
【図１】
2013038617.tif 000003
【図２】
2013038617.tif 000004
【図３】
2013038617.tif 000005
【図４】
2013038617.tif 000006
【図５】
2013038617.tif 000007
【図６】
2013038617.tif 000008
【図７】
2013038617.tif 000009
【図８】
2013038617.tif 000010
【図９】
2013038617.tif 000011
【図１０】
2013038617.tif 000012
【図１１】
2013038617.tif 000013
【図１２】
2013038617.tif 000014
【図１３】
2013038617.tif 000015
【図１４】
2013038617.tif 000016
【図１５】
2013038617.tif 000017
【図１６】
2013038617.tif 000018