以下に、本発明を実施するための形態について、添付の図面を用いて詳細に説明する。
なお、以下に説明する実施の形態は、本発明の実現手段としての一例であり、本発明が適用される装置の構成や各種条件によって適宜修正又は変更されてもよい。また、各実施の形態を適宜組み合せることも可能である。
[第一の実施形態]
<デジタルカメラ100の内部構成>
図1は、本実施形態の通信装置の一例であるデジタルカメラ100の構成例を示すブロック図である。なお、ここでは通信装置の一例としてデジタルカメラについて述べるが、通信装置はこれに限られない。例えば通信装置はスマートフォンや、いわゆるタブレットデバイス、パーソナルコンピュータなどの情報処理装置であってもよい。
制御部101は、入力された信号や、後述のプログラムに従ってデジタルカメラ100の各部を制御する。なお、制御部101が装置全体を制御する代わりに、複数のハードウェアが処理を分担することで、装置全体を制御してもよい。
撮像部102は、例えば、光学レンズユニットと絞り・ズーム・フォーカスなど制御する光学系と、光学レンズユニットを経て導入された光(映像)を電気的な映像信号に変換するための撮像素子などで構成される。撮像素子としては、一般的には、CMOS(Complementary Metal Oxide Semiconductor)や、CCD(Charge Coupled Device)が利用される。撮像部102は、制御部101に制御されることにより、撮像部102に含まれるレンズで結像された被写体光を、撮像素子により電気信号に変換し、ノイズ低減処理などを行い、デジタルデータを画像データとして出力する。本実施形態のデジタルカメラ100では、画像データは、DCF(Design Rule for Camera File system)の規格に従って、記録媒体110に記録される。
不揮発性メモリ103は、電気的に消去・記録可能な不揮発性のメモリであり、制御部101で実行される後述のプログラム等が格納される。
作業用メモリ104は、撮像部102で撮像された画像データを一時的に保持するバッファメモリや、表示部106の画像表示用メモリ、制御部101の作業領域等として使用される。
操作部105は、ユーザがデジタルカメラ100に対する指示をユーザから受け付けるために用いられる。操作部105は例えば、ユーザがデジタルカメラ100の電源のON/OFFを指示するための電源ボタンや、撮影を指示するためのレリーズスイッチ、画像データの再生を指示するための再生ボタンを含む。さらに、後述の接続部111を介して外部機器との通信を開始するための専用の接続ボタンなどの操作部材を含む。また、後述する表示部106に形成されるタッチパネルも操作部105に含まれる。なお、レリーズスイッチは、SW1およびSW2を有する。レリーズスイッチが、いわゆる半押し状態となることにより、SW1がONとなる。これにより、AF(オートフォーカス)処理、AE(自動露出)処理、AWB(オートホワイトバランス)処理、EF(フラッシュプリ発光)処理等の撮影準備を行うための指示を受け付ける。また、レリーズスイッチが、いわゆる全押し状態となることにより、SW2がONとなる。これにより、撮影を行うための指示を受け付ける。
表示部106は、撮影の際のビューファインダー画像の表示、撮影した画像データの表示、対話的な操作のための文字表示などを行う。なお、表示部106は必ずしもデジタルカメラ100が内蔵する必要はない。デジタルカメラ100は内部又は外部の表示部106と接続することができ、表示部106の表示を制御する表示制御機能を少なくとも有していればよい。
記録媒体110は、撮像部102から出力された画像データを記録することができる。記録媒体110は、デジタルカメラ100に着脱可能なよう構成してもよいし、デジタルカメラ100に内蔵されていてもよい。すなわち、デジタルカメラ100は少なくとも記録媒体110にアクセスする手段を有していればよい。
接続部111は、外部装置と接続するためのインターフェースである。USB、IEEE1394、P1284、SCSI、モデム、LAN、RS232C、無線通信等の各種通信機能を有する。接続部111には、デジタルカメラ100を外部装置と接続するためのコネクタ、または無線通信機能を提供する際にはアンテナが接続されうる。本実施形態のデジタルカメラ100は、接続部111を介して、外部装置とデータのやりとりを行うことができる。例えば、撮像部102で生成した画像データを、接続部111を介して外部装置に送信することができる。なお、本実施形態では、接続部111は外部装置とIEEE802.11の規格に従った、いわゆる無線LANで通信するためのインターフェースを含む。なお、接続部111は必ずしもデジタルカメラ100が内蔵する必要はない。デジタルカメラ100は内部又は外部の接続部111と接続することができ、接続部111を制御する接続制御機能を少なくとも有していればよい。制御部101は、接続部111を制御することで外部装置との無線通信を実現する。なお、通信方式は無線LANに限定されるものではなく、例えば赤外通信方式や、WirelessUSB等、他の無線通信方式を採用してもよい。
近距離無線通信部112は、例えば無線通信のためのアンテナと無線信号を処理するため変復調回路や通信コントローラから構成される。近距離無線通信部112は、変調した無線信号をアンテナから出力し、またアンテナで受信した無線信号を復調することにより外部装置との間で近距離無線通信を実現する。本実施形態では、近距離無線通信部112による通信はBluetooth Special Interest Group(Bluetooth SIG)が策定している通信規格であるBluetooth(登録商標)に準拠する。制御部101は、近距離無線通信部112を制御することで外部装置との無線通信を実現することができればよい。本実施形態においてBluetooth通信は、低消費電力であるBluetooth Low Energyのバージョン5.0を採用する。このBluetooth通信は、無線LAN通信と比べて通信可能な範囲が狭い(つまり、通信可能な距離が短い)。また、Bluetooth通信は、無線LAN通信と比べて通信速度が遅い。その一方で、Bluetooth通信は、無線LAN通信と比べて消費電力が少ない。本実施形態のデジタルカメラ100は、近距離無線通信部112を介して、外部装置とデータのやりとりを行うことができる。例えば外部装置から撮影の命令を受信した場合は撮像部102を制御し、撮影動作を行い、無線LAN通信によるデータの授受を行うための命令を受信した場合は接続部111を制御し、無線LAN通信を開始する。
なお、本実施形態におけるデジタルカメラ100の接続部111は、インフラストラクチャモードにおけるアクセスポイント(AP)として動作するAPモードと、インフラストラクチャモードにおけるクライアント(CL)として動作するCLモードとを有する。そして、接続部111をCLモードで動作させることにより、本実施形態におけるデジタルカメラ100は、インフラストラクチャモードにおけるCL機器として動作することが可能である。デジタルカメラ100がCL機器として動作する場合、周辺のアクセスポイント機器に接続することで、アクセスポイント機器が形成するネットワークに参加することが可能である。また、接続部111をAPモードで動作させることにより、本実施形態におけるデジタルカメラ100は、アクセスポイントの一種ではあるが、より機能が限定された簡易的なアクセスポイント(以下、簡易AP)として動作することも可能である。デジタルカメラ100が簡易APとして動作すると、デジタルカメラ100は自身でネットワークを形成する。デジタルカメラ100の周辺の装置は、デジタルカメラ100をアクセスポイント機器と認識し、デジタルカメラ100が形成したネットワークに参加することが可能となる。上記のようにデジタルカメラ100を動作させるためのプログラムは不揮発性メモリ103に保持されているものとする。
なお、本実施形態におけるデジタルカメラ100はアクセスポイントの一種であるものの、CL機器から受信したデータをインターネットプロバイダなどに転送するゲートウェイ機能は有していない簡易的なアクセスポイントである。したがって、自機が形成したネットワークに参加している他の装置からデータを受信しても、それをインターネットなどのネットワークに転送することはできない。
以上がデジタルカメラ100の説明である。
<スマートデバイス200の内部構成>
図2は、本実施形態の情報処理装置の一例であるスマートデバイス200の構成例を示すブロック図である。なお、スマートデバイスとはスマートフォン等の携帯電話やいわゆるタブレットデバイスを含む。なお、ここでは情報処理装置の一例としてスマートデバイスについて述べるが、情報処理装置はこれに限られない。例えば情報処理装置は、無線機能付きのデジタルカメラやプリンタ、テレビ、あるいはパーソナルコンピュータなどであってもよい。
制御部201は、入力された信号や、後述のプログラムに従ってスマートデバイス200の各部を制御する。なお、制御部201が装置全体を制御する代わりに、複数のハードウェアが処理を分担することで、装置全体を制御してもよい。
撮像部202は、撮像部202に含まれるレンズで結像された被写体光を電気信号に変換し、ノイズ低減処理などを行い、デジタルデータを画像データとして出力する。撮像した画像データはバッファメモリに蓄えられた後、制御部201にて所定の演算を行い、記録媒体210に記録される。
不揮発性メモリ203は、電気的に消去・記録可能な不揮発性のメモリである。不揮発性メモリ203には、制御部201が実行する基本的なソフトウェアであるOS(オペレーティングシステム)や、このOSと協働して応用的な機能を実現するアプリケーションが記録されている。また、本実施形態では、不揮発性メモリ203には、デジタルカメラ100と通信するためのアプリケーション(以下アプリ)が格納されている。
作業用メモリ204は、表示部206の画像表示用メモリや、制御部201の作業領域等として使用される。
操作部205は、スマートデバイス200に対する指示をユーザから受け付けるために用いられる。操作部205は例えば、ユーザがスマートデバイス200の電源のON/OFFを指示するための電源ボタンや、表示部206に形成されるタッチパネルなどの操作部材を含む。
表示部206は、画像データの表示、対話的な操作のための文字表示などを行う。なお、表示部206は必ずしもスマートデバイス200が備える必要はない。スマートデバイス200は表示部206と接続することができ、表示部206の表示を制御する表示制御機能を少なくとも有していればよい。
記録媒体210は、撮像部202から出力された画像データを記録することができる。記録媒体210は、スマートデバイス200に着脱可能なよう構成してもよいし、スマートデバイス200に内蔵されていてもよい。すなわち、スマートデバイス200は少なくとも記録媒体210にアクセスする手段を有していればよい。
通信部211は、外部装置と接続するためのインターフェースである。本実施形態のスマートデバイス200は、通信部211を介して、デジタルカメラ100とデータのやりとりを行うことができる。本実施形態では、通信部211はアンテナであり、制御部101は、アンテナを介して、デジタルカメラ100と接続することができる。なお、デジタルカメラ100との接続では、直接接続してもよいしアクセスポイントを介して接続してもよい。データを通信するためのプロトコルとしては、例えば無線LANを通じたPTP/IP(Picture Transfer Protocol over Internet Protocol)を用いることができる。なお、デジタルカメラ100との通信はこれに限られるものではない。例えば、通信部211としては、赤外線通信モジュール、WirelessUSB等の他の無線通信モジュールを採用してもよい。
近距離無線通信部212は、近距離無線通信を実現するための通信ユニットである。近距離無線通信部212は、無線通信のためのアンテナと無線信号を処理するための変復調回路や通信コントローラから構成される。近距離無線通信部212は、変調した無線信号をアンテナから出力し、またアンテナで受信した無線信号を復調することにより近距離無線通信を実現する。本実施形態では、近距離無線通信部212による通信はBluetoothに準拠する。なお、近距離無線通信部112が実現する無線通信はBluetoothに限られるものではなく、他の無線通信を採用してもよい。
公衆網接続部213は、公衆無線通信を行う際に用いられるインターフェースである。スマートデバイス200は、公衆網接続部213を介して、他の機器と通話することができる。この際、制御部201はマイク214およびスピーカ215を介して音声信号の入力と出力を行うことで、通話を実現する。本実施形態では、公衆網接続部213はアンテナであり、制御部201は、アンテナを介して、公衆網に接続することができる。なお、通信部211および公衆網接続部213は、一つのアンテナで兼用することも可能である。
以上がスマートデバイス200の説明である。
<ネットワークシステム>
図3を用いて、本実施形態における複数のデジタルカメラ100およびスマートデバイス200が形成するネットワークシステムの一例について説明する。
本実施形態では、デジタルカメラ100の連動撮影という機能を例に説明する。連動撮影機能とは、無線接続している複数のデジタルカメラが連動して撮影する機能である。例えば、本実施形態での連動撮影機能は次のように実行される。図3において、デジタルカメラ100−1は接続部111をAPモードで動作させることで簡易APとして動作する。本実施形態では簡易APとして動作するデジタルカメラ100をセンダーカメラという。デジタルカメラ100−2〜デジタルカメラ100−5は接続部111をCLモードで動作させることでCL機器として動作する。本実施形態ではCL機器として動作するデジタルカメラ100をレシーバーカメラという。このそれぞれのレシーバーカメラはセンダーカメラであるデジタルカメラ100−1に接続する。ユーザがデジタルカメラ100−1を操作して撮影すると、その操作がデジタルカメラ100−1から無線接続しているレシーバーカメラに送信される。この情報を受信したレシーバーカメラはそれぞれその操作に対応する撮影動作を実行する。例えばセンダーカメラがレリーズスイッチが全押し状態であるというレリーズスイッチの操作情報を送信した場合、レシーバーカメラはこの操作情報を受信して、センダーカメラと連動して被写体を撮影する。
また、本実施形態ではデジタルカメラ100は簡易APとして動作する場合、HTTP(Hyper Text Transfer Protocol)というサーバ・クライアント方式の通信プロトコルに準拠して通信できる。本実施形態のデジタルカメラ100は、上述の連動撮影機能と並行して、HTTP通信におけるサーバ(以下、HTTPサーバという)として動作する。また本実施形態ではスマートデバイス200がHTTP通信におけるクライアント(以下、HTTPクライアントという)としてデジタルカメラ100−1の簡易APに接続する。例えばスマートデバイス200がデジタルカメラ100−1にアクセスすることで、ユーザはスマートデバイス200を介してデジタルカメラ100を遠隔操作することができる。本実施形態のデジタルカメラ100は連動撮影機能と遠隔操作機能とを並行して実行できる。例えば、この2つの機能は次のように実行される。図3において、センダーカメラであるデジタルカメラ100−1に複数のレシーバーカメラが接続している状態において、スマートデバイス200はHTTPクライアントとしてHTTPサーバであるデジタルカメラ100−1と無線接続する。そしてユーザはスマートデバイス200を操作してデジタルカメラ100−1に撮影指示を送信する。この撮影指示を受信したデジタルカメラ100−1は撮影動作を行うとともに、接続しているレシーバーカメラに対して、スマートデバイス200から受信した撮影指示と同様の指示を送信する。この指示を受信した各レシーバーカメラはこの指示に基づいて撮影動作を行う。このように、ユーザはスマートデバイス200を操作することで、デジタルカメラ100−1、およびデジタルカメラ100−2〜100−5を連動撮影させるができる。
ここで本実施形態では、センダーカメラはレシーバーカメラと、WPS(Wi‐Fi(登録商標) Protected Setup)によって無線パラメータを交換し、互いに接続する。また本実施形態では、スマートデバイス200はユーザによって入力されたSSIDおよびパスワード等に基づいてセンダーカメラと接続する。これにより、無線接続した外部装置の接続手順によって、センダーカメラはその外部装置がレシーバーカメラかスマートデバイス200かを判別することができる。
しかし、デジタルカメラ100における簡易AP機能では、ROMやRAMなどのリソース上の制約により、デジタルカメラ100は並行して接続できる外部装置の台数に上限を設ける。本実施形態において、デジタルカメラ100に同時接続できる外部装置の台数の上限は例えば10台とする。このデジタルカメラ100−1に10台のレシーバーカメラが同時接続した場合、ユーザはその後にスマートデバイス200をデジタルカメラ100−1に接続することはできない。この場合、ユーザはデジタルカメラ100−1を用いて連動撮影機能と遠隔操作機能とを並行して利用することができない。
そこで本実施形態では、簡易APとして動作する場合、デジタルカメラ100はレシーバーカメラおよびスマートデバイス200の両方と確実に接続を確立するために、連動撮影機能と遠隔操作機能とで同時接続できる外部装置の台数を分け合う。
<センダーカメラにスマートデバイスを最後に接続する手順>
ここでは図4(A)〜(H)、および図5を用いて、センダーカメラとレシーバーカメラとが接続した後にスマートデバイス200をセンダーカメラに接続する手順について説明する。本実施形態では先にセンダーカメラ1台とレシーバーカメラ9台とが連動撮影のために接続し、後からスマートデバイス200がセンダーカメラに接続する場合について説明する。
図4(A)〜(H)は、連動撮影機能および遠隔撮影機能を実行する場合にデジタルカメラ100の表示部106に表示される画面を例示する図である。図5は、センダーカメラとレシーバーカメラとが接続した後にスマートデバイスがセンダーカメラに接続する手順のシーケンス図の一例である。図5のシーケンスの処理はユーザがデジタルカメラ100のメニュー画面から連動撮影機能を選択したことに応じて開始される。
ステップS501において、ユーザはデジタルカメラ100をセンダーカメラとして動作させる。ここで、デジタルカメラ100をセンダーカメラとして動作させる手順について説明する。
ユーザはデジタルカメラ100のメニュー画面から連動撮影機能を選択する。デジタルカメラ100はそのユーザ操作に応じて図4(A)に示すような連動撮影機能において他のデジタルカメラと接続するための画面を表示する。図4(A)の項目401に示す「ウィザードで接続」とは、デジタルカメラ100が連動撮影の接続の設定を表示部106を介してユーザと対話形式で行う機能である。
ユーザが図4(A)の項目401を選択すると、デジタルカメラ100は図4(B)に示すような画面に遷移する。図4(B)は、連動撮影機能においてデジタルカメラ100がセンダーカメラとして動作するか、レシーバーカメラとして動作するかをユーザが選択するための画面の一例である。ユーザが図4(B)の画面で「センダー」を選択して「OK」ボタンを押下すると、デジタルカメラ100は図4(C)の画面に遷移する。この場合、デジタルカメラ100はセンダーカメラとして動作し、以降の画面ではセンダーカメラの設定をユーザに入力させる。図4(C)は、デジタルカメラ100が自動接続でレシーバーカメラと接続するか、手動接続でレシーバーカメラと接続するかを選択させる画面の一例である。「自動接続」とは、デジタルカメラ100が簡易APのSSID、チャンネル、およびパスワードなどの設定を自動的に設定し、外部装置と接続することである。また、「手動接続」とは、ユーザが簡易APのチャンネルやパスワードなどの設定をセンダーカメラであるデジタルカメラ100に入力し、デジタルカメラ100がその設定に従って外部装置と接続することである。本実施形態では、ユーザによって「自動接続」が選択された場合、センダーカメラは遠隔操作機能を実行しない。ユーザによって「手動接続」が選択された場合、センダーカメラは遠隔操作機能を実行し、レシーバーカメラおよびスマートデバイス200と接続する。ユーザによって「自動接続」が選択された場合、センダーカメラが遠隔操作機能を実行しない理由については、本実施形態の最後に説明する。
ユーザが図4(C)の画面において「手動接続」を選択して「OK」ボタンを押下した場合、デジタルカメラ100は図4(D)の画面に遷移する。図4(D)は、センダーカメラの簡易APのチャンネルを自動で設定するか、手動で設定するかを選択する画面の一例である。「手動設定」の項目の右側には、センダーカメラが外部装置と接続する際に利用するチャンネルが示されている。このチャンネルはユーザ操作によって変更できる。ユーザが図4(D)の画面で任意の設定を選択して「OK」ボタンを押下すると、デジタルカメラ100は図4(E)の画面に遷移する。図4(E)は、センダーカメラの簡易APのパスワードを設定する画面の一例である。ユーザが図4(E)の入力欄402を選択すると、デジタルカメラ100はソフトウェアキーボードを表示する。ユーザはこのキーボードを介してデジタルカメラ100に簡易APで利用するパスワードを入力することができる。本実施形態では、スマートデバイス200はこのパスワードを用いてセンダーカメラの簡易APに接続する。ユーザが図4(E)の画面でパスワードを設定して「OK」ボタンを押下すると、デジタルカメラ100は図4(F)の画面に遷移し、センダーカメラとして動作を開始する。図4(F)は、センダーカメラにおいて連動撮影の接続処理を開始したことを示す画面の一例である。以上の処理が図5のシーケンスのステップS501の処理に相当する。
ステップS502おいて、センダーカメラは簡易APを起動する。本実施形態では、センダーカメラはステップS501においてユーザが設定したパラメータに基づいて簡易APを起動する。
ステップS503において、センダーカメラはレシーバーカメラと無線パラメータの交換を行うためにWPSによるパラメータ交換処理を開始する。
ここで、レシーバーカメラ1〜10が連動撮影を開始する。なおここではレシーバーカメラ2からレシーバーカメラ8の動作についての説明を省略する。
ステップS504において、ユーザは他のデジタルカメラ100をレシーバーカメラとして動作させる。ここでデジタルカメラ100をレシーバーカメラとして動作させる手順について説明する。
ユーザが図4(A)の項目401を選択すると、デジタルカメラ100は図4(B)に示すような画面に遷移する。ここまではデジタルカメラ100をセンダーカメラとして動作させる手順と同様である。ユーザが図4(B)の画面で「レシーバー」を選択して「OK」ボタンを押下すると、デジタルカメラ100は図4(G)の画面に遷移する。図4(G)は、レシーバーカメラにおいて連動撮影の接続処理を開始したことを示す画面の一例である。ユーザが図4(G)の画面で「OK」ボタンを押下すると、デジタルカメラ100は連動撮影の接続処理を開始する。以上の処理が図5のシーケンスのステップS504の処理に相当する。
ステップS505において、レシーバーカメラ1はセンダーカメラと無線パラメータの交換を行うためにWPSによるパラメータ交換処理を開始し、待機する。
次にレシーバーカメラ2〜レシーバーカメラ10においても、レシーバーカメラ1と同様に、連動撮影の処理を開始する。図5のステップS506およびステップS507の処理はレシーバーカメラ9の処理であり、それぞれステップS504およびステップS505の処理と同様である。図5のステップS508およびステップS509の処理はレシーバーカメラ10の処理であり、それぞれステップS504およびステップS505の処理と同様である。
ステップS510において、センダーカメラおよびレシーバーカメラ1はWPSによって無線パラメータを交換する。センダーカメラはレシーバーカメラ1に簡易APの無線パラメータを送信する。レシーバーカメラ1はセンダーカメラに自身のMACアドレス等の識別子を含む無線パラメータを送信する。
ステップS511において、センダーカメラは、ステップS510において受信したレシーバーカメラ1のMACアドレスをMACアドレスリストに登録する。図6は、MACアドレスリストを例示する図である。図6に示すリストはセンダーカメラの簡易APに同時接続できる外部装置の上限が10台であることを示している。センダーカメラは、WPSによってパラメータ交換を行ったレシーバーカメラのMACアドレスをこのリストに記録する。ただし、このMACアドレスリストはレシーバーカメラを管理するためのリストであるため、センダーカメラはこのリストにスマートデバイス200のMACアドレスを記録しない。
ステップS512において、レシーバーカメラ1は、ステップS510において受信したセンダーカメラの簡易APの無線パラメータに基づいて、センダーカメラの簡易APに接続する。
ステップS513において、センダーカメラは、ステップS512において接続したレシーバーカメラ1のMACアドレスとMACアドレスリストに記録されているMACアドレスとを比較する。レシーバーカメラ1のMACアドレスはこのMACアドレスリストに記録されているため、センダーカメラはこのカメラがWPSによってパラメータ交換したレシーバーカメラであると判断できる。
ステップS514において、センダーカメラは、現在接続しているレシーバーカメラの台数を表示する。例えばセンダーカメラは図4(F)に示すようにセンダーカメラに接続したレシーバーカメラの台数を1台と表示する。
ステップS515において、センダーカメラは、他のレシーバーカメラと無線パラメータの交換を行うためにWPSによるパラメータ交換処理を再度開始する。そして、センダーカメラはレシーバーカメラ1と同様に、ステップS510〜ステップS515の処理をレシーバーカメラ2〜レシーバーカメラ8に対しても実行する。センダーカメラは、レシーバーカメラから接続されるごとに図4(F)の画面に示しているレシーバーカメラの台数の表示を更新する。
そしてセンダーカメラは、ステップS516〜ステップS520の処理においてレシーバーカメラ9との接続処理を行う。ステップS516〜ステップS520の処理は、それぞれステップS510〜ステップS514の処理と同様である。
ステップS521において、センダーカメラはWPSによるパラメータ交換処理を停止する。ステップS520までの処理で、センダーカメラにレシーバーカメラ1〜レシーバーカメラ9の合計9台のデバイスが接続している。本実施形態ではセンダーカメラの簡易APに接続可能なデバイスの台数が10台であるため、センダーカメラの簡易APに接続できる外部装置は残り1台である。センダーカメラはスマートデバイス200が簡易APに接続できるようにするため、センダーカメラはWPSによるパラメータ交換処理を停止し、新たにレシーバーカメラが接続できないようにする。これにより、他のレシーバーカメラがセンダーカメラに接続しようとしていても、センダーカメラはスマートデバイス200と接続を確立できる。
ステップS522において、レシーバーカメラ10はWPSによるパラメータ交換処理がタイムアウトする。これはステップS521においてセンダーカメラがWPSによるパラメータ交換処理を停止したため、レシーバーカメラはセンダーカメラとWPSによるパラメータ交換ができないからである。
ステップS523において、ユーザはセンダーカメラを操作して連動撮影を開始する。例えばユーザはセンダーカメラの図4(F)に示す画面において、「OK」ボタンを押下することで、センダーカメラに連動撮影を開始させる。
ステップS524において、センダーカメラはレシーバーカメラ1とUDP(User Datagram Protocol)接続する。センダーカメラは、レシーバーカメラ2〜レシーバーカメラ8ともレシーバーカメラ1と同様にUDP接続する。そしてステップS525において、センダーカメラは、ステップS524と同様に、レシーバーカメラ9とUDP接続する。
ステップS526において、センダーカメラは、すべてのレシーバーカメラとの接続が完了すると、簡易APの無線パラメータおよびMACアドレスリスト等を不揮発性メモリ103に記録する。レシーバーカメラにおいても、センダーカメラの簡易APの無線パラメータ等を不揮発性メモリ103に記録する。ここまでの処理において、センダーカメラはレシーバーカメラ1〜レシーバーカメラ9との接続を完了する。連動撮影のための接続が完了した後、センダーカメラは例えば図4(H)に示す画面を表示する。
ステップS527において、センダーカメラはHTTPサーバを起動する。このHTTPサーバは遠隔操作機能を実行するために起動される。
ステップS528において、ユーザはスマートデバイス200を操作し、スマートデバイス200がセンダーカメラに接続するよう操作する。このとき例えばユーザはスマートデバイス200にセンダーカメラの簡易APのSSIDおよびパスワードを入力し、スマートデバイス200をセンダーカメラに接続させるよう操作する。ユーザは、例えば図4(H)に示すセンダーカメラの画面の「設定確認」を選択することで、センダーカメラの簡易APのSSIDをセンダーカメラに表示させることができる。ただし、セキュリティの都合上、センダーカメラはステップS501において入力されたパスワードを表示しない。このSSIDおよびパスワードをユーザがスマートデバイス200に入力することで、スマートデバイス200はセンダーカメラに接続できる。なお、このパスワードはユーザがステップS501においてセンダーカメラに入力したパスワードである。
ステップS529において、スマートデバイス200はセンダーカメラの簡易APに接続する。
ステップS530において、センダーカメラおよびスマートデバイス200はTCP接続し、HTTPによる通信を開始する。これにより、スマートデバイス200はセンダーカメラを遠隔操作できる。
以上、センダーカメラとレシーバーカメラとが接続した後にスマートデバイス200をセンダーカメラに接続する手順について説明した。これによりセンダーカメラとレシーバーカメラとが連動撮影のために同時接続をした状態であっても、ユーザはスマートデバイス200をセンダーカメラに接続することができる。
なお、図5のシーケンスではセンダーカメラに同時接続するレシーバーカメラの台数を9台としたが、センダーカメラに同時接続するレシーバーカメラは9台よりも少なくてよい。この場合、センダーカメラとレシーバーカメラとが接続した後に接続可能なスマートデバイス200の台数は、その減少したレシーバーカメラの台数だけ増加する。例えば、センダーカメラが6台のレシーバーカメラと同時接続した場合、センダーカメラは4台のスマートデバイス200接続できるようにしてもよい。
なお、ステップS501において簡易APの無線パラメータ等が不揮発性メモリ103にすでに記録されている場合、デジタルカメラ100は図4(H)に示す画面を表示する。また、ステップS501において、簡易APの無線パラメータ等が不揮発性メモリ103に記録されていない場合、デジタルカメラ100は図4(A)に示す画面を表示する。
なお、例えばステップS520において、同時接続しているレシーバーカメラの台数が9台に達したことに応じて、センダーカメラは同時接続しているレシーバーカメラの台数が上限に達したことを示すメッセージを画面に表示してもよい。これによりユーザは新たにレシーバーカメラをセンダーカメラに接続できないことを知ることができる。
なおステップS526において、パラメータ交換を行ったがUDP接続を確立しなかったレシーバーカメラが存在した場合、センダーカメラはそのレシーバーカメラのMACアドレスを消去してからMACアドレスリストを不揮発性メモリ103に記録する。
<センダーカメラとレシーバーカメラの接続途中でスマートデバイスを接続する手順>
これまで、センダーカメラがレシーバーカメラとの連動撮影の接続が完了した後で、スマートデバイス200をセンダーカメラに接続する手順について説明した。次にセンダーカメラとレシーバーカメラとが連動撮影の接続を行っている途中で、スマートデバイス200をセンダーカメラに接続させる手順について説明する。
図4および図7を用いて、センダーカメラがレシーバーカメラと連動撮影のために接続している途中で、スマートデバイス200をセンダーカメラに接続する手順について説明する。ここでは、センダーカメラおよび9台のレシーバーカメラが連動撮影のために接続している途中で、スマートデバイス200の一例であるスマートフォン1およびスマートフォン2がセンダーカメラに接続する場合を例に説明する。図7はこの場合のシーケンス図の一例である。ただしこの例では、センダーカメラは9台のレシーバーカメラと接続するために、1台のスマートフォンとしか接続しないものとする。
ステップS701〜ステップS707はそれぞれ図5のステップS501〜ステップS507と同様であるため説明を省略する。ステップS708〜ステップS713はそれぞれ図5のステップS510〜ステップS515と同様であるため説明を省略する。ここまでのステップの処理によってセンダーカメラはレシーバーカメラ1と接続した状態である。ここでスマートフォン1およびスマートフォン2が、センダーカメラの簡易APに接続する。
ステップS714およびステップS715の処理はそれぞれ図5のステップS528およびステップS529の処理と同様であるため説明を省略する。
ステップS716において、センダーカメラは、ステップS715において接続したスマートフォン1のMACアドレスとMACアドレスリストに記録されているMACアドレスとを比較する。この結果、センダーカメラはスマートフォン1のMACアドレスはMACアドレスリストに記録されていないと判断する。この場合、レシーバーカメラ以外の外部装置、つまり本実施形態ではスマートデバイス200が、センダーカメラの簡易APに新たに接続したことを示す。そして、そのような外部装置はスマートフォン1より前にセンダーカメラの簡易APに接続していないため、センダーカメラはスマートフォン1との接続を継続する。ここでセンダーカメラは図4(F)の画面に示すレシーバーカメラの台数の表示を変更しない。
ステップS717およびステップS718の処理はそれぞれ図5のステップS528およびステップS529の処理と同様であるため説明を省略する。
ステップS719において、センダーカメラは、ステップS718において接続したスマートフォン2のMACアドレスとMACアドレスリストに記録されているMACアドレスとを比較する。この結果、センダーカメラはスマートフォン2のMACアドレスはMACアドレスリストには記録されていないと判断する。また、ステップS715において、MACアドレスリストにMACアドレスが記録されていない外部装置であるスマートフォン1とすでに接続しているため、センダーカメラはスマートフォン2との接続を切断すると判断する。
ステップS720において、センダーカメラはスマートフォン2との接続を切断する。
ステップ720以降、センダーカメラはレシーバーカメラ1と同様に、ステップS708〜ステップS713の処理をレシーバーカメラ2〜レシーバーカメラ8に対しても実行する。ここでセンダーカメラは、レシーバーカメラと接続するごとに図4(F)の画面に示すレシーバーカメラの台数の表示を更新する。
次にセンダーカメラはステップS721〜ステップS725においてレシーバーカメラ9と接続する。ステップS721〜ステップS725の処理は、ステップS708からステップS713の処理と同様である。
ステップS726において、センダーカメラは、WPSによるパラメータ交換処理を停止する。ステップS726の処理は図5のステップS521の処理と同様である。
ステップS727の処理は図5のステップS523の処理と同様であるため説明を省略する。
ステップS728において、センダーカメラはレシーバーカメラ1とUDP接続する。センダーカメラは、レシーバーカメラ2〜レシーバーカメラ8もレシーバーカメラ1と同様にUDP接続する。そしてステップS729において、センダーカメラは、ステップS728と同様に、レシーバーカメラ9とUDP接続する。ステップS728およびステップS729の処理は、それぞれ図5のステップS524およびステップS525の処理と同様である。
ステップS730およびステップS731はそれぞれ図5のステップS526およびS527と同様であるため説明を省略する。
ステップS732において、センダーカメラおよびスマートデバイス200はTCP接続し、HTTPによる通信を開始する。ステップS732の処理は、図5のステップS530の処理と同様である。
以上、センダーカメラがレシーバーカメラと連動撮影のために接続している途中で、スマートデバイス200がセンダーカメラに接続する手順について説明した。これによりセンダーカメラはレシーバーカメラと連動撮影の接続をしている途中で複数のスマートデバイス200がセンダーカメラの簡易APに接続しても、1台のスマートデバイス200および9台のレシーバーカメラと同時接続ができる。本シーケンスでは、センダーカメラに同時接続するレシーバーカメラの台数を9台としたが、それより少ない台数のレシーバーカメラと同時接続する場合、センダーカメラはレシーバーカメラとUDP接続した後、追加でスマートデバイス200と接続してもよい。ここで接続可能なスマートデバイス200の台数は、その減少したレシーバーカメラの台数だけ増加する。例えば、センダーカメラが6台のレシーバーカメラと接続中に1台のスマートデバイスと接続した場合、センダーカメラはレシーバーカメラとUDP接続した後に追加で3台のスマートデバイス200と接続できる。
なお、本実施形態では、センダーカメラとレシーバーカメラが連動撮影の接続をしている途中に複数のスマートデバイス200が接続してきた場合、センダーカメラはそのうちの1台のみと接続を継続したが、この台数は複数台にしてもよい。その場合、センダーカメラがWPSによってパラメータ交換するレシーバーカメラの台数は9台より少ない台数になる。また、センダーカメラはWPSによってパラメータ交換するレシーバーカメラの台数とセンダーカメラに接続するスマートデバイス200の合計を10台になるようにする。
<センダーカメラの動作>
図8を用いて、センダーカメラの動作について説明する。図8は、センダーカメラにおける処理を示すフローチャートの一例である。このフローチャートにおける各処理は、制御部101が、不揮発性メモリ103に格納されたプログラムを作業用メモリ104に展開して実行することにより実現される。このフローチャートにおける処理は、例えばユーザが図4(E)の画面に示す「OK」ボタンを押下したことに応じて開始する。
ステップS801において、制御部101は、接続部111を制御することにより簡易APを起動する。簡易APの無線パラメータは、ユーザが図4(D)の画面、および図4(E)の画面において入力した設定に従う。ステップS801の処理は、図5のステップS502および図7のステップS702の処理に相当する。
ステップS802において、制御部101は、接続部111を制御することによりDHCPサーバを起動する。
ステップS803において、制御部101は、接続部111を制御することによりWPSを開始する。本実施形態では、WPSはWPS PINコード方式を用いるものとする。本実施形態ではセンダーカメラおよびレシーバーカメラはこのPINコードをあらかじめ記録しているものとする。本ステップの処理は、図5のステップS503および図7のステップS703の処理に相当する。
ステップS804において、制御部101はユーザに連動撮影の開始を指示されたか否かを判断する。例えば制御部101はセンダーカメラの図4(F)に示す画面において、ユーザに「OK」ボタンを押下されたか否かを判断する。制御部101がユーザに連動撮影の開始を指示されたと判断した場合、処理はステップS819に進む。制御部101がユーザに連動撮影の開始を指示されていないと判断した場合、処理はステップS805に進む。ステップS804の処理は、図5のステップS523、図7のステップS727の処理に相当する。まず制御部101がユーザに連動撮影の開始を指示されていないと判断した場合について説明する。
ステップS805において、制御部101は、接続部111を制御することによりセンダーカメラの簡易APに接続しているデバイス(STA)の台数が10台に達しているか否かを判断する。センダーカメラの簡易APに接続しているSTAの台数が10台であると判断した場合、処理はステップS804に戻る。センダーカメラの簡易APに接続しているSTAの台数が10台に達していない、つまり簡易APに9台以下のデバイスが接続していると判断した場合、処理はステップS806に進む。なお、制御部101は本ステップにおいて接続部111を制御することにより簡易APに接続していたSTAとの接続が切断したか否かも判断できる。これにより簡易APに接続しているSTAの台数が一度10台に達したとしても、その後STAとの接続が切断したことを制御部101は本ステップの処理において判断できる。
ステップS806において、制御部101は、接続部111を制御することにより、簡易APにSTAが新たに接続したか否かを判断する。簡易APに新たにSTAが接続したと判断した場合、処理はステップS814に進む。簡易APに新たにSTAが接続していないと判断した場合、処理はステップS807に進む。まず、制御部101がステップS806において、簡易APに新たにSTAが接続していないと判断した場合について説明する。本実施形態ではセンダーカメラとWPSによるパラメータ交換処理を行うSTAはレシーバーカメラとして説明する。
ステップS807において、制御部101は、接続部111を制御することによりレシーバーカメラがWPSによってパラメータ交換処理を開始したか否かを判断する。例えば制御部101は接続部111を制御することにより、レシーバーカメラからWPSによるパラメータ交換を要求するパケットを受信したか否かを判断する。制御部101がレシーバーカメラがWPSによってパラメータ交換処理を開始したと判断した場合、処理はステップS808に進む。制御部101がレシーバーカメラがWPSによるパラメータ交換処理を開始していないと判断した場合、処理はステップS804に戻る。なお、WPSを停止している場合、制御部101はレシーバーカメラがWPSによるパラメータ交換処理を開始していないと判断する。
ステップS808において、制御部101は、接続部111を制御することによりSTAとWPSによるパラメータ交換を行う。制御部101は接続部111を制御することにより、レシーバーカメラにセンダーカメラの簡易APの無線パラメータを送信する。無線パラメータとは、センダーカメラの簡易APのSSID、認証方式、暗号種別、パスワード等である。レシーバーカメラはセンダーカメラから受信したこの無線パラメータを用いて、センダーカメラの簡易APに接続する。また、センダーカメラはSTAからMACアドレス等の無線パラメータを受信する。ステップS808の処理は、図5のステップS510、およびステップS516、ないしは図7のステップS708、ステップS721の処理に相当する。
ステップS809において、制御部101は、ステップS808において受信したレシーバーカメラのMACアドレスを、作業用メモリ104に記録されているMACアドレスリストに記録する。例えば制御部101は図6に示すMACアドレスリストにレシーバーカメラのMACアドレスを記録する。ステップS809の処理は、図5のステップS511、およびステップS517、ないしは図7のステップS709、ステップS722の処理に相当する。
ステップS810において、制御部101は、作業用メモリ104を制御することにより、WPSによってパラメータ交換したレシーバーカメラの台数を計算する。
ステップS811において、制御部101は、MACアドレスリストにMACアドレスを記録したレシーバーカメラの数が9台に達したか否かを判断する。制御部101が9台に達したと判断した場合、処理はステップS812に進む。制御部101が9台に達していないと判断した場合、処理はステップS813に進む。
ステップS812において、制御部101は、接続部111を制御することによりWPS処理を停止する。センダーカメラが同時接続できるレシーバーカメラの台数は9台に制限されているため、これ以上センダーカメラが他のレシーバーカメラとパラメータ交換を実行しないようにするために本ステップの処理は実行される。本ステップの処理の後、処理はステップS804に戻る。ステップS812の処理は、図5のステップS521、図7のステップS726の処理に相当する。
ステップS813において、制御部101は、接続部111を制御することによりWPSによるパラメータ交換処理を開始する。センダーカメラが現在同時接続しているレシーバーカメラの台数は9台未満のため、センダーカメラが他のレシーバーカメラとパラメータ交換を実行できるようにするために本ステップの処理は実行される。本ステップの処理の後、処理はステップS804に戻る。ステップS813の処理は、図5のステップS515、図7のステップS713の処理に相当する。次に、ステップS806において、制御部101が簡易APにSTAが新たに接続したと判断した場合について説明する。
ステップS814において、制御部101は、接続部111を制御することにより簡易APに新たに接続したSTAのMACアドレスを受信する。
ステップS815において、制御部101は、新たに接続したSTAのMACアドレスが、MACアドレスリストに記録されているか否かを判断する。制御部101が新たに接続したSTAのMACアドレスがMACアドレスリストに記録されていると判断した場合、処理はステップS816に進む。制御部101が新たに接続したSTAのMACアドレスがMACアドレスリストに記録されていないと判断した場合、処理はS817に進む。ステップS815の処理は、図5のステップS513、ステップS519、ないしは図7のステップS711、ステップ716、ステップ719、およびステップS724に相当する。まず、簡易APに接続してきたSTAのMACアドレスが、MACアドレスリストに記録されていると判断した場合について説明する。この場合、ステップS808においてWPSによるパラメータ交換処理を行ったレシーバーカメラが、センダーカメラの簡易APに接続したことを示す。
ステップS816において、制御部101は、表示部106に表示しているレシーバーカメラの台数表示を更新する。例えば制御部101は、図4(F)の画面に表示しているレシーバーカメラの台数をカウントアップする。ステップS816の処理は、図5のステップS514、ステップS520、図7のステップS712、ステップS725の処理に相当する。次に、ステップS815において制御部101が新たに接続したSTAのMACアドレスが、MACアドレスリストに記録されていない場合について説明する。この場合、レシーバーカメラ以外のSTAが、センダーカメラの簡易APに新たに接続したことを示す。本実施形態では、センダーカメラの簡易APにスマートデバイス200が接続する。
ステップS817において、制御部101は、接続部111を制御することによりMACアドレスリストに記録されていないSTAと接続中か否かを判断する。制御部101がMACアドレスリストに記録されていないSTAと接続中であると判断した場合、すでに他のスマートデバイス200がセンダーカメラに接続しているため、処理はステップS818に進む。制御部101がMACアドレスリストに記録されていないSTAと接続中ではないと判断した場合、新たに接続してきたSTAとの接続を継続し、処理はステップS819に進む。ステップS817の処理は、図7のステップS716、ステップS719の処理に相当する。
ステップS818において、制御部101は、接続部111を制御することにより新たに接続したSTAと切断する。ステップS818の処理は、図7のステップS720の処理に相当する。これまでステップS804において制御部101がユーザに連動撮影の開始を指示されていないと判断した場合について説明した。次にステップS804において制御部101がユーザに連動撮影の開始を指示されたと判断した場合について説明する。
ステップS819において、制御部101は、簡易APに接続しているレシーバーカメラと連動撮影を開始する。本実施形態ではセンダーカメラはレシーバーカメラとUDP接続し、連動撮影を行う。連動撮影の処理は本ステップ以降の処理と並行して実行される。ステップS819の処理は、図5のステップS524およびステップS529、ないしは図7のステップS728およびステップS729の処理に相当する。
ステップS820において、制御部101は、簡易APの無線パラメータおよび作業用メモリ104に記録されているMACアドレスリストを不揮発性メモリ103に記録する。この簡易APの無線パラメータおよびMACアドレスリストを用いることで、ユーザは再度連動撮影を行う際に同じ設定を流用することができる。
ステップS821において、制御部101は、接続部111を制御することにより、HTTPサーバを起動する。制御部101は連動撮影の処理を終了するまで他の処理と並行してこのHTTPサーバ機能を実行する。ステップS821の処理は、図5のステップS527、図7のステップS731の処理に相当する。
ステップS822において、制御部101は接続部111を制御することにより、簡易APに接続しているスマートデバイス200とTCP接続し、HTTPによるセンダーカメラの遠隔操作機能を実行する。簡易APにスマートデバイス200が接続していない場合、制御部101は本ステップの処理を実行しない。本ステップの処理は、図7のステップS732の処理に相当する。
ステップS823において、制御部101は連動撮影機能を終了するか否かを判断する。例えば、制御部101はユーザから連動撮影を終了する操作を操作部105を介して受け付けたか否かを判断する。制御部101が連動撮影機能を終了しないと判断した場合、処理はステップS824に進む。制御部101が連動撮影機能を終了すると判断した場合、本フローチャートの処理は終了する。
ステップS824において、制御部101は、接続部111を制御することによりセンダーカメラの簡易APに接続しているSTAの台数が上限に達しているか否かを判断する。例えば本実施形態では制御部101は、接続部111を制御することによりセンダーカメラの簡易APに接続しているSTAの台数が10台であるか否かを判断する。制御部101がセンダーカメラの簡易APに接続しているSTAの台数が上限に達していると判断した場合、処理はステップS823に戻る。制御部101がセンダーカメラの簡易APに接続しているSTAの台数が上限に達していないと判断した場合、処理はS825に進む。
ステップS825において、制御部101は、接続部111を制御することによりセンダーカメラの簡易APにSTAが接続したか否かを判断する。制御部101が簡易APにSTAが接続したと判断した場合、処理はステップS826に進む。制御部101が簡易APにSTAが新たに接続していないと判断した場合、処理はステップS823に戻る。本実施形態では、本ステップにおいて簡易APに接続するSTAはスマートデバイス200である。
ステップS826において、制御部101は、接続部111を制御することにより新たに接続してきたSTAとTCP接続を確立し、HTTPによる遠隔操作機能を実行する。本ステップの処理の後、処理はS825に戻る。ステップS826は、図5のステップS530に相当する。
以上、センダーカメラの動作について説明した。
<レシーバーカメラの動作>
次に、図9を用いて、レシーバーカメラの処理について説明する。図9は、レシーバーカメラにおける処理を示すフローチャートの一例である。このフローチャートにおける各処理は、制御部101が、不揮発性メモリ103に格納されたプログラムを作業用メモリ104に展開して実行することにより実現される。このフローチャートにおける処理は、ユーザが図4(G)の画面に示す「OK」ボタンを押下したことをトリガに開始する。
ステップS901において、制御部101は、接続部111を制御することによりWPSによるパラメータ交換処理を開始する。本ステップの処理は、図5のステップS505、ステップS507、およびステップS509、ないしは図7のステップS705、ステップS707に相当する。
ステップS902において、制御部101は、接続部111を制御することによりセンダーカメラがWPSによるパラメータ交換処理を開始したか否かを判断する。例えば、WPSによるパラメータ交換の要求に対する応答をセンダーカメラから受信したか否かを判断する。制御部101がセンダーカメラがWPSによるパラメータ交換処理を開始したと判断した場合、処理はステップS903に進む。制御部101がセンダーカメラがWPSによるパラメータ交換処理を開始していないと判断した場合、処理はステップS903に進む。
ステップS903において、制御部101はWPSによるパラメータ交換を開始してから所定時間経過したか否かを判断する。例えば制御部101はWPSによるパラメータ交換を開始してから1分経過したか否かを判断する。制御部101が所定時間経過していないと判断した場合、処理はステップS902に戻る。制御部101が所定時間経過したと判断した場合、本フローチャートの処理は終了する。ステップS903の処理は、図5のステップS522の処理に相当する。
ステップS904において、制御部101は、接続部111を制御することによりセンダーカメラからWPSによってパラメータ交換する。例えば制御部101は接続部111を制御することにより、SSIDおよびパスワード等の無線パラメータを受信する。ステップS904の処理は、図5のステップS510、ステップS516、図7のステップS708、ステップS721の処理に相当する。
ステップS905において、制御部101は、接続部111を制御することによりステップS904において受信した無線パラメータを用いて、センダーカメラの簡易APに接続する。ステップS905の処理は、図5のステップS512、ステップS518、図7のステップS710、ステップS723の処理に相当する。
ステップS906において、制御部101は、接続部111を制御することによりIPアドレッシング処理を行う。
ステップS907において、制御部101は、接続部111を制御することによりセンダーカメラとUDP接続する。ステップS907の処理は、図5のステップS524、ステップS525、図7のステップS728、ステップS729の処理に相当する。
ステップS908において、制御部101は、ステップS904において受信したセンダーカメラの簡易APの無線パラメータを不揮発性メモリ103に記録し、処理を終了する。制御部101はセンダーカメラの簡易APの無線パラメータを不揮発性メモリ103に記録することにより、次回以降にセンダーカメラに接続する際にこの無線パラメータを利用することができる。
以上、レシーバーカメラの動作について説明した。
以上のように、センダーカメラおよびレシーバーカメラが動作することで、センダーカメラと複数のレシーバーカメラとが同時接続を確立しても、スマートデバイス200はセンダーカメラに接続できる。
ここで、以前連動撮影処理を実行したことがある場合において、センダーカメラおよびレシーバーカメラが不揮発性メモリ103に記録した無線パラメータ等を利用して再度レシーバーカメラと接続する処理について説明する。
センダーカメラは、連動撮影を開始すると、図4(H)に示す画面を表示する。ユーザが図4(H)の画面の項目403の「前回の設定で接続」を選択すると、センダーカメラは不揮発性メモリ103に記録してある簡易APの無線パラメータに基づいて、簡易APを起動する。レシーバーカメラは、連動撮影を開始すると、図4(H)に示す画面を表示する。ユーザが図4(H)の画面の項目403の「前回の設定で接続」を選択すると、レシーバーカメラは不揮発性メモリ103に記録してある無線パラメータに基づいて、センダーカメラの簡易APに接続する。
そしてセンダーカメラは新たにデバイスと接続した場合、そのデバイスのMACアドレスとMACアドレスリストに記録されているMACアドレスとを比較する。そのデバイスのMACアドレスがMACアドレスリストに記録されている場合、センダーカメラは前回接続したレシーバーカメラが接続したと判断し、そのレシーバーカメラとUDP接続する。そのデバイスのMACアドレスがMACアドレスリストに記録されていない場合、センダーカメラはMACアドレスリストにMACアドレスが記録されていないデバイスが何台接続されているか計算する。その台数が簡易APに接続可能な台数の上限からMACアドレスリストに記録されているMACアドレスの数を引いた台数以内であれば、センダーカメラは新たに接続したデバイスの接続を継続する。例えば、センダーカメラの簡易APに接続できる台数の上限が10台であり、MACアドレスリストに記録されているMACアドレスの数が6つである場合、MACアドレスリストにMACアドレスが記録されていないデバイスはセンダーカメラに4台接続できる。MACアドレスリストにMACアドレスが記録されていないデバイスが5台以上センダーカメラに接続した場合、センダーカメラは5台目以降のそのデバイスとの接続を切断する。
以上、センダーカメラおよびレシーバーカメラが不揮発性メモリ103に記録した無線パラメータ等を利用して再度レシーバーカメラと接続する処理について説明した。不揮発性メモリ103に記録した無線パラメータ等を利用して接続する場合でも、センダーカメラはMACアドレスリストに記録されていないデバイスと接続することができる。
ここまで連動撮影機能においてセンダーカメラとレシーバーカメラとが接続を手動接続で行う場合について説明してきたが、ここでセンダーカメラとレシーバーカメラとが接続を自動接続で行う場合について説明する。センダーカメラで連動撮影処理を開始し、図4(C)の画面において、ユーザが「自動接続」を選択した場合、センダーカメラは図4(F)に示す画面を表示する。この場合、センダーカメラは簡易APの無線パラメータをすべて自動で決定する。そのため、WPSによるパラメータ交換ができないレシーバーカメラ以外のデバイスはセンダーカメラの簡易APに接続することができない。一方、WPSによるパラメータ交換が可能なレシーバーカメラは、センダーカメラからWPSによって無線パラメータを受信できるためセンダーカメラの簡易APに接続できる。そのため、ユーザが図4(C)の画面において「自動接続」を選択した場合、センダーカメラはレシーバーカメラとのWPSによるパラメータ交換を簡易APの接続可能な台数の上限になるまで実行する。例えば本実施形態ではこの場合、センダーカメラは10台のレシーバーカメラとWPSによるパラメータ交換を実行する。
ただし、図4(H)に示す「設定確認」をユーザが選択したことに応じて、センダーカメラが簡易APのSSIDに加えてパスワード等を表示できる場合、センダーカメラは「自動接続」の場合であっても遠隔操作機能を実行してよい。例えば、「自動接続」においてレシーバーカメラと9台しか同時接続しなければ、センダーカメラはスマートデバイス200と接続できるため、遠隔操作機能を起動してよい。しかし例えば「自動接続」においてレシーバーカメラと10台同時接続した場合、センダーカメラは遠隔操作機能を実行しない。
なお、本実施形態では、センダーカメラの簡易APに接続できるデバイスの台数の上限は10台としたが、この台数は複数台であればよい。また、本実施形態では、センダーカメラがWPSパラメータ交換を行うレシーバーカメラの台数を9台としたが、ユーザはこの台数を任意に設定してもよい。同様に、センダーカメラに接続できるスマートデバイス200の台数をユーザが任意に設定してもよい。
[その他の実施形態]
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。