(57)【要約】【課題】ＵＳＢホストとＵＳＢデバイスとを容易に無線接続できるデータ中継システムを提供する。【解決手段】本発明に係る画像再生システムは、ＵＳＢデバイスに接続するための一台の第一の中継装置とＵＳＢホストに接続するための一台の第二の中継装置とを備え、第一の中継装置は、第一のＵＳＢ通信手段から出力される送信対象データを第一の無線通信手段により第二の中継装置に転送し、第一の無線通信手段から出力される送信対象データを第一のＵＳＢ通信手段によりＵＳＢデバイスに転送する第一の中継制御手段とを有し、第二の中継装置は、第二のＵＳＢ通信手段から出力される送信対象データを第二の無線通信手段により第一の中継装置に転送し、第二の無線通信手段から出力される送信対象データを第二のＵＳＢ通信手段によりＵＳＢホストに転送する第二の中継制御手段とを有する。【選択図】  図１
2005044094.tif 000002
【特許請求の範囲】
【請求項１】
ＵＳＢデバイスに接続するための一台の第一の中継装置とＵＳＢホストに接続するための一台の第二の中継装置とを備え、
前記第一の中継装置は、
ＵＳＢデバイスのアップストリームポートに接続するためのコネクタとＵＳＢホストコントローラとを有する第一のＵＳＢ通信手段と、
前記第二の中継装置とのみ無線通信を行う第一の無線通信手段と、
前記第一のＵＳＢ通信手段から出力される送信対象データを前記第一の無線通信手段により前記第二の中継装置に転送し、前記第一の無線通信手段から出力される送信対象データを前記第一のＵＳＢ通信手段により前記ＵＳＢデバイスに転送する第一の中継制御手段とを有し、
前記第二の中継装置は、
ＵＳＢホストのダウンストリームポートに接続するためのコネクタを有する第二のＵＳＢ通信手段と、
前記第一の中継装置とのみ無線通信を行う第二の無線通信手段と、
前記第二のＵＳＢ通信手段から出力される送信対象データを前記第二の無線通信手段により前記第一の中継装置に転送し、前記第二の無線通信手段から出力される送信対象データを前記第二のＵＳＢ通信手段により前記ＵＳＢホストに転送する第二の中継制御手段とを有することを特徴とするデータ中継システム。
【請求項２】
前記第一の無線通信手段及び前記第二の無線通信手段は無線ＬＡＮにより無線通信を行うことを特徴とする請求項１に記載のデータ中継システム。
【請求項３】
前記第一の中継制御手段は、前記ＵＳＢデバイスに前記ＵＳＢデバイスの固有情報を要求し、前記ＵＳＢデバイスから送信された固有情報に基づいて前記第一のＵＳＢ通信手段の通信条件を設定するとともに、当該固有情報を前記第一の無線通信手段により前記第二の中継制御手段に転送し、
前記第二の中継制御手段は、前記ＵＳＢホストから固有情報を要求されたとき、前記ＵＳＢデバイスの固有情報を転送することを特徴とする請求項１又は２に記載のデータ中継システム。
【請求項４】
ＵＳＢデバイスに接続するための一台の第一の中継装置とＵＳＢホストに接続するための一台の第二の中継装置とを備え、
前記第一の中継装置は、
ＵＳＢデバイスのアップストリームポートに接続するためのコネクタとＵＳＢホストコントローラとを有する第一のＵＳＢ通信手段と、
前記第二の中継装置とのみ無線通信を行う第一の無線通信手段と、
前記第一のＵＳＢ通信手段から出力される全ての有意なデータを当該データの意味を解釈することなく前記第一の無線通信手段により前記第二の中継装置に転送し、前記第一の無線通信手段から出力される全ての有意なデータを当該データの意味を解釈することなく前記第一のＵＳＢ通信手段により前記ＵＳＢデバイスに転送する第一の中継制御手段とを有し、
前記第二の中継装置は、
ＵＳＢホストのダウンストリームポートに接続するためのコネクタを有する第二のＵＳＢ通信手段と、
前記第一の中継装置とのみ無線通信を行う第二の無線通信手段と、
前記第二のＵＳＢ通信手段から出力される全ての有意なデータを当該データの意味を解釈することなく前記第二の無線通信手段により前記第一の中継装置に転送し、前記第二の無線通信手段から出力される全ての有意なデータを当該データの意味を解釈することなく前記第二のＵＳＢ通信手段により前記ＵＳＢホストに転送する第二の中継制御手段とを有することを特徴とするデータ中継システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はデータ中継システムに関する。
【０００２】
【従来の技術】
近年、パーソナルコンピュータにキーボードやマウスなどの周辺機器を接続したり、プリンタにディジタルカメラを接続したりするためのシリアルインタフェース規格としてＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）が広く普及している。ＵＳＢはＲＳ−２３２Ｃ等のそれまで広く利用されていたシリアルインタフェース規格に比べて高速であり、またプラグアンドプレイに対応しているため使い勝手がよいなどの利点がある。
【０００３】
また、無線ＬＡＮカードやＰＨＳ通信カードのようにパーソナルコンピュータで無線通信を可能にするカードが一般に知られている。こうしたカードによると、無線通信に対応していないパーソナルコンピュータなどの機器を無線通信に対応させることができる。
【０００４】
【発明が解決しようとする課題】
しかしながら、ＵＳＢではＵＳＢホストとＵＳＢデバイスとがＵＳＢケーブルにより有線接続される。このためＵＳＢホストとＵＳＢデバイスとを接続している間はＵＳＢホスト又はＵＳＢデバイスを持ち運べる範囲が制限され、ユーザにとって利便性が悪いという問題がある。また、通信を行っている途中でつまずいてＵＳＢケーブルが引き抜かれてしまうなどの事故が起きる可能性もある。
【０００５】
また、無線ＬＡＮカードやＰＨＳ通信カードなどのカードの場合、装着しただけで直ぐに無線通信が可能になるわけではなく、当該カードに付属するデバイスドライバをインストールする作業が必要となる。このため、無線通信が可能になるまでに手間と時間がかかるという問題がある。通信相手が無線通信に対応していなければ、相手先に対する作業の手間も生じる。また、パーソナルコンピュータなどの構成を変更することになるため、借用しているものであれば自由に構成を変更することができず、結果として無線通信をあきらめざるを得ないような場合もあり得る。また、ＵＳＢには対応しているものの無線ＬＡＮカードなどを拡張できないものもあり、そうした場合は無線接続が不可能である。
【０００６】
本発明は、かかる問題に鑑みて創作されたものであって、ＵＳＢホストとＵＳＢデバイスとを容易に無線接続できるデータ中継システムを提供することを目的とする。
【０００７】
【課題を解決するための手段】
上記目的を達成するため、本発明に係るデータ中継システムは、ＵＳＢデバイスに接続するための一台の第一の中継装置とＵＳＢホストに接続するための一台の第二の中継装置とを備え、前記第一の中継装置は、ＵＳＢデバイスのアップストリームポートに接続するためのコネクタとＵＳＢホストコントローラとを有する第一のＵＳＢ通信手段と、前記第二の中継装置とのみ無線通信を行う第一の無線通信手段と、前記第一のＵＳＢ通信手段から出力される送信対象データを前記第一の無線通信手段により前記第二の中継装置に転送し、前記第一の無線通信手段から出力される送信対象データを前記第一のＵＳＢ通信手段により前記ＵＳＢデバイスに転送する第一の中継制御手段とを有し、前記第二の中継装置は、ＵＳＢホストのダウンストリームポートに接続するためのコネクタを有する第二のＵＳＢ通信手段と、前記第一の中継装置とのみ無線通信を行う第二の無線通信手段と、前記第二のＵＳＢ通信手段から出力される送信対象データを前記第二の無線通信手段により前記第一の中継装置に転送し、前記第二の無線通信手段から出力される送信対象データを前記第二のＵＳＢ通信手段により前記ＵＳＢホストに転送する第二の中継制御手段とを有することを特徴とする。このデータ中継システムによると、ＵＳＢケーブルの一部を無線通信に置き換えることができる。このため、無線通信を行うための手段を備えないＵＳＢデバイスとＵＳＢホストとを、それらのハードウェア構成やプログラム構成を変更することなく無線接続できる。よってこのデータ中継システムによると、ＵＳＢデバイスとＵＳＢホストとを容易に無線接続できる。
【０００８】
さらに本発明に係るデータ中継システムでは、前記第一の無線通信手段及び第二の無線通信手段は無線ＬＡＮにより無線通信を行うことを特徴とする。一般に無線ＬＡＮは１０Ｍｂｐｓ以上の高速なデータ送信が可能である。このため、ＵＳＢデバイスとＵＳＢホストとのデータ送受信を高速にできる。
さらに本発明に係るデータ中継システムでは、前記第一の中継制御手段は、前記ＵＳＢデバイスに前記ＵＳＢデバイスの固有情報を要求し、前記ＵＳＢデバイスから送信された固有情報に基づいて前記第一のＵＳＢ通信手段の通信条件を設定するとともに、当該固有情報を前記第一の無線通信手段により前記第二の中継制御手段に転送し、前記第二の中継制御手段は、前記ＵＳＢホストから固有情報を要求されたとき、前記ＵＳＢデバイスの固有情報を転送することを特徴とする。このデータ中継システムによると、ＵＳＢホストと第二の中継装置との間の通信条件をＵＳＢデバイスの固有情報に基づいて設定できるため、無線接続できるＵＳＢデバイスが限定されない。
【０００９】
上記目的を達成するため、本発明に係るデータ中継システムは、ＵＳＢデバイスに接続するための一台の第一の中継装置とＵＳＢホストに接続するための一台の第二の中継装置とを備え、前記第一の中継装置は、ＵＳＢデバイスのアップストリームポートに接続するためのコネクタとＵＳＢホストコントローラとを有する第一のＵＳＢ通信手段と、前記第二の中継装置とのみ無線通信を行う第一の無線通信手段と、前記第一のＵＳＢ通信手段から出力される全ての有意なデータを当該データの意味を解釈することなく前記第一の無線通信手段により前記第二の中継装置に転送し、前記第一の無線通信手段から出力される全ての有意なデータを当該データの意味を解釈することなく前記第一のＵＳＢ通信手段により前記ＵＳＢデバイスに転送する第一の中継制御手段とを有し、前記第二の中継装置は、ＵＳＢホストのダウンストリームポートに接続するためのコネクタを有する第二のＵＳＢ通信手段と、前記第一の中継装置とのみ無線通信を行う第二の無線通信手段と、前記第二のＵＳＢ通信手段から出力される全ての有意なデータを当該データの意味を解釈することなく前記第二の無線通信手段により前記第一の中継装置に転送し、前記第二の無線通信手段から出力される全ての有意なデータを当該データの意味を解釈することなく前記第二のＵＳＢ通信手段により前記ＵＳＢホストに転送する第二の中継制御手段とを有することを特徴とする。このデータ中継システムによると、第一の中継制御手段及び第二の中継制御手段はデータの意味を解釈しないため、第一の中継制御手段及び第二の中継制御手段の処理を簡素化できる。
【００１０】
尚、本発明に備わる複数の手段の各機能は、構成自体で機能が特定されるハードウェア資源、プログラムにより機能が特定されるハードウェア資源、又はそれらの組み合わせにより実現される。また、これら複数の手段の各機能は、各々が物理的に互いに独立したハードウェア資源で実現されるものに限定されない。
また、本発明は装置の発明として特定できるだけでなく、プログラムの発明としても、そのプログラムを記録した記録媒体の発明としても、方法の発明としても特定することができる。
【００１１】
【発明の実施の形態】
以下、本発明の実施の形態を複数の実施例に基づいて説明する。
【００１２】
（第一実施例）
図１は、本発明の第一実施例に係るデータ中継システムを示す模式図である。データ中継システムは第一の中継装置１と第二の中継装置２とで構成され、第一の中継装置１はＵＳＢデバイス４に接続され、第二の中継装置２はＵＳＢホスト３に接続される。図示する例ではＵＳＢホスト３はディジタルカメラであり、ＵＳＢデバイス４はプリンタである。
【００１３】
図２は、データ中継システムのハードウェア構成を示すブロック図である。
第一の中継装置１は、第一の中継制御部１１、第一の無線ＬＡＮインタフェース１２、第一のＵＳＢバスインタフェース１３、及び電源部１４を備える。
第一の中継制御部１１は、ＣＰＵ１１ａ、ワークメモリ１１ｂ、フラッシュＲＯＭ１１ｃ、及びブートＲＯＭ１１ｄで構成される。第一の中継制御部１１はフラッシュＲＯＭ１１ｃに記憶されている中継制御プログラムを実行することで第一の中継制御手段として機能する。フラッシュＲＯＭ１１ｃは中継制御プログラム、第一の中継装置１のＩＰアドレス、第二の中継装置２のＩＰアドレス、その他各種のプログラムやデータを予め記憶しているメモリである。これら各種のプログラムやデータは、ＵＳＢを介して接続した相手装置から入力してもよいし、無線動作後のプログラムアップデートは、所定のサーバからネットワークを介してダウンロードして入力してもよい。ワークメモリ１１ｂは各種のプログラムやデータを一時的に記憶するメモリである。また、ワークメモリ１１ｂは送受信されるデータを一時的に記憶するバッファとしても用いられる。
【００１４】
第一のＵＳＢ通信手段としての第一のＵＳＢバスインタフェース１３は、ＵＳＢ規格で規定されているＵＳＢバスインタフェース層を実装したハードウェアであり、ＳＩＥ（Ｓｅｒｉａｌ  Ｉｎｔｅｒｆａｃｅ  Ｅｎｇｉｎｅ）１３ｂや図示しない複数のエンドポイントなどを備える。ＵＳＢバスインタフェースの構成はＵＳＢホスト側とＵＳＢデバイス側とで異なる。第一の中継装置１はＵＳＢホストとして機能するものであるためＵＳＢホストコントローラ１３ａが設けられている。ＵＳＢホストコントローラ１３ａはＵＳＢバス上に一つだけ設けられ、物理的なデータ転送に関わる処理を制御する。例えばデータの送受信タイミングの制御やエラーリカバリの制御はＵＳＢホストコントローラ１３ａによって行われる。第一のＵＳＢバスインタフェース１３は更にＵＳＢデバイス４のアップストリームポート３１に嵌合するためのコネクタ１３ｃを備えている。コネクタ１３ｃはＵＳＢケーブルが備える一般にＢ型プラグと呼ばれる形状のコネクタである。Ｂ型プラグは本来はＵＳＢケーブルのＵＳＢデバイスに接続される側の端部に設けられるものであるが、第一の中継装置１は第一のＵＳＢバスインタフェース１３にコネクタ１３ｃを設けることでＵＳＢケーブルを介することなくＵＳＢデバイス４に接続される。尚、ＵＳＢデバイス４と第一のＵＳＢバスインタフェース１３との間をＵＳＢケーブルで接続するようにしてもよい。また、コネクタ１３ｃは目的に応じてミニサイズのものや特定のＵＳＢデバイスにのみ接続可能な形状のものであっても構わない。
【００１５】
第一の無線通信手段としての第一の無線ＬＡＮインタフェース１２は、無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）の国際規格であるＩＥＥＥ８０２．１１に準拠して実装されたハードウェアである。ＬＡＮによる通信ではＩＰアドレスによって特定される相手と通信が行われる。第一の中継装置１の無線通信プロセス５２（図３参照）は通信相手のＩＰアドレスとして第二の中継装置２のＩＰアドレスが固定されており、第一の無線ＬＡＮインタフェース１２は無線通信プロセス５２に制御されることによって第二の無線ＬＡＮインタフェース２２とのみ通信を行う。無線ＬＡＮは一般に１０Ｍｂｐｓ以上の高速通信が可能なため、第一の無線通信手段を無線ＬＡＮインタフェースとして構成すると、ＵＳＢデバイス４とＵＳＢホスト３とのデータ送受信を高速にできる。尚、第一の無線ＬＡＮインタフェース１２は例えばＢｌｕｅｔｏｏｔｈやウルトラワイドバンド（ＵＷＢ）応用プロトコルなどの他の無線通信規格に準拠して構成してもよい。
【００１６】
電源部１４は電池や電源回路などを備え、上述した各部に電力を供給する。尚、特別にＵＳＢデバイス４から電源の供給を受けるようにしてもよく、その場合は電源部１４は不要である。
第二の中継装置２は、第二の中継制御部２１、第二のＵＳＢバスインタフェース２３、及び第二の無線ＬＡＮインタフェース２２を備える。
【００１７】
第二のＵＳＢ通信手段としての第二のＵＳＢバスインタフェース２３は、ＵＳＢ規格で規定されているＵＳＢバスインタフェース層を実装したハードウェアであり、ＳＩＥ（Ｓｅｒｉａｌ  Ｉｎｔｅｒｆａｃｅ  Ｅｎｇｉｎｅ）２３ａや図示しない複数のエンドポイントなどを備える。第二の中継装置２はＵＳＢデバイスとして機能するものであるためＵＳＢホストコントローラは設けられていない。第二のＵＳＢバスインタフェース２３は更にＵＳＢホスト３のダウンストリームポート４１に嵌合するためのコネクタ２３ｂを備えている。コネクタ２３ｂはＵＳＢケーブルが備える一般にＡ型プラグと呼ばれる形状のコネクタである。Ａ型プラグは本来はＵＳＢケーブルのＵＳＢホストに接続される側の端部に設けられるものであるが、第二の中継装置２は第二のＵＳＢバスインタフェース２３にコネクタ２３ｂを設けることでＵＳＢケーブルを介することなくＵＳＢホスト３に接続される。尚、コネクタ２３ｂは目的に応じてミニサイズのものや特定のＵＳＢデバイスにのみ接続可能な形状のものであっても構わない。
【００１８】
第二の中継制御手段としての第二の中継制御部２１、及び第二の無線通信手段としての第二の無線ＬＡＮインタフェース２２の構成は第一の中継装置１と同一であるため説明は省略する。また、第二の中継装置２はＵＳＢホスト３から電源の供給を受けるため電池などの電源は備えていない。尚、用途に応じて電源部を設けても構わない。
【００１９】
図３は、第一実施例の中継制御プログラムのデータフロー図である。中継制御プログラムは第一の中継装置１で実行される第一の中継制御プログラムと、第二の中継装置２で実行される第二の中継制御プログラムとで構成される。第一の中継制御プログラムは、第一のＵＳＢ通信プロセス５１及び無線通信プロセス５２を第一の中継制御部１１に実行させ、第二の中継制御プログラムは第二のＵＳＢ通信プロセス５３及び無線通信プロセス５２を第二の中継制御部２１に実行させる。
【００２０】
第一のＵＳＢ通信プロセス５１は、ＵＳＢで規定されているＵＳＢシステムソフトウェアとしてＵＳＢプロトコルによる通信を制御するプロセスである。ＵＳＢシステムソフトウェアは、ＵＳＢデバイスとの接続を確立する処理、その上位層であるクライアントソフトウェアから出力される送信対象データを後述するデータパケットに分割してＵＳＢバスインタフェースに出力する処理、ＵＳＢバスインタフェースから出力されるデータパケットから送信対象データを組み立ててクライアントソフトウェアに出力する処理、ＵＳＢホストコントローラを制御する処理などを実行するためのソフトウェアである。第一実施例ではクライアントソフトウェアに相当するプロセスは存在せず、無線通信プロセス５２が第一のＵＳＢ通信プロセス５１にとっての上位層に相当する。
【００２１】
ここで送信対象データとは、ＵＳＢデバイス４からＵＳＢホスト３に、あるいはその逆に送信するデータのことをいう。例えばディジタルカメラからプリンタに印刷のためにディジタル画像を送信する場合であれば、ディジタル画像やそれに対する応答状態通知などは全て送信対象データに相当する。例えばＵＳＢデバイスからＵＳＢホストに送信対象データを送信する場合であれば、送信対象データはＵＳＢデバイス側で分割されて複数のデータパケットに格納されて第一のＵＳＢバスインタフェース１３に出力され、そのデータパケットが第一のＵＳＢ通信プロセス５１に出力される。
【００２２】
第一実施例の第一のＵＳＢ通信プロセス５１は、第一のＵＳＢバスインタフェース１３からデータパケットが出力された場合、当該データパケットから送信対象データを取り出し、取り出した送信対象データを後述する転送データに格納して第一の中継装置１の無線通信プロセス５２に出力する。データパケットに格納できるデータ長は後述する転送モードによって異なるが、例えば６４バイト格納できる。一方、無線パケットには２，３１２バイト格納できる。従って、第一のＵＳＢバスインタフェース１３から複数のデータパケットを受信するのを待ってそれら複数のデータパケットに格納されている送信対象データを一つの転送データに格納して無線通信プロセス５２に出力することも可能である。ただし、第一実施例の第一のＵＳＢ通信プロセス５１は第一のＵＳＢバスインタフェース１３から一つのデータパケットを受信する度に送信対象データを転送データに格納して無線通信プロセス５２に出力する。逆に無線通信プロセス５２から転送データが出力される毎に当該転送データから送信対象データを取り出してデータパケットに格納して第一のＵＳＢバスインタフェース１３に出力する。尚、第一のＵＳＢバスインタフェース１３から複数のデータパケットを受信する毎に一つの転送データを無線通信プロセス５２に出力するようにした場合には、第一の中継装置１の無線通信プロセス５２から出力された転送データに格納されている送信対象データを複数のデータパケットに分解して第一のＵＳＢバスインタフェース１３に出力することになる。この他、第一のＵＳＢ通信プロセス５１は第一の中継装置１と第二の中継装置２との通信の制御なども行う。
【００２３】
第二のＵＳＢ通信プロセス５３は、ＵＳＢで規定されているＵＳＢ論理デバイスとしてＵＳＢプロトコルによる通信を制御するプロセスである。第二のＵＳＢ通信プロセス５３も第一のＵＳＢ通信プロセス５１と同様に第二のＵＳＢバスインタフェース２３と第二の無線ＬＡＮインタフェース２２との間で送信対象データを転送する。また、第一のＵＳＢ通信プロセス５１と同様に第一の中継装置１と第二の中継装置２との通信の制御なども行う。
【００２４】
無線通信プロセス５２は、無線ＬＡＮプロトコルで規定されている物理層より上位の層が実装されているプロセスであり、第一の無線ＬＡＮインタフェース１２及び第二の無線ＬＡＮインタフェース２２を制御するプロセスである。無線通信プロセス５２は他方の中継装置から無線パケットを受信した場合、当該無線パケットに格納されている２，３１２バイトのデータのうち先頭の有意なデータのみを第一のＵＳＢ通信プロセス５１又は第二のＵＳＢ通信プロセス５３に出力する。また、第一のＵＳＢ通信プロセス５１又は第二のＵＳＢ通信プロセス５３から転送データ又は後述する通信制御データが出力されると、当該転送データ又は後述する通信制御データを無線パケットに格納して第一の無線ＬＡＮインタフェース１２又は第二の無線ＬＡＮインタフェース２２から無線送信する。
【００２５】
次にデータ中継システムの作動について説明する。
図４は、データ中継システムの作動の流れを模式的に示すシーケンスチャートである。尚、図中の（ａ）は当該データが通信制御データであることを意味し、（ｂ）は当該データが転送データであることを意味している。転送データ及び通信制御データについては後述する。
【００２６】
Ｓ１０５では、第一の中継装置１と第二の中継装置２との無線接続を確立する。具体的には、第一の中継装置１の無線通信プロセス５２は、電源が投入されて実行が開始されると始めに第一の無線ＬＡＮインタフェース１２のイニシャライズを行う。同様に第二の中継装置２の無線通信プロセス５２は第二の無線ＬＡＮインタフェース２２のイニシャライズを行う。次に、ＩＰアドレスで特定される相手との無線接続を周期的に試みる。電源が先に投入された側の中継装置の無線通信プロセス５２は周期的に接続を問い合わせ、後で電源が投入された側の中継装置の無線通信プロセス５２がその問い合わせに応答することで接続が開始され無線接続が確立される。
【００２７】
Ｓ１１０では、ＵＳＢデバイス４と第一の中継装置１との接続を確立する。具体的には、第一のＵＳＢ通信プロセス５１はＵＳＢデバイス４に当該ＵＳＢデバイス４の固有情報の送信を要求し、受信した固有情報に基づいて接続を確立する。この固有情報には、デバイスディスクリプタ（クラス、ベンダＩＤ、製造社名、製品名など）、コンフィギュレーションディスクリプタ（インタフェースの数、電源利用形態など）、インタフェースディスクリプタ（インタフェースの識別番号、代替インタフェースの識別番号、クラス、サブクラス、プロトコルなど）、エンドポイントディスクリプタ（エンドポイント番号、転送タイプ、最大パケットサイズ、ポーリング間隔など）、及びストリングディスクリプタ（タイプ、ストリングなど）などの情報が含まれている。これらは全てＵＳＢで規定されている情報であるため詳細な説明は省略する。接続の確立では、固有情報に基づいて通信条件の設定が行われる。
【００２８】
通信条件の設定では、各転送モードにエンドポイントを割り当てる処理などが行われる。ＵＳＢではデータは所定データ長に分割され、複数のパケットに格納されて送信される。パケットはエンドポイントと呼ばれるＦＩＦＯバッファを介して送受信される。エンドポイントは複数備えることができる。ＵＳＢデバイス４に複数のエンドポイントがあるとき、第一のＵＳＢ通信プロセス５１はＵＳＢデバイス４の固有情報によりＵＳＢデバイス４のエンドポイント番号を取得し、どのエンドポイントを転送に用いるかを決定する。例えば４番のエンドポイントを転送に用いるエンドポイントの一つとして決定した場合、ＵＳＢデバイス４の４番のエンドポイントと第一のＵＳＢバスインタフェース１３の４番のエンドポイントとによりパイプと呼ばれる一方向の論理的な通信経路が確立される。尚、一つのパイプを双方向に用いることも可能である。ＵＳＢにはバルク転送モード、アイソクロナス転送モード、インタラプト転送モード、及びコントロール転送モードの４つの転送モードが規定されており、どの転送モードで転送を行うかはＵＳＢデバイス４の固有情報に基づいて決定される。ＵＳＢでは複数の転送モードで送受信を行うことができ、複数の転送モードで送受信を行う場合、各転送モードに異なるパイプを割り当てる。これにより各転送モードにエンドポイントを割り当てる。例えばバルク転送用ＯＵＴ転送には１番のエンドポイント、バルク転送用ＩＮ転送には２番のエンドポイントなどのように割り当てる。ここで”ＯＵＴ転送”はＵＳＢホストからＵＳＢデバイスへの転送を意味し、”ＩＮ転送”はＵＳＢデバイスからＵＳＢホストへの転送を意味している。
【００２９】
Ｓ１１５では、ＵＳＢデバイス４の固有情報を第二のＵＳＢ通信プロセス５３に送信する。これは、第二のＵＳＢバスインタフェース２３とＵＳＢホスト３との間の論理的な通信条件が、第一のＵＳＢバスインタフェース１３とＵＳＢデバイス４との間の論理的な通信条件と同じ通信条件に設定されるようにするためである。第一のＵＳＢ通信プロセス５１は、固有情報を後述する通信制御データに格納して無線通信プロセス５２に出力する。この情報は無線を介して第二のＵＳＢ通信プロセス５３に出力する。
【００３０】
Ｓ１２０では、第二のＵＳＢバスインタフェース２３とＵＳＢホスト３との接続を確立する。第二のＵＳＢバスインタフェース２３とＵＳＢホスト３との接続の確立は、第一の中継装置１から受信した固有情報に基づいて行われる。具体的には、第二のＵＳＢ通信プロセス５３は、ＵＳＢホスト３との接続の確立の際にＵＳＢホスト３から固有情報を要求されると、第一の中継装置１から受信した固有情報をＵＳＢホスト３に送信する。すなわち、ＵＳＢホスト３に対してあたかもＵＳＢデバイス４と直に接続の確立を行っているかのように見せかける。例えば第一のＵＳＢバスインタフェース１３とＵＳＢデバイス４との間で転送モードとしてコントロール転送とバルク転送とが決定され、コントロール転送に一つのパイプが割り当てられ、バルク転送に２つのパイプが割り当てられたとする。この場合、同じ固有情報に基づいて設定を行うことにより第二のＵＳＢバスインタフェース２３とＵＳＢホスト３との間でも転送モードとしてコントロール転送とバルク転送とが決定され、コントロール転送に一つのパイプが割り当てられ、バルク転送に２つのパイプが割り当てられることになる。すなわち、ＵＳＢデバイス４とＵＳＢホスト３とは直に接続を確立した場合の論理的な通信条件と同じ論理的な通信条件が設定されることになる。この結果ＵＳＢデバイス４とＵＳＢホスト３との間で通信条件の整合がとれ、両者間の通信が可能となる。
【００３１】
Ｓ１２５では、第二の中継装置２のエンドポイントと第一の中継装置１のエンドポイントとの対応付けを行う。ＵＳＢ通信プロセスは第二の中継装置２のエンドポイントと、第一の中継装置１のエンドポイントとを無線上の論理リンク（無線論理リンク）に対応付けることによって間接的に対応付ける。具体的には、第一のＵＳＢ通信プロセス５１はエンドポイントを一意に識別するためのエンドポイント番号、転送モード、データが流れる方向（データ方向）を制御情報として無線論理リンクに対応付け、それを第二の中継装置２に送信する。第二のＵＳＢ通信プロセス５３は受信した制御情報と無線論理リンク番号とを第二のＵＳＢバスインタフェース２３のエンドポイントと対応付ける。これにより両者間で無線論理リンクを介してエンドポイントの対応付けが行われる。
【００３２】
図５は無線論理リンクを介したエンドポイントの対応付けを説明するための模式図であり、図６は無線論理リンクを介して対応付けられたエンドポイントを表形式で示す模式図である。図５に示す例の場合、ＵＳＢホストと第二の中継装置２との間のバルク転送用ＯＵＴ転送に割り当てられた２番のエンドポイント（ＥＰ：２）は、図６に示すようにそのエンドポイント番号”２”が、転送モード”バルク転送”、データ方向”ＯＵＴ”とともに無線論理リンクを一意に識別するための無線論理リンク番号”１０”に対応付けられている。またＵＳＢデバイス４と第一の中継装置１との間のバルク転送用ＯＵＴ転送に割り当てられた１番のエンドポイント（ＥＰ：１）も同様にして無線論理リンク番号”１０”に対応付けられている。この結果、ＵＳＢホスト３のエンドポイント２とＵＳＢデバイス４のエンドポイント１とが無線論理リンク（ＬＣ：１０）を介して対応付けられる。この結果、例えばＵＳＢホスト３の２番のバルク転送用ＯＵＴ転送のエンドポイントに格納されたＵＳＢパケットは常にＵＳＢデバイス４の１番のバルク転送用ＯＵＴ転送のエンドポイントに格納される等のように、ＵＳＢホスト３とＵＳＢデバイス４との間の仮想的なパイプが実現される。尚、無線論理リンクを介したエンドポイントの対応付けは無線通信プロセス５２も参照可能に記憶されるものとする。
【００３３】
Ｓ１３０では、ユーザは印刷を指示する。具体的には例えばユーザはディジタルカメラでディジタル画像を指定して印刷を指示する。尚、印刷指示をトリガーとしてＶｂｕｓ電源のＯＮ信号などを利用して図４のシーケンスを開始しても構わない。
Ｓ１３５では、ディジタルカメラは指定されたディジタル画像を送信対象データとし、分割して複数のデータパケットに格納して第二の中継装置２に出力する。
【００３４】
Ｓ１４０では、第二のＵＳＢ通信プロセス５３は、第二のＵＳＢバスインタフェース２３から出力されたパケットがデータパケットであるか否かを識別し、データパケットでなければＵＳＢプロトコルに従ってＵＳＢホスト３との間の通信制御を行う。一方、データパケットであれば、当該データパケットに格納されている送信対象データを取り出してエンドポイント番号と共に転送データを無線通信プロセス５２に出力する。無線通信プロセス５２は出力された全ての転送データをその意味を解釈することなく、エンドポイントに対応する無線論理リンク番号を転送データのヘッダに付して無線パケットとして第一の無線ＬＡＮインタフェース１２に出力する。尚、無線論理リンク番号を転送データのヘッダに格納する処理はＵＳＢ通信プロセスが行うようにしてもよい。
【００３５】
Ｓ１４５では、第一の中継装置１の無線通信プロセス５２は受信した無線パケットから転送データを取り出して第一のＵＳＢ通信プロセス５１に出力する。第一のＵＳＢ通信プロセス５１は、当該転送データに格納されている送信対象データを、当該転送データのヘッダ情報に格納されている無線論理リンク番号に対応するエンドポイントを指定して第一のＵＳＢバスインタフェース１３に出力する。これにより送信対象データがＵＳＢホスト３からＵＳＢデバイス４に送信される。
【００３６】
Ｓ１５０〜Ｓ１６０では、応答状態通知を表す送信対象データをデータパケットに格納してＵＳＢホスト３に送信する。
上述したＳ１３５〜Ｓ１６０までの処理を、ディジタル画像の送信が完了するまで必要な回数繰り返す。
Ｓ１６５では、プリンタは分割された送信対象データを全て、もしくは数行分を受信すると、その送信対象データに基づいてディジタル画像を印刷する。
【００３７】
無線通信では電波の状況によって再送もあり得るため、上記の通信の過程で再送が生じた場合、第二の中継装置２の無線通信プロセス５２は第二のＵＳＢ通信プロセス５３に再送が終了するまでデータを出力しないよう通知し、第二のＵＳＢ通信プロセス５３はその間に第二のＵＳＢバスインタフェース２３から出力されるデータをワークメモリ２２ｂに格納すると共に、ＵＳＢホスト３にビジー通知を行う。受信可能となるとそれを解除する。このため、無線通信で再送が生じたとしても、データが失われることなく正常な転送を行うことができる。このことは第一の中継装置１についても同様である。
【００３８】
以上、中継制御プログラムの処理の流れについて説明した。次に、第一のＵＳＢ通信プロセス５１と第二のＵＳＢ通信プロセス５３との間で送受信されるデータについて説明する。
第一のＵＳＢ通信プロセス５１と第二のＵＳＢ通信プロセス５３との間で送受信されるデータには、送信対象データ、及び固有情報（ＵＳＢ接続制御情報）、並びにエンドポイントの対応付けを行うための制御情報や制御情報に対応付けられている無線論理リンク番号（アダプタ間制御コマンド）などがある。ここでアダプタとは第一の中継装置１及び第二の中継装置２のことをいう。ＵＳＢ通信プロセスは無線通信プロセス５２からデータが出力されると、送信対象データの場合はデータパケットに格納してＵＳＢバスインタフェースに出力し、ＵＳＢ接続制御情報やアダプタ間制御コマンドの場合は意味を解釈して必要な処理を行わなければならない。従って、ＵＳＢ通信プロセスは無線通信プロセス５２から出力されたデータについて、そのデータの種別を識別する必要がある。このため、一方のＵＳＢ通信プロセスは、送信対象データ、ＵＳＢ接続制御情報、及びアダプタ間制御コマンドをそれぞれ所定のフォーマットのデータに格納して他方のＵＳＢ通信プロセスに出力し、それにより他方のＵＳＢ通信プロセスでデータを識別可能にしている。第一実施例では、ＵＳＢ接続制御情報及びアダプタ間制御コマンドは後述する通信制御データに格納され、送信対象データは後述する転送データに格納される。
【００３９】
図７（ａ）は通信制御データのデータフォーマット（通信制御用フォーマット）を示す模式図であり、図７（ｂ）は転送データのデータフォーマット（転送データ用フォーマット）を示す模式図である。
通信制御用フォーマットは、ヘッダ情報とＵＳＢ接続制御情報／無線アダプタ間制御コマンドフィールドとに大きく分かれている。ヘッダ情報は制御種別フィールド、トータル情報長フィールド、コマンド種別フィールド、データ種別フィールド、及び予約エリアフィールドで構成される。制御種別フィールドは当該情報が制御用であることを明示するためのフィールドである。トータル情報長フィールドは当該情報のデータ長が格納されるフィールドである。コマンド種別フィールドは後述するＵＳＢ接続制御情報／無線アダプタ間制御コマンドフィールドに格納される情報がＵＳＢ接続制御情報であるかアダプタ間制御コマンドであるかを識別するための識別子が格納されるフィールドである。データ種別フィールドはＵＳＢ接続制御情報のどのディスクリプタ情報かといった情報やアダプタ間制御コマンドの種別などを判別するための識別子が格納されるフィールドである。予約エリアフィールドは将来の仕様変更に対応するために確保されているフィールドである。ＵＳＢ接続制御情報／無線アダプタ間制御コマンドフィールドは、ＵＳＢ接続制御情報又はアダプタ間制御コマンドのいずれか一方が格納されるフィールドである。
【００４０】
転送データ用フォーマットは、ヘッダ情報とユーザデータフィールドとに大きく分かれている。ヘッダ情報はデータ種別フィールド、トータル情報長フィールド、転送タイプ、チャネル識別フィールド、及び予約エリアで構成される。データ種別フィールドは当該情報がデータ転送用であることを明示するための識別子が格納されるフィールドである。トータル情報長フィールドは当該情報のデータ長が格納されるフィールドである。転送タイプフィールドはＵＳＢで設定されているバルク転送モードなどを表す識別子が格納されるフィールドである。このフィールドは優先制御の有／無などに利用される。チャネル識別フィールドは無線論理リンク番号とデータ方向とが格納されるフィールドである。例えば第一の中継装置１がＵＳＢデバイス４からあるパイプを介してデータを受信したとすると、第一のＵＳＢ通信プロセス５１は当該パイプに対応付けられたエンドポイント番号、転送モード、データ方向などの制御情報を無線通信プロセス５２に渡す。これを受けた無線通信プロセス５２は、対応する無線論理リンク番号を割り当てて第二の中継装置２の無線通信プロセス５２に送信する。当該データを第二の中継装置２の無線通信プロセス５２を介して受信した第二のＵＳＢ通信プロセス５３は、チャネル識別フィールドに指定された無線論理リンク番号に対応付けるパイプを制御情報をもとにＵＳＢホスト３との間で構築する。この結果、仮想的なパイプの連結によるデータの送受信が可能となる。ユーザデータフィールドは送信対象データが格納されるフィールドである。
【００４１】
以上説明した本発明の第一実施例に係るデータ中継システムによると、ＵＳＢホスト３とＵＳＢデバイス４とは、ケーブルの一部が無線通信に置き換わっていることを一切意識することなく、ＵＳＢケーブルで接続されている場合と全く同じように通信を行うことができる。このため、ＵＳＢに対応している機器であれば任意の機器を特別な設定や構成の変更を行うことなく無線接続することができる。また、ＵＳＢケーブルを接続する要領で無線接続ができるため、無線接続のために要する手間が小さい。よって第一実施例に係るデータ中継システムによると、ＵＳＢホスト３とＵＳＢデバイス４とを容易に無線接続できる。
【００４２】
また、第一実施例に係るデータ中継システムによると、ＵＳＢデバイス４やＵＳＢホスト３の構成を変更する必要がないため、自由に構成を変更できない機器であっても、あるいは構成を変更することが物理的に不可能な機器であっても、ユーザは無線接続して利用できるという効果もある。
また、データ中継システムによると、ＵＳＢホスト３と第二の中継装置２との間の通信条件をＵＳＢデバイス４の固有情報に基づいて設定できる。ＵＳＢホストと第二の中継装置２との間の通信条件をＵＳＢデバイスの固有情報に基づいて設定できない場合、ＵＳＢホストとＵＳＢデバイスとが通信できるようにするためにはＵＳＢホストと第二の中継装置との間の通信条件を特定のＵＳＢデバイスの固有情報に基づいて予め設定しておく必要がある。この場合、無線接続できるＵＳＢデバイスが特定のＵＳＢデバイスに限定されてしまうことになる。ＵＳＢホストと第二の中継装置２との間の通信条件をＵＳＢデバイスの固有情報に基づいて設定できるようにすると、ＵＳＢデバイスに応じて通信条件を設定できるため、無線接続できるＵＳＢデバイスが限定されなくなる。
【００４３】
（第二実施例）
第二実施例は、第一の中継装置と第二の中継装置とがＵＳＢプロトコルを理解しない場合の例である。尚、第二実施例では第一実施例と実質的に同一の部分には同一の符号を付して説明を省略する。
第二実施例の第一のＵＳＢバスインタフェースは、エンドポイントなどを備えず、電気的、物理的にＵＳＢに対応しているのみである。第二実施例の第一のＵＳＢバスインタフェースは例えばＵＳＢホスト３からＵＳＢパケットが送信されると、そのパケットそのものをディジタル表現のデータに変換してそのまま無線通信プロセス５２に出力する。逆に無線通信プロセス５２からディジタルデータが出力されるとＵＳＢパケットに変換してＵＳＢホスト３に出力する。第二のＵＳＢバスインタフェースについても全く同じである。
【００４４】
図８は、第二実施例の中継制御プログラムのデータフロー図である。第二実施例の第一の中継制御プログラムは、無線通信プロセス５２を第一の中継制御部１１に実行させ、第二の中継制御プログラムは無線通信プロセス５２を第二の中継制御部２１に実行させる。すなわち、第二実施例では第一のＵＳＢ通信プロセス５１や第二のＵＳＢ通信プロセス５３は実行されない。
【００４５】
次に、データ中継システムの作動について説明する。
ＵＳＢホスト３からＵＳＢデバイス４へデータを送信する場合、ＵＳＢホスト３はＵＳＢ接続制御情報や送信対象データをＵＳＢパケットとして第二のＵＳＢバスインタフェースに出力する。第二のＵＳＢバスインタフェース２３はＵＳＢパケットを受信すると、ディジタルデータに変換して無線通信プロセス５２に出力する。無線通信プロセス５２はディジタルデータが出力されると、出力された全ての有意なデータについてそのデータの意味を解釈することなくそのまま送信対象のデータとして扱い、無線パケットに分解して第一の中継装置に無線送信する。ここで有意なデータとは、例えばエラーとなったデータ以外のデータをいう。例えばＵＳＢホスト３から出力されたデータがエラーになった場合、エラーデータは第二のＵＳＢバスインタフェース２３で破棄される。この結果、無線通信プロセス５２には有意なデータのみが出力されることになる。尚、有意なデータを含め全てのデータを出力するようにしてもよい。その場合、有意でないデータはＵＳＢホスト３又はＵＳＢデバイス４のいずれか受信する側の機器で破棄されることになる。第一の中継装置の無線通信プロセス５２は受信した無線パケットからディジタルデータを組み立て、組み立てたディジタルデータをＵＳＢパケットとして第一のＵＳＢバスインタフェース１３に出力する。第一のＵＳＢバスインタフェース１３は出力されたディジタルデータをＵＳＢパケットに変換してＵＳＢデバイス４に出力する。これによりＵＳＢホスト３から送信された全てのＵＳＢパケットがＵＳＢデバイス４で受信されることになる。ＵＳＢデバイス４からＵＳＢホスト３への送信も同じである。
【００４６】
すなわち、第二実施例のデータ中継システムは、ＵＳＢケーブル上に流れる全てのＵＳＢパケットを一方の中継装置でディジタルデータに変換して無線送信し、他方の中継装置で無線受信して再びＵＳＢパケットに変換することにより、ＵＳＢケーブルの一部を無線に置き換えるシステムである。第二実施例のデータ中継システムによると、例えばＵＳＢホスト３から出力された全ての有意なパケットは加工が一切行われることなくそのままＵＳＢデバイス４に送信される。この結果、ＵＳＢホスト３とＵＳＢデバイス４とは、ＵＳＢケーブルの一部が無線通信に置き換わっていることを一切意識することなく、ＵＳＢケーブルで接続されている場合と全く同じように通信を行うことができる。
【００４７】
以上説明した本発明の第二実施例に係るデータ中継システムによると、第一のＵＳＢ通信プロセス５１や第二のＵＳＢ通信プロセス５３が不要になるため、第一実施例に係るデータ中継システムに比べ、第一の中継装置１及び第二の中継装置２の処理を簡素化できる。
尚、無線通信では電波の状況によって再送もあり得るため、無線通信の伝送速度はＵＳＢの伝送速度の２倍以上であることが望ましい。第二実施例の第一の中継装置及び第二の中継装置はＵＳＢパケットが出力されると直ぐにディジタルデータに変換して第一の無線ＬＡＮインタフェース１２又は第二の無線ＬＡＮインタフェース２２に出力する。このため無線通信の伝送速度がＵＳＢの伝送速度より遅いと、無線通信で再送が生じた場合に第一の無線ＬＡＮインタフェース１２又は第二の無線ＬＡＮインタフェース２２はデータをバッファに格納しきれなくなる可能性がある。従って正常な転送ができなくなる。無線通信の伝送速度がＵＳＢの伝送速度の２倍以上であれば、再送が生じても正常な転送を行うことができる。
【図面の簡単な説明】
【図１】本発明の第一実施例に係るデータ中継システムの模式図。
【図２】本発明の第一実施例に係るブロック図。
【図３】本発明の第一実施例に係るデータフロー図。
【図４】本発明の第一実施例に係るシーケンスチャート。
【図５】本発明の第一実施例に係る対応付けを示す模式図。
【図６】本発明の第一実施例に係る対応付けを表形式で示す模式図。
【図７】（Ａ）及び（Ｂ）は本発明の第一実施例に係るデータ構造の模式図。
【図８】本発明の第二実施例に係るデータフロー図。
【符号の説明】
１  第一の中継装置（データ中継システム）、２  第二の中継装置（データ中継システム）、３  ディジタルカメラ（ＵＳＢホスト）、４  プリンタ（ＵＳＢデバイス）、１１  第一の中継制御部（第一の中継制御手段）、１２  第一の無線ＬＡＮインタフェース（第一の無線通信手段）、１３  第一のＵＳＢバスインタフェース（第一のＵＳＢ通信手段）、１３ａ  ＵＳＢホストコントローラ、１３ｃ  コネクタ、２１  第二の中継制御部（第二の中継制御手段）、２２  第二の無線ＬＡＮインタフェース（第二の無線通信手段）、２３  第二のＵＳＢバスインタフェース（第二のＵＳＢ通信手段）、２３ｂ  コネクタ、３１  アップストリームポート、４１  ダウンストリームポート
【図１】
2005044094.tif 000003
【図２】
2005044094.tif 000004
【図３】
2005044094.tif 000005
【図４】
2005044094.tif 000006
【図５】
2005044094.tif 000007
【図６】
2005044094.tif 000008
【図７】
2005044094.tif 000009
【図８】
2005044094.tif 000010