(57)【要約】【課題】印刷ジョブの実行中に操作部により特定ジョブの実行を指示した場合の待ち時間を算出し報知する。【解決手段】複合機５０は、印刷ジョブＡ〜Ｃを受信するネットワークＩ／Ｆ５１Ａと、印刷ジョブＡ〜Ｃの実行に要する時間指標を含む先行コマンドＣａ〜Ｃｃを受信するネットワークＩ／Ｆ５１Ｂと、特定ジョブＸを実行する指示操作を受け付ける入力Ｉ／Ｆ５５とを有し、ＣＰＵ５２は、受信された先行コマンドＣａ等に含まれる時間指標から各印刷ジョブＡ等の印刷予想時間Ｔｂを算出し、印刷動作中に上記指示操作を受け付けた場合、特定ジョブＸの実行を適宜の順番に追加し、上記設定された順番と上記印刷予想時間Ｔｂとに基づき、特定ジョブＸの実行までの待ち時間Ｔｄを算出しＬＣＤ５４で報知し、特定ジョブＸの実行タイミングから所定期間印刷ジョブＡ等の受信を行わない。【選択図】図６
2020167533.tif 000002
【特許請求の範囲】
【請求項１】
シートに画像を形成する画像形成部と、
複数の印刷ジョブを順次受信する第１インタフェースと、
前記複数の印刷ジョブに対しそれぞれ関連づけられ、各印刷ジョブの実行に必要な時間を示す時間指標をそれぞれ含む、複数の付帯コマンドを順次受信する、前記第１インタフェースとは異なる第２インタフェースと、
予め定められた特定ジョブを実行する指示操作を受け付ける操作部と、
報知部と、
制御部と、
を有し、前記第２インタフェースにおける各付帯コマンドの受信順に応じた所定順序に沿って、前記各付帯コマンドに対応する印刷ジョブを順次実行する画像形成装置であって、
前記制御部は、
前記第２インタフェースにより受信された前記複数の付帯コマンドそれぞれに含まれる前記時間指標から、各付帯コマンドに対応する各印刷ジョブの実行に必要な画像形成時間をそれぞれ算出する第１算出処理と、
画像形成動作中において前記操作部により前記特定ジョブの前記指示操作を受け付けた場合、当該指示操作に対応する前記特定ジョブの実行を、前記所定順序における適宜の順番に追加して設定する追加設定処理と、
前記追加設定処理により前記設定された順番と前記第１算出処理における算出結果とに基づき、前記指示操作に対応する前記特定ジョブの実行までに想定される想定時間を算出する第２算出処理と、
前記第２算出処理により算出された前記想定時間を前記報知部により報知させる報知処理と、
前記各付帯コマンドに対応する印刷ジョブが前記所定順序に沿って順次実行されて前記特定ジョブの実行タイミングが到来したとき、前記実行タイミングから所定期間、前記第１インタフェースによる新たな前記印刷ジョブの受信を行わない非受信処理と、
を実行することを特徴とする画像形成装置。
【請求項２】
請求項１記載の画像形成装置において、
前記制御部は、
前記第２インタフェースにおける各印刷ジョブに対応する各付帯コマンドの前記受信順に応じて実行予定コマンド列を生成する実行予定コマンド列生成処理と、
前記各付帯コマンドに対応する印刷ジョブを、前記実行予定コマンド列生成処理により生成された前記実行予定コマンド列に沿って順次実行するジョブ実行処理と、
前記画像形成動作中において前記操作部により前記特定ジョブの前記指示操作を受け付けた場合、ダミー付帯コマンドを生成するダミー付帯コマンド生成処理と、
前記ダミー付帯コマンド生成処理により生成された前記ダミー付帯コマンドを前記実行予定コマンド列における適宜の順番に追加配置するダミー付帯コマンド追加処理と、
前記各付帯コマンドに対応する印刷ジョブが前記実行予定コマンド列に沿って順次実行されて前記特定ジョブの前記実行タイミングが到来したとき、前記非受信処理において、前記所定期間、前記第１インタフェースによる前記新たな印刷ジョブの受信を行わない
ことを特徴とする画像形成装置。
【請求項３】
請求項２記載の画像形成装置において、
前記制御部は、
前記画像形成動作中に前記操作部により前記特定ジョブの前記指示操作を受け付けた場合、前記ダミー付帯コマンド生成処理で当該指示操作に対応して生成した前記ダミー付帯コマンドを、前記ダミー付帯コマンド追加処理において、前記適宜の順番としての前記実行予定コマンド列の末尾に追加配置する
ことを特徴とする画像形成装置
【請求項４】
請求項２記載の画像形成装置において、
前記制御部は、
前記画像形成動作中に前記操作部により前記特定ジョブの前記指示操作を受け付けた場合、前記ダミー付帯コマンド生成処理で当該指示操作に対応して生成した前記ダミー付帯コマンドを、前記ダミー付帯コマンド追加処理において、前記適宜の順番としての前記実行予定コマンド列の先頭に割り込ませて追加配置する
ことを特徴とする画像形成装置
【請求項５】
請求項２記載の画像形成装置において、
前記制御部は、
前記画像形成動作中に前記操作部により前記特定ジョブの前記指示操作を受け付けた場合、前記ダミー付帯コマンド生成処理で当該指示操作に対応して生成した前記ダミー付帯コマンドを、前記ダミー付帯コマンド追加処理において、前記適宜の順番として、前記実行予定コマンド列の末尾に追加配置するか、前記実行予定コマンド列の先頭に割り込ませて追加配置するか、を所定の切替基準に沿って切り替える
ことを特徴とする画像形成装置。
【請求項６】
シートに画像を形成する画像形成部と、
複数の印刷ジョブを順次受信する第１インタフェースと、
前記複数の印刷ジョブに対しそれぞれ関連づけられ、各印刷ジョブの実行に必要な時間を示す時間指標をそれぞれ含む、複数の付帯コマンドを順次受信する、前記第１インタフェースとは異なる第２インタフェースと、
予め定められた特定ジョブを実行する指示操作を受け付ける操作部と、
報知部と、
を有し、前記第２インタフェースにおける各付帯コマンドの受信順に応じた所定順序に沿って、前記各付帯コマンドに対応する印刷ジョブを順次実行する画像形成装置で実行可能な画像形成プログラムであって、
前記画像形成プログラムは、
前記第２インタフェースにより受信された前記複数の付帯コマンドそれぞれに含まれる前記時間指標から、各付帯コマンドに対応する各印刷ジョブの実行に必要な画像形成時間をそれぞれ算出する第１算出処理と、
画像形成動作中において前記操作部により前記特定ジョブの前記指示操作を受け付けた場合、当該指示操作に対応する前記特定ジョブの実行を、前記所定順序における適宜の順番に追加して設定する追加設定処理と、
前記追加設定処理により前記設定された順番と前記第１算出処理における算出結果とに基づき、前記指示操作に対応する前記特定ジョブの実行までに想定される想定時間を算出する第２算出処理と、
前記第２算出処理により算出された前記想定時間を前記報知部により報知させる報知処理と、
前記各付帯コマンドに対応する印刷ジョブが前記所定順序に沿って順次実行されて前記特定ジョブの実行タイミングが到来したとき、前記実行タイミングから所定期間、前記第１インタフェースによる新たな前記印刷ジョブの受信を行わない非受信処理と、
を前記画像形成装置に実行させることを特徴とする画像形成プログラム。
【請求項７】
シートに画像を形成する画像形成部と、
複数の印刷ジョブを順次受信する第１インタフェースと、
前記複数の印刷ジョブに対しそれぞれ関連づけられ、各印刷ジョブの実行に必要な時間を示す時間指標をそれぞれ含む、複数の付帯コマンドを順次受信する、前記第１インタフェースとは異なる第２インタフェースと、
予め定められた特定ジョブを実行する指示操作を受け付ける操作部と、
報知部と、
を有し、前記第２インタフェースにおける各付帯コマンドの受信順に応じた所定順序に沿って、前記各付帯コマンドに対応する印刷ジョブを順次実行する画像形成装置で実行される、画像形成方法あって、
前記第２インタフェースにより受信された前記複数の付帯コマンドそれぞれに含まれる前記時間指標から、各付帯コマンドに対応する各印刷ジョブの実行に必要な画像形成時間をそれぞれ算出する第１算出ステップと、
画像形成動作中において前記操作部により前記特定ジョブの前記指示操作を受け付けた場合、当該指示操作に対応する前記特定ジョブの実行を、前記所定順序における適宜の順番に追加して設定する追加設定ステップと、
前記追加設定ステップで設定された順番と前記第１ステップでの算出結果とに基づき、前記指示操作に対応する前記特定ジョブの実行までに想定される想定時間を算出する第２算出ステップと、
前記第２算出ステップで算出された前記想定時間を前記報知部により報知させる報知ステップと、
前記各付帯コマンドに対応する印刷ジョブが前記所定順序に沿って順次実行されて前記特定ジョブの実行タイミングが到来したとき、前記実行タイミングから所定期間、前記第１インタフェースによる新たな前記印刷ジョブの受信を行わない非受信ステップと、
を実行することを特徴とする画像形成方法。
【発明の詳細な説明】
【背景技術】
【０００１】
従来、コンピュータネットワークに接続された複数のクライアントから供給された印刷データを、プリンタ装置で印刷処理する印刷システムがある。
【０００２】
特許文献１には、複数のクライアントから同時に印刷データが供給された場合の処理に関する技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平１１−１３４１３９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
画像形成装置は、上記従来技術に記載のように、印刷ジョブに対応した画像をシートに形成する画像形成動作を行うことができ、実行される前の未実行の印刷ジョブが複数存在した場合には、通常、それら複数の印刷ジョブが１つずつ順番に実行される。
上記画像形成動作は、ユーザの操作に応じてパソコンやスマートフォン等から印刷ジョブが送信されることで、受信した画像形成装置において実行される。ユーザは、上記印刷ジョブの送信後、画像が形成されたシートを画像形成装置まで取りに行くことになる。
【０００５】
一方、画像形成装置は、上記画像形成動作のほか、読み取り対象物を読み取って対応する画像情報を生成するスキャン動作、読み取り対象物を読み取って生成された画像情報に対応した画像をシートに形成するコピー動作、等を実行することもできる。これらスキャン動作やコピー動作を画像形成装置に行わせる場合、ユーザは、画像形成装置まで赴いて画像形成装置の適宜の操作部によって対応する特定ジョブの指示操作、すなわちスキャン操作やコピー操作等を行う必要がある。
ところが、ユーザが画像形成装置まで移動し上記指示操作を行おうとしたとき、他ユーザの送信済の印刷ジョブにより画像形成装置が画像形成動作を実行中の場合がある。この場合、上記ユーザは、画像形成装置に上記コピー動作やスキャン動作を実行させることができないため、上記他ユーザによる画像形成動作が終了するまで待つしかない。その際、画像形成装置の前での待ち時間がどれくらいの長さであるのかわからないという問題があった。また、画像形成装置の前で待っている間、別ユーザにより印刷ジョブがさらに送信された場合、上記待ち時間がさらに増えるという問題もあった。
【０００６】
本発明の目的は、印刷ジョブの実行中に操作部により特定ジョブの実行を指示した場合の待ち時間を算出し報知することができる、画像形成装置を提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本願発明は、シートに画像を形成する画像形成部と、複数の印刷ジョブを順次受信する第１インタフェースと、前記複数の印刷ジョブに対しそれぞれ関連づけられ、各印刷ジョブの実行に必要な時間を示す時間指標をそれぞれ含む、複数の付帯コマンドを順次受信する、前記第１インタフェースとは異なる第２インタフェースと、予め定められた特定ジョブを実行する指示操作を受け付ける操作部と、報知部と、制御部と、を有し、前記第２インタフェースにおける各付帯コマンドの受信順に応じた所定順序に沿って、前記各付帯コマンドに対応する印刷ジョブを順次実行する画像形成装置であって、前記制御部は、前記第２インタフェースにより受信された前記複数の付帯コマンドそれぞれに含まれる前記時間指標から、各付帯コマンドに対応する各印刷ジョブの実行に必要な画像形成時間をそれぞれ算出する第１算出処理と、画像形成動作中において前記操作部により前記特定ジョブの前記指示操作を受け付けた場合、当該指示操作に対応する前記特定ジョブの実行を、前記所定順序における適宜の順番に追加して設定する追加設定処理と、前記追加設定処理により前記設定された順番と前記第１算出処理における算出結果とに基づき、前記指示操作に対応する前記特定ジョブの実行までに想定される想定時間を算出する第２算出処理と、前記第２算出処理により算出された前記想定時間を前記報知部により報知させる報知処理と、前記各付帯コマンドに対応する印刷ジョブが前記所定順序に沿って順次実行されて前記特定ジョブの実行タイミングが到来したとき、前記実行タイミングから所定期間、前記第１インタフェースによる新たな前記印刷ジョブの受信を行わない非受信処理と、を実行することを特徴とする。
【０００８】
本願発明の画像形成装置は、第１インタフェースと、第２インタフェースと、操作部と、報知部と、を有する。第１インタフェースでは、複数の印刷ジョブが順次受信される一方、第２インタフェースでは、各印刷ジョブに対し関連づけられた付帯コマンドが受信される。上記付帯コマンドには、各印刷ジョブの実行に必要な時間を示す時間指標がそれぞれ含まれている。制御部が実行する第１算出処理において、各付帯コマンドに含まれる上記時間指標から、各付帯コマンドに対応する各印刷ジョブの実行に必要な画像形成時間が算出される。
制御部は、上記各付帯コマンドに対応する印刷ジョブを、第２インタフェースでの各付帯コマンドの受信順に応じた所定順序に沿って、順次実行する。画像形成装置が画像形成動作中、上記操作部を介しユーザの特定ジョブを実行する指示操作を受け付けた場合には、制御部は、追加設定処理で、上記指示操作に対応する特定ジョブの実行を、上記所定順序における適宜の順番に追加して設定する。また制御部は、第２算出処理で、その設定した順番と上記第１算出処理における算出結果とに基づき、上記特定ジョブの実行タイミングまでに想定される想定時間を算出する。制御部は、その後の報知処理で、上記算出した想定時間を報知部によって報知する。これにより、上記指示操作を行った上記ユーザは、画像形成動作が終了するまでの待ち時間がどれくらいの長さであるか、を知ることができる。
また制御部は、その後、上記所定順序に沿って各付帯コマンドに対応する印刷ジョブが順次実行され上記特定ジョブの実行タイミングが到来したとき、非受信処理によって、所定期間、上記第１インタフェースによる新たな印刷ジョブの受信を行わないようにする。これにより、上記のようにユーザが画像形成装置の前で待っている間に、さらに別ユーザにより送信された印刷ジョブが受信され上記待ち時間がさらに増えるのを防止することができる。
【発明の効果】
【０００９】
本発明によれば、印刷ジョブの実行中に操作部により特定ジョブの実行を指示した場合の待ち時間を算出し報知することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の一実施形態による印刷システムに備えられる、ＰＣ及び複合機の構成を示すブロック図である。
【図２】ネットワークを介する通信形態を表す説明図である。
【図３】各インタフェースより入力される信号の処理を説明する機能ブロック図である。
【図４】先行コマンドＣａ等の構成の一例を表す説明図、及び、ダミー先行コマンドＣｘの構成の一例を表す説明図である。
【図５】複数のＰＣから送信された先行コマンドＣａ等が順次受信されて印刷ジョブＡ等が実行される挙動を表す説明図である。
【図６】印刷ジョブＡの実行中に特定ジョブＸの指示操作があった場合の挙動の一例を表す説明図である。
【図７】印刷ジョブＡの実行中に特定ジョブＸの指示操作があった場合の挙動の他の例を表す説明図である。
【図８】ＣＰＵ５２に備えられる先行コマンド受信制御部８３によって実行される制御手順を表すフローチャートである。
【図９】ＣＰＵ５２に備えられる印刷ジョブ受信制御部８５によって実行される制御手順を表すフローチャートである。
【図１０】ＣＰＵ５２に備えられる操作受付制御部８７によって実行される制御手順を表すフローチャートである。
【発明を実施するための形態】
【００１１】
本発明の一実施形態に係る印刷システム１を図１に示す。
＜印刷システムの概要＞
印刷システム１は、複数、この例では３台の端末１０Ａ，１０Ｂ，１０Ｃと、画像形成装置の一例としての複合機５０と、を備えている。なお、端末１０Ａ，１０Ｂ，１０Ｃは、例えばパソコン、スマートフォン、等の外部情報端末であり、以下適宜、単に「ＰＣ１０Ａ，１０Ｂ，１０Ｃ」と称する。また、これらＰＣ１０Ａ，１０Ｂ，１０Ｃは、この例では互いに同一の構成であり、これらを区別しない場合は、以下、単に「ＰＣ１０」と総称する。各図の図示においても同様である。
ＰＣ１０は、印刷ジョブを生成し、複合機５０に印刷ジョブを送信する。複合機５０は、シートに画像を形成するプリント機能、原稿を読み取りスキャンデータを生成するスキャナ機能、原稿を読み取って生成されたスキャンデータに対応した画像をシートに形成するコピー機能、等を有する。複合機５０は、ＰＣ１０から送信される上記印刷ジョブに応じてシートに画像を形成する印刷処理を実行する。なお、以下適宜、シートに画像を形成することを「印刷」と称する。
【００１２】
ＰＣ１０Ａ，１０Ｂ，１０Ｃと複合機５０とはネットワーク４０を介して接続されており、印刷ジョブはネットワーク４０を介してＰＣ１０Ａ，１０Ｂ，１０Ｃから複合機５０へ送信される。なお、ネットワーク４０は、具体的には、例えばＬＡＮである。なお、印刷システム１は、上述の例に限らず、ＰＣ１０及び複合機５０がネットワーク４０を介して不図示の情報管理サーバに接続され、当該情報管理サーバを介して印刷ジョブを送受信する構成であってもよい。
【００１３】
次に、ＰＣ１０及び複合機５０の詳細構成について、上記図１を用いて説明する。
【００１４】
＜ＰＣ１０Ａ，１０Ｂ，１０Ｃの全体構成＞
ＰＣ１０Ａ，１０Ｂ，１０Ｃは、ＣＰＵ１２と、メモリ１４と、ディスプレイＩ／Ｆ１５と、ＬＣＤ１６と、入力Ｉ／Ｆ１８と、ネットワークＩ／Ｆ２０Ａ，２０Ｂと、ＵＳＢ  Ｉ／Ｆ２１と、を備えている。これらの構成要素は、バス２２を介して互いに通信可能である。
【００１５】
＜ＣＰＵ１２＞
ＣＰＵ１２は、メモリ１４内のアプリケーションプログラム２６、プリンタドライバ２８、及びオペレーティングシステム３２に従って処理を実行する。なお、オペレーティングシステムを以下適宜、「ＯＳ」と略称する。各図の図示においても同様である。アプリケーションプログラム２６は、例えば文書作成プログラム等であり、作成されたデータは複合機５０にて印刷可能に構成されている。またアプリケーションプログラム２６には、例えば後述の図８〜図１０のフローチャートに示す各処理を実行するための、画像形成プログラムが含まれる。
【００１６】
プリンタドライバ２８は、複合機５０のデバイスドライバであり、複合機５０に応じた印刷ジョブを作成する。ＯＳ３２は、アプリケーションプログラム２６及びプリンタドライバ２８に利用される基本的な機能を提供するプログラムである。
なお、以下適宜、アプリケーションプログラム２６等を実行するＣＰＵ１２のことを、単にプログラム名で記載する。その場合、例えば、「アプリケーションプログラム２６が」という記載は、「アプリケーションプログラム２６を実行するＣＰＵ１２が」ということを意味する。後述する、プリンタプログラム５９においても同様である。
【００１７】
＜メモリ１４＞
メモリ１４は、例えば、ＲＡＭ、ＲＯＭ、フラッシュメモリ、ＨＤＤ、ＣＰＵ１２が備えるバッファ、等が組み合わされて構成されている。
メモリ１４には、設定情報２９が記憶されている。設定情報２９は、例えばプリンタドライバ２８がＰＣ１０にインストールされた際に作成される。設定情報２９には印刷ポート情報等が含まれる。印刷ポート情報には、複合機５０を特定する識別情報、複合機５０との接続形態の情報、及び通信に使用されるプロトコルの情報、等が含まれる。
【００１８】
メモリ１４は、データ記憶領域３４を備える。データ記憶領域３４は、アプリケーションプログラム２６等の実行に必要なデータ等を記憶する領域である。また、メモリ１４には、ＰＣ１０をＳＮＭＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）マネージャとして機能させるためのＳＮＭＰマネージャプログラム２７が記憶されており、ＰＣ１０はＳＮＭＰマネージャとして機能する。
【００１９】
なお、メモリ１４は、コンピュータが読み取り可能なストレージ媒体であってもよい。コンピュータが読み取り可能なストレージ媒体とは、ｎｏｎ−ｔｒａｎｓｉｔｏｒｙな媒体である。ｎｏｎ−ｔｒａｎｓｉｔｏｒｙな媒体には、上記の例の他に、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等の記録媒体も含まれる。また、ｎｏｎ−ｔｒａｎｓｉｔｏｒｙな媒体は、ｔａｎｇｉｂｌｅな媒体でもある。
インターネット上のサーバ等からダウンロードされるプログラムを搬送する電気信号は、コンピュータが読み取り可能な媒体の一種であるコンピュータが読み取り可能な信号媒体である。しかし、この信号媒体は、ｎｏｎ−ｔｒａｎｓｉｔｏｒｙなコンピュータが読み取り可能なストレージ媒体には含まれない。後述する複合機５０のメモリ５８についても同様である。
【００２０】
＜ＬＣＤ１６及び入力Ｉ／Ｆ１８＞
ＬＣＤ１６は、ＰＣ１０の各種情報を表示する。ＬＣＤ１６は、ディスプレイＩ／Ｆ１５を介してバス２２に接続され、ディスプレイＩ／Ｆ１５を介して表示データを取得する。
入力Ｉ／Ｆ１８は、キーボード、マウス等を含み、ユーザ操作を入力するためのインタフェースである。なお、入力Ｉ／Ｆ１８は、ＬＣＤ１６の表示画面に重畳されたタッチセンサでも良い。
【００２１】
＜ネットワークＩ／Ｆ２０及びＵＳＢ  Ｉ／Ｆ２１＞
ネットワークＩ／Ｆ２０Ａ，２０Ｂは、それぞれ、例えば不図示のＬＡＮレセプタクル及び無線ＬＡＮの送受信部等を有する。ネットワークＩ／Ｆ２０Ａ，２０Ｂは、有線ＬＡＮ及び無線ＬＡＮ等のネットワーク４０を介したＴＣＰ／ＩＰプロトコルを用いた通信を行う、内部的なインタフェース、例えばポートである。上記内部的なインタフェースに代えて、同等の機能を果たす端子等の物理的なインタフェースによって構成してもよい。なお、以下適宜、これら２つのネットワークＩ／Ｆ２０Ａ，２０Ｂを区別しない場合は、単に「ネットワークＩ／Ｆ２０」と総称する。
ＵＳＢ  Ｉ／Ｆ２１は、ＵＳＢレセプタクルを有し、例えばＵＳＢ２．０等のＵＳＢ規格に従った通信を行う物理的なインタフェース、例えばＵＳＢ端子である。
【００２２】
＜複合機５０の全体構成＞
複合機５０は、第１インタフェースの一例としてのネットワークＩ／Ｆ５１Ａと、第２インタフェースの一例としてのとしてのネットワークＩ／Ｆ５１Ｂと、ＣＰＵ５２と、を備える。また複合機５０は、ディスプレイＩ／Ｆ５３と、報知部の一例としてのＬＣＤ５４と、操作部の一例としての入力Ｉ／Ｆ５５と、ＵＳＢ  Ｉ／Ｆ５７と、メモリ５８と、画像形成部の一例としての印刷部６３と、スキャナ部６４と、を備えている。これらの構成要素は、バス５６を介して互いに通信可能である。
【００２３】
＜ＣＰＵ５２＞
ＣＰＵ５２は、メモリ５８内のプリンタプログラム５９に従って処理を実行する。プリンタプログラム５９は、複合機５０を統括的に制御するプログラムである。またプリンタプログラム５９には、例えば後述の図８〜図１０のフローチャートに示す各処理を実行するための、画像形成プログラムが含まれる。プリンタプログラム５９は、印刷部制御モジュール６０を含む複数のモジュールにより構成されている。印刷部制御モジュール６０は、主に印刷ジョブに従って、印刷部６３を制御する機能を有する。
【００２４】
＜メモリ５８＞
メモリ５８は、ＲＡＭ、ＲＯＭ、ＮＶＲＡＭ等が組み合わされて構成されている。
メモリ５８には、複合機５０をＳＮＭＰエージェントとして機能させるためのＳＮＭＰエージェントプログラム６５が記憶されており、複合機５０はＳＮＭＰエージェントとして機能する。またメモリ５８には、Ｗｅｂサーバとして機能させるためのプログラムである不図示のＥＷＳ（Ｅｍｂｅｄｄｅｄ  Ｗｅｂ  Ｓｅｒｖｅｒ）プログラムが記憶されており、複合機５０はＷｅｂサーバとしても機能する。
【００２５】
またメモリ５８は、データ記憶領域６２を備える。データ記憶領域６２は、プリンタプログラム５９の実行に必要なデータ等を記憶する領域である。
【００２６】
さらにメモリ５８には、ＭＩＢ（Ｍａｎａｇｅｍｅｎｔ  ｉｎｆｏｒｍａｔｉｏｎ  ｂａｓｅ）６１が記憶されている。ＭＩＢ６１は、メモリ５８内の各種記憶領域へのデータアクセスに関するインタフェースとしての機能を有する。例えば、ＭＩＢ６１に対して、あるデータの取得要求が来た場合には、ＭＩＢ６１は、該当するデータが保存された記憶領域から当該データを取得して、取得要求の送信元へと出力する。また例えば、ＭＩＢに対して、あるデータの設定要求が来た場合には、ＭＩＢ６１は、該当する記憶領域に対し受け取った当該データを書き込む。
【００２７】
＜ネットワークＩ／Ｆ５１及びＵＳＢ  Ｉ／Ｆ５７＞
ネットワークＩ／Ｆ５１Ａ，５１Ｂは、それぞれ、例えば不図示のＬＡＮレセプタクル及び無線ＬＡＮの送受信部等を有する。ネットワークＩ／Ｆ５１Ａ，５１Ｂは、有線ＬＡＮ及び無線ＬＡＮ等のネットワーク４０を介したＴＣＰ／ＩＰプロトコルを用いた通信を行う、内部的なインタフェース、例えばポートである。上記内部的なインタフェースに代えて、同等の機能を果たす端子等の物理的なインタフェースによって構成してもよい。なお、以下適宜、これら２つのネットワークＩ／Ｆ５１Ａ，５１Ｂを区別しない場合は、単に「ネットワークＩ／Ｆ５１」と総称する。ネットワークＩ／Ｆ５１は、ネットワーク４０を通じ、ＰＣ１０のネットワークＩ／Ｆ２０と通信可能となっている。
ＵＳＢ  Ｉ／Ｆ５７は、ＵＳＢレセプタクルを有し、例えばＵＳＢ２．０等のＵＳＢ規格に従った通信を行う物理的なインタフェース、例えばＵＳＢ端子である。
【００２８】
＜印刷部６３及びスキャナ部６４＞
印刷部６３は、不図示のヘッド、複数のノズル、及びノズルを覆うキャップ等を有している。ヘッドにはノズルが取り付けられており、不図示のインクカートリッジから供給されるインクがノズルからシートに向けて吐出され、シートに画像が形成され印刷が行われる。複合機５０が待機状態である時にはノズルがキャップに覆われた状態である。これにより、インクの不要な乾燥が抑制される。印刷待機状態では、キャップが移動され、ヘッドのノズルが露出される。
スキャナ部６４は、例えばイメージセンサ等を有し、原稿に印刷された画像を読み取ってスキャンデータを生成する。
【００２９】
＜ＬＣＤ５４及び入力Ｉ／Ｆ５５＞
ＬＣＤ５４は、ディスプレイＩ／Ｆ５３を介してバス５６に接続されている。ＬＣＤ５４は、ディスプレイＩ／Ｆ５３を介して表示データを取得し、複合機５０の各種情報を表示する。
入力Ｉ／Ｆ５５は、ユーザ操作を入力するためのインタフェースであり、適宜の操作ボタン等を有する。ユーザは、上記操作ボタンを適宜に操作することで、複合機５０に対し、前述したスキャナ機能及びコピー機能等の実行を指示することができる。
【００３０】
＜ＰＣ１０と複合機５０との通信＞
次に、図２を用いて、ＰＣ１０と複合機５０とでネットワーク４０を介して行われる通信について説明する。
【００３１】
＜論理的インタフェース＞
ＰＣ１０は、論理的なインタフェースとして、Ｐｏｒｔ９１００  Ｉ／Ｆ７１Ａと、ＬＰＲ  Ｉ／Ｆ７２Ａと、ＩＰＰ  Ｉ／Ｆ７３Ａと、ＳＮＭＰ  Ｉ／Ｆ７４Ａと、を備えている。複合機５０は、論理的なインタフェースとして、Ｐｏｒｔ９１００  Ｉ／Ｆ７１Ｂ、ＬＰＲ  Ｉ／Ｆ７２Ｂ、ＩＰＰ  Ｉ／Ｆ７３Ｂ、及びＳＮＭＰ  Ｉ／Ｆ７４Ｂを備えている。
【００３２】
＜印刷ジョブ用のインタフェース＞
Ｐｏｒｔ９１００  Ｉ／Ｆ７１Ａは、Ｐｏｒｔ９１００プロトコルによってＰｏｒｔ９１００  Ｉ／Ｆ７１Ｂと通信を行う。ＬＰＲ  Ｉ／Ｆ７２Ａは、ＬＰＲプロトコルによってＬＰＲ  Ｉ／Ｆ７２Ｂと通信を行う。ＩＰＰ  Ｉ／Ｆ７３Ａは、ＩＰＰプロトコルによってＩＰＰ  Ｉ／Ｆ７３Ｂと通信を行う。これらＰｏｒｔ９１００  Ｉ／Ｆ７１Ａ，７１Ｂと、ＬＰＲ  Ｉ／Ｆ７２Ａ，７２Ｂと、ＩＰＰ  Ｉ／Ｆ７３Ａ，７３Ｂとは、印刷ジョブの送受信が行われるインタフェースである。ＰＣ１０の上記ネットワークＩ／Ｆ２０Ａは、複合機５０の上記ネットワークＩ／Ｆ５１Ａと接続されており、上記の各通信は、ネットワークＩ／Ｆ２０Ａ，５１Ａを介して行われる。
Ｐｏｒｔ９１００  Ｉ／Ｆ７１Ａ、ＬＰＲ  Ｉ／Ｆ７２Ａ、及びＩＰＰ  Ｉ／Ｆ７３Ａと、プリンタドライバ２８とのデータの送受は、プリンタドライバ２８の依頼に基づき、ＯＳ３２によって行われる。
【００３３】
＜先行コマンド及び先行コマンド用のインタフェース＞
ＰＣ１０は、印刷ジョブを複合機５０に送信するのに先立って、付帯コマンドの一例としての先行コマンドを複合機５０に送信する。先行コマンドは、複合機５０に印刷処理の準備動作の実行を指示するものである。準備動作とは、具体的には、印刷部６３のノズルを覆うキャップを移動させ、ノズルを露出させるアンキャップ動作等である。先行コマンドが送信されることにより、印刷ジョブの送信から最初の一枚目のシートが印刷されるまでの時間を短縮することができる。
【００３４】
ＳＮＭＰ  Ｉ／Ｆ７４Ａ，７４Ｂは、上記印刷ジョブに付帯する上記先行コマンドのやり取りと、ＭＩＢ６１に対する情報の要求及び応答のやり取りと、等を行うインタフェースである。ＳＮＭＰ  Ｉ／Ｆ７４Ａは、ＳＭＮＰプロトコルによってＳＮＭＰ  Ｉ／Ｆ７４Ｂと通信を行う。ＰＣ１０の上記ネットワークＩ／Ｆ２０Ｂは、複合機５０の上記ネットワークＩ／Ｆ５１Ｂと接続されており、上記の通信は、上記ネットワークＩ／Ｆ２０Ａ，５１Ａと異なる上記ネットワークＩ／Ｆ２０Ｂ，５１Ｂを介し行われる。
ＳＮＭＰ  Ｉ／Ｆ７４Ａとプリンタドライバ２８とのデータの送受は、プリンタドライバ２８によって行われる。
【００３５】
＜ＳＮＭＰ  Ｉ／Ｆ７４Ｂにおける情報受信処理＞
図３に示すように、複合機５０は、上記印刷部制御モジュール６０の実行等により機能的に実現される印刷制御部８１を有し、印刷部６３の動作は印刷制御部８１によって制御される。印刷制御部８１は、先行コマンド受信制御部８３と、印刷ジョブ受信制御部８５と、操作受付制御部８７と、を機能的に備えている。
複合機５０は、ネットワークＩ／Ｆ５１Ｂ及びＳＮＭＰ  Ｉ／Ｆ７４Ｂを介して各種の情報を受信し、ネットワークＩ／Ｆ５１Ａ及びＰｏｒｔ９１００  Ｉ／Ｆ７１Ｂ、ＬＰＲ  Ｉ／Ｆ７２Ｂ、ＩＰＰ  Ｉ／Ｆ７３Ｂを介して各種の情報を受信する。また複合機５０は、ユーザによる入力Ｉ／Ｆ５５の操作に対応した各種の情報を受信する。
複合機５０は、受信した上記各種の情報に応じ、ＣＰＵ５２により、印刷制御部８１の先行コマンド受信制御部８３、印刷ジョブ受信制御部８５、及び操作受付制御部に対する指示の出力、ＭＩＢ６１を介した情報の書込み、ＭＩＢ６１を介した情報の読出し、等を行う。
【００３６】
ネットワークＩ／Ｆ５１Ｂを介しＳＮＭＰ  Ｉ／Ｆ７４Ｂで受け付けられＭＩＢ６１を介しメモリ５８内の適宜の記憶領域へと書き込まれ、先行コマンド受信制御部８３へ入力される情報としては、上記先行コマンド、ＥＷＳ用の情報、Ｔｅｌｎｅｔの情報等がある。
上記ネットワークＩ／Ｆ５１Ａを介しＰｏｒｔ９１００  Ｉ／Ｆ７１Ｂ、ＬＰＲ  Ｉ／Ｆ７２Ｂ、ＩＰＰ  Ｉ／Ｆ７３Ｂで受け付けられ印刷ジョブ受信制御部８５へ入力される情報としては、上記印刷ジョブ等がある。
上記入力Ｉ／Ｆ５５で受け付けられ操作受付制御部８７へ入力される情報としては、ユーザの上記操作ボタン等による指示操作に対応する、予め定められた特定ジョブ等がある。この特定ジョブは、例えば、複合機５０に上記スキャナ機能を実行させるスキャンジョブ、及び、複合機５０に上記コピー機能を実行させるコピージョブ、等を含む。以下適宜、これらスキャンジョブ及びコピージョブを単に「特定ジョブ」と総称する。
【００３７】
なお、上記のようにして受け付けられる各種情報は、原則として、受け付けた順番に、順次ＣＰＵ５２により処理される。よって、例えば複数のＰＣ１０の接続時に、接続された複数のＰＣ１０それぞれから複数の先行コマンドが順次受信された場合は、先行する先行コマンドの処理が終了するまで、後続の先行コマンドの処理は待機される。同様に、接続された複数のＰＣ１０それぞれから複数の印刷ジョブが順次受信された場合は、先行する印刷ジョブの処理が終了するまで、後続の印刷ジョブの処理は待機される。なお、上記特定ジョブに関する処理順序については、後述する。
以上の処理は、プリンタプログラム５９をＣＰＵ５２が実行すること等により実現される。また、上記印刷制御部８１を機能的に含むＣＰＵ５２が、制御部の一例に相当している。
【００３８】
＜実施形態の背景＞
上記印刷システム１のように１台の複合機５０に対し複数のＰＣ１０が接続され、それら複数のＰＣ１０からの印刷ジョブを複合機５０が受信した場合には、前述したように、その受信した順に印刷ジョブが処理される。
【００３９】
一方、複合機５０は、既に述べたように、上記のようにＰＣ１０から送信された印刷ジョブのほか、ユーザによる入力Ｉ／Ｆ５５の操作ボタン等の指示操作に対応した上記特定ジョブを実行することもできる。
【００４０】
ところが、ユーザが複合機５０まで移動し上記操作ボタン等の指示操作を行おうとしたとき、他ユーザがＰＣ１０を用いて送信済の印刷ジョブにより複合機５０が印刷動作を実行中の場合がある。この場合、上記ユーザは、複合機５０に上記特定ジョブを実行させることができないため、上記他ユーザによる複合機５０の印刷動作が終了するまで待つしかない。その際、上記ユーザは、複合機５０の前での待ち時間がどれくらいの長さであるのかわからない。また、複合機５０の前で待っている間、別ユーザによりＰＣ１０から印刷ジョブがさらに送信された場合、上記待ち時間がさらに増える。
【００４１】
＜実施形態の手法の概要＞
本実施形態は、上記に対応するために、上記先行コマンドに基づいて、各印刷ジョブの実行に必要な画像形成時間の一例としての印刷予想時間Ｔｂを算出し、その算出結果に応じて、上記特定ジョブを実行するまでの待ち時間Ｔｄを算出して表示する。以下、上記実施形態の手法の詳細を順を追って説明する。
【００４２】
＜先行コマンド＞
本実施形態における上記先行コマンドの構成の一例を図４に示す。
図４において、先行コマンドは、コマンド自体のデータ識別子及びデータ長と、印刷ジョブと対応付けるためのジョブＩＤと、先行コマンドの送信元のＰＣ１０のＩＰアドレス及びプロトコルと、対応する印刷ジョブの実行に必要な時間を表す時間指標と、を含む。時間指標は、この例では、当該印刷ジョブの実行時における印刷枚数情報、用紙サイズ情報、用紙種別情報、片面／両面情報、カラー／モノクロ情報、及び、印字解像度情報、が含まれている。
【００４３】
上記時間指標に含まれる上記印刷枚数情報は、印刷ジョブで作成される印刷物の部数を表す。上記用紙サイズ情報は、印刷ジョブの印刷対象として設定されている上記シートのサイズを表し、例えばＡ４サイズ、Ｂ５サイズ、Ａ３サイズ、Ｂ４サイズ、等が設定されている。
上記用紙種別情報は、印刷ジョブの印刷対象として設定されている上記シートの種類を表し、例えば普通紙、光沢紙、等が設定されている。上記片面／両面情報は、印刷ジョブの印刷時に、各シートに対する両面印刷の有無を表している。上記カラー／モノクロ情報は、印刷ジョブでの印刷がカラー印刷なのかモノクロ印刷なのかを表している。
上記印字解像度情報は、印刷ジョブに対し設定されている解像度の値を表す。
【００４４】
＜印刷ジョブ実行時の印刷予想時間の算出例＞
本実施形態では、上述の印刷枚数情報、用紙サイズ情報、用紙種別情報、片面／両面情報、カラー／モノクロ情報、印字解像度情報が、典型的な値及び設定となる１つの基準印刷ジョブを想定し、その基準印刷ジョブに要する印刷時間を、上記算出のベースとする。
基準印刷ジョブとしては、この例では、印刷枚数が１枚、用紙サイズがＡ４サイズ、用紙種別が普通紙、片面印刷、モノクロ印刷、印字解像度が６００×３００ピクセルのジョブが設定される。なお、この基準印刷ジョブを複合機５０において実行するときに要する、印刷予想時間Ｔｂｏは、予め、複合機５０の実際の動作時間等を考慮し、適宜に設定される。本明細書では、仮にＴｂｏ＝８［ｓｅｃ］とする。
【００４５】
そして、前述のように１つの印刷ジョブに対応する１つの先行コマンドが受信されたときには、その印刷ジョブにおける印刷予想時間Ｔｂは、上記Ｔｂｏ及び６つの補正係数ｋ１〜ｋ６を用いた、下記の式によってＣＰＵ５２によって算出される。
印刷予想時間Ｔｂ  ＝  Ｔｂｏ×ｋ１×ｋ２×ｋ３×ｋ４×ｋ５×ｋ６  （式１）
【００４６】
ｋ１は、上記印刷枚数情報に対応する補正係数であり、例えば、印刷ジョブにおける印刷枚数の値そのものである。
ｋ２は、上記用紙サイズ情報に対応する補正係数であり、例えば、Ａ４サイズなら１．０、Ａ３サイズなら２．０、・・等に予め定められる。
ｋ３は、上記用紙種別情報に対応する補正係数であり、例えば、普通紙なら１．０、光沢紙なら１．５、・・等に予め定められる。
ｋ４は、上記片面／両面情報に対応する補正係数であり、例えば、片面印刷なら１．０、両面印刷なら２．０、・・等に予め定められる。
ｋ５は、上記カラー／モノクロ情報に対応する補正係数であり、例えば、モノクロ印刷なら１．０、カラー印刷なら１．６、・・等に予め定められる。
ｋ６は、上記印字解像度情報に対応する補正係数であり、例えば、６００×３００ピクセルなら１．０、１２００×６００ピクセルなら４．８、・・等に予め定められる。
【００４７】
受信された先行コマンドの上記時間指標が、印刷枚数２枚、Ａ４サイズ、光沢紙、片面印刷、カラー印刷、印字解像度１２００×６００ピクセルであった場合、補正係数はｋ１＝２、ｋ２＝１．０、ｋ３＝１．５、ｋ４＝１．０、ｋ５＝１．６、ｋ６＝４．８となる。
この結果、当該先行コマンドに対応する印刷ジョブの印刷予想時間Ｔｂは、
Ｔｂ＝８×２×１．０×１．５×１．０×１．６×４．８
＝１８４．３２［ｓｅｃ］
と算出される。
本実施形態では、式（１）を用いた上記手法により、受信済の先行コマンドに対応する各印刷ジョブの印刷予想時間Ｔｂが算出される。
【００４８】
＜先行コマンドの待ち行列＞
前述したように、本実施形態では、ＰＣ１０から印刷ジョブが複合機５０へ送信されるのに先立って、印刷ジョブに対応する先行コマンドが複合機５０へ送信される。複数のＰＣ１０からの先行コマンドを複合機５０が受信した場合、それら複数の先行コマンドは上記ＭＩＢ６１を介しメモリ５８内の上記適宜の記憶領域に書き込まれ、当該記憶領域において、先行コマンドの待ち行列が形成される。そして、その待ち行列の先頭から末尾に向かって、順番に各先行コマンドに対する処理が行われる。
【００４９】
すなわちまず、待ち行列の先頭の先行コマンドを送信したＰＣ１０に対し、対応する印刷ジョブの送信要求が複合機５０から送信され、複合機５０は、当該ＰＣ１０から送信された印刷ジョブを受信して実行する。その後、待ち行列の先頭の次の２番目の先行コマンドを送信したＰＣ１０に対し、上記同様、複合機５０が印刷ジョブの送信要求を送信し、複合機５０はＰＣ１０から送信された当該印刷ジョブを受信して実行する。以降、同様に先行コマンドの受信順に沿って、各印刷ジョブが複合機５０において受信され、実行される。
【００５０】
前述した、先行コマンドの待ち行列形成→印刷ジョブの送信要求を送信→印刷ジョブ受信→印刷ジョブ実行すなわち印刷、という処理の実行中、上記特定ジョブの指示操作が行われた場合、本実施形態では、当該特定ジョブに対応するダミー先行コマンドが生成される。このダミー先行コマンドは、上記ＭＩＢ６１を介し取得された先行コマンドにより生成される上記待ち行列における、適宜の順番に追加して配置される。本実施形態では、上記ダミー先行コマンドは、当該ダミー先行コマンド生成時における上記待ち行列の先頭又は末尾に、追加して配列される。
前述のようにして、待ち行列中の各先行コマンドに対応する印刷ジョブの印刷予想時間Ｔｂがそれぞれ算出されることから、ＣＰＵ５２は、待ち行列に追加されたダミー先行コマンドの順番が、待ち行列の先頭からどれくらいの時間で回ってくるのか、を算出できる。すなわち、待ち行列の先頭に対応するタイミングからダミー先行コマンドに対応する特定ジョブの実行タイミングまでの時間は、ダミー先行コマンドより前に並ぶ各先行コマンドに対応する印刷ジョブの印刷予想時間Ｔｂの合計である、総印刷時間Ｔｆとして表すことができる。
【００５１】
＜印刷ジョブ＞
また、上記特定ジョブの指示操作が行われたときに実行されている印刷ジョブについても、当該印刷ジョブに係わる上記時間指標に基づき、その印刷予想時間Ｔｂが算出される。
【００５２】
＜待ち時間＞
以上により、上記特定ジョブの指示操作を行ったユーザが、その特定ジョブが実行されるまでに実質的に待たされる待ち時間Ｔｄは、最大で、上記実行中の印刷ジョブの印刷予想時間Ｔｂと、ダミー先行コマンドより前に並ぶ各先行コマンドに対応する印刷ジョブの総印刷時間Ｔｆと、の和であり、
Ｔｄ  ＝  Ｔｂ  ＋Ｔｆ
で算出することができる。なお、以下適宜、上記総印刷時間Ｔｆを、「ダミー先行コマンド前の総印刷時間Ｔｆ」と称する。
そして、ＣＰＵ５２は、算出した上記待ち時間Ｔｄを上記ＬＣＤ５４に表示させることで、ユーザに報知することができる。
【００５３】
＜具体例＞
上述した本実施形態による手法の具体例を、図５〜図７を用いて説明する。
【００５４】
＜先行コマンドＣａ，Ｃｂ，Ｃｃの順次受信＞
まず、上記特定ジョブの操作指示がなく上記ダミー先行コマンドが生成されない場合を説明する。図５は、上記ＰＣ１０Ａ，１０Ｂ，１０Ｃが、印刷ジョブＡ、印刷ジョブＢ、印刷ジョブＣをそれぞれ保持しており、各印刷ジョブＡ〜Ｃにそれぞれ対応する先行コマンドＣａ、先行コマンドＣｂ、先行コマンドＣｃを複合機５０へ送信する例を示している。なお、先行コマンドＣａ，Ｃｂ，Ｃｃを区別しない場合は、以下適宜、単に「先行コマンドＣａ等」と総称する。また、印刷ジョブＡ，Ｂ，Ｃを区別しない場合は、以下適宜、単に「印刷ジョブＡ等」と総称する。
【００５５】
まず図５（ａ）において、ＰＣ１０Ａから上記先行コマンドＣａがまず最初に送信され、その後にＰＣ１０Ｂから上記先行コマンドＣｂが送信されている。受信された先行コマンドＣａ，Ｃｂはメモリ５８の上記適宜の記憶領域へと書き込まれて保持され、先頭に先行コマンドＣａ、２番目に先行コマンドＣｂ、を配置した、実行予定コマンド列の一例としての先行コマンドの待ち行列Ｗが上記記憶領域内に形成される。なお、図５（ａ）及び以下の各図においては、便宜的に、上記記憶領域に対し符号「５８」を付して略示している。
【００５６】
次に、図５（ｂ）に示すように、先行コマンドＣａに対応する印刷ジョブＡの送信要求が複合機５０からＰＣ１０Ａに送信される。複合機５０は、上記送信要求に対応してＰＣ１０Ａから送信された印刷ジョブＡを受信し、実行する。この結果、図５（ａ）の待ち行列Ｗから先行コマンドＣａが消失し、図５（ｂ）に示すように上記記憶領域内の待ち行列Ｗには先行コマンドＣｂのみが含まれる状態となる。
【００５７】
その後、図５（ｃ）に示すように、先行コマンドＣｂに対応する印刷ジョブＢの送信要求が複合機５０からＰＣ１０Ｂに送信される。複合機５０は、上記送信要求に対応してＰＣ１０Ｂから送信された印刷ジョブＢを受信し、実行する。この結果、図５（ｂ）の待ち行列Ｗから先行コマンドＣｂが消失し、図５（ｃ）に示すように上記記憶領域内に待ち行列Ｗがなくなった状態となる。
【００５８】
その後、図５（ｄ）に示すように、ＰＣ１０Ｃから上記先行コマンドＣｃが送信されている。受信されたこれら先行コマンドＣｃはＭＩＢ６１を介し上記記憶領域へと書き込まれて保持され、この先行コマンドＣｃのみからなる、先行コマンドの待ち行列Ｗが上記記憶領域内に形成される。
【００５９】
その後、図５（ｅ）に示すように、先行コマンドＣｃに対応する印刷ジョブＣの送信要求が複合機５０からＰＣ１０Ｃに送信される。複合機５０は、上記送信要求に対応してＰＣ１０Ｃから送信された印刷ジョブＣを受信し、実行する。この結果、図５（ｄ）の待ち行列Ｗから先行コマンドＣｃが消失し、図５（ｅ）に示すように上記記憶領域内に待ち行列Ｗがなくなった状態となる。
【００６０】
＜印刷ジョブＡの実行中に特定ジョブの指示操作があった場合〜その１＞
次に、複合機５０の印刷動作の実行中に上記特定ジョブの指示操作が行われた場合の処理の一例を、図６（ａ）〜（ｇ）により説明する。
【００６１】
まず図６（ａ）において、図５（ａ）と同様、ＰＣ１０Ａ，１０Ｂから先行コマンドＣａ，Ｃｂが順次送信され、複合機５０が受信した先行コマンドＣａ，Ｃｂにより、先行コマンドＣａ，Ｃｂを配置した先行コマンドの待ち行列Ｗが、上記記憶領域内に形成される。なお、この処理が、実行予定コマンド列生成処理の一例に相当している。
このとき、上記先行コマンドＣａ，Ｃｂに含まれる上記時間指標により、前述の式（１）を用いた手法により、対応する印刷ジョブＡ，Ｂの上記印刷予想時間Ｔｂがそれぞれ算出される。なお、この処理が、第１算出処理の一例に相当している。この例では印刷ジョブＡ，Ｂの印刷予想時間Ｔｂはそれぞれｅａ，ｅｂであり、図６（ａ）中には便宜的に、対応する先行コマンドＣａ，Ｃｂに対し上記印刷予想時間ｅａ，ｅｂを並記して示している。なお、以下適宜、各図において同様の並記を行っている。
また、上記の結果、待ち行列Ｗに含まれる全先行コマンドＣａ，Ｃｂに対応する全印刷ジョブＡ，Ｂの印刷予想時間Ｔｂの合計である総印刷時間Ｔｅは、Ｔｅ＝ｅａ＋ｅｂとなる。なお、以下適宜、上記総印刷時間Ｔｅを、「待ち行列内の総印刷時間Ｔｅ」と称する。
【００６２】
次に、上記図５（ｂ）と同様、図６（ｂ）に示すように、複合機５０は、先行コマンドＣａに対応する印刷ジョブＡの送信要求をＰＣ１０Ａに送信し、これに対応して送信された印刷ジョブＡを受信し、実行する。図６（ａ）の待ち行列Ｗから先行コマンドＣａが消失し、上記記憶領域内の待ち行列Ｗには、印刷ジョブＢの印刷予想時間がｅｂである、先行コマンドＣｂのみが含まれる。この結果、上記待ち行列内の総印刷時間Ｔｅ＝ｅｂとなる。
【００６３】
印刷ジョブＡが実行されているときに、操作ボタン等を介し、スキャンジョブ又はコピージョブ等の特定ジョブＸを実行する指示操作がなされると、図６（ｃ）に示すように、対応する、ダミー付帯コマンドの一例としてのダミー先行コマンドＣｘが生成される。なお、この処理が、ダミー付帯コマンド生成処理の一例に相当している。
生成されたダミー先行コマンドＣｘは、この例では、この時点での待ち行列Ｗの先頭、すなわち上記先行コマンドＣｃよりも前に割り込ませて追加配置され、結果として、特定ジョブＸの実行順が印刷ジョブＣよりも先の順番に追加設定される。なお、この処理が、ダミー付帯コマンド追加処理の一例及び追加設定処理の一例、に相当している。
また、前述のようにして算出された先行コマンドＣａ等に係わる印刷ジョブＡ等の印刷予想時間Ｔｂと、上記特定ジョブＸが追加設定された順番と、に基づき、特定ジョブＸが実行されるまでに想定される想定時間の一例としての上記待ち時間Ｔｄが算出される。具体的には、実行中である印刷ジョブＡの上記印刷予想時間Ｔｂ＝ｅａと、前述のダミー先行コマンド前の総印刷時間Ｔｆと、の和により待ち時間Ｔｄが算出される。この例では、ダミー先行コマンドＣｘが待ち行列Ｗの先頭に追加される。そのため、待ち行列Ｗ中の各先行コマンドＣａ，Ｃｘ等が時系列的に順次処理されるときの、待ち行列Ｗの先頭に対応する処理タイミングから、ダミー先行コマンドＣｘの処理タイミング言い替えれば特定ジョブＸの実行タイミングまで、の時間差が０となる。その結果、前述のダミー先行コマンド前の総印刷時間Ｔｆ＝０となる。
この結果、上記待ち時間Ｔｄは、
Ｔｄ＝Ｔｂ＋Ｔｆ
＝ｅａ
となる。なお、この処理が、第２算出処理の一例に相当している。
この待ち時間Ｔｄ＝ｅａであることが、上記ＬＣＤ５４に表示されることで、ユーザに報知される。なお、この表示による報知に代え、複合機５０に設けた適宜のスピーカ等により音声報知を行っても良い。この処理が、報知処理の一例に相当している。
【００６４】
その後、図６（ｄ）に示すように、複合機５０は、上記指示操作に対応した特定ジョブＸを実行する。すなわち、原稿を読み取りスキャンデータを生成するスキャンジョブ、又は、原稿を読み取って生成されたスキャンデータに対応した画像をシートに形成するコピージョブ、等を行う。この結果、図６（ｃ）の待ち行列Ｗからダミー先行コマンドＣｘが消失し、図６（ｄ）に示すように上記記憶領域内の待ち行列Ｗには先行コマンドＣｂのみが残る状態となる。
上記特定ジョブＸの実行タイミングが到来し実行が開始された後、所定期間、ＣＰＵ５２は、先行コマンドＣｂに対応する印刷ジョブＢの送信要求をＰＣ１０Ｂに送信しないようにすることで、印刷ジョブＢを受信しないようにする。図６（ｄ）中ではこのように印刷ジョブを非受信とする処理を、模式的に「×」で表記している。この処理が、非受信処理の一例に相当している。
なお、上記のように、先行コマンドＣａ等を複合機５０で受信後に印刷ジョブの送信要求を送信しＰＣ１０から印刷ジョブＡ等を受信する手法でなく、ＰＣ１０が先行コマンドＣａ等の送信後に適宜のタイミングで印刷ジョブＡ等を送信する手法であっても良い。この場合には、ＰＣ１０から複合機５０へ印刷ジョブを送信しないようにすることで、複合機５０が印刷ジョブＡ等を受信するのを禁止する。この処理も、非受信処理の一例に相当している。
【００６５】
その後、図６（ｅ）、図６（ｆ）、図６（ｇ）に示す処理は、上記図５（ｃ）、図５（ｄ）、図５（ｅ）とそれぞれ同様であり、説明を省略する。なお、図６（ａ）〜（ｇ）に示す一連の処理は、ジョブ実行処理の一例に相当している。
【００６６】
＜印刷ジョブＡの実行中に特定ジョブの指示操作があった場合〜その２＞
次に、複合機５０の印刷動作の実行中に上記特定ジョブの指示操作が行われた場合の処理の別の例を、図７（ａ）〜（ｇ）により説明する。
【００６７】
図７（ａ）及び図７（ｂ）の処理は、上記図６（ａ）及び図６（ｂ）と同様であり、先行コマンドＣａ，Ｃｂを配置した先行コマンドの待ち行列Ｗが上記記憶領域内に形成され、対応する印刷ジョブＡ，Ｂの上記印刷予想時間Ｔｂ＝ｅａ，ｅｂがそれぞれ算出される。その後、先行コマンドＣａに対応する印刷ジョブＡがＰＣ１０Ａから受信され、実行される。
印刷ジョブＡが実行されているときに、上記特定ジョブＸを実行する指示操作がなされると、この例では、図７（ｃ）に示すように、対応するダミー先行コマンドＣｘが、この時点での待ち行列Ｗの末尾、すなわち先行コマンドＣｃの後に追加配置される。結果として、特定ジョブＸの実行順が印刷ジョブＣよりも後の順番に追加設定される。なお、この処理も、上記同様、ダミー付帯コマンド追加処理の一例及び追加設定処理の一例に相当している。
そして、前述と同様、上記先行コマンドＣａ，Ｃｂに係わる印刷ジョブＡ，Ｂの印刷予想時間Ｔｂと、上記特定ジョブＸが追加設定された順番と、に基づき、特定ジョブＸが実行されるまでに想定される上記待ち時間Ｔｄが算出される。具体的には、前述と同様、印刷ジョブＡの印刷予想時間Ｔｂ＝ｅａと、ダミー先行コマンド前の総印刷時間Ｔｆと、の和により待ち時間Ｔｄが算出される。この例では、ダミー先行コマンドＣｘが待ち行列Ｗの末尾に追加される。そのため、待ち行列Ｗ中の各先行コマンドＣａ，Ｃｘ等が時系列的に順次処理されるときの、待ち行列Ｗの先頭に対応する処理タイミングから、ダミー先行コマンドＣｘの処理タイミング言い替えれば特定ジョブＸの実行タイミングまで、の時間差が、上記先行コマンドＣｂに対応する印刷ジョブＢの印刷予想時間ｅｂに等しくなる。その結果、ダミー先行コマンド前の総印刷時間Ｔｆ＝ｅｂとなる。
この結果、上記待ち時間Ｔｄは、
Ｔｄ＝Ｔｂ＋Ｔｆ
＝ｅａ＋ｅｂ
となる。なお、この処理も、第２算出処理の一例に相当している。
この待ち時間Ｔｄ＝ｅａ＋ｅｂであることが、上記ＬＣＤ５４に表示されることで、ユーザに報知される。この処理も、報知処理の一例に相当している。
【００６８】
その後、上記図５（ｃ）と同様、図７（ｄ）に示すように、先行コマンドＣｂに対応する印刷ジョブＢの送信要求が複合機５０からＰＣ１０Ｂに送信される。複合機５０は、上記送信要求に対応してＰＣ１０Ｂから送信された印刷ジョブＢを受信し、実行する。この結果、図５（ｂ）の待ち行列Ｗから先行コマンドＣｂが消失し、図７（ｄ）に示すように上記記憶領域内の待ち行列Ｗにはダミー先行コマンドＣｘのみが含まれる状態となる。
【００６９】
その後、上記図６（ｄ）と同様、図７（ｅ）に示すように、複合機５０は、上記特定ジョブＸ、すなわち上記スキャンジョブ又は上記コピージョブ等を行う。この結果、図７（ｄ）の待ち行列Ｗからダミー先行コマンドＣｘが消失し、図７（ｅ）に示すように上記記憶領域内に待ち行列Ｗがなくなった状態となる。また、上記図６（ｄ）と同様、上記特定ジョブＸの実行タイミングが到来し実行が開始された後、所定期間、ＣＰＵ５２は、印刷ジョブＢを受信しないようにする。図７（ｅ）中でもこの非受信とする処理を「×」で表記している。この処理も、非受信処理の一例に相当している。
【００７０】
その後、図７（ｆ）、図７（ｇ）に示す処理は、上記図５（ｄ）、図５（ｅ）とそれぞれ同様であり、説明を省略する。なお、図７（ａ）〜（ｇ）に示す一連の処理も、ジョブ実行処理の一例に相当している。
【００７１】
＜制御手順＞
上記の手法を実現するために、複合機５０の上記ＣＰＵ５２に機能的に備えられる印刷制御部８１が実行する制御手順を、図８、図９、及び図１０にそれぞれ示すフローチャートを用いて説明する。これらの制御手順は、上記プリンタプログラム５９に含まれる本実施形態による上記画像形成プログラムにより実行され、その実行によって本実施形態による以下の画像形成方法が実現される。
【００７２】
＜先行コマンド受信制御部８３による処理＞
まず、図８に、印刷制御部８１の上記先行コマンド受信制御部８３が実行する制御手順を示す。
【００７３】
まずＳ５で、上記ネットワークＩ／Ｆ５１Ｂ及び上記ＳＮＭＰ  Ｉ／Ｆ７４Ｂ及びＭＩＢ６１を介し、ＰＣ１０からの先行コマンドＣａ等が受信される。その後、Ｓ１０で、上記受信した先行コマンドＣａ等に含まれる、上記ジョブＩＤが取得される。そして、Ｓ１５で、上記取得されたジョブＩＤが処理済ＩＤの集合に含まれるか否かが判定される。
【００７４】
Ｓ１５で、上記取得されたジョブＩＤが処理済ＩＤの集合に含まれていればＹｅｓ判定される。この場合はＳ２０に移行し、処理済ＩＤの集合から、上記取得されたジョブＩＤが削除され、このフローを終了する。
【００７５】
Ｓ１５で、上記取得されたジョブＩＤが処理済ＩＤの集合に含まれていなければＮｏ判定される。この場合はＳ２５に移行し、処理済ＩＤの集合に、上記取得されたジョブＩＤが追加される。その後、Ｓ３０で、上記受信した先行コマンドＣａ等又はその一部が上記待ち行列Ｗに追加される。具体的には、既に待ち行列Ｗが生成されている場合にはその待ち行列の末尾に上記受信した先行コマンドＣａ等又はその一部が追加され、待ち行列Ｗが生成されていない場合には、上記受信した先行コマンドＣａ等又はその一部によって待ち行列Ｗが形成される。そして、Ｓ３５で、複合機５０が印刷動作を行っているか否かが判定される。
【００７６】
Ｓ３５で、複合機５０が印刷動作を行っていればＹｅｓ判定される。この場合はＳ４０に移行し、上記先行コマンドＣａ等に含まれる時間指標から、前述した手法により印刷予想時間Ｔｂが算出される。このＳ４０が第１算出ステップの一例に相当する。そして、Ｓ４５で、待ち行列Ｗにダミー先行コマンドが存在するか否かが判定される。Ｓ４５でダミー先行コマンドが存在していればＹｅｓ判定され、このフローを終了する。Ｓ４５でダミー先行コマンドが存在していなければＮｏ判定される。この場合は、Ｓ５０へ移行し、この時点で算出されている前述の待ち時間Ｔｄに、上記印刷予想時間Ｔｂが加えられ、このフローを終了する。
【００７７】
Ｓ３５で、複合機５０が印刷動作を行っていなければＮｏ判定される。この場合はＳ５５に移行する。Ｓ５５では、この時点でメモリ５８内の上記記憶領域内に生成されている待ち行列Ｗから先頭のコマンドが取り出される。その後、Ｓ６０で、取り出したコマンドが上記ダミー先行コマンドであるか否かが判定される。
上記取り出したコマンドがダミー先行コマンドでなく先行コマンドＣａ等であればＳ６０でＮｏ判定され、Ｓ６５へ移行する。Ｓ６５では、当該先行コマンドＣａ等に含まれるジョブＩＤに該当する印刷ジョブの送信要求が、対応するＰＣ１０へ送信され、このフローを終了する。
上記取り出したコマンドがダミー先行コマンドであればＳ６０でＹｅｓ判定され、Ｓ７０へ移行する。Ｓ７０では、予め定められた上記所定期間、上記ダミー先行コマンドに対応する特定ジョブが実行され、前述のスキャン機能又はコピー機能が実行される。その後、Ｓ７５で、この時点の上記待ち行列Ｗに先行コマンドＣａ等が存在するか否かが判定される。なおこの判定における「先行コマンドＣａ等」には、ダミー先行コマンドＣｘも含まれる。
待ち行列Ｗに先行コマンドＣａ等が存在すればＹｅｓ判定され、上記Ｓ５５に戻る。待ち行列Ｗに先行コマンドＣａ等が存在しなければＮｏ判定され、このフローを終了する。
【００７８】
＜印刷ジョブ受信制御部８５による処理＞
次に、図９に、印刷制御部８１の上記印刷ジョブ受信制御部８５が実行する制御手順を示す。なお、この印刷ジョブ受信制御部８５による制御は、例えば、コンピュータのＯＳ等で行われる、「マルチタスク処理」と同様の公知の方式により、ＣＰＵ５２により、上記図８の先行コマンド受信制御部８３による制御と同時並行して行われる。
【００７９】
まずＳ１０５で、上記ネットワークＩ／Ｆ５１Ａと、上記Ｐｏｒｔ９１００  Ｉ／Ｆ７１Ｂ、ＬＰＲ  Ｉ／Ｆ７２Ｂ、及びＩＰＰ  Ｉ／Ｆ７３Ｂと、を介し、上記Ｓ６５での印刷ジョブの送信要求に対応した印刷ジョブがＰＣ１０から受信される。その後、Ｓ１１０で、上記受信した印刷ジョブの上記ジョブＩＤが取得される。そして、Ｓ１１５で、上記取得されたジョブＩＤが前述した処理済ＩＤの集合に含まれるか否かが判定される。
【００８０】
Ｓ１１５で、上記取得されたジョブＩＤが処理済ＩＤの集合に含まれていればＹｅｓ判定される。この場合はＳ１２０に移行し、上記処理済ＩＤの集合から、上記取得されたジョブＩＤが削除される。Ｓ１１５で、上記取得されたジョブＩＤが処理済ＩＤの集合に含まれていなければＮｏ判定される。この場合はＳ１２５に移行し、上記処理済ＩＤの集合に、上記取得されたジョブＩＤが追加される。
【００８１】
上記Ｓ１２０又はＳ１２５の後、Ｓ１３０で、上記Ｓ１０５で受信された印刷ジョブに関する上記時間指標から、前述した手法により当該印刷ジョブに係わる上記印刷予想時間Ｔｂが算出される。そして、Ｓ１３５で、この時点での待ち行列Ｗに上記ダミー先行コマンドが含まれているか否かが判定される。
【００８２】
Ｓ１３５で待ち行列Ｗにダミー先行コマンドが含まれていなければＮｏ判定される。この場合は、Ｓ１４０へ移行し、この時点で上記記憶領域に生成されている待ち行列Ｗに含まれる全先行コマンドＣａ等に関する、全印刷ジョブの上記印刷予想時間Ｔｂの合計である上記待ち行列内の総印刷時間Ｔｅが算出される。その後、Ｓ１４５で、複合機５０の上記ＬＣＤ５４へ表示するための上記待ち時間Ｔｄを、Ｓ１３０で算出した上記印刷予想時間Ｔｂと、Ｓ１４０で算出した上記待ち行列内の総印刷時間Ｔｅとの和、
Ｔｄ＝Ｔｂ＋Ｔｅ
により算出する。
【００８３】
Ｓ１３５で待ち行列Ｗにダミー先行コマンドが含まれていればＹｅｓ判定される。この場合は、Ｓ１５０へ移行し、この時点で上記記憶領域に生成されている待ち行列Ｗの先頭に対応するタイミングから、上記ダミー先行コマンドに対応する特定ジョブの実行タイミングまでの、上記ダミー先行コマンド前の総印刷時間Ｔｆが算出される。その後、Ｓ１５５で、複合機５０の上記ＬＣＤ５４へ表示するための上記待ち時間Ｔｄを、Ｓ１３０で算出した上記印刷予想時間Ｔｂと、Ｓ１５０で算出した上記ダミー先行コマンド前の総印刷時間Ｔｆとの和、
Ｔｄ＝Ｔｂ＋Ｔｆ
により算出する。このＳ１５５が第２算出ステップの一例に相当する。
【００８４】
Ｓ１４５又はＳ１５５の後、Ｓ１６０で、１つのジョブの印刷動作が開始されると共に、Ｓ１４５又はＳ１５５で算出された待ち時間Ｔｄが複合機５０の上記ＬＣＤ５４にて表示される。このＳ１６０が報知ステップの一例に相当する。そして、Ｓ１６５で、Ｓ１６０で開始された１つのジョブの印刷動作が終了され、Ｓ１７０で、この時点での上記記憶領域内の待ち行列Ｗに先行コマンドＣａ等が存在するか否かが判定される。なおこの判定における「先行コマンドＣａ等」には、ダミー先行コマンドＣｘも含まれる。
【００８５】
Ｓ１７０で待ち行列Ｗに先行コマンドＣａ等が存在しなければＮｏ判定され、このフローを終了する。
Ｓ１７０で待ち行列Ｗに先行コマンドＣａ等が存在していればＹｅｓ判定され、Ｓ１７５に移行する。Ｓ１７５では、待ち行列Ｗから先頭のコマンドが取り出される。その後、Ｓ１８０で、上記取り出したコマンドが上記ダミー先行コマンドであるか否かが判定される。
【００８６】
Ｓ１８０で、上記取り出したコマンドがダミー先行コマンドでなく先行コマンドＣａ等であればＮｏ判定され、Ｓ１８５へ移行する。Ｓ１８５では、当該先行コマンドＣａ等に含まれるジョブＩＤに該当する印刷ジョブの送信要求が、対応するＰＣ１０へ送信され、このフローを終了する。
Ｓ１８０で、上記取り出したコマンドがダミー先行コマンドであればＹｅｓ判定され、Ｓ１９０へ移行する。Ｓ１９０では、予め定められた上記所定期間、上記ダミー先行コマンドに対応する特定ジョブが実行され、前述のスキャン機能又はコピー機能が実行される。この際、当該所定期間、ＣＰＵ５２によって印刷ジョブを受信しないように制御される。このＳ１９０が非受信ステップの一例に相当する。その後、上記Ｓ１７０に戻る。
【００８７】
＜操作受付制御部８７による処理＞
次に、図１０に、印刷制御部８１の上記操作受付制御部８７が実行する制御手順を示す。なお、この操作受付制御部８７による制御は、前述と同様、「マルチタスク処理」と同様の公知の方式により、ＣＰＵ５２により、上記図８の先行コマンド受信制御部８３による制御及び上記図９の印刷ジョブ受信制御部８５による制御と同時並行して行われる。
【００８８】
まずＳ２１０で、操作ボタン等を介した、ユーザによるスキャンジョブ又はコピージョブ等の特定ジョブを実行する指示操作が受け付けられる。その後、Ｓ２２０で、この時点で上記記憶領域に生成されている待ち行列Ｗに含まれる全先行コマンドＣａ等に関する、全印刷ジョブの上記印刷予想時間Ｔｂの合計である上記待ち行列内の総印刷時間Ｔｅが算出される。その後、Ｓ２３０で、上記算出したＴｅが、予め定められたしきい値より大きいか否か、が判定される。
【００８９】
Ｔｅがしきい値より大きい場合はＹｅｓ判定され、Ｓ２４０に移行する。Ｓ２４０では、上記Ｓ２１０で指示操作を受け付けた上記特定ジョブに対応するダミー先行コマンドが生成されると共に、そのダミー先行コマンドが待ち行列Ｗの先頭に追加される。その後、このフローを終了する。
【００９０】
Ｔｅがしきい値以下である場合はＮｏ判定され、Ｓ２５０に移行する。Ｓ２５０では、上記Ｓ２１０で指示操作を受け付けた上記特定ジョブに対応するダミー先行コマンドが生成されると共に、そのダミー先行コマンドが待ち行列Ｗの末尾に追加される。このＳ２５０及び前述のＳ２４０が追加設定ステップの一例に相当する。その後、このフローを終了する。
【００９１】
＜実施形態の効果＞
以上説明したように、本実施形態の複合機５０においては、ネットワークＩ／Ｆ５１Ａでは、複数の印刷ジョブＡ等が順次受信される一方、ネットワークＩ／Ｆ５１Ｂで、各印刷ジョブＡ等に対し関連づけられた先行コマンドＣａ等が受信される。先行コマンドＣａ等には、各印刷ジョブＡ等の実行に必要な時間を示す時間指標がそれぞれ含まれており、図６（ａ）〜（ｃ）及び図７（ａ）〜（ｃ）に示すように、上記時間指標から、各先行コマンドＣａ等に対応する各印刷ジョブＡ等の上記印刷予想時間Ｔｂが算出される。
一方、上記各先行コマンドＣａ等に対応する印刷ジョブＡ等は、図５〜図７に示したように、ネットワークＩ／Ｆ５１Ｂでの先行コマンドＣａ等の受信順に応じた所定順序に沿って、順次実行される。その際、複合機５０が印刷動作中に、入力Ｉ／Ｆ５５を介しユーザの特定ジョブＸの指示操作を受け付けた場合には、図６（ｃ）及び図７（ｃ）に示したように、上記特定ジョブの実行を、上記所定順序における適宜の順番に追加して設定する。そして、その設定した順番と上記印刷予想時間Ｔｂの算出結果とに基づき、上記特定ジョブの実行までに想定される待ち時間Ｔｄが算出される。そして、この算出した待ち時間ＴｄがＬＣＤ５４において報知される。これにより、上記指示操作を行った上記ユーザは、上記印刷動作が終了するまでの待ち時間Ｔｄがどれくらいの長さであるか、を知ることができる。
また、その後、上記所定順序に沿って各先行コマンドＣａ等に対応する印刷ジョブＡ等が順次実行され上記特定ジョブＸの実行タイミングが到来したとき、所定期間、新たな印刷ジョブＡ等の受信を行わないようにする。これにより、上記のようにユーザが複合機５０置場の前で待っている間に、さらに別ユーザにより送信された印刷ジョブが受信され上記待ち時間Ｔｄがさらに増えるのを防止することができる。
【００９２】
また、本実施形態では特に、印刷ジョブＡ等に対応する各先行コマンドＣａ等が、各先行コマンドＣａ等の受信順に応じて並べられて、先行コマンドの待ち行列Ｗが生成される。ユーザの特定ジョブＸの指示操作が受け付けられた場合、上記指示操作に対応するダミー先行コマンドＣｘが生成され、そのダミー先行コマンドＣｘが上記待ち行列Ｗにおける適宜の順番に追加配置される。
これにより、上記各先行コマンドＣａ等に対応する印刷ジョブＡ等が順次実行されるときの上記所定順序に対して、円滑かつ容易に上記特定ジョブＸを実行する順番を追加設定することができる。
【００９３】
また、本実施形態では特に、ユーザによる上記特定ジョブＸの指示操作が受け付けられた場合、図７（ｃ）に示した例では、上記指示操作に対応して生成したダミー先行コマンドＣｘが、上記待ち行列Ｗの末尾に追加配置される。これにより、受信済の先行コマンドＣａ等に対応する印刷ジョブＡ等が全て完了した後に、上記特定ジョブＸを実行することができる。
【００９４】
また、本実施形態では特に、ユーザによる上記特定ジョブＸの指示操作が受け付けられた場合、図６（ｃ）に示した例では、上記指示操作に対応して生成したダミー先行コマンドＣｘが、上記待ち行列Ｗの先頭に割り込ませて追加配置される。これにより、上記指示操作の受付時に実行されている印刷ジョブＡ等の完了後に、速やかに上記特定ジョブＸを実行することができる。
【００９５】
また、本実施形態では特に、上記指示操作に対応して生成されたダミー先行コマンドＣｘを、上記待ち行列Ｗの末尾に追加配置するか待ち行列Ｗの先頭に割り込ませて追加配置するか、を所定の切替基準に沿って切り替える。前述の例では、図１０のＳ２３０に示したように、前述のようにして算出した、上記待ち行列内の総印刷時間Ｔｅが予め定めたしきい値より大きいか否かによって切り替えられる。
これにより、上記特定ジョブＸを、受信済の先行コマンドＣａ等に対応する印刷ジョブＡ等が全て完了した後に実行するか、実行中の印刷ジョブＡ等の完了後に速やかに実行するかを、上記切替基準に応じて、適宜に切り替えることができる。なお、上記のように総印刷時間Ｔｅとしきい値との大小関係を基準とするのに限られず、例えば待ち時間Ｔｄの長短、ユーザによる事前動作設定への該当・非該当、等を基準に切り替えても良い。これらの結果、ユーザにとっての利便性をさらに向上することができる。
【００９６】
なお、本発明は、上記実施形態に限られるものではなく、その趣旨及び技術的思想を逸脱しない範囲内で種々の変形が可能である。
【００９７】
すなわち、上記においては、１台の複合機５０を備えた印刷システム１を例示したが、これに限られず、複数台の複合機５０が含まれる構成でも良く、その場合、少なくとも１台の複合機５０において上記手法を適用することで、前述と同様の効果を得る。
【００９８】
また、前述した各インタフェースにおいて使用されるプロトコルは一例であり、プロトコルはそれらに限定されない。
【００９９】
また、上記では画像形成装置の一例として複合機５０を例示したが、これに限定されない。例えば、印刷機能だけを有するプリンタでも良い。また、印刷形式はインクジェット方式に限定されず、電子写真方式でも良い。電子写真方式の画像形成装置の場合には、例えば、トナーを予め帯電させるための動作、定着器の温度を上昇させるための例えばヒータを加熱する動作等が準備動作となる。また、熱転写方式、感熱方式であっても良い。この場合、内蔵される例えばヒータ等の発熱体の温度を上昇させる動作等が準備動作となる。
【０１００】
なお、以上において、図２、図３等の各図中に示す矢印は信号の流れの一例を示すものであり、信号の流れ方向を限定するものではない。
【０１０１】
また、図８〜図１０に示すフローチャートは本発明を上記フローに示す手順に限定するものではなく、発明の趣旨及び技術的思想を逸脱しない範囲内で手順の追加・削除又は順番の変更等をしてもよい。
【０１０２】
また、以上既に述べた以外にも、上記実施形態や各変形例による手法を適宜組み合わせて利用しても良い。
【０１０３】
その他、一々例示はしないが、本発明は、その趣旨を逸脱しない範囲内において、種々の変更が加えられて実施されるものである。
【符号の説明】
【０１０４】
１０Ａ〜Ｃ          ＰＣ
５０                複合機（画像形成装置）
５１Ａ              ネットワークＩ／Ｆ（第１インタフェース）
５１Ｂ              ネットワークＩ／Ｆ（第２インタフェース）
５２                ＣＰＵ（制御部）
５４                ＬＣＤ（報知部）
５５                入力Ｉ／Ｆ（操作部）
６１                ＭＩＢ
６３                印刷部（画像形成部）
８１                印刷制御部
Ａ                印刷ジョブ
Ｂ                印刷ジョブ
Ｃ                印刷ジョブ
Ｃａ              先行コマンド（付帯コマンド）
Ｃｂ              先行コマンド（付帯コマンド）
Ｃｃ              先行コマンド（付帯コマンド）
Ｃｘ              ダミー先行コマンド（ダミー付帯コマンド）
Ｔｂ              印刷予想時間（画像形成時間）
Ｔｄ              待ち時間（想定時間）
Ｔｅ              待ち行列内の総印刷時間
Ｔｆ              ダミー先行コマンド前の総印刷時間
Ｗ                待ち行列（実行予定コマンド列）
Ｘ                特定ジョブ
【図１】
2020167533.tif 000003
【図２】
2020167533.tif 000004
【図３】
2020167533.tif 000005
【図４】
2020167533.tif 000006
【図５】
2020167533.tif 000007
【図６】
2020167533.tif 000008
【図７】
2020167533.tif 000009
【図８】
2020167533.tif 000010
【図９】
2020167533.tif 000011
【図１０】
2020167533.tif 000012