(57)【要約】【課題】ユーザの指定無しで、複数の通信プロトコルに対応可能にする。【解決手段】  第１の通信プロトコルでの通信状態で接続を確立する（ｓ４０１，ｓ４０２）。所定リクエストを受信すると（ｓ４０５）、接続解除をホストに通知すると共に（ｓ４０７）、第２の通信プロトコルに切り替え（ｓ４０８）、再接続をホストに通知する（ｓ４０９）。所定リクエストを受信するのを待って（ｓ４１０）、第２の通信プロトコルの使用を開始する（ｓ４１１）。【選択図】  図４
2005130316.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも２つの通信プロトコルを実行可能な通信モジュールと、
外部通信装置からの所定の通信開始要求に応じて、前記通信開始要求の種類に応じて前記複数の通信プロトコルから１つを選択して排他的に実行することが可能なプロトコル選択手段と、
前記通信開始要求を受信した直後に前記外部通信装置に対してバスからの切断要求を発行し、自身の接続状態を解除する切断要求発行手段と、
前記プロトコル選択手段により選択されたプロトコルの実行が可能になった時点で前記外部通信装置に再度、接続要求を出力するバス構成要求発行手段
とを有し、バスに対して選択されたプロトコルで再構成されることを特徴とする画像入力装置。
【請求項２】
前記外部通信装置から現在使用中の通信プロトコルの終了を示す終了要求を受信すると、前記通信モジュールで適用する通信プロトコルを、現在、使用している通信プロトコルの１つ前に使用していた通信プロトコルに切り替えることを特徴とする請求項１に記載の画像入力装置。
【請求項３】
第１及び第２の通信プロトコルを実行可能な通信モジュールを有する画像入力装置において、通信プロトコルを切り替える方法であって、
前記第１の通信プロトコルで外部通信装置と通信する状態で、前記外物通信装置からの所定の通信開始要求に応じて、前記外部通信装置に対してバスからの切断要求を発行することにより、接続状態を一旦、解除し、
前記通信モジュールで使用する通信プロトコルを前記第２の通信プロトコルに切り替え、
前記第２の通信プロトコルの実行が可能になった時点で、前記外部通信装置に対して再度、接続要求を出力する
ことを特徴とする通信プロトコル切り替え方法。
【請求項４】
前記外部通信装置から前記第２の通信プロトコルの終了を示す終了要求を受信すると、前記通信モジュールで適用する通信プロトコルを前記第１の通信プロトコルに切り替えることを特徴とする請求項３に記載の通信プロトコル切り替え方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタルカメラ等の画像入力装置及びこの種の画像入力装置における通信プロトコル切り替え方法に関する。
【背景技術】
【０００２】
デジタルカメラをパーソナルコンピュータ又はプリンタに接続するためのネットワークインターフェースの一つにＵＳＢ（Universal Serial Bus）がある（例えば、非特許文献１参照）。
【０００３】
ＵＳＢを使用してデジタルカメラをパーソナルコンピュータ又はプリンタに接続する場合、以下の２つの通信プロトコルを実装する必要がある。即ち、
（１）マスストレージクラス（Mass Storage Class）、イメージングクラス（Imaging Class）などで定義された通信プロトコル（以下、標準プロトコルという）。
（２）ベンダーが独自に定義した通信プロトコル（以下、ベンダー固有プロトコルという）。
【非特許文献１】Universal Serial Bus Specification Revision 2.0, April 27, 2000
【発明の開示】
【発明が解決しようとする課題】
【０００４】
標準プロトコル及びベンダー固有プロトコルの双方を実装した場合、これらの通信プロトコルを効率的に切り替える機能が必要となる。
【０００５】
本発明は、標準プロトコル及びベンダー固有プロトコルを効率的に切り替えることができる画像入力装置及びその通信プロトコル切り替え方法を提示することを目的とする。
【課題を解決するための手段】
【０００６】
本発明に係る画像入力装置は、少なくとも２つの通信プロトコルを実行可能な通信モジュールと、外部通信装置からの所定の通信開始要求に応じて、前記通信開始要求の種類に応じて前記複数の通信プロトコルから１つを選択して排他的に実行することが可能なプロトコル選択手段と、前記通信開始要求を受信した直後に前記外部通信装置に対してバスからの切断要求を発行し、自身の接続状態を解除する切断要求発行手段と、前記プロトコル選択手段により選択されたプロトコルの実行が可能になった時点で前記外部通信装置に再度、接続要求を出力するバス構成要求発行手段とを有し、バスに対して選択されたプロトコルで再構成されることを特徴とする。
【０００７】
本発明に係る通信プロトコル切り替え方法は、第１及び第２の通信プロトコルを実行可能な通信モジュールを有する画像入力装置において、通信プロトコルを切り替える方法であって、前記第１の通信プロトコルで外部通信装置と通信する状態で、前記外物通信装置からの所定の通信開始要求に応じて、前記外部通信装置に対してバスからの切断要求を発行することにより、接続状態を一旦、解除し、前記通信モジュールで使用する通信プロトコルを前記第２の通信プロトコルに切り替え、前記第２の通信プロトコルの実行が可能になった時点で、前記外部通信装置に対して再度、接続要求を出力することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、標準プロトコル及びベンダー固有プロトコルを効率的に切り替えることができる。
【発明を実施するための最良の形態】
【０００９】
以下、図面を参照して、本発明の実施例を詳細に説明する。
【００１０】
図１は、本発明の一実施例であるデジタルカメラシステムの概略構成ブロック図を示す。本実施例は、大きく分けて、デジタルカメラ１００と、情報処理装置１０１とからなる。情報処理装置１０１は例えば、コンピュータ（ＰＣ）からなり、図示しない演算処理装置（ＣＰＵ）、一次記憶部（ＲＡＭ）、二次記憶部（ハードディスク）、操作装置（キーボード、マウス）、及び表示装置（ディスプレイ）等を具備する。なお、本実施例は、デジタルカメラに限らず、デジタルカメラ以外の画像入力装置（デジタルビデオカメラ、カメラ付き携帯電話、カメラ付き携帯端末など）においても実施可能である。
【００１１】
デジタルカメラ１００は、レンズ、撮像素子及び駆動回路等を含む光学ユニット１０５、光学ユニット１０５によって取り込まれた画像データ等を処理する画像処理部１０４、ＣＰＵ等の演算部１０３、ＤＲＡＭ等の１次記憶装置１０６、内蔵フラッシュＲＯＭ等の２次記憶装置１０７、操作部１０８、ＬＣＤ液晶等の表示部１０９、プログラム格納等に使用されるＲＯＭ等の読み出し専用メモリ１１０、フラッシュメモリカード等の着脱可能な記録媒体１１１、及び、情報処理装置１０１との接続を管理する通信制御部１０２からなる。２次記憶装置１０７及び着脱可能な記憶媒体１１１の一方のみを装備してもよい。
【００１２】
図２は、図１に示すデジタルカメラ１００のコンピュータ及びプリンタとの接続態様を示す。２０１はＰＣであり、２０２はプリンタである。
【００１３】
デジタルカメラ１００をＰＣ２０１に接続するのは一般的なことであり、本実施例では、ＵＳＢを用いてデジタルカメラ１００とＰＣ２０１を接続する。この場合、ＰＣ２０１がＵＳＢのホスト機能を提供し、デジタルカメラ１００がスレーブのデバイスとなる。
【００１４】
プリンタ２０２もまた、ＵＳＢによりデジタルカメラ１００と接続する。この場合、プリンタ２０２が、ＵＳＢホスト機能を提供し、デジタルカメラ１００はスレーブデバイスになる。
【００１５】
デジタルカメラ１００は、ＰＣ２０１と接続する場合には、イメージングクラス（Imaging Class）で規定されているＰＴＰ（参考文献：PIMA 15740:2000, Photography - Electronic still picture imaging - Picture Transfer Protocol (PTP) for Digital Still Photography Devices, PHOTOGRAPHIC AND IMAGING MANUFACTURERS ASSOCIATION, INC., Approved 2000-07-05, First EDITION）を使用して、ＰＣ２０１と通信し、プリンタ２０２と接続する場合には、独自のコマンド体系を使用してプリンタ２０２と通信する。使用する通信プロトコルは、接続相手の機種又はタイプに応じて自動的に選択される。
【００１６】
図３は、デジタルカメラ１００の内部での状態遷移例を示す。
【００１７】
ＵＳＢケーブルを介してデジタルカメラがホストデバイスに接続する。ホストデバイスが起動しており、通信可能状態にあると、ホストデバイスは、ＵＳＢのＶＢＵＳ信号に５Ｖの電圧を供給する。デジタルカメラは、その５Ｖ電圧を検出すると、Ｎｏｔ  Ｃｏｎｆｉｇｕｒｅｄ  Ｓｔａｔｕｓとして起動し、自身の初期化を済ませ、ＵＳＢのＤ＋信号をプルアップしてホストデバイスに接続を通知し、自身の状態をＢｕｓ  Ｃｏｎｆｉｇｕｒｅｄ  Ｓｔａｔｕｓに移行する。この状態で、デジタルカメラは、ホストデバイスからのいくつかのスタンダードリクエストを受信し、必要な情報をホストデバイスに返信する。
【００１８】
デジタルカメラは、ＵＳＢアドレスをホストデバイスから割り振られ、各種情報を送信し終わると、Ｉｄｌｅ  Ｗａｉｔｉｎｇ  ｆｏｒ  ｃｏｍｍａｎｄステータスに移行する。ここでは、ＰＴＰコマンドの受信を待機する。ＰＴＰコマンドを受信すると、デジタルカメラは、Ｃｏｍｍａｎｄ  Ｐｈａｓｅに移行し、受信したコマンドを実行する。コマンドによっては、データの転送を伴うものがある。その場合には、デジタルカメラは、Ｄａｔａ  Ｐｈａｓｅに移行してデータの受け渡しを行い、レスポンスデータをホストデバイスに送信する。データの転送を伴わない場合、デジタルカメラは、すぐにＲｅｓｐｏｎｓｅ  Ｐｈａｓｅに移行し、レスポンスデータをホストデバイスに送信する。
【００１９】
その後、デジタルカメラは、Ｉｄｌｅ  ｗａｉｔｉｎｇ  ｆｏｒ  Ｃｏｍｍａｎｄ  Ｐｈａｓｅに戻り、次のコマンドを待機する。
【００２０】
デジタルカメラが、Ｉｄｌｅ  ｗａｉｔｉｎｇ  ｆｏｒ  Ｃｏｍｍａｎｄ  Ｐｈａｓｅにある状態で、ホストデバイスからＰＴＰコマンド以外のリクエストを受信すると、基本的には、Ｓｔａｌｌする。但し、そのリクエストが、独自コマンド開始を意味するＷａｋｅＵｐリクエストなるベンダー固有リクエストである場合、デジタルカメラは、Ｌｏｇｉｃａｌ  Ｃｏｎｎｅｃｔｉｎｇ  ｓｔａｔｕｓに移行し、独自コマンドのための接続処理状態になる。この状態でホストデバイスから予め定められたベンダー固有の接続シーケンスに則ったコマンドを受け取ると、デジタルカメラは、Ｌｏｇｉｃａｌ  Ｃｏｎｎｅｃｔｅｄ  ｓｔａｔｕｓに移行し、ベンダー独自コマンド体系に則ったコマンドの実行とデータ転送が可能になる。Ｌｏｇｉｃａｌ  Ｃｏｎｎｅｃｔｅｄ  ｓｔａｔｕｓでは、デジタルカメラは、通常のＰＴＰのオペレーション（コマンド）等を受け付けない。
【００２１】
Ｌｏｇｉｃａｌ  Ｃｏｎｎｅｃｔｅｄ  ｓｔａｔｕｓでホストデバイスから独自コマンド体系を終了するためのＳｈｕｔｄｏｗｎリクエストを受信すると、デジタルカメラは、Ｉｄｌｅ  ｗａｉｔｉｎｇ  ｆｏｒ  Ｃｏｍｍａｎｄ  Ｐｈａｓｅに再び戻る。このＩｄｌｅ  ｗａｉｔｉｎｇ  ｆｏｒ  Ｃｏｍｍａｎｄ  Ｐｈａｓｅでは、デジタルカメラは、ベンダー独自コマンドを受け付けなくなり、ＰＴＰコマンドを受信できるようになる。
【００２２】
図５に示すフローチャートを参照して、本実施例のデジタルカメラにプリンタ又はＰＣを接続した場合の接続処理の詳細を説明する。
【００２３】
デジタルカメラがホストデバイスに接続されると、ＵＳＢのＶＢＵＳ信号線に５Ｖが供給される。デジタルカメラは、その５Ｖを検出すると、自身の各種レジスタを初期化し、ＵＳＢ通信が可能な状態にする（ｓ４０１）。
【００２４】
デジタルカメラは、その後、ホストデバイスからのＵＳＢスタンダードリクエストに応答し、デバイスディスクリプタ及びコンフィグレーションディスクリプタ等をホストデバイスに返信する（ｓ４０２）。ホストデバイスによりデバイスとして認識され、ＵＳＢバス上に構成されると、デジタルカメラは、ホストデバイスからのリクエストを待機する（ｓ４０３）。この状態で、接続相手が通常のＰＣである場合、ＰＴＰコマンド、たとえばＧｅｔＤｅｖｉｃｅＩｎｆｏオペレーションなどがデジタルカメラに送信される。受信したコマンドがＰＴＰリクエストであると判断された場合（ｓ４０４）、デジタルカメラは、接続処理を終了し、ＰＴＰコマンド実行処理に移行する。
【００２５】
ＰＴＰリクエストではないと判断された場合、このリクエストがベンダー固有のＷａｋｅｕｐリクエストかどうかを判断する（ｓ４０５）。ベンダー固有のＷａｋｅｕｐリクエストではないと判断された場合、そのリクエストはＳｔａｌｌされ（ｓ４０６）、次のリクエスト待ち状態に戻る。
【００２６】
ベンダー固有のＷａｋｅｕｐリクエストと判断された場合、デジタルカメラは、ＵＳＢのＤ＋信号線のプルアップ状態を解除することで、Ｄｉｓａｂｌｅになったことをホストデバイスに通知する（ｓ４０７）。その後、デジタルカメラは、自身の設定をベンダー固有のコマンド用に切り替え（ｓ４０８）、再度、ＵＳＢのＤ＋信号線をプルアップし、ホストデバイスに再接続を表明する（ｓ４０９）。
【００２７】
デジタルカメラは、接続相手がベンダー固有のコマンドを用いて動作するプリンタであると判断し、接続相手からベンダー固有のＷａｋｅｕｐリクエストが発行されるのを待つ（ｓ４１０）。Ｗａｋｅｕｐリクエストを受信すると、デジタルカメラは、ベンダー固有コマンド受信状態になり、この後、実際のコマンド処理に移行するために接続処理を終了する。
【００２８】
デジタルカメラがＩｄｌｅ  ｗａｉｔｉｎｇ  ｆｏｒ  Ｃｏｍｍａｎｄ  Ｐｈａｓｅにあるときにベンダー固有のＷａｋｅｕｐリクエストを受信し、ベンダー固有プロトコルに内部の設定を切り替える動作を、図５を参照して説明する。
【００２９】
本実施例は、ＵＳＢのＣｏｎｔｒｏｌ、ＢｕｌｋＩｎ、ＢｕｌｋＯｕｔ及びＩｎｔｅｒｒｕｐｔの４つのＥｎｄｐｏｉｎｔを使用する。そのうち、Ｃｏｎｔｒｏｌ、ＢｕｌｋＩｎ及びＢｕｌｋＯｕｔの３つについての使い方が、ＰＴＰとベンダー固有プロトコルで異なる。各Ｅｎｄｐｏｉｎｔの処理は、割り込みによってハンドリングされる。それゆえ、図５に示すように、カメラ起動時には、各Ｅｎｄｐｏｉｎｔに対する割り込み処理ルーチンをＰＴＰ用のものとして設定しておき、ベンダー固有のＷａｋｅｕｐリクエストを受信し内部状態がＬｏｇｉｃａｌ  Ｃｏｎｎｅｃｔｉｎｇ  ｓｔａｔｕｓに移行した時点で、Ｃｏｎｔｒｏｌ、ＢｕｌｋＩｎ及びＢｕｌｋＯｕｔの各割り込み処理ルーチンをベンダー固有プロトコル用に設定し直すことで、処理を切り替える。
【００３０】
ベンダー固有プロトコルを終了しＳｈｕｔＤｏｗｎリクエストを受けた時点で、Ｃｏｎｔｒｏｌ、ＢｕｌｋＩｎ及びＢｕｌｋＯｕｔの各割り込み処理ルーチンをＰＴＰ用のものに戻し、内部状態をＩｄｌｅ  ｗａｉｔｉｎｇ  ｆｏｒ  Ｃｏｍｍａｎｄ  Ｐｈａｓｅに戻す。これにより、ＰＴＰコマンドが受け付け可能になる。
【００３１】
このように、本実施例に係るデジタルカメラ１００によれば、標準プロトコル及びベンダー固有プロトコルを効率的に切り替えることができる。
【００３２】
また、本実施例に係るデジタルカメラ１００によれば、従来の独自コマンドと標準コマンドの両方を実装する必要はあるが、どちらか１つがそれぞれに対し排他的に動作することが前提になるため、２つの通信プロトコルを同時に動作させる場合に比べて必要なハードウェアの規模を小さくすることができ、コストを削減することができる。
【００３３】
また、本実施例に係るデジタルカメラ１００によれば、カメラが自動的にバスのオン・オフを活用して通信プロトコルを切り替えて動作するので、通信プロトコルをユーザに明示的に切り替えさせることは不要になる。即ち、ユーザが意識して通信プロトコルを切り替える必要がなく、わかりやすく互換性の高いシステムを構築できる。
【図面の簡単な説明】
【００３４】
【図１】本発明の一実施例の概略構成ブロック図である。
【図２】本実施例の接続態様例の模式図である。
【図３】本実施例のデジタルカメラ内部の状態遷移図である。
【図４】本実施例の動作フローチャートである。
【図５】接続相手に応じた状態遷移を示す模式図である。
【符号の説明】
【００３５】
１００：デジタルカメラ
１０１：情報処理装置
１０２：通信制御部
１０３：演算部
１０４：画像処理部
１０５：光学ユニット
１０６：一次記憶部
１０７：二次記憶部
１０８：操作部
１０９：表示部
１１０：読み出し専用メモリ
１１１：着脱可能記録媒体
【図１】
2005130316.tif 000003
【図２】
2005130316.tif 000004
【図３】
2005130316.tif 000005
【図４】
2005130316.tif 000006
【図５】
2005130316.tif 000007