以下、添付図面を参照して、本発明の実施形態を説明する。なお、本発明の技術的範囲は、特許請求の範囲によって確定されるのであって、以下の個別の実施形態によって限定されるわけではない。また、実施形態の中で説明されている特徴の組み合わせすべてが、本発明に必須とは限らない。
以下に説明する実施形態は、本発明の実現手段としての一例であり、本発明が適用される装置の構成や各種条件によって適宜修正又は変更されてもよい。また、各実施形態を適宜組み合せることも可能である。
[第1の実施形態]
図1は、第1の実施形態に係る通信システムの全体構成を示すブロック図である。ここでは、通信装置の例として、撮像装置としても機能するデジタルカメラ及びスマートフォンについて説明する。しかしながら、通信装置はこれらに限定されず、携帯型のメディアプレーヤ、タブレットデバイス、又はパーソナルコンピュータなどの情報処理装置であってもよい。
まず、デジタルカメラA100について説明する。第一制御部A101は、入力された信号や、後述のプログラムに従ってデジタルカメラA100の各部を制御する。なお、第一制御部A101が装置全体を制御する代わりに、複数のハードウェアが処理を分担することで、装置全体を制御してもよい。
撮像部A102は、例えば、光学レンズユニットと、絞り・ズーム・フォーカスなどを制御する光学系と、光学レンズユニットを経て導入された光(映像)を電気的な映像信号に変換するための撮像素子などを含む。撮像素子としては、一般的には、CMOS(Complementary Metal Oxide Semiconductor)や、CCD(Charge Coupled Device Image Sensor)が利用される。撮像部A102は、第一制御部A101に制御されることにより、撮像部A102に含まれるレンズで結像された被写体光を、撮像素子により電気信号に変換し、ノイズ低減処理などを行い、デジタルデータを画像データとして出力する。本実施形態のデジタルカメラA100では、画像データは、DCF(Design rule for Camera File system)の規格に従って、記録媒体A110に記録される。
不揮発性メモリA103は、電気的に消去・記録可能な不揮発性のメモリであり、第一制御部A101で実行される後述のプログラム等が格納される。作業用メモリA104は、撮像部A102で撮像された画像データを一時的に保持するバッファメモリや、表示部A106の画像表示用メモリ、第一制御部A101の作業領域等として使用される。
第一操作部A105は、後述する表示部A106に形成されるタッチパネルからの操作入力を受け付ける。例えば、ユーザは、表示部A106に表示された被写体を表示部A106上でタッチすることができる。この場合、第一操作部A105は、タッチ位置に対するAF(オートフォーカス)処理や、AE(自動露出)処理、AWB(オートホワイトバランス)処理、EF(フラッシュプリ発光)処理等の、静止画の撮像準備を行う指示を受け付ける。また、第一操作部A105は、表示部A106に表示される仮想キーボードを用いて、タッチ操作で文字等を入力する際にも使用される。
表示部A106は、静止画の撮像準備段階でのライブビューの表示、撮像した静止画像データの表示、対話的な操作のための文字表示などを行う。なお、表示部A106は必ずしもデジタルカメラA100が内蔵する必要はない。デジタルカメラA100は、カメラの背面等に設けた表示部A106だけでなく、カメラの外部の表示部A106と接続することができ、表示部A106の表示を制御する表示制御機能を少なくとも有していればよい。
記録媒体A110は、撮像部A102から出力された画像データを記録することができる。記録媒体A110は、デジタルカメラA100に着脱可能なように構成されていてもよいし、デジタルカメラA100に内蔵されていてもよい。即ち、デジタルカメラA100は、少なくとも記録媒体A110にアクセスする機能を有していればよい。
接続部A111は、外部装置と接続するためのインターフェースである。本実施形態のデジタルカメラA100は、接続部A111を介して、外部装置とデータのやりとりを行うことができる。なお、本実施形態では、接続部A111は、外部装置とIEEE802.11の規格に従った、いわゆる無線LANにより通信するためのインターフェースを含む。第一制御部A101は、接続部A111を制御することで外部装置との無線通信を実現する。
デジタルカメラA100は、接続部A111を介して後述するスマートフォンB100と通信する場合、リモート撮影モード又はリモート再生モードで動作することができる。リモート撮影モードの場合、デジタルカメラA100は、接続部A111を介してスマートフォンB100から受信した撮影命令に従い、撮影動作を実行する。リモート再生モードの場合、デジタルカメラA100は、接続部A111を介してスマートフォンB100から受信した再生命令に従い、記録媒体A110内の画像データをスマートフォンB100へ転送する。これにより、スマートフォンB100は、デジタルカメラA100が保持する画像を表示部B106に表示することができる。
近接無線通信部A112は、例えば、デジタルカメラA100の側部に配され、無線通信のためのアンテナ、無線信号を処理するため変復調回路、通信コントローラなどを含む。近接無線通信部A112は、変調した無線信号をアンテナから出力し、また、アンテナで受信した無線信号を復調する。本実施形態では、近接無線通信部A112は、ISO/IEC 18092の規格(NFC(Near Field Communication))に従った非接触近接無線通信を行うものとする。しかしながら、近接無線通信部A112が実現する非接触近接無線通信は、NFCに限られるものではなく、他の無線通信規格を採用してもよい。例えば、近接無線通信部A112が実現する非接触近接無線通信として、ISO/IEC 14443の規格に従った非接触近接無線通信を採用してもよい。
近接無線不揮発性メモリA123は、近接無線通信部A112に備えられている不揮発性メモリである。近接無線不揮発性メモリA123の内部に記憶されているデータは、非接触近接無線通信により、後述するスマートフォンB100とでやり取りされる。後述するスマートフォンB100の近接無線通信部B112を近接無線通信部A112に近接させると、デジタルカメラA100とスマートフォンB100との間で通信が開始する。なお、必ずしも近接無線通信部A112と近接無線通信部B112とを物理的に接触させる必要はない。近接無線通信部A112及び近接無線通信部B112は、一定の距離だけ離れていても通信することができる。そのため、近接無線通信部A112と近接無線通信部B112とを無線接続するためには、両通信部を近接無線通信可能な範囲まで近づければよい。以下の説明では、両通信部を近接無線通信可能な範囲まで近づけることを、「近接させる」とも言う。また、近接無線通信部A112及び近接無線通信部B112が近接無線通信不可能な範囲にあれば、通信は開始されない。また、近接無線通信部A112及び近接無線通信部B112が近接無線通信可能な範囲にあって通信が行われている状態で、両通信部が近接無線通信不可能な範囲に離れてしまった場合は、通信が切断される。
第一制御部A101及び第二制御部A120に対しては、近接無線通信部A112からの割り込み信号線A124が接続されている。また、第一制御部A101と近接無線通信部A112とは、近接無線通信部A112を制御するための制御信号線A125で接続されている。第一制御部A101は、制御信号線A125を通じた制御により、近接無線通信部A112に対して、どのタイミングで割り込み信号線A124による割り込み信号を出力するかを設定することが可能である。また、第一制御部A101は、制御信号線A125を用いて、近接無線通信部A112に備えられている近接無線不揮発性メモリA123に対して、データの読み書きを行うことが可能である。
第二制御部A120は、第二操作部A122からの操作命令に応じて電源部A121を制御し、デジタルカメラA100全体の電源システムを制御するために用いられる。特に、第二制御部A120は、第一制御部A101に対する給電制御を行う。更に、第二制御部A120は、前述した近接無線通信部A112と近接無線通信部B112との通信を検出するために、割り込み信号線A124を通じて、近接無線通信部A112からの割り込み信号を受け付ける。
第二操作部A122は、デジタルカメラA100に対する指示をユーザから受け付けるために用いられる。第二操作部A122は、例えば、ユーザがデジタルカメラA100の電源のON/OFFを指示するための電源ボタンや、撮像を指示するためのレリーズスイッチ、画像データの再生を指示するための再生ボタンを含む。また、第二操作部A122は、接続部A111を介して外部機器との通信を開始するための専用の接続ボタンなどの操作部材を含む。なお、不図示のレリーズスイッチは、SW1及びSW2を有する。レリーズスイッチが、いわゆる半押し状態となることにより、SW1がONとなる。これにより、第二操作部A122は、AF(オートフォーカス)処理、AE(自動露出)処理、AWB(オートホワイトバランス)処理、EF(フラッシュプリ発光)処理等の、静止画の撮像準備を行う指示を受け付ける。また、レリーズスイッチが、いわゆる全押し状態となることにより、SW2がONとなる。これにより、第二操作部A122は、静止画の撮像を行う指示を受け付ける。上述した第一操作部A105が、タッチパネル操作のための操作部であるのに対し、第二操作部A122は、メカニカルな機構を用いたボタン操作のための操作部である。
電源部A121は、デジタルカメラA100の不図示の電池に接続されている。電池が挿入されると、まず、電源部A121は、第二制御部A120のみに電源を供給する。その状態で、第二制御部A120が、第二操作部A122からの操作に応じて電源部A121を制御することにより、第一制御部A101並びに、第一制御部A101が制御する周辺回路への電源を供給することが可能となる。
次に、スマートフォンB100について説明する。制御部B101は、入力された信号や、後述のプログラムに従ってスマートフォンB100の各部を制御する。なお、制御部B101が装置全体を制御する代わりに、複数のハードウェアが処理を分担することで、装置全体を制御してもよい。
撮像部B102は、例えば、光学レンズユニットと、絞り・ズーム・フォーカスなどを制御する光学系と、光学レンズユニットを経て導入された光(映像)を電気的な映像信号に変換するための撮像素子などを含む。撮像素子としては、一般的には、CMOSや、CCDが利用される。撮像部B102は、制御部B101に制御されることにより、撮像部B102に含まれるレンズで結像された被写体光を、撮像素子により電気信号に変換し、ノイズ低減処理などを行い、デジタルデータを画像データとして出力する。本実施形態のスマートフォンB100では、画像データは、DCFの規格に従って、記録媒体B110に記録される。
不揮発性メモリB103は、電気的に消去・記録可能な不揮発性のメモリであり、制御部B101で実行される後述のプログラム等が格納される。作業用メモリB104は、撮像部B102で撮像された画像データを一時的に保持するバッファメモリや、表示部B106の画像表示用メモリ、制御部B101の作業領域等として使用される。
操作部B105は、スマートフォンB100に対する指示をユーザから受け付けるために用いられる。操作部B105は、例えば、ユーザがスマートフォンB100の電源のON/OFFを指示するための電源ボタンや、画面遷移を指示するための操作ボタンを含む。また、後述する表示部B106に形成されるタッチパネルも、操作部B105に含まれる。
表示部B106は、撮像した静止画像データの表示、対話的な操作のためのGUI(Graphical User Interface)表示などを行う。なお、表示部B106は必ずしもスマートフォンB100が内蔵する必要はない。スマートフォンB100は、表示内容を制御する表示制御機能を少なくとも有していればよい。
記録媒体B110は、撮像部B102から出力された画像データを記録することができる。記録媒体B110は、スマートフォンB100に着脱可能なように構成されていてもよいし、スマートフォンB100に内蔵されていてもよい。即ち、スマートフォンB100は、少なくとも記録媒体B110にアクセスする機能を有していればよい。
接続部B111は、外部装置と接続するためのインターフェースである。本実施形態のスマートフォンB100は、接続部B111を介して、外部装置とデータのやりとりを行うことができる。なお、本実施形態では、接続部B111は、外部装置とIEEE802.11の規格に従った、いわゆる無線LANにより通信するためのインターフェースを含む。制御部B101は、接続部B111を制御することで外部装置との無線通信を実現する。
なお、前述の通り、デジタルカメラA100は、接続部A111を介してスマートフォンB100と通信する場合、リモート撮影モード又はリモート再生モードで動作することができる。スマートフォンB100は、デジタルカメラA100に対して、デジタルカメラの動作モードを指示することができる。デジタルカメラA100がリモート再生モードで動作する場合、スマートフォンB100は、表示部B106上に表示された画像を選択することができ、選択した画像をスマートフォンB100内の記録媒体B110にダウンロードすることが可能である。
近接無線通信部B112は、例えば、スマートフォンB100の側部に配され、無線通信のためのアンテナ、無線信号を処理するため変復調回路、通信コントローラなどを含む。近接無線通信部B112は、変調した無線信号をアンテナから出力し、また、アンテナで受信した無線信号を復調する。本実施形態では、近接無線通信部B112は、ISO/IEC 18092の規格(NFC(Near Field Communication))に従った非接触近接無線通信を行うものとする。しかしながら、近接無線通信部B112が実現する非接触近接無線通信は、NFCに限られるものではなく、他の無線通信規格を採用してもよい。例えば、近接無線通信部B112が実現する非接触近接無線通信として、ISO/IEC 14443の規格に従った非接触近接無線通信を採用してもよい。
近接無線通信部B112を前述したデジタルカメラA100の近接無線通信部A112に近接させると、デジタルカメラA100とスマートフォンB100との間で通信が開始する。なお、必ずしも近接無線通信部B112と近接無線通信部A112とを物理的に接触させる必要はない。近接無線通信部B112及び近接無線通信部A112は、一定の距離だけ離れていても通信することができる。そのため、近接無線通信部B112と近接無線通信部A112とを無線接続するためには、両通信部を近接無線通信可能な範囲まで近づければよい。また、近接無線通信部B112及び近接無線通信部A112が近接無線通信不可能な範囲にあれば、通信は開始されない。また、近接無線通信部B112及び近接無線通信部A112が近接無線通信可能な範囲にあって通信が行われている状態で、両通信部が近接無線通信不可能な範囲に離れてしまった場合は、通信が切断される。
公衆無線通信部B113は、基地局C100を介して公衆網D100を利用した通信を実現するためのインターフェースである。公衆無線通信部B113は、無線通信のためのアンテナ、無線信号を処理するため変復調回路、通信コントローラなどを含む。公衆無線通信部B113は、W−CDMA(UMTS)やLTE(Long Term Evolution)等の規格に従って公衆無線通信を実現する。
なお、図1では、デジタルカメラA100とスマートフォンB100とが1対1で通信し得ることを示す図を例に挙げて説明しているが、1対多での通信も可能である。1対多の通信については、第2の実施形態で説明する。
次に、図2Aを参照して、本実施形態に係る通信システムの動作の概要を説明する。図2Aは、デジタルカメラA100がスマートフォンB100と近接無線通信を行い、無線LAN通信を確立するまでの処理の流れを示すシーケンス図である。以下の説明では、各装置の構成部材の符号は、図1で説明したものと同様の符号を利用する。また、図2Aで用いられる点線の矢印は、NFCによる通信を表し、図2Aで用いられる太線の矢印は、無線LANによる通信を表す。
図2Aのシーケンスが開始するタイミングでは、デジタルカメラA100の第一制御部A101の起動処理は完了している。しかし、接続部A111の電源はOFFであり、接続部A111を介したスマートフォンB100との無線LAN接続は確立されていない。ここで言う起動処理は、OS(Operating System)の初期化や、周辺機器の初期化のようなデジタルカメラA100の撮影機能の初期化などを含む。
また、スマートフォンB100は、ユーザ操作に基づき、NFC及び無線LANそれぞれの機能の有効・無効を切り替え可能なように構成される。そして、図2Aのシーケンスの開始前は、NFCの機能は「有効」に設定されており、無線LANの機能は「無効」に設定されている状態にある。また、スマートフォンB100は、制御部B101上で、デジタルカメラA100との無線LAN接続を確立するための所定のアプリケーションを実行している状態にある。
以下に説明する図2Aのシーケンスは、デジタルカメラA100及びスマートフォンB100が、上述した状態にあるときに開始されるものとする。具体的には、所定のアプリケーションを起動中のスマートフォンB100が、ユーザにより、デジタルカメラA100に近接されると、近接無線通信部A112と近接無線通信部B112とが通信可能になり、図2Aのシーケンスが開始する。
まず、S211で、スマートフォンB100の制御部B101は、近接無線通信部B112に対して、デジタルカメラA100の近接無線不揮発性メモリA123内にある情報を読み出す要求(パラメータ要求)を通知する。
S212で、近接無線通信部B112は、デジタルカメラA100の近接無線通信部A112に対して、NFC通信により、読み出し要求を通知する。S213で、デジタルカメラA100の近接無線通信部A112は、S212の読み出し要求に応えて、近接無線不揮発性メモリA123内の情報を、スマートフォンB100の近接無線通信部B112へ送信する。
S214で、スマートフォンB100の近接無線通信部B112は、S213において受信した情報を制御部B101へ通知する。S215で、制御部B101は、S214において通知された情報を、作業用メモリB104に一時的に記憶する。
ここまでの処理により、スマートフォンB100は、近接無線通信部B112を用いて、デジタルカメラA100から情報を取得することができた。本実施形態では、このように取得される情報が、無線パラメータである。従って、S212の読み出し要求は、無線パラメータの取得要求である。無線パラメータとは、無線LAN接続に必要なSSID、及び、無線LAN接続で使用する暗号鍵などの情報(設定情報)のことである。また、無線LAN接続で接続する機器を限定するために、デジタルカメラA100のMACアドレスといった機器個体を識別することが可能な情報が無線パラメータに含まれていてもよい。また、後述するデジタルカメラA100と無線LAN接続を確立するための接続時間を短縮するために、無線LANを駆動するチャネルの情報が無線パラメータに含まれていてもよいものとする。
次に、S216で、制御部B101は、近接無線通信部B112に対して、パラメータ取得完了通知を行う。パラメータ取得完了通知は、無線パラメータの取得が正常に完了したことを示す。
S217で、近接無線通信部B112は、デジタルカメラA100の近接無線通信部A112に対して、NFC通信により、パラメータ取得完了通知を行う。パラメータ取得完了通知に応えて、S218で、近接無線通信部A112は、割り込み信号線A124を介して、第一制御部A101に対して、割り込み信号を通知する。
S218における割り込み信号の通知(割り込み通知)と並行して、S219で、近接無線通信部A112は、スマートフォンB100の近接無線通信部B112に対して、パラメータ取得完了通知に対する応答(パラメータ取得完了応答)を返す。S220で、スマートフォンB100の近接無線通信部B112は、制御部B101に対して、パラメータ取得完了応答を通知する。
ここまでの処理により、スマートフォンB100は、近接無線通信部B112を用いて、デジタルカメラA100が備える近接無線不揮発性メモリA123から無線パラメータを取得することができた。また、スマートフォンB100は、デジタルカメラA100に対して、無線パラメータを正常に取得した旨を通知することができた。
次に、S221で、スマートフォンB100の制御部B101は、S215において取得した無線パラメータを用いて、接続部B111を有効にする。即ち、制御部B101は、無線LAN通信を開始するための処理を行う。S222で、接続部B111は、無線LAN通信の接続相手を検索する。具体的には、接続部B111は、デジタルカメラA100の接続部A111が起動して、S215において取得したSSIDが無線LAN通信で検出されるまで検索を継続する。
一方、デジタルカメラA100の第一制御部A101は、S218の割り込み通知に応えて、S226で、近接無線通信部A112に対して、近接無線不揮発性メモリA123に格納された無線パラメータの読み出し要求を行う。S227で、近接無線通信部A112は、近接無線不揮発性メモリA123の所定のアドレスから所定のサイズ分の情報を読み出し、第一制御部A101へ返信する。S226及びS227において、第一制御部A101と近接無線通信部A112との間で行われる通信は、制御信号線A125を用いて実行される。
S228で、第一制御部A101は、S227において取得した情報(無線パラメータ)を作業用メモリA104に一時的に記憶する。S229で、第一制御部A101は、一時的に記憶した無線パラメータ、即ちスマートフォンB100が取得した無線パラメータと同じものを用いて、接続部A111を起動させる。
接続部A111が起動すると、無線LAN機器を検索している状態にあるスマートフォンB100(S222参照)は、無線LAN通信を介してデジタルカメラA100を検出することが可能となる。その結果、S230で、デジタルカメラA100及びスマートフォンB100は、無線LAN通信の接続を確立する。S231で、デジタルカメラA100及びスマートフォンB100は、無線LAN接続が確立したことを確認し、無線LAN通信を行う。
無線LAN接続の確立後、S240で、第一制御部A101は、近接無線通信部A112に対して、近接無線不揮発性メモリA123内の無線パラメータの書き換え(更新)を要求する。S241で、第一制御部A101は、S240の要求に対する応答として、無線パラメータの書き換えが完了したことを示す応答を受信する。
S240及びS241は、デジタルカメラA100とスマートフォンB100との間で無線LAN接続が確立した後のセキュリティを向上させるためのステップである。本実施形態では、スマートフォンB100(第1の通信装置)だけではなく、スマートフォンB100とは異なる他のスマートフォン(第2の通信装置)も、近接無線通信部A112を介して近接無線不揮発性メモリA123にアクセスすることができる。上述したように、近接無線通信部A112が備える近接無線不揮発性メモリA123内の無線パラメータには、デジタルカメラA100とスマートフォンB100との無線LAN接続に必要なSSIDや暗号鍵が含まれている。無線パラメータを書き換えない場合、デジタルカメラA100とスマートフォンB100とが無線LAN通信を行っている間に、スマートフォンB100とは異なる他のスマートフォンが近接無線通信により同じ無線パラメータを取得する可能性がある。この場合、他のスマートフォンが通信を傍受できてしまう。無線パラメータを書き換えることにより、このような問題の発生を抑制することができる。この目的のため、デジタルカメラA100は、近接無線不揮発性メモリA123内の無線パラメータを、現在使用中の無線パラメータが類推されないような値に書き換える。具体例として、デジタルカメラA100は、乱数発生アルゴリズムを用いて決定した無線パラメータに書き換えることが考えられるが、本実施形態においてアルゴリズムは特に限定されない。
以上の処理により、デジタルカメラA100とスマートフォンB100との間で無線パラメータを共有することができ、また、他のスマートフォンが同じ無線パラメータを取得することを防止することができる。その結果、デジタルカメラA100とスマートフォンB100との間の無線LAN通信のセキュリティを向上させることができる。
ところで、図2Aの例では、デジタルカメラA100は、スマートフォンB100との無線LAN接続が確立されたことをS231において確認した後に、近接無線不揮発性メモリA123の無線パラメータを書き換えた。しかしながら、デジタルカメラA100は、S226における無線パラメータの取得後であれば、他のタイミングで無線パラメータを書き換えてもよい。例えば、デジタルカメラA100は、近接無線不揮発性メモリA123から無線パラメータを取得したタイミングで、無線パラメータの書き換えを行ってもよい。この場合、最終的に無線LAN接続が確立されるか否かに関わらず無線パラメータが書き換えられるため、無線LAN通信のセキュリティが更に向上する。
この場合のデジタルカメラA100の動作について、図2Bを参照して説明する。図2Bにおいて、図2Aと同一又は同様の処理が行われるステップには同一の符号を付す。図2Bは、S228の次にS240及びS241の処理が行われる点が、図2Aと異なる。無線LAN接続の確立には比較的時間がかかるため、図2Aの場合、例えばS230における接続処理中に他のスマートフォンが無線パラメータを取得してしまう可能性がある。一方、図2Bの場合は、S230の接続処理中は既に無線パラメータの書き換えが完了しているため、他のスマートフォンは同一の無線パラメータを取得することができない。また、仮にS230において無線LAN接続の確立が失敗し、デジタルカメラA100が図2Bのシーケンスを停止したとしても、既に無線パラメータの書き換えが完了しているため、他のスマートフォンは同一の無線パラメータを取得することができない。従って、図2Bでは、図2Aよりも更に無線LAN通信のセキュリティが向上する。
また、第一制御部A101は、図2A又は図2Bで示したタイミングに加えて、以下のタイミングでも無線パラメータの書き換え(更新)を行ってもよい。すなわち、ユーザによって操作部A105が操作されたことに応じてデジタルカメラA100の電源がONにされた時(即ち、第一制御部A101の起動処理を行う時)にも無線パラメータの書き換え(更新)を行ってもよい。これにより、デジタルカメラA100の電源OFF時にスマートフォンB100により読み取られた無線パラメータが実質的に無効になるので、セキュリティが更に向上する。
以上説明したように、第1の実施形態によれば、デジタルカメラA100は、スマートフォンB100が近接無線不揮発性メモリA123から無線パラメータを取得した後の所定のタイミングで、近接無線不揮発性メモリA123内の無線パラメータを更新する。これにより、複数のスマートフォンが同一の無線パラメータを取得することを抑制することができ、無線LAN通信のセキュリティを向上させることができる。
[第2の実施形態]
第1の実施形態は、デジタルカメラA100とスマートフォンB100とが1対1で接続する場合に有効である。しかしながら、ユーザは常に1対1接続を望むとは限らず、1対多接続を望む場合も考えられる。第1の実施形態の場合、複数のスマートフォンが同一の無線パラメータを取得することができないため、複数のスマートフォンを同一の無線LANネットワークに参加させることができず、1対多接続を実現することができない。そこで、第2の実施形態では、必要に応じて1対多接続を可能にするための構成について説明する。
最初に、図3を参照して、1対1接続が望ましい状況と、1対多接続が望ましい状況について説明する。図3(a)及び図3(b)において、ネットワーク301は、デジタルカメラA100の近接無線不揮発性メモリA123内の無線パラメータに従って構築されたネットワークである。
図3(a)において、デジタルカメラA100は、前述のリモート撮影モードで動作している。この場合、スマートフォンB100は、無線LAN通信により、デジタルカメラA100の撮影パラメータ(ISO感度やホワイトバランスなど)を設定することが可能である。この場合、仮に複数のスマートフォンがデジタルカメラA100の撮影パラメータを同時に設定できると、あるユーザが設定した撮影パラメータが他のユーザにより変更され、意図した撮影が行えない可能性がある。従って、リモート撮影モードの場合、1対1接続が望ましいと考えられる。
一方、図3(b)において、デジタルカメラA100は、前述のリモート再生モードで動作している。この場合、スマートフォンB100は、無線LAN通信により、デジタルカメラA100の記録媒体A110内の画像データを取得して表示部B106に再生させ、選択した画像をスマートフォンB100の記録媒体B110にダウンロードすることができる。この場合、複数のスマートフォンが同時にスマートフォンB100にアクセスして画像をダウンロードできると、効率的である。従って、リモート再生モードの場合、1対多接続が望ましいと考えられる。図3(b)の例では、ネットワーク301には、スマートフォンB100−1、B100−2、B100−3という、3つのスマートフォンが参加している。
このように、無線LAN通信時のデジタルカメラA100の動作モードに応じて、1対1接続が望ましい場合と、1対多接続が望ましい場合とがある。そこで、第2の実施形態では、デジタルカメラA100は、無線LAN通信時の動作モードに応じて、無線パラメータを更新(書き換え)するか否かを切り替える。
なお、図3を参照した説明においては、リモート撮影モードの場合に1対1接続が望ましく、リモート再生モードの場合に1対多接続が望ましいものとしたが、これは例に過ぎず、動作モードと望ましい接続形態との関係は、図3の例に限定されない。また、デジタルカメラA100が選択可能な動作モードは、リモート撮影モードやリモート再生モードに限定されず、デジタルカメラA100は、他の動作モードで動作してもよい。また、本実施形態を適用する通信装置の種類によっても、動作モードは変化する。例えば、撮像機能を備えない通信装置は動作モードとしてリモート撮影モードを有さないと考えられるため、そのような種類の通信装置については、他の種類の動作モードが「1対1接続が望ましい動作モード」となる。
次に、図4を参照して、デジタルカメラA100の動作について説明する。ユーザが第二操作部A122の操作によりデジタルカメラA100の電源をONにすると、本フローチャートの処理が開始する。なお、本フローチャートに示す処理は、デジタルカメラA100の第一制御部A101が入力信号やプログラムに従い、デジタルカメラA100の各部を制御することにより実現される。
最初に、S401で、第一制御部A101は、起動処理を実行する。具体的には、第一制御部A101は、OS(Operating System)の初期化、及び、第一制御部A101に接続される周辺デバイスに対する初期化などを行う。また、第一制御部A101は、起動処理の一環として、近接無線通信部A112に備えられる近接無線不揮発性メモリA123の無線パラメータを更新してもよい。本実施形態の近接無線通信部A112は、デジタルカメラA100本体から電力を供給されない状態にあっても、スマートフォンB100の近接無線通信部B112が発する磁界から起電力を発生させ、動作することが可能な構成になっている。従って、デジタルカメラA100が電源OFFの間に、他のスマートフォンにより近接無線不揮発性メモリA123の無線パラメータが読み取られている可能性がある。S401において無線パラメータを更新すれば、電源OFFの間に読み取られた無線パラメータが無効になるので、よりセキュリティを向上させることができる。
起動処理が完了すると、S402で、第一制御部A101は、スマートフォンB100とのNFC通信が完了したことを検出するまで待つ。具体的には、第一制御部A101は、近接無線通信部A112から割り込み信号線A124を介して出力される割り込み信号を検出する。これにより、第一制御部A101は、スマートフォンB100がNFC通信を完了して近接無線不揮発性メモリA123から無線パラメータを取得したことを検出することができる。
S403で、第一制御部A101は、近接無線不揮発性メモリA123から無線パラメータを取得し、作業用メモリA104に一時的に記憶する。S404で、第一制御部A101は、接続部A111を起動する。具体的には、第一制御部A101は、第二制御部A120を通じて、接続部A111への電力供給を制御する電源部A121を制御することで、接続部A111を起動する。
S405で、第一制御部A101は、作業用メモリA104に一時的に記憶された無線パラメータを、接続部A111に設定する。ここで述べる無線パラメータは、S402においてスマートフォンB100がNFC通信により取得した無線パラメータと同じものである。無線パラメータの設定が行われると、デジタルカメラA100は、接続部A111を用いて、S405において設定したSSID情報を含むBeacon情報を送信することが可能となる。
S406で、第一制御部A101は、スマートフォンB100との無線LAN接続が確立したか否かを判定する。スマートフォンB100はNFC通信でデジタルカメラA100と同じ無線パラメータを取得しているので、無線LAN接続は正常に確立する可能性が高い。しかしながら、スマートフォンB100が、電池残量が少ないといった原因で、NFC通信が成功したにも関わらず、無線LAN接続が確立しない場合も考えられる。無線LAN接続が確立しない場合は、S407で、第一制御部A101は、所定時間経過したか否かを判定する。第一制御部A101が所定時間経過していないと判断した場合、処理はS408に戻る。所定時間経過しても無線LAN接続が確立しない場合は、第一制御部A101は、スマートフォンB100が無線LANを起動できない状態にあると判断して、処理をS420へ進め、無線LANの動作を終了させる。
S406において無線LAN接続が確立すると、S430で、第一制御部A101は、S403において作業用メモリA104に一時的に記憶された無線パラメータを、不揮発性メモリA103に書き込む。S430の処理を実行することにより、デジタルカメラA100は、スマートフォンB100との無線LAN接続に用いる無線パラメータを、電源をOFFにされた後も保持することが可能となる。これにより、スマートフォンB100との無線LAN接続の再確立が容易になる。具体的には、後述のS410において近接無線不揮発性メモリA123の無線パラメータが更新されると、第一制御部A101は、近接無線不揮発性メモリA123から同じ無線パラメータを再度取得することができない。従って、S430の処理が行われない場合、デジタルカメラA100の電源OFF後に無線LAN接続を再確立するためには、デジタルカメラA100とスマートフォンB100を再度近接させる必要が生じる。S430の処理が行われる場合は、デジタルカメラA100は、再び電源ONされた際に不揮発性メモリA103から無線パラメータを取得でき、スマートフォンB100はこの無線パラメータを既に保持している。従って、デジタルカメラA100とスマートフォンB100を再度近接させなくても、無線LAN接続を再確立することができる。また、不揮発性メモリA103に格納された無線パラメータは、近接無線不揮発性メモリA123に格納された無線パラメータと異なり、近接無線通信を介して外部装置により読み取られることもない。
また、デジタルカメラA100は、不揮発性メモリA103に格納された無線LANパラメータを、接続相手のスマートフォンB100と紐づける仕組みを持っていてもよい。具体的には、ユーザは、第一操作部A105を用いて、スマートフォンB100を識別する名前などを入力し、第一制御部A101は、入力された名前を無線LANパラメータに対応付ける。これにより、ユーザは、不揮発性メモリA103に記憶されている無線LANパラメータを、ユーザが識別しやすい形式で記憶させることが可能となる。そして、第一制御部A101は、一度無線LANで接続したことのあるスマートフォンの無線パラメータを、ユーザが容易に選択できるように、表示部A106に表示することができる。
以上の処理により、ユーザは、次回デジタルカメラA100の電源をONにした時、過去に接続したことのあるスマートフォンと接続する場合は、表示部A106において対応する無線パラメータを選択するだけで、接続を再確立することができる。即ち、デジタルカメラA100は、一度接続したことのあるスマートフォンとは、近接無線通信を行わずに無線LAN接続を再確立することができる。
次に、S408で、第一制御部A101は、スマートフォンB100との無線LAN通信を開始し、動作モードがリモート撮影モードであるか否かを判定する。動作モードは、無線LAN通信の開始時に、スマートフォンB100から通知される。動作モードがリモート撮影モードであると第一制御部A101が判断した場合、処理はS409に進み、動作モードがリモート撮影モードでない(リモート再生モードである)と第一制御部A101が判断した場合、処理はS413に進む。
S409で、第一制御部A101は、近接無線不揮発性メモリA123内の無線パラメータを消去する。これにより、デジタルカメラA100とスマートフォンB100との無線LAN通信のために現在使用中の無線パラメータを他のスマートフォンが取得することはできなくなる。S410で、第一制御部A101は、近接無線不揮発性メモリA123内の無線パラメータを、現在使用中の無線パラメータが類推されないような値に更新する。新しい無線パラメータの決定アルゴリズムは、第1の実施形態と同様、特定のアルゴリズムに限定されない。
以上の処理により、デジタルカメラA100がリモート撮影モードで動作する場合、無線パラメータは、デジタルカメラA100とスマートフォンB100との間でのみ共有される。
S410に続いてS440の処理が実行されるが、S440の処理の詳細についてはS421の説明の次に行うこととし、先にS411の説明を行う。
S411で、第一制御部A101は、撮影動作の権利をスマートフォンB100に委ね、スマートフォンB100からのリモート撮影指示を受け付ける状態になる。具体的には、第一制御部A101は、撮像部A102を制御し、レンズで結像された被写体光を、撮像素子により電気信号に変換し、ノイズ低減処理などを行う。そして、第一制御部A101は、ノイズ低減処理されたデジタルデータを画像データとしてスマートフォンB100へ無線LAN転送する。スマートフォンB100は、無線LAN転送された画像データを表示部B106に表示させる。これにより、ユーザは、デジタルカメラA100のライブビュー画像を遠隔地より確認することが可能となる。また、デジタルカメラA100の撮影パラメータ(ISO感度やホワイトバランスなど)や、Av、Tv撮影などは、スマートフォンB100から設定可能である。この状態で、スマートフォンB100からデジタルカメラA100に撮影命令が通知されると、デジタルカメラA100の第一制御部A101は、シャッター操作を行い、取得された画像データを記録媒体A110へ記録する。この時、第一制御部A101は、記録媒体A110へ記録されたデータをリサイズした画像データを生成し、スマートフォンB100へ転送することを行ってもよい。
S412で、第一制御部A101は、スマートフォンB100からのリモート撮影モード終了通知を検出したか否かを判定する。ここで述べるリモート撮影モード終了通知とは、例えば、スマートフォンB100がデジタルカメラA100を制御するアプリケーションを終了させた場合に発生する。また、第一制御部A101は、スマートフォンB100から送信される無線LAN通信を終了する通知をリモート撮影モード終了通知として検出する。第一制御部A101がリモート撮影モード終了通知を検出しない場合、処理はS440に戻り、第一制御部A101は、リモート撮影モードでの動作を継続する。第一制御部A101がリモート撮影モード終了通知を検出した場合、処理はS420に進む。
S420で、第一制御部A101は、第二制御部A120を通じて、接続部A111の電源を制御する電源部A121を制御することで、接続部A111への電力供給を遮断する。これにより、無線LAN通信が切断される。S421で、第一制御部A101は、終了処理を行う。
ここで、S440の処理について説明する。S440の処理は、デジタルカメラA100がリモート撮影モードで動作中に、スマートフォンB100とは異なる他のスマートフォンが近接した場合に対処するための処理である。本実施形態の近接無線通信部A112は、デジタルカメラA100がスマートフォンB100と無線LAN通信を行っている間でも、近接した他のスマートフォンに対して近接無線不揮発性メモリA123に格納された無線パラメータを送信するように構成される。従って、デジタルカメラA100がリモート撮影モードで動作中に他のスマートフォンが近接した場合、他のスマートフォンは、NFC通信により、S410において更新された無線パラメータを取得する可能性がある。他のスマートフォンが取得した無線パラメータが近接無線不揮発性メモリA123に保持されたままの場合、更に別のスマートフォンが同一の無線パラメータを取得してしまう可能性がある。この無線パラメータが将来の無線LAN通信の際に使用されると、1対1接続が保証されない。この問題に対処するため、S440で、第一制御部A101は、近接無線通信部A112からの割り込み通知に基づき、NFC通信を検出したか否かを判定する。第一制御部A101がNFC通信を検出した場合、処理はS409に戻り、第一制御部A101は、近接無線不揮発性メモリA123の無線パラメータの消去及び更新を行う。これにより、他のスマートフォンが取得した無線パラメータが将来の無線LAN通信に使用されることがなくなり、この無線パラメータは実質的に無効化される。
次に、デジタルカメラA100がリモート再生モードで動作する場合について説明する。S408において動作モードがリモート再生モードであると第一制御部A101が判断した場合、S413で、第一制御部A101は、記録媒体A110内にあるサムネイル画像をスマートフォンB100に対して無線LANを介して転送する。スマートフォンB100は、取得したサムネイル画像を表示部B106に表示し、スマートフォンB100にダウンロードしたい画像をユーザが選択できるようにする。第一制御部A101は、無線LANを介して、スマートフォンB100上で選択された画像を識別し、対応する画像データを記録媒体A110から作業用メモリA104に展開し、スマートフォンB100に対して転送する。また、第一制御部A101は、リモート再生モードで動作中にスマートフォンB100とのNFC通信が行われたことに応えて、無線LAN通信によりスマートフォンB100へ画像データを送信してもよい。この場合の送信対象の画像データは、例えば、表示部A106に表示されている画像に対応する画像データである。なお、第一制御部A101は、例えば割り込み信号線A124を介した割り込み通知により、スマートフォンB100とのNFC通信が行われたことを検知することができる。
S414で、第一制御部A101は、スマートフォンB100からのリモート再生モード終了通知を検出したか否かを判定する。ここで述べるリモート再生モード終了通知とは、例えば、スマートフォンB100がデジタルカメラA100を制御するアプリケーションを終了させた場合に発生する。また、第一制御部A101は、スマートフォンB100から送信される無線LAN通信を終了する通知をリモート再生モード終了通知として検出する。第一制御部A101がリモート再生モード終了通知を検出しない場合、処理はS413に戻り、第一制御部A101は、リモート再生モードでの動作を継続する。第一制御部A101がリモート再生モード終了通知を検出した場合、処理はS415に進む。
S415及びS416で、第一制御部A101は、S409及びS410と同様、無線パラメータの消去及び更新を行う。
以上のように、デジタルカメラA100は、リモート再生モードで動作中は、近接無線不揮発性メモリA123内の無線パラメータを更新しない。これにより、デジタルカメラA100が現在使用中の無線パラメータを、スマートフォンB100とは異なる他のスマートフォンが近接無線通信により取得できる。つまり、デジタルカメラA100とスマートフォンB100とで構築したネットワークに、他のスマートフォンが参加することができる(図3(b)参照)。
次に、図5を参照して、スマートフォンB100の動作について説明する。なお、本フローチャートに示す処理は、スマートフォンB100の制御部B101が入力信号やプログラムに従い、スマートフォンB100の各部を制御することにより実現される。
最初、スマートフォンB100は、制御部B101上で、デジタルカメラA100を制御するためのアプリケーションを実行している状態である。また、NFCの機能は「有効」に設定されており、無線LANの機能は「無効」に設定されている。
S501で、スマートフォンB100の制御部B101は、近接無線通信部A112を検出したか否かを判定する。ユーザがスマートフォンB100をデジタルカメラA100に近接させると、制御部B101は、近接無線通信部B112から近接無線通信部A112への検出信号を検出する。従って、S501における判定は、制御部B101が検出信号を検出したか否かを判定することにより行われる。制御部B101が検出信号を検出すると、処理はS502に進む。
S502で、制御部B101は、デジタルカメラA100の近接無線通信部A112を通じて、近接無線不揮発性メモリA123を読み込む動作を実行する。ここで読み出される情報は、無線LAN接続に必要なSSIDや、暗号鍵といった無線パラメータである。
S503で、制御部B101は、デジタルカメラA100の近接無線不揮発性メモリA123から無線パラメータの読み出しを完了したか否かを判定する。この判定は、デジタルカメラA100の近接無線通信部A112からのレスポンスに基づいて行われる。制御部B101は、読み出しが完了するまで、S502の読み出し動作を継続する。読み出しが完了すると、制御部B101は、近接無線不揮発性メモリA123から読み出した情報を作業用メモリB104に一時的に記憶する。その後、処理はS520に進む。
S520で、制御部B101は、近接無線不揮発性メモリA123から読み出した情報が正常であるか否かを判定する。例えば、NFC通信で読み出される情報(データ)にCRCコードが付加されており、制御部B101は、CRCコードに基づいて、読み出した情報にビット化けが無いかを判断することができる。近接無線不揮発性メモリA123から読み出した情報が正常でないと制御部B101が判断した場合、本フローチャートの処理は終了する。そうでない場合、処理はS504に進む。
S504で、制御部B101は、近接無線通信部B112を用いて、デジタルカメラA100の近接無線通信部A112に対して、パラメータ取得完了通知を行う。パラメータ取得完了通知は、無線パラメータの取得が正常に完了したことを示す。デジタルカメラA100の近接無線通信部A112は、近接無線通信部B112からのパラメータ取得完了通知を契機に、第一制御部A101に対して割り込み通知を行う(図4のS402参照)。
S505で、制御部B101は、パラメータ取得完了通知に対する応答を受信するまで待つ。応答を受信すると、S506で、制御部B101は、無線LANを起動させる。ここで使用される無線パラメータは、S502において近接無線不揮発性メモリA123から読み出され、作業用メモリB104に一時的に記憶されている無線パラメータである。
S507で、制御部B101は、デジタルカメラA100との無線LAN接続が確立したか否かを判定する。スマートフォンB100はNFC通信でデジタルカメラA100と同じ無線パラメータを取得しているので、無線LAN接続は正常に確立する可能性が高い。しかしながら、例えばS504におけるパラメータ取得完了通知の際に通信不良によりデータが化けてしまった等の原因により、デジタルカメラA100が無線LANを起動しない場合も考えられる。無線LAN接続が確立しない場合は、S512で、制御部B101は、所定時間経過したか否かを判定する。制御部B101が所定時間経過していないと判断した場合、処理はS507に戻る。所定時間経過しても無線LAN接続が確立しない場合は、制御部B101は、デジタルカメラA100が無線LANを起動できない状態にあると判断して、処理をS511へ進め、無線LANの動作を終了させる。
S507において無線LAN接続が確立すると、S508で、制御部B101は、デジタルカメラA100との無線LAN通信を行う。本実施形態では、S508の無線LAN通信の最初に、スマートフォンB100の制御部B101は、デジタルカメラA100に対して動作モードを通知するものとする。
S509で、制御部B101は、無線LAN通信を終了するか否かを判定する。制御部B101は、無線LAN通信を終了するまでは、S508における無線LAN通信を継続する。無線LAN通信を終了する場合、S510で、制御部B101は、デジタルカメラA100に対して無線LAN通信終了通知を送信する。例えば、ユーザ操作により操作部B105からアプリケーションの終了が選択された場合に、制御部B101は、無線LAN通信を終了すると判断する。ここで送信される無線LAN通信終了通知は、デジタルカメラA100の第一制御部A101により、リモート撮影(再生)モード終了通知として検出される(図4のS412及びS414参照)。
S511で、制御部B101は、無線LANを切断する。これにより、デジタルカメラA100、スマートフォンB100共に、無線LAN通信を正常に終了することが可能となる。
なお、上の説明では、制御部B101は、S508の無線LAN通信の最初に、デジタルカメラA100に対して動作モードを通知するものとした。しかしながら、制御部B101は、S504において、NFC通信により、デジタルカメラA100に対してパラメータ取得完了通知と共に動作モードを通知してもよいものとする。この場合のデジタルカメラA100の動作について、図6を参照して説明する。図6において、図4と同一又は同様の処理が行われるステップには同一の符号を付す。
S601で、第一制御部A101は、図4のS402と同様、スマートフォンB100とのNFC通信が完了したことを検出するまで待つ。NFC通信が行われた場合、第一制御部A101は、スマートフォンB100から、近接無線通信部A112を介して、動作モードの通知を受ける。S602で、第一制御部A101は、S601において通知された動作モードを示す情報(動作モード情報)を、作業用メモリA104に一時的に記憶する。S603で、第一制御部A101は、S602において一時的に記憶された動作モード情報がリモート撮影モードを示すか否かを判定する。動作モード情報がリモート撮影モードを示すと第一制御部A101が判断した場合、処理はS409に進み、そうでない場合、処理はS404に進む。
図6のS409の処理、及びそれに続くS410の処理は、図4のS409及びS410の処理と同様であるが、図4及び図6を比較すると理解できる通り、処理が行われるタイミングが異なる。
S604で、第一制御部A101は、図4のS408と同様、スマートフォンB100との無線LAN通信を開始し、動作モードがリモート撮影モードであるか否かを判定する。但し、図4のS408と異なり、ここでは動作モードの通知は行われない。代わりに、第一制御部A101は、S602において一時的に記憶された動作モード情報に基づき、動作モードがリモート撮影モードであるか否かの判定を行う。
図6の動作によれば、動作モードがリモート撮影モードの場合、デジタルカメラA100は、図4の動作と比べて早いタイミングで無線パラメータを更新する。従って、デジタルカメラA100とスマートフォンB100との間の無線LAN通信が開始する前に他のスマートフォンが同一の無線パラメータを取得する可能性が低下し、セキュリティが向上する。また、図6の動作によれば、デジタルカメラA100は、図4の動作と比べて早いタイミングで動作モードを知ることができるため、無線LAN通信が開始する前に動作モードを変更することができる。従って、例えば通知された動作モードがリモート撮影モードの場合、デジタルカメラA100は、無線LAN通信が開始したタイミングでは既にリモート撮影モードに移行しており、ユーザは、無線LAN通信の開始後速やかに撮影動作を行うことができる。
なお、本実施形態のこれまでの説明では、接続部A111及び接続部B111が無線LAN通信を行うものとした。しかしながら、無線LAN通信をIEEE802.15規格(いわゆるBluetooth(登録商標))に置き換えた場合でも、本実施形態は成り立つ。その場合、近接無線通信部A112及び近接無線通信部B112を介した近接無線通信で交換するパラメータを、Bluetooth(登録商標)用のパラメータに置き換えればよい。
以上説明したように、第2の実施形態によれば、デジタルカメラA100は、無線LAN通信時の動作モードに応じて、近接無線不揮発性メモリA123内の無線パラメータを更新するか否かを切り替える。これにより、1対1接続の場合のセキュリティを向上させると共に、1対多接続を行うことも可能となる。
[その他の実施形態]
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムを読み出して実行する処理である。