説明

情報処理装置、情報処理方法、及びプログラム

【課題】 情報処理装置搭載のOSが標準双方向通信方式しか動作しない印刷システム構造である場合、これまで従来双方向通信方式で実現していた、装置側メモリ容量確認、キャリブレーション、装置情報対応などの機能を使用する事ができない。
【解決手段】 基本プリンタドライバがインストーラを起動し、画像形成装置の情報を渡すことにより、プリンタアダプタモジュールを自動的にインストール、起動する事で、自動的に第二の拡張プリンタドライバを準備し、独自の双方向通信を実現する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は従来の独自の双方向通信で実現していた従来機能の利用を可能にする情報処理装置、情報処理方法、及びプログラムに関するものである。
【背景技術】
【0002】
情報処理装置から画像形成装置等の周辺機器を利用するには、一般的にその周辺機器に対応した特定のデバイスドライバ(画像形成装置であればプリンタドライバ)を、情報処理装置上で動作する処理システム(以降OS)に組み込む必要がある。画像形成装置を利用する場合、前記プリンタドライバをアプリケーションから起動させ、印刷に必要な設定を行い、画像形成装置を駆動し、アプリケーションから取得した画像データを画像形成装置に転送する事で紙に印刷する事が可能になる。
前記画像形成装置とプリンタドライバとの通信にプリンタドライバからの印刷データを送るだけでなく、装置側からの情報を使用した、印刷通信プロトコルが広く利用されている。このプロトコルにより、メモリ搭載量の少ない画像形成装置においても、メモリの状態を情報として絶えずプリンタドライバが確認することにより安定した印刷実行、情報処理装置側で確認出来る豊富な装置の状態情報、ユーザへのメッセージ表示などを実現しているシステムが広く製品化され、利用されている。
また、先行技術文献1のように、プリンタドライバでの操作ではなく、画像形成装置に直接またはネットワークで関連づけされ接続されている装置がホストするプリンタアダプタにアクセスする事で、どのOSにおいても同等の画像形成装置およびプリンタドライバ機能をOSに合わせた形で、インストール、環境構築を実現する発案がなされている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2005−309617号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、図15(A)に示すように、標準プリントプロトコルしか動作しない基本プリンタドライバを含むプリントシステムが考えられる。そのようなシステムでは、これまで独自通信プロトコルで実現していた、メモリ確認、キャリブレーション、画像形成装置情報対応などの機能を実現する事ができない。
また、先行技術文献1に示されたプリンタ変換システムは、双方向通信対策用にプリンタアダプタ装置を画像形成装置に接続するなど事前の設定を行わなければならない。
上記の課題を解決するためには、あらかじめプリンタアダプタ装置等の設定が不要で、ユーザが画像形成装置に対し、プリンタドライバをインストールする従来の作業を行うだけで、従来と同等の双方向通信を用いた印刷機能を簡単に使えるシステムを自動で構築する必要がある。更に、ローカルネットワークにて既に活用されているプリンタアダプタ装置が存在している場合に対しても、自動的に検知し、利用できる環境の選択肢としてユーザに伝え、更に自動で利用できるシステムを実現する必要がある。
【課題を解決するための手段】
【0005】
上記目的を達成する本発明の情報処理装置は、標準双方向通信が実現可能かどうか判別する判別手段と、
前記判別手段により標準双方向通信が実現可能でないと判別された場合、基本プリンタドライバから対象画像形成装置の情報を取得する取得手段と、
前記取得手段により取得された対象画像形成装置の情報に基づき双方向通信を実現させるプリンタアダプタをインストールし、起動する起動手段と、
前記起動手段により起動されたプリンタアダプタに対応した拡張プリンタドライバが動作する環境を作成する作成手段とを有し、
前記拡張プリンタドライバはアプリケーションからの印刷データを前記プリンタアダプタに送信し、
前記プリンタアダプタは、独自双方向通信を行いながら画像形成装置に印刷データを送信することを特徴とする
【発明の効果】
【0006】
本発明によれば、標準プリントプロトコルしか動作しないプリントシステムにおいて、これまで独自通信プロトコルで実現していた、メモリ確認、キャリブレーション、画像形成装置情報対応などの機能を実現できる。
【図面の簡単な説明】
【0007】
【図1】実施例1のシステム構成図および情報処理装置ならびに画像形成装置内部の装置構成を示すブロック図
【図2】従来の双方向通信印刷システムのプリンタドライバの印刷の一例を示すフローチャート
【図3】従来の双方向通信印刷システムの画像形成装置の印刷の一例を示すフローチャート
【図4】本実施例における双方向通信環境自動インストール処理の一例を示すフローチャート
【図5】本実施例におけるプリンタアダプタの双方向通信処理を示すフローチャート
【図6】本実施例におけるプリンタアダプタの環境設定と印刷処理を示すフローチャート
【図7】本実施例の双方向通信印刷システムの環境構築通知のユーザインターフェース例を表す図
【図8】実施例2のシステム構成図および情報処理装置ならびに画像形成装置内部の装置構成を示すブロック図
【図9】本実施例における双方向通信環境自動インストール処理の一例を示すフローチャート
【図10】本実施例におけるプリンタアダプタの問い合わせ対応を示すフローチャート
【図11】本実施例における画像形成装置のプリンタアダプタ利用履歴記録処理を示すフローチャート
【図12】本実施例における画像形成装置のプリンタアダプタ利用問い合わせ処理を示すフローチャート
【図13】使用するプリンタアダプタを検索するユーザインターフェース例を表す図
【図14】元の基本プリンタドライバを削除するか選択をするユーザインターフェース例を表す図
【図15】前提、及び設定後のシステム構成を示す図
【発明を実施するための形態】
【0008】
以下、図面を参照して本発明の実施の形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る発明を限定するものでなく、また実施形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
【実施例1】
【0009】
まず、本発明に係る第1の実施形態について説明する。
【0010】
図1(a)は、本発明の実施形態に係るネットワークシステムの概略構成を示すブロック図である。このネットワークシステムは、情報処理装置(101)と、この情報処理装置(101)より印刷データを受信して印刷を行なう複数の画像形成装置(102a,102b,…)等を備える。これらは、Ethernet(登録商標)で構成されるローカルネットワーク(104)を介して接続されている。
【0011】
図1(b)は、図1(a)の情報処理装置(101)と画像形成装置(102)の装置構成を示すブロック図である。情報処理装置(101)において、CPU(111)は、RAM(112)に記憶されているプログラムに従って、システムバス(122)に接続される各装置を総括的に制御している。このRAM(112)は、CPU(111)の主メモリ、ワークエリア等としても機能している。ROM(113)は、各種プログラム及びデータを格納している。キーボードI/F(115)は、キーボード(119)や不図示のポインティング装置(タッチパネル等)からのキー入力を制御する。ディスプレイI/F(116)は、ディスプレイ(120)への表示を制御している。外部メモリI/F(121)は、例えばフラッシュメモリ、Solid State Disk(SSD)等の外部メモリ(121)とのアクセスを制御する。外部メモリ(121)は、オペレーティングシステムプログラム(以下、OS)(122)をはじめ各種アプリケーション(123)、印刷処理関連プログラム(124)を記憶する。さらに、外部メモリ(121)は、不図示のユーザファイル、編集ファイル等を記憶する情報処理装置が読み取り可能な記憶媒体として機能する。なお、ここではOS(122)としてMicrosoft Windowsを使用するものとする。印刷処理関連プログラム(124)は、本実施形態に係る、インストーラ(125)、基本プリンタドライバ(126)、拡張プリンタドライバ(127)、従来プリンタドライバ(128)、プリンタアダプタ(129)を含んでいる。基本プリンタドライバ(126)は、対象となる画像形成装置(102)に対応してインストールが可能なドライバソフトウェアであるが、本実施例で課題となっている標準以外の双方向通信方式には対応していない。もし基本プリンタドライバ(126)が標準の双方向通信を行うときに双方向通信が出来ないエラーになった場合、後述する動作を行う機能が内蔵されている。拡張プリンタドライバ(127)については、標準以外である、従来の系の双方向通信方式には対応しているが、対象となる画像形成装置は、後に説明するプリンタアダプタ(129)に対応したものになる。従来プリンタドライバ(128)については、従来の双方向通信方式には対応している。プリンタアダプタ(129)は、本実施形態特有のソフトウェアにて物理的な画像形成装置のような振る舞いをおこなう実際の装置のエミュレーターソフトウェアであり、実際の印刷実行を、他の実際の画像形成装置(102)に行わせることが可能である。ネットワーク及びUSB I/F(118)は、ネットワーク(104)または、USB等のローカルバスを介して画像形成装置(102)に接続され、画像形成装置(102)との間で通信制御処理を行なう。
【0012】
次に画像形成装置(102)の構成について説明する。CPU(132)は、画像形成装置(102)の全体の動作を制御している。RAM(139)は、CPU(132)の主メモリ、ワークエリア等として機能するとともに、出力情報展開領域、環境データ格納領域としても用いられる。またこのRAM(139)は、NVRAM(Non−volatile RAM:不揮発性RAM)領域も備えており、図示しない増設ポートに接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。ROM(133)は、各種フォントを記憶するフォントROM(133a)、CPU(132)により実行される制御プログラム等を記憶するプログラムROM(133b)、及び各種データを記憶するデータROM(133c)を備えている。ネットワークI/F(138)は、情報処理装置(101)との間でデータの送受信を行なう。印刷部I/F(136)は、プリンタエンジンである印刷部(137)とのインターフェースを制御している。外部メモリ(134)は、外部メモリI/F(140)によりアクセスが制御されており、オプションとして接続されるハードディスク(HD)、Solid State Disk(SSD)等を含んでいる。外部メモリ(134)は、フォントデータ、エミュレーションプログラム、フォームデータ等を記憶する。さらに、本実施形態に係るログファイル(143)を記憶することも可能である。なお、ハードディスク等の外部メモリ(134)が接続されていない場合には、ROM(133)のデータROM(133c)に、情報処理装置(101)で利用される情報等を記憶することになる。なお、この外部メモリ(134)は1個に限らず複数備えるものであってもよい。例えば、内蔵フォントに加えてオプションフォントカード、言語系の異なるプリンタ制御言語を解釈するプログラム等を格納した外部メモリを複数接続できるように構成されていてもよい。操作部(142)には、ユーザによる操作を受け付ける操作パネルが設けられ、その操作パネルには操作のためのスイッチ及びLED表示器等が配されている(不図示)。また、不図示のNVRAMを有し、操作パネルからのプリンタモード設定情報を記憶するようにしてもよい。CPU(132)は、ROM(133)のプログラムROM(133b)に記憶された制御プログラム等に基づき、印刷部I/F(136)を介して印刷部(137)に出力情報としての画像信号を出力する。また、CPU(132)はネットワークまたはUSB I/F(138)を介して情報処理装置(101)との通信処理が可能となっている。そして、情報処理装置(101)から送信される印刷データを受信すると共に、画像形成装置(102)内の情報等を情報処理装置(101)に通知可能に構成されている。
【0013】
図2は、従来の双方向通信方式による印刷システムの、従来プリンタドライバ(128)の印刷処理の一例を示すフローチャートである。S201で、現在印刷処理中である場合、データが送信済みであるかを確認する。印刷データの送信が終了した場合は、画像形成装置(102)から終了メッセージ通知が行われたときであり、その場合は、本処理を終了する。S201で印刷データがまだ存在する場合、S202に進み、画像形成装置(102)に必要なメモリ領域が準備されているかどうか問い合わせを行う。画像形成装置によっては、一度に送信できる印刷データの量が制限されているため、印刷データの印刷用紙に対するすべての領域の中で、ある一定のバンドデータを送信する事が前提となる。S203で、メモリ領域が十分準備されている場合、S204に進み、印刷データのバンドデータを送信し、S201に戻る。S203で、メモリが準備されていない場合は、双方向通信として画像形成装置側からの情報がある状況であるため、S205でメッセージがあるかどうか画像形成装置に確認する。S205でメッセージまたはデータが無い場合は、通信状態が不正であると判断し、S210に進み、従来プリンタドライバ(128)が通信エラーを表示する。また、S205でメッセージがある場合は、S206に進み、メッセージ及びデータを画像形成装置(102)から取得し、データの処理を行う。次に、S207に進み従来プリンタドライバ(128)がメッセージを表示し、S201に戻る。
【0014】
図3は、従来の双方向通信方式による印刷システムの、画像形成装置(102)の印刷処理の一例を示すフローチャートである。S301で、情報処理装置(101)から問い合わせがきたかどうかを確認し続け、問い合わせがきた場合、S302に進む。S302で問い合わせが印刷命令であるかどうかを判別し、印刷命令であれば、S304に進み、印刷命令でなければS303に進む。S303では、従来のプロトコルにて必要なやりとりを行う他のメッセージ処理に移り、その後S301に戻る。次に、印刷命令であった場合の処理に進む。S304で印刷データの受信が終わったかどうかを印刷データの終わりを判断し、終わりであった場合は、S312に進み、終了メッセージをプリンタドライバに送信することで、本処理を終了する。S304で印刷データの終わりでなかった場合は、S305に進む。そして、プリンタドライバから、メモリに関する問い合わせがあるかを待つ、一定期間問い合わせがない場合は、タイムアウトとなり、S312に進む。そして、終了メッセージをプリンタドライバに送信することで、本処理を終了する。S305でメモリ問い合わせが来た場合、S306に進み、画像形成装置内のRAM(139)内のメモリがプリンタドライバの要求に対応出来るかどうか判断する。S306で、メモリの準備が出来ている場合は、S307に進み、印刷データをバンド単位で受信し、S304に進む。S306で、メモリの準備ができておらず、画像形成装置(102)側から送信すべきメッセージまたはデータがある場合は、該当するメモリ領域から、プリンタドライバに読み込んでもらうことで、情報処理装置(101)へ送信することを行う(S309)。S308で送信すべきメッセージまたはデータが無い場合は、画像形成装置(102)としては異常な状態であるため、エラーを情報処理装置(102)に送信し(S311)、本処理を終了する。
【0015】
図4は、本実施例における、基本プリンタドライバ(126)およびインストーラ(125)の双方向通信環境を構築するための自動インストール処理の一例を示すフローチャートである。まず、前提として、画像形成装置(102)の印刷設定を構築するために、情報処理装置(101)上のCPU(111)で動作するOSにおいて、従来の方法でプリンタドライバのインストールを行う。本実施例では、インストールするプリンタドライバとして、基本ドライバ(126)が、画像形成装置(102)に対応しており、前提として、ユーザが基本ドライバ(126)のインストール処理を行うことにより本処理が開始する。S401で、インストールされた基本プリンタドライバ(126)はインストールされた直後に画像形成装置(102)に通信を行い、S402で画像形成装置(102)から、標準の双方向通信方式で、画像形成装置(102)に問い合わせる。S402で、通信できずエラーになった場合は、標準の双方向通信が出来ないという事であるため、S404に進む。S402で、問い合わせが画像形成装置(102)から返って来た場合は、S403に進む。S403で、従来の双方向通信の基本となる信号であるメモリ確認などの返値を問い合わせ、その返値が戻って来なかった場合、標準の双方向通信による完全な通信が実現できなかったということが判明する。S403で、標準の双方向通信で動作する場合、その画像形成装置(102)は標準の双方向通信も対応しているという事であるので、本処理を終了する。S402またはS403で、標準の双方向通信が実現できなかった場合は、S404に進み、基本プリンタドライバ(126)は、画像形成装置(102)のIPアドレスを、またはUSBなどのローカル接続であればローカルポートの情報を、インストーラ(125)がアクセス可能であるユーザファイルやレジストリ等に記述する(S404)。次にS405で、基本プリンタドライバ(126)が、OS(122)を経由して、メッセージをインストーラ(125)に通信し、インストーラ(125)の自動インストール処理が起動させる。S405で、一定期間の間に、メッセージに対しての、応答がない場合、またはインストーラプロセスがOS(122)上で見つからない場合は、基本プリンタドライバ(126)が、本自動インストール処理を終了する。S405で、インストーラが問題無く起動した場合は、S406に進む。そして、インストーラ(125)が、レジストリから対象画像形成装置の情報(対象画像形成装置のIPアドレスまたはUSBなどのローカル接続であれば、ローカルポートの情報)を取り出す。そして、そのポートに適合したプリンタアダプタソフトウェア(エミュレータ)をインストールし、プリンタアダプタを起動する。起動されたプリンタアダプタは、別の画像形成装置と同等の動作を行うエミュレーションである。また、その画像形成装置に対応した、双方向通信が実現可能である第二のプリンタドライバである、拡張プリンタドライバ(127)が動作する環境をインストーラ(125)が作成する(S407)。本実施例では、インストーラ(125)が、拡張プリンタドライバ(127)のファイルをOS(122)の適切な部分にコピーし、プリンタアダプタ(129)についての設定がされた通信用ポートをOS(122)の標準的な作法によって作成する。次にS408に進み、インストーラ(125)が、プリンタアダプタ(129)が正常にインストールされたかどうかを、プリンタアダプタ(129)からの返答を待って確認し、エラーまたはタイムアウトになった場合は、S410に進む。S410で、本実施例の双方向通信方式を持った環境設定が構築できなかった事をインストーラ(125)がメッセージでディスプレイ(120)に表示する。また、S408で、プリンタアダプタ(129)のインストールに成功した場合、図6の実施例に示すような、ユーザに環境構築完了を示す「最適な環境が構築されました」画面(600)を、ディスプレイ(120)に表示する事で、本処理を終了する。
【0016】
図15(B)は、プリンタアダプタが設定された後のシステム構成を示す図である。標準双方向通信制約のあるプリントシステムに、基本プリンタドライバがインストールされた時に、制約があることを自動的に検知し、その基本ドライバから、対象の画像形成装置の情報(IPアドレス)をインストーラが取得することで、プリンタアダプタをインストール、起動させる。またインストーラによりプリンタアダプタに対応した拡張プリンタドライバが動作可能になっている。結果として、拡張プリンタドライバがプリンタアダプタを介して対象の画像形成装置に独自双方向通信する環境が自動的に構築される。図5は、本実施例における、双方向通信に対応した、印刷システムの印刷シーケンス図である。図4の双方向通信環境を構築するための自動インストール処理が行われて構築された印刷システムが、画像形成装置(102)と情報処理装置(101)の間を、どのように双方向通信を用いて印刷処理を行うかについて、シーケンスの一例を示す。拡張プリンタドライバ(127)は、プリンタアダプタ(129)を対象の画像形成装置として認識しており、装置に印刷するように振る舞う。一方プリンタアダプタ(129)は、拡張プリンタドライバ(127)からの印刷要求を受けながら、環境構築されている画像形成装置(102)に対しては、従来のプリンタドライバのように印刷処理を行う。まず、ユーザは、S500でアプリケーションから拡張プリンタドライバ(127)を指定して、印刷を開始する。拡張プリンタドライバ(127)はS501で、印刷開始コマンドをプリンタアダプタ(129)に送信する。プリンタアダプタ(129)は、S502で、初期化コマンドを画像形成装置(102)に送信し、画像形成装置(102)は、S503で装置を起動する。平行して、拡張プリンタドライバ(127)は、S504で印刷データをプリンタアダプタ(129)に送信し、プリンタアダプタ(129)は、S505で、印刷データをスプールする。次にS506に進むが、S505のスプール処理とは平行して処理を行う事も可能であり、S506で、画像形成装置(102)に対して、キャリブレーションコマンドを送信する。S507で画像形成装置(102)は、キャリブレーション処理を行い、結果をS508でプリンタアダプタ(129)に送信する。次にS509に進み、キャリブレーション結果を用い、S505でスプールした印刷データについて、再レンダリング等の画像調整を行う。次にS510で、画像形成装置(102)にメモリ確認コマンドを送信し、S511で、画像形成装置(102)が、メモリ確認を行う。これは図3のS305〜S306の処理である。S512で、準備がOKであることをプリンタアダプタ(129)に送信し、画像形成装置(102)が準備可能であることを確認すると、プリンタアダプタ装置(129)は、S513で、印刷データをバンド単位で、画像形成装置(102)に送信する。印刷データを受信すると、S514で画像形成装置(102)は印刷処理を開始する。以上のS510からS513の処理をバンド単位ごとの処理として、繰り返すことにより、双方向通信での印刷処理が行われる。印刷途中で、メッセージがある場合の例として、S520で、プリンタアダプタ(129)が、メモリ確認コマンドを発行した時に、S521で、画像形成装置(102)はメモリ確認を行う。そして、メッセージが存在する場合は、S522で、メモリの準備が出来ていないコマンドを発行する。このコマンドをプリンタアダプタ(129)が受信した場合、S523でメッセージやデータなどの取得コマンドを画像形成装置(102)に送信する。画像形成装置(102)はS524で、メッセージの準備を行い、S525で、一例としてステータスメッセージをプリンタアダプタ(129)に送信する。受信したステータスメッセージを、S526で、プリンタアダプタ(129)は、拡張プリンタドライバ(127)に送信すると、S527で、拡張プリンタドライバ(127)がステータスを表示し、S528で、ユーザがステータスを確認することが出来る。引き続き、双方向通信での印刷処理は、S510からS513の処理をバンド単位ごとの処理を繰り返すことにより続けられ、S530に進む。そして、プリンタアダプタ(129)が、メモリ確認コマンドを発行した時に、S531で、画像形成装置(102)は、図3の304の処理のように、印刷の終了が判明し、印刷終了処理を行う。また、S532で、メモリの準備が出来ていないコマンドを発行する。このコマンドをプリンタアダプタ(129)が受信した場合、S533で、メッセージやデータなどの取得コマンドを画像形成装置(102)に送信する。画像形成装置(102)はS524で、メッセージの準備を行い、S525で、終了メッセージをプリンタアダプタ(129)に送信する。受信した終了メッセージを、S536で、プリンタアダプタ(129)は、印刷終了メッセージを、拡張プリンタドライバ(127)用に作成し、S537で、拡張プリンタドライバ(127)に送信する。S537で、拡張プリンタドライバ(127)が終了メッセージを受信すると、S538で、アプリケーションに印刷終了を通知するで、ユーザが印刷処理終了を確認することが出来る。
【0017】
図6は、本実施例における、プリンタアダプタ(129)の環境設定処理および印刷処理開始の一例を示すフローチャートである。まず、図4の基本プリンタドライバ(126)およびインストーラ(125)の自動インストール処理により、プリンタアダプタ(129)が情報処理装置(101)のRAM(112)にインストールされ、起動される事で処理が開始される。S601で、プリンタアダプタ(129)は、予め図4のS404で記述された、対象画像形成装置の情報を外部メモリ(121)のユーザファイルまたはレジストリ等から読み出す。対象画像形成装置(102)の情報は、IPアドレスまたはUSBなどのローカル接続であれば、ローカルポートの情報である。次にS602で、プリンタアダプタ(129)が、画像形成装置の情報を読み出せたかどうかを判別し、読み出せなかった場合は、S605に進み、プリンタアダプタ(129)は、インストーラ(125)にエラーを送信する。S602で、プリンタアダプタ(129)が、画像形成装置の情報を読み出せた場合は、S603に進む。そして、プリンタアダプタ(129)は、画像形成装置(102)と従来の双方向通信方式にて情報取得を行う環境構築、エミュレーション、プリントサービス開始処理を行い、処理が失敗により完了しなかった場合は、S605に進む。また、プリンタアダプタ(129)は、インストーラ(125)にエラーを送信する。完了した場合は、プリンタアダプタ(129)が正常に機能し、印刷処理に対応可能な状態となり、環境設定処理が完了する。次に引き続き、印刷処理開始処理である、S604に進み印刷処理を説明する。S604で、プリンタアダプタ(129)は、拡張プリンタドライバ(127)から問い合わせがきたかどうかを確認し続け、問い合わせがきた場合、S606に進む。S606で問い合わせが印刷命令であるかどうかを判別し、印刷命令であれば、S608に進み、印刷命令でなければS607に進む。S607では、標準プロトコルにて必要なやりとりを行う他のメッセージ処理に移り、その後S604に戻る。次に、印刷命令であった場合の処理に進む。S608でプリンタアダプタ(129)は、印刷データの受信をスタートし、プリンタアダプタ(129)内で印刷データを受け付け続ける。次にS609に進み、現在印刷処理中である場合、プリンタアダプタ(129)は、データが送信済みであるかを確認する。印刷データの送信が終了した場合プリンタアダプタ(129)は、画像形成装置(102)から終了メッセージ通知が行われたときであり、その場合は、本処理を終了する。S609で印刷データがまだ存在する場合、S610に進み、プリンタアダプタ(129)は、画像形成装置(102)に必要なメモリ領域が準備されているかどうか問い合わせを行う。画像形成装置によっては、一度に送信できる印刷データの量が制限されているため、印刷データの印刷用紙に対するすべての領域の中で、ある一定のバンドデータを送信する事が前提となる。S611で、メモリ領域が十分準備されている場合、S615に進み、プリンタアダプタ(129)は、印刷データのバンドデータを画像形成装置(102)に送信し、S609に戻る。S611で、メモリが準備されていない場合は、双方向通信として画像形成装置側からの情報がある状況であるため、S612でプリンタアダプタ(129)は、メッセージまたはデータがあるかどうか画像形成装置に確認する。S612でメッセージまたはデータが無い場合は、通信状態が不正であると判断し、S616に進み、拡張プリンタドライバ(127)にエラーを送信する。また、S612でメッセージがある場合は、S613に進む。そして、プリンタアダプタ(129)は、メッセージまたはデータを画像形成装置(102)から取得し、データについては、キャリブレーション処理など画像形成装置(102)からのデータに基づいた処理を行う。S614に進み、プリンタアダプタ(129)は、メッセージを表示し、S609に戻る。
【0018】
図7は、図4のS408で、プリンタアダプタ(129)のインストールに成功した場合、ユーザに環境構築完了を示す「最適な環境が構築されました」画面(700)である。OKボタン(701)をユーザが押下すると図4の、基本プリンタドライバ(126)およびインストーラ(125)の双方向通信環境を構築するための自動インストール処理のすべてが終了する。
【実施例2】
【0019】
次に、本発明に係る第2の実施形態について説明する。
【0020】
図8(a)は、本発明の実施例2の実施形態に係るネットワークシステムの概略構成を示すブロック図である。このネットワークシステムは、図1(a)と同じく、情報処理装置(101)と、この情報処理装置(101)より印刷データを受信して印刷を行なう複数の画像形成装置(102a,102b,…)等を備え、更にプリンタアダプタ装置(103a,103b,…)等を備える。プリンタアダプタ装置(103)は、Ethernet(登録商標)で構成されるローカルネットワーク(104)を介して画像形成装置(102)に接続される場合と、USB等のローカルバス(105)経由で画像形成装置(102)に接続される場合がある。
【0021】
図8(b)は、図8(a)のプリンタアダプタ装置(103)と画像形成装置(102)の装置構成を示すブロック図である。次に画像形成装置(102)の構成については、図1(b)で示した構成と全く同一であるので説明を省略するが、特にプログラムROM(133b)には本実施例2の処理のために、追加の機能がプログラムされているものとする。
【0022】
プリンタアダプタ装置(103)において、CPU(161)は、RAM(162)に記憶されているプログラムに従って、システムバス(172)に接続される各装置を総括的に制御している。このRAM(162)は、CPU(161)の主メモリ、ワークエリア等としても機能している。ROM(163)は、各種プログラム及びデータを格納している。HID I/F(165)は、Human Interface Deviceのためのインターフェースであり、HID(169)や不図示のポインティング装置(タッチパネル等)からのキー入力を制御する。ディスプレイI/F(166)は、ディスプレイ(170)への表示を制御している。外部メモリI/F(167)は、例えばフラッシュメモリ、Solid State Disk(SSD)等の外部メモリ(171)とのアクセスを制御する。外部メモリ(171)は、オペレーティングシステムプログラム(以下、OS)(172)と印刷処理関連プログラム(174)、さらに、不図示のユーザファイル、編集ファイル等を記憶する情報処理装置が読み取り可能な記憶媒体として機能する。印刷処理関連プログラム(174)は、本実施形態に係る、プリンタアダプタマネージャ(175)、操作パネルエミュレーション(176)、汎用プリンタ探索プロトコル(177)、プリンタエミュレーション(178)、双方向通信ライブラリ(179)を含んでいる。プリンタアダプタマネージャ(175)は、プリンタアダプタ装置の動作を管理するモジュールである。また、プリンタアダプタマネージャ(175)は、対象となる画像形成装置(102)に対して送られてくる印刷ジョブを一旦、プリンタアダプタ装置(103)に貯め、それを画像形成装置(102)に管理しながら送信する役割がある。操作パネルエミュレーション(176)については、必要に応じて画像形成装置の操作部の代わりに装置を操作させるときに使用される。汎用プリンタ探索プロトコル(177)は、プリンタアダプタ装置(103)の代わりにネットワーク(104)上の画像形成装置検索で見つかるように対応するときに使用するプロトコルが実装されている。プリンタエミュレーション(178)は、画像形成装置ように装置を操作させるときに使用される。双方向通信ライブラリ(179)は、標準以外である、従来の双方向通信方式に対応しているだけでなく、標準的な双方向通信方式に対応している。ネットワーク及びUSB I/F(168)は、ネットワーク(104)または、USB等のローカルバスを介して画像形成装置(102)に接続され、画像形成装置(102)との間で通信制御処理を行なう。
【0023】
図9は、本実施例における、情報処理装置(101)内の、基本プリンタドライバ(126)およびインストーラ(125)の双方向通信環境を構築するための自動インストール処理の一例を示すフローチャートである。まず、前提として、実施例1の図4で示した、基本プリンタドライバ(126)およびインストーラ(125)の双方向通信環境を構築するための自動インストール処理の一例を示すフローチャートと開始部分のステップは同じである。また、S901からS904に関しては、図4のS401からS404までと同じであるため、説明を省略する。S905は、S904でインストーラ(125)が起動した後に、画像形成装置(102)にプリンタアダプタが既に使用されている状況であるか問い合わせを行う。問い合わせの方法として、画像形成装置(102)内の外部メモリ(134)に以前プリンタアダプタ(103)が使用した時のログファイル(143)が存在するかどうかを判別する。S906で、画像形成装置(102)からログファイル(143)がある場合は、プリンタアダプタ装置が存在し、S907に進みそのプリンタアダプタ装置から来るレスポンスに従い、拡張プリンタドライバ(127)が動作する環境をインストーラ(125)が作成する。本実施例では、インストーラ(125)が、拡張プリンタドライバ(127)のファイルをOS(122)の適切な部分にコピーし、プリンタアダプタ(129)についての設定がされた通信用ポートをOS(122)の標準的な作法によって作成する。S906で、プリンタアダプタが存在しない場合は、S910に進み、プリンタアダプタを検索するかどうかをユーザに問い合わせる、プリンタアダプタ検索選択メッセージをインストーラ(125)が、ディスプレイ(120)に表示する。図12に、プリンタアダプタ検索選択メッセージの一例を説明する。次にS911に進み、プリンタアダプタを検索する場合は、S912でネットワーク(104)上のブロードキャスト検索を行う。ブロードキャスト検索し、その結果から、適合するプリンタを抽出する。S912の処理がタイムアウト等の終了条件で終了後、S913に進み、適合するプリンタアダプタが発見された場合は、S907に進む。S907で、発見されたプリンタアダプタに接続する設定を施し、拡張プリンタドライバ(127)が動作する環境をインストーラ(125)が作成する。S911でプリンタアダプタを検索しない場合と、S913で所望のプリンタアダプタが発見されなかった場合は、どちらもS915に進み、実施例1と同様にプリンタアダプタ(129)を情報処理装置(101)にインストールする。図4のS405からS406の作業をS915で行う。S907またはS915の処理が終わると、S908に進み、環境設定構築が完了した事と、元の基本プリンタドライバをアンインストールするかどうかをユーザに問い合わせるメッセージをインストーラ(125)が、ディスプレイ(120)に表示する。図13に、基本プリンタドライバ削除選択メッセージの一例を説明する。S909に進み、基本プリンタドライバをアンインストールする場合は、S916に進み、インストーラ(125)は、OS(122)にインストールされていた、基本プリンタドライバ(126)をアンインストールする。S909で、基本プリンタドライバを削除しない場合と、S916で、アンインストールの処理が完了した場合は、本処理である、双方向通信環境自動インストール処理開始を終了する。
【0024】
図10は、本実施例における、プリンタアダプタ装置(103)の環境設定と印刷処理の一例を示すフローチャートである。本実施例のプリンタアダプタ装置(103)は、既に画像形成装置(102)と接続され、使用されている状態である。プリンタアダプタマネージャ(175)が、プリンタアダプタ装置(103)内のRAM(162)にインストールされ、起動されている状態で処理が開始される。S1001で、情報処理装置(101)または画像形成装置(102)から問い合わせがきたかどうかを確認し続け、問い合わせがきた場合、S1002に進む。S1002で、問い合わせが接続先の画像形成装置(102)であるかどうかを判別し、そうであればS1010に進み、問い合わせ元の情報処理装置の情報を取得する。S1002で、問い合わせが画像形成装置(102)で無い場合は、S1003に進み、情報処理装置(101)であるかどうかを判別し、そうであればS1011に進み、そうでなければS1004に進む。S1010からまたはS1003で情報処理装置(101)である場合は、S1011に進む。そして、問い合わせ元の情報処理装置(101)に、汎用検索プロトコル(177)を使用し、ユニキャストで応答する。また、図8のS807で示した、情報処理装置(101)側のインストーラ(125)での拡張プリンタドライバ(127)のインストール処理を促す。また、S1003で、情報処理装置(101)からの問い合わせでない場合は、S1004で問い合わせが印刷命令であるかどうかを判別し、印刷命令であれば、S1006に進み、印刷命令でなければS1005に進む。S1005では、標準プロトコルにて必要なやりとりを行う他のメッセージ処理に移り、その後S1001に戻る。次に、印刷命令であった場合の処理に進む。S1006で印刷処理プロセスに移行し、S1007で、印刷処理が成功したかを確認する。成功した場合は、画像形成装置(102)から終了メッセージ通知が行われたときであり、その場合は、S1009に進む。そして、画像形成装置(102)内の外部メモリ(134)にログファイル(143)を作成または、存在する場合は、本プリンタアダプタ装置の情報を記述し、その後S1001に戻る。また、S1007で印刷処理が成功しなかった場合、S1008に進み、拡張プリンタドライバ(127)にエラーを送信し本処理を終了する。
【0025】
図11は、本実施例における、画像形成装置(102)の利用記録処理の一例を示すフローチャートである。本実施例のプリンタアダプタ装置(103)は、既に画像形成装置(102)と接続され、使用されている状態であるが、この処理は特に初めて接続されたときに効果を発揮する。S1101で、情報処理装置(101)またはプリンタアダプタ装置(103)から問い合わせがきたかどうかを確認し続け、問い合わせがきた場合、S1102に進む。S1102で、プリンタアダプタからログ書き込み依頼が来たかを判別し、そうであればS1110に進む。そして、外部メモリ134内に無ければ、ログファイル(143)を作成し、ログファイル(143)が既に存在すればその中に、問い合わせ元のプリンタアダプタ装置(103)の情報を書き込む。S1102で、問い合わせが無い場合は、S1103に進み、問い合わせが印刷命令であるかどうかを判別し、印刷命令であれば、S1104に進み、印刷命令でなければS1111に進む。S1111では、標準プロトコルにて必要なやりとりを行う他のメッセージ処理に移り、その後、S1101に戻る。次に、S1103で印刷命令であった場合は、S1104に進み、印刷処理プロセスに移行し、本処理を終了する。
【0026】
図12は、本実施例における、画像形成装置(102)の問い合わせ処理の一例を示すフローチャートである。本実施例のプリンタアダプタ装置(103)は、既に画像形成装置(102)と接続され、使用されている状態であるが、この処理は特に初めて問い合わせを行う情報処理装置(101)に対して対応する処理である。S1201で、情報処理装置(101)またはプリンタアダプタ装置(103)から問い合わせがきたかどうかを確認し続け、問い合わせがきた場合、S1202に進む。S1202で、プリンタアダプタ装置(103)について問い合わせが来たかを判別し、そうでなければS1210に進み、他の必要な処理に移動し、情報処理装置(103)またはプリンタアダプタ装置(103)にレスポンスを送信し、S1201に戻る。S1202で、プリンタアダプタ装置(103)について問い合わせが来た場合は、S1203に進み、外部メモリ(134)内のログファイル(143)を参照し、プリンタアダプタ装置(103)に関する情報があるかどうか確認する。外部メモリ(134)内にログファイル(143)が無ければ、S1211に進み、存在しないことを情報処理装置にレスポンス送信し、本処理を終了する。S1203で、ログファイル(143)内にプリンタアダプタ装置(103)の情報がある場合は、S1204に進む。そして、該当プリンタアダプタ装置(103)に問い合わせメッセージをリダイレクトし、問い合わせ元の情報処理装置(101)のIPアドレス等の情報を伝える。また、図9のS911の処理のように、プリンタアダプタ装置(103)から情報処理装置(101)に応答させる。次に、S1205に進み、存在することと、該当プリンタアダプタ装置(103)のIPアドレス等の情報を情報処理装置にレスポンス送信し、本処理を終了する。
【0027】
図13は、図9のS910で、プリンタアダプタを検索するかどうかをユーザに問い合わせる、「プリンタアダプタ装置検索」画面(1300)である。インストーラ(125)が、ディスプレイ(120)に表示し、「アダプタを選択」ボタン(1301)をユーザが押下するとプリンタアダプタの検索が開始し、S912でネットワーク(104)上のブロードキャスト検索を行う。また、「PCだけで動作」ボタン(1302)をユーザが押下すると、プリンタアダプタの検索が行われず、S915に進み、実施例1と同様に、インストーラ(125)が、プリンタアダプタ(129)を情報処理装置(101)にインストールする。
【0028】
図14は、図9のS908で、環境設定構築が完了した事と、元の基本プリンタドライバを削除するかどうかをユーザに問い合わせる「最適な環境が構築されました」画面(1400)である。インストーラ(125)が、ディスプレイ(120)に表示し、OKボタン(1401)をユーザが押下すると、S916に進み、インストーラ(125)は、OS(122)にインストールされていた、基本プリンタドライバ(126)をアンインストールする。また、キャンセルボタン(1402)をユーザが押下すると、S909に進み、基本プリンタドライバ(126)のアンインストール処理を行わない。
【0029】
本発明の実施の形態により、情報処理装置が双方向通信を出来ないシステムを搭載している場合であっても、基本プリンタドライバが自動的に起動するインストーラが構築する双方向通信モジュールにより、自動的に画像形成装置とその動作システムを構築する作業を開始する。
【0030】
これにより、ユーザは、情報処理装置側またはローカルネットワーク側での、事前の印刷システム、環境設定等の作業を強いられることなく、ユーザが初めて使用する画像形成装置でも、基本プリンタドライバのインストール操作だけで、従来の双方向通信方式による印刷機能を利用することが可能になる。
【0031】
本発明の実施の形態は、プリンタアダプタ装置を別途必要としないのでユーザにとってより簡単な構成であり、既にプリンタアダプタ装置が存在した場合でも、画像形成装置も探索の補助をするため容易に発見、利用が可能となる。
【0032】
本発明の実施の形態は従来双方向通信方式の代わりとなる役割を情報処理装置が即席で構築できるものである。OSの種類、構造に影響するプリンタドライバ等をそれぞれのOS、環境の場合が存在しても、既存と本発明のプリンタドライバおよびインストーラ両方を準備することで、従来の双方向通信方式対応の画像形成装置が柔軟に、簡単に利用できるため、将来的にも従来方式の画像形成装置を利用する機会、環境が用意される。

【特許請求の範囲】
【請求項1】
標準双方向通信が実現可能かどうか判別する判別手段と、
前記判別手段により標準双方向通信が実現可能でないと判別された場合、基本プリンタドライバから対象画像形成装置の情報を取得する取得手段と、
前記取得手段により取得された対象画像形成装置の情報に基づき双方向通信を実現させるプリンタアダプタをインストールし、起動する起動手段と、
前記起動手段により起動されたプリンタアダプタに対応した拡張プリンタドライバが動作する環境を作成する作成手段とを有し、
前記拡張プリンタドライバはアプリケーションからの印刷データを前記プリンタアダプタに送信し、
前記プリンタアダプタは、独自双方向通信を行いながら画像形成装置に印刷データを送信することを特徴とする情報処理装置。
【請求項2】
前記起動手段は、前記画像形成装置にプリンタアダプタが存在しない場合に、前記取得手段により取得された対象画像形成装置の情報に基づき双方向通信を実現させるプリンタアダプタをインストールし、起動することを特徴とする請求項1記載の情報処理装置。
【請求項3】
前記作成手段は、前記画像形成装置にプリンタアダプタが存在した場合に、前記画像形成装置に存在するプリンタアダプタに対応した拡張プリンタドライバが動作する環境を作成することを特徴とする請求項1記載の情報処理装置。
【請求項4】
標準双方向通信が実現可能かどうか判別する判別ステップと、
前記判別ステップにより標準双方向通信が実現可能でないと判別された場合、基本プリンタドライバから対象画像形成装置の情報を取得する取得ステップと、
前記取得ステップにより取得された対象画像形成装置の情報に基づき双方向通信を実現させるプリンタアダプタをインストールし、起動する起動ステップと、
前記起動ステップにより起動されたプリンタアダプタに対応した拡張プリンタドライバが動作する環境を作成する作成ステップとを有し、
前記拡張プリンタドライバはアプリケーションからの印刷データを前記プリンタアダプタに送信し、
前記プリンタアダプタは、独自双方向通信を行いながら画像形成装置に印刷データを送信することを特徴とする情報処理方法。
【請求項5】
前記起動ステップは、前記画像形成装置にプリンタアダプタが存在しない場合に、前記取得ステップにより取得された対象画像形成装置の情報に基づき双方向通信を実現させるプリンタアダプタをインストールし、起動することを特徴とする請求項4記載の情報処理方法。
【請求項6】
前記作成ステップは、前記画像形成装置にプリンタアダプタが存在した場合に、前記画像形成装置に存在するプリンタアダプタに対応した拡張プリンタドライバが動作する環境を作成することを特徴とする請求項4記載の情報処理方法。
【請求項7】
標準双方向通信が実現可能かどうか判別する判別ステップと、
前記判別ステップにより標準双方向通信が実現可能でないと判別された場合、基本プリンタドライバから対象画像形成装置の情報を取得する取得ステップと、
前記取得ステップにより取得された対象画像形成装置の情報に基づき双方向通信を実現させるプリンタアダプタをインストールし、起動する起動ステップと、
前記起動ステップにより起動されたプリンタアダプタに対応した拡張プリンタドライバが動作する環境を作成する作成ステップとをコンピュータに実行させるプログラムであって、
前記拡張プリンタドライバはアプリケーションからの印刷データを前記プリンタアダプタに送信し、
前記プリンタアダプタは、独自双方向通信を行いながら画像形成装置に印刷データを送信することを特徴とするプログラム。
【請求項8】
前記起動ステップは、前記画像形成装置にプリンタアダプタが存在しない場合に、前記取得ステップにより取得された対象画像形成装置の情報に基づき双方向通信を実現させるプリンタアダプタをインストールし、起動することを特徴とする請求項7記載のプログラム。
【請求項9】
前記作成ステップは、前記画像形成装置にプリンタアダプタが存在した場合に、前記画像形成装置に存在するプリンタアダプタに対応した拡張プリンタドライバが動作する環境を作成することを特徴とする請求項7記載のプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate