(57)【特許請求の範囲】
【請求項１】
受信データに対して画像展開を行う画像処理コントローラ部と、
前記画像処理コントローラ部から転送された展開画像データの印刷を行うエンジン部と、
展開画像データを前記エンジン部が最大印刷速度で印刷できるように、受信データに対してエンジン性能とコントローラの性能に応じた展開レベルの中間データまでの画像展開を行った後に前記エンジン部へのデータ転送を行うか、１頁毎に展開処理完了の後に前記エンジン部へのデータ転送を行うかを選択できる選択手段と
を備え、
前記画像処理コントローラ部は、前記選択手段による選択に従って、該展開画像データを前記エンジン部へデータ転送することを特徴とする画像形成装置。
【請求項２】
受信データに対して画像展開を行う画像処理コントローラ部と、前記画像処理コントローラ部から転送された展開画像データの印刷を行うエンジン部とを備え、
前記画像処理コントローラ部は、展開画像データを前記エンジン部が最大印刷速度で印刷できるように、受信データに対してエンジン性能とコントローラの性能に応じた展開レベルの中間データまでの画像展開を行った後、該展開画像データを前記エンジン部へデータ転送する画像形成装置において、
さらに、前記画像処理コントローラ部で画像展開された展開画像データを時間順で管理するジョブ管理部を有し、
前記ジョブ管理部は、個々のジョブの印刷開始時間と印刷終了時間を、エンジン最大印刷速度情報、頁数、および、未だ印刷完了していないジョブ群の情報より計算しユーザーに通知する通知手段を有することを特徴とする画像形成装置。
【請求項３】
前記受信データとは、ジョブデータであることを特徴とする請求項１に記載された画像形成装置。
【請求項４】
前記受信データとは、前記画像処理コントローラ部が所持する記憶装置で一度に保有できるデータ量または頁数であることを特徴とする請求項１に記載された画像形成装置。
【請求項５】
印刷条件が前記エンジン部の構成に合わなければ画像転送を開始しないことを特徴とする請求項１に記載された画像形成装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、プリンタ、ファックス、複写機などの複数の機能を１台の装置にまとめた複合機における印刷制御に関する。
【０００２】
【従来の技術】
複合機は、プリンタ、ファックス、複写機などの複数の機能を１台の装置で使用できるものである。複合機には、プリンタ、ファックス、複写機などに対応する複数のコントローラが、画像を形成するエンジン部を共有するものがある。
【０００３】
【発明が解決しようとする課題】
複数コントローラがエンジン部を共有する構成を備える複合機においては、独立して動作する任意のコントローラが一度エンジン部を占有してしまうと、その印刷処理が完了し占有が終了するまで他のコントローラが印字動作を開始できない。例えばプリンタコントローラで複数頁で構成されるジョブを処理する場合、１頁目の受信が完了し、印刷処理可能状態となった時点からエンジン制御部を占有することになる。ここで、残りの頁の受信、展開処理に多くの時間を要した場合でも、その間エンジン部は印刷動作を実行できないにもかかわらず、全頁の印刷処理が終わるまでそのコントローラに占有されたままとなる。したがって、その間に別の例えばファックスコントローラがデータを受信し、印刷処理可能状態になった場合でも上記コントローラの占有解除を待つことになってしまう。さらに、プリンタコントローラ側で印刷条件がエンジン構成と合わない（指定用紙サイズがセットされてない等）場合に印刷実行を開始できず、エンジン制御部の占有は開始したが、エラー停止でユーザーによるエラー解除までエンジン占有状態待ちつづけるといったもっと悪いケースも存在する。
【０００４】
なお、特開平１１‐３０５９６３号公報には、ジョブの処理中に次のジョブを受け付けた時、ユーザー条件等によりジョブの優先順位を入れ替え、後から来たジョブを優先処理することが提案されている。また、特開平６−２９７８１５号公報には、複数ポートを備える印刷装置においてジョブ受信時にジョブの頁数によりジョブ優先順位を切り替えること、または、受信ポート毎にポート占有時間で優先順位を切り替えることが提案されている。しかし、いずれも単一コントローラ内でのジョブ優先順位について改良したものであり、複合機で同時に並行して動作する複数コントローラ間の関係について改良したものではない。
【０００５】
本発明の目的は、複数コントローラがエンジン部を共有する複合機においてトータルでの生産性を上げることである。
【０００６】
【課題を解決するための手段】
本発明に係る第１の画像形成装置は、受信データに対して画像展開を行う画像処理コントローラ部と、前記画像処理コントローラ部から転送された展開画像データの印刷を行うエンジン部と、展開画像データを前記エンジン部が最大印刷速度で印刷できるように、受信データに対してエンジン性能とコントローラの性能に応じた展開レベルの中間データまでの画像展開を行った後に前記エンジン部へのデータ転送を行うか、１頁毎に展開処理完了の後に前記エンジン部へのデータ転送を行うかを選択できる選択手段とを備える。前記画像処理コントローラ部は、前記選択手段による選択に従って、該展開画像データを前記エンジン部へデータ転送する。
たとえば、前記受信データとはジョブデータである。
また、たとえば、前記受信データとは、画像処理コントローラ部が所持する記憶装置で一度に保有できるデータ量または頁数である。
また、好ましくは、前記印刷条件がエンジン部の構成に合わなければ、画像処理コントローラ部は画像転送を開始しない。
【０００７】
また、本発明に係る第２の画像形成装置は、受信データに対して画像展開を行う画像処理コントローラ部と、前記画像処理コントローラ部から転送された展開画像データの印刷を行うエンジン部とを備え、前記画像処理コントローラ部は、展開画像データを前記エンジン部が最大印刷速度で印刷できるように、受信データに対してエンジン性能とコントローラの性能に応じた展開レベルの中間データまでの画像展開を行った後、該展開画像データを前記エンジン部へデータ転送する。さらに、前記画像処理コントローラ部で画像展開された展開画像データを時間順で管理するジョブ管理部を有する。ジョブ管理部は、個々のジョブの印刷開始時間と印刷終了時間を、エンジン最大印刷速度情報、頁数、および、未だ印刷完了していないジョブ群の情報より計算しユーザーに通知する通知手段を有する。
【００１０】
【発明の実施の形態】
以下、添付の図面を参照して本発明の実施の形態を説明する。なお、図面において、同じ参照記号は同一または同等のものを示す。
本発明の実施の形態に係る画像形成装置は、プリンタ、ファックス、複写機などに対応する複数のコントローラでエンジン部を共有する構成の複合機である。ここで、各コントローラのエンジン部占有時間を最短にすることで、トータルでの生産性を上げる。このため、各コントローラは、一連の受信データに対して、画像展開を行った後、展開された頁群を常にエンジン部が最大印刷速度（枚／分）で印刷できる形でエンジン部へのデータ転送を行う。このデータ転送制御は、ジョブの内容により一意に優先順位を切り替えるというものではなく、あくまでエンジン部という共有モジュールに着目し、それを最速（常にエンジン部の最大印刷速度）で動作させることにより、個々のコントローラではなく複合機のシステム全体での生産性を最大にするものである。
【００１１】
図１は、第１の実施の形態の複合機の構成を示す。この複合機は、複数のコントローラ、すなわち、接続されたコンピュータから印刷データを受信し印刷するプリンタコントローラ１０、電話回線からＦａｘデータを受信して印刷するＦａｘコントローラ１２、スキャナから読み取つたデータを印刷するコピアコントローラ１４を備える。複数のコントローラ１０、１２、１４はエンジン部を共用する。エンジン部は、画像形成を行うプリントエンジン１６と、コントローラからラスタ画像を受け取りプリントエンジン１６を制御して印刷を実行する制御部１８とからなる。
【００１２】
図２に示すように、各コントローラ部１０、１２、１４は、データ受信部２０、画像展開部２２、画像転送部２４、及び、画像データ格納用のメモリとして受信バッファ２６及び展開データ格納用メモリ２８を備える。データ受信部２０は受信データを受信バッファ２６に格納する。画像展開部２２は、受信バッファ16のデータを取り出し、中間データへ展開して、展開データ格納メモリ２８に格納する。画像転送部２４は、展開データ格納メモリ２８に格納された展開画像データをエンジン制御部１８ヘ転送する。データ受信部２０、画像展開部２２及び画像転送部２４はそれぞれ独立で動作を行っている。
【００１３】
図３は、データ受信部２０の制御のフローを示す。受信部２０では、コンピュータ、電話回線、スキャナなどの上位部から受信データを受け取ると（Ｓ１００）、受信バッファ２６に順次格納していく（Ｓ１０２）。
【００１４】
図４は、画像展開部２２の制御のフローを示す。画像展開部２２では、受信バッファ２６に格納される受信データをジョブごとに処理する。まず受信バッファ２６に格納されるデータがあると（Ｓ２００でＹＥＳ）、ジョブの先頭であれば（Ｓ２０２でＹＥＳ）、ジョブ／頁情報を初期化し（Ｓ２０４）、ジョブの終りであれば（Ｓ２０６でＹＥＳ）、ジョブフラグを０とし（Ｓ２０８）、新しい頁であれば（Ｓ２１０でＹＥＳ）、頁Ｃｏｕｎｔをインクリメントする（Ｓ２１２）。そして、受信バッファ２６に格納される受信データを中間データまで展開処理し（Ｓ２１６）、展開データ格納メモリに格納する（Ｓ２１８）。そして、ジョブデータの終了（Ｓ２２０でＹＥＳ）ごとにジョブデータに含まれるトータル頁数と格納アドレス先を管理し、ジョブ情報として保持するとともに、蓄積ジョブ用カウンタとしてジョブＣｏｕｎｔを加算する（Ｓ２２２）。
【００１５】
図５は、画像転送部２４の制御のフローを示す。画像転送部２４では、画像展開部２２により展開ジョブデータ蓄積毎に加算されるジョブＣｏｕｎｔが１以上になると（Ｓ３００でＹＥＳ）、エンジンの状態を定期的に確認し(Ｓ３０２、Ｓ３０４）、もしエンジンにエラーが発生していないならば、または、他のコントローラがエンジンを占有していなければ、画像展開部で作成されたジョブ情報をキューから得る（Ｓ３０６）。そして、画像データの読み込み（Ｓ３０８）、中間データ画像のラスタデータヘの展開（Ｓ３１０）及びエンジン制御部１８への転送（Ｓ３１２）をおこなう。これを頁毎にジョブの全頁の転送の終了（Ｓ３１４でＹＥＳ）まで繰り返し、この間はエンジン部を占有する。ジョブデータの全頁の転送が終了すると、エンジン部の占有を解除し、ジョブＣｏｕｎｔの減算を行う（Ｓ３１６）。
【００１６】
ここで画像展開部２２で行われる「中間データまでの展開処理」（図４、Ｓ２１６）とは、画像転送部２４が、エンジン制御部１８への画像転送（図５、Ｓ３１２）を、ラスタ（ビットマップ）展開処理（図５、Ｓ３１０）と並行で行っても、エンジン最大印刷速度（頁／分）を確保できるだけの転送速度を実現できるように事前展開してラスタ展開処理の負担を軽減するためのものである。これにより、一連の受信データ（ジョブデータ）に対して、画像展開を行った後、展開された頁群を常にエンジン部が最大印刷速度で印刷できる形でエンジン部へのデータ転送を行う。展開レベルはエンジン１６の最大印刷速度（頁／分）とコントローラ部の画像処理能力に依存して決まる。高性能なコントローラを使用する場合、画像転送部２４で行えるラスタ展開の能力が高いため、中間データまでへの展開処理は軽減でき、または圧縮した形で中間データを保持でき、メモリを節約できる。もちろん低性能なコントローラを使用する場合などでは、画像展開部２２での中間データまでの展開処理でラスタまで展開してしまい、画像転送部２４では新たな展開処理を行わず、エンジン部への画像転送に専念してもよい。
【００１７】
また、この実施形態では、ジョブの受信及び展開完了まで印刷を開始しないとしているが、当然のことながら十分なメモリを保持していないコントローラの場合は一度にジョブの全頁分メモリに格納できない場合が存在する。このような場合、既に格納された頁分を１つの分割したジョブと考えて一旦印刷した後、残りの頁を新たなジョブと同様に受信・展開し、印刷してもよい。すなわち、一連の受信データ（すなわち、画像処理コントローラ部が所持する記憶装置で一度に保有できるデータ量または頁数）に対して、画像展開を行った後、展開された頁群を常にエンジン部が最大印刷速度で印刷できる形でエンジン部へのデータ転送を行う。
【００１８】
また、実施形態１の画像転送部２４における、エンジンステータス確認などの画像転送（印刷開始）判断において、エンジンのステータス確認のみでなく、印刷ジョブの印刷条件が現在のエンジン構成で満たされているかどうかの確認も画像転送（印刷開始）判断に含めることも考えられる。たとえば、ジョブで用紙サイズ指定（Ａ４サイズ等）、特定給紙トレイ指定（たとえばトレイ２（図示しない））がされていて、現在のエンジン構成で指定サイズ（たとえばＡ４サイズ）がどのトレイにもセットされていない場合、または、指定給紙トレイ（トレイ２）にセットされていない場合には、たとえエンジンステータスがレディであっても即座に画像転送とエンジン占有を開始せず、ジョブの条件が満たされるエンジン構成になるまで待ちつづけても良い。これにより、予め印刷中にエラー停止となることが予測できるジョブの印刷動作を開始前に事前停止させることにより、他のコントローラまたは自身の次のジョブに無駄なウエイトを与えることなく、システムとして最大の印刷生産性を上げることができる。
【００１９】
このとき、何らかの通知手段により、ユーザーにエラー状況を伝え、エンジン構成を変更してもらうか、ジョブ条件を変更してもらうかのいずれかを促す機能を合わせて備えることが望ましい。また、画像転送部で複数のジョブ情報を管理できる構成にすることにより、印刷条件が整わないジョブを中断している間に、次に画像展開した印刷条件が整うジョブを先に画像転送開始させることもできる。
【００２０】
上述のような制御により、エンジン制御部１８に画像データを送信する各コントローラ部１０、１２、１４は、ジョブデータの受信後に、画像の展開処理を行い、ジョブの中の全ての頁がエンジン部の最大印刷速度で印刷できる準備ができた時点で初めてエンジン部の占有を開始し、画像転送処理を全頁の転送が終了するまで行いエンジン占有を解除するため、各コントローラ１０、１２、１４のエンジン占有時間を最短にすることができる。これにより、複数のコントローラが同時並行で処理をしている場合、一つのコントローラのエンジン占有により他方が無駄に待ちつづけることを防ぐことができる。こうして、システムとして最大の印刷生産性をあげることができる。
【００２１】
また、画像展開部２２及び画像転送部２４の処理の中で各コントローラに印刷の優先順位を付けたい場合や、高性能ＡＤＦ（自動原稿送り）付スキャナとの通信によりコピアコントローラ１４がエンジン部の最大印刷速度での画像転送をジョブ全頁の受信前に予め保証できる場合などもある。そこで、選択手段２９を設けて、コントローラ毎に、本実施形態のようなジョブの受信完了、全頁の画像展開完了までエンジン部ヘの画像転送処理を開始しない方法と、従来のようなジョブ受信後に１頁でも画像が展開できればエンジン部ヘの画像転送処理を開始しエンジン部を占有してしまう方法の何れかをユーザーが選択してもよい。予めエンジン最大速度での画像転送が保証されているコピアコントローラ１４の場合は、全頁受信まで待たず早期段階でエンジン部ヘデータ転送を開始したほうが、印刷完了までの時間が早くなる。
【００２２】
本発明の第２の実施形態の複合機について以下に説明する。
図６は、第２の実施形態の複合機の構成を示す図である。第１の実施形態の複合機（図１）と異なるのは、新たにジョブ管理部１５を設けたことである。ジョブ管理部１５は、第１の実施形態の複合機では各コントローラが受信ジョブ展開完了後に行なっていた、エンジンステータス確認とエンジンヘの画像転送開始判断を一括して受け持ち、全ジョブのスケジューリングを行う。
【００２３】
各コントローラ部１０、１２、１４は、図７に示すように、第１の実施形態の複合機（図２）と同様に、受信部２０、画像処理部２２及び画像転送部２４を有し、このうち受信部２０と画像展開部２２は第１の実施形態と同様の制御（図３、図４）をおこなう。ジョブ管理部１５は、画像転送部２４からジョブ情報の通知／登録を受け取り、像転送部２４に画像データ転送指示を送る。
【００２４】
図８は、画像転送部２４の制御のフローを示す。画像転送部２４は、画像展開部２２により展開ジョブデータ蓄積毎に加算されるジョブＣｏｕｎｔが１以上になると（Ｓ４００でＹＥＳ）、用紙サイズ、総頁数等のジョブ情報をジョブ管理部１５に通知する（Ｓ４０２）。これによりジョブ管理部１５側でジョブのキュー（待ち行列）への登録が行われ、登録に際しジョブ情報を特定するために付けられたジョブ番号、そのジョブを印刷開始するまでの現在からの予想待ち時間（印刷開始時間）、そのジョブを印刷完了するまでの現在からの予想待ち時間（印刷終了時間）が登録通知情報として送られる（Ｓ４０４）。画像転送部２４はこのジョブ番号をジョブ情報と合わせて保持する（Ｓ４０６）とともに、予想印刷開始時間および終了時間をユーザーに通知する（Ｓ４０８）。通知手段としてはジョブデータ送信先コンピュータまたはフロントパネルなどが考えられる。上記ジョブ情報のジョブ管理部１５への登録が完了した後、ジョブＣｏｕｎｔの減算を行う（Ｓ４１０）。
【００２５】
また既にジョブ管理部１５へ登録したジョブについては、ジョブの実際の印刷開始時に、ジョブ管理部１５からジョブ送信指示を受け取ると（Ｓ４１２でＹＥＳ）、指示とともに送られてきたジョブ番号からジョブ情報を特定し（Ｓ４１４）、ジョブ情報を元に、画像データの読み込み（Ｓ４１６）、中間データ画像のラスタデータヘの展開（Ｓ４１８）及びエンジン制御部１８への転送（Ｓ４２０）をおこなう。これを頁毎にジョブの全頁の転送の終了（Ｓ４２２でＹＥＳ）まで繰り返し、この間はエンジン部を占有する。ジョブデータの全転送が終了すると、ジョブ管理部１５にジョブ転送完了（ジョブ完了）を通知する（Ｓ４２４）。これによりエンジン部の占有が解除される。
【００２６】
図９は、ジョブ管理部１５の制御のフローを示す。ジョブ管理部１５は、任意のコントローラからジョブ情報の通知を受けると（Ｓ５００でＹＥＳ）、ジョブ待ちキューに送られてきたジョブ情報及び送信元コントローラを登録し、管理用に持つジョブ番号を加算し、それと合わせて管理する（Ｓ５０２）。ジョブ番号は、任意のコントローラからの登録ジョブ情報を一元管理するための情報であり、登録に際し１づつ加算するものとする。次に、ジョブ情報の中の指定用紙サイズ、総頁数及びその用紙を印刷したときのエンジン最大印刷速度から、そのジョブの印刷に要する時間（Ｔ１）を計算する（Ｓ５０４）。また、同様の方法で、既にジョブ待ちキューに登録されているジョブの印刷時間の総和を計算し、そこから現在印刷中ジョブ（ジョブ待ちキューの先頭ジョブ）の印刷開始から現在までの時間を減算することにより、登録ジョブの印刷終了までの待ち時間（Ｔ２）を計算する（Ｓ５０６）。これにより、ジョブ番号、印刷開始待ち時間（Ｔ２−Ｔ１）と、印刷終了待ち時間（Ｔ２）とを送信元コントローラに登録通知として送信する（Ｓ５０８）。そして、ステップＳ５００に戻る。
【００２７】
以降、ジョブ管理部１５は、現在任意のコントローラが画像データ転送中かどうかを示すジョブ転送中フラグを内部で管理する。ジョブ転送中フラグがセットされていなければ（Ｓ５１０でＮＯ）、ジョブ待ちキューにジョブがあれば（Ｓ５１８でＹＥＳ）、先頭ジョブの印刷を開始するため、ジョブ情報を元にコントローラにジョブ送信開始指示を通知し（Ｓ５２０）、ジョブ転送中フラグをセットする（Ｓ５２２）。また、ジョブ転送中であれば（Ｓ５１０でＹＥＳ）、コントローラからのジョブデータ転送完了通知を受け取ると（Ｓ５１２でＹＥＳ）、ジョブ待ちキューから先頭ジョブ情報の削除（Ｓ５１４）及びジョブ転送中フラグのリセットを行う（Ｓ５１６）。ジョブ転送中フラグのリセットの後、ジョブ待ちキューに別のジョブが存在する場合は（Ｓ５１８でＹＥＳ）、続けて次のジョブの送信指示を対応するコントローラに通知し（Ｓ５２０）、再度ジョブ転送中フラグをセットする（Ｓ５２２）。そして、ステップＳ５００に戻る。
【００２８】
これらの制御により、第１の実施形態と比較して、各コントローラ側のエンジン状態管理、画像転送開始判断の同期とりなどの作業を軽減するとともに、受信されたジョブの印刷開始時間及び終了予想時間をユーザーに対して通知できる。これにより、ユーザー側にシステム使い勝手を向上させることができる。
【００２９】
【発明の効果】
ジョブ受信中、画像展開中などに任意のコントローラが無駄にエンジン制御部を占有することによる他のコントローラの印刷処理のウェイトを発生させることをなくし、システムとして最大の印刷生産性を上げることができる。
予め印刷中にエラー停止となることが予測できるジョブの印刷動作を開始前に事前停止させることにより、他のコントローラまたは自身の次のジョブに無駄なウエイトを与えることなく、システムとして最大の印刷生産性を上げることができる。
予め受信したジョブに対して、現在の複合機の状態から、より正確な印刷開始時間、終了時間を計算し、ユーザーに通知することができる。
【図面の簡単な説明】
【図１】  第１の実施形態の複合機の構成を示す図
【図２】  コントローラのブロック図
【図３】  データ受信部の制御のフローチャート
【図４】  画像展開部の制御のフローチャート
【図５】  画像転送部の制御のフローチャート
【図６】  第２の実施形態の複合機の構成を示す図
【図７】  コントローラのブロック図
【図８】  画像転送部の制御のフローチャート
【図９】  ジョブ管理部の制御のフローチャート
【符号の説明】
１０、１２、１４  プリンタコントローラ、    １５  ジョブ管理部、    １６、１８  エンジン部、    ２０  データ受信部、    ２２  画像展開部、    ２４  画像転送部、    ２９  選択手段。
【図１】
0004048705.tif 000002
【図２】
0004048705.tif 000003
【図３】
0004048705.tif 000004
【図４】
0004048705.tif 000005
【図５】
0004048705.tif 000006
【図６】
0004048705.tif 000007
【図７】
0004048705.tif 000008
【図８】
0004048705.tif 000009
【図９】
0004048705.tif 000010