説明

通信端末装置および通信制御方法

【課題】複数の通信モードを搭載した通信端末装置を提供する。
【解決手段】第1無線通信モジュール12は、所定の周波数帯において、第1の通信方式を用いて通信を実行する。第2無線通信モジュール14は、所定の周波数帯において、第1の通信方式とは異なる第2の通信方式を用いて通信を実行する。制御部16は、第1無線通信モジュール12の通信と第2無線通信モジュール14の通信とを共通の基準通信周期にしたがって実行させる周期的通信モードと、第1無線通信モジュール12に非周期で通信を実行させる非周期通信モードを含む複数の通信モードのうちから1の通信モードを選択する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、無線通信機能を有する通信端末装置に関し、特に複数の通信モジュールを備えた通信端末装置に関する。
【背景技術】
【0002】
近年、様々な無線通信プロトコルが提案され、実用化されている。IEEE802.11において標準化された広帯域構内無線システム(WLAN)やIEEE802.15.1において標準化された携帯情報機器向けの無線通信技術(BlueTooth(登録商標)通信技術)などはその代表格であり、様々な情報端末装置に組み込まれて、PDA(Personal Digital Assistants)やプリンタ、ヘッドセットなどの周辺機器との無線接続に利用される。最近の技術革新により、無線通信モジュールは、小型で且つ安価に製造されるようになり、1つの筐体内に複数種類の無線通信プロトコルのモジュールを組み込むことも可能となっている。
【0003】
無線通信モジュールは、ある程度の距離まで信号を伝達し、また周辺機器から送信された微弱な電波を受信して信号を再現する必要がある。そのため無線通信モジュールは、高出力可能な送信器と高感度な受信器から構成される。
【発明の概要】
【発明が解決しようとする課題】
【0004】
1つの筐体内に複数の無線通信モジュールが搭載される場合、スペース上の制約から無線通信モジュール同士は近接して配置されることになる。そのため、無線通信モジュール同士の間で電波の相互干渉が発生しうる。特に、IEEE802.11で規定される無線通信プロトコル(以下、「WLAN通信」もしくは「WLANプロトコル」と表記する)とIEEE802.15.1で規定される無線通信プロトコル(以下、「BlueTooth通信」もしくは「BlueToothプロトコル」と表記する)は、同じ2.4GHz帯を利用するため、相互干渉の問題は大きくなる。
【0005】
異なる無線通信モジュール間の相互干渉を回避するために、Bluetoothプロトコルでは、AFH(Adaptive Frequency Hopping)と呼ばれる技術が開発されている。AFH技術によると、Bluetooth通信モジュールが、同一帯域内で他の通信モジュールにより占有されている周波数帯の使用を回避し、使用可能な周波数のみを用いて周波数ホッピングすることで、Bluetoothプロトコルの通信を安定させる。
【0006】
しかしながら、同一筐体内に複数の無線通信モジュールが搭載される場合、無線通信モジュール同士が近距離に配置されるため、AFHによる対策では、電波の相互干渉を十分に回避できない。特に、1つの無線通信モジュールが信号の送信モードにあり、同じタイミングで、近接した別の無線通信モジュールが信号の受信モードにある場合、その別の無線通信モジュールは、隣で発生している高出力の送信電波を受信することになる。このとき、受信電波の中で本来の受信すべき信号が埋もれてしまい、信号を適切に再現することができない事態も発生する。そのため、複数の無線通信モジュールを同一筐体内に実装した場合に、安定した通信を実現する技術の開発が望まれている。
【課題を解決するための手段】
【0007】
上記課題を解決するために、本発明のある態様の通信端末装置は、所定の周波数帯において、第1の通信方式を用いて通信を実行する第1無線通信モジュールと、所定の周波数帯において、第1の通信方式とは異なる第2の通信方式を用いて通信を実行する第2無線通信モジュールと、第1無線通信モジュールの通信と第2無線通信モジュールの通信とを共通の基準通信周期にしたがって実行させる周期的通信モードと、第1無線通信モジュールに非周期で通信を実行させる非周期通信モードを含む複数の通信モードのうちから1の通信モードを選択する制御部と、を備える。
【0008】
本発明の別の態様は、通信制御方法である。この方法は、所定の周波数帯において、第1の通信方式を用いて通信を実行する第1無線通信モジュールの通信と、所定の周波数帯において第1の通信方式とは異なる第2の通信方式を用いて通信を実行する第2無線通信モジュールの通信とを制御する方法であって、第1無線通信モジュールの通信と第2無線通信モジュールの通信とを共通の基準通信周期にしたがって実行させる周期的通信モードと、第1無線通信モジュールに非周期で通信を実行させる非周期通信モードを含む複数の通信モードのうちから1の通信モードを選択し、選択した通信モードに応じて、第1無線通信モジュールと第2無線通信モジュールそれぞれの通信の実行を制御する。
【0009】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【図面の簡単な説明】
【0010】
【図1】本発明の実施形態における通信システムの構成例を示す図である。
【図2】制御部の機能ブロック例を示す図である。
【図3】図1の第1無線通信モジュールの構成例を示す図である。
【図4】図1の第2無線通信モジュールの構成例を示す図である。
【図5】図5(a)は、第1無線通信モジュールと無線コントローラとの通信状況を示す図である。図5(b)は、第2無線通信モジュールの通信状況を示す図である。図5(c)は、第2無線通信モジュールとその管理下にある携帯型ゲーム機/PCとの間における通信を禁止すべき期間を示す図である。図5(d)は、第1無線通信モジュールが第2無線通信モジュールに対して送信するBT_Syncの送信状況の例を示す図である。
【図6】図6(a)は、第1無線通信モジュールと無線コントローラとの通信状況を示す。図6(b)は、第2無線通信モジュールと携帯型ゲーム機との通信状況を示す。
【図7】図7(a)は、第1無線通信モジュールと無線コントローラとの通信状況を示す図である。また、図7(b)は、第2無線通信モジュールにおける通信が禁止される区間の例を示す図である。
【発明を実施するための形態】
【0011】
添付した図面に参照される本発明の好ましい態様の記載において、特定の用語は、発明の明瞭性のために用いられている。しかしながら、本発明は、用いられた特定の事項に限定されず、かつ、同様の目的を達成するために同様の規則で行う全ての等価な技術を含むものと理解される。
【0012】
本発明の実施形態を具体的に説明する前に、まず概要を述べる。本発明の実施例に係る通信システムは、1つの筐体内に2つの無線通信モジュールを含むゲーム装置と、ゲーム装置に対し指示を与えるゲーム装置用の無線コントローラなどを含む。2つの無線通信モジュールは、それぞれ同一の周波数帯域を用いる。たとえば、2つの無線通信モジュールの一方は、無線コントローラとの間でBlueTooth接続による通信を実行し、他方は、PCやコントローラにもなり得る携帯型ゲーム機などとの間でWLAN接続による通信を実行する。この場合、双方の通信が混信しないように、また、一方が他方の通信によって妨害されることを回避するために、2つの無線通信モジュールにおける通信の実行を時間的にスケジューリングすることが好ましい。スケジューリングは、さまざまなモードにより定義されるが、以下においては、まず周期的なスケジューリングについて説明する。
【0013】
周期的なスケジューリングでは、BlueTooth接続による通信と、WLAN接続による通信とが、それぞれの通信周期において実行され、原則として、両方の通信が重ならないようにして実現される。
【0014】
BlueTooth接続による通信と、WLAN接続による通信とは、同一周波数帯を使用しているため、同時に通信を実行すると、双方の通信は互いに干渉しあうこととなる。また一般に、BlueToothプロトコルは、WLANプロトコルと比べて柔軟性が低い。したがって、本実施形態の通信システムにおいては、BlueTooth接続による無線通信モジュールの通信状況を把握することによって、WLAN接続による無線通信モジュールにおける通信スケジューリングを準自律的に実行し、干渉を回避する。BlueTooth接続に係る無線通信モジュールの通信状況を把握するために、BlueTooth接続に係る無線通信モジュールからWLAN接続に係る無線通信モジュールに対して、前者の無線通信モジュールの通信状態を示すパルス信号や、同期信号などが通知されてもよい。WLAN接続に係る無線通信モジュールは、BlueTooth接続に係る無線通信モジュールの通信状況などをもとに、準自律的に、携帯型ゲーム機に対する信号送信を停止し、また、携帯型ゲーム機に対して送信を禁止させるための信号を送る。さらに、現在行なわれているゲーム、もしくは、通信への新規ユーザの途中参加を柔軟に実現するために、連続する通信周期のうち、少なくとも1の通信周期内において、BlueTooth接続に係る無線通信モジュールの通信の実行が保護されている期間(以下、「保護期間」と表記する。)を長く設定することとした。詳細は後述する。
【0015】
このような態様をとることにより、BlueTooth接続による通信と、WLAN接続による通信との共存(CoExsistence)が可能となる。また、WLAN接続による通信量が多い場合であっても、一定の通信周期内においては、保護期間が長く設定されるため、確実にBlueTooth接続に係る通信時間が確保できる。なお、保護期間においては、BlueTooth接続に係る無線通信モジュールの通信が保証されているものの、必ずしもその期間に通信を実行しなければならないわけではない。たとえば、WLAN接続による通信量が少ない期間が存在する場合は、WLAN接続に係る無線通信モジュールに与えられた通信時間帯であったとしても、BlueTooth接続に係る無線通信モジュールにおいて通信が可能となるため、その期間に通信を実行することにより、ゲームへの途中参加をより促進する。
【0016】
図1は、本発明の実施形態における通信システム1の構成例を示す図である。通信システム1は、ゲーム装置10、ゲーム装置10と無線接続する無線コントローラ25a、25b、25c(以下、「無線コントローラ25」と呼ぶ)、携帯型ゲーム機30a、30b(以下、「携帯型ゲーム機30」と呼ぶ)およびパーソナルコンピュータ32(以下、「PC32」と呼ぶ)を含む。ゲーム装置10は、1つの筐体内に、通信機能を有する第1無線通信モジュール12および第2無線通信モジュール14と、ゲーム装置全体を統括的に管理する制御部16、ゲームアプリケーションを実行するアプリケーション処理部18、さらにゲームアプリケーションの処理結果を出力する出力部20を備える。ゲーム装置10は、第1無線通信モジュール12および第2無線通信モジュール14を備えることで、無線通信端末装置として機能する。第1無線通信モジュール12および第2無線通信モジュール14は、同一の周波数帯において、それぞれ別個の無線通信プロトコルもしくは無線通信方式による通信を可能とする。なお、第1無線通信モジュール12は、第2無線通信モジュール14よりも弱い通信電力で通信を実行してもよい。
【0017】
通信システム1において、無線コントローラ25は、ゲーム装置10に対するゲームコントローラであり、1人以上のユーザが、ゲーム装置10のディスプレイに表示されるゲーム画面を見ながら無線コントローラ25を操作し、ゲームを実行することができる。また、携帯型ゲーム機30は、ゲーム装置10を中継局として他の携帯型ゲーム機30と通信を実行することで、複数人が同時にゲームを実行できる端末装置である。また携帯型ゲーム機30は、ゲーム装置10から動画データを受信して、ユーザに動画を提供する機能を有してもよい。さらに携帯型ゲーム機30は、ゲーム装置10に対するゲームコントローラとして使用されることも可能であり、ユーザは、ゲーム装置10のディスプレイに表示されるゲーム画面を見ながら、携帯型ゲーム機30を操作してゲームを実行することもできる。このように、ゲーム装置10は、複数の用途に対して機能できる。
【0018】
制御部16は、第1無線通信モジュール12と、第2無線通信モジュール14における通信の実行をスケジューリングする。スケジューリングの態様は、予め設定された複数のモードから1のモードを選択される。以下においては、周期的に第1無線通信モジュール12と、第2無線通信モジュール14とに対し通信を実行させるモード(以下、「周期的通信モード(Periodic Mode)」と表記する。)について詳細に説明する。
【0019】
周期的通信モード(Periodic Mode)とは、WLAN通信とBlueTooth通信による相互干渉を回避するためのモードの一態様であって、第1無線通信モジュール12と第2無線通信モジュール14に対し共通の基準通信周期にしたがってそれぞれの通信を実行させるモードである。周期的通信モードは、ユーザが、コントローラである無線コントローラ25もしくは携帯型ゲーム機30を用いてゲームを実行している間に、他のユーザがPC32を使用したいような場合に選択されるモードである。この場合、ゲーム装置10と無線コントローラ25もしくは携帯型ゲーム機30との通信は、PC32との通信に比べ、リアルタイム性(real-timeliness)の要求が高いと考えられることから、無線コントローラ25もしくは携帯型ゲーム機30における通信時間および/または通信帯域を充分に確保する必要がある。「リアルタイム性の要求が高い」とは、原則として再送を想定せず/許容せず、および/または、許容できる処理遅延が小さいことなどを含む。たとえば、ユーザが無線コントローラ25もしくは携帯型ゲーム機30を操作した場合に、ユーザに不快感を与えないように、その操作による内容のすべてが確実にゲーム装置10に伝わるとともに、ゲーム装置10において、その内容に従った処理が確実に実行され、さらに、その実行が画面表示に反映されることなどをいう。さらに、無線コントローラ25との間における通信に用いられるBluetoothプロトコルは、PC32との通信に用いられるWLANプロトコルに比べて、タイミング制御が難しい場合が多い。したがって、PC32とゲーム装置10の通信に用いられるWLANプロトコルにおいて、無線コントローラ25とゲーム装置10の間における通信状況を考慮しつつ、通信のスケジューリングを実行することとしている。さらに、PC32と同様にWLANプロトコルにて通信が実行される携帯型ゲーム機30は、コントローラとして用いられる場合、PC32より優先度が高い。したがって、PC32とゲーム装置10の通信は、携帯型ゲーム機30とゲーム装置10の通信が終了した後に実行することとした。
【0020】
また、ゲームの性質によっては、ゲームの実行が開始された後、無線コントローラ25を有するユーザがゲームに途中参加することを望む場合がある。本実施例では、このような場合を想定して、途中参加する無線コントローラ25と通信を行なうべき第1無線通信モジュール12における通信期間および/または通信帯域を確保するために、第2無線通信モジュール14の一通信周期における通信可能期間を定期的に短くすることとした。いいかえると、制御部16は、第2無線通信モジュール14による一通信周期内での通信を禁止する期間を定期的に長く設定する。このような構成をとることにより、ユーザに快適な通信環境および/またはゲーム実行環境を提供できる。また、複数のユーザが複数のアプリケーションをほぼ同時に使用したとしても、通信および/またはゲームが遮断されることはない。第2無線通信モジュール14は、制御部16から送られたパラメータによる指示および/または第1無線通信モジュール12から送られた当該第1無線通信モジュール12における通信状態に関する情報をもとに、第1無線通信モジュール12の通信の実行を阻害しないように、準自律的に動作してもよい。なお、上述のスケジューリングは、制御部16がすべて管理し、第1無線通信モジュール12と第2無線通信モジュール14とに対して適宜指示を送ることによって実現されてもよい。
【0021】
本実施形態において、第1無線通信モジュール12は、Bluetoothプロトコルによる無線通信を行い、複数の無線コントローラ25との無線接続を可能とする。Bluetoothプロトコルでは、周波数ホッピング型スペクトラム拡散方式が採用されている。通信システム1において、第1無線通信モジュール12は、無線コントローラ25に対して親機すなわちマスタとして機能し、無線コントローラ25はスレーブとして機能する。第1無線通信モジュール12と無線コントローラ25の間にはピコネットが形成される。ピコネットとは、Bluetooth通信端末同士を近づけたときに、端末の間で一時的に形成されるネットワークであり、最大で8台のBluetooth通信端末が1つのピコネットに参加することができる。したがってマスタである第1無線通信モジュール12は、最大7台の無線コントローラ25と無線接続することが可能である。
【0022】
第2無線通信モジュール14は、IEEE802.11プロトコルによる無線通信を行い、複数の携帯型ゲーム機30およびPC32との無線接続を可能とする。IEEE802.11プロトコルとして、例えばIEEE802.11bおよび/またはIEEE802.11gを採用する。IEEE802.11プロトコルによる通信環境下で、第2無線通信モジュール14はアクセスポイントとして機能する。IEEE802.11プロトコルによる無線LANのMACレイヤの技術には、CSMA/CA(Carrier Sense Multiple Access with Collision Avoidance:衝突回避機能付きキャリア感知多元接続)がアクセス制御方式として採用されており、IEEE802.11端末は、通信路が一定時間以上継続して空いていることを確認してからデータを送信する機能をもつ。この待ち時間は最小限の時間に各端末ごとのランダムな長さの待ち時間を加えたもので、直前の通信があってから一定時間後に複数の端末が一斉に送信して、信号同士の衝突が発生する事態を防止している。
【0023】
ここで、第2無線通信モジュール14と携帯型ゲーム機30との間で、ゲームアプリケーションのステータス情報が通信される場合について説明する。図1のゲーム装置10と無線コントローラ25および携帯型ゲーム機30の間では、ゲームアプリケーションの処理に関するデータが送受信されるため、程度の違いはあるものの、原則として情報伝送のリアルタイム性が要求される。そのため本実施形態の通信システム1においては、無線コントローラ25が通信する期間と携帯型ゲーム機30が通信する期間とを時間軸上で可能な限り重ならないようにすることで、ゲームアプリケーションの処理に関する通信を安定させる。一方、第2無線通信モジュール14とPC32の間の通信は、ゲームアプリケーションの実行に利用されるものではなく、厳密なリアルタイム性は要求されない。例えば、ゲーム装置10がルータを介してインターネットに接続されて、PC32が、電子メールを送受信するような使用状況が想定される。そのため、第2無線通信モジュール14とPC32の間の通信は、第1無線通信モジュール12と無線コントローラ25との間の通信、および第2無線通信モジュール14と携帯型ゲーム機30の間の通信が行われない時間帯に実行することとする。
【0024】
図2は、制御部16の機能ブロック例を示す図である。制御部16は、第1無線通信モジュール12および第2無線通信モジュール14との間にインタフェース部50aを有し、アプリケーション処理部18との間にインタフェース部50bを有することで、他の構成とのデータの授受を行う。インタフェース部50aおよびインタフェース部50bは、ハードウエア的に共通化された構造をとってもよい。
【0025】
制御部16は、さらにデータ転送部52、通信負荷監視部54、レイテンシ判定部56、通信タイミング設定部58およびクロック部60を備えて構成される。制御部16は、ゲーム装置10を統括的に制御管理する機能を有しているが、図2では、特にゲーム装置10の通信を管理する機能ブロックを示している。
【0026】
制御部16の通信管理機能は、ゲーム装置10において、CPU、メモリ、メモリにロードされたプログラムなどによって実現され、ここではそれらの連携によって実現される機能ブロックを描いている。プログラムは、ゲーム装置10に内蔵されていてもよく、また記録媒体に格納された形態で外部から供給されるものであってもよい。したがってこれらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者に理解されるところである。
【0027】
通信負荷監視部54は、第1無線通信モジュール12および第2無線通信モジュール14のそれぞれの通信負荷を監視する。通信負荷監視部54は、第1無線通信モジュール12に無線接続される無線コントローラ25の台数、および第2無線通信モジュール14に接続される携帯型ゲーム機30の台数を監視することで、それぞれの通信モジュールの通信負荷を把握してもよい。通信負荷監視部54は、定期的に第1無線通信モジュール12および第2無線通信モジュール14の通信負荷を監視してもよい。また、それぞれの接続台数に変化が生じたときに、その無線通信モジュールから新たな接続台数を受け取ることで通信負荷を監視してもよい。通信負荷監視部54は、それぞれの通信モジュールの通信負荷の監視結果を通信タイミング設定部58に送る。
【0028】
通信タイミング設定部58は、第1無線通信モジュール12と、第2無線通信モジュール14の通信負荷の監視結果を受けて、第1無線通信モジュール12と第2無線通信モジュール14のそれぞれに対し、パラメータを設定する。周期的通信モードにおいて制御部16から第2無線通信モジュール14および/または第1無線通信モジュール12に送られるパラメータとしては、少なくとも、「モード情報」、「通信周期」、「通信禁止期間」、「通信禁止期間に関する周期」とを含んでもよい。「モード情報」とは、第1無線通信モジュール12と第2無線通信モジュール14をスケジューリングするための識別情報であり、ここでは、周期的通信モードであることが通知される。この通知は、少なくとも、第2無線通信モジュール14に対して行われる。「通信周期」とは、第1無線通信モジュール12、第2無線通信モジュール14の通信周期であって、予め定められた基準通信周期の自然数倍の長さをもつ。
【0029】
「通信禁止期間」とは、第2無線通信モジュール14の通信が禁止される期間であって、第2無線通信モジュール14の1通信周期内にて設定され、またそれぞれの通信周期ごとに設定される。通信禁止期間においては、第2無線通信モジュール14に対し通信を実行させないことにより、第1無線通信モジュール12の通信可能期間を確保する。第2無線通信モジュール14の通信禁止期間は、第1無線通信モジュール12の1つの通信周期内にて連続した期間であってもよく、連続した期間でなくてもよい。第1無線通信モジュール12の1通信周期において断続的な通信禁止期間を設定する場合、たとえば、第1通信禁止期間として第1無線通信モジュール12の通信周期の先頭のタイミングから第1タイミングまでの期間を設定し、また、第2通信禁止期間として第1タイミングより後の第2タイミングから第1無線通信モジュール12の通信周期の終了タイミングまでの期間を設定してもよい。
【0030】
本実施例において、第1無線通信モジュール12の通信周期と第2無線通信モジュール14の通信周期とは、オフセットされて設定されてもよい。具体的には、第1無線通信モジュール12の通信周期の開始とともに第2無線通信モジュール14の第1通信禁止期間が開始されて第1無線通信モジュール12の通信機会が確保され、第1通信禁止期間の終了とともに第2無線通信モジュール14の通信周期が終了して、同時に第2無線通信モジュール14の次の通信周期が開始されてもよい。このとき、通信周期のオフセットは、第1通信禁止期間分となる。また、上記したように、第2無線通信モジュール14の第2通信禁止期間は、第1無線通信モジュール12の通信周期の後半のタイミング(上記した「第2タイミング」)から終了タイミングまでの期間に位置づけられる。第1無線通信モジュール12の通信周期の終了タイミングは、次の通信周期の開始タイミングに等しいため、時間軸上では、第2通信禁止期間が終了すると、すぐに第1通信禁止期間が開始されることになり、第2無線通信モジュール14の1つの通信周期としてみると、その後半部分において通信周期が終了するまで、第2通信禁止期間と第1通信禁止期間とが連続的な通信禁止期間として設定されることになる。以下では、第1無線通信モジュール12の1通信周期内において第1通信禁止期間と第2通信禁止期間とを設定する場合について説明する。
【0031】
第1通信禁止期間は、第1無線通信モジュール12の通信負荷から、設定されてもよい。例えば第1無線通信モジュール12が3台の無線コントローラ25を管理している場合、それぞれの無線コントローラ25に対するポーリングと、それに対する応答を受信することで、計6個のタイムスロットが必要となる。この場合、通信タイミング設定部58は、第1無線通信モジュール12の通信に、少なくとも6タイムスロット分の時間が必要であることを判断し、第1無線通信モジュール12の通信期間を6タイムスロット分以上の時間、好ましくは6タイムスロット分の時間に設定する。これは、第2無線通信モジュール14の第1通信禁止期間を6タイムスロット分以上の時間、好ましくは6タイムスロット分の時間に設定することで、WLAN通信からの干渉を受けない第1無線通信モジュール12の通信期間(第1通信期間)が事実上設定される。後述するが、第1無線通信モジュール12と無線コントローラ25との間の通信はバースト的に実行され、第1通信期間の算出を容易にすることが好ましい。なお、基準通信周期の整数倍の期間をそれぞれの通信周期として設定することで、互いの通信周期の開始時刻の相対的な時間差を一定とすることができる。これにより、第1無線通信モジュール12および第2無線通信モジュール14の外部端末との接続台数に変化がない限りは、原則として第1通信禁止期間を固定とすることができ、通信タイミング設定部58は第1通信禁止期間を一回求めるだけでよい。
【0032】
ここで、第2通信禁止期間は、第1無線通信モジュール12において2つの周波数帯域を通信周期ごとに交互にページスキャンを実行するための期間を含む。新規の無線コントローラ25を探索する時間は、第1無線通信モジュール12が周辺の通信端末装置に対して接続照会すなわち「問い合わせ」する時間と、無線コントローラ25を認識して「呼び出し」する時間を含む。ページスキャンは、制御部16と第1無線通信モジュール12との間における通信が確実に確保される通信禁止期間に実行されることが好ましいが、通信禁止期間以外に実行されてもよい。通信禁止期間以外の期間であっても、第2無線通信モジュール14が常に通信を行なっているとは限らないからである。また、第2通信禁止期間は、通信周期の自然数倍の期間に1回の割合で、制御部16から第2無線通信モジュール14に設定されてもよい。ここで、制御部16によるページスキャンは、2つの周波数帯を対象として、通信周期ごとに交互に実行される。そうすると、第2通信禁止期間が、通信周期の偶数倍に1回の割合で設定されている場合、常に同じ周波数帯におけるページスキャン期間が第2無線通信モジュール14の通信禁止期間として確保され、他方の周波数帯におけるページスキャン期間を確保できないこととなる。したがって、第2通信禁止期間は、通信周期の奇数倍に1回の割合(たとえば3通信周期に1回)で発生するように設定するとよい。このため、参加を希望するユーザの無線コントローラ25を効率よく発見することが可能となる。
【0033】
なお、第2無線通信モジュール14はCSMA/CA方式により通信を実行するため、通信開始から終了までの正確な時間を求めることは容易でない。そのため、通信タイミング設定部58は、第2無線通信モジュール14が管理する携帯型ゲーム機30の台数をもとに通信開始から終了までに係る時間を予測し、その予測時間にある程度の時間的余裕を加えて、第2無線通信モジュール14の通信に必要であろう期間(第2通信期間)を求めてもよい。通信タイミング設定部58は、第1無線通信モジュール12と第2無線通信モジュール14のそれぞれの通信が重ならないように、パラメータを設定する。なお通信タイミング設定部58は、第1無線通信モジュール12と第2無線通信モジュール14のそれぞれの通信の実行期間の和(第1通信期間+第2通信期間)が、基準通信周期のM倍(Mは1以上の整数)より大きく且つ(M+1)倍以下となるときには、第1無線通信モジュールの通信周期と第2無線通信モジュールの通信周期のそれぞれを、基準通信周期の(M+1)倍以上に設定する。これにより、第1無線通信モジュール12と第2無線通信モジュール14のそれぞれの通信が重ならない状態を作り出すことができる。
【0034】
本実施例では、第2無線通信モジュール14の通信禁止期間を設定することによって、第1無線通信モジュール12における通信時間を確実に確保するとともに、通信のスループットを向上できる。なお、原則として、第1無線通信モジュール12は、第2無線通信モジュール14が通信を行なっていない通信禁止期間に通信を実行するが、通信禁止期間以外の期間であっても、通信を実行してもよい。通信禁止期間以外の期間であっても、第2無線通信モジュール14が常に通信を行なっているとは限らないため、第1無線通信モジュール12の通信は実行できる可能性があるからである。この場合において、第1無線通信モジュール12は、確実に通信を実行できるとは限らないものの、再送制御などを組み合わせて実行することにより、スループットをさらに向上できる。
【0035】
「通信禁止期間に関する周期」とは、第2通信禁止期間が適用される周期を示す。たとえば、通信禁止期間に関する周期が3であった場合、第2無線通信モジュール14の3通信周期のうちの1つの通信周期内においては、第1通信禁止期間と共に第2通信禁止期間が設定され、他の2つの通信周期内においては第1通信禁止期間のみが設定されることを示す。好ましくは、1通信周期を1単位として、奇数回に1回の割合で第2通信禁止期間を設定してもよい。
【0036】
また、周期的通信モードにおいて、制御部16から第1無線通信モジュール12に送られるパラメータとしては、「通信周期の開始タイミング」を含む。第1無線通信モジュール12は、通信周期の開始タイミングにもとづいて、第2無線通信モジュール14に対し、通信周期の開始タイミングを示すパルス情報(以下、「BT_Sync」と表記する。)を通知する。BT_Syncは、第1無線通信モジュール12の通信周期の開始タイミングを知らせるものであるが、第2無線通信モジュール14は、通知されたBT_Syncを用いて、第1通信禁止期間の開始タイミングを導出する。すなわち、第2無線通信モジュール14は、BT_Syncによって、第1無線通信モジュール12の通信周期の開始タイミングを認識するとともに、そのタイミングで第1通信禁止期間をスタートさせることを認識する。第1通信禁止期間は通信タイミング設定部58から通知されるため、第2無線通信モジュール14は、BT_Syncを受けると、通信相手である携帯型ゲーム機30もしくはPC32に対し通信を停止させるタイミングと、その停止期間を把握できる。このように、第1無線通信モジュール12が第2無線通信モジュール14にBT_Syncとしてタイミング情報を通知することで、第1無線通信モジュール12と第2無線通信モジュール14との間で同期した処理が可能となる。また、第2無線通信モジュール14が自身の通信を停止すべき期間を把握することによって、自律的に、無線通信モジュール間での電波の相互干渉を低減し、もしくは無くすことができ、安定した通信を可能とするゲーム装置10を実現する。
【0037】
前述したように、本実施形態のゲーム装置10において、第1無線通信モジュール12および第2無線通信モジュール14は、共通の基準通信周期を有する。Bluetoothマスタである第1無線通信モジュール12において、基準通信周期は、スニフモードによる間欠動作時に、動作毎に無線コントローラ25を個別呼び出しするポーリングの最小間隔に設定されてよく、また第2無線通信モジュール14において、基準通信周期は、IEEE802.11プロトコルにおける最小のビーコン間隔として設定されてよい。本実施形態のゲーム装置10では、アプリケーション処理部18による処理結果を出力部20より動画として出力するため、基準通信周期は、動画のフレームレートに基づいて、フレーム内に各端末がゲーム装置10と1回の通信の実行を確保する必要がある場合には、例えば11.25m秒に共通に設定される。
【0038】
また、通信タイミング設定部58は、第1無線通信モジュール12および第2無線通信モジュール14のそれぞれの通信周期を、基準通信周期の正の整数倍に設定する。第1無線通信モジュール12および第2無線通信モジュール14は、それぞれ通信状態と非通信状態とを交互に繰り返して、基準通信周期の整数倍の通信周期で外部端末と通信する。第1無線通信モジュール12および第2無線通信モジュール14のそれぞれの通信開始時刻は、それぞれの通信周期の開始時刻と同一であり、通信周期の始まりとともに外部機器との間の通信が開始される。本明細書において、第2無線通信モジュール14の通信周期とは、第2無線通信モジュール14と携帯型ゲーム機30との間における通信周期を意味する。既述したように、第2無線通信モジュール14とPC32の間の通信は、空いた時間を利用して行われる。なお、この空いた時間の中で、第2無線通信モジュール14とPC32の間の通信が行われないときに、第1無線通信モジュール12が、新たな無線接続を確立する無線コントローラ25を探索してもよい。
【0039】
データ転送部52は、インタフェース部50aにて受け付けた操作入力をインタフェース部50bからアプリケーション処理部18に伝達する。アプリケーション処理部18では、その操作入力に応じた処理が行われ、ゲームが進行される。
【0040】
ゲームアプリケーションは、リアルタイム性の要求の観点より分別すると、大きく2つのグループ、すなわちリアルタイム性の要求が高いゲームと低いゲームとに分けることができる。リアルタイム性の要求が高いゲームとは、例えば格闘ゲームやレーシングゲームなど、ゲームの進行が速く、ユーザの操作入力が即座にゲーム画面などの出力に反映される必要のあるゲームである。一方、リアルタイム性の要求が低いゲームとは、将棋や麻雀などの対戦ゲームや、RPG(ロールプレイングゲーム)など、ゲームの進行が比較的緩やかなゲームである。
【0041】
ゲーム画面の更新は、所定のフレームレートないしはリフレッシュレートで行われる。現状、1フィールドの書き換え速度は約16.7m秒(1/60秒)であり、したがって、リアルタイムの要求が高い、すなわち低遅延が要求されるゲームアプリケーションでは、1フィールド(16.7m秒)に少なくとも1回は、無線コントローラ25からの操作入力がゲーム画面に反映されることが好ましい。
【0042】
また、第2無線通信モジュール14をアクセスポイントとして利用する携帯型ゲーム機30についても事情は同じであり、1フィールドに少なくとも1回は、自分のステータス情報を他の携帯型ゲーム機30に知らせ、また他の携帯型ゲーム機30のステータス情報を知ることが好ましい。ステータス情報は、レーシングゲームであれば、コース上の位置や車の向き、速度などの絶対的な情報である。なお、ここで絶対的な情報とするのは、無線環境における通信の信頼性が高くないためであり、十分な信頼性が確保できるのであれば、過去と現在との差分情報を知ることができればよい。
【0043】
図1の通信システム1において、各携帯型ゲーム機30は、アプリケーションをそれぞれ独立して非同期に実行している。なお、低遅延が要求されないゲームアプリケーションにおいては、1フィールドごとのデータアップデートができない場合であっても再送処理を行えばよいため、アプリケーションの処理に大きな影響を与える虞は少ない。
【0044】
以上の事情に鑑み、レイテンシ判定部56は、インタフェース部50bを介してアプリケーション処理部18において処理されるゲームの進行を監視し、通信に要求されるレイテンシの程度を判定する。以上は、無線コントローラ25において要求されるレイテンシについてであるが、携帯型ゲーム機30についても同様であり、レイテンシ判定部56は、インタフェース部50aを介して携帯型ゲーム機30におけるゲームの進行を監視し、携帯型ゲーム機30において要求されるレイテンシの程度を判定する。レイテンシ判定部56は、判定したレイテンシの程度を通信タイミング設定部58に伝達する。以下、無線コントローラ25において要求されるレイテンシの程度について検討する。
【0045】
通信タイミング設定部58は、無線コントローラ25において低遅延が要求される場合、第1無線通信モジュール12の通信周期を短く設定する。既述したように、第1無線通信モジュール12の通信周期は、基準通信周期(11.25m秒)の整数倍に設定され、したがって、通信周期は、最短の基準通信周期(=11.25m秒×1)に設定される。一方、無線コントローラ25において低遅延が要求されない場合、すなわちゲーム進行に求められるリアルタイム性の要求が低い場合、通信周期は、基準通信周期のP倍(Pは2以上の整数)に設定されてもよい。リアルタイム性の要求が低い場合には、第1無線通信モジュール12の通信周期を長く設定することで、無線コントローラ25の電力消費を抑えることができる。通信タイミング設定部58は、第1無線通信モジュール12の通信周期と第2無線通信モジュール14の通信周期とを同一に設定してもよい。これにより、両通信プロトコルによる通信の同期を容易にとることができる。通信周期を長くすると、通信周期における通信禁止期間を除く時間を長くとることができるため、たとえば、第2無線通信モジュール14が、携帯型ゲーム機30に対してビデオデータを送信することも可能となる。このように、1通信周期において、第1無線通信モジュール12を動作状態とする時間割合を小さく設定することで、ゲーム装置10全体における通信効率を高めることが可能となる。
【0046】
図3は、図1の第1無線通信モジュール12の構成例を示す図である。第1無線通信モジュール12は、第1パラメータ処理部44と、第1送受信部46と、動作状態通知部48と、同期信号通知部62とを含む。第1送受信部46は、1つないしは複数の無線コントローラ25からゲームアプリケーションに関する操作入力を受信して、第1パラメータ処理部44に通知する。第1パラメータ処理部44は、制御部16に、通信もしくはゲームに参加しているコントローラの台数や、コントローラからの指示などを供給する。また第1パラメータ処理部44は、制御部16を介してアプリケーション処理部18に、ゲームアプリケーションに関する操作入力を供給する。図1のアプリケーション処理部18は、受信した操作入力をもとに、ゲームアプリケーションを実行する。図1の出力部20は、ディスプレイやスピーカなどで構成され、アプリケーション処理部18による処理結果が出力される。動作状態通知部48は、第1無線通信モジュール12における通信実行状態を示すBT_Activeを第2無線通信モジュール14に送信する。BT_Activeは、パルス信号であり、Highの状態において、第2無線通信モジュール14に対し、通信を強制的に停止させるための信号である。同期信号通知部62は、BT_Syncを第2無線通信モジュール14に送信する。BT_Syncは、第1無線通信モジュール12の通信周期の開始タイミングを示すパルス情報である。ここで、BT_Syncは、通信周期の先頭のタイミングより所定の期間だけ前のタイミングにおいて立ち上がってもよい。なお、周期的通信モードにおいては、BT_Syncのみが第2無線通信モジュール14において考慮される。
【0047】
図4は、図1の第2無線通信モジュール14の構成例を示す図である。第2無線通信モジュール14は、第2パラメータ処理部40と第2送受信部42とを含む。第2送受信部42は、1つないしは複数の携帯型ゲーム機30から、それぞれのステータス情報を受信する。また、第2送受信部42は、制御部16からの情報をWLANに参加している携帯型ゲーム機30に転送する。これにより、ゲーム装置10では、他の携帯型ゲーム機30におけるステータス情報が反映されたゲームアプリケーションが実行されることになり、複数のユーザが各々の携帯型ゲーム機30で同時にゲームを楽しむことができる。なお、携帯型ゲーム機30がゲームコントローラとして使用される場合、第2無線通信モジュール14の第2パラメータ処理部40は、第1無線通信モジュール12の第1パラメータ処理部44と同様に、携帯型ゲーム機30からの操作入力を制御部16を介してアプリケーション処理部18に供給する。さらに携帯型ゲーム機30が動画受信用の端末として使用される場合、第2送受信部42は、携帯型ゲーム機30に対して動画データを配信する。また、第2送受信部42は、PC32との間でも、動画などのデータの送受信を実行する。
【0048】
ここで、周期的通信モードにおける動作について、詳細に説明する。図5(a)〜(d)は、周期的通信モードが選択されているときの通信状況の例を示すタイミングチャートである。図5(a)は、第1無線通信モジュール12と無線コントローラ25との通信状況を示す図である。図5(b)は、第2無線通信モジュール14の通信状況を示す図である。図5(c)は、第2無線通信モジュール14とその管理下にある携帯型ゲーム機30/PC32との間における通信を禁止すべき期間を示す図である。図5(d)は、第1無線通信モジュール12が第2無線通信モジュール14に対して送信するBT_Syncの送信状況の例を示す図である。図5(a)〜(d)に示すタイミングチャートでは、第1無線通信モジュール12および第2無線通信モジュール14の通信周期は、基準通信周期の1倍に設定されているものとする。また、図5(a)〜(d)に示す横軸は、時間軸tを示す。なお、第1無線通信モジュール12および第2無線通信モジュール14のそれぞれの通信開始時刻は、それぞれの通信周期の開始時刻と同一である。したがって、それぞれの通信周期の開始とともに、各通信モジュールにおける通信が開始されることになる。
【0049】
また、図5(a)〜(d)に示すタイミングチャートでは、制御部16が第2無線通信モジュール14に対して設定する「モード情報」は、周期的通信モードとする。また、「通信周期」は、基準通信周期の1倍として設定される。図5(a)〜(d)において、第1無線通信モジュール12の通信周期は、tからt、tからt、・・・となる。また、「通信禁止期間」として、tからt(第1通信禁止期間100)、t1ー3からt(第2通信禁止期間300および第1通信禁止期間400)、tからt(第1通信禁止期間600)が設定される。第2無線通信モジュール14は、制御部16から通信された第1通信禁止期間100、第2通信禁止期間300、第1通信禁止期間400、および、第1通信禁止期間600を含む通信禁止期間において、第1無線通信モジュール12から通知されたBT_Syncをもとに、自律的に、自らの通信の実行を停止する。さらに、第2無線通信モジュール14は、配下にある携帯型ゲーム機30、PC32に対し、CTSを送信することによって、第2無線通信モジュール14に対する通信の実行を停止させる。これにより、通信禁止期間において、第1無線通信モジュール12の通信の実行が確保される。ここで、第2無線通信モジュール14が通信を実行できる期間、たとえば、tからt1−3までの期間を非防護通信期間(Unprotected (Page Scan) Interval)と呼ぶ。非防護通信期間200もしくは非防護通信期間500においては、第1無線通信モジュール12における通信が防護されておらず、新たに参加する無線コントローラ25を探索するためのページスキャンを実行したとしても、第2無線通信モジュール14における通信が存在するため、成功しない場合が多い。また、第1無線通信モジュール12の1通信周期内の後半において通信禁止期間として第2通信禁止期間が存在する場合、たとえば、t1−3からtまでの期間(第2通信禁止期間300)を特に、防護通信期間(Protected (Page Scan) Interval)と呼ぶ。また、「通信禁止期間に関する周期」は、奇数、たとえば3として設定されるものとした。すなわち、通信周期の3回に1回の割合で防護通信期間が設定されることとなる。具体的には、通信周期tからtにおいては、t1ー3からtの期間を防護通信期間、すなわち、第2通信禁止期間300として設定されることになる。一方、通信周期tからtにおいては、防護通信期間は設定されない。
【0050】
まず、時間tにおいて、第1無線通信モジュール12が3台の無線コントローラ25との間で通信を開始する。第1無線通信モジュール12と無線コントローラ25との間の通信はバースト的に実施され、短時間で終了することが好ましい。第1無線通信モジュール12は、3台の無線コントローラ25のそれぞれに対して順にポーリングを行い、その都度、無線コントローラ25からのデータを受信する。なお、第1無線通信モジュール12の台数はあくまでも例であり、第1無線通信モジュール12は、1台から7台までの無線コントローラ25を管理することができる。
【0051】
第1無線通信モジュール12は、第2無線通信モジュール14に対して、時間tで通信を開始することを通知する。すなわち、第1無線通信モジュール12は、通信タイミング設定部58よりBT_Syncを通知する。これにより、第2無線通信モジュール14は、通信を開始する時刻、すなわちターゲットビーコン送信時刻(Target Beacon Transmission Time:TBTT)を知ることができ、準自律的に動作できる。この例では、通信禁止期間が、t〜tに設定されている。なお、t−tおよびt−tの第1通信禁止期間をt〜tと同一の長さとしてもよい。第1無線通信モジュール12は、各通信周期の開始タイミングから第1通信禁止期間の終了時まで、第2無線通信モジュール14、すなわち、WLAN接続による通信に影響されることなく、無線コントローラ25との間で通信を実行できる。なお、図5(a)に図示するように、第1通信禁止期間以外であっても、第1無線通信モジュール12は、ページスキャンを実行してもよい。そうすることにより、たとえば、第2無線通信モジュール14が通信を実行していないt’〜t1−1までの区間において、無線コントローラ25との間における通信が実行できるからである。いいかえると、第1無線通信モジュール12は、いかなる期間であっても、無線コントローラ25との間における通信の実行を試行することによって、ゲーム装置10を使用するユーザに対し、より快適性を提供している。
【0052】
第2無線通信モジュール14は、第1無線通信モジュール12からBT_Syncの通知と、制御部16から通信禁止期間の通知とを受けると、時間tから時間tまでの第1通信禁止期間を待機し、時間tからバックオフと呼ばれるランダムな待機時間だけさらに待機した後、ビーコン信号を送信する。なお、通信の開始時刻は、通知時刻からの相対的な時間として表現されてもよい。待機は、第2無線通信モジュール14は、管理下にある携帯型ゲーム機30、PC32に対し、CTSを通知することで実現される。CTSパケットは、少なくとも通信を停止すべきタイミング、および、期間を含む。CTSパケットが通知された携帯型ゲーム機30は、通信を停止すべきタイミングが終了するまで、通信を停止する。また、第2無線通信モジュール14自らも、自律的に通信の実行を停止する。
【0053】
第1通信禁止期間経過後(t、t、t)、第2無線通信モジュール14は、制御部16によって設定された通信禁止期間以外の期間において、通信を実行すべき優先度の高い通信相手との間の通信を実行した後に、優先度の高い通信相手以外の通信相手との通信を実行する。「通信を実行すべき優先度の高い通信相手」とは、携帯型ゲーム機30などの通信装置を含む。したがって、CTSにより通信禁止期間が長く設定されている場合、すなわち、防護通信期間が設定されている場合は、PC32などとの間における通信の時間が短くなることとなる。しかし、携帯型ゲーム機30などと比べ、PC32とのは即時応答性の要求の度合いが小さい場合が多いため、実用上の動作として問題が発生することはない。
【0054】
具体的には、第2無線通信モジュール14は、まず、優先度の高いと考えられる、ゲーム装置10に指示を与えるコントローラとなるべき携帯型ゲーム機30との間で通信を実行するために、ビーコン信号を送信する。第2無線通信モジュール14の管理下にある携帯型ゲーム機30は、ビーコン信号を受信すると、それぞれのゲームのステータス情報を送信する。図5(b)においては、第2無線通信モジュール14は、t1−1まで、携帯型ゲーム機30との間で通信を実行できる。さらに、第2無線通信モジュール14は、t1−1からt1−2 までの期間において、PC32との間で通信を実行できる。さらに、図5(c)に図示するように、防護通信期間が開始するタイミングt1−3までに、第2無線通信モジュール14は、管理下にある携帯型ゲーム機30、PC32に対し、CTSを通知する。この場合におけるCTSは、第2通信禁止期間300と、第2通信禁止期間300に続いて存在すべき次の通信周期に係る第1通信禁止期間400の双方における通信禁止期間を含む情報となる。このCTSの通知により、次の通信周期に係る400においても、第2通信禁止期間300に引き続いて、第1無線通信モジュール12における通信の実行が確保される。
【0055】
なお、第2無線通信モジュール14は、制御部16によって設定された通信禁止期間の開始タイミング以前に、当該第2無線通信モジュール14との間で通信を実行している携帯型ゲーム機30などの通信相手に対し、CTSのかわりに、当該通信の禁止を要求する信号(NAV(ネットワークアロケーションベクトル))を送信してもよい。これにより、携帯型ゲーム機30などからの送信信号により、第1無線通信モジュール12における通信が妨害されることを防ぐことができる。例えばNAVにより、通信を制限する機器を特定できるのであれば、NAVによりPC32の通信を制限する期間を、第1通信期間と第2通信期間の和に設定してもよい。これにより、PC32が、第1無線通信モジュール12と無線コントローラ25との通信、および第2無線通信モジュール14と携帯型ゲーム機30との通信に干渉する事態を回避でき、通信システム1における通信をより安定化させることが可能となる。
【0056】
上記した実施形態では、通信タイミング設定部58が、第1無線通信モジュール12の通信負荷の監視結果をもとに、第1無線通信モジュール12の通信開始時刻から第2無線通信モジュール14の通信開始時刻までの第1通信禁止期間を設定した。共通の通信周期が設定される場合、この第1通信禁止期間は、第1無線通信モジュール12の通信開始時刻から第2無線通信モジュール14の通信開始時刻までのオフセット時間に相当する。別の例では、通信タイミング設定部58が、第2無線通信モジュール14の通信負荷の監視結果をもとに、第2無線通信モジュール14の通信開始時刻から第1無線通信モジュール12の通信開始時刻までの第1通信禁止期間を設定することも可能である。例えば、第2無線通信モジュール14の通信実行中に、第1無線通信モジュール12の通信が開始する場合、第2無線通信モジュール14の通信開始時刻を基準とした第1通信禁止期間を設定してもよい。なお、この場合であっても、後述するように、第1無線通信モジュール12の通信開始時刻を基準とした第1通信禁止期間を設定することで、正確な時間管理を容易にすることが可能となる。
【0057】
なお、第1無線通信モジュール12および第2無線通信モジュール14は、共通のクロックで動作してもよい。例えば、クロックは制御部16におけるクロック部60よりそれぞれの通信モジュールに供給されてもよく、第1無線通信モジュール12ないしは第2無線通信モジュール14の一方で使用するクロックを、他方に供給してもよい。第1無線通信モジュール12または第2無線通信モジュール14で高速クロックが採用されている場合には、それを利用することが好ましい。なお、第1無線通信モジュール12は無線コントローラ25との間で正確な時間管理の下でデータをバースト的に送受信できるため、第1無線通信モジュール12の通信の時間管理は比較的容易である。そのため、第1無線通信モジュール12で使用するクロックを、第2無線通信モジュール14に供給することで、第1無線通信モジュール12および第2無線通信モジュール14の間でクロックを共通化することが好ましい。また、第1無線通信モジュール12および第2無線通信モジュール14が一体として構成されている場合には、共通に設けられたクロック部からクロックが供給されてもよい。クロックを共通とすることで、両者の同期をとることが容易となる。
【0058】
本実施形態において、第1無線通信モジュール12および第2無線通信モジュール14の通信周期がそれぞれ基準通信周期の整数倍に設定されているため、第1無線通信モジュール12の通信開始時刻から第2無線通信モジュール14の通信開始時刻までの第1通信禁止時間は固定とすることができる。制御部16は、通信開始時にオフセット時間を一回だけ第2無線通信モジュール14に伝達すればよく、その後は、それぞれの通信モジュールが、共通クロックを使用して、それぞれに設定された通信周期をもとに、相互干渉することなく安定した通信を実行することができる。
【0059】
なお、第1無線通信モジュール12および第2無線通信モジュール14は、それぞれ独自のクロックで動作してもよい。例えば、第1無線通信モジュール12および第2無線通信モジュール14が異なる製造メーカによって作製される場合、それぞれの通信モジュールは独自のクロックで動作するため、完全な同期をとることは困難となる。そのため、第1無線通信モジュール12は、定期的に第1無線通信モジュール12の通信の開始時刻を第2無線通信モジュール14に伝達し、同期合わせを実行するようにしてもよい。それぞれが独自クロックを採用する場合であっても、実際のずれは極めて小さいため、定期的に第2無線通信モジュール14の動作タイミングを調整することで、第1無線通信モジュール12の第1通信期間と第2無線通信モジュール14の第2通信期間とが重ならない状態を維持できる。
【0060】
既述したように、第1通信禁止期間は、第1無線通信モジュール12における通信が全て完了する時間に応じて設定される。第1無線通信モジュール12はBluetoothプロトコルによる通信を実施するため、CSMA/CA方式を採用するIEEE802.11プロトコルと比較すると、通信をバースト的に実行しやすい。第1無線通信モジュール12の通信の開始時刻を基準として第1通信禁止期間を設定することで、第1無線通信モジュール12の通信の終了時刻と第2無線通信モジュール14の通信の開始時刻の間の空き時間を減らすことができる。図5(a)〜(d)に示す例では、第1無線通信モジュール12における通信完了後、第2無線通信モジュール14にてビーコンを送信する時刻まで、若干の時間的余裕をとっているが、第1無線通信モジュール12の通信開始から終了までの時間と第1通信禁止期間とを等しく設定することで、第1無線通信モジュール12の通信完了直後に第2無線通信モジュール14の通信周期を開始して、第2無線通信モジュール14からビーコン信号を送信させることも可能である。一方で、通信タイミング設定部58は、第1無線通信モジュール12における通信が全て完了する時間に、第1無線通信モジュール12との間で新たな無線接続を確立する無線コントローラ25を探索するための時間を加えて、第1通信禁止期間を設定してもよい。なお、この探索時間は、第1通信禁止期間に常に含められてもよく、また探索する頻度を減らす場合には、探索時間が、第1通信禁止期間に定期的に含められるようにしてもよい。
【0061】
なお、通信システム1では動的な無線ネットワークが構築されているため、第2通信禁止期間において、例えば新たな無線コントローラ25がピコネットに参加するだけでなく、また既参加の無線コントローラ25がピコネットから脱退することもできる。制御部16において、通信負荷監視部54は、無線コントローラ25の台数の増減を監視し、通信タイミング設定部58は、その監視結果に合わせて、第1通信禁止時間および/または通信周期を再設定してもよい。なお、新たな携帯型ゲーム機30が無線LANに新たに参加する場合や、既参加の携帯型ゲーム機30が無線LANから脱退する場合も同様であり、通信タイミング設定部58は、通信負荷監視部54による通信負荷の監視結果に応じて、通信周期を再設定してもよい。
【0062】
図6(a)、(b)は、本実施形態のゲーム装置において、周期的通信モードが選択されている場合の通信状況の変形例を示すタイミングチャートである。図6(a)は、第1無線通信モジュール12と無線コントローラ25との通信状況を示し、図6(b)は、第2無線通信モジュール14と携帯型ゲーム機30との通信状況を示す。図6(a)、(b)では、第2無線通信モジュール14とPC32との通信状況の図示は省略する。また、図5と同様に、防護通信期間を設けても良い。
【0063】
図6(a)、(b)に示すタイミングチャートでは、第1無線通信モジュール12および第2無線通信モジュール14の通信周期が、基準通信周期の2倍に設定されている。これは、第1無線通信モジュール12において低遅延が要求されない場合のタイミングチャートであり、第2無線通信モジュール14と携帯型ゲーム機30との間で、大きなデータを送信する場合を想定している。図6に示すように、第1無線通信モジュール12および第2無線通信モジュール14の通信周期を長く且つ等しく設定する場合には、第2無線通信モジュール14の第2通信期間を長く設定することが可能となる。この第2通信期間中、第2無線通信モジュール14によるポーリングを用いた集中制御により、品質を保証するHCCA(Hybrid Coordination Function Controlled Channel Access)が実行されてもよい。
【0064】
HCCAでは、第2無線通信モジュール14が、携帯型ゲーム機30の優先度を考慮したスケジューリングを行い、送信を許可するチャネル使用時間が記述されたポーリングフレームを送信する。送信を許可された携帯型ゲーム機30の送信中、他の携帯型ゲーム機30はアクセスを抑制され、QoSを保証することが可能となる。
【0065】
以上は、無線コントローラ25の通信に低遅延が要求されない場合であるが、携帯型ゲーム機30の通信に低遅延が要求されない場合にも、第2無線通信モジュール14の通信周期を長く設定すればよい。例えば、無線コントローラ25の通信に低遅延が要求され、一方で携帯型ゲーム機30の通信に低遅延が要求されない場合、第1無線通信モジュール12の通信周期は基準通信周期に設定され、第2無線通信モジュール14の通信周期は基準通信周期の2倍以上に設定される。通信周期に対する通信期間の比を小さくすることで、無線コントローラ25および携帯型ゲーム機30の消費電力を抑制できる。
【0066】
図7(a)、(b)は、本実施形態のゲーム装置において、非周期的通信モードが選択されている場合の通信状況の例を示すタイミングチャートである。図7(a)は、第1無線通信モジュール12と無線コントローラ25との通信状況を示す図である。また、図7(b)は、第2無線通信モジュール14における通信が禁止される区間の例を示す図である。図7(a)、(b)では、第2無線通信モジュール14とPC32との通信状況の図示は省略する。
【0067】
ここで、非周期通信モード(NonPeriodic Mode)とは、WLAN通信とBlueTooth通信による相互干渉を回避するためのモードの一態様であって、第1無線通信モジュール12に非周期で通信を実行させるモードである。非周期通信モードは、主に、BlueTooth接続により音声通信を実行する場合に用いられる。BlueTooth接続による音声通信は、非周期で実行されるため、周期的に制御することが困難なためである。また、非周期通信モードは、ゲーム装置10のゲームアプリケーション機能が起動されていない状態において、ユーザがPC32を使用する場合において使用されてもよい。すなわち、通常は、第2無線通信モジュール14におけるWLANプロトコルのみが実行され、必要に応じてBluetoothプロトコルが実行される。事前に、ユーザが音声通信を実行すること、ユーザがゲームを開始する場合に無線コントローラ25などを操作する事態などの予測は困難なためである。したがって、必要に応じて、無線コントローラ25との通信を第1無線通信モジュール12が実行するとともに、無線コントローラ25が通信を実行している間、第2無線通信モジュール14は、第1無線通信モジュール12の通信状況を考慮して、準自律的にPC32との通信を一時的に停止する。
【0068】
具体的には、第1無線通信モジュール12が無線コントローラ25との間で通信を実行する場合、第1無線通信モジュール12は、事前に、第2無線通信モジュール14に対し、BT_Syncではなく、通信開始要求に係る信号(以下、「BT_Active」と表記する。)を送る。第2無線通信モジュール14は、BT_ActiveがHighの状態にある間、通信の実行を停止すればよい。また、上述の処理は、制御部16を介して実行されてもよい。このように、第2無線通信モジュール14が第1無線通信モジュール12の通信状態を考慮し、通信の実行の可否を判断することによって、混信することなく双方の通信を実行できる。また、これにより、第1無線通信モジュール12における通信時間を確実に確保できる。また、第2無線通信モジュール14は、第1無線通信モジュール12が通信を実行していない間は、自由に通信を実行できる。したがって、システム全体としてのスループットが向上できる。
【0069】
ここで、非周期通信モードが選択されている場合、第1無線通信モジュール12は、非周期で通信を実行するため、第2無線通信モジュール14における通信を適切に回避する必要がある。このため、第1無線通信モジュール12は、通信を開始するのに先立ち、当該第1無線通信モジュール12が通信を実行している期間を少なくとも含む所定の期間において、第2無線通信モジュール14に対し、通信の実行を禁止させるための信号を通知する。この通知は、図7(a)に図示するように、tからtの区間においてされる。第1無線通信モジュール12が適切に通信の開始、終了を実行するための猶予期間として、tlead、ttailの区間を設けてもよい。また、この通知は、制御部16を介して実行されてもよい。また、制御部16が第1無線通信モジュール12と第2無線通信モジュール14の双方に対して実行してもよい。いずれの場合においても、第2無線通信モジュール14は、図7(b)に図示するパルスの立ち上がり区間において通信を停止する。このように、第2無線通信モジュール14が第1無線通信モジュール12の通信状態を考慮して通信の実行の可否を判断することによって、混信することなく双方の通信を実行できる。
【0070】
なお、制御部16は、第1無線通信モジュール12および第2無線通信モジュール14における通信機能を管理する際に、WLAN通信とBlueTooth通信による相互干渉を回避するための複数のモードから選択した1のモードに応じて、第1無線通信モジュール12と第2無線通信モジュール14とを管理してもよい。WLAN通信とBlueTooth通信による相互干渉を回避するための複数のモードは、少なくとも、周期的通信モード(Periodic Mode)、非周期通信モード(Non Periodic Mode)、常時通信モード(Free Run Mode)、通信禁止モード(Full Time Surpression Mode)とを含んでもよい。ここで、常時通信モードとは、第2無線通信モジュール14が、第1無線通信モジュール12と事前に交渉することなく、常時、通信の実行をするモードである。このモードにおいては、前述したAFHを実行することにより、第1無線通信モジュール12も通信を実行できる場合がある。また、通信禁止モードとは、第2無線通信モジュール14に対し、制御部16が強制的に通信の実行を禁止することによって、常に第1無線通信モジュール12における通信の実行を確保するためのモードである。通信禁止モードは、主に、BlueToothプロトコルが無線コントローラ25との間で通信の実行を開始する際の通信確立のための交渉時間において使用されるモードである。この場合、WLANプロトコルにおける通信の実行は完全に停止されることとなる。なお、第2無線通信モジュール14における通信の実行が禁止される場合、第2無線通信モジュール14の配下にある携帯型ゲーム機30、PC32も同様に通信の実行が禁止されることは言うまでもない。
【0071】
以上、本発明を実施形態をもとに説明した。これらの実施形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。図1において、第1無線通信モジュール12および第2無線通信モジュール14が、それぞれアンテナを有しているが、アンテナは共用されてもよい。第1無線通信モジュール12の通信期間と第2無線通信モジュール14の通信期間とが互いに重ならないように割り当てられるため、アンテナの共用化が可能である。
【0072】
上述において、図1に示す通信システム1では、携帯型ゲーム機30が、IEEE802.11プロトコルを利用して第2無線通信モジュール14と通信するとして説明したが、携帯型ゲーム機30がさらにBluetoothマスタとして機能して、他のBluetooth通信端末と通信してもよい。このとき、携帯型ゲーム機30は、ゲーム装置10と同様の通信機能を備えてもよく、Bluetooth通信端末との間では、第1無線通信モジュール12と無線コントローラ25との間に割り当てられる通信期間中に通信を行えばよい。
【0073】
なお、本実施形態では、基準通信周期を、動画のフレームレート(1/60秒)よりも短い11.25m秒に設定している。第1無線通信モジュール12は、この基準通信周期の整数倍の通信周期で、無線コントローラ25や携帯型ゲーム機30などのゲームコントローラからユーザの操作入力を受信する。制御部16は、第1無線通信モジュール12にて受け取った入力信号をバッファメモリ(図示せず)に順次記憶してもよい。制御部16は、動画のフレームレートの周期で、メモリに記憶された入力信号を、アプリケーション処理部18に読み出してもよい。
【0074】
通信周期が11.25m秒である場合、制御部16は、フレームレートの期間(1/60秒)の間に、同一のゲームコントローラから入力信号を2回受け取る場合がある。このとき、制御部16は、受け取った最新の入力信号のみを、アプリケーション処理部18に読み出してもよい。この場合、制御部16のバッファメモリは、オーバライト型メモリとして構成され、第1無線通信モジュール12にて受け取った入力信号が順次上書きされる。これにより、バッファメモリには、最新の入力信号が記憶されることになる。
【0075】
また、制御部16は、メモリに記憶された2つの入力信号の和をとって、アプリケーション処理部18に読み出してもよい。例えば、最初の入力信号がキャラクタを右に動かす指示信号であり、次の入力信号がキャラクタを右に動かす指示信号である場合、制御部16は、キャラクタを右に2回動かす指示信号をアプリケーション処理部18に供給する。また、例えば、最初の入力信号がキャラクタを右に動かす指示信号であり、次の入力信号がキャラクタを上に動かす指示信号である場合、制御部16は、キャラクタを右に1回、上に1回動かす指示信号をアプリケーション処理部18に供給する。本実施形態の通信システム1では、通信周期とフレームレートとが非同期であるが、制御部16が、上記のように入力信号を処理することで、ユーザからの操作入力をゲームアプリケーションに適切に反映することが可能となる。以上、第1無線通信モジュール12にて受信した入力信号の処理に関して説明したが、第2無線通信モジュール14において受信した入力信号についても、制御部16は同様の処理を実行する。
【0076】
また、ゲーム装置10から、ゲームコントローラに情報を送信することも可能である。一例として、ゲームの進行状況に応じて、ゲームコントローラを振動させる制御情報を送信することが考えられる。このとき、無線コントローラ25、携帯型ゲーム機30に対しては、振動させるための制御情報を、振動させたい期間、常に送信することが好ましい。また、有線通信にてゲーム装置10を制御する有線コントローラを設け、振動を開始するときに、振動を開始させるための制御情報を送信し、振動を停止するときに、振動を停止させるための制御情報を送信してもよい。有線通信では、情報伝送の高い安定性が期待できるため、制御情報を送信する回数を減らすことにより、制御部16の負荷を軽減することが可能となる。
【0077】
本発明について、特定の実施例に関して記載した。これらの実施例は、本発明の目的および応用例を単に示したものにすぎないと理解される。したがって、多数の改良は、実施例から導出され、また、他の変形技術は、請求項によって定義された本発明の思想や範囲から逸脱することなく発明された発明と理解される。
【符号の説明】
【0078】
10 ゲーム装置、 12 第1無線通信モジュール、 14 第2無線通信モジュール、 16 制御部、 18 アプリケーション処理部、 20 出力部、 25 無線コントローラ、 25a 無線コントローラ、 28 携帯型ゲーム機、 30 携帯型ゲーム機、 30a 携帯型ゲーム機、 32 PC、 32 パーソナルコンピュータ、 35 無線コントローラ、 38 有線コントローラ、 40 第2パラメータ処理部、 42 第2送受信部、 44 第1パラメータ処理部、 46 第1送受信部、 48 動作状態通知部、 50 インタフェース部、 50a インタフェース部、 50b インタフェース部、 52 データ転送部、 54 通信負荷監視部、 56 レイテンシ判定部、 58 通信タイミング設定部、 60 クロック部、 62 同期信号通知部、 80 有線通信モジュール、 82 通信インタフェース、 84 接続端子、 86 接続端子、 90 ネットワーク、 100 第1通信禁止期間、 200 非防護通信期間、 300 第2通信禁止期間、 400 第1通信禁止期間、 500 非防護通信期間、 600 第1通信禁止期間。

【特許請求の範囲】
【請求項1】
所定の周波数帯において、第1の通信方式を用いて通信を実行する第1無線通信モジュールと、
前記所定の周波数帯において、前記第1の通信方式とは異なる第2の通信方式を用いて通信を実行する第2無線通信モジュールと、
前記第1無線通信モジュールの通信と前記第2無線通信モジュールの通信とを共通の基準通信周期にしたがって実行させる周期的通信モードと、前記第1無線通信モジュールに非周期で通信を実行させる非周期通信モードを含む複数の通信モードのうちから1の通信モードを選択する制御部と、
を備えることを特徴とする通信端末装置。
【請求項2】
前記制御部は、前記第1無線通信モジュールと前記第2無線通信モジュールに対して、通信モードを識別するモード情報を設定することを特徴とする請求項1に記載の通信端末装置。
【請求項3】
周期的通信モードにおいて、前記第1無線通信モジュールは、前記第2無線通信モジュールに対して、前記第1無線通信モジュールの通信周期の開始タイミングを通知することを特徴とする請求項1または2に記載の通信端末装置。
【請求項4】
通知された前記第1無線通信モジュールの通信周期の開始タイミングに基づいて、前記第2無線通信モジュールは、前記第2無線通信モジュールの通信禁止期間の開始タイミングを導出することを特徴とする請求項3に記載の通信端末装置。
【請求項5】
前記第1無線通信モジュールは、前記第1無線通信モジュールにおける通信実行状態を示す状態信号を、前記第2無線通信モジュールに送信することを特徴とする請求項3または4に記載の通信端末装置。
【請求項6】
非周期通信モードにおいて、状態信号が前記第1無線通信モジュールが通信を実行することを示す場合に、前記第2無線通信モジュールは、通信の実行を停止することを特徴とする請求項5に記載の通信端末装置。
【請求項7】
周期的通信モードにおいて、前記第2無線通信モジュールは、状態信号に関わらず、通知された前記第1無線通信モジュールの通信周期の開始タイミングを用いて、通信を実行することを特徴とする請求項5または6に記載の通信端末装置。
【請求項8】
周期的通信モードは、ゲームの実行中に選択される通信モードであって、非周期通信モードは、音声通信の実行中に選択される通信モードであることを特徴とする請求項1から7のいずれかに記載の通信端末装置。
【請求項9】
所定の周波数帯において、第1の通信方式を用いて通信を実行する第1無線通信モジュールの通信と、前記所定の周波数帯において前記第1の通信方式とは異なる第2の通信方式を用いて通信を実行する第2無線通信モジュールの通信とを制御する方法であって、
前記第1無線通信モジュールの通信と前記第2無線通信モジュールの通信とを共通の基準通信周期にしたがって実行させる周期的通信モードと、前記第1無線通信モジュールに非周期で通信を実行させる非周期通信モードを含む複数の通信モードのうちから1の通信モードを選択し、
選択した通信モードに応じて、前記第1無線通信モジュールと前記第2無線通信モジュールそれぞれの通信の実行を制御することを特徴とする通信制御方法。
【請求項10】
所定の周波数帯において、第1の通信方式を用いて通信を実行する第1無線通信モジュールの通信と、前記所定の周波数帯において前記第1の通信方式とは異なる第2の通信方式を用いて通信を実行する第2無線通信モジュールの通信とを制御するコンピュータに、
前記第1無線通信モジュールの通信と前記第2無線通信モジュールの通信とを共通の基準通信周期にしたがって実行させる周期的通信モードと、前記第1無線通信モジュールに非周期で通信を実行させる非周期通信モードを含む複数の通信モードのうちから1の通信モードを選択する機能と、
選択した通信モードに応じて、前記第1無線通信モジュールと前記第2無線通信モジュールそれぞれの通信の実行を制御する機能と、
を実現させるためのプログラム。
【請求項11】
請求項10に記載のプログラムを記録したコンピュータ読取可能な記録媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2012−65356(P2012−65356A)
【公開日】平成24年3月29日(2012.3.29)
【国際特許分類】
【出願番号】特願2011−262670(P2011−262670)
【出願日】平成23年11月30日(2011.11.30)
【分割の表示】特願2006−308735(P2006−308735)の分割
【原出願日】平成18年11月15日(2006.11.15)
【出願人】(310021766)株式会社ソニー・コンピュータエンタテインメント (417)
【出願人】(000002185)ソニー株式会社 (34,172)
【出願人】(593181638)ソニー エレクトロニクス インク (371)
【Fターム(参考)】