(57)【特許請求の範囲】
【請求項１】
実行すべきプリント枚数が所定枚数以下であるプリントジョブが複数送られてきたことを判定する第１の判定手段と、
前記第１の判定手段により複数のプリントジョブが送られてきたことが判定されたときに、送られてきたプリントジョブを所定の量だけ蓄積する蓄積手段と、
前記蓄積手段において前記所定の量のプリントジョブが蓄積されると、当該蓄積されたプリントジョブを分割する分割手段と、
前記分割されたプリントジョブの各々を複数のプリントエンジンへ出力する出力手段とを備え、
前記分割手段は、前記複数のプリントジョブのうち最終のものを受信すると、前記所定の量のプリントジョブが蓄積される前であっても、分割処理を開始する、プリント管理装置。
【請求項２】
前記分割手段は、プリントエンジンの特性に合わせて分割を行なう、請求項１に記載のプリント管理装置。
【請求項３】
前記蓄積手段における所定の量は、プリントエンジンの印刷効率に基づいて算出される、請求項１または２に記載のプリント管理装置。
【請求項４】
先に受信した前記プリントジョブから所定時間内に引き続く前記プリントジョブを受信しない場合に、前記複数のプリントジョブのうち最終のものを受信したと完了したと判断する、請求項１〜３のいずれか１項に記載のプリント管理装置。
【請求項５】
実行すべきプリント枚数が所定枚数以下であるプリントジョブが複数送られてきたことを判定する第１の判定ステップと、
前記第１の判定ステップにより複数のプリントジョブが送られてきたことが判定されたときに、送られてきたプリントジョブを所定の量だけ蓄積する蓄積ステップと、
前記蓄積ステップにより前記所定の量のプリントジョブが蓄積されると、当該蓄積されたプリントジョブを分割する分割ステップと、
前記分割されたプリントジョブの各々を複数のプリントエンジンへ出力する出力ステップとを備え、
前記分割ステップでは、前記複数のプリントジョブのうち最終のものを受信すると、前記所定の量のプリントジョブが蓄積される前であっても、分割処理を開始する、プリント管理方法。
【請求項６】
実行すべきプリント枚数が所定枚数以下であるプリントジョブが複数送られてきたことを判定する第１の判定ステップと、
前記第１の判定ステップにより複数のプリントジョブが送られてきたことが判定されたときに、送られてきたプリントジョブを所定の量だけ蓄積する蓄積ステップと、
前記蓄積ステップにより前記所定の量のプリントジョブが蓄積されると、当該蓄積されたプリントジョブを分割する分割ステップと、
前記分割されたプリントジョブの各々を複数のプリントエンジンへ出力する出力ステップとをコンピュータに実行させ、
前記分割ステップでは、前記複数のプリントジョブのうち最終のものを受信すると、前記所定の量のプリントジョブが蓄積される前であっても、分割処理を開始するための、プリント管理プログラムを記録した記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明はプリント管理装置、プリント管理方法およびプリント管理プログラムを記録した記録媒体に関し、特に実行すべきプリント枚数が少ないジョブ（ショートジョブ）が多数送られてきたときに効率的なプリントを行なうことができるプリント管理装置、プリント管理方法およびプリント管理プログラムを記録した記録媒体に関する。
【０００２】
【従来の技術】
従来より、１つのプリントコントローラに複数のプリンタ（プリントエンジン）を接続したプリントシステムが知られている。このようなシステムに、大量のプリントを行なうプリントジョブが送られてきたときには、ジョブが分割されて、複数のプリンタでプリントが行われる。
【０００３】
図４は、そのような従来のプリントシステムの行なう処理を示すフローチャートである。
【０００４】
図４を参照して、クライアントコンピュータよりプリント指示があったときに、ステップＳ５０１においてクライアントコンピュータからプリントコントローラにメタデータを送信することができるかが判定され、ＹＥＳであればステップＳ５０３でメタデータが作成される。一方、ステップＳ５０１でＮＯであれば、ステップＳ５１３でクライアントコンピュータのプリンタドライバにおいて、プリントすべきデータをＰＤＬ（ページ記述言語）に変換する。
【０００５】
ステップＳ５０５で、クライアントコンピュータからプリントコントローラのスプーラにデータが送られ、蓄積される。そして、ステップＳ５０７でＲＩＰ（ラスタイメージプロセッサ）の処理によりビットマップデータが作成され、ステップＳ５０９でプリントコントローラ内のプリントエンジン管理部にそのデータが蓄積される。
【０００６】
ステップＳ５１１でプリント開始時にプリンタのチェックが行なわれ、２台以上のプリンタでプリントを行なうことができるかが判定される。ＹＥＳであればステップＳ５１５で１つのジョブをそのジョブのページサイズやコピー部数に応じて複数のジョブに分割し、複数のプリンタにおいてプリントを行なう。
【０００７】
一方、ステップＳ５１１でＮＯであれば、ジョブの分割は行なわずに１台のプリンタでプリントを行なう。
【０００８】
上述に示した技術によると、１つのジョブを分割し、複数のプリンタでプリントを行なうことができるため、プリントに要する時間が短くなるという効果がある。
【０００９】
【発明が解決しようとする課題】
上述のように従来のプリントシステムでは、ＲＩＰ処理を行なった後、一旦プリントエンジン管理部においてデータを蓄積し、１つのジョブのすべてのデータが蓄積された時点で、複数台のプリンタにジョブを振り分ける機能がある。
【００１０】
このような機能は、１つのジョブのページ枚数が多いときには非常に有効である。たとえば、プリント枚数が１２００ページのジョブを実行する場合において、２台の６０ＰＰＭ（１分間に６０枚のプリントが可能な）プリンタが接続されているときは、ジョブを６００ページずつに分割して、プリント作業を行なうことができる。このため、プリントは、１２００／（６０×２）＝１０分で完了する。また、このプリンタを４台接続している場合には１台のプリンタに３００ページずつジョブが配分されるため、１２００／（６０×４）＝５分で１つのジョブのプリントが完了する。
【００１１】
しかし、場合によっては、１つのジョブのページ数が少なく、トータルのジョブの数が多い場合、たとえばデータベースに蓄積されているアドレス情報である２０００人分のユーザデータを１名分ずつ定型文書に貼り込むダイレクトメールアプリケーションを実行する場合などが存在する。このような場合には、１つのジョブが１ページもしくは２ページのドキュメントのプリントからなるケースが多い。すなわち、小さなジョブ（ショートジョブ）が多数存在することになる。
【００１２】
このようなジョブを処理する場合、第１のジョブのＲＩＰが終了した時点で（ジョブが小さいためジョブの分割は行なわれず）、１つのプリントエンジンに第１のジョブのプリントデータが送られる。そのプリントエンジンがプリント処理を行なっている間にも、第２のジョブおよび第３のジョブ以降のジョブが次々にＲＩＰされ、プリントエンジン管理部に蓄積される。
【００１３】
そして、第１のジョブのプリントが終了した時点で、第１のジョブのプリントを行なったプリントエンジンで第２のジョブがプリントされる。そして第２のジョブのプリントが終了した後に、第３のジョブが同じプリントエンジンでプリントされる。
【００１４】
このような処理が行なわれることによって、以下のような２つの問題点が生じる。
【００１５】
（１）  通常のプリントモードではエラーリカバリを行なうため、１つ前のジョブのプリントが終了するまで次のジョブのプリントが開始されない。このため、たとえば大型プリンタを用いたときのように、用紙の搬送経路が長い場合には印刷効率が悪くなる。また、両面プリントを行なう場合に、複数の片面プリントを行なった後、裏面のプリントを複数枚行なう方式を採用しているプリンタ（たとえば両面プリントを行なう場合に６枚連続で片面プリントを行ない、その後にその６枚の裏面のプリントを行うプリンタ）を採用すると、さらに印刷効率が悪くなる。たとえば、１つのジョブにおいて２ページの両面プリント（すなわち用いる用紙が１枚のみのプリント)を行なう場合には、プリンタ内の裏面プリント用に蓄積させる用紙の枚数（内蔵枚数)が１枚のみとなってしまい、ジョブの印刷効率が極端に悪くなってしまう。
【００１６】
（２）  ショートジョブが次々に送られてくると、常に１台のプリンタしか動作しないことになる。１台目のプリンタがプリント中であるときに、次のジョブを２台目のプリンタに送りプリントさせる方法もあるが、プリントの順番が狂ってしまうため、すべてのジョブのプリントが終了した後に、ユーザがプリントされた用紙を並べ替える必要があるという別の問題が生じてしまう。
【００１７】
この発明は上述の問題点を解決するためになされたものであり、効率の良いプリント処理を可能とするプリント管理装置、プリント管理方法およびプリント管理プログラムを記録した記録媒体を提供することを目的としている。
【００１８】
【課題を解決するための手段】
上記目的を達成するためこの発明のある局面に従うと、プリント管理装置は、実行すべきプリント枚数が所定枚数以下であるプリントジョブが複数送られてきたことを判定する第１の判定手段と、第１の判定手段により複数のプリントジョブが送られてきたことが判定されたときに、送られてきたプリントジョブを所定の量だけ蓄積する蓄積手段と、蓄積手段により蓄積されたプリントジョブを分割する分割手段と、分割されたプリントジョブの各々を複数のプリントエンジンへ出力する出力手段とを備える。
【００１９】
好ましくは、分割手段は、プリントエンジンの特性に合わせて分割を行なう。さらに好ましくは、蓄積手段における所定の量は、プリントエンジンの印刷効率に基づいて算出される。
【００２０】
この発明の他の局面に従うとプリント管理方法は、実行すべきプリント枚数が所定枚数以下であるプリントジョブが複数送られてきたことを判定する第１の判定ステップと、第１の判定ステップにより複数のプリントジョブが送られてきたことが判定されたときに、送られてきたプリントジョブを所定の量だけ蓄積する蓄積ステップと、蓄積ステップにより蓄積されたプリントジョブを分割する分割ステップと、分割されたプリントジョブの各々を複数のプリントエンジンへ出力する出力ステップとを備える。
【００２１】
この発明のさらに他の局面に従うと、プリント管理プログラムを記録した記録媒体は、実行すべきプリント枚数が所定枚数以下であるプリントジョブが複数送られてきたことを判定する第１の判定ステップと、第１の判定ステップにより複数のプリントジョブが送られてきたことが判定されたときに、送られてきたプリントジョブを所定の量だけ蓄積する蓄積ステップと、蓄積ステップにより蓄積されたプリントジョブを分割する分割ステップと、分割されたプリントジョブの各々を複数のプリントエンジンへ出力する出力ステップとをコンピュータに実行させるためのプリント管理プログラムを記録している。
【００２２】
【発明の実施の形態】
図１は、本発明の実施の形態の１つにおけるプリント管理装置を採用したプリントシステムの構成を示す図である。
【００２３】
図を参照して、プリントシステムは画像を形成する複数のプリントエンジン２０，２１と、コンピュータにより作成されたドキュメントデータを、プリントエンジン２０，２１が画像を形成するためのデータに変換するプリントコントローラ１０と、ドキュメントを作成するクライアントコンピュータ３０とで構成されている。
【００２４】
プリントコントローラ１０と、２台のプリントエンジン２０，２１との間は専用のインターフェイスで接続されている。クライアントコンピュータ３０とプリントコントローラ１０との間はネットワーク（たとえばＬＡＮなど）で接続されている。
【００２５】
なお、上述の実施の形態にかかわらず、プリントコントローラ１０とプリントエンジン２０，２１との間をＬＡＮなどの汎用ネットワークで接続してもよい。
【００２６】
図２は、図１のプリントシステムをさらに詳しく示すブロック図である。
図を参照して、クライアントコンピュータ３０はプリンタドライバ３００を備えている。プリントコントローラ１０は、スプーラ１００と、ＲＩＰ１１０と、プリントエンジン管理部１２０とを備えている。そして、プリントエンジン管理部１２０は、ジョブ分割部１２１を備えている。
【００２７】
スプーラ１００は、クライアントコンピュータ３０から送られてきたドキュメントデータ（プリントキュー）を蓄積し、プリントキューの管理を行なう。スプーラ１００に１ジョブ分のドキュメントデータが蓄積されると、次の工程であるＲＩＰ１１０にデータが渡される。
【００２８】
クライアントコンピュータ３０からスプーラ１００を見ることによって、プリント指示を行なった文書がＲＩＰ処理に入ったのか、待ち状態であるのか、またＲＩＰのプロセスでエラーが発生したのかをユーザは確認することができる。
【００２９】
ただし、正常にＲＩＰされたデータがプリントエンジンでのプリント作業中に紙詰まりや用紙切れを起こしたなどの情報は、スプーラ１００では受取ることができない。
【００３０】
ＲＩＰ（ラスタイメージプロセッサ）１１０は、ドキュメントのデータをプリントエンジンに出力可能なデータ形式に変換する。ＲＩＰは、ページ記述言語（ＰＤＬ）を用いて記述された文字や画像をビットマップデータに変換する。
【００３１】
ＲＩＰに要する時間は、ドキュメントのサイズや、カラー原稿の有無、またグラフィックスの複雑さなどによって異なる。
【００３２】
ＲＩＰ１１０でビットマップ化されたデータはプリントエンジン管理部１２０に渡される。プリントエンジン管理部１２０は、プリント可能なビットマップイメージを管理して、実際にプリントエンジン２０，２１にデータを渡す。
【００３３】
また、プリントエンジン管理部１２０はビットマップデータを蓄積する機能を有しており、蓄積されたデータを再びプリントアウトすることも可能である。
【００３４】
プリントエンジン管理部１２０は、さらにプリントエンジンのリソース管理をも行なう。リソース管理には静的な管理と動的な管理とがある。
【００３５】
静的な管理とはたとえば、接続されているプリントエンジンの最大印字サイズ、カラープリント機能の有無、接続台数、プリントエンジンの印字速度、フィニッシング機能の管理などである。プリントエンジン管理部１２０は、このような管理により得られたパラメータを元に、ジョブを各プリンタに配分(分割)する量を規定する。
【００３６】
また、動的な管理とは、接続されているプリントエンジンの用紙の残量、トナーの残量、プリンタのステータスなどの管理である。
【００３７】
ジョブ分割部１２１は、管理により得られたパラメータを元に、１つのジョブを複数のプリントエンジンに分割する。
【００３８】
プリントエンジン２０，２１は、プリントコントローラ１０より送られてくるビットマップ形式もしくはビットマップ圧縮形式のデータから画像を形成する。なお、本実施の形態においては１台のプリントコントローラ１０に２台のプリントエンジン２０，２１が接続されているが、３台以上のプリントエンジンをプリントコントローラ１０に接続するようにしてもよい。
【００３９】
また、本実施の形態におけるプリントエンジン２０，２１は、両面プリント、ステープル(Staple)、パンチ(Punch)、紙折り(Folding)などのフィニッシング機能を有している。
【００４０】
プリントエンジン２０，２１内でのステータスはインターフェイスを通じて、プリントコントローラ１０にリアルタイムでレポートされる。ステータスの内容には、たとえば給紙トレイの残留用紙の枚数、トナーの残量、エラー情報、現在行なっているジョブの設定モードなどが挙げられる。
【００４１】
クライアントコンピュータ３０は、各種アプリケーションソフトウェアを用いてドキュメントや、提携業務システムからの帳票などを作成する。クライアントコンピュータ３０は、プリンタドライバ３００を使用して、ドキュメントや帳票などをプリントコントローラ１０が解釈可能なページ記述言語（ＰＤＬ）に変換することができる。ＰＤＬに変換されたデータはネットワークを経由して、プリントコントローラ１０のスプーラ１００に蓄積される。
【００４２】
従来の技術においては、１つのジョブがＲＩＰされるとすぐにプリント作業が開始されていた。しかしながら、本実施の形態においてはプリントコントローラ１０は、ショートジョブが複数送られてきたときに、ある一定の量のジョブが蓄積されるまでプリントを開始しない。そして、プリントを行なうのに最も効率が良くなった時点で、プリントを開始する。
【００４３】
たとえば、６０ＰＰＭの（１分間で６０ページのプリントが可能な）プリントエンジンが２台接続されているシステムにおいて、ＲＩＰに０．５秒必要な１ページのジョブを１２００ジョブプリントする場合、ＲＩＰのトータル時間は０．５×１２００＝６００秒（１０分）となる。
【００４４】
ここで１つのジョブが終了した時点で、次のプリント作業を開始する場合、プリント時間（１ページに１秒)はＲＩＰ時間（１ページに０．５秒)の２倍であるため、常にＲＩＰデータがプリントエンジン管理部１２０に存在することになる。従来技術のように１台のプリンタしか動作させないのであれば、ジョブとジョブとの間の切れ目をなくすようにプリントを行なっても、１２００／６０＝２０分の時間が必要となる。
【００４５】
ただし、現実的には連続して用紙を給紙するため、ページ間に０．５秒以下の時間が必要となり、実際には４５ＰＰＭ程度にプリントエンジンのパフォーマンスが落ち、２７分程度かかってしまう。
【００４６】
次に、すべてのＲＩＰ作業が終わった後にトータルのジョブを２台のプリンタに分割した場合は、ＲＩＰ処理に１０分、プリント処理に１２００／（６０×２）＝１０分必要となり、合計は２０分となる。
【００４７】
しかし、本実施の形態においては、蓄積されたショートジョブのページ数の合計が１２０ページとなった時点（またはショートジョブが１２０ジョブ蓄積された時点としてもよい)で、プリントを開始する。そして、最初の１２０ジョブを２台のプリンタに振り分けて、１２０／（６０×２）＝１分でプリント作業を行なう。また、プリントジョブを行なっている間に、次の１２０ジョブ分のデータが蓄積されているので、待ち時間なしに再び２台のプリンタにジョブを分割してプリントを行なう。したがって、トータルのプリント時間は最初のＲＩＰ時間１分＋トータルプリント時間１０分の合計１１分となる。これにより、効率のよいプリントを行うことができる。
【００４８】
ただしすべてのジョブのプリントが終了した後、ユーザは順番どおりにジョブを並べ替える必要がある。
【００４９】
ここでユーザが並べ替える作業量を減らしたい場合には、６００ジョブ（または６００ページ分のジョブ)が蓄積されるまでプリントエンジンを待機させればよい。このようにすると、トータルのジョブが４つに（３００ジョブづつに)分割されるだけであるため、ユーザが順番どおりにジョブを並べ替える手間を省くことができる。ただしこのとき必要になる時間は、
ＲＩＰ時間＝０．５秒×６００＝３００秒＝５分
プリント時間＝１２００／（６０×２）＝１０分
となり、トータルで１５分必要になる。
【００５０】
たとえば、本実施の形態によると、１００００ジョブを超えるようなドキュメントを４台以上のプリンタに分割してプリントを行なうような場合にプリント時間を大幅に短縮させることができ、プリントの効率を良くすることができる。
【００５１】
なお、プリントコントローラ１０はすべてのショートジョブが送られたことを判断する手段を持っていない。したがって、クライアントコンピュータ３０上で動作するアプリケーションにおいてジョブの送信終了を通知する手段を設けたり、またはスプーラ１００にタイマを設けて、ある一定時間以上次のジョブが来ない場合にはジョブの送信終了とみなすようにしてもよい。ダイレクトメールを送付するためのジョブなどの場合には、各ジョブでページ中の宛名が異なるだけであるため、１つのジョブがスプーラ１００に蓄積される時間はほぼ一定である。このため、タイマでジョブの終了を判断することは有効である。
【００５２】
また、ジョブ分割部１２１によりジョブを分割するための条件として、ＲＩＰ時間、プリントモードなどの他に、各プリントエンジンの用紙の残量、トナーの残量などを考慮するようにすると、さらに効率的にジョブの分割およびプリントを行なうことができる。
【００５３】
また、プリントの途中で片方のプリントエンジンの用紙が切れた場合などには、蓄積させるジョブの数を１２０から６０に切換えるなど、動的にショートジョブの蓄積数を変化させるようにしてもよい。
【００５４】
またジョブの分割は、各プリントエンジンの速度を考慮して行なうことにしてもよい。
【００５５】
図３は、本実施の形態におけるプリントコントローラ１０が行なう処理を示すフローチャートである。
【００５６】
図を参照して、ステップＳ１０５においてスプーラ１００にプリントデータを蓄積する。次に、ステップＳ１０７においてＲＩＰ処理をデータに対して行なう。次に、ステップＳ１０９においてプリントエンジン管理部１２０にデータを蓄積する。
【００５７】
ステップＳ１１１において１つのジョブのページ数が４ページ以下であるかを判定する。本実施の形態においては、１つのジョブのページ数が４ページ以下である場合にそのジョブをショートジョブとみなし、複数のショートジョブをプリントエンジン管理部１２０に蓄積させることにしている。
【００５８】
ステップＳ１１１でＹＥＳであれば、ステップＳ１１３においてすぐにショートジョブのプリントを行なわず、ジョブをメモリに蓄積させる。次に、ステップＳ１１５において２秒以内に次のジョブが蓄積されたかが判定される。この２秒の値は、ＲＩＰ速度が０．５秒である場合を考慮して設定されたものである。すなわち２秒以内に次のジョブが蓄積されたときには、そのジョブもショートジョブとみなし、蓄積を行う。ステップＳ１１５におけるしきい値は、ＲＩＰ速度に応じて適宜修正を加えてもよい。
【００５９】
ステップＳ１１７において１２０ページ分（または１２０ジョブ分でもよい)のジョブが蓄積されたかが判定される。ＹＥＳであれば、ステップＳ１１９において２台以上のプリンタがプリント可動状態であるかを判定し、ＹＥＳであればステップＳ１２１において蓄積されたジョブを分割しプリントを行なう。
【００６０】
なお、ステップＳ１１５でＮＯの場合（最終のショートジョブが送られてきた場合）、またはステップＳ１１９でＮＯの場合には、そのまま蓄積されたジョブのプリントを行なう。
【００６１】
また、ステップＳ１１７でＮＯであればステップＳ１１３に戻り、次のジョブの蓄積を行なう。
【００６２】
また、ステップＳ１１１でＮＯであれば、送られてきたジョブがショートジョブではないものとみなし、そのままプリントを行なう。
【００６３】
なお、ジョブを蓄積させる数（ジョブの数またはページ枚数)は、プリントエンジンの印刷効率が最大になるように算出することが望ましい。エンジンの効率は、以下の（１）〜（６）に示されるパラメータにより動的に算出される。ジョブを蓄積させる数は、プリントコントローラ１０で自動的に算出を行ない装置に設定するようにしてもよいし、ユーザが手動で設定するようにしてもよい。
【００６４】
（１）  プリントエンジンの印字速度
（２）  接続しているエンジンの数
（３）  用紙のサイズ
（４）  両面プリントを行なうときの用紙のプリンタ内の最大内蔵枚数
（５）  ＲＩＰ速度
（６）  スプール速度
なお、上述のフローチャートに示される処理はソフトウェアにより行なってもよいし、ハードウェア回路を用いて行なってもよい。
【００６５】
また、上述のフローチャートの処理を実行するプログラムを提供することもできるし、そのプログラムをＣＤ−ＲＯＭ、フロッピーディスク、ハードディスク、ＲＯＭ、ＲＡＭ、メモリカードなどの記録媒体に記録してユーザに提供することにしてもよい。
【００６６】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【図１】  本発明の実施の形態の１つにおけるプリントシステムの構成を示す図である。
【図２】  図１のプリントシステムをさらに詳しく示すブロック図である。
【図３】  図１のプリントコントローラ１０が行なう処理を示すフローチャートである。
【図４】  従来のプリントシステムにおいて行なわれる処理を示すフローチャートである。
【符号の説明】
１０  プリントコントローラ、２０，２１  プリントエンジン、３０  クライアントコンピュータ、１００  スプーラ、１１０  ＲＩＰ、１２０  プリントエンジン管理部、１２１  ジョブ分割部、３００  プリンタドライバ。
【図１】
0004258114.tif 000002
【図２】
0004258114.tif 000003
【図３】
0004258114.tif 000004
【図４】
0004258114.tif 000005