(57)【要約】【課題】特別な管理権限が付与されていないユーザーであってもＰＣから画像読取装置を制御し、煩雑な操作なく、原稿の読み取りを可能にすること。【解決手段】画像読取装置１００は、ＰＣ２００にスキャンアプリをダウンロードさせる際、スキャンセッションＩＤと画像読取装置１００のＩＰアドレスを含ませ、そのスキャンセッションＩＤを保持しておく。スキャンアプリからのスキャン要求に応じ、該要求がスキャンセッションＩＤに対して有効な場合にのみスキャンを行い、スキャン終了時に保持してあるスキャンセッションＩＤを破棄する。スキャンアプリーションをダウンロードさせる際、既にスキャンセッションＩＤが保持されている場合、無効なスキャンセッションＩＤをダウンロードファイルに含ませる。【選択図】図６
2020174276.tif 000002
【特許請求の範囲】
【請求項１】
原稿から画像を読み取る画像読取装置であって、
ネットワークを介して通信可能な情報処理装置で動作し前記画像読取装置を用いて原稿の読み取りを行うためのアプリケーションプログラムを記憶する記憶手段と、
前記情報処理装置からの前記アプリケーションプログラムのダウンロード要求に応じて、前記アプリケーションプログラムとのセッションを管理する識別情報を生成し、前記アプリケーションプログラム、及び前記画像読取装置を特定する特定情報を含むダウンロードファイルを作成し、前記情報処理装置に送信するダウンロード手段と、
前記識別情報を保持する保持手段と、
前記情報処理装置にダウンロードされて動作する前記アプリケーションプログラムからの原稿読み取り要求が、前記保持手段に保持されている識別情報に対し有効か否かを判定する判定手段と、
前記読み取り要求が有効である場合に原稿読み取り処理を行い、前記読み取り要求が無効である場合に原稿読み取り処理を行わないよう制御する制御手段と、
前記原稿読み取り処理が終了した場合に、前記保持手段に保持されている識別情報を消去する消去手段と、
を有することを特徴とする画像読取装置。
【請求項２】
前記ダウンロードファイルには、前記画像読取装置が生成した前記識別情報が含まれ、
前記アプリケーションプログラムは、前記情報処理装置にダウンロードされて実行された場合、該アプリケーションプログラムとともに前記ダウンロードファイルに含まれていた識別情報を含む原稿読み取り要求を、該ダウンロードファイルに含まれていた特定情報で特定される画像読取装置に送信するよう動作するものであり、
前記ダウンロード手段は、前記ダウンロード要求を受けた場合、前記保持手段に識別情報が保持されている場合には、該識別情報と異なる、無効な識別情報を含むダウンロードファイルを作成することを特徴とする請求項１に記載の画像読取装置。
【請求項３】
前記アプリケーションプログラムは、該アプリケーションプログラムとともに前記ダウンロードファイルに含まれていた識別情報が無効な識別情報である場合には、前記原稿読み取り要求の代わりに、前記画像読取装置に識別情報の発行を要求する発行要求を送信し、該発行要求に応じて取得される識別情報を用いて前記原稿読み取り要求が可能なものであり、
前記情報処理装置にダウンロードされて動作する前記アプリケーションプログラムからの前記発行要求に応じて、前記識別情報を生成し、該生成した識別情報を前記アプリケーションプログラムに送信する送信手段を有し、
前記送信手段は、前記発行要求を受けた場合であっても、前記保持手段に前記識別情報が保持されている場合には、前記識別情報を生成せず、無効な識別情報を送信することを特徴とする請求項２に記載の画像読取装置。
【請求項４】
前記制御手段は、前記情報処理装置にダウンロードされて動作する前記アプリケーションプログラムからの前記読み取り要求が無効である場合でも、前記保持手段に前記識別情報が保持されていない場合には、前記識別情報を生成し、該生成した識別情報を前記アプリケーションプログラムに送信しつつ、原稿読み取り処理を行うよう制御することを特徴とする請求項１〜３のいずれか１項に記載の画像読取装置。
【請求項５】
前記情報処理装置からの前記アプリケーションプログラムのダウンロード要求を受けた場合、前記保持手段に識別情報が保持されている場合には、当該画像読取装置が他のユーザーにより使用されている旨の通知を前記情報処理装置に通知する通知手段を有することを特徴とする請求項１〜４のいずれか１項に記載の画像読取装置。
【請求項６】
前記消去手段は、前記情報処理装置にダウンロードされて動作する前記アプリケーションプログラムから有効な識別情報を含む要求を受けていない状態での経過時間が所定の時間に達した場合には、前記保持手段から識別情報を消去することを特徴とする請求項１〜５のいずれか１項に記載の画像読取装置。
【請求項７】
前記原稿読み取り処理におけるエラーの発生を検知する検知手段を有し、
前記消去手段は、前記原稿読み取り処理が終了した場合であっても、前記検知手段によりエラーの発生が検知されている場合には、前記保持手段に保持されている識別情報を消去しないことを特徴とする請求項１〜５のいずれか１項に記載の画像読取装置。
【請求項８】
前記原稿読み取り処理におけるエラーの発生を検知する検知手段を有し、
前記消去手段は、前記原稿読み取り処理が終了した場合であっても、前記検知手段により特定のエラーの発生が検知されている場合には、前記保持手段に保持されている識別情報を消去しないことを特徴とする請求項１〜５のいずれか１項に記載の画像読取装置。
【請求項９】
前記特定のエラーは、原稿の紙詰まりエラー、複数の原稿が重なって搬送されるエラー、ステープル処理が施された原稿が搬送されるエラーの少なくともいずれかを含むことを特徴とする請求項８に記載の画像読取装置。
【請求項１０】
前記消去手段は、前記識別情報が生成されてからの経過時間がタイムアウト時間に達した場合には、前記保持手段から識別情報を消去し、前記検知手段によるエラー検知に基づき前記識別情報を消去しない場合には、前記タイムアウト時間を延長することを特徴とする請求項７〜９のいずれか１項に記載の画像読取装置。
【請求項１１】
前記消去手段は、前記検知手段によるエラー検知に基づき前記識別情報を消去しない場合、前記検知手段により検知されたエラーの種類に応じて前記タイムアウト時間を変更することを特徴とする請求項１０に記載の画像読取装置。
【請求項１２】
原稿から画像を読み取る画像読取装置であって、
ユーザーからの操作を受け付ける操作手段と、
ネットワークを介して通信可能な情報処理装置からの要求に応じて処理を行うとともに、該処理を行っている場合には、他の情報処理装置からの要求を受け付けない排他制御を行う制御手段と、を有し、
前記制御手段は、前記情報処理装置からの要求に応じて処理を行っている場合であっても、前記操作手段から所定の操作を受け付けた場合には、該処理を終了して、他の情報処理装置からの要求を受け付け可能に制御することを特徴とする画像読取装置。
【請求項１３】
前記情報処理装置からの要求に応じて処理を行う場合に、該処理を終了させるためのコードを該情報処理装置に通知する通知手段を有し、
前記制御手段は、前記情報処理装置からの要求に応じて処理を行っている場合であっても、前記操作手段から前記コードの入力操作を受け付けた場合には、該処理を終了して、他の情報処理装置からの要求を受け付け可能に制御することを特徴とする請求項１２に記載の画像読取装置。
【請求項１４】
前記情報処理装置で動作するウェブブラウザからの要求に応じて、該ウェブブラウザから処理を受け付けるための操作画面を該ウェブブラウザに提供し、該ウェブブラウザに表示される前記操作画面から処理を受け付け可能な提供手段を有することを特徴とする請求項１２又は１３に記載の画像読取装置。
【請求項１５】
前記情報処理装置は、携帯端末であることを特徴とする請求項１２〜１４のいずれか１項に記載の画像読取装置。
【請求項１６】
原稿から画像を読み取る画像読取装置の制御方法であって、
ネットワークを介して通信可能な情報処理装置からの、該情報処理装置で動作し前記画像読取装置を用いて原稿の読み取りを行うためのアプリケーションプログラムのダウンロード要求に応じて、前記アプリケーションプログラムとのセッションを管理する識別情報を生成し、前記アプリケーションプログラム、及び前記画像読取装置を特定する特定情報を含むダウンロードファイルを作成し、前記情報処理装置に送信するダウンロードステップと、
前記識別情報を保持手段に格納する保持ステップと、
前記ダウンロードステップでダウンロードされて前記情報処理装置で動作する前記アプリケーションプログラムからの原稿読み取り要求に応じて、該要求が前記保持手段に保持されている識別情報に対し有効か否かを判定する判定ステップと、
前記読み取り要求が有効である場合に原稿読み取り処理を行い、前記読み取り要求が無効である場合に原稿読み取り処理を行わないよう制御する制御ステップと、
前記原稿読み取り処理が終了した場合に、前記保持手段に保持されている識別情報を消去する消去ステップと、
を有することを特徴とする画像読取装置の制御方法。
【請求項１７】
前記ダウンロードファイルには、前記画像読取装置が生成した前記識別情報が含まれ、
前記アプリケーションプログラムは、前記情報処理装置にダウンロードされて実行された場合、該アプリケーションプログラムとともに前記ダウンロードファイルに含まれていた識別情報を含む原稿読み取り要求を、該ダウンロードファイルに含まれていた特定情報で特定される画像読取装置に送信するよう動作するものであり、
前記ダウンロードステップでは、前記ダウンロード要求を受けた場合であっても、前記保持手段に識別情報が保持されている場合には、該識別情報と異なる、無効な識別情報を含むダウンロードファイルを作成することを特徴とする請求項１６に記載の画像読取装置の制御方法。
【請求項１８】
原稿から画像を読み取る画像読取装置の制御方法であって、
ネットワークを介して通信可能な情報処理装置からの要求に応じて処理を行うとともに、該処理を行っている場合には、他の情報処理装置からの要求を受け付けない排他制御を行う制御ステップを有し、
前記制御ステップでは、前記情報処理装置からの要求に応じて処理を行っている場合であっても、ユーザーからの操作を受け付ける操作手段から所定の操作を受け付けた場合には、該処理を終了して、他の情報処理装置からの要求を受け付け可能に制御することを特徴とする画像読取装置の制御方法。
【請求項１９】
コンピュータに、請求項１６〜１８のいずれか１項に記載の画像読取装置の制御方法を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、原稿に印刷されている内容を読み取り処理を行う画像読取装置、画像読取装置の制御方法及びプログラムに関する。
【背景技術】
【０００２】
原稿に印刷されている内容を読み取って画像データに変換するためには、画像読取装置とそれを制御するパーソナルコンピュータ（ＰＣ）とがＵＳＢ等で接続されてなされる場合が一般的である。その場合、ＰＣにはソフトウェアと画像読取装置を制御するドライバーをインストールすることが一般的な使用方法である。しかし、一般的なオペレーティングシステムを搭載したＰＣでは、ソフトウェアをインストールするためにはＰＣの管理権限が必要となる。また、ユーザーがＰＣの管理権限を有する場合でも、複数の画像読取装置を使用するような場合には、その台数だけドライバーをインストールする必要があり、煩雑であった。
【０００３】
また、近年、ネットワークの発展に伴いネットワーク上に直接接続できる画像読取装置が増えている。このような画像読取装置には、ＰＣなどのウェブブラウザからアクセス可能になっているものもある。
特許文献１には、画像読取装置とＰＣとがネットワークで接続する形態において、ＰＣ上で動作するウェブブラウザを使用して、画像読取装置を使用する技術が開示されている。
【０００４】
ネットワークに接続される画像読取装置では、１台を複数のユーザーで使用する場面が多い。このような画像読取装置では、複数のユーザーが同時に使用するのを制限するため、現在使用中の１台のＰＣのみに使用権限を与え、そのＰＣ以外からのリクエストを排他制御することが一般的に行われる。なお、スキャンが終了したら、使用権限は次にスキャン要求をしてきたＰＣに与えられ、該ＰＣからのリクエストを受け取るように制御される。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００５−４５４３７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、特許文献１のようにウェブブラウザを経由して画像を読み込む場合、画像読取装置本体側で全ての画像処理を施す必要があるため、画像読取装置の要求ハードウエア構成が高価なものとなってしまったり、処理に時間がかかってしまう。
また、画像読取装置の使用のたびに、ウェブブラウザにおいて画像読取装置のＩＰアドレスを入力する必要がある。さらに、画像読取装置の使用権限を得るために、その画像読取装置のＩＰアドレスの再入力が何度も必要になる場合がある。また、画像読取装置の使用権限を得る際、画像読取装置が使用者に追加操作を要求する場合もあり、煩雑であるといった課題もあった。
【０００７】
本発明は、上記の課題を解決するためになされたものである。本発明は、画像読取装置の要求ハードウエア構成を低価格に抑えた上で、情報処理装置に特別な管理権限が付与されていないユーザーであっても情報処理装置から画像読取装置を制御し、ＩＰアドレスの再入力や使用権限取得の追加操作などの煩雑な操作なく、原稿の読み取りを可能にする仕組みを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明は、原稿から画像を読み取る画像読取装置であって、ネットワークを介して通信可能な情報処理装置で動作し前記画像読取装置を用いて原稿の読み取りを行うためのアプリケーションプログラムを記憶する記憶手段と、前記情報処理装置からの前記アプリケーションプログラムのダウンロード要求に応じて、前記アプリケーションプログラムとのセッションを管理する識別情報を生成し、前記アプリケーションプログラム、及び前記画像読取装置を特定する特定情報を含むダウンロードファイルを作成し、前記情報処理装置に送信するダウンロード手段と、前記識別情報を保持する保持手段と、前記情報処理装置にダウンロードされて動作する前記アプリケーションプログラムからの原稿読み取り要求が、前記保持手段に保持されている識別情報に対し有効か否かを判定する判定手段と、前記読み取り要求が有効である場合に原稿読み取り処理を行い、前記読み取り要求が無効である場合に原稿読み取り処理を行わないよう制御する制御手段と、前記原稿読み取り処理が終了した場合に、前記保持手段に保持されている識別情報を消去する消去手段と、を有することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、情報処理装置に特別な管理権限が付与されていないユーザーであっても情報処理装置から画像読取装置を制御し、ＩＰアドレスの再入力や使用権限取得の追加操作などの煩雑な操作なく、原稿の読み取りを可能にする。
【図面の簡単な説明】
【００１０】
【図１】本発明の一実施形態を示す画像読取装置の概略的な構成の一例を示す図。
【図２】画像読取ユニットの概略的な構成の一例を示す図。
【図３】画像読取装置の制御構成の一例を示す図。
【図４】原稿検知センサの概略的な構成の一例を示す図。
【図５】原稿検知の制御処理の一例を示すフローチャート。
【図６】使用者が画像読取装置からＰＣにスキャンアプリをダウンロード可能にするまでの処理を説明するシーケンス図。
【図７】使用者がＰＣ上で動作するウェブブラウザを操作して画像読取装置に画面要求を行って得られる画面の一例を示す図。
【図８】使用者がＰＣ上で動作するウェブブラウザを操作して画像読取装置に画面要求を行って得られる画面の一例を示す図。
【図９】ダウンロードファイルの構成の一例を示す図。
【図１０】デバイスコンフィグレーションの記述の一例を示す図。
【図１１】ＰＣにおけるスキャンアプリケーションの起動について説明するフローチャート。
【図１２】スキャンアプリケーション画面の一例を示す図。
【図１３】スキャンアプリケーションの動作を説明するシーケンス図。
【図１４】スキャンセッションＩＤ取得処理を説明するシーケンス図。
【図１５】画像読取装置におけるエラー検知を説明する図。
【図１６】画像読取装置におけるスキャンセッションＩＤを管理するタスクの処理の一例を示すフローチャート。
【図１７】画像読取装置の接続形態の一例を示す図。
【図１８】本発明の第３実施形態を示すシステムの構成の一例を示す図。
【図１９】携帯端末を使ったスキャンの流れを説明する図。
【図２０】スキャナーのＵＩ部に表示されるメニュー画面の一例を示す図。
【図２１】スキャナーのＵＩ部に表示されるＵＲＬ表示画面の一例を示す図。
【図２２】第３実施形態において携帯端末のＵＩ部に表示されるスキャン設定画面の一例を示す図。
【図２３】携帯端末のＵＩ部に表示されるスキャン中画面の一例を示す図。
【図２４】携帯端末のＵＩ部に表示されるスキャン中画面の一例を示す図。
【図２５】携帯端末のＵＩ部に表示される他ユーザー使用中画面の一例を示す図。
【図２６】第３実施形態におけるウェブアプリモードの終了処理の一例を示すフローチャート。
【図２７】第３実施形態のスキャナーのＵＩ部に表示される終了確認画面の一例を示す図。
【図２８】第４実施形態において携帯端末のＵＩ部に表示されるスキャン設定画面の一例を示す図。
【図２９】第４実施形態のスキャナーのＵＩ部に表示されるパスコード入力画面の一例を示す図。
【図３０】第４実施形態のスキャナーのＵＩ部に表示されるパスコード入力画面の一例を示す図。
【図３１】第４実施形態におけるウェブアプリモードの終了処理の一例を示すフローチャート。
【発明を実施するための形態】
【００１１】
〔第１実施形態〕
以下、本発明の例示的な実施形態について図面を参照して説明する。なお、以下の各実施形態は例示であり、本発明を各実施形態の内容に限定するものではない。また、以下の各図においては、実施形態の説明に必要ではない構成要素については説明を省略する。
【００１２】
図１は、本発明の一実施形態を示す画像読取装置１００の概略的な構成の一例を示す図である。
原稿台１０２は、読取対象の原稿１０１を積載収納する。
原稿台１０２上の原稿は、原稿台原稿検知センサ１１０によって検出され、給紙ローラ１０６により一枚ずつ分離されて搬送路１０８に送り出される。給紙ローラ１０６により給紙された原稿は、搬送ローラ１０７によって搬送路１０８に沿って搬送され、排出部１０３に排出される。なお、給紙ローラ１０６は、ピックアップローラと、その下流側に設けられた給送ローラおよび分離ローラが対向して配置された分離給送部とで構成されていても良い。
排出部１０３は、画像読取処理を終えた原稿１０１を積載収納する。
排出部原稿検知センサ１１１は、排出部１０３に積載収納されている排紙原稿の有無を検出する。
【００１３】
レジストセンサ１０９は、搬送路１０８を搬送される原稿１０１を検出する。レジストセンサ１０９が原稿１０１を検出すると、画像読取ユニット１０４は、原稿上に形成された画像の読み取りを開始する。本実施形態において、画像読取ユニット１０４は、搬送路１０８の両側に２つ設けられており、一方が原稿１０１の表面を、他方が原稿１０１の裏面を読み取る。なお、画像読取ユニット１０４を１つのみとする構成であってもよい。各画像読取ユニット１０４の対向位置には、背景板１０５がそれぞれ設けられている。背景板１０５は、例えば、黒色の部材である。
排紙口センサ１１２は、原稿１０１が搬送路１０８に残っているか、排出部１０３に排出されたかを検出する。
【００１４】
図２は、画像読取ユニット１０４の概略的な構成の一例を示す図である。
画像読取ユニット１０４は、筐体１０４１と、搬送路１０８に面して設けられたガラス板１０４２とによって、内部が密封されている。
【００１５】
画像読取ユニット１０４の内部には、ラインイメージセンサ１０４３と、一対の発光部１０４４ａ及び１０４４ｂと、が設けられている。
ラインイメージセンサ１０４３は、原稿１０１の搬送方向と直交する方向（主走査方向）に延設され、主走査方向の１ライン分の画像を１度に読み取る。ラインイメージセンサ１０４３は、例えば、ＣＣＤラインセンサやコンタクトイメージセンサである。
【００１６】
発光部１０４４ａは、ラインイメージセンサ１０４３に対して原稿１０１の搬送方向の上流側に配置され、可視光を発光する光源を有する。発光部１０４４ｂは、ラインイメージセンサ１０４３に対して搬送方向の下流側に配置される光源を有する。
【００１７】
ラインイメージセンサ１０４３は、一対の発光部１０４４ａ及び１０４４ｂの間に、挟みこまれるようにして配置されている。一対の発光部１０４４ａ及び１０４４ｂは、それぞれ、ラインイメージセンサ１０４３と略平行に延設されており、例えば、複数のＬＥＤからなるＬＥＤアレイにより構成される。
ラインイメージセンサ１０４３は、図２において破線矢印で示すように、発光部１０４４ａや１０４４ｂが照射し、原稿１０１で反射した反射光を受光・検出して原稿１０１上の画像を読み取る。
【００１８】
図３は、画像読取装置１００の制御構成の一例を示す図である。
画像読取装置１００の制御部１０は、ＣＰＵ１１、ＲＯＭ１２、ＲＡＭ１３、入出力Ｉ／Ｆ１４、通信Ｉ／Ｆ１５を備える。
【００１９】
ＣＰＵ１１は、ＲＯＭ１２に記憶されたプログラムを実行し、画像読取装置１００全体の制御を行う。ＲＯＭ１２には、ＣＰＵ１１が実行するプログラムや固定的なデータが記憶される。ＲＡＭ１３には、ラインイメージセンサ１０４３が読み取った画像データや、ＣＰＵ１１の演算結果といった可変データが記憶される。ＲＯＭ１２及びＲＡＭ１３は他の記憶デバイスであってもよい。
【００２０】
入出力Ｉ／Ｆ１４には、発光部１０４４ａ及び１０４４ｂを駆動する駆動回路２４や、ラインイメージセンサ１０４３が読み取った画像に対してシェーディング補正等の画像処理を行う画像処理回路２６が接続される。ＡＤＣ２５は、ラインイメージセンサ１０４３が出力するアナログ画像信号をデジタル画像データに変換するアナログ・デジタル変換器である。
ＣＰＵ１１は、入出力Ｉ／Ｆ１４を介して画像処理回路２６から出力される画像データを取得する。
【００２１】
通信Ｉ／Ｆ１５は、パーソナルコンピュータ（ＰＣ）２００と接続するためのインタフェースである。例えば、画像読取装置１００が読み取った画像データは、通信Ｉ／Ｆ１５経由でＰＣ２００に出力される。通信Ｉ／Ｆ１５は、ネットワークインタフェースを含み、後述する図１７に示すように、画像読取装置１００はネットワークを介してＰＣ２００と通信可能に接続されているものとする。
【００２２】
また、制御部１０には、発光部駆動回路１２３や、アナログ・デジタル変換器（ＡＤＣ）１２４も接続されている。
発光部駆動回路１２３は、原稿検知発光部１２１を駆動する。原稿検知発光部１２１は、原稿台原稿検知センサ１１０と排出部原稿検知センサ１１１を構成する。
ＡＤＣ１２４は、原稿検知受光部１２２が受光したアナログ信号をデジタルデータに変換する。
【００２３】
次に、画像読取装置１００が実行する処理について説明する。
画像読取装置１００は、例えば、ＰＣ２００を介して、ユーザーが読み取り開始を指示した場合に原稿１０１の読み取りを開始する。ＣＰＵ１１は、まず給紙ローラ１０６を駆動して原稿１０１の搬送を開始する。レジストセンサ１０９によって原稿１０１が画像読取ユニット１０４の読取位置に到達したことが検出されると、ＣＰＵ１１は、発光部１０４４ａ及び発光部１０４４ｂの発光を制御し、ラインイメージセンサ１０４３を駆動して原稿１０１の画像を読み取る。
【００２４】
図４は、原稿台原稿検知センサ１１０，排出部原稿検知センサ１１１等の原稿検知センサの概略的な構成の一例を示す図である。
原稿台原稿検知センサ１１０，排出部原稿検知センサ１１１等の原稿検知センサにおいて、原稿検知発光部１２１は、例えばＬＥＤ等の発光部である。原稿検知発光部１２１は、ＣＰＵ１１の制御に基づいて点灯や消灯を行う。
原稿検知受光部１２２は、集光レンズを含む受光体である。原稿検知受光部１２２は、受光した光を光電変換し、ＡＤＣ１２４を介してＣＰＵ１１に出力する。以下、図５のフローチャートを用いて原稿検知処理について詳細に説明する。
【００２５】
図５は、ＣＰＵ１１が実行する原稿検知の制御処理の一例を示すフローチャートである。このフローチャートの処理は、ＣＰＵ１１がＲＯＭ１２に格納されたプログラムを読み出して実行することにより実現される。
【００２６】
まず、ＣＰＵ１１は、原稿検知発光部（ＬＥＤ）１２１を発光させる（Ｓ５０１）。また、ＣＰＵ１１は、受光Ａ／Ｄ変換器を動作させ（Ｓ５０２）、所定のＡ／Ｄ変換時間待って（Ｓ５０３）、原稿検知受光部１２２で受光量を取得する（Ｓ５０４）。ここで得た値をＶ１とする。
【００２７】
次に、ＣＰＵ１１は、原稿検知発光部（ＬＥＤ）１２１を消灯する（Ｓ５０５）。また、ＣＰＵ１１は、受光Ａ／Ｄ変換器を動作させ（Ｓ５０６）、所定のＡ／Ｄ変換時間を待って（Ｓ５０７）、原稿検知受光部１２２で受光量を取得する（Ｓ５０８）。ここで得た値をＶ２とする。
【００２８】
次に、ＣＰＵ１１は、式「｜Ｖ２−Ｖ１｜＞Ｓ」に基づいて原稿の有無を判断する（Ｓ５０９）。ＣＰＵ１１は、｜Ｖ２−Ｖ１｜＞Ｓの場合（Ｓ５０９でＹｅｓの場合）には、図４（ａ）のような状態と判断し、「原稿あり（紙あり）」と判断する。一方、ＣＰＵ１１は、｜Ｖ２−Ｖ１｜≦Ｓの場合（Ｓ５０９でＮｏの場合）には、図４（ｂ）のような状態と判断し、「原稿なし（紙なし）」と判断する。
【００２９】
図１７は、画像読取装置１００の接続形態の一例として、ネットワーク環境Ｌｏｃａｌ Ａｒｅａ Ｎｅｔｗｏｒｋ（ＬＡＮ）に接続している様子を表す概念図である。
図１７のように、ＬＡＮ３００に接続している場合、画像読取装置１００は、複数のホストコンピュータ（ＰＣ２００ａ〜ＰＣ２００ｎ）から利用可能となる。なお、ＰＣ２００ａ〜ＰＣ２００ｎを特に区別しない場合、ＰＣ２００と記載する。
【００３０】
以下、図６〜図８を用いて、使用者が画像読取装置１００からＰＣ２００にスキャンアプリケーションをダウンロードするまでの処理について説明する。
図６は、使用者が画像読取装置１００からＰＣ２００にスキャンアプリケーションをダウンロード可能にするまでの処理を説明するシーケンス図である。このシーケンス図において、ＰＣ２００の処理は、ＰＣ２００のＣＰＵがＨＤＤ等に記憶されたウェブブラウザ（Ｗｅｂブラウザ）プログラムを実行することにより実現される。また、画像読取装置１００の処理は、ＣＰＵ１１がＲＯＭ１２に格納されたプログラムを実行することにより実現される。
【００３１】
図７、図８は、使用者がＰＣ２００上で動作するウェブブラウザを操作して、画像読取装置１００に画面要求を行って得られる画面の一例を示す図である。本実施形態では、ＰＣ２００から画像読取装置１００に対して画面要求やスキャンコマンド、画像データの要求すべて、ネットワークポート８０を使用したｈｔｔｐプロトコルで実施しているがこれに限定されるものではない。
【００３２】
また、本実施形態の画像読取装置１００は、固定ＩＰアドレスを使用してネットワークに接続されている。このＩＰアドレスは、予めＲＯＭ１２に保管されている機器固有のデータであり、例えば画像読取装置１００の図示しない外観に貼付して使用者に通知している。使用者は、このＩＰアドレスを使用して画像読取装置１００に接続することができる。なお、画像読取装置１００のＩＰアドレスは変更可能であり、ＤＨＣＰなどの方法で自動的に取得されていても構わない。
【００３３】
図６に示すように、まず、使用者がＰＣ２００を操作して、ＰＣ２００のウェブブラウザから画像読取装置１００にｈｔｔｐ接続を行う（Ｓ６０１）。この例においては、画像読取装置１００のＩＰアドレスを１９２．１６８．０．１０としている。これに応じて、画像読取装置１００のＣＰＵ１１は、ＰＣ２００のウェブブラウザに対し、ログイン画面へのリダイレクトを指示する（Ｓ６０２）。これに応じて、ＰＣ２００のウェブブラウザは、ログイン画面にアクセスする（Ｓ６０３）。これに応じて、画像読取装置１００は、ＰＣ２００のウェブブラウザに、図７のようなログイン画面を送信する（Ｓ６０４）。ここで、画像読取装置１００は、ｈｔｔｐリクエストヘッダーに含まれているＰＣ２００のＩＰアドレスをアクセスＰＣとしてＲＡＭ１３に保存する。
上記Ｓ６０４で送信されたデータを受信したＰＣ２００のウェブブラウザは、該受信したデータに基づいて図７のようなログイン画面を表示する。
【００３４】
その後、図７のようなログイン画面から、使用者によってログイン名とパスワードが入力され、「ログイン」ボタンが押下されると、ＰＣ２００のウェブブラウザは、該入力されたログイン名とパスワードを画像読取装置１００に送信する（Ｓ６０５）。
【００３５】
このログイン名とパスワードを受信すると、画像読取装置１００のＣＰＵ１１は、ログイン処理を行う（Ｓ６０６）。このログイン処理では、画像読取装置１００のＣＰＵ１１は、ログイン名とパスワードの検証を行う。ログイン名，パスワードは予めＲＯＭ１２に保管されている機器が保持するデータであり、例えば画像読取装置１００の図示しない外観に貼付して使用者に通知している。ここで、ログイン名とパスワードの検証の結果、正しくないログインリクエストであると判断した場合、画像読取装置１００のＣＰＵ１１は、Ｓ６０２に戻って処理をやり直すように制御する。一方、ログイン名，パスワード検証の結果、正しいログイン名とパスワードが送られてきたと判断した場合、画像読取装置１００のＣＰＵ１１は、セッションＩＤを生成してＲＡＭ１３に保管したのち、セッションＩＤをＣｏｏｋｉｅにもセットする。ここで、画像読取装置１００は、ｈｔｔｐリクエストヘッダーに含まれているＰＣ２００のＩＰアドレスをログインＰＣとしてＲＡＭ１３に保存する。なお、Ｓ６０６で実行されるログイン処理において、ログイン名，パスワードは予めＲＯＭ１２や他のデータベースなどに登録可能に構成しても良く、Ｓ６０６において画像読取装置１００がそれらを参照することによって正しいログインリクエストかどうかを判定しても良い。
さらに、画像読取装置１００のＣＰＵ１１は、”webmenu.html”へのリダイレクトを指示する（Ｓ６０７）。
【００３６】
上記Ｓ６０７の指示を受信したＰＣ２００のウェブブラウザは、Ｃｏｏｋｉｅを保存する。そして、ＰＣ２００のウェブブラウザは、該Ｃｏｏｋｉｅとともに”webmenu.html”にアクセスする（Ｓ６０８）。
【００３７】
ウェブブラウザが“webmenu.html”にアクセスしてきたら、画像読取装置１００のＣＰＵ１１は、上記Ｓ６０６でＲＡＭ１３に保管したセッションＩＤと、該アクセスに対応するＣｏｏｋｉｅに含まれるセッションＩＤを検証する（Ｓ６０９）。以降の全てのＷｅｂリクエストに対して、ＣｏｏｋｉｅにセットされたセッションＩＤを用いた検証が行われる。
【００３８】
該検証の結果、ＲＡＭ１３のセッションＩＤとＣｏｏｋｉｅのセッションＩＤが異なる場合、又は、ＣｏｏｋｉｅにセッションＩＤが含まれていない場合、画像読取装置１００のＣＰＵ１１は、セッションＩＤが不適合と判断し、Ｓ６０２に戻ってやり直すように制御する。一方、該検証の結果、ＲＡＭ１３に保管したセッションＩＤとＣｏｏｋｉｅのセッションＩＤが等しい場合、画像読取装置１００のＣＰＵ１１は、正しいセッションＩＤを持っていると判断し、図８（ａ）のような画面をＰＣ２００のウェブブラウザに送信する（Ｓ６１０）。
これを受信したＰＣ２００のウェブブラウザは、図８（ａ）のような画面を表示する。
【００３９】
図８（ａ）の画面の入力フォーム８０１に配置されるテキストボックスには、画像読取装置１００のＩＰアドレスが表示される。
また、図８（ａ）画面には、スキャンアプリケーションをダウンロードするための「ダウンロード」ボタン８０２が配置されている。「ダウンロード」ボタン８０２が押下されると、ＰＣ２００のウェブブラウザは、スキャンアプリケーションのダウンロードリクエストを画像読取装置１００に送信する。このスキャンアプリケーションのダウンロードリクエストに応じて、画像読取装置１００のＣＰＵ１１は、後述するようなスキャンアプリケーションのダウンロードファイルを生成し、ＰＣ２００に送信する。これにより、スキャンの実行をローカル側（すなわちＰＣ２００上）で行うためのスキャンアプリケーションが、ＰＣ２００にダウンロードされる。また、画像読取装置１００は、ダウンロードリクエストのｈｔｔｐリクエストヘッダーに含まれているＰＣ２００のＩＰアドレスをダウンロードＰＣとしてＲＡＭ１３に保存する。
なお、使用者は、入力フォーム８０１に配置されるテキストボックスと「変更」ボタンにより、スキャンアプリケーションをダウンロードする画像読取装置のＩＰアドレスを変更することができる。
【００４０】
上記スキャンアプリケーションのダウンロードが完了すると、ＰＣ２００のウェブブラウザには、図８（ｂ）のようにステータスバー８０３に、ダウンロード完了を示す表示がされ、使用者は、容易にダウンロードアプリケーションを起動することが可能となる。なお、図８（ａ）に示すダウンロードボタン８０２は一例であり、他の機能を持ったボタン（例えばスキャン設定ボタン）に同等の機能を持たせても良い。
【００４１】
次に、図９、図１０を用いて、スキャンアプリケーションのダウンロードファイルについて説明する。
図９は、画像読取装置１００で生成されたスキャンアプリケーションのダウンロードファイルの構成の一例を示す図である。
【００４２】
図９に示すように、ダウンロードファイルの先頭000000h番地には、起動アプリケーションLauncher９０１が配置されている。ダウンロードファイルの生成の際、画像読取装置１００のＣＰＵ１１は、不揮発性メモリであるＲＯＭ１２に保管されているLauncher９０１を読みだして、ダウンロードファイルに追加している。
【００４３】
Launcher９０１の後の001000h番地から続く箇所には、圧縮ファイル９０２が配置されている。圧縮ファイル９０２には、スキャン動作に必要な実行ファイルScanApplication.exe，ガンマ補正等を行う画像処理エンジン，デバイスのコンフィグレーション等が保管されている。ScanApplication.exeは、ネットワークを介して通信可能なＰＣ２００で動作し画像読取装置１００を用いて原稿の読み取りを行うためのアプリケーションプログラムである。また、画像処理エンジンは、各種ＤＬＬ等で構成されている。本実施形態では、圧縮ファイル９０２の生成には、Ｚｉｐ形式が用いられているがこれに限定されるものではない。ダウンロードファイルの生成の際、画像読取装置１００のＣＰＵ１１は、ＲＯＭ１２に保管されているScanApplication.exe，画像処理エンジン等を読みだして圧縮ファイル９０２に追加している。
【００４４】
デバイスコンフィグレーション.xmlは、図１０のように、ＸＭＬ形式で表記されるデータである。
図１０は、ダウンロードファイルに含まれるデバイスコンフィグレーション.xmlの一例を示す図である。
図１０に示すように、デバイスコンフィグレーション.xmlは、さまざまなデバイスの設定値を保存している。例えば、セッションＩＤ、後述するスキャンに関する占有権を示すスキャンセッションＩＤの他に、デバイスの名称、ＭＡＣアドレス、本体のＩＰアドレス、画像読取の能力値などの設定値を保存している。なお、デバイスの名称、ＭＡＣアドレス、本体のＩＰアドレス等は、画像読取装置を特定する情報（特定情報）として機能する。ダウンロードファイルの生成の際、画像読取装置１００のＣＰＵ１１は、ＲＯＭ１２に保管されている上述のような設定値を読み出してＸＭＬファイルを作成し、圧縮ファイル９０２に追加する。
【００４５】
図９に示すように、最後に、画像読取装置１００のＣＰＵ１１は、ダウンロードファイルに対して、ＲＯＭ１２に保管されているデジタル署名秘密鍵を使用して署名を行うことで署名９０３を付加し、ダウンロードファイルの生成を完了する。
【００４６】
ここで、上述したセッションＩＤとスキャンセッションＩＤについて説明する。
セッションＩＤは、ウェブブラウザを用いて画像読取装置１００の設定値確認等を行う「スキャンを伴わない」操作のための識別ＩＤである。この「スキャンを伴わない」操作については、複数の使用者が同時にアクセスすることを許可されており、セッションＩＤが同時に複数の使用者に割り当てられることがある。
【００４７】
一方、スキャンセッションＩＤは、画像読取装置１００の読み取り部を占有するための識別ＩＤ（識別情報）であり、同時に複数の使用者に割り当てられることはない。スキャンセッションＩＤを持っている使用者が、すなわちスキャン操作を許可された使用者となる。すなわち、スキャンセッションＩＤは、ＰＣ２００で動作するスキャンアプリケーションとのセッションの管理に使用される。
【００４８】
画像読取装置１００のＣＰＵ１１は、スキャンセッションＩＤを生成したらＲＡＭ１３に保存しておき、スキャンが完了したときに、該ＲＡＭ１３のスキャンセッションＩＤを破棄（消去）する。なお、既にスキャンセッションＩＤがＲＡＭ１３に保存されている場合には、画像読取装置１００のＣＰＵ１１は、新たなスキャンセッションＩＤを生成せず、無効なＩＤを埋め込んだダウンロードファイルをＰＣ２００に送信する。本実施形態では、セッションＩＤやスキャンセッションＩＤは、時刻とＭＡＣアドレスを元にＭＤ５変換を行った文字列であり、無効なＩＤとは“d41d8cd98f00b204e9800998ecf8427e”とするが、これに限定されるものではなく、特定の文字列や空白も含まれる。
【００４９】
また、画像読取装置１００のＣＰＵ１１は、スキャンセッションＩＤを発行してから所定の時間が経過するまでにスキャンが開始されない場合には、該スキャンセッションＩＤをＲＡＭ１３から破棄する。
【００５０】
なお、画像読取装置１００のＣＰＵ１１は、ダウンロードファイルを生成する際に、既にＲＡＭ１３に後述するスキャンセッションＩＤが保存されている場合には、「ユーザーＡが使用中です」のようなメッセージを表示するためのポップアップを、ダウンロード要求元のＰＣ２００のウェブブラウザに表示させるようにしてもよい。また、このメッセージを図８（ｂ）の画面に表示するようにしてもよい。なお、その場合、ダウンロードボタン８０２を押下されたときに、スキャンセッションＩＤが発行さない旨を通知してもよい。
【００５１】
以下、図１１を用いて、ＰＣ２００におけるスキャンアプリケーションの起動について説明する。
図１１は、ＰＣ２００におけるスキャンアプリケーションの起動について説明するフローチャートである。一般的なウェブブラウザでは、ダウンロードが完了すると、図８（ｂ）のステータスバー８０３のように、ダウンロードしたファイルの起動や保管を促すメッセージを表示する。ＰＣ２００のウェブブラウザでも同様とする。ユーザーがステータスバー８０３等からダウンロードファイルを起動すると、ＰＣ２００のウェブブラウザは、図９に示したLauncher９０１を起動する。図１１のフローチャートの処理は、ＰＣ２００のＣＰＵがLauncher９０１を実行することにより実現される。以下、Launcher９０１に基づきＰＣ２００のウェブブラウザが行う処理については、Launcher９０１を主体にして説明する。
【００５２】
まず、Launcher９０１は、署名の確認を行うことで、ファイルに改ざんがないこととダウンロードが不完全でないことを判断する（Ｓ１１０１）。署名確認がＮＧの場合（Ｓ１１０１でＮｏの場合）、Launcher９０１は、ファイルに改ざんがある又はダウンロードが不完全であると判断し、そのまま処理を終了する。
【００５３】
一方、署名確認がＯＫの場合（Ｓ１１０１でＹｅｓの場合）、Launcher９０１は、ファイルに改ざんがない且つダウンロードが不完全でないと判断し、Ｓ１１０２に処理を進める。
Ｓ１１０２において、Launcher９０１は、自身のファイルのオフセット001000hからデータを取り出して、Ｚｉｐ解凍処理を行って、書き込み可能なフォルダ（例えば、Linux（登録商標）システムでは“/tmp”など）に保管する。
次に、Launcher９０１は、上記Ｓ１１０２で保管したデータから、スキャンアプリケーションであるScanApplication.exeを起動して（Ｓ１１０３）、処理を終了する。
【００５４】
スキャンアプリケーションが起動されると、図１２のように、読取モードに応じたスキャンボタンが表示される。
図１２は、スキャンアプリケーション画面の一例を示す図である。
なお、スキャンアプリケーションは、スキャンアプリケーションと同じディレクトリ（フォルダ）に展開されたデバイスコンフィグレーション.xmlに有効なスキャンセッションＩＤが含まれていない場合には、スキャンアプリケーション画面（図１２）に「他のユーザーが使用中です」のようなメッセージを表示するようにしてもよい。
【００５５】
図１３は、スキャンアプリケーションの動作を説明するシーケンス図である。本実施形態では、例えばモノクロドキュメントボタン１２０１を押したスキャン動作について説明する。このシーケンス図において、ＰＣ２００の処理は、ＰＣ２００のＣＰＵがダウンロードしたスキャンアプリケーションを実行することにより実現される。なお、スキャンアプリケーションに基づきＰＣ２００のウェブブラウザが行う処理については、スキャンアプリケーションを主体にして説明する。また、画像読取装置１００の処理は、ＣＰＵ１１がＲＯＭ１２に格納されたプログラムを実行することにより実現される。
【００５６】
図１２のようなスキャンアプリケーション画面においてスキャンを実行するためのボタン（例えばモノクロドキュメントボタン１２０１）が押下されると、ＰＣ２００のスキャンアプリケーションは、画像読取装置１００にスキャンコマンド指令（原稿読み取り要求）をリクエストする（Ｓ１３０１）。この時、スキャンアプリケーションは、スキャンアプリケーションと同じディレクトリ（フォルダ）に展開されたデバイスコンフィグレーション.xmlを参照して、ＩＰアドレスを読み込み、ＵＲＩに組み込む。また、スキャンアプリケーションは、同じディレクトリに展開されたコンフィグレーション.xmlからセッションＩＤとスキャンセッションＩＤを読み込み、リクエストヘッダーのＣｏｏｋｉｅにこれらをセットして上述のリクエストを発行する。
【００５７】
上記Ｓ１３０１のリクエストに応じて、画像読取装置１００のＣＰＵ１１は、Ｃｏｏｋｉｅに含まれるスキャンセッションＩＤを検証する。ここで、スキャンセッションＩＤの検証が不適合の場合（ＲＡＭ１３に保存してあるスキャンセッションＩＤと異なる場合）、画像読取装置１００のＣＰＵ１１は、レスポンスとしてスキャンセッションＩＤ不適合を表す"status":"InvalidID"をＰＣ２００のスキャンアプリケーションに返却する（不図示）。
画像読取装置１００からＳ１３０２で"status":"OK"が返却されない場合、ＰＣ２００のスキャンアプリケーションは、Ｓ１３０１を所定の回数試みた後、エラーメッセージを使用者に通知して終了する。この場合、ＰＣ２００のスキャンアプリケーションは、後述する図１４に示すスキャンセッションＩＤ要求リクエストにより、スキャンセッションＩＤの取得を試みることになる。
【００５８】
一方、スキャンセッションＩＤの検証が適合の場合、画像読取装置１００のＣＰＵ１１は、レスポンスとして"status":"OK"をＰＣ２００のスキャンアプリケーションに返却する（Ｓ１３０２）。本実施形態では、スキャンアプリケーショが発行するリクエストに対して、画像読取装置１００のレスポンスデータはＪＳＯＮ形式で返信される。
【００５９】
また、画像読取装置１００のＣＰＵ１１は、上記Ｓ１３０２で"status":"OK"を送信した場合、そのままスキャン動作を開始して、ＲＡＭ１３に画像データを蓄積する（Ｓ１３０５）。
スキャンアプリケーションは、上記Ｓ１３０２の"status":"OK"を受信した後、画像データを読み取るために、画像読取装置１００に対して、リクエスト（“readimage”）を送信する（Ｓ１３０３）。
上記Ｓ１３０３のリクエスト（“readimage”）を受信した画像読取装置１００のＣＰＵ１１は、返却できる画像データがない場合には、"status":"Busy"を返却する（Ｓ１３０４）。スキャンアプリケーションは、画像読取装置１００から"status":"OK"が返却されるまで、上記Ｓ１３０３のリクエスト（“readimage”）を繰り返す。
【００６０】
そして、画像読取装置１００から"status":"OK"が返却されると（Ｓ１３０７）、スキャンアプリケーションは、該返却されたレスポンスに含まれるdata要素を文字列（Base64）からバイナリに変換して画像データを形成する（Ｓ１３０８）。
【００６１】
次に、スキャンアプリケーションは、上記Ｓ１３０８で形成した画像データに対してガンマ補正，エッジ強調などの画像処理を施し、２階調化の画像変換を経て、例えばＴＩＦＦファイル形式といった画像ファイル形式に変換する（Ｓ１３０９）。
さらに、スキャンアプリケーションは、この画像ファイルをＰＣ２００の記憶部（ハードディスク等）に保存して、１画像の処理を完了する（Ｓ１３１０）。
【００６２】
さらに、スキャンアプリケーションと画像読取装置１００のＣＰＵ１１が協働して、上述のＳ１３０６〜Ｓ１３１０の処理（Ａ）を繰り返すことで、全ての原稿の表裏画像をスキャンアプリケーションが実行されているＰＣのハードディスク等に保存して（Ｓ１３１１）、処理を終了する。
また、画像読取装置１００は、全ての画像を読み出されたら、ＲＡＭ１３に保管しているスキャンセッションＩＤを破棄して、処理終了する。
【００６３】
次に、スキャンセッションＩＤ要求リクエストについて説明する。
図１４は、スキャンセッションＩＤ取得処理を説明するシーケンス図である。このシーケンス図において、ＰＣ２００の処理は、ＰＣ２００のＣＰＵがダウンロードしたスキャンアプリケーションを実行することにより実現される。なお、スキャンアプリケーションに基づきＰＣ２００のウェブブラウザが行う処理については、スキャンアプリケーションを主体にして説明する。また、画像読取装置１００の処理は、ＣＰＵ１１がＲＯＭ１２に格納されたプログラムを実行することにより実現される。
【００６４】
画像読取装置１００のＣＰＵ１１は、スキャンセッションＩＤを生成したらＲＡＭ１３に保存しておき、スキャンが完了したときに該スキャンセッションＩＤを破棄する。また、既にスキャンセッションＩＤがＲＡＭ１３に保存されている場合には、画像読取装置１００のＣＰＵ１１は、新たなスキャンセッションＩＤを生成せず、無効なスキャンセッションＩＤを埋め込んだダウンロードファイルをＰＣ２００に送信する。このため、ＰＣ２００のスキャンアプリケーションは、再度スキャンを行いたい場合や、無効なスキャンセッションＩＤを取得した場合等には、画像読取装置１００にスキャンセッションＩＤを要求する必要が生じる。
【００６５】
ＰＣ２００のスキャンアプリケーションは、画像読取装置１００から、以下の場合、スキャンセッションＩＤ要求リクエスト（スキャンセッションＩＤの発行要求）を画像読取装置１００に送信する（Ｓ１４０１）。例えば、デバイスコンフィグレーション.xmlにスキャンセッションＩＤが含まれていない場合や無効なスキャンセッションＩＤが含まれている場合、画像読取装置１００からセッションＩＤ不適合を表す"status":"InvalidID"を受け取った場合等がこれに該当する。
【００６６】
上記Ｓ１４０１のリクエストに応じて、画像読取装置１００のＣＰＵ１１は、ＲＡＭ１３にスキャンセッションＩＤが保存されていない場合、新たなスキャンセッションＩＤを生成してＲＡＭ１３に保存し、該生成したスキャンセッションＩＤをＰＣ２００に送信する（Ｓ１４０２）。これにより、ＰＣ２００のスキャンアプリケーションは、画像読取装置１００から送信されたスキャンセッションＩＤを受信して、スキャンを行うことが可能となる。
【００６７】
なお、画像読取装置１００のＣＰＵ１１は、既にＲＡＭ１３にスキャンセッションＩＤが保存されている場合、新たなスキャンセッションＩＤを生成せず、例えば無効なＩＤをＰＣ２００に送信する。この場合、ＰＣ２００のスキャンアプリケーションは、再度スキャンセッションＩＤの要求を行う必要がある。
【００６８】
本実施形態では、画像読取装置１００のＩＰアドレスはデバイスコンフィグレーション.xmlファイルを参照する構成としたが、これに限定されるものではない。例えば、ＩＰアドレスの入手方法の一例として、マルチキャストＤＮＳ（ｍＤＮＳ）の応答を使用してもよい。スキャンアプリケーションのプログラムによって、ｍＤＮＳリクエストをＰＣ２００から発行した際に、画像読取装置１００の応答データのＴＸＴレコードの中にＭＡＣアドレス又はスキャナー名を入れておく。そして、スキャンアプリケーションは応答データのＴＸＴレコードとデバイスコンフィグレーション.xmlを比較することで、ダウンロード元の画像読取装置１００か、異なる画像読取装置または異なるネットワークデバイスなのか判断することができる。
【００６９】
また本実施形態では、ダウンロードするアプリケーションは特定のＯＳでのみ動作する構成として示した。しかし、図９のダウンロードファイル作成時に、ＨＴＴＰリクエストヘッダーに含まれるユーザーエージェント（HTTP_USER_AGENT）情報からクライアントＯＳを検出して、LauncherやスキャンアプリケーションをＯＳに基づいて選択してダウンロードファイルを構成してもよい。
【００７０】
また、本実施形態では、無効なセッションＩＤや無効なスキャンセッションＩＤを、“d41d8cd98f00b204e9800998ecf8427e”としたが、これに限定されるものではない。例えば、デバイスコンフィグレーション.xmlにおいて、scan-session-id要素を記述しなくてもよいし、空の文字列や、通常ＭＤ５で使用されない文字（例えば２バイト文字等）を使用しても構わない。
【００７１】
以上のように、第１実施形態によれば、画像読取装置の構成を低価格に抑えた上で、管理権限を有さない情報処理装置の使用者でも使用可能で、ドライバーインストールの煩わしさも無くすことができる。また、複数使用者のいるネットワークに画像読取装置が接続されている場合において、ＩＰアドレスの再入力や使用権限取得の操作などを使用者に要求する等の煩雑な操作を削減し、使用者の操作の手間を抑えることができる。このように使い勝手のよい画像読取装置を提供することができる。
【００７２】
〔第２実施形態〕
上述した第１実施形態の画像読取装置は、スキャン終了時にスキャンセッションＩＤを破棄し、他のＰＣにスキャンセッションＩＤを発行可能な状態となる。このため、例えばスキャン中にジャムなどのエラーが発生してスキャンが終了した場合でもスキャンセッションＩＤが破棄される。エラー終了の場合、ジャムを解消したユーザーがすぐに再スキャンできない場合がある。例えば、ジャム解消作業中に他のＰＣのスキャンアプリケーションからスキャンが要求されると、そのスキャンアプリケーションに対して有効なスキャンセッションＩＤが付与されてしまう。また、ユーザーがエラーを解消している間にタイムアウトしてしまい、画像読取装置の使用権限が他のＰＣに移行してしまう可能性もある。このような場合、ジャムを解消したユーザーは、上記他のＰＣのユーザーがスキャンを終了するまで待機する必要があり、そのスキャン作業をすみやかに完了することができなくなる。そこで、第２実施形態では、ジャム等のエラーによりスキャン終了した場合には、そのスキャンセッションを継続、タイムアウトの防止等をするように構成する。以下、詳細に説明する。
【００７３】
まず、図１５を用いて、原稿１０１の紙詰まり（ジャム）の検知について説明する。
図１５は、画像読取装置におけるエラー検知を説明する図である。ここでは、原稿の紙詰まり（ジャム）の検知を例に説明する。
【００７４】
画像読取装置１００のＣＰＵ１１は、各種センサの情報に基づいて原稿１０１のスキャン動作を制御する。例えば、レジストセンサ１０９によって原稿１０１が画像読取ユニット１０４の読取位置を通過したことが検知されると、ＣＰＵ１１は、画像読取ユニット１０４による原稿１０１の読み取りを終了するよう制御する。また、ＣＰＵ１１は、搬送路１０８を搬送する原稿１０１のジャムエラーをレジストセンサ１０９と排紙口センサ１１２の情報を基づいて、例えば以下のように検知する。
【００７５】
まず、図１５（ａ）に、原稿を正常に搬送した場合の各センサの状態を示す。
レジストセンサ１０９は、搬送開始してからＴ１時間経過後に原稿１０１の到達を検知（点Ａ）して、レジストセンサ１０９から画像読取ユニット１０４までの距離を原稿が搬送されるのに掛かる時間の経過後に読み取りを開始する。その後、原稿がレジストセンサ１０９を通過したことを検知（点Ｂ）するが、その時間をＴ３とする。
排紙口センサ１１２は、レジストセンサ１０９が原稿１０１の到達を検知してから、さらにＴ２時間経過後に原稿１０１の到達を検知（点Ｃ）して、さらにＴ３時間経過後に原稿１０１の通過を検知（点Ｄ）する。
【００７６】
これに対し、例えば原稿１０１のジャムが発生した場合の各センサ状態は以下のようになる。
図１５（ｂ）のように、原稿１０１を搬送開始してＴ４時間経過してもレジストセンサ１０９が原稿１０１の到達を検知しない。ただし、Ｔ４＞＞Ｔ１とする。
または、図１５（ｃ）のように、レジストセンサ１０９が原稿１０１の到達を検知（点Ａ）してＴ６時間経過してもレジストセンサ１０９が原稿１０１の通過を検知しない。ただし、Ｔ６＞＞Ｔ３とする。
または、図１５（ｄ）のように、レジストセンサ１０９が原稿１０１の到達を検知（点Ａ）してＴ５時間経過しても、排紙口センサ１１２が原稿１０１の到達を検知しない。ただしＴ５＞＞Ｔ２とする。
または、図１５（ｅ）のように、排紙口センサ１１２が原稿１０１の到達を検知（点Ｃ）してＴ６時間経過しても原稿１０１の通過を検知しない。ただし、Ｔ６＞＞Ｔ３とする。
【００７７】
ＣＰＵ１１は、上記図１５（ｂ）〜図１５（ｅ）のような状態が発生した場合、原稿のジャムエラーが発生したと判断して、原稿の搬送および画像の読み取り動作を停止する。本実施形態では、レジストセンサ１０９と排紙口センサ１１２の情報を基にジャムエラー検知を行う例を挙げたが、ラインイメージセンサ１０４３によって読み取った画像をもとにジャム検知を行うように構成してもよい。
また、本実施形態では、エラーとしてジャムエラーの例を挙げたが、カバーオープンエラー、重送エラー、ステープル検知エラーなどのエラーを含むように構成してももちろん構わない。なお、カバーオープンエラーは、スキャン動作中に画像読取装置１００のカバーが開けられたことをセンサにより検知した場合のエラーに対応する。また、重送エラーは、複数枚の原稿が重なった状態で搬送されていることを例えば超音波センサにより検知した場合のエラーに対応する。また、ステープル検知エラーは、ステープル処理が施された原稿が搬送されるエラーであり、搬送されている原稿の跳ね上がりをセンサで検知（又はステープル針を金属検知センサで検知）等することにより検知される。
【００７８】
次に、スキャンセッションＩＤの管理について、図１６のフローチャートに従って説明する。
図１６は、画像読取装置１００におけるスキャンセッションＩＤを管理するタスクの処理の一例を示すフローチャートである。このフローチャートの処理は、画像読取装置１００のＣＰＵ１１がＲＯＭ１２に格納されたプログラムを実行することにより実現される。
【００７９】
画像読取装置１００に電源が投入されると、ＣＰＵ１１は、ウェブブラウザからのダウンロードリクエスト、スキャンアプリケーションからのスキャンリクエスト、スキャンセッションＩＤ要求リクエスト、および画像読取装置１００によって指示されるスキャン終了処理リクエストを処理するセッション管理タスクを生成する。そして、ＣＰＵ１１は、ＲＡＭ１３のスキャンセッションＩＤを記憶するスキャンセッションＩＤアドレスの初期化（例えば全て「0」で上書きして空にする）と、スキャンセッションＩＤタイマーを初期化（０にする）を行い（Ｓ１６１０）、上述の各リクエストの受け付けを開始する。スキャンセッションＩＤタイマーは、スキャンセッションＩＤが発行されてからの経過時間を計測するタイマーに対応する。
【００８０】
画像読取装置１００のＣＰＵ１１は、ダウンロードリクエスト、スキャンリクエスト又はスキャンセッションＩＤ要求リクエストを受けると（Ｓ１６２０）、Ｓ１６２５に処理を進める。
Ｓ１６２５において、画像読取装置１００のＣＰＵ１１は、スキャンセッションＩＤアドレスが空か否かを判定する。スキャンセッションＩＤアドレスが空の場合（Ｓ１６２５でＹｅｓの場合）、画像読取装置１００のＣＰＵ１１は、スキャン操作を許可されたユーザーがいないと判断し、新たにスキャンセッションＩＤを作成してスキャンセッションＩＤアドレスに保存する（Ｓ１６２６）。さらに、画像読取装置１００のＣＰＵ１１は、ダウンロードリクエストに対してはＳ１６２６で作成した有効なスキャンセッションＩＤを付加したダウンロードファイルを作成し、スキャンリクエストに対してはスキャン許可する。また、スキャンセッションＩＤ要求リクエストに対しては、画像読取装置１００のＣＰＵ１１は、Ｓ１６２６で作成した有効なスキャンセッションＩＤを返す。また、画像読取装置１００のＣＰＵ１１は、スキャンセッションＩＤを生成してからの時間を計測するスキャンセッションＩＤタイマーをリスタートする（Ｓ１６２８）。これにより、有効なスキャンセッションＩＤが発行されてからの経過時間を再計測してタイムアウトまでの時間を延長することができる。その後、Ｓ１６２０に処理を移行する。
【００８１】
一方、上記Ｓ１６２５において、スキャンセッションＩＤアドレスが空でない場合（Ｓ１６２５のＮｏの場合）、画像読取装置１００のＣＰＵ１１は、Ｓ１６２７に処理を進める。
Ｓ１６２７において、画像読取装置１００のＣＰＵ１１は、スキャンリクエストに対してはスキャンアプリケーションから送られてきたスキャンセッションＩＤとスキャンセッションＩＤアドレスに保存したＩＤを比較して両者が一致するか否かを判定する。
【００８２】
上記Ｓ１６２７において、両者のＩＤが一致する場合（Ｓ１６２７のＹｅｓの場合）、画像読取装置１００のＣＰＵ１１は、スキャンを許可し（不図示のステップ）、Ｓ１６２８に処理を進める。すなわち、スキャンセッションＩＤタイマーをリスタートする。
【００８３】
一方、上記Ｓ１６２７において、両者のＩＤが一致しない場合（Ｓ１６２７のＮｏの場合）、画像読取装置１００のＣＰＵ１１は、スキャンを許可することなく、Ｓ１６２９に処理を進める。なお、上記Ｓ１６２０で受けたリクエストがダウンロードリクエスト又はスキャンセッションＩＤ要求リクエストの場合には、リクエストにスキャンセッションＩＤが含まれていないため、上記Ｓ１６２７は常にＮｏと判定される。
【００８４】
Ｓ１６２９において、画像読取装置１００のＣＰＵ１１は、無効なスキャンセッションＩＤを作成してリクエスト元に応答し、Ｓ１６２０に処理を移行する。なお、ダウンロードリクエストの場合、ＣＰＵ１１は、無効なスキャンセッションＩＤを付加したダウンロードファイルを作成してリクエスト元に応答する。本実施形態では、セッションＩＤやスキャンセッションＩＤは、時刻とＭＡＣアドレスを元にＭＤ５変換を行った文字列であり、無効なＩＤとは“d41d8cd98f00b204e9800998ecf8427e”とする。
【００８５】
また、上記Ｓ１６２０において、画像読取装置１００のＣＰＵ１１は、ダウンロードリクエスト、スキャンリクエスト又はスキャンセッションＩＤ要求リクエストのいずれも受けていない場合（Ｓ１６２０でＮｏの場合）、画像読取装置１００のＣＰＵ１１は、Ｓ１６３０に処理を進める。
【００８６】
Ｓ１６３０において、画像読取装置１００のＣＰＵ１１は、スキャンが終了した状態か否かを判定する。なお、スキャンが終了した状態とは、スキャンが終了し、まだスキャンが終了した場合に行う処理を行っていない状態を示す。そして、スキャンが終了した状態の場合（Ｓ１６３０でＹｅｓの場合）、画像読取装置１００のＣＰＵ１１は、Ｓ１６３５に処理を進める。
【００８７】
Ｓ１６３５において、画像読取装置１００のＣＰＵ１１は、上記終了したスキャンでエラーが発生したか否かを判定する。エラーが発生した場合（すなわち終了したスキャンがエラー終了だった場合）（Ｓ１６３５でＹｅｓの場合）、画像読取装置１００のＣＰＵ１１は、Ｓ１６２８に処理を進め、スキャンセッションＩＤタイマーをリスタートする。この場合、スキャンセッションＩＤアドレスに保存されているスキャンセッションＩＤを有効なままにする。
【００８８】
一方、上記Ｓ１６３５において、エラーが発生していない場合（すなわち終了したスキャンが正常終了だった場合）（Ｓ１６３５でＮｏの場合）、画像読取装置１００のＣＰＵ１１は、Ｓ１６４５に処理を進める。
Ｓ１６４５において、画像読取装置１００のＣＰＵ１１は、スキャンセッションＩＤアドレスに保存しているスキャンセッションＩＤを初期化（空）して破棄するとともに、スキャンセッションＩＤタイマーも初期化（０）し、Ｓ１６２０に処理を移行する。
【００８９】
また、上記Ｓ１６３０において、スキャンが終了した状態でない場合（Ｓ１６３０でＮｏの場合）、画像読取装置１００のＣＰＵ１１は、Ｓ１６４０に処理を進める。
Ｓ１６４０において、画像読取装置１００のＣＰＵ１１は、スキャンセッションＩＤがタイムアウトした（スキャンセッションＩＤを作成してから所定時間経過した）か否かを判定する。そして、スキャンセッションＩＤがタイムアウトしていない場合（Ｓ１６４０でＮｏの場合）、画像読取装置１００のＣＰＵ１１は、Ｓ１６２０に処理を移行する。
【００９０】
一方、上記Ｓ１６４０において、スキャンセッションＩＤがタイムアウトした場合（Ｓ１６４０でＹｅｓの場合）、画像読取装置１００のＣＰＵ１１は、Ｓ１６４５に処理を進め、スキャンセッションＩＤとスキャンセッションＩＤタイマーを初期化し、Ｓ１６２０に処理を移行する。
【００９１】
なお、本実施形態では、セッション管理において、エラーの種類によらず、エラーが発生してスキャン終了した場合、スキャンセッションＩＤを破棄せず、そのまま保持するようにした例を挙げた。しかし、例えばカバーオープンのようにスキャンを中断する意図があると判断されるエラーや、ハードウェアエラーのように、処理が再開されないと予測されるエラーの場合にはスキャンセッションＩＤを破棄し、一方、ジャムやステープル検知エラー等の処理の再開が予測される所定のエラーの場合にはスキャンセッションＩＤを破棄せずそのまま保持するようにしてもよい、このように、発生したエラーの種類に応じて処理を切り換えるように制御してもよい。また、エラーの種類に応じて、タイムアウト時間を変更するようにしてもよい。例えば、ステープル検知エラーの場合、処理の再開まで時間がかかることが予測されるため、タイムアウト時間を通常のタイムアウト時間よりも長く設定するようにしてもよい。なお、ステープル検知エラーは、原稿の搬送路に設けられた図示しないセンサにより原稿の跳ね上がりを検知したり、図示しない金属センサによりステープル針を検知することにより検知可能である。
【００９２】
また、上述の説明では、セッション管理において、エラーが発生してスキャン終了した場合、スキャンセッションＩＤを破棄せず、そのまま保持するようにした例を挙げた。しかし、エラーが発生してスキャン終了した場合、スキャンセッションＩＤを一旦破棄したうえで別のスキャンセッションＩＤを作成して、再度そのスキャンアプリケーションとのスキャンセッションを確立するように構成してもよい。すなわち、図１６のＳ１６３５でＹｅｓの場合に、Ｓ１６２６，Ｓ１６２８を実行し、スキャンセッションＩＤを再作成・保存して、そのスキャンアプリケーションに送信し、スキャンセッションＩＤタイマーをリスタートするようにしてもよい。
【００９３】
以上、第２実施形態によれば、第１実施形態の効果に加え、スキャン中にジャム（原稿詰まり）などのエラーが発生してスキャンが終了したとしても、他のスキャンアプリケーションに対して有効なセッションＩＤを付与せず、現在のスキャンアプリケーションとのセッション確立を継続、タイムアウトの防止等をすることで、ユーザーにスキャン作業（原稿読み取り作業）を完結させることができる。
【００９４】
なお、上記第１実施形態及び第２実施形態では、画像読取装置１００は、ＰＣ２００のスキャンアプリケーションからの原稿読み取り要求に無効なスキャンセッションＩＤが含まれていた場合、"status":"InvalidID"をＰＣ２００のスキャンアプリケーションに返却する構成について説明した。この構成の場合、"status":"InvalidID"を受け取ったＰＣ２００が図１４に示したスキャンセッションＩＤ取得処理を行い、再度、原稿読み取り要求を行うことになる。
しかし、画像読取装置１００のＲＡＭ１３にスキャンセッションＩＤが保存されていない場合には、ＰＣ２００のスキャンアプリケーションからの原稿読み取り要求に無効なスキャンセッションＩＤが含まれていた場合でも"status":"InvalidID"を返却せず、該ＰＣ２００のスキャンアプリケーションにスキャンセッションＩＤを発行しつつ、そのままスキャン動作を開始するように構成してもよい。この構成により、ＰＣ２００のスキャンアプリケーションと画像読取装置１００との間のやり取りを省略し、速やかにスキャン動作を開始することが可能となる。
【００９５】
また、ＰＣ２００のスキャンアプリケーションは、画像読取装置１００に原稿読み取り要求をリクエストする場合、該要求にスキャンセッションＩＤを含める構成について説明した。そして、画像読取装置１００側では、原稿読み取り要求に含まれるスキャンセッションＩＤを用いて、該原稿読み取り要求が保持してあるスキャンセッションＩＤに対して有効であるか否かを判定する構成であった。
しかし、原稿読み取り要求に、スキャンセッションＩＤを含めないようにしてもよい。この構成の場合、例えば、画像読取装置１００は、スキャンセッションＩＤの発行時に、発行先のＰＣ２００のＩＰアドレス等（ＭＡＣアドレスなどでもよい）をスキャンセッションＩＤに紐つけて保持しておき、原稿読み取り要求があった場合には、該要求元のＩＰアドレス等と上記保持してあるＩＰアドレス等を比較し、原稿読み取り要求が、保持してあるスキャンセッションＩＤに対して有効であるか否かを判定するようにしてもよい。
【００９６】
また、上記各実施形態において、スキャンセッションＩＤは、ＭＡＣアドレスなどを用いて生成される例について説明したが、例えば、ＰＣ２００のデバイスの名称、ＩＰアドレスなどのＰＣ２００に関する他の情報を用いて特定のルールを用いて生成しても良い。また、ダウンロードファイルにスキャンセッションＩＤを埋め込まずに、画像読取装置１００側のみで記憶しておいても良い。その場合、ＰＣ２００のスキャンアプリケーションから原稿読み取り要求を受け取った際に、画像読取装置１００側でそのＰＣ２００の情報によって上記特定のルールを用いてスキャンセッションＩＤを一時的に作成し、記憶しているスキャンセッションＩＤと比較することで、受け取った原稿読み取り要求が有効か否かを判定するようにしてもよい。
【００９７】
〔第３実施形態〕
画像読取装置１００に接続される情報処理装置のうち、特にスマートフォンやタブレット型ＰＣなどの携帯型の情報処理装置は、一般的に蓄電池で動作するため作業途中に電池切れとなったり、電話の受信などにより強制的にアプリケーションの切り替えが行われることなどが起こりやすい。これらの要因により、スキャン処理中に情報処理装置側でスキャンを実行しているアプリケーションが終了・中断してしまうと、画像読取装置ではスキャン処理が終了しないままとなってしまう可能性がある。この場合、タイムアウトとなるまでは、他の情報処理装置から画像読取装置を使用することができない場合がある。第３実施形態では、この課題を解決する構成について説明する。なお、本実施形態では周辺装置の一例として画像読取装置（スキャナー）を用いて説明するが、本発明を適用可能な周辺装置はスキャナーに限定されるものではなく、同様の環境において使用される周辺装置においても適用可能である。
【００９８】
図１８は、本発明の第３実施形態を示すシステムの構成の一例を示す図である。ここでは、スキャナー１８１０、携帯端末ａ（１８２０）、携帯端末ｂ（１８３０）を含むシステムを例に説明する。
図１８に示すように、スキャナー１８１０と、携帯端末ａ（１８２０）、携帯端末ｂ（１８３０）は同一のＬＡＮ１８００に接続されており、それぞれデータの送受信が可能である。例えば、スキャナー１８１０のＩＰアドレスは192.168.1.10、携帯端末ａ（１８２０）のＩＰアドレスは192.168.1.100、携帯端末ｂ（１８３０）のＩＰアドレスは192.168.1.101が割り当てられている。なお、携帯端末をさらに増やすことや、携帯型ではない通常の端末（例えばＰＣ）を用いてもよいが、説明を簡潔にするために本例では上述の構成とする。
【００９９】
≪スキャナー≫
スキャナー１８１０は、紙の原稿を読み取って電子データへと変換する機能である画像読取部１８１１を備える画像読取装置である。画像読取部１８１１は、制御部１８１３の制御の下、原稿上の画像を読み取って電子データを作成し、記憶部１８１２に記憶する。
制御部１８１３は、スキャナー１８１０の全体を制御する。
【０１００】
ＵＩ部１８１４は、例えば、表示パネル（タッチパネル付き表示器）、ＯＫキー、キャンセルキー、上キー、下キー、テンキーなどの各種キーを備える。表示パネルに表示される画面と各種キーの押下検知は、制御部１８１３の制御の下に行われる。
【０１０１】
送受信部１８１５は、端末から発行されるリクエストに応じて後述するＵＩ提供部１８１６で作成したＵＩ（ユーザーインターフェース）を端末に送信する。また、送受信部１８１５は、スキャン開始リクエスト、状況確認リクエスト、画像取得リクエストなどのリクエストの受信と、受信したリクエストに対するレスポンスの送信を行う。
【０１０２】
ＵＩ提供部１８１６は、スキャン設定をするためのスキャン設定画面、スキャンした画像を端末に保存するための画像保存画面、スキャン中などの現在の状況を表す状況表示画面等の操作画面をｈｔｍｌ形式で作成し、端末に提供する。ＵＩ提供部１８１６は、ＪａｖａＳｃｒｉｐｔ（登録商標）等で書かれたプログラムを埋め込んだｈｔｍｌ形式のデータを作成してもよい。また、ｈｔｍｌ形式で作成することで、ＵＩ提供部１８１６で作成した画面を、端末のウェブブラウザ上に表示することができる。
【０１０３】
また、ＵＩ提供部１８１６は、スキャナー１８１０が特定の端末から使用されている状態のときに、他の端末からのリクエストに対して排他制御する排他機能を有している。
この排他機能は、セッション管理によって行われる。具体的には、端末のウェブブラウザからスキャナー１８１０にアクセスする際に、スキャナー１８１０は、アクセスしてきた端末のＩＰアドレスを取得する。そして、スキャナー１８１０は、アクセスしてきた端末のＩＰアドレスをセッション管理のためのセッションＩＤとしてＵＩ提供部１８１６に記憶する。
【０１０４】
ＵＩ提供部１８１６に記憶するセッションＩＤの初期値は、初期状態であることを示す値（例えば「０」など）となっている。そして、セッションＩＤが初期値のときにＵＩ提供部１８１６に対してＵＩ提供リクエストを最初に行った端末のＩＰアドレスを、ＵＩ提供部１８１６に記憶するセッションＩＤとして上書きする。そして、スキャンに関する一連の処理が完了すると、ＵＩ提供部１８１６は、セッションＩＤを初期値に上書きする。
このような構成により、セッション中の端末からのみリクエストを受け付け、他の端末からのリクエストを排他することができる。なお、セッション中の端末から一定期間アクセスがない場合、ＵＩ提供部１８１６はセッションＩＤの初期値への上書き処理を実行する（タイムアウトによるセッションＩＤの初期化）。
【０１０５】
例えば、ＵＩ提供部１８１６のセッションＩＤが初期値のときに、携帯端末ａ（１８２０）からスキャナー１８１０のＵＩ提供部１８１６にアクセスしてきた場合、ＵＩ提供部１８１６はセッションＩＤとして、携帯端末ａ（１８２０）のＩＰアドレス“192.168.1.100”を記憶する。その後は、ＵＩ提供部１８１６は、端末からのアクセスに対して、ＵＩ提供部１８１６に保存されているセッションＩＤとアクセス元のＩＰアドレスを比較する。比較結果が同じであれば、ＵＩ提供部１８１６は、リクエストに対して正常なレスポンスを返す。比較結果が異なれば、ＵＩ提供部１８１６は、スキャナーが使用中である旨を示すレスポンスを返す。
なお、制御部１８１３、ＵＩ提供部１８１６は、それぞれ内部の記憶部又は記憶部１８１２等に記憶されるプログラムを実行することにより、各種制御を行う。なお、セッションＩＤは一例であり、ＩＰアドレス以外を用いても良い。
【０１０６】
≪携帯端末≫
携帯端末ａ（１８２０）、携帯端末ｂ（１８３０）は、例えば、スマートフォンやタブレット型ＰＣなどの携帯可能な端末である。なお、携帯端末ａ（１８２０）と携帯端末ｂ（１８３０）とは同様の構成とし、同一のものには同一の符号を付してある。
【０１０７】
送受信部１８２１は、ＬＡＮ上のデバイスと各種データの送受信を行う。
記憶部１８２２は、携帯端末のＯＳやウェブブラウザなどのアプリケーション等の各種プログラムが記憶されており、制御部１８２３の制御の下、各種プログラムの起動が行える。
ＵＩ部１８２４は、タッチパネルを備え、ホーム画面やウェブブラウザ画面などを表示する。ＵＩ部１８２４では、タッチパネルに表示されている画面にボタンが表示されている場合は、タップの検出が可能である。また、ＵＩ部１８２４は、ホームキーが備えられ、ホームキーが押下されることでタッチパネルにホーム画面が表示される。ホーム画面では、ウェブブラウザなどのアプリケーションの選択が可能である。タッチパネルの画面表示やタップ検出、ホームボタンの押下検出は、制御部１８２３の制御の下に行われる。
【０１０８】
携帯端末にはカメラ１８２５が搭載され、制御部１８２３の制御の下、カメラ１８２５で読み取った二次元バーコード（ＱＲコード（登録商標））などの画像コードを読み取る機能を有していてもよい。ＱＲコードの読み取りが可能な場合は、携帯端末は、ＱＲコードから得られたＵＲＬ情報を使ってＵＲＬ先にアクセスすることができる。また、撮像した画像の中に含まれる文字列をＯＣＲ処理することなどによってもＵＲＬ先にアクセスすることができる。
【０１０９】
≪スキャン処理フロー≫
以下、携帯端末ａ（１８２０）を使ったスキャンの流れを説明する。
図１９は、携帯端末ａ（１８２０）を使ったスキャンの流れを説明する図である。
スキャナー１８１０は、電源がＯＮになると、ＵＩ部１８１４の表示パネルに図２０のようなメニュー画面１９００を表示する待機状態に遷移する。
図２０は、スキャナー１８１０のＵＩ部１８１４に表示されるメニュー画面の一例を示す図である。
メニューの項目はウェブアプリモード、本体設定の２つが存在する。ユーザーは、ＵＩ部１８１４の上キー、下キーを押して項目（１９０１又は１９０２）を選択し、ＯＫキーを押すことで項目を決定する。ここで、ウェブアプリモード１９０１が選択されると、スキャナーはＳ２１００に続くウェブアプリモードを開始する。本体設定１９０２が選択されると本体設定に関わる項目が表示され、その設定を用いてスキャンを実行することが可能となるが、ここでは説明を省略する。
【０１１０】
Ｓ２１００において、スキャナー１８１０のＵＩ提供部１８１６は、ウェブアプリモードを開始すると、スキャナーの表示パネルに、図２１のようなＵＲＬ表示画面１９１０を表示する。
図２１は、スキャナー１８１０のＵＩ部１８１４に表示されるＵＲＬ表示画面の一例を示す図である。この画面には、ＵＲＬとＵＲＬの内容が埋め込まれたＱＲコードが表示されており、ウェブアプリモードのときは本画面が表示される。なお、本実施形態においては端末のウェブブラウザを用いてスキャナーの通信をHTTP通信により行っているが、端末にキャプチャーアプリをインストールし、キャプチャーアプリとスキャナーとの通信をHTTP通信以外の通信で行っても良い。
【０１１１】
Ｓ２１０１において、ユーザーは、携帯端末ａ（１８２０）のウェブブラウザを起動し、図２１のように表示されているＵＲＬを入力し、携帯端末ａ（１８２０）からスキャナーにアクセスすることで、ブラウザ上に図２２のようなスキャン設定画面２０００が表示される。なお、端末装置ａにカメラが搭載され、ＱＲコードを読み取ることができる場合はそちらでＵＲＬの入力を代用してもよい。
図２２は、第３実施形態において携帯端末のＵＩ部１８２４に表示されるスキャン設定画面の一例を示す図である。
【０１１２】
Ｓ２１０２において、ユーザーは、携帯端末ａ（１８２０）のブラウザに表示されたスキャン設定画面２０００のボタン２００１〜２００３を操作し、スキャン設定を決定する。ここでは、一例として、カラーモードを「カラー」、原稿サイズを「Ａ４」、解像度を「３００ｄｐｉ」としているが、スキャナーの有する機能に応じて適宜スキャン設定項目・内容を追加、変更してよい。
【０１１３】
Ｓ２１０３において、ユーザーがスキャン開始ボタン２００４を押下すると、端末装置ａは、スキャナー１８１０にスキャン開始リクエストを発行する。スキャナー１８１０は、スキャン開始リクエストを受信すると、該リクエストにて設定されたスキャン設定に基づきスキャン処理を開始する。この後、携帯端末ａ（１８２０）は、定期的にスキャン処理が終了したかスキャナー１８１０に問い合わせる状況確認リクエストを発行する。このリクエストに対して、スキャナー１８１０は現在の状況を表す状況表示画面を作成し、端末装置ａ（１８２０）に提供する。スキャン処理が終わっていなければ、図２３のようなスキャン中であることを示すスキャン中画面２０１０を提供し、スキャン処理が完了すると図２４のような画像保存画面２０２０を提供する。
図２３は、携帯端末のＵＩ部１８２４に表示されるスキャン中画面の一例を示す図である。
図２４は、携帯端末のＵＩ部１８２４に表示される画像保存画面の一例を示す図である。
【０１１４】
Ｓ２１０４において、携帯端末ａ（１８２０）には、図２４のようなスキャンした画像を保存するための画像保存画面２０２０が表示される。図２４の例では４枚の画像をスキャンしたときの画像保存画面２０２０が表示されており、４枚のスキャン画像に対応する４つのサムネイル２０２１、２０２２、２０２３、２０２４が表示されている。画像保存画面２０２０では、ユーザーが保存する画像をタップすることで、スキャナー１８１０に画像取得リクエストが送信されるようになっており、画像のダウンロードが行える。ダウンロードされた画像は、端末装置ａ（１８２０）の記憶部１８２２に保存される。一連の処理が終わると、ユーザーは、終了ボタン２０２５を押下することにより、ウェブアプリモードの一連の処理が終了する。なお、サムネイル表示された画像をすべて保存する一括保存ボタンが合っても良いし、終了ボタン２０２５がその機能を有していても良い。その場合、選択した画像だけを保存して終了するための他のボタンを設けることが好ましい。
【０１１５】
スキャンに関する一連の処理が完了すると、ＵＩ提供部１８１６は、セッションＩＤを初期値に上書きしてスキャナー１８１０は待機状態に遷移し、図２０のメニュー画面１９００を表示する。
【０１１６】
≪排他処理フロー≫
上記の説明では、１台の携帯端末ａ（１８２０）とスキャナーを使ったスキャン処理の流れを説明した。次に、２台の携帯端末ａ（１８２０）、携帯端末ｂ（１８３０）が存在する場合に起きる排他処理および排他処理解除の流れを説明する。
【０１１７】
例えば、携帯端末ａ（１８２０）が上述した図１９のＳ２１０４で画像保存画面２０２０を表示しているときに、携帯端末ａ（１８２０）の電源が切れるなどして以降の処理を継続できなくなってしまったとする。この場合、スキャナー１８１０は、携帯端末ａ（１８２０）とのセッションのタイムアウトが起きるまで他の端末からのアクセスを排他する。この状況で、携帯端末ｂ（１８３０）のウェブブラウザを使ってスキャナー１８１０にアクセスすると、図２５に示す他ユーザー使用中画面２０３０がウェブブラウザに表示される。
図２５は、携帯端末のＵＩ部１８２４に表示される他ユーザー使用中画面の一例を示す図である。
【０１１８】
このようにセッション中に何らかのアクシデントで処理が継続できなくなった場合、本実施形態では、ユーザーが、スキャナー１８１０本体のＵＩ部１８１４のキャンセルキー（不図示）を押下することで、排他処理を解除し、ウェブアプリモードを終了することができる。以下、詳細に説明する。
【０１１９】
図２６は、第３実施形態におけるウェブアプリモードの終了処理の一例を示すフローチャートである。このフローチャートの処理は、スキャナー１８１０のＵＩ提供部１８１６が内部の記憶部又は記憶部１８１２に格納されるプログラムを実行することにより実現される。
【０１２０】
Ｓ２７００において、スキャナー１８１０のＵＩ提供部１８１６は、ウェブアプリモード中にＵＩ部１８１４のキャンセルキー（不図示）が押されると、表示パネルに図２７に示すようなウェブアプリモードの終了確認画面１９２０を表示するよう制御する。終了確認画面１９２０において、ユーザーは、ウェブアプリモードを終了するか否かを選択可能である。
図２７は、第３実施形態のスキャナー１８１０のＵＩ部１８１４に表示される終了確認画面の一例を示す図である。
【０１２１】
次に、Ｓ２７０１において、スキャナー１８１０のＵＩ提供部１８１６は、ウェブアプリモードの終了確認画面１９２０でのユーザー選択に基づき、ウェブアプリモードを終了するか否かを判定する。ここで、ウェブアプリモードの終了確認画面１９２０で「はい」１９２１が選択されると、スキャナー１８１０は、ウェブアプリモードを終了する（Ｓ２７０１でＹｅｓ）と判定し、Ｓ２７０２に処理を進める。
【０１２２】
Ｓ２７０２において、スキャナー１８１０のＵＩ提供部１８１６は、ＵＩ提供部１８１６に記憶されているセッションＩＤを初期値（例えば「０」）で上書きする。これにより、他の端末からのアクセスを受け付けることができるようになる。
さらにＳ２７０３において、スキャナー１８１０のＵＩ提供部１８１６は、ＵＩ部１８１４の表示パネルに図２０のようなメニュー画面１９００を表示し、処理を終了する。
【０１２３】
またＳ２７０１において、ウェブアプリモードの終了確認画面１９２０で「いいえ」１９２２が選択されると、スキャナー１８１０は、ウェブアプリモードを終了しない（Ｓ２７０１でＮｏ）と判定し、Ｓ２７０４に処理を進める。
Ｓ２７０４において、スキャナー１８１０は、ＵＩ部１８１４の表示パネルに図２１のようなウェブアプリモード画面１９１０を表示し、処理を終了する。
【０１２４】
以上のように、第３実施形態では、例えば携帯端末の電池切れ等のような何らかのアクシデント等によりスキャン処理が継続できなくなった場合でも、スキャンセッションのタイムアウトを待つことなくウェブアプリモードを終了でき、他のユーザーがスキャナーを使用可能にすることができる。なお、図２６のＳ２７０２において、ウェブアプリモードを終了するかどうかの選択を受け付けるように構成したが、これに限られない。例えば、ウェブアプリモードを維持したまま、現在のセッションＩＤのみを破棄するようにしても良い。この場合、Ｓ２７０３においてメニュー画面１９００を表示する代わりに、ＵＲＬ表示画面１９１０を表示しても良い。
すなわち、原稿読み取り処理が完了する前にウェブアプリケーション等が終了・中断されてしまってスキャンセッションが正常に終了されなかったとしても、スキャンセッションのタイムアウトを待つことなく、別の情報処理装置から画像読取装置を使用することを可能にする。
【０１２５】
〔第４実施形態〕
上記第３実施形態では、ＵＩ部１８１４のキャンセルキー（不図示）を押下することにより誰でもスキャナー１８１０のウェブアプリモードを終了することができる。そのため、悪意のあるユーザーによりウェブアプリモードを終了されてしまう可能性がある。そこで、第４実施形態では、ウェブアプリモードを終了する場合にパスコードの入力操作を要求するように構成する。以下、詳細に説明する。
【０１２６】
本実施形態では、図１９のＳ２１０２において、スキャン設定画面を操作しているときの携帯端末ａ（１８２０）に表示されるスキャン設定画面が、本例では図２８に示すスキャン設定画面２０４０となる。
図２８は、第４実施形態において携帯端末のＵＩ部１８２４に表示されるスキャン設定画面の一例を示す図である。
ここで、スキャン設定画面２０４０と図２２のスキャン設定画面２０００との違いは、終了パスコード２０４５が表示されている点である。なお、スキャン設定画面２０４０のボタン２０４１〜２０４４は、スキャン設定画面２０００のボタン２００１〜２００４と同一のものであり、説明を省略する。
【０１２７】
終了パスコード２０４５は、ウェブアプリモードを途中で終了するときに必要になるものである。本実施形態のスキャナー１８１０は、この終了パスコードをＵＩ提供部１８１６に記憶しておき、後述するユーザーから入力されるパスコードと一致するか否かを判定し、ウェブアプリモードの終了を制御する。
【０１２８】
以下、図３１を用いて、ウェブアプリモード中にキャンセルキーが押されたときの処理の流れについて説明する。
図３１は、第４実施形態におけるウェブアプリモードの終了処理の一例を示すフローチャートである。このフローチャートの処理は、スキャナー１８１０のＵＩ提供部１８１６が内部の記憶部又は記憶部１８１２に格納されるプログラムを実行することにより実現される。
【０１２９】
Ｓ３１００において、スキャナー１８１０のＵＩ提供部１８１６は、ウェブアプリモード中にＵＩ部１８１４のキャンセルキー（不図示）が押されると、表示パネルに図２９のようなパスコード入力画面１９３０を表示し、ユーザーからのパスコード入力を待機する。
図２９、図３０は、第４実施形態のスキャナー１８１０のＵＩ部１８１４に表示されるパスコード入力画面の一例を示す図である。
【０１３０】
なお、図２８に示したスキャン設定画面の例では、終了パスコードが「１２３４」に設定されているが、この終了パスコードはスキャン処理毎にランダムな値に変わることが望ましい。他にも、終了コードをユーザーが任意に設定できる構成にしてもよい。図３０の１９４０のように、終了コードが入力されると、スキャナー１８１０のＵＩ提供部１８１６は、Ｓ３１０１に処理を進める。
【０１３１】
Ｓ３１０１において、スキャナー１８１０のＵＩ提供部１８１６は、入力されたパスコードが一致するかどうかを判定する。図３０に示すようにユーザーがスキャナーのテンキーを操作して入力したパスコードがＵＩ提供部１８１６に記憶されている終了パスコードと一致していると判定した場合（Ｓ３１０１でＹｅｓの場合）、スキャナー１８１０は、Ｓ３１０２に処理を進める。
【０１３２】
Ｓ３１０２において、スキャナー１８１０のＵＩ提供部１８１６は、ＵＩ提供部１８１６に記憶されているセッションＩＤを初期値で上書きする。これにより、他の端末からのアクセスを受け付けることができるようになる。
さらにＳ３１０３において、スキャナー１８１０のＵＩ提供部１８１６は、ＵＩ部１８１４の表示パネルに図２０のようなメニュー画面１９００を表示し、処理を終了する。
【０１３３】
また上記Ｓ３１０１において、ユーザーがスキャナー１８１０のテンキーを操作して入力したパスコードがＵＩ提供部１８１６に記憶されている終了パスコードと一致していないと判定した場合（Ｓ３１０１でＮｏの場合）、スキャナー１８１０のＵＩ提供部１８１６は、Ｓ３１０４に処理を進める。
Ｓ３１０４において、スキャナー１８１０のＵＩ提供部１８１６は、ウェブアプリモード画面１９１０を表示し、処理を終了する。
なお、図２９に示すパスコード入力画面１９３０の表示中に、スキャナー１８１０のキャンセルキーが押された場合には、スキャナー１８１０は、ウェブアプリモード画面１９１０（図２１）に表示を戻すようにしてもよい。
【０１３４】
以上説明したように、第４実施形態によれば、上記第３実施形態の効果に加え、スキャナー１８１０のウェブアプリモードを終了する場合にパスコードの入力を要求することにより、悪意のあるユーザー等によりウェブアプリモードを終了されてしまうことを防止することができる。
【０１３５】
なお、上記第３実施形態及び第４実施形態では、スキャナー１８１０は携帯端末のＩＰアドレスによりセッションを管理しているが、スキャナー１８１０においてＩＰアドレス以外のセッションＩＤを発行してセッションを管理する構成でもよい。
【０１３６】
また、上記第３実施形態及び第４実施形態では、携帯端末で動作するＷｅｂブラウザを介してスキャナー１８１０を操作する構成について説明したが、第１実施形態や第２実施形態のようにダウンロードされたスキャンアプリケーションによりスキャナー１８１０を操作する構成でもよいし、携帯端末にインストールされる専用のアプリケーションを用いてスキャナー１８１０を操作する構成でもよい。
【０１３７】
また、上記第３実施形態及び第４実施形態では、スキャンに関する一連の処理の実行中において、セッションＩＤを記憶部１８１２等に記憶することで携帯端末の排他制御を行っている際に、スキャナー１８１０のＵＩ部１８１４のキャンセルキーを操作することでセッションＩＤを破棄することができる構成について説明した。他の形態として、以下のような構成を備えていてもよい。
【０１３８】
例えば携帯端末側でスキャン設定するたびにその内容がスキャナー１８１０に通知されるように構成する。さらに、スキャナー１８１０は、その通知を所定間隔内で受信している場合には、スキャンセッションＩＤを破棄しないように構成する。
また、スキャナー１８１０は、スキャンセッションＩＤを破棄する場合に、破棄して良いかどうかの問い合わせを該スキャンセッションＩＤに対応する携帯端末に通知し、応答がない場合に破棄可能に構成しても良い。なお、スキャナー１８１０は、上記破棄の問い合わせに応じて携帯端末側から破棄してはいけない旨の応答があった場合には、スキャンセッションＩＤの破棄動作をリセットする（例えばスキャンセッションＩＤを破棄せず、スキャンセッションＩＤタイマーをリスタートする。）。また、スキャナー１８１０は、スキャンセッションＩＤを破棄した場合には、スキャンセッションＩＤが破棄されたことを、破棄されたスキャンセッションＩＤに対応する携帯端末に通知する。なお、スキャナー１８１０から携帯端末への通知は、携帯端末がサーバー機能を有する場合には、該サーバーに通知することで行う。また、携帯端末がスキャナー１８１０に対してポーリングを行っている場合には、該ポーリングにより行うものとする。なお、その他の方法によって行っても良い。
【０１３９】
携帯端末側がポーリングしているシステムの場合、スキャンセッションＩＤが破棄されたことを、破棄されたスキャンセッションＩＤに対応する携帯端末によってポーリング可能なように、スキャナー１８１０はスキャンセッションＩＤを破棄したことを示すフラグを立てておく。スキャナー１８１０がスキャンセッションＩＤを破棄したことを携帯端末側で認識した場合には、携帯端末側でその旨をユーザー通知する。なお、ユーザーへの通知方法は、画面表示でも良いし、他の通知方法でも良い。
【０１４０】
また、第４実施形態では、スキャナー１８１０にスキャンセッションＩＤを破棄させる操作を行う場合にはパスコードを必要とする構成であったが、スキャナー１８１０が画像の読み取りを開始するまではパスコードなしでスキャンセッションＩＤを破棄させることができるようにしてもよい。なお、スキャナー１８１０が画像の読取完了後、図２４のような画面においてサムネイルで画像を選択中の場合には、スキャンセッションＩＤを破棄できないようにしてもよいし、パスコードの入力が要求するようにしてもよい。
さらに、ユーザーがスキャンセッションＩＤの破棄を禁止するタイミングをスキャナー１８１０に設定可能にし、スキャナー１８１０は、該設定されたタイミングにおいてはスキャンセッションＩＤの破棄を禁止するようにしてもよい。
【０１４１】
以上、各実施形態によれば、画像読取装置の要求ハードウエア構成が高価なものになることを抑えつつ、情報処理装置に特別な管理権限が付与されていないユーザーであっても情報処理装置から画像読取装置を制御し、ＩＰアドレスの再入力や使用権限取得の追加操作などの煩雑な操作なく、原稿の読み取りを可能にする。
また、原稿読み取り中に原稿詰まりなどのエラーが発生して原稿読み取り処理が終了したとしても、エラー解除後に原稿読み取り処理を再開して原稿読み取り作業を完結させることを可能にする。
また、原稿読み取り処理が完了する前にウェブアプリケーション等が終了・中断されてしまってスキャンセッションが正常に終了されなかったとしても、セッションのタイムアウトを待つことなく、別の情報処理装置から画像読取装置を使用することを可能にする。
【０１４２】
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されていてもよい。
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
また、上記各実施形態を組み合わせた構成も全て本発明に含まれるものである。
【０１４３】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施形態の有機的な組合せを含む）が可能であり、それらを本発明の範囲から除外するものではない。即ち、上述した各実施形態及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【０１４４】
１００    画像読取装置
１０    制御部
１１    ＣＰＵ
１２    ＲＯＭ
１３    ＲＡＭ
２００    ＰＣ
【図１】
2020174276.tif 000003
【図２】
2020174276.tif 000004
【図３】
2020174276.tif 000005
【図４】
2020174276.tif 000006
【図５】
2020174276.tif 000007
【図６】
2020174276.tif 000008
【図７】
2020174276.tif 000009
【図８】
2020174276.tif 000010
【図９】
2020174276.tif 000011
【図１０】
2020174276.tif 000012
【図１１】
2020174276.tif 000013
【図１２】
2020174276.tif 000014
【図１３】
2020174276.tif 000015
【図１４】
2020174276.tif 000016
【図１５】
2020174276.tif 000017
【図１６】
2020174276.tif 000018
【図１７】
2020174276.tif 000019
【図１８】
2020174276.tif 000020
【図１９】
2020174276.tif 000021
【図２０】
2020174276.tif 000022
【図２１】
2020174276.tif 000023
【図２２】
2020174276.tif 000024
【図２３】
2020174276.tif 000025
【図２４】
2020174276.tif 000026
【図２５】
2020174276.tif 000027
【図２６】
2020174276.tif 000028
【図２７】
2020174276.tif 000029
【図２８】
2020174276.tif 000030
【図２９】
2020174276.tif 000031
【図３０】
2020174276.tif 000032
【図３１】
2020174276.tif 000033