(57)【特許請求の範囲】
【請求項１】
原稿をスキャンして画像データを取得可能なスキャナに対し操作コマンドを生成し、これに応答して返送される応答コマンドを解析してスキャナを操作可能な操作部と、
画像データを取得可能な画像データ取得部と、
操作コマンドをコンピュータネットワークを介してスキャナ宛てに送信し、受信したデータから応答コマンドまたは画像データを抽出可能なネットワーク対応部とを有し、
前記ネットワーク対応部は、前記操作部から供給された複数の前記操作コマンドをバッファリングして送信するバッファリング機能を備え、
前記バッファリング機能は、バッファリング指定されている操作コマンドはバッファリングして送信し、スルー指定されている操作コマンドはバッファリングしないで送信することを特徴とするスキャナ制御装置。
【請求項２】
請求項１に記載のスキャナ制御装置において、
バッファリング指定されている操作コマンドにはデータフォーム設定、補正処理または画像処理に関連する操作コマンドが含まれており、スルー指定されている操作コマンドには応答コマンドを得た後に次の処理が行われる操作コマンドが含まれていることを特徴とするスキャナ制御装置。
【請求項３】
請求項１に記載のスキャナ制御装置において、
前記バッファリング機能は、前記操作部からスルー指定されている操作コマンドが供給されるとバッファリングされた操作コマンドを送信し、その後にスルー指定された操作コマンドを送信することを特徴とするスキャナ制御装置。
【請求項４】
原稿をスキャンして画像データを取得可能なスキャナに対し操作コマンドを生成し、これに応答して返送される応答コマンドを解析してスキャナを操作可能な操作部と、
画像データを取得可能な画像データ取得部と、
操作コマンドをコンピュータネットワークを介してスキャナ宛てに送信し、受信したデータから応答コマンドまたは画像データを抽出可能なネットワーク対応部とを有し、
前記ネットワーク対応部は、前記操作部から供給された複数の前記操作コマンドをバッファリングして送信するバッファリング機能を備え、
前記ネットワーク対応部は、データの送受信をパケットを用いて行い、前記バッファリング機能は、操作コマンドを、パケットデータ中の、各操作コマンド毎に予め決まった位置にバッファリングすることを特徴とするスキャナ制御装置。
【請求項５】
請求項１または４に記載のスキャナ制御装置において、
前記ネットワーク対応部は、コンピュータネットワークを介してスキャナにアクセスした際に、該スキャナが異なったジョブに専有され使用不可能であることを示すロック情報を受信すると、そのロック情報の少なくとも１部を出力する接続確認機能を備えていることを特徴とするスキャナ制御装置。
【請求項６】
請求項１または４に記載のスキャナ制御装置において、
前記ネットワーク対応部は、バッファリングされた応答コマンドを受信し、各応答コマンドにデコードして前記操作部に供給するデコード機能を備えていることを特徴とするスキャナ制御装置。
【請求項７】
原稿をスキャンして画像データを取得可能なスキャナ本体との間でデータの授受が可能なスキャナインタフェースを備えた第１のスキャナ制御装置と、
この第１のスキャナ制御装置とコンピュータネットワークを介してデータの授受が可能な第２のスキャナ制御装置とを有するスキャナ制御システムであって、
前記第２のスキャナ制御装置は、
スキャナ本体に対する操作コマンドを生成し、これに応答して返送される応答コマンドを解析してスキャナ本体を操作可能な操作部と、
画像データを取得可能な画像データ取得部と、
操作コマンドをコンピュータネットワークを介して前記第１のスキャナ制御装置宛てに送信し、前記第１のスキャナ制御装置から受信したデータから応答コマンドまたは画像データを抽出可能なネットワーク対応部であって、前記操作部から供給された複数の前記操作コマンドをバッファリングして送信するバッファリング機能を備えたネットワーク対応部とを備え、
前記第１のスキャナ制御装置は、
コンピュータネットワークを介してデータの授受が可能なネットワークインタフェースと、
前記第２のスキャナ制御装置から受信したバッファリングされた複数の操作コマンドをデコードし、個々の操作コマンドを前記スキャナ本体に供給し、前記スキャナ本体から得られた応答コマンドを前記第２のスキャナ制御装置宛てに送信し、さらに、スキャナ本体で得られた画像データをコンピュータネットワークを介して送信可能な制御部とを備えており、
前記第２のスキャナ制御装置の前記バッファリング機能は、操作コマンドおよび応答コマンドのうちバッファリング指定されているコマンドについてはバッファリングして送信し、操作コマンドおよび応答コマンドのうちスルー指定されているコマンドについてはバッファリングしないで送信することを特徴とするスキャナ制御システム。
【請求項８】
原稿をスキャンして画像データを取得可能なスキャナ本体との間でデータの授受が可能なスキャナインタフェースを備えた第１のスキャナ制御装置と、
この第１のスキャナ制御装置とコンピュータネットワークを介してデータの授受が可能な第２のスキャナ制御装置とを有するスキャナ制御システムであって、
前記第２のスキャナ制御装置は、
スキャナ本体に対する操作コマンドを生成し、これに応答して返送される応答コマンドを解析してスキャナ本体を操作可能な操作部と、
画像データを取得可能な画像データ取得部と、
操作コマンドをコンピュータネットワークを介して前記第１のスキャナ制御装置宛てに送信し、前記第１のスキャナ制御装置から受信したデータから応答コマンドまたは画像データを抽出可能なネットワーク対応部であって、前記操作部から供給された複数の前記操作コマンドをバッファリングして送信するバッファリング機能を備えたネットワーク対応部とを備え、
前記第１のスキャナ制御装置は、
コンピュータネットワークを介してデータの授受が可能なネットワークインタフェースと、
前記第２のスキャナ制御装置から受信したバッファリングされた複数の操作コマンドをデコードし、個々の操作コマンドを前記スキャナ本体に供給し、前記スキャナ本体から得られた応答コマンドを前記第２のスキャナ制御装置宛てに送信し、さらに、スキャナ本体で得られた画像データをコンピュータネットワークを介して送信可能な制御部とを備えており、
前記第２のスキャナ制御装置の前記バッファリング機能は、スルー指定されている操作コマンドまたは応答コマンドが供給されると、バッファリングされている操作コマンドまたは応答コマンドを送信し、その後に、スルー指定された操作コマンドまたは応答コマンドを送信することを特徴とするスキャナ制御システム。
【請求項９】
原稿をスキャンして画像データを取得可能なスキャナ本体との間でデータの授受が可能なスキャナインタフェースを備えた第１のスキャナ制御装置と、
この第１のスキャナ制御装置とコンピュータネットワークを介してデータの授受が可能な第２のスキャナ制御装置とを有するスキャナ制御システムであって、
前記第２のスキャナ制御装置は、
スキャナ本体に対する操作コマンドを生成し、これに応答して返送される応答コマンドを解析してスキャナ本体を操作可能な操作部と、
画像データを取得可能な画像データ取得部と、
操作コマンドをコンピュータネットワークを介して前記第１のスキャナ制御装置宛てに送信し、前記第１のスキャナ制御装置から受信したデータから応答コマンドまたは画像データを抽出可能なネットワーク対応部であって、前記操作部から供給された複数の前記操作コマンドをバッファリングして送信するバッファリング機能を備えたネットワーク対応部とを備え、
前記第１のスキャナ制御装置は、
コンピュータネットワークを介してデータの授受が可能なネットワークインタフェースと、
前記第２のスキャナ制御装置から受信したバッファリングされた複数の操作コマンドをデコードし、個々の操作コマンドを前記スキャナ本体に供給し、前記スキャナ本体から得られた応答コマンドを前記第２のスキャナ制御装置宛てに送信し、さらに、スキャナ本体で得られた画像データをコンピュータネットワークを介して送信可能な制御部とを備えており、
前記第２のスキャナ制御装置の前記バッファリング機能は、操作コマンドまたは応答コマンドを、パケットデータ中の、各操作コマンドまたは応答コマンド毎に予め決まった位置にバッファリングすることを特徴とするスキャナ制御システム。
【請求項１０】
原稿をスキャンして画像データを取得可能なスキャナ本体との間でデータの授受が可能なスキャナインタフェースを備えた第１のスキャナ制御装置と、
この第１のスキャナ制御装置とコンピュータネットワークを介してデータの授受が可能な第２のスキャナ制御装置とを有するスキャナ制御システムであって、
前記第２のスキャナ制御装置は、
スキャナ本体に対する操作コマンドを生成し、これに応答して返送される応答コマンドを解析してスキャナ本体を操作可能な操作部と、
画像データを取得可能な画像データ取得部と、
操作コマンドをコンピュータネットワークを介して前記第１のスキャナ制御装置宛てに送信し、前記第１のスキャナ制御装置から受信したデータから応答コマンドまたは画像データを抽出可能なネットワーク対応部であって、バッファリングされた応答コマンドを複数の応答コマンドにデコードし、個々の応答コマンドを前記操作部に供給するデコード機能を備えたネットワーク対応部とを備え、
前記第１のスキャナ制御装置は、
コンピュータネットワークを介してデータの授受が可能なネットワークインタフェースと、
前記第２のスキャナ制御装置から受信したデータから操作コマンドを抽出して前記スキャナ本体に供給し、前記スキャナ本体から得られた応答コマンドを前記第２のスキャナ制御装置宛てに送信し、さらに、スキャナ本体で得られた画像データをコンピュータネットワークを介して送信可能な制御部であって、前記スキャナ本体から供給される複数の応答コマンドをバッファリングして送信するバッファリング機能を備えた制御部とを備えており、
前記バッファリング機能は、操作コマンドおよび応答コマンドのうちバッファリング指定されているコマンドについてはバッファリングして送信し、操作コマンドおよび応答コマンドのうちスルー指定されているコマンドについてはバッファリングしないで送信することを特徴とするスキャナ制御システム。
【請求項１１】
原稿をスキャンして画像データを取得可能なスキャナ本体との間でデータの授受が可能なスキャナインタフェースを備えた第１のスキャナ制御装置と、
この第１のスキャナ制御装置とコンピュータネットワークを介してデータの授受が可能な第２のスキャナ制御装置とを有するスキャナ制御システムであって、
前記第２のスキャナ制御装置は、
スキャナ本体に対する操作コマンドを生成し、これに応答して返送される応答コマンドを解析してスキャナ本体を操作可能な操作部と、
画像データを取得可能な画像データ取得部と、
操作コマンドをコンピュータネットワークを介して前記第１のスキャナ制御装置宛てに送信し、前記第１のスキャナ制御装置から受信したデータから応答コマンドまたは画像データを抽出可能なネットワーク対応部であって、バッファリングされた応答コマンドを複数の応答コマンドにデコードし、個々の応答コマンドを前記操作部に供給するデコード機能を備えたネットワーク対応部とを備え、
前記第１のスキャナ制御装置は、
コンピュータネットワークを介してデータの授受が可能なネットワークインタフェースと、
前記第２のスキャナ制御装置から受信したデータから操作コマンドを抽出して前記スキャナ本体に供給し、前記スキャナ本体から得られた応答コマンドを前記第２のスキャナ制御装置宛てに送信し、さらに、スキャナ本体で得られた画像データをコンピュータネットワークを介して送信可能な制御部であって、前記スキャナ本体から供給される複数の応答コマンドをバッファリングして送信するバッファリング機能を備えた制御部とを備えており、
前記バッファリング機能は、スルー指定されている操作コマンドまたは応答コマンドが供給されると、バッファリングされている操作コマンドまたは応答コマンドを送信し、その後に、スルー指定された操作コマンドまたは応答コマンドを送信することを特徴とするスキャナ制御システム。
【請求項１２】
原稿をスキャンして画像データを取得可能なスキャナ本体との間でデータの授受が可能なスキャナインタフェースを備えた第１のスキャナ制御装置と、
この第１のスキャナ制御装置とコンピュータネットワークを介してデータの授受が可能な第２のスキャナ制御装置とを有するスキャナ制御システムであって、
前記第２のスキャナ制御装置は、
スキャナ本体に対する操作コマンドを生成し、これに応答して返送される応答コマンドを解析してスキャナ本体を操作可能な操作部と、
画像データを取得可能な画像データ取得部と、
操作コマンドをコンピュータネットワークを介して前記第１のスキャナ制御装置宛てに送信し、前記第１のスキャナ制御装置から受信したデータから応答コマンドまたは画像データを抽出可能なネットワーク対応部であって、バッファリングされた応答コマンドを複数の応答コマンドにデコードし、個々の応答コマンドを前記操作部に供給するデコード機能を備えたネットワーク対応部とを備え、
前記第１のスキャナ制御装置は、
コンピュータネットワークを介してデータの授受が可能なネットワークインタフェースと、
前記第２のスキャナ制御装置から受信したデータから操作コマンドを抽出して前記スキャナ本体に供給し、前記スキャナ本体から得られた応答コマンドを前記第２のスキャナ制御装置宛てに送信し、さらに、スキャナ本体で得られた画像データをコンピュータネットワークを介して送信可能な制御部であって、前記スキャナ本体から供給される複数の応答コマンドをバッファリングして送信するバッファリング機能を備えた制御部とを備えており、
前記バッファリング機能は、操作コマンドまたは応答コマンドを、パケットデータ中の、各操作コマンドまたは応答コマンド毎に予め決まった位置にバッファリングすることを特徴とするスキャナ制御システム。
【請求項１３】
原稿をスキャンして画像データを取得可能なスキャナ本体との間でデータの授受が可能な第１のスキャナ制御装置に対し、コンピュータネットワークを介してデータの授受が可能な第２のスキャナ制御装置から前記スキャナ本体に対する操作コマンドを送信してスキャナ本体を制御するスキャナ制御方法であって、
前記第２のスキャナ制御装置において前記操作コマンドを生成する操作コマンド生成工程と、
複数の操作コマンドをバッファリングしてコンピュータネットワークを介して前記第１のスキャナ制御装置宛てに送信する操作コマンド送信工程と、
前記第２のスキャナ制御装置から受信したバッファリングされた複数の操作コマンドをデコードし、個々の操作コマンドを前記スキャナ本体に供給する操作コマンド供給工程と、
前記スキャナ本体から得られた応答コマンドをコンピュータネットワークを介して前記第２のスキャナ制御装置宛てに送信する応答コマンド送信工程と、
第１のスキャナ制御装置から受信したデータから応答コマンドを抽出する応答コマンド供給工程と、
応答コマンドを解析してスキャナ本体を操作状況を把握する応答コマンド解析工程とを有し、
前記操作コマンド送信工程では、バッファリング指定されている操作コマンドは蓄積して共通のパケットで送信し、スルー指定されている操作コマンドは蓄積せずに送信することを特徴とするスキャナ制御方法。
【請求項１４】
原稿をスキャンして画像データを取得可能なスキャナ本体との間でデータの授受が可能な第１のスキャナ制御装置に対し、コンピュータネットワークを介してデータの授受が可能な第２のスキャナ制御装置から前記スキャナ本体に対する操作コマンドを送信してスキャナ本体を制御するスキャナ制御方法であって、
前記第２のスキャナ制御装置において前記操作コマンドを生成する操作コマンド生成工程と、
複数の操作コマンドをバッファリングしてコンピュータネットワークを介して前記第１のスキャナ制御装置宛てに送信する操作コマンド送信工程と、
前記第２のスキャナ制御装置から受信したバッファリングされた複数の操作コマンドをデコードし、個々の操作コマンドを前記スキャナ本体に供給する操作コマンド供給工程と、
前記スキャナ本体から得られた応答コマンドをコンピュータネットワークを介して前記第２のスキャナ制御装置宛てに送信する応答コマンド送信工程と、
第１のスキャナ制御装置から受信したデータから応答コマンドを抽出する応答コマンド供給工程と、
応答コマンドを解析してスキャナ本体を操作状況を把握する応答コマンド解析工程とを有し、
前記操作コマンド送信工程では、スルー指定されている操作コマンドが供給されると、蓄積されている操作コマンドを送信し、その後にスルー指定された操作コマンド送信することを特徴とするスキャナ制御方法。
【請求項１５】
原稿をスキャンして画像データを取得可能なスキャナ本体との間でデータの授受が可能な第１のスキャナ制御装置に対し、コンピュータネットワークを介してデータの授受が可能な第２のスキャナ制御装置から前記スキャナ本体に対する操作コマンドを送信してスキャナ本体を制御するスキャナ制御方法であって、
前記第２のスキャナ制御装置において前記操作コマンドを生成する操作コマンド生成工程と、
複数の操作コマンドをバッファリングしてコンピュータネットワークを介して前記第１のスキャナ制御装置宛てに送信する操作コマンド送信工程と、
前記第２のスキャナ制御装置から受信したバッファリングされた複数の操作コマンドをデコードし、個々の操作コマンドを前記スキャナ本体に供給する操作コマンド供給工程と、
前記スキャナ本体から得られた応答コマンドをコンピュータネットワークを介して前記第２のスキャナ制御装置宛てに送信する応答コマンド送信工程と、
第１のスキャナ制御装置から受信したデータから応答コマンドを抽出する応答コマンド供給工程と、
応答コマンドを解析してスキャナ本体を操作状況を把握する応答コマンド解析工程とを有し、
前記操作コマンド送信工程では、操作コマンドを、パケットデータ中の、各操作コマンド毎に予め決まった位置に載せることを特徴とするスキャナ制御方法。
【請求項１６】
原稿をスキャンして画像データを取得可能なスキャナ本体との間でデータの授受が可能な第１のスキャナ制御装置に対し、コンピュータネットワークを介してデータの授受が可能な第２のスキャナ制御装置から前記スキャナ本体に対する操作コマンドを送信してスキャナ本体を制御するスキャナ制御方法であって、
前記第２のスキャナ制御装置において前記操作コマンドを生成する操作コマンド生成工程と、
操作コマンドをコンピュータネットワークを介して前記第１のスキャナ制御装置宛てに送信する操作コマンド送信工程と、
前記第２のスキャナ制御装置から送信されたデータから操作コマンドを抽出して前記スキャナ本体に供給する操作コマンド供給工程と、
前記スキャナ本体から得られた複数の応答コマンドをバファリングしてコンピュータネットワークを介して前記第２のスキャナ制御装置宛てに送信する応答コマンド送信工程と、
第１のスキャナ制御装置から受信したバッファリングされた応答コマンドを複数の応答コマンドにデコードし、個々の応答コマンドを抽出する応答コマンド供給工程と、
応答コマンドを解析してスキャナ本体を操作状況を把握する応答コマンド解析工程とを有し、
前記操作コマンド送信工程では、バッファリング指定されている操作コマンドは蓄積して共通のパケットで送信し、スルー指定されている操作コマンドは蓄積せずに送信することを特徴とするスキャナ制御方法。
【請求項１７】
原稿をスキャンして画像データを取得可能なスキャナ本体との間でデータの授受が可能な第１のスキャナ制御装置に対し、コンピュータネットワークを介してデータの授受が可能な第２のスキャナ制御装置から前記スキャナ本体に対する操作コマンドを送信してスキャナ本体を制御するスキャナ制御方法であって、
前記第２のスキャナ制御装置において前記操作コマンドを生成する操作コマンド生成工程と、
操作コマンドをコンピュータネットワークを介して前記第１のスキャナ制御装置宛てに送信する操作コマンド送信工程と、
前記第２のスキャナ制御装置から送信されたデータから操作コマンドを抽出して前記スキャナ本体に供給する操作コマンド供給工程と、
前記スキャナ本体から得られた複数の応答コマンドをバファリングしてコンピュータネットワークを介して前記第２のスキャナ制御装置宛てに送信する応答コマンド送信工程と、
第１のスキャナ制御装置から受信したバッファリングされた応答コマンドを複数の応答コマンドにデコードし、個々の応答コマンドを抽出する応答コマンド供給工程と、
応答コマンドを解析してスキャナ本体を操作状況を把握する応答コマンド解析工程とを有し、
前記操作コマンド送信工程では、スルー指定されている操作コマンドが供給されると、蓄積されている操作コマンドを送信し、その後にスルー指定された操作コマンド送信することを特徴とするスキャナ制御方法。
【請求項１８】
原稿をスキャンして画像データを取得可能なスキャナ本体との間でデータの授受が可能な第１のスキャナ制御装置に対し、コンピュータネットワークを介してデータの授受が可能な第２のスキャナ制御装置から前記スキャナ本体に対する操作コマンドを送信してスキャナ本体を制御するスキャナ制御方法であって、
前記第２のスキャナ制御装置において前記操作コマンドを生成する操作コマンド生成工程と、
操作コマンドをコンピュータネットワークを介して前記第１のスキャナ制御装置宛てに送信する操作コマンド送信工程と、
前記第２のスキャナ制御装置から送信されたデータから操作コマンドを抽出して前記スキャナ本体に供給する操作コマンド供給工程と、
前記スキャナ本体から得られた複数の応答コマンドをバファリングしてコンピュータネットワークを介して前記第２のスキャナ制御装置宛てに送信する応答コマンド送信工程と、
第１のスキャナ制御装置から受信したバッファリングされた応答コマンドを複数の応答コマンドにデコードし、個々の応答コマンドを抽出する応答コマンド供給工程と、
応答コマンドを解析してスキャナ本体を操作状況を把握する応答コマンド解析工程とを有し、
前記操作コマンド送信工程では、操作コマンドを、パケットデータ中の、各操作コマンド毎に予め決まった位置に載せることを特徴とするスキャナ制御方法。
【請求項１９】
コンピュータをスキャナ制御装置として機能させるためのプログラムを記録した記録媒体であって、
前記プログラムは、
原稿をスキャンして画像データを取得可能なスキャナに対し操作コマンドを生成し、これに応答して返送される応答コマンドを解析してスキャナを操作可能な操作手段と、
画像データを取得可能な画像データ取得手段と、
操作コマンドをコンピュータネットワークを介してスキャナ宛てに送信し、受信したデータから応答コマンドまたは画像データを抽出可能なネットワーク対応手段であって、前記操作部から供給された複数の前記操作コマンドをバッファリングして送信するバッファリング機能を備えているネットワーク対応手段として機能させ、
前記バッファリング機能は、バッファリング指定されている操作コマンドはバッファリングして送信し、スルー指定されている操作コマンドはバッファリングしないで送信することを特徴とする記録媒体。
【請求項２０】
コンピュータをスキャナ制御装置として機能させるためのプログラムを記録した記録媒体であって、
前記プログラムは、
原稿をスキャンして画像データを取得可能なスキャナに対し操作コマンドを生成し、これに応答して返送される応答コマンドを解析してスキャナを操作可能な操作手段と、
画像データを取得可能な画像データ取得手段と、
操作コマンドをコンピュータネットワークを介してスキャナ宛てに送信し、受信したデータから応答コマンドまたは画像データを抽出可能なネットワーク対応手段であって、前記操作部から供給された複数の前記操作コマンドをバッファリングして送信するバッファリング機能を備えているネットワーク対応手段として機能させ、
前記ネットワーク対応手段は、データの送受信をパケットを用いて行い、前記バッファリング機能は、操作コマンドを、パケットデータ中の、各操作コマンド毎に予め決まった位置にバッファリングすることを特徴とする記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、スキャナのネットワーク対応に関する技術であり、特に、ローカル接続したスキャナをネットワークを介して使用する技術に関する。
【０００２】
【従来の技術】
図１８に、パソコン（パーソナルコンピュータ）などのクライアント１にスキャナ２を取り付けた概略を示してある。スキャナ２は、ＳＣＳＩインタフェース３などのシリアルインタフェースまたはセントロニクスインタフェースなどのパラレルインタフェースを介してクライアント１にハード的に接続され、クライアント１にはスキャナ２を制御するためのドライバ４がインストールされている。そして、ＯＳ５の上で動作する画像データを処理可能なアプリケーション６でスキャナ２を用いて画像データを入力しようとすると、ドライバ４が呼び出される。ドライバ４を用いてスキャナ２の設定を行うと共にスキャナ２から画像データを取得してハードディスク７などの記録媒体にアプリケーション６で処理可能なデータ形式の画像データファイルとして格納する。
【０００３】
スキャナ２を制御するドライバ４としては、アプリケーションソフトウェア６に対し、スキャナなどの画像入力用の周辺装置を制御するための共通のインタフェースあるいはプロトコルを提供するために開発されたＴＷＡＩＮドライバが多く用いられている。ＴＷＡＩＮドライバ４は、アプリケーション６に対し共通のＡＰＩを提供するアプリケーション対応部１１と、そのＡＰＩに基づきスキャナ２を操作できるスキャナ独自のあるいはスキャナメーカ独自の操作コマンドを生成する操作部１２と、スキャナ２から取得した画像データを適当なファイル形式に変換してハードディスク７などの記録媒体に格納する画像データ取得部１３とを備えている。操作部１２は、さらに、ＴＷＡＩＮドライバ４が呼出されたときに詳細なスキャナの条件を設定したり、スキャナ２を直に制御するためのダイアログボックスを表示して操作コマンドを生成し、スキャナ２を制御する機能を備えている。
【０００４】
【発明が解決しようとする課題】
近年、クライアントの能力も向上し、画像データを処理する機会が増えており、スキャナ、特にカラースキャナを必要とするジョブが増えている。解像度の高いカラースキャナなどの高性能のスキャナは、低コスト化されつつあるがまだ高価であり、また、設置スペースも必要である。さらに、スキャナの使用頻度を考慮すると、個々のクライアントにカラースキャナを接続するのは過剰設備となることが多い。したがって、複数のクライアントが設置されているオフィスなどでは、複数のクライアント毎にスキャナが設置されることが多く、特に、カラースキャナの導入時期においては複数のクライアントに対し限られた数のカラースキャナを設置することが検討される。
【０００５】
クライアントがイーサネットなどのコンピュータネットワーク（以降においてはネットワーク）で接続されている場合は、スキャナがローカル接続されたクライアントで画像データを取り込む処理を行い、その後、ネットワーク経由で自己のクライアントに画像データを送るという操作でスキャナを共有することが可能である。しかしながら、ローカルで接続されたスキャナに対しては、ＴＷＡＩＮドライバをインストールしておくことにより、アプリケーションから抜けなくてもその中からスキャナが制御できるようになっているのに対し、ネットワークに接続されたスキャナを使用するときは、他のクライアントを操作して画像データを取り込む作業を行わなければ画像データを取得できないのでは非常に作業が面倒であり、作業効率が悪い。一方、個々のクライアントに対しカラースキャナをローカル接続するのは、コスト、スペースあるいは稼動頻度などの面で効率が悪い。
【０００６】
そこで、本発明においては、ネットワークに接続されたスキャナをローカル接続されたスキャナと同様の感覚で操作で制御できるようにすることを目的としている。また、スキャナをネットワークを介して共有するための制御システム、制御装置および制御方法を提供することを目的としている。さらに、データ入力機能をネットワーク経由で確実に利用することができる制御システム、制御装置および制御方法を提供することも目的としている。また、設定条件の多いスキャナをネットワークを介して制御する際に、トラフィックの増加などのネットワーク負荷の増大を抑止できる制御装置および制御方法を提供することを目的としている。
【０００７】
【課題を解決するための手段】
このため、本発明においては、スキャナをネットワーク経由で制御できるようにするために、クライアント側およびスキャナ側にネットワーク対応のスキャナ制御装置を設け、クライアント側のスキャナ制御部では操作部で生成される操作コマンドをネットワーク経由で送出し、送られてきた応答コマンドを抽出して操作部に供給し、一方、スキャナ側のスキャナ制御部では、送られてきた操作コマンドを抽出してスキャナ本体に供給すると共に応答コマンドをネットワークを介して送出することができるシステムを提供するようにしている。
【０００８】
すなわち、本発明のスキャナ制御システムは、原稿をスキャンして画像データを取得可能なスキャナ本体との間でデータの授受が可能なスキャナインタフェースを備えた第１のスキャナ制御装置（スキャナ側のスキャナ制御装置）と、この第１のスキャナ制御装置とコンピュータネットワークを介してデータの授受が可能な第２のスキャナ制御装置（クライアント側のスキャナ制御装置）とを有するスキャナ制御システムであって、第２のスキャナ制御装置は、スキャナ本体に対する操作コマンドを生成し、これに応答して返送される応答コマンドを解析してスキャナ本体を操作可能な操作部と、画像データを取得可能な画像データ取得部と、操作コマンドをコンピュータネットワークを介して第１のスキャナ制御装置宛てに送信し、第１のスキャナ制御装置から受信したデータから応答コマンドまたは画像データを抽出可能なネットワーク対応部とを備えており、第１のスキャナ制御装置は、コンピュータネットワークを介してデータの授受が可能なネットワークインタフェースと、第２のスキャナ制御装置から受信したデータから操作コマンドを抽出してスキャナ本体に供給し、スキャナ本体から得られた応答コマンドを第２のスキャナ制御装置宛てに送信し、さらに、スキャナ本体で得られた画像データをコンピュータネットワークを介して送信可能な制御部とを備えていることを特徴としている。
【０００９】
また、本発明の、原稿をスキャンして画像データを取得可能なスキャナ本体との間でデータの授受が可能な第１のスキャナ制御装置に対し、コンピュータネットワークを介してデータの授受が可能な第２のスキャナ制御装置からスキャナ本体に対する操作コマンドを送信してスキャナ本体を制御するスキャナ制御方法においては、例えば、以下の工程を備えていることを特徴としている。
【００１０】
１．第２のスキャナ制御装置において前記操作コマンドを生成する操作コマンド生成工程。
２．操作コマンドをコンピュータネットワークを介して前記第１のスキャナ制御装置宛てに送信する操作コマンド送信工程。
３．第２のスキャナ制御装置から送信されたデータから操作コマンドを抽出して前記スキャナ本体に供給する操作コマンド供給工程。
４．スキャナ本体から得られた応答コマンドを第２のスキャナ制御装置宛てに送信する応答コマンド送信工程。
５．第１のスキャナ制御装置から返送されたデータから応答コマンドを抽出する応答コマンド供給工程。
６．応答コマンドを解析してスキャナ本体を操作状況を把握する応答コマンド解析工程。
【００１１】
なお、本発明に係る、スキャナ制御装置、スキャナ制御システム、制御方法、記録媒体においては、前記コマンドの送受信、また、画像データの送受信は、例えば、データをパケット化して行なうことができる。
【００１２】
本発明のスキャナ制御システムあるいは制御方法においては、第２のスキャナ制御装置から操作コマンドをネットワーク経由でスキャナ本体に送り、また、スキャナ本体から応答コマンドをネットワーク経由で受け取って抽出し解析できるようになっている。このため、操作部としては従来のＴＷＡＩＮドライバと同様に操作コマンドおよび応答コマンドを用いた処理が可能である。したがって、アプリケーションに対しスキャナをローカル接続したのと同様のインタフェースを提供できる。
【００１３】
このため、本発明のネットワーク対応型のスキャナ制御装置、例えば、ネットワーク対応型のＴＷＡＩＮドライバをインストールすることにより、ＴＷＡＩＮ対応のアプリケーションであればスキャナがローカル接続されているのと同様にネットワークを経由してスキャナを操作および使用することができる。このため、ユーザはクライアントで稼動しているアプリケーションからネットワーク上のスキャナを操作することが可能となる。
【００１４】
さらに、ローカル接続されているスキャナとの間で授受される操作コマンドおよび応答コマンドをそのままネットワーク経由で送受信されるようにしているので、送受信の際のデータ変換にかかるオーバヘッドを低減でき、処理速度を向上できる。
【００１５】
また、第１のスキャナ制御装置の側では、受信データから抽出された操作コマンドがスキャナ本体に供給され、また、スキャナ本体から供給された応答コマンドがネットワークに送り出せるようにしている。このため、スキャナ本体は従来と同様に操作コマンドを受け取って応答コマンドを返すローカル接続仕様のものでネットワークに対応させることができる。この第１のスキャナ制御装置を独立した制御装置として提供し、第１のスキャナ制御装置に従来型のスキャナをＳＣＳＩなどのインタフェースを経由して接続する構成も可能であるし、あるいは、第１のスキャナ制御装置とスキャナ本体を一体にしてネットワーク対応型のスキャナとして提供することも可能である。
【００１６】
第２のスキャナ制御装置も、クライアントでスキャナ操作専用のソフトウェアとして提供することも可能であり、また、ＴＷＡＩＮドライバと同様に操作部および画像データ取得部とアプリケーションの間のデータ交換を行うアプリケーション対応部を設けてアプリケーションから使用できるようにすることができる。
【００１７】
ネットワークに接続されたスキャナは複数のクライアントに対し共有された周辺機器となる。しかしながら、プリンタなどの出力型の周辺機器と異なり複数のユーザに対し同時に画像データを出力する共有サービスは提供できず、あるユーザのクライアントとコネクションが成立してスキャナのパラメータを設定している間、あるいは、画像データを読み取っている間は、他のユーザに対応するためにパラメータの設定に変えたり、あるいは他のユーザの原稿を読み取ることができない。
【００１８】
そこで、本発明のスキャナ制御システムにおいては、第１のスキャナ制御装置の制御部に、コンピュータネットワークを介して１の第２のスキャナ制御装置と接続中に他の第２のスキャナ制御装置からアクセスされると使用不可能であることを示すロック情報を他の第２のスキャナ制御装置宛てに返すロック機能を設け、他の第２のスキャナ制御装置、すなわち他のクライアントとのコネクションが成立しないようにしている。スキャナは、クライアントとだけでなく、ネットワーク上のプリンタあるいはローカル接続されたプリンタと接続され、スキャナで読み取った画像データをプリンタで出力するコピー処理のために利用することも可能であり、このようなコピー処理中もネットワーク経由でスキャナを利用することができない。したがって、ロック機構はコピー処理を行っている間もロック情報を返してコネクションが成立しないようにすることが望ましい。
【００１９】
一方、第２のスキャナ制御装置においては、ネットワーク対応部がロック情報を受信するとそのロック情報の少なくとも１部を出力することによって接続確認を行うことができる。さらに、ロック情報に使用中のクライアントの情報、例えば、ドメイン名あるいはＩＰアドレスが含まれていれば、それを表示することにより、使用中のユーザを特定することが可能であり、便利である。
【００２０】
また、第１のスキャナ制御装置の制御部によりコンピュータネットワークを介して使用中のときは、第１のスキャナ制御装置側のローカル操作パネルにネットワーク経由で使用中であることを示すロック表示を表示することが望ましい。スキャナに原稿をセットする際に使用中であるか否かが明確に判るので、画像データを取得中の原稿を除いてしまったり、ローカルコピーあるいはネットワークコピーを開始してしまうような事態を未然に防止することができる。
【００２１】
また、第１のスキャナ制御装置側のローカル操作パネルにストップボタンを設け、コンピュータネットワークを介して第２のスキャナ制御装置と接続中であってもストップボタンが操作されるとその接続が解除されるようにしておくことが望ましい。誤ってスキャナが接続中のまま放置されている場合にはストップボタンを押すことにより他のユーザにスキャナを開放することができる。また、誤った原稿を原稿台あるいはドキュメントフィーダにセットしてしまったときに、スキャナ側でジョブを解除することができる。
【００２２】
さらに、第１のスキャナ制御装置側のローカル操作パネルにスタートボタンを設け、コンピュータネットワークを介して第２のスキャナ制御装置と接続中にスタートボタンが操作されると、第２のスキャナ制御装置宛てに、画像データの取り込み処理を開始するためのトリガー情報を送信できるようにすることが望ましい。また、第２のスキャナ制御装置のネットワーク対応部は、トリガー情報を受信すると、画像データ取得部を稼動または稼動に繋がる一連の処理を開始させるトリガー機能を備えていることが望ましい。このスタート機能により、原稿をスキャナ本体にセットしたときに、クライアントに戻らなくてもスキャナ側で画像データを取り込む処理を開始することができる。
【００２３】
第１および第２のスキャナ制御装置の間で送受信される操作コマンドあるいは応答コマンドは、操作コマンド毎に、あるいは応答コマンド毎にパケット化して送受信することが可能であるが、スキャナのように設定するパラメータの数が多い周辺機器においてはコマンドの送受信がネットワーク上のトラフィックを増加させる要因となる可能性がある。このため、第２のスキャナ制御装置のネットワーク対応部は、操作部から供給された複数の操作コマンドをバッファリングして送信するバッファリング機能を設け、また、第１のスキャナ制御装置の制御部には、バッファリングされた複数の操作コマンドをデコードし、個々の操作コマンドをスキャナ本体に供給するデコード機能を設けることが望ましい。応答コマンドにおいても同様である。即ち、操作コマンドあるいは応答コマンドを蓄積（バッファリング）して複数のコマンドを共通（例えば、１つ）のパケットで送受信することによりトラフィックを低減することが可能であり、ネットワークにかかる負荷を低減することができる。
【００２４】
しかしながら、すべての操作コマンドあるいは応答コマンドをバッファリングして送受信すると、緊急性を有するコマンド、あるいは応答コマンドを待って次の操作を行う操作コマンド、例えば、ステータスを要求する操作コマンドがバッファリングされてしまうと、スキャナの制御が順調に進まず、処理速度が低下してしまう。このため、バッファリング機能では、バッファリング指定されている操作コマンドまたは応答コマンドはバッファリングして送信し、スルー指定、すなわち、バッファリングせずに単独で送受信されることが指定されている操作コマンドまたは応答コマンドはバッファリングしないで送信することにより、ネットワーク負荷を軽減できると共に、スキャナの操作をスムーズに高速で進めることができる。
【００２５】
さらに、スルー指定されている操作コマンドまたは応答コマンドが供給されるとバッファリングされた操作コマンドまたは応答コマンドを送信し、その後にスルー指定された操作コマンドまたは応答コマンドを送信することにより、バッファリングされたコマンドに対するスルー指定されたコマンドの前後関係を崩すことなくスキャナを操作することが可能である。このため、スルー指定されたステータスを要求するような操作コマンドに対して、それ以前に指定されたパラメータなどが設定済みのスキャナの状態を返すことができる。
【００２６】
また、操作コマンドなどをバッファリングする際は、操作コマンドまたは応答コマンドを、パケットデータ中の、各操作コマンドまたは応答コマンド毎に予め決まった位置にバッファリングすることにより、操作コマンドあるいは応答コマンドを圧縮した状態で送受信することができる。したがって、データ量を減らすことができるので、よりネットワークの負荷を軽減できる。また、同じパラメータを設定途中で変えるような場合は、バッファリング中のコマンドが送出される以前に置き換わるので、スキャナとの間で無駄な応答を避けることができる。
【００２７】
本発明のスキャナ制御システムは、上記のような処理を実行可能な命令を有する制御プログラムとして実現することが可能であり、第１のスキャナ制御装置として機能する制御プログラムをスキャナがローカル接続された端末、あるいは、スキャナにインストールし、第２のスキャナ制御装置として機能する制御プログラムをクライアントにドライバなどとしてインストールし、これらの端末またはスキャナをネットワークで接続することにより実現できる。これらの制御プログラムはコンピュータで読み取り可能なハードディスク、ＣＤ−ＲＯＭあるいはＲＯＭなどの記録媒体に記録して提供あるいは使用することが可能である。また、制御プログラムは、ネットワークを介して提供してもよい。この場合、制御プログラムを物理的な信号として実体化させた搬送波が用いられる。搬送波としては、例えば、パケットが利用される。
【００２８】
【発明の実施の形態】
（システムの概要）
以下に図面を参照しながら本発明の実施の形態を説明する。図１に、本発明に係るスキャナ制御システムの概要を示してある。本例のスキャナ制御システム２０は、ユーザのパソコン（パーソナルコンピュータ）１にインストールされたネットワーク対応型のＴＷＡＩＮドライバ（第２のスキャン制御装置として機能する）１０と、ネットワーク２２を介してパソコン１と接続された周辺機器管理装置３０との組み合わせで構成されている。ＴＷＡＩＮドライバ１０は、例えば、後述するＣＤ−ＲＯＭリーダ２００を介してＣＤ−ＲＯＭによってインストールすることができる。もちろん、プレインストールされていてもよい。また、例えば、インターネットを介して、サーバよりダウンロードして、インストールすることができる。その際、ＴＷＡＩＮドライバ１０を構成するプログラムは、パケット等の搬送波に物理的な信号の形に実体化された形で提供されることができる。
【００２９】
パソコン１は、図１８に基づいて説明したものと略同様の構成であり、ＴＷＡＩＮ対応のアプリケーション６がＯＳ（オペレーティングシステム）５の上で動作できるようになっている。さらに、本例のパソコン１は、ネットワーク２２を経由してデータを交換するために、ＬＡＮカードなどのハードウェア的なインタフェース機能およびＴＣＰ／ＩＰなど適当なネットワークプロトコルをサポートするソフトウェア的なインタフェース機能を備えたネットワークインタフェース（ネットワークモジュール）１９を備えており、インストールされたネットワーク対応のＴＷＡＩＮドライバ１０がネットワークを介してデータ交換できるようになっている。また、パソコン１は、ＴＷＡＩＮドライバ１０で取得した画像データを収納できるハードディスク７、さらに、アプリケーションあるいはＴＷＡＩＮドライバ１０から適当な表示をＯＳ５を経由して出力できるディスプレイ８、キーボードなどの入力用機器９を備えている。また、プログラム等をインストールするためのＣＤ−ＲＯＭリーダ２００が接続されている。
【００３０】
本例のＴＷＡＩＮドライバ１０は、アプリケーション６に対し従来のＴＷＡＩＮドライバと同様のインタフェースを提供するために、共通のＡＰＩを提供するアプリケーション対応部１１と、そのＡＰＩに基づきスキャナ２を操作するためのスキャナ独自、あるいはスキャナメーカ独自の操作コマンドを生成する操作部１２と、スキャナ２から取得した画像データを適当なファイル形式に変換してハードディスク７などの記録媒体に格納する画像データ取得部１３とを備えている。操作部１２は、さらに、ＴＷＡＩＮドライバが呼出されたときに詳細なスキャナの条件を設定したり、スキャナ２を直に制御するためのダイアログボックスを表示して操作コマンドを生成し、スキャナ２を制御する機能も備えている。
【００３１】
本例のＴＷＩＮドライバ１０は、これらに加えて、ネットワーク上のスキャナを制御するために、ネットワーク対応部１４が設けられており、このネットワーク対応部１４の送信部１５で操作部１２から供給された操作コマンドがパケット化されてネットワーク２２経由でスキャナ宛てに送信され、受信部１６でスキャナから受信したパケットから応答コマンドを抽出（デコード）して操作部１２に供給できるようになっている。また、受信部１６は、パケット化された画像データを受信した場合は、その画像データを画像データ取得部１３に供給するようになっている。さらに、ドライバ１０は、詳しくは後述するが、ネットワーク上のスキャナがすでに使用されているときにスキャナ側から提供されるロック情報を表示する接続確認機能１７と、スキャナ側からネットワーク経由で送信されたトリガー情報に基づき画像データを取得する処理を開始するトリガー機能１８を備えている。
【００３２】
本例のスキャナ制御システム２０を構成するスキャナ２の側のスキャナ制御装置は、スタンドアロンの周辺機器管理装置３０として実現されている。もちろん、スキャナ２と一体化されたネットワークスキャナなどの他の形態で提供することも可能である。本例の周辺機器管理装置３０は、図１に機能的な概略構成を示してあるように、ネットワーク２２と接続してデータ授受を可能とするためのネットワークインタフェース３１と、基本的な機能をサポートするＯＳ（オペレーティングシステム）３２と、このＯＳ３２の上で動作する制御部５０とを備えている。さらに、ＳＣＳＩインタフェース３３、セントロニクスインタフェース３４などの周辺機器用のインタフェースを備えており、これらにスキャナ２およびプリンタ３５が接続されている。
【００３３】
制御部５０を実現するためのソフトウエアは、予め周辺機器管理装置３０のハードディスク７にインストールしておくことができる。もちろん、ソフトウエアの全部または一部をＲＯＭに格納しておくこともできる。このほか、図示していないが、ＣＤ−ＲＯＭリーダ等を用いて、インストールすることができる。また、ネットワーク２２またはインターネットを介してインストールすることも可能である。
【００３４】
また、本例の周辺機器管理装置３０は、ＬＣＤ（液晶ディスプレイ）等のディスプレイと、操作パネルとの機能を持つローカル操作パネル３６が接続され、制御部５０から制御できるようになっている。このような周辺機器管理装置３０は、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭ、インタフェースコントローラおよびこれらを接続するバスなどを備え、それに、ハードディスク７等が接続されるパソコン（パーソナルコンピュータ）などの情報処理装置をベースに構築することができる。もちろん、一部または全部をハードウエアロジックにより実現するようにしてもよい。
【００３５】
周辺機器管理装置３０のネットワークインタフェース３１は、パソコン１のネットワークインタフェースと同様にネットワーク２２を介してデータを授受するためのハードおよびソフト的なサポート機能を備えており、制御部５０がネットワーク２２を介してパソコン１などとデータの授受ができるようになっている。制御部５０は、ネットワーク経由でコマンドを送受信するための応答部５１を備えており、この応答部５１の受信機能５２でパソコン１から受信したパケットデータから操作コマンドを抽出して、ＳＣＳＩインタフェース３３を経由してスキャナ２に供給できるようになっている。また、応答部５１の送信機能５３により、スキャナ２から供給された応答コマンドをパケット化してネットワーク経由でパソコン１に送信できるようになっている。
【００３６】
さらに、制御部５０は、スキャナ２が使用中のときにネットワーク経由でアクセスしたユーザに対しロック情報を提供したり、あるいはロック情報をローカル操作パネル３６に表示するロック機能５４、ローカル操作パネル３６のスタートボタンが押されたときに、トリガー用のデータをネットワーク経由で送信するスタート機能５５、ローカル操作パネル３６のストップボタンが押されときにコネクションを強制的に解除する解除機能５６を備えている。
【００３７】
さらに、本例の制御部５０は、ＳＣＳＩインタフェース３３を介してスキャナ２から受信した画像データをパケット化してネットワーク経由でパソコン１宛てに送信する画像データ出力機能５７を備えている。この画像データ出力機能５７は、さらに、操作パネル３６の操作によって、スキャナ２で得られた画像データを、セントロニクスインタフェース３４を経由してローカル接続されたプリンタ３５に提供してローカルコピーを行う機能、さらに、ネットワークインタフェース３１を介してネットワーク２２に接続されたネットワークプリンタ（図示せず）に画像データを提供してネットワークコピーを行う機能もサポートしている。
【００３８】
（処理の概要）
図２および図３に示したフローチャートに基づき、ネットワーク対応型のＴＷＡＩＮドライバ１０および周辺機器管理装置３０を備えた本実施の形態に係るスキャナ制御システムの処理の概要を説明する。
【００３９】
まず、パソコン１のアプリケーション６からネットワーク対応型のＴＷＡＩＮドライバ（以降においてはドライバ）１０が呼び出されると、ステップ１０１でドライバ１０が起動する。ドライバ１０が起動すると、ステップ１０２でＯＳの種類、ネットワーク環境、例えば、ネットワークモジュールのバージョンチェックなどの動作環境チェックが行われる。そして、ステップ１０３でネットワーク２２を経由して周辺機器管理装置（以降においては管理装置）３０宛てにコネクション要求を発送する。
【００４０】
本例のスキャナ制御システムにおいては、ネットワークプロトコルとしてＴＣＰ／ＩＰが採用されており、スキャナ制御システムにかかるデータの授受用のポート番号として特定の番号、例えば、１８６５が割り当てられている。したがって、管理装置３０は、ステップ３０１でそのポート番号宛てにコネクション要求が出されるのを待ち、コネクション要求があるとステップ３０２以降の処理でそれに対する応答メッセージを返す。
【００４１】
図４に、応答メッセージなど、以降のプロセスにおいてドライバ１０と管理装置３０との間でネットワーク２２を経由して授受されるパケットデータ６０の構成例を示してある。パケットデータ６０は、１２バイトのヘッダーデータ６１と、このヘッダーデータ（ヘッダ情報）６１に続く実データ６２から構成されておいる。全体のデータ長がイーサネットなどのネットワーク２２の規格に従った長さに納まるようになっている。ヘッダーデータ６１には、スキャナ制御システムのパケットデータであることを示す識別データ６３と、パケット化された情報の種別を示すパケット種別６４と、実データに収納されたデータの圧縮状態を示すデータ種別６５などが含まれている。
【００４２】
パケット種別としては図５に示してあるように、透過モード（スルー）の操作コマンドが含まれているパケット、バッファモードの操作コマンドが含まれているパケット、コネクション要求に対する応答メッセージが含まれているパケット、応答コマンドが含まれているパケット、イメージデータ転送用のパケット、さらには、トリガー情報が含まれているパケットなどの区別ができるようになっている。したがって、これらのパケットを受信した管理装置の制御部５０あるいはドライバ１０のネットワーク対応部１４は、ヘッダーデータ６１に基づいてパケットからデータを抽出し、また、必要に応じてバッファリングされたデータのデコードなどの処理を行うことができる。
【００４３】
ステップ３０２で生成される、クライアント１に返送すべき応答メッセージのパケットは、ヘッダーデータ６１のパケット種別６４がコネクション応答となり、実データ６２として管理装置３０に対応するドライバのバージョン情報が含まれたパケットデータとなる。なお、この段階では、応答メッセージは送信されない。さらに、管理装置３０に接続されたスキャナ２が他のユーザによって使用されているかを判断する（ステップ３０３）。使用されていないときは、前記応答メッセージを送信させる（ステップ３０４ａ）。そして、ローカル操作パネル３６に、スキャナ２が使用可能である旨を表示する。一方、スキャナ２がユーザに使用されている場合には、スキャナ２がロックされた状態であるので、制御部３０のロック機能５４から、そのジョブの種別と使用中のユーザの情報（ロック情報）がコネクション応答（応答メッセージ）パケットに追加され、応答メッセージを送信させる（ステップ３０４ｃ）。そして、使用可能でない場合、ロック機能５４により、アクセスしたクライアント１とのコネクションは切断され（ステップ３０４ｅ）、接続待ちの状態に戻る。
【００４４】
ドライバ１０は、ステップ１０４で応答メッセージが送信されているのを待ち、ステップ１０５でコネクションが確立されたか否かを確認する。そして、コネクションが拒絶された場合は、ステップ１０６において、ドライバ１０のネットワーク対応部１４の接続確認機能１７が、パソコン１のディスプレイ８に応答メッセージに含まれる関連情報を表示する。
【００４５】
図６には、ドライバ１０を始めて起動したとき、あるいは、使用するスキャナの選択（アドレス）を変えたときに示される表示内容を示してある。ドライバ１０を起動したときに、初期設定ダイアログ６７としてネットワークスキャナの指定入力６７ａを備えたダイアログが表示され、所望のスキャナをＩＰアドレスで指定することができる。ドライバ１０は、指定されたアドレスの管理装置３０に対しコネクション要求を発送し、該当するＩＰアドレスに管理装置３０が存在するか否かを確認し、その結果を表示する。その際、管理装置３０に接続されたスキャナ２が使用中であれば、そのジョブ種類と使用中のユーザの情報を表示する。
【００４６】
図６では、ネットワーク上に該当する管理装置が存在するが、そのスキャナは、他のユーザ（ＩＰアドレスで示されている）によってネットワーク対応のＴＷＡＩＮドライバを用いて専有されていることが表示されている。したがって、所望のスキャナ２が接続された管理装置３０とのコネクションは確立されず、スキャナをすぐに利用することはできない。
【００４７】
また、図７に示すように、パソコン１にインストールされているドライバ１０のバージョンが管理装置３０と合っていないと、ネットワークを経由したデータ授受に支障が生ずる可能性がある。したがって、ドライバ１０の接続確認機能１７では、さらに、応答メッセージに含まれるバージョン情報を確認し、ドライバ１０のバージョンと対応していないときは、バージョンアップすることを推奨するコメント６８を表示し、コネクションを切断して処理を終了する。
【００４８】
さらに、ドライバ１０を用いてアクセスするネットワークスキャナのアドレスがすでに設定されている場合は、そのスキャナの管理装置３０にコネクション要求が送らる。また、コネクションが成立しない場合は、その応答メッセージに含まれた情報が図８および図９に示すようなメッセージとして表示される。図８（ａ）に示したメッセージ６９は、管理装置３０のスキャナ２が、ＩＰアドレス（符号６９ａ参照）で表示された他のクライアント１によってネットワーク経由で使用されていることを示している。
【００４９】
なお、パソコン１は、ＩＰアドレスと、ユーザデータ（例えば、ユーザ名）を管理するデータサーバがネットワーク２２に接続されている場合には、ＯＳ５が有する問い合わせ機能を用いて、例えば、図２０に示すようなデータサーバに、ＩＰアドレスに対応するユーザ名を問い合わせ、その結果を受け取って、例えば、図８（ｂ）に示すように、“TAROU1”のような表示を行うことができる。
【００５０】
一方、図９（ａ）に示したメッセージ７０ａでは、スキャナ２がネットワーク２２に接続されたネットワークプリンタにイメージデータを送ってネットワークコピーを行うために使用されていることを示しており、コピー先のプリンタがＩＰアドレスで表示されている。この場合、ＯＳ３２が問い合わせを行う機能を有するときには、上述した場合と同様に、データサーバに問い合わせることによってユーザ名を取得して表示させることができる。また、図９（ｂ）に示されたメッセージ７０ｂでは、スキャナ２が管理装置３０にローカル接続されたプリンタ３５にイメージデータを送ってローカルコピーするために使用されていることを示しており、このケースではユーザの情報は表示されない。
【００５１】
スキャナ２が他のユーザによって使用されているときは、図２に示すように、ステップ３０４ｅで、管理装置３０の制御部５０のロック機構５４によってローカル操作パネル３６に、図１０（ａ）に示すようなロック情報がローカル表示される。本例では、ロック中であること、および、使用中のユーザの情報がＩＰアドレスで表示される（符号３６ｃ）。このため、ローカルコピーあるいはネットワークコピーなどの目的で管理装置３０に接続されたスキャナ２を使用しようとするユーザは、スキャナ２がネットワークを介して使用されていることを一目で把握することができる。したがって、読み取り中に誤って原稿台の原稿を外してデータの取り込みに支障が生じさせたり、あるいは、スキャナがロックされていて使用できないにも関わらず、原稿をセットするなどの無駄な作業を行うのを防止することができる。
【００５２】
なお、この場合にも、ＩＰアドレスを用いてデータサーバに問い合わせることで、ユーザ名を取得して、表示させることができる。図１０（ｂ）は、その一例である（符号３６ｄ）。
【００５３】
ドライバ１０においては、コネクションが成立すると、ステップ１０７で操作部１２によりスキャナの詳細設定および制御を行うためのダイアログがディスプレイ８に表示される。図１１にダイアログの一例を示してある。このダイアログ７１により、スキャナ２で行うハーフトーン処理などの画像処理、濃度補正などの補正処理、解像度などのデータフォームの設定、読み取りモードなど多くの設定情報が入力できるようになっている。ドライバ１０の操作部１２は、このダイアログの設定に基づき順番に操作コマンドを生成しスキャナを操作することができる。
【００５４】
ステップ１０８でダイアログ７１を介してスキャナから画像データを取得するための、一連のパラメータの設定が終了すると、ステップ１０９でスキャナ２による原稿のスキャンを開始する。ステップ１０９のスキャン開始は、パソコン１の側でダイアログ７１に表示された取り込みボタン７１ａをクリックすることによって指示することができる。また、管理装置３０の操作パネル３６のスタートボタン３６ａを操作してもスキャンを開始させることができる。
【００５５】
ネットワーク２２に管理装置３０を介して接続されたスキャナ２と、クライアント１との距離は一般に離れていることが多い。したがって、スキャナがクライアントにローカルで接続されているときのように、スキャナに原稿をセットしながらクライアントを操作するような環境は期待できない。ネットワークに接続されたスキャナ２を使用する場合は、スキャナ２の原稿台あるいはドキュメントフィーダに原稿をセットした後にクライアント１の側でスキャナのパラメータを設定し、読み取りを開始するパターンと、クライアント１の側でスキャナのパラメータを設定した後に、原稿をスキャナ２にセットして読み取りを開始するパターンが主に考えられる。前者のパターンの場合は、ディスプレイ８に表示されたダイアログ７１を操作することによって読み取りを簡単に開始できる。これに対し、後者のパターンでは、ダイアログ７１でのみスキャン開始ができるのでは、原稿をスキャナ２にセットした後に、再びパソコン１に戻って操作を行うことが必要となり、無駄な動きが生ずる。
【００５６】
そこで、本例のスキャナ制御システムにおいては、管理装置３０の制御部５０に、ステップ３０５でスタートボタン３６ａが操作されると、ステップ３０８でトリガー情報をパケット化して接続先のパソコン１に送信するスタート機能５５を設けてある。また、スタートボタンが押されない場合、ネットワークからのデータの受信があるかを判断し（ステップ３０６）、受信している場合には、ステップ３１０に進む。一方、受信していない場合には、ストップボタンが押されたかを調べる（ステップ３０７）。押されていない場合には、ステップ３０５に戻る。押されている場合には、ドライバ１０は、ステップ１０９においてダイアログ７１の取り込みボタンの操作のみではなく、送信されたトリガー情報によって操作部１２および画像取得部１３がコマンドを送受信して画像データを取得する処理を自動的に開始するトリガー機能１８をネットワーク対応部１４に設けてある。さらに、図５に示したように、パケット種別としてトリガデータであることを示す種別を用意してあり、トリガー機能１８はパケット種別を判別してドライバ１０の処理を進めることができる。
【００５７】
このようなスタート機能およびトリガー機能を設けることにより、ユーザは原稿をスキャナ２にセットした後に、管理装置３０の機側でスタートボタン３６ａを操作することによりスキャンを開始させ、画像データをパソコン１に送信することが可能となり、その度にパソコン１に戻る必要がなくなる。したがって、スキャナ２とパソコン１が離れている場合であってもスムーズに原稿を読み取らせ、その画像データをパソコン１で取り込むことができる。
【００５８】
スキャンが開始されると、図１２に示すように、管理装置３０の操作パネル３６にはスキャナが読み取り中であることが表示され、スキャナ２を使用中のユーザあるいはスキャナ２を使用するために到来した他のユーザに対しスキャナ２の使用状況が明確に示される。したがって、スキャン中であることが容易に確認でき、原稿を誤って操作するなどの不具合の発生を未然に防止することができる。
【００５９】
さらに、図１２に示してあるように、管理装置３０の操作パネル３６には、スタートボタン３６ａに加えてストップボタン３６ｂを設けてある。このストップボタン３６ｂを操作すると、制御部５０の解除機能５６がステップ３０７でストップボタンが操作されたことを判断し、スキャナが読み取り処理を行っているときは読み取り処理を中断する。そして、ステップ３１６で作業終了にしてステップ３１７でパソコン１とのコネクションを切断する。同時に、パソコン１に対しストップボタンが押されたことを示すパケットを送信する。パソコン１のドライバ１０は、ストップボタンが押されたことを示すパケットを受信するとステップ１１６で作業終了を判断する。そして、ディスプレイ８にドライバ１０によってストップボタンが押されてコネクションが解除されたことを示す図１３のメッセージ７２を表示し、ステップ１１７でコネクションを切断する。
【００６０】
ストップボタン３６ｂによるコネクションの強制解除機能は、スキャナ２に間違った原稿をセットしてしまったときなどに有効であり、さらに、ローカルで緊急にコピーを取りたいときなどにも有効である。また、誤って接続が解除されないままスキャナ２が未使用状態で放置されているような場合にも有効である。さらに、管理装置３０の制御部５０には、未使用状態で長時間（例えば、１５分程度）放置された場合は、自発的にコネクションを切断する機能も設けられている。この機能によってコネクションが切断されると、図１４に示したようなメッセージ７３がパソコン１のディスプレイ８にドライバ１０によって表示され、ドライバは処理を終了する。
【００６１】
図２に戻って、ダイアログ７１あるいはローカル操作パネル３６のスタートボタン３６ａでスキャン開始が指示されると、ドライバ１０ではコマンドを送受信する処理１１０が開始され、それに呼応して管理装置３０においてもコマンドを送受信する処理３１０が開始される。ドライバ１０においては、ステップ１１１でダイアログ７１の設定に基づいて操作部１２から操作コマンドが生成され、ステップ１１２で送信部１５が操作コマンドをパケット化して管理装置３０宛てに送信する。
【００６２】
一方、管理装置３０においては、応答部５１の受信機能５２が、ステップ３１１で、パソコン（クライアント）１から受信したパケット化されたデータから操作コマンドを抽出し、ＳＣＳＩインタフェース３３を介してスキャナ２に供給する。操作コマンドに対するスキャナ２の応答コマンドは、逆のルートを辿り、ステップ３１２で応答部５１の送信機能５３によりパケット化されてクライアント（パソコン）１宛てに送信される。クライアント１では、ステップ１１３で、ネットワーク対応部１４の受信部１６がパケット化されたデータから応答コマンドを抽出し、操作部１２に供給する。そして、ステップ１１４で、操作部１２は、応答コマンドを解析して、操作コマンドにしたがった設定がスキャナ２で行われたか否かなどの判断を行い、次の処理に進む。
【００６３】
このように、本例のスキャナ制御システムにおいては、パソコン１とスキャナ２がネットワークを介して接続されているが、ドライバ１０の操作部１２で取り扱われるデータは、スキャナをパソコンにローカル接続しているときに授受される操作コマンドおよび応答コマンドそのものである。したがって、ＴＷＡＩＮドライバ１０の主要な機能はそのまま使用することが可能であり、ネットワーク経由でスキャナと接続されていても、アプリケーション６に対しては、ローカル接続と同様のインタフェースを提供することができる。
【００６４】
また、操作部１２の処理内容もローカル接続されているときとほとんど変わりがないので、ドライバをネットワーク化する際の作業時間も短くて済む。さらに、操作部１２およびスキャナ本体２で使用されるコマンドをネットワーク対応のデータとするときに、他のコマンド体系、あるいは言語に変換する必要がないので、コマンドを送信および受信するときのデータ変換にかかるオーバヘッドを低減できる。従って、処理速度が速く、パソコン１あるいは管理装置３０に対する負荷の少ないスキャナ制御システムを提供することができる。
【００６５】
また、スキャナ２においても、管理装置３０から供給される操作コマンドおよび管理装置３０に返す応答コマンドは、スキャナ２がローカル接続されている場合と同じである。したがって、従来のローカル接続型のスキャナを、管理装置３０を介してネットワーク２２に接続することが可能となり、複数のユーザでスキャナを共有することができる。
【００６６】
ステップ１１０および３１０で操作コマンドおよび応答コマンドを授受してスキャナ２の設定が終了すると、ステップ１１５およびステップ３１５において管理装置３０からパソコンのドライバ１０に画像データが送信される。画像データもネットワーク２２を介して送信できるように、適当なサイズのデータ長でパケット化されて管理装置３０の画像データ出力部５７からネットワーク２２に送り出される。ドライバ１０の受信部１６は、受信したパケットから画像データを抽出して画像データ取得部１３に供給し、画像データ取得部１３が所定のフォーマットでハードディスク７などの記録媒体に画像データを収納する。
【００６７】
画像データの送受信が終了すると、ドライバ１０および管理装置３０は、ステップ１１６および３１６で、ジョブが終了したか否かを判断する。ジョブが継続されている場合は、ドライバ１０は条件設定のステップ１０８に戻って新たなパラメータをスキャナ２に設定できる状態となる。また、管理装置３０もコマンドを送受信可能な状態に戻る。一方、ダイアログ７１の終了ボタンがクリックされたり、あるいはローカル操作パネルのストップボタン３６ｂが操作された場合は、ステップ１１７および３１７で接続を切断して処理を終了する。
【００６８】
（コマンドの送受信について）
図３に、操作コマンドおよび応答コマンドをドライバ１０と管理装置３０の間で授受する処理をさらに詳しく示してある。ステップ１１１で操作部１２において操作コマンドが生成されるたびに、その操作コマンドをパケット化して管理装置３０宛てに発送することも可能である。しかしながら、スキャナ２の設定項目は画像処理、補正処理、さらにデータフォームなど多岐にわたるため、操作部１２からスキャナ２に提供される操作コマンドの数は多い。さらに、この操作コマンドに対して応答コマンドがスキャナ２から発せられるのでネットワーク２２を介して授受するデータ量は非常に多くなる。したがって、スキャナ２をネットワーク２２に接続したことによりネットワーク上のトラフィックが増大しネットワークの性能が低下することが懸念される。
【００６９】
このため、本例においては、複数の操作コマンドおよび応答コマンドをバッファリングして一括で送受信し、ネットワークトラフィックを軽減できるようにしている。また、すべての操作コマンドおよび応答コマンドを一括で送受信したのでは、操作コマンドに対する応答コマンドを待って処理を進める機能、例えば、ステータス要求などのスキャナからデータを受信する実行関連の処理では、処理が進まず処理速度が低下してしまう。このため、本例のスキャナ制御システムにおいては、操作コマンドおよび応答コマンドをバッファリングするコマンドと、バッファリングしないコマンド（透過コマンドまたはスルーコマンド）に分けて処理を行うようにしている。
【００７０】
図１５に、本例のスキャナ制御システムにおいてスキャナ２と操作部１２との間で授受される操作コマンド８１の種類と、その操作コマンドのモードとが示され、さらに、操作コマンドに対する応答状態を模式的に示す。本実施の形態のように、スキャナがＳＣＳＩ接続（ローカル接続）である場合には、コマンドが１つずつ送られていく。一方、ネットワーク接続の場合には、スルーコマンドは、１つずつスキャナに送られるが、バファリングコマンドは、一旦、蓄積され、まとめてスキャナに送られる。
【００７１】
本実施の形態のスキャナ制御システムにおけるスキャナ２に対する操作コマンド８１の体系は、「ＥＳＣ」に続く１文字あるいは数文字のデータで表現される「ＥＳＣ／Ｉ」と呼ばれる体系が採用されている。また、それらの操作コマンド８１に応答する応答コマンドはＡｃｋまたはＡｃｋ／Ｎａｃｋの操作コマンドの結果のみを示すものと、所定のデータを伴うものに分けられる。操作コマンド８１をバッファリングして良いか否かは、操作コマンド毎に検討されており、主に、単に操作コマンドによる設定が正常に進んだことが確認されれば良い操作コマンドはバッファリングされるようになっている。
【００７２】
これに対し、応答コマンドあるいはそれらに付随するデータを操作部１２が解析してエラー表示を行ったり、あるいは、原稿が排紙されたか否かのように、その操作コマンドに対する結果（応答コマンド）を待って次の処理が進む操作コマンドなどはバッファリングされずに、単独でパケット化されて送信される（スルー）ようになっている。本例のスキャナ制御システムにおけるバッファリングとスルーの種別は予め定められている。操作コマンド８１がバッファリングされる場合は、応答コマンド８２もバッファリングされてパソコン１に返されるようになっている。
【００７３】
図３に戻って、ステップ１１１において操作部１２から操作コマンドが供給されると、ネットワーク対応部１４の送信部１５は、ステップ１２１でその操作コマンドがバッファリング指定されているかスルー指定されているかを判断する。バッファリングするコマンドとして指定されている操作コマンドは、ステップ１２２で所定のフォーマットでその操作コマンドをバッファリングする。
【００７４】
図１６に、操作コマンドをバッファリングするパケットデータ９０の構成を示してある。このパケットデータ９０には、パケット種別が図５に示したバッファリングモードコマンドにセットされたヘッダ情報６１が先頭に設けられており、これに続いて、有効な操作コマンドに相当する位置のビットが立てられたコマンドステータスブロック９１が配置され、さらに、操作コマンドに付随するパラメータがそれぞれの操作コマンド毎に定められた位置に収納されるコマンドインフォメーションエリア９２が配置されている。
【００７５】
したがって、ステップ１２２においては、バッファリングする操作コマンドが供給されると、コマンドステータスブロック９１内の、その操作コマンド毎に予め定められたビットが立てられ、その操作コマンドがパケットデータ９０にバッファリングされる。さらに、その操作コマンドにパラメータが付随している場合は、そのパラメータの内容がコマンドインフォメーションエリア９２の所定の領域に収納される。コマンドステータスブロック９１およびコマンドインフォメーションエリア９２は、バッファリングされる操作コマンドの全てに対し予め定まったビットおよびエリアが予約されており、数１０個の操作コマンドを１つのパケットデータ９０としてネットワーク２２を介して管理装置３０に送ることができる。
【００７６】
これらの操作コマンドに対応して管理装置３０からドライバ１０に返送される応答コマンドも、図１７に示す、上記と同様の方法でバッファリングされて送られるようになっている。応答コマンド用のパケットデータ９５は、図５に示した、バッファリングモードコマンドに対する応答であることを示すパケット種別が収納されたヘッダ情報９６に続いて、応答コマンド毎に予め決まった位置のビットが立てられるリターンコマンドステータスブロック９７が設けられている。そして、操作コマンドに対し応答コマンドがＡｃｋのときはビットを立てず、Ａｃｋ応答が得られなかったとき、あるいはＮａｃｋなどのエラーが発生したときに、リターンコマンドステータスブロック９７のうち、図１６に示したコマンドステータスブロック９１の該当する操作コマンドのビットを立てて応答コマンドとしている。
【００７７】
このように、操作コマンドおよび応答コマンドをバッファリングすることにより、スキャナ２を操作するためにネットワーク２２を介して授受されるデータ量を大幅に低減することが可能であり、ネットワーク負荷を軽減することができる。また、操作コマンドをパケットデータ９０のコマンド毎に定まった位置にバッファリングすることにより、同一の操作コマンドが何らかの条件により複数回、操作部１２から供給された場合であっても、バッファリングされたデータが上書きされるだけであり、ネットワークを経由して授受するデータ量を増やさずに済む。
【００７８】
図３に戻って、ステップ１１１で操作部１２から供給された操作コマンドがスルー指定されている操作コマンドの場合は、ステップ１２３で、そのスルーコマンドが供給される以前の操作コマンドがバッファリングされたパケットデータ９０を管理装置３０宛てに送信する。
【００７９】
管理装置３０においては、ステップ３２１でドライバ１０からのパケットデータを受信すると、ステップ３２２において、応答部５１の受信機能５２がパケットデータのヘッダ情報からスルー指定された操作コマンドのパケットか、操作コマンドがバッファリングされたパケットかを判断する。バッファリングされたパケットであれば、ステップ３２３で受信機能５２がパケットデータ９０のコマンドステータスブロック９１およびコマンドインフォメーションエリア９２のデータをデコードし、所定の順番で、操作部１２から供給されたＥＳＣ／Ｉベースの操作コマンドを再現する。
【００８０】
一方、データを受信しない場合には、スタートボタンが押されたかを調べる（ステップ３２１ａ）。そして、押されていない場合には、ステップ３２１に戻る。また、押されている場合には、トリガ情報を生成して、図２のＤ（ステップ３１６）に進む。
【００８１】
バッファリングされている操作コマンドは、操作部１２から供給された順番とスキャナ２に供給される順番とが一致する必要がないため、バッファリングされる際に生成された順番（時間情報）は削除されており、管理装置３０の受信機能５２においては、予め定められた順番で操作コマンドを再現し、ステップ３２４でスキャナ２にその操作コマンドを供給する。ステップ３２５で、供給した操作コマンドに対応する応答コマンドをスキャナ２から受け取ると、管理装置３０の応答部５１の送信機能５３は、ステップ３２６で応答コマンドをパケットデータ９５にバッファリングする。ステップ３２４および３２５を繰り返してパケットデータ９０でバッファリングして送られた操作コマンドをすべてスキャナ２に提供し、その応答コマンドが得られると、それらの応答コマンドがステップ３２６でバッファリングされた状態でドライバ１０に返送される。
【００８２】
ステップ１２４でドライバ１０がバッファリングされた応答コマンドを受信すると、応答コマンドをデコードし操作部に提供する。そして、図２に示したように、その応答コマンドを解析してエラーの有無を判断する。エラーがないときは、ステップ１２５でスルー指定された操作コマンドを管理装置３０宛てに発信する。このようにして、スルーコマンドが供給されると、それまでにバッファリングされていたコマンドが管理装置３０宛てに送信され、スキャナ２がそれらの操作コマンドにしたがって設定される。したがって、それらの操作コマンドの設定状態に関わることが多いスルーコマンドが管理装置３０を経由してスキャナ２に送られたときは、スキャナ２が所望の状態に設定されており、処理をスムーズに継続することができる。また、スルーコマンドの前に操作コマンドをバッファリングして一括送付することにより、ネットワーク上を流れるデータ量を大幅に低減できることは上述したとおりである。
【００８３】
スルー指定された操作コマンドのパケットが管理装置３０に受信されると、ステップ３２２でスルーコマンドであることが判断され、ステップ３２７でコマンドが抽出されてスキャナ２に提供される。そして、スキャナ２からの応答コマンドがステップ３２９でパケット化されてドライバ１０に送信される。ドライバ１０は送信されたパケットから応答コマンドを抽出して操作部１２に提供し、操作部１２はその情報、例えばステータス情報、給紙あるいは排紙情報などに基づいて次の処理、あるいは操作コマンドを生成する。
【００８４】
スルー指定されたコマンドには、スキャナ２の設定を終了してイメージデータ（画像データ）の送信開始を指示する操作コマンドが含まれている。したがって、ステップ１２６でこのイメージデータ取得を指示する操作コマンドであることが判ると、操作コマンドによってスキャナ２を設定する処理１１０からステップ１３０のイメージデータを取得する処理に移行する。管理装置３０においても、イメージデータの送信開始を指示するスルー指定の操作コマンドを受信すると、ステップ３２８でスキャナ２を設定する処理３１０からステップ３３０のイメージデータを送信する処理に移行する。
【００８５】
ステップ３３０のイメージデータを送信する処理においては、図５に示したイメージデータの転送パケットであることを示すパケット種別を含んだヘッダ情報６１に続いて、実データ６２としてイメージデータが続いたパケットデータがドライバ１０宛てに送信される。１つのパケットで送信できるデータ量はかぎられている。このため、スキャナ２から供給されるイメージデータが１つのパケットで納まらない場合は、ステップ３３１で１サイクルのイメージデータが終了するまで複数のパケットデータに分解して送られる。ドライバ１０においても、ネットワーク対応部１４の受信部１６がステップ１３０でパケット毎にイメージデータを受信し、そのパケットからイメージデータを抽出して画像データ取得部１３に画像データを供給する処理をステップ１３１で画像データが終了したと判断されるまで繰り返す。
【００８６】
ステップ１３１において、データが終了していない場合において、ストップボタンが押されているかを調べる（ステップ３３２）。ここで、押されていなければ、ステップ３３０に戻る。一方、押されている場合には、トリガ情報を出力する（ステップ３３３）。
【００８７】
以上に説明したスキャナ制御システムは、従来のＴＷＡＩＮドライバでも用いられている操作コマンドおよび応答コマンドをパケット化して、ネットワーク上のスキャナとクライアントとを接続したシステムであり、ネットワーク上のスキャナをローカル接続されたスキャナと同様にアプリケーションから操作することができる。また、操作コマンドおよび応答コマンドの体系を変えていないので、ネットワークを介して送受信する際のデータ変換にかかるオーバーヘッドが少なくて済み、処理速度の速いスキャナ制御システムを実現できる。さらに、従来のＴＷＡＩＮドライバの資源を有効に活用してネットワーク対応のドライバを提供することができるので、開発にかかる時間およびコストも低くできる。また、ネットワークに接続されるスキャナにおいても、スキャナ本体を制御するコマンド体系は従来のローカル接続されるものと同じにできるので、スキャナ本体のオペレーティングシステムを変えずに、上述した管理装置としての機能を備えた端末を介して、あるいはその機能を内蔵したネットワークスキャナとすることによりネットワークに接続することが可能である。
【００８８】
また、上述したスキャナ制御システムにおいては、あるユーザにスキャナが使用されているときはロック状態として、他のユーザに対してはスキャナを開放しないようにしており、これによって、スキャナの操作および画像データの信頼性を確保できるようにしている。その一方で、使用中のユーザの情報を表示したり、ネットワーク経由で送信することにより、スキャナの使用状態が明確に判るようにしている。また、ストップボタンによる強制終了あるいは時間による強制終了するモードを設けて、スキャナの稼動効率を向上できるようにしている。
【００８９】
さらに、クライアントのドライバとスキャナとの間で多くのコマンドが授受されるので、これらのコマンドをそのままネットワークを介して授受したときにネットワークの性能に大きな影響が発生しないようにコマンドをバッファリングして授受するようにしている。その一方で、応答コマンドあるいはこれに付随するデータが処理をスムーズに進行するために必要な操作コマンドにおいては、バッファリングしないで授受できるようにしており、本例のスキャナ制御システムは、ネットワーク負荷を軽減すると共にスキャナをスムーズに、迅速に操作することができる。
【００９０】
なお、上記では、クライアント側の第２のスキャナ制御装置としてアプリケーションから操作できるＴＷＡＩＮドライバとしてインストールされる制御プログラムを例に説明しているが、もちろん、上述した機能を備えたアプリケーションなど、他の形態で実現することも可能である。また、スキャナ側の第１のスキャナ制御装置も管理装置というスタンドアロンの装置で説明しているが、スキャナ本体と一体としてネットワークスキャナとして実現したり、あるいは、他の機能と共に汎用的なネットワークサーバとして実現することなども可能である。また、コマンド体系としてＥＳＣ／Ｉを例に説明しているが、他のコマンド体系であっても良いことはもちろんである。また、上記にて示した数値などは例示に過ぎず、発明がこれらによって限定されるないことはもちろんである。
【００９１】
次に、本発明の他の実施の形態について、図１９、図２０を参照して説明する。本実施の形態は、上述した周辺機器管理装置３０に代えて、汎用のコンピュータシステム、例えば、パソコンを用いてスキャナを管理する例である。
【００９２】
図１９は、本実施の形態で用いられる、一般的なコンピュータシステを構成するハードウエアシステムの構成図である。同図に示すように、コンピュータシステム１０００は、プログラムを実行することで、各種の機能を実現する中央処理装置（ＣＰＵ）１１００と、プログラムおよび固定データを格納するＲＯＭ１２００と、ランダムアクセスメモリＲＡＭ１３００と、インタフェース１４００とを備える。インタフェース１４００には、プリンタ３５、スキャナ２、ディスプレイ８、入力用機器９、ハードディスク７およびＣＤ−ＲＯＭリーダ２００が接続される。本実施の形態で実行されるプログラムは、例えば、上述したパソコン１におけるＴＷＡＩＮドライブ１０の場合と同様に、ＣＤ−ＲＯＭ、インターネットにより提供される。前者の場合には、ＣＤ−ＲＯＭリーダ２００により読み出され、ハードディスク７にインストールされる。そして、実行時に、ハードディスク７から読み出されて、ＲＡＭ１３００に展開される。また、ネットワーク２２を介して他のコンピュータから取り込むこともできる。
【００９３】
図２０は、上述したハードウエア資源を用いて実現される各種機能を示す。図２０に示す機能は、実現するプログラムは異なるものの、果たすべき働きは、基本的には、図１に示す周辺機器管理装置３０と同等のものを含む。すなわち、スキャナ制御用汎用コンピュータ１００は、ＯＳ１０５と、その上で動作するアプリケーション１０６と、スキャナの動作を制御する制御部１５０と、ネットワークインタフェース１１９と、プリンタ３５が接続されるセントロニクスインタフェース１３４と、スキャナ２が接続されるＳＣＳＩインタフェース１３３とを、実現すべき機能として有する。ＯＳ１０５は、ディスプレイ８、入力用機器９、ハードディスク７およびＣＤ−ＲＯＭ２００を管理下に置き、それぞれの動作を制御するドライバと共に、これらの動作を制御する。
【００９４】
制御部１５０は、受信機能１５２および送信機能１５３を有する応答部１５１と、ロック機能１５４、スタート機能１５５、マンマシンインタフェース１５８を有する。ここで、マンマシンインタフェース１５８を除き、他の機能は、プログラムの構成上の差異があるとしても、実現すべき機能の内容としては、基本的には、図１に示した周辺機器管理装置３０が搭載している機能と同様である。従って、それらについては、説明を繰り返さない。
【００９５】
マンマシンインタフェース１５８は、ディスプレイ８に、例えば、図１０に示すような画面を表示する。図１０の例では、スタートボタン３６ａ、ストップボタン３６ｂは、画像ではなく、実際の押しボタンスイッチが用いられている。しかし、本実施の形態では、それらも含めて、画像による表示を行う。そして、スタート、ストップの選択は、入力用機器９、例えば、マウスによって、ディスプレイ８の該当する個所をクリックすることにより行う。マンマシンインタフェース１５８は、マウスによるクリックを受け付けて、該当するボタンについての操作として処理する。
【００９６】
また、図２０では、ネットワーク２２に、クライアント側の装置として、図１に示すパソコン１と同じものが接続されている。もちろん、汎用コンピュータ１０と同じ装置を接続し、それに、パソコン１で用いているＴＷＡＩＮドライバ１０を搭載して、クライアントとして用いることができる。
【００９７】
さらに、図２０に示すシステムでは、ユーザデータを管理するデータサーバ３００を有する。このデータサーバ３００は、ネットワークインタフェース３１９、制御部３１０およびＩＰアドレス／ユーザ名蓄積部３２０を有する。クライアントパソコン１からの問い合わせがあると、問い合わせに含まれるＩＰアドレスに対応する登録ユーザ名（パソコン名の場合もある）を検索し、その結果を問い合わせ元にパケットに乗せて返送する。これにより、問い合わせたパソコン１は、画面上に、例えば、図８（ｂ）に示すように、ＩＰアドレスと共に、ユーザ名を表示することができる。
【００９８】
本実施の形態では、スキャナの利用側については、前述した実施の形態と同じである。一方、スキャナが接続されるスキャナ制御用汎用コンピュータ１００は、ネットワーク２２を介してクライアントからの操作コマンドを取り出して、スキャナに伝達し、スキャナからの応答コマンド、データ等については、制御部１５０によって、要求元に送付する。
【００９９】
本実施の形態によれば、汎用のコンピュータにスキャナをローカル接続し、このコンピュータをネットワークに接続することで、他のコンピュータからスキャナを遠隔制御することが可能となる。
【０１００】
【発明の効果】
以上に説明したように、本発明のスキャナ制御装置、スキャナ制御システムおよび制御方法を用いることにより、スキャナをコンピュータネットワークを介して共有することが可能となる。特に、第２のスキャナ制御装置をネットワーク対応のＴＷＡＩＮドライバとして実現することにより、ローカル接続されたスキャナを使用するのと同様の操作感覚でネットワーク上のスキャナを使用することが可能となる。また、ＴＷＡＩＮ対応のアプリケーションであれば、ローカル接続したスキャナであっても、ネットワーク上のスキャナであっても同様に操作が可能であり、簡単な操作でスキャナから所望のイメージデータを自己の端末に取り込み、アプリケーションで処理することが可能となる。
【０１０１】
また、上記にて説明したスキャナ制御装置、制御システムおよび制御方法では、データ入力装置の１つであるスキャナをネットワークを用いて複数のユーザで共有するための保護あるいはデータ交換にかかる種々の発明を開示しており、本発明にかかるスキャナ制御装置、システムおよび制御方法を採用することにより実際にスキャナをネットワークに接続して複数のユーザで共有することが可能となる。したがって、スキャナを複数のユーザで活用することが可能となり、マルチカラーあるいは高解像度対応の高性能のスキャナなどの資源を有効利用することができる。
【図面の簡単な説明】
【図１】本発明にかかるスキャナ制御システムの概要を示すブロック図である。
【図２】図１に示すスキャナ制御システムにおける処理の概要を示すフローチャートである。
【図３】図１に示すスキャナ制御システムにおいてコマンドを交換する処理をさらに詳しく示すフローチャートである。
【図４】図１に示すスキャナ制御システムで交換されるパケットデータの概要を示す図である。
【図５】図４に示すパケット種別を説明する図である。
【図６】ネットワークスキャナのアドレスを指定する画面の例を示す図である。
【図７】ドライバのバージョンが対応してないことを示すメッセージの例である。
【図８】ネットワークスキャナが他のユーザによりネットワーク経由で使用されていることを示すメッセージの例である。
【図９】ネットワークスキャナが他のユーザによりローカルコピーあるいはネットワークコピーに使用されていることを示すメッセージの例である。
【図１０】ネットワークスキャナ側の操作パネルの表示例であり、スキャナがロックされていることを示す例である。
【図１１】クライアントに表示されるスキャナの条件を設定するためのダイアログの例である。
【図１２】ネットワークスキャナ側の操作パネルにスキャナが読み取り中であることを表示した例である。
【図１３】ネットワークスキャナの側でストップボタンが押され、コネクションが強制解除されたときのメッセージの例である。
【図１４】ネットワークスキャナに一定時間アクセスしなかったためにコネクションが強制解除されたときのメッセージの例である。
【図１５】バッファリング指定あるいはスルー指定された操作コマンドおよび応答コマンドの例を示す図である。
【図１６】操作コマンドをバッファリングしたパケットデータの構成例である。
【図１７】応答コマンドをバッファリングしたパケットデータの構成例である。
【図１８】スキャナをクライアントにローカル接続した例を示すブロック図である。
【図１９】本発明の他の実施の形態で用いられるコンピュータのハードウエアシステム構成を示すブロック図である。
【図２０】本発明の他の実施の形態における機能を示すブロック図である。
【符号の説明】
１・・パソコン（クライアント）
２・・スキャナ
３、３３・・ＳＣＳＩインタフェース
４・・ＴＷＡＩＮドライバ
５、３２・・ＯＳ
６・・ＴＷＡＩＮ対応のアプリケーション
７・・ハードディスク
８・・ディスプレイ
９・・入力装置
１０・・ネットワーク対応のＴＷＡＩＮドライバ（第２のスキャナ制御装置）
１１・・アプリケーション対応部
１２・・操作部
１３・・画像取得部
１４・・ネットワーク対応部
１５・・送信部
１６・・受信部
１７・・接続確認部
１８・・トリガー部
１９、３１・・ネットワークインタフェース
２０・・スキャナ制御システム
２２・・コンピュータネットワーク（ネットワーク）
３０・・周辺機器管理装置（管理装置、第１のスキャナ制御装置）
３５・・プリンタ
３６・・ローカル操作パネル
５０・・制御部
５１・・応答部
５２・・受信機能
５３・・送信機能
５４・・ロック機能
５５・・スタート機能
５６・・解除機能
５７・・画像出力機能
【図１】
0003649027.tif 000002
【図２】
0003649027.tif 000003
【図３】
0003649027.tif 000004
【図４】
0003649027.tif 000005
【図５】
0003649027.tif 000006
【図６】
0003649027.tif 000007
【図７】
0003649027.tif 000008
【図８】
0003649027.tif 000009
【図９】
0003649027.tif 000010
【図１０】
0003649027.tif 000011
【図１１】
0003649027.tif 000012
【図１２】
0003649027.tif 000013
【図１３】
0003649027.tif 000014
【図１４】
0003649027.tif 000015
【図１５】
0003649027.tif 000016
【図１６】
0003649027.tif 000017
【図１７】
0003649027.tif 000018
【図１８】
0003649027.tif 000019
【図１９】
0003649027.tif 000020
【図２０】
0003649027.tif 000021