(57)【特許請求の範囲】
【請求項１】
制御装置と、処理装置と、を備えたシステムにおいて、
前記制御装置は、前記制御装置の上位層と下位層との間でのデータ形式の変換を行う変換手段（「制御側変換手段」という）を備え、
前記制御装置と前記処理装置との間に変換装置を備え、
前記制御側変換手段は、前記制御装置の上位層からのデータを受け取って前記制御装置の下位層に対応した形式に変換した上で前記制御装置の下位層に受け渡す手段を備え、
前記制御装置の下位層は、前記制御側変換手段で変換されたデータを受け取って前記変換装置に送出し、
前記変換装置は、前記制御装置の下位層からのデータを受け取り、前記処理装置側のインタフェースに対応した形式に変換した上で前記処理装置に送出する手段を備えている、ことを特徴とするデータ転送システム。
【請求項２】
制御装置と、処理装置と、を備えたシステムにおいて、
前記制御装置は、前記制御装置の上位層と下位層との間でのデータ形式の変換を行う変換手段（「制御側変換手段」という）を備え、
前記制御装置と前記処理装置との間に変換装置を備え、
前記変換装置は、前記処理装置からのデータを受け取り前記制御装置の下位層側のインタフェースに対応した形式に変換した上で前記制御装置に送出する手段を備え、
前記制御装置の下位層は、前記変換装置からのデータを受け取って前記制御側変換手段に供給し、
前記制御側変換手段は、前記制御装置の下位層からのデータを受け取って前記制御装置の上位層に対応した形式に変換した上で前記制御装置の上位層に受け渡す手段を備えている、ことを特徴とするデータ転送システム。
【請求項３】
制御装置と、処理装置と、を備えたシステムにおいて、
前記制御装置は、前記制御装置の上位層と下位層との間でのデータ形式の変換を行う変換手段（「制御側変換手段」という）を備え、
前記制御装置と前記処理装置との間に変換装置を備え、
前記制御側変換手段は、
前記制御装置の上位層からのデータを受け取って前記制御装置の下位層に対応した形式に変換した上で前記制御装置の下位層に受け渡す手段と、
前記制御装置の下位層からのデータを受け取って前記制御装置の上位層に対応した形式に変換した上で前記制御装置の上位層に受け渡す手段と、
を備え、
前記制御装置の下位層は、
前記制御側変換手段で変換されたデータを受け取って前記変換装置に送出する手段と、
前記変換装置から送出されたデータを受け取って前記制御側変換手段に供給する手段と、
を備え、
前記変換装置は、
前記制御装置の下位層から転送されたデータを受け取って前記処理装置側のインタフェースに対応した形式に変換した上で前記処理装置に送出する手段と、
前記処理装置から転送されたデータを前記制御装置の下位層側のインタフェースに対応した形式に変換した上で前記制御装置に送出する手段と、
を備えている、ことを特徴とするデータ転送システム。
【請求項４】
前記制御装置の上位層が、ユーザインタフェースを担うアプリケーションを有し、
前記ユーザからの動作指示を入力した前記アプリケーションにより、前記制御装置から、前記変換装置を介して、前記処理装置の動作が制御される、ことを特徴とする請求項１乃至３のいずれか一に記載のデータ転送システム。
【請求項５】
前記制御装置の下位層が、物理層を含むバス制御ハードウエアと、前記バス制御ハードウエアを制御するソフトウエアよりなるバス制御ドライバと、を有し、
前記制御装置の上位層が、プロトコル制御を行うミドルウエアと、ユーザインタフェースを担うアプリケーションと、を有し、
前記制御側変換手段は、前記ミドルウエアと前記バス制御ドライバとの間において、前記制御装置の上位層と下位層のインタフェース間のプロトコル変換処理を行う変換モジュールよりなる、ことを特徴とする請求項１乃至３のいずれか一に記載のデータ転送システム。
【請求項６】
前記変換装置は、前記制御装置の下位層と、前記処理装置のそれぞれに伝送手段を介して接続されるバス制御ハードウエアと、
前記バス制御ハードウエアを制御するソフトウエアよりなるバス制御ドライバと、を有し、さらに、
前記制御装置の下位層と前記処理装置のインタフェースとの間のプロトコル変換を行う変換手段を備えている、ことを特徴とする請求項１乃至５のいずれか一に記載のデータ転送システム。
【請求項７】
前記制御側変換手段は、前記制御装置の上位層からのパケットを受け取り、前記制御装置の下位層に対応するヘッダを付加したパケットを作成して、前記制御装置の下位層に供給する手段を備え、
前記変換装置は、前記制御装置の下位層から転送されたパケットを受け取り、前記パケットから前記制御側変換手段で付加されたヘッダを除去し、前記制御装置の上位層のモジュールが出力した形式に変換する手段と、
前記変換されたパケットデータを前記処理装置に供給する手段と、
を備えている、ことを特徴とする請求項１乃至６のいずれか一に記載のデータ転送システム。
【請求項８】
前記変換装置は、前記処理装置から転送されたパケットに対して前記制御装置の下位層に対応したヘッダを付加する手段と、
前記ヘッダが付加されたパケットを前記制御装置の下位層に供給する手段と、
を備え、
前記制御装置の下位層は、前記変換装置から転送されたパケットを前記制御側変換手段に受け渡す手段を備え、
前記制御側変換手段は、前記制御装置の下位層からのパケットから前記付加されたヘッダを除去したパケットデータを、前記制御装置の上位層に供給する手段を備えている、ことを特徴とする請求項１乃至７のいずれか一に記載のデータ転送システム。
【請求項９】
前記制御装置の下位層が、ＵＳＢ（ユニバーサルシリアルバス）とＩＥＥＥ１３９４インタフェースのうちのいずれか一方とされ、前記処理装置のインタフェースがＵＳＢ（ユニバーサルシリアルバス）とＩＥＥＥ１３９４インタフェースのうちの他方とされ、
前記変換モジュールは、ＩＥＥＥ１３９４とＵＳＢとの間のプロトコル変換を行う、ことを特徴とする請求項１乃至８のいずれか一に記載のデータ転送システム。
【請求項１０】
前記制御装置は、発行された命令とその飛び先との対応を規定した命令発行テーブルとして、前記ミドルウエアから前記変換モジュールへの制御の移行を規定する第１の命令発行テーブルと、前記変換モジュールから前記バス制御ドライバへの制御の移行を規定する第２の命令発行テーブルと、を備えている、ことを特徴とする請求項５記載のデータ転送システム。
【請求項１１】
制御装置と、処理装置と、を備えたシステムのデータ転送方法において、
前記制御装置の上位層と下位層との間でのデータ形式の変換を行う変換モジュールを前記制御装置に設け、
前記制御装置と前記処理装置との間に変換装置を配し、
前記制御装置の前記変換モジュールが、前記制御装置の上位層からのデータを受け取って前記制御装置の下位層に対応した形式に変換した上で前記制御装置の下位層に受け渡すステップと、
前記制御装置の下位層が、前記変換モジュールからのデータを受け取って前記変換装置に送出するステップと、
前記変換装置が、前記制御装置の下位層から転送されたデータを受け取り、前記処理装置側のインタフェースに対応した形式に変換した上で前記処理装置に送出するステップと、
を含む、ことを特徴とするデータ転送方法。
【請求項１２】
制御装置と、処理装置と、を備えたシステムのデータ転送方法において、
前記制御装置の上位層と下位層との間でのデータ形式の変換を行う変換モジュールを前記制御装置に設け、
前記制御装置と前記処理装置との間に変換装置を配し、
前記変換装置が、前記処理装置から転送されたデータを受け取り前記制御装置の下位層側のインタフェースに対応した形式に変換した上で前記制御装置に送出するステップと、
前記制御装置の下位層が、前記変換装置からのデータを受け取って前記変換モジュールに供給するステップと、
前記制御装置の前記変換モジュールが、前記制御装置の下位層からのデータを受け取り、前記制御装置の上位層に対応した形式に変換した上で前記制御装置の上位層に受け渡すステップと、
を含む、ことを特徴とするデータ転送方法。
【請求項１３】
制御装置と、処理装置と、を備えたシステムのデータ転送方法において、
前記制御装置の上位層と下位層との間でのデータ形式の変換を行う変換モジュールを前記制御装置に設け、
前記制御装置と前記処理装置との間に変換装置を配し、
前記制御装置の前記変換モジュールが、前記制御装置の上位層からのデータを受け取って前記制御装置の下位層に対応した形式に変換した上で前記制御装置の下位層に受け渡すステップと、
前記制御装置の下位層が、前記変換モジュールで変換されたデータを受け取って前記変換装置に送出するステップと、
前記変換装置が、前記制御装置の下位層から転送されたデータを受け取って前記処理装置側のインタフェースに対応した形式に変換した上で前記処理装置に送出するステップと、
前記変換装置が、前記処理装置から転送されたデータを受け取って前記制御装置の下位層のインタフェースに対応した形式に変換した上で前記処理装置に送出するステップと、
前記制御装置の下位層が、前記変換装置から転送されたデータを受け取って前記変換モジュールに供給するステップと、
前記制御装置の前記変換モジュールが、前記制御装置の下位層からのデータを受け取って前記制御装置の上位層に対応した形式に変換した上で前記制御装置の上位層に受け渡すステップと、
を含む、ことを特徴とするデータ転送方法。
【請求項１４】
前記制御装置の下位層が、物理層を含むバス制御ハードウエアと、前記バス制御ハードウエアを制御するソフトウエアよりなるバス制御ドライバと、を有し、
前記制御装置の上位層が、プロトコル制御を行うミドルウエアと、ユーザインタフェースを担うアプリケーションと、を有し、前記ユーザからの動作指示を入力した前記アプリケーションにより、前記制御装置から、前記変換装置を介して、前記処理装置の動作が制御され、
前記変換モジュールは、前記ミドルウエアと前記バス制御ドライバとの間で、前記制御装置の上位層と下位層のインタフェース間のプロトコル変換を行う、ことを特徴とする請求項１１乃至１３のいずれか一に記載のデータ転送方法。
【請求項１５】
前記変換装置は、前記制御装置の下位層と前記処理装置とそれぞれに伝送手段を介して接続されるバス制御ハードウエアと、前記バス制御ハードウエアを制御するソフトウエアよりなるバス制御ドライバと、変換モジュールと、を有し、
前記変換装置の変換モジュールが、前記制御装置の下位層と前記処理装置のインタフェースとの間のプロトコル変換を行う、ことを特徴とする請求項１１乃至１４のいずれか一に記載のデータ転送方法。
【請求項１６】
前記変換モジュールが、前記制御装置の上位層からのパケットを受け取り、前記制御装置の下位層に対応するヘッダを付加したパケットを作成して、前記制御装置の下位層に供給するステップと、
前記変換装置が、前記制御装置の下位層から転送されたパケットを受け取り、前記パケットから前記変換モジュールで付加されたヘッダを除去し、前記制御装置の上位層のモジュールが出力した形式に変換するステップと、
前記変換装置が、前記変換されたパケットデータを前記処理装置に供給するステップと、
を含む、ことを特徴とする請求項１１乃至１５のいずれか一に記載のデータ転送方法。
【請求項１７】
前記変換装置が、前記処理装置から転送されたパケットに対して前記制御装置の下位層に対応したヘッダを付加するステップと、
前記変換装置が、前記ヘッダが付加されたパケットを前記制御装置の下位層に供給するステップと、
前記制御装置の下位層は、前記変換装置から転送されたパケットを前記変換モジュールに受け渡すステップと、
前記変換モジュールは、前記制御装置の下位層からのパケットから前記付加されたヘッダを除去したパケットデータを、前記制御装置の上位層に供給するステップと、
を含む、ことを特徴とする請求項１１乃至１６のいずれか一に記載の記載のデータ転送方法。
【請求項１８】
前記制御装置の下位層が、ＵＳＢ（ユニバーサルシリアルバス）とＩＥＥＥ１３９４インタフェースのうちいずれか一方とされ、前記処理装置のインタフェースがＵＳＢ（ユニバーサルシリアルバス）とＩＥＥＥ１３９４インタフェースのうちの他方とされ、前記変換モジュールは、ＩＥＥＥ１３９４とＵＳＢとの間のプロトコル変換を行う、ことを特徴とする請求項１１乃至１７のいずれか一に記載のデータ転送方法。
【請求項１９】
発行された命令とその飛び先との対応を規定した命令発行テーブルとして、前記ミドルウエアから前記変換モジュールへの制御の移行を規定する命令発行テーブルと、前記変換モジュールから前記バス制御ドライバへの制御の移行を規定する命令発行テーブルと、を介して、前記制御装置における、前記ミドルウエアと前記変換モジュール、及び前記変換モジュールと前記バス制御ドライバ間の制御の移行が行われる、ことを特徴とする請求項１４記載のデータ転送方法。
【請求項２０】
処理装置と変換装置を介して接続する制御装置であって、
前記変換装置は、前記制御装置の下位層から受け渡されたデータを、前記処理装置側のインタフェースに対応した形式に変換した上で前記処理装置に送出し、
前記制御装置は、ユーザインタフェースを担うアプリケーションを含む前記制御装置の上位層と、前記制御装置の下位層との間でのデータ形式の変換を行う変換手段を備え、
前記制御装置の前記変換手段は、前記制御装置の上位層からのデータを受け取って前記制御装置の下位層互換の形式に変換した上で、前記制御装置の下位層に受け渡す手段を備え、
前記制御装置の下位層は、前記制御装置の前記変換手段からのデータを前記変換装置に送出する手段を備えている、ことを特徴とする制御装置。
【請求項２１】
処理装置と変換装置を介して接続する制御装置であって、
前記変換装置は、前記処理装置から転送されたデータを前記制御装置の下位層のインタフェースに対応した形式に変換した上で前記制御装置に送出し、
前記制御装置は、ユーザインタフェースを担うアプリケーションを含む前記制御装置の上位層と、前記制御装置の下位層との間でのデータ形式の変換を行う変換手段を備え、
前記制御装置の下位層は、前記変換装置から転送されたデータを受け取って前記変換手段に供給する手段を備え、
前記制御装置の前記変換手段は、前記制御装置の下位層からのデータを、前記制御装置の上位層に対応した形式に変換した上で前記制御装置の前記上位層に受け渡す手段を備えている、ことを特徴とする制御装置。
【請求項２２】
処理装置と変換装置を介して接続する制御装置であって、
前記変換装置は、前記制御装置の下位層から転送されたデータを、前記処理装置側のインタフェースに対応した形式に変換した上で前記処理装置に送出するとともに、前記処理装置からのデータを前記制御装置の下位層のインタフェースに対応した形式に変換した上で前記制御装置に送出し、
前記制御装置は、ユーザインタフェースを担うアプリケーションを含む前記制御装置の上位層と、前記制御装置の下位層との間でのデータ形式の変換を行う変換手段を備え、
前記制御装置の前記変換手段は、前記制御装置の上位層からのデータを受け取って前記制御装置の下位層互換の形式に変換した上で、前記制御装置の下位層に受け渡す手段と、
前記制御装置の下位層からのデータを、前記制御装置の上位層に対応した形式に変換した上で、前記制御装置の前記上位層に受け渡す手段と、
を備え、
前記制御装置の下位層は、前記制御装置の前記変換手段で変換されたデータを受け取って前記変換装置に送出するとともに、前記変換装置から転送されたデータを受け取って前記制御装置の前記変換手段に供給する手段を備えている、ことを特徴とする制御装置。
【請求項２３】
請求項２０乃至２２のいずれか一に記載の前記制御装置に接続される変換装置であって、
前記変換装置は、前記制御装置の下位層からのデータを、前記処理装置側のインタフェースに対応した形式に変換した上で前記処理装置に送出するとともに、前記処理装置から転送されたデータを前記制御装置の下位層のインタフェースに対応した形式に変換した上で前記制御装置に送出する手段を備えた変換装置。
【請求項２４】
処理装置と変換装置を介して接続する制御装置を構成するコンピュータに実行させるプログラムであって、
前記変換装置は、前記制御装置の下位層から受け渡されたデータを、前記処理装置側のインタフェースに対応した形式に変換した上で前記処理装置に送出し、
前記制御装置は、ユーザインタフェースを担うアプリケーションを含む前記制御装置の上位層と、前記制御装置の下位層との間でのデータ形式の変換を行う変換モジュールを有し、
前記変換モジュールにおける、前記制御装置の上位層からのデータを受け取って前記制御装置の下位層に対応した形式に変換した上で前記制御装置の下位層に受け渡す処理と、
前記制御装置の下位層における、前記変換モジュールからのデータを受け取り前記変換装置に受け渡す処理と、
を前記制御装置を構成するコンピュータに実行させるプログラム。
【請求項２５】
処理装置と変換装置を介して接続する制御装置を構成するコンピュータに実行させるプログラムであって、
前記変換装置は、前記処理装置からのデータを前記制御装置の下位層のインタフェースに対応した形式に変換した上で前記制御装置に送出し、
前記制御装置は、ユーザインタフェースを担うアプリケーションを含む前記制御装置の上位層と、前記制御装置の下位層との間でのデータ形式の変換を行う変換モジュールを備え、
前記制御装置の下位層における、前記変換装置からのデータを受け取って前記変換モジュールに供給する処理と、
前記制御装置の前記変換モジュールにおける、前記制御装置の下位層からのデータを前記制御装置の上位層に対応した形式に変換した上で前記制御装置の前記上位層に受け渡す処理と、
を前記制御装置を構成するコンピュータに実行させるプログラム。
【請求項２６】
請求項２４記載の前記制御装置と、前記処理装置との間に接続される前記変換装置を構成するコンピュータに実行させるプログラムであって、
前記制御装置の下位層から転送されたデータを前記処理装置側のインタフェースに対応した形式に変換した上で前記処理装置に送出する処理を、前記変換装置を構成するコンピュータに実行させるプログラム。
【請求項２７】
請求項２５記載の前記制御装置と、前記処理装置との間に接続される前記変換装置を構成するコンピュータに実行させるプログラムであって、
前記処理装置からのデータを前記制御装置の下位層のインタフェースに対応した形式に変換した上で前記制御装置に送出する処理を、前記変換装置を構成するコンピュータに実行させるプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、データ転送方法とシステム及び装置ならびにコンピュータに処理を実行させるためのプログラムに関し、特に、パソコンなどの制御装置と周辺装置などの処理装置との接続技術に関する。
【０００２】
【従来の技術】
パーソナルコンピュータ（「ＰＣ」という）、プリンタ、スキャナなどのＰＣ周辺機器、デジタルビデオディスク（「ＤＶＤ」という）、デジタルビデオカメラ（「ＤＶカメラ」という）などを相互に接続するためのインタフェースとして、ＩＥＥＥ１３９４（IEEE Standard for a High Performance Serial Bus）とＵＳＢ（Universal Serial Bus：ＵＳＢ１．１、ＵＳＢ２．０）が用いられている。本明細書では、ＰＣを制御装置、上記のその他の機器を処理装置という。
【０００３】
図７は、制御装置と処理装置を備えた従来のシステムの構成の一例を模式的に示す図である。図７に示すように、処理装置７２を制御する制御装置７１は、バス制御ハードウエア７１４、バス制御ドライバ７１３、プロトコル制御等を行うミドルウエア７１２、アプリケーションプログラム（「アプリケーション」、「ＡＰ」ともいう）７１１を備え、処理装置７２は、バス制御ハードウエア７２１、バス制御ドライバ７２２、プロトコル制御等を行うミドルウエア７２３、処理制御部（あるいはアプリケーション）７２４を備えている。このように、制御装置７１は、処理装置７２のもつハードウエアインタフェース（「ＨＷインタフェース」ともいう）と同一のハードウェアインタフェースを具備する必要がある。
【０００４】
図７において、バス制御ハードウエア７３４、バス制御ドライバ７３３、プロトコル制御を行うミドルウエア７３２、アプリケーション７３１を備えた制御装置７３は、処理装置７２とは別のハードウェアインタフェースをもつ。
【０００５】
図７に示した従来のシステムにおいては、ユーザからの処理装置７２へのリモート動作指示が行われた時、制御装置７１のアプリケーション７１１、ミドルウエア７１２、バス制御ドライバ７１３、バス制御ハードウェア７１４の順で制御の受け渡しが行われ、伝送ライン等よりなるインタフェース７５を介して処理装置７２に伝わり、処理装置７２のバス制御ハードウェア７２１、バス制御ドライバ７２２、ミドルウエア７２３、処理制御７２４という処理シーケンスの経路（ルート）で伝わる。処理装置７２からの応答（レスポンス）は、逆のルートで伝わる。
【０００６】
制御装置７１において、上位層（上位部）をなすアプリケーション７１１とミドルウエア７１２はそのままにして、下位層（下位部）を、それまでとは別のインタフェースに変更した場合、すなわち、制御装置７１の上位層であるアプリケーション７１１、ミドルウエア７１２は、制御装置７３側の上位層であるアプリケーション７３１、ミドルウエア７３２と同一とし、制御装置７１の下位層をなすバス制御ドライバ７１３、バス制御ハードウェア７１４を、制御装置７３のバス制御ドライバ７３３、バス制御ハードウェア７３４に変更した場合、制御装置７３は、処理装置７２と接続できない。１つの具体例として、処理装置７２がＩＥＥＥ１３９４インタフェースを持つＤＶカメラである場合、ＤＶカメラと接続するＰＣ（制御装置７１）は、１３９４インタフェースをもつものでなければならず、ＵＳＢインタフェースしか具備せずＩＥＥＥ１３９４インタフェースを具備しないＰＣ（例えば制御装置７３）は、ＤＶカメラと接続できない。
【０００７】
例えば特開２００１−１３６５８８号公報には、ＩＥＥＥ１３９４又はＵＳＢインタフェースを備え、機能や装置の追加を簡単にこなし、処理装置を確実に操作するリモートコントロールシステムとして、制御装置と処理装置はＩＥＥＥ１３９４又はＵＳＢインタフェースを有し、処理装置は、所定のライン機能を実現するための処理手段と、処理手段の現在の状態を告知する情報を含むユーザインタフェース出力用の情報をＩＥＥＥ１３９４又はＵＳＢインタフェースにしたがって制御装置に送信する手段を備え、制御装置は送信されたユーザインタフェース出力用の情報を出力装置に出力する手段と、処理装置の所定のライン機能を実現するための処理手段をコントロールするための指令を入力する入力手段と、指令をＩＥＥＥ１３９４又はＵＳＢインタフェースにしたがって処理装置に送信する手段を備えた構成が開示されている。この従来のシステムは、制御装置側で処理装置の動作を決定するユーザインタフェースを規定するというものであり、制御装置と処理装置のプロトコルは何等開示されていない。
【０００８】
また、特開平１１−１４５９９５号公報には、バスのリソース獲得方法の異なる複数のバスを接続した場合のリソース獲得及びデータ転送方法として、ＰＣやカメラ、テレビ電話はＵＳＢ機器とし、衛星放送受信機やレコーダはＩＥＥＥ１３９４機器とし、アダプタはＵＳＢとＩＥＥＥ１３９４の仲介をし、ＰＣはＵＳＢでのデータのやりとりのホストの役割をなし、ユーザからの指示があると、ＰＣは、ＩＥＥＥ１３９４の初期設定後、ＵＳＢ機器へのＩｓｏｃｈｒｏｎｏｕｓ転送要求をしたとき、Ｉｓｏｃｈｒｏｎｏｕｓリソースマネージャへ要求を発行して獲得し、アダプタにＵＳＢへのパイプ接続を要求し、成功すると、Ｉｓｏｃｈｒｏｎｏｕｓ転送をはじめ、アダプタは、ＩＥＥＥ１３９４バス上のデータを受信してホスト（ＰＣ）へデータを転送し、あるいはホストはカメラから画像データを受信し、アダプタに送り、アダプタはこれをＩＥＥＥ側に送る構成が開示されている。この従来の方法は、処理装置と制御装置のインタフェースが異なっていても、変換装置を仲介させて、バスリソース管理するものである。
【０００９】
しかしながら、制御装置側、特に、ＰＣは、上位層（ＡＰとミドルウエアを含めた層）と、下位層（物理層を含むバス制御ハードウェアと、このハードウエアを制御するバス制御ドライバを含めた層）に２分されており、下位層が、ＩＥＥＥ１３９４インタフェースからＵＳＢインタフェースに変更されたＰＣの場合、上位層は、該インタフェースの変更に伴う変更ができない。後の説明で明らかとされるように、本発明は、制御装置をなすＰＣにおいて、下位層が１３９４インタフェースではなくＵＳＢインタフェースを搭載したＰＣであっても、上位層のアプリケーション（ＡＰ）とミドルウエアを含めた層を変更なく使用するシステムにおいて、上記ＩＥＥＥ１３９４インタフェース搭載のＤＶカメラを接続できるようにしている。
【００１０】
【発明が解決しようとする課題】
上記したように、ＰＣなどの制御装置とＰＣ周辺装置などの処理装置を接続するには、両装置で共通のハードウェアインタフェースを具備する必要があり、また共通のプロトコル制御を実装することで接続が行われる。例えば、ＵＳＢインタフェースを持つＰＣは、ＵＳＢインタフェースをもつデジタルカメラ装置と、ＰＣとデジタルカメラ装置の両方が動作できるプロトコル制御を実装することで接続することができる。しかし、このＰＣは、ＩＥＥＥ１３９４インタフェースを持つデジタルカメラとは物理的に接続できない。
【００１１】
現今のＤＶカメラはＩＥＥＥ１３９４インタフェースを持つものが多い。しかしながら、今後高速なＬＡＮ（ローカルエリアネットワーク）やＵＳＢの出現により、ＰＣ側がＩＥＥＥ１３９４インタフェースを具備せず、ＬＡＮやＵＳＢ等のインタフェースのみを具備するということになった場合、ＩＥＥＥ１３９４機器は接続できなくなる。
【００１２】
制御装置と処理装置の間にインタフェース変換ボックスを挿入することで、制御装置、処理装置ともに変更なしに、ＩＥＥＥ１３９４機器とＵＳＢ機器との接続制御は実現できるものと思料されるが、アプリケーションや装置のプロトコルを制御するミドルウエア層は、当初規定されたインタフェース仕様にしたがってその機能が実現されている部分を有し、このプロトコル部分の変更なしには接続はできても、接続動作はできない。
【００１３】
したがって、本発明は、上記問題点に鑑みて創案されたものであって、その目的は、異なるハードウェアインタフェースを持つ装置間であっても、データ転送を実現可能としたシステム、装置、方法、並びにプログラムを提供することにある。本発明の他の目的は、制御装置の下位層がそれまでと異なるハードウェアインタフェースに変わっても、変更前と同じ制御と処理で、制御装置の上位層と処理装置が動作できるシステム、装置、方法、並びにプログラムを提供することにある。
【００１４】
【課題を解決するための手段】
上記目的を達成するために、本発明に係るシステムは、制御装置と、処理装置と、を備えたシステムにおいて、前記制御装置は、前記制御装置の上位層と下位層との間でのデータ形式の変換を行う変換手段（「制御側変換手段」という）を備え、前記制御装置と前記処理装置との間に変換装置を備え、前記制御側変換手段は、前記制御装置の上位層からのデータを受け取って前記制御装置の下位層に対応した形式に変換した上で前記制御装置の下位層に受け渡す手段を備え、前記制御装置の下位層は、前記制御側変換手段で変換されたデータを受け取って前記変換装置に送出し、前記変換装置は、前記制御装置の下位層からのデータを受け取り、前記処理装置側のインタフェースに対応した形式に変換した上で前記処理装置に送出する手段を備えている。
【００１５】
本発明において、前記変換装置は、前記処理装置からのデータを受け取り前記制御装置の下位層側のインタフェースに対応した形式に変換した上で前記制御装置に送出する手段を備え、前記制御装置の下位層は、前記変換装置からのデータを受け取って前記制御側変換手段に供給し、前記制御側変換手段は、前記制御装置の下位層からのデータを受け取って前記制御装置の上位層に対応した形式に変換した上で前記制御装置の上位層に受け渡す手段を備えている。
【００１６】
本発明の別のアスペクトに係る方法は、制御装置と、処理装置と、を備えたシステムのデータ転送方法において、前記制御装置の上位層と下位層との間でのデータ形式の変換を行う変換モジュールを前記制御装置に設け、前記制御装置と前記処理装置との間に変換装置を配し、前記制御装置の前記変換モジュールが、前記制御装置の上位層からのデータを受け取って前記制御装置の下位層に対応した形式に変換した上で前記制御装置の下位層に受け渡すステップと、前記制御装置の下位層が、前記変換モジュールからのデータを受け取って前記変換装置に送出するステップと、前記変換装置が、前記制御装置の下位層からのデータを受け取り、前記処理装置側のインタフェースに対応した形式に変換した上で、前記処理装置に送出するステップと、を含む。
【００１７】
本発明に係る方法は、前記変換装置が、前記処理装置からのデータを受け取り前記制御装置の下位層側のインタフェースに対応した形式に変換した上で前記制御装置に送出するステップと、前記制御装置の下位層が、前記変換装置からのデータを受け取って前記変換モジュールに供給するステップと、前記制御装置の前記変換モジュールが、前記制御装置の下位層からのデータを受け取り、前記制御装置の上位層に対応した形式に変換した上で、前記制御装置の上位層に受け渡すステップと、を含む。
【００１８】
かかる構成の本発明によれば、制御装置と処理装置を接続した環境において、さらに制御装置内が上位層と下位層に分かれている形態において、制御装置の下位層がそれまでと異なるハードウェアインタフェースに変わっても、変わる前と同じ制御方法と処理法で、制御装置の上位層と処理装置が動作できる。以下の説明からも明らかとされるように、上記目的は、特許請求の範囲の各請求項の発明によっても同様にして達成される。
【００１９】
【発明の実施の形態】
発明の実施の形態について説明する。本発明は、制御装置（１１）と、処理装置（１２）と、制御装置（１１）は、上位層（１１１、１１２）と下位層（１１４、１１５）との間でのデータ形式の変換を行うための変換手段をなす変換モジュール（「制御側変換モジュール」という）（１１３）を備えている。さらに、制御装置（１１）と処理装置（１２）との間に、変換装置（１３）を備えている。制御装置（１１）の制御側変換モジュール（１１３）は、制御装置の上位層（１１２）からのデータを受け取って制御装置の下位層に対応した形式に変換した上で、制御装置の下位層（１１４）に受け渡す。制御装置の下位層は、制御側変換モジュール（１１３）からのデータを、伝送手段（１４）を介して変換装置（１３）に送出する。変換装置（１３）は、制御装置（１１）の下位層から転送されたデータを、処理装置（１２）のインタフェースに対応した形式に変換した上で伝送手段（１５）を介して処理装置（１２）に送出する。
【００２０】
変換装置（１３）は、処理装置（１２）から伝送手段（１５）を介して転送されたデータを受け取り、制御装置（１１）の下位層のインタフェースに対応した形式に変換した上で、伝送手段（１４）を介して制御装置（１１）に送出し、制御装置（１１）の下位層は、変換装置（１３）から伝送手段（１４）を介して転送されたデータを受け取って制御側変換モジュール（１１３）に供給し、制御側変換モジュール（１１３）は、制御装置（１１）の下位層からのデータを、制御装置の上位層（１１２）に対応した形式に変換した上で、制御装置の上位層に受け渡す。
【００２１】
制御装置（１１）の下位層は、伝送手段（１４）に接続する物理層を含むバス制御ハードウエア（１１５）と、バス制御ハードウエアを制御するソフトウエアよりなるバス制御ドライバ（１１４）よりなり、制御装置（１１）の上位層は、プロトコル制御を行うミドルウエア（１１２）とアプリケーション（１１１）よりなり、制御側変換モジュール（１１３）は、この上位層（１１２）と、バス制御インタフェースとの間のプロトコル変換を行う。
【００２２】
変換装置（１３）は、制御装置（１１）の下位層と処理装置（１２）とにそれぞれ伝送手段（１４、１５）を介して接続する手段（１３１、１３２と、１３５、１３４）と、制御装置の下位層と処理装置のインタフェースとの間のプロトコル変換を行う手段（１３３）を備えている。
【００２３】
制御装置（１１）において層構造をなす、アプリケーション（１１１）、ミドルウエア（１１２）、制御側変換モジュール（１１３）、バス制御ドライバ（１１４）は、制御装置（１１）を構成するコンピュータで実行されるプログラムによりその処理機能が実現される（請求項２１と２２）。同様にして、変換装置（１３）において、バス制御ドライバ（１３２、１３４）、制御側変換モジュール（１３３）は、変換装置（１３）を構成するコンピュータで実行されるプログラムによりその処理機能が実現される（請求項２３と２４）。
【００２４】
【実施例】
上記した実施の形態についてさらに詳細に説明すべく、本発明の実施例について図面を参照して以下に説明する。図１は、本発明の一実施例をなすシステムの構成を模式的に示す図である。図１を参照すると、この実施例に係るシステムは、制御装置１１と、処理装置１２と、変換ボックス（ＢＯＸ）１３と、制御装置１１と処理装置１２を接続するケーブル１４と、処理装置１２と変換ボックス１３を接続するケーブル１５を備えている。
【００２５】
制御装置１１は、処理装置１２を用いてユーザインタフェースを提供するアプリケーションプログラム（「ＡＰ」という）１１１と、処理装置１２の動作を制御するミドルウエア１１２と、下位インタフェースに変換する制御側変換モジュール１１３と、ケーブル１４のコネクタ接続、送信回路、受信回路等の物理層を含むバス制御ハードウエア１１５と、制御装置１１のもつバス制御ハードウエアを制御するバス制御ドライバ１１４と、を備えている。
【００２６】
処理装置１２は、外部とのインタフェース部であるバス制御ハードウエア１２１と、バス制御ハードウエア１２１を制御するバス制御ドライバ１２２と、制御装置１１のプロトコルを制御するミドルウエア１２３と、処理装置１２内のユーザインタフェースを司るアプリケーションプログラム（ＡＰ）１２４と、を備えている。
【００２７】
変換ボックス１３は、制御装置１１側とのハードウェアインタフェースを行うバス制御ハードウェア１３１と、バス制御ハードウェア１３１を制御するバス制御ドライバ１３２と、制御装置１１側と処理装置１２との間でのインタフェースの差分（差異）を相互変換するボックス内変換モジュール１３３と、処理装置１２側のバス制御ハードウェアを制御するバス制御ドライバ１３４と、処理装置１２側とハードウェアインタフェースを行うバス制御ハードウェア１３５と、を備えている。この変換ボックス１３は、制御装置１１側からも、処理装置１２側からも一つの機器として認識されている。
【００２８】
次に、図１を参照して、この実施例に係るシステムの全体の動作について詳細に説明する。ユーザの処理装置１２へのリモート動作指示が行われた時、制御装置１１側のアプリケーション１１１、ミドルウエア１１２の順で制御の受け渡しが行われる。この実施例においては、図７に示した構成とは相違して、ミドルウエア１１２は、直ちにバス制御ドライバに制御を渡さずに、ミドルウエア１１２の下層に位置する制御側変換モジュール１１３に制御を渡す。
【００２９】
制御変換モジュール１１３は、下位のバス制御ドライバ１１４に適合したデータパケット形式に変換して、下位のバス制御ドライバ１１４に制御を渡す。以降バス制御ハードウェア１１５がケーブル１４を使いデータ信号を送出する。
【００３０】
制御装置１１からケーブル１４を介して変換ボックス１３にデータが伝わる。変換ボックス１３では、バス制御ハードウェア１３１でケーブル１４からの信号を受け、バス制御ドライバ１３２を介してボックス（ＢＯＸ）側変換モジュール１３３に制御が受け渡される。
【００３１】
ボックス側変換モジュール１３３は、変換処理により、ミドルウエア１１２の出力するデータパケットとまったく同一のデータ形式を作成し、以降、バス制御ドライバ１３４、バス制御ハードウェア１３５にデータが渡り、処理装置１２には、図７の処理装置７２に受け渡す場合のデータ形式と全く同一形式のデータを、処理装置１２に受け渡す。
【００３２】
次に、具体的な実施例を用いて、この実施例の動作の一例を説明する。以下の実施例では、制御装置１１をＰＣとし、処理装置１２をＤＶカメラとする。ケーブル１４はＵＳＢケーブル、ケーブル１５はＩＥＥＥ１３９４シリアルバスとなる。
【００３３】
この実施例において、ＰＣ１１は、ＩＥＥＥ１３９４インタフェースをＵＳＢインタフェースに変換して変換ボックス１３に渡し、変換ボックス１３において、ＩＥＥＥ１３９４インタフェースに再変換することにより、ＩＥＥＥ１３９４インタフェースをもつＤＶカメラを制御することができる。
【００３４】
図２は、本発明の一実施例の処理を説明するための流れ図である。図２は、制御変換モジュール１１３の動作の一例が示されている。図１及び図２を参照して、この実施例の動作について説明する。
【００３５】
まず、ＤＶカメラ１２に対してＰＣ１１からのリモート動作指示が行われた場合、ＰＣ１１のアプリケーション１１１、ミドルウエア１１２の順でデータ及び制御の受け渡しが行われる。次に、制御側変換モジュール１１３への制御の受け渡しが行われる。
【００３６】
ここで、制御変換モジュール１１３は、ステップ２０１で、上位ミドルウエア１１２からの命令を受け付ける。
【００３７】
ステップ２０２で１３９４Ａｓｙｎｃ命令（アシンクロナス転送命令）か否かを判断する。１３９４Ａｓｙｎｃ命令ならばステップ２０３のＵＳＢ：Ｂｕｌｋ変換処理へ移行する。ステップ２０２で１３９４Ａｙｓｎｃ命令でない場合、ステップ２０４で、１３９４Ｉｓｏｃｈ命令（アイソクロナス転送命令）であるか否かを判断する。１３９４Ｉｓｏｃｈ命令である場合、ステップ２０５のＵＳＢ：Ｉｓｏｃｈ変換処理へ進む。どちらの命令でもない場合、ステップ２０６でＯＳ（オペレーティングシステム）コマンドとして処理し、その後、終了する。
【００３８】
ステップ２０３と２０４のそれぞれの処理は、ＩＥＥＥ１３９４の各パケットをそのままにしてそれを包含した形でＵＳＢパケットを作ることになる。
【００３９】
制御変換モジュール１１３は、パケットの変換が終わると、下位のバス制御ドライバ１１４（ＵＳＢドライバ）に制御を渡す。
【００４０】
以降、制御装置１１のバス制御ハードウェア１１５（ＵＳＢ）がＵＳＢケーブル１４を介してデータ信号を変換ボックス１３に送出する。
【００４１】
制御装置１１からＵＳＢケーブル１４を介して変換ボックス１３にデータが伝わる。変換ボックス１３では、バス制御ハードウェア１３１（ＵＳＢ）で信号を受け、バス制御ドライバ１３２（ＵＳＢドライバ）を介してボックス側変換モジュール１３３に制御がわたる。
【００４２】
図３は、変換ボックス１３内のボックス側変換モジュール１１３の動きの一例を示す図である。図３を参照すると、ステップ３０１で、バス制御ドライバ１３２からの命令を受ける。
【００４３】
ステップ３０２でＵＳＢ：Ｂｕｌｋか否かを判断する。ＵＳＢ：Ｂｕｌｋである場合、ステップ３０３の１３９４：Ａｓｙｎｃ変換処理へ制御を渡す。
【００４４】
ステップ３０２でＵＳＢ：Ｂｕｌｋでない場合、ステップ３０４でＵＳＢ：Ｉｓｏｃｈ命令であるか否かを判断する。ＵＳＢ：Ｉｓｏｃｈである場合、ステップ３０５の１３９４：Ｉｓｏｃｈ変換処理へ制御を渡す。これらの変換により生成されるデータ形式は、ミドルウエア１１２が出力するデータパケットとまったく同一の形式となる。
【００４５】
変換ボックス１３のバス制御ドライバ１３４、バス制御ハードウェア１３５にデータが渡り、処理装置１２には、ＩＥＥＥ１３９４シリアルバス（ケーブル）１５を介して、従来のシステム（図７の制御装置７１と処理装置７２の構成）の場合とまったく同じデータを渡すことができる。
【００４６】
処理装置１２の実行結果は、図３のステップ３０６において、ボックス側変換モジュール１３３が下位へ命令発行し終了待ちから起動され、ステップ３０７で１３９４Ａｓｙｎｃレスポンス（１３９４Ａｓｙｎｃ命令の応答）であるか否か判断し、１３９４Ａｓｙｎｃレスポンスである場合、ステップ３０８でＵＳＢ：Ｂｕｌｋ変換処理３０８を行い、ステップ３１１で、上位へのレスポンスを返す。
【００４７】
ステップ３０７で１３９４Ａｓｙｎｃレスポンスでない場合、ステップ３０９では、１３９４Ｉｓｏｃｈレスポンス（１３９４Ｉｓｏｃｈ命令の応答）であるか否かを判断し、１３９４Ｉｓｏｃｈレスポンスである場合、ＵＳＢ：Ｉｓｏｃｈ変換処理３１０を行い、ステップ３１１で、上位へのレスポンスを返す。
【００４８】
このあと、命令発行とは、逆のルートで制御が戻り、制御側変換モジュール１１３において、ステップ２０７での、下位へ命令発行し終了待ちを抜ける。そして、ステップ２０８でＵＳＢ  Ｂｕｌｋレスポンスであるか否かを判断し、ＵＳＢ  Ｂｕｌｋレスポンスである場合、ステップ２０９の１３９４：Ａｓｙｎｃ変換処理に移行し、ステップ２１２で上位へのレスポンスを返す。
【００４９】
ステップ２１０でＵＳＢ  Ｉｓｏｃｈレスポンスであるか否かを判断し、ＵＳＢ  Ｉｓｏｃｈレスポンスである場合、ステップ２１１の１３９４  Ｉｓｏｃｈ変換処理を行い、ステップ２１２で上位へのレスポンスを返る。そして、上位側に制御を戻して終了する。
【００５０】
次に、この実施例において、ミドルウエア１１２の制御を変えずに、制御変換モジュール１１３に制御を通すための機構についてその一例を説明する。図６は、比較例として、図７のミドルウエア７１２とバス制御ドライバ７１３を抜き出したものである。図４は、本実施例のミドルウエア１１２と制御側変換モジュール１１３とバス制御ドライバ１１４を抜き出したものである。
【００５１】
図６において、ミドルウエア７１２がバス制御ドライバ７１３を制御する方法は、ＯＳ（オペレーティングシステム）に登録された命令の発行テーブル４１に基づいて行われる。命令発行テーブル４１には、ミドルウエア１１２の命令（ミドルウエア１１２の命令発行テーブル欄）と、バス制御ドライバ７１３のエントリラベル等よりなる命令受けアドレス（バス制御ドライバ７１３命令受けテーブル）の対応表よりなる。ミドルウエア１１２で命令１が発行されると、命令発行テーブル４１にしたがって、バス制御ドライバの命令１の受けアドレス（「命令１受：」、ただし、「：」はラベル）にディスパッチされ、エントリ「命令１受：」に規定される処理（「Ｓｔａｒｔ」と「Ｅｎｄ」の間に規定される処理）が実行され、これにより、命令１の受け渡しが行われる。
【００５２】
一方、この実施例において、ミドルウエア７１２が制御変換モジュール１１３に制御を渡すには、図４に示すように、ミドルウエア１１２が、登録してある命令発行テーブルの飛び先を、例えば命令発行テーブル５１のように、制御変換モジュール１１３に変えることで実現している。
【００５３】
そして、制御変換モジュール１１３から下位のバス制御ドライバ１１４との間にも、命令変換テーブル５２を介在させて、命令の受け渡しを実現している。
【００５４】
図５は、この実施例におけるＩＥＥＥ１３９４とＵＳＢパケット変換を説明するための図である。
【００５５】
制御装置１１側のそれぞれの処理は、その上位のモジュールの各パケットをそのままにしてそれを包含した形で下位へのモジュールへの識別子のためのヘッダを付加したパケットを作る。また変換ボックス１３側の処理は、各モジュールで、パケットのヘッダ部を取り除き、最終的に、バス制御ドライバ１３４に渡るときには、制御装置１１のミドルウエア１１２が出力したデータ形式に変換されることになる。制御側変換モジュール１１３では、ミドルウエア１１２の命令が１３９４Ａｓｙｎｃ命令（１３９４ｉｓｏｃｈ命令）の場合、ＵＳＢヘッダを付加し、バス制御ドライバ１１４、バス制御ハードウエア１１５、１３１、バス制御ドライバ１３２に到達し、ボックス側変換モジュール１３３には、１３９４Ａｓｙｎｃヘッダ付きパケット（１３９４ｉｓｏｃｈヘッダ付きパケット）が到達し、バス制御ドライバ１３４には、１３９４Ａｓｙｎｃデータ（１３９４ｉｓｏｃｈデータ）が受け渡される。処理装置１２からのレスポンスについても、同様にして、ボックス側変換モジュール１３３は、処理装置１２からのパケットデータにＵＳＢヘッダを付加したパケットを、制御装置１１にケーブル１４を介して送信し、制御装置１１のバス制御ドライバ１１４は、受信したパケットを制御側変換モジュール１１３に渡し、制御側変換モジュール１１３はＵＳＢヘッダを除去したパケットをミドルウエア１１２に上げる。
【００５６】
なお、本発明において、制御装置と、変換装置、処理装置間の接続はライン（ケーブル）接続に限定されるものでなく、ワイヤレス接続に対しても、本発明が適用できることは勿論である。以上本発明を上記実施例に即して説明したが、本発明は上記実施例の構成にのみ限定されるものでなく、特許請求の範囲の各請求項の範囲内で当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
【００５７】
【発明の効果】
以上説明したように、本発明によれば、制御装置と処理装置を接続した環境において、さらに制御装置内が上位層と下位層とに分かれている場合、制御装置の上位層と処理装置は、制御装置の下位層がそれまでと異なるインタフェースに変わっても、変更前と同じ制御方法と処理法で動作することができ、汎用性、利便性、可用性を向上している。
【図面の簡単な説明】
【図１】本発明の一実施例の構成を模式的に示す図である。
【図２】本発明の一実施例における制御側変換モジュール１１３の動作を説明するための流れ図である。
【図３】本発明の一実施例におけるボックス（ＢＯＸ）側変換モジュール１３３の動作を説明するための流れ図である。
【図４】本発明の一実施例における命令受け渡し機構を説明するための図である。
【図５】本発明の一実施例におけるＩＥＥＥ１３９４とＵＳＢパケット変換を模式的に一覧形式に示した図である。
【図６】従来のシステムにおける命令受け渡し機構を説明するための図である。
【図７】従来のシステムの構成を模式的に示す図である。
【符号の説明】
１１  制御装置
１２  処理装置
１３  変換ボックス
１４、１５  伝送手段
４１  命令発行テーブル
５１  命令発行テーブル
５２  命令発行テーブル
１１１  アプリケーション
１１２  ミドルウエア
１１３  制御側変換モジュール
１１４  バス制御ドライバ
１１５  バス制御ハードウエア
１２１  バス制御ハードウエア
１２２  バス制御ドライバ
１２３  ミドルウエア
１２４  アプリケーション
１３１  バス制御ハードウエア
１３２  バス制御ドライバ
１３３  ボックス側変換モジュール
１３４  バス制御ドライバ
１３５  バス制御ハードウエア
２０１〜２１２、３０１〜３１１  ステップ
７１  制御装置
７２  処理装置
７３  変換ボックス
７１１  アプリケーション
７１２  ミドルウエア
７１３  バス制御ドライバ
７１４  バス制御ハードウエア
７２１  バス制御ハードウエア
７２２  バス制御ドライバ
７２３  ミドルウエア
７２４  アプリケーション
【図１】
0003653051.tif 000002
【図２】
0003653051.tif 000003
【図３】
0003653051.tif 000004
【図４】
0003653051.tif 000005
【図５】
0003653051.tif 000006
【図６】
0003653051.tif 000007
【図７】
0003653051.tif 000008