(57)【特許請求の範囲】
【請求項１】
プリンタからステータスデータを取得する取得手段と、
前記取得手段により取得したステータスデータに基づきステータスが変化したか否かを判別する判別手段と、
前記判別手段によりステータスが変化したと判別され、ステータスがエラーを表すと判別された場合、ステータス取得間隔を第１の間隔に設定すると共にステータス表示を変更し、前記判別手段によりステータスが変化したと判別され、ステータスがエラーを表さないと判別され、エラー発生時から規定時間経過した場合、ステータス取得間隔を第１の間隔より長い第２の間隔に設定すると共にステータス表示を変更し、前記判別手段によりステータスが変化したと判別され、ステータスがエラーを表さないと判別され、エラー発生時から規定時間経過しない場合、ステータス取得間隔を第１の間隔より長い第２の間隔に設定せずにステータス表示を変更する手段とを有することを特徴とする情報処理装置。
【請求項２】
プリンタからステータスデータを取得する取得ステップと、
前記取得ステップにより取得したステータスデータに基づきステータスが変化したか否かを判別する判別ステップと、
前記判別ステップによりステータスが変化したと判別され、ステータスがエラーを表すと判別された場合、ステータス取得間隔を第１の間隔に設定すると共にステータス表示を変更し、前記判別ステップによりステータスが変化したと判別され、ステータスがエラーを表さないと判別され、エラー発生時から規定時間経過した場合、ステータス取得間隔を第１の間隔より長い第２の間隔に設定すると共にステータス表示を変更し、前記判別ステップによりステータスが変化したと判別され、ステータスがエラーを表さないと判別され、エラー発生時から規定時間経過しない場合、ステータス取得間隔を第１の間隔より長い第２の間隔に設定せずにステータス表示を変更するステップとを有することを特徴とするプリンタ制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、双方向インタフェースを介してプリンタを制御する情報処理装置、プリンタ制御方法及び当該情報処理装置で使用される制御プログラムを記憶した記憶媒体に関する。
【０００２】
【従来の技術】
従来、例えばホストコンピュータに接続されたプリンタを使用して画像データを印刷する際には、ホストコンピュータは、プリンタの動作状況や印刷用紙詰まり或いはインク・トナー切れ等のエラー情報等をプリンタから受信すると共に、受信した情報等をホストコンピュータのディスプレイ等に表示するようになっている。これにより、利用者へプリンタの状態を通知するようになっている。
【０００３】
また、プリンタが印刷動作を行っていない場合においても、ホストコンピュータは、プリンタのオンライン／オフラインの状況やプリンタのカバーの開閉状況等の情報をプリンタから受信すると共に、受信した情報等をホストコンピュータのディスプレイ等に表示するようになっている。
【０００４】
上記のように、ホストコンピュータは、プリンタの状態情報を取得するために、プリンタに対して状態情報を送信するように指示するコマンドをプリンタへ送信し、コマンドを受信したプリンタから送信されてくる状態情報を文字や図形等の表示可能な形に変換して、ホストコンピュータのディスプレイ等に表示している。この場合、ホストコンピュータからプリンタに対する状態情報送信の指示は、通常、予め設定した一定時間間隔毎に行われる。
【０００５】
【発明が解決しようとする課題】
しかしながら、上述した従来のホストコンピュータ等の情報処理装置においては、下記のような問題があった。即ち、プリンタが印刷動作中で短時間に当該プリンタの状態が変化するような状況においても、ホストコンピュータは予め設定された一定時間間隔毎にしかプリンタの状態情報を要求しないため、予め設定してある時間間隔がプリンタの状態変化の間隔と比較して長すぎる場合には、プリンタの実際の状況とホストコンピュータのディスプレイ等に表示されるプリンタの状況との間に時間差が発生するという問題があった。
【０００６】
また、前述した時間差を回避すべく、ホストコンピュータがプリンタに対して状態情報を要求する時間間隔を予め短く設定した場合には、プリンタが印刷動作を行っていない時など、プリンタの状態変化が比較的少ない時でも、ホストコンピュータは短い時間間隔でプリンタの状態情報を処理しなければならない。このため、ホストコンピュータ、プリンタともに効率が悪いという問題があった。
【０００７】
本発明は、上述した点に鑑みなされたものであり、プリンタの状態情報を認識できると共に、プリンタの状態情報に応じて予め設定された複数の時間間隔からプリンタに状態情報を要求するコマンドを送信するのに適当な時間間隔を選択でき、更に、プリンタの状態変化とホストコンピュータで表示されるプリンタの状態情報との時間差を軽減できると共に、ホストコンピュータ及びプリンタのパフォーマンスの悪化を回避することができる情報処理装置、プリンタ制御方法及び当該動作を実行するための制御プログラムを記憶した記憶媒体を提供することを目的とする。
【０００８】
【課題を解決するための手段】
上記目的を達成するために、本願発明の情報処理装置は、
プリンタからステータスデータを取得する取得手段と、
前記取得手段により取得したステータスデータに基づきステータスが変化したか否かを判別する判別手段と、
前記判別手段によりステータスが変化したと判別され、ステータスがエラーを表すと判別された場合、ステータス取得間隔を第１の間隔に設定すると共にステータス表示を変更し、前記判別手段によりステータスが変化したと判別され、ステータスがエラーを表さないと判別され、エラー発生時から規定時間経過した場合、ステータス取得間隔を第１の間隔より長い第２の間隔に設定すると共にステータス表示を変更し、前記判別手段によりステータスが変化したと判別され、ステータスがエラーを表さないと判別され、エラー発生時から規定時間経過しない場合、ステータス取得間隔を第１の間隔より長い第２の間隔に設定せずにステータス表示を変更する手段とを有することを特徴とする。
【００１１】
【発明の実施の形態】
以下、本発明の第１の実施の形態及び第２の実施の形態を図面を参照して説明する。
【００１２】
（１）第１の実施の形態
先ず、第１の実施の形態に係るシステムの構成を図１に基づき説明する。本システムは、ホストコンピュータ１と、プリンタ２とから大略構成されている。前記ホストコンピュータ１は、ホストコンピュータ本体３と、キーボード４と、ＣＲＴ５とから構成されており、更に、ホストコンピュータ本体３は、ＣＰＵ６と、ＲＡＭ７と、ハードディスク８と、ハードディスク（ＨＤＤ）コントローラ９と、データ入出力コントローラ１０と、ＲＯＭ１１と、キーボードコントローラ１２と、ＣＲＴコントローラ１３とを備えている。また、前記プリンタ２は、データ入出力コントローラ１４と、ＣＰＵ１５と、プログラムＲＯＭ１６と、フレームメモリ１７と、ワークメモリ１８と、図８に示す様なプリンタエンジン１９とを備えている。
【００１３】
図８はプリンタエンジン１９の構成を示す外観図であり、例えばインクジェットプリンタエンジンの場合を示す。
【００１４】
図において、駆動モータ５０１３の正逆回転に連動して駆動力伝達ギア５０１１，５００９を介して回転するリードスクリュー５００５の螺旋溝５００４に対して係合するキャリッジＨＣはピン（図示しない）を有し、ガイドレール５００３を介して矢印ａ，ｂ方向に往復移動される。このキャリッジＨＣには、インクタンクＩＴとインクジェットヘッドＩＪＨとを備えたインクジェットカートリッジＩＪＣが搭載されている。５００２は紙押え板であり、キャリッジ移動方向にわたって紙をプラテン５０００に対して押圧する。
【００１５】
５００７，５００８はフォトカプラで、キャリッジのレバー５００６のこの域での存在を確認して、駆動モータ５０１３の回転方向切り換え等を行うためのホームポジション検知手段として機能する。５０１６は記録ヘッドの全面をキャップするキャップ部材５０２２を指示する部材、５０１５はこのキャップ内を吸引する吸引手段で、キャップ内開口５０２３を介して記録ヘッドの吸引回復を行う。５０１７はクリーニングブレードで、部材５０１９により前後方向に移動可能となる。５０１８は本体支持板で、上記クリーニングブレード５０１７，部材５０１９を支持する。５０１２は吸引回復の吸引を開始するためのレバーで、キャリッジと係合するカム５０２０の移動に伴って移動し、駆動モータ５０１３からの駆動力がクラッチ切り換え等の公知の伝達手段で移動制御される。
【００１６】
これらのキャッピング，クリーニング，吸引回復は、キャリッジがホームポジション側領域にきたときにリードスクリュー５００５の作用によってそれらの対応位置で所望の処理が行えるように構成されているが、周知のタイミングで所望動作を行うように構成されていればよい。
【００１７】
図１に示す各部の構成を詳述すると、システムにおける情報処理装置として設けられたホストコンピュータ１は、ハードディスク８内のオペレーティングシステムに基づいてアプリケーションプログラム等によって生成された文字／図形／イメージの混在するデータをハードディスク８内のプリンタ制御プログラム（プリンタドライバ）を介してプリンタ２へ画像データを出力する機能や、ハードディスク８内のオペレーティングシステム（ＯＳ）に基づいてプリンタ状態表示プログラム（ステータスモニタ）を介してプリンタ２の状態情報をＣＲＴコントローラ１３を介してＣＲＴ５に表示する機能などを有する。
【００１８】
なお、プリンタドライバには、プリンタ２へイメージデータを送るためのプリンタドライバやプリンタ２へページ記述言語を送るためのプリンタドライバがある。
【００１９】
キーボード３は、各種キーを備えており、データを入力するためのものである。ＣＲＴ５は、例えば図９や図１０に示す様な各種情報を表示する。尚、表示手段はＣＲＴに限定されず、例えば液晶等の他の表示手段でもよい。ＣＰＵ６は、各種プログラムに基づきホストコンピュータ本体３の制御を行う。ＲＡＭ７は、随時書き込み読み出しメモリであり、ホストコンピュータ１内部で動作する全てのプログラムがロードされたり、プログラムの動作中にワークメモリとして使用される。ハードディスク８は、アプリケーションプログラム，プリンタ制御プログラム（プリンタドライバ），プリンタ状態表示プログラム（ステータスモニタ）等の各種プログラムの他に、各種プログラムが動作する際に必要なデータ等が格納されている。ハードディスクコントローラ９は、ハードディスク８に格納されたデータやプログラムの読み出し／書き込み処理を行う。
【００２０】
データ入出力コントローラ１０は、双方向のデータ通信インタフェース（例えば、ＩＥＥＥ１２８４規格のバイセントロインタフェース）によってプリンタ２と接続されており、プリンタ２との間で後述するコマンドやデータの送受信を行うことにより、上記プリンタ制御プログラムで生成されたプリンタ制御用コマンドやデータをプリンタ２側へ転送したり、逆にプリンタ２側から送られてきたステータス等のデータを受信して不図示の内部メモリに一時的に保持する。ＲＯＭ１１は、読み出し専用メモリであり、ホストコンピュータ１上で各種プログラムを実行したり，各種コントローラの制御を行うなどの様々な基本動作のためのプログラムを格納するプログラムＲＯＭ及びデータを格納するデータＲＯＭの他に、ＣＲＴ５上に各種情報を表示する際に用いるフォントデータ等を格納するフォントＲＯＭ等から構成される。キーボードコントローラ１２は、ホストコンピュータ１に接続されたキーボード４からのキー入力を制御する。ＣＲＴコントローラ１３は、ディスプレイ用のＣＲＴ５への表示を制御する。
【００２１】
プリンタ２は、ホストコンピュータ１から送信されてきたイメージデータを受信すると共に、受信したイメージデータを記録用紙上に記録し、また、ホストコンピュータ１からプリンタ状態の送信を要求するコマンドを受信すると共に、受信したコマンドに応じてプリンタ状態データ（ステータス）をホストコンピュータ１に対して送信する。データ入出力コントローラ１４は、プリンタ２に対してホストコンピュータ１から転送されたイメージデータ等を受信したり、プリンタ２側からのステータスをホストコンピュータ１へ転送する。ＣＰＵ１５は、プリンタ本体の制御を行う。プログラムＲＯＭ１６は、ホストコンピュータ１から受信したイメージデータをプリンタエンジン１９で記録させる一連のプリンタ動作を行うためのプログラムが格納されている。
【００２２】
なお、ホストコンピュータ１からページ記述言語の様なプリンタ言語を受信した場合に、当該プリンタ言語を解析してイメージデータを生成するエミュレーションプログラムも格納されている。
【００２３】
フレームメモリ１７は、プログラムＲＯＭ１６内のエミュレーションプログラムによって生成された或いは受信したイメージデータを保持するメモリである。ワークメモリ１８は、イメージデータの生成処理を始めとして画像記録の各種処理において使用されるメモリである。プリンタエンジン１９は、フレームメモリ１７に保持したイメージデータを記録用紙上に例えばカラーで記録するものであり、当該プリンタエンジン１９で記録できる画像は２値の記録パターンである。
【００２４】
更に、上記構成を有するプリンタ２は、当該プリンタ２の動作状態やエラー状態等のステータス情報獲得コマンドをサポートしており、当該コマンドを受信した際には、プリンタ２の動作状態が印字中であるのか，排紙中であるのか，そのいずれでもないのか，エラーが発生しているのかを判定すると共に、エラーが発生している場合には当該エラーに対応して予め設定されたエラーコードを転送するものである。エラー発生時に転送するエラーコードのデータフォーマットは、例えば図４に示すようなプリンタステータス情報となる。
【００２５】
第１の実施の形態では、ホストコンピュータ１のデータ入出力コントローラ１０は、プリンタ２に対してステータス情報獲得コマンドを送信するコマンド送信手段を構成すると共に、プリンタ２から転送されたプリンタ２の動作状態やエラー状態等を表すステータス情報を受信するステータス情報受信手段を構成し、ホストコンピュータ１のＣＰＵ６は、前記ステータス情報からプリンタ２の状態に応じてステータス情報獲得コマンドをプリンタ２に対して発行する時間間隔を制御する制御手段を構成している。
【００２６】
次に、図２のフローチャートに示すプリンタ状態表示プログラム（ステータスモニタ）の動作を説明する。
【００２７】
先ず、ＣＰＵ６はホストコンピュータ１がプリンタ２に対してステータス情報獲得コマンドを転送する時間間隔の初期値を例えば、１．０秒に決定し、ホストコンピュータ１のＲＡＭ７内に設けられたステータス獲得間隔記録領域に当該初期値を格納する（ステップＳ１０１）。次に、ＣＰＵ６はホストコンピュータ１のＣＲＴ５上に、ステータス表示領域を設定する（ステップＳ１０２）。当該ステータス表示領域には、図９や図１０に示すようにプリンタ２の動作状況及びエラー状況が文字列やビットマップ画像を用いて表示される。
【００２８】
次に、ＣＰＵ６は利用者がプリンタ状態表示プログラムの終了を要求しているか否かを判定し（ステップＳ１０３）、プログラムの終了を要求していると判断した場合は、プログラムを終了する。他方、プログラムの終了を要求していないと判断した場合は、ＣＰＵ６は前回プリンタ２に対してステータス獲得コマンドを転送してからＲＡＭ７内のステータス獲得間隔記録領域に格納されている時間（例えば１秒）が経過したか否かを判定し（ステップＳ１０４）、経過したと判断した場合は、ステータス表示処理を行い（ステップＳ１０５）、ステップＳ１０３以下の処理を繰り返す。他方、前回プリンタ２に対してステータス獲得コマンドを転送してからＲＡＭ７内のステータス獲得間隔記録領域に格納されている時間（２秒）が経過していないと判断した場合は、ステップＳ１０３以下の処理を繰り返す。
【００２９】
なお、当該プリンタ状態表示プログラムの開始に伴って不図示のタイマーが起動される。そして、前回ステータス獲得コマンドを転送していない場合には、ステップＳ１０４でプログラム開始から上記時間（１秒）が経過したか否かを判断する。
【００３０】
上記のように、本実施の形態に係る情報処理装置内のＣＰＵ６は、ステップＳ１０１及びステップＳ１０３の処理を終了した後は、利用者のプログラム終了要求があるまで、ステップＳ１０３とステップＳ１０５との間を繰り返し実行するようになっている。
【００３１】
次に、上記図２にステップＳ１０５として示したステータス表示処理の動作を図３のフローチャートに基づき説明する。
【００３２】
先ず、ホストコンピュータ１のＣＰＵ６はプリンタ２の動作状態とエラー状態とを調べるべく、プリンタ２のサポートするステータス情報獲得コマンドをプリンタ２へ転送する（ステップＳ２０１）。次に、ホストコンピュータ１のＣＰＵ６はプリンタ２から転送されたステータス情報を受信して読み込む（ステップＳ２０２）。当該ステータス情報には、図４に示した如くプリンタ２の動作状態とエラー状態の情報が含まれており、この値を以降で使用する。
【００３３】
尚、図４の動作状態のフィールドには、給紙中（ＬＤ），印刷中（ＰＲ），排紙中（ＥＪ），待機中（ＮＯ）の４種類の動作状態を表す２バイトの文字列が格納されており、エラー状態のフィールドには、プリンタ２で発生しているエラーの種類を表すプリンタ２固有の４バイトで表されるエラーコードか又はエラーが発生していないことを表す４バイトのコードが格納されている。例えば、用紙なしの場合は１０００が、ジャム発生の場合は１３００が格納されている。
【００３４】
ホストコンピュータ１のＣＰＵ６は上記ステップＳ２０２でステータスデータを受信してＲＡＭ７のワークメモリに格納すると、上記ステップＳ２０２でプリンタ２から受信したステータスデータが現在ホストコンピュータ１のＣＲＴ５上に表示しているプリンタ２の状態を示すステータスデータから変化しているか否かを判定する（ステップＳ２０３）。当該判定は、ステータスに変化が無い場合は以後のステータス表示の変更等の処理を行わないようにするために実行する。プリンタ２から受信したステータスデータが現在ホストコンピュータ１のＣＲＴ５上に表示しているプリンタ２の状態を示すステータスデータと同じであると判断した場合は、ステータス表示処理を中断して上記図１のステップＳ１０３へ移行する。
【００３５】
なお、ＣＲＴ５上に表示しているプリンタ２の状態を示すステータスデータはＲＡＭ７のワークメモリに格納されており、このステータスデータと受信したステータスデータとをステップＳ２０３で比較して変化したか否かを判断する。
【００３６】
ホストコンピュータ１は受信したプリンタ２のステータスデータとＣＲＴ５に表示している内容を示すステータスデータとが異なると判断した場合は、プリンタ２が印刷動作中であるか待機中であるかを知るべく、プリンタ２から受信したステータスデータの動作状態フィールドの内容が、プリンタ２が給紙／印刷／排紙のいずれかの動作を行っていることを表しているか否かを判定する（ステップＳ２０４）。
【００３７】
動作状態フィールドの内容が給紙中（ＬＤ），印刷中（ＰＲ），排紙中（ＥＪ）のいずれかを表している場合は、ホストコンピュータ１のＲＡＭ７内のステータス獲得間隔記録領域の内容を、図５に示すステータス取得間隔データの設定値１の値（例えば、０．５秒）に変更し（ステップＳ２０５）、ステップＳ２０７へ移行する。他方、動作状態フィールドの内容が待機中（ＮＯ）を表している場合は、ホストコンピュータ１のＲＡＭ７内のステータス獲得間隔記録領域の内容を、図５に示すステータス取得間隔データの設定値２の値（例えば２．０秒）に変更し（ステップＳ２０６）、ステップＳ２０７へ移行する。
【００３８】
なお、図５に示すフィールドは、ＲＡＭ７のワークメモリに予め格納されている。
【００３９】
ここで、図５の設定値１の値は設定値２の値よりも小さく設定されており、プリンタ２が動作中で頻繁にプリンタ２のステータスが変化する場合は、それに合わせてホストコンピュータ１が短い時間間隔でプリンタ２のステータス情報を取得するようになっている。また、プリンタ２が待機中でステータスの変化が動作中の場合ほど頻繁でない場合は、ホストコンピュータ１がプリンタ２からステータス情報を取得する時間間隔を長くすることにより、ホストコンピュータ１及びプリンタ２のパフォーマンスを損なわないように制御する。
【００４０】
上記ステップＳ２０５またはステップＳ２０６の処理が終了すると、ホストコンピュータ１は上記ステップＳ２０２でプリンタ２から受信した内容をＣＲＴ５上に表示する（ステップＳ２０７）。この後、上記図１のステップＳ１０３へ戻る。例えば、受信したステータスが印刷中であれば図９に示す内容をステップＳ２０７でＣＲＴ５に表示する。また、受信したステータスが待機中であれば図１０に示す内容をステップＳ２０７でＣＲＴ５に表示する。
【００４１】
上述したように、第１の実施の形態によれば、ホストコンピュータ１が当該ホストコンピュータ１に接続されたプリンタ２に対してステータス情報獲得コマンドを送信してプリンタ２からステータス情報を受信し、その内容をプリンタ２の動作状態やエラー状態としてＣＲＴ５へ表示する場合に、ホストコンピュータ１がプリンタ２に対してステータス情報獲得コマンドを送信してその応答を受信するという一連の動作を繰り返す際の時間間隔（ポーリングインターバル）を、プリンタ２が給紙，印刷，排紙という動作を行っているか或いは待機中であるかを基準にして、プリンタ２が動作中であれば予め設定された短い時間間隔に設定し、また、プリンタ２が待機中であれば予め設定された長い時間間隔に設定するため、プリンタ２が動作中でステータスが頻繁に変化する場合には、それに合わせて短い時間間隔でステータス表示を更新することが可能となり、また、プリンタ２が待機中でステータスの変化が比較的少ない場合には、ステータス表示を更新する頻度を小さくすることが可能となり、この結果、ホストコンピュータ１及びプリンタ２のパフォーマンスを損なわないように制御することが可能となる。
【００４２】
（２）第２の実施の形態
上記第１の実施の形態ではホストコンピュータ１がステータス情報獲得コマンドをプリンタ２に対して転送し、これに対するプリンタ２の応答であるステータス情報をプリンタ２から受信するという一連の動作を繰り返す時間間隔を、プリンタ２が給紙，印刷，排紙という動作を行っているか否かを基準にして変化させる制御を行っているが、本第２の実施の形態は、これに加えて、プリンタ２でエラーが発生した場合に、ホストコンピュータ１がプリンタ２に対してステータス情報獲得コマンドを転送し、その応答であるステータス情報を受信するという一連の動作を繰り返す時間間隔を、エラーが発生していない場合よりも短く設定して、ＣＲＴ５上のステータス表示を短い時間間隔で更新することで、利用者がプリンタ２のエラーに速やかに対処できるようにしたものである。
【００４３】
第２の実施の形態に係るシステム構成は上記第１の実施の形態に係るシステム構成と同様であり、第２の実施の形態が上記第１の実施の形態と相異する点は、上記図２のフローチャートにステップＳ１０５として示したステータス表示処理を図６のフローチャートが示すように行う点である。
【００４４】
図６において、ホストコンピュータ１のＣＰＵ６はプリンタ２の動作状態とエラー状態とを調べるべく、プリンタ２のサポートするステータス情報獲得コマンドをプリンタ２へ転送する（ステップＳ３０１）。次に、ホストコンピュータ１のＣＰＵ６はプリンタ２から転送されたステータス情報を受信して読み込む（ステップＳ３０２）。当該ステータス情報には、上記図４に示した如くプリンタ２の動作状態とエラー状態の情報が含まれており、この値を以降で使用する。
【００４５】
ホストコンピュータ１のＣＰＵ６は上記ステップＳ３０２でステータスデータをＲＡＭ７のワークメモリ格納すると、上記ステップＳ３０２でプリンタ２から受信したステータスデータが、現在ホストコンピュータ１のＣＲＴ５上に表示しているプリンタ２の状態を示すステージデータから変化しているか否かを判定する（ステップＳ３０３）。当該判定は、ステータスに変化が無い場合は以後のステータス表示の変更等の処理を行わないようにするために実行する。
【００４６】
なお、ＣＲＴ５に表示しているプリンタ２の状態を示すステータスデータはＲＡＭ７のワークメモリに格納されており、このステータスデータと受信したステータスデータとをステップＳ３０３で比較して変化したか否かを判断する。
【００４７】
ホストコンピュータ１のＣＰＵ６はプリンタ２がエラー状態であるか否かを知るべく、プリンタ２から受信したステータスデータのエラー状態フィールドの内容が、エラーが発生していることを表す数値かエラーが発生していないことを表す数値かを判定する（ステップＳ３０４）。ステータスデータのエラー状態フィールドの内容がプリンタ２のエラーを表していると判断した場合は、先ず、ホストコンピュータ１のＲＡＭ７に設けたエラー発生時刻記憶領域に不図示のタイマーの現在時刻を設定し（ステップＳ３０５）、例えば図７に示すようなステータス取得間隔テーブルの第一列を選択し、その第一行の内容を上記図５に示したステータス取得間隔データの設定値１のフィールドにセットすると共に、その第二行の内容をステータス取得間隔データの設定値２のフィールドにセットし（ステップＳ３０６）、ステップＳ３０９へ移行する。
【００４８】
他方、ホストコンピュータ１のＣＰＵ６はステータスデータのエラー状態フィールドの内容がプリンタ２のエラーを表していないと判断した場合は、先ず、ステップＳ３０５で設けたエラー発生時刻記憶領域の記憶値と現在時刻とを比較して、エラー発生時刻記憶領域に設定された時刻からホストコンピュータ１のＲＡＭ７に設けられた規定時間記憶領域に記憶された規定時間（例えば、１０秒）が経過しているか否かを判定する（ステップＳ３０７）。既に規定時間が経過していると判断した場合は、上記図７に示したステータス取得間隔テーブルの第二列を選択し、その第一行の内容を上記図５に示したステータス取得間隔データの設定値１のフィールドにセットすると共に、その第二行の内容をステータス取得間隔データの設定値２のフィールドにセットし（ステップＳ３０６）、ステップＳ３０９へ移行する。まだ規定時間が経過していないと判断した場合は、直接ステップＳ３０９へ移行する。
【００４９】
なお、一度もエラーが発生していない場合には、ステップＳ３０７でＣＰＵ６は、プリンタ状態表示プログラムの開始時刻から規定時間が経過したか否かを判断する。
【００５０】
ここで、上記図７のステータス取得間隔テーブルは、ホストコンピュータ１のＲＡＭ７に設けられたステータス取得間隔テーブル記憶領域にあり、プリンタ２でエラーが発生している場合とエラーが発生していない場合のそれぞれについて、プリンタ２が動作中と待機中のそれぞれの場合のステータス取得間隔を記憶する領域である。ステータス取得間隔テーブルに記憶されたステータス取得間隔を図７に示した如くＴ１（例えば、０．５秒），Ｔ２（例えば、１．０秒），Ｔ３（例えば、１．０秒），Ｔ４（例えば、２．０秒）とすると、Ｔ１はＴ２よりも小さく、Ｔ３はＴ４よりも小さく、Ｔ１はＴ３よりも小さく、Ｔ２はＴ４よりも小さくなるように予め設定されているものとする。
【００５１】
上記ステップＳ３０６またはステップＳ３０８またはステップＳ３０７の処理が終了すると、ホストコンピュータ１は上記ステップＳ３０２でプリンタ２から受信した当該プリンタ２のステータスデータの動作状態フィールドを参照して、プリンタ２が給紙，印刷，排紙のいずれかの動作を行っているか或いは待機しているかを判定する（ステップＳ３０９）。
【００５２】
プリンタ２が動作中であると判断した場合は、ホストコンピュータ１のＲＡＭ７内のステータス獲得間隔記録領域の内容を、ステータス取得間隔データの設定値１の値に変更し（ステップＳ３１０）、ステップＳ３１２へ移行する。他方、プリンタ２が待機中であると判断した場合は、ホストコンピュータ１のＲＡＭ７内のステータス獲得間隔記録領域の内容を、ステータス取得間隔データの設定値２の値に変更し（ステップＳ３１１）、ステップＳ３１２へ移行する。
【００５３】
即ち、プリンタ２でエラーが発生している場合は、エラーが発生していない場合よりもステータス表示を更新するための処理を行う時間間隔が短くなり、また、プリンタ２が給紙，印刷，排紙の動作を行っている場合は、動作を行っていない場合よりもステータス表示を更新するための処理を行う時間間隔が短くなることになる。
【００５４】
上記ステップＳ３１０またはステップＳ３１１の処理が終了すると、ホストコンピュータ１は上記ステップＳ３０２でプリンタ２から受信した内容を、ホストコンピュータ１のＣＲＴ５上に表示し（ステップＳ３１２）、その後、上記図１のステップＳ１０３へ戻る。例えば、受信したステータスがジャム発生中であれば図１１に示す内容をＳ３１２でＣＲＴ５に表示する。
【００５５】
上述したように、第２の実施の形態によれば、ホストコンピュータ１はプリンタ２にエラーが発生しているか否かを判定すると共にプリンタ２にエラーが発生していると判断した場合は、プリンタ２に対してステータス情報獲得コマンドを送信してその応答を受信するという一連の動作を繰り返す際の時間間隔（ポーリングインターバル）を、エラーが発生していない場合よりも短く設定するため、プリンタ２のエラー発生時にはステータス表示を更新する時間を短くし、利用者がプリンタ２のエラーに速やかに対処することができるようになる。例えば、ジャム発生の場合には、図１１の表示内容に従って利用者がエラーに速やかに対処できる。また、プリンタ２のエラーが解消された場合でも、エラー発生時から一定時間が経過するまでステータス情報を取得する時間間隔を短くし続けるため、利用者がエラーに対して正しい対処を行わずに、一時的にエラー状態が解消された後、すぐにエラーが再発するような場合にも、速やかにステータス表示を行って利用者へエラーに対処することを促すことができる。
【００５６】
尚、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用しても良い。また、本発明は、システム或は装置にプログラムを供給することによって達成される場合にも適用できることは言うまでもない。この場合、本発明を達成するためのソフトウエアによって表されるプログラムを格納した記憶媒体を該システム或は装置に読み出すことによって、そのシステム或は装置が、本発明の効果を享受することが可能となる。
【００５７】
次に、本実施形態の情報処理装置で使用される例えばハードディスク８の様な記憶媒体について、図１２を用いて説明する。
【００５８】
図１２は、本発明の各実施形態におけるプリンタ状態表示プログラム（ステータスモニタ）を記憶した記憶媒体のメモリマップである。
【００５９】
双方向インタフェースを介してプリンタを制御する情報処理装置で使用され、前記プリンタのステータスに応じて、ステータスデータの要求コマンドをプリンタへ送信する時間間隔を制御する制御プログラムを格納する記憶媒体には、図１２に示すように、少なくとも「認識モジュール」、「制御モジュール」のプログラムコードを記憶媒体に格納すれば良い。
【００６０】
ここで、「認識モジュール」は、プリンタから取得したステータスデータに基づいてプリンタのステータスを認識する為のプログラムモジュールである。
【００６１】
また、「制御モジュール」は、認識モジュールで認識したプリンタのステータスに応じて、ステータスデータの要求コマンドをプリンタへ送信する時間間隔を制御する為のプログラムモジュールである。
【００６２】
なお、記憶媒体としては本実施形態のハードディスク８の他に、ホストコンピュータ本体３等の情報処理装置に着脱可能なフロッピーディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、不揮発性メモリカードなどを用いることができる。
【００６３】
【発明の効果】
以上説明したように本発明によれば、プリンタから取得したステータスデータに基づいてプリンタのステータスを認識し、当該認識したプリンタのステータスに応じて、ステータスデータの要求コマンドをプリンタへ送信する時間間隔を制御することで、プリンタの状態変化とホストコンピュータ等の情報処理装置で表示されるプリンタの状態情報との時間差を軽できると共に、プリンタ及び情報処理装置のパフォーマンスの悪化を回避できる。
【００６４】
例えば、ステータスデータがプリンタ動作中を示す場合には、当該送信時間間隔を短くすることで、頻繁に変化するステータスに合わせて短い時間間隔でステータス表示を更新することができる。
【００６５】
また、ステータスデータがプリンタ待機中を示す場合には、当該送信時間間隔を長くすることで、比較的変化の少ないステータスに応じてステータス表示の更新頻度を小さくすることができる。
【００６６】
また、ステータスデータがプリンタエラーを示す場合には、当該送信時間間隔を短くすることで、頻繁に変化するステータスに合わせて短い時間間隔でステータス表示を更新でき、利用者がプリンタのエラーに速やかに対処することができる。
【００６７】
また、ステータスデータがプリンタエラー及びプリンタ動作中を示す場合には、当該送信時間間隔を最も短くすることで、頻繁に変化するステータスに合わせて最も短い時間間隔でステータス表示を更新でき、利用者がプリンタのエラーに速やかに対処することができる。
【００６８】
また、ステータスデータがプリンタ正常及びプリンタ待機中を示す場合には、当該送信時間間隔を最も長くすることで、比較的変化の少ないステータスに応じてステータス表示の更新頻度を最も小さくすることができる。
【図面の簡単な説明】
【図１】本発明の第１及び第２の実施の形態に係るホストコンピュータ及びプリンタからなるシステムの構成を示すブロック図である。
【図２】第１及び第２の実施の形態に係る処理動作を示すフローチャートである。
【図３】第１の実施の形態に係るステータス表示処理の処理動作を示すフローチャートである。
【図４】第１及び第２の実施の形態に係るプリンタステータスデータのデータフォーマットを示す説明図である。
【図５】第１及び第２の実施の形態に係るステータス取得間隔データのデータフォーマットを示す説明図である。
【図６】第２の実施の形態に係るステータス表示処理の処理動作を示すフローチャートである。
【図７】第２の実施の形態に係るステータス取得間隔テーブルのデータフォーマットを示す説明図である。
【図８】本発明の第１及び第２の実施の形態に係るプリンタのプリンタエンジンの外観図である。
【図９】本発明の第１及び第２の実施の形態に係るプリンタ印刷中のステータス表示内容を示す図である。
【図１０】本発明の第１及び第２の実施の形態に係るプリンタ待機中のステータス表示内容を示す図である。
【図１１】本発明の第２の実施の形態に係るプリンタジャム発生中のステータス表示内容を示す図である。
【図１２】本発明の第１及び第２の実施の形態に係るプリンタ状態表示プログラムを記憶した記憶媒体のメモリマップである。
【図１】
0003706694.tif 000002
【図２】
0003706694.tif 000003
【図３】
0003706694.tif 000004
【図４】
0003706694.tif 000005
【図５】
0003706694.tif 000006
【図６】
0003706694.tif 000007
【図７】
0003706694.tif 000008
【図８】
0003706694.tif 000009
【図９】
0003706694.tif 000010
【図１０】
0003706694.tif 000011
【図１１】
0003706694.tif 000012
【図１２】
0003706694.tif 000013