(57)【要約】【課題】  ホストコンピュータとプリンタとから構成される印刷制御システムにおいて、ユーザが各種メンテナンスの動作のタイミングを設定することができ、その設定にしたがって、プリンタに対してメンテナンスの動作の指示を行う印刷制御システムを提供することを目的とする。【解決手段】  ホストコンピュータとプリンタとから構成される印刷システムであって、メンテナンスの種類とタイミングを設定する手段と、前記設定手段で設定されたタイミングで設定された種類のメンテナンスの実行を指示するメンテナンス実行指示手段とを、具えることによって、印刷制御システムを構成する。【選択図】  図１
2009020592.tif 000002
【特許請求の範囲】
【請求項１】
ホストコンピュータとプリンタとから構成される印刷システムであって、任意のタイミングでプリンタのメンテナンスを実行できることを特徴とする印刷システム。
【請求項２】
ホストコンピュータとプリンタとから構成される印刷システムであって、ユーザが指定したタイミングでプリンタのメンテナンスを実行できることを特徴とする印刷制御システム。
【請求項３】
ホストコンピュータとプリンタとから構成される印刷システムであって、メンテナンスの種類とタイミングを設定する手段と、前記設定手段で設定されたタイミングで設定された種類のメンテナンスの実行を指示するメンテナンス実行指示手段と、をもつことを特徴とする印刷制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えばホストコンピュータから画像データを受信して印刷するプリンタに適用可能な印刷システムに関する。
【背景技術】
【０００２】
従来、プリンタでは、予めエンジンに設定されているタイミングで、キャリブレーションやクリーニング等のメンテナンス動作を行うようになっている。例えば、キャリブレーションは、電源ON時に行うようになっており、クリーニングはユーザが判断したときにユーザの操作によって行うというようになっている事が多い。しかし、ユーザによっては、画質よりも早く印刷したいので、電源ON時のキャリブレーションは必要ないと思っていたり、定期的にクリーニングを行いたいので、一定のページごとに自動的にクリーニング動作をして欲しいと思っていたりするが、ユーザの思うように設定できないという問題点があった。
【０００３】
従来例としては、例えば特許文献１と特許文献２をあげることが出来る。
【特許文献１】特開2001-239724号公報
【特許文献２】特開2003-208285号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明は、上述した問題点を鑑みてなされたもので、ホストコンピュータとプリンタとから構成される印刷制御システムにおいて、ユーザが各種メンテナンスの動作のタイミングを設定することができ、その設定にしたがって、プリンタに対してメンテナンスの動作の指示を行う印刷制御システムを提供することを目的とする。
【課題を解決するための手段】
【０００５】
本発明は、ホストコンピュータとプリンタとから構成される印刷システムであって、メンテナンスの種類とタイミングを設定する手段と、前記設定手段で設定されたタイミングで設定された種類のメンテナンスの実行を指示するメンテナンス実行指示手段とを、具えることによって、印刷制御システムを構成する。
【発明の効果】
【０００６】
以上説明したように、本発明によれば、モノクロページとカラーページが混在する印刷ジョブを印刷する場合も、エンジン設定変更の時間を省き、印刷のパフォーマンスを向上させることが出来る。
【発明を実施するための最良の形態】
【０００７】
以下、図面を参照して、本発明の実施の形態を、詳細に説明する。
【０００８】
本発明は、例えば、ホストコンピュータ等から受信した画像データを格納するメモリと、該メモリに格納された画像データをドットイメージで印刷する印刷手段とを少なくとも備えたプリンタにおいて、可能な限りの高速印刷を行うことが可能な印刷制御に関する。
【０００９】
そして、図１は本発明を実施する印刷システムの全体を示すブロック図である。１０２は画像データ生成手段であり、アプリケーションから受け取ったデータから画像データを生成する。１０３は画像データ転送手段であり、１０２から受け取った画像データをプリンタへ転送する。１０４はメンテナンス指示手段であり、ユーザの設定によって、ホストからメンテナンスの指示を行う必要がある場合は、プリンタに対してメンテナンスの指示を行う。１０５はメンテナンス設定手段であり、メンテナンスの設定を行い、ホストで設定する必要がある項目は１０４に通知し、プリンタに設定する必要がある項目に関しては、プリンタに対して設定を行う。
【００１０】
図２は、通信制御部に関連する印刷システムの構成を示す図である。
【００１１】
ホストコンピュータ101の構成について説明する。
【００１２】
オペレーティングシステム（OS）20は、CPU、メモリ、ハードディスク、通信ポート25などのハードウェアの管理、およびアプリケーションプログラム21、プリンタドライバプログラム22、送信プログラム23、通信ドライバ24などのソフトウェアの管理を行う。
【００１３】
アプリケーションプログラム21は、操作者の指示に従ってデータを作成するとともに、オペレーティングシステム20を経由してプリンタドライバプログラム22に印刷指令を発行する。
【００１４】
プリンタドライバプログラム２２は、アプリケーションプログラム21から発行された印刷指令に基づき、プリンタ106が印刷を行うための印刷データを作成する。
【００１５】
プリンタドライバプログラム22が生成する印刷データは、1つのページに付き、1つのページ開始コマンド、１つの画像データ開始コマンド、1つ以上の画像データコマンド、1つのページ終了コマンドによって構成されており、これら一連のコマンドにより構成されるページを必要なだけ繰り返す。
【００１６】
ページ開始コマンドは、用紙サイズ、画像データの幅と高さ、画像データのサイズなど、印刷の制御に必要な情報を指定する。画像データコマンドは、印刷されるべきビットマップデータを指定するもので、アプリケーションプログラム21が発行した印刷指令に従って生成されたビットマップデータを圧縮した上で、例えば32KB以下のブロックに分割されたものである。ページ終了コマンドは、1つのページの印刷データの終了を示す。
【００１７】
送信プログラム23は、後述する手順により、プリンタ106から取得したプリンタステータスに従って、プリンタドライバプログラム22が作成した印刷データを通信ドライバ24、通信ポート25を経由してプリンタ106に送信する。
【００１８】
通信ドライバ24は、送信プログラム23の要求に従い、通信ポートを制御して、プリンタ106との間の送受信を行う。
【００１９】
プリンタ106の構成について説明する。
【００２０】
通信ポート30は、例えばパラレルインタフェースケーブルにより、ホストコンピュータの通信ポート25と接続される。もちろんこれは、ネットワークによって接続されている場合もある。
【００２１】
制御回路31は、例えば、ROM、RAMおよびタイマーを内蔵した1チップCPUで構成され、通信ポート30、FIFOメモリ32、復号回路33、シフトレジスタ34、および内蔵するタイマーの制御を行うとともに、プリンタエンジン35との間でシリアル信号を用いてエンジンコマンドの送信およびエンジンステータスの受信を行う。
【００２２】
FIFO（ファーストインファーストアウト）メモリ32は、例えば、0．5MBの容量を有し、通信ポート30が受信したデータを記憶し、記憶したデータを先入れ先出しの順に復号回路33に出力する。FIFOメモリ32は、空き容量があるか否かを示す信号を制御回路31に出力する。
【００２３】
復号回路33は、FIFOメモリ32に記憶された画像データを復号し、シフトレジスタ34に出力する。
【００２４】
シフトレジスタ34は、プリンタエンジン35から主走査の開始を通知する信号を受信すると、復号回路33が出力したパラレルデータをシリアルデータに変換し、プリンタエンジン35に出力する。
【００２５】
プリンタエンジン35は、レーザービームプリンタエンジンからなり、制御回路31との間でシリアル信号を用いてエンジンコマンドの受信およびエンジンステータスの送信を行い、制御回路31からPRINTコマンドを受信すると1ページの印刷処理を開始し、用紙が主走査を開始すべき所定の位置に達すると、主走査の開始を通知する信号をシフトレジスタ34に出力し、シフトレジスタ34が出力したシリアルデータに従って印刷を行う。
【００２６】
通常、プリンタでは、電源ON時に、キャリブレーションを行い、ユーザのアクションによって、クリーニングを行うことが多い。そのため、キャリブレーションは必要ないので、早く印刷したい、定期的にクリーニングを行いたいというユーザに対応することができないという問題点があった。
【００２７】
このような場合に、ユーザが、メンテナンス設定画面によって、キャリブレーションとクリーニングを行うタイミングを設定し、設定にしたがったタイミングでエンジンに対し、メンテナンスの動作の指示を行う。
【００２８】
以下、添付図面を参照して本発明の実施例を詳細に説明する。
【００２９】
図５は、メンテナンス設定画面である。ユーザはメンテナンス設定プログラムを起動し、メンテナンス設定画面を表示させる。図５の画面が表示されたら、ユーザは自分の所望するように、メンテナンス動作の時期を設定する。設定項目は、例えば、図５の画面にあるように、Jobの直前、直後、一定の時間間隔、印刷したページ数、電源ON時などがある。時間とページ数の項目で、メンテナンスを実行したくない場合は、0を入力する。OKボタンが押されたら、設定された項目を送信プログラム、またはプリンタに対して設定する。ホストで画像データを生成し、画像データをプリンタに転送する印刷システムにおいては、Jobの開始と終了はホストで制御するため、Jobの前後にメンテナンス動作を行わせるためには、ホストで指示する必要がある。そのため、Job直前、Job直後の項目の設定は、ホストに記憶させる。設定された項目は、送信プログラムによって読み出される。その他の項目はプリンタ自身で判断するため、プリンタに対して設定を行う。プリンタは項目の設定を不揮発性の記憶領域に保持する。
【００３０】
図３は、実施例の印刷時の動作を示すフローチャートである。このフローチャートを用いて詳細に説明する。実際にはホストコンピュータ1の送信プログラム23によって実行される処理である。送信プログラムはワーク領域に、Job前キャリブレーションフラグ、Job前クリーニングフラグ、Job後キャリブレーションフラグ、Job後キャリブレーションフラグを保持する。初期値は０である。
【００３１】
まず、ステップS301では、ホストに設定されたメンテナンス設定を読み出しフラグに設定する。ステップS302にて、ステータス取得コマンドを送信する。ステップS303では、プリンタのステータスを受信する。なお、ステータスは、エラーフラグ、印刷完了ページ数、コマンド送信禁止フラグ、およびデータ送信禁止フラグにより構成される。エラーフラグは、プリンタの印刷過程でエラーが検出されたことをしめす。印刷完了ページ数は、印刷が正常に終了したページ数を示す。コマンド送信禁止フラグは、プリンタ106が画像データ以外のコマンドすなわちページ開始コマンド、ページ終了コマンドを受信することができないことを示す。データ送信禁止フラグは、プリンタ106が、画像データを受信することができないことを示す。
【００３２】
ステップS304では、受信したステータスのエラーフラグが1であるかどうかを判定する。エラーフラグが１である場合は、印刷エラーが発生しているので、エラー終了する。エラーフラグが0である場合は、ステップS305に進む。
【００３３】
ステップS305では、受信したステータスの印刷完了ページ数が、総ページ数に等しいかを判定する。印刷完了ページ数が総ページ数と等しい場合は、全てのページの印刷が正常に終了したので、ステップS306に進む。印刷完了ページ数が総ページ数と等しくない場合は、全てのページの印刷が正常に終了していないので、ステップS310に進む。
【００３４】
ステップS306では、Job後キャリブレーションフラグが立っているかどうか判断する。Job後キャリブレーションフラグが立っている場合は、ステップS307に進み、たっていない場合は、ステップS308に進む。ステップS307では、キャリブレーション実行コマンドをプリンタに送信し、ステップS308に進む。ステップS308では、ジョブ後クリーニングフラグが立っているかを判別する。ジョブ後クリーニングフラグがたっている場合はステップS309に進み、たっていない場合は、正常終了する。ステップS309でクリーニング実行コマンドをプリンタに送信し、処理を終了する。
【００３５】
ステップS310では、出力済みページ数が総ページ数に等しいかを判定する。出力済みページ数が総ページ数と等しい場合は、全てのページの送信が終了しているので、ステップS302に戻る。出力済みページ数が総ページ数と等しくない場合はステップS311に進む。
【００３６】
ステップS311では、これから送信しようとするコマンドが画像データコマンドであるか判定する。これから送信しようとするコマンドが画像データコマンドでない場合は、ステップS312に進む。
【００３７】
ステップS312では、受信したステータスのコマンド送信禁止フラグが1であるかを判定する。コマンド送信禁止フラグが1の場合は、画像データコマンド以外のコマンド送信が禁止されているのでステップS302に戻る。コマンド送信禁止フラグが0の場合は、画像データコマンド以外のコマンドの送信が許可されているのでステップS313に進む。
【００３８】
ステップS313では、これから送信しようとしているコマンドがJob開始コマンドであるかを判別する。Job開始コマンドであると判定された場合は、ステップS314に進む。それ以外のコマンドであれば、ステップS320に進む。
【００３９】
ステップS314では、Job前クリーニングフラグまたは、Job前キャリブレーションフラグが立っているか判別する。フラグが立っている場合は、ステップS315に進み、立っていない場合はステップS319に進む。ステップS315では、Job前クリーニングフラグが立っているかどうかを判別する。Job前クリーニングフラグが立っている場合は、ステップS316に進み、立っていない場合は、S317に進む。ステップS316では、クリーニング実行コマンドを送信し、Job前クリーニングフラグを落とす。ステップS317では、Job前キャリブレーションフラグが立っているかどうかを判別する。Job前キャリブレーションフラグが立っている場合は、ステップS318に進み、立っていない場合はステップS302に戻る。ステップS318では、キャリブレーション実行コマンドをプリンタに送信し、Job前キャリブレーションフラグを落とす。ステップS319では、Job開始コマンドを送信し、ステップS302に戻る。
【００４０】
ステップS320では、これから送信しようとしているコマンドがデータ開始コマンドであるかを判定する。データ開始コマンドであると判定された場合は、ステップS321に進む。それ以外のコマンドであれば、ステップS323に進む。
【００４１】
ステップS321では、1つのコマンドを送信する。ステップS322では、データ開始と同時にエンジンに印刷開始を指示するため、印刷開始コマンドを送信する。
【００４２】
ステップS323では、1つのコマンドを送信する。
【００４３】
ステップS324では、現在出力中のページのブロックを全て送信したかを判定する。現在出力中のページに未送信のブロックがある場合は、ステップS302に戻る。現在出力中のページのブロックを全て送信した場合は、ステップS325に進み、出力済みページ数に1を加算し、ステップS302に戻る。
【００４４】
ステップS311において、画像データコマンドであると判断された場合は、ステップS326に進む。ステップS326では、受信したステータスのデータ送信禁止フラグが１であるかを判定する。プリンタは受信バッファがフルになった場合にデータ送信禁止フラグを１にする。データ送信禁止フラグが1の場合は、画像データの送信が禁止されているのでステップS327に進む。データ送信禁止フラグが０の場合は、画像データの送信が許可されているので、ステップS328に進む。ステップS328では、画像データを1ブロック送信し、ステップS302に戻る。
【００４５】
ステップS326においてデータ送信禁止フラグが1であると判定された場合はステップS327に進む。データ送信禁止フラグが1であるということは、その時すでに、プリンタ側のバッファがフルであるということであるので、これ以上画像データを転送することが出来ないので、印刷開始コマンドを送信する。
【００４６】
図４はプリンタの動作を示すフローチャートである。以下、フローチャートを用いて詳細に説明する。図4は、プリンタ１０６の制御回路31によって実行されるプリンタ受信処理を示す。ワーク領域として、キャリブレーションタイマー、クリーニングタイマー、電源ON時キャリブレーションフラグ、電源ON時クリーニングフラグキャリブレーション印刷完了ページ、クリーニング印刷完了ページを使用する。初期値は0である。
【００４７】
まず、起動すると、ステップS401で、不揮発性の記憶領域にある設定値をワーク領域に読み出す。ステップS402では、電源ON時にキャリブレーションするかを判別する。電源ON時キャリブレーションフラグがたっていればキャリブレーションを行うと判断し、ステップS403に進む。立っていない場合は、ステップS404に進む。ステップS403でエンジンのキャリブレーションを実行する。ステップS404では、電源ON時にクリーニングを行うかどうかを判別する。電源ON時クリーニングフラグが立っていれば、クリーニングを行うと判断し、ステップS405に進み、立っていない場合は、ステップS406に進む。ステップS405では、エンジンのクリーニングを行う。
【００４８】
ステップS406では、タイマーをスタートさせる。タイマーはキャリブレーションタイマーとクリーニングタイマーがあり、それぞれ計測する。
【００４９】
ステップS407では、キャリブレーション設定時間が0であるかを判別する。0の場合は、一定時間毎にキャリブレーションは行わないので、ステップS411に進む。0以外の場合は、ステップS408に進む。ステップS408では、キャリブレーションタイマーがキャリブレーション設定時間より大きいかどうかを判別する。小さい場合は、まだ設定時間に達していないので、ステップS411に進む。大きい場合は、ステップS409に進む。ステップS409では、エンジンのキャリブレーションを実行する。ステップS410にて、キャリブレーションタイマーを0にリセットする。
【００５０】
ステップS411では、クリーニング設定時間が0であるかを判別する。0の場合は、一定時間毎にクリーニングはおこなわないので、ステップS415に進む。0以外の場合は、ステップS412に進む。ステップS412では、クリーニングタイマーがクリーニング設定時間より大きいかどうかを判別する。小さい場合は、まだ設定時間に達していないので、ステップS415に進む。大きい場合は、ステップS413に進む。ステップS413では、エンジンのクリーニングを実行する。ステップS414にて、クリーニングタイマーを0にリセットする。
【００５１】
ステップS415では、エンジンステータスを取得する。定期的にエンジンステータスを取得することでエンジンのステータスを監視している。ステップS416では、ホストからのデータがあるかどうかを判別する。データがなければステップS407に戻る。ある場合は、ステップS417に進み、データを受信する。ステップS418では、受信したデータがメンテナンス設定コマンドかどうかを判別する。メンテナンス設定コマンドの場合は、ステップS419に進み、それ以外のコマンドの場合は、ステップS420に進む。ステップS419では、メンテナンス設定コマンドに含まれている情報をプリンタの不揮発性記憶領域に書き込む。書き込む情報は、メンテナンスの種類とそのタイミング(Job前、Job後、電源ON時、時間、ページ数)である。Job前、Job後、電源ON時はフラグで、時間とページ数は数値で書き込まれる。書き込み後、ステップS407に戻る。
【００５２】
ステップS420では、受信したコマンドがページ終了コマンドかどうかを判別する。ページ終了コマンドの場合は、ステップS421に進み、それ以外の場合はステップS430に進む。ステップS421では、ページが終了したので、キャリブレーション印刷ページとクリーニング印刷ページに1を加算する。
【００５３】
ステップS422では、キャリブレーション設定ページが0かどうかを判別する。0の場合は一定ページ数毎にキャリブレーションを行う設定ではないので、ステップS426に進む。0以外の場合は、ステップS423に進む。ステップS423では、キャリブレーション印刷完了ページがキャリブレーション設定ページより大きいかどうかを判別する。小さい場合は、まだ設定ページに達していないので、ステップS426に進む。大きい場合は、ステップS424に進む。ステップS424では、エンジンのキャリブレーションを実行する。ステップS425では、キャリブレーション印刷完了ページをリセットする。
【００５４】
ステップS426では、クリーニング設定ページが0かどうかを判別する。0の場合は、一定ページ数毎にクリーニングを行う設定ではないので、ステップS407に戻る。0以外の場合は、ステップS427に巣数。ステップS427では、クリーニング印刷完了ページがクリーニング設定ページより大きいかどうかを判別する。小さい場合は、まだ設定ページに達していないので、ステップS407に戻る。大きい場合は、ステップS428に進む。ステップS428では、エンジンのクリーニングを実行する。ステップS429では、クリーニング印刷完了ページをリセットする。
【００５５】
ステップS430では、受信したコマンドがクリーニング実行コマンドかどうか判別する。クリーニング実行コマンドである場合は、ステップS431に進み、それ以外の場合は、ステップS432に進む。ステップS431では、エンジンのクリーニングを実行する。
【００５６】
ステップS432では、受信したコマンドがキャリブレーション実行コマンドかどうかを判別する。キャリブレーション実行コマンドである場合は、ステップS433に進み、それ以外のコマンドの場合は、ステップS434に進み、そのコマンドの処理を行う。ステップS433では、エンジンのキャリブレーションを行う。
【図面の簡単な説明】
【００５７】
【図１】図1は、本発明に適用可能なシステム構成を示すブロック図である。
【図２】図２は、本発明の実施例を示す印刷システムの構成を説明するブロック図である。
【図３】図３は、送信プログラムにおいて、本発明の印刷処理ルーチンを示すフローチャートである。
【図４】図４は、プリンタにおいて、本発明の処理ルーチンを示すフローチャートである。
【図５】図５は、本発明の実施例におけるメンテナンス設定画面の例である。
【符号の説明】
【００５８】
101  ホストコンピュータ
107  プリンタ
20  アプリケーションプログラム
22  プリンタドライバプログラム
23  送信プログラム
25  通信ポート
30  プリンタ通信ポート
31  制御回路
32  FIFO
33  復号回路
34  シフトレジスタ
35  プリンタエンジン
【図１】
2009020592.tif 000003
【図２】
2009020592.tif 000004
【図３】
2009020592.tif 000005
【図４】
2009020592.tif 000006
【図５】
2009020592.tif 000007