JP2011199408A - 通信装置、通信制御プログラム、通信制御方法、および通信システム - Google Patents

通信装置、通信制御プログラム、通信制御方法、および通信システム Download PDF

Info

Publication number
JP2011199408A
JP2011199408A JP2010061511A JP2010061511A JP2011199408A JP 2011199408 A JP2011199408 A JP 2011199408A JP 2010061511 A JP2010061511 A JP 2010061511A JP 2010061511 A JP2010061511 A JP 2010061511A JP 2011199408 A JP2011199408 A JP 2011199408A
Authority
JP
Japan
Prior art keywords
connection
information
stored
target device
storage unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2010061511A
Other languages
English (en)
Other versions
JP5498212B2 (ja
Inventor
Takahiro Yamaguchi
貴弘 山口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nintendo Co Ltd
Original Assignee
Nintendo Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nintendo Co Ltd filed Critical Nintendo Co Ltd
Priority to JP2010061511A priority Critical patent/JP5498212B2/ja
Priority to EP10164575.2A priority patent/EP2367383B1/en
Priority to US12/791,214 priority patent/US8745248B2/en
Publication of JP2011199408A publication Critical patent/JP2011199408A/ja
Priority to US14/260,538 priority patent/US9124604B2/en
Application granted granted Critical
Publication of JP5498212B2 publication Critical patent/JP5498212B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W48/00Access restriction; Network selection; Access point selection
    • H04W48/20Selecting an access point

Abstract

【課題】無線通信において他の接続対象装置との接続に要する時間を低減することを可能にする通信装置を提供すること。
【解決手段】第1判別手段は、接続確立のための指示が発行された際に、所定の接続対象装置を一意に特定可能な情報である接続対象装置特定情報を含む接続情報が第1記憶部に保存されているか否かを判別する。第1接続手段は、第1判別手段によって接続情報が第1記憶部に保存されていると判別されたときに、第1記憶部に保存されている接続対象装置特定情報に基づいて特定した接続対象装置に対して無線通信による接続を確立するための処理を行う。
【選択図】図10

Description

本発明は、接続対象装置と無線通信を行う通信装置やその制御プログラム、制御方法に関し、より特定的には、接続対象装置との接続確立にかかる制御処理や制御方法に関する。
近年、ノートPCや携帯ゲーム機などの端末において、IEEE802.11規格などの無線LANを用いる通信が浸透している。その際に、接続対象のアクセスポイントや相手端末など他の局を探索する機能が必須である。一般的に、ノートPCや携帯ゲーム機等のクライアント端末は、接続対象と同じESSID(Extended Service Set Identifier)を設定しておき、同じESSIDをもつ接続対象の局を、例えば非特許文献1に説明されるようなパッシブスキャンまたはアクティブスキャンを行って探索する。
パッシブスキャンは、無線LANで用いられる各周波数帯(チャネル)について、他の局から送信される信号(ビーコン)を監視(サーチ)する。この信号は各局から一定間隔でブロードキャスト送信されており、ESSIDや、局に固有の識別子であるBSSID(Basic Service Set Identifier)を含む。なお、通常BSSIDは各局のMACアドレスと同一である。当該信号を受信したクライアント端末は、自身に設定されているESSIDと、当該信号に含まれるESSIDが一致するか否かを判断する。一致した場合、当該信号を受信したチャネルを用いて、当該信号に含まれるBSSIDを接続先として接続要求を送信し、信号を送信した局と接続を確立する。
一方、アクティブスキャンは、クライアント端末側で、自身のクライアント端末に設定されているESSIDを含む信号(プローブ要求)をそれぞれのチャネルにおいてブロードキャスト送信した後、それぞれのチャネルにおいて他の局からの応答を待つ。各局は当該信号を受信した場合、当該信号に含まれるESSIDが自身に設定されているESSIDと一致するか判断する。一致した場合、自身のBSSIDを含む信号(プローブ応答)をクライアント端末に送信する。それを受信したクライアント端末は、この信号を受信したチャネルにて、プローブ応答に含まれるBSSIDを接続先として接続要求を送信し、プローブ応答を送信した局との接続を確立する。
守倉正博/久保田周治監修、「改訂版 802.11高速無線LAN教科書」、インプレス、2004年12月、p.105-106
しかしながら、上述したような接続確立手法においては、上記のパッシブスキャン、アクティブスキャンのいずれの方法を用いて局の探索を行ったとしても、端末は、各チャネルについて、各局からの信号を待機する時間が必要になり、多くの時間がかかってしまう場合がある。たとえば13個のチャネルについて他の局からのビーコンまたはプローブ応答を待機する場合、1チャネルにつき少なくとも100msの待機時間が必要であるとすると、スキャンが完了し接続に必要な情報を得るまでには1.3秒ほどの時間を要してしまう。また、リトライ等の処理を含めると、さらに時間を要する。このようなスキャン方法は、公衆無線LANサービス等の、ESSIDは同じであるが、各APにおけるBSSIDや通信チャネルはそれぞれ異なるような通信環境を対象とすれば有用ではあるが、例えば家庭内(ホームネットワーク上)等の、常に同一のアクセスポイントにしか接続しないような場合は、接続対象のBSSIDや使用するチャネルが変化する可能性は乏しく、上記のような13個全てのチャネルを毎回スキャンする必要性も乏しい。そのため、家庭内に設置したアクセスポイントに接続することが多いような利用者にとっては、上記のような待機時間はストレスを感じさせるものとなってしまうことがある。
それ故に、本発明の目的は、無線通信において他の接続対象装置との接続に要する時間を低減することを可能にする通信装置を提供することである。
本発明は、上記の課題を解決するために、以下の構成を採用した。
第1の発明は、接続対象装置と無線通信を行う通信装置であって、第1記憶部と、第1判別手段と、第1接続手段とを備える。第1判別手段は、接続確立のための指示が発行された際に、所定の接続対象装置を一意に特定可能な情報である接続対象装置特定情報を含む接続情報が第1記憶部に保存されているか否かを判別する。第1接続手段は、第1判別手段によって接続情報が第1記憶部に保存されていると判別されたときに、第1記憶部に保存されている接続対象装置特定情報に基づいて特定した接続対象装置に対して無線通信による接続を確立するための処理を行う。
第1の発明によれば、通信装置と接続対象装置との接続確立にかかる時間を軽減することが可能となる。
第2の発明は、第1の発明において、前記通信装置は、検索手段と、第2接続手段と、接続情報保存手段とを更に備える。検索手段は、接続確立のための指示が発行された際に、接続可能な接続対象装置を検索し、接続情報を含む信号を受信する。ここで、当該検索の手法としては、例えば、いわゆるアクティブスキャンやパッシブスキャンが挙げられる。第2接続手段は、検索手段で検索された接続対象装置に対して、受信した信号に含まれる接続情報を用いて接続を確立するための処理を行う。接続情報保存手段は、第2接続手段によって接続が確立されたとき、当該接続に用いている接続情報を第1記憶部に保存する。そして、接続確立のための指示が発行されたとき、第1判別手段による判定の結果、接続情報が第1記憶部に保存されているときは第1接続手段による接続確立が行われ、接続情報が第1記憶部に保存されていないときは検索手段および第2接続手段による接続確立が行われる。
第2の発明によれば、接続情報が第1記憶部に記憶されていないときは、接続可能な接続対象装置を検索し、接続情報を保存する。そのため、当該接続対象装置に対する以降の接続確立にかかる時間を軽減することができる。
第3の発明は、第2の発明において、通信装置は、第1接続手段による接続が成功したか否かを判定する接続結果判定手段を更に備える。そして、接続確立のための指示が発行されたとき、第1接続手段による接続の確立が行われ、当該第1接続手段による接続が失敗したと接続結果判定手段によって判定されたときは、検索手段および第2接続手段による接続の確立が行われる。更に、接続情報保存手段は、第1接続手段による接続確立が失敗したときに行われた第2接続手段による接続確立が成功したときに、当該接続に用いた接続情報を保存する。
第3の発明によれば、保存されている接続情報を用いて接続確立できなかったときであっても、新たに接続情報を受信して保存するため、より接続の確実性を高めることができる。
第4の発明は、第2の発明において、接続情報保存手段は、第2接続手段による接続確立が成功したときに第1記憶部に保存された接続情報を当該確立した接続が切断された後も保持する。
第4の発明によれば、第2接続手段によって接続が確立したときの接続情報を当該接続の切断後も第1記憶部に保持できるため、これ以降に同じ接続先に接続する場合は、第1接続手段による速やかな接続が可能となる。
第5の発明は、第2の発明において、検索手段は、利用可能な周波数帯域の全てを対象として接続対象装置を検索する。
第5の発明によれば、利用可能な周波数帯域全てに検索をかけるため、より確実に接続対象装置を発見することが可能となる。
第6の発明は、第1の発明において、接続対象装置特定情報は、BSSIDである。
第6の発明によれば、接続対象装置の特定が容易となる。
第7の発明は、第1の発明において、第1記憶部には、複数の接続対象装置それぞれに対応する複数の接続情報が保存可能である。また、通信装置は、第1接続手段による接続確立が成功したか否かを判定する接続結果判定手段と、複数の接続対象装置への接続優先度を複数の接続情報と関連づけて設定する優先度設定手段とを更に備える。そして、第1判別手段は、接続優先度がより高く設定されている接続対象装置の接続情報が第1記憶部に保存されているか否かを判別する。判別の結果、保存されていると判別され、第1接続手段による接続の確立が試みられた結果、結果判定手段により、当該接続優先度がより高く設定されている接続対象装置への第1接続手段による接続確立が失敗したと判定されたときは、次に接続優先度が高く設定されている接続対象装置の接続情報が当該第1記憶部に保存されているか否かを判別する。
第8の発明は、第1の発明において、通信装置は、複数の接続対象装置への接続優先度を複数の接続情報と関連づけて設定する優先度設定手段を更に備える。また、第1判別手段は、接続優先度がより高く設定されている接続対象装置の接続情報が第1記憶部に保存されているか否かを判別し、接続情報が第1記憶部に保存されていないと判別されたときに、次に接続優先度が高く設定されている接続対象装置の接続情報が当該第1記憶部に保存されているか否かを判別する。
第7乃至第8の発明によれば、接続優先度の高い接続先への接続に失敗したときや、接続優先度の高い接続先の接続情報が記憶されていないときは、次順位の接続情報の有無を確認するため、接続先が複数設定されているような場合は、いずれかの接続先と接続が確立するまでの時間をより短くすることができる。
第9の発明は、第7または第8の発明において、通信装置は、複数の接続対象装置への接続優先度を変更する優先度変更手段を更に備える。
第9の発明によれば、複数の接続対象装置それぞれとの接続状況(例えば、接続頻度等)に応じて適切に接続優先度を設定可能となる。
第10の発明は、第2の発明において、通信装置は、複数の接続対象装置への接続優先度を複数の接続情報と関連づけて設定する優先度設定手段を更に備える。そして、第1判別手段は、接続優先度がより高く設定されている接続対象装置の接続情報が第1記憶部に保存されているか否かを判別する。検索手段は、第1判別手段によって、接続情報が第1記憶部に保存されていないと判別されたときに、当該接続優先度が設定されている接続対象装置を検索し、当該接続対象装置の接続情報を含む信号を受信する。そして、第2接続手段は、検索手段で検索された接続対象装置に対して接続の確立を行う。
第10の発明によれば、接続優先度がより高く設定されている接続対象装置の接続情報が保存されていなかった場合は、当該接続優先度がより高く設定されている接続対象装置の接続情報(特定情報)を検索して取得しようとする。つまり、例えば第1順位の接続対象装置の接続情報が保存されていなかった場合、第2順位の接続対象装置に接続を試みる前に、検索手段による当該第1順位の接続対象装置の検索を行うことができる。これにより、設定されている接続優先度に、より忠実に従った処理が可能となる。
第11の発明は、第2の発明において、接続情報保存手段は、第2接続手段による接続が確立したときに使用されている周波数帯域の情報を示す周波数帯域情報を前記接続情報に含めて第1記憶部に保存する。更に、第1接続手段は、保存された周波数帯域情報で示される周波数帯域を使用して、接続対象装置特定情報に基づいて特定した接続対象装置に対して接続を確立するための処理を行う。
第11の発明によれば、所定の規格の無線通信に割り当てられている周波数帯域の一部(典型的には無線チャネル)を用いて通信する場合に、一旦接続が確立すれば、それ以降の接続確立処理において、使用する周波数帯域を最初から指定した状態で接続確立処理を開始することができる。これにより、接続確立を試みる度に全周波数帯域をスキャンして、通信に使用する一部の周波数帯域を検索する場合に比べて、接続確立にかかる時間を低減することができる。
第12の発明は、第11の発明において、検索手段は、接続対象装置の属するネットワークに関する識別情報であって、接続対象装置特定情報とは異なる情報であるネットワーク識別情報および接続対象装置特定情報を少なくとも含む信号を受信する。通信装置は、第2記憶部と、第2判別手段とを更に備える。第2記憶部は、ネットワーク識別情報を保存する。第2判別手段は、検索手段が受信した信号に含まれるネットワーク識別情報と第2記憶部に保存されているネットワーク識別情報とが一致するか否かを判別する。そして、第2接続手段は、第2判別手段による判別の結果、検索手段が受信した信号に含まれるネットワーク識別情報と第2記憶部に保存されているネットワーク識別情報とが一致するときは、検索手段が信号を受信したときに用いられていた周波数帯域を指定し、当該信号に含まれていた接続対象装置特定情報で示される装置を接続先に指定した接続の確立を行う。
第12の発明によれば、ネットワーク識別情報(例えば、ESSID)が共通する接続対象装置のみを接続対象とすることができ、より効率的に接続対象装置を検索することが可能となる。
第13の発明は、第12の発明において、第1記憶部には、複数の接続対象装置それぞれに対応する複数の接続情報が保存可能である。通信装置は、複数の接続対象装置への接続優先度を複数の接続情報と関連づけて設定する優先度設定手段を更に備える。そして、第1判別手段は、接続優先度がより高く設定されている接続対象装置の接続情報が第1記憶部に保存されているか否かを判別する。第1判別手段によって、接続優先度がより高く設定されている接続対象装置の接続情報が第1記憶部に保存されていないと判別されたとき、検索手段は、所定の接続対象装置から定期的に発せられる信号であって、ネットワーク識別情報および接続対象装置特定情報を含む信号を受信する。更に、第2判別手段は、検索手段が受信した信号に含まれているネットワーク識別情報と、第2記憶部に保存されている、上記接続優先度がより高く設定された接続対象装置についてのネットワーク識別情報とが一致するか否かを判別する。そして、第2接続手段は、両者が一致すると第2判別手段によって判定されたときは、検索手段が受信した信号に含まれる接続対象特定情報で示される接続対象装置を接続先として指定して接続を行う。そして、接続情報保存手段は、第2接続手段による接続が確立したときに、検索手段が受信した信号に含まれる接続対象特定情報、および、当該接続に使用している周波数帯域を示す周波数帯域情報を当該接続が確立した接続対象装置に関する接続情報として第1記憶部に保存する。
第13の発明によれば、上記第10の発明と同様の効果を得ることができる。
第14の発明は、第13の発明において、第2判別手段は、第2接続手段による接続の確立が失敗したときは、第2記憶部に保存されているネットワーク識別情報のうち、次に接続優先度が高く設定された接続対象装置に対応するネットワーク識別情報と、受信した信号に含まれるネットワーク識別情報とが一致するか否かを判別する。
第14の発明によれば、例えば、優先度が設定された複数の接続情報が通信装置に保存されており、優先度が最も高い接続対象装置への接続が失敗したときは、次の優先度の接続対象装置への接続確立を試みることができる。これにより、接続優先度に沿って効率的に接続対象装置への接続を行うことができる。
第15の発明は、第13の発明において、第2判別手段は、第2記憶部に保存されているネットワーク識別情報のうち、次に接続優先度が高く設定された接続対象装置に対応するネットワーク識別情報と、上記受信した信号に含まれるネットワーク識別情報が一致しないと判定したときは、当該第2記憶部に保存されているネットワーク識別情報のうち、次に接続優先度が高く設定された接続対象装置についてのネットワーク識別情報と、当該受信した信号に含まれるネットワーク識別情報とが一致するか否かを判定する。
第15の発明によれば、接続優先度に沿って、効率的に接続対象装置への接続を行うことができる。
第16の発明は、第1の発明において、識別情報は、接続対象装置と無線通信を行うための周波数帯域を示す周波数帯域情報を含む。そして、通信装置は、第1記憶部に保存された周波数帯域情報で示される周波数帯域を指定して、接続対象装置を探索し、時刻同期用の情報を含む信号を当該接続対象装置から受信し、当該時刻同期用の情報に基づき当該接続対象装置との間で時刻同期を行う同期手段を更に備える。
第17の発明は、第16の発明において、同期手段は、第1接続手段による接続が開始される直前に、周波数帯域を指定して接続対象装置を探索して、時刻同期を行う。
第16乃至第17の発明によれば、接続対象装置との接続の確実性をより高めることができる。
第18の発明は、第16の発明において、通信装置は、第3記憶部と、同期済み判定手段とを更に備える。第3記憶部は、同期手段による時刻同期を行ったか否かを示す情報を記憶する。同期済み判定手段は、第1接続手段による接続が開始される前に、第3の記憶部に記憶されている時刻同期を行ったか否かを示す情報を参照し、時刻同期が既に行われたか否かを判定する。そして、同期手段は、同期済み判定手段が時刻同期はまだ行われていないと判定したときのみ、周波数帯域を指定して接続対象装置を探索して時刻同期を行い、当該時刻同期を行ったことを示す情報を第3記憶部に保存する。
第19の発明は、第16の発明において、第1接続手段による接続が成功したか否かを判定する接続結果判定手段を更に備える。そして、同期手段は、接続結果判定手段が第1接続手段による接続に失敗したと判定したときに、周波数帯域を指定して接続対象装置を探索して時刻同期を行う。
第18乃至第19の発明によれば、接続確立にかかる時間を低減しながら、接続対象装置との接続の確実性をより高めることができる。
第20の発明は、接続対象装置と無線通信を行う通信装置のコンピュータに実行させる通信制御プログラムであって、コンピュータを、第1判別手段と、第1接続手段として機能させる。第1判別手段は、接続確立のための指示が発行された際に、所定の接続対象装置を一意に特定可能な情報である接続対象装置特定情報を含む接続情報が所定の記憶媒体である第1記憶手段に保存されているか否かを判別する。第1接続手段は、第1判別手段において接続情報が第1記憶手段に保存されていると判別されたときに、接続対象装置特定情報に基づいて特定した接続対象装置に対して無線通信による接続を確立するための処理を行う。
第21の発明は、接続対象装置と無線通信を行う通信装置を制御するための通信制御方法であって、以下のようなステップを備える。まず、接続確立のための指示が発行された際に、所定の接続対象装置を一意に特定可能な情報である接続対象装置特定情報を含む接続情報が所定の記憶媒体である第1記憶手段に保存されているか否かを判別するステップを備える。次に、判別するステップにおいて接続情報が第1記憶手段に保存されていると判別されたとき、接続対象装置特定情報に基づいて特定した接続対象装置に対して無線通信による接続を確立するための処理を行うステップを備える。
第22の発明は、通信装置と接続対象装置とからなる通信システムであって、通信装置は、第1記憶部と、第1判別手段と、第1接続手段とを備える。第1判別手段は、接続対象装置との接続確立のための指示が発行された際に、当該接続対象装置を一意に特定可能な情報である接続対象装置特定情報を含む接続情報が第1記憶部に保存されているか否かを判別する。第1接続手段は、第1判別手段によって接続情報が第1記憶部に保存されていると判別されたときに、接続対象装置特定情報に基づいて特定した接続対象装置に対して無線通信による接続を確立するための処理を行う。また、接続対象装置は、接続対象装置特定情報が記憶された特定情報記憶手段を備える。
第20乃至第22の発明によれば、第1の発明と同様の効果を得ることができる。
本発明によれば、通信装置と接続対象装置との接続確立にかかる時間を軽減することが可能となる。
第1の実施形態において想定するネットワークの全体構成を示す図 ゲーム装置1の外観図 ゲーム装置1の内部構成の一例を示すブロック図 第1の実施形態における接続確立処理の概念を模式的に示した図 ゲーム装置1のメインメモリ32のメモリマップを示す図 本発明の第1の実施形態に係る接続関連処理を示すフローチャート 図6のステップS3で示した設定画面処理の詳細を示したフローチャート 設定画面の一例 設定画面の一例 図6のステップS5で示した接続確立処理の詳細を示したフローチャート 図6のステップS5で示した接続確立処理の詳細を示したフローチャート 図6のステップS5で示した接続確立処理の詳細を示したフローチャート 第2の実施形態にかかるゲーム装置1のメインメモリ32のメモリマップを示す図 第2の実施形態にかかる接続確立処理の一部を示したフローチャート 第3の実施形態にかかるゲーム装置1の内部構成の一例を示すブロック図 第3の実施形態にかかる接続確立処理の一部を示したフローチャート 第4の実施形態にかかる接続確立処理の一部を示したフローチャート
以下、本発明の実施の形態について、図面を参照して説明する。尚、この実施例により本発明が限定されるものではない。
(第1の実施形態)
図1は、第1の実施形態において想定するネットワークの全体構成を示す模式図である。第1の実施形態では、いわゆるインフラストラクチャ・モードのネットワーク構成を想定しており、通信端末1を所有する利用者が、自宅200のホームネットワーク上に設置している無線LANアクセスポイント(以下、APと呼ぶ。また、本実施形態では、当該APはルータ機能も兼ねているとする。)100と当該通信端末1とを無線通信によって接続する場合を例として説明する。また、本実施形態では、通信端末1の一例として、以下に説明するような携帯型ゲーム装置(以下、単にゲーム装置と呼ぶ)を例として説明する。また、本実施形態では、当該AP100とゲーム装置1との無線通信プロトコルについては、IEEE802.11規格に準拠のプロトコル(例えばIEEE802.11g)を用いるものとする。
なお、当該AP100には、いわゆるESSIDとBSSID、および自らが電波を発する周波数チャネルが予め設定され、当該AP100が備えている記憶媒体(例えばフラッシュメモリ等)に記憶されているものとする。
図2は、ゲーム装置1の外観図である。図2において、ゲーム装置1は、折り畳み型の携帯ゲーム装置であり、開いた状態(開状態)のゲーム装置1を示している。ゲーム装置1は、開いた状態においてもユーザが両手または片手で把持することができるようなサイズで構成される。
ゲーム装置1は、下側ハウジング11および上側ハウジング21を有する。下側ハウジング11と上側ハウジング21とは、開閉可能(折り畳み可能)に連結されている。図2の例では、下側ハウジング11および上側ハウジング21は、それぞれ横長の長方形の板状で形成され、互いの長辺部分で回転可能に連結されている。通常、ユーザは、開状態でゲーム装置1を使用する。また、ユーザは、ゲーム装置1を使用しない場合には閉状態としてゲーム装置1を保管する。また、図2に示した例では、ゲーム装置1は、上記閉状態および開状態のみでなく、下側ハウジング11と上側ハウジング21とのなす角度が閉状態と開状態との間の任意の角度において、連結部分に発生する摩擦力などによってその開閉角度を維持することができる。つまり、上側ハウジング21を下側ハウジング11に対して任意の角度で静止させることができる。
下側ハウジング11には、下側LCD(Liquid Crystal Display:液晶表示装置)12が設けられる。下側LCD12は横長形状であり、長辺方向が下側ハウジング11の長辺方向に一致するように配置される。なお、本実施形態では、ゲーム装置1に内蔵されている表示装置としてLCDを用いているが、例えばEL(Electro Luminescence:電界発光)を利用した表示装置等、他の任意の表示装置を利用してもよい。また、ゲーム装置1は、任意の解像度の表示装置を利用することができる。なお、詳細は後述するが、下側LCD12は、主に、内側カメラ23または外側カメラ25で撮影されている画像をリアルタイムに表示するために用いられる。
下側ハウジング11には、入力装置として、各操作ボタン14A〜14Kおよびタッチパネル13が設けられる。図2に示されるように、各操作ボタン14A〜14Kのうち、方向入力ボタン14A、操作ボタン14B、操作ボタン14C、操作ボタン14D、操作ボタン14E、電源ボタン14F、スタートボタン14G、およびセレクトボタン14Hは、上側ハウジング21と下側ハウジング11とを折りたたんだときに内側となる、下側ハウジング11の内側主面上に設けられる。方向入力ボタン14Aは、例えば選択操作等に用いられる。各操作ボタン14B〜14Eは、例えば決定操作やキャンセル操作等に用いられる。電源ボタン14Fは、ゲーム装置1の電源をオン/オフするために用いられる。図2に示す例では、方向入力ボタン14Aおよび電源ボタン14Fは、下側ハウジング11の内側主面中央付近に設けられる下側LCD12に対して、左右一方側(図2では左側)の当該主面上に設けられる。また、操作ボタン14B〜14E、スタートボタン14G、およびセレクトボタン14Hは、下側LCD12に対して左右他方側(図2では右側)となる下側ハウジング11の内側主面上に設けられる。方向入力ボタン14A、操作ボタン14B〜14E、スタートボタン14G、およびセレクトボタン14Hは、ゲーム装置1に対する各種操作を行うために用いられる。
なお、図2においては、操作ボタン14I〜14Kの図示を省略している。例えば、Lボタン14Iは、下側ハウジング11の上側面の左端部に設けられ、Rボタン14Jは、下側ハウジング11の上側面の右端部に設けられる。Lボタン14IおよびRボタン14Jは、ゲーム装置1に対して、例えば撮影指示操作(シャッター操作)を行うために用いられる。さらに、音量ボタン14Kは、下側ハウジング11の左側面に設けられる。音量ボタン14Kは、ゲーム装置1が備えるスピーカの音量を調整するために用いられる。
また、ゲーム装置1は、各操作ボタン14A〜14Kとは別の入力装置として、さらにタッチパネル13を備えている。タッチパネル13は、下側LCD12の画面上を覆うように装着されている。なお、本実施形態では、タッチパネル13は、例えば抵抗膜方式のタッチパネルが用いられる。ただし、タッチパネル13は、抵抗膜方式に限らず、任意の押圧式のタッチパネルを用いることができる。また、本実施形態では、タッチパネル13として、例えば下側LCD12の解像度と同解像度(検出精度)のものを利用する。ただし、必ずしもタッチパネル13の解像度と下側LCD12の解像度とが一致している必要はない。また、下側ハウジング11の右側面には、挿入口(図2に示す破線)が設けられている。挿入口は、タッチパネル13に対する操作を行うために用いられるタッチペン27を収納することができる。なお、タッチパネル13に対する入力は、通常タッチペン27を用いて行われるが、タッチペン27に限らずユーザの指でタッチパネル13を操作することも可能である。
また、下側ハウジング11の右側面には、メモリカード28を収納するための挿入口(図2では、二点鎖線で示している)が設けられている。この挿入口の内側には、ゲーム装置1とメモリカード28とを電気的に接続するためのコネクタ(図示せず)が設けられる。メモリカード28は、例えばSD(Secure Digital)メモリカードであり、コネクタに着脱自在に装着される。メモリカード28は、例えば、ゲーム装置1によって撮影された画像を記憶(保存)したり、他の装置で生成された画像をゲーム装置1に読み込んだりするために用いられる。
さらに、下側ハウジング11の上側面には、カートリッジ29を収納するための挿入口(図2では、一点鎖線で示している)が設けられている。この挿入口の内側にも、ゲーム装置1とカートリッジ29とを電気的に接続するためのコネクタ(図示せず)が設けられる。カートリッジ29は、例えばゲームプログラム等を記録した記録媒体であり、下側ハウジング11に設けられた挿入口に着脱自在に装着される。
下側ハウジング11と上側ハウジング21との連結部の左側部分には、3つのLED15A〜15Cが取り付けられる。ここで、ゲーム装置1は、他の機器との間で無線通信を行うことが可能であり、第1LED15Aは、ゲーム装置1の電源がオンである場合に点灯する。第2LED15Bは、ゲーム装置1の充電中に点灯する。第3LED15Cは、無線通信が確立している場合に点灯する。したがって、3つのLED15A〜15Cによって、ゲーム装置1の電源のオン/オフ状況、充電状況、および、通信確立状況をユーザに通知することができる。
一方、上側ハウジング21には、上側LCD22が設けられる。上側LCD22は横長形状であり、長辺方向が上側ハウジング21の長辺方向に一致するように配置される。なお、下側LCD12と同様、上側LCD22に代えて、他の任意の方式および任意の解像度の表示装置を利用してもよい。なお、上側LCD22上を覆うように、タッチパネルを設けてもかまわない。例えば、上側LCD22には、ユーザに各操作ボタン14A〜14Kやタッチパネル13の役割を教えるための、操作説明画面が表示される。
また、上側ハウジング21には、2つのカメラ(内側カメラ23および外側カメラ25)が設けられる。図2に示されるように、内側カメラ23は、上側ハウジング21の連結部付近の内側主面に取り付けられる。一方、外側カメラ25は、内側カメラ23が取り付けられる内側主面の反対側の面、すなわち、上側ハウジング21の外側主面(ゲーム装置1が閉状態となった場合に外側となる面であり、図2に示す上側ハウジング21の背面)に取り付けられる。なお、図2においては、外側カメラ25を破線で示している。これによって、内側カメラ23は、上側ハウジング21の内側主面が向く方向を撮影することが可能であり、外側カメラ25は、内側カメラ23の撮影方向の逆方向、すなわち、上側ハウジング21の外側主面が向く方向を撮影することが可能である。このように、本実施形態では、2つの内側カメラ23および外側カメラ25の撮影方向が互いに逆方向となるように設けられる。例えば、ユーザは、ゲーム装置1からユーザの方を見た景色を内側カメラ23で撮影することができるとともに、ゲーム装置1からユーザの反対側の方向を見た景色を外側カメラ25で撮影することができる。
なお、上記連結部付近の内側主面には、音声入力装置としてマイク(図3に示すマイク42)が収納されている。そして、上記連結部付近の内側主面には、マイク42がゲーム装置1外部の音を検知できるように、マイクロフォン用孔16が形成される。マイク42を収納する位置およびマイクロフォン用孔16の位置は必ずしも上記連結部である必要はなく、例えば下側ハウジング11にマイク42を収納し、マイク42を収納位置に対応させて下側ハウジング11にマイクロフォン用孔16を設けるようにしても良い。
また、上側ハウジング21の外側主面には、第4LED26(図2では、破線で示す)が取り付けられる。第4LED26は、外側カメラ25によって撮影が行われた(シャッターボタンが押下された)時点で点灯する。また、外側カメラ25によって動画が撮影される間点灯する。第4LED26によって、ゲーム装置1による撮影が行われた(行われている)ことを撮影対象者や周囲に通知することができる。
また、上側ハウジング21の内側主面中央付近に設けられる上側LCD22に対して、左右両側の当該主面に音抜き孔24がそれぞれ形成される。音抜き孔24の奥の上側ハウジング21内にはスピーカが収納されている。音抜き孔24は、スピーカからの音をゲーム装置1の外部に放出するための孔である。
以上に説明したように、上側ハウジング21には、画像を撮影するための構成である内側カメラ23および外側カメラ25と、例えば撮影の際に操作説明画面を表示する表示手段である上側LCD22とが設けられる。一方、下側ハウジング11には、ゲーム装置1に対する操作入力を行うための入力装置(タッチパネル13および各ボタン14A〜14K)と、ゲーム画面を表示するための表示手段である下側LCD12とが設けられる。したがって、ゲーム装置1を使用する際には、ユーザは、下側LCD12に表示される撮影画像(カメラによって撮影された画像)を見ながら、下側ハウジング11を把持して入力装置に対する入力を行うことができる。
次に、図3を参照して、ゲーム装置1の内部構成を説明する。なお、図3は、ゲーム装置1の内部構成の一例を示すブロック図である。
図3において、ゲーム装置1は、CPU31、メインメモリ32、メモリ制御回路33、保存用データメモリ34、プリセットデータ用メモリ35、メモリカードインターフェース(メモリカードI/F)36およびカートリッジI/F44、無線通信モジュール37、ローカル通信モジュール38、リアルタイムクロック(RTC)39、電源回路40、およびインターフェース回路(I/F回路)41等の電子部品を備えている。これらの電子部品は、電子回路基板上に実装されて、下側ハウジング11(または上側ハウジング21でもよい)内に収納される。
CPU31は、所定のプログラムを実行するための情報処理手段である。本実施形態では、所定のプログラムがゲーム装置1内のメモリ(例えば保存用データメモリ34)やメモリカード28および/または29に記憶されており、CPU31は、当該所定のプログラムを実行することによって、後述する接続確立処理等を実行する。なお、CPU31によって実行されるプログラムは、ゲーム装置1内のメモリに予め記憶されていてもよいし、メモリカード28および/またはカートリッジ29から取得されてもよいし、他の機器との通信によって他の機器から取得されてもよい。例えば、インターネットを経由して所定のサーバからダウンロードすることで取得しても良いし、据置型ゲーム装置と通信を行うことで、当該据置型ゲーム装置に記憶されている所定のプログラムをダウンロードすることで取得しても良い。
CPU31には、メインメモリ32、メモリ制御回路33、およびプリセットデータ用メモリ35が接続される。また、メモリ制御回路33には、保存用データメモリ34が接続される。メインメモリ32は、CPU31のワーク領域やバッファ領域として用いられる記憶手段である。本実施形態では、メインメモリ32として、例えばPSRAM(Pseudo−SRAM)を用いる。保存用データメモリ34は、CPU31によって実行されるプログラムや内側カメラ23および外側カメラ25によって撮影された画像のデータ等を記憶するための記憶手段である。保存用データメモリ34は、不揮発性の記憶媒体によって構成されており、例えば本実施例ではNAND型フラッシュメモリで構成される。メモリ制御回路33は、CPU31の指示に従って、保存用データメモリ34に対するデータの読み出しおよび書き込みを制御する回路である。プリセットデータ用メモリ35は、ゲーム装置1において予め設定される各種パラメータ等のデータ(プリセットデータ)を記憶するための記憶手段である。プリセットデータ用メモリ35としては、SPI(Serial Peripheral Interface)バスによってCPU31と接続されるフラッシュメモリを用いることができる。
メモリカードI/F36は、CPU31に接続される。メモリカードI/F36は、コネクタに装着されたメモリカード28に対するデータの読み出しおよび書き込みを、CPU31の指示に応じて行う。本実施形態では、外側カメラ25によって撮像された画像データがメモリカード28に書き込まれたり、メモリカード28に記憶された画像データがメモリカード28から読み出されて保存用データメモリ34に記憶されたりする。
カートリッジI/F44はCPU31に接続される。カートリッジI/F44は、コネクタに装着されたカートリッジ29に対するデータの読み出しおよび書き込みをCPU31の指示に従って行う。本実施形態では、ゲーム装置1が実行することが可能なアプリケーションプログラムがカートリッジ29から読み出されてCPU31によって実行されたり、当該アプリケーションプログラムに関するデータ(例えばゲームのセーブデータ等)がカートリッジ29に書き込まれたりする。
なお、本実施形態にかかる接続処理に関するプログラムは、カートリッジ29等の外部記憶媒体を通じてコンピュータシステムに供給されるだけでなく、有線または無線の通信回線を通じてコンピュータシステムに供給されてもよい。また、当該接続処理に関するプログラムは、コンピュータシステム内部の不揮発性記憶装置に予め記録されていてもよい。なお、当該接続処理に関するプログラムを記憶する情報記憶媒体としては、上記不揮発性記憶装置に限らず、CD−ROM、DVD、あるいはそれらに類する光学式ディスク状記憶媒体でもよい。
無線通信モジュール37は、例えばIEEE802.11.b/gの規格に準拠した方式により、無線LANに接続する機能を有する。また、ローカル通信モジュール38は、所定の通信方式により同種のゲーム装置との間で無線通信を行う機能を有する。無線通信モジュール37およびローカル通信モジュール38は、CPU31に接続される。CPU31は、無線通信モジュール37を用いてインターネットを介して他の機器との間でデータを送受信したり、ローカル通信モジュール38を用いて同種の他のゲーム装置との間でデータを送受信したりすることができる。
また、CPU31には、RTC39および電源回路40が接続される。RTC39は、時間をカウントしてCPU31に出力する。例えば、CPU31は、RTC39によって計時された時間に基づいて、現在時刻(日付)等を計算することもできる。電源回路40は、ゲーム装置1が有する電源(典型的には電池であり、下側ハウジング11に収納される)から供給される電力を制御し、ゲーム装置1の各部品に電力を供給する。
また、ゲーム装置1は、マイク42およびアンプ43を備えている。マイク42およびアンプ43は、それぞれI/F回路41に接続される。マイク42は、ゲーム装置1に向かって発声されたユーザの音声を検知して、当該音声を示す音声信号をI/F回路41に出力する。アンプ43は、I/F回路41から音声信号を増幅してスピーカ(図示せず)から出力させる。I/F回路41は、CPU31に接続される。
また、タッチパネル13は、I/F回路41に接続される。I/F回路41は、マイク42およびアンプ43(スピーカ)の制御を行う音声制御回路と、タッチパネル13の制御を行うタッチパネル制御回路とを含む。音声制御回路は、音声信号に対するA/D変換およびD/A変換を行ったり、音声信号を所定の形式の音声データに変換したりする。タッチパネル制御回路は、タッチパネル13からの信号に基づいて所定の形式のタッチ位置データを生成してCPU31に出力する。例えば、タッチ位置データは、タッチパネル13の入力面に対して入力が行われた位置の座標を示すデータである。なお、タッチパネル制御回路は、タッチパネル13からの信号の読み込み、および、タッチ位置データの生成を所定時間に1回の割合で行う。CPU31は、I/F回路41を介して、タッチ位置データを取得することにより、タッチパネル13に対して入力が行われた位置を知ることができる。
操作ボタン14は、上記各操作ボタン14A〜14Kから構成され、CPU31に接続される。操作ボタン14からCPU31へは、各操作ボタン14A〜14Kに対する入力状況(押下されたか否か)を示す操作データが出力される。CPU31は、操作ボタン14から操作データを取得することによって、操作ボタン14に対する入力に応じた処理を実行する。
内側カメラ23および外側カメラ25は、それぞれCPU31に接続される。内側カメラ23および外側カメラ25は、CPU31の指示に応じて画像を撮影し、撮影した画像データをCPU31に出力する。本実施形態では、CPU31は、内側カメラ23および外側カメラ25のいずれか一方に対して撮影指示を行い、撮影指示を受けたカメラが画像を撮影して画像データをCPU31に送る。
また、下側LCD12および上側LCD22は、それぞれCPU31に接続される。下側LCD12および上側LCD22は、それぞれCPU31の指示に従って画像を表示する。
次に、第1の実施形態で想定する接続確立処理の概要について説明する。第1の実施形態では、無線通信における各種通信端末(本実施形態ではゲーム装置1)および通信装置(本実施形態ではAP100)間の接続確立に際して、以下のような処理が実行される。まず、接続対象装置(本実施形態では、AP100)を一意に識別可能な情報、換言すれば、接続対象装置を個別に特定することが可能な情報をゲーム装置1に保存しておく。更に、無線通信に使う無線チャネルの情報(例えばチャネル番号。IEEE802.11gを例にすると、チャネル1〜チャネル13)もゲーム装置1に保存しておく(具体的な保存手法は後述)。そして、当該ゲーム装置1において、AP100との接続確立のための指示(例えば、ゲームプログラム内で発行されるインターネットへの接続指示等に含まれる)が発行された際は、当該保存された情報を使って、AP100(つまり、接続の宛先)と通信に使う使用チャネルとが特定済みの状態から接続確立処理を開始する、という処理が実行される。
図4は、第1の実施形態における接続確立処理の概念を、従来における接続確立処理との比較で模式的に示した図である。図4においては、時間の流れを左から右方向に向かう矢印で示し(図4中央の右矢印)、当該矢印の上側に従来における接続確立処理の流れを、下側に本実施形態における接続確立処理の流れを示している。従来の処理では、まず、ゲーム装置1において接続確立要求が何らかの形で発行されると、パッシブスキャン、あるいは、(ESSID指定の)アクティブスキャンによって、利用可能な無線チャネルが全てスキャンされ、接続対象となるAP100の検索が行われる(図4の処理F1)。
次に、パッシブスキャンであれば、ゲーム装置1が受信したビーコンフレームから、また、アクティブスキャンの場合であれば、ゲーム装置1が受信したプローブ応答フレームから、BSSIDと使用チャネル番号が抽出される(図4の処理F2)。なお、当該BSSIDは、一般的にはMACアドレスで表される。すなわち、ここではAP100のMACアドレスで表されている。
そして、当該BSSIDを宛先アドレスとして設定した各種フレーム(アソシエーション要求フレーム等)を生成し、上記使用チャネル番号で示される無線チャネルを介して認証要求や接続要求をAP100に対して送信することで(処理F3〜処理F4を必要に応じて繰り返す)、上記AP100との接続関係の確立が試みられる。このような処理が、ゲーム装置1において接続要求が発行される度に行われる。これは、公衆無線LANサービス等の、無線チャネルやBSSIDはAPの設置場所によってそれぞれ異なるが、ESSIDは同じものが設定されているAPが複数存在しており、そのいずれにも接続するようなものを想定しているためである。
対して、第1の実施形態では、上記のような処理で一旦自宅のAP100と接続確立(つまり、接続が成功)したときに、当該AP100のBSSIDと、そのときの通信に使用している無線チャネルのチャネル番号をゲーム装置1に保存する。そして、その後接続が切断され、更にその後、再度ゲーム装置1において接続要求が発行されたときは、上記のようなスキャン処理(処理F1)は行わずに、上記保存済みのBSSIDとチャネル番号を読み出す(処理F11)。そして、当該読み出したBSSIDを宛先アドレスに指定した各種フレームを生成し、当該フレームを上記読み出したチャネル番号の無線チャネルを介して送信することで(処理F12、F13)AP100との接続を試みる。
このような構成を採るのは、次のような理由による。例えば家庭内ネットワーク等、常に同一のAPにしか接続しないような場合は、BSSIDや使用チャネルが変化する可能性は少ない。そのため、BSSIDや使用チャネルを接続要求が発行される度に特定し直す必要性は低い。また、公衆無線LANサービス等のAPよりも家庭内ネットワークのAP100に接続する場面が多いような場合は、より短時間で家庭内ネットワークのAP100に接続できることのほうが利用者にとって利便性がより高まる。そのために、第1の実施形態では、一旦接続に成功したAP100のBSSIDと、そのときに使用したチャネル番号とをゲーム装置1に保存するようにしている。そして、それ以降の接続確立処理においては、当該保存済みのBSSIDと使用チャネル番号を用いて、接続先となるAP100(つまり、宛先アドレス)と通信に使うチャネルが特定した状態から接続確立処理を開始するものである。その結果、従来行っていたパッシブスキャンあるいはアクティブスキャンにかかる時間が削減され、ゲーム装置1とAP100との接続が確立する時間を低減することを可能とする。なお、以下の説明では、従来の接続確立手法と区別するため、上記のような保存済みのBSSIDと使用チャネル番号を用いてAP100に接続を行う接続手法を「直接接続」と呼ぶ。
また、本実施形態では、上記のような直接接続を行う際に、より確実にAP100と接続するために、使用チャネル番号を指定したアクティブスキャン的な処理(プローブ要求/応答)を行って、いわゆるTSF(Time Synchronization Function)タイマの同期を行うようにしている(なお、TSFタイマとは、APおよび通信端末との間で時刻同期をとるために用いられるカウンタである)。これにより、送信側/受信側において時刻同期が取られ、より安定した送受信が可能となる。以下の説明では、この処理のことを「同期スキャン」と呼ぶ。当該同期スキャンは、上記保存済みのチャネル番号に基づいて無線チャネルを指定して行われるため、従来の全チャネルをスキャンするアクティブスキャンよりもプローブ応答フレームを受信するまでの時間は短縮される。
次に、第1の実施形態におけるゲーム装置1によって実行される接続関連処理(上記接続確立処理も含んだ処理)の詳細を説明する。まず、接続関連処理の際にメインメモリ32に記憶されるデータについて説明する。図5は、ゲーム装置1のメインメモリ32のメモリマップを示す図である。図5において、メインメモリ32は、プログラム記憶領域321、データ記憶領域325、および一時記憶領域327を含む。プログラム記憶領域321の各プログラムは、例えばカートリッジ29や保存用データメモリ34に記憶されており、接続関連処理のプログラム実行時にはメインメモリ32に転送されて記憶される。また、データ記憶領域325のデータは、保存用データメモリ34に記憶されており、接続関連処理のプログラム実行時にはメインメモリ32に転送されて記憶される。なお、これらのプログラムおよびデータは、上記カートリッジ29や保存用データメモリ34の他、メモリカード、ハードディスク等の記録媒体で提供されても良いし、有線ネットワークや無線ネットワークを介して所定のサーバやゲーム装置等からダウンロードすることで提供されてもよい(つまり、ダウンロードしたプログラムやデータをメインメモリ32に記憶する形態でもよい)。一方、一時記憶領域327のデータは、本実施形態にかかる接続関連処理において適宜生成され、一時的に記憶されるデータである。
プログラム記憶領域321は、CPU31によって実行されるプログラムを記憶し、このプログラムは、メイン処理プログラム322と、設定処理プログラム323と、接続確立処理プログラム324などによって構成される。メイン処理プログラム322は、後述する図6のフローチャートの処理に対応するプログラムである。設定処理プログラム323は、無線接続に関する情報(プロファイル)を事前に設定するための処理をCPU31に実行させるためのプログラムであり、接続確立処理プログラム324は、AP100との接続を確立するための処理をCPU31に実行させるためのプログラムである。
データ記憶領域325には、第1AP設定データ326a、第2AP設定データ326b、第3AP設定データ326cなどのデータが記憶される。これらのデータは、所定のAPへの接続のために用いる接続情報(プロファイル)であり、本実施形態では、3つのAPについての接続情報が保存可能である。また、これら3つのデータの間には、後述するような接続確立する際に用いられる優先順位(接続優先度)が設けられており、本実施形態では、第1AP設定データ326aが最も優先順位が高く、第3AP設定データ326cが最も優先順位が低いものとする。なお、以下では、これらのデータを総称して、単にAP設定データ326と呼ぶこともある。また、これらのデータのいずれか一つを示すため、「第nAP設定データ」と呼ぶこともある(nは1〜3のいずれかを示す意図である)。各AP設定データ326はそれぞれ、設定済みESSID3261、設定済みBSSID3262、設定済みチャネル番号3263とで構成される。設定済みESSID3261は、接続対象となる無線ネットワークのESSIDを示すデータである。例えば、第1AP設定データ326aを例にすれば、1つめのAPのESSIDを示すデータである。本実施形態では、設定済みESSID3261については、後述する設定処理において利用者の入力操作に基づいて設定される(つまり、手動で設定される)。
設定済みBSSID3262は、接続対象となるAPのBSSID(一般的にはMACアドレス)を示すデータである。設定済みチャネル番号3263は、接続対象となるAPとの無線通信に用いる無線チャネル番号を示すデータである。設定済みBSSID3262および設定済みチャネル番号3263は、後述する接続確立処理の一環として、所定のAPとの接続が確立した際に自動的に設定される。
また、各AP設定データ326には、上記のデータの他、暗号化通信に必要な情報であるWEPキーやWPAキー等も必要に応じて記憶される。
なお、上記AP設定データは、適宜、メインメモリ32から保存用データメモリ34にコピーされることで、保存用データメモリ34上に保存される。
一時記憶領域327には、接続成功フラグ328と、ビーコンデータ329が記憶される。接続成功フラグ328は、接続確立処理の結果、APとの接続が成功したか否かを示すためのフラグであり、接続成功時はオン、接続失敗時はオフに設定される。
ビーコンデータ329は、後述する接続確立処理において実行されるパッシブスキャンによって受信したビーコンフレームが記憶されたものである。また、当該ビーコンデータ329は、ビーコンフレームを受信する毎に追加されていき、図5では、「ビーコンデータ1」〜「ビーコンデータm」として示している。各ビーコンデータ329は、受信ESSID3291、受信BSSID3292、受信チャネル番号3293等で構成される。受信ESSID3291は、受信したビーコンフレームに含まれているESSIDを記憶したデータである。受信BSSID3292は、受信したビーコンフレームに含まれているBSSIDを記憶したデータである。受信チャネル番号3293は、受信したビーコンフレームに含まれている無線チャネルの番号を記憶したデータである。すなわち、受信チャネル番号3293は、受信したビーコンの送信に用いられた無線チャネルの番号を示すものであり、換言すれば、発信元のAPが無線通信に使用している無線チャネルの番号を示す情報である。
また、一時記憶領域327には、後述の各処理で用いられる各種フラグなども記憶される。
次に、図6〜図12を参照して、ゲーム装置1によって実行される接続関連処理について説明する。図6は、ゲーム装置1において実行される接続関連処理の流れを示すフローチャートである。ゲーム装置1の電源が投入されると、ゲーム装置1のCPU31は、図示しないブートROMに記憶されている起動プログラムを実行し、メインメモリ32等の各ユニットが初期化される。そして、カートリッジ29に格納された各種プログラム、および、保存用データメモリ34に記憶されているAP設定データ326がメインメモリ32に読み込まれ、当該接続関連処理プログラムの実行が開始される。その結果、下側LCD12に所定の画像が表示されることによって、本実施形態にかかる処理が開始される。なお、本実施形態においては、接続関連処理以外の状況における処理(例えば、ゲーム処理の具体的内容等)は本発明と直接関連しないので説明を省略する。
まず、ステップS1において、ゲーム装置1のメイン画面が表示される。このメイン画面とは、例えばメニュー画面であり、利用者は、このメニューから「ゲーム処理」や、「カメラ処理」等の各種アプリケーションを起動したり、「通信設定のための処理」を起動することができる。そして、利用者からの所定の操作入力を受け付ける。
次に、ステップS2において、上記メニュー画面において、「通信設定のための処理」を起動する旨の入力がプレイヤから行われたか否かが判定される。当該判定の結果、「通信設定のための処理」を起動する旨の入力がプレイヤから行われたと判定されたときは(ステップS2でYES)、ステップS3において、設定画面処理が実行される。この処理では、利用者の入力に基づいて、APへ接続するときに用いる接続情報を設定するための処理が実行される。この処理の詳細は後述する。当該処理が終了すれば、上記ステップS1の処理に戻る。
一方、「通信設定のための処理」を起動する旨の入力がプレイヤから行われていないと判定されたときは(ステップS2でNO)、次に、ステップS4において、「接続指示」が発行されたか否かが判定される。当該「接続指示」の発行については、例えば、上記メニュー画面から所定の通信ゲームを起動し、当該通信ゲームにかかる処理において発行される。その他、例えば、上記メニュー画面からインターネットブラウザプログラムを起動した場合等に発行される。
ステップS4の判定の結果、「接続指示」が発行されていないと判定されたときは(ステップS4でNO)、上記ステップS1に戻り、処理が繰り返される(上記メニュー画面からゲーム処理や所定のアプリケーションが起動されていた場合は、当該ゲームやアプリケーションにかかる処理が続行される)。
一方、ステップS4の判定の結果、「接続指示」が発行されたと判定されたときは(ステップS4でYES)、ステップS5において、APとの接続を確立するための接続確立処理が実行される。本処理の詳細は後述する。
次に、接続確立処理が終了すれば、ステップS6において、当該処理の結果として接続が成功したか否かが判定される。具体的には、接続成功フラグ328がオンに設定されているか否かが判定される。その結果、オフに設定されていると判定されたときは(ステップS6でNO)、上記ステップS1に戻り、処理が繰り返される。
一方、接続成功フラグ328がオンに設定されていると判定されたときは(ステップS6でYES)、ステップS7において、接続確立したAPを介したネットワークを利用する所定の処理が実行される。例えば、通信対戦ゲーム処理等が実行される。そして、当該処理が終了すれば、ステップS1の処理に戻る。例えば、利用者が通信ゲーム処理を終了した結果、メニュー画面が表示されることになる。
次に、上記ステップS3で示した設定画面処理の詳細について説明する。この処理では、設定画面を表示し、利用者の入力に応じて、接続先となるAPのESSIDを設定する処理等が実行される。図7は、当該設定画面処理の詳細を示すフローチャートである。まず、ステップS11において、通信設定のための画面が生成されて、下側LCD12に表示される。図8に、当該画面の一例を示す。当該画面には、3つのAP設定データ326のそれぞれに対応する設定ボタン111a、111b、111cが表示されている(以下、これらのボタンを総称して単に設定ボタン111と呼ぶこともある)。また、各ボタンには、それぞれに対応するAP設定データ326が設定済みか否かを示す情報も表示される。図8では、AP設定データ326のいずれも未設定の状態の場合の例を示している。そのため、各設定ボタン111には、「未設定」の文字が表示されている。AP設定データ326が設定済みの設定ボタン111であれば、例えば「アクセスポイント1」や設定されているESSIDを表示する等、既に設定済みであることを示す表示がなされる。
また、図8においては、各設定ボタン111の並びの上から順にAP設定データ326a、326b、326cに対応しているものとする。また、各設定ボタン111の左側には、「接続先1」〜「接続先3」という文字が各設定ボタン111のラベル的な意図で表示されている。以下では、設定ボタン111aに対応するAP設定データ326aにおける接続先APのことを「接続先1」と呼ぶ。同様に、設定ボタン111b、設定ボタン111cに対応するAPについても、「接続先2」「接続先3」と呼ぶ。そして、利用者は、当該3つの設定ボタンから1つを選択する操作(例えば、ボタンをタッチする操作)ことで、当該ボタンに対応するAP設定データ326の設定画面を表示することができる。
ここで、図8において、当該設定ボタン111の並びは、APへの接続の優先順位も示しており、上に配置されている設定ボタン111に対応するAPほど優先順位が高い。より具体的には、接続指示がなされた場合、まず「接続先1」への接続を試み、「接続先1」への接続が失敗したときは、「接続先2」への接続を試みる。「接続先2」への接続も失敗したときは、「接続先3」への接続を試みる。更に、本実施形態では、当該設定ボタン111を上下方向にドラッグ操作することで、その優先順位を入れ替えることも可能となっている。例えば、図8の例で言うと、設定ボタン111aを設定ボタン111bの位置にドラッグ操作した場合、設定ボタン111aと設定ボタン111bの表示位置が入れ替わるようなアニメーションが表示されて、両者の優先順位が入れ替わる。より具体的には、設定ボタン111aに対応するAP設定データ326aと設定ボタン111bに対応するAP設定データ326bを入れ替えることで、優先順位の変更がなされる(つまり、変更前のAP設定データ326bが、上記変更操作に伴い、AP設定データ326aとして再設定され、変更前のAP設定データ326aが、AP設定データ326bとして再設定される)。
図7に戻り、ステップS12において、上記3つの設定ボタン111のうちのいずれかが利用者によって選択されたか否かが判定される。その結果、いずれかの設定ボタンが選択されたと判定されたときは(ステップS12でYES)、ステップS13において、選択された設定ボタン111は上記のような「未設定」が表示されている設定ボタン111か否かが判定される。つまり、未設定の状態のAP設定データ326に対応する設定ボタン111が選択されたか否かが判定される。その結果、「未設定」の設定ボタン111が選択されたと判断されたときは(ステップS13でYES)、未設定のAP設定データに対して設定作業を行うと考えられるため、後述するステップS16に処理が進められる。
一方、「未設定」の設定ボタン111は選択されていないと判定されたときは(ステップS13でNO)、次に、ステップS14において、選択された設定ボタン111に対応するAP設定データ326の、その時点における設定内容を示す画面が表示される。これと同時に、利用者からの入力が受け付けられる。図9に、当該画面の一例を示す。図9に示す画面では、「接続先1」の設定内容として、ESSID、BSSID、使用チャネル番号がそれぞれ表示されている。また、「設定変更」ボタン112、および、「戻る」ボタン113も表示されている。利用者は、「設定変更」ボタン112を選択することで、ESSIDの設定内容を変更することが可能である。また、利用者は、「戻る」ボタン113を選択することで、上記図8の画面に戻ることが可能である。なお、図9において、BSSIDおよび使用チャネル番号については、AP設定データ326に当該データが存在するときにのみ表示される。これは、以下に説明するように、当該設定画面処理においては、利用者が入力するのはESSIDのみである。そのため、AP設定データ326にはESSIDのみ保存され、BSSIDおよび使用チャネル番号は未設定のまま、という状態があるためである。
図7に戻り、続くステップS15において、上記設定内容を示す画面において、「設定変更」ボタン112が利用者によって選択されたか否かが判定される。当該判定の結果、「設定変更」ボタン112が選択されたと判定されたときは(ステップS15でYES)、次のステップS16において、設定入力用の画面が表示され、利用者からの入力が受け付けられる。この設定入力用の画面は、図示は省略するが、ESSIDの入力が可能となっている画面であり、例えば、図9のESSIDの値が表示されているフィールド部分の表示色が変更され、当該フィールド内にカーソルが表示された画面が表示される。また、このとき、「入力完了」ボタンも適宜当該設定入力用の画面に表示される。そして、利用者がESSIDの入力操作を完了したときに当該「入力完了」ボタンを選択することで、入力内容が確定され、次のステップS17の処理に進む。ここで、各チャネルにおいてビーコンをスキャンし、受信したビーコンのうちESSIDが含まれているもの全てを一覧表示し、ユーザに一覧表示されているビーコンのうちいずれか1つを選択させることで、ESSIDの入力としてもよい。
ステップS17においては、利用者の入力した内容に基づいて、AP設定データ326が更新される。より具体的には、上記設定入力用の画面において利用者に入力されたESSIDの値で、対応するAP設定データ326(図9の例では、第1AP設定データ326a)の設定済みESSID3261が更新される(また、このタイミングで、メインメモリ32上の更新後のAP設定データ326が保存用データメモリ34にコピーされる)。その後、上記ステップS11に戻り、処理が繰り返される。
一方、上記ステップS15の判定の結果、「設定変更」ボタンが選択されていないと判定された時は(ステップS15でNO)、次に、ステップS18において、「戻る」ボタン113が選択されたか否かが判定され、「戻る」ボタン113が選択されたと判定されたときは(ステップS18でYES)、上記ステップS11の処理に戻り、「戻る」ボタン113が選択されていないと判定されたときは(ステップS18でNO)、上記ステップS14の処理に戻る。
次に、上記ステップS12の判定の結果、AP設定データ326a〜cに対応する3つの設定ボタン111のいずれもが選択されなかったと判定されたとき(ステップS12でNO)の処理について説明する。このときは、ステップS19において、優先順位の変更操作が行われたか否かが判定される。当該優先順位の変更操作とは、上述したような、設定ボタン111の並び順を入れ替えるように当該設定ボタン111のいずれかを上下方向にドラッグする操作である。ここではその一例として、上記図8において、設定ボタン111aが設定ボタン111bの位置までドラッグ操作された場合を例に説明する。当該判定の結果、優先順位の変更操作が行われたと判定されたときは(ステップS19でYES)、ステップS20において、そのドラッグ操作の内容に応じてAP設定データ326の内容を交換する。本例では、第1AP設定データ326aと第2AP設定データ326bの内容を交換する処理が実行される。続くステップS21において、ドラッグ操作に応じて表示内容の変更、すなわち、設定ボタン111の表示位置の変更も実行される。本例では、設定ボタン111aの表示位置と設定ボタン111bの表示位置を入れ替える処理が実行される。その後、上記ステップS11の処理に戻る。
一方、上記ステップS19の判定の結果、優先順位の変更操作が行われなかったと判定されたときは(ステップS19でNO)、次に、ステップS22において、設定画面を終了する操作が行われたか否かが判定される。その結果、当該終了操作が行われていないと判定されたときは(ステップS22でNO)、上記ステップS11の処理に戻り、当該終了操作が行われたと判定されたときは(ステップS22でYES)、当該設定画面処理は終了する。
次に、上記図6のステップS5にかかる接続確立処理の詳細について説明する。図10〜図12は、当該接続確立処理の詳細を示すフローチャートである。まず、ステップS41において、変数nに”1”が設定される。この変数は、上記3つの「接続先」のいずれか一つ(AP設定データ326a〜cのうちのいずれか一つ)を指定するための変数である。たとえば、n=1であれば、第1AP設定データ326aが指定される。
次に、ステップS42において、第nAP設定データ(nは、上記変数nで示される数字)が参照され、設定済みESSID3261が保存されているか否かが判定される。つまり、未設定の状態であるか、(上述した設定画面処理によって)ESSIDが設定済みの状態であるかが判定される。当該判定の結果、第nAP設定データに設定済みESSID3261が保存されていないと判定されたときは(ステップS42でNO)、後述するステップS49に処理が進められる。一方、第nAP設定データに設定済みESSID3261が保存されていると判定されたときは(ステップS42でYES)、次のステップS43において、第nAP設定データに設定済みBSSID3262および設定済みチャネル番号3263が保存されているか否かが判定される。これはすなわち、過去に接続に成功した実績があるか否かを判定するものである。上述したように、本実施形態では、APとの接続に成功したときに、BSSIDおよび使用チャネル番号を保存するからである。
当該判定の結果、第nAP設定データに設定済みBSSID3262および設定済みチャネル番号3263が保存されていないと判定されたときは(ステップS43でNO)、後述のステップS49に処理が進められる。一方、第nAP設定データに設定済みBSSID3262および設定済みチャネル番号3263が保存されていると判定されたときは(ステップS43でYES)、続くステップS44において、当該設定済みチャネル番号3263で示される無線チャネルに対して、上記「同期スキャン」を実行する。より具体的には、当該設定済みチャネル番号3263で示される無線チャネルに対し、プローブ要求フレームを送信する。当該プローブ要求フレームには、その検索対象のネットワーク(のID)として、上記設定済みESSID3261が設定される。なお、AP側においては、プローブ要求フレームを受信したときに、AP100は、自らの記憶媒体に記憶されているESSIDと、プローブ要求フレームに含まれるESSIDが一致するか否かを判別し、一致した場合には、TSFタイマ値を含むプローブ応答フレームを送信する。
次に、ステップS45において、所定時間(例えば、予め設定されているチャネル監視時間)内に上記プローブ要求フレームに対するプローブ応答フレームを受信したか否かが判定される。その結果、所定時間内にプローブ応答フレームを受信しなかったと判定されたときは(ステップS45でNO)、後述のステップS49の処理に進む。一方、所定時間内にプローブ応答フレームを受信したと判定されたときは(ステップS45でYES)、次のステップS46において、上述したようなTSFタイマの同期処理が実行される。具体的には、まず、上記プローブ応答フレームに含まれているTSFタイマの値が抽出される。そして、当該TSFタイマの値にゲーム装置1側のタイマを合わせるという処理が実行される。
TSFタイマの同期が終われば、次に、ステップS47において、AP100に対して上述した「直接接続」を試みる処理が実行される。より具体的には、まず、第nAP設定データに保存されている設定済みBSSID3262が取得される。次に、当該設定済みBSSID3262の値を宛先アドレスとして設定した接続確立のための各種フレーム(例えば、認証要求フレーム、接続要求フレーム等)が生成される。そして、第nAP設定データに保存されている設定済みチャネル番号3263で示される無線チャネルを使い、当該生成したフレームが送信される。この後、(AP100からの応答があれば)AP100との間で接続確立のための各種フレームの送受信が行われ、AP100と接続を確立するための処理が実行される。
次に、ステップS48において、上記「直接接続」を試みた結果、AP100との接続が確立したか否か(接続が成功したか否か)が判定される。その結果、接続が確立したと判定したときは(ステップS48でYES)、後述するステップS62の処理に進んだ後、本接続確立処理は終了する。
一方、接続が確立しなかったと判定されたときは(ステップS48でNO)、ステップS49において、変数nの値が”3”か否かが判定される。つまり、3つの「接続先」すべてに対して直接接続を試みたか否かが判定される。その結果、変数nが”3”ではないと判定されたときは(ステップS49でNO)、ステップS50において、変数nに1が加算される。そして、上記ステップS42に戻り、処理が繰り返される。
一方、当該判定の結果、変数nが”3”であると判定されたときは(ステップS49でYES)、3つのAP(接続先)の全てにおいて直接接続に失敗したと考えられるため、以降の処理で、パッシブスキャンを用いてAPを検索し、接続を試みる処理が実行される。具体的には、まず、図1のステップS51において、利用可能な無線チャネルの全てをパッシブスキャンしたか否かが判定される。その結果、まだ全ての無線チャネルをパッシブスキャンしていないと判定されたときは(ステップS51でNO)、ステップS52において、まだパッシブスキャンを行っていない無線チャネルが選択される。ここで、当該選択の順番(スキャンする順番)は任意である。例えば、チャネル1、2、3・・・13、という順番でスキャンしてもよいし、チャネル1、3、5・・・13、2、4、6・・・12、のように、奇数番号の無線チャネルを先にスキャンしてから偶数番号の無線チャネルをスキャンしてもよい。
次に、ステップS53において、当該選択された無線チャネルにおいてビーコンフレームを受信するための待機を開始する処理が実行される(つまり、ビーコンフレームの待ち受けを開始する)。
次に、ステップS54において、ビーコンフレームが受信されたか否かが判定される。その結果、ビーコンフレームが受信されていないと判定されたときは(ステップS54でNO)、ステップS55において、所定の待機時間(例えば200ms)が経過したか否かが判定される。その結果、当該待機時間が経過していないと判定されたときは(ステップS55でNO)、上記ステップS54に戻り、ビーコンフレームの待ち受けを継続する。
一方、ステップS54の判定の結果、ビーコンフレームを受信したと判定されたときは(ステップS54でYES)、ステップS56において、当該受信したビーコンフレームがビーコンデータm(mは1から始まる数字であり、1ずつカウントアップされるものとする)として一時記憶領域327に追加記憶される。そして、上記ステップS51に戻り、まだスキャンしていない他の無線チャネルをパッシブスキャンする処理が繰り返される。
一方、上記ステップS51の判定の結果、全ての無線チャネルをパッシブスキャンしたと判定されたときは(ステップS51でYES)、次に、図12のステップS57において、変数nに”1”が設定される。続くステップS58において、一時記憶領域327に記憶されたビーコンデータ群の中に、第nAP設定データに保存されている設定済みESSID3261と同じESSIDを含むビーコンデータ329が記憶されているか否かが判定される。その結果、記憶されていると判定されたときは(ステップS58でYES)、次に、ステップS581において、TSFタイマを同期するための処理が実行される。具体的には、まず、上記の設定済みESSID3261と同じESSIDを含むビーコンデータ329に含まれているTSFタイマの値が抽出される。そして、当該TSFタイマの値にゲーム装置1側のタイマを合わせるという処理が実行される。
次に、ステップS59において、上記ビーコンデータ329に含まれている受信BSSID3292を取得し、当該受信BSSID3292を宛先として設定した接続要求用のフレームを生成する。そして、当該ビーコンデータ329に含まれている受信チャネル番号3293で示される無線チャネルを使って、上記生成したフレームを送信することで、APに対して接続要求を行う。その後、APとの間で接続確立のための各種フレームの送受信が行われる。
次に、ステップS60において、APとの接続が確立(成功)したか否かが判定される。その結果、APとの接続が確立しなかったと判定されたときは(ステップS60でNO)、後述のステップS63に処理が進められる。一方、APとの接続が確立したと判定されたときは(ステップS60でYES)、次のステップS61において、今回のAPとの接続に使用した無線チャネルの番号およびBSSIDを、第nAP設定データに保存する。すなわち、今回のAPとの接続に使用した無線チャネルの番号を第nAP設定データの設定済みチャネル番号3263として保存し、今回のAPとの接続に使用したBSSIDを第nAP設定データの設定済みBSSID3262として保存する。そして、続くステップS62において、接続成功フラグ328がオンに設定され、本接続確立処理を終了する。
一方、上記ステップS58の判定の結果、第nAP設定データに保存されている設定済みESSID3261と同じESSIDを含むビーコンデータ329が一時記憶領域327に記憶されていないと判定されたとき(ステップS58でNO)、あるいは、上記ステップS60でAPとの接続に失敗したと判定されたときは(ステップS60でNO)、ステップS63において、変数nが”3”であるか否かが判定される。その結果、変数nが”3”ではないと判定されたときは(ステップS63でNO)、ステップS64において、変数nに1が加算され、上記ステップS58に戻って処理が繰り返される。
一方、変数nが”3”であると判定されたときは(ステップS63でYES)、上記3つの「接続先」として設定されているAPのいずれもが見つからなかったと考えられる。この場合は、ステップS65において、ネットワークに接続できない旨のエラーメッセージを画面に表示する処理が実行される。そして、続くステップS66において、接続成功フラグ328がオフに設定され、本接続確立処理が終了する。以上で、第1の実施形態にかかる接続確立処理の詳細説明を終了する。
このように、第1の実施形態では、ゲーム装置1とAP100との無線接続の成功時に、そのときの無線通信に用いられている(AP100の)BSSIDと使用チャネル情報をゲーム装置1に保存しておく。そして、以降の接続確立処理に際しては、各チャネルについてアクティブスキャンやパッシブスキャンを行うことなく、当該保存済みの情報を用いて、AP100との接続確立を試みる。これにより、上記AP100や他の接続対象装置との接続にかかる時間を低減することができる。
また、上記保存済みの情報を用いて、AP100との接続確立を試みるのに際して、上述したような同期スキャンを行ってTSFタイマの同期を行うようにしている。これにより、接続の確実性をより高めている。
なお、上述した実施形態では、接続先となるAPの設定の保存数が3つの場合を例に挙げたが(第1AP設定データ326a〜326c)、当該保存数は3つだけの場合に限るものではなく、4つ以上保存できるようにしても良い。また、優先度が最も高いものを1つだけ(つまり、第1AP設定データ326aのみ)保存できるようにしてもよい。保存数を1つだけとした場合は、第1AP設定データを用いた直接接続に失敗したとき(上記ステップS48でNO)は、上記図11のステップS51の処理に進めるようにすればよい。また、パッシブスキャンを行った結果、上記ステップS57以降の処理において、第1AP設定データ326aのESSIDを含むビーコンが見つからなかったとき(ステップS58でNO)、および、含まれてはいたが、接続確立には失敗した場合(ステップS60でNO)は、ステップS65の処理に進めるようにすればよい。
また、上述の実施形態では、ネットワーク構成の例として、いわゆるインフラストラクチャ・モードのネットワーク構成を挙げたが、これに限らず、いわゆるアドホック・モードのネットワーク構成にも本発明は適用可能である。例えば、兄弟がそれぞれ有しているゲーム装置1を家庭内においてアドホック・モードで相互に接続するような場合にも適用可能である。アドホック・モードにおいても、上述したようなビーコンフレームやプローブ応答フレームは送信されるためである。
また、上記実施形態では、通信規格としてIEEE802.11規格を例として説明したが、これに限らず、他の無線通信方式を用いる場合にも本発明は適用可能である。この場合、上述したESSID、BSSID、使用チャネルという要素については、これらと同等の意味を持つ識別子や周波数帯域を示す要素に置き換えて適用すればよい。
また、上記実施形態では、ゲーム装置1の例として携帯型ゲーム装置を例としていたが、これに限らず、無線通信可能な据置型のゲーム装置の場合でも適用可能である。また、その他、無線通信が可能なパーソナルコンピュータや、PDA(Personal Digital Assistant)やスマートフォン等に代表される各種携帯型情報端末で無線通信が可能なものに対しても適用可能である。
また、上述した実施形態においては、図11のステップS51〜S56の処理において、パッシブスキャンを用いた場合を例に挙げたが、当該処理において、パッシブスキャンではなくアクティブスキャンを用いてもよい。この場合は、ビーコンフレームの代わりにプローブ応答フレームが用いられることになる。
また、上述の実施形態では、3つのAP設定を保存し、これらに優先順位を設けていた。そして、上記図8の例で言うと、「接続先1」との接続に失敗したときは、「接続先2」、更には「接続先3」への接続を試みていた。このような制御方法に限らず、「接続先1」との接続に失敗した時点で、他の設定済みのAP(ここでは「接続先2」および「接続先3」)との接続は試みずに、この時点でエラーを表示して(例えば、図12のステップS60でNOのとき、ステップS65の処理に進める)、接続確立処理を終了するようにしてもよい。
また、優先順位に関して、上記設定画面(図8参照)における各設定の優先順位の変更操作として、上述の実施形態ではドラッグ操作の場合を一例に挙げたが、ドラッグ操作以外の操作、例えば、方向入力ボタン14Aでの上下方向の入力に応じて優先順位を入れ替えるようにしてもよいし、優先順位番号を直接的に入力、あるいは指定可能としても良い。
また、上記実施形態では、例えば、「接続先1」について、ESSIDは保存されているがBSSIDおよび使用チャネルが記憶されていないときは(図10のステップS43でNOの場合)、優先順位に従って「接続先2」への直接接続を試みるという処理を行っていた。これに限らず、このような場合は、次の優先順位である「接続先2」への直接接続を試みる前に、当該「接続先1」を対象としてパッシブスキャンあるいはアクティブスキャンを行うようにしてもよい。すなわち、「接続先1」のESSIDを有するAPを検索するようにしてもよい(例えば、上記図11のステップS51〜S61の処理を行う)。そして、その結果、当該APが検索でき、接続が確立すれば、その時点でBSSIDおよび使用チャネルを保存するようにしてもよい。これは、例えば、「接続先1」については、ESSID、BSSID、使用チャネルの全てが設定済みであり、「接続先2」についてはESSIDのみ設定済みのような状態があったとする。そして、当該「接続先1」と「接続先2」の優先順位を入れ替えたような場合は、優先順位の高い「接続先1」については、ESSIDしか設定されていないという状況となる。このような場合に、「接続先1」へ直接接続できなかった場合でも、設定済みのESSIDを用いてパッシブスキャンあるいはアクティブスキャンを行うことで、「接続先1」への接続を確立することが可能となる。これにより、「接続先1」の設定が不十分だった場合でも、むやみに低順位のAPに接続しにいくことを防ぐことができる。
また、上記BSSIDや使用チャネル番号を保存するタイミングに関して、例えば、上記設定画面においてESSIDを設定したときに、当該ESSIDを有するAPとの接続を試行するようにしてもいい。そして、この時点で接続に成功すれば、この時点でBSSIDおよび使用チャネル番号も保存するようにすればいい。つまり、設定画面処理において、ESSIDの他、BSSIDおよび使用チャネル番号をも取得して保存するようにしてもよい。これにより、設定画面を用いた設定後、初回の接続確立処理の時点で、上記「直接接続」が可能となる。
また、上記設定画面においては、ESSIDの他、BSSIDおよび使用チャネル番号を表示する場合を例に挙げていたが(上記図9参照)、BSSID、使用チャネル番号については表示しなくてもよい。
更には、AP設定が既に行われているか否かの判定として、上記図10のステップS42の処理においては、AP設定データ326にESSIDが保存されているか否かを判定し、ステップS43の処理においては、BSSIDと使用チャネル番号が保存されているか否かを判定していた。つまり、データの存在の有無をもって判定するようにしていた。しかし、この他、例えば「設定済みフラグ」のような所定のフラグを設けておき、AP設定の保存時に、当該フラグをオンに設定して保存用データメモリ34に記憶するようにしてもよい。そして、上記ステップS42または/およびステップS43の判定においては、当該フラグがオンに設定されているか否かをもって、AP設定が既に行われているか否かを判定するようにしてもよい。
また、上記実施形態では、使用チャネル番号をAP設定データ326に含めて保存するようにしていたが、これを保存することは必ずしも必須ではなく、例えば、無線通信に使用する使用帯域が予め固定されているような場合(使用チャネル番号が予め1つだけしかないような場合)は、使用チャネル番号については保存しなくてもよい。
また、設定済みのAPとの接続に失敗した際、当該APに関連して保存済みの設定済みBSSID3262および設定済みチャネル番号3263については消去するようにしてもよい。また、消去する場合については、好ましくは、接続失敗回数をカウントするようにし、失敗カウントが所定数に達したときに消去することが好ましい。
(第2の実施形態)
次に、本発明の第2の実施形態にかかるゲーム装置およびその処理について説明する。第2の実施形態にかかるゲーム装置の機能ブロック図およびハードウェア構成を示すブロック図は、第1の実施形態と同様である(図2および図3参照)。また、ネットワーク構成も同様であるとする(図1参照)。しかし、本実施形態では、メインメモリ32には第1の実施形態とは部分的に異なるプログラムが格納され、CPU31はそのプログラムを実行することにより、第1の実施形態とは異なる機能をも実現する。
次に、第2の実施形態における処理の概要を説明する。第1の実施形態においては、上述したような接続確立処理における「同期スキャン」(上記図10のステップS44〜S46参照)が毎回実行される構成となっていた。これに対して、第2の実施形態では、例えば、ゲーム装置1の電源が投入された後、初めて当該「同期スキャン」が実行されてAPとゲーム装置1とのTSFタイマの同期がとられた後は、当該ゲーム装置1の電源が切断されるまでの間は、上記接続確立処理における「同期スキャン」の実行を省略するという構成を採る。これは、一旦TSFタイマの同期がとられれば、その後しばらくの間は、APとゲーム装置1との間でTSFタイマのズレは生じないと考えられるため、この間については同期スキャンにかかる処理を省略しようとするものである。
図13は、第2の実施形態にかかるメインメモリ32のメモリマップを示す図である。なお、当該実施形態に係るメモリマップは、上述した第1の実施形態で図5を用いて説明したメモリマップの一時記憶領域327に同期スキャン済みフラグ330を加えたものに相当する。また、接続確立処理プログラム324は、後述するように、その処理内容の一部が第1の実施形態とは異なるものとなっている。その他のプログラムやデータは、第1の実施形態と同様である。従って、同期スキャン済みフラグ330以外のプログラムやデータについては同一の参照符号を付して詳細な説明を省略する。
同期スキャン済みフラグ330は、上述したような「同期スキャン」を実行して、上記TSFタイマの同期が済んでいるか否かを示すためのフラグである。当該フラグがオフに設定されているときは、「同期スキャン」が一度も実行されていないことを示し、オンに設定されているときは、「同期スキャン」が行われ、TSFタイマの同期にも成功したことを示す。換言すれば、当該フラグは、「同期スキャン」およびTSFタイマの同期の必要性の有無を示すフラグでもある。
ここで、本実施形態では、ゲーム装置1の電源がオンにされたときに当該フラグを記憶するための領域がメインメモリ32上に確保され、ゲーム装置1の電源がオフにされるまでの間、当該領域が保持され続けるものとして説明する。すなわち、同期スキャン済みフラグ330の保持期間を、ゲーム装置1の電源がオンにされたときから、ゲーム装置1の電源がオフにされるときまでの間を一例として説明する。なお、当該同期スキャン済みフラグ330の保持期間については、ゲーム装置1の電源オン〜オフまでの間の他、例えば、所定のゲーム処理の起動時〜終了時のような期間であってもよい。すなわち、ゲーム装置1起動時の初期メニューから所定のゲーム処理を実行したときに、当該ゲーム処理の初期化処理の一環として同期スキャン済みフラグ330の領域確保や初期設定を行い、当該ゲーム処理が終了したときに、同期スキャン済みフラグ330をメインメモリ32から消去するようにしてもよい。そして、他のゲーム処理が起動された際に、再度上記のような同期スキャン済みフラグ330の領域確保や初期設定を行うようにしてもよい。
次に、第2の実施形態にかかる接続関連処理の詳細について説明する。本実施形態における接続関連処理は、第1の実施形態で上述した図10のフローチャートにおける処理を一部変更したものであり、その他の処理については、第1の実施形態と同様である(但し、上記のように、ゲーム装置1の起動時に上記同期スキャン済みフラグ330の領域確保・初期設定の処理は実行される)。
図14は、第2の実施形態にかかる接続確立処理のうちの一部分を示すフローチャートである。なお、このフローチャートのうちステップS41〜S43、S44〜S46、および、S47以降は、上述した第1の実施形態における図10に示したフローチャートと同一であり、両フローチャートにおいて同一のステップには同一の符号が付されている。以下では、本実施形態におけるステップS201、S202にかかる処理を中心に説明する。
図14において、ステップS43の処理(ステップS43でYESのとき)の次に、ステップS201において、同期スキャン済みフラグ330がオンに設定されているか否かが判定される。当該判定の結果、オフに設定されていると判定されたときは(ステップS201でNO)、ゲーム装置1の電源投入後、一度も同期スキャンが実行されていないこととなる。そのため、第1の実施形態で上述したようなステップS44〜ステップS46の処理を実行することで、同期スキャンを行い、TSFタイマを同期するための処理が実行される。TSFタイマの同期が終われば、次に、ステップS202において、同期スキャン済みフラグ330にオンが設定される。その後、第1の実施形態で上述したようなステップS47以降の処理が実行される。
一方、上記ステップS201の判定の結果、同期スキャン済みフラグ330がオンに設定されていると判定されたときは(ステップS201でYES)、ゲーム装置の電源投入後、一度「同期スキャン」が行われ、TSFタイマが同期済みであることとなる。つまり、この時点ではTSFタイマを同期する必要はないため、このときは、上記ステップS44〜S46、S202の処理はスキップされて、ステップS47へと処理が進められることとなる。以降は、基本的には、上記第1の実施形態で説明したのと同様の処理が実行される。但し、上記ステップS581にて時刻同期が行われた後に、同期スキャン済みフラグ330をオンに設定し、上述したような、AP100への接続要求が行われる。
このように、第2の実施形態では、接続確立処理の度に毎回「同期スキャン」を行わずに、所定の期間(ゲーム装置の電源オン〜オフ、ゲーム処理の起動〜終了等)の間は、最初に一度「同期スキャン」によりTSFタイマが同期されれば、その後は当該期間終了までは「同期スキャン」にかかる処理を省略している。これにより、当該所定の期間における2度目以降の接続確立処理において、その接続確立にかかる時間を更に短縮することが可能となる。
(第3の実施形態)
次に、本発明の第3の実施形態にかかるゲーム装置およびその処理について説明する。上述の第2の実施形態では、所定の期間を単位として、同期スキャンの必要性の有無を同期スキャン済みフラグ330を用いて判断していた。これに対して、第3の実施形態では、TSFタイマの値をハードウェア的に保持可能な構成を採ることで、上述したような同期スキャンにかかる処理を不要とするものである。
図15は、第3の実施形態にかかるゲーム装置1の内部構成の一例を示すブロック図である。第3の実施形態に係るゲーム装置1は、上述した第1の実施形態で図3を用いて説明したゲーム装置1の機能構成にTSFカウンタ51を加えたものに相当し、他の構成部は、第1の実施形態と同様である。従って、TSFカウンタ51以外の構成部については同一の参照符号を付して詳細な説明を省略する。
TSFカウンタ51は、上述したようなTSFタイマの値を保持するためのカウンタであり、例えば、計時専用のチップで実現される。また、TSFカウンタ51は、ゲーム装置1の電源が切られている間も内蔵電池から電源供給を受けて動作可能である。また、本実施形態では、上述したような3つのAPが接続先として設定されている場合は、最も優先度の高い接続先、例えば、上記図8の「接続先1」で示されるAPを対象としたTSFタイマの値のみを保持するものとする。そのため、一旦「接続先1」で示されるAPとの間でTSFタイマの同期が行われれば、その後は、ハードウェア的にTSFタイマがカウントされていき、当該APのTSFタイマと同じ値を保持し続けることが可能となっている。「接続先2」「接続先3」で示されるAPについても、TSFタイマの値を保持するようにしても良い。この場合、各APのビーコンから得られたTSFタイマの値と、TSFカウンタ51の値との差分値をAP毎に保存しておく。接続処理のたびに、上記差分値とTSFカウンタ51の値からTSFタイマの値を算出することで、同期が可能となる。
次に、第3の実施形態における接続確立処理について説明する。上述のようなTSFカウンタ51を用いることで、第3の実施形態においては、上記「同期スキャン」にかかる処理を省略することが可能となる。図16は、第3の実施形態にかかる接続確立処理のうちの一部分を示すフローチャートである。当該フローチャートは、第1の実施形態で上述した図10のフローチャートからステップS44〜S46の処理を省いた内容となっている。すなわち、図16のステップS43でYESと判断されたときは、次に、ステップS47の処理において、上記TSFカウンタ51の値を取得することで、各種フレームの送受信のタイミングを調整して直接接続を試みる。また、第3の実施形態では、ステップS581にて時刻同期が行われた後に、当該受信したビーコンに含まれるTSFタイマ値をTSFカウンタ51に記憶する処理も実行される。
このように、第3の実施形態では、上記のようなTSFカウンタ51をハードウェア的に備えることで、「同期スキャン」にかかる処理が不要となる。この構成は、据置型ゲーム装置のように、常時、電力が供給可能(いわゆる省電力モードを含む)な環境にある通信端末に対して適用する場合に特に有用である。
なお、上記の例では、計時専用チップであるTSFカウンタ51を、同じく計時専用チップであるRTC39とは別に設けた構成を例に挙げたが、この他、例えば、上記RTC39の値を利用してTSFタイマの値を算出するようにしてもよい。例えば、上記APと同期したときの時刻をRTC39から取得し、保存用データメモリ34に「初回同期時刻」として保存する。そして、次回以降に当該APと接続確立しようとする際は、まず、そのときの時刻(現在時刻)をRTC39から取得する。次に、当該取得した時刻と上記「初回同期時刻」との差分(つまり、初回同期時刻からの経過時間)を算出し、この値に基づいて、TSFタイマの値を決定するようにしてもよい。
(第4の実施形態)
次に、本発明の第4の実施形態にかかるゲーム装置およびその処理について説明する。第4の実施形態にかかるネットワーク構成、ゲーム装置の機能ブロック図およびハードウェア構成を示すブロック図は、第1の実施形態と同様である(図1、図2および図3参照)。しかし、本実施形態では、メインメモリ32には第1の実施形態とは部分的に異なるプログラムが格納され、CPU31はそのプログラムを実行することにより、第1の実施形態とは異なる機能をも実現する。
次に、第4の実施形態における処理の概要を説明する。第1の実施形態においては、上述したような接続確立処理における「同期スキャン」(上記図10のステップS44〜S46参照)が毎回実行される構成となっていた。これに対して、第4の実施形態では、上記「同期スキャン」にかかる処理と直接接続にかかる処理の順序を入れ替えて、まず、直接接続を試みる。その結果、接続に失敗したときは、「同期スキャン」を行ってTSFタイマを同期し、再度直接接続を試みる、という構成を採る。
なお、第4の実施形態に係るメモリマップは、上述した第1の実施形態で図5を用いて説明したメモリマップのうち、接続確立処理プログラム324の処理内容の一部が第1の実施形態とは異なるものとなっている。その他のプログラムやデータは、第1の実施形態と同様である。
次に、第4の実施形態にかかる接続関連処理の詳細について説明する。本実施形態における接続関連処理は、第1の実施形態で上述した図10のフローチャートにおける処理を一部変更したものである。より具体的には、図10のステップS44〜S48の処理の順序を変更したものである。図17は、第4の実施形態にかかる接続確立処理のうちの一部分を示すフローチャートである。図17において、まず、ステップS41〜S43までは、第1の実施形態と同様の処理が実行される。ステップS43の次に、第4の実施形態では、ステップS301において、無線チャネルとBSSIDを指定した直接接続が試みられる。そして、続くステップS302において、接続成功か否かが判定される。当該判定の結果、接続に成功したと判定されたときは(ステップS302でYES)、上述したステップS62の処理に進む。一方、接続失敗と判定されたとき(ステップS302でNO)、第4の実施形態では、上述したような「同期スキャン」にかかる処理が実行される。すなわち、ステップS303において、使用チャネルを指定しての同期スキャン(プローブ要求フレームの送信)が実行され、ステップS304において、プローブ応答フレームを所定時間内に受信したか否かが判定される。その結果、プローブ応答フレームを所定時間内に受信したと判定されたときは(ステップS304でYES)、ステップS305においてTSFタイマが同期され、その後、上記ステップS301に戻り、直接接続が再度試みられることになる。一方、プローブ応答フレームを所定時間内に受信しなかったと判定されたときは(ステップS304でNO)、第1の実施形態で上述したステップS49以降の処理が実行されることになる。
このように、第4の実施形態では、先に直接接続を試みて、この接続に失敗したとき(例えば、同期がうまくとれなかったような場合)に「同期スキャン」にかかる処理を行って、再度の直接接続を試みる、という処理構成を採っている。これにより、一旦TSFタイマの同期がとられた後、時間がさほど経過していない状態で再度接続確立処理が指示されたような場合は、「同期スキャン」にかかる処理を省略することが可能となり、接続確立にかかる時間を軽減することが可能となる。
本発明にかかる通信装置、通信制御プログラム、通信制御方法、および通信システムは、通信端末と接続対象装置との接続確立にかかる時間を軽減することができ、無線通信が可能な携帯型ゲーム装置や据置型ゲーム装置、携帯情報端末やパーソナルコンピュータ、無線通信が可能な家電製品等に有用である。
1…ゲーム装置
11…下側ハウジング
12…下側LCD
13…タッチパネル
14…操作ボタン
15、26…LED
16…マイクロフォン用孔
21…上側ハウジング
22…上側LCD
23…内側カメラ
24…音抜き孔
25…外側カメラ
27…タッチペン
28、29…メモリカード
31…CPU
32…メインメモリ
33…メモリ制御回路
34…保存用データメモリ
35…プリセットデータ用メモリ
36…メモリカードI/F
37…無線通信モジュール
38…ローカル通信モジュール
39…RTC
40…電源回路
41…I/F回路
42…マイク
43…アンプ

Claims (22)

  1. 接続対象装置と無線通信を行う通信装置であって、
    第1記憶部と、
    接続確立のための指示が発行された際に、所定の接続対象装置を一意に特定可能な情報である接続対象装置特定情報を含む接続情報が前記第1記憶部に保存されているか否かを判別する第1判別手段と、
    前記第1判別手段によって前記接続情報が前記第1記憶部に保存されていると判別されたときに、当該第1記憶部に保存されている前記接続対象装置特定情報に基づいて特定した接続対象装置に対して無線通信による接続を確立するための処理を行う第1接続手段とを備える、通信装置。
  2. 前記通信装置は、
    前記接続確立のための指示が発行された際に、接続可能な前記接続対象装置を検索し、前記接続情報を含む信号を受信する検索手段と、
    前記検索手段で検索された接続対象装置に対して、前記受信した信号に含まれる前記接続情報を用いて接続を確立するための処理を行う第2接続手段と、
    前記第2接続手段によって接続が確立されたとき、当該接続に用いている前記接続情報を前記第1記憶部に保存する接続情報保存手段とを更に備え、
    前記接続確立のための指示が発行されたとき、前記第1判別手段による判定の結果、前記接続情報が前記第1記憶部に保存されているときは前記第1接続手段による接続の確立が行われ、前記接続情報が前記第1記憶部に保存されていないときは前記検索手段および前記第2接続手段による接続の確立が行われる、請求項1に記載の通信装置。
  3. 前記通信装置は、前記第1接続手段による接続確立が成功したか否かを判定する接続結果判定手段を更に備え、
    前記接続確立のための指示が発行されたとき、前記第1接続手段による接続の確立が行われ、当該第1接続手段による接続確立が失敗したと前記接続結果判定手段によって判定されたときは、前記検索手段および前記第2接続手段による接続の確立が行われ、
    前記接続情報保存手段は、前記第1接続手段による接続確立が失敗したときに行われた前記第2接続手段による接続確立が成功したときに当該接続に用いた前記接続情報を保存する、請求項2に記載の通信装置。
  4. 前記接続情報保存手段は、前記第2接続手段による接続確立が成功したときに前記第1記憶部に保存された前記接続情報を当該確立した接続が切断された後も保持する、請求項2に記載の通信装置。
  5. 前記検索手段は、利用可能な周波数帯域の全てを対象として接続対象装置を検索する、請求項2に記載の通信装置。
  6. 前記接続対象装置特定情報は、BSSID(Basic Service Set Identifier)である、請求項1に記載の通信装置。
  7. 前記第1記憶部には、複数の接続対象装置それぞれに対応する複数の接続情報が保存可能であり、
    前記通信装置は、
    前記第1接続手段による接続確立が成功したか否かを判定する接続結果判定手段と、
    前記複数の接続対象装置への接続優先度を前記複数の接続情報と関連づけて設定する優先度設定手段とを更に備え、
    前記第1判別手段は、前記接続優先度がより高く設定されている接続対象装置の接続情報が前記第1記憶部に保存されているか否かを判別し、保存されていると判別されたときであって、前記第1接続手段による接続の確立が試みられた結果、前記結果判定手段により、当該接続優先度がより高く設定されている接続対象装置への前記第1接続手段による接続確立が失敗したと判定されたときは、次に接続優先度が高く設定されている接続対象装置の接続情報が当該第1記憶部に保存されているか否かを判別する、請求項1に記載の通信装置。
  8. 前記通信装置は、前記複数の接続対象装置への接続優先度を前記複数の接続情報と関連づけて設定する優先度設定手段を更に備え、
    前記第1判別手段は、前記接続優先度がより高く設定されている接続対象装置の接続情報が前記第1記憶部に保存されているか否かを判別し、前記接続情報が前記第1記憶部に保存されていないと判別されたときに、次に接続優先度が高く設定されている接続対象装置の接続情報が当該第1記憶部に保存されているか否かを判別する、請求項1に記載の通信装置。
  9. 前記通信装置は、前記複数の接続対象装置への接続優先度を変更する優先度変更手段を更に備える、請求項7または8に記載の通信装置。
  10. 前記通信装置は、前記複数の接続対象装置への接続優先度を前記複数の接続情報と関連づけて設定する優先度設定手段を更に備え、
    前記第1判別手段は、前記接続優先度がより高く設定されている接続対象装置の接続情報が前記第1記憶部に保存されているか否かを判別し、
    前記検索手段は、前記第1判別手段によって、前記接続情報が前記第1記憶部に保存されていないと判別されたときに、当該接続優先度が設定されている接続対象装置を検索し、当該接続対象装置の接続情報を含む信号を受信し、
    前記第2接続手段は、前記検索手段で検索された接続対象装置に対して接続の確立を行う、請求項2に記載の通信装置。
  11. 前記接続情報保存手段は、前記第2接続手段による接続が確立したときに使用されている周波数帯域を示す周波数帯域情報を前記接続情報に含めて前記第1記憶部に保存し、
    前記第1接続手段は、前記保存された周波数帯域情報で示される周波数帯域を使用して、前記接続対象装置特定情報に基づいて特定した接続対象装置に対して接続を確立するための処理を行う、請求項2に記載の通信装置。
  12. 前記検索手段は、前記接続対象装置の属するネットワークに関する識別情報であって、前記接続対象装置特定情報とは異なる情報であるネットワーク識別情報および前記接続対象装置特定情報を少なくとも含む信号を受信し、
    前記通信装置は、
    前記ネットワーク識別情報を保存する第2記憶部と、
    前記検索手段が受信した信号に含まれるネットワーク識別情報と前記第2記憶部に保存されているネットワーク識別情報とが一致するか否かを判別する第2判別手段とを更に備え、
    前記第2接続手段は、前記第2判別手段による判別の結果、前記検索手段が受信した信号に含まれるネットワーク識別情報と前記第2記憶部に保存されているネットワーク識別情報とが一致するときは、前記検索手段が前記信号を受信したときに用いられていた周波数帯域を指定し、当該信号に含まれていた接続対象装置特定情報で示される装置を接続先に指定した接続の確立を行う、請求項11に記載の通信装置。
  13. 前記第1記憶部には、複数の接続対象装置それぞれに対応する複数の接続情報が保存可能であり、
    前記通信装置は、前記複数の接続対象装置への接続優先度を前記複数の接続情報と関連づけて設定する優先度設定手段を更に備え、
    前記第1判別手段は、前記接続優先度がより高く設定されている接続対象装置の接続情報が前記第1記憶部に保存されているか否かを判別し、
    前記第1判別手段によって、前記接続優先度がより高く設定されている接続対象装置の接続情報が前記第1記憶部に保存されていないと判別されたとき、前記検索手段は、所定の前記接続対象装置から定期的に発せられる信号であって、前記ネットワーク識別情報および接続対象装置特定情報を含む信号を受信し、
    前記第2判別手段は、前記検索手段が受信した信号に含まれている前記ネットワーク識別情報と、前記第2記憶部に保存されている、前記接続優先度がより高く設定された接続対象装置についての前記ネットワーク識別情報が一致するか否かを判別し、
    前記第2接続手段は、前記第2判別手段によって前記ネットワーク識別情報が一致すると判別されたときは、前記検索手段が受信した信号に含まれる前記接続対象特定情報で示される接続対象装置を接続先として指定して接続の確立を行い、
    前記接続情報保存手段は、前記第2接続手段による接続が確立したときに、前記検索手段が受信した信号に含まれる前記接続対象特定情報、および、当該接続に使用している周波数帯域を示す前記周波数帯域情報を当該接続が確立した接続対象装置に関する前記接続情報として前記第1記憶部に保存する、請求項12に記載の通信装置。
  14. 前記第2判別手段は、前記第2接続手段による接続の確立が失敗したときは、前記第2記憶部に保存されている前記ネットワーク識別情報のうち、次に接続優先度が高く設定された接続対象装置に対応するネットワーク識別情報と、前記受信した信号に含まれるネットワーク識別情報とが一致するか否かを判別する、請求項13に記載の通信装置。
  15. 前記第2判別手段は、前記第2記憶部に保存されている前記ネットワーク識別情報のうち、次に接続優先度が高く設定された接続対象装置に対応するネットワーク識別情報と、前記受信した信号に含まれるネットワーク識別情報が一致しないと判定したときは、当該第2記憶部に保存されているネットワーク識別情報のうち、次に接続優先度が高く設定された接続対象装置についてのネットワーク識別情報と、当該受信した信号に含まれるネットワーク識別情報とが一致するか否かを判定する、請求項13に記載の通信装置。
  16. 前記識別情報は、前記接続対象装置と無線通信を行うための周波数帯域を示す周波数帯域情報を含み、
    前記通信装置は、前記第1記憶部に保存された前記周波数帯域情報で示される周波数帯域を指定して、前記接続対象装置を探索し、時刻同期用の情報を含む信号を当該接続対象装置から受信し、当該時刻同期用の情報に基づき当該接続対象装置との間で時刻同期を行う同期手段を更に備える、請求項1に記載の通信装置。
  17. 前記同期手段は、前記第1接続手段による接続が開始される直前に、前記周波数帯域を指定して前記接続対象装置を探索して、前記時刻同期を行う、請求項16に記載の通信装置。
  18. 前記通信装置は、
    前記同期手段による時刻同期を行ったか否かを示す情報を記憶する第3記憶部と、
    前記第1接続手段による接続が開始される前に、前記第3の記憶部に記憶されている前記時刻同期を行ったか否かを示す情報を参照し、時刻同期が既に行われたか否かを判定する同期済み判定手段とを更に備え、
    前記同期手段は、前記同期済み判定手段が前記時刻同期はまだ行われていないと判定したときのみ、前記周波数帯域を指定して前記接続対象装置を探索して、前記時刻同期を行い、当該時刻同期を行ったことを示す情報を前記第3記憶部に保存する、請求項16に記載の通信装置。
  19. 前記通信装置は、前記第1接続手段による接続が成功したか否かを判定する接続結果判定手段を更に備え、
    前記同期手段は、前記接続結果判定手段が前記第1接続手段による接続に失敗したと判定したときに、前記周波数帯域を指定して前記接続対象装置を探索して、前記時刻同期を行う、請求項16に記載の通信装置。
  20. 接続対象装置と無線通信を行う通信装置のコンピュータに実行させる通信制御プログラムであって、
    前記コンピュータを、
    接続確立のための指示が発行された際に、所定の接続対象装置を一意に特定可能な情報である接続対象装置特定情報を含む接続情報が所定の記憶媒体である第1記憶手段に保存されているか否かを判別する第1判別手段と、
    前記第1判別手段において前記接続情報が第1記憶手段に保存されていると判別されたときに、当該第1記憶手段に保存されている前記接続対象装置特定情報に基づいて特定した接続対象装置に対して無線通信による接続を確立するための処理を行う第1接続手段として機能させる、通信制御プログラム。
  21. 接続対象装置と無線通信を行う通信装置を制御するための通信制御方法であって、
    接続確立のための指示が発行された際に、所定の接続対象装置を一意に特定可能な情報である接続対象装置特定情報を含む接続情報が所定の記憶媒体である第1記憶手段に保存されているか否かを判別するステップと、
    前記判別するステップにおいて、前記接続情報が第1記憶手段に保存されていると判別されたとき、前記第1記憶手段に保存されている前記接続対象装置特定情報に基づいて特定した接続対象装置に対して無線通信による接続を確立するための処理を行うステップとを備える、通信制御方法。
  22. 通信装置と接続対象装置とからなる通信システムであって、
    前記通信装置は、
    第1記憶部と、
    前記接続対象装置との接続確立のための指示が発行された際に、当該接続対象装置を一意に特定可能な情報である接続対象装置特定情報を含む接続情報が前記第1記憶部に保存されているか否かを判別する第1判別手段と、
    前記第1判別手段によって前記接続情報が前記第1記憶部に保存されていると判別されたときに、当該第1記憶部に保存されている前記接続対象装置特定情報に基づいて特定した接続対象装置に対して無線通信による接続を確立するための処理を行う第1接続手段とを備え、
    前記接続対象装置は、前記接続対象装置特定情報が記憶された特定情報記憶手段を備える、通信システム。
JP2010061511A 2010-03-17 2010-03-17 通信装置、通信制御プログラム、通信制御方法、および通信システム Active JP5498212B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2010061511A JP5498212B2 (ja) 2010-03-17 2010-03-17 通信装置、通信制御プログラム、通信制御方法、および通信システム
EP10164575.2A EP2367383B1 (en) 2010-03-17 2010-06-01 Communication apparatus, computer-readable storage medium having stored therein communication control program, communication control method, and communication system
US12/791,214 US8745248B2 (en) 2010-03-17 2010-06-01 Communication apparatus, computer-readable storage medium having stored therein communication control program, communication control method, and communication system for decreased connection time to an access point
US14/260,538 US9124604B2 (en) 2010-03-17 2014-04-24 Communication apparatus, computer-readable storage medium having stored therein communication control program, communication control method, and communication system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010061511A JP5498212B2 (ja) 2010-03-17 2010-03-17 通信装置、通信制御プログラム、通信制御方法、および通信システム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2014045216A Division JP5986597B2 (ja) 2014-03-07 2014-03-07 通信装置、通信制御プログラム、通信制御方法、および通信システム

Publications (2)

Publication Number Publication Date
JP2011199408A true JP2011199408A (ja) 2011-10-06
JP5498212B2 JP5498212B2 (ja) 2014-05-21

Family

ID=44201344

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010061511A Active JP5498212B2 (ja) 2010-03-17 2010-03-17 通信装置、通信制御プログラム、通信制御方法、および通信システム

Country Status (3)

Country Link
US (2) US8745248B2 (ja)
EP (1) EP2367383B1 (ja)
JP (1) JP5498212B2 (ja)

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013143624A (ja) * 2012-01-10 2013-07-22 Kddi Corp 複数の無線通信帯域に対する探索時間を短くする無線lan用のアクセスポイント、無線端末及びプログラム
JP2013161250A (ja) * 2012-02-03 2013-08-19 Canon Inc 無線通信装置およびその制御方法、プログラム
JP2014057232A (ja) * 2012-09-13 2014-03-27 Nec Access Technica Ltd 無線lan親機のリモート判別方法およびシステム
JP2014165794A (ja) * 2013-02-27 2014-09-08 Nec Access Technica Ltd 通信機器、通信システム及び通信機器の制御方法
JP2014216956A (ja) * 2013-04-26 2014-11-17 キヤノン株式会社 通信装置、通信方法およびプログラム
JP2015119215A (ja) * 2013-12-16 2015-06-25 カシオ計算機株式会社 無線通信装置、無線通信システム、無線通信方法、プログラム、マスター、及びスレーブ
JP2015179924A (ja) * 2014-03-19 2015-10-08 カシオ計算機株式会社 無線通信装置、無線通信システム、無線通信方法、プログラム、スレーブ、及びマスター
JP2015211456A (ja) * 2014-04-30 2015-11-24 株式会社Pfu 画像読取装置、および、画像処理方法
JP2016119622A (ja) * 2014-12-22 2016-06-30 オリンパス株式会社 携帯機器、通信システム、通信接続方法、及び通信接続プログラム
JP2017028457A (ja) * 2015-07-21 2017-02-02 キヤノン株式会社 通信装置、通信方法及びプログラム
JP2017175340A (ja) * 2016-03-23 2017-09-28 Necプラットフォームズ株式会社 通信端末及び方法
US9787574B2 (en) 2013-04-26 2017-10-10 Canon Kabushiki Kaisha Communication apparatus, control method therefor, and computer-readable storage medium
WO2018043245A1 (ja) * 2016-08-31 2018-03-08 村田機械株式会社 無人走行車、無人走行車の走行システム、及び、無人走行車の制御方法
JP2018064304A (ja) * 2018-01-26 2018-04-19 キヤノン株式会社 通信装置およびプログラム
JP2019033445A (ja) * 2017-08-09 2019-02-28 キヤノン株式会社 通信装置及びその制御方法、並びにプログラム
JP2020005115A (ja) * 2018-06-28 2020-01-09 株式会社Pfu 情報処理装置、情報処理方法、及びプログラム
JP2020072442A (ja) * 2018-11-02 2020-05-07 キヤノン株式会社 通信装置、制御方法、およびプログラム
US10849169B2 (en) 2015-07-21 2020-11-24 Canon Kabushiki Kaisha Communication apparatus for connecting to a wireless network using a simple operation

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4871373B2 (ja) 2009-06-19 2012-02-08 任天堂株式会社 情報処理システムおよび情報処理装置
JP5674296B2 (ja) * 2009-09-09 2015-02-25 任天堂株式会社 情報処理システムおよび情報処理装置
JP5498212B2 (ja) * 2010-03-17 2014-05-21 任天堂株式会社 通信装置、通信制御プログラム、通信制御方法、および通信システム
JP2011250874A (ja) 2010-05-31 2011-12-15 Nintendo Co Ltd 情報処理プログラム、情報処理装置、情報処理システム及び情報処理方法
JP5593566B2 (ja) 2010-06-10 2014-09-24 任天堂株式会社 情報処理システム、情報処理装置、情報処理装置の制御方法および情報処理装置の制御プログラム
JP5507350B2 (ja) 2010-06-11 2014-05-28 任天堂株式会社 携帯型情報端末、携帯型情報端末制御プログラム、携帯型情報システム、および、携帯型情報端末制御方法
JP5677811B2 (ja) * 2010-06-11 2015-02-25 任天堂株式会社 携帯型情報端末、携帯情報システム、携帯型情報端末制御プログラム
JP2012018657A (ja) 2010-06-11 2012-01-26 Nintendo Co Ltd 情報処理端末、情報処理システム、情報処理プログラム
JP4999213B2 (ja) 2010-09-17 2012-08-15 任天堂株式会社 情報処理プログラム、携帯端末装置、システム、情報処理方法及び通信システム
JP4882022B1 (ja) 2010-12-28 2012-02-22 任天堂株式会社 通信システム、情報処理プログラム、情報処理方法、情報処理装置、情報処理システム
WO2014042464A2 (ko) * 2012-09-14 2014-03-20 엘지전자 주식회사 무선랜에서 스캐닝 방법 및 장치
KR20140088318A (ko) * 2013-01-02 2014-07-10 한국전자통신연구원 무선랜에서 채널 정보를 공유하여 채널 검색 시간을 줄이는 방법 및 장치
US9608859B2 (en) * 2013-10-25 2017-03-28 Aruba Networks, Inc. System, apparatus and method for reducing failover time through redundancy using virtual access points
JP6203285B2 (ja) 2013-12-10 2017-09-27 株式会社東芝 無線装置および無線通信方法
JP6383149B2 (ja) * 2013-12-27 2018-08-29 キヤノン株式会社 通信装置、通信装置の制御方法
WO2018063172A1 (en) * 2016-09-28 2018-04-05 Hewlett-Packard Development Company, L.P. Identifiers for networking devices
KR20190119400A (ko) * 2018-04-12 2019-10-22 (주)에프씨아이 비콘 신호의 수신 시간을 효율적으로 추정하기 위한 방법 및 이를 위한 수신 장치
WO2020043713A1 (en) * 2018-08-30 2020-03-05 Signify Holding B.V. A method of configuring a device that is to be added to a wireless network system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004140778A (ja) * 2002-08-21 2004-05-13 Internatl Business Mach Corp <Ibm> コンピュータ装置、無線ネットワークの接続方法、およびプログラム
JP2007060566A (ja) * 2005-08-26 2007-03-08 Canon Inc 無線装置、無線接続方法、及びプログラム
JP2007104417A (ja) * 2005-10-05 2007-04-19 Ntt Docomo Inc 移動通信端末
US20090029728A1 (en) * 2007-07-25 2009-01-29 Microsoft Corporation Base station initiated proximity service discovery and connection establishment

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002252620A (ja) * 2001-02-23 2002-09-06 Toshiba Corp 通信設定方法及び電子機器
US6842460B1 (en) * 2001-06-27 2005-01-11 Nokia Corporation Ad hoc network discovery menu
US7120138B2 (en) * 2001-07-02 2006-10-10 Koninklijke Philips Electronics N.V. Dynamic frequency selection with recovery for a basic service set network
JP2004187001A (ja) 2002-12-03 2004-07-02 Sony Corp 無線接続方法
JP2005094053A (ja) 2003-09-11 2005-04-07 Sanyo Electric Co Ltd ネットワーク通信装置
JP2006109074A (ja) 2004-10-05 2006-04-20 Matsushita Electric Ind Co Ltd 無線通信システム
US20070248058A1 (en) * 2006-04-20 2007-10-25 Victor Fajardo Fast link-down detection systems and methods
US8275377B2 (en) * 2006-04-20 2012-09-25 Qualcomm Incorporated Wireless handoffs between multiple networks
US8023994B2 (en) * 2006-07-07 2011-09-20 Research In Motion Limited Provisioning methods and apparatus with use of a provisioning ESSID derived from both predetermined criteria and network-specific criteria
US9288751B2 (en) * 2007-08-29 2016-03-15 Qualcomm Incorporated Use of position data to select wireless access point
JP5498212B2 (ja) * 2010-03-17 2014-05-21 任天堂株式会社 通信装置、通信制御プログラム、通信制御方法、および通信システム
KR20130037997A (ko) * 2011-10-07 2013-04-17 한국전자통신연구원 지향성 통신을 이용하는 무선통신 시스템 및 무선통신방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004140778A (ja) * 2002-08-21 2004-05-13 Internatl Business Mach Corp <Ibm> コンピュータ装置、無線ネットワークの接続方法、およびプログラム
JP2007060566A (ja) * 2005-08-26 2007-03-08 Canon Inc 無線装置、無線接続方法、及びプログラム
JP2007104417A (ja) * 2005-10-05 2007-04-19 Ntt Docomo Inc 移動通信端末
US20090029728A1 (en) * 2007-07-25 2009-01-29 Microsoft Corporation Base station initiated proximity service discovery and connection establishment

Cited By (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013143624A (ja) * 2012-01-10 2013-07-22 Kddi Corp 複数の無線通信帯域に対する探索時間を短くする無線lan用のアクセスポイント、無線端末及びプログラム
JP2013161250A (ja) * 2012-02-03 2013-08-19 Canon Inc 無線通信装置およびその制御方法、プログラム
JP2014057232A (ja) * 2012-09-13 2014-03-27 Nec Access Technica Ltd 無線lan親機のリモート判別方法およびシステム
JP2014165794A (ja) * 2013-02-27 2014-09-08 Nec Access Technica Ltd 通信機器、通信システム及び通信機器の制御方法
US11792632B2 (en) 2013-04-26 2023-10-17 Canon Kabushiki Kaisha Communicating apparatus, communication method, and storage medium storing program
JP2014216956A (ja) * 2013-04-26 2014-11-17 キヤノン株式会社 通信装置、通信方法およびプログラム
US10158560B2 (en) 2013-04-26 2018-12-18 Canon Kabushiki Kaisha Communication apparatus, control method therefor, and computer-readable storage medium
US11356836B2 (en) 2013-04-26 2022-06-07 Canon Kabushiki Kaisha Communicating apparatus, communication method, and storage medium storing program
US9730045B2 (en) 2013-04-26 2017-08-08 Canon Kabushiki Kaisha Communicating apparatus, communication method, and storage medium storing program
US10667117B2 (en) 2013-04-26 2020-05-26 Canon Kabushiki Kaisha Communicating apparatus, communication method, and storage medium storing program
US9787574B2 (en) 2013-04-26 2017-10-10 Canon Kabushiki Kaisha Communication apparatus, control method therefor, and computer-readable storage medium
US9867029B2 (en) 2013-04-26 2018-01-09 Canon Kabushiki Kaisha Communicating apparatus, communication method, and storage medium storing program
US10270685B2 (en) 2013-04-26 2019-04-23 Canon Kabushiki Kaisha Communication apparatus, control method therefor, and computer-readable storage medium
JP2015119215A (ja) * 2013-12-16 2015-06-25 カシオ計算機株式会社 無線通信装置、無線通信システム、無線通信方法、プログラム、マスター、及びスレーブ
US9491787B2 (en) 2013-12-16 2016-11-08 Casio Computer Co., Ltd. Wireless communication apparatus, wireless communication method, non-transitory computer-readable recording medium, master, and slave
JP2015179924A (ja) * 2014-03-19 2015-10-08 カシオ計算機株式会社 無線通信装置、無線通信システム、無線通信方法、プログラム、スレーブ、及びマスター
JP2015211456A (ja) * 2014-04-30 2015-11-24 株式会社Pfu 画像読取装置、および、画像処理方法
JP2016119622A (ja) * 2014-12-22 2016-06-30 オリンパス株式会社 携帯機器、通信システム、通信接続方法、及び通信接続プログラム
US10666625B2 (en) 2015-07-21 2020-05-26 Canon Kabushiki Kaisha Communication apparatus, communication method, and non-transitory computer-readable storage medium for reducing the time for automatic setting of communication parameters
US10849169B2 (en) 2015-07-21 2020-11-24 Canon Kabushiki Kaisha Communication apparatus for connecting to a wireless network using a simple operation
JP2017028457A (ja) * 2015-07-21 2017-02-02 キヤノン株式会社 通信装置、通信方法及びプログラム
JP2017175340A (ja) * 2016-03-23 2017-09-28 Necプラットフォームズ株式会社 通信端末及び方法
WO2018043245A1 (ja) * 2016-08-31 2018-03-08 村田機械株式会社 無人走行車、無人走行車の走行システム、及び、無人走行車の制御方法
JP2019033445A (ja) * 2017-08-09 2019-02-28 キヤノン株式会社 通信装置及びその制御方法、並びにプログラム
JP2018064304A (ja) * 2018-01-26 2018-04-19 キヤノン株式会社 通信装置およびプログラム
JP2020005115A (ja) * 2018-06-28 2020-01-09 株式会社Pfu 情報処理装置、情報処理方法、及びプログラム
JP7132770B2 (ja) 2018-06-28 2022-09-07 株式会社Pfu 情報処理装置、情報処理方法、及びプログラム
JP2020072442A (ja) * 2018-11-02 2020-05-07 キヤノン株式会社 通信装置、制御方法、およびプログラム
JP7224855B2 (ja) 2018-11-02 2023-02-20 キヤノン株式会社 通信装置、制御方法、およびプログラム

Also Published As

Publication number Publication date
EP2367383A3 (en) 2014-07-09
US9124604B2 (en) 2015-09-01
EP2367383B1 (en) 2019-05-22
US8745248B2 (en) 2014-06-03
JP5498212B2 (ja) 2014-05-21
US20110231559A1 (en) 2011-09-22
US20140237132A1 (en) 2014-08-21
EP2367383A2 (en) 2011-09-21

Similar Documents

Publication Publication Date Title
JP5498212B2 (ja) 通信装置、通信制御プログラム、通信制御方法、および通信システム
JP5243870B2 (ja) 情報処理システム、情報処理装置、および情報処理プログラム
US8762888B2 (en) Information processing apparatus, information processing system, and storage medium having stored thereon information processing program
US10476686B2 (en) Wireless communication device, program, and wireless communication system
JP5675373B2 (ja) 通信システム、情報処理装置、通信プログラムおよび通信方法
US8520570B2 (en) Data communication system, information processing apparatus and storage medium having stored thereon information processing program
JP5688297B2 (ja) 通信システム、情報処理装置、通信プログラムおよび通信方法
KR102247601B1 (ko) 통신장치, 통신장치의 제어방법 및 기억매체
EP2357566B1 (en) Radio communication terminal, method for controlling the same, and information storage medium
US10757185B2 (en) Method for peer-to-peer multimedia data sharing, electronic device and non-volatile computer readable medium
US11687332B2 (en) Communication apparatus for wirelessly communicating with another apparatus, information processing method, and program
JP2011166417A (ja) 無線通信装置、無線通信システム、プログラム、および無線通信方法
JP5639680B2 (ja) 情報処理システム、情報処理装置、および情報処理プログラム
JP5986597B2 (ja) 通信装置、通信制御プログラム、通信制御方法、および通信システム
JP5306510B1 (ja) 電子機器、無線接続制御方法、無線接続制御プログラム
JP2008104158A (ja) 無線通信装置および方法
US8971249B2 (en) Terminal device and data transmission/reception method
JP2011239289A (ja) 無線通信装置、プロジェクターおよび無線通信方法
JP2007081468A (ja) 無線通信装置及び通信制御方法
JP2011249958A (ja) プロジェクターおよび通信方法
JP2010107707A (ja) プロジェクター、端末装置、投写システム、情報記憶媒体および接続設定方法
JP2010108229A (ja) 端末装置、プロジェクター、投写システム、情報記憶媒体および接続設定方法

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20110902

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130221

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130816

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130821

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131015

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140205

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140307

R150 Certificate of patent or registration of utility model

Ref document number: 5498212

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250