(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023090108
(43)【公開日】2023-06-29
(54)【発明の名称】画像読取システム
(51)【国際特許分類】
H04N 1/00 20060101AFI20230622BHJP
【FI】
H04N1/00 127B
H04N1/00 350
【審査請求】未請求
【請求項の数】4
【出願形態】OL
(21)【出願番号】P 2021204892
(22)【出願日】2021-12-17
(71)【出願人】
【識別番号】000104652
【氏名又は名称】キヤノン電子株式会社
(72)【発明者】
【氏名】根岸 知樹
【テーマコード(参考)】
5C062
【Fターム(参考)】
5C062AA05
5C062AA14
5C062AA31
5C062AA35
5C062AB02
5C062AB17
5C062AB20
5C062AB21
5C062AB23
5C062AB41
5C062AB43
5C062AB44
5C062AC02
5C062AC05
5C062AC28
5C062AC40
5C062AC42
5C062AE03
5C062AE08
5C062AE15
5C062AE16
5C062AF01
5C062AF14
5C062BA02
(57)【要約】
【課題】2つの接続モードでスキャナーを使用できる環境において、接続モードを切り替えた場合、同じスキャナーにもかかわらず、ユーザーはスキャナードライバーを再選択しなければならないという問題がある。
【解決手段】画像読取装置100と、画像読取装置100を制御するアプリケーション201が実行される情報処理装置200とが2つ以上の通信方式により通信可能な画像読取システムであって、画像読取装置100は、通信方式から1つを選択する選択手段30と、選択手段30によって選択された選択通信方式と画像読取装置100の識別情報を情報処理装置200に通知する通知手段と、選択通信方式で情報処理装置200との通信を行う通信手段15、16とを備え、情報処理装置200で実行されるアプリケーション210は、通知手段からの通知に基づいて、選択通信方式で画像読取装置100を制御することを特徴とする。
【選択図】
図8
【特許請求の範囲】
【請求項1】
画像読取装置と、前記画像読取装置を制御するアプリケーションが実行される情報処理装置とが2つ以上の通信方式により通信可能な画像読取システムであって、
前記画像読取装置は、
前記通信方式から1つを選択する選択手段と、
前記選択手段によって選択された選択通信方式と前記画像読取装置の識別情報を前記情報処理装置に通知する通知手段と、
前記選択通信方式で前記情報処理装置との通信を行う通信手段と
を備え、
前記情報処理装置で実行される前記アプリケーションは、前記通知手段からの通知に基づいて、前記選択通信方式に対応した前記画像読取装置を制御するための制御ドライバを用いて前記画像読取装置を制御することを特徴とする画像読取システム。
【請求項2】
前記情報処理装置で実行される前記アプリケーションは、前記識別情報に基づいて前記画像読取装置の接続情報を取得することを特徴とする請求項1に記載の画像読取システム。
【請求項3】
複数の前記画像読取装置と、それらの識別情報および接続情報が管理された管理テーブルを有し、
前記情報処理装置で実行される前記アプリケーションは、前記通知手段からの通知に基づいて、前記管理テーブルから前記接続情報を取得することを特徴とする請求項2に記載の画像読取システム。
【請求項4】
前記情報処理装置で実行される前記アプリケーションは、前記通知手段からの通知に基づいて、前記制御ドライバを制御ドライバ格納フォルダから呼び出すことを特徴とする請求項1から3のいずれか一項に記載の画像読取システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、原稿の画像を読み取る画像読取システムに関する。
【背景技術】
【0002】
近年、ネットワークの発達もあり、ネットワーク接続とUSB接続の2つの接続モードを備えるスキャナーが多くなってきている。このようなスキャナーは、ネットワーク接続にすればオフィスなどで複数の人で共用できる。また、USB接続にすればローカルPCにデータを直接送信するので大量のスキャンをストレスなく行うことができる。このように用途に応じてネットワーク接続とUSB接続を切り替えて使用される(特許文献1参照)。
【0003】
一方、ユーザーはどちらの接続モードであっても、PC上のスキャンアプリケーションでスキャナーを選択するが、接続モードに応じたスキャナーを選択する必要がある。特にネットワーク上には複数の同型のスキャナーが接続されている可能性があり、使用したいスキャナーを特定する必要がある。特定には、下記のようにIPアドレス付きのスキャナードライバーを選択できるようになっているものがある。
【0004】
・USB接続時のスキャナードライバー名:「Scanner」
・ネットワーク接続時のスキャナードライバー名:「Scanner_10.5.2.100」
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
たとえば、同一ネットワーク上にPCとスキャナーが接続されていて、かつPCとスキャナーがUSB接続されているような、ネットワーク接続とUSB接続の2つの接続モードでスキャナーを使用できる環境において、スキャナーをネットワークモードにして使用する場合、ユーザーはPC上のアプリケーションでネットワーク接続時のスキャナードライバーを選択する必要がある。その後、同じスキャナーをUSBモードに切り替えて使用する場合、 同じスキャナーにもかかわらず、USB接続時のスキャナードライバーを再選択しなければならず、煩わしいことがあった。
【0007】
あるいは、有線LAN、無線LANの2つのネットワーク接続に対応していて、有線LANと無線LANを別々のIPアドレスで使用して有線、無線を切り替えた場合でも、スキャナードライバーを再選択する必要がある。
【課題を解決するための手段】
【0008】
以上を鑑み、本発明に係る画像読取システムは、
画像読取装置と、前記画像読取装置を制御するアプリケーションが実行される情報処理装置とが2つ以上の通信方式により通信可能な画像読取システムであって、
前記画像読取装置は、
前記通信方式から1つを選択する選択手段と、
前記選択手段によって選択された選択通信方式と前記画像読取装置の識別情報を前記情報処理装置に通知する通知手段と、
前記選択通信方式で前記情報処理装置との通信を行う通信手段と
を備え、
前記情報処理装置で実行される前記アプリケーションは、前記通知手段からの通知に基づいて、前記選択通信方式に対応した前記画像読取装置を制御するための制御ドライバを用いて前記画像読取装置を制御することを特徴とする。
【発明の効果】
【0009】
本発明は、ネットワーク接続からUSB接続に切り替えるなど、接続方法を切り替えてスキャナーを使用する場合でも、ユーザーがスキャナードライバーを再選択する必要がなくなり、ユーザーの利便性が向上する。
【図面の簡単な説明】
【0010】
【
図1】一実施形態による画像読取装置の概略的な構成図。
【
図2】一実施形態による画像読取装置の制御構成を示す図。
【
図3】一実施形態によるスキャンアプリケーションを示す図。
【
図4】一実施形態によるネットワーク接続時用のDSファイル作成処理のフローチャート。
【
図5】一実施形態によるスキャンアプリケーションのスキャナー選択方法を示す図。
【
図6】一実施形態によるスキャナー情報管理テーブル。
【
図7】一実施形態による画像システムの接続を示す図。
【
図8】一実施形態による画像読取装置の操作部を示す図。
【
図9】一実施形態による接続モードをUSBからネットワークに切り替えた処理を示す図。
【
図10】一実施形態による接続モードをネットワークからUSBに切り替えた処理を示す図。
【発明を実施するための形態】
【0011】
(実施例)
以下、本発明の例示的な実施形態について図面を参照して説明する。なお、以下の各実施形態は例示であり、本発明を各実施形態の内容に限定するものではない。また、以下の各図においては、実施形態の説明に必要ではない構成要素については図から省略する。
【0012】
図1は、一実施形態による画像読取装置100の概略的な構成図である。原稿台102は、読取対象の原稿101を積載収納する。原稿台102上の原稿は、原稿台原稿検知センサー110によって検出され、給紙ローラ106により一枚ずつ分離されて搬送路108に送り出され、搬送ローラ107によって搬送路108に沿って搬送され、排出部103に排出される。
【0013】
排出部103は、画像読取処理を終えた原稿101を積載収納し、排出部原稿検知センサー111にて排紙原稿の有無を検出する。レジストセンサー109は、搬送路108を搬送される原稿101を検出する。レジストセンサー109が原稿101を検出すると、画像読取ユニット104は、原稿上に形成された画像の読み取りを開始する。
【0014】
本実施形態において、画像読取ユニット104は、搬送路108の両側に2つ設けられており、一方が原稿101の表面を、他方が原稿101の裏面を読み取る。なお、画像読取ユニット104を1つのみとする構成であっても良い。各画像読取ユニット104の対向位置には、背景板105がそれぞれ設けられている。背景板105は、例えば、黒色の部材である。排紙口センサー112は、原稿101が搬送路108に残っているか、排出部103に排出されたかを検出する。
【0015】
画像読取ユニット104は、筐体と搬送路108に面して設けられたガラス板によって、内部が密封されている。画像読取ユニット104の内部には、ラインイメージセンサーと、一対の発光部と、が設けられている。ラインイメージセンサーは原稿101の搬送方向と直交する方向(主走査方向)に延設され、主走査方向の1ライン分の画像を1度に読み取る。ラインイメージセンサーは、例えば、CCDラインセンサーやコンタクトイメージセンサーである。一対の発光部は、それぞれ、ラインイメージセンサーと略平行に延設されており、例えば、複数のLEDからなるLEDアレイにより構成される。ラインイメージセンサーは、発光部によって照射され、原稿101で反射した反射光を受光・検出して原稿101上の画像を読み取る。
【0016】
図2は、一実施形態による画像読取装置100の制御構成を示す図である。画像読取装置100の制御部10は、CPU11を備え、CPU11は、ROM12に記憶されたプログラムを実行し、画像読取装置100全体の制御を行う。
【0017】
ROM12には、CPU11が実行するプログラムや固定的なデータが記憶される。RAM13には、上述したラインイメージセンサーの一例であるラインイメージセンサー1043が読み取った画像データや、CPU11の演算結果といった可変データが記憶される。ROM12及びRAM13は他の記憶デバイスであっても良い。
【0018】
制御部10の入出力I/F14には、画像読取ユニット104の発光部1044a及び1044bを駆動する駆動回路24や、ラインイメージセンサー1043が読み取った画像に対してシェーディング補正等の画像処理を行う画像処理回路26が接続される。
【0019】
なお、ADC25は、ラインイメージセンサー1043が出力するアナログ画像信号をデジタル画像データに変換するアナログ・デジタル変換器である。
【0020】
CPU11は、画像処理回路26から出力される画像データを取得する。USBI/F15は、情報処理装置の一例としてのパーソナルコンピューター(以下、PC)200とUSBケーブルで直接接続するためのインタフェースであり、後述するPC200上のアプリケーションからのスキャン指示などのコマンドの送受信や、画像読取装置100が読み取った画像データの送信が行われる。
【0021】
ネットワークI/F16は、画像読取装置100をネットワークに接続するためのインタフェースであり、同一ネットワーク上に接続されたPC200上で実行される画像読取装置100との接続が確立されたアプリケーションからのスキャン指示などのコマンドの送受信や、画像読取装置100が読み取った画像データの送信が行われる。
【0022】
操作部30は、USBI/F15を介して外部との通信を行うUSBモードか、ネットワークI/F16を介して外部との通信を行うネットワークモードかを選択するためのトグルボタンを含んで構成され、PC200との通信方式を選択することができる。この選択を受けて、CPU11は後述する接続モード切り替え時の処理を行うことで、PC200との間でUSB、ネットワークいずれの通信方式でも通信可能に構成されている。
【0023】
制御部10には、原稿台原稿検知センサー110と排出部原稿検知センサー111といった発光部121の構成要素である駆動回路123や、受光部122が受光したアナログ信号をデジタルデータに変換するアナログ・デジタル変換器(ADC)124が接続されている。なお、原稿台原稿検知センサー110、排出部原稿検知センサー111は、発光部121が照射した光が原稿で反射した反射光を受光部122で受光し、光電変換された出力信号を、アナログ・デジタル変換器124を経てCPU11に入力することで原稿の検知を行う光学式のセンサーである。
【0024】
図3は、PC200上のスキャンアプリケーション210の一例を示す図である。ここで例に挙げるスキャンアプリケーション210は、公知のTWAIN規格に準拠しているものとする。ユーザーによって起動されるスキャンアプリケーション210は、スキャナーを選択するスキャナー選択ボタン211とスキャン開始を指示するスキャンボタン212を有している。ユーザーによってスキャナー選択ボタン211が押下されると、スキャンアプリケーション210はTWAINデータソースマネージャー(以下、DSM)に、
図5に示すスキャナー選択ダイアログを表示するよう指示する。そしてユーザーが選択したスキャナー制御ドライバー(以下、DS(Data Source))をロードして、そのDSにスキャナーとの通信を確立させる。
【0025】
また、スキャンアプリケーション210は、公知のマルチキャストDNS(以下、mDNS)によって同一ネットワーク上に接続されているスキャナーを検出して、検出したスキャナー情報を
図6に示すスキャナー情報管理テーブルによって管理する。スキャナー情報管理テーブルは、RAM13に記憶され、スキャナー検出時に取得するスキャナー名、MACアドレス、IPアドレスのセットで構成される。スキャナー情報管理テーブルの作成方法については後述する。このMACアドレスは、後述するようにスキャナーの識別情報として利用され、IPアドレスは接続情報として利用される。
【0026】
ところで、DSMは、スキャナー選択ダイアログを表示する際、所定のフォルダ(以下、DS格納フォルダ)にあるDSファイルを列挙する仕様になっている。DSファイルは、ユーザーがスキャナーベンダーの提供するインストーラー等を使って別途インストールするのが一般的で、このインストールによってUSB接続時用のDS(以下、USB用DS)が配置される。USB用DSファイルのファイル名はスキャナー名と同じであり、
図5の「Scanner」がUSB用DSに相当する。
【0027】
これに対してネットワーク接続時用のDS(以下、NW用DS)は、USB用DSファイル名に、さらにIPアドレスが付加された名前になる。NW用DSは、自身のファイル名に付加されたIPアドレスを利用して、ネットワーク上に接続されている複数の同型スキャナーの中から、該当するIPアドレスのスキャナーと通信を確立する。
図5の「Scanner_10.5.2.110」、「Scanner_10.5.2.120」、「Scanner_10.5.2.130」がNW用DSに相当する。
【0028】
ここで、スキャナー情報管理テーブルの作成方法、およびNW用DSファイルをDS格納フォルダに配置する方法について
図4のフローチャートと
図7の画像読取システムの接続形態の一例に従って説明する。
【0029】
図7は本実施例の画像読取システムの接続形態の一例である。IPアドレスが「10.5.2.110」のスキャナー201、同じく「10.5.2.120」のスキャナー202、同じく「10.5.2.130」のスキャナー203の3つの同型スキャナーとPC200が同一ネットワーク上に接続されているネットワーク環境において、さらに、スキャナー201がPC200にUSB接続されている例である。ここでは、どのスキャナーも、ネットワークモードが選択されているものとする。
【0030】
ユーザーによって起動されたスキャンアプリケーション210は、スキャンボタン212が押下されるのを監視するメインスレッドとは別スレッドのスキャナー検出スレッドにおいて、前述したスキャナー情報管理テーブルを空にする初期化と、NW用DSファイルを削除する初期化と、所定の間隔でタイマーイベントが発生するようにタイマーの初期化を行う(S701)。
【0031】
スキャンアプリケーション210は、タイマーイベントが発生するたびに(S750)、mDNSのメッセージをマルチキャスト送信して(S751)、タイマーイベント処理を終了する。スキャナー201、スキャナー202、スキャナー203は、mDNSに対応する公知のAvahiサービスが実装されていて、mDNSのメッセージに対して、スキャナー名、MACアドレス、IPアドレスを含んだ情報を返すものとする。
【0032】
S702で、スキャンアプリケーション210は、スキャナーを検出したか確認する(S702)。スキャナーを検出しない場合(S702のNO)、S706に進む。定期的に同時実行されている上述のタイマーイベントの結果、スキャナーを検出した場合(S702のYES)、スキャナー名、MACアドレス、IPアドレスをセットにしてスキャナー情報管理テーブルに追加する(S703)。ここでは、スキャナー201、スキャナー202、スキャナー203を検出するので、スキャナー情報管理テーブルを
図6のように作成する。
【0033】
そして、スキャンアプリケーション210は、スキャナー名を元に、検出したスキャナーのUSB用DSファイルがDS格納フォルダに存在するか確認する(S704)。ファイルの存在確認は、スキャナー名に一致するUSB用DSファイルが存在するかどうかで判断する。USB用DSファイルが存在しない場合(S704のNO)、S706に進む。USB用DSファイルが存在する場合(S704のYES)、USB用DSファイルをコピーして、さらにIPアドレスを付加した名前にリネイムする処理を行う(S705)。ここでは、スキャナーベンダーの提供するインストーラーを用いたり、手動で配置することによって予めスキャナー名「Scanner」に対応するUSB用DSファイルがDS格納フォルダに格納されている状態を例に挙げると、S702でスキャナー201、スキャナー202、スキャナー203を検出しているので、それぞれ、「Scanner.ds」ファイルをコピーして、「Scanner_10.5.2.110.ds」、「Scanner_10.5.2.120.ds」、「Scanner_10.5.2.130.ds」ファイルを作成する。
【0034】
つまり、S705終了時点でDS格納フォルダには、USB用DSファイルの「Scanner.ds」と、上記3つのNW用DSファイルの計4つのファイルが配置されることになる。ユーザーによってアプリの終了が指示されたら(S706のYES)、アプリを終了する。そうでなければ(S706のNO)、S702に戻り、S702からS706までの処理を繰り返す。
【0035】
これにより、スキャナー選択ダイアログによって各スキャナーの選択が選択可能になる。ユーザーはUSBモードでスキャナーを使用したい場合「Scanner」を選択し、ネットワークモードでスキャナーを使用したい場合「Scanner_10.5.2.110」などのIP付きのDSファイルを選択する。選択されたDSファイルはスキャンアプリケーション210によってロードされ、USB用DSなら公知のUSB通信で、NW用DSなら、自身のファイル名に付加されたIPアドレスを元に通信先のスキャナーを特定して、公知のTCP通信で接続を確立する。
【0036】
以上、スキャナー情報管理テーブルの作成方法、およびNW用DSファイルをDS格納フォルダに配置する方法について説明した。本実施例では、TWAIN規格に準拠したシステム構成を例に挙げているが、これに限ったものではない。またスキャンアプリケーション210が同一ネットワーク上に接続されたスキャナーを検出して、NW用DSファイルを作成している例を挙げているが、スキャンアプリケーション210とは別のアプリケーションでスキャナーを常時監視していてDSファイルの作成を行うように構成してもよい。
【0037】
またスキャナー情報管理テーブルをRAM13に記憶して、スキャンアプリケーション210の起動時に毎回初期化する例を挙げているが、初期化せずに、クラウドストレージ等に記憶しておき、複数のスキャンアプリケーションで共有できるようにしても構わない。その場合、IPアドレスが変わる可能性を考慮して、スキャナー情報管理テーブル内に、同じMACアドレスで異なるIPアドレスが存在した場合、IPアドレスを最新情報に更新するといった処理をすることが望ましい。またスキャナー情報管理テーブルに接続モードを記憶しない例を挙げているが、記憶するように構成し、スキャンアプリケーション210起動時に、スキャナー情報管理テーブルに記憶された接続モードに応じたDSファイルをロードするようにしてもよい。
【0038】
つぎに、画像読取装置100の操作部30で接続モードを切り替えるときの切り替え処理について、
図8、
図9に従って説明する。まず、
図10に画像読取装置100の操作部30を示す。画像読取装置100の操作部30は「USB」ボタンと「有線」ボタンのトグルボタンになっている。画像読取装置100は「USB」ボタンが押下されると、所定のタイミングでネットワークI/F16を無効、USBI/F15を有効にして、USB15で外部との通信を行うUSBモードで動作する。また「有線」ボタンが押下されると、所定のタイミングでUSBI/F15を無効、ネットワークI/F16を有効にして、ネットワークI/F16で外部との通信を行うネットワークモードで動作する。このようにして選択された通信方式(選択通信方式)で通信が実行される。
【0039】
画像読取装置100は、接続モードの設定をROM12に記憶していて、起動時にROM12に記憶している接続モードで動作して、終了時に現在の接続モードをROM12に記憶する。出荷時のROM12には、あらかじめ「USB」が記憶されているものとする。このため初回起動時はUSBモードで動作するが、2回目以降の起動時は前回の接続モードで動作する。また、スキャン中には操作部30を操作できないようにしている。
【0040】
ネットワーク環境は前述した
図7に示す構成で、画像読取装置100がスキャナー201に該当する。
図8にスキャナー201をUSBモードからネットワークモードに切り替えるときの処理を示す。ここではスキャナー201がUSBモード、スキャナー202、スキャナー203がネットワークモードで動作しているものとする。ユーザーがスキャンアプリケーション210を起動して、
図3に示すスキャナー選択ボタン211を押下する。この時点で、スキャナー情報管理テーブルには、スキャナー202とスキャナー203の情報が追加されているので、スキャナー選択ダイアログには、USB用DSの「Scanner」と、スキャナー202のNW用DSの「Scanner_10.5.2.120」と、スキャナー203のNW用DSの「Scanner_10.5.2.130」が選択可能になっている。スキャンアプリケーション210は、ユーザーが選択した「Scanner」のUSB用DSをロードする(Step1101)。
【0041】
一方、PC200にUSBケーブルで接続されているスキャナー201は、ユーザーが不図示の電源をONすると、ROM12に記憶された接続モードで動作する。ここではUSBモードで動作しており、USBI/F15を有効にしている(Step1102)。スキャンアプリケーション210はUSB用DSの「Scanner」をロードすると、USB通信でスキャナー201に対して状態取得コマンドを定期的に送信する(Step1103)。それに対してスキャナー201は、現在選択されているUSBモードを示す「Mode=USB」という文字列と、MACアドレスを示す「MAC=11-22-33-44-55-60」という文字列を返す(Step1104)。以降、ユーザーがスキャナー201の操作部30で接続モードを切り替えるまで、Step1103、Step1104と同様のやり取りが行われる。
【0042】
ユーザーがスキャナー201の操作部30で接続モードを「有線」に切り替える(Step1105)と、スキャナー201は、スキャンアプリケーション210からの状態取得コマンド(Step1106)に対して、操作部30で選択されているネットワークモードを示す「Mode=LAN」という文字列と、MACアドレス「MAC=11-22-33-44-55-60」という文字列を返す(Step1107)。そして、スキャンアプリケーション210に接続モードを通知したタイミングで、実際に接続方法を切り替え、ネットワークモードで動作する(Step1108)。なお、所定の時間待っても状態取得コマンドを受信しない場合、タイムアウトしてネットワークモードで動作する。 また、スキャナー201は、ネットワークモードで動作するとスキャンアプリケーション210によって検出され、スキャナー情報管理テーブルに追加される。
【0043】
一方、スキャンアプリケーション210は、状態取得コマンドで取得した接続モードをRAM13に記憶しておき、「USB」から「LAN」に切り替わったことを検知すると、Step1101でロードしたUSB用DSの「Scanner」をアンロードして(Step1109)、状態取得コマンドで取得していたMACアドレスを元に、スキャナー情報管理テーブルからスキャナー201のIPアドレスを取得する。そしてNW用DSのファイル名を作成して、該当するNW用DSをDS格納フォルダからロードする(Step1110)。ここでは、MACアドレス「11-22-33-44-55-60」に一致するIPアドレスが「10.5.2.110」なので、NW用DSファイルとして「Scanner_10.5.2.110.ds」を作成し、該当するNW用DSをDS格納フォルダからロードする。
【0044】
スキャンアプリケーション210は、NW用DSをロード後、TCP通信で状態取得コマンドをスキャナー201に定期的に送信する(Step1111)。スキャナー201は、ネットワークモードを示す「Mode=LAN」という文字列と、MACアドレス「MAC=11-22-33-44-55-60」という文字列を返す(Step1112)。以降、ユーザーがスキャナー201の操作部30で接続モードを切り替えるまで、Step1111、Step1112と同様のやり取りが行われる。もしネットワークケーブルが抜けていたりして、スキャナー201が同一ネットワーク上に存在していない場合、Step1111でNW用DSのロードに失敗するので、スキャンアプリケーション210は、エラーを表示して、状態取得コマンドを送信しない。ここではNW用DSのロードをStep1111で一回だけ行う例を挙げているが、タイミングによってはスキャナー情報管理テーブルにスキャナー201の情報が追加される前にDSのロード処理を行おうとする可能性があるので、ロード処理を何度か繰り返すようにしてもよい。
【0045】
つぎに、
図9にスキャナー201をネットワークモードからUSBモードに切り替えるときの処理を示す。ここではスキャナー201、スキャナー202、スキャナー203がネットワークモードで動作しているものとする。ユーザーがスキャンアプリケーション210を起動して、
図3に示すスキャナー選択ボタン211を押下する。この時点で、スキャナー情報管理テーブルには、スキャナー201、スキャナー202とスキャナー203の情報が追加されるので、スキャナー選択ダイアログには、USB用DSの「Scanner」と、スキャナー201のNW用DSの「Scanner_10.5.2.110」と、スキャナー202のNW用DSの「Scanner_10.5.2.120」と、スキャナー203のNW用DSの「Scanner_10.5.2.130」が選択可能に表示される。ここでは、スキャンアプリケーション210は、ユーザーが選択した「Scanner_10.5.2.110」をロードする(Step1201)。
【0046】
一方、スキャナー201は、ユーザーが不図示の電源をONすると、ROM12に記憶された接続モードで動作する。ここではネットワークモードで動作しており、ネットワークI/F16を有効にしている(Step1202)。スキャンアプリケーション210はNW用DSの「Scanner_10.5.2.110」をロードすると、TCP通信でスキャナー201に対して状態取得コマンドを定期的に送信する(Step1203)。それに対してスキャナー201は、現在選択されているネットワークモードを示す「Mode=LAN」という文字列と、MACアドレスを示す「MAC=11-22-33-44-55-60」という文字列を返す(Step1204)。以降、ユーザーがスキャナー201の操作部30で接続モードを切り替えるまで、Step1202、Step1203と同様のやり取りが行われる。
【0047】
ユーザーがスキャナー201の操作部30で接続モードを「USB」に切り替える(Step1205)と、スキャナー201は、スキャンアプリケーション210からの状態取得コマンド(Step1206)に対して、操作部30で選択されているUSBモードを示す「Mode=USB」という文字列と、MACアドレス「MAC=11-22-33-44-55-60」という文字列を返す(Step1207)。そしてスキャンアプリケーション210に接続モードを通知したタイミングで、実際に接続方法を切り替え、USBモードで動作する(Step1208)。なお、所定の時間待っても状態取得コマンドを受信しない場合、タイムアウトしてUSBモードで動作する。
【0048】
一方、スキャンアプリケーション210は、状態取得コマンドで取得した接続モードをRAM13に記憶しておき、「LAN」から「USB」に切り替わったことを検知すると、Step1201でロードしたNW用DSの「Scanner_10.5.2.110」をアンロードして(Step1209)、USB用DSの「Scanner」をDS格納フォルダからロードする(Step1210)。
【0049】
スキャンアプリケーション210は、USB用DSをロード後、状態取得コマンドを定期的に送信する(Step1211)。スキャナー201は、USBモードを示す「Mode=USB」という文字列と、MACアドレス「MAC=11-22-33-44-55-60」という文字列を返す(Step1212)。以降、ユーザーがスキャナー201の操作部30で接続モードを切り替えるまで、Step1211、Step1212と同様のやり取りが行われる。もしUSBケーブルが抜けていたりして、スキャナー201がPC200で認識されない場合、Step1210でUSB用DSのロードに失敗するので、スキャンアプリケーション210は、エラーを表示して、状態取得コマンドを送信しない。ここではUSB用DSのロードを一回だけ行う例を挙げているが、タイミングによってはスキャナー201がUSBモードで動作していない可能性があるので、USB用DSのロード処理を何度か繰り返すようにしてもよい。また、Step1205でネットワークモードからUSBモードに切り替えた際、ネットワーク上からスキャナー201が切断されるが、スキャナー情報管理テーブルを更新していない例を挙げているが、たとえば、スキャナーを検出した時刻を、MACアドレスなどのスキャナー識別情報とともにスキャナー情報管理テーブルに記憶するようにしておき、所定時間経過しても検出しなかったスキャナー情報を削除するような構成にしてもよい。
【0050】
また本実施例では、スキャンアプリケーション210でロードするDSが、スキャナー201の接続モードに一致している場合の例を挙げて説明したが、一致していない場合、
図8のStep1101、または
図9のStep1201でDSのロードに失敗してエラーを表示するようにしてもよいし、ロードした後でS1103またはS1203の状態取得に失敗してエラーを表示するようにしてもよい。また、スキャンアプリケーション210で前回のDSを記憶しておき、次回も同じDSをロードするようにしてもよい。
【0051】
また本実施例では接続モードをUSB、有線の2択を例に挙げているが、USB、有線、無線の3択以上で構成しても構わない。
【符号の説明】
【0052】
10 制御部
11 CPU
15 USBI/F(1つめの通信方式)
16 ネットワークI/F(2つめの通信方式)
30 操作部
100 画像読取装置(周辺装置)
200 PC(情報処理装置)
201、202、203 スキャナー