JP2022031026A - 周辺機器、周辺機器動作システム及び制御プログラムのダウンロード方法 - Google Patents
周辺機器、周辺機器動作システム及び制御プログラムのダウンロード方法 Download PDFInfo
- Publication number
- JP2022031026A JP2022031026A JP2020135405A JP2020135405A JP2022031026A JP 2022031026 A JP2022031026 A JP 2022031026A JP 2020135405 A JP2020135405 A JP 2020135405A JP 2020135405 A JP2020135405 A JP 2020135405A JP 2022031026 A JP2022031026 A JP 2022031026A
- Authority
- JP
- Japan
- Prior art keywords
- peripheral device
- information processing
- control program
- unit
- scanner
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Stored Programmes (AREA)
- Facsimiles In General (AREA)
- Information Transfer Between Computers (AREA)
Abstract
【課題】使用者の手間をかけずに最新版の制御プログラムを得られる構成を提供する。【解決手段】スキャナ1は、ダウンローダ15と、スキャナ1の識別情報ファイル16とが記憶されている。ダウンローダ15は、スキャナ1と接続されるホストPC2において実行されることにより、ホストPC2とネットワーク接続されたアプリケーションサーバ5からスキャナ1の動作を制御するためのスキャナドライバ51などの制御プログラムをダウンロードさせる。フォルダ共有サービス14は、スキャナ1と接続されたホストPC2に、ダウンローダ15及び識別情報ファイル16を送信する【選択図】図3
Description
本発明は、情報処理装置に接続されて使用される周辺機器、情報処理装置及び周辺機器を備える周辺機器動作システム、及び、周辺機器を動作させるための制御プログラムのダウンロード方法に関する。
原稿上の画像を読み取る画像読取装置やシートに画像を形成する画像形成装置などの周辺機器は、パーソナルコンピュータ(PC)などの情報処理装置とUSBケーブルやネットワークを介して接続されるのが一般的である。そして、情報処理装置には、このような周辺機器を制御するための制御プログラムをインストールして使用することも一般的である。
また、近年、このような制御プログラムをインターネットを介して外部サーバからダウンロードすることも一般的になっている。外部サーバへのアクセスは、例えば、PCにインストールされているWebブラウザにURLを入力して行う。この際、使用者は、製品に同梱されたドキュメントに記載のダウンロードサイトURLを見て入力したり、ウェブ検索サービスを使ってダウンロードサイトを検索したりする場合もあった。
そこで、周辺機器としての画像形成装置内の記憶領域にドライバなどの制御プログラムを予め記憶しておく構成が提案されている(特許文献1)。特許文献1に記載の構成の場合、画像形成装置の記憶領域内の制御プログラムをPCへインストールすることで、使用者は、URLの入力などを行う手間をかけずにPCから必要なソフトウェアをインストール可能となる。
しかしながら、特許文献1に記載の構成のように、画像形成装置のような周辺機器内の記憶領域に制御プログラムを予め登録しておく場合、製品の出荷前に行われる周辺機器の記憶領域へのソフトウェア書込工程の終了後、制御プログラムのアップデートを行えない。このため、出荷後から製品の購入までの間に制御プログラムがバージョンアップされた場合、使用者はインストール作業後に制御プログラムを最新版に更新する必要がある。
本発明は、使用者の手間をかけずに最新版の制御プログラムを得られる構成を提供することを目的とする。
本発明の周辺機器は、情報処理装置に接続されて使用される周辺機器であって、前記周辺機器と接続される情報処理装置において実行されることにより、前記情報処理装置とネットワーク接続された外部サーバから前記周辺機器の動作を制御するための制御プログラムをダウンロードさせるダウンロードプログラムと、前記周辺機器の識別情報とが記憶された記憶部と、前記周辺機器と接続された前記情報処理装置に、前記記憶部に記憶された前記ダウンロードプログラム及び前記識別情報を送信する送信部と、を備えたことを特徴とする。
また、本発明の周辺機器は、情報処理装置に接続されて使用される周辺機器であって、前記周辺機器と接続される情報処理装置において実行されることにより、前記情報処理装置とネットワーク接続された外部サーバから前記周辺機器の動作を制御するための制御プログラムをダウンロードさせるダウンロードプログラムと、前記周辺機器の識別情報とが記憶された記憶部と、前記周辺機器と接続された前記情報処理装置に、前記記憶部を外部記憶領域として認識させる被記憶認識部と、を備えたことを特徴とする。
また、本発明の周辺機器動作システムは、情報処理装置と、情報処理装置に接続されて使用される周辺機器と、を備えた周辺機器動作システムであって、前記周辺機器は、前記情報処理装置において実行されることにより、前記情報処理装置とネットワーク接続された外部サーバから前記周辺機器の動作を制御するための制御プログラムをダウンロードさせるダウンロードプログラムと、前記周辺機器の識別情報とが記憶された記憶部を有し、前記情報処理装置は、前記ダウンロードプログラムを実行し、前記外部サーバから前記制御プログラムをダウンロードすることを特徴とする。
更に、本発明の制御プログラムのダウンロード方法は、周辺機器に接続される情報処理装置に、前記周辺機器の動作を制御するための制御プログラムをダウンロードさせる制御プログラムのダウンロード方法であって、前記周辺機器に記憶された、前記情報処理装置とネットワーク接続された外部サーバから前記制御プログラムをダウンロードさせるダウンロードプログラムと、前記周辺機器の識別情報とに、前記情報処理装置がアクセスするアクセス工程と、前記アクセス工程でアクセスした前記ダウンロードプログラムを実行し、前記外部サーバから前記制御プログラムをダウンロードするダウンロード工程と、を有することを特徴とする。
本発明によれば、使用者の手間をかけずに最新版の制御プログラムを得られる。
<第1の実施形態>
第1の実施形態について、図1から図15を用いて説明する。まず、図1を用いて本実施形態に係る画像読取システムの概略構成について説明する。
第1の実施形態について、図1から図15を用いて説明する。まず、図1を用いて本実施形態に係る画像読取システムの概略構成について説明する。
[画像読取システム]
図1において、周辺機器動作システムとしての画像読取システム1000は、ホストPC2と、ホストPC2に接続されて使用される周辺機器としてのスキャナ1とを備える。スキャナ1は画像読取装置の一例を示し、ホストPC2は、スキャナ1と所定のインターフェースを介して接続可能な情報処理装置である。なお、このホストPC2としては、例えば、ノート型のパーソナルコンピュータやデスクトップ型のパーソナルコンピュータだけでなく、スマートフォンやタブレット型端末などの携帯型端末でもよい。
図1において、周辺機器動作システムとしての画像読取システム1000は、ホストPC2と、ホストPC2に接続されて使用される周辺機器としてのスキャナ1とを備える。スキャナ1は画像読取装置の一例を示し、ホストPC2は、スキャナ1と所定のインターフェースを介して接続可能な情報処理装置である。なお、このホストPC2としては、例えば、ノート型のパーソナルコンピュータやデスクトップ型のパーソナルコンピュータだけでなく、スマートフォンやタブレット型端末などの携帯型端末でもよい。
本実施形態の画像読取システム1000では、スキャナ1とホストPC2が有線又は無線LANなどのネットワーク4を介して同じネットワークサーバ6に接続しており、ネットワークサーバ6を介してインターネット3へのアクセスが可能である。インターネット3上には、スキャナ1を制御するための制御プログラムとしてのドライバ、キャプチャーアプリケーション、ユーザーマニュアル等のアプリケーションが保管されている外部サーバとしてのアプリケーションサーバ5が存在し、これらのアプリケーションのダウンロードが可能となっている。即ち、ホストPCは、アプリケーションサーバ5とネットワーク接続されている。
[ハードウェア構成]
次に、画像読取システム1000を構成するスキャナ1及びホストPC2のハードウェア構成について、図2を用いて説明する。スキャナ1及びホストPC2は、それぞれCPU(Central Processing Unit)101、201、ROM(Read Only Memory)103、203、RAM(Random Access Memory)104、204を有している。CPU101、201は、ROM103、203に格納された制御手順に対応するプログラムを読み出しながら各部の制御を行う。また、RAM104、204には、作業用データや入力データが格納されており、CPU101、201は、前述のプログラム等に基づいてRAM104、204に収納されたデータを参照して制御を行う。以下、具体的に説明する。
次に、画像読取システム1000を構成するスキャナ1及びホストPC2のハードウェア構成について、図2を用いて説明する。スキャナ1及びホストPC2は、それぞれCPU(Central Processing Unit)101、201、ROM(Read Only Memory)103、203、RAM(Random Access Memory)104、204を有している。CPU101、201は、ROM103、203に格納された制御手順に対応するプログラムを読み出しながら各部の制御を行う。また、RAM104、204には、作業用データや入力データが格納されており、CPU101、201は、前述のプログラム等に基づいてRAM104、204に収納されたデータを参照して制御を行う。以下、具体的に説明する。
スキャナ1は、CPU101、画像読取部102、ROM103、RAM104、物理的なケーブル接続を行うための外部インターフェース105、外部I/Fコントローラ106、表示部107を備えている。スキャナ1は、例えば、シートなどの原稿が載置されるトレイと、トレイ上の原稿を搬送する搬送部と、搬送部で搬送された原稿上の画像を読み取る画像読取部102とを有する。そして、画像読取部102で読み取った画像を、例えば、ホストPC2に送信する。スキャナの構成は、このような構成に限らず、例えば、プラテンガラス上に載置した原稿の画像を画像読取部で走査することで読み取るような構成であっても良い。
図2におけるスキャナ1のハードウェア構成について説明する。まず、スキャナ1に電力が投入されると、CPU101は、ファームウェアをROM103から起動する。または、ファームウェアは不図示の不揮発性メモリ等から起動してもよい。ネットワーク接続部としての外部インターフェース105は、ネットワーク4(図1)を介してスキャナ1とホストPC2とをネットワークサーバ6へ接続する。CPU101は、画像読取部102の動作制御を行うことにより画像の読み取りを実行し、読み取った画像データを、外部インターフェース105を介してホストPC2に転送する。
外部I/Fコントローラ106は、外部インターフェース105を介して接続される装置との通信を制御する。表示部107は、スキャナ1の前面などに配置されたLCDパネル等であり、メッセージ等を出力可能な出力部である。スキャナ1では、この表示部107にメッセージやアイコンを表示することで、使用者への通知を行う。なお、表示部の代わりに音声出力器を設けて音声によりメッセージ等を出力可能な構成でもよい。また、表示部107は、タッチパネルとなっており、使用者が指などで画面にタッチすることでスキャナ1を操作可能となっている。
ホストPC2は、CPU201、HDD(ハードディスクドライブ)202、ROM203、RAM204、外部インターフェース205を備えている。また、CPU201には、ホストPC2を操作するための操作部としてのキーボード及びマウス(キーボード/マウス206)と画像を出力する出力部としてのディスプレイ207とが接続される。HDD202は、後述するダウンローダ15、識別情報ファイル16などの各種ソフトウェアなどを格納可能である。外部インターフェース205は、物理的なケーブル接続を行うための外部インターフェースである。
[ソフトウェア構成]
次に、画像読取システム1000及びアプリケーションサーバ5のソフトウェア構成について、図2を参照しつつ図3を用いて説明する。スキャナ1は、スキャナインターフェース11、表示制御部12、ネットワークサービス13、フォルダ共有サービス14、ダウンローダ(ダウンロードプログラム)15、識別情報ファイル(識別情報)16を備える。スキャナインターフェース11は、画像読取部102において読み取られた画像データをホストPC2へ転送する。表示制御部12は、スキャナ1のタッチパネル等の表示部107の制御を行う。ネットワークサービス13はネットワーク上のPCを探索し、PC名の検出を行う。フォルダ共有サービス14は、ネットワーク内のPCへダウンローダ15や識別情報ファイル16の送信を行う。
次に、画像読取システム1000及びアプリケーションサーバ5のソフトウェア構成について、図2を参照しつつ図3を用いて説明する。スキャナ1は、スキャナインターフェース11、表示制御部12、ネットワークサービス13、フォルダ共有サービス14、ダウンローダ(ダウンロードプログラム)15、識別情報ファイル(識別情報)16を備える。スキャナインターフェース11は、画像読取部102において読み取られた画像データをホストPC2へ転送する。表示制御部12は、スキャナ1のタッチパネル等の表示部107の制御を行う。ネットワークサービス13はネットワーク上のPCを探索し、PC名の検出を行う。フォルダ共有サービス14は、ネットワーク内のPCへダウンローダ15や識別情報ファイル16の送信を行う。
なお、スキャナ1にフラッシュメモリ等の着脱自在の記憶装置を接続し、記憶装置内にダウンローダ15や識別情報ファイル16を格納する構成でもよい。また、本実施形態では、ネットワークサービス13やフォルダ共有サービス14は、SMBやBonjour(登録商標)等の既知のプロトコルを用いることとする。
ホストPC2には、基本ソフトウェアとなるOS(オペレーシングシステム)21やデバイスドライバ22、ファイルシステム23等がインストールされている。デバイスドライバ22には、ネットワークに接続するためのネットワークアダプタドライバ221等のソフトウェアがインストールされており、ホストPC2をLAN等を介してインターネットに接続させる。ファイルシステム23は、ハードディスクドライブなどの記憶装置にファイルを格納するためのソフトウェアである。ネットワークアダプタドライバ221はOS21付属の機能として提供されていることが多い。なお、ネットワークアダプタドライバ221がOS21とは別にインストールされる構成であっても本実施形態は適用可能である。
インターネット3上のアプリケーションサーバ5には、スキャナドライバ51、キャプチャーアプリケーション52、ユーザーマニュアル53等の制御プログラムがアップロードされている。このような制御プログラムは、ホストPC2によりスキャナ1の動作を制御するためのプログラムである。識別情報ファイル16は、スキャナ1のライセンスキーやシリアル番号などの識別情報である。ダウンローダ15は、アプリケーションサーバ5からホストPC2に識別情報ファイル16をもとに制御プログラムのダウンロードを行う。
ここで、例えば、前述の特許文献1に記載の構成の場合、画像形成装置内の記憶領域に制御プログラムを記憶しておき、接続されたPCに制御プログラムをインストールするようにしている。但し、このような構成の場合、制御プログラムがバージョンアップされていた場合には、インストール後に最新版の制御プログラムに更新する必要があり、使用者の手間がかかってしまう。
また、インターネットを介して制御プログラムをダウンロードすることもあるが、この場合、PCにインストールされているWebブラウザにURLを入力したり、Web検索サービスを用いてダウンロードサイトを検索したりする必要があった。更に、制御プログラムのダウンロード又はインストール時に、製品の購入者がソフトウェアを利用できるように、ライセンスキーやシリアル番号などの製品の識別情報を入力する必要もあった。
このために本実施形態では、周辺機器としてのスキャナ1のROM(記憶部)103に、アプリケーションサーバ5から制御プログラムをホストPC2にダウンロードさせるダウンローダ15と、スキャナ1の識別情報である識別情報ファイル16とが記憶されている。そして、送信部としてのフォルダ共有サービス14により、スキャナ1に接続されたホストPC2に、ROM103に記憶されたダウンローダ15及び識別情報ファイル16を送信する。なお、記憶部は、ROM103以外に、例えば、別途設けられたハードディスクドライブ(HDD)などの他の記憶装置であっても良い。
言い換えれば、本実施形態では、以下のような制御プログラムのダウンロード方法を実行可能である。即ち、スキャナ1に記憶されたダウンローダ15及び識別情報ファイル16にホストPC2がアクセスするアクセス工程と、アクセス工程でアクセスしたダウンローダ15を実行し、アプリケーションサーバ5から制御プログラムをダウンロードするダウンロード工程とを実行可能である。本実施形態では、ダウンロード工程において識別情報ファイル16を用いるようにしている。なお、アクセス工程は、スキャナ1からホストPC2にダウンローダ15及び識別情報ファイル16が送信される工程である
[ダウンローダと識別情報ファイルの配布]
以下、本実施形態における、スキャナ1がダウンローダ15及び識別情報ファイル16をホストPC2へ配布(送信)する際の動作手順を、図4のフローチャートを用いて説明する。ここで、スキャナ1からダウンローダ15と識別情報ファイル16を配布する先として、ホストPC2内に共有フォルダが予め設定されていることを前提としている。
以下、本実施形態における、スキャナ1がダウンローダ15及び識別情報ファイル16をホストPC2へ配布(送信)する際の動作手順を、図4のフローチャートを用いて説明する。ここで、スキャナ1からダウンローダ15と識別情報ファイル16を配布する先として、ホストPC2内に共有フォルダが予め設定されていることを前提としている。
CPU101は、使用者がスキャナ1の電源をONにした時、図4のフローチャートの処理を開始する。まず、S1001において、CPU101が、スキャナ1が初期状態であると判断した場合(S1001でYesの場合)、CPU101はS1002に処理を進める。このとき、スキャナ1が初期状態かどうかを判断する方法は、後ほど詳しく説明する。
一方、S1001において、CPU101が、スキャナ1が初期状態でないと判断した場合(S1001のNo)、CPU101は、本フローチャートの処理を終了する。以降スキャナ1は、ホストPC2やタッチパネル等からの読み取り開始指示に応じてスキャナの動作を行う。
S1002において、スキャナ1内のネットワークサービス13は、SMB等の既知のプロトコルを用いて、スキャナ1が接続されているネットワーク4内のPC(デバイス)を探索し、使用可能なPC名やIPアドレスをCPUメモリ(例えばRAM104)へ保存する。このとき保存された探索結果は、図5のようにデバイス名の一覧としてリスト形式で表示部107に表示されるものとする。即ち、表示部107は、ネットワーク接続部としての外部インターフェース105を介してスキャナ1がネットワーク4に接続された際に、ネットワーク4内の動作可能な情報処理装置としてのPCなどのデバイスの一覧を表示可能である。
次にS1003において、使用者が、表示部107に表示されたリストからダウンローダ15などのダウンロード先を選択する。選択部としての表示部107のタッチパネルを操作することで、表示部107に表示されたデバイスの一覧から使用者が任意のデバイス(PC)を選択可能である。そして、ダウンロード先を決定したとき(S1003のYes)、CPU101は、S1004に処理を進める。ここでは、図5のPC-B(IPアドレス:192.168.0.2)が選択されたこととする。
一方、S1003において、表示部107に目的のPC名が表示されなかった等という理由により、使用者がデバイスを選択しなかった場合(S1003でNo)、CPU101は、リストを更新するか否かを使用者に選択させる(S1008)。例えば、表示部107にリストの更新の有無を表示する。この際、使用者がデバイス情報の更新を選択した場合(S1008のYes)、CPU101はS1002の処理に戻り、再度、スキャナ1が接続されているネットワーク4内のPC(デバイス)を探索する。なお、S1008において、使用者がデバイス情報の更新を選択せずに、処理の終了を選択した場合(S1008のNo)、CPU101は本フローチャートの処理を終了する。なお、図5においては、表示部107に表示する表示画面として、S1003におけるPCの選択とデバイス情報の更新とのいずれも選択可能な画面となっており、S1003とS1008の処理が同時に行われている。
S1004において、判断部としてのCPU101は、選択したホストPC2(ここでは、図5のPC-B)にスキャナ1の動作を制御するドライバ(制御プログラム)がインストールされているか(予め存在するか)どうかの判断を行う。このドライバ有無の判断処理に関係する動作は、後ほど詳しく説明する。
CPU101が、ホストPC2内にドライバが既にインストールされていると判断した場合(S1004のYes)、CPU101は、図6のような警告画面を表示して(S1005)、S1003の処理に戻る。即ち、CPU101は、送信部としてのフォルダ共有サービス14によるダウンローダ15及び識別情報ファイル16の送信を行わない。
一方、S1004において、CPU101が、ホストPC2内にドライバがインストールされていないと判断した場合(S1004のNo)、CPU101は、S1006に処理を進める。
なお、S1002の処理とS1004の処理を平行して行うことで、S1003前に表示部107に表示されるリストの中でドライバがインストール済であるデバイスを非表示にすることもできる。また、非表示にしなくても、リスト内で表示を変えることで、使用者がどのデバイスにインストールを行えばよいか認識しやすくすることもできる。例えばリストにおいてインストール済みであるデバイスにはインストール済みであることを示す表示を行えばよい。
S1006において、使用者は、例えば図7のように、表示部107のタッチパネル等から送信先として指定するフォルダパス、ユーザ名、パスワードを入力し、CPUメモリに記憶させる。即ち、使用者は、指定部としての表示部107のタッチパネルを操作して、ダウンローダ15などを格納するPCのHDDなどの格納部を指定可能である。CPU101は、S1003にて指定されたPCのデバイス名とフォルダパス等の情報をフォルダ共有サービス14へ渡し、フォルダ共有サービス14は、指定されたパス情報をもとにPC内の共有フォルダを検索する。フォルダ共有サービス14が指定された共有フォルダを見つけ、通信が可能になった場合、CPU101は、S1007の処理を開始する。
S1007において、フォルダ共有サービス14は、指定されたフォルダにダウンローダ15と識別情報ファイル16の送信を行う。即ち、CPU101は、ホストPC2内にドライバがインストールされていないと判断した場合に、フォルダ共有サービス14によりダウンローダ15及び識別情報ファイル16をホストPC2に送信させる。送信されたダウンローダ15及び識別情報ファイル16は、ホストPC2の格納部としてのHDD202に格納される。S1007の処理の後、CPU101は本フローチャートの処理を終了させる。
[ドライバ有無の確認]
次に、上述の図4のS1004におけるドライバ有無の判断処理について、図8を用いて説明する。即ち、スキャナ1のCPU101がホストPC2内にドライバ(制御プログラム)がインストール済かどうかを判断する方法を説明する。
次に、上述の図4のS1004におけるドライバ有無の判断処理について、図8を用いて説明する。即ち、スキャナ1のCPU101がホストPC2内にドライバ(制御プログラム)がインストール済かどうかを判断する方法を説明する。
図8は、ホストPC2内にスキャナドライバ51とキャプチャーアプリケーション52がインストールされている場合の処理についての一例を示すフローチャートである。まず、使用者がホストPC2にログインしたとき、ホストPC2のOSはキャプチャーアプリケーション52を実行する。なお、このとき、図8におけるキャプチャーアプリケーション(キャプチャーアプリ)52はログイン時に自動で実行されるとしているが、使用者が手動で起動する方法に設定を変更することが可能であってもよい。キャプチャーアプリケーション52が実行されたら、ホストPC2のCPU201は図8のフローチャートの処理を開始する。
S1011において、キャプチャーアプリケーション52は、スキャナ1を制御するためのスキャナドライバ51をロードする。このとき、複数のスキャナドライバがPC内にインストールされていた場合、ホストPC2のOSは接続されているスキャナのリストを認識し、キャプチャーアプリケーション52がスキャナの情報をOSに問い合わせ、動作可能なドライバを自動でロードする。なお、キャプチャーアプリケーション52内に、使用者が任意のドライバを選択することでドライバをロードできるようなUIを用意してもよい。スキャナドライバ51をロードすると、CPU201はS1012へ処理を進める。
S1012において、キャプチャーアプリケーション52は、外部インターフェース205を通して、ホストPC2と同じネットワーク内で起動しているスキャナに対し、HTTP等のプロトコルを用いて一定時間ごとにコマンドを発行する。このとき、コマンド内にはホストPC2のデバイス名とIPアドレスが含まれることとする。
この、キャプチャーアプリケーション52から一定間隔で発行されたコマンドをもとに、スキャナ1内のCPU101は、ドライバがインストール済みのPC名とIPアドレスをリスト形式で記憶する。このリストは、CPU101がコマンドを受信する毎に変更され、また、使用者がスキャナ1の電源を落としたときに、リセットされるものとする。
使用者がホストPC2の電源を落としたり、ドライバがアンインストールされたりすることにより、キャプチャーアプリケーション52がドライバのロードを終えた場合(S1013でYes)、CPU201は本フローチャートの処理を終了する。一方、キャプチャーアプリケーション52がドライバをロードしている間(S1013でNo)、CPU201は、S1012の処理を繰り返すことになる。
[スキャナが初期状態かどうかの判断]
次に、上述の図4のS1001におけるスキャナ1が初期状態かどうかの判断処理について、図9を用いて説明する。本実施形態におけるスキャナ1の状態は、スキャナ1内部に初期状態かどうかを示すフラグである初期設定ファイル19(図3)が存在する場合を初期状態として判断する。この初期設定ファイル19は、スキャナ1が初期化処理を行った際にスキャナ1内部に自動的に生成されるファイルである。以下、使用者が電源をONにした直後、スキャナが初期状態であるかどうかを判断する方法を、図9を用いて説明する。
次に、上述の図4のS1001におけるスキャナ1が初期状態かどうかの判断処理について、図9を用いて説明する。本実施形態におけるスキャナ1の状態は、スキャナ1内部に初期状態かどうかを示すフラグである初期設定ファイル19(図3)が存在する場合を初期状態として判断する。この初期設定ファイル19は、スキャナ1が初期化処理を行った際にスキャナ1内部に自動的に生成されるファイルである。以下、使用者が電源をONにした直後、スキャナが初期状態であるかどうかを判断する方法を、図9を用いて説明する。
まず、使用者がスキャナ1の電源をONにした時、CPU101は図9のフローチャートの処理を開始する。S2001において、CPU101は、スキャナ1においてフラグ用ファイルである初期設定ファイル19が存在するかどうかを判断する。初期設定ファイル19が存在した場合(S2001のYes)、CPU101はS2002へ処理を進める。一方、初期設定ファイル19が存在しなかった場合(S2001のNo)、CPU101は、スキャナ1が初期状態でないと判断し、本フローチャートの処理を終了する。以降スキャナ1は、ホストPC2やタッチパネル等からの読み取り開始指示に応じてスキャナの動作を行う。
S2002において、CPU101は、図4におけるS1002以降の処理を開始する。なお、このとき、図4に示したようなダウンローダの配布作業だけでなく、スキャナ本体の言語設定などを含む初期設定を行ってもよい。図4の処理が終了し、スキャナ1がホストPC2などからの読み取り開始指示を待つ状態となったとき、CPU101はS2003へ処理を進める。S2003において、CPU101は、スキャナ1内の初期設定ファイル19を削除し、本フローチャートの処理を終了する。
[ダウンローダと識別情報ファイルの配布の際の具体例]
次に、スキャナ1がダウンローダ15と識別情報ファイル16をホストPC2へ配布する際の動作の具体例を、図10のシーケンス図を用いて説明する。なお、図10は、複数台のホストPC(PC-A、PC-B)がネットワーク4内に存在する場合を想定している。PC-Aには、予めスキャナ1を制御するためのスキャナドライバ51やキャプチャーアプリケーション52がインストールされており、PC-Bには、スキャナ1を制御するためのアプリケーション(制御プログラム)がインストールされていないものとする。
次に、スキャナ1がダウンローダ15と識別情報ファイル16をホストPC2へ配布する際の動作の具体例を、図10のシーケンス図を用いて説明する。なお、図10は、複数台のホストPC(PC-A、PC-B)がネットワーク4内に存在する場合を想定している。PC-Aには、予めスキャナ1を制御するためのスキャナドライバ51やキャプチャーアプリケーション52がインストールされており、PC-Bには、スキャナ1を制御するためのアプリケーション(制御プログラム)がインストールされていないものとする。
S101:使用者がスキャナ1の電源を入れる。
S102:使用者がPC-Aの電源を入れる。
S103:使用者がPC-Bの電源を入れる。
S104:CPU101がスキャナ1は初期状態かどうかの判断を行う(図9参照)。
S105:PC-AのCPU201がキャプチャーアプリケーション52を起動する。
S106:キャプチャーアプリケーション52は、OS21がスキャナデバイスとして認識した情報をもとに、予めインストールされていた動作可能なスキャナ1のスキャナドライバ51をロードする。
S107:スキャナドライバ51をロードしたキャプチャーアプリケーション52は、一定間隔でネットワーク4内にHTTP等のプロトコルを用いてコマンドを送信する(S105~S107の動作は、図8参照)。
S108~S111:スキャナ1が同じネットワーク4内で動作しているホストPCの情報を取得する。
S112:スキャナ1が取得したホストPC等の情報を図5のようなリストとして表示部107に表示させる。
S113:使用者がスキャナ1に表示されたPCリストから、ダウンロード先のホストPCを選択する。このとき、使用者がPC-Bを選択したこととする。
S114:スキャナ1がS107で送信されたコマンドの情報をもとに、S113で使用者が選択したPCにドライバがインストールされているかどうかを判断する。
S115:スキャナ1が図7のような共有フォルダを指定するための情報入力画面を表示する。
S116:使用者が、情報入力画面にて共有フォルダのパス、ユーザ名、パスワードの指定を行う。
S117~S120:スキャナ1がPC-Bへダウンローダ(ダウンロードプログラム)15と識別情報ファイル(識別情報)16を送信する。即ち、S114にてCPU101がPC-Bにドライバが存在しないと判断し、フォルダ共有サービス14がダウンローダ15及び識別情報ファイル16をPC-Bに送信する。なお、この処理はSMB等のプロトコルを用いて行うものとする。
S121:スキャナ1が、ダウンローダ15の配布が終了したことを表示部107に表示させる。これにより、使用者がPC-Bの共有フォルダにダウンローダ15と識別情報ファイル16が追加されたことを認識できる。ダウンローダ15を配布する処理はS121で完了となる。
S102:使用者がPC-Aの電源を入れる。
S103:使用者がPC-Bの電源を入れる。
S104:CPU101がスキャナ1は初期状態かどうかの判断を行う(図9参照)。
S105:PC-AのCPU201がキャプチャーアプリケーション52を起動する。
S106:キャプチャーアプリケーション52は、OS21がスキャナデバイスとして認識した情報をもとに、予めインストールされていた動作可能なスキャナ1のスキャナドライバ51をロードする。
S107:スキャナドライバ51をロードしたキャプチャーアプリケーション52は、一定間隔でネットワーク4内にHTTP等のプロトコルを用いてコマンドを送信する(S105~S107の動作は、図8参照)。
S108~S111:スキャナ1が同じネットワーク4内で動作しているホストPCの情報を取得する。
S112:スキャナ1が取得したホストPC等の情報を図5のようなリストとして表示部107に表示させる。
S113:使用者がスキャナ1に表示されたPCリストから、ダウンロード先のホストPCを選択する。このとき、使用者がPC-Bを選択したこととする。
S114:スキャナ1がS107で送信されたコマンドの情報をもとに、S113で使用者が選択したPCにドライバがインストールされているかどうかを判断する。
S115:スキャナ1が図7のような共有フォルダを指定するための情報入力画面を表示する。
S116:使用者が、情報入力画面にて共有フォルダのパス、ユーザ名、パスワードの指定を行う。
S117~S120:スキャナ1がPC-Bへダウンローダ(ダウンロードプログラム)15と識別情報ファイル(識別情報)16を送信する。即ち、S114にてCPU101がPC-Bにドライバが存在しないと判断し、フォルダ共有サービス14がダウンローダ15及び識別情報ファイル16をPC-Bに送信する。なお、この処理はSMB等のプロトコルを用いて行うものとする。
S121:スキャナ1が、ダウンローダ15の配布が終了したことを表示部107に表示させる。これにより、使用者がPC-Bの共有フォルダにダウンローダ15と識別情報ファイル16が追加されたことを認識できる。ダウンローダ15を配布する処理はS121で完了となる。
[ダウンローダの動作]
次に、スキャナ1からホストPC2に配布されたダウンローダ15と識別情報ファイル16の動作について説明する。ホストPC2に格納されたダウンローダ15は、ホストPC2上で実行された場合に、スキャナドライバ、キャプチャーアプリケーション、マニュアル等の制御プログラムのインストーラを、ネットワーク4を経由してアプリケーションサーバ5等の外部サーバからホストPC2にダウンロードさせる機能を有する(図3参照)。
次に、スキャナ1からホストPC2に配布されたダウンローダ15と識別情報ファイル16の動作について説明する。ホストPC2に格納されたダウンローダ15は、ホストPC2上で実行された場合に、スキャナドライバ、キャプチャーアプリケーション、マニュアル等の制御プログラムのインストーラを、ネットワーク4を経由してアプリケーションサーバ5等の外部サーバからホストPC2にダウンロードさせる機能を有する(図3参照)。
このとき、アプリケーションサーバ5は、スキャナ1から配布された識別情報ファイル16内に記された製品名やシリアルナンバーといったスキャナ情報をもとに、スキャナ1の制御に必要なプログラムを提供することができる。
また、ダウンロードの際にライセンスキーなどの情報を必要とする場合でも、識別情報ファイル16に格納されたデータを用いて自動でダウンロードを行うため、使用者が情報を入力する手間を省くこともできる。識別情報ファイル16の一例を図11に示す。図11においては、Name=XXXとして製品名が、Serial=AAA000000としてシリアルナンバーが、Version=1.0.0.0として、スキャナ1内のファームウェアのバージョン情報が記載されているが、これに限られない。
以下、ホストPC2へ配布されたダウンローダ15が、インターネット3上のアプリケーションサーバ5との通信を行うことで、ホストPC2へスキャナ1の制御を行うためのソフトウェア(制御プログラム)をダウンロードし、インストール処理を行う際の動作手順を、図12を用いて説明する。
図12は、ダウンローダ15の動作手順の一例を示すフローチャートである。ホストPC2のCPU201は、前述した配布処理でスキャナ1からホストPC2に送信されたダウンローダ15が使用者によって起動された場合、図12のフローチャートの処理を開始する。なお、本実施形態におけるダウンローダ15は、インストーラとしての動作も行うため、ダウンローダ15の起動にはOS21の管理者権限が必要であり、管理ユーザでない使用者は、管理者ユーザ名とパスワードを入力する必要がある。
まず、S3001において、ダウンローダ15は、図13のように使用許諾契約書(ライセンス)を表示し、使用者にドライバなどのソフトウェアをPCにインストールするかどうか確認を行う。使用者が同意した場合(S3001のYes)、ダウンローダ15はS3002へ進み、同意しなかった場合(S3001のNo)、ダウンローダ15は終了する。
次にS3002において、ダウンローダ15は、識別情報ファイル16の情報をもとにインターネット上のアプリケーションサーバ5を指定するURLを作成する。例として、図11の識別情報ファイル16から製品名を取り出し、作成したURLを図14に示す。図14は、ホストPC2のディスプレイに表示されるダウンローダ15を実行するかを確認する確認画面である。
この図14に示す確認画面において、ダウンロードの開始が選択されると、次に、S3003において、ダウンローダ15は、作成したURLをもとに、HTTPプロトコル等のプロトコルを利用して、アプリケーションサーバ5からスキャナドライバ51、キャプチャーアプリケーション52、ユーザーマニュアル53等の制御プログラムのダウンロードを開始する。このとき、ダウンローダ15は、作成したURL内にスキャナ1の製品名とアプリケーションの種類の情報を埋め込み、アプリケーションサーバ5は、指定された各アプリケーションのファイルをダウンローダ15の存在するPCへ送信する。ダウンロード処理が正常に終了した場合、ダウンローダ15はS3004に処理を進める。
なお、本実施形態では、ダウンローダ15はアプリケーションサーバ5等の外部サーバと通信を行うことで制御プログラムをダウンロードしているが、ホストPC2が社内ネットワーク内などのイントラネット内に存在した場合、インターネット3との通信が制限され、アプリケーションサーバ5から制御プログラムをダウンロードできない。このため、識別情報ファイル16をもとに作成したアプリケーションサーバ5のURLをS3003までのどこかのダウンローダ15のダイアログに表示するような構成にして、使用者が制御プログラムを手に入れられるようにしてもよい。一例を図14に示している。
S3004では、ダウンローダ15が、ダウンロードが完了したソフトウェア(制御プログラム)のインストールを開始する。このとき、S3003にてダウンローダ15は、各ソフトウェアのインストーラをどのフォルダへダウンロードを行ったかを記憶しており、S3004にて、記憶したフォルダパス内にあるアプリケーションのインストーラを実行することにより、その場所に存在するインストーラを実行することができる。なお、インストーラは使用者が手動で実行しても良い。
インストールが正常に終了した場合(S3005のYes)、ダウンローダ15は本フローチャートの処理を終了する。一方、インストールまでの処理の中で何らかのエラーが発生した場合(S3005のNo)、ダウンローダ15は、S3006に処理を進める。
S3006では、図15のようなエラー画面を表示する。この画面において終了が選択されることなどによってそのままインストール処理を終了する場合(S3006のNo)、ダウンローダ15は本フローチャートの処理を終了する。また、使用者が作業のやり直し(リトライ)を選択した場合(S3006のYes)、ダウンローダ15は、S3002から処理を再開する。
このような本実施形態の場合、使用者の手間をかけずに最新版の制御プログラムを得られる。即ち、予めスキャナに制御プログラムがインストールされており、この制御プログラムをホストPC2にインストールする構成の場合、既に制御プログラムがバージョンアップされていた場合には、再度、最新版の制御プログラムをダウンロードする必要がある。この際、ホストPC2のWebブラウザにURLを入力したり、或いは、検索サイトで検索したりするなどの手間がかかる。
また、この場合に、制御プログラムのダウンロード又はインストール時に、製品の購入者がソフトウェアを利用できるように、ライセンスキーやシリアル番号などの製品の識別情報を入力するなどの手間もかかる。
これに対して本実施形態の場合、制御プログラムをダウンロードさせるためのダウンローダ15及び識別情報ファイル16をスキャナ1に記憶しておき、接続されたホストPC2にダウンローダ15及び識別情報ファイル16を送信するようにしている。即ち、本実施形態では、スキャナ1には制御プログラムではなくダウンローダ15及び識別情報ファイル16が格納されている。このため、使用者は、ホストPC2にてダウンローダ15及び識別情報ファイル16を用いて、アプリケーションサーバ5内にある最新版の制御プログラムをアプリケーションサーバ5からダウンロードできる。したがって、製品購入後に制御プログラムがバージョンアップされていた場合でも、最新版の制御プログラムを手間をかけずに入手できる。
また、本実施形態の場合、スキャナ1には識別情報ファイル16も格納されており、この識別情報ファイル16もダウンローダ15と共にホストPC2に送信するようにしている。このため、使用者が識別情報を別途入力する手間を省くことも可能である。
<第2の実施形態>
第2の実施形態について、図16から図21を用いて説明する。上述の実施形態では、ネットワークを介してスキャナ1とホストPC2を接続していたが、本実施形態では、スキャナ1AとホストPC2AをUSBケーブル7で接続している。本実施形態の場合、外部インターフェース105がUSB接続部となる。また、上述の第1の実施形態では、ダウンローダ15及び識別情報ファイル16は、アクセス工程において、スキャナ1からホストPC2に送信したが、本実施形態では、アクセス工程において、スキャナ1AがホストPC2Aにダウンローダ15及び識別情報ファイル16を認識させるようにしている。即ち、スキャナ1Aのダウンローダ15及び識別情報ファイル16が記憶されたROM103などの記憶装置を、ホストPC2Aに外部記憶領域として認識させるようにしている。その他の構成及び作用は、上述の第1の実施形態と同様であるため、同一の構成には同一の符号を付して説明及び図示を省略又は簡略にし、以下、第1の実施形態と異なる点を中心に説明する。
第2の実施形態について、図16から図21を用いて説明する。上述の実施形態では、ネットワークを介してスキャナ1とホストPC2を接続していたが、本実施形態では、スキャナ1AとホストPC2AをUSBケーブル7で接続している。本実施形態の場合、外部インターフェース105がUSB接続部となる。また、上述の第1の実施形態では、ダウンローダ15及び識別情報ファイル16は、アクセス工程において、スキャナ1からホストPC2に送信したが、本実施形態では、アクセス工程において、スキャナ1AがホストPC2Aにダウンローダ15及び識別情報ファイル16を認識させるようにしている。即ち、スキャナ1Aのダウンローダ15及び識別情報ファイル16が記憶されたROM103などの記憶装置を、ホストPC2Aに外部記憶領域として認識させるようにしている。その他の構成及び作用は、上述の第1の実施形態と同様であるため、同一の構成には同一の符号を付して説明及び図示を省略又は簡略にし、以下、第1の実施形態と異なる点を中心に説明する。
図16に示すように、本実施形態の画像読取システム1000Aでは、スキャナ1Aがネットワーク機能を搭載しているかどうかに関わらず、スキャナ1AとホストPC2AをUSBケーブル7にて接続して利用する構成となっている。ホストPC2Aは、ネットワーク4を介してインターネット3へのアクセスが可能となっている。インターネット3上には、スキャナ1Aを制御するための制御プログラムとしてのドライバ、キャプチャーアプリケーション、ユーザーマニュアル等のアプリケーションが保管されている外部サーバとしてのアプリケーションサーバ5が存在し、これらのアプリケーションのダウンロードが可能となっている。なお、第1の実施形態と第2の実施形態は同時実装が可能であり、統合された構成としても良い。また、ホストPC2Aへ配布されたダウンローダ15の動作は、第1の実施形態と同じである。
[ハードウェア構成]
次に、画像読取システム1000Aを構成するスキャナ1A及びホストPC2Aのハードウェア構成について、図17を用いて説明する。本実施形態の場合、スキャナ1Aには、図2で説明した構成に、ハードウェアとしてインターフェーススイッチ108が追加されている。ホストPC2Aは、図2に示した構成と同様である。
次に、画像読取システム1000Aを構成するスキャナ1A及びホストPC2Aのハードウェア構成について、図17を用いて説明する。本実施形態の場合、スキャナ1Aには、図2で説明した構成に、ハードウェアとしてインターフェーススイッチ108が追加されている。ホストPC2Aは、図2に示した構成と同様である。
[ソフトウェア構成]
次に、画像読取システム1000Aのソフトウェア構成について、図17を参照しつつ図18を用いて説明する。図18に示すように、本実施形態のスキャナ1Aには、図3で説明した構成にソフトウェアとして、マスストレージクラスインターフェース17が追加されており、二つのインターフェースを切り替えるインターフェースセレクタ18も追加されている。被記憶認識部としてのマスストレージクラスインターフェース17は、スキャナ1Aと接続されたホストPC2Aに、スキャナ1Aの記憶部としてのROM103を外部記憶領域として認識させるものである。
次に、画像読取システム1000Aのソフトウェア構成について、図17を参照しつつ図18を用いて説明する。図18に示すように、本実施形態のスキャナ1Aには、図3で説明した構成にソフトウェアとして、マスストレージクラスインターフェース17が追加されており、二つのインターフェースを切り替えるインターフェースセレクタ18も追加されている。被記憶認識部としてのマスストレージクラスインターフェース17は、スキャナ1Aと接続されたホストPC2Aに、スキャナ1Aの記憶部としてのROM103を外部記憶領域として認識させるものである。
また、本実施形態のホストPC2Aには、デバイスドライバ22にマスストレージクラスドライバ222が追加されている。マスストレージクラスドライバ222は、ハードディスクドライブ(HDD)、CD-ROM、DVD-RAM、CD-R、CD-RW、DVD-RW、DVD+RW、DVD-RAM、USBメモリなどのマスストレージを制御するためのソフトウェアである。マスストレージクラスドライバ222は、OS21付属の機能として提供されていることが多い。なお、マスストレージクラスドライバ222がOS21とは別にインストールされる構成であっても良い。
手動切替部としてのインターフェーススイッチ108は、スキャナ1Aの背面などに配置された物理スイッチである。切替部としてのインターフェースセレクタ18は、インターフェーススイッチ108のスイッチの状態によって、被記憶認識部としてのマスストレージクラスインターフェース17を起動するか、被周辺認識部としてのスキャナインターフェース11を起動するかを決定する。
ここで、スキャナインターフェース11は、スキャナ1Aに接続されたホストPC2Aに、スキャナ1AをホストPC2Aに接続された周辺機器として認識させるものである。したがって、インターフェースセレクタ18は、スキャナ1Aを外部記憶領域として認識させるか、周辺機器としてのスキャナとして認識させるかを切り替えるものである。本実施形態では、インターフェーススイッチ108により、ホストPC2Aに認識させる認識部を、被記憶認識部としてのマスストレージクラスインターフェース17と、被周辺認識部としてのスキャナインターフェース11とに手動で切り替え可能となっている。
なお、このインターフェーススイッチ108は、スキャナ1Aの表示制御部12と連携させ、使用者がタッチパネルからインターフェースの切り替えを行うようにソフトウェアで実現してもよいし、電気的に切り替え可能な電子スイッチを用いてハードウェアによって実現されてもよい。
[ダウンローダと識別情報ファイルの配布]
以下、本実施形態における、スキャナ1Aがダウンローダ15及び識別情報ファイル16をホストPC2へ配布(送信)する際の動作手順を、図19のフローチャートを用いて説明する。CPU101は、使用者がスキャナ1Aの電源を入れ、USBケーブル7を介して、ホストPC2Aと接続すると、図19のフローチャートの処理を開始する。また、このとき、ホストPC2Aも電源が入っているものとする。
以下、本実施形態における、スキャナ1Aがダウンローダ15及び識別情報ファイル16をホストPC2へ配布(送信)する際の動作手順を、図19のフローチャートを用いて説明する。CPU101は、使用者がスキャナ1Aの電源を入れ、USBケーブル7を介して、ホストPC2Aと接続すると、図19のフローチャートの処理を開始する。また、このとき、ホストPC2Aも電源が入っているものとする。
まず、S4001において、スキャナ1Aの電源を入れた直後の場合、インターフェースセレクタ18は、スキャナインターフェース11を選択している。このため、CPU101はスキャナインターフェース11を起動する。また、スキャナ1AはホストPC2Aに、スキャナデバイスとして認識されることとなる。
次に、S4002において、CPU101は、スキャナ1Aが初期状態かどうかを判断する。このときの処理は、図9を用いて説明した第1の実施形態における動作と同じである。CPU101が、スキャナ1Aが初期状態であると判断した場合(S4002のYes)、CPU101はS4003に処理を進める。
一方、S4002において、スキャナ1Aが初期状態でないと判断した場合(S4002のNo)、CPU101は、本フローチャートの処理を終了する。以降スキャナ1Aは、ホストPC2Aやタッチパネル等からの読み取り開始指示に応じてスキャナの動作を行う。
次に、S4003において、インターフェースセレクタ18は、マスストレージクラスインターフェース17を選択する。即ち、切替部としてのインターフェースセレクタ18は、スキャナ1Aが初期状態でホストPC2Aに接続された場合には、認識部を自動でマスストレージクラスインターフェース17に切り替える。言い換えれば、スキャナ1Aを外部記憶領域として認識させる。このため、CPU101はマスストレージクラスインターフェース17を起動し、S4004に処理を進める。
なお、S4002にて、初期状態でないと判断されていても、使用者が、上述した何れかの方法でインターフェーススイッチ108をマスストレージクラスインターフェース17へ切り替えた場合、CPU101は、S4004の処理からこのフローを開始することができる。また、予めホストPC2A内にスキャナドライバ51がインストールされていた場合は、OS21の機能により、スキャナ1AとホストPC2Aが接続された時点で、ホストPC2A内にてポップアップなどで表示される。このため、使用者は、ホストPC2AのUIにより、スキャナドライバ51などの制御プログラムのインストールが必要かどうかを判断することが可能である。さらに、使用者がアプリケーションのダウンロードが必要ないと判断した場合は、手動でインターフェーススイッチ108を切り替えてスキャナデバイスとして利用することも可能である。
S4004にて、スキャナ1Aのマスストレージクラスインターフェース17とホストPC2A内の外部インターフェース205を接続することで、スキャナ1Aは、ホストPC2Aに、マスストレージクラスデバイス(外部記憶領域)として認識される。これによりユーザは、ホストPC2Aからマスストレージクラスとして認識されたスキャナ1A内に保存されているダウンローダ15と識別情報ファイル16が操作可能になる。このとき、ホストPC2Aにおいて、スキャナ1Aがマスストレージクラスデバイスとして認識された場合のCDドライブに相当するフォルダの一例を図20に示す。
使用者は、ホストPC2Aからスキャナ1Aの内部にあるダウンローダ15を起動することで、ドライバやキャプチャーアプリ等といったスキャナ1Aの制御プログラムのダウンロード及びインストール処理を開始する。即ち、ホストPC2Aは、外部記憶領域として認識したスキャナ1AのROM103内(記憶部内)のダウンローダ15を実行し、識別情報ファイル16を用いることで、アプリケーションサーバ5から制御プログラムをダウンロードする。本実施形態におけるダウンローダ15の動作は、図12を用いて説明した第1の実施形態の動作と同様である。
[ダウンローダと識別情報ファイルの配布の際の具体例]
次に、スキャナ1Aがダウンローダ15と識別情報ファイル16をホストPC2Aへ配布する際の動作の具体例を、図21のシーケンス図を用いて説明する。ホストPC2Aには、スキャナ1Aを利用するためのスキャナドライバ51並びにキャプチャーアプリケーション52はインストールされていないものとする。また、スキャナ1AとホストPC2AはUSBケーブル7にて接続されているものとする。
次に、スキャナ1Aがダウンローダ15と識別情報ファイル16をホストPC2Aへ配布する際の動作の具体例を、図21のシーケンス図を用いて説明する。ホストPC2Aには、スキャナ1Aを利用するためのスキャナドライバ51並びにキャプチャーアプリケーション52はインストールされていないものとする。また、スキャナ1AとホストPC2AはUSBケーブル7にて接続されているものとする。
S201:使用者がスキャナ1Aの電源を入れる。
S202:使用者がホストPC2Aの電源を入れる。
S203:CPU101がスキャナ1Aは初期状態かどうかの判断を行う(図9参照)。
S204:スキャナ1Aがインターフェース(認識部)をマスストレージクラスインターフェース17に切り替える。
S205:スキャナ1AとUSBケーブル7にて接続されたホストPC2Aがスキャナ1AをUSBデバイス(外部記憶領域)として認識する。
S206:ホストPC2Aにマスストレージクラスデバイス(USBデバイス)として認識されたスキャナ1A内部のダウンローダ15と識別情報ファイル16がホストPC2Aに共有される。
S202:使用者がホストPC2Aの電源を入れる。
S203:CPU101がスキャナ1Aは初期状態かどうかの判断を行う(図9参照)。
S204:スキャナ1Aがインターフェース(認識部)をマスストレージクラスインターフェース17に切り替える。
S205:スキャナ1AとUSBケーブル7にて接続されたホストPC2Aがスキャナ1AをUSBデバイス(外部記憶領域)として認識する。
S206:ホストPC2Aにマスストレージクラスデバイス(USBデバイス)として認識されたスキャナ1A内部のダウンローダ15と識別情報ファイル16がホストPC2Aに共有される。
このような本実施形態の場合、使用者の手間をかけずに最新版の制御プログラムを得られる。即ち、本実施形態の場合、制御プログラムをダウンロードさせるためのダウンローダ15及び識別情報ファイル16をスキャナ1Aに記憶しておき、接続されたホストPC2Aとダウンローダ15及び識別情報ファイル16を共有するようにしている。したがって、製品購入後に制御プログラムがバージョンアップされていた場合でも、最新版の制御プログラムを手間をかけずに入手できる。
また、スキャナ1Aには識別情報ファイル16も格納されており、この識別情報ファイル16もダウンローダ15と共にホストPC2Aに送信するようにしている。このため、使用者が識別情報を別途入力する手間を省くことも可能である。
<その他の実施形態>
上述の第1の実施形態の派生として、スキャナ1内部にSMB等のサーバを予め用意しておくことで、ネットワーク接続時、同じネットワーク内のPCすべてから共有フォルダが閲覧可能になる。これを利用して、第2の実施形態のようなダウンローダ15の受け渡しが可能となる。
上述の第1の実施形態の派生として、スキャナ1内部にSMB等のサーバを予め用意しておくことで、ネットワーク接続時、同じネットワーク内のPCすべてから共有フォルダが閲覧可能になる。これを利用して、第2の実施形態のようなダウンローダ15の受け渡しが可能となる。
また、第1の実施形態では、スキャナ1とホストPC2とをネットワーク4を介して接続していたが、第2の実施形態のようにUSBケーブル7でこれらを接続しても良い。即ち、USBケーブル7を介して、スキャナ1からホストPC2にダウンローダ15及び識別情報ファイル16を送信するようにしても良い。また、第2の実施形態においても、USBケーブル7での接続に変えて、スキャナ1AとホストPC2Aとをネットワーク4を介して接続しても良い。即ち、ネットワークを介してスキャナ1Aに接続されたホストPC2Aとダウンローダ15及び識別情報ファイル16を共有するようにしても良い。
また、上述の各実施形態の場合、識別情報ファイル16を用いてURLを作成し、そこから制御プログラムをダウンロードする構成であるが、共通のURLにアクセスし、ダウンロードの際に識別情報を用いることで、識別情報に基づいた制御プログラムをダウンロードするようにしても良い。
また、共通のURLにアクセスし、共通の制御プログラムをダウンロードし、インストール時やその後で識別情報を入力するようにしても良い。例えば、スキャナに記憶しているダウンロードプログラム(ダウンローダ)を、機種ごとに固有のファイル(URL含む)にしておく。そして、ダウンローダを実行する際には、識別情報を用いずに制御プログラムのインストールまでを行い、インストール時又はその後の動作時などに識別情報を使用するようにしても良い。また、機種に関わらずダウンロードプログラム及び制御プログラムを共通にしておき、インストール処理時に識別情報を用いたり、制御プログラムの実行時に識別情報を参照して、識別情報に応じた制御プログラムの処理を実行可能にしても良い。
上述の実施形態では、PCなどの情報処理装置に接続されて使用される周辺機器がスキャナである場合について説明した。但し、周辺機器は、情報処理装置に接続されて使用されるものであれば良く、例えば、プリンタ、ファクシミリ、複写機、これらの複数の機能を有する複合機などの画像形成装置であっても良い。即ち、画像形成装置を制御するための制御プログラムをダウンロードさせるダウンロードプログラムを画像形成装置内に記憶しておき、情報処理装置に送信、又は、情報処理装置と共有するようにしても良い。
1、1A・・・スキャナ(周辺機器、画像読取装置)/2、2A・・・ホストPC(情報処理装置)/3・・・インターネット/4・・・ネットワーク/5・・・アプリケーションサーバ(外部サーバ)/6・・・ネットワークサーバ/7・・・USBケーブル/11・・・スキャナインターフェース(被周辺記憶部)/12・・・表示制御部/13・・・ネットワークサービス/14・・・フォルダ共有サービス(送信部)/15・・・ダウンローダ(ダウンロードプログラム)/16・・・識別情報ファイル(識別情報)/17・・・マスストレージクラスインターフェース(被記憶認識部)/18・・・インターフェースセレクタ(切替部)/19・・・初期設定ファイル/51・・・スキャナドライバ(制御プログラム)/52・・・キャプチャーアプリケーション(制御プログラム)/53・・・ユーザーマニュアル/101・・・CPU(判断部)/102・・・画像読取部/103・・・ROM(記憶部)/104・・・RAM/105・・・外部インターフェース(ネットワーク接続部、USB接続部)/106・・・外部I/Fコントローラ/107・・・表示部(選択部、指定部)/108・・・インターフェーススイッチ(手動切替部)202・・・HDD(格納部)
Claims (26)
- 情報処理装置に接続されて使用される周辺機器であって、
前記周辺機器と接続される情報処理装置において実行されることにより、前記情報処理装置とネットワーク接続された外部サーバから前記周辺機器の動作を制御するための制御プログラムをダウンロードさせるダウンロードプログラムと、前記周辺機器の識別情報とが記憶された記憶部と、
前記周辺機器と接続された前記情報処理装置に、前記記憶部に記憶された前記ダウンロードプログラム及び前記識別情報を送信する送信部と、を備えた、
ことを特徴とする周辺機器。 - 前記周辺機器を前記情報処理装置とネットワークを介して接続するネットワーク接続部を、更に備えた、
ことを特徴とする、請求項1に記載の周辺機器。 - 前記ネットワーク接続部を介して前記周辺機器が前記ネットワークに接続された際に、前記ネットワーク内の動作可能な情報処理装置の一覧を表示可能な表示部を、更に備えた、
ことを特徴とする、請求項2に記載の周辺機器。 - 前記表示部に表示された前記情報処理装置の一覧から使用者が任意の情報処理装置を選択可能な選択部を、更に備え、
前記送信部は、前記選択部により選択された情報処理装置に前記ダウンロードプログラム及び前記識別情報を送信する、
ことを特徴とする、請求項3に記載の周辺機器。 - 前記選択部により選択された前記情報処理装置に前記制御プログラムが予め存在するか否かを判断する判断部を、更に備え、
前記送信部は、前記判断部により前記制御プログラムが予め存在すると判断した場合には前記ダウンロードプログラム及び前記識別情報を送信せず、前記判断部が前記制御プログラムが存在しないと判断した場合には前記ダウンロードプログラム及び前記識別情報を送信する、
ことを特徴とする、請求項4に記載の周辺機器。 - 前記周辺機器を前記情報処理装置とUSBケーブルを介して接続するUSB接続部を、更に備えた、
ことを特徴とする、請求項1に記載の周辺機器。 - 前記USB接続部と前記USBケーブルを介して接続された前記情報処理装置に前記制御プログラムが予め存在するか否かを判断する判断部を、更に備え、
前記送信部は、前記判断部が前記制御プログラムが予め存在すると判断した場合には前記ダウンロードプログラム及び前記識別情報を送信せず、前記判断部が前記制御プログラムが存在しないと判断した場合には前記ダウンロードプログラム及び前記識別情報を送信する、
ことを特徴とする、請求項6に記載の周辺機器。 - 情報処理装置に接続されて使用される周辺機器であって、
前記周辺機器と接続される情報処理装置において実行されることにより、前記情報処理装置とネットワーク接続された外部サーバから前記周辺機器の動作を制御するための制御プログラムをダウンロードさせるダウンロードプログラムと、前記周辺機器の識別情報とが記憶された記憶部と、
前記周辺機器と接続された前記情報処理装置に、前記記憶部を外部記憶領域として認識させる被記憶認識部と、を備えた、
ことを特徴とする周辺機器。 - 前記周辺機器に接続された前記情報処理装置に、前記周辺機器を接続された周辺機器として認識させる被周辺認識部と、
前記情報処理装置に認識させる認識部を、前記被記憶認識部と前記被周辺認識部とに切り替え可能な切替部と、を更に備えた、
ことを特徴とする、請求項8に記載の周辺機器。 - 前記切替部は、前記周辺機器が初期状態で前記情報処理装置に接続された場合には、前記認識部を自動で前記被記憶認識部に切り替える、
ことを特徴とする、請求項9に記載の周辺機器。 - 前記情報処理装置に認識させる前記認識部を、前記被記憶認識部と前記被周辺認識部とに手動で切り替え可能な手動切替部を、更に備えた、
ことを特徴とする、請求項9又は10に記載の周辺機器。 - 前記周辺機器を前記情報処理装置とネットワークを介して接続するネットワーク接続部を、更に備えた、
ことを特徴とする、請求項8から11の何れか一項に記載の周辺機器。 - 前記周辺機器を前記情報処理装置とUSBケーブルを介して接続するUSB接続部を、更に備えた、
ことを特徴とする、請求項8から11の何れか一項に記載の周辺機器。 - 前記周辺機器は、原稿の画像を読み取る画像読取装置である、
ことを特徴とする、請求項1から13の何れか一項に記載の周辺機器。 - 情報処理装置と、情報処理装置に接続されて使用される周辺機器と、を備えた周辺機器動作システムであって、
前記周辺機器は、前記情報処理装置において実行されることにより、前記情報処理装置とネットワーク接続された外部サーバから前記周辺機器の動作を制御するための制御プログラムをダウンロードさせるダウンロードプログラムと、前記周辺機器の識別情報とが記憶された記憶部を有し、
前記情報処理装置は、前記ダウンロードプログラムを実行し、前記外部サーバから前記制御プログラムをダウンロードする、
ことを特徴とする周辺機器動作システム。 - 前記情報処理装置は、前記ダウンロードプログラムを実行する際に、前記識別情報を用いることで、前記外部サーバから前記制御プログラムをダウンロードする、
ことを特徴とする、請求項15に記載の周辺機器動作システム。 - 前記周辺機器と、前記情報処理装置とは、ネットワークを介して接続されている、
ことを特徴とする、請求項15又は16に記載の周辺機器動作システム。 - 前記周辺機器と、前記情報処理装置とは、USBケーブルを介して接続されている、
ことを特徴とする、請求項15又は16に記載の周辺機器動作システム。 - 前記情報処理装置は、前記ダウンロードプログラムを実行するかを確認する確認画面を表示可能である、
ことを特徴とする、請求項15から18の何れか一項に記載の周辺機器動作システム。 - 前記周辺機器は、前記情報処理装置に、前記記憶部に記憶された前記ダウンロードプログラム及び前記識別情報を送信する送信部を、更に有し、
前記情報処理装置は、前記送信部から送信された前記ダウンロードプログラム及び前記識別情報を格納可能な格納部を有する、
ことを特徴とする、請求項15から19の何れか一項に記載の周辺機器動作システム。 - 前記周辺機器は、前記情報処理装置の前記格納部を指定可能な指定部を有する、
ことを特徴とする、請求項20に記載の周辺機器動作システム。 - 前記周辺機器は、前記情報処理装置に、前記記憶部を外部記憶領域として認識させる被記憶認識部を、更に有し、
前記情報処理装置は、前記外部記憶領域として認識した前記記憶部内の前記ダウンロードプログラムを実行し、前記識別情報を用いることで、前記外部サーバから前記制御プログラムをダウンロードする、
ことを特徴とする、請求項15から18の何れか一項に記載の周辺機器動作システム。 - 周辺機器に接続される情報処理装置に、前記周辺機器の動作を制御するための制御プログラムをダウンロードさせる制御プログラムのダウンロード方法であって、
前記周辺機器に記憶された、前記情報処理装置とネットワーク接続された外部サーバから前記制御プログラムをダウンロードさせるダウンロードプログラムと、前記周辺機器の識別情報とに、前記情報処理装置がアクセスするアクセス工程と、
前記アクセス工程でアクセスした前記ダウンロードプログラムを実行し、前記外部サーバから前記制御プログラムをダウンロードするダウンロード工程と、を有する、
ことを特徴とする制御プログラムのダウンロード方法。 - 前記ダウンロード工程において、前記アクセス工程でアクセスした前記ダウンロードプログラムを実行する際に、前記識別情報を用いることで、前記外部サーバから前記制御プログラムをダウンロードする、
ことを特徴とする、請求項23に記載の制御プログラムのダウンロード方法。 - 前記アクセス工程は、前記周辺機器から前記情報処理装置に、前記ダウンロードプログラム及び前記識別情報が送信される工程である、
ことを特徴とする、請求項23又は24に記載の制御プログラムのダウンロード方法。 - 前記アクセス工程は、前記周辺機器が前記情報処理装置に、前記ダウンロードプログラム及び前記識別情報を認識させる工程である、
ことを特徴とする、請求項23又は24に記載の制御プログラムのダウンロード方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020135405A JP2022031026A (ja) | 2020-08-07 | 2020-08-07 | 周辺機器、周辺機器動作システム及び制御プログラムのダウンロード方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020135405A JP2022031026A (ja) | 2020-08-07 | 2020-08-07 | 周辺機器、周辺機器動作システム及び制御プログラムのダウンロード方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2022031026A true JP2022031026A (ja) | 2022-02-18 |
Family
ID=80324497
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020135405A Pending JP2022031026A (ja) | 2020-08-07 | 2020-08-07 | 周辺機器、周辺機器動作システム及び制御プログラムのダウンロード方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2022031026A (ja) |
-
2020
- 2020-08-07 JP JP2020135405A patent/JP2022031026A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10630857B2 (en) | Electronic apparatus and method to update firmware of the electronic apparatus when adding a web application to the electronic apparatus | |
JP3984895B2 (ja) | 情報処理装置およびサーバ装置およびドライバ更新方法およびコンピュータが読み取り可能な記憶媒体およびプログラム | |
US8243306B2 (en) | Communication program, method of installing image processing apparatus control program and image processing apparatus | |
JP5665437B2 (ja) | ネットワーク機器管理システム、ネットワーク機器管理装置、クライアント装置およびその方法 | |
KR101782998B1 (ko) | 화상 형성 장치의 어플리케이션을 개발하는 방법 및 장치 | |
JP5007510B2 (ja) | 文書処理装置および文書処理システム | |
US20100107152A1 (en) | Image forming apparatus, and web application installing method | |
US20110137979A1 (en) | Server connected to image forming apparatus and client, client, and method of remotely installing driver of image forming apparatus | |
US20110261396A1 (en) | Control device for managing drivers | |
KR20110072879A (ko) | 화상형성장치, 호스트장치 및 호스트장치의 제어방법 | |
JP2009301127A (ja) | プリンタドライバプログラム及び印刷指示装置 | |
JP4981936B2 (ja) | インストーラ及びプリンタドライバのインストール方法 | |
US20210112143A1 (en) | Information processing system, service providing device, and information processing method | |
JP5142519B2 (ja) | データ処理装置、データ処理システム、データ処理方法、及びプログラム | |
US20170111531A1 (en) | Scan processing system, information processing system, and cooperative processing method | |
JP4641530B2 (ja) | 情報処理装置、ドライバ処理方法、プログラム | |
JP6790797B2 (ja) | 画像処理システム、画像形成装置、アプリケーション実行方法、およびコンピュータプログラム | |
CN103853578A (zh) | 信息处理系统及信息处理方法 | |
US8422040B2 (en) | Image forming system and method, management apparatus, and recording medium | |
JP6801265B2 (ja) | サービス提供システム、情報処理装置、プログラム、情報処理システム及び連携処理方法 | |
JP2019175100A (ja) | アプリケーションプログラムのセットアップ方法およびダウンロードサーバ | |
JP6060573B2 (ja) | 出力システム、出力制御装置、出力装置及びプログラム | |
JP2008171096A (ja) | 更新機能を有する情報処理装置 | |
JP2013025460A (ja) | インストールシステム、インストールプログラム、インストールプログラムを記録した記録媒体、及びプログラムのインストール方法 | |
JP2022031026A (ja) | 周辺機器、周辺機器動作システム及び制御プログラムのダウンロード方法 |