【実施例1】
【0017】
上記した本発明の一実施の形態についてさらに詳細に説明すべく、本発明の第1の実施例に係る分散印刷制御プログラム、分散印刷制御装置及び分散印刷制御方法について、
図1乃至
図15を参照して説明する。
図1及び
図2は、本実施例の分散印刷システムの構成を示す模式図であり、
図3乃至
図5は、各々、クライアント端末、分散印刷制御装置、画像形成装置の構成を示すブロック図である。また、
図6は、本実施例の分散印刷制御装置の概略動作を示す模式図であり、
図7乃至
図9は、本実施例の分散印刷制御装置の処理を示すフローチャート図である。また、
図10乃至
図15は、信頼度に基づくペア決定方法を説明する図である。
【0018】
図1に示すように、本実施例の分散印刷システム10は、クライアント端末20、分散印刷制御装置30、印刷ジョブを分散して処理する複数の画像形成装置40(ここでは画像形成装置40a〜40d)などで構成される。これらはイーサネット(登録商標)、トークンリング、FDDI(Fiber-Distributed Data Interface)等の規格により定められるLAN(Local Area Network)やWAN(Wide Area Network)等の通信ネットワーク50を介して接続されている。なお、
図1では、複数の画像形成装置40として4台の画像形成装置40を例示しているが、画像形成装置40は2台以上であればよく、偶数台としてもよいし、
図2に示すように奇数台(ここでは画像形成装置40a〜40c)としてもよい。以下、各装置について説明する。
【0019】
[クライアント端末]
クライアント端末20は、パーソナルコンピュータなどのコンピュータ装置、スマートフォンやタブレットなどの携帯端末などであり、分散印刷制御装置30に印刷ジョブを送信する。このクライアント端末20は、
図3(a)に示すように、制御部21、記憶部25、ネットワークI/F部26、表示部27、操作部28などで構成される。
【0020】
制御部21は、CPU(Central Processing Unit)22とROM(Read Only Memory)23やRAM(Random Access Memory)24などのメモリとで構成され、CPU22は、ROM23や記憶部25に記憶した制御プログラムをRAM24に展開して実行することにより、クライアント端末20全体の動作を制御する。また、
図3(b)に示すように、上記制御部21(CPU22)により、OS(Operating System)21a、文書作成アプリケーション21b、プリンタドライバ21cなどが実行される。
【0021】
OS21aは、Windows(登録商標)やMac OS(登録商標)、Android(登録商標)、iOS(登録商標)などであり、クライアント端末20で文書作成アプリケーション21bやプリンタドライバ21cを動作可能にする。
【0022】
文書作成アプリケーション21bは、文章作成や表計算、画像加工などを行うソフトウェアであり、印刷指示の際にプリンタドライバ21cを読み出し、文書作成アプリケーション21bで作成した原稿データをプリンタドライバ21cに転送する。
【0023】
プリンタドライバ21cは、文書作成アプリケーション21bで作成した原稿データを、分散印刷制御装置30が解釈可能な言語の印刷ジョブ(PJL(Printer Job Language)やPS(PostScript)、PCL(Printer Control Language)等のページ記述言語で記述されたPDL(Page Description Language)データ、または、PDF(Portable Document Format)データ)に変換する。この印刷ジョブには、プリンタドライバ21cの印刷設定画面で設定された印刷設定情報(例えば、JDF(Job Definition Format)のプリントチケット)が付加されている。
【0024】
記憶部25は、HDD(Hard Disk Drive)やSSD(Solid State Drive)などで構成され、CPU22が各部を制御するためのプログラム、自装置の処理機能に関する情報、文書作成アプリケーション21bが作成した原稿データ、プリンタドライバ21cが作成した印刷ジョブなどを記憶する。
【0025】
ネットワークI/F部26は、NIC(Network Interface Card)やモデムなどで構成され、クライアント端末20を通信ネットワーク50に接続し、分散印刷制御装置30に印刷ジョブを送信する。
【0026】
表示部27は、液晶表示装置(LCD:Liquid Crystal Display)や有機EL(electroluminescence)表示装置などで構成され、文書作成アプリケーション21bの原稿作成画面、プリンタドライバ21cの印刷設定画面などを表示する。
【0027】
操作部28は、マウスやキーボードなどで構成され、文書作成アプリケーション21bを用いた原稿の作成、プリンタドライバ21cを用いた印刷条件の設定などの操作を可能にする。
【0028】
なお、上記では、プリンタドライバ21cが印刷ジョブを生成する構成としているが、文書作成アプリケーション21bがダイレクトプリント可能なPDFやXPS(XML Paper Specification)、OOXML(Office Open XML)の原稿データを作成可能な場合は、プリンタドライバ21cを介さずに、文書作成アプリケーション21bが作成した原稿データを印刷ジョブとして送信してもよい。
【0029】
[分散印刷制御装置]
分散印刷制御装置30は、複数の画像形成装置40を制御するサーバなどである。この分散印刷制御装置30は、
図4(a)に示すように、制御部31、記憶部35、ネットワークI/F部36、画像生成部37、必要に応じて、表示部及び操作部などで構成される。また、分散印刷制御装置30は、複数の画像形成装置40を一群の画像形成装置として予め設定して管理し、分散印刷を指示する。
【0030】
制御部31は、CPU32とROM33やRAM34などのメモリとで構成され、CPU32は、ROM33や記憶部35に記憶した制御プログラムをRAM34に展開して実行することにより、分散印刷制御装置30全体の動作を制御する。上記制御部31は、
図4(b)に示すように、印刷ジョブ受信部31a、ステータス取得部31b、ペア決定部31c、装置管理部31d、分割部31e、印刷指示部31f、印刷用データ送信部31gなどとして機能する。
【0031】
印刷ジョブ受信部31aは、ネットワークI/F部36を介して、クライアント端末20から印刷ジョブを受信する。
【0032】
ステータス取得部31bは、ネットワークI/F部36を介して、複数の画像形成装置40からジャムや用紙切れ、トナー切れなどにより過去に印刷を中断した回数(単位印刷当たりの中断回数、以下、単に中断回数と呼ぶ。)、印刷速度などのステータス情報を受信して、装置管理部31dに通知する。なお、上記ステータス情報は、各々の画像形成装置40が分散印刷制御装置30からの要求に応じて送信する構成としてもよいし、ステータス取得部31bがMIB(Management Information Base)情報からステータス情報を取得する構成としてもよい。
【0033】
ペア決定部31cは、装置管理部31dからステータス情報を取得し、単位印刷当たりの中断回数が少ない画像形成装置40は分散印刷の途中で印刷を中断する可能性が低い(信頼性が高い)ことから、中断回数に基づいて信頼度を設定する。そして、設定した信頼度に基づいて、複数の画像形成装置40を信頼度が相対的に高いグループと信頼度が相対的に低いグループとに分類し、各々のグループから画像形成装置40を順次選択(信頼度のばらつきや印刷速度のばらつきが小さい組み合わせとなる画像形成装置40を選択)してペアを決定し、ペア情報を装置管理部31dに通知する。その際、ペア決定部31cは、ステータス情報に基づいて、通信ネットワーク50に接続された画像形成装置40の台数が偶数であるか奇数であるかを判断し、画像形成装置40の台数が奇数の場合は、中断回数が最も少ない画像形成装置40を単体に設定する。また、中断回数が最も少ない(信頼度が最も高い)画像形成装置40でも、その中断回数が予め定めた閾値を超える(信頼度が予め設定した閾値を超えない)場合は、単体で動作させると印刷処理が中断する恐れがあるため、中断回数が最も多い(信頼度が最も低い)画像形成装置40を分散印刷対象から除外する。
【0034】
装置管理部31dは、ステータス取得部31bから通知されたステータス情報とペア決定部31cから通知されたペア情報とに基づいて、各々のペア(又は各々のペアの各々の画像形成装置40)に対する印刷ジョブの分割の割合を設定し、分割の割合情報を分割部31eに通知する。そして、印刷速度や送信先、中断回数などの画像形成装置情報、印刷ジョブの分割の割合情報、ペア情報、フェイスアップ/フェイスダウン、昇順/降順などの印刷ページ順などの管理情報を記憶部35などに保存して管理する。
【0035】
分割部31eは、装置管理部31dから通知された印刷ジョブの分割の割合情報に基づいて、画像生成部37で生成したページ毎の画像データを、各々のペア(又は各々のペアの各々の画像形成装置40)に対応するページ数の画像データ群に分割する。そして、分割した画像データ群を記憶部35などに保存すると共に、各々の画像データ群のページ情報と記憶部35における保存先情報とを印刷指示部31fに通知する。
【0036】
印刷指示部31fは、装置管理部31dが管理する管理情報に基づいて、各々の画像形成装置40に対応する印刷指示情報(画像形成装置40の送信先、フェイスアップ/フェイスダウン、昇順/降順などの印刷条件を規定する情報)を作成し、作成した印刷指示情報と記憶部35に保存した画像データ群とを関連付けて、画像形成装置40毎の印刷用データを作成する。例えば、100ページの印刷ジョブを4台の画像形成装置40に分散印刷させる場合において、ペア1に1〜60ページを印刷させ、ペア2に61〜100ページを印刷させる場合は、ペア1の一方の画像形成装置40にはフェイスダウンで1ページ目から昇順に所定ページ数の印刷を指示する印刷用データを作成し、ペア1の他方の画像形成装置40には60ページ目からフェイスアップで降順に(60ページ−所定ページ数)の印刷を指示する印刷用データを作成する。また、ペア2の一方の画像形成装置40にはフェイスダウンで61ページ目から昇順に所定ページ数の印刷を指示する印刷用データを作成し、ペア2の他方の画像形成装置40には100ページ目からフェイスアップで降順に(40ページ−所定ページ数)の印刷を指示する印刷用データを作成する。その際、各ペアを構成する各々の画像形成装置40に対して、その画像形成装置40に割り当てられたページ数の画像データとそのページ数のページの印刷を指示する印刷指示情報とを関連付けた印刷用データを作成してもよいし、その画像形成装置40を含むペアに割り当てられたページ数の画像データとその画像形成装置40に割り当てられたページ数のページの印刷を指示する印刷指示情報とを関連付けた印刷用データを作成してもよい。
【0037】
印刷用データ送信部31gは、ネットワークI/F部36を介して、各々の画像形成装置40に、対応する印刷用データを送信する。また、印刷用データ送信部31gは、ペアを構成する一方の画像形成装置40の印刷処理が中断した場合は、ペアを構成する他方の画像形成装置40に対して、一方の画像形成装置40が印刷できないページの印刷用データを送信する。その際、各ペアを構成する各々の画像形成装置40に対して、その画像形成装置40を含むペアに割り当てられたページ数の画像データとその画像形成装置40に割り当てられたページ数のページの印刷を指示する印刷指示情報とを関連付けた印刷用データを送信している場合は、一方の画像形成装置40が印刷できないページの印刷を指示する印刷指示情報を送信すればよい。
【0038】
なお、上記印刷ジョブ受信部31a、ステータス取得部31b、ペア決定部31c、装置管理部31d、分割部31e、印刷指示部31f、印刷用データ送信部31gは、ハードウェアとして構成してもよいし、制御部31を印刷ジョブ受信部31a、ステータス取得部31b、ペア決定部31c、装置管理部31d、分割部31e、印刷指示部31f、印刷用データ送信部31gとして機能させる分散印刷制御プログラムとして構成し、当該分散印刷制御プログラムをCPU32に実行させるようにしてもよい。
【0039】
記憶部35は、HDDやSSDなどで構成され、CPU32が各部を制御するためのプログラム、クライアント端末20から受信した印刷ジョブ、装置管理部31dが管理する管理情報などを保存する。また、記憶部35は、分割画像保存部として機能し、分割部31eが分割した画像データ群などを保存する。
【0040】
ネットワークI/F部36は、NICやモデムなどで構成され、分散印刷制御装置30を通信ネットワーク50に接続し、クライアント端末20から印刷ジョブを受信したり、画像形成装置40からステータス情報を受信したり、画像形成装置40に印刷用データを送信したりする。
【0041】
画像生成部37は、RIP(Raster Image Processor)として機能し、クライアント端末20から受信した印刷ジョブを翻訳して中間データを生成し、レンダリングを行ってビットマップ形式の画像データを生成する(この一連の処理をRIP処理と呼ぶ。)。
【0042】
[画像形成装置]
画像形成装置40は、MFP(Multi-Functional Peripherals)などであり、分散印刷制御装置30から受信した印刷用データに基づいて印刷処理を実行する。なお、分散印刷システム10に含まれる複数の画像形成装置40は、一定の印刷速度で印刷する(印刷中に印刷速度は変化しない)ものとする。また、分散印刷システム10に含まれる複数の画像形成装置40は群で管理可能であり、同じ群に属する画像形成装置40を本実施例の分散印刷制御の対象とすることができる。この画像形成装置40は、
図5に示すように、制御部41、記憶部45、ネットワークI/F部46、表示操作部47、画像処理部48、印刷処理部49などで構成される。
【0043】
制御部41は、CPU42とROM43やRAM44などのメモリとで構成され、CPU42は、ROM43や記憶部45に記憶した制御プログラムをRAM44に展開して実行することにより、画像形成装置40全体の動作を制御する。
【0044】
記憶部45は、HDDやSSDなどで構成され、CPU42が各部を制御するためのプログラム、自装置の処理機能に関する情報などを記憶する。また、記憶部45は、デバイスキューを備え、制御部41の指示に従ってデバイスキューに分散印刷制御装置30から受信した印刷用データに含まれる画像データ群を格納する。このデバイスキューは、画像データを先入れ先出しのリスト構造で保持するものであり、先に格納した印刷用データから順に画像処理部48及び印刷処理部49によって処理される。
【0045】
ネットワークI/F部46は、NICやモデムなどで構成され、画像形成装置40を通信ネットワーク50に接続し、分散印刷制御装置30から印刷用データを受信したり、分散印刷制御装置30にステータス情報を送信したりする。
【0046】
表示操作部47は、表示部上に透明電極が格子状に配置された感圧式の操作部(タッチセンサ)を設けたタッチパネルなどであり、印刷処理に関する各種画面を表示し、印刷に関する各種操作を可能にする。
【0047】
画像処理部48は、必要に応じて、印刷用データに含まれる画像データ群に対して、スクリーン処理、階調補正、濃度バランス調整、細線化、網点処理などを行い、画像処理後の画像データを印刷処理部49に出力する。
【0048】
印刷処理部49は、画像データに基づいて印刷処理を実行する。この印刷処理部49は、画像データに基づいてレーザ光を照射して露光する露光部と、感光体ドラムと現像部と帯電部と感光体クリーニング部と1次転写ローラとを備え、CMYKの各色のトナー像を形成する画像形成部と、ローラによって回転され、画像形成部で形成されたトナー像を用紙に搬送する中間転写体として機能する中間ベルトと、中間ベルト上に形成されたトナー像を用紙に転写する2次転写ローラと、用紙に転写されたトナー像を定着させる定着部と、用紙を搬送する給紙ローラやレジストローラ、ループローラ、反転ローラ、排紙ローラ等の搬送部などで構成される。
【0049】
なお、
図1乃至
図5は、本実施例の分散印刷システム10の一例であり、本実施例の分散印刷制御が実施可能な限りにおいて、各装置の構成や制御は適宜変更可能である。例えば、
図4では、分散印刷制御装置30に画像生成部37を設けたが、制御部31の分割部31eに画像生成部としての機能(RIP)を設け、分割部31eが印刷ジョブからページ毎の画像データを生成してもよく、その場合は画像生成部37を省略することができる。
【0050】
次に、上記構成の分散印刷制御装置30の概略動作について、
図6の模式図を参照して説明する。
【0051】
ステータス取得部31bは、外部の画像形成装置40からステータス情報を受信し、装置管理部31dに通知する。また、ペア決定部31cは、装置管理部31dからステータス情報を取得し、取得したステータス情報(中断回数や印刷速度)に基づいて画像形成装置40のペアを決定し、装置管理部31dにペア情報を通知する。そして、装置管理部31dは、ステータス情報とペア情報とに基づいて印刷ジョブの分割の割合を設定し、分割部31eに分割の割合情報を通知し、印刷速度や送信先、中断回数などの画像形成装置情報、印刷ジョブの分割の割合情報、ペア情報、フェイスアップ/フェイスダウン、昇順や降順などの印刷ページ順などの管理情報を管理する。
【0052】
その後、印刷ジョブ受信部31aは、外部のクライアント端末20から印刷ジョブを受信し、画像生成部37は、受信した印刷ジョブを解析してページ毎の画像データを生成する。そして、分割部31eは、装置管理部31dから通知される分割の割合情報に基づいて、画像生成部37で生成されたページ毎の画像データを各々のペア(又は各々のペアの各々の画像形成装置40)に対応するページ数の画像データ群に分割し、分割した画像データ群を記憶部35(分割画像保存部)などに保存すると共に画像データ群のページ情報及び保存先情報を印刷指示部31fに通知する。印刷指示部31fは、上述した管理情報に基づいて、各々の画像形成装置40に対応する印刷指示情報を作成し、作成した印刷指示情報と記憶部35(分割画像保存部)に保存した画像データ群とを関連付けて印刷用データを作成して印刷用データ送信部31gに送信し、印刷用データ送信部31gは印刷用データを各々の画像形成装置40に送信する。
【0053】
以下、本実施例の分散印刷制御装置30の具体的な処理について説明する。CPU32は、ROM33又は記憶部35に記憶した分散印刷制御プログラムをRAM34に展開して実行することにより、
図7乃至
図9のフローチャート図に示す各ステップの処理を実行する。
【0054】
まず、初期設定処理について、
図7を参照して説明する。分散印刷制御装置30が起動開始すると、制御部31(ステータス取得部31b)は、通信ネットワーク50に接続されている画像形成装置40を検出し(S101)、各々の画像形成装置40のステータス情報を取得する(S102)。取得したステータス情報は制御部31(装置管理部31d)に通知され、制御部31(装置管理部31d)は、ステータス情報に含まれる画像形成装置の数、印刷速度、送信先、中断回数などを管理する。上記中断回数は画像形成装置40内でカウントされ、ジャムや用紙切れ、トナー切れなどのエラーにより印刷動作が中断したとき、各画像形成装置40が保持するカウンターに1が加算され、その結果がステータス情報に反映される。なお、印刷の中断に関わらないエラーはカウントされない。
【0055】
次に、制御部31(ペア決定部31c)は、制御部31(装置管理部31d)からステータス情報を取得し、ステータス情報に基づいて、通信ネットワーク50に接続された画像形成装置40の台数が偶数であるか奇数であるかを判断し(S103)、奇数の場合は、中断回数が最も少ない画像形成装置40を単体に設定する(S104)。その際、中断回数が最も少ない画像形成装置40でも、その中断回数が予め定めた閾値を超える場合は、必要に応じて、中断回数が最も多い画像形成装置40を分散印刷対象から除外する。
【0056】
次に、制御部31(ペア決定部31c)は、S104で単体に設定された画像形成装置40を除く、偶数の画像形成装置40に対してペアを決定する(S105)。このステップの詳細は後述する。決定したペア情報は制御部31(装置管理部31d)に通知され、制御部31(装置管理部31d)で管理される。
【0057】
次に、制御部31(装置管理部31d)は、ステータス情報に含まれる各々の画像形成装置40の印刷速度に基づいて、各々のペア(又は各々のペアの各々の画像形成装置40)に対する印刷ジョブの分割の割合を設定し、設定した印刷ジョブの分割の割合情報を制御部31(分割部31e)に通知する(S106)。例えば、4台の画像形成装置40の印刷速度を各々、V1、V2、V3、V4とし、印刷速度がV1とV2の画像形成装置40を一方のペア、印刷速度がV3とV4の画像形成装置40を他方のペアにする場合、上記一方のペアの分割の割合は、(V1+V2)/(V1+V2+V3+V4)に設定し、他方のペアの分割の割合は、(V3+V4)/(V1+V2+V3+V4)に設定する。また、各々の画像形成装置40に対して分割の割合を設定する場合は、印刷速度がV1の画像形成装置40に対する分割の割合は、V1/(V1+V2+V3+V4)のように設定する。
【0058】
次に、制御部31(装置管理部31d)は、S105で決定されたペア情報を元に、各々の画像形成装置40に対してフェイスアップ/フェイスダウン設定、ページ順(昇順、降順)を決定し、制御部31(印刷指示部31f)に通知する(S107)。
【0059】
次に、上記S105の画像形成装置ペア決定処理について、
図8を参照して説明する。制御部31(ペア決定部31c)は、中断回数が少ない順に画像形成装置40を並べ、各々の画像形成装置40に、信頼スコアを設定する(S201)。なお、信頼スコアの設定方法としては、例えば、画像形成装置40がn台の場合は、中断回数が最も多い画像形成装置40の信頼スコアを「1」とし、中断回数が少なくなるに従って信頼スコアを増加させ、中断回数が最も少ない画像形成装置40の信頼スコアを「n」とする。
【0060】
次に、制御部31(ペア決定部31c)は、中断回数が少ない順に並べた画像形成装置40の上位半分を中断回数が相対的に少ない(信頼スコアが相対的に大きい、すなわち、信頼度が相対的に高い)グループ、下位半分を中断回数が相対的に多い(信頼スコアが相対的に小さい、すなわち、信頼度が相対的に低い)グループに設定し(S202)、信頼度が相対的に高いグループと相対的に低いグループから1台ずつ画像形成装置40を抽出し、全ての組み合わせでペアを作成する(S203)。なお、信頼度が相対的に高いグループと相対的に低いグループから1台ずつ抽出するのは、ペアの双方の画像形成装置40が印刷処理を中断するリスクを下げるためである。
【0061】
次に、制御部31(ペア決定部31c)は、全ての組み合わせのペアについて、信頼スコアの合計とペア間の印刷速度の差を算出し(S204)、信頼スコアの合計とペア間の印刷速度の差のそれぞれの標準偏差を算出する(S205)。次に、制御部31(ペア決定部31c)は、信頼スコアの合計の標準偏差の最小値を抽出し、標準偏差が最小値となる組み合わせが複数あるかどうかを確認する(S206)。組み合わせが複数ある場合(S206のYes)は、複数の組み合わせの中から、印刷速度の差の標準偏差が最も小さい組み合わせに従ってペアを決定し(S207)、組み合わせが1つの場合(S206のNo)は、その組み合わせに従ってペアを決定する(S208)。
【0062】
上記の画像形成装置ペア決定処理について具体例を挙げて説明する。
図10乃至
図12は、4台の画像形成装置40に対してペアを決定する場合の例である。
図10に示すように、中断回数が少ない順に4台の画像形成装置40を並べ、各々の画像形成装置40に信頼スコア(高い方から順に4、3、2、1)を設定する。そして、
図11(a)に示すように、上位半分(粗いドットのハッチング参照)を中断回数が相対的に少ない(信頼度が相対的に高い)グループ(ここでは信頼度が1と2の2台)、下位半分(細かいドットのハッチング参照)を中断回数が相対的に多い(信頼度が相対的に低い)グループ(ここでは信頼度が3と4の2台)に分類し、各々のグループから1台ずつ画像形成装置40を抽出し、全ての組み合わせでペアを作成する。
【0063】
例えば、
図11(b)の上段に示すように、信頼度が1と4の画像形成装置をペア1に決定し、信頼度が2と3の画像形成装置をペア2に決定する。若しくは、
図11(b)の下段に示すように、信頼度が1と3の画像形成装置をペア1に決定し、信頼度が2と4の画像形成装置をペア2に決定する。このように、4台の画像形成装置40から2つのペアを作成する場合の組み合わせは、信頼度が相対的に高いグループの一方の画像形成装置40に対して、信頼度が相対的に低いグループの2台の画像形成装置40の中から1台を選択する組み合わせ(
2C
1)と、信頼度が相対的に高いグループの他方の画像形成装置40に対して、信頼度が相対的に低いグループの残りの1台を選択する組み合わせ(
1C
1)と、を乗算した2通りになる。
【0064】
次に、
図12に示すように、2つの組み合わせの各々のペアについて、信頼スコアの合計とペア間の印刷速度の差(速度差と表記している。)を算出し、信頼スコアの合計とペア間の印刷速度の差のそれぞれの標準偏差を算出する。
図12の上段の組み合わせの場合は、信頼スコアの合計の標準偏差は「0.0」、印刷速度の差の標準偏差は「0.0」となり、
図12の下段の組み合わせの場合は、信頼スコアの合計の標準偏差は「1.0」、印刷速度の差の標準偏差は「20.0」となる。
【0065】
そして、信頼スコアの合計の標準偏差の最小値を抽出し(ここでは「0.0」)、標準偏差が最小値となる組み合わせが複数あるかどうかを確認する。ここでは、信頼スコアの合計の標準偏差が最小値となる組み合わせが1つであるので、
図12の上段の組み合わせに従ってペアを決定することになる。
【0066】
図13及び
図14は、6台の画像形成装置40に対してペアを決定する場合の例である。
図13に示すように、中断回数が少ない順に6台の画像形成装置40を並べ、各々の画像形成装置40に信頼スコア(高い方から順に6、5、4、3、2、1)を設定する。そして、上位半分(粗いドットのハッチング参照)を中断回数が相対的に少ない(信頼度が相対的に高い)グループ(ここでは信頼度が1〜3の3台)、下位半分(細かいドットのハッチング参照)を中断回数が相対的に多い(信頼度が相対的に低い)グループ(ここでは信頼度が4〜6の3台)に設定し、各々グループから1台ずつ画像形成装置40を抽出し、全ての組み合わせでペアを作成する。
【0067】
例えば、
図14(a)に示すように、信頼度が1と6の画像形成装置をペア1に決定し、信頼度が2と5の画像形成装置をペア2に決定し、信頼度が3と4の画像形成装置をペア3に決定する。又は、
図14(b)に示すように、信頼度が1と6の画像形成装置をペア1に決定し、信頼度が2と4の画像形成装置をペア2に決定し、信頼度が3と5の画像形成装置をペア3に決定する。又は、
図14(c)に示すように、信頼度が1と5の画像形成装置をペア1に決定し、信頼度が2と6の画像形成装置をペア2に決定し、信頼度が3と4の画像形成装置をペア3に決定する。又は、
図14(d)に示すように、信頼度が1と5の画像形成装置をペア1に決定し、信頼度が2と4の画像形成装置をペア2に決定し、信頼度が3と6の画像形成装置をペア3に決定する。又は、
図14(e)に示すように、信頼度が1と4の画像形成装置をペア1に決定し、信頼度が2と5の画像形成装置をペア2に決定し、信頼度が3と6の画像形成装置をペア3に決定する。又は、
図14(f)に示すように、信頼度が1と4の画像形成装置をペア1に決定し、信頼度が2と6の画像形成装置をペア2に決定し、信頼度が3と5の画像形成装置をペア3に決定する。このように、6台の画像形成装置40から3つのペアを作成する場合の組み合わせは、信頼度が相対的に高いグループの中の第1の画像形成装置40に対して、信頼度が相対的に低いグループの3台の画像形成装置40の中から1台を選択する組み合わせ(
3C
1)と、信頼度が相対的に高いグループの中の第2の画像形成装置40に対して、信頼度が相対的に低いグループの残りの2台の画像形成装置40の中から1台を選択する組み合わせ(
2C
1)と、信頼度が相対的に高いグループの中の第3の画像形成装置40に対して、信頼度が相対的に低いグループの残りの1台を選択する組み合わせ(
1C
1)と、を乗算した6通りになる。
【0068】
次に、
図14に示す6つの組み合わせの各々のペアについて、信頼スコアの合計とペア間の印刷速度の差を算出し、信頼スコアの合計とペア間の印刷速度の差のそれぞれの標準偏差を算出する。
図14(a)の組み合わせの場合は、信頼スコアの合計の標準偏差は「0.0」、印刷速度の差の標準偏差は「16.3」、
図14(b)の組み合わせの場合は、信頼スコアの合計の標準偏差は「0.8」、印刷速度の差の標準偏差は「16.3」、
図14(c)の組み合わせの場合は、信頼スコアの合計の標準偏差は「0.8」、印刷速度の差の標準偏差は「0.0」、
図14(d)の組み合わせの場合は、信頼スコアの合計の標準偏差は「1.4」、印刷速度の差の標準偏差は「16.3」、
図14(e)の組み合わせの場合は、信頼スコアの合計の標準偏差は「1.6」、印刷速度の差の標準偏差は「16.3」、
図14(f)の組み合わせの場合は、信頼スコアの合計の標準偏差は「1.4」、印刷速度の差の標準偏差は「0.0」となる。
【0069】
そして、信頼スコアの合計の標準偏差の最小値を抽出し(ここでは「0.0」)、標準偏差が最小値となる組み合わせが複数あるかどうかを確認する。ここでは、信頼スコアの合計の標準偏差が最小値となる組み合わせが1つであるので、
図14(a)の組み合わせに従ってペアを設定する。なお、信頼スコアの合計の標準偏差が最小値となる組み合わせが複数ある場合は、複数の組み合わせの中から、印刷速度の差の標準偏差が最も小さい組み合わせを選択すればよい。また、信頼スコアの合計の標準偏差が最小値となる組み合わせでは印刷速度の差の標準偏差が予め定めた閾値よりも大きくなる場合は、印刷速度の差の標準偏差の値に基づいて組み合わせを選択することも可能である。その場合は、印刷速度の差の標準偏差の最小値を抽出し(ここでは「0.0」)、標準偏差が最小値となる組み合わせが複数あるかどうかを確認する。
図14の例では、印刷速度の差の標準偏差が最小値となる組み合わせが複数あるので(
図14(c)の組み合わせ3及び
図14(f)の組み合わせ6)、複数の組み合わせの中から、信頼スコア合計の標準偏差が最も小さい組み合わせ(
図14(c)の組み合わせ3)を選択し、その組み合わせに従ってペアを決定することも可能である。
【0070】
なお、
図10乃至
図14では、分散印刷を行う画像形成装置40の台数が偶数の場合について説明したが、
図15(a)に示すように、画像形成装置40の台数が奇数の場合は、中断回数が最も少ない(信頼度が最も高い)画像形成装置40を単体に設定し、
図15(b)に示すように、単体の画像形成装置40を除く残りの画像形成装置40に対して、上記と同様の方法を用いてペアを決定すればよい。
【0071】
このようにペアを決定した後の分散印刷処理について、
図9を参照して説明する。制御部31(印刷ジョブ受信部31a)は、外部のクライアント端末20から印刷ジョブを受信する(S301)。受信した印刷ジョブは画像生成部37に送信され、画像生成部37は印刷ジョブを解析してページ毎の画像データを生成する(S302)。
【0072】
画像生成部37で生成されたページ毎の画像データは制御部31(分割部31e)に送信され、制御部31(分割部31e)は、
図7のS106で通知された分割の割合情報に基づいて、ページ毎の画像データを、各々のペア(又は各々のペアの各々の画像形成装置40)に対応するページ数の画像データ群に分割し(S303)、記憶部35(分割画像保存部)に保存する(S304)。その際、画像データ群のページ情報と分割画像保存部内の保存先情報は、制御部31(分割部31e)から制御部31(印刷指示部31f)に通知される。例えば、印刷ジョブのページ数が100ページであり、4台の画像形成装置40の各々のペアに対する分割の割合情報が30%、70%の場合は、30ページ、70ページの画像データ群に分割する。又は、各々のペアの各々の画像形成装置40に対する分割の割合情報が10%、20%、30%、40%の場合は、10ページ、20ページ、30ページ、40ページの画像データ群に分割する。
【0073】
制御部31(印刷指示部31f)は、
図7のS107で通知された情報に基づいて、各々の画像形成装置40に送信する印刷用データを作成する(S305)。具体的には、各々の画像形成装置40に対応する印刷指示情報(画像形成装置40の送信先、フェイスアップ/フェイスダウン、昇順/降順などの印刷ページ順を設定する情報)を作成し、作成した印刷指示情報と分割画像保存部に保存した画像データ群とを関連付けて、印刷用データを作成する。例えば、ペアの画像形成装置40の一方は割り当てられたページをフェイスダウンで昇順に印刷し、他方は割り当てられたページをフェイスアップで降順に印刷するように印刷用データを作成する。このとき、どの画像形成装置40同士がペアになっているかをユーザに通知するために、最初のページにペア情報を印刷させるように印刷用データを作成しても良い。
【0074】
印刷用データは制御部31(印刷指示部31f)から制御部31(印刷用データ送信部31g)に送信され、制御部31(印刷用データ送信部31g)は、各々の画像形成装置40に、対応する印刷用データを送信する(S306)。その際、印刷用データに含まれる画像データはページ毎に送信してもよいし、分割したページ数の画像データを一括して送信してもよい。また、制御部31(印刷用データ送信部31g)は、ペアを構成する一方の画像形成装置40の印刷処理が中断した場合は、ペアを構成する他方の画像形成装置40に対して、一方の画像形成装置40が印刷できないページの印刷用データを送信する。
【0075】
なお、分散印刷を行う画像形成装置40の台数が奇数の場合は、S305及びS306では、単体の画像形成装置40と各々のペアの画像形成装置40に対して分散印刷を指示し、単体の画像形成装置40は割り当てられたページをフェイスダウンで昇順又はフェイスアップで降順に印刷し、ペアの画像形成装置40の一方は割り当てられたページをフェイスダウンで昇順に印刷し、他方は割り当てられたページをフェイスアップで降順に印刷するように印刷用データを作成して送信すればよい。
【0076】
以上説明したように、複数の画像形成装置40から中断回数(又は中断回数と印刷速度)を含むステータス情報を受信し、中断回数に基づいて複数の画像形成装置40を第1グループと第2グループに分類(中断回数に基づいて設定された信頼度が相対的に高いグループと信頼度が相対的に低いグループ)に分類し、各々のグループから順次選択した画像形成装置を組み合わせてペアを決定すると共に各々のペア(又は各々のペアの各々の画像形成装置40)に対する印刷ジョブの分割の割合を設定し、印刷ジョブを受信したら、印刷ジョブから生成したページ毎の画像データを、設定した分割の割合に応じて分割し、各ペアの一方に各ページをフェイスダウンで昇順に印刷させ、各ペアの他方に各ページをフェイスアップで降順に印刷させることにより、印刷中断のリスクを低減することができる。また、各々のグループから画像形成装置を選択する際に、印刷速度を考慮することにより、印刷パフォーマンス低下のリスクを低減することができる。
【実施例3】
【0090】
次に、本発明の第3の実施例に係る分散印刷制御プログラム、分散印刷制御装置及び分散印刷制御方法について、
図17乃至
図19を参照して説明する。
図17及び
図18は、本実施例の分散印刷システムの構成を示す模式図であり、
図19は、本実施例の分散印刷制御装置として機能する画像形成装置の構成を示すブロック図である。
【0091】
前記した第1及び第2の実施例では、分散印刷システム10に分散印刷制御装置30を配置したが、いずれかの画像形成装置40が分散印刷を制御可能な場合(分散印刷制御装置30として機能させる場合)は、
図17に示すように、分散印刷システム10をクライアント端末20と複数の画像形成装置40(ここでは分散印刷制御装置30として機能させる画像形成装置40aと他の画像形成装置40b〜40d)とで構成し、分散印刷制御装置30を省略することができる。なお、
図17では、複数の画像形成装置40として4台の画像形成装置40を例示しているが、画像形成装置40は2台以上であればよく、偶数台としてもよいし、
図18に示すように奇数台(ここでは分散印刷制御装置30として機能させる画像形成装置40aと他の画像形成装置40b、40c)としてもよい。
【0092】
この構成の場合、分散印刷制御装置30として機能する画像形成装置40aは、
図19(a)に示すように、制御部41、記憶部45、ネットワークI/F部46、表示操作部47、画像処理部48、印刷処理部49などで構成されるが、画像処理部48は、RIPとして機能し、クライアント端末20から受信した分割ジョブを翻訳して中間データを生成し、レンダリングを行ってビットマップ形式の画像データを生成する。
【0093】
また、画像形成装置40aの制御部41は、
図19(b)に示すように、印刷ジョブ受信部41a、ステータス取得部41b、ペア決定部41c、装置管理部41d、分割部41e、印刷指示部41f、印刷用データ送信部41gなどとして機能する。
【0094】
印刷ジョブ受信部41aは、ネットワークI/F部46を介して、クライアント端末20から印刷ジョブを受信する。
【0095】
ステータス取得部41bは、ネットワークI/F部46を介して、他の画像形成装置40から中断回数や印刷速度などのステータス情報を受信して、装置管理部41dに通知する。なお、上記ステータス情報は、他の画像形成装置40が、分散印刷制御装置として機能する画像形成装置40からの要求に応じて送信する構成としてもよいし、ステータス取得部41bがMIB情報からステータス情報を取得する構成としてもよい。
【0096】
ペア決定部41cは、装置管理部41dからステータス情報を取得し、中断回数に基づいて信頼度を設定し、設定した信頼度に基づいて複数の画像形成装置40(自装置を含む。)を信頼度が相対的に高いグループと信頼度が相対的に低いグループとに分類し、各々のグループから画像形成装置40を順次選択(信頼度のばらつきや印刷速度のばらつきが小さい組み合わせとなる画像形成装置40を選択)してペアを決定し、ペア情報を装置管理部41dに通知する。その際、ペア決定部41cは、ステータス情報に基づいて、通信ネットワーク50に接続された画像形成装置40の台数が偶数であるか奇数であるかを判断し、画像形成装置40の台数が奇数の場合は、中断回数が最も少ない画像形成装置40を単体に設定する。また、中断回数が最も少ない(信頼度が最も高い)画像形成装置40でも、中断回数が予め定めた閾値を超える(信頼度が予め設定した閾値を超えない)場合は、中断回数が最も多い(信頼度が最も低い)画像形成装置40を分散印刷対象から除外する。
【0097】
装置管理部41dは、自装置の中断回数や印刷速度などのステータス情報を取得し、自装置のステータス情報とステータス取得部41bから通知された他の画像形成装置40のステータス情報とペア決定部41cから通知されたペア情報とに基づいて、各々のペア(又は各々のペアの各々の画像形成装置40)に対する印刷ジョブの分割の割合を設定し、分割の割合情報を分割部41eに通知する。そして、印刷速度や送信先、中断回数などの画像形成装置情報、印刷ジョブの分割の割合情報、ペア情報、フェイスアップ/フェイスダウン、昇順/降順などの印刷ページ順などの管理情報を記憶部45などに保存して管理する。
【0098】
分割部41eは、装置管理部41dから通知された印刷ジョブの分割の割合情報に基づいて、画像処理部48で作成したページ毎の画像データを、各々のペア(又は各々のペアの各々の画像形成装置40)に対応するページ数の画像データ群に分割する。そして、分割した画像データを記憶部45などに保存すると共に、各々の画像データのページ情報と記憶部45における保存先情報とを印刷指示部41fに通知する。
【0099】
印刷指示部41fは、装置管理部41dが管理する管理情報に基づいて、各々の画像形成装置40に対応する印刷指示情報(画像形成装置40の送信先、フェイスアップ/フェイスダウン、昇順/降順などの印刷条件を規定する情報)を作成し、作成した印刷指示情報と記憶部45に保存した画像データとを関連付けて、画像形成装置40毎の印刷用データを作成する。その際、第1の実施例と同様に、各ペアを構成する各々の画像形成装置40に対して、その画像形成装置40に割り当てられたページ数の画像データとそのページ数のページの印刷を指示する印刷指示情報とを関連付けた印刷用データを作成してもよいし、その画像形成装置40を含むペアに割り当てられたページ数の画像データとその画像形成装置40に割り当てられたページ数のページの印刷を指示する印刷指示情報とを関連付けた印刷用データを作成してもよい。
【0100】
印刷用データ送信部41gは、ネットワークI/F部46を介して、印刷指示部41fが作成した印刷用データを、対応する他の画像形成装置40に送信する。また、印刷用データ送信部41gは、ペアを構成する一方の画像形成装置40の印刷処理が中断した場合は、ペアを構成する他方の画像形成装置40に対して、一方の画像形成装置40が印刷できないページの印刷用データを送信する。その際、第1の実施例と同様に、各ペアを構成する各々の画像形成装置40に対して、その画像形成装置40を含むペアに割り当てられたページ数の画像データとその画像形成装置40に割り当てられたページ数のページの印刷を指示する印刷指示情報とを関連付けた印刷用データを送信している場合は、一方の画像形成装置40が印刷できないページの印刷を指示する印刷指示情報を送信すればよい。
【0101】
なお、上記印刷ジョブ受信部41a、ステータス取得部41b、ペア決定部41c、装置管理部41d、分割部41e、印刷指示部41f、印刷用データ送信部41gは、ハードウェアとして構成してもよいし、制御部41を印刷ジョブ受信部41a、ステータス取得部41b、ペア決定部41c、装置管理部41d、分割部41e、印刷指示部41f、印刷用データ送信部41gとして機能させる分散印刷制御プログラムとして構成し、当該分散印刷制御プログラムをCPU42に実行させるようにしてもよい。
【0102】
このように、複数の画像形成装置40のいずれかを分散印刷制御装置として機能させることによっても、印刷中断のリスクや印刷パフォーマンス低下のリスクを低減することができる。
【0103】
なお、本発明は上記実施例に限定されるものではなく、本発明の趣旨を逸脱しない限りにおいて、その構成や制御は適宜変更可能である。
【0104】
例えば、上記実施例では、2台の画像形成装置40を組み合わせてペアを決定したが、3台以上の画像形成装置40を組み合わせる場合に対しても、本発明の分散印刷制御を同様に適用することができる。例えば、3台を一組とする場合は、第1の画像形成装置40はフェイスダウンで昇順に印刷し、第2の画像形成装置40はフェイスアップで降順に印刷し、第3の画像形成装置40はフェイスダウンで昇順又はフェイスアップで降順に印刷するようにすればよい。