(57)【要約】【課題】１台のマスター印刷装置と１台以上のスレーブ印刷装置から構成される印刷システムにおいて、マスター印刷装置に対する複数の印刷ジョブを複数の印刷装置間で出力画像の均一性を保持しながら効率的にハンドリングする印刷システムを提供する。【解決手段】この印刷システムは、情報処理装置から送られた印刷ジョブを蓄積し、スレーブ印刷装置で印刷実行にかかる印刷ジョブの予測値と、該スレーブ印刷装置のキャリブレーションを行うタイミングに関するキャリブレーションタイミング情報とに基づいて、前記蓄積した印刷ジョブ内の印刷ジョブと、該印刷ジョブを印刷可能なスレーブ印刷装置とを決定し、該スレーブ印刷装置のキャリブレーション情報に基づいて、該印刷ジョブの画像データを生成し、該スレーブ印刷装置に送信するマスター印刷装置と、前記マスター印刷装置から送られた画像データを印刷するスレーブ印刷装置とからなる。【選択図】図２
2006198880.tif 000002
【特許請求の範囲】
【請求項１】
印刷ジョブをマスター印刷装置へ送信する情報処理装置と、前記情報処理装置から送られた印刷ジョブを蓄積し、スレーブ印刷装置で印刷実行にかかる印刷ジョブの予測値と該スレーブ印刷装置のキャリブレーションタイミング情報とに基づいて、前記蓄積した印刷ジョブ内の印刷ジョブと、該印刷ジョブを印刷可能なスレーブ印刷装置とを決定し、該スレーブ印刷装置のキャリブレーション情報に基づいて、該印刷ジョブの画像データを生成し、該スレーブ印刷装置に送信するマスター印刷装置と、自装置のキャリブレーションを行うタイミングに関するキャリブレーションタイミング情報とキャリブレーション情報とを前記マスター印刷装置に送るとともに、前記マスター印刷装置から送られた画像データを印刷するスレーブ印刷装置と、をネットワークで接続したことを特徴とする印刷システム。
【請求項２】
請求項１に記載の印刷システムにおいて、前記スレーブ印刷装置は、前記マスター印刷装置から送られた画像データを印刷完了するまでの間、キャリブレーション実行を行わないことを特徴とする印刷システム。
【請求項３】
請求項１または２に記載の印刷システムにおいて、前記スレーブ印刷装置は、印刷データを生成する画像処理手段を持たない印刷装置であることを特徴とする印刷システム。
【請求項４】
情報処理装置から送られた印刷ジョブを蓄積し、スレーブ印刷装置で印刷実行にかかる印刷ジョブの予測値と、該スレーブ印刷装置のキャリブレーションを行うタイミングに関するキャリブレーションタイミング情報とに基づいて、該蓄積した印刷ジョブ内の印刷ジョブと、該印刷ジョブを印刷可能なスレーブ印刷装置とを決定し、該スレーブ印刷装置のキャリブレーション情報に基づいて、該印刷ジョブに対する画像データを生成して、該スレーブ印刷装置に送信することを特徴とするマスター印刷装置。
【請求項５】
請求項４に記載のマスター印刷装置において、前記蓄積されたすべての印刷ジョブに関して、前記スレーブ印刷装置に印刷ジョブを割り振ったときに、印刷実行中にキャリブレーションが行われてしまうと判断した場合には、該スレーブ印刷装置に印刷ジョブを送らずにキャリブレーションの実行を要求することを特徴とするマスター印刷装置。
【請求項６】
請求項５に記載のマスター印刷装置において、前記スレーブ印刷装置は、前記マスター印刷装置へキャリブレーション情報を通知後から画像データが送られるまでの間に、他の処理を可能にすることを特徴とするマスター印刷装置。
【請求項７】
請求項４、５または６に記載のマスター印刷装置において、前記キャリブレーションタイミング情報は、前回実行時からの印刷枚数、ドラム回転数および経過時間のいずれか、あるいは、組み合わせからなることを特徴とするマスター印刷装置。
【請求項８】
マスター印刷装置では、情報処理装置から送られた印刷ジョブを蓄積し、スレーブ印刷装置で印刷実行にかかる印刷ジョブの予測値と、該スレーブ印刷装置のキャリブレーションを行うタイミングに関するキャリブレーション情報とに基づいて、前記蓄積した印刷ジョブ内の印刷ジョブと、該印刷ジョブを印刷可能なスレーブ印刷装置とを決定し、該スレーブ印刷装置のキャリブレーション情報に基づいて、該印刷ジョブに対する画像データを生成して該スレーブ印刷装置へ送信し、前記スレーブ印刷装置では前記マスター印刷装置から送られた画像データを印刷することを特徴とする印刷方法。
【請求項９】
コンピュータに、請求項１、２または３に記載の印刷システムの機能、または、請求項４乃至７のいずれかに記載のマスター印刷装置の機能を実現させるためのプログラム。
【請求項１０】
コンピュータが読み取り可能な記録媒体であって、請求項９に記載のプログラムを記録したことを特徴とする記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷システム、マスター印刷装置、印刷方法、プログラムおよび記録媒体に関し、複数の印刷装置間での複数の印刷ジョブの効率的なハンドリングに関する。
【背景技術】
【０００２】
一般に、印刷装置は印刷環境の変化や印刷の進行に伴い、印刷結果における出力濃度特性もしくは階調性等の、印刷出力の特性が変化するという問題がある。このような印刷出力特性に関する問題を解決するものとして、一般的には、キャリブレーションを行なうことが知られている。
【０００３】
このキャリブレーションの一つとして、印刷装置において自動的に行なわれるものがある。これは、印刷装置における所定のタイミングで行なわれるものであり、例えば、電子写真方式の印刷装置では、中間転写体などにパッチを形成して、この濃度を光学的に読取り、その読取り結果に基づいて、出力濃度特性にかかるガンマ補正テーブルの内容を更新する処理である。
【０００４】
このキャリブレーション実行の前後では、印刷結果の画像などにおける階調性や濃度自体、また色見などが変化してしまうため、特許文献１では、１ジョブの開始と終了時に、１ジョブの途中で濃度制御を実行しなければならない状況が発生するかどうかを濃度調整実行判断部で判断することによって、可能な限り適正なタイミングで濃度制御を実行するようにしている。これにより、１ジョブ中の最適なタイミングで再調整を行うことにより、１ジョブ中の出力画像の均一性を保持する。
【０００５】
また、特許文献２では、キャリブレーションとして濃度調整実行の指示があると、直ちに濃度調整を実行せず、一つのジョブを実行するごとにそのジョブで印刷される枚数をカウントするとともに、連続するジョブがある場合は、上記カウントによる、上記濃度調整実行の指示があってからの累積枚数が所定のしきい値を超えたか否かを判断する。そして、この判断でしきい値を超えたときに始めて濃度調整を実行する。これにより、印刷装置において印刷ジョブが連続的に実行される場合に、ジョブの途中や各ジョブ間でのキャリブレーションの実行、およびそれによる印刷の中断をできるだけ抑制するとともに、印刷特性の低下を適切に防止することができる。
【特許文献１】特開２０００−１５８９６号公報
【特許文献２】特開２００２−２２９２７８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、これら特許文献１、特許文献２では、各印刷装置の個々に対する方法であり、ホストコンピュータから印刷ジョブを受信するマスター印刷装置とそのマスター印刷装置に登録されたスレーブ印刷装置から構成され、マスター印刷装置に対して送信された複数の印刷ジョブをスレーブ印刷装置に振り分けるような印刷システムにおいては有効でない。
上記の場合、マスター印刷装置に対して複数の印刷ジョブが登録されたとき、各印刷装置（マスターおよびスレーブ）のキャリブレーション実行のタイミングを含め、複数の印刷装置間で効率的なジョブハンドリングを行う必要がある。
【０００７】
本発明は、上記のような実情を考慮してなされたものであって、１台のマスター印刷装置と１台以上のスレーブ印刷装置から構成される印刷システムにおいて、マスター印刷装置に対する複数の印刷ジョブを複数の印刷装置間で出力画像の均一性を保持しながら効率的に印刷ジョブをハンドリングする印刷システム、マスター印刷装置、印刷方法、プログラムおよび記録媒体を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために本発明は、次のような構成とする。
印刷システムは、印刷ジョブをマスター印刷装置へ送信する情報処理装置と、前記情報処理装置から送られた印刷ジョブを蓄積し、該蓄積した印刷ジョブ内でスレーブ印刷装置へ送る印刷ジョブと送信先のスレーブ印刷装置とを決定し、該印刷ジョブに対する画像データを該スレーブ印刷装置のキャリブレーション情報に基づいて生成して送信するマスター印刷装置と、前記マスター印刷装置から送られた画像データを印刷するスレーブ印刷装置とをネットワークで接続している。
【０００９】
スレーブ印刷装置は、自装置のキャリブレーションを行うタイミングに関するキャリブレーションタイミング情報とキャリブレーション情報をマスター印刷装置に送る。
また、マスター印刷装置から送られた画像データについては、印刷完了するまでの間、キャリブレーション実行を行わないようにする。
さらに、マスター印刷装置へキャリブレーション情報を通知後から画像データが送られるまでの間では、他の処理を行うようにしてもよい。
また、このスレーブ印刷装置は、画像データをマスター印刷装置で生成するため、画像データを生成する画像処理手段を持たない印刷装置であってもよい。
【００１０】
マスター印刷装置は、ジョブキューに溜まっている印刷ジョブを順に検索し、登録されているスレーブ印刷装置から次回のキャリブレーションタイミング情報を取得して、このキャリブレーションタイミング情報と、該スレーブ印刷装置で印刷実行にかかる印刷ジョブの予測値とに基づいて、その印刷ジョブが該スレーブ印刷装置で印刷実行途中にキャリブレーションが実行されるか否かを判断し、印刷可能と判断した場合に該スレーブ印刷装置を印刷ジョブの送信先と決定し、該スレーブ印刷装置からキャリブレーション情報を取得し、その取得したキャリブレーション情報をもとに該印刷ジョブに画像処理を行って、該スレーブ印刷装置へ送信する。
【００１１】
しかし、ジョブキュー中のすべての印刷ジョブに関して、スレーブ印刷装置に印刷ジョブを割り振ったときに、印刷実行中にキャリブレーションが行われてしまうと判断した場合には、他のスレーブあるいはマスター自身の印刷装置で印刷を行わせ、このスレーブ印刷装置にはキャリブレーション実行を指示する。
ここで、キャリブレーション情報とは、キャリブレーション実行により更新され、画像処理に使用される各エンジンの出力特性を示す情報である。また、キャリブレーションタイミング情報とは、前回実行時からの印刷枚数、ドラム回転数および経過時間のいずれか、あるいは、組み合わせである。
【００１２】
また、本発明は、上述した構成の印刷システム、マスター印刷装置あるいはスレーブ印刷装置の機能を実行させるためのプログラムまたはそのプログラムを記録したコンピュータ読み取り可能な記録媒体によっても上記課題を解決することができる。
【発明の効果】
【００１３】
本発明によれば、マスター印刷装置に溜まった印刷ジョブの中から、マスター印刷装置あるいはスレーブ印刷装置がキャリブレーション実行条件に達するまでに印刷可能なジョブを選択し、各印刷装置（マスターおよびスレーブ）に印刷ジョブを振り分けることで、印刷ジョブの途中にキャリブレーションが実行されないため、１ジョブ内での出力画像の均一性を保持することができる。
【００１４】
また、印刷実行中にキャリブレーションが実行されると判断した場合には、そのスレーブ印刷装置に対してジョブを割り振らず、そのジョブが割り振られていない時間を利用してキャリブレーションを実行させることが可能になる。
【発明を実施するための最良の形態】
【００１５】
以下、図面を参照して本発明の好適な実施形態について説明する。
＜実施形態１＞
図１は、本発明の実施形態１に係る印刷システムの実現可能なネットワーク構成例を示す図である。図１において、印刷システムは、印刷要求を行うホストコンピュータ１０（複数台可）と、このホストコンピュータ１０からマスターとして指定された１台のマスター印刷装置２０と、このホストコンピュータ１０、あるいは、マスター印刷装置２０によりスレーブとして指定された１台以上のスレーブ印刷装置３０がネットワーク４０に接続される。
【００１６】
図２は、本実施形態１に係る印刷システムのマスター印刷装置２０とスレーブ印刷装置３０の概略構成を示すブロック図である。
ホストコンピュータ１０は、アプリケーションによって開かれたファイルを、プリンタドライバを介してページ記述言語に変換して印刷装置へ送信する。また、プリンタドライバでは、マスター印刷装置２０やスレーブ印刷装置３０の指定を行う。
【００１７】
マスター印刷装置２０は、Ｉ／Ｏ部２１、データ解析部２５、画像生成部２６、記憶部２７、ジョブ制御部２９、スレーブ制御部２２、キャリブレーション判断部２３、キャリブレーション実行部２４、エンジン制御部２８から構成される。
マスター印刷装置２０の指定は、ネットワーク４０に接続されたホストコンピュータ１０上のプリンタドライバから設定する場合や、マスター印刷装置２０のオペレーションパネル上から設定する。
【００１８】
Ｉ／Ｏ部２１は、ホストコンピュータ１０、マスター印刷装置２０およびスレーブ印刷装置３０の間で印刷に必要な情報の送受信を行う。プリンタドライバが生成した印刷データは、ホストコンピュータ１０からマスター印刷装置２０に送信され、マスター印刷装置２０のＩ／Ｏ部２１で受信される。
データ解析部２５は、Ｉ／Ｏ部２１が受信した印刷データの解析を行う。
画像生成部２６は、スレーブ印刷装置３０から取得したキャリブレーション情報（キャリブレーション情報とは、キャリブレーション実行により更新され、画像処理に使用される各エンジンの出力特性を示す情報である。）をもとに画像処理が施され、画像データ（ビットマップデータ）を生成する。
記憶部２７は、Ｉ／Ｏ部２１で受信した印刷データの保存、画像生成部２６で生成された画像データの保存、スレーブ印刷装置３０から受信したスレーブ印刷装置３０のキャリブレーションタイミング情報を保存する。
【００１９】
ジョブ制御部２９は、Ｉ／Ｏ部２１で受信した印刷データをジョブとしてジョブキューで管理し、スレーブ制御部２２と共にジョブの振り分けを行う。ジョブ制御部２９は、データ解析部２５、画像生成部２６、記憶部２７と協調してジョブの実行を行う。
スレーブ制御部２２は、Ｉ／Ｏ部２１を経由してスレーブ印刷装置３０のキャリブレーションタイミング情報を取得し、キャリブレーション判断部２３で印刷ジョブの印刷実行途中にキャリブレーションが実行されるか否かを判断し、その判断をもとにスレーブ印刷装置３０に対してジョブの実行指示あるいはキャリブレーション指示を行う。
【００２０】
キャリブレーション判断部２３は、各印刷装置２０，３０のキャリブレーションタイミング情報をもとにキャリブレーション実行が必要であるかを判断する。
キャリブレーション実行部２４は、キャリブレーション判断部２３が必要であると判断した場合、キャリブレーションを実行する。
エンジン制御部２８は、エンジン各部の制御を行って、ジョブ制御部２９の指示により、記憶部２７に格納された画像データの印刷を実行する。
【００２１】
スレーブ印刷装置３０は、Ｉ／Ｏ部３１、記憶部３７、ジョブ制御部３９、キャリブレーション判断部３３、キャリブレーション実行部３４、エンジン制御部３８から構成され、データ解析部、画像生成部、スレーブ制御部についてはスレーブ印刷装置として機能する場合は特に必要とはしない。但し、この印刷装置がマスター印刷装置として機能する場合には必要となる。
スレーブ印刷装置３０の指定は、ネットワーク４０に接続されたホストコンピュータ１０上のプリンタドライバから設定する場合や、スレーブ印刷装置３０のオペレーションパネル上から設定する。
【００２２】
また、スレーブ印刷装置３０としては、画像生成を行わない（マスター印刷装置２０で生成された画像データを使用する）ため、ホストコンピュータ１０から受信したページ記述言語を解析して印刷データを生成する画像処理手段を持たないような、ビットマップデータを直接受信して印刷する印刷装置であっても構成することが可能となる。
【００２３】
Ｉ／Ｏ部３１は、マスター印刷装置２０とスレーブ印刷装置３０間で印刷に必要な情報の送受信を行う。
記憶部３７は、マスター印刷装置２０から送られた画像データをＩ／Ｏ部３１で受信して保存する。
ジョブ制御部３９は、スレーブ印刷装置３０全体の制御を行う。特に、マスター印刷装置２０からの要求によって、キャリブレーションタイミング情報と、キャリブレーション情報を送信する。
キャリブレーション判断部３３は、スレーブ印刷装置３０のキャリブレーションタイミング情報をもとにキャリブレーション実行が必要であるかを判断する。
キャリブレーション実行部３４は、キャリブレーション判断部３３が必要であると判断した場合、あるいはマスター印刷装置２０から指示された場合、キャリブレーションを実行する。
エンジン制御部３８は、エンジン各部の制御を行って、ジョブ制御部３９の指示により、記憶部３７に格納された画像データから印刷を実行する。
【００２４】
図３は、マスター印刷装置２０の記憶部２７に格納されるキャリブレーションタイミング情報を示す一例であり、図３の例では、２台のスレーブ印刷装置Ａ，Ｂが登録されている。
キャリブレーションタイミング情報は、マスター印刷装置２０の要求でスレーブ印刷装置３０から通知され、マスター印刷装置２０のスレーブ制御部２２により管理される。ここで、複数のスレーブ印刷装置３０を管理している場合、スレーブ印刷装置３０ごとに持つことになる。
【００２５】
１つのスレーブ印刷装置については、印刷枚数、ドラム回転数、経過時間それぞれに対して、キャリブレーションタイミング情報を保有しており、このキャリブレーションタイミング情報は、前回実行時からの累積およびキャリブレーション実行条件（しきい値）とからなっている。ここでは、印刷枚数、ドラム回転数および経過時間のすべてについてキャリブレーションタイミング情報を持つように説明したが、すべてとは限らず適宜選択して使用してもよいし、また、他のキャリブレーションを実行開始するための指標となるデータであれば利用可能である。
【００２６】
前回実行時からの累積は、前回キャリブレーションが実行されてから現在までに何枚印刷されたか、何回転したか、何秒経過したかという情報である。図３の例では、スレーブ印刷装置Ａの前回実行時からの累積は、現在９５０枚、７０００回転、８００００秒であることを示している。
【００２７】
キャリブレーション実行条件（しきい値）は、各スレーブ印刷装置３０ごとに決まっており、キャリブレーションが実行されるための条件である。図３の例では、スレーブ印刷装置Ａは、印刷枚数が１０００枚、ドラム回転数が１００００回転、経過時間が８６４００秒のいずれかに達した場合に、次のキャリブレーションが実行されることを示している。したがって、スレーブ印刷装置Ａでは、あと５０枚、３０００回転、４００秒でキャリブレーションが実行されることになる。
【００２８】
次に、マスター印刷装置２０における印刷ジョブのハンドリングについて説明する。
ここで、マスター印刷装置２０が管理するジョブキューは、例えば、図４に示したように、既に「ジョブ０」を印刷中で、現在ジョブキューに５ジョブが溜まっている。
また、印刷ジョブが実行するのに消費される印刷枚数、ドラム回転回数や実行時間は、スレーブ印刷装置３０から通知された情報をもとにマスター印刷装置２０で予測される。
例えば、このスレーブ印刷装置Ａにおいて、現在マスター印刷装置のジョブキューの先頭ジョブ「ＪＯＢ１」を実行すると、印刷枚数が１００枚、必要なドラム回転数が５００回転、実行時間が３００秒を必要とし、また、「ＪＯＢ２」であれば印刷枚数が４０枚、必要なドラム回転数が２００回転、実行時間が６００秒、「ＪＯＢ３」であれば印刷枚数が１０枚、必要なドラム回転数が５０回転、実行時間が１００秒を必要とする。
また、スレーブ印刷装置３０から取得したキャリブレーションタイミング情報は図３で示した値を用いる。
【００２９】
マスター印刷装置２０が印刷中であるため、まずスレーブ印刷装置Ａへのジョブの振り分けを行う。まず、「ＪＯＢ１」がスレーブ印刷装置Ａで印刷可能かどうかを判断する。図４に示す通り、印刷枚数がしきい値を超えてしまう。「ＪＯＢ２」も同様に、経過時間がしきい値を超えてしまう。次に、「ＪＯＢ３」がスレーブ印刷装置Ａで印刷可能かどうかを判断する。「ＪＯＢ３」は全ての条件がしきい値を超えないため、スレーブ印刷装置Ａのジョブとして振り分けることができる。
また、マスター印刷装置２０に複数のスレーブ印刷装置が登録されている場合には、残りのスレーブ印刷装置に対して同様の処理が行われる。
【００３０】
したがって、図４の例では、残りの「ＪＯＢ１」および「ＪＯＢ２」は、スレーブ印刷装置Ｂではキャリブレーション実行条件のしきい値を超えないため、スレーブ印刷装置Ｂへ振り分けが行われることになる。
以上のような処理を繰り返して、マスター印刷装置２０に溜まった複数のジョブをハンドリングする。
【００３１】
図５は、マスター印刷装置２０における印刷ジョブのハンドリング動作を示すフローチャートである。
ホストコンピュータ１０から印刷ジョブを受信すると、まずマスター印刷装置２０での実行を試みる。マスター印刷装置２０が印刷ジョブ実行中ではなく（ステップＳ５０１のＮＯ）、かつ、キャリブレーション実行中ではない場合（ステップＳ５０２のＮＯ）、その印刷ジョブはマスター印刷装置２０に割り振られ（ステップＳ５０３）、次の残りの印刷ジョブに対する印刷ジョブの割り振りを行うためにステップＳ５０１へ戻る。
【００３２】
一方、マスター印刷装置２０で印刷ジョブ実行中（ステップＳ５０１のＹＥＳ）、あるいはキャリブレーション実行中であれば（ステップＳ５０２のＹＥＳ）、ステップＳ５０４へ進んでスレーブ印刷装置３０に対する印刷ジョブの割り振りを試みる。
しかしながら、スレーブ印刷装置３０がマスター印刷装置２０に登録されていなければ（ステップＳ５０４のＮＯ）、マスター印刷装置２０の印刷ジョブとして割り振られ（ステップＳ５０３）、次の残りの印刷ジョブに対する印刷ジョブの割り振りを行うためにステップＳ５０１へ戻る。
【００３３】
他方、スレーブ印刷装置３０が登録されていれば（ステップＳ５０４のＹＥＳ）、登録されたスレーブ印刷装置３０中からジョブの割り振りを行うスレーブ印刷装置３０を選択し、その選択されたスレーブ印刷装置３０に関するキャリブレーションタイミング情報を取得する（ステップＳ５０５）。
この選択されたスレーブ印刷装置３０が既に印刷ジョブ実行中（ステップＳ５０６のＹＥＳ）、あるいはキャリブレーション実行中であれば（ステップＳ５０７のＹＥＳ）、ステップＳ５０４へ戻り、次に登録されたスレーブ印刷装置３０を選択するようにし、印刷実行可能状態にあるスレーブ印刷装置３０を選択する。
【００３４】
次に、スレーブ印刷装置３０が選択されると、現ジョブに対する予測値（印刷枚数、ドラム回転数、実行時間）を求め（ステップＳ５０８）、選択されたスレーブ印刷装置３０に対してステップＳ５０５で取得したキャリブレーションタイミング情報と、ステップＳ５０８で求めた現ジョブに対する予測値とを比較して（ステップＳ５０９）、現在の印刷ジョブが印刷可能であるか否かを判断する（ステップＳ５１０）。予測値と前回の実行時からの累積を加えた値がキャリブレーション実行条件（しきい値）を超えていないときには、印刷可能であると判断する。
【００３５】
現在の印刷ジョブが印刷可能であると判断した場合（ステップＳ５１０のＹＥＳ）、印刷実行を割り振られたスレーブ印刷装置３０に対して、キャリブレーションロックを要求し（ステップＳ５１１）てから、キャリブレーション情報を要求する（ステップＳ５１２）。
ここで取得したキャリブレーション情報をもとにして画像生成処理を行い、スレーブ印刷装置３０用の画像データ（ビットマップデータ）を生成する（ステップＳ５１３）。
【００３６】
マスター印刷装置２０は、この生成された画像データをスレーブ印刷装置３０に送信し（ステップＳ５１４）、キャリブレーションロックの解除を要求し（ステップＳ５１５）、これで１つの印刷ジョブが終了し、ジョブキュー内の次の印刷ジョブに移行する（ステップＳ５１６）。このあと、スレーブ印刷装置３０を優先して印刷ジョブの割り振りを行う場合には、ステップＳ５０４へ、または、マスター印刷装置２０を優先して印刷ジョブの割り振りを行う場合には、ステップＳ５０１へ進んで、次の印刷ジョブに対する印刷装置を決定する。
【００３７】
一方、現在の印刷ジョブが印刷不可であると判断した場合（ステップＳ５１０のＮＯ）、次の印刷ジョブがジョブキュー内に存在すれば（ステップＳ５１７のＹＥＳ）、次の印刷ジョブを現ジョブとしてステップＳ５０８に戻り、次ジョブに対して同様の処理を繰り返すことで、ジョブキューに溜まっている印刷ジョブの中からそのスレーブ印刷装置において実行できる印刷ジョブを選択することができる。
最終的にジョブキュー内全ての印刷ジョブが印刷不可であれば（ステップＳ５１７のＮＯ）、スレーブ印刷装置３０に対してキャリブレーション実行要求を行い（ステップＳ５１８）、次のスレーブ印刷装置３０あるいはマスター印刷装置２０への印刷ジョブの割り振りを行っている間に、キャリブレーションを実行させておく。
図４の例では、「ＪＯＢ１」と「ＪＯＢ２」に対してステップＳ５０８，Ｓ５０９，Ｓ５１０，Ｓ５１７を１回ずつループし、３回目の「ＪＯＢ３」がステップＳ５１０でこのループを抜けて、３ジョブ目が印刷可能になる。
【００３８】
図６は、スレーブ印刷装置における印刷の動作を示すフローチャートである。
まず、通常ジョブ（通常ジョブとは、プリンタ、コピー、ＦＡＸなど、この印刷装置に対する直接の印刷要求である。）の要求を待ち、要求があれば（ステップＳ６０１のＹＥＳ）、そのジョブを実行し（ステップＳ６０３）、ジョブ実行後、ステップＳ６０１に戻る。
一方、通常ジョブ要求がなければ（ステップＳ６０１のＮＯ）、マスター印刷装置２０から画像データを受信すると（ステップＳ６０２のＹＥＳ）、ステップＳ６１２へ進み、または、画像データを受信していないと（ステップＳ６０２のＮＯ）、ステップＳ６０４へ進む。ここで、マスター印刷装置２０からの印刷ジョブ要求を受けていない状態であれば、画像データ受信はない。
【００３９】
マスター印刷装置２０からキャリブレーションタイミング情報取得要求がなければ（ステップＳ６０４のＮＯ）、ステップＳ６０１へ戻って通常のジョブ待ちに戻る。
一方、マスター印刷装置２０からキャリブレーションタイミング情報取得要求があれば（ステップＳ６０４のＹＥＳ）、マスター印刷装置２０に対してキャリブレーションタイミング情報を通知し（ステップ６０５）、キャリブレーション実行要求があれば（ステップＳ６０６のＹＥＳ）、キャリブレーション実行を行って（ステップＳ６１５）、ステップＳ６０１へ戻って通常のジョブ待ちに戻る。このキャリブレーション実行処理は、図７で後述する。
【００４０】
次に、マスター印刷装置２０からキャリブレーション実行要求がなく（ステップＳ６０６のＮＯ）、キャリブレーションロック要求がなければ（ステップS６０７のＮＯ）、ステップＳ６０１へ戻って通常のジョブ待ちに戻る。
他方、キャリブレーションロック要求があれば（ステップＳ６０７のＹＥＳ）、キャリブレーションをロックし（ステップＳ６０８）、キャリブレーション情報取得要求を待ち、要求が来たら（ステップＳ６０９のＹＥＳ）、キャリブレーション情報をマスター印刷装置２０へ通知する（ステップＳ６１０）。
【００４１】
次に、マスター印刷装置２０からの画像データ受信待ちに入るが（ステップＳ６１１）、受信されない間はステップＳ６０１に戻り、通常のジョブ待ちになる。
ステップＳ６０２あるいはステップＳ６１１で、マスター印刷装置２０から画像データを受信すると、受信した画像データを用いて印刷する（ステップＳ６１２）。
最後に、マスター印刷装置２０からのキャリブレーションロック解除要求を待ち（ステップＳ６１３）、キャリブレーションロック解除要求がなされると（ステップＳ６１３のＹＥＳ）、キャリブレーションロックを解除し（ステップＳ６１４）、スレーブ印刷装置３０の印刷ジョブを終了し、ステップＳ６０１に戻り次の通常のジョブ待ちになる。
【００４２】
図７は、スレーブ印刷装置におけるキャリブレーション実行処理の動作を示すフローチャートである。
スレーブ印刷装置３０のエンジンからキャリブレーション実行要求がなく（ステップＳ７０１のＮＯ）、かつ、マスター印刷装置２０からのキャリブレーション実行要求がなければ（ステップＳ７０２のＮＯ）、ステップＳ７０１に戻り、いずれかの要求が来るまで待つ。
また、スレーブ印刷装置３０のエンジンからキャリブレーション実行要求があるか（ステップＳ７０１のＹＥＳ）、あるいは、マスター印刷装置２０からのキャリブレーション実行要求があれば（ステップＳ７０２のＹＥＳ）、キャリブレーションロック中であればステップＳ７０１まで戻り、要求が来るまで待つ。
【００４３】
一方、キャリブレーションロック中でなければ（ステップＳ７０３のＮＯ）、キャリブレーションを実行し（ステップＳ７０４）、実行後、前回キャリブレーション実行時からの累積印刷枚数、ドラム回転数、経過時間のカウントをクリアし（ステップＳ７０５）、処理を終了する。
【００４４】
以上のように実施形態１を構成することによって、マスター印刷装置に溜まった印刷ジョブの中から、マスター印刷装置あるいはスレーブ印刷装置がキャリブレーション実行条件に達するまでに印刷可能な印刷ジョブを選択し、各印刷装置に印刷ジョブを振り分けることで、印刷ジョブの途中にキャリブレーションが実行されないため、１印刷ジョブ内での出力画像の均一性を保持することができる。
また、マスター印刷装置に溜まった複数の印刷ジョブから、その印刷ジョブの印刷実行に関する予測値とスレーブ印刷装置のキャリブレーションタイミング情報を比較することで、マスター印刷装置に溜まった複数の印刷ジョブからスレーブ印刷装置で印刷可能な印刷ジョブを選択し、振り分けて印刷することができる。
【００４５】
また、マスター印刷装置は、溜まっている印刷ジョブのうち印刷実行中にキャリブレーションが実行されると判断した場合には、そのスレーブ印刷装置に対して印刷ジョブを割り振らずに、印刷ジョブが割り振られていない時間を利用してキャリブレーション実行を要求することによって、印刷装置の出力特性を最適に保つことができる。
【００４６】
また、色にシビアな印刷装置の場合には比較的頻繁にキャリブレーションを行い、色の調整を行うことも考えられるが、キャリブレーションの実行条件として、前回実行時からの印刷枚数、ドラム回転数、経過時間を選択的に指定可能にすることで、システムに要求される条件に合わせることが可能になる。
【００４７】
また、スレーブ印刷装置でキャリブレーションが実行するとキャリブレーション情報は更新されるので、スレーブ印刷装置に印刷ジョブを割り振るときには、キャリブレーションのロックを要求し、キャリブレーション情報を取得した後、キャリブレーション情報を基に印刷データを画像データに生成して、スレーブ印刷装置へ送信し、印刷が終了してからキャリブレーションロックを解除するようにして、色味や濃度が実際とは異なってしまう場合を防ぐことができる。
【００４８】
＜実施形態２＞
上記の実施形態１では、スレーブ印刷装置を選択して、その選択されたスレーブ印刷装置で実行できる印刷ジョブをジョブキュー内から振り分けていた。
本実施形態２は、ジョブキュー内から振り分けを行う印刷ジョブを先に決定し、その印刷ジョブを印刷することができるスレーブ印刷装置を決定するようにした。本実施形態２の構成は図１および図２と同一であるから、相違点のみ説明する。
【００４９】
まず、マスター印刷装置２０における印刷ジョブのハンドリングについて、図８および図９に示す例を用いて説明する。
図８は、図３と同様に、マスター印刷装置２０の記憶部２７に格納される、キャリブレーションタイミング情報（前回実行時からの累積およびキャリブレーション実行条件（しきい値））を示す一例である。
このキャリブレーションタイミング情報は、マスター印刷装置２０の要求でスレーブ印刷装置３０から通知され、マスター印刷装置２０のスレーブ制御部２２により管理される。複数のスレーブ印刷装置３０を管理している場合、スレーブ印刷装置３０ごとにこの情報を持つことになる。
【００５０】
図８では、４台のスレーブ印刷装置Ａ，Ｂ，Ｃ，Ｄが登録された例であり、各スレーブ印刷装置は、印刷枚数、ドラム回転数、経過時間のそれぞれに対して、キャリブレーションタイミング情報を保有している。また、実施形態１と同様に、印刷枚数、ドラム回転数、経過時間のうち適宜持つようにしてもよい。
【００５１】
また、現在対象とする印刷ジョブの実行に使われる予測値は、スレーブ印刷装置３０から通知された情報をもとにマスター印刷装置２０で予測される。図９の例では、このスレーブ印刷装置Ａにおいて、現在マスター印刷装置２０のジョブキューの先頭ジョブ（現在対象としているジョブ）を実行するには、印刷枚数が１００枚、必要なドラム回転数が５００回転、所要時間が３００秒を必要としている。スレーブ印刷装置Ｂでは、印刷枚数が１００枚、必要なドラム回転数が５００回転、所要時間が１０００秒を必要としている。スレーブ印刷装置Ｃでは、印刷枚数が１００枚、必要なドラム回転数が５００回転、所要時間が３００秒を必要としている。
【００５２】
前回実行時からの累積は、前回キャリブレーションが実行されてから現在までに何枚印刷されたか、何回転したか、何秒経過したかという情報である。図８の例では、スレーブ印刷装置Ａの前回実行時からの累積は、現在９５０枚、７０００回転、８６０００秒であることを示している。同様に、スレーブ印刷装置Ｂは、現在１００枚、１０００回転、３５８００秒、スレーブ印刷装置Ｃは、現在１００枚、１０００回転、１００００秒であることを示している。
【００５３】
キャリブレーション実行条件（しきい値）は、各スレーブ印刷装置ごとに決まっており、キャリブレーションが実行されるための条件である。図８の例では、スレーブ印刷装置Ａは、印刷枚数が１０００枚、ドラム回転数が１００００回転、経過時間が８６４００秒に達した場合に、次のキャリブレーションが実行されることを示している。同様に、スレーブ印刷装置Ｂは印刷枚数が５００枚、ドラム回転数が５０００回転、経過時間が３６０００秒、スレーブ印刷装置Ｃは、印刷枚数が１０００枚、ドラム回転数が１００００回転、経過時間が８６４００秒である。
【００５４】
以上の情報により、スレーブ印刷装置Ａでは、あと５０枚、３０００回転、６４００秒でキャリブレーションが実行されることが分かる。同様に、スレーブ印刷装置Ｂでは、あと４００枚、４０００回転、２００秒、スレーブ印刷装置Ｃでは、あと９００枚、９０００回転、７６４００秒でキャリブレーションが実行される。
【００５５】
次に、マスター印刷装置２０における印刷ジョブのハンドリングについて説明する。
ここで、マスター印刷装置２０が管理するジョブキューは、例えば、図９に示したように、既に「ジョブ０」を印刷中で、現在ジョブキューに３ジョブ（ＪＯＢ１，ＪＯＢ２，ＪＯＢ３）が溜まっている。
また、スレーブ印刷装置３０から取得したキャリブレーションタイミング情報および現ジョブの予測値は図８で示した値を用いる。
【００５６】
マスター印刷装置２０が「ＪＯＢ０」を印刷中であるため、まず「ＪＯＢ１」をスレーブ印刷装置に振り分けるために、「ＪＯＢ１」がスレーブ印刷装置Ａで印刷可能かどうかを判断する。図９に示す通り、印刷枚数がしきい値を超えてしまうため、「ＪＯＢ１」をスレーブ印刷装置Ａに振り分けることはできない。
次に、同様にして、スレーブ印刷装置Ｂで印刷可能かどうかを判断すると、経過時間がしきい値を超えてしまう。また、スレーブ印刷装置Ｃで印刷可能かどうかを判断すると、全ての条件がしきい値を超えないため、「ＪＯＢ１」はスレーブ印刷装置Ｃに振り分けられる。
以降、「ＪＯＢ２」、「ＪＯＢ３」と順番に同様の処理を繰り返すことで、マスター印刷装置に溜まった複数の印刷ジョブをハンドリングする。
【００５７】
図１０は、マスター印刷装置２０における印刷ジョブのハンドリングの動作を示すフローチャートである。
まず、ジョブキューに積まれた先頭の印刷ジョブを検索し（ステップＳ１００１）、印刷ジョブが登録されていなければ（ステップＳ１００２のＮＯ）、現在要求された印刷ジョブが存在しないため終了となる。
一方、印刷ジョブが登録されていれば（ステップＳ１００２のＹＥＳ）、その印刷ジョブを現在対象とする印刷ジョブに設定する（ステップＳ１００３）。
【００５８】
まず、マスター印刷装置２０が印刷ジョブ実行中ではなく（ステップＳ１００４のＮＯ）、かつ、キャリブレーション実行中ではない場合（ステップＳ１００５のＮＯ）、その印刷ジョブはマスター印刷装置２０に割り振られて印刷され（ステップＳ１００６）、現ジョブを終了させてジョブキューからはずし（ステップＳ１０２２）、ステップＳ１００１に戻り、次の印刷ジョブの割り振りを行う。
【００５９】
また、マスター印刷装置２０で印刷ジョブ実行中（ステップＳ１００４のＹＥＳ）、あるいは、キャリブレーション実行中であれば（ステップＳ１００５のＹＥＳ）、スレーブ印刷装置に対する印刷ジョブの割り振りを試みる。
マスター印刷装置２０が管理するスレーブ印刷装置を検索し（ステップＳ１００７）、スレーブ印刷装置が存在しなければ（ステップＳ１００８のＮＯ）、ステップＳ１００１に戻り、次の印刷ジョブの割り振りを行う。
一方、スレーブ印刷装置が存在すれば（ステップＳ１００８のＹＥＳ）、そのスレーブ印刷装置を候補として設定し（ステップＳ１００９）、そのスレーブ印刷装置のキャリブレーションタイミング情報を取得する（ステップＳ１０１０）。
【００６０】
既にそのスレーブ印刷装置が印刷ジョブ実行中（ステップＳ１０１１のＹＥＳ）、あるいは、キャリブレーション実行中であれば（ステップＳ１０１２のＹＥＳ）、ステップＳ１００７に戻り、次のスレーブ印刷装置を検索する。
他方、そのスレーブ印刷装置が印刷ジョブ実行中でなく（ステップＳ１０１１のＮＯ）、かつ、キャリブレーション実行中でなければ（ステップＳ１０１２のＮＯ）、現ジョブに対する予測値（印刷枚数、ドラム回転数、実行時間）を求め（ステップＳ１０１３）、ステップＳ１０１０で取得したキャリブレーションタイミング情報とステップＳ１０１３で求めた予測値を比較する（ステップＳ１０１４）。
【００６１】
現在のジョブが印刷可能であると判断した場合（ステップＳ１０１５のＹＥＳ）、スレーブ印刷装置に対してキャリブレーションロックを要求してから（ステップＳ１０１７）、キャリブレーション情報の取得要求を行う（ステップＳ１０１８）。
スレーブ印刷装置から取得したキャリブレーション情報をもとにして画像生成処理を行ってスレーブ印刷装置用の画像データ（ビットマップデータ）を生成し（ステップＳ１０１９）、この画像データをスレーブ印刷装置に送信し（ステップＳ１０２０）、スレーブ印刷装置に対してキャリブレーションロック解除を要求し（ステップＳ１０２１）、現ジョブを終了してジョブキューからはずし（ステップＳ１０２３）、ステップＳ１００１に戻り、次に印刷ジョブの割り振りを行う。
【００６２】
また、スレーブ印刷装置で現在の印刷ジョブが印刷不可であると判断した場合（ステップＳ１０１５のＮＯ）、そのスレーブ印刷装置に対してキャリブレーション実行指示を行っておき（ステップＳ１０１６）、ステップＳ１００７に戻り、他のスレーブ印刷装置での印刷可能性を試みる。
【００６３】
本発明は、上述した実施形態のみに限定されたものではない。上述した実施形態を構成する各機能をそれぞれプログラム化して、予め記録媒体に書き込んでおき、この記録媒体に記録されたこれらのプログラムをメモリあるいは記憶装置に格納し、それを実行することによって、本発明の目的が達成されることは言うまでもない。この場合、記録媒体から読み出されたプログラム自体が上述した実施形態の機能を実現することになり、そのプログラムおよびそのプログラムを記録した記録媒体も本発明を構成することになる。
また、上記プログラムは、そのプログラムの指示に基づき、オペレーティングシステムあるいは他のアプリケーションプログラム等と共同して処理することによって上述した実施形態の機能が実現される場合も含まれる。
【００６４】
なお、上述した実施形態の機能を実現するプログラムは、ディスク系（例えば、磁気ディスク、光ディスク等）、カード系（例えば、メモリカード、光カード等）、半導体メモリ系（例えば、ＲＯＭ、不揮発性メモリ等）、テープ系（例えば、磁気テープ、カセットテープ等）等のいずれの形態の記録媒体で提供されてもよい。あるいは、ネットワークを介して記憶装置に格納されたプログラムをサーバコンピュータから直接供給を受けるようにしてもよい。この場合、このサーバコンピュータの記憶装置も本発明の記録媒体に含まれる。
このように、上述した実施形態の機能をプログラム化して流通させることによって、コストの低廉化、および可搬性や汎用性を向上させることができる。
【図面の簡単な説明】
【００６５】
【図１】本発明の実施形態１に係る印刷システムの実現可能なネットワーク構成例を示す図である。
【図２】実施形態１に係る印刷システムのマスター印刷装置とスレーブ印刷装置の概略構成を示すブロック図である。
【図３】実施形態１に係るマスター印刷装置の記憶部に格納されるキャリブレーションタイミング情報を示す一例である。
【図４】実施形態１に係るマスター印刷装置が管理するジョブキューを示す例である。
【図５】実施形態１に係るマスター印刷装置における印刷ジョブのハンドリング動作を示すフローチャートである。
【図６】実施形態１に係るスレーブ印刷装置における印刷の動作を示すフローチャートである。
【図７】実施形態１に係るスレーブ印刷装置におけるキャリブレーション実行処理の動作を示すフローチャートである。
【図８】実施形態２に係るマスター印刷装置の記憶部に格納されるキャリブレーションタイミング情報を示す一例である。
【図９】実施形態２に係るマスター印刷装置が管理するジョブキューを示す例である。
【図１０】実施形態２に係るマスター印刷装置における印刷ジョブのハンドリングの動作を示すフローチャートである。
【符号の説明】
【００６６】
１０…ホストコンピュータ、２０…マスター印刷装置、２１…Ｉ／Ｏ部、２２…スレーブ制御部、２３…キャリブレーション判断部、２４…キャリブレーション実行部、２５…データ解析部、２６…画像生成部、２７…記憶部、２８…エンジン制御部、２９…ジョブ制御部、３０…スレーブ印刷装置、３１…Ｉ／Ｏ部、３３…キャリブレーション判断部、３４…キャリブレーション実行部、３７…記憶部、３８…エンジン制御部、３９…ジョブ制御部、４０…ネットワーク。
【図１】
2006198880.tif 000003
【図２】
2006198880.tif 000004
【図３】
2006198880.tif 000005
【図４】
2006198880.tif 000006
【図５】
2006198880.tif 000007
【図６】
2006198880.tif 000008
【図７】
2006198880.tif 000009
【図８】
2006198880.tif 000010
【図９】
2006198880.tif 000011
【図１０】
2006198880.tif 000012