(57)【特許請求の範囲】
【請求項１】
印刷命令を受信した場合に、印刷命令に含まれる属性情報を用いて、印刷物の作成のための処理の互いに異なる一部をそれぞれ行う複数の処理装置のうちのどの処理装置による処理をどの順番で実行することで作成対象の印刷物を作成するかを表す工程情報を生成する生成手段と、
前記工程情報に含まれる各処理装置から取得される、当該処理装置の動作に関する動作情報および当該処理装置の電源の状態を表す電源状態情報を用いて、前記工程情報に含まれる各処理装置について当該処理装置を起動する起動処理にかかる起動時間を特定する特定手段と、
前記動作情報と、前記印刷命令に含まれる前記属性情報とを用いて、前記工程情報に含まれる各処理装置について前記作成対象の印刷物の作成のために当該処理装置が行う処理にかかる処理時間を算出する算出手段と、
前記起動時間および前記処理時間と、前記工程情報が表す前記処理装置の処理の実行の順番と、を用いて、１つの処理装置の処理の終了の時刻と当該１つの処理装置の次に処理を実行する処理装置の起動処理の終了の時刻とが一致するように、前記工程情報に含まれる各処理装置の起動処理の開始の時刻を決定する決定手段と、
前記工程情報に含まれる各処理装置を、前記決定手段が決定した時刻に起動処理を開始するよう制御する制御手段と、
を備えることを特徴とする制御装置。
【請求項２】
前記工程情報に含まれる処理装置のうち最初に処理を実行する１番目の処理装置に対して、当該１番目の処理装置の起動処理の終了の時刻に前記印刷命令を送信する送信手段をさらに備える、ことを特徴とする請求項１に記載の制御装置。
【請求項３】
前記制御手段は、さらに、前記工程情報に含まれる各処理装置を、当該処理装置における処理が終了した時点で当該処理装置の電源の状態を省電力モードまたは電源オフ状態に設定するよう制御する、
ことを特徴とする請求項１または２に記載の制御装置。
【請求項４】
印刷命令を受信した場合に、印刷命令に含まれる属性情報を用いて、印刷物の作成のための処理の互いに異なる一部をそれぞれ行う複数の処理装置のうちのどの処理装置による処理をどの順番で実行することで作成対象の印刷物を作成するかを表す工程情報を生成する生成ステップと、
前記工程情報に含まれる各処理装置から取得される、当該処理装置の動作に関する動作情報および当該処理装置の電源の状態を表す電源状態情報を用いて、前記工程情報に含まれる各処理装置について当該処理装置を起動する起動処理にかかる起動時間を特定する特定ステップと、
前記動作情報と、前記印刷命令に含まれる前記属性情報とを用いて、前記工程情報に含まれる各処理装置について前記作成対象の印刷物の作成のために当該処理装置が行う処理にかかる処理時間を算出する算出ステップと、
前記起動時間および前記処理時間と、前記工程情報が表す前記処理装置の処理の実行の順番と、を用いて、１つの処理装置の処理の終了の時刻と当該１つの処理装置の次に処理を実行する処理装置の起動処理の終了の時刻とが一致するように、前記工程情報に含まれる各処理装置の起動処理の開始の時刻を決定する決定ステップと、
前記工程情報に含まれる各処理装置を、前記決定ステップで決定した時刻に起動処理を開始するよう制御する制御ステップと、
をコンピュータに実行させるための制御プログラム。
【請求項５】
印刷物の作成のための処理の互いに異なる一部をそれぞれ行う複数の処理装置と、
前記複数の処理装置を制御する制御装置と、
を備え、
前記制御装置は、
印刷命令を受信した場合に、印刷命令に含まれる属性情報を用いて、前記複数の処理装置のうちのどの処理装置による処理をどの順番で実行することで作成対象の印刷物を作成するかを表す工程情報を生成する生成手段と、
前記工程情報に含まれる各処理装置から取得される、当該処理装置の動作に関する動作情報および当該処理装置の電源の状態を表す電源状態情報を用いて、前記工程情報に含まれる各処理装置について当該処理装置を起動する起動処理にかかる起動時間を特定する特定手段と、
前記動作情報と、前記印刷命令に含まれる前記属性情報とを用いて、前記工程情報に含まれる各処理装置について前記作成対象の印刷物の作成のために当該処理装置が行う処理にかかる処理時間を算出する算出手段と、
前記起動時間および前記処理時間と、前記工程情報が表す前記処理装置の処理の実行の順番と、を用いて、１つの処理装置の処理の終了の時刻と当該１つの処理装置の次に処理を実行する処理装置の起動処理の終了の時刻とが一致するように、前記工程情報に含まれる各処理装置の起動処理の開始の時刻を決定する決定手段と、
前記工程情報に含まれる各処理装置を、前記決定手段が決定した時刻に起動処理を開始するよう制御する制御手段と、
を備える、ことを特徴とする印刷システム。
【請求項６】
前記制御手段は、前記決定手段によって決定された各起動処理の起動処理の開始の時刻に、各処理装置に対して、起動処理を開始させるための起動開始命令を送信する、
ことを特徴とする、請求項１に記載の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御装置、制御プログラム、および印刷システムに関する。
【背景技術】
【０００２】
特許文献１には、複数台の画像形成装置を連結動作させる画像形成システムにおいて消費電力を低減する技術が開示されている。特許文献１に記載の画像形成システムにおいて、マスター装置は、省電力モードで待機しているスレーブ装置のウォームアップ時間と、設定されたジョブの処理時間と、を比較し、処理時間がウォームアップ時間以上のとき、スレーブ装置を起動させると共にスレーブ装置に並行ジョブ要求を送信して、並行ジョブ処理を開始する。処理時間がウォームアップ時間より短い場合は、マスター装置が単独動作でジョブを実行する。
【０００３】
特許文献２には、ウォームアップを必要とする後処理装置が接続された画像形成装置において複数のジョブを処理する場合に、ウォームアップを必要とする後処理を施さないジョブの処理時間と、後処理装置のウォームアップ完了時間とに基づいて、後処理装置のウォームアップ完了前に、上述の複数のジョブの実行順序を決定する技術が開示されている。
【０００４】
特許文献３に記載の技術では、複数の処理装置で連携してワークフローを実行するシステムにおいて、起動側の処理装置がフローファイルを読み込んで、後続のワークフローでスリープ機能が有効な処理装置が存在するか否かを判定し、スリープ機能が有効な処理装置が存在する場合に、当該処理装置に対して、当該処理装置が実行するコマンドを受信したらスリープ機能を復帰させるコマンドとして登録する。当該処理装置が登録された復帰コマンドと一致するコマンドを受信すると、スリープモードから通常のモードに復帰する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００１−７９６１号公報
【特許文献２】特開２００７−１６３５５９号公報
【特許文献３】特開２０１０−２１９６３０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
印刷物の作成のための処理の互いに異なる一部をそれぞれ行う複数の処理装置が特定の順番で自装置の担当の処理工程を行うことで印刷物を作成することがある。この場合に、印刷ジョブの処理を開始する前に、印刷ジョブの処理に関わるすべての処理装置を起動させて処理待ち状態にしておくことで、印刷ジョブの処理中に各処理装置の起動を待つことなく各処理装置の担当の処理工程を実行できるようにすることが考えられる。しかし、印刷ジョブの処理を開始する前にすべての処理装置を起動させておくと、より後の処理工程を担当する処理装置において、処理開始の待ち時間が発生し、この待ち時間の間の消費電力は、処理の実行に利用されない、無駄な電力であるとも捉えられる。
【０００７】
印刷ジョブの各処理工程を担当する複数の処理装置による消費電力を低減するために、各処理装置の電源の状態をオフ状態または省電力状態に設定しておき、ある処理装置の担当の処理工程の１つ前の処理工程を担当する処理装置の処理が終了した時点で、当該ある処理装置を起動することが考えられる。しかし、このように各処理装置の電源の状態を制御すると、１つの処理装置による処理工程が終了してから次の処理工程の処理装置が処理を開始するまでの間に待ち時間が発生するため、印刷ジョブの処理開始時にすべての処理装置を起動させておく上述の場合と比較して、印刷ジョブ全体の処理の開始から終了までの時間がより長くなり得る。
【０００８】
本発明の目的は、印刷物の作成のための処理の互いに異なる一部をそれぞれ行う複数の処理装置が特定の順番で自装置の担当の処理工程を行うことで印刷物を作成する場合に、印刷物の作成にかかる時間を短縮すると共に、複数の処理装置による消費電力を低減することができる制御装置、制御プログラム、および印刷システムを提供することである。
【課題を解決するための手段】
【０００９】
請求項１に係る発明は、印刷命令を受信した場合に、印刷命令に含まれる属性情報を用いて、印刷物の作成のための処理の互いに異なる一部をそれぞれ行う複数の処理装置のうちのどの処理装置による処理をどの順番で実行することで作成対象の印刷物を作成するかを表す工程情報を生成する生成手段と、前記工程情報に含まれる各処理装置から取得される、当該処理装置の動作に関する動作情報および当該処理装置の電源の状態を表す電源状態情報を用いて、前記工程情報に含まれる各処理装置について当該処理装置を起動する起動処理にかかる起動時間を特定する特定手段と、前記動作情報と、前記印刷命令に含まれる前記属性情報とを用いて、前記工程情報に含まれる各処理装置について前記作成対象の印刷物の作成のために当該処理装置が行う処理にかかる処理時間を算出する算出手段と、前記起動時間および前記処理時間と、前記工程情報が表す前記処理装置の処理の実行の順番と、を用いて、１つの処理装置の処理の終了の時刻と当該１つの処理装置の次に処理を実行する処理装置の起動処理の終了の時刻とが一致するように、前記工程情報に含まれる各処理装置の起動処理の開始の時刻を決定する決定手段と、前記工程情報に含まれる各処理装置を、前記決定手段が決定した時刻に起動処理を開始するよう制御する制御手段と、を備えることを特徴とする制御装置である。
【００１０】
請求項２に係る発明は、請求項１に係る発明において、前記工程情報に含まれる処理装置のうち最初に処理を実行する１番目の処理装置に対して、当該１番目の処理装置の起動処理の終了の時刻に前記印刷命令を送信する送信手段をさらに備える。
【００１１】
請求項３に係る発明は、請求項１または２に係る発明において、前記制御手段は、さらに、前記工程情報に含まれる各処理装置を、当該処理装置における処理が終了した時点で当該処理装置の電源の状態を省電力モードまたは電源オフ状態に設定するよう制御する。
【００１２】
請求項４に係る発明は、印刷命令を受信した場合に、印刷命令に含まれる属性情報を用いて、印刷物の作成のための処理の互いに異なる一部をそれぞれ行う複数の処理装置のうちのどの処理装置による処理をどの順番で実行することで作成対象の印刷物を作成するかを表す工程情報を生成する生成ステップと、前記工程情報に含まれる各処理装置から取得される、当該処理装置の動作に関する動作情報および当該処理装置の電源の状態を表す電源状態情報を用いて、前記工程情報に含まれる各処理装置について当該処理装置を起動する起動処理にかかる起動時間を特定する特定ステップと、前記動作情報と、前記印刷命令に含まれる前記属性情報とを用いて、前記工程情報に含まれる各処理装置について前記作成対象の印刷物の作成のために当該処理装置が行う処理にかかる処理時間を算出する算出ステップと、前記起動時間および前記処理時間と、前記工程情報が表す前記処理装置の処理の実行の順番と、を用いて、１つの処理装置の処理の終了の時刻と当該１つの処理装置の次に処理を実行する処理装置の起動処理の終了の時刻とが一致するように、前記工程情報に含まれる各処理装置の起動処理の開始の時刻を決定する決定ステップと、前記工程情報に含まれる各処理装置を、前記決定ステップで決定した時刻に起動処理を開始するよう制御する制御ステップと、をコンピュータに実行させるための制御プログラムである。
【００１３】
請求項５に係る発明は、印刷物の作成のための処理の互いに異なる一部をそれぞれ行う複数の処理装置と、前記複数の処理装置を制御する制御装置と、を備え、前記制御装置は、印刷命令を受信した場合に、印刷命令に含まれる属性情報を用いて、前記複数の処理装置のうちのどの処理装置による処理をどの順番で実行することで作成対象の印刷物を作成するかを表す工程情報を生成する生成手段と、前記工程情報に含まれる各処理装置から取得される、当該処理装置の動作に関する動作情報および当該処理装置の電源の状態を表す電源状態情報を用いて、前記工程情報に含まれる各処理装置について当該処理装置を起動する起動処理にかかる起動時間を特定する特定手段と、前記動作情報と、前記印刷命令に含まれる前記属性情報とを用いて、前記工程情報に含まれる各処理装置について前記作成対象の印刷物の作成のために当該処理装置が行う処理にかかる処理時間を算出する算出手段と、前記起動時間および前記処理時間と、前記工程情報が表す前記処理装置の処理の実行の順番と、を用いて、１つの処理装置の処理の終了の時刻と当該１つの処理装置の次に処理を実行する処理装置の起動処理の終了の時刻とが一致するように、前記工程情報に含まれる各処理装置の起動処理の開始の時刻を決定する決定手段と、前記工程情報に含まれる各処理装置を、前記決定手段が決定した時刻に起動処理を開始するよう制御する制御手段と、を備えることを特徴とする印刷システムである。  請求項６に係る発明は、請求項１に係る発明において、前記制御手段は、前記決定手段によって決定された各起動処理の起動処理の開始の時刻に、各処理装置に対して、起動処理を開始させるための起動開始命令を送信する。
【発明の効果】
【００１４】
請求項１、４、または５に係る発明によると、印刷物の作成のための処理の互いに異なる一部をそれぞれ行う複数の処理装置が特定の順番で自装置の担当の処理工程を行うことで印刷物を作成する場合に、印刷物の作成にかかる時間を短縮すると共に、当該複数の処理装置による消費電力を低減することができる。
【００１５】
請求項２に係る発明によると、１番目の処理装置の起動処理の終了の時刻に、当該１番目の処理装置の処理を開始させることができる。
【００１６】
請求項３に係る発明によると、各処理装置の処理工程の終了後の消費電力を低減できる。
【図面の簡単な説明】
【００１７】
【図１】印刷物を作成するシステムの概略構成の例を示す図である。
【図２Ａ】ワークフロー規則の概略例を示す図である。
【図２Ｂ】ワークフロー規則の概略例を示す図である。
【図３】本実施形態の例により印刷ジョブを処理する場合の各デバイスの処理の様子の例を時系列で示す図である。
【図４】図３に例示する各デバイスの起動開始時刻および工程処理終了時刻を示す図である。
【図５】スケジューラが作成する計画の一部の例を示す図である。
【図６】スケジューラが作成する計画の他の一部の例を示す図である。
【図７】プリントサーバが行う処理の手順の例を示すフローチャートである。
【図８】本実施形態の例と異なるタイミングで各デバイスの起動処理を開始させる場合の各デバイスの処理の様子の例を時系列で示す図である。
【図９】本実施形態の例と異なるタイミングで各デバイスの起動処理を開始させる場合の各デバイスの処理の様子の他の例を時系列で示す図である。
【図１０】コンピュータのハードウエア構成を示す図である。
【発明を実施するための形態】
【００１８】
図１に、印刷システムの概略構成の例を示す。図１の例の印刷システムは、クライアント１０、プリントサーバ２０、および複数のデバイス３０を備える。クライアント１０とプリントサーバ２０とは、図示しない通信手段により接続される。クライアント１０とプリントサーバ２０とを接続する通信手段は、例えば、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等のネットワークであってよい。プリントサーバ２０は、さらに、複数のデバイス３０のそれぞれと、図示しない通信手段により接続される。プリントサーバ２０と各デバイス３０とを接続する通信手段は、各デバイス３０に適した通信手段であればよい。例えば、プリントサーバ２０との間で、特定の種類の通信手段により通信するデバイス３０については、当該特定の種類の通信手段でプリントサーバ２０と接続すればよい。また例えば、ＬＡＮなどのネットワークによりプリントサーバ２０と通信するデバイス３０については、ＬＡＮなどのネットワークによりプリントサーバ２０と接続すればよい。なお、クライアント１０とプリントサーバ２０とを接続する通信手段およびプリントサーバ２０とデバイス３０とを接続する通信手段は、有線および無線のいずれの通信手段であってもよい。
【００１９】
クライアント１０は、システムのユーザが操作する端末装置である。クライアント１０は、印刷物の作成を指示するユーザの入力に従って、指示された印刷物の作成のための命令を含む印刷ジョブを生成し、生成した印刷ジョブをプリントサーバ２０に送る。クライアント１０は、例えば、ＰＣ（パーソナル・コンピュータ）などの汎用の情報処理装置によって実現すればよい。
【００２０】
プリントサーバ２０は、クライアント１０から受信した印刷ジョブに従って、各デバイス３０を制御し、印刷物を作成させる。プリントサーバ２０の詳細は後述する。
【００２１】
複数のデバイス３０のそれぞれは、印刷物の作成のための処理の互いに異なる一部の工程を行う。例えば、紙などの媒体に画像を印刷するプリンタ、プリンタによる印刷の準備のためのプリプレス処理を行うプリプレス処理装置、およびプリンタによる印刷が完了した媒体に対して特定の後処理を行う後処理装置などがデバイス３０としてシステム内に設けられる。プリンタは、インクジェット方式やレーザ方式、熱転写方式など、従来から知られている方式の印刷装置であってよい。プリプレス処理装置は、例えば、ＰＣなどの汎用の情報処理装置に、プリプレス処理を実行するソフトウエアをインストールすることで実現すればよい。プリプレス処理は、後に用いられるプリンタの特性などに適したデータを生成するための処理であり、例えば、画像データの解像度の変更、色調補正、およびノイズ除去などの画像処理であってよい。後処理装置の例としては、用紙にファイリング用の穴を開ける穴あけ装置、複数の用紙をステープル止めする装置、予め設定された折り方で自動的に用紙を折る紙折り機、用紙を自動的に封筒に詰める作業を行う封筒詰め機、および各種の製本を行う製本機などが挙げられる。
【００２２】
また、プリプレス処理装置であるデバイス３０は、プリプレス処理の結果のデータをプリンタであるデバイス３０に送信するための通信手段により、プリンタであるデバイス３０と接続される。さらに、プリンタであるデバイス３０は、印刷結果の媒体を後処理装置であるデバイス３０に渡すための物理的な機構（例えば、用紙を搬送する装置など）により後処理装置に接続されていてよい。
【００２３】
なお、図１の例の印刷システムは、デバイス３０として、プリプレス処理装置、プリンタ、および後処理装置を、それぞれ複数種類、備えていてよい。また、複数のデバイス３０は、それぞれが独立した装置であってもよいし、複数のデバイス３０の一部または全部が、１つの装置内に、各デバイス３０の機能を実現するユニットとして設けられていてもよい。例えば、複数のデバイス３０は、出版物などを印刷する業務用のプロダクションプリンタを構成する複数のデバイスユニットであってよい。
【００２４】
各デバイス３０は、処理実行部３２および電源状態制御部３４を備える。処理実行部３２は、当該デバイス３０が備える機能の処理を実行する。例えば、デバイス３０がプリプレス処理装置であれば、処理実行部３２はプリプレス処理を行い、デバイス３０がプリンタであれば、処理実行部３２は印刷を行う。また例えば、デバイス３０が後処理装置であれば、処理実行部３２は、上述の例の後処理装置の処理のいずれかを行う。電源状態制御部３４は、デバイス３０の電源の状態（電源状態）を制御する。ここで、電源状態には、デバイス３０が電力の供給を受けている「オン状態」およびデバイス３０が電力の供給を受けていない「オフ状態」の二種類の状態がある。本実施形態の例では、さらに、オン状態において、アイドルモード、処理実行モード、および省電力モードの四種類のモードがあるとする。アイドルモードは、処理開始の命令を受けた時点で処理を開始できるように処理実行部３２が待機している状態（アイドル状態）である。処理実行モードは、デバイス３０の処理実行部３２が処理を実行中の状態である。省電力モードは、デバイス３０の一部のみに電力を供給することで、アイドルモードおよび処理実行モードにおけるデバイス３０の消費電力よりも小さい消費電力で待機するモードである。省電力モードは、デバイス３０のどの部分に電力を供給するかなどに応じて、さらに複数のモードに分かれていてもよい。
【００２５】
本実施形態の例において、電源状態制御部３４は、プリントサーバ２０などの外部装置から受信した制御信号に従って電源状態を切り替える機能を有する。例えば、上述した例の電源状態のいずれかを指定する命令を表す制御信号をプリントサーバ２０から受信した場合に、電源状態制御部３４は、デバイス３０の電源状態を、受信した制御信号が表す命令により指定された電源状態に切り替える。また例えば、電源状態制御部３４は、デバイス３０が備える電源スイッチなどの入力装置（図示しない）を介して得られるユーザの指示に従って電源状態を切り替えることもある。また例えば、電源状態制御部３４は、電源状態の切り替えの条件として予め設定された条件が満たされた場合に、電源状態を切り替えてもよい。例えば、アイドルモードにおいて最後にユーザの入力を受け付けた後、予め設定されたタイムアウト時間が経過した時点で、電源状態をアイドルモードから省電力モードに切り替えることが考えられる。また例えば、処理実行モードによる処理の実行が終了した時点で、処理実行モードから、アイドルモード、省電力モード、およびオフ状態のいずれかの電源状態に切り替えるようにしてもよい。
【００２６】
なお、以下では、各デバイス３０の電源状態制御部３４は、処理実行モードによる処理が終了すると、当該デバイス３０の電源状態を省電力モードまたはオフ状態に切り替えるものとして、本実施形態の例を説明する。
【００２７】
プリントサーバ２０は、デバイス情報登録処理部２００、デバイス情報記憶部２０２、ジョブ受信部２０４、ジョブ属性情報取得部２０６、ワークフロー生成部２０８、起動時間特定部２１０、工程処理時間算出部２１２、起動開始時刻決定部２１４、スケジューラ２１６、ジョブ送信部２１８、および起動制御部２２０を備える。
【００２８】
デバイス情報登録処理部２００は、各デバイス３０の動作に関する動作情報と、各デバイス３０の現在の電源状態を表す電源状態情報と、を各デバイス３０から取得し、取得した各デバイス３０の動作情報および電源状態情報をデバイス情報記憶部２０２に登録する。各デバイス３０の動作情報および電源状態情報は、後述の起動時間特定部２１０および工程処理時間算出部２１２において当該デバイス３０についての処理に用いられる。
【００２９】
デバイス情報登録処理部２００が取得する各デバイス３０の動作情報は、例えば、当該デバイス３０の性能を表す情報および当該デバイス３０の電源状態の制御に関する情報を含む。デバイス３０の性能を表す情報は、単位時間当たりに当該デバイス３０が処理可能なデータまたは媒体の量や、当該デバイス３０が特定の処理を行うために必要な時間などであってよい。また、デバイス３０の電源状態の制御に関する情報は、デバイス３０がアイドルモードから省電力モードに切り替える条件に関する情報を含んでいてよい。例えば、アイドルモードにおいて最後にユーザの入力を受け付けた後、予め設定されたタイムアウト時間が経過した時点で、電源状態をアイドルモードから省電力モードに切り替える仕様のデバイス３０について、当該タイムアウト時間を動作情報の一部として取得してよい。さらに、例えば、オフ状態または省電力モードからアイドルモードに復帰することを指示する命令をデバイス３０が受けた後、オフ状態および省電力モードのそれぞれから、アイドルモードに切り替えるまでの各復帰時間を動作情報の一部として取得してよい。なお、複数の省電力モードを有するデバイス３０の場合、複数の省電力モードのそれぞれのタイムアウト時間および復帰時間を動作情報の一部として取得してよい。
【００３０】
プリプレス処理装置であるデバイス３０の場合、例えば、当該プリプレス処理装置を実現する情報処理装置のＣＰＵ（中央演算装置）の性能を表す情報を動作情報として取得すればよい。また、当該プリプレス処理装置のタイムアウト時間および復帰時間も動作情報として取得してよい。
【００３１】
プリンタであるデバイス３０の場合、例えば、ＰＰＭ（Ｐａｇｅ  Ｐｅｒ  Ｍｉｎｕｔｅ）およびＦＰＯＴ（Ｆｉｒｓｔ  Ｐｒｉｎｔ  Ｏｕｔｐｕｔ  Ｔｉｍｅ）の値を含む動作情報を取得すればよい。ここで、ＰＰＭは、当該プリンタが１分間に印刷できる面数を表す。また、ＦＰＯＴは、印刷開始命令を受けた時点から１枚目の印刷済み用紙が排出されるまでの所要時間を表す。当該プリンタがモノクロ印刷およびカラー印刷の両方を実行可能であれば、モノクロ印刷時およびカラー印刷時のそれぞれについてＰＰＭおよびＦＰＯＴの各値を当該プリンタの動作情報の一部として取得してよい。さらに、当該プリンタが複数の原稿サイズの印刷を実行可能であれば、原稿サイズごとのＰＰＭおよびＦＰＯＴの各値を当該プリンタの動作情報の一部として取得してよい。また、当該プリンタのタイムアウト時間および復帰時間も動作情報の一部として取得してよい。
【００３２】
後処理装置であるデバイス３０の場合、当該後処理装置で行われる処理の内容に応じて異なる動作情報が取得され得る。例えば製本機であれば、単位時間（例えば１分間）で製本可能な冊子の数を取得すればよい。この製本機において、１冊に含まれるページ数の範囲ごとに、単位時間で製本可能な冊子の数が異なっていれば、当該ページ数の範囲ごとの単位時間で製本可能な冊子の数を取得すればよい。なお、後処理装置のタイムアウト時間および復帰時間も動作情報の一部として取得してよい。
【００３３】
以上、デバイス情報登録処理部２００が取得する各デバイス３０の動作情報の例を説明した。デバイス情報登録処理部２００が取得する各デバイス３０の電源状態情報は、当該デバイス３０が取り得る電源状態のうち、現在の電源状態がどの状態であるかを表す情報である。
【００３４】
デバイス情報登録処理部２００は、例えば、予め設定された時間間隔で定期的に、各デバイス３０に当該デバイス３０の動作情報および電源状態情報を問い合せて取得する。あるいは、後述のジョブ受信部２０４が印刷ジョブを受信した際に、各デバイス３０の動作情報および電源状態情報を取得してもよい。動作情報および電源状態情報の取得は、例えば、通信手段を介して接続された装置に関する情報を取得する通信規約として従来から知られている通信規約を用いて行えばよい。例えば、各デバイス３０について、ＳＮＭＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）のＭＩＢ（Ｍａｎａｇｅｍｅｎｔ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｂａｓｅ）情報にアクセスして、当該デバイス３０の動作情報および電源状態情報を取得することが考えられる。また例えば、デバイス情報登録処理部２００は、ＳＯＡＰ（Ｓｉｍｐｌｅ  Ｏｂｊｅｃｔ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ）に従って各デバイス３０と通信を行うことで、当該デバイス３０の動作情報および電源状態情報を取得してもよい。また、電源状態がオフ状態かオン状態かを確認するために、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）のｐｉｎｇコマンドを用いてもよい。例えば、デバイス情報登録処理部２００は、各デバイス３０に対し、ｐｉｎｇによる応答要求を送信し、この応答要求に対して予め設定された時間内にｐｉｎｇの応答を返してきたデバイス３０の電源状態をオン状態と判断し、時間内に応答を返してこなかったデバイス３０の電源状態をオフ状態と判断する。
【００３５】
デバイス情報登録処理部２００は、各デバイス３０の識別情報に関連付けて、当該デバイス３０について取得した動作情報および現在の電源状態をデバイス情報記憶部２０２に登録する。
【００３６】
デバイス情報記憶部２０２は、各デバイス３０に関する情報を記憶する記憶装置である。デバイス情報記憶部２０２は、例えば、各デバイス３０の識別情報に関連付けて、当該デバイス３０についてデバイス情報登録処理部２００が取得した動作情報および現在の電源の状態を記憶する。本実施形態の例のデバイス情報記憶部２０２は、各デバイス３０の識別情報に関連付けて、さらに、当該デバイス３０の種類を表す情報を記憶する。デバイス３０の種類には、上述したように、プリプレス処理装置、プリンタ、および後処理装置などがある。また、デバイス情報記憶部２０２は、各デバイス３０の仕様をさらに記憶しておいてもよい。例えば、プリンタであるデバイス３０の場合、印刷の方式（インクジェットやレーザ等）、カラー印刷対応の有無、印刷可能な原稿サイズなどの仕様を表す情報を当該デバイス３０の識別情報に関連付けて記憶しておく。
【００３７】
ジョブ受信部２０４は、印刷物の作成命令である印刷ジョブをクライアント１０から受信する。印刷ジョブには、作成対象の印刷物の属性を示す属性情報が含まれる。ここで、印刷物の属性の例として、原稿サイズ、片面／両面印刷の別、モノクロ／カラー印刷の別、Ｎ−ｕｐ設定（複数のページを用紙の１面に印刷する設定）の有無、ページ数、部数、および仕上げ方式などが挙げられる。仕上げ方式は、後処理装置による処理に対応し、例えば、ステープラ止め、ノリ綴じ製本、中綴じ製本、折り、および封筒詰めなどであってよい。ジョブ受信部２０４は、例えば、受信した印刷ジョブを一時記憶装置（図示しない）上に構成された印刷キューに保存しておき、ＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎ  Ｆｉｒｓｔ  Ｏｕｔ）方式でジョブ属性情報取得部２０６に渡す。
【００３８】
ジョブ属性情報取得部２０６は、ジョブ受信部２０４から受け取った印刷ジョブに含まれる属性情報を当該印刷ジョブから取得する。例えば、印刷ジョブのヘッダ情報として属性情報が含まれている場合、ジョブ属性情報取得部２０６は、受け取った印刷ジョブのヘッダ情報を参照することで属性情報を取得する。ジョブ属性情報取得部２０６は、取得した属性情報をワークフロー生成部２０８に渡す。
【００３９】
ワークフロー生成部２０８は、ジョブ属性情報取得部２０６が取得した属性情報を用いて、当該印刷ジョブで指示される印刷物の作成のためのワークフローを生成する。本実施形態の例において、ワークフローとは、作成対象の印刷物を作成する処理の工程を表す情報である。より具体的には、ワークフローは、どのデバイス３０によるどのような処理をどの順番で実行すべきかを示す。本実施形態の例のワークフロー生成部２０８は、プリントサーバ２０からアクセス可能なワークフロー規則記憶部４０を参照して、ワークフローを生成する。本実施形態の例のワークフロー規則は、印刷物の属性の組合せと当該組合せの属性を有する印刷物の作成のためのワークフローパタンとを対応づける規則である。ワークフローパタンは、どの種類の装置による処理をどの順番で実行するかを示す情報である。本実施形態の例のワークフロー生成部２０８は、ワークフロー規則部４０に記憶されたワークフロー規則に従って、ジョブ属性情報取得部２０６が取得した属性情報が表す属性に含まれる組合せに対応するワークフローパタンを特定する。ワークフロー生成部２０８は、さらに、システム内のデバイス３０のうち、特定したワークフローパタンに含まれる各装置の種類に対応するデバイス３０を特定する。ワークフローパタンに含まれる各装置の種類に対応するデバイス３０の特定は、デバイス情報記憶部２０２に記憶された各デバイス３０の識別情報および種類を参照して行えばよい。さらに、ワークフロー生成部２０８は、特定したワークフローパタンで示される順番で、特定した各デバイス３０による処理を実行すべきことを表すワークフローを生成する。
【００４０】
図２Ａおよび図２Ｂに、ワークフロー規則記憶部４０に記憶されるワークフロー規則の概略例を示す。図２Ａは、カラー印刷され、くるみ製本された冊子を作成する印刷ジョブに対応するワークフローパタンを示す規則の例である。図２Ｂは、モノクロ印刷され、中綴じ製本された冊子を作成する印刷ジョブに対応するワークフローパタンを示す規則の例である。図２Ａを参照し、印刷物の属性「カラー印刷」および「くるみ製本」の組合せに対し、プリプレス処理ＰＣ、カラー対応レーザプリンタ、ノリ綴じ製本機、およびくるみ製本表紙綴じ機の４つのデバイス３０による処理を順に実行することを示すワークフローパタンが対応づけられている。図２Ｂを参照し、印刷物の属性「モノクロ印刷」および「中綴じ製本」の組合せに対し、プリプレス処理ＰＣ、モノクロプリンタ、および中綴じ製本機の３つのデバイス３０による処理を順に実行することを示すワークフローパタンが対応付けられている。
【００４１】
ワークフロー生成部２０８は、例えば、属性「カラー印刷」および「くるみ製本」の組合せを含む属性情報を印刷ジョブから取得した場合、図２Ａの例のワークフローパタンをワークフロー規則記憶部４０から読み出す。そして、読み出したワークフローパタンに含まれる装置（プリプレス処理ＰＣ、カラー対応レーザプリンタ、ノリ綴じ製本機、およびくるみ製本表紙綴じ機）のそれぞれが、システム内のどのデバイス３０に該当するかを特定し、特定したデバイス３０の識別情報を図２Ａの例のワークフローパタンで示される順番に並べたワークフローを生成する。なお、システム内のデバイス３０の特定は、デバイス情報記憶部２０２に記憶された、各デバイス３０の識別情報と当該デバイス３０の種類とを参照して行えばよい。
【００４２】
なお、ワークフロー規則記憶部４０に記憶される規則は、印刷物の属性の組合せに応じてワークフローパタンを特定できるような規則であれば、必ずしも図２Ａ，２Ｂに示すような形式を有していなくてもよい。例えば、ワークフローパタンに対応付けられる属性の組合せは、属性の項目の値を引数とする論理式によって記述してもよい。
【００４３】
再び図１を参照し、ワークフロー生成部２０８は、印刷ジョブに対応するワークフローを生成すると、さらに、生成したワークフローに含まれる各デバイス３０について、当該デバイス３０で行われる工程の処理の開始から終了までの時間（以下、「工程処理時間」と言う）を算出するために必要な情報を特定する。各デバイス３０の工程処理時間を算出するために必要な情報は、印刷ジョブから取得される属性情報と、当該印刷ジョブを処理する過程で予定される各デバイス３０の入出力を表す情報と、を用いて特定される。例えば、属性情報のうち、作成対象の印刷物の原稿サイズ、ページ数、および部数など、ワークフロー中のデバイス３０における処理の量に関係する情報を、当該デバイス３０の工程処理時間の算出に必要な情報として特定する。また、ワークフロー中の１つのデバイス３０に対する入力は、当該デバイス３０における処理の量に関係し、当該デバイス３０からの出力は、ワークフローにおける次の順番のデバイス３０の入力となる。このため、あるデバイス３０の出力は、その次の順番のデバイス３０における処理の量に関係し得る。したがって、各デバイス３０の入出力を表す情報を、各デバイス３０の工程処理時間を算出するために必要な情報として特定してもよい。
【００４４】
一具体例として、両面モノクロ印刷で中綴じ製本された冊子を作成する印刷ジョブを処理する場合を考える。本具体例において、印刷ジョブから取得される属性情報が「モノクロ印刷」および「中綴じ製本」の属性の組合せを含むことから、図２Ｂの例のワークフローパタンに従ってワークフローが生成されるとする。また、当該印刷ジョブから取得される属性情報には、「モノクロ印刷」および「中綴じ製本」の属性に加えて、「両面印刷」を示す属性、「Ｎ−ｕｐ設定なし」を示す属性、原稿サイズ、一冊当たりのページ数、および作成する冊子の部数が含まれるとする。生成されたワークフローにおいて１番目のデバイス３０であるプリプレス処理ＰＣは、例えば、印刷対象の全ページをＰＤＬ（ページ記述言語）で記述したＰＤＬデータを入力として受け取り、受け取ったＰＤＬデータを変換して、ワークフローにおける２番目のデバイス３０であるモノクロプリンタでの印刷処理に適した形式の画像データを生成する処理を行うとする。本例の場合、プリプレス処理ＰＣからの出力は、印刷対象の全ページの画像データである。ここで、プリプレス処理ＰＣによる処理にかかる時間は、処理対象の原稿サイズおよびページ数に依存すると考えられるため、プリプレス処理ＰＣの工程処理時間の算出に必要な情報として、例えば、属性情報に含まれる原稿サイズおよびページ数が特定される。２番目のデバイス３０であるモノクロプリンタは、プリプレス処理ＰＣが出力した画像データを入力として受け取り、属性情報で表される原稿サイズの用紙に、属性情報で表されるページ数および部数の両面印刷を行う。本例では、属性情報が「Ｎ−ｕｐ設定なし」を示す属性を含むことから、モノクロプリンタは、用紙の１面（表面または裏面）に１ページを印刷する。モノクロプリンタは、上述の原稿サイズの用紙に上述のページ数だけ両面印刷された、上述の部数の印刷済み用紙を出力する。モノクロプリンタによる印刷処理にかかる時間は、両面印刷か否か、Ｎ−ｕｐ設定の有無、原稿サイズ、ページ数、および部数に依存すると考えられることから、モノクロプリンタの工程処理時間の算出に必要な情報として、属性情報に含まれる「両面印刷」属性、「Ｎ−ｕｐ設定なし」属性、原稿サイズ、ページ数、および部数が特定される。３番目のデバイス３０である中綴じ製本機は、モノクロプリンタから出力される印刷済み用紙を入力として受け取り、受け取った用紙を属性情報が表すページ数の冊子ごとに纏めて、冊子の中央をステープラ止めする製本処理を行う。中綴じ製本機の出力は、属性情報が表す部数の、中綴じ製本された冊子である。中綴じ製本機による処理にかかる時間は、作成する冊子の部数に依存すると考えられることから、中綴じ製本機の工程処理時間の算出に必要な情報として、属性情報に含まれる部数が特定される。
【００４５】
なお、どのような種類のデバイス３０について、どのような種類の情報を工程処理時間の算出に必要な情報として特定するかは、例えば、ワークフロー規則記憶部４０に記憶されるワークフローパタン中に記述しておけばよい。あるいは、各デバイス３０の識別情報に関連付けてデバイス情報記憶部２０２に登録しておいてもよい。
【００４６】
起動時間特定部２１０は、ワークフロー生成部２０８が生成したワークフローに含まれる各デバイス３０について、当該デバイス３０の起動時間を特定する。各デバイス３０の起動時間は、当該デバイス３０の電源状態を、現在の電源状態からアイドルモードに切り替えるための起動処理にかかる時間である。起動時間特定部２１０は、ワークフローに含まれる各デバイス３０の電源状態情報および動作情報をデバイス情報記憶部２０２から読み出し、読み出した電源状態情報および動作情報を用いて、各デバイス３０の起動時間を求める。例えば、あるデバイス３０の現在の電源状態がオフ状態である場合、当該デバイス３０の動作情報に含まれる、オフ状態からの復帰時間を当該デバイス３０の起動時間とする。また例えば、当該デバイス３０について、現在の電源状態が省電力モードの場合、省電力モードからの復帰時間を起動時間とすればよい。
【００４７】
工程処理時間算出部２１２は、ワークフロー生成部２０８が生成したワークフローに含まれる各デバイス３０について、当該デバイス３０の工程処理時間を算出する。工程処理時間算出部２１２は、システムが備える全デバイス３０のそれぞれに対応する算出部を含む。例えば、Ｎ個のデバイス３０を備える図１の例のシステムでは、工程処理時間算出部２１２は、Ｎ個のデバイス３０のそれぞれに対応する、デバイス１用算出部２１２−１、デバイス２用算出部２１２−２、…、デバイスＮ用算出部２１２−ＮのＮ個の算出部を含む。これらＮ個の算出部のそれぞれは、対応するデバイス３０の種類および仕様等に応じた、工程処理時間の算出手順を図示しない記憶装置に保持しており、この算出手順に従って、対応するデバイス３０の工程処理時間を算出する。工程処理時間算出部２１２は、これらのＮ個の算出部のうち、ワークフローに含まれるデバイス３０の識別情報に対応する算出部を特定し、特定した各算出部により、当該デバイス３０の起動時間および工程処理時間を算出する。
【００４８】
ワークフローに含まれる各デバイス３０の工程処理時間は、当該デバイス３０の工程処理時間の算出に必要な情報としてワークフロー生成部２０８が特定した情報および当該デバイス３０の動作情報を用いて算出される。例えば、図２Ｂを参照する上述の具体例（両面モノクロ印刷で中綴じ製本された冊子を作成する印刷ジョブの例）の場合、１番目のデバイス３０であるプリプレス処理ＰＣについては、当該プリプレス処理ＰＣの性能を表す情報を当該プリプレス処理ＰＣの動作情報から取得し、取得した性能を表す情報と、作成対象の印刷物の原稿サイズおよびページ数と、を用いて工程処理時間が算出される。２番目のデバイス３０であるモノクロプリンタについては、作成対象の印刷物の原稿サイズで両面印刷を行う場合のＰＰＭおよびＦＰＯＴの値を当該モノクロプリンタの動作情報から取得し、取得したＰＰＭおよびＦＰＯＴの値と、作成対象の印刷物のページ数および部数と、を用いて、工程処理時間が算出される。本例において、ページ数をＮｐ、部数をＮｓとすると、「Ｎ−ｕｐ設定なし」であることから、ページ数Ｎｐと部数Ｎｓとの積がモノクロプリンタによって印刷される面数となる。したがって、モノクロプリンタの工程処理時間は、
ＦＰＯＴ＋（Ｎｐ×Ｎｓ−１）／ＰＰＭ    （式１）
により求められる。「Ｎ−ｕｐ設定あり」の場合は、ページ数Ｎｐを１面当たりのページ数で除算した結果から印刷の面数を求め、求めた面数を上記の（式１）のＮｐの代わりに用いればよい。また、３番目のデバイスである中綴じ製本機については、例えば、当該中綴じ製本機の動作情報から単位時間当たりに作成可能な冊数を取得し、取得した冊数で作成対象の印刷物の部数を除算することで算出される。
【００４９】
なお、工程処理時間の算出の手順は、デバイス３０の種類や仕様によって異なるため、上述の例に限定されない。例えば、対応するデバイス３０の内部または周辺環境の温度や湿度が工程処理時間に影響する場合もあり、この場合、工程処理時間算出部２１０は、動作情報および属性情報だけでなく、該当する温度や湿度の値も取得して、工程処理時間を算出する。温度や湿度の値は、デバイス３０の内部または周辺に予め設けられたセンサから取得すればよい。
【００５０】
起動開始時刻決定部２１４は、起動時間特定部２１０が特定した起動時間および工程処理時間算出部２１２が算出した工程処理時間を用いて、ワークフローに含まれるデバイス３０それぞれの起動処理を開始する時刻を決定する。本実施形態の例では、１番目のデバイス３０については、起動処理の終了の時刻と印刷ジョブの処理の開始の時刻とが一致するように、２番目以降のデバイス３０については、自身の１つ前の順番のデバイス３０の工程処理の終了の時刻と自身の起動処理の終了の時刻とが一致するように、各デバイス３０の起動処理の開始の時刻を決定する。ここで、「一致」するとの用語は、２種類の時刻が完全に一致する場合だけでなく、２種類の時刻の間の差が予め定められた時間の範囲内（例えば、１〜５秒以内など）に収まる場合も含むものとする。
【００５１】
図３は、Ｋ個のデバイス３０を順に用いて印刷ジョブを処理する場合であって、本実施形態の例の起動開始時刻決定部２１４が各デバイス３０の起動処理の開始の時刻を決定した場合の、各デバイス３０の起動処理および工程処理の実行のタイミングの例を示す。以下の説明において、ｉ番目のデバイス３０（ｉ＝１，２，…，Ｋ）の起動時間をＩi、工程処理時間をＤiとする。図３を参照し、印刷ジョブの処理を開始する時刻、つまり、１番目のデバイス３０による工程処理を開始する時刻をＴjobとすると、起動開始時刻決定部２１４は、時刻Ｔjobから１番目のデバイス３０の起動時間Ｉ1だけ前の時刻Ｔjob−Ｉ1に１番目のデバイス３０の起動処理を開始することを決定する。この場合、１番目のデバイス３０の工程処理が終了する時刻は、工程処理を開始する時刻Ｔjobから１番目のデバイス３０の工程処理時間Ｄ1だけ後の時刻Ｔjob＋Ｄ1となる。時刻Ｔjob＋Ｄ1において、２番目のデバイス３０の工程処理を開始させることを可能とするため、起動開始時刻決定部２１４は、時刻Ｔjob＋Ｄ1から２番目のデバイス３０の起動時間Ｉ2だけ前の時刻Ｔjob＋Ｄ1−Ｉ2に２番目のデバイス３０の起動処理を開始することを決定する。同様にして、起動開始時刻決定部２１４は、３番目以降Ｋ番目までのデバイス３０の起動処理の開始時刻を決定する。１番目からＫ番目のデバイスそれぞれの起動処理の開始時刻を以上のように決定することで、図３に例示するように、あるデバイス３０の工程処理の終了の時刻と次の順番のデバイス３０の工程処理の開始の時刻とが一致する。
【００５２】
なお、図３の例において、１番目からＫ番目までのデバイス３０は、それぞれ、自身の工程処理が終了すると、電源状態を省電力モードまたはオフ状態に切り替えるものとする。よって、図３の例では、各デバイス３０がアイドルモードで待機して電力を消費することはない。
【００５３】
図４に、図３を参照して説明した上述の例のように１番目からＫ番目までの各デバイス３０の起動開始時刻を決定した場合の各デバイス３０の起動開始時刻および工程処理終了時刻を示す。図４の例の表において、デバイス番号１，２，３，…，Ｋ−１，Ｋは、それぞれ、図３の１番目〜Ｋ番目のデバイスに対応する。１番目のデバイス３０（デバイス番号「１」）の起動開始時刻は、上述したとおり、印刷ジョブ処理の開始時刻Ｔjobから１番目のデバイス３０の起動時間Ｉ1だけ前の時刻Ｔjob−Ｉ1である。２番目以降のデバイス３０の起動開始時刻は、１つ前の順番のデバイス３０の工程処理終了時刻より自デバイス３０の起動時間だけ前の時刻である。本例では、あるデバイス３０の工程処理が終了した時刻に次の順番のデバイス３０の工程処理が開始されるため、各デバイス３０の工程処理終了時刻は、印刷ジョブ処理の開始時刻Ｔjobに、１番目のデバイスから当該デバイスまでの各工程処理時間の和を加算した値になる。
【００５４】
図３および図４を参照して説明した上述の例では、起動開始時刻決定部２１４は、印刷ジョブの処理開始時刻Ｔjobを基準とした相対的な時刻を、各デバイス３０の起動処理の開始の時刻として決定する。起動開始時刻決定部２１４は、決定した時刻を表す情報をスケジューラ２１６に渡す。例えば、図４の例の表の「起動開始時刻」の列に示すような、各デバイス３０の起動開始時刻の式をスケジューラ２１６に渡せばよい。
【００５５】
図１の説明に戻り、スケジューラ２１６は、起動開始時刻決定部２１４が決定した時刻に、各デバイスに起動処理を開始させるための制御の計画（スケジュール）を作成する。スケジューラ２１６が作成する計画は、例えば、どの時刻に、どのデバイスに対して、どのような制御信号を送信するかを表すものであってよい。本実施形態の例のスケジューラ２１６は、図４に例示するような、各デバイス３０の起動処理開始時刻を表す式を起動開始時刻決定部２１４から受け取って、受け取った式を実際の時刻の値に変換する。例えば、スケジューラ２１６は、まず、各デバイス３０の起動処理開始時刻の式を起動開始時刻決定部２１４から受け取った時刻よりも後の時刻を、１番目のデバイス３０の起動開始時刻Ｔjob−Ｉ1の値として設定する。このとき、現在時刻の直後の時刻の値をＴjob−Ｉ1に設定すれば、スケジューラ２１６が起動開始時刻を表す式を受信した直後に１番目のデバイス３０の起動処理が開始されることになる。１番目のデバイス３０の起動時間Ｉ1は、起動時間特定部２１０により特定済みであるため、Ｔjob−Ｉ1の値を設定すると、印刷ジョブの処理開始時刻Ｔjobの値が定まる。このように定めた印刷ジョブの処理開始時刻Ｔjobの値、起動時間特定部２１０により特定済みの各デバイス３０の起動時間Ｉiの値、および工程処理時間算出部２１２により算出済みの各デバイス３０の工程処理時間Ｄiの値を、２番目以降のデバイス３０の起動開始時刻の式に代入して計算することで、スケジューラ２１６は、２番目以降のデバイス３０の起動開始時刻の値を求める。１番目からＫ番目の各デバイス３０について求めた起動開始時刻の値および印刷ジョブの処理開始時刻Ｔjobの値を用いて、スケジューラ２１６は、印刷ジョブ送信の計画および起動開始命令送信の計画を生成する。生成される計画の例を図５および図６に示す。
【００５６】
図５は、印刷ジョブを１番目のデバイス３０に送信する計画の例である。図５の例の表は、ＩＤ、ジョブ送信時刻Ｔjob、宛先デバイス名、および宛先デバイスＩＰアドレスを含む。ＩＤは、当該印刷ジョブの処理に関連してプリントサーバ２０がデバイス３０に対して１つの制御信号を送信する処理の識別情報である。スケジューラ２１６は、１回の制御信号の送信に対して１つのＩＤを割り当てる。図５の例の表において、ジョブ送信時刻Ｔjobは、上述の印刷ジョブの処理開始時刻Ｔjobを表す。宛先デバイス名は、１番目のデバイス３０に付された名称を表す。宛先デバイスＩＰアドレスは、１番目のデバイス３０のＩＰアドレスを表す。宛先デバイス名および宛先デバイスＩＰアドレスは、各デバイス３０の識別情報に関連付けて当該デバイス３０の名称およびＩＰアドレスを予めデバイス情報記憶部２０２に登録しておき、１番目のデバイス３０の識別情報に関連付けられた名称およびＩＰアドレスを読み出して、計画に含めればよい。
【００５７】
図６は、各デバイス３０に対する起動開始命令の送信の計画の例である。図６の例の表は、ＩＤ、起動開始命令送信時刻、対象デバイス名、および対象デバイスＩＰアドレスを含む。図６の例の表の１行は、１つのデバイス３０に対する起動開始命令の送信の計画に対応する。図６は、４つのデバイス３０がワークフローに含まれる場合（Ｋ＝４）の例である。図６の例の表において、ＩＤは、図５の例の表のＩＤと同様、制御信号の送信処理の識別情報を表し、ワークフローにおける順番がより早いデバイス３０に対する制御信号の送信に対して、より数値の小さいＩＤが割り当てられている。起動開始命令送信時刻は、対応するデバイス３０に対して、起動処理の開始を指示する命令を表す制御信号を送信する時刻を表し、各デバイス３０について上述のように求めた起動開始時刻の値である。対象デバイス名および対象デバイスＩＰアドレスは、それぞれ、対応するデバイス３０の名称およびＩＰアドレスを表す。対象デバイス名および対象デバイスＩＰアドレスは、図５の例の宛先デバイス名および宛先ＩＰアドレスと同様、デバイス情報記憶部２０２から取得すればよい。
【００５８】
再び図１を参照し、スケジューラ２１６は、印刷ジョブの送信の計画をジョブ送信部２１８に渡し、起動開始命令送信の計画を起動制御部２２０に渡す。
【００５９】
ジョブ送信部２１８は、スケジューラ２１６が作成した計画に従って、印刷ジョブを送信する。例えば、図５の例の表に示す計画の場合、１番目のデバイス３０である「プリプレス処理ＰＣ」のＩＰアドレス「192.10.22.101」を宛先として、時刻「9:47:42」に印刷ジョブを送信する。印刷ジョブを受け取ったデバイス３０は、受け取った印刷ジョブについて、自身の担当の工程処理を実行する。また、本実施形態の例のジョブ送信部２１８は、ワークフロー生成部２０８が生成したワークフローの情報も印刷ジョブと共に１番目のデバイス３０に対して送信する。１番目のデバイス３０は、このワークフローの情報を参照して、自身の次の順番（つまり、２番目）のデバイス３０の識別情報を取得し、自身の工程処理の結果と当該ワークフローの情報とを当該識別情報のデバイス３０に渡す。２番目以降のデバイス３０も、ワークフローの情報を参照して、自身の次の順番のデバイス３０を特定し、特定したデバイス３０に対して自身の工程処理の結果と当該ワークフローの情報とを渡す。
【００６０】
起動制御部２２０は、スケジューラ２１６が作成した計画に従って各デバイス３０が起動処理を開始するよう、各デバイス３０を制御する。例えば、起動制御部２２０は、図６の例の表に示す計画の場合、プリプレス処理ＰＣ、カラー対応レーザプリンタ、ノリ綴じ製本機、およびくるみ製本表紙綴じ機のそれぞれのＩＰアドレスを宛先として、起動開始命令送信時刻で示される時刻に、起動処理を開始することを指示する命令を表す制御信号を送信する。
【００６１】
起動制御部２２０からの制御信号を受け取った各デバイス３０の電源状態制御部３４は、自身の電源状態をアイドルモードに切り替える起動処理を行う。本実施形態の例では、各デバイス３０の起動処理が終了してアイドルモードになると同時に、当該デバイス３０の１つ前の順番のデバイス３０の工程処理が終了し、その処理結果が当該デバイス３０に渡される。このため、各デバイス３０は、起動処理の終了と同時に自身の担当の工程を開始し、電源状態がアイドルモードから処理実行モードに切り替えられることになる。
【００６２】
以下、図７を参照し、プリントサーバ２０が行う処理の手順の例を説明する。プリントサーバ２０は、クライアント１０から印刷ジョブを受信した場合に、図７に例示する手順の処理を開始する。
【００６３】
プリントサーバ２０のジョブ受信部２０４は、クライアント１０から受信した印刷ジョブをジョブ属性情報取得部２０６に渡す。ジョブ属性情報取得部２０６は、受け取った印刷ジョブから属性情報を取得する（ステップＳ１０）。属性情報は、受信した印刷ジョブによる作成対象の印刷物の属性を示し、原稿サイズ、片面／両面印刷の別、モノクロ／カラー印刷の別、Ｎ−ｕｐ設定の有無、ページ数、部数、および仕上げ方式などの属性を含む。
【００６４】
次に、ワークフロー生成部２０８は、ステップＳ１０でジョブ属性情報取得部２０６が取得した属性情報を用いて、処理対象の印刷ジョブに対応するワークフローを生成する（ステップＳ１２）。例えば、ワークフロー生成部２０８は、まず、ワークフロー規則記憶部４０を参照して、ステップＳ１０で取得された属性情報に含まれる属性の組合せに対応するワークフローパタンを特定する（図２Ａ，２Ｂ参照）。そして、特定したワークフローパタンに含まれる各装置の種類に対応するデバイス３０の識別情報をデバイス情報記憶部２０２から読み出す。さらに、読み出した識別情報の各デバイス３０による処理を、前述のワークフローパタンで示される順番で実行すべきことを表すワークフローを生成する。ワークフロー生成部２０８は、ステップＳ１２で生成したワークフローを起動時間特定部２１０および工程処理時間算出部２１２に渡す。
【００６５】
ワークフローを生成した後、ワークフロー生成部２０８は、生成したワークフローに含まれる各デバイス３０の工程処理時間の算出のために必要な情報を特定する（ステップＳ１４）。例えば、図２Ｂを参照して上述した具体例のように、印刷ジョブから取得された属性情報およびワークフローに含まれる各デバイス３０の入出力に関する情報のうち、各デバイス３０における処理の量に関係する情報を、工程処理時間の算出のために必要な情報として特定する。ワークフロー生成部２０８は、ステップＳ１４で特定した情報を工程処理時間算出部２１２に渡す。
【００６６】
次に、起動時間特定部２１０は、ワークフロー中の各デバイス３０の起動時間を特定する（ステップＳ１６）。例えば、起動時間特定部２１０は、まず、ステップＳ１２で生成されたワークフローに含まれる各デバイス３０の識別情報に関連付けられた電源状態情報および動作情報をデバイス情報記憶部２０２から読み出す。そして、各デバイス３０について、電源状態情報が表す現在の電源状態からアイドルモードに切り替えるまでの復帰時間（動作情報に含まれる）を、当該デバイス３０の起動時間として特定する。起動時間特定部２１０は、各デバイス３０について特定した起動時間を起動開始時刻決定部２１４に渡す。
【００６７】
また、工程処理時間算出部２１２は、ワークフロー中の各デバイス３０の工程処理時間を算出する（ステップＳ１８）。例えば、工程処理時間算出部２１２は、まず、ステップＳ１２で生成されたワークフローに含まれる各デバイス３０の識別情報から、Ｎ個のデバイス３０用算出部のうちのどの算出部を用いるかを特定する。そして、特定した各算出部において、対応するデバイス３０の工程処理時間の算出に必要な情報としてステップＳ１４で特定された情報を用いて、当該デバイス３０の工程処理時間を算出する。工程処理時間算出部２１２は、各デバイス３０について算出した工程処理時間を起動開始時刻決定部２１４に渡す。
【００６８】
なお、起動時間の特定処理（ステップＳ１６）および工程処理時間の算出処理（ステップＳ１８）は、並行して行ってもよいし、処理の順番を逆にしてもよい。
【００６９】
起動開始時刻決定部２１４は、ワークフロー中の各デバイスについて、起動処理を開始する時刻を決定する（ステップＳ２０）。本実施形態の例では、起動開始時刻決定部２１４は、ステップＳ２０で、ワークフローにおける１番目のデバイス３０の起動処理の終了の時刻と印刷ジョブの処理開始の時刻とが一致し、かつ、２番目以降の各デバイス３０について、自身の１つ前の順番のデバイス３０の工程処理の終了の時刻と自身の起動処理の終了の時刻とが一致するように、各デバイス３０の起動処理の開始の時刻を決定する。図３および図４を参照して上記で説明した各デバイス３０の起動開始時刻は、ステップＳ２０で決定される、起動処理開始の時刻の具体例である。起動開始時刻決定部２１４は、ステップＳ２０で決定した、各デバイス３０の起動処理開始の時刻をスケジューラ２１６に渡す。
【００７０】
スケジューラ２１６は、ステップＳ２０で決定された各デバイス３０の起動処理開始の時刻に従って、印刷ジョブの送信の計画およびワークフロー中の各デバイス３０に対する起動開始命令の送信の計画を生成する（ステップＳ２２）。スケジューラ２１６は、例えば、印刷ジョブの処理の開始時刻に対する相対的な時刻の形式で求められた各デバイス３０の起動処理開始時刻に従って、印刷ジョブ送信および起動開始命令送信の具体的な時刻の値を決定する。図５および図６を参照して上記で説明した計画は、ステップＳ２２でスケジューラ２１６が生成する計画の具体例である。スケジューラ２１６は、印刷ジョブ送信の計画をジョブ送信部２１８に渡し、起動開始命令送信の計画を起動制御部２２０に渡す。
【００７１】
ジョブ送信部２１８および起動制御部２２０は、ステップＳ２２でスケジューラ２１６が生成した計画に従って、それぞれ、印刷ジョブの送信および起動開始命令の送信を行う（ステップＳ２４）。例えば、起動制御部２２０は、起動開始命令送信の計画で示される時刻に、ワークフロー中の各デバイス３０に対して、当該デバイス３０の起動処理を開始することを指示する命令を表す制御信号を送信する。
【００７２】
以上で説明した実施形態の例によると、１つのデバイス３０の工程処理の終了の時刻と次のデバイス３０の起動処理の終了の時刻とが一致するため、当該次のデバイス３０は、当該１つのデバイス３０の工程処理の終了の後、アイドルモードでの待ち時間なしで自身の工程処理を開始することになる。
【００７３】
以下、図８および図９を参照し、本実施形態の例と異なるタイミングでワークフロー中の各デバイス３０の起動処理を開始させる場合の各デバイス３０の処理の様子の例を説明する。図８は、印刷ジョブの処理を開始する前にワークフロー中のすべてのデバイス３０の起動処理を開始する場合の例を示し、図９は、２番目以降のデバイス３０について、自身よりも１つ前の順番のデバイス３０の工程処理が終了した時点で起動処理を開始させる場合の例を示す。図８および図９のいずれの例においても、上述の実施形態の例の場合の各デバイス３０の処理の様子の例を示す図３と同様、１番目からＫ番目までのＫ個のデバイス３０により印刷ジョブを処理するものとする。また、図８および図９のいずれの例においても、印刷ジョブの処理の開始時刻は図３の例と同様の時刻Ｔjobであるとする。また、図８および図９において、デバイスｉ（ｉ＝１，２，…，Ｋ）の起動時間をＩi、工程処理時間をＤiと記す。
【００７４】
図８の例では、Ｋ個のデバイス３０のすべてが、同じ時刻Ｔjob−Ｉ1に起動処理を開始させられ、１番目のデバイス３０は、起動処理が終了した時点（時刻Ｔjob＝Ｔjob−Ｉ1＋Ｉ1）で印刷ジョブの処理を開始する。２番目からＫ番目までのデバイス３０は、起動処理が終了した後、アイドル状態で自身の１つ前の順番のデバイス３０の工程処理の終了を待ち受け、１つ前の順番のデバイス３０の工程処理が終了すると、自身の工程処理を開始する。図８の例において、印刷ジョブの処理が終了する時刻、つまり、Ｋ番目のデバイス３０の処理が終了する時刻は、図３の例と同様、Ｔjob＋Ｄ1＋Ｄ2＋…＋ＤKである。図８の例では、２番目からＫ番目のデバイス３０において起動処理が終了してから工程処理を開始するまでのアイドル状態の間の消費電力の分だけ、図３の例の場合よりも多くの電力が消費される。
【００７５】
図９の例では、１番目のデバイス３０は、時刻Ｔjob−Ｉ1に起動処理を開始させられ、２番目からＫ番目までのデバイス３０は、自身の１つ前の順番のデバイス３０の工程処理が終了した時点で、起動処理を開始させられる。図９の例によると、図８の例と異なり、２番目からＫ番目のデバイス３０において、起動処理の終了から工程処理の開始までアイドル状態で待機することはない。よって、図９の例では、図８の例と比較して電力消費は小さくなる。しかし、図９の例の場合、印刷ジョブの処理が終了する時刻は、印刷ジョブの処理開始時刻Ｔjobに対し、各デバイス３０の工程処理時間の和だけでなく各デバイス３０の起動時間の和を加えた時刻Ｔjob＋Ｄ1＋Ｄ2＋…＋ＤK＋Ｉ1＋Ｉ2＋…＋ＩKとなり、図８の例の場合よりも印刷ジョブの処理に時間がかかる。本実施形態の例に係る図３の例では図８の例と同様に時刻Ｔjob＋Ｄ1＋Ｄ2＋…＋ＤKに印刷ジョブの処理が終了するため、図９の例によると、印刷ジョブの処理のために図３の例よりも多くの時間がかかると言える。また、図９の例では、例えば、あるデバイス３０の起動処理が終了しなければ１つ前の順番のデバイス３０の工程処理の結果を当該あるデバイス３０において受け取ることができない場合に、１つ前の順番のデバイスにおいて工程処理が終了した後、アイドル状態となり、次のデバイス３０の起動処理の終了を待つことが考えられる。このような場合の例として、図９に、２番目のデバイス３０の工程処理の終了から３番目のデバイス３０の起動処理の終了までの「アイドル状態」を示している。このようなアイドル状態における電力消費は、上述の実施形態の例に係る図３の場合には生じない。
【００７６】
図８および図９を参照して以上で説明したとおり、各デバイス３０の起動処理の終了の時刻と当該デバイス３０の１つ前の順番のデバイス３０の工程処理の終了の時刻とが一致するように各デバイス３０の起動処理を開始させる上述の実施形態の例では、印刷ジョブの処理開始の前にすべてのデバイス３０の起動処理を開始させる場合、および、２番目以降の各デバイスについて自身よりも１つ前の順番のデバイス３０の工程処理が終了した時点で起動処理を開始させる場合のいずれの場合よりも、少ない消費電力で印刷ジョブが処理される。また、上述の実施形態の例において、印刷ジョブの処理にかかる時間は、各デバイス３０の工程処理時間の和であり、２番目以降の各デバイスについて自身よりも１つ前の順番のデバイス３０の工程処理が終了した時点で起動処理を開始させる場合と比較して、より短時間で印刷ジョブが処理される。
【００７７】
また、上述の実施形態の例では、印刷ジョブごとにワークフローが生成され、当該ワークフローに含まれるデバイス３０に対してのみ、起動開始命令が送信される。よって、上述の実施形態の例では、印刷ジョブごとに、当該印刷ジョブに対応した各デバイス３０の起動制御が行われる。さらに、上述の実施形態の例において、各デバイス３０は、工程処理の実行中以外は省電力モードまたはオフ状態である。したがって、上述の実施形態の例では、処理中の印刷ジョブのための一工程を実行中のデバイス３０および後の工程のために起動処理中のデバイス３０の他は、省電力モードまたはオフ状態となる。
【００７８】
なお、上述の実施形態の例は、本発明の実施形態の一例にすぎず、上述の実施形態の例の他にも各種の変形例があってよい。例えば、上述の実施形態の例において、各デバイス３０の電源状態制御部３４は、処理実行部３２による工程処理が終了すると、自身の電源状態を省電力モードまたはオフ状態に設定する。変形例では、工程処理の終了の時点で各デバイス３０が自ら電源状態を省電力モードまたはオフ状態に設定する代わりに、プリントサーバ２０からの制御信号に従って各デバイス３０の電源状態を省電力モードまたはオフ状態に設定してもよい。例えば、各デバイス３０の工程処理終了時刻に、プリントサーバ２０が当該デバイス３０に対して省電力モードまたはオフ状態への電源状態の切り替えを指示する命令を表す制御信号を送信し、この制御信号を受信したデバイス３０の電源状態制御部３４が制御信号に従って当該デバイス３０の電源状態を省電力モードまたはオフ状態に設定する。
【００７９】
また、他の変形例では、各デバイス３０は、必ずしも、工程処理の終了の時点で、電源状態を省電力モードまたはオフ状態に設定しなくてもよい。例えば、工程処理の終了の時点で各デバイス３０の電源状態制御部３４が電源状態をアイドルモードに設定するようにしてもよい。
【００８０】
以上に例示したプリントサーバ２０は、典型的には、汎用のコンピュータにて上述のプリントサーバ２０の各部の機能または処理内容を記述したプログラムを実行することにより実現される。コンピュータは、例えば、ハードウエアとして、図１０に示すように、ＣＰＵ８０、メモリ（一次記憶）８２、各種Ｉ／Ｏ（入出力）インタフェース８４等がバス８６を介して接続された回路構成を有する。また、そのバス８６に対し、例えばＩ／Ｏインタフェース８４経由で、ハードディスクドライブ（ＨＤＤ）８８やＣＤやＤＶＤ、フラッシュメモリなどの各種規格の可搬型の不揮発性記録媒体を読み取るためのディスクドライブ９０が接続される。このようなドライブ８８または９０は、メモリに対する外部記憶装置として機能する。実施形態の処理内容が記述されたプログラムがＣＤやＤＶＤ等の記録媒体を経由して、またはネットワーク経由で、ＨＤＤ８８等の固定記憶装置に保存され、コンピュータにインストールされる。固定記憶装置に記憶されたプログラムがメモリに読み出されＣＰＵにより実行されることにより、実施形態の処理が実現される。
【符号の説明】
【００８１】
１０  クライアント、２０  プリントサーバ、３０  デバイス、３２  処理実行部、３４  電源状態制御部、４０  ワークフロー規則記憶部、８０  ＣＰＵ、８２  メモリ、８４  Ｉ／Ｏインタフェース、８６  バス、８８  ＨＤＤ、９０  ディスクドライブ、２００  デバイス情報登録処理部、２０２  デバイス情報記憶部、２０４  ジョブ受信部、２０６  ジョブ属性情報取得部、２０８  ワークフロー生成部、２１０  起動時間特定部、２１２  工程処理時間算出部、２１４  起動開始時刻決定部、２１６  スケジューラ、２１８  ジョブ送信部、２２０  起動制御部。
【図１】
0005845682.tif 000002
【図２Ａ】
0005845682.tif 000003
【図２Ｂ】
0005845682.tif 000004
【図３】
0005845682.tif 000005
【図４】
0005845682.tif 000006
【図５】
0005845682.tif 000007
【図６】
0005845682.tif 000008
【図７】
0005845682.tif 000009
【図８】
0005845682.tif 000010
【図９】
0005845682.tif 000011
【図１０】
0005845682.tif 000012