画像処理装置、画像処理方法、および画像処理プログラム
【課題】 プリントジョブに起因する負荷を複数の画像処理装置に効率良く分散させることができる画像処理装置、当該画像処理装置を用いた画像処理方法、および当該画像処理装置を制御するための画像処理プログラムを提供する。
【解決手段】 画像処理装置としてのプリンタは、他のプリンタから負荷情報を受信し(S303)、当該他のプリンタにおけるプリントジョブに起因する負荷と自己のプリンタにおけるプリントジョブに起因する負荷とを比較し(S308)、比較の結果に応じて、他のプリンタから自己のプリンタへプリントジョブを転送させる制御を行う。
【解決手段】 画像処理装置としてのプリンタは、他のプリンタから負荷情報を受信し(S303)、当該他のプリンタにおけるプリントジョブに起因する負荷と自己のプリンタにおけるプリントジョブに起因する負荷とを比較し(S308)、比較の結果に応じて、他のプリンタから自己のプリンタへプリントジョブを転送させる制御を行う。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置、画像処理方法、および画像処理プログラムに関する。本発明は、特に、ネットワークを介して他の画像処理装置と通信可能な画像処理装置、当該画像処理装置を用いた画像処理方法、および当該画像処理装置を制御するための画像処理プログラムに関する。
【背景技術】
【0002】
複数のプリンタがネットワークに接続されたシステムにおいて、たとえばクライアント端末で作成されたプリントジョブは、所定のプリンタに送信されて実行される。
【0003】
しかし、このようなシステムにおいては、特定のプリンタに、プリントジョブに起因する負荷が集中する場合がある。かかる場合、システム全体の処理能力が適切に発揮されない事態となる。
【0004】
この問題を解決するために、マスターコンピュータであるワークステーションが各プリンタのプリントジョブに起因する負荷状況を確認し、各プリンタの負荷にばらつきが生じた場合に、負荷の少ないプリンタにプリントジョブを移動させる技術が開示されている(特許文献1参照)。また、各プリンタに接続された各サーバが、受け取ったプリントジョブの処理を実行できないと判断した場合に、他のサーバにプリントジョブを転送する技術が開示されている(特許文献2参照)。このような技術により、複数のプリンタにおける負荷を分散させることが可能となる。
【特許文献1】特開平5−265777号公報
【特許文献2】特開平9−179833号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかしながら、上記した特許文献に記載の技術においては、マスターコンピュータ(あるいはサーバ)に負荷が集中しても、負荷のかかっているマスターコンピュータ自体がプリントジョブの転送制御をも行わなければならない。したがって、マスターコンピュータは、さらに負荷が増す結果となり、処理全体のボトルネックになる虞がある。このため、負荷分散を効率良く実行できないという問題があった。また、プリントジョブを負荷の少ないプリンタに振り分けて転送する装置を備えることも考えられるが、この場合、別途新たな装置を設置するスペースが必要になるとともに、設備コストの上昇を招く。
【0006】
本発明は、上述の課題を解決するためになされたものであり、本発明の目的は、プリントジョブに起因する負荷を複数のプリンタに効率良く分散させることができる画像処理装置、当該画像処理装置を用いた画像処理方法、および当該画像処理装置を制御するための画像処理プログラムを提供することである。
【課題を解決するための手段】
【0007】
本発明の上記目的は、下記の手段によって達成される。
【0008】
(1)ネットワークを介して他の画像処理装置と通信可能な画像処理装置であって、前記他の画像処理装置と通信を行う通信部と、該通信部によって取得された、前記他の画像処理装置におけるプリントジョブに関連する情報に基づいて、前記プリントジョブを前記他の画像処理装置で実行するより自己の画像処理装置で実行することが好ましいかを判断し、この判断結果に応じて、前記他の画像処理装置から自己の画像処理装置へプリントジョブを転送させる制御部と、を有することを特徴とする画像処理装置。
【0009】
(2)前記制御部は、前記他の画像処理装置における負荷と自己の画像形成装置における負荷とを比較することにより、前記判断を行うことを特徴とする上記(1)に記載の画像処理装置。
【0010】
(3)前記自己の画像処理装置における負荷は、前記他の画像処理装置から自己の画像処理装置へ転送させようとするプリントジョブに起因する負荷を含むことを特徴とする上記(2)に記載の画像処理装置。
【0011】
(4)前記制御部は、前記通信部を介して複数の他の画像処理装置からそれぞれ前記情報を取得し、前記複数の他の画像処理装置における各負荷の大きさを考慮した順番で、前記比較を実行することを特徴とする上記(2)に記載の画像処理装置。
【0012】
(5)前記情報には前記他の画像処理装置のスペックに関するスペック情報が含まれ、前記制御部は、前記複数の他の画像処理装置の各スペックと自己の画像処理装置のスペックとの合致度合いをさらに考慮して、前記比較を実行することを特徴とする上記(4)に記載の画像処理装置。
【0013】
(6)前記制御部は、自己の画像処理装置のスペックと合致しないスペックを持つ他の画像処理装置についての前記比較の実行を省略することを特徴とする上記(5)に記載の画像処理装置。
【0014】
(7)前記スペックは、処理可能なページ記述言語、用紙サイズ、カラー/モノクロの対応モード、フィニッシング機能情報、印刷速度、解像度、および設置場所の情報の少なくとも一つを含むことを特徴とする上記(5)または(6)に記載の画像処理装置。
【0015】
(8)他の画像処理装置との間でプリントジョブの転送が行われた場合、前記制御部は当該プリントジョブの処理に関する処理情報を通知することを特徴とする上記(1)〜(7)のいずれか1つに記載の画像処理装置。
【0016】
(9)前記処理情報は、他の画像処理装置から自己の画像処理装置へ転送されたプリントジョブに基づいてプリントを実行したことに関する情報を含むことを特徴とする上記(8)に記載の画像処理装置。
【0017】
(10)前記処理情報は、自己の画像処理装置の位置情報を含むことを特徴とする上記(9)に記載の画像処理装置。
【0018】
(11)前記処理情報は、自己の画像処理装置から他の画像処理装置へプリントジョブが転送されたことに関する情報を含むことを特徴とする上記(8)に記載の画像処理装置。
【0019】
(12)前記処理情報は、転送先の画像処理装置の位置情報を含むことを特徴とする上記(11)に記載の画像処理装置。
【0020】
(13)前記制御部は、前記通信部を介して前記処理情報をクライアント端末及び前記他の画像処理装置の少なくとも一方に通知することを特徴とする上記(8)〜(12)のいずれか一つに記載の画像処理装置。
【0021】
(14)ネットワークを介して他の画像処理装置と通信可能な画像処理装置を用いた画像処理方法であって、他の画像処理装置から、当該他の画像処理装置におけるプリントジョブに関連する情報を受信する受信ステップと、前記受信ステップで受信した情報に基づいて、前記プリントジョブを前記他の画像処理装置で実行するよりも自己の画像処理装置で実行することが好ましいかを判断する判断ステップと、前記判断ステップにおける判断結果に応じて、前記他の画像処理装置から自己の画像処理装置へプリントジョブを転送させる制御を行う転送制御ステップと、を有することを特徴とする画像処理方法。
【0022】
(15)ネットワークを介して他の画像処理装置と通信可能な画像処理装置を制御するための画像処理プログラムであって、他の画像処理装置から、当該他の画像処理装置におけるプリントジョブに関連する情報を受信する受信手順と、前記受信手順で受信した情報に基づいて、前記プリントジョブを前記他の画像処理装置で実行するよりも自己の画像処理装置で実行することが好ましいかを判断する判断手順と、前記判断手順における判断結果に応じて、前記他の画像処理装置から自己の画像処理装置へプリントジョブを転送させる制御を行う転送制御手順と、を前記画像処理装置に実行させるための画像処理プログラム。
【0023】
(16)上記(15)に記載の画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の効果】
【0024】
本発明によれば、他の画像処理装置のプリントジョブを自己の画像処理装置で処理した方が好ましいかを、自己の画像処理装置で判断し、この判断結果からプリントジョブを取得するための処理を行うことができるため、例えば負荷のかかっている画像処理装置が負荷分散のための処理によってさらに負荷が増すことを防止することができる。これにより、負荷を複数の画像処理装置に対して効率良く分散させることができる。
【0025】
また、プリントジョブを負荷の少ない画像処理装置に振り分けて転送する機能を実現するために特別な装置を別途備える必要がないため、設置スペースや設備コストの増大を防止できる。
【発明を実施するための最良の形態】
【0026】
以下、本発明の実施の形態を、図面を参照して詳細に説明する。
【0027】
図1は、本発明の一実施形態に係るプリンタを有する印刷システムの全体構成図である。印刷システムは、画像処理装置としてのプリンタA〜Dと、クライアント端末1と、ディレクトリサーバ2とを備え、これらはネットワーク5を介して相互に通信可能に接続されている。ネットワーク5は、イーサネット(登録商標)、トークンリング、FDDI等の規格によりコンピュータやネットワーク機器同士を接続したLAN、あるいはLAN同士を専用線で接続したWAN等からなる。
【0028】
ネットワーク5に接続される機器の種類および台数は、図1に示す例に限定されない。たとえば本実施形態において、ネットワーク5に4台のプリンタが接続されているが、4台に限らず任意の複数台数のプリンタが接続されていてもよい。
【0029】
クライアント端末1は、たとえば一般的なPC(パーソナルコンピュータ)であり、プリントジョブを作成して、たとえばプリンタA〜Dのいずれかに送信する。
【0030】
ディレクトリサーバ2は、ネットワーク上の資源とその属性とを記憶し、それらを検索可能とするディレクトリサービスを提供する。資源とは、ネットワークを利用するユーザおよび組織に関する情報や、利用可能なサーバが提供しているサービス、プリンタなどの利用可能な機器などである。ディレクトリサービスへのアクセスには、LDAP(Lightweight Directory Access Protocol)というプロトコルが標準的に用いられる。
【0031】
図2は、プリンタAの概略構成を示すブロック図である。プリンタB,C,DはプリンタAと同様の構成であるため説明を省略する。
【0032】
プリンタAは、CPU31、ROM32、RAM33、ハードディスク34、操作パネル部35、印刷部36、およびネットワークインタフェース37を含み、これらは信号をやり取りするためのバス38を介して相互に接続されている。
【0033】
CPU31は、プログラムにしたがって上記各部の制御や各種の演算処理を行う。ROM32は、予め各種プログラムや各種データを格納する。RAM33は、作業領域として一時的にプログラムやデータを記憶する。ハードディスク34は、オペレーティングシステムを含む各種プログラムや、各種データを格納する。
【0034】
操作パネル部35は、各種情報の表示および各種指示の入力に使用される。印刷部36は、帯電、露光、現像、転写および定着の各工程を含む電子写真式プロセスなどの作像プロセスを用いて、画像データを用紙などの記録材上に印刷する。
【0035】
ネットワークインタフェース37は、たとえばLANカードであり、ネットワーク5を介して外部機器と通信するために使用される。
【0036】
図3に示すように、RAM33は、プリンタ情報テーブル331、およびジョブキュー332のためのそれぞれの領域を有する。プリンタ情報テーブル331には、ネットワーク5上、またはディレクトリサーバ2の管理下にある他のプリンタに関する情報が格納される。ジョブキュー332には、受信したプリントジョブが格納される。
【0037】
ROM32は、ネットワーク制御部321、ジョブ制御部322、および主制御部323に対応するプログラムを格納するためのそれぞれの領域を有する。ネットワーク制御部321は、他のプリンタを検出し、検出した他のプリンタに関する情報をプリンタ情報テーブル331に登録する。ジョブ制御部322は、ジョブキュー332の管理、およびプリントジョブの転送制御を行う。主制御部323は、統括的な制御を行う。なお、ネットワーク制御部321、ジョブ制御部322、および主制御部323の機能は、それぞれに対応するプログラムをCPU31がRAM33に読み出して実行することにより発揮される。即ち、CPU31、ROM32、RAM33が揃って各制御部の機能が達成される。
【0038】
プリンタAは、上述した構成要素以外の構成要素を含んでいてもよく、あるいは、上述した構成要素のうちの一部が含まれていなくてもよい。
【0039】
次に、プリンタAの動作を例として説明する。
【0040】
図4は、プリンタ情報テーブルの登録処理の手順を示すフローチャートである。なお、図4のフローチャートにより示されるアルゴリズムは、プリンタAのROM32にプログラムとして記憶されており、CPU31により実行される。図4の処理は、本実施形態では、ネットワーク制御部321により行われる。なお、この処理は、プリンタAがネットワーク5に接続されたとき、および一定時間間隔で実施される。
【0041】
まず、他のプリンタに関する情報がディレクトリサーバ2に存在するか否かが判断される(S101)。ここで、ネットワーク制御部321は、ディレクトリサーバ2に、他のプリンタに関する情報を問い合わせる。
【0042】
他のプリンタに関する情報がディレクトリサーバ2に存在すると判断された場合(S101でYES)、当該情報が取得されて、プリンタ情報テーブル331に登録され(S102)、続いて、主制御部323に通知される(S103)。一方、他のプリンタに関する情報がディレクトリサーバ2に存在しないと判断された場合(S101でNO)、ステップS104に進む。
【0043】
ステップS104では、他のプリンタがネットワーク5を介して接続されているか否かが判断される。ここで、ネットワーク制御部321は、ネットワーク5上のすべての機器に対して、ネットワーク5に接続されているプリンタであるか否かの問い合わせをブロードキャストする。
【0044】
他のプリンタがネットワーク5を介して接続されていると判断された場合(S104でYES)、当該他のプリンタに関する情報が取得されて、プリンタ情報テーブル331に登録され(S105)、続いて、主制御部323に通知される(S106)。一方、他のプリンタがネットワーク5を介して接続されていないと判断された場合(S104でNO)、ステップS101に戻る。
【0045】
図5は、プリンタ情報テーブルの一例を示す図である。図5の例では、プリンタに関する情報としてのプリンタのスペックが取得されている。ここで、プリンタのスペックとは、プリンタの機能、性能、特性、設置場所等の、プリントジョブの処理状況に依存せずにプリンタが有する固有の情報である。ここでは、プリンタのスペックとして、そのプリンタで解析可能なページ記述言語(PDL:Page Description Language)を示すPDL情報が取得される。なお、プリンタE〜Hに関する情報は、ディレクトリサーバ2から得られたものである。
【0046】
たとえば図5によれば、プリンタA〜CのPDL情報は、PS(PostScript(登録商標))であり、プリンタD〜HのPDL情報は、PCL(Printer Control Language)である。
【0047】
そして、ネットワーク制御部321は、自己のプリンタAのスペックと他のプリンタのスペックとを比較し、両プリンタのスペックの合致度合いを求めて、プリンタ情報テーブルの比較結果の項目に登録する。ここで、スペックの合致度合い(%)は、他の特定のプリンタで実行可能なプリントジョブが自己のプリンタAで実行できる確率を示している。図5のプリンタ情報テーブルの比較結果の項目において、「○」は合致度合いがゼロよりも大きいことを示し、「×」は合致度合いがゼロであることを示している。なお、図5では、自己のプリンタAについての記述が存在するが、省略されてもよい。
【0048】
次に、図6を参照して、プリンタに対する参照順位の決定処理の手順について説明する。なお、図6のフローチャートにより示されるアルゴリズムは、プリンタAのROM32にプログラムとして記憶されており、CPU31により実行される。図6の処理は、本実施形態では、主制御部323により行われる。この処理は、プリンタAの負荷が一定値以下の場合、たとえばジョブキュー332内にプリントジョブが全く存在しないとき、あるいは後述する予想処理累計時間が一定値以下であるときに実行される。
【0049】
まず、スペックに基づいて、自己のプリンタAにプリントジョブを転送させる候補として参照すべきプリンタである参照対象プリンタが決定される(S201)。具体的には、主制御部323は、プリンタ情報テーブルの比較結果の項目が「○」である他のプリンタを参照対象プリンタに設定し、比較結果の項目が「×」である他のプリンタを参照対象から除外する。ここでは、PDL情報が自己のプリンタAと合致するプリンタBおよびCは参照対象プリンタと決定されるが、他のプリンタD〜Hは非参照対象プリンタと決定され、全く参照されなくなる。
【0050】
続いて、参照対象プリンタから、当該参照対象プリンタの予想処理累計時間が取得される(S202)。ネットワーク5上の各プリンタは、ジョブキュー332に保持している各プリントジョブについて処理に要する予想時間を計算し、後述するジョブ属性データとして保持している。予想処理累計時間は、先頭のプリントジョブから実行予定順に特定のプリントジョブまで実行するのに要する予想時間であり、プリントジョブごとに算出される。ここでは、実行予定順が最終のプリントジョブの予想処理累計時間、すなわちジョブキュー332内の全プリントジョブの実行に要する予想時間が取得される。
【0051】
取得された参照対象プリンタの予想処理累計時間は、図7に示すようにプリンタ情報テーブルに記録される(S203)。
【0052】
そして、各参照対象プリンタに対して、予想処理累計時間が大きいプリンタから順に参照順位が設定され、設定された参照順位は、図7に示すようにプリンタ情報テーブルに記録される(S204)。
【0053】
図8は、プリンタ情報テーブルの変形例を示す図である。図8の例では、プリンタのスペックとして、PDL情報に加え、用紙サイズが取得される。用紙サイズは、そのプリンタに収容されていて使用可能な用紙のサイズを示す。
【0054】
図8に示されるように、プリンタA〜DのPDL情報はPSであり、プリンタEのPDL情報はPCLである。プリンタEは、PDL情報がプリンタAと異なるため、比較結果の項目は「×」になる。プリンタB、C、Dは、PDL情報がプリンタAと同じであり、用紙サイズがプリンタAで使用可能なサイズであるため、比較結果の項目は「○」となる。複数のスペックの中で全く合致しないスペックが一つでもあれば、比較結果の項目は「×」になる。
【0055】
図9は、プリンタ情報テーブルの他の変形例を示す図である。図9の例でも、プリンタのスペックとして、PDL情報に加え、用紙サイズが取得される。ただし、図9は、プリンタBに格納されるプリンタ情報テーブルを示す。各プリンタのスペックは、図8に示される内容と同じである。
【0056】
PDL情報のように両プリンタのスペックが合致するか否かにはっきり決まるスペックについては、合致度合いは、0%(合致しない)かあるいは100%(合致する)とされる。一方、用紙サイズのように両プリンタのスペックが一部合致する場合があるスペックについては、参照相手プリンタの用紙サイズの種類が自己のプリンタのそれより多い場合、合致度合いは、たとえば合致する種類数を合致しない種類数と合致する種類数とを足した値で割ることによって算出される。
【0057】
図9では、プリンタBに対するプリンタAのPDL情報についての合致度合いは、100%である。また、プリンタBに対するプリンタAの用紙サイズについての合致度合いは、合致する用紙サイズの種類がA3の1つであり、合致しない用紙サイズの種類がA4およびA5の2つであることより、1/(1+2)=0.33(33%)と算出される。ただし、プリンタAで使用される用紙のサイズ中でA3が占める割合が小さいと判断できる場合には、33%より小さい値となるように算出方法が変更され得る。なお、後述する他のスペックについての合致度合いの算出方法も適宜変更され得る。
【0058】
総合的な合致度合いは、各スペックについての合致度合いを掛け合わせた値となる。たとえば図9に示されるように、プリンタBに対するプリンタAの総合的な合致度合いは、1*0.33=0.33(33%)と算出される。たとえば、プリンタBに対するプリンタEの用紙サイズについての合致度合いは100%であるが、プリンタBに対するプリンタEのPDL情報についての合致度合いが0%であるため、プリンタBに対するプリンタAの総合的な合致度合いは、1*0=0(%)と算出される。
【0059】
なお、用紙サイズのように両プリンタのスペックが一部合致する場合があるスペックを比較する場合には、プリンタ情報テーブルの比較結果の項目のみに基づいて参照対照プリンタおよび非参照プリンタが決定されるだけでなく、合致度合いに基づいて参照対照プリンタの参照順位(優先度)が決定されてもよい。
【0060】
図10は、プリンタ情報テーブルのさらに他の変形例を示す図である。図10の例でも、プリンタのスペックとして、PDL情報に加え、用紙サイズが取得される。さらに、プリンタ情報テーブルには、参照対象プリンタの予想処理累計時間が記録されている。なお、図10は、プリンタAに格納されるプリンタ情報テーブルを示す。ただし、各参照対象プリンタに対して設定される参照順位の決定方法が、図7のプリンタ情報テーブルと相違している。
【0061】
すなわち、図10では、各参照対象プリンタに対して、合致度合いと予想処理累計時間とを掛け合わせた値が大きいプリンタから順に参照順位が設定される。ここで、プリンタBについての値は0.5*120=60、プリンタCについての値は1*87=87、プリンタDについての値は1*70=70、プリンタEについての値は0.33*200=66となるため、参照順位はプリンタC、D、E、Bの順に設定される。
【0062】
図11は、プリンタ情報テーブルのさらに他の変形例を示す図である。図11の例では、プリンタのスペックとして、カラー/モノクロについての対応モードが取得される。
【0063】
図11に示されるように、プリンタAおよびEの対応モードはモノクロであり、プリンタB、C、Dの対応モードはカラー/モノクロである。プリンタB〜Eで実行可能なプリントジョブの中でプリンタAが実行できるプリントジョブが存在し得るため、プリンタ情報テーブルにおいて、比較結果の項目はすべて「○」になる。プリンタAはカラーで印刷出力できないため、プリンタAに対するプリンタB、C、Dの対応モードについての合致度合いはそれぞれ50%とされる。なお、ここでは、カラーとモノクロのプリントジョブがそれぞれ同数ずつ存在すると仮定する。
【0064】
図12は、プリンタ情報テーブルのさらに他の変形例を示す図である。図12の例では、プリンタのスペックとして、フィニッシング機能情報が取得される。ここでは、フィニッシング機能情報の一例として、用紙の束をステープルで綴じるステープル処理に関するステープル機能情報が取得される。なお、用紙の端部にファイリング用の穴をあけるパンチ穴あけ処理等の他のフィニッシング処理に関するフィニッシング機能情報が取得されてもよい。
【0065】
図12に示されるように、ステープル機能情報は、4項目のステープル位置情報を有している。プリンタB〜Eで実行可能なプリントジョブの中でプリンタAが実行できるプリントジョブが存在し得るため、プリンタ情報テーブルにおいて、比較結果の項目はすべて「○」になる。プリンタBはプリンタAとステープル機能情報の4項目がすべて同じであるため、プリンタAに対するプリンタBのステープル機能情報についての合致度合いは100%とされる。一方、プリンタCで実行可能なプリントジョブの中で右辺2点または左辺2点とステープル位置情報が指定されたものはプリンタAで実行できないため、プリンタAに対するプリンタCのステープル機能情報についての合致度合いは50%とされる。また、プリンタDで実行可能なプリントジョブの中で左辺2点とステープル位置情報が指定されたものはプリンタAで実行できないため、プリンタAに対するプリンタDのステープル機能情報についての合致度合いは50%とされる。プリンタEのステープル機能情報は4項目とも「不可」であるため、プリンタEで実行可能なプリントジョブのすべてはプリンタAで実行できると判断され、プリンタAに対するプリンタEのステープル機能情報についての合致度合いは100%とされる。なお、ステープル機能情報の各項目のプリントジョブはそれぞれ同数ずつ存在すると仮定する。
【0066】
図13は、プリンタ情報テーブルのさらに他の変形例を示す図である。図13の例では、プリンタのスペックとして、印刷速度が取得される。印刷速度は、たとえば1分間に印刷出力できるページ数(PPM: Page per Minute)で表される。
【0067】
図13に示されるように、プリンタB〜Eで実行可能なプリントジョブは、印刷速度が異なるものの、プリンタAでも実行できるため、プリンタ情報テーブルにおいて、比較結果の項目はすべて「○」となり、合致度合いもすべて100%とされる。ただし、合致度合いは、印刷速度に応じて変化するように設定されてもよい。この場合、印刷速度の高いプリンタにプリントジョブが集中して負荷が高くなる傾向があると判断されるときには、印刷速度の高いプリンタほど合致度合いが高くなる算出方法が採用される。一方、印刷速度の低いプリンタの負荷を軽減することが印刷システム全体の負荷の分散に寄与し得ると判断されるときには、印刷速度の低いプリンタほど合致度合いが高くなる算出方法が採用される。
【0068】
図14は、プリンタ情報テーブルのさらに他の変形例を示す図である。図14の例では、プリンタのスペックとして、解像度が取得される。解像度は、たとえば1インチ当たりのドットの数(DPI: Dot per Inch)で表される。
【0069】
図14に示されるように、プリンタAは解像度が300DPIと指定されたプリントジョブを実行できるため、プリンタ情報テーブルにおいて、プリンタBおよびDの比較結果の項目は「○」となる。プリンタBはプリンタAと解像度が同じであるため、プリンタAに対するプリンタBの解像度についての合致度合いは100%とされる。一方、プリンタDで実行可能なプリントジョブの中で600DPIと解像度が指定されたものはプリンタAで実行できないため、プリンタAに対するプリンタDの解像度についての合致度合いは50%とされる。
【0070】
図15は、プリンタ情報テーブルのさらに他の変形例を示す図である。図15の例では、プリンタのスペックとして、位置情報が取得される。位置情報は、プリンタの設置場所を表す情報である。
【0071】
図15に示されるように、プリンタB〜Eで実行可能なプリントジョブは、印刷場所が異なるものの、プリンタAでも実行できるため、プリンタ情報テーブルにおいて、比較結果の項目はすべて「○」となり、合致度合いもすべて100%とされる。ただし、比較結果および/または合致度合いは、位置情報に応じて異なるように設定されてもよい。たとえば、A実験室とB実験室の物理的距離が大きく、プリンタDに対して送信したプリントジョブがプリンタAで実行されるとユーザに負担がかかると判断される場合、プリンタDについての比較結果が「×」とされてもよく、あるいは合致度合いが低く設定されてもよい。ただし、これらの判断に使用される条件は予めプリンタAに設定しておく必要がある。より具体的には、プリンタ間の物理的距離を登録したテーブルあるいは各プリンタの位置を示した地図等が予めプリンタA内に保存され、参照対象となるプリンタの位置的条件が予め設定される必要がある。そして、プリンタAのネットワーク制御部321が、上記の予め設定された値や条件を参照して、比較結果および/または合致度合いを算出し、プリンタ情報テーブルに登録する。
【0072】
上述したように、スペックに基づいて参照対象となるプリンタが決定されるため、自己のプリンタAで全く実行できないプリントジョブを有する他のプリンタを参照対象から除外することができ、参照対象プリンタを予め絞り込むことができる。これにより、プリントジョブの転送を効率良く、かつ迅速に行うことが可能となる。
【0073】
また、図7を用いて説明したように、参照対象プリンタについての参照順位が、予想処理累計時間の大きいプリンタから順に設定され得る。この場合、合致度合いは参照順位の決定には影響を与えない。ただし、参照順位は、図10を用いて説明したように予想処理累計時間のみならず、合致度合いをも考慮して設定され得る。なお、合致度合いよりも予想処理累計時間の方が参照作業の効率化に影響すると判断した場合、参照順位の決定に対する処理想定累計時間の寄与の比重を合致度合いよりも大きく設定することができる。さらに、参照順位は、スペックの合致度合いのみを考慮して設定されることもできる。このように、参照対象プリンタについての参照順位が決定されるため、参照対象プリンタを効率良く参照することができる。
【0074】
また、スペックに基づく参照対象プリンタの絞り込みのみが行われて、参照対象プリンタについての参照順位の設定が省略されてもよい。あるいは、スペックに基づく参照対象プリンタの絞り込みが省略されて、参照対象プリンタに対する参照順位の設定のみが行われてもよい。なお、スペックに基づく参照対象プリンタの絞り込み、および参照対象プリンタに対するスペックの合致度合いを考慮した参照順位の設定は、参照対象プリンタがプリントジョブの転送元の候補として参照すべきプリンタである場合だけでなく、参照対象プリンタがプリントジョブの転送先の候補として参照すべきプリンタである場合にも適用可能である。
【0075】
図16および図17は、プリントジョブの転送制御処理の手順を示すフローチャートである。なお、図16および図17のフローチャートにより示されるアルゴリズムは、プリンタAのROM32にプログラムとして記憶されており、CPU31により実行される。図16および図17の処理は、本実施形態では、ジョブ制御部322により行われる。
【0076】
なお、予め図6に示されるプリンタに対する参照順位の決定処理が実行され、参照対象プリンタおよび参照順位が決定されているものとする。
【0077】
まず、参照順位の最も高い参照対象プリンタのジョブキュー332に、プリントジョブが存在しているか否かが判断される(S301)。ジョブキュー332には、特定のスケジュールに基づいて実行されるように設定されたプリントジョブが格納されている。
【0078】
参照対象プリンタのジョブキュー332にプリントジョブが存在している場合(S301でYES)、ステップS303に進む。
【0079】
参照対象プリンタのジョブキュー332にプリントジョブが存在していない場合(S301でNO)、参照対象プリンタが用紙切れ等の障害発生中であるか否かが判断される(S302)。参照対象プリンタが障害発生中である場合(S302でYES)、障害発生中の参照対象プリンタからプリントジョブを極力取得して実行すべく、ステップS303に進む。
【0080】
ステップS303では、参照対象プリンタに対してジョブ属性データの要求が行われ、当該参照対象プリンタからジョブ属性データが取得される(S303)。
【0081】
図18は、ジョブキュー管理データの一例を示す図である。ここでは、プリンタBのジョブキュー管理データがテーブルで表されている。ジョブキュー管理データには、プリントジョブの識別符号であるジョブID、プリントジョブの処理の優先度合いを示すジョブ優先度、プリントジョブの現在の処理段階を示すジョブステータス、現在処理中のページを示す処理ページ数、予想処理累計時間、および他プリンタから転送されたプリントジョブであることを示す転送マークが含まれる。
【0082】
ジョブ属性データは、ジョブキュー332内のプリントジョブ、ジョブキュー管理データ、およびプリンタのスペックを参照することにより、プリントジョブごとに作成されて保存される。ジョブ属性データには、PDLの種類、用紙サイズの指定、カラー/モノクロの指定、フィニッシング処理の指定、印刷場所の指定、他プリンタからの転送マーク、予想処理累計時間、およびプリントジョブに関するユーザ情報などが含まれる。
【0083】
ステップS304では、取得されたジョブ属性データを参照して、プリンタAで実行可能なプリントジョブが存在するか否かが判断される。なお、他プリンタからの転送マークが付けられているプリントジョブは、通常、再度転送されて実行されないように、プリンタAで実行可能なプリントジョブに該当しないと判断される。
【0084】
プリンタAで実行可能なプリントジョブが存在しない場合(S304でNO)、ステップS301に戻り、次の参照順位の参照対象プリンタについての処理が行われる。
【0085】
プリンタAで実行可能なプリントジョブが存在する場合(S304でYES)、プリンタAで実行可能なプリントジョブの中から、自己のプリンタAに転送させる候補として参照されるプリントジョブである参照ジョブが決定される(S305)。ここで、ジョブキュー332内のプリントジョブの参照は、最も先に印刷要求され、かつ未処理のプリントジョブから順に行われる。
【0086】
ステップS304では、参照対象プリンタの印刷速度が自己のプリンタAの印刷速度と同じか否かが判断される(S306)。
【0087】
参照対象プリンタの印刷速度が自己のプリンタAの印刷速度と同じである場合(S306でYES)、参照対象プリンタにおける参照ジョブの予想処理累計時間は、自己のプリンタAで実行する場合の参照ジョブの予想処理累計時間よりも、所定倍以上か否かが判断される(S308)。所定倍は、たとえば2倍と、1倍よりも大きく設定されるが、適宜変更して設定され得る。
【0088】
参照対象プリンタにおける参照ジョブの予想処理累計時間が、自己のプリンタAで実行する場合の参照ジョブの予想処理累計時間よりも、所定倍以上である場合(S308でYES)、当該参照対象プリンタから自己のプリンタAに転送させるのに好都合なプリントジョブが存在すると判断され、ステップS310に進む。
【0089】
一方、参照対象プリンタの印刷速度が自己のプリンタAの印刷速度と異なる場合(S306でNO)、自己のプリンタAで実行する場合の参照ジョブの予想処理累計時間が、自己のプリンタAにおける印刷速度およびジョブキュー332の待ち時間等に基づいて、再計算されて(S307)、ステップS308に進む。
【0090】
参照対象プリンタにおける参照ジョブの予想処理累計時間が、自己のプリンタAで実行する場合の参照ジョブの予想処理累計時間よりも、所定倍以上でない場合(S308でNO)、当該参照対象プリンタから自己のプリンタAに転送させるのに好都合なプリントジョブは存在しないと判断され、ステップS309に進む。ステップS309では、参照対象プリンタが障害発生中であるか否かが判断される。参照対象プリンタが障害発生中である場合(S309でYES)、障害発生中の参照対象プリンタからプリントジョブを極力取得して実行すべく、ステップS310に進む。
【0091】
ステップS310では、自己のプリンタAのジョブキュー332がロックされる。これにより、自己のプリンタAのジョブキュー332は、他のプリンタから参照されなくなる。
【0092】
続いて、ジョブ制御部322は、参照対象プリンタを制御して、現在参照中の参照ジョブをロックさせ(S311)、参照対象プリンタから当該参照ジョブを自己のプリンタAに転送させる(S312)。
【0093】
自己のプリンタAに転送された参照ジョブは、自己のプリンタAのジョブキュー332に登録される(S313)。
【0094】
また、自己のプリンタAにおけるジョブ属性データにおいて、転送された参照ジョブに対して、転送マークが付けられる(S314)。
【0095】
そして、ジョブ制御部322は、参照対象プリンタを制御して、参照対象プリンタのジョブキューから転送済みの参照ジョブを削除させる(S315)。
【0096】
続いて、自己のプリンタAのジョブキュー332がアンロックされる。これにより、自己のプリンタAのジョブキュー332は、他のプリンタから参照可能となる。
【0097】
このように本実施形態のプリンタは、他のプリンタから負荷情報を受信し、当該他のプリンタにおけるプリントジョブに起因する負荷と自己のプリンタにおけるプリントジョブに起因する負荷とを比較し、比較の結果に応じて、他のプリンタから自己のプリンタへプリントジョブを転送させる制御を行う。
【0098】
したがって、負荷の軽いプリンタが負荷の高いプリンタからプリントジョブを取得するための処理を行うことができるため、負荷のかかっているプリンタが負荷分散のための処理によってさらに負荷が増すことを防止することができる。これにより、プリントジョブに起因する負荷を複数のプリンタに対して効率良く分散させることができる。
【0099】
また、プリントジョブを負荷の少ないプリンタに振り分けて転送する装置を別途備える必要がないため、設置スペースや設備コストの増大を防止できる。
【0100】
図19は、障害発生時の処理の手順を示すフローチャートである。なお、図19のフローチャートにより示されるアルゴリズムは、プリンタAのROM32にプログラムとして記憶されており、CPU31により実行される。図19の処理は、本実施形態では、ジョブ制御部322により行われる。
【0101】
ジョブ制御部322は、たとえば用紙切れ等のプリントジョブの実行に支障をきたす障害の発生を監視する(S401でNO)。
【0102】
障害が発生した場合(S401でYES)、自己のプリンタAのジョブキュー332がロックされているときにはアンロックされ(S402)、他のプリンタから参照可能とされる。つまり他のプリンタからの転送要求を受け付けることが可能となる。
【0103】
続いて、障害から回復したか否かが判断される(S403)。障害から回復した場合(S403でYES)、ステップS401に戻る。
【0104】
障害から回復していない場合(S403でNO)、自己のプリンタAにおけるジョブ属性データにおいて、転送されたプリントジョブに対して付けられている転送マークが除去される(S404)。
【0105】
続いて、障害から回復するまで待機する(S405でNO)。障害から回復した場合(S405でYES)、他のプリンタにより参照されているか否かが判断される(S406)。他のプリンタにより参照されている場合には、他のプリンタにより参照されなくなるまで待機する(S406でYES)。
【0106】
他のプリンタにより参照されていない場合(S406でNO)、ステップS404で除去された転送マークが、該当するプリントジョブに対して再度付けられる(S407)。
【0107】
図20は、プリンタの処理情報の通知処理の手順を示すフローチャートである。なお、図20のフローチャートにより示されるアルゴリズムは、プリンタAのROM32にプログラムとして記憶されており、CPU31により実行される。
【0108】
まず、ジョブ制御部322は、処理中の転送されたプリントジョブについてのジョブ属性データから、ユーザ情報を取得する(S501)。ユーザ情報には、プリントジョブを発行したクライアント端末の名称およびIPアドレスが含まれる。他のプリンタから転送されたプリントジョブであるか否かは、転送マークにより判断され得る。
【0109】
ステップS502では、ジョブ制御部322は、当該プリントジョブに基づく印刷処理が終了したか否かを判断する。
【0110】
印刷処理が終了していない場合(S502でNO)、自己のプリンタAにおいて障害が発生したか否かが判断される(S504)。障害が発生していない場合(S504でNO)、ステップS502に戻る。
【0111】
印刷処理が終了した場合(S502でYES)、あるいは障害が発生した場合(S504でYES)、ステップS503に進む。
【0112】
ステップS503では、プリンタの処理情報がユーザのクライアント端末に通知される。
【0113】
具体的には、まず、ジョブ制御部322は、当該プリントジョブに関するユーザ情報および出力状況を主制御部323に通知する。出力状況は、プリントジョブに基づいて正常に印刷出力されたこと、あるいは障害が発生した場合のエラーの種類などである。主制御部323は、プリンタAの名称および位置情報をプリンタの位置情報テーブルから取得し、上記のプリントジョブに関するユーザ情報および出力状況とともに、プリンタAの名称および位置情報を、ネットワーク制御部321に通知する。
【0114】
図21は、プリンタの位置情報テーブルの一例を示す図である。プリンタの位置情報テーブルは、予め各プリンタに登録されており、プリンタの名称および位置情報を含んでいる。位置情報は、ユーザがプリンタの設置場所を認識できる任意の表現形式で記述可能である。ネットワーク制御部321は、ユーザ情報の中からIPアドレスを取得し、当該IPアドレスを有するクライアント端末に対して、プリンタAの名称および位置情報と出力状況とを含むプリンタの処理情報を送信する。
【0115】
プリンタの処理情報は、より具体的には、クライアント端末に予めインストールされている位置通知ソフトウェアに対して通知される。通知を受けた位置通知ソフトウェアは、たとえば図22に示すような通知ウィンドウを作成して、クライアント端末の図示しないディスプレイに表示させる。
【0116】
なお、プリンタの処理情報は、当該プリントジョブを最初に受信したプリンタに送信されて、図22に示すような通知ウィンドウが操作パネル部35に表示されてもよい。これにより、ユーザは、最初の印刷出力予定のプリンタの設置場所へ行ったときに、実際に印刷出力されたプリンタの設置場所を知ることができる。
【0117】
このようなプリンタの処理情報の通知処理は、プリントジョブの転送が行われたとしても、実際に印刷出力したプリンタのみによって行われば目的が達成される。つまり、実際に印刷出力したプリンタ以外のプリンタは通知処理に関与しなくて済むため、処理が簡単となるだけでなく、ユーザは容易に印刷出力したプリンタを認識することが可能となる。
【0118】
本実施形態では、他のプリンタから自己のプリンタAへ転送されたプリントジョブに基づいてプリントを実行した場合に、プリンタの処理情報の通知処理がプリンタAにより行われる。ただし、自己のプリンタAから他のプリンタへプリントジョブが転送された場合に、プリントジョブの転送に関する情報の通知処理がプリンタAにより行われてもよい。この場合、プリントジョブの転送に関する情報には、転送先のプリンタの名称および位置情報が含まれる。
【0119】
なお、図20に示すプリンタの処理情報の通知処理は、プリントジョブを最初に受信したプリンタが当該プリントジョブを最初の予定通り実行した場合には省略されてもよい。
【0120】
本発明は、上述した実施形態のみに限定されるものではなく、特許請求の範囲内において、種々改変することができる。
【0121】
たとえば、本発明は、プリンタがプリントサーバを介してクライアント端末1からのプリントジョブを受信する印刷システムにおけるプリンタにも適用され得る。さらに、本発明は、かかる印刷システムにおけるプリントサーバにも適用され得る。この場合、プリントサーバは、当該プリントサーバに接続されている各プリンタからスペック等の情報を取得して、各プリンタがそれぞれプリントジョブの転送元または転送先の候補として参照すべきプリンタであるか否かを決定することができる。
【0122】
また、本発明は、プリントサーバがクライアント端末1からのプリントジョブを受信して複数のプリンタで並行してプリントを行わせるクラスタプリンティングシステムにおけるプリンタにも適用され得る。さらに、本発明は、クラスタプリンティングシステムにおけるプリントサーバにも適用され得る。この場合、プリントサーバは、他のプリントサーバに接続されている複数のプリンタのスペック等の情報を当該他のプリントサーバから取得することができる。そして、各プリントサーバにそれぞれ接続されているプリンタ同士でスペックが比較され得る。
【0123】
また、画像処理装置として、プリンタの代わりに、ファクシミリ装置、コピー機、およびそれらを複合した機能を有する多機能周辺機器(MFP:Multi−Function Peripheral)などが用いられてもよい。
【0124】
本発明において、画像処理装置としてのプリンタにおける各種処理を行う手段および方法は、専用のハードウェア回路、またはプログラムされたコンピュータのいずれによっても実現することが可能である。上記プログラムは、たとえばフレキシブルディスクやCD−ROMなどのコンピュータ読み取り可能な記録媒体によって提供されてもよいし、インターネット等のネットワークを介してオンラインで提供されてもよい。この場合、コンピュータ読み取り可能な記録媒体に記録されたプログラムは、通常、ハードディスク等の記憶部に転送されて記憶される。また、上記プログラムは、単独のアプリケーションソフトとして提供されてもよいし、装置の一機能としてその装置のソフトウェアに組み込まれてもよい。
【図面の簡単な説明】
【0125】
【図1】本発明の一実施形態に係るプリンタを有する印刷システムの全体構成図である。
【図2】プリンタの概略構成を示すブロック図である。
【図3】プリンタ情報テーブル、ジョブキュー、ネットワーク制御部、ジョブ制御部、および主制御部を説明するための図である。
【図4】プリンタ情報テーブルの登録処理の手順を示すフローチャートである。
【図5】プリンタ情報テーブルの一例を示す図である。
【図6】プリンタに対する参照順位の決定処理の手順を示すフローチャートである。
【図7】予想処理累計時間および参照順位が記録されたプリンタ情報テーブルを示す図である。
【図8】プリンタ情報テーブルの変形例を示す図である。
【図9】プリンタ情報テーブルの他の変形例を示す図である。
【図10】プリンタ情報テーブルのさらに他の変形例を示す図である。
【図11】プリンタ情報テーブルのさらに他の変形例を示す図である。
【図12】プリンタ情報テーブルのさらに他の変形例を示す図である。
【図13】プリンタ情報テーブルのさらに他の変形例を示す図である。
【図14】プリンタ情報テーブルのさらに他の変形例を示す図である。
【図15】プリンタ情報テーブルのさらに他の変形例を示す図である。
【図16】プリントジョブの転送制御処理の手順を示すフローチャートである。
【図17】図16から続く、プリントジョブの転送制御処理の手順を示すフローチャートである。
【図18】ジョブキュー管理データの一例を示す図である。
【図19】障害発生時の処理の手順を示すフローチャートである。
【図20】プリンタの処理情報の通知処理の手順を示すフローチャートである。
【図21】プリンタの位置情報テーブルの一例を示す図である。
【図22】通知ウィンドウの一例を示す図である。
【符号の説明】
【0126】
1 クライアント端末、
2 ディレクトリサーバ、
A,B,C,D プリンタ(画像処理装置)、
31 CPU、
32 ROM、
321 ネットワーク制御部、
322 ジョブ制御部、
323 主制御部、
33 RAM、
331 プリンタ情報テーブル、
332 ジョブキュー、
34 ハードディスク、
35 操作パネル部、
36 印刷部、
37 ネットワークインタフェース、
38 バス、
5 ネットワーク。
【技術分野】
【0001】
本発明は、画像処理装置、画像処理方法、および画像処理プログラムに関する。本発明は、特に、ネットワークを介して他の画像処理装置と通信可能な画像処理装置、当該画像処理装置を用いた画像処理方法、および当該画像処理装置を制御するための画像処理プログラムに関する。
【背景技術】
【0002】
複数のプリンタがネットワークに接続されたシステムにおいて、たとえばクライアント端末で作成されたプリントジョブは、所定のプリンタに送信されて実行される。
【0003】
しかし、このようなシステムにおいては、特定のプリンタに、プリントジョブに起因する負荷が集中する場合がある。かかる場合、システム全体の処理能力が適切に発揮されない事態となる。
【0004】
この問題を解決するために、マスターコンピュータであるワークステーションが各プリンタのプリントジョブに起因する負荷状況を確認し、各プリンタの負荷にばらつきが生じた場合に、負荷の少ないプリンタにプリントジョブを移動させる技術が開示されている(特許文献1参照)。また、各プリンタに接続された各サーバが、受け取ったプリントジョブの処理を実行できないと判断した場合に、他のサーバにプリントジョブを転送する技術が開示されている(特許文献2参照)。このような技術により、複数のプリンタにおける負荷を分散させることが可能となる。
【特許文献1】特開平5−265777号公報
【特許文献2】特開平9−179833号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかしながら、上記した特許文献に記載の技術においては、マスターコンピュータ(あるいはサーバ)に負荷が集中しても、負荷のかかっているマスターコンピュータ自体がプリントジョブの転送制御をも行わなければならない。したがって、マスターコンピュータは、さらに負荷が増す結果となり、処理全体のボトルネックになる虞がある。このため、負荷分散を効率良く実行できないという問題があった。また、プリントジョブを負荷の少ないプリンタに振り分けて転送する装置を備えることも考えられるが、この場合、別途新たな装置を設置するスペースが必要になるとともに、設備コストの上昇を招く。
【0006】
本発明は、上述の課題を解決するためになされたものであり、本発明の目的は、プリントジョブに起因する負荷を複数のプリンタに効率良く分散させることができる画像処理装置、当該画像処理装置を用いた画像処理方法、および当該画像処理装置を制御するための画像処理プログラムを提供することである。
【課題を解決するための手段】
【0007】
本発明の上記目的は、下記の手段によって達成される。
【0008】
(1)ネットワークを介して他の画像処理装置と通信可能な画像処理装置であって、前記他の画像処理装置と通信を行う通信部と、該通信部によって取得された、前記他の画像処理装置におけるプリントジョブに関連する情報に基づいて、前記プリントジョブを前記他の画像処理装置で実行するより自己の画像処理装置で実行することが好ましいかを判断し、この判断結果に応じて、前記他の画像処理装置から自己の画像処理装置へプリントジョブを転送させる制御部と、を有することを特徴とする画像処理装置。
【0009】
(2)前記制御部は、前記他の画像処理装置における負荷と自己の画像形成装置における負荷とを比較することにより、前記判断を行うことを特徴とする上記(1)に記載の画像処理装置。
【0010】
(3)前記自己の画像処理装置における負荷は、前記他の画像処理装置から自己の画像処理装置へ転送させようとするプリントジョブに起因する負荷を含むことを特徴とする上記(2)に記載の画像処理装置。
【0011】
(4)前記制御部は、前記通信部を介して複数の他の画像処理装置からそれぞれ前記情報を取得し、前記複数の他の画像処理装置における各負荷の大きさを考慮した順番で、前記比較を実行することを特徴とする上記(2)に記載の画像処理装置。
【0012】
(5)前記情報には前記他の画像処理装置のスペックに関するスペック情報が含まれ、前記制御部は、前記複数の他の画像処理装置の各スペックと自己の画像処理装置のスペックとの合致度合いをさらに考慮して、前記比較を実行することを特徴とする上記(4)に記載の画像処理装置。
【0013】
(6)前記制御部は、自己の画像処理装置のスペックと合致しないスペックを持つ他の画像処理装置についての前記比較の実行を省略することを特徴とする上記(5)に記載の画像処理装置。
【0014】
(7)前記スペックは、処理可能なページ記述言語、用紙サイズ、カラー/モノクロの対応モード、フィニッシング機能情報、印刷速度、解像度、および設置場所の情報の少なくとも一つを含むことを特徴とする上記(5)または(6)に記載の画像処理装置。
【0015】
(8)他の画像処理装置との間でプリントジョブの転送が行われた場合、前記制御部は当該プリントジョブの処理に関する処理情報を通知することを特徴とする上記(1)〜(7)のいずれか1つに記載の画像処理装置。
【0016】
(9)前記処理情報は、他の画像処理装置から自己の画像処理装置へ転送されたプリントジョブに基づいてプリントを実行したことに関する情報を含むことを特徴とする上記(8)に記載の画像処理装置。
【0017】
(10)前記処理情報は、自己の画像処理装置の位置情報を含むことを特徴とする上記(9)に記載の画像処理装置。
【0018】
(11)前記処理情報は、自己の画像処理装置から他の画像処理装置へプリントジョブが転送されたことに関する情報を含むことを特徴とする上記(8)に記載の画像処理装置。
【0019】
(12)前記処理情報は、転送先の画像処理装置の位置情報を含むことを特徴とする上記(11)に記載の画像処理装置。
【0020】
(13)前記制御部は、前記通信部を介して前記処理情報をクライアント端末及び前記他の画像処理装置の少なくとも一方に通知することを特徴とする上記(8)〜(12)のいずれか一つに記載の画像処理装置。
【0021】
(14)ネットワークを介して他の画像処理装置と通信可能な画像処理装置を用いた画像処理方法であって、他の画像処理装置から、当該他の画像処理装置におけるプリントジョブに関連する情報を受信する受信ステップと、前記受信ステップで受信した情報に基づいて、前記プリントジョブを前記他の画像処理装置で実行するよりも自己の画像処理装置で実行することが好ましいかを判断する判断ステップと、前記判断ステップにおける判断結果に応じて、前記他の画像処理装置から自己の画像処理装置へプリントジョブを転送させる制御を行う転送制御ステップと、を有することを特徴とする画像処理方法。
【0022】
(15)ネットワークを介して他の画像処理装置と通信可能な画像処理装置を制御するための画像処理プログラムであって、他の画像処理装置から、当該他の画像処理装置におけるプリントジョブに関連する情報を受信する受信手順と、前記受信手順で受信した情報に基づいて、前記プリントジョブを前記他の画像処理装置で実行するよりも自己の画像処理装置で実行することが好ましいかを判断する判断手順と、前記判断手順における判断結果に応じて、前記他の画像処理装置から自己の画像処理装置へプリントジョブを転送させる制御を行う転送制御手順と、を前記画像処理装置に実行させるための画像処理プログラム。
【0023】
(16)上記(15)に記載の画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の効果】
【0024】
本発明によれば、他の画像処理装置のプリントジョブを自己の画像処理装置で処理した方が好ましいかを、自己の画像処理装置で判断し、この判断結果からプリントジョブを取得するための処理を行うことができるため、例えば負荷のかかっている画像処理装置が負荷分散のための処理によってさらに負荷が増すことを防止することができる。これにより、負荷を複数の画像処理装置に対して効率良く分散させることができる。
【0025】
また、プリントジョブを負荷の少ない画像処理装置に振り分けて転送する機能を実現するために特別な装置を別途備える必要がないため、設置スペースや設備コストの増大を防止できる。
【発明を実施するための最良の形態】
【0026】
以下、本発明の実施の形態を、図面を参照して詳細に説明する。
【0027】
図1は、本発明の一実施形態に係るプリンタを有する印刷システムの全体構成図である。印刷システムは、画像処理装置としてのプリンタA〜Dと、クライアント端末1と、ディレクトリサーバ2とを備え、これらはネットワーク5を介して相互に通信可能に接続されている。ネットワーク5は、イーサネット(登録商標)、トークンリング、FDDI等の規格によりコンピュータやネットワーク機器同士を接続したLAN、あるいはLAN同士を専用線で接続したWAN等からなる。
【0028】
ネットワーク5に接続される機器の種類および台数は、図1に示す例に限定されない。たとえば本実施形態において、ネットワーク5に4台のプリンタが接続されているが、4台に限らず任意の複数台数のプリンタが接続されていてもよい。
【0029】
クライアント端末1は、たとえば一般的なPC(パーソナルコンピュータ)であり、プリントジョブを作成して、たとえばプリンタA〜Dのいずれかに送信する。
【0030】
ディレクトリサーバ2は、ネットワーク上の資源とその属性とを記憶し、それらを検索可能とするディレクトリサービスを提供する。資源とは、ネットワークを利用するユーザおよび組織に関する情報や、利用可能なサーバが提供しているサービス、プリンタなどの利用可能な機器などである。ディレクトリサービスへのアクセスには、LDAP(Lightweight Directory Access Protocol)というプロトコルが標準的に用いられる。
【0031】
図2は、プリンタAの概略構成を示すブロック図である。プリンタB,C,DはプリンタAと同様の構成であるため説明を省略する。
【0032】
プリンタAは、CPU31、ROM32、RAM33、ハードディスク34、操作パネル部35、印刷部36、およびネットワークインタフェース37を含み、これらは信号をやり取りするためのバス38を介して相互に接続されている。
【0033】
CPU31は、プログラムにしたがって上記各部の制御や各種の演算処理を行う。ROM32は、予め各種プログラムや各種データを格納する。RAM33は、作業領域として一時的にプログラムやデータを記憶する。ハードディスク34は、オペレーティングシステムを含む各種プログラムや、各種データを格納する。
【0034】
操作パネル部35は、各種情報の表示および各種指示の入力に使用される。印刷部36は、帯電、露光、現像、転写および定着の各工程を含む電子写真式プロセスなどの作像プロセスを用いて、画像データを用紙などの記録材上に印刷する。
【0035】
ネットワークインタフェース37は、たとえばLANカードであり、ネットワーク5を介して外部機器と通信するために使用される。
【0036】
図3に示すように、RAM33は、プリンタ情報テーブル331、およびジョブキュー332のためのそれぞれの領域を有する。プリンタ情報テーブル331には、ネットワーク5上、またはディレクトリサーバ2の管理下にある他のプリンタに関する情報が格納される。ジョブキュー332には、受信したプリントジョブが格納される。
【0037】
ROM32は、ネットワーク制御部321、ジョブ制御部322、および主制御部323に対応するプログラムを格納するためのそれぞれの領域を有する。ネットワーク制御部321は、他のプリンタを検出し、検出した他のプリンタに関する情報をプリンタ情報テーブル331に登録する。ジョブ制御部322は、ジョブキュー332の管理、およびプリントジョブの転送制御を行う。主制御部323は、統括的な制御を行う。なお、ネットワーク制御部321、ジョブ制御部322、および主制御部323の機能は、それぞれに対応するプログラムをCPU31がRAM33に読み出して実行することにより発揮される。即ち、CPU31、ROM32、RAM33が揃って各制御部の機能が達成される。
【0038】
プリンタAは、上述した構成要素以外の構成要素を含んでいてもよく、あるいは、上述した構成要素のうちの一部が含まれていなくてもよい。
【0039】
次に、プリンタAの動作を例として説明する。
【0040】
図4は、プリンタ情報テーブルの登録処理の手順を示すフローチャートである。なお、図4のフローチャートにより示されるアルゴリズムは、プリンタAのROM32にプログラムとして記憶されており、CPU31により実行される。図4の処理は、本実施形態では、ネットワーク制御部321により行われる。なお、この処理は、プリンタAがネットワーク5に接続されたとき、および一定時間間隔で実施される。
【0041】
まず、他のプリンタに関する情報がディレクトリサーバ2に存在するか否かが判断される(S101)。ここで、ネットワーク制御部321は、ディレクトリサーバ2に、他のプリンタに関する情報を問い合わせる。
【0042】
他のプリンタに関する情報がディレクトリサーバ2に存在すると判断された場合(S101でYES)、当該情報が取得されて、プリンタ情報テーブル331に登録され(S102)、続いて、主制御部323に通知される(S103)。一方、他のプリンタに関する情報がディレクトリサーバ2に存在しないと判断された場合(S101でNO)、ステップS104に進む。
【0043】
ステップS104では、他のプリンタがネットワーク5を介して接続されているか否かが判断される。ここで、ネットワーク制御部321は、ネットワーク5上のすべての機器に対して、ネットワーク5に接続されているプリンタであるか否かの問い合わせをブロードキャストする。
【0044】
他のプリンタがネットワーク5を介して接続されていると判断された場合(S104でYES)、当該他のプリンタに関する情報が取得されて、プリンタ情報テーブル331に登録され(S105)、続いて、主制御部323に通知される(S106)。一方、他のプリンタがネットワーク5を介して接続されていないと判断された場合(S104でNO)、ステップS101に戻る。
【0045】
図5は、プリンタ情報テーブルの一例を示す図である。図5の例では、プリンタに関する情報としてのプリンタのスペックが取得されている。ここで、プリンタのスペックとは、プリンタの機能、性能、特性、設置場所等の、プリントジョブの処理状況に依存せずにプリンタが有する固有の情報である。ここでは、プリンタのスペックとして、そのプリンタで解析可能なページ記述言語(PDL:Page Description Language)を示すPDL情報が取得される。なお、プリンタE〜Hに関する情報は、ディレクトリサーバ2から得られたものである。
【0046】
たとえば図5によれば、プリンタA〜CのPDL情報は、PS(PostScript(登録商標))であり、プリンタD〜HのPDL情報は、PCL(Printer Control Language)である。
【0047】
そして、ネットワーク制御部321は、自己のプリンタAのスペックと他のプリンタのスペックとを比較し、両プリンタのスペックの合致度合いを求めて、プリンタ情報テーブルの比較結果の項目に登録する。ここで、スペックの合致度合い(%)は、他の特定のプリンタで実行可能なプリントジョブが自己のプリンタAで実行できる確率を示している。図5のプリンタ情報テーブルの比較結果の項目において、「○」は合致度合いがゼロよりも大きいことを示し、「×」は合致度合いがゼロであることを示している。なお、図5では、自己のプリンタAについての記述が存在するが、省略されてもよい。
【0048】
次に、図6を参照して、プリンタに対する参照順位の決定処理の手順について説明する。なお、図6のフローチャートにより示されるアルゴリズムは、プリンタAのROM32にプログラムとして記憶されており、CPU31により実行される。図6の処理は、本実施形態では、主制御部323により行われる。この処理は、プリンタAの負荷が一定値以下の場合、たとえばジョブキュー332内にプリントジョブが全く存在しないとき、あるいは後述する予想処理累計時間が一定値以下であるときに実行される。
【0049】
まず、スペックに基づいて、自己のプリンタAにプリントジョブを転送させる候補として参照すべきプリンタである参照対象プリンタが決定される(S201)。具体的には、主制御部323は、プリンタ情報テーブルの比較結果の項目が「○」である他のプリンタを参照対象プリンタに設定し、比較結果の項目が「×」である他のプリンタを参照対象から除外する。ここでは、PDL情報が自己のプリンタAと合致するプリンタBおよびCは参照対象プリンタと決定されるが、他のプリンタD〜Hは非参照対象プリンタと決定され、全く参照されなくなる。
【0050】
続いて、参照対象プリンタから、当該参照対象プリンタの予想処理累計時間が取得される(S202)。ネットワーク5上の各プリンタは、ジョブキュー332に保持している各プリントジョブについて処理に要する予想時間を計算し、後述するジョブ属性データとして保持している。予想処理累計時間は、先頭のプリントジョブから実行予定順に特定のプリントジョブまで実行するのに要する予想時間であり、プリントジョブごとに算出される。ここでは、実行予定順が最終のプリントジョブの予想処理累計時間、すなわちジョブキュー332内の全プリントジョブの実行に要する予想時間が取得される。
【0051】
取得された参照対象プリンタの予想処理累計時間は、図7に示すようにプリンタ情報テーブルに記録される(S203)。
【0052】
そして、各参照対象プリンタに対して、予想処理累計時間が大きいプリンタから順に参照順位が設定され、設定された参照順位は、図7に示すようにプリンタ情報テーブルに記録される(S204)。
【0053】
図8は、プリンタ情報テーブルの変形例を示す図である。図8の例では、プリンタのスペックとして、PDL情報に加え、用紙サイズが取得される。用紙サイズは、そのプリンタに収容されていて使用可能な用紙のサイズを示す。
【0054】
図8に示されるように、プリンタA〜DのPDL情報はPSであり、プリンタEのPDL情報はPCLである。プリンタEは、PDL情報がプリンタAと異なるため、比較結果の項目は「×」になる。プリンタB、C、Dは、PDL情報がプリンタAと同じであり、用紙サイズがプリンタAで使用可能なサイズであるため、比較結果の項目は「○」となる。複数のスペックの中で全く合致しないスペックが一つでもあれば、比較結果の項目は「×」になる。
【0055】
図9は、プリンタ情報テーブルの他の変形例を示す図である。図9の例でも、プリンタのスペックとして、PDL情報に加え、用紙サイズが取得される。ただし、図9は、プリンタBに格納されるプリンタ情報テーブルを示す。各プリンタのスペックは、図8に示される内容と同じである。
【0056】
PDL情報のように両プリンタのスペックが合致するか否かにはっきり決まるスペックについては、合致度合いは、0%(合致しない)かあるいは100%(合致する)とされる。一方、用紙サイズのように両プリンタのスペックが一部合致する場合があるスペックについては、参照相手プリンタの用紙サイズの種類が自己のプリンタのそれより多い場合、合致度合いは、たとえば合致する種類数を合致しない種類数と合致する種類数とを足した値で割ることによって算出される。
【0057】
図9では、プリンタBに対するプリンタAのPDL情報についての合致度合いは、100%である。また、プリンタBに対するプリンタAの用紙サイズについての合致度合いは、合致する用紙サイズの種類がA3の1つであり、合致しない用紙サイズの種類がA4およびA5の2つであることより、1/(1+2)=0.33(33%)と算出される。ただし、プリンタAで使用される用紙のサイズ中でA3が占める割合が小さいと判断できる場合には、33%より小さい値となるように算出方法が変更され得る。なお、後述する他のスペックについての合致度合いの算出方法も適宜変更され得る。
【0058】
総合的な合致度合いは、各スペックについての合致度合いを掛け合わせた値となる。たとえば図9に示されるように、プリンタBに対するプリンタAの総合的な合致度合いは、1*0.33=0.33(33%)と算出される。たとえば、プリンタBに対するプリンタEの用紙サイズについての合致度合いは100%であるが、プリンタBに対するプリンタEのPDL情報についての合致度合いが0%であるため、プリンタBに対するプリンタAの総合的な合致度合いは、1*0=0(%)と算出される。
【0059】
なお、用紙サイズのように両プリンタのスペックが一部合致する場合があるスペックを比較する場合には、プリンタ情報テーブルの比較結果の項目のみに基づいて参照対照プリンタおよび非参照プリンタが決定されるだけでなく、合致度合いに基づいて参照対照プリンタの参照順位(優先度)が決定されてもよい。
【0060】
図10は、プリンタ情報テーブルのさらに他の変形例を示す図である。図10の例でも、プリンタのスペックとして、PDL情報に加え、用紙サイズが取得される。さらに、プリンタ情報テーブルには、参照対象プリンタの予想処理累計時間が記録されている。なお、図10は、プリンタAに格納されるプリンタ情報テーブルを示す。ただし、各参照対象プリンタに対して設定される参照順位の決定方法が、図7のプリンタ情報テーブルと相違している。
【0061】
すなわち、図10では、各参照対象プリンタに対して、合致度合いと予想処理累計時間とを掛け合わせた値が大きいプリンタから順に参照順位が設定される。ここで、プリンタBについての値は0.5*120=60、プリンタCについての値は1*87=87、プリンタDについての値は1*70=70、プリンタEについての値は0.33*200=66となるため、参照順位はプリンタC、D、E、Bの順に設定される。
【0062】
図11は、プリンタ情報テーブルのさらに他の変形例を示す図である。図11の例では、プリンタのスペックとして、カラー/モノクロについての対応モードが取得される。
【0063】
図11に示されるように、プリンタAおよびEの対応モードはモノクロであり、プリンタB、C、Dの対応モードはカラー/モノクロである。プリンタB〜Eで実行可能なプリントジョブの中でプリンタAが実行できるプリントジョブが存在し得るため、プリンタ情報テーブルにおいて、比較結果の項目はすべて「○」になる。プリンタAはカラーで印刷出力できないため、プリンタAに対するプリンタB、C、Dの対応モードについての合致度合いはそれぞれ50%とされる。なお、ここでは、カラーとモノクロのプリントジョブがそれぞれ同数ずつ存在すると仮定する。
【0064】
図12は、プリンタ情報テーブルのさらに他の変形例を示す図である。図12の例では、プリンタのスペックとして、フィニッシング機能情報が取得される。ここでは、フィニッシング機能情報の一例として、用紙の束をステープルで綴じるステープル処理に関するステープル機能情報が取得される。なお、用紙の端部にファイリング用の穴をあけるパンチ穴あけ処理等の他のフィニッシング処理に関するフィニッシング機能情報が取得されてもよい。
【0065】
図12に示されるように、ステープル機能情報は、4項目のステープル位置情報を有している。プリンタB〜Eで実行可能なプリントジョブの中でプリンタAが実行できるプリントジョブが存在し得るため、プリンタ情報テーブルにおいて、比較結果の項目はすべて「○」になる。プリンタBはプリンタAとステープル機能情報の4項目がすべて同じであるため、プリンタAに対するプリンタBのステープル機能情報についての合致度合いは100%とされる。一方、プリンタCで実行可能なプリントジョブの中で右辺2点または左辺2点とステープル位置情報が指定されたものはプリンタAで実行できないため、プリンタAに対するプリンタCのステープル機能情報についての合致度合いは50%とされる。また、プリンタDで実行可能なプリントジョブの中で左辺2点とステープル位置情報が指定されたものはプリンタAで実行できないため、プリンタAに対するプリンタDのステープル機能情報についての合致度合いは50%とされる。プリンタEのステープル機能情報は4項目とも「不可」であるため、プリンタEで実行可能なプリントジョブのすべてはプリンタAで実行できると判断され、プリンタAに対するプリンタEのステープル機能情報についての合致度合いは100%とされる。なお、ステープル機能情報の各項目のプリントジョブはそれぞれ同数ずつ存在すると仮定する。
【0066】
図13は、プリンタ情報テーブルのさらに他の変形例を示す図である。図13の例では、プリンタのスペックとして、印刷速度が取得される。印刷速度は、たとえば1分間に印刷出力できるページ数(PPM: Page per Minute)で表される。
【0067】
図13に示されるように、プリンタB〜Eで実行可能なプリントジョブは、印刷速度が異なるものの、プリンタAでも実行できるため、プリンタ情報テーブルにおいて、比較結果の項目はすべて「○」となり、合致度合いもすべて100%とされる。ただし、合致度合いは、印刷速度に応じて変化するように設定されてもよい。この場合、印刷速度の高いプリンタにプリントジョブが集中して負荷が高くなる傾向があると判断されるときには、印刷速度の高いプリンタほど合致度合いが高くなる算出方法が採用される。一方、印刷速度の低いプリンタの負荷を軽減することが印刷システム全体の負荷の分散に寄与し得ると判断されるときには、印刷速度の低いプリンタほど合致度合いが高くなる算出方法が採用される。
【0068】
図14は、プリンタ情報テーブルのさらに他の変形例を示す図である。図14の例では、プリンタのスペックとして、解像度が取得される。解像度は、たとえば1インチ当たりのドットの数(DPI: Dot per Inch)で表される。
【0069】
図14に示されるように、プリンタAは解像度が300DPIと指定されたプリントジョブを実行できるため、プリンタ情報テーブルにおいて、プリンタBおよびDの比較結果の項目は「○」となる。プリンタBはプリンタAと解像度が同じであるため、プリンタAに対するプリンタBの解像度についての合致度合いは100%とされる。一方、プリンタDで実行可能なプリントジョブの中で600DPIと解像度が指定されたものはプリンタAで実行できないため、プリンタAに対するプリンタDの解像度についての合致度合いは50%とされる。
【0070】
図15は、プリンタ情報テーブルのさらに他の変形例を示す図である。図15の例では、プリンタのスペックとして、位置情報が取得される。位置情報は、プリンタの設置場所を表す情報である。
【0071】
図15に示されるように、プリンタB〜Eで実行可能なプリントジョブは、印刷場所が異なるものの、プリンタAでも実行できるため、プリンタ情報テーブルにおいて、比較結果の項目はすべて「○」となり、合致度合いもすべて100%とされる。ただし、比較結果および/または合致度合いは、位置情報に応じて異なるように設定されてもよい。たとえば、A実験室とB実験室の物理的距離が大きく、プリンタDに対して送信したプリントジョブがプリンタAで実行されるとユーザに負担がかかると判断される場合、プリンタDについての比較結果が「×」とされてもよく、あるいは合致度合いが低く設定されてもよい。ただし、これらの判断に使用される条件は予めプリンタAに設定しておく必要がある。より具体的には、プリンタ間の物理的距離を登録したテーブルあるいは各プリンタの位置を示した地図等が予めプリンタA内に保存され、参照対象となるプリンタの位置的条件が予め設定される必要がある。そして、プリンタAのネットワーク制御部321が、上記の予め設定された値や条件を参照して、比較結果および/または合致度合いを算出し、プリンタ情報テーブルに登録する。
【0072】
上述したように、スペックに基づいて参照対象となるプリンタが決定されるため、自己のプリンタAで全く実行できないプリントジョブを有する他のプリンタを参照対象から除外することができ、参照対象プリンタを予め絞り込むことができる。これにより、プリントジョブの転送を効率良く、かつ迅速に行うことが可能となる。
【0073】
また、図7を用いて説明したように、参照対象プリンタについての参照順位が、予想処理累計時間の大きいプリンタから順に設定され得る。この場合、合致度合いは参照順位の決定には影響を与えない。ただし、参照順位は、図10を用いて説明したように予想処理累計時間のみならず、合致度合いをも考慮して設定され得る。なお、合致度合いよりも予想処理累計時間の方が参照作業の効率化に影響すると判断した場合、参照順位の決定に対する処理想定累計時間の寄与の比重を合致度合いよりも大きく設定することができる。さらに、参照順位は、スペックの合致度合いのみを考慮して設定されることもできる。このように、参照対象プリンタについての参照順位が決定されるため、参照対象プリンタを効率良く参照することができる。
【0074】
また、スペックに基づく参照対象プリンタの絞り込みのみが行われて、参照対象プリンタについての参照順位の設定が省略されてもよい。あるいは、スペックに基づく参照対象プリンタの絞り込みが省略されて、参照対象プリンタに対する参照順位の設定のみが行われてもよい。なお、スペックに基づく参照対象プリンタの絞り込み、および参照対象プリンタに対するスペックの合致度合いを考慮した参照順位の設定は、参照対象プリンタがプリントジョブの転送元の候補として参照すべきプリンタである場合だけでなく、参照対象プリンタがプリントジョブの転送先の候補として参照すべきプリンタである場合にも適用可能である。
【0075】
図16および図17は、プリントジョブの転送制御処理の手順を示すフローチャートである。なお、図16および図17のフローチャートにより示されるアルゴリズムは、プリンタAのROM32にプログラムとして記憶されており、CPU31により実行される。図16および図17の処理は、本実施形態では、ジョブ制御部322により行われる。
【0076】
なお、予め図6に示されるプリンタに対する参照順位の決定処理が実行され、参照対象プリンタおよび参照順位が決定されているものとする。
【0077】
まず、参照順位の最も高い参照対象プリンタのジョブキュー332に、プリントジョブが存在しているか否かが判断される(S301)。ジョブキュー332には、特定のスケジュールに基づいて実行されるように設定されたプリントジョブが格納されている。
【0078】
参照対象プリンタのジョブキュー332にプリントジョブが存在している場合(S301でYES)、ステップS303に進む。
【0079】
参照対象プリンタのジョブキュー332にプリントジョブが存在していない場合(S301でNO)、参照対象プリンタが用紙切れ等の障害発生中であるか否かが判断される(S302)。参照対象プリンタが障害発生中である場合(S302でYES)、障害発生中の参照対象プリンタからプリントジョブを極力取得して実行すべく、ステップS303に進む。
【0080】
ステップS303では、参照対象プリンタに対してジョブ属性データの要求が行われ、当該参照対象プリンタからジョブ属性データが取得される(S303)。
【0081】
図18は、ジョブキュー管理データの一例を示す図である。ここでは、プリンタBのジョブキュー管理データがテーブルで表されている。ジョブキュー管理データには、プリントジョブの識別符号であるジョブID、プリントジョブの処理の優先度合いを示すジョブ優先度、プリントジョブの現在の処理段階を示すジョブステータス、現在処理中のページを示す処理ページ数、予想処理累計時間、および他プリンタから転送されたプリントジョブであることを示す転送マークが含まれる。
【0082】
ジョブ属性データは、ジョブキュー332内のプリントジョブ、ジョブキュー管理データ、およびプリンタのスペックを参照することにより、プリントジョブごとに作成されて保存される。ジョブ属性データには、PDLの種類、用紙サイズの指定、カラー/モノクロの指定、フィニッシング処理の指定、印刷場所の指定、他プリンタからの転送マーク、予想処理累計時間、およびプリントジョブに関するユーザ情報などが含まれる。
【0083】
ステップS304では、取得されたジョブ属性データを参照して、プリンタAで実行可能なプリントジョブが存在するか否かが判断される。なお、他プリンタからの転送マークが付けられているプリントジョブは、通常、再度転送されて実行されないように、プリンタAで実行可能なプリントジョブに該当しないと判断される。
【0084】
プリンタAで実行可能なプリントジョブが存在しない場合(S304でNO)、ステップS301に戻り、次の参照順位の参照対象プリンタについての処理が行われる。
【0085】
プリンタAで実行可能なプリントジョブが存在する場合(S304でYES)、プリンタAで実行可能なプリントジョブの中から、自己のプリンタAに転送させる候補として参照されるプリントジョブである参照ジョブが決定される(S305)。ここで、ジョブキュー332内のプリントジョブの参照は、最も先に印刷要求され、かつ未処理のプリントジョブから順に行われる。
【0086】
ステップS304では、参照対象プリンタの印刷速度が自己のプリンタAの印刷速度と同じか否かが判断される(S306)。
【0087】
参照対象プリンタの印刷速度が自己のプリンタAの印刷速度と同じである場合(S306でYES)、参照対象プリンタにおける参照ジョブの予想処理累計時間は、自己のプリンタAで実行する場合の参照ジョブの予想処理累計時間よりも、所定倍以上か否かが判断される(S308)。所定倍は、たとえば2倍と、1倍よりも大きく設定されるが、適宜変更して設定され得る。
【0088】
参照対象プリンタにおける参照ジョブの予想処理累計時間が、自己のプリンタAで実行する場合の参照ジョブの予想処理累計時間よりも、所定倍以上である場合(S308でYES)、当該参照対象プリンタから自己のプリンタAに転送させるのに好都合なプリントジョブが存在すると判断され、ステップS310に進む。
【0089】
一方、参照対象プリンタの印刷速度が自己のプリンタAの印刷速度と異なる場合(S306でNO)、自己のプリンタAで実行する場合の参照ジョブの予想処理累計時間が、自己のプリンタAにおける印刷速度およびジョブキュー332の待ち時間等に基づいて、再計算されて(S307)、ステップS308に進む。
【0090】
参照対象プリンタにおける参照ジョブの予想処理累計時間が、自己のプリンタAで実行する場合の参照ジョブの予想処理累計時間よりも、所定倍以上でない場合(S308でNO)、当該参照対象プリンタから自己のプリンタAに転送させるのに好都合なプリントジョブは存在しないと判断され、ステップS309に進む。ステップS309では、参照対象プリンタが障害発生中であるか否かが判断される。参照対象プリンタが障害発生中である場合(S309でYES)、障害発生中の参照対象プリンタからプリントジョブを極力取得して実行すべく、ステップS310に進む。
【0091】
ステップS310では、自己のプリンタAのジョブキュー332がロックされる。これにより、自己のプリンタAのジョブキュー332は、他のプリンタから参照されなくなる。
【0092】
続いて、ジョブ制御部322は、参照対象プリンタを制御して、現在参照中の参照ジョブをロックさせ(S311)、参照対象プリンタから当該参照ジョブを自己のプリンタAに転送させる(S312)。
【0093】
自己のプリンタAに転送された参照ジョブは、自己のプリンタAのジョブキュー332に登録される(S313)。
【0094】
また、自己のプリンタAにおけるジョブ属性データにおいて、転送された参照ジョブに対して、転送マークが付けられる(S314)。
【0095】
そして、ジョブ制御部322は、参照対象プリンタを制御して、参照対象プリンタのジョブキューから転送済みの参照ジョブを削除させる(S315)。
【0096】
続いて、自己のプリンタAのジョブキュー332がアンロックされる。これにより、自己のプリンタAのジョブキュー332は、他のプリンタから参照可能となる。
【0097】
このように本実施形態のプリンタは、他のプリンタから負荷情報を受信し、当該他のプリンタにおけるプリントジョブに起因する負荷と自己のプリンタにおけるプリントジョブに起因する負荷とを比較し、比較の結果に応じて、他のプリンタから自己のプリンタへプリントジョブを転送させる制御を行う。
【0098】
したがって、負荷の軽いプリンタが負荷の高いプリンタからプリントジョブを取得するための処理を行うことができるため、負荷のかかっているプリンタが負荷分散のための処理によってさらに負荷が増すことを防止することができる。これにより、プリントジョブに起因する負荷を複数のプリンタに対して効率良く分散させることができる。
【0099】
また、プリントジョブを負荷の少ないプリンタに振り分けて転送する装置を別途備える必要がないため、設置スペースや設備コストの増大を防止できる。
【0100】
図19は、障害発生時の処理の手順を示すフローチャートである。なお、図19のフローチャートにより示されるアルゴリズムは、プリンタAのROM32にプログラムとして記憶されており、CPU31により実行される。図19の処理は、本実施形態では、ジョブ制御部322により行われる。
【0101】
ジョブ制御部322は、たとえば用紙切れ等のプリントジョブの実行に支障をきたす障害の発生を監視する(S401でNO)。
【0102】
障害が発生した場合(S401でYES)、自己のプリンタAのジョブキュー332がロックされているときにはアンロックされ(S402)、他のプリンタから参照可能とされる。つまり他のプリンタからの転送要求を受け付けることが可能となる。
【0103】
続いて、障害から回復したか否かが判断される(S403)。障害から回復した場合(S403でYES)、ステップS401に戻る。
【0104】
障害から回復していない場合(S403でNO)、自己のプリンタAにおけるジョブ属性データにおいて、転送されたプリントジョブに対して付けられている転送マークが除去される(S404)。
【0105】
続いて、障害から回復するまで待機する(S405でNO)。障害から回復した場合(S405でYES)、他のプリンタにより参照されているか否かが判断される(S406)。他のプリンタにより参照されている場合には、他のプリンタにより参照されなくなるまで待機する(S406でYES)。
【0106】
他のプリンタにより参照されていない場合(S406でNO)、ステップS404で除去された転送マークが、該当するプリントジョブに対して再度付けられる(S407)。
【0107】
図20は、プリンタの処理情報の通知処理の手順を示すフローチャートである。なお、図20のフローチャートにより示されるアルゴリズムは、プリンタAのROM32にプログラムとして記憶されており、CPU31により実行される。
【0108】
まず、ジョブ制御部322は、処理中の転送されたプリントジョブについてのジョブ属性データから、ユーザ情報を取得する(S501)。ユーザ情報には、プリントジョブを発行したクライアント端末の名称およびIPアドレスが含まれる。他のプリンタから転送されたプリントジョブであるか否かは、転送マークにより判断され得る。
【0109】
ステップS502では、ジョブ制御部322は、当該プリントジョブに基づく印刷処理が終了したか否かを判断する。
【0110】
印刷処理が終了していない場合(S502でNO)、自己のプリンタAにおいて障害が発生したか否かが判断される(S504)。障害が発生していない場合(S504でNO)、ステップS502に戻る。
【0111】
印刷処理が終了した場合(S502でYES)、あるいは障害が発生した場合(S504でYES)、ステップS503に進む。
【0112】
ステップS503では、プリンタの処理情報がユーザのクライアント端末に通知される。
【0113】
具体的には、まず、ジョブ制御部322は、当該プリントジョブに関するユーザ情報および出力状況を主制御部323に通知する。出力状況は、プリントジョブに基づいて正常に印刷出力されたこと、あるいは障害が発生した場合のエラーの種類などである。主制御部323は、プリンタAの名称および位置情報をプリンタの位置情報テーブルから取得し、上記のプリントジョブに関するユーザ情報および出力状況とともに、プリンタAの名称および位置情報を、ネットワーク制御部321に通知する。
【0114】
図21は、プリンタの位置情報テーブルの一例を示す図である。プリンタの位置情報テーブルは、予め各プリンタに登録されており、プリンタの名称および位置情報を含んでいる。位置情報は、ユーザがプリンタの設置場所を認識できる任意の表現形式で記述可能である。ネットワーク制御部321は、ユーザ情報の中からIPアドレスを取得し、当該IPアドレスを有するクライアント端末に対して、プリンタAの名称および位置情報と出力状況とを含むプリンタの処理情報を送信する。
【0115】
プリンタの処理情報は、より具体的には、クライアント端末に予めインストールされている位置通知ソフトウェアに対して通知される。通知を受けた位置通知ソフトウェアは、たとえば図22に示すような通知ウィンドウを作成して、クライアント端末の図示しないディスプレイに表示させる。
【0116】
なお、プリンタの処理情報は、当該プリントジョブを最初に受信したプリンタに送信されて、図22に示すような通知ウィンドウが操作パネル部35に表示されてもよい。これにより、ユーザは、最初の印刷出力予定のプリンタの設置場所へ行ったときに、実際に印刷出力されたプリンタの設置場所を知ることができる。
【0117】
このようなプリンタの処理情報の通知処理は、プリントジョブの転送が行われたとしても、実際に印刷出力したプリンタのみによって行われば目的が達成される。つまり、実際に印刷出力したプリンタ以外のプリンタは通知処理に関与しなくて済むため、処理が簡単となるだけでなく、ユーザは容易に印刷出力したプリンタを認識することが可能となる。
【0118】
本実施形態では、他のプリンタから自己のプリンタAへ転送されたプリントジョブに基づいてプリントを実行した場合に、プリンタの処理情報の通知処理がプリンタAにより行われる。ただし、自己のプリンタAから他のプリンタへプリントジョブが転送された場合に、プリントジョブの転送に関する情報の通知処理がプリンタAにより行われてもよい。この場合、プリントジョブの転送に関する情報には、転送先のプリンタの名称および位置情報が含まれる。
【0119】
なお、図20に示すプリンタの処理情報の通知処理は、プリントジョブを最初に受信したプリンタが当該プリントジョブを最初の予定通り実行した場合には省略されてもよい。
【0120】
本発明は、上述した実施形態のみに限定されるものではなく、特許請求の範囲内において、種々改変することができる。
【0121】
たとえば、本発明は、プリンタがプリントサーバを介してクライアント端末1からのプリントジョブを受信する印刷システムにおけるプリンタにも適用され得る。さらに、本発明は、かかる印刷システムにおけるプリントサーバにも適用され得る。この場合、プリントサーバは、当該プリントサーバに接続されている各プリンタからスペック等の情報を取得して、各プリンタがそれぞれプリントジョブの転送元または転送先の候補として参照すべきプリンタであるか否かを決定することができる。
【0122】
また、本発明は、プリントサーバがクライアント端末1からのプリントジョブを受信して複数のプリンタで並行してプリントを行わせるクラスタプリンティングシステムにおけるプリンタにも適用され得る。さらに、本発明は、クラスタプリンティングシステムにおけるプリントサーバにも適用され得る。この場合、プリントサーバは、他のプリントサーバに接続されている複数のプリンタのスペック等の情報を当該他のプリントサーバから取得することができる。そして、各プリントサーバにそれぞれ接続されているプリンタ同士でスペックが比較され得る。
【0123】
また、画像処理装置として、プリンタの代わりに、ファクシミリ装置、コピー機、およびそれらを複合した機能を有する多機能周辺機器(MFP:Multi−Function Peripheral)などが用いられてもよい。
【0124】
本発明において、画像処理装置としてのプリンタにおける各種処理を行う手段および方法は、専用のハードウェア回路、またはプログラムされたコンピュータのいずれによっても実現することが可能である。上記プログラムは、たとえばフレキシブルディスクやCD−ROMなどのコンピュータ読み取り可能な記録媒体によって提供されてもよいし、インターネット等のネットワークを介してオンラインで提供されてもよい。この場合、コンピュータ読み取り可能な記録媒体に記録されたプログラムは、通常、ハードディスク等の記憶部に転送されて記憶される。また、上記プログラムは、単独のアプリケーションソフトとして提供されてもよいし、装置の一機能としてその装置のソフトウェアに組み込まれてもよい。
【図面の簡単な説明】
【0125】
【図1】本発明の一実施形態に係るプリンタを有する印刷システムの全体構成図である。
【図2】プリンタの概略構成を示すブロック図である。
【図3】プリンタ情報テーブル、ジョブキュー、ネットワーク制御部、ジョブ制御部、および主制御部を説明するための図である。
【図4】プリンタ情報テーブルの登録処理の手順を示すフローチャートである。
【図5】プリンタ情報テーブルの一例を示す図である。
【図6】プリンタに対する参照順位の決定処理の手順を示すフローチャートである。
【図7】予想処理累計時間および参照順位が記録されたプリンタ情報テーブルを示す図である。
【図8】プリンタ情報テーブルの変形例を示す図である。
【図9】プリンタ情報テーブルの他の変形例を示す図である。
【図10】プリンタ情報テーブルのさらに他の変形例を示す図である。
【図11】プリンタ情報テーブルのさらに他の変形例を示す図である。
【図12】プリンタ情報テーブルのさらに他の変形例を示す図である。
【図13】プリンタ情報テーブルのさらに他の変形例を示す図である。
【図14】プリンタ情報テーブルのさらに他の変形例を示す図である。
【図15】プリンタ情報テーブルのさらに他の変形例を示す図である。
【図16】プリントジョブの転送制御処理の手順を示すフローチャートである。
【図17】図16から続く、プリントジョブの転送制御処理の手順を示すフローチャートである。
【図18】ジョブキュー管理データの一例を示す図である。
【図19】障害発生時の処理の手順を示すフローチャートである。
【図20】プリンタの処理情報の通知処理の手順を示すフローチャートである。
【図21】プリンタの位置情報テーブルの一例を示す図である。
【図22】通知ウィンドウの一例を示す図である。
【符号の説明】
【0126】
1 クライアント端末、
2 ディレクトリサーバ、
A,B,C,D プリンタ(画像処理装置)、
31 CPU、
32 ROM、
321 ネットワーク制御部、
322 ジョブ制御部、
323 主制御部、
33 RAM、
331 プリンタ情報テーブル、
332 ジョブキュー、
34 ハードディスク、
35 操作パネル部、
36 印刷部、
37 ネットワークインタフェース、
38 バス、
5 ネットワーク。
【特許請求の範囲】
【請求項1】
ネットワークを介して他の画像処理装置と通信可能な画像処理装置であって、
前記他の画像処理装置と通信を行う通信部と、
該通信部によって取得された、前記他の画像処理装置におけるプリントジョブに関連する情報に基づいて、前記プリントジョブを前記他の画像処理装置で実行するより自己の画像処理装置で実行することが好ましいかを判断し、この判断結果に応じて、前記他の画像処理装置から自己の画像処理装置へプリントジョブを転送させる制御部と、
を有することを特徴とする画像処理装置。
【請求項2】
前記制御部は、前記他の画像処理装置における負荷と自己の画像形成装置における負荷とを比較することにより、前記判断を行うことを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記自己の画像処理装置における負荷は、前記他の画像処理装置から自己の画像処理装置へ転送させようとするプリントジョブに起因する負荷を含むことを特徴とする請求項2に記載の画像処理装置。
【請求項4】
前記制御部は、前記通信部を介して複数の他の画像処理装置からそれぞれ前記情報を取得し、前記複数の他の画像処理装置における各負荷の大きさを考慮した順番で、前記比較を実行することを特徴とする請求項2に記載の画像処理装置。
【請求項5】
前記情報には前記他の画像処理装置のスペックに関するスペック情報が含まれ、
前記制御部は、前記複数の他の画像処理装置の各スペックと自己の画像処理装置のスペックとの合致度合いをさらに考慮して、前記比較を実行することを特徴とする請求項4に記載の画像処理装置。
【請求項6】
前記制御部は、自己の画像処理装置のスペックと合致しないスペックを持つ他の画像処理装置についての前記比較の実行を省略することを特徴とする請求項5に記載の画像処理装置。
【請求項7】
前記スペックは、処理可能なページ記述言語、用紙サイズ、カラー/モノクロの対応モード、フィニッシング機能情報、印刷速度、解像度、および設置場所の情報の少なくとも一つを含むことを特徴とする請求項5または6に記載の画像処理装置。
【請求項8】
他の画像処理装置との間でプリントジョブの転送が行われた場合、前記制御部は当該プリントジョブの処理に関する処理情報を通知することを特徴とする請求項1〜7のいずれか1つに記載の画像処理装置。
【請求項9】
前記処理情報は、他の画像処理装置から自己の画像処理装置へ転送されたプリントジョブに基づいてプリントを実行したことに関する情報を含むことを特徴とする請求項8に記載の画像処理装置。
【請求項10】
前記処理情報は、自己の画像処理装置の位置情報を含むことを特徴とする請求項9に記載の画像処理装置。
【請求項11】
前記処理情報は、自己の画像処理装置から他の画像処理装置へプリントジョブが転送されたことに関する情報を含むことを特徴とする請求項8に記載の画像処理装置。
【請求項12】
前記処理情報は、転送先の画像処理装置の位置情報を含むことを特徴とする請求項11に記載の画像処理装置。
【請求項13】
前記制御部は、前記通信部を介して前記処理情報をクライアント端末及び前記他の画像処理装置の少なくとも一方に通知することを特徴とする請求項8〜12のいずれか一つに記載の画像処理装置。
【請求項14】
ネットワークを介して他の画像処理装置と通信可能な画像処理装置を用いた画像処理方法であって、
他の画像処理装置から、当該他の画像処理装置におけるプリントジョブに関連する情報を受信する受信ステップと、
前記受信ステップで受信した情報に基づいて、前記プリントジョブを前記他の画像処理装置で実行するよりも自己の画像処理装置で実行することが好ましいかを判断する判断ステップと、
前記判断ステップにおける判断結果に応じて、前記他の画像処理装置から自己の画像処理装置へプリントジョブを転送させる制御を行う転送制御ステップと、
を有することを特徴とする画像処理方法。
【請求項15】
ネットワークを介して他の画像処理装置と通信可能な画像処理装置を制御するための画像処理プログラムであって、
他の画像処理装置から、当該他の画像処理装置におけるプリントジョブに関連する情報を受信する受信手順と、
前記受信手順で受信した情報に基づいて、前記プリントジョブを前記他の画像処理装置で実行するよりも自己の画像処理装置で実行することが好ましいかを判断する判断手順と、
前記判断手順における判断結果に応じて、前記他の画像処理装置から自己の画像処理装置へプリントジョブを転送させる制御を行う転送制御手順と、
を前記画像処理装置に実行させるための画像処理プログラム。
【請求項16】
請求項15に記載の画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項1】
ネットワークを介して他の画像処理装置と通信可能な画像処理装置であって、
前記他の画像処理装置と通信を行う通信部と、
該通信部によって取得された、前記他の画像処理装置におけるプリントジョブに関連する情報に基づいて、前記プリントジョブを前記他の画像処理装置で実行するより自己の画像処理装置で実行することが好ましいかを判断し、この判断結果に応じて、前記他の画像処理装置から自己の画像処理装置へプリントジョブを転送させる制御部と、
を有することを特徴とする画像処理装置。
【請求項2】
前記制御部は、前記他の画像処理装置における負荷と自己の画像形成装置における負荷とを比較することにより、前記判断を行うことを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記自己の画像処理装置における負荷は、前記他の画像処理装置から自己の画像処理装置へ転送させようとするプリントジョブに起因する負荷を含むことを特徴とする請求項2に記載の画像処理装置。
【請求項4】
前記制御部は、前記通信部を介して複数の他の画像処理装置からそれぞれ前記情報を取得し、前記複数の他の画像処理装置における各負荷の大きさを考慮した順番で、前記比較を実行することを特徴とする請求項2に記載の画像処理装置。
【請求項5】
前記情報には前記他の画像処理装置のスペックに関するスペック情報が含まれ、
前記制御部は、前記複数の他の画像処理装置の各スペックと自己の画像処理装置のスペックとの合致度合いをさらに考慮して、前記比較を実行することを特徴とする請求項4に記載の画像処理装置。
【請求項6】
前記制御部は、自己の画像処理装置のスペックと合致しないスペックを持つ他の画像処理装置についての前記比較の実行を省略することを特徴とする請求項5に記載の画像処理装置。
【請求項7】
前記スペックは、処理可能なページ記述言語、用紙サイズ、カラー/モノクロの対応モード、フィニッシング機能情報、印刷速度、解像度、および設置場所の情報の少なくとも一つを含むことを特徴とする請求項5または6に記載の画像処理装置。
【請求項8】
他の画像処理装置との間でプリントジョブの転送が行われた場合、前記制御部は当該プリントジョブの処理に関する処理情報を通知することを特徴とする請求項1〜7のいずれか1つに記載の画像処理装置。
【請求項9】
前記処理情報は、他の画像処理装置から自己の画像処理装置へ転送されたプリントジョブに基づいてプリントを実行したことに関する情報を含むことを特徴とする請求項8に記載の画像処理装置。
【請求項10】
前記処理情報は、自己の画像処理装置の位置情報を含むことを特徴とする請求項9に記載の画像処理装置。
【請求項11】
前記処理情報は、自己の画像処理装置から他の画像処理装置へプリントジョブが転送されたことに関する情報を含むことを特徴とする請求項8に記載の画像処理装置。
【請求項12】
前記処理情報は、転送先の画像処理装置の位置情報を含むことを特徴とする請求項11に記載の画像処理装置。
【請求項13】
前記制御部は、前記通信部を介して前記処理情報をクライアント端末及び前記他の画像処理装置の少なくとも一方に通知することを特徴とする請求項8〜12のいずれか一つに記載の画像処理装置。
【請求項14】
ネットワークを介して他の画像処理装置と通信可能な画像処理装置を用いた画像処理方法であって、
他の画像処理装置から、当該他の画像処理装置におけるプリントジョブに関連する情報を受信する受信ステップと、
前記受信ステップで受信した情報に基づいて、前記プリントジョブを前記他の画像処理装置で実行するよりも自己の画像処理装置で実行することが好ましいかを判断する判断ステップと、
前記判断ステップにおける判断結果に応じて、前記他の画像処理装置から自己の画像処理装置へプリントジョブを転送させる制御を行う転送制御ステップと、
を有することを特徴とする画像処理方法。
【請求項15】
ネットワークを介して他の画像処理装置と通信可能な画像処理装置を制御するための画像処理プログラムであって、
他の画像処理装置から、当該他の画像処理装置におけるプリントジョブに関連する情報を受信する受信手順と、
前記受信手順で受信した情報に基づいて、前記プリントジョブを前記他の画像処理装置で実行するよりも自己の画像処理装置で実行することが好ましいかを判断する判断手順と、
前記判断手順における判断結果に応じて、前記他の画像処理装置から自己の画像処理装置へプリントジョブを転送させる制御を行う転送制御手順と、
を前記画像処理装置に実行させるための画像処理プログラム。
【請求項16】
請求項15に記載の画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【公開番号】特開2006−309625(P2006−309625A)
【公開日】平成18年11月9日(2006.11.9)
【国際特許分類】
【出願番号】特願2005−133718(P2005−133718)
【出願日】平成17年4月28日(2005.4.28)
【出願人】(303000372)コニカミノルタビジネステクノロジーズ株式会社 (12,802)
【Fターム(参考)】
【公開日】平成18年11月9日(2006.11.9)
【国際特許分類】
【出願日】平成17年4月28日(2005.4.28)
【出願人】(303000372)コニカミノルタビジネステクノロジーズ株式会社 (12,802)
【Fターム(参考)】
[ Back to top ]