説明

通信装置及びその制御方法

【課題】ネットワークからの機器情報の要求に対して、電子機器との間の既存の通信構成を用いて通知すべき情報を取得してネットワーク上へ送信可能とし、通信装置の構成を簡素化する。
【解決手段】電子機器に着脱可能な通信装置は、電子機器に装着された状態で、第1のプロトコルにより電子機器と通信するAPIインターフェイスと、第1のプロトコルとは異なる第2のプロトコルでネットワークに接続する通信インターフェイス部とを有する。通信装置は、通信インターフェイス部によりネットワークから機器情報の通知を要求するリクエストを受信した場合に、APIインターフェイスを介して電子機器から必要な情報を収集し、収集した情報を用いて第2のプロトコルに適応した記述情報を生成する。そして、生成した記述情報を、通信インターフェイス部314を介して、ネットワーク上のリクエストの発行元へ送信する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、UPnP通信を着脱可能な通信アダプタを経由してデバイスに接続する際の、デスクリプションデータの取り扱い方に関する。
【背景技術】
【0002】
機器をネットワークで接続するためのプロトコルとして、UPnPというプロトコルが知られている(例えば、特許文献1)。UPnPでは、ネットワークで接続された機器のうち、他の機器をコントロールする制御機器をコントロールポイント、コントロールポイントによってコントロールされる被制御機器をデバイスという。そして、UPnPのプロトコルは、主としてデスカバリ、デスクリプション、コントロール、イベント(又はイベンティング)から構成される。以下、本明細書において、コントロールポイント及びデバイスという用語は、UPnPにおける制御機器、被制御機器の意味で用いる。
【0003】
図1は、UPnPによる一般的な機器の接続状態を示す図であり、ネットワーク105に、1つのコントロールポイント101と3つのデバイス(デバイス102〜104)が接続されている。
【0004】
「デスカバリ」では、デバイス102〜104の各々が自身の存在をアドバタイズしたり、コントロールポイント101がネットワーク105上のデバイス発見のための問いかけのメッセージを発信してデバイスの存在を確認する。これらの動作により、ネットワーク105上のコントロールポイント101、デバイス102〜104の各々は、ネットワーク105に接続されている機器を相互に認識する。
【0005】
「デスクリプション」では、コントロールポイント101からの要求に応じて、デバイス102〜104の各々が自身の機器構成やサービス構成を、指定の書式に基づいたXML文書で報告する。このようにして、コントロールポイント101は、そのネットワークに接続されているデバイスが、どういうもので、なにができるかを認識できる。
【0006】
「コントロール」において、コントロールポイントは、デバイスをコントロール(制御)することができる。コントロールポイントは、しかるべきデバイスに向かって、SOAP文書によって、制御(コントロール)文書を送る。どういう制御があるか、それを制御するためには、どういうSOAP文書をなげればよいか、というようなことは、さきのデスクリプションで知ることができる。
【0007】
「イベント通知」において、デバイス102〜104の各々は、コントロールポイント101へイベントを通知する。コントロールポイント101は、通知を受けるべきイベントを予めデバイスに登録しておき、デバイスは登録されたイベントをコントロール101に通知する。
【特許文献1】特開2005−175724号公報
【発明の開示】
【発明が解決しようとする課題】
【0008】
「デスクリプション」において、コントロールポイント101は、例えばデバイス102にデスクリプション要求を送る。一般に、UPnPに対応したデバイス102は、自分の持っている機能やサービスをUPnPのデスクリプションに規定された書式に従って記述したものを、メモリ(スタティックメモリ)に記録してある。従って、デバイス102は、そのメモリに記録してある内容をコントロールポイント101に送り返すことでデスクリプション要求に応答することができる。即ち、デバイスは、ダイナミックメモリではなく(それではデータが電源オフ時に消えてしまうので)スタティックメモリにデスクリプションを記述しておき、その内容をコントロールポイントからの要求に応じて送信する。
【0009】
一方、図2のように、例えば、UPnPによる通信機能を持たない機器(例えばデジタルカメラ)を、通信アダプタを介してデバイスとしてUPnPネットワークに接続する場合を考える。この場合、例えば「デスクリプション」において、コントロールポイントは通信アダプタにデスクリプション要求を発行することになる。しかし、コントロールポイントが欲しいのは、通信アダプタに接続されているデジタルカメラのデスクリプション情報であって、通信アダプタのデスクリプション情報ではない。
【0010】
通信アダプタは着脱可能であるため、その時々で接続されているカメラが異なる可能性もある。従って、デジタルカメラのデスクリプション情報を記録したスタティックメモリを通信アダプタに設けるような構成を採用することはできない。
【0011】
又、デジタルカメラのスタティックメモリにデスクリプション情報を記録しておき、コントロールポイントからデスクリプション要求が通信アダプタにきた時に、通信アダプタにそのデータを転記し、コントロールポイントに返信することも考えられる。しかし、通信アダプタは、一般にデジタルカメラの情報をやり取りするための通信機能(例えばPTP(Picture Transfer Protocol))を有している。従って、上記のような手法では、このような既存の通信機能に加えてUPnP専用のデータの授受を行うための構造を持たねばならず、通信アダプタやデジタルカメラの構造を複雑化させる要因となる。
【0012】
本発明は、上記の課題に鑑みてなされたものであり、電子機器への着脱が可能な通信装置において、ネットワークからの機器情報の要求に応じて装着された電子機器の機器情報を返信するための構成を簡素化することを目的とする。
【課題を解決するための手段】
【0013】
上記の目的を達成するための本発明の一態様による通信装置は以下の構成を備える。即ち、
電子機器に着脱可能な通信装置であって、
電子機器に装着された状態で、第1のプロトコルにより前記電子機器と通信する第1通信手段と、
前記第1のプロトコルとは異なる第2のプロトコルでネットワークに接続するための第2通信手段と、
前記第2通信手段により、機器情報の通知を要求するリクエストを受信した場合に、前記第1通信手段を介して前記電子機器から必要な情報を収集する収集手段と、
前記収集手段で収集した情報を用いて、前記第2のプロトコルに適応した記述情報を生成する生成手段と、
前記生成手段で生成した記述情報を前記第2通信手段を介して前記リクエストの発行元へ送信する送信手段とを備える。
【0014】
又、上記の目的を達成するための本発明の他の態様による通信装置の制御方法は、
電子機器に装着された状態で、第1のプロトコルにより前記電子機器と通信する第1通信手段と、前記第1のプロトコルとは異なる第2のプロトコルでネットワークに接続するための第2通信手段とを備えた、電子機器に着脱可能な通信装置の制御方法であって、
前記第2通信手段により、機能情報の通知を要求するリクエストを受信した場合に、前記第1通信手段を介して前記電子機器から必要な情報を収集する収集工程と、
前記収集工程で収集した情報を用いて、前記第2のプロトコルに適応した記述情報を生成する生成工程と、
前記生成工程で生成した記述情報を前記第2通信手段を介して前記リクエストの発行元へ送信する送信工程とを備える。
【発明の効果】
【0015】
本発明によれば、ネットワークからの機器情報の要求に対して、電子機器との間の既存の通信構成を用いて通知すべき情報が取得されてネットワーク上へ送信される。このため、通信装置の構成を簡素化することができる。
【発明を実施するための最良の形態】
【0016】
以下、添付の図面を参照して本発明の好適な実施形態を説明する。
図2は、本実施形態によるシステム構成を説明する図である。ネットワーク211にはコントロールポイント201と通信アダプタ205が接続されている。コントロールポイント201と通信アダプタ205はUPnPに従った通信が可能であり、通信アダプタ205はデバイスとしてUPnPネットワークに接続される。通信アダプタは、デジタルカメラ202〜204に対して着脱可能である。以下、デジタルカメラ202が通信アダプタ205を介してUPnPに加入している場合を説明する。尚、コントロールポイント201としては、パーソナルコンピュータやプリンタ等が挙げられる。
【0017】
図3は、本実施形態による、通信アダプタの概略構成を示すブロック図である。通信アダプタ205は、APIインターフェイス311を介してデジタルカメラ202のAPIインターフェイス301と接続し、通信インターフェイス部314を介してネットワーク211と接続する。
【0018】
通信アダプタのUPnP通信制御部313は、通信インターフェース部314を介してネットワーク211上の機器との間でUPnPによる通信を実現する。例えば、UPnP通信制御部313は、UPnPで動作するコントロールポイント201からネットワーク211上に送信された情報を通信インターフェイス部314を経由して取り込み、UPnPによるコントロールポイント201との通信を実現する。
【0019】
UPnP通信制御部313は、取り込んだ情報がコントロールポイント201からのデスクリプション要求であると判断すると、デジタルカメラ202の情報をAPIインターフェイス312を用いて取得するよう制御する。このAPIには、例えばPTPのような、一般にカメラに使われているプロトコルを用いる。尚、PTPは、データの取り出し口のあるデジタルカメラには一般的に備わっているものであり、従来の技術により構成できる。UPnP通信制御部313は、UPnPのデスクリプション要求に応える為に取得すべきデータを指示し、APIインターフェイス312はこの指示に従ってデジタルカメラ202の情報を収集する。そして、UPnPデスクリプションメーカ312は、APIインターフェイス311を通じて取得された情報に基づいて、UPnPデスクリプション形式(XML形式)の応答情報(デスクリプションドキュメント)を生成する。そして、UPnP通信制御部313は、生成された応答情報を通信インターフェイス315によりコントロールポイント201に送信することで、上記デスクリプション要求に応答する。尚、通信アダプタ205の全体の制御は、システムコントローラ316がつかさどる。
【0020】
尚、上記通信アダプタ205の構成において、311〜315に示される各部の機能の一部或は全てが、不図示のCPUが不図示のROM等に記憶された制御プログラムを実行することによって実現されてもよい。
【0021】
以上説明した電子機器に着脱可能な通信装置である通信アダプタ205による、デスクリプション要求に対する応答処理や、UPnPにおける他の要求/通知に関する処理について、図5を用いて説明する。図5は本実施形態の通信アダプタ205のシステムコントローラ316による制御を説明するフローチャートである。
【0022】
システムコントローラ315は、通信インターフェイス部314を介してコントロールポイントから情報を受信すると、これをUPnP通信制御部313に提供する(ステップS501)。UPnP通信制御部313は、その受信情報がデスカバリにかかる要求、デスクリプション要求、コントロール要求、及びその他の要求のいずれであるかを判断する(ステップS502〜S504)。
【0023】
デスカバリにかかる要求であると判断され、その要求で指定されたサービスタイプがデジタルカメラであった場合は、要求元のコントロールポイントへ自身の存在を告知するべく返答する(ステップS502、S505)。尚、デスカバリには、SSDP(Simple Service Discover Protocol)による機器検出が用いられる。UPnP通信制御部313の判断結果に応じて、システムコントローラ315はAPIインターフェイス311(PTP)を介してデジタルカメラ202から必要な情報を取得する。そして、システムコントローラ315は、この情報に基づいてSSDPに従った告知のための情報を作成し、通信インターフェイス部314を介して要求元のコントロールポイントへ通知する。
【0024】
又、UPnP通信制御部313は、コントロールポイントからの要求がデスクリプション要求であると判断した場合は、デスクリプションドキュメントの作成に必要な情報の収集をシステムコントローラ315に指示する。なお、デスクリプション要求は、機器情報または機能情報の通知を要求するリクエストである。システムコントローラ315は、この指示に従って、APIインターフェース311(PTP)を介してデジタルカメラ202から情報を収集しUPnPデスクリプションメーカ312に提供する(ステップS506)。例えば、PTPを利用することにより、情報項目名を指定して、対応する情報を出力させるコマンドをカメラに対して送ることで、必要な情報が収集される。UPnPデスクリプションメーカ312は、提供された情報を用いてデスクリプションドキュメント(UPnPに適応した記述情報)を生成する(ステップS507)。システムコントローラ315は生成されたデスクリプションドキュメントを要求元(デスクリプション要求の発行元)のコントロールポイントへ通信インターフェイス部314を介して送信する(ステップS508)。こうして、デスクリプション要求に対する返信が遂行される。
【0025】
又、UPnP通信制御部313は、コントロールポイントからの要求がコントロール要求であった場合は、当該コントロール要求(例えばSOAPで記述されている)を解析し、解析結果をシステムコントローラ315に通知する(ステップS509)。システムコントローラ315は、通知された解析結果に応じて、APIインターフェイス311によるPTP通信を用いてデジタルカメラ202を制御する(ステップS510)。尚、コントロールでは、コントロールポイントがデバイス(デジタルカメラ202)の状態(例えばズーム値や、バッテリーの状態等)を問い合せることもできる。コントロール要求がこのような問合せであった場合は、ステップS510において、ステップS509の解析結果に従ってデジタルカメラ202からAPIインターフェイス311(PTP)を介して必要な情報が取得される。そして、UPnPデスクリプションメーカ312が、取得された情報に基づいて返信用の記述を生成し、システムコントローラ315が通信インターフェイス部314を介してコントロールポイントに返信する。
【0026】
尚、上記以外の要求であった場合は、それぞれに応じた処理を実行することになる(ステップS511)が、その詳細な処理についての説明は省略する。
【0027】
一方、システムコントローラ315は、APIインターフェイス311を介して受信したデジタルカメラ202から通知をUPnP通信制御部313に提供する。UPnP通信制御部313は、その通知がコントロールポイントへ告知すべきものであると判断した場合、当該通知をUPnPデスクリプションメーカ312に提供して、XMLによる告知メッセージを生成させる(ステップS512、S513)。更に、UPnP通信制御部313は、当該告知メッセージを通知するべく登録されているコントロールポイントを特定する(ステップS514)。そして、特定したコントロールポイントへ通信インターフェイス部314を介して告知メッセージを通知する(ステップS515)。
【0028】
又、システムコントローラ315は、通信アダプタ205がネットワーク211に接続されたとき等、アドバタイズが必要なタイミングであれば、SSDP等に従った告知(NOTIFY)を行う(ステップS516、S517)。
【0029】
以上のようにして、通信アダプタ205は、APIインターフェイス311を介して接続されているデジタルカメラ202をデバイスとしてUPnPに加入させ、動作させることができる。
【0030】
以上のように、本実施形態の通信アダプタは、ネットワーク接続に用いられている第2のプロトコル(例えばUPnP)において要求される機器情報(機器の状態及び/又は能力を含む)を、当該電子機器が有する第1のプロトコル(例えばPTP)により取得する。そして、取得した機器情報をネットワーク接続の上記第2のプロトコルに従って送信する。従って、実施形態の通信アダプタによれば、電子機器が元々持ち合わせている第1のプロトコルを用いて、第2のプロトコルで要求される機器情報を随時に取得し、これを第2のプロトコルで送信することができる。
【0031】
より具体的には、例えば、コントロールポイント201からデスクリプション要求が来る度に、通信アダプタ205は、デジタルカメラ202が標準装備するAPI(例えばPTP)により必要な情報を取得する。そして、通信アダプタ201は、UPnP規格で指定された正しい書式のデスクリプション情報(デスクリプションドキュメント)を生成し、コントロールポイント側に返信する。
【0032】
このため、通信アダプタ205が着脱可能であり、異なるデジタルカメラと接続された場合でも、デスクリプション要求に応じてデータを正しく収集してデスクリプション情報を返信することができる。又、着脱可能なアダプタ205において無駄な情報保存をすることなく、コントロールポイント−デバイス間の適切なUPnPデスクリプション情報のやりとりを実現できる。
【0033】
なお、上記実施形態では、通信アダプタのネットワーク接続は有線のネットワーク211を用いた場合を説明したが、当然のことながら、図4に示されるように、無線のネットワークであっても一向に構わない。むしろ、通信アダプタ205(カメラ通信アダプタ)の外部とのネットワークは、無線接続である方が一般的であるともいえる。その場合、通信アダプタ205の通信インターフェイス部315は無線対応のものになる。
【0034】
尚、本発明は、ソフトウェアのプログラムをシステム或いは装置に直接或いは遠隔から供給し、そのシステム或いは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによって前述した実施形態の機能が達成される場合を含む。この場合、供給されるプログラムは実施形態で図に示したフローチャートに対応したプログラムである。
【0035】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【0036】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であっても良い。
【0037】
プログラムを供給するための記録媒体としては以下が挙げられる。例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などである。
【0038】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムをハードディスク等の記録媒体にダウンロードすることが挙げられる。この場合、ダウンロードされるプログラムは、圧縮され自動インストール機能を含むファイルであってもよい。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
【0039】
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布するという形態をとることもできる。この場合、所定の条件をクリアしたユーザに、インターネットを介してホームページから暗号を解く鍵情報をダウンロードさせ、その鍵情報を使用して暗号化されたプログラムを実行し、プログラムをコンピュータにインストールさせるようにもできる。
【0040】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどとの協働で実施形態の機能が実現されてもよい。この場合、OSなどが、実際の処理の一部または全部を行ない、その処理によって前述した実施形態の機能が実現される。
【0041】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれて前述の実施形態の機能の一部或いは全てが実現されてもよい。この場合、機能拡張ボードや機能拡張ユニットにプログラムが書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行なう。
【図面の簡単な説明】
【0042】
【図1】UPnPを用いた一般的なネットワーク接続状態を示す図である。
【図2】実施形態による、通信アダプタを介したネットワーク接続を説明する図である。
【図3】実施形態による通信アダプタの内部構成例を示すブロック図である。
【図4】無線を用いた場合の、通信アダプタを介したネットワーク接続を説明する図である。
【図5】実施形態の通信アダプタによりUPnP通信を実現するための制御を説明するフローチャートである。

【特許請求の範囲】
【請求項1】
電子機器に着脱可能な通信装置であって、
電子機器に装着された状態で、第1のプロトコルにより前記電子機器と通信する第1通信手段と、
前記第1のプロトコルとは異なる第2のプロトコルでネットワークに接続するための第2通信手段と、
前記第2通信手段により、機器情報の通知を要求するリクエストを受信した場合に、前記第1通信手段を介して前記電子機器から必要な情報を収集する収集手段と、
前記収集手段で収集した情報を用いて、前記第2のプロトコルに適応した記述情報を生成する生成手段と、
前記生成手段で生成した記述情報を前記第2通信手段を介して前記リクエストの発行元へ送信する送信手段とを備えることを特徴とする通信装置。
【請求項2】
前記第2のプロトコルはUPnPプロトコルであり、
前記リクエストは、UPnPプロトコルで規定されるコントロールポイントからのデスクリプション要求であることを特徴とする請求項1に記載の通信装置。
【請求項3】
前記前記電子機器はデジタルカメラであり、前記第1のプロトコルはPTP(Picture Transfer Protocol)であることを特徴とする請求項1に記載の通信装置。
【請求項4】
電子機器に装着された状態で、第1のプロトコルにより前記電子機器と通信する第1通信手段と、前記第1のプロトコルとは異なる第2のプロトコルでネットワークに接続するための第2通信手段とを備えた、電子機器に着脱可能な通信装置の制御方法であって、
前記第2通信手段により、機能情報の通知を要求するリクエストを受信した場合に、前記第1通信手段を介して前記電子機器から必要な情報を収集する収集工程と、
前記収集工程で収集した情報を用いて、前記第2のプロトコルに適応した記述情報を生成する生成工程と、
前記生成工程で生成した記述情報を前記第2通信手段を介して前記リクエストの発行元へ送信する送信工程とを備えることを特徴とする通信装置の制御方法。
【請求項5】
前記第2のプロトコルはUPnPプロトコルであり、
前記リクエストは、UPnPプロトコルで規定されるコントロールポイントからのデスクリプション要求であることを特徴とする請求項4に記載の通信装置の制御方法。
【請求項6】
前記前記電子機器はデジタルカメラであり、前記第1のプロトコルはPTP(Picture Transfer Protocol)であることを特徴とする請求項4に記載の通信装置の制御方法。
【請求項7】
請求項4乃至6のいずれかに記載の制御方法をコンピュータに実行させるための制御プログラム。
【請求項8】
請求項4乃至6のいずれかに記載の制御方法をコンピュータに実行させるための制御プログラムを格納したコンピュータ可読媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2007−306159(P2007−306159A)
【公開日】平成19年11月22日(2007.11.22)
【国際特許分類】
【出願番号】特願2006−130879(P2006−130879)
【出願日】平成18年5月9日(2006.5.9)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】