(57)【要約】【課題】本発明は、一旦通信が切断された場合であっても、通信を継続できるようにすることを目的とする。【解決手段】本発明の通信装置は、外部装置と通信する通信装置であって、外部装置が通信装置と直接通信するための接続情報を、第１の中継装置を経由して外部装置に送信する送信手段と、第１の中継装置を経由しての外部装置との通信の切断が検知された場合、外部装置と直接通信するよう制御する制御手段と、を有する。【選択図】図４
2019092070.tif 000002
【特許請求の範囲】
【請求項１】
外部装置と通信する通信装置であって、
前記外部装置が前記通信装置と直接通信するための接続情報を、第１の中継装置を経由して前記外部装置に送信する送信手段と、
前記第１の中継装置を経由しての前記外部装置との通信の切断が検知された場合、前記外部装置と直接通信するよう制御する制御手段と、
を有する通信装置。
【請求項２】
前記第１の中継装置を経由しての前記外部装置との通信の切断が検知された場合、前記制御手段は、前記第１の中継装置を経由しての前記外部装置との通信で使用した通信インタフェースを使用して、前記外部装置と直接通信するよう制御する請求項１記載の通信装置。
【請求項３】
前記通信装置を第２の中継装置とする通信ネットワークを形成する形成手段を更に有し、
前記第１の中継装置を経由しての前記外部装置との通信の切断が検知された場合、前記制御手段は、前記形成手段によって形成される前記通信ネットワークを使用して、前記外部装置と直接通信するよう制御する請求項１又は２記載の通信装置。
【請求項４】
前記第１の中継装置を経由しての前記外部装置との通信の切断が検知された場合、前記形成手段は、前記通信ネットワークを形成する請求項３記載の通信装置。
【請求項５】
前記第１の中継装置との通信の状態が定められた条件を満たす場合、前記形成手段は、前記通信ネットワークを形成する請求項３記載の通信装置。
【請求項６】
前記接続情報は、前記形成手段によって形成される前記通信ネットワークを識別する情報を含む請求項３乃至５何れか１項記載の通信装置。
【請求項７】
前記第１の中継装置を経由しての前記外部装置との通信の切断が検知された場合、前記制御手段は、前記外部装置と直接通信するよう制御し、更に、前記外部装置に、前記第１の中継装置を経由しての前記通信装置との通信の切断が検知される前の前記外部装置のアドレスを割り当てるよう制御する請求項１乃至６何れか１項記載の通信装置。
【請求項８】
前記第１の中継装置を経由しての前記外部装置との通信の切断を検知する検知手段を更に有し、
前記検知手段によって前記第１の中継装置を経由しての前記外部装置との通信の切断が検知された場合、前記制御手段は、前記外部装置と直接通信するよう制御する請求項１乃至７何れか１項記載の通信装置。
【請求項９】
前記検知手段は、前記外部装置と定期的に行う通信の結果に基づいて、前記外部装置との通信の切断を検知する請求項８記載の通信装置。
【請求項１０】
前記通信装置は、撮像装置である請求項１乃至９何れか１項記載の通信装置。
【請求項１１】
第１の通信装置と第２の通信装置とを有する通信システムであって、
前記第１の通信装置は、
前記第２の通信装置が前記第１の通信装置と直接通信するための接続情報を、中継装置を経由して前記第２の通信装置に送信する送信手段と、
前記中継装置を経由しての前記第２の通信装置との通信の切断が検知された場合、前記第２の通信装置と直接通信するよう制御する第１の制御手段と、
を有し、
前記第２の通信装置は、
前記送信手段によって送信された前記接続情報を受信する受信手段と、
前記中継装置を経由しての前記第１の通信装置との通信の切断が検知された場合、前記受信手段によって受信された前記接続情報に基づいて、前記第２の通信装置と直接通信するよう制御する第２の制御手段と、
を有する通信システム。
【請求項１２】
外部装置と通信する通信装置が実行する通信方法であって、
前記外部装置が前記通信装置と直接通信するための接続情報を、中継装置を経由して前記外部装置に送信する送信ステップと、
前記中継装置を経由しての前記外部装置との通信の切断が検知された場合、前記外部装置と直接通信するよう制御する制御ステップと、
を有する通信方法。
【請求項１３】
第１の通信装置と第２の通信装置とを有する通信システムにおける通信方法であって、
前記第１の通信装置が、前記第２の通信装置が前記第１の通信装置と直接通信するための接続情報を、中継装置を経由して前記第２の通信装置に送信する送信ステップと、
前記第１の通信装置が、前記中継装置を経由しての前記第２の通信装置との通信の切断が検知された場合、前記第２の通信装置と直接通信するよう制御する第１の制御ステップと、
前記第２の通信装置が、前記送信ステップによって送信された前記接続情報を受信する受信ステップと、
前記第２の通信装置が、前記中継装置を経由しての前記第１の通信装置との通信の切断が検知された場合、前記受信ステップによって受信された前記接続情報に基づいて、前記第２の通信装置と直接通信するよう制御する第２の制御ステップと、
を有する通信方法。
【請求項１４】
コンピュータを、請求項１乃至１０何れか１項記載の通信装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信装置、通信システム、通信方法、及び、プログラムに関する。
【背景技術】
【０００２】
近年、無線通信装置を搭載したデジタルカメラ等の撮像装置では、スマートフォン等の通信装置と接続できる状況になってきている。そして、撮像装置で撮像した画像データを、通信装置で選択し、撮像装置から通信装置に画像データを送信することで、通信装置に画像データを保存することが可能になってきている。また、撮像装置で撮影されたライブビュー画像を通信装置でリアルタイムに表示するといったことも可能である。
また、無線通信装置には、簡易的なアクセスポイント機能を搭載したものがある。無線通信装置が簡易的なアクセスポイント機能を起動すると、他の装置が無線通信装置をアクセスポイントとして検知し、無線通信装置が形成したネットワークに参加する。このようにすることで、アクセスポイントがない環境においても、無線通信装置同士で接続することが可能となる。
スマートフォン等の通信装置は自宅のアクセスポイントに接続されていることが多い。そして、無線通信装置を搭載したデジタルカメラ等の撮像装置は、自宅ではアクセスポイント経由で通信装置と接続し、自宅外では簡易的なアクセスポイント機能により直接通信装置と接続することでユーザが意識せずに接続することが可能となる。
【０００３】
特許文献１には、アクセスポイントとの通信を行う第１の通信と、アクセスポイントを有するネットワークを介して他の通信装置との通信を行う第２の通信とが実施可能な無線通信装置が開示されている。特許文献１の無線通信装置は、検出手段と再接続手段とを有する。検出手段は、第１の通信状態を検出する。再接続手段は、前記検出手段によって第１の通信の接続断を検出した場合、第１の通信を再接続して、第１の通信を介して取得した当該無線通信装置のネットワーク層の接続情報を用いて第２の通信の再接続を行う。
また、特許文献２には、次の第１無線通信装置、及び、第２無線通信装置が開示されている。第１無線通信装置は、ハンドオーバーする場合、第１無線通信装置が端末装置と無線ＬＡＮで接続されて第１無線通信装置がネットワークに参加している場合には、当該ネットワークに参加するための参加情報をＮＦＣで第２無線通信装置に送信する。第２無線通信装置は、ハンドオーバーする場合、ＮＦＣで参加情報を受信した場合には、当該取得した参加情報に基づいて無線ＬＡＮでネットワークに接続して参加する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−１５８２５５号公報
【特許文献２】特開２０１１−１８２４４９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、第１の通信装置と第２の通信装置とが中継装置を経由して通信しているときに通信が切断すると、第１の通信装置と中継装置との通信、又は、第２の通信装置と中継装置との通信に問題がある場合は、通信を継続できない。この点について、特許文献１では、何れかの中継装置を経由しての通信が前提であり、中継装置を経由しての通信が行えなくなる場合の記載はない。また、特許文献２は、ハンドオーバーに関する技術である。
【課題を解決するための手段】
【０００６】
本発明の通信装置は、外部装置と通信する通信装置であって、前記外部装置が前記通信装置と直接通信するための接続情報を、第１の中継装置を経由して前記外部装置に送信する送信手段と、前記第１の中継装置を経由しての前記外部装置との通信の切断が検知された場合、前記外部装置と直接通信するよう制御する制御手段と、を有する。
【発明の効果】
【０００７】
本発明によれば、一旦通信が切断された場合であっても、通信を継続できるようになる。
【図面の簡単な説明】
【０００８】
【図１】デジタルカメラ等の構成の一例を示す図である。
【図２】デジタルカメラのデータベースの一例を示す図である。
【図３Ａ】デジタルカメラの処理の一例を示すフローチャートである。
【図３Ｂ】デジタルカメラの処理の一例を示すフローチャートである。
【図３Ｃ】デジタルカメラの処理の一例を示すフローチャートである。
【図４】デジタルカメラの処理の一例を示すフローチャートである。
【図５】外部機器装置の処理の一例を示すフローチャートである。
【図６】通信処理のシーケンスの一例を示す図である。
【発明を実施するための形態】
【０００９】
本実施形態の通信システムは、互いに通信可能なデジタルカメラ１００と外部機器装置１２０とを有する。デジタルカメラ１００は、撮像装置の一例であり、通信装置の一例である。外部機器装置１２０は、外部装置の一例であり、通信装置の一例である。
まず、図１を参照して、デジタルカメラ１００の構成について説明する。図１は、デジタルカメラ１００、及び、外部機器装置１２０の構成の一例を示す図である。デジタルカメラ１００は、制御部１０１と撮像部１０２と不揮発性メモリ１０３と作業用メモリ１０４と操作部１０５と表示部１０６と記憶媒体１１０と接続部１１１とを有する。
制御部１０１は、デジタルカメラ１００の全体を制御する。制御部１０１が不揮発性メモリ１０３に記憶されているプログラムに基づき処理を実行することによって、デジタルカメラ１００の各種の機能や、図３Ａ、図３Ｂ、図３Ｃ、図４、及び、図６に示すデジタルカメラ１００の処理が実現される。制御部１０１がデジタルカメラ１００の全体を制御する代わりに、複数のハードウェアが処理を分担することで、デジタルカメラ１００の全体を制御してもよい。
【００１０】
撮像部１０２は、撮像部１０２に含まれるレンズで結像された被写体光を電気信号に変換し、ノイズ低減処理等を行い、デジタルデータを画像データとして出力する。撮像した画像データは、バッファメモリに蓄えられた後、制御部１０１が所定の演算を行い、記憶媒体１１０に記憶される。
不揮発性メモリ１０３は、電気的に消去・記憶可能な不揮発性のメモリである。不揮発性メモリ１０３は、制御部１０１で実行されるプログラム等を格納する。
作業用メモリ１０４は、撮像部１０２で撮像された画像データを一時的に記憶するバッファメモリや、表示部１０６の画像表示用メモリ、制御部１０１の作業領域等として使用される。
【００１１】
操作部１０５は、デジタルカメラ１００に対する指示をユーザから受け付ける。操作部１０５は、例えば、ユーザがデジタルカメラ１００の電源のＯＮ／ＯＦＦを指示するための電源ボタンや、撮影を指示するためのレリーズスイッチ、画像データの再生を指示するための再生ボタン等の操作部材を含む。また、後述する表示部１０６に形成されるタッチパネルも操作部１０５に含まれる。レリーズスイッチは、ＳＷ１及びＳＷ２を有する。レリーズスイッチが、いわゆる半押し状態となることにより、ＳＷ１がＯＮとなる。これにより、制御部１０１は、ＡＦ（オートフォーカス）処理、ＡＥ（自動露出）処理、ＡＷＢ（オートホワイトバランス）処理、ＥＦ（フラッシュプリ発光）処理等の撮影準備を行うための指示を受け付ける。また、レリーズスイッチが、いわゆる全押し状態となることにより、ＳＷ２がＯＮとなる。これにより、制御部１０１は、撮影を行うための指示を受け付ける。
表示部１０６は、撮影の際のビューファインダー画像の表示、撮影した画像データの表示、対話的な操作画面のための文字表示等を行う。表示部１０６は必ずしもデジタルカメラ１００が内蔵する必要はない。デジタルカメラ１００は、内部又は外部の表示部１０６と接続することができ、表示部１０６の表示を制御する表示制御機能を少なくとも有していればよい。
記憶媒体１１０は、撮像部１０２から出力された画像データを記憶する。記憶媒体１１０は、デジタルカメラ１００に着脱可能なよう構成してもよいし、デジタルカメラ１００に内蔵されていてもよい。デジタルカメラ１００は少なくとも記憶媒体１１０にアクセスする手段を有していればよい。
【００１２】
接続部１１１は、外部装置と接続するためのインタフェースである。本実施形態のデジタルカメラ１００は、接続部１１１を介して、外部装置とデータのやりとりを行うことができる。なお、本実施形態では、接続部１１１は外部装置と無線ＬＡＮで通信するための通信インタフェースを含む。制御部１０１は、接続部１１１を制御することで外部装置との無線通信を実現する。通信方式は無線ＬＡＮに限定されるものではない。
デジタルカメラ１００は、無線ＬＡＮのインフラストラクチャモードにおけるスレーブ装置として動作することが可能である。スレーブ装置として動作する場合、周辺のアクセスポイント（以下、ＡＰとも呼ぶ）に接続することで、ＡＰが形成するネットワークに参加することが可能である。また、デジタルカメラ１００は、ＡＰの一種ではあるが、より機能が限定された簡易的なＡＰ（以下、簡易ＡＰとも呼ぶ）として動作することも可能である。本実施形態におけるＡＰは中継装置の一例である。デジタルカメラ１００が簡易ＡＰとして動作すると、デジタルカメラ１００は自身でネットワークを形成する。デジタルカメラ１００の周辺の装置は、デジタルカメラ１００をＡＰと認識し、デジタルカメラ１００が形成したネットワークに参加することが可能となる。上記のようにデジタルカメラ１００を動作させるためのプログラムは不揮発性メモリ１０３に記憶されている。
【００１３】
デジタルカメラ１００は、ＡＰの一種であるものの、スレーブ装置から受信したデータをインターネットプロバイダ等に転送するゲートウェイ機能は有していない簡易ＡＰである。したがって、自機が形成したネットワークに参加している他の装置からデータを受信しても、それをインターネット等のネットワークに転送することはできない。ただし、デジタルカメラ１００は、ゲートウェイ機能を持っていてもよい。
デジタルカメラ１００の代わりにデジタルカメラ１００以外の通信装置を用いてもよい。デジタルカメラ１００以外の通信装置として、例えば携帯電話や、携帯型のメディアプレーヤ、いわゆるタブレットデバイス、パーソナルコンピュータ等の情報処理装置を挙げることができる。
【００１４】
次に、図１を参照して、外部機器装置１２０の構成について説明する。外部機器装置１２０は、制御部１２１と撮像部１２２と不揮発性メモリ１２３と作業用メモリ１２４と操作部１２５と表示部１２６と記憶媒体１３０と接続部１３１と公衆網接続部１３２とマイク１３３とスピーカ１３４とを有する。
制御部１２１は、外部機器装置１２０の全体を制御する。制御部１２１が不揮発性メモリ１２３に記憶されているプログラムに基づき処理を実行することによって、外部機器装置１２０の各種の機能や、図５、及び、図６に示す外部機器装置１２０の処理が実現される。制御部１２１が外部機器装置１２０の全体を制御する代わりに、複数のハードウェアが処理を分担することで、外部機器装置１２０の全体を制御してもよい。
撮像部１２２は、撮像部１２２に含まれるレンズで結像された被写体光を電気信号に変換し、ノイズ低減処理等を行い、デジタルデータを画像データとして出力する。撮像した画像データはバッファメモリに蓄えられた後、制御部１２１が所定の演算を行い、記憶媒体１３０に記憶される。
【００１５】
不揮発性メモリ１２３は、電気的に消去・記憶可能な不揮発性のメモリであり、制御部１２１で実行される各種プログラム等が記憶される。外部機器装置１２０がデジタルカメラ１００と通信するためのプログラムも不揮発性メモリ１２３に記憶され、カメラ通信アプリケーションとしてインストールされている。外部機器装置１２０の処理は、カメラ通信アプリケーションにより提供されるプログラムを読み込むことにより実現される。カメラ通信アプリケーションは、外部機器装置１２０にインストールされたＯＳ（オペレーティングシステム）の基本的な機能を利用するためのプログラムを有している。外部機器装置１２０のＯＳが本実施形態における処理を実現するためのプログラムを有していてもよい。
作業用メモリ１２４は、撮像部１２２で生成された画像データを一時的に保存するバッファメモリや、表示部１２６の画像表示用メモリや、制御部１２１の作業領域等として使用される。
【００１６】
操作部１２５は、外部機器装置１２０に対する指示をユーザから受け付ける。操作部１２５は、例えば、ユーザが外部機器装置１２０の電源のＯＮ／ＯＦＦを指示するための電源ボタンや、表示部１２６に形成されるタッチパネル等の操作部材を含む。
表示部１２６は、画像データの表示、対話的な操作のための文字表示等を行う。表示部１２６は必ずしも外部機器装置１２０が内蔵する必要はない。外部機器装置１２０は、表示部１２６と接続することができ、表示部１２６の表示を制御する表示制御機能を少なくとも有していればよい。
記憶媒体１３０は、撮像部１２２から出力された画像データを記憶する。記憶媒体１３０は、外部機器装置１２０に着脱可能なよう構成してもよいし、外部機器装置１２０に内蔵されていてもよい。外部機器装置１２０は少なくとも記憶媒体１３０にアクセスする手段を有していればよい。
【００１７】
接続部１３１は、他の外部装置と接続するためのインタフェースである。外部機器装置１２０は、接続部１３１を介して、他の外部装置とデータのやりとりを行うことができる。接続部１３１は、他の外部装置と無線ＬＡＮで通信するための通信インタフェースを含む。制御部１２１は、接続部１３１を制御することで他の外部装置との無線通信を実現する。
公衆網接続部１３２は、公衆無線通信を行う際に用いられるインタフェースである。外部機器装置１２０は、公衆網接続部１３２を介して、データ通信をすることができる。通話の際には、制御部１２１はマイク１３３及びスピーカ１３４を介して音声信号の入力と出力を行う。公衆網接続部１３２は、３Ｇを用いた通信を行うためのインタフェースを含む。３Ｇに限らず、ＬＴＥやＷｉＭＡＸ（登録商標）、ＡＤＳＬ、ＦＴＴＨ、いわゆる４Ｇといった他の通信方式を用いてもよい。また、接続部１３１及び公衆網接続部１３２は必ずしも独立したハードウェアで構成する必要はなく、例えば１つのアンテナで兼用することも可能である。
外部機器装置１２０として携帯端末を使用できるが、外部機器装置１２０は携帯端末に限定されるものではない。外部機器装置１２０として、例えば無線機能付きのデジタルカメラ、携帯型のメディアプレーヤ、いわゆるタブレットデバイス、パーソナルコンピュータ、スマートフォン等の情報処理装置を使用できる。
【００１８】
以上、デジタルカメラ１００及び外部機器装置１２０の構成について説明したが、必ずしもこの構成に限定されない。例えば、装置制御やデータの記憶等は、必ずしも１つのハードウェアで行う必要はなく、複数のハードウェアが処理を分担し、１つの手段として機能してもよい。逆に、１つのハードウェアが種々の処理を行うことで、複数の手段として機能してもよい。
【００１９】
次に、図２（ａ）から（ｃ）までを参照して、デジタルカメラ１００が記憶するデータベースについて説明する。図２（ａ）から（ｃ）までは、デジタルカメラのデータベースの一例を示す図である。
デジタルカメラ１００が、通信相手となる相手機器と通信接続する場合、まずネットワークに参加し（ここでは自機が簡易ＡＰとしてネットワークを形成する場合も含む）、その後、相手機器との通信接続を確立する。本実施形態では、デジタルカメラ１００は、ネットワークの情報と通信接続する相手機器の情報とを異なるテーブルで管理する。デジタルカメラ１００が記憶するデータベースには、接続機器情報テーブル２１０と、ネットワーク参加パラメータテーブル２２０と、ネットワーク形成パラメータテーブル２３０とが含まれる。
【００２０】
まず、図２（ａ）を参照して、接続機器情報テーブル２１０について説明する。図２（ａ）は、接続機器情報テーブル２１０の一例を示す図である。接続機器情報テーブル２１０は、複数の接続機器情報２１１を含むことができる。
接続機器情報２１１は、デジタルカメラ１００が通信接続する接続機器の情報である。接続機器情報２１１は、「接続機器情報番号」、「接続順」、「機器種別」、「登録名」、「ＵＵＩＤ（Ｕｎｉｖｅｒｓａｌｌｙ  Ｕｎｉｑｕｅ  Ｉｄｅｎｔｉｆｉｅｒ）」、「閲覧許可設定」、及び、「ネットワーク形成パラメータ番号」を含む。「接続機器情報番号」は、個々の接続機器情報２１１に付与される識別情報である。「接続順」は、接続機器情報２１１に対応する接続機器に対してデジタルカメラ１００が過去に接続した順番である。「接続順」の値が大きいほうが最近接続したことを示す。「登録名」は、ユーザが設定可能な接続機器名であり、ユーザが接続機器を識別できるように自由に変更することができる。接続機器情報２１１の「機器種別」、「ＵＵＩＤ」は、それぞれ、接続機器情報２１１に対応する接続機器の種別、ＵＵＩＤである。「機器種別」、「登録名」、「ＵＵＩＤ」等は必ずしも別個の情報でなくてもよく、例えば種別と名称と一意な文字列とを連結した１つのＩＤでこれらの情報を特定できるようにしてもよい。接続機器情報２１１の「ネットワーク形成パラメータ番号」は、接続機器情報２１１に対応する接続機器が、デジタルカメラ１００が形成したネットワークでデジタルカメラ１００と通信接続した場合に使われる。接続機器情報２１１の「ネットワーク形成パラメータ番号」は、接続機器情報２１１に対応する接続機器がデジタルカメラ１００と通信接続した際に、デジタルカメラ１００が、どのネットワーク形成パラメータ２３１を用いてネットワークを形成したかを示す。
【００２１】
接続機器情報テーブル２１０は、第１の接続機器情報２１１ａから第Ｎの接続機器情報２１１までのＮ個の接続機器情報２１１を記憶できる。図２（ａ）の例では、第１の接続機器情報２１１ａから第３の接続機器情報２１１ｃまでが接続機器情報テーブル２１０に記憶されている。接続機器情報テーブル２１０に（Ｎ＋１）個目の接続機器情報２１１を記憶させる場合、接続機器情報テーブル２１０に既に記憶されている何れかの接続機器情報２１１を削除する必要がある。
デジタルカメラ１００は、接続機器情報２１１を、ユーザの操作に基づいて削除してもよい。また、デジタルカメラ１００は、接続機器情報２１１をＮ個記憶している状態で新たに接続機器情報２１１を記憶しようとした際に、「接続順」を参照して番号が一番小さい接続機器情報２１１を削除してもよい。
【００２２】
次に、図２（ｂ）を参照して、ネットワーク参加パラメータテーブル２２０について説明する。図２（ｂ）は、ネットワーク参加パラメータテーブル２２０の一例を示す図である。ネットワーク参加パラメータテーブル２２０は、複数のネットワーク参加パラメータ２２１を含むことができる。ネットワーク参加パラメータ２２１は、デジタルカメラ１００が参加したことのある、外部のＡＰ等が形成したネットワークを管理するための情報である。ネットワーク参加パラメータ２２１は、外部のＡＰ等が形成したネットワークのネットワークパラメータを含む情報である。
ネットワーク参加パラメータ２２１は、「ネットワーク参加パラメータ番号」、「接続順」、「ＥＳＳＩＤ（Ｅｘｔｅｎｄｅｄ  Ｓｅｒｖｉｃｅ  Ｓｅｔ  Ｉｄｅｎｔｉｆｉｅｒ）」、「認証方式」、「暗号種別」、「暗号鍵」、及び、「チャネル」を含む。ネットワーク参加パラメータ２２１は、更に、「ＩＰアドレス取得方法」、及び、「ＤＮＳ取得方法」を含む。「ネットワーク参加パラメータ番号」は、個々のネットワーク参加パラメータ２２１に付与される識別情報である。「接続順」は、デジタルカメラ１００が記憶しているネットワーク参加パラメータ２２１に対応する無線ネットワークに対し、過去に参加した順番であり、番号が大きいほうが最近参加したことを示す。ネットワーク参加パラメータ２２１の「ＥＳＳＩＤ」、「認証方式」、「暗号種別」、「暗号鍵」、「チャネル」、「ＩＰアドレス取得方法」、及び、「ＤＮＳ取得方法」は、デジタルカメラ１００が過去に参加したネットワークについての情報である。
【００２３】
ネットワーク参加パラメータテーブル２２０は、第１のネットワーク参加パラメータ２２１ａから第Ｍのネットワーク参加パラメータまでのＭ個のネットワーク参加パラメータ２２１を記憶できる。図２（ｂ）の例では、第１のネットワーク参加パラメータ２２１ａ及び第２のネットワーク参加パラメータ２２１ｂがネットワーク参加パラメータテーブル２２０に記憶されている。ネットワーク参加パラメータテーブル２２０に（Ｍ＋１）個目のネットワーク参加パラメータ２２１を記憶させる場合、ネットワーク参加パラメータテーブル２２０に既に記憶されている何れかのネットワーク参加パラメータ２２１を削除する必要がある。
デジタルカメラ１００は、ネットワーク参加パラメータ２２１を、ユーザの操作に基づいて削除してもよい。また、デジタルカメラ１００は、ネットワーク参加パラメータ２２１をＭ個記憶している状態で新たにネットワーク参加パラメータ２２１を記憶しようとした際に、「接続順」の番号が一番小さいネットワーク参加パラメータ２２１を削除してもよい。自機が簡易ＡＰとしてネットワークを形成した場合、その情報はネットワーク参加パラメータ２２１とは識別可能な情報として、次に説明するネットワーク形成パラメータ２３１で管理される。
【００２４】
次に、図２（ｃ）を参照して、ネットワーク形成パラメータテーブル２３０について説明する。図２（ｃ）は、ネットワーク形成パラメータテーブル２３０の一例を示す図である。
ネットワーク形成パラメータ２３１は、デジタルカメラ１００が簡易ＡＰとして形成したネットワークの情報を管理するものである。ネットワーク形成パラメータ２３１には、デジタルカメラ１００が簡易ＡＰとして形成したネットワークのネットワークパラメータが含まれる。
ネットワーク形成パラメータ２３１は、「ネットワーク形成パラメータ番号」、「ＥＳＳＩＤ」、及び、「暗号鍵」を含む。「ネットワーク形成パラメータ番号」は、個々のネットワーク形成パラメータ２３１に付与される識別情報である。ネットワーク形成パラメータ２３１の「ＥＳＳＩＤ」、及び、「暗号鍵」は、デジタルカメラ１００が簡易ＡＰとして形成したネットワークの情報である。ネットワーク形成パラメータ２３１に、認証方式、暗号種別、チャネル、ＩＰアドレス取得方法、ＤＮＳ取得方法等を含めてもよいが、デジタルカメラ１００が生成するネットワークの全てに共通の項目は必ずしも含めなくてもよい。
ネットワーク形成パラメータテーブル２３０は、接続機器情報テーブル２１０と同様に、第１のネットワーク形成パラメータ２３１ａから第Ｎのネットワーク形成パラメータ２３１までのＮ個のネットワーク形成パラメータ２３１を記憶できる。図２（ｃ）の例では、第１のネットワーク形成パラメータ２３１ａがネットワーク形成パラメータテーブル２３０に記憶されている。デジタルカメラ１００は、接続機器情報２１１を削除する場合、接続機器情報２１１に関連付けられたネットワーク形成パラメータ２３１を削除する。これにより、ネットワーク形成パラメータテーブル２３０がＮ個より多くのネットワーク形成パラメータ２３１を記憶することがなくなる。
【００２５】
デジタルカメラ１００が記憶するデータベースは、不揮発性メモリ１０３に記憶されている。制御部１０１は、データベースの情報を、不揮発性メモリ１０３から取得して使用してもよく、作業用メモリ１０４に展開して使用してもよい。作業用メモリ１０４に展開したデータベースの情報を更新する際は、不揮発性メモリ１０３のデータベースも同様に更新する。
【００２６】
次に、図３Ａ、図３Ｂ、図３Ｃを参照して、接続処理について説明する。図３Ａ、図３Ｂ、図３Ｃは、接続処理の一例を示すフローチャートである。接続処理は、デジタルカメラ１００が外部機器装置１２０と初めて通信を行う場合のデジタルカメラ１００での処理である。接続処理は、デジタルカメラ１００が、メニュー操作等でのユーザによる他装置との接続指示を受け付けた場合に開始する。
まず、図３Ａを参照して、接続処理について説明する。
Ｓ３０１において、制御部１０１は、ネットワーク参加パラメータテーブル２２０にネットワーク参加パラメータ２２１が記憶されているか否かを判定する。制御部１０１は、ネットワーク参加パラメータ２２１が記憶されていると判定した場合、処理をＳ３０２に進める。制御部１０１は、ネットワーク参加パラメータ２２１が記憶されていないと判定した場合、制御部１０１は処理をＳ３０４に進める。ネットワーク参加パラメータ２２１は、ネットワーク参加パラメータ２２１に対応する無線ネットワークを形成したＡＰに対応する。ネットワーク参加パラメータ２２１に対応する無線ネットワークを形成したＡＰを、登録済みＡＰと呼ぶ。Ｓ３０１の処理は、制御部１０１が、登録済みＡＰがあるか否かを判定する処理である。
【００２７】
Ｓ３０２において、制御部１０１は、接続部１１１を制御することにより、周囲に存在するＡＰを検索する。
Ｓ３０３において、制御部１０１は、Ｓ３０２のＡＰ検索で登録済みＡＰを発見したか否かを判定する。制御部１０１は、Ｓ３０２のＡＰ検索で登録済みＡＰを発見したと判定した場合、処理をＳ３０６に進める。制御部１０１は、Ｓ３０２のＡＰ検索で登録済みＡＰを発見していないと判定した場合、処理をＳ３０４に進める。制御部１０１は、Ｓ３０２のＡＰ検索でＡＰから受信したデータに含まれるＥＳＳＩＤが、何れかのネットワーク参加パラメータ２２１の「ＥＳＳＩＤ」に等しいとき、このデータの送信元のＡＰを登録済みＡＰと判定する。ただし、ネットワーク参加パラメータ２２１に「ＢＳＳＩＤ（Ｂａｓｉｃ  Ｓｅｒｖｉｃｅ  Ｓｅｔ  Ｉｎｄｅｎｔｉｆｉｅｒ）」等の他の識別子を記憶しておき、この識別子を用いて判定してもよい。
【００２８】
Ｓ３０４において、制御部１０１は、無線ＬＡＮネットワークを形成するためのネットワークパラメータを生成する。ネットワークパラメータには、ＥＳＳＩＤ、認証方式、暗号種別、暗号鍵、チャネルが含まれる。Ｓ３０４において、制御部１０１は、ＥＳＳＩＤ、認証方式、暗号種別、暗号鍵、チャネルのうち、少なくとも１つは毎回異なるものを生成する。本実施形態では、制御部１０１は、ＥＳＳＩＤ、暗号鍵については毎回異なるものを生成する。Ｓ３０４の処理を行うタイミングでは、制御部１０１は、生成したネットワークパラメータで構成されるネットワーク形成パラメータ２３１をネットワーク形成パラメータテーブル２３０に登録しない。制御部１０１は、ネットワーク形成パラメータテーブル２３０への登録は、後述する接続機器との接続が確立した時点で行う。
既に説明したＳ３０１において、制御部１０１が、ネットワーク参加パラメータ２２１が記憶されていないと判定した場合、制御部１０１は処理をＳ３０４に進めるのは、次の理由によるものである。すなわち、ネットワーク参加パラメータ２２１が記憶されていない場合、Ｓ３０２でＡＰ検索を行っても、Ｓ３０３で登録済みＡＰを見つけることができないからである。そのため、制御部１０１がネットワーク参加パラメータ２２１が記憶されていないと判定した場合、Ｓ３０２の検索処理を省略して、接続を確立するまでの時間を短縮させる。
【００２９】
Ｓ３０５において、制御部１０１は、Ｓ３０４において生成したネットワークパラメータを用いて、無線ＬＡＮネットワークを形成する。また、制御部１０１は、外部装置がネットワークに参加するために必要な情報として、少なくともＥＳＳＩＤ及び暗号鍵を表示部１０６に表示する制御を行う。更に、Ｓ３０５において、制御部１０１は、他機器との通信を可能にするため、ＩＰアドレスの割り当て、及び、サブネットの設定を行い、処理をＳ３２１に進める。
Ｓ３０６において、制御部１０１は、Ｓ３０２のＡＰ検索で登録済みＡＰを複数発見したか否かを判定する。制御部１０１は、登録済みＡＰを複数発見したと判定した場合、処理をＳ３０８に進める。制御部１０１は、登録済みＡＰを複数発見していないと判定した場合、処理をＳ３０７に進める。
Ｓ３０７において、制御部１０１は、Ｓ３０２のＡＰ検索で発見された登録済みＡＰに対応するネットワーク参加パラメータ２２１をネットワーク参加パラメータテーブル２２０から取得する。
【００３０】
Ｓ３０８において、制御部１０１は、Ｓ３０２のＡＰ検索で発見された複数の登録済みＡＰの中から、デジタルカメラ１００が直近に通信接続した登録済みＡＰに対応するネットワーク参加パラメータ２２１を取得する。より具体的には、制御部１０１は、登録済みＡＰに対応するネットワーク参加パラメータ２２１の中から、「接続順」の値が最も大きいネットワーク参加パラメータ２２１を取得する。これにより、制御部１０１は、直近に通信接続した登録済みＡＰを選択できる。例えば、ネットワーク参加パラメータテーブル２２０が図２（ｂ）の状態で、Ｓ３０２のＡＰ検索においてＮＥＴＷＯＲＫ−１００、ＮＥＴＷＯＲＫ−１０１、ＮＥＴＷＯＲＫ−１０２という３つのＡＰが検索されたとする。この場合、検索されたＡＰのうち、ネットワーク参加パラメータテーブル２２０に記憶されているのは、第１のネットワーク参加パラメータ２２１ａのＮＥＴＷＯＲＫ−１００と、第２のネットワーク参加パラメータ２２１ｂのＮＥＴＷＯＲＫ−１０１である。また、第１のネットワーク参加パラメータ２２１ａの「接続順」は「６」であり、第２のネットワーク参加パラメータ２２１ｂの「接続順」は「２」である。このため、制御部１０１は、「接続順」の値が大きい第１のネットワーク参加パラメータ２２１ａを、直近に接続した登録済みＡＰに対応するネットワーク参加パラメータ２２１として取得する。
【００３１】
Ｓ３０９において、制御部１０１は、Ｓ３０７又はＳ３０８で取得したネットワーク参加パラメータ２２１に基づいて、Ｓ３０７又はＳ３０８で取得したネットワーク参加パラメータ２２１に対応するＡＰが形成する無線ＬＡＮネットワークに参加する。
Ｓ３１０において、制御部１０１は、無線ＬＡＮネットワークへの接続に成功したか否かを判定する。制御部１０１は、接続に成功したと判定した場合、処理をＳ３１１に進める。制御部１０１は、接続に失敗したと判定した場合、処理をＳ３１３に進めて、エラー表示を行う。
Ｓ３１１において、制御部１０１は、Ｓ３０７又はＳ３０８で取得したネットワーク参加パラメータ２２１のＩＰアドレス取得方法、及び、ＤＮＳ取得方法に基づいて、ＩＰアドレスの割り当て、及び、サブネットの設定を行う。
Ｓ３１２において、制御部１０１は、ＩＰアドレスの割り当てが成功したか否かを判定する。制御部１０１は、ＩＰアドレスの割り当てに成功したと判定した場合は、処理をＳ３２１に進める。制御部１０１は、ＩＰアドレスの割り当てに失敗したと判定した場合は、処理をＳ３１３に進め、エラー表示を行う。
Ｓ３１３において、制御部１０１は、無線ＬＡＮネットワークへの接続に失敗した旨、又は、ＩＰアドレスの割り当てに失敗した旨を、表示部１０６に表示する制御を行う。制御部１０１は、エラー内容を確認した旨の通知を、操作部１２５を介してユーザから受け付けた場合、処理をＳ３４１に進める。
【００３２】
次に、図３Ｂを参照して、接続処理について説明する。
Ｓ３２１において、制御部１０１は、ＳＳＤＰ（Ｓｉｍｐｌｅ  Ｓｅｒｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ  Ｐｒｏｔｏｃｏｌ）やｍＤＮＳ（Ｍｕｌｔｉｃａｓｔ  Ｄｏｍａｉｎ  Ｎａｍｅ  Ｓｅｒｖｉｃｅ）等を用いて通知を行う。外部機器装置１２０等の通信装置は、通知を受信することでサービスを検出する。制御部１０１は、通知の処理を行った後に、処理をＳ３２２へ進める。本実施形態では、外部機器装置１２０は、所定の通信アプリケーションを起動させることで、デジタルカメラ１００を検索する。
Ｓ３２２において、制御部１０１は、接続部１１１を介して、通信装置から接続要求を受信したか否かを判定する。制御部１０１は、通信装置から接続要求を受信したと判定した場合、機器情報を表示するために処理をステップＳ２２４に進める。制御部１０１は、通信装置から接続要求を受信していないと判定した場合、処理をＳ３２３に進める。
【００３３】
Ｓ３２３において、制御部１０１は、操作部１２５を介してユーザから無線ネットワーク変更の指示を受け付けたか否かを判定する。制御部１０１は、無線ネットワーク変更の指示を受け付けたと判定した場合、現在形成している無線ＬＡＮネットワークを消滅し、又は、現在参加しているネットワークから離脱して、処理をＳ３４１に進める。制御部１０１は、無線ネットワーク変更の指示を受け付けていないと判定した場合、処理をＳ３２２に進める。
Ｓ３２４において、制御部１０１は、通信装置からの接続要求に含まれるデバイス名等の機器情報を表示部１０６に表示する制御を行う。制御部１０１は、通信装置からの接続要求に含まれるＵＵＩＤと同一のＵＵＩＤを含む接続機器情報２１１が接続機器情報テーブル２１０に含まれる場合、制御部１０１は、次の制御を行ってもよい。すなわち、制御部１０１は、通信装置からの接続要求に含まれるＵＵＩＤと同一のＵＵＩＤを含む接続機器情報２１１の「登録名」を表示部１０６に表示する制御を行ってもよい。
Ｓ３２５において、制御部１０１は、Ｓ３２４で表示された機器情報に対応する通信装置と接続する許可をするか否かを、操作部１２５を介してユーザから受け付ける。制御部１０１は、Ｓ３２４で表示された機器情報に対応する通信装置と接続する許可をする旨を受け付けた場合、接続要求に含まれるＵＵＩＤとデバイス名とを関連付けて作業用メモリ１０４に保存し、処理をＳ３２６に進める。制御部１０１は、Ｓ３２４で表示された機器情報に対応する通信装置と接続する許可をしない旨を受け付けた場合、処理をＳ３２２に進め、再度、通信装置からの接続要求を待つ。
【００３４】
Ｓ３２６において、制御部１０１は、接続部１１１を制御し、直近のＳ３２２での接続要求の送信元である通信装置への接続処理を行う。
Ｓ３２７において、制御部１０１は、直近のＳ３２２での接続要求の送信元である通信装置との接続を確立することに成功したか否かを判定する。制御部１０１は、接続を確立できたと判定した場合、処理をＳ３２８に進める。制御部１０１は、接続を確立できなかったと判定した場合、処理をＳ３３１に進める。Ｓ３２７で接続が確立した通信装置を接続機器とも呼ぶ。
Ｓ３２８において、制御部１０１は、現在接続している無線ＬＡＮネットワークが、デジタルカメラ１００が自らの簡易ＡＰ機能により形成したネットワークであるか否かを判定する。制御部１０１は、デジタルカメラ１００が自ら形成したネットワークであると判定した場合、処理をＳ３２９に進める。制御部１０１は、デジタルカメラ１００が自ら形成したネットワークでないと判定した場合、処理をＳ３３０に進める。
【００３５】
Ｓ３２９において、制御部１０１は、デジタルカメラ１００が自ら形成したネットワークのネットワークパラメータ（Ｓ３０４で生成したネットワークパラメータ）で構成されるネットワーク形成パラメータ２３１を生成する。そして、制御部１０１は、生成したネットワーク形成パラメータ２３１をネットワーク形成パラメータテーブル２３０に登録して記憶する。例えば、ネットワーク形成パラメータテーブル２３０に１件もネットワーク形成パラメータ２３１が登録されていないとする。そして、デジタルカメラ１００が自ら形成したネットワークのネットワークパラメータの「ＥＳＳＩＤ」が「ＣＡＭＥＲＡ−１２３」、「暗号鍵」が「１２３４５６７８」であるとする。この場合、制御部１０１は、図２（ｃ）に示す第１のネットワーク形成パラメータ２３１ａを生成して、ネットワーク形成パラメータテーブル２３０に登録することで、ネットワーク形成パラメータテーブル２３０は、図２（ｃ）の状態になる。
ネットワーク形成パラメータ２３１は、接続機器と１対１に関連付けて記憶することにより、後述する２回目以降の接続で利用可能になるパラメータである。したがって、ネットワークを形成してすぐにパラメータを記憶するのではなく、関連付ける接続機器が決定してから記憶することとしている。また、デジタルカメラ１００が自ら形成したネットワークでないと判定した場合に、ネットワークパラメータを記憶していないのは、後述のＳ３５１又はＳ３５２で記憶するためである。
【００３６】
Ｓ３３０において、制御部１０１は、接続機器から受信した接続機器の情報に基づいて、接続機器情報２１１を生成する。このとき、制御部１０１は、接続機器情報２１１の「接続機器情報番号」を、既に接続機器情報テーブル２１０に記憶されている接続機器情報２１１の「接続機器情報番号」とは異なる値にする。また、制御部１０１は、接続機器情報２１１の「接続順」は、既に接続機器情報テーブル２１０に記憶されている接続機器情報２１１の「接続順」より大きい値にする。また、制御部１０１は、接続機器情報２１１の「ＵＵＩＤ」を、Ｓ３２５で作業用メモリに記憶したＵＵＩＤとしてもよく、接続機器に問い合わせて接続機器から取得してもよい。また、制御部１０１は、接続機器情報２１１の「閲覧許可」を、ユーザから受付けた指示に基づいて決定してもよく、デフォルトとして許可又は不許可にした上で、後から変更できるようにしてもよい。また、制御部１０１は、Ｓ３２８でデジタルカメラ１００が自ら形成したネットワークであると判定した場合、接続機器情報２１１の「ネットワーク形成パラメータ番号」を、次の値にする。すなわち、制御部１０１は、接続機器情報２１１の「ネットワーク形成パラメータ番号」を、Ｓ３２９で保存したネットワーク形成パラメータ２３１の「ネットワーク形成パラメータ番号」とする。また、制御部１０１は、Ｓ３２８でデジタルカメラ１００が自ら形成したネットワークではないと判定した場合、接続機器情報２１１の「ネットワーク形成パラメータ番号」には値を設定しない。
そして、制御部１０１は、生成した接続機器情報２１１を接続機器情報テーブル２１０に登録して記憶する。その後、制御部１０１は、図５Ａから図５Ｃまでの処理を終了する。
例えば、接続機器情報テーブル２１０において、第２の接続機器情報２１１ｂと第３の接続機器情報２１１ｃとが既に登録されているものとする。そして、接続が確立した機器の「登録名」が「ｍｏｂｉｌｅＰｈｏｎｅ１」の場合、制御部１０１は、接続機器情報２１１として第１の接続機器情報２１１ａを生成して、接続機器情報テーブル２１０に登録して記憶する。これにより、接続機器情報テーブル２１０は、図２（ａ）の状態になる。
Ｓ３３１において、制御部１０１は、外部機器装置１２０との接続に失敗した旨を、表示部１０６に表示する制御を行う。制御部１０１は、エラー内容を確認した旨の通知を、操作部１２５を介してユーザから受け付けた場合、図５Ａから図５Ｃまでの処理を終了する。
【００３７】
次に、図３Ｃを参照して、接続処理について説明する。
Ｓ３４１において、制御部１０１は、接続部１１１を制御して、周囲に存在するＡＰをスキャンして検索する。
Ｓ３４２において、制御部１０１は、Ｓ３４１でスキャンした結果検出されたビーコン信号に含まれるＡＰの情報の一覧を表示部１０６に表示する制御を行う。ＡＰの情報として、例えば、ＥＳＳＩＤが使われる。制御部１０１は、ＡＰの情報を一覧表示する際に、ネットワーク参加パラメータ２２１の「接続順」を参照し、過去に参加したことのあるＡＰを参加した順にＡＰの情報を並べて、一覧表示してもよい。また、制御部１０１は、ＡＰの情報を一覧表示する際に、電波強度の強いＡＰの順にＡＰの情報を並べて、一覧表示してもよい。
Ｓ３４３において、制御部１０１は、操作部１０５を介したユーザの指示に基づいて、無線ＬＡＮネットワークに参加するか否かを判定する。制御部１０１は、無線ＬＡＮネットワークに参加すると判定した場合、処理をＳ３４６に進める。制御部１０１は、無線ＬＡＮネットワークに参加しないと判定した場合、処理をＳ３４４に進める。
Ｓ３４４、Ｓ３４５の処理は、Ｓ３０４、Ｓ３０５と同様の処理である。制御部１０１は、Ｓ３４５の処理の終了後、処理をＳ３２１に進める。
【００３８】
Ｓ３４６において、制御部１０１は、Ｓ３４３においてユーザによって選択されたＡＰが形成する無線ＬＡＮネットワークに参加する。
制御部１０１は、ユーザによって選択されたＡＰがネットワーク参加パラメータテーブル２２０に記憶されているＡＰであった場合は、ユーザに暗号鍵等を入力させることなく無線ＬＡＮネットワークに参加してもよい。このとき、制御部１０１は、ユーザによって選択されたＡＰに対応するネットワーク参加パラメータ２２１の情報を使用して、無線ＬＡＮネットワークに参加してもよい。制御部１０１は、暗号鍵の入力画面の初期値として記憶している暗号鍵を使用して、無線ＬＡＮネットワークに参加してもよい。制御部１０１は、ＩＰアドレス取得方法やＤＮＳ取得方法を、ユーザに選択させずに、予め記憶している方法を用いてもよく、ユーザに選択させてもよい。
制御部１０１は、ユーザによって選択されたＡＰがネットワーク参加パラメータテーブル２２０に記憶されていないＡＰであった場合は、無線ＬＡＮネットワークに参加するための情報をユーザに入力させてもよい。このとき、制御部１０１は、ＩＰアドレス取得方法やＤＮＳ取得方法をデフォルトとしてＡｕｔｏにしてもよい。
【００３９】
Ｓ３４７からＳ３４９までの処理は、Ｓ３１０からＳ３１２までの処理と同様である。ただし、Ｓ３４７において、制御部１０１は、無線ＬＡＮネットワークへの接続に成功したと判定した場合は、処理をＳ３４８に進め、無線ＬＡＮネットワークへの接続に失敗したと判定した場合は、処理をＳ３５３に進める。また、Ｓ３４９において、制御部１０１は、ＩＰアドレスの割り当てに成功したと判定した場合は、処理をＳ３５０に進め、ＩＰアドレスの割り当てに失敗したと判定した場合は、処理をＳ３５３に進める。
Ｓ３５０において、制御部１０１は、ネットワーク参加パラメータテーブル２２０を参照して、現在参加している無線ＬＡＮネットワークの情報が記憶済みか否かを判定する。制御部１０１は、記憶済みと判定した場合、処理をＳ３５２に進める。制御部１０１は、記憶済みでないと判定した場合、処理をＳ３５２に進める。
【００４０】
Ｓ３５１において、制御部１０１は、現在参加している無線ＬＡＮネットワークのパラメータに基づいて、ネットワーク参加パラメータ２２１を生成する。そして、制御部１０１は、生成したネットワーク参加パラメータ２２１をネットワーク参加パラメータテーブル２２０に登録して記憶する。その後、制御部１０１は、処理をＳ３２１に進める。
例えば、ネットワーク参加パラメータテーブル２２０が図２（ｂ）の状態であり、Ｓ３４２で表示されたＡＰの一覧の中からＮＥＴＷＯＲＫ−１０２が選択されたとする。この場合、制御部１０１は、「ネットワーク参加パラメータ番号」が「３」であり、「ＥＳＳＩＤ」が「ＮＥＴＷＯＲＫ−１０２」である第３のネットワーク参加パラメータ２２１を生成する。制御部１０１は、第３のネットワーク参加パラメータ２２１の「認証方式」、「暗号種別」、「暗号鍵」、「チャネル」、「ＩＰアドレス取得方法」、「ＤＮＳ取得方法」に然るべき適切な値を設定する。また、制御部１０１は、第３のネットワーク参加パラメータ２２１の「接続順」を最も大きな値にする必要があるので「７」とする。そして、生成した第３のネットワーク参加パラメータ２２１をネットワーク参加パラメータテーブル２２０に登録して記憶する。
【００４１】
Ｓ３５２において、制御部１０１は、現在参加している無線ＬＡＮネットワークのパラメータに基づいて、ネットワーク参加パラメータ２２１を生成する。そして、制御部１０１は、生成したネットワーク参加パラメータ２２１を使用して、ネットワーク参加パラメータテーブル２２０を更新する。その後、制御部１０１は、処理をＳ３２１に進める。
例えば、ネットワーク参加パラメータテーブル２２０が図２（ｂ）の状態であり、Ｓ３４２に表示されたＡＰの一覧の中からＮＥＴＷＯＲＫ−１０１が選択されたとする。この場合、制御部１０１は、「ネットワーク参加パラメータ番号」が「２」であり、「ＥＳＳＩＤ」が「ＮＥＴＷＯＲＫ−１０１」である第２のネットワーク参加パラメータ２２１ｂを生成する。また、制御部１０１は、第２のネットワーク参加パラメータ２２１ｂの「接続順」を最も大きな値にする必要があるので「７」とする。そして、生成した第２のネットワーク参加パラメータ２２１ｂを使用して、ネットワーク参加パラメータテーブル２２０を更新する。
【００４２】
Ｓ３５３において、制御部１０１は、無線ＬＡＮネットワークへの接続に失敗した旨、又は、ＩＰアドレスの割り当てに失敗した旨を、表示部１０６に表示する制御を行う。制御部１０１は、エラー内容を確認した旨の通知を、操作部１２５を介してユーザから受け付けた場合、制御部１０１は処理をＳ３４１に進める。
デジタルカメラ１００は、このように、接続機器と接続を行う。接続機器として、例えば、外部機器装置１２０が使われる。デジタルカメラ１００と外部機器装置１２０とが通信接続すると、外部機器装置１２０からデジタルカメラ１００をリモート制御できるようになる。
【００４３】
次に、図４、及び、図６を参照して、デジタルカメラ１００の接続完了後処理について説明する。図４は、デジタルカメラ１００の接続完了後処理の一例を示すフローチャートである。図６は、デジタルカメラ１００と外部機器装置１２０との通信処理の一例を示すシーケンス図である。デジタルカメラ１００の接続完了後処理は、アクセスポイント６００を経由してデジタルカメラ１００と外部機器装置１２０が接続された後のデジタルカメラ１００の処理であり、通信が切断する場合の処理を含む。アクセスポイント６００は、中継装置の一例である。
【００４４】
図４の処理に先立って、図３Ａ、図３Ｂ、図３Ｃの処理で、アクセスポイント６００を経由してのデジタルカメラ１００と外部機器装置１２０との通信の接続が完了しているものとする。
Ｓ４０１において、制御部１０１は、アクセスポイント６００を経由して外部機器装置１２０と接続が完了した際のネットワークの設定情報を作業用メモリ１０４に記憶する。例えばＤＨＣＰ（Ｄｙｎａｍｉｃ  Ｈｏｓｔ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）によってＩＰアドレスを取得した場合、ネットワークの設定情報は、自機のＩＰアドレス、サブネットマスク等の情報や外部機器装置１２０のＩＰアドレス等である。
【００４５】
Ｓ４０２において、制御部１０１は、簡易ＡＰとして無線ＬＡＮネットワークを形成するための情報である簡易ＡＰ設定情報を決定して、作業用メモリ１０４に記憶する。簡易ＡＰ設定情報には、ＥＳＳＩＤ、認証方式、暗号種別、暗号鍵、チャネル等が含まれる。Ｓ４０２の処理は、図６のＳ６０１に対応する。
制御部１０１は、外部機器装置１２０に対応する接続機器情報２１１に基づいて、簡易ＡＰ設定情報を、次のように決定する。
まず、外部機器装置１２０に対応する接続機器情報２１１が、図２（ａ）の第１の接続機器情報２１１ａである場合について説明する。この場合、第１の接続機器情報２１１ａの「ネットワーク形成パラメータ番号」が「１」である。このため、制御部１０１は、図２（ｃ）に示すネットワーク形成パラメータテーブル２３０から、「ネットワーク形成パラメータ番号」が「１」である第１のネットワーク形成パラメータ２３１ａを取得する。そして、制御部１０１は、取得した第１のネットワーク形成パラメータ２３１ａに基づいて、簡易ＡＰ設定情報を決定する。すなわち、制御部１０１は、簡易ＡＰ設定情報のＥＳＳＩＤを「ＣＡＭＥＲＡ−１２３」、簡易ＡＰ設定情報の暗号鍵を「１２３４５６７８」と決定する。認証方式、暗号種別、チャネルは、自明であるため、図２（ｃ）には記載していない。しかし、認証方式、暗号種別、チャネルも、ＥＳＳＩＤ等と同様にネットワーク形成パラメータ２３１に記憶してあり、制御部１０１は、それらを使用する。
次に、外部機器装置１２０に対応する接続機器情報２１１が、図２（ａ）の第２の接続機器情報２１１ｂである場合について説明する。この場合、第２の接続機器情報２１１ｂの「ネットワーク形成パラメータ番号」には値が設定されていない。このため、制御部１０１は、簡易ＡＰ設定情報のＥＳＳＩＤ、暗号鍵、及び、チャネルをランダムな値に決定する。
簡易ＡＰ設定情報は、外部機器装置１２０がデジタルカメラ１００と直接通信するための接続情報の一例である。ＥＳＳＩＤは、デジタルカメラ１００が形成するネットワークを識別する情報の一例である。
【００４６】
Ｓ４０３において、制御部１０１は、ネットワークの設定情報、及び、簡易ＡＰ設定情報を、接続部１１１を介し、アクセスポイント６００を経由して、外部機器装置１２０に送信する。ここで送信するネットワークの設定情報、及び、簡易ＡＰ設定情報は、制御部１０１が、Ｓ４０１、Ｓ４０２で作業用メモリ１０４に記憶した情報である。Ｓ４０３の処理は、図６のＳ６０２に対応する。
Ｓ４０４において、制御部１０１は、アクセスポイント６００を経由しての外部機器装置１２０との定期的な通信に成功したか否かを判定する。制御部１０１は、アクセスポイント６００を経由しての外部機器装置１２０との定期的な通信に成功したと判定した場合、再度Ｓ４０４を実行する。制御部１０１は、外部機器装置１２０と、アクセスポイント６００を経由しての外部機器装置１２０との定期的な通信に失敗したと判定した場合、処理をＳ４０５に進める。
ここで、デジタルカメラ１００と外部機器装置１２０とのアクセスポイント６００を経由しての定期的な通信について説明する。定期的な通信は、通信が切断したか否かを判定するためのものである。本実施形態では、外部機器装置１２０からデジタルカメラ１００に定期的に確認データを送信することで、外部機器装置１２０とデジタルカメラ１００との間で定期的な通信が行われる。確認データは、通信が切断しているか否かを確認するために使われるデータである。外部機器装置１２０は、例えば、予め定められた期間（例えば５秒）に１回、確認データを送信する。制御部１０１は、予め定められた期間に、外部機器装置１２０から確認データを受信した場合、外部機器装置１２０との定期的な通信に成功したと判定する。
アクセスポイント６００を経由した外部機器装置１２０とデジタルカメラ１００との通信が可能な状態であれば、デジタルカメラ１００は外部機器装置１２０からの確認データの受信に成功する。アクセスポイント６００を経由した外部機器装置１２０とデジタルカメラ１００との通信が不可能な状態であれば、デジタルカメラ１００は外部機器装置１２０からの確認データの受信に失敗する。確認データは、デジタルカメラ１００から外部機器装置１２０に送信してもよい。確認データの送信間隔は５秒以外の時間であってもよい。
【００４７】
Ｓ４０５において、制御部１０１は、定期的な通信の結果に基づいて、アクセスポイント６００を経由してのデジタルカメラ１００と外部機器装置１２０との通信が切断したか否かを判定する。制御部１０１は、アクセスポイント６００を経由してのデジタルカメラ１００と外部機器装置１２０との通信が切断したと判定した場合、処理をＳ４０６に進め、切断していないと判定した場合、処理をＳ４０４に進める。制御部１０１が、定期的な通信の結果に基づいて、アクセスポイント６００を経由してのデジタルカメラ１００と外部機器装置１２０との通信が切断したと判定する処理は、図６のＳ６０５の処理に対応する。
Ｓ４０５で、制御部１０１は、アクセスポイント６００を経由しての外部機器装置１２０との定期的な通信が、一定期間、失敗した場合、アクセスポイント６００を経由してのデジタルカメラ１００と外部機器装置１２０との通信が切断したと判定する。制御部１０１は、例えば、外部機器装置１２０から連続して３回、確認データを受信できない場合に、アクセスポイント６００を経由してのデジタルカメラ１００と外部機器装置１２０との通信が切断したと判定する。ただし、３回に限定されるものではなく、３回以外の回数でもよい。
【００４８】
Ｓ４０６において、制御部１０１は、作業用メモリ１０４に記憶してあるネットワークの設定情報に基づいて、無線ＬＡＮネットワーク形成に必要なネットワークの設定を行う。例えば、制御部１０１は、ネットワークの設定として、デジタルカメラ１００のＤＨＣＰサーバ機能を有効にして起動する。その際、制御部１０１は、現在の外部機器装置１２０のＩＰアドレスを、デジタルカメラ１００のＤＨＣＰサーバが割り当てるＩＰアドレスとなるように設定する。これにより、デジタルカメラ１００のＤＨＣＰサーバは、外部機器装置１２０に、アクセスポイント６００を経由しての外部機器装置１２０との通信の切断が検知される前の外部機器装置１２０のＩＰアドレスと同一のＩＰアドレスを割り当てることができる。
Ｓ４０７において、制御部１０１は、作業用メモリ１０４に記憶してある簡易ＡＰ設定情報に基づいて、デジタルカメラ１００を簡易ＡＰとする無線ＬＡＮネットワークを形成する。より具体的には、制御部１０１は、簡易ＡＰ設定情報の少なくとも一部を含んだパケットを生成し、接続部１１１を介したブロードキャストでの送信を開始する。制御部１０１が生成するパケットには、簡易ＡＰ設定情報のＥＳＳＩＤが含まれる。Ｓ４０７の処理は、図６のＳ６０７の簡易ＡＰを形成する処理に対応する。無線ＬＡＮネットワークは、通信ネットワークの一例である。
【００４９】
Ｓ４０８において、制御部１０１は、Ｓ４０７で形成した無線ＬＡＮネットワークに対して、外部機器装置１２０からの参加の通知を、接続部１１１を介して受信したか否かを判定する。制御部１０１は、外部機器装置１２０からの参加の通知を受信したと判定した場合、処理をＳ４０９に進める。制御部１０１は、外部機器装置１２０からの参加の通知を受信していないと判定した場合、処理をＳ４１０に進める。Ｓ４０８の処理は、図６のＳ６１０の簡易ＡＰへの参加要求受信処理に対応する。
制御部１０１は、接続部１１１を介して受信した無線ＬＡＮの「Ａｕｔｈ  Ｒｅｑｕｅｓｔ」に基づいて、外部機器装置１２０からの参加の通知を受信したか否かを判断してもよい。また、制御部１０１は、第１のＭＡＣアドレスと、第２のＭＡＣアドレスとを比較して、外部機器装置１２０からの参加の通知を受信したか否かを判断してもよい。第１のＭＡＣアドレスは、アクセスポイント６００を経由して外部機器装置１２０と通信接続していた際の外部機器装置１２０のＭＡＣアドレスである。第２のＭＡＣアドレスは、「Ａｕｔｈ  Ｒｅｑｕｅｓｔ」を受信した際のＭＡＣアドレスである。これにより、制御部１０１は、通信相手が、以前通信していた相手か否かの確認が可能となる。
【００５０】
Ｓ４０９において、制御部１０１は、アクセスポイント６００が形成する無線ネットワークから離脱する。そして、制御部１０１は、接続部１１１を使用して、Ｓ４０７にて形成したネットワークで、接続部１１１を介しての外部機器装置１２０との直接の通信を行う。これにより、デジタルカメラ１００と外部機器装置１２０との通信が継続する。Ｓ４０９の処理は、図６のＳ６１１に対応する。
Ｓ４１０において、制御部１０１は、Ｓ４０７で形成した無線ＬＡＮネットワークに対して外部機器装置１２０からの参加の通知が一定期間なくタイムアウトしたか否かを判定する。制御部１０１は、タイムアウトしたと判定した場合、処理をＳ４１１に進める。制御部１０１は、タイムアウトしていないと判定した場合、処理をＳ４０８に進める。Ｓ４１０で使用されるデジタルカメラ１００のタイムアウト時間は、図５のＳ５０５で使用される外部機器装置１２０のタイムアウト時間より短い。制御部１２１は、例えば不揮発性メモリ１０３からデジタルカメラ１００のタイムアウト時間を取得する。
Ｓ４１１において、制御部１０１は、切断処理を行い、外部機器装置１２０との通信を終了する。このとき、制御部１０１は、表示部１０６に通信が切断された旨のメッセージ等を表示してもよい。
【００５１】
次に、図５、及び、図６を参照して、外部機器装置１２０の接続完了後処理について説明する。図５は、外部機器装置１２０の接続完了後処理の一例を示すフローチャートである。外部機器装置１２０の接続完了後処理は、アクセスポイント６００を経由してデジタルカメラ１００と外部機器装置１２０が接続された後の外部機器装置１２０の処理であり、通信が切断する場合の処理を含む。
Ｓ５０１において、制御部１２１は、接続部１３１を介して、簡易ＡＰ設定情報、及び、ネットワークの設定情報を、デジタルカメラ１００から、アクセスポイント６００を経由して受信し、作業用メモリ１２４に記憶する。Ｓ５０１の処理は、図６のＳ６０３に対応する。
【００５２】
Ｓ５０２において、制御部１２１は、デジタルカメラ１００と、アクセスポイント６００を経由しての定期的な通信に成功したか否かを判定する。制御部１２１は、アクセスポイント６００を経由してのデジタルカメラ１００との定期的な通信に成功したと判定した場合、再度Ｓ５０２を実行する。制御部１２１は、アクセスポイント６００を経由してのデジタルカメラ１００との定期的な通信に失敗したと判定した場合、処理をＳ５０３に進める。既に説明したように、外部機器装置１２０は、デジタルカメラ１００に定期的に確認データを送信することで、外部機器装置１２０とデジタルカメラ１００との間で定期的な通信が行われる。制御部１２１は、確認データの送信後にデジタルカメラ１００から確認データに対する応答であるＡＣＫを受信した場合に、アクセスポイント６００を経由しての定期的な通信に成功したと判定する。
【００５３】
Ｓ５０３において、制御部１２１は、定期的な通信の結果に基づいて、アクセスポイント６００を経由してのデジタルカメラ１００との通信が切断したか否かを判定する。制御部１２１は、アクセスポイント６００を経由してのデジタルカメラ１００との通信が切断したと判定した場合、処理をＳ５０４に進め、切断していないと判定した場合、処理をＳ５０２に進める。Ｓ５０３で、制御部１２１は、アクセスポイント６００を経由してのデジタルカメラ１００との定期的な通信が、一定期間、失敗した場合、デジタルカメラ１００との通信が切断したと判定する。図６のＳ６０４の処理は、制御部１２１が、定期的な通信の結果に基づいて、アクセスポイント６００を経由してのデジタルカメラ１００との通信が切断したと判定する処理に対応する。
Ｓ５０４において、制御部１２１は、接続部１３１を制御することにより、周囲に存在するＡＰを検索する。より具体的には、制御部１２１は、接続部１３１を介して、周囲に存在するＡＰが送信するパケットを受信することで、周囲に存在するＡＰを検索する。この検索処理は、図６のＳ６０６の簡易ＡＰをスキャンする処理に対応する。制御部１２１は、周囲に存在するＡＰを検索する際に、Ｓ５０１で作業用メモリ１２４に記憶した簡易ＡＰ設定情報を参照し、簡易ＡＰ設定情報に含まれるＥＳＳＩＤが、検索したＡＰの中に存在するか否かを判定する。制御部１２１は、簡易ＡＰ設定情報に含まれるＥＳＳＩＤが検索したＡＰの中に存在すると判定した場合、処理をＳ５０６に進める。制御部１２１は、簡易ＡＰ設定情報に含まれるＥＳＳＩＤが検索したＡＰの中に存在しないと判定した場合、処理をＳ５０５に進める。簡易ＡＰ設定情報に含まれるＥＳＳＩＤが検索したＡＰの中に存在すると判定する処理は、図６のＳ６０８に対応する。
【００５４】
Ｓ５０５において、制御部１２１は、簡易ＡＰ設定情報に含まれるＥＳＳＩＤがＡＰの検索で一定期間見つからず、タイムアウトしたか否かを判定する。制御部１２１は、タイムアウトしたと判定した場合、処理をＳ５０７に進め、タイムアウトしていないと判定した場合、処理をＳ５０４に進める。Ｓ５０５で使用される外部機器装置１２０のタイムアウト時間は、図４のＳ４１０で使用されるデジタルカメラ１００のタイムアウト時間より長い。制御部１２１は、例えば不揮発性メモリ１２３から外部機器装置１２０のタイムアウト時間を取得する。
Ｓ５０６において、制御部１２１は、作業用メモリ１２４に記憶した簡易ＡＰ設定情報に基づいて、接続部１３１を介して、デジタルカメラ１００が簡易ＡＰとなった無線ＬＡＮネットワークに参加する要求をデジタルカメラ１００に送信する。そして、制御部１２１は、デジタルカメラ１００からの応答等に基づいて、デジタルカメラ１００との通信接続が成功したか否かを判定する。制御部１２１は、デジタルカメラ１００との通信接続に成功したと判定した場合、処理をＳ５０８に進める。制御部１２１は、デジタルカメラ１００との通信接続に失敗したと判定した場合、処理をＳ５０７に進める。Ｓ５０６の処理は、図６のＳ６０９に対応する。
Ｓ５０７において、制御部１２１は、切断処理を行い、デジタルカメラ１００との通信を終了する。このとき、制御部１２１は、表示部１２６に通信が切断された旨のメッセージ等を表示してもよい。
Ｓ５０８において、制御部１２１は、デジタルカメラ１００が簡易ＡＰとなったネットワークで、接続部１３１を介してのデジタルカメラ１００との直接の通信を行う。これにより、デジタルカメラ１００と外部機器装置１２０との通信が継続する。Ｓ５０８の処理は、図６のＳ６１１に対応する。
Ｓ５０４、Ｓ５０６、Ｓ５０８の処理は、デジタルカメラ１００から受信した簡易ＡＰ設定情報に基づいて、デジタルカメラ１００と直接通信するよう制御する制御処理の一例である。
【００５５】
以上説明したように、デジタルカメラ１００は、簡易ＡＰ設定情報を、アクセスポイント６００を経由して外部機器装置１２０に送信する。そして、デジタルカメラ１００は、アクセスポイント６００を経由しての外部機器装置１２０との通信の切断を検知した場合、外部機器装置１２０と直接通信するように制御する。
また、外部機器装置１２０は、アクセスポイント６００を経由して、外部機器装置１２０から簡易ＡＰ設定情報を受信する。そして、外部機器装置１２０は、アクセスポイント６００を経由してのデジタルカメラ１００との通信の切断を検知した場合、外部機器装置１２０と直接通信するように制御する。
よって、デジタルカメラ１００とアクセスポイント６００との間で通信ができなくなったり、外部機器装置１２０とアクセスポイント６００との間で通信ができなくなったりしても、デジタルカメラ１００と外部機器装置１２０とで直接通信が行われる。したがって、一旦通信が切断された場合であっても、通信を継続できるようになる。ユーザから見ると、アクセスポイント６００を経由しての通信が切断したか否かを意識することなく、通信が継続するため、利便性が向上する。
【００５６】
例えば、あるフロアで、アクセスポイント６００を経由して、デジタルカメラ１００と外部機器装置１２０とが通信しているとする。その後、ユーザがデジタルカメラ１００と外部機器装置１２０とを他の階等に移動させたとき、アクセスポイント６００との距離が離れてしまい、デジタルカメラ１００や外部機器装置１２０がアクセスポイント６００と通信できなくなることがある。しかし、本実施形態の通信システムでは、デジタルカメラ１００と外部機器装置１２０とで直接通信するようになる。したがって、一旦通信が切断された場合であっても、通信を継続できるようになる。
【００５７】
また、デジタルカメラ１００は、アクセスポイント６００を経由しての外部機器装置１２０との通信の切断を検知した場合、外部機器装置１２０との直接の通信に接続部１１１を使用する。接続部１１１は、アクセスポイント６００を経由しての外部機器装置１２０との通信で使用した通信インタフェースである。よって、デジタルカメラ１００は、アクセスポイント６００を経由しての通信か否かで、通信インタフェースを変更する必要がない。したがって、デジタルカメラ１００は通信インタフェースを余分に持つ必要がない。
また、デジタルカメラ１００は、アクセスポイント６００を経由しての外部機器装置１２０との通信の切断を検知した場合、デジタルカメラ１００がＡＰとなる無線ＬＡＮネットワークを形成する。よって、デジタルカメラ１００と外部機器装置１２０と通信が切断されている時間を短くできる。
【００５８】
（変形例）
上記の実施形態では、図４を参照して説明したように、制御部１０１は、アクセスポイント６００を経由しての外部機器装置１２０との通信の切断が検知された場合、デジタルカメラ１００を簡易ＡＰとする無線ＬＡＮネットワークを形成する。しかし、制御部１０１は、アクセスポイント６００を経由しての外部機器装置１２０との通信の切断が検知される前から、デジタルカメラ１００を簡易ＡＰとする無線ＬＡＮネットワークを形成してもよい。例えば、制御部１０１は、デジタルカメラ１００の電源がＯＮになった場合に、デジタルカメラ１００を簡易ＡＰとする無線ＬＡＮネットワークを形成してもよい。また、制御部１０１は、アクセスポイント６００を経由しての外部機器装置１２０との通信を開始した場合に、デジタルカメラ１００を簡易ＡＰとする無線ＬＡＮネットワークを形成してもよい。
また、制御部１０１は、アクセスポイント６００との通信の状態が定められた条件を満たす場合、デジタルカメラ１００を簡易ＡＰとする無線ＬＡＮネットワークを形成してもよい。定められた条件を満たす場合とは、例えば、アクセスポイント６００から受信する電波強度が、定められた強度以下になる場合である。定められた条件を表す情報や定められた強度の情報は、例えば不揮発性メモリ１０３に記憶されている。制御部１０１は、不揮発性メモリ１０３から定められた条件を表す情報や定められた強度の情報を取得する。
【００５９】
これにより、デジタルカメラ１００がアクセスポイント６００を経由しての外部機器装置１２０との通信の切断を検知する前に、外部機器装置１２０がデジタルカメラ１００との通信の切断を検知した場合、外部機器装置１２０は次の処理を行うことができる。すなわち、外部機器装置１２０は、デジタルカメラ１００がアクセスポイント６００を経由しての外部機器装置１２０との通信の切断を検知する前に、デジタルカメラ１００との直接の通信を開始するよう制御する。したがって、デジタルカメラ１００と外部機器装置１２０と通信が切断されている時間を短くできる。
【００６０】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００６１】
以上、本発明を実施形態と共に説明したが、上記実施形態は本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
例えば、デジタルカメラ１００や外部機器装置１２０のハードウェア構成として、制御部は複数存在してもよく、複数の制御部が各装置の不揮発性メモリ等に記憶されているプログラムに基づき処理を実行するようにしてもよい。
【００６２】
以上、上述した実施形態によれば、一旦通信が切断された場合であっても、通信を継続できるようになる。
【符号の説明】
【００６３】
１００  デジタルカメラ
１０１  制御部
１２０  外部機器装置
１２１  制御部
【図１】
2019092070.tif 000003
【図２】
2019092070.tif 000004
【図３Ａ】
2019092070.tif 000005
【図３Ｂ】
2019092070.tif 000006
【図３Ｃ】
2019092070.tif 000007
【図４】
2019092070.tif 000008
【図５】
2019092070.tif 000009
【図６】
2019092070.tif 000010