説明

印刷装置及びその制御方法

【課題】複数の排紙トレイを有する印刷装置において、複数の印刷要求の処理順序によらず、各印刷要求を連続した排紙トレイに排紙することができるようにする。
【解決手段】複数の排紙トレイを有し、前記複数の排紙トレイにおいて印刷済み用紙の有無を検知して、新たな印刷要求を受けて用紙に画像を印刷し、前記排紙トレイに印刷済みの用紙を排紙する印刷装置であって、印刷要求を受けた場合に、その印刷要求で必要とする排紙トレイ数を解析し、印刷済み用紙が無い排紙トレイが連続している排紙トレイ群を検索する。そして、前記解析された排紙トレイ数以上の排紙トレイを有する排紙トレイ群のうち、最も少ない排紙トレイ数の排紙トレイ群を選択する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、排紙トレイに印刷済みの用紙を排紙する印刷装置、印刷装置の制御方法及びプログラムに関する。
【背景技術】
【0002】
従来、複数の排紙トレイを有する印刷装置は、複数の印刷要求を連続で処理する場合、印刷済み用紙を取りやすくするため、印刷要求ごとに別々の排紙トレイに印刷済み用紙を排紙する。また、1つの印刷要求で複数の排紙トレイを必要とする場合、印刷装置は、印刷済み用紙を取りやすくするため、連続した排紙トレイに印刷済み用紙を排紙するものが知られている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2002−20030号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来の印刷装置は、新たな印刷要求を受けたとき、印刷済み用紙が無い排紙トレイ群のうち、最も多くの排紙トレイを有する排紙トレイ群を排紙先として、印刷済み用紙を排紙する。また、複数ある排紙トレイ群はそれぞれ排紙トレイ数が異なっている。そこで、必要とする排紙トレイ数が異なる印刷要求を連続して印刷する場合であって、必要とする排紙トレイ数が多い順に印刷要求を印刷した場合、可能な限り、各印刷要求により連続した排紙トレイに排紙される。逆に、必要とする排紙トレイ数が少ない順に印刷要求を印刷した場合、最も多くの排紙トレイを有する排紙トレイ群が、排紙トレイ数が少ない印刷要求により使用される。このため、必要とする排紙トレイ数が多い順に印刷要求を印刷した場合に比べ、より多くの排紙トレイを必要とする後続の印刷要求が、連続した排紙トレイに排紙できない。
【0005】
本発明は前述の問題点に鑑み、複数の排紙トレイを有する印刷装置において、複数の印刷要求の処理順序によらず、各印刷要求を連続した排紙トレイに排紙できるようにすることを目的としている。
【課題を解決するための手段】
【0006】
本発明の印刷装置は、複数の排紙トレイを有する印刷装置であって、前記複数の排紙トレイにおいて印刷済み用紙の有無を検知する検知手段と、新たな印刷要求を受けて用紙に画像を印刷し、前記排紙トレイに印刷済みの用紙を排紙する排紙手段と、前記新たな印刷要求を受けた場合に、前記新たな印刷要求で必要とする排紙トレイ数を解析する解析手段と、前記検知手段による検知の結果に基づいて、印刷済み用紙が無い排紙トレイが連続している排紙トレイ群を検索する検索手段と、前記解析手段により解析された排紙トレイ数以上の排紙トレイを有する排紙トレイ群のうち、最も少ない排紙トレイ数の排紙トレイ群を選択する選択手段とを有することを特徴とする。
【発明の効果】
【0007】
本発明によれば、複数の印刷要求を受けた場合に、各印刷要求を可能な限り連続した排紙トレイに排紙することが可能となり、ユーザの使い勝手を向上させることができる。
【図面の簡単な説明】
【0008】
【図1】実施形態に係る印刷装置を含むシステム全体の構成例を示図である。
【図2】印刷装置のコントローラ部の詳細な構成例を示すブロック図である。
【図3】コントローラ部による処理手順の一例を示すフローチャートである。
【図4】必要な排紙トレイ数を解析する手順の一例を示すフローチャートである。
【図5】排紙トレイ群を検索する処理手順の一例を示すフローチャートである。
【図6】排紙トレイ群を選択する処理手順の一例を示すフローチャートである。
【図7】印刷装置の排紙部の具体的な状態の一例を示す図である。
【発明を実施するための形態】
【0009】
以下、添付図面に従って本発明の実施形態について詳細に説明する。
図1は、本実施形態に係る印刷装置102を含むシステム全体の構成例を示図である。
図1において、情報処理装置101は、印刷装置102に接続されており、ユーザの操作に従い、印刷要求を生成する。印刷要求は、通常、印刷装置102で解釈可能なページ記述言語(PDL)と呼ばれる形式のデータで記述される。印刷装置102に最適なPDLを生成するためには、通常、プリンタドライバと呼ばれる専用ソフトウェアを情報処理装置101にインストールする。そして、ユーザにより、情報処理装置101が操作され、プリンタドライバを利用して印刷装置102に印刷要求を行う。
【0010】
印刷装置102は、コントローラ部1021、操作パネル部1022、印刷部1023、給紙部1024、及び排紙部1025を備えている。コントローラ部1021は、情報処理装置101に接続されており、印刷要求を受ける。操作パネル部1022は、コントローラ部1021から通知される情報に従い、印刷要求の経過や印刷装置102の状態を表示する。また、操作パネル部1022は、処理中の印刷要求の中断、中止、再開など、ユーザの操作を受け付け、コントローラ部1021に通知する。
【0011】
印刷部1023は、コントローラ部1021の指示に従い、印刷要求の画像を用紙に印刷する。給紙部1024は、コントローラ部1021の指示に従い、印刷部1023に用紙を供給する。排紙部1025は、印刷部1023から印刷済み用紙を受け取り、コントローラ部1021の指示に従い、指定の排紙トレイに搬送する。また、排紙部1025は、複数の排紙トレイを有しており、それぞれの排紙トレイはコントローラ部1021から識別可能である。また、各排紙トレイは、印刷済み用紙の有無を検知する手段を有しており、用紙の有無の状態は、コントローラ部1021から認識可能である。本実施形態では、説明の都合上、各排紙トレイに識別番号0から18を割り当てている。
【0012】
図2は、図1におけるコントローラ部1021の詳細な構成例を示すブロック図である。
図2において、CPU201は、印刷装置102の制御プログラムを実行する。RAM202は、印刷要求のデータを記憶する。また、RAM202は、制御プログラムが必要とする変数や配列を記憶する。ROM203は、印刷装置102の制御プログラムを記憶している。操作パネル制御部204は、操作パネル部1022を制御する。通信部205は、情報処理装置101と通信して、印刷要求のデータを受信する。給紙制御部206は、給紙部1024を制御する。印刷制御部207は、印刷部1023を制御する。排紙制御部208は、排紙部1025を制御する。
【0013】
図3は、図1におけるコントローラ部1021による処理手順の一例を示すフローチャートである。なお、図3は、ユーザにより情報処理装置101が操作されて印刷要求を行い、コントローラ部1021が印刷要求を受信したときの、コントローラ部1021の処理手順を示している。
情報処理装置101から印刷要求を受信すると処理を開始し、ステップS301において、コントローラ部1021は、印刷要求を解析し、必要とする排紙トレイ数を計算する。
【0014】
次に、ステップS302において、コントローラ部1021は、印刷済み用紙が無い排紙トレイ群を検索する。そして、ステップS303において、コントローラ部1021は、ステップS301及びステップS302の結果から、印刷済み用紙を排紙すべき排紙トレイ群を選択する。次に、ステップS304において、コントローラ部1021は、印刷要求の画像を用紙に印刷し、ステップS303で選択した排紙トレイ群に、印刷済み用紙を排紙する。
【0015】
図4は、図3のステップS301における、必要な排紙トレイ数を解析する詳細な処理手順の一例を示すフローチャートである。
まず、ステップS401において、コントローラ部1021は、印刷要求の全データをRAM202に格納する。そして、ステップS402において、コントローラ部1021は、印刷要求の全データを解析して、印刷枚数を計算する。印刷要求のデータには、画像データ、ページ設定(部数、レイアウト、拡大縮小)、仕上げ(片面、両面、余白)などの情報が含まれる。コントローラ部1021は、印刷要求の各種情報を解析し、排紙トレイに排紙する印刷枚数を計算する。次に、ステップ403において、コントローラ部1021は、排紙トレイの最大積載枚数を鑑みて、印刷要求で必要とする排紙トレイ数を計算する。
【0016】
図5は、図3のステップS302における、排紙トレイ群を検索する詳細な処理手順の一例を示すフローチャートである。
まず、ステップS501において、コントローラ部1021は、印刷済み用紙が無い排紙トレイの連続した数をカウントする変数Runに初期値0をセットする。そして、ステップS502において、コントローラ部1021は、印刷済み用紙が無い排紙トレイ群の数を記憶する変数GroupNumに初期値0をセットする。
【0017】
次に、ステップS503において、コントローラ部1021は、排紙トレイ群の情報(排紙トレイ識別番号、用紙が無い排紙トレイの連続数)を記憶する配列TrayGroupの全要素に初期値0をセットする。そして、ステップS504において、コントローラ部1021は、排紙トレイの排紙トレイ識別番号のインデックス変数Iに初期値0をセットする。
【0018】
次に、ステップS505において、コントローラ部1021は、インデックス変数Iが排紙トレイの総数より小さいかどうか判断する。この判断の結果、インデックス変数Iが排紙トレイの総数より小さい場合は、ステップS506へ進み、そうでない場合は、ステップS514へ進む。そして、ステップS506において、コントローラ部1021は、排紙トレイ識別番号であるインデックス変数Iの排紙トレイに印刷済み用紙があるかどうかを判断する。この判断の結果、排紙トレイに用紙がある場合は、ステップS510へ進み、そうでない場合は、ステップS507へ進む。そして、ステップS507において、コントローラ部1021は、変数Runに、Run+1の値をセットする。
【0019】
次に、ステップS508において、コントローラ部1021は、変数Runが1かどうか判断する。この判断の結果、変数Runが1の場合は、ステップS509へ進み、そうでない場合は、ステップS505へ戻る。そして、ステップS509において、コントローラ部1021は、配列TrayGroupのGroupNum番目の要素の排紙トレイ識別番号にインデックス変数Iをセットし、ステップS505へ戻る。
【0020】
一方、ステップS510においては、コントローラ部1021は、変数Runが0でないかどうか判断する。この判断の結果、変数Runが0でない場合は、ステップS511へ進み、そうでない場合は、ステップS505へ戻る。そして、ステップS511において、コントローラ部1021は、配列TrayGroupのGroupNum番目の要素の用紙が無い排紙トレイの連続数に変数Runをセットする。次に、ステップS512において、コントローラ部1021は、変数GroupNumに、GroupNum+1の値をセットする。そして、ステップS513において、コントローラ部1021は、変数Runに0をセットし、ステップS505へ戻る。
【0021】
一方、ステップS514においては、コントローラ部1021は、変数Runが0でないかどうか判断する。この判断の結果、変数Runが0でない場合は、ステップS515へ進み、そうでない場合、処理を終了する。そして、ステップS515において、コントローラ部1021は、配列TrayGroupのGroupNum番目の要素の用紙が無い排紙トレイの連続数に変数Runをセットする。そして、ステップS516において、コントローラ部1021は、変数GroupNumに、GroupNum+1の値をセットし、処理を終了する。
【0022】
図6は、図3のステップS303における、排紙トレイ群を選択する詳細な処理手順の一例を示すフローチャートである。
まず、ステップS601において、コントローラ部1021は、選択した排紙トレイ群の排紙トレイ識別番号を記憶する変数UsingTrayIdに初期値0をセットする。そして、ステップS602において、コントローラ部1021は、用紙が無い排紙トレイの連続数の最小値を記憶する変数Minに初期値として排紙トレイ総数をセットする。
【0023】
次に、ステップS603において、コントローラ部1021は、配列TrayGroupのインデックス変数Jに初期値0をセットする。そして、ステップS604において、コントローラ部1021は、インデックス変数Jが変数GroupNumより小さいかどうか判断する。この判断の結果、インデックス変数Jが変数GroupNumより小さい場合は、ステップS605へ進み、そうでない場合は、処理を終了する。
【0024】
次に、ステップS605において、コントローラ部1021は、配列TrayGroupのJ番目の要素の用紙が無い排紙トレイの連続数が、ステップS301で計算した必要排紙トレイ数以上かどうかを判断する。この判断の結果、配列TrayGroupのJ番目の要素の用紙が無い排紙トレイの連続数が、必要排紙トレイ数以上の場合は、ステップS606へ進み、そうでない場合は、ステップS604へ戻る。
【0025】
次に、ステップS606において、コントローラ部1021は、配列TrayGroupのJ番目の要素の用紙が無い排紙トレイの連続数が、変数Minより小さいかどうか判断する。この判断の結果、配列TrayGroupのJ番目の要素の用紙が無い排紙トレイの連続数が、変数Minより小さい場合は、ステップS607へ進み、そうでない場合は、ステップS604へ戻る。そして、ステップS607において、コントローラ部1021は、変数Minに、配列TrayGroupのJ番目の要素の用紙が無い排紙トレイの連続数をセットする。
【0026】
次に、ステップS608において、コントローラ部1021は、変数UsingTrayIdに、配列TrayGroupのJ番目の要素の排紙トレイ識別番号をセットし、ステップS604へ戻る。なお、変数GroupNumが0の場合や、ステップS605の判断が常にステップS604へ戻る場合は、変数UsingTrayIdが初期値0のままである。よって、コントローラ部1021は、排紙トレイ識別番号が0の排紙トレイを選択する。
【0027】
図7は、排紙トレイに印刷済み用紙がある状態で、印刷装置102が2つの印刷要求を連続して処理した場合の、排紙部1025の具体的な状態の一例を示す図である。
図7(A)には、排紙部1025は、排紙トレイ識別番号1から3、10から15の各排紙トレイに印刷済みの用紙がある状態を示している。この状態で、印刷装置102は、1つ目の印刷要求を受信する。そして、コントローラ部1021がステップS301において必要な排紙トレイ数を解析した結果、必要な排紙トレイ数が2であるとする。次に、コントローラ部1021が、ステップS302において排紙トレイ群を検索すると、配列TrayGroupは次のようになる。TrayGroup[0].排紙トレイ識別番号は0、TrayGroup[0].連続数は1。TrayGroup[1].排紙トレイ識別番号は4。TrayGroup[1].連続数は6。TrayGroup[2].排紙トレイ識別番号は16。TrayGroup[2].連続数が3。また、変数GroupNumは3となる。
【0028】
次に、コントローラ部1021が、ステップS303において排紙トレイ群を選択すると、変数UsingTrayIdは16となる。次に、コントローラ部1021は、ステップS304において印刷処理を行うと、1つ目の印刷要求では、排紙部1025の排紙トレイ識別番号16、17の排紙トレイに排紙され、排紙部1025は図7(B)に示す状態となる。
【0029】
さらに、図7(B)に示す状態で、印刷装置102は、2つ目の印刷要求を受信する。そして、コントローラ部1021がステップS301において必要な排紙トレイ数を解析した結果、必要な排紙トレイ数が5であるとする。次に、コントローラ部1021が、ステップS302において排紙トレイ群を検索すると、配列TrayGroupは次のようになる。TrayGroup[0].排紙トレイ識別番号は0。TrayGroup[0].連続数は1。TrayGroup[1].排紙トレイ識別番号は4、TrayGroup[1].連続数は6、TrayGroup[2].排紙トレイ識別番号は18、TrayGroup[2].連続数が1。また、変数GroupNumは3となる。
【0030】
次に、コントローラ部1021が、ステップS303において排紙トレイ群を選択すると、変数UsingTrayIdは4となる。次に、コントローラ部1021は、ステップS304において印刷処理を行うと、2つ目の印刷要求は、排紙部1025の排紙トレイ識別番号4から8の排紙トレイに排紙され、排紙部1025は図7(C)に示す状態となる。
【0031】
以上のように本実施形態によれば、複数の印刷要求を受けた場合に、各印刷要求を可能な限り連続した排紙トレイに排紙することが可能となり、ユーザの使い勝手を向上させることができる。
【0032】
(その他の実施形態)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
【符号の説明】
【0033】
1021 コントローラ部、1023 印刷部、1025 排紙部

【特許請求の範囲】
【請求項1】
複数の排紙トレイを有する印刷装置であって、
前記複数の排紙トレイにおいて印刷済み用紙の有無を検知する検知手段と、
新たな印刷要求を受けて用紙に画像を印刷し、前記排紙トレイに印刷済みの用紙を排紙する排紙手段と、
前記新たな印刷要求を受けた場合に、前記新たな印刷要求で必要とする排紙トレイ数を解析する解析手段と、
前記検知手段による検知の結果に基づいて、印刷済み用紙が無い排紙トレイが連続している排紙トレイ群を検索する検索手段と、
前記解析手段により解析された排紙トレイ数以上の排紙トレイを有する排紙トレイ群のうち、最も少ない排紙トレイ数の排紙トレイ群を選択する選択手段とを有することを特徴とする印刷装置。
【請求項2】
複数の排紙トレイを有する印刷装置の制御方法であって、
前記複数の排紙トレイにおいて印刷済み用紙の有無を検知する検知ステップと、
新たな印刷要求を受けて用紙に画像を印刷し、前記排紙トレイに印刷済みの用紙を排紙する排紙ステップと、
前記新たな印刷要求を受けた場合に、前記新たな印刷要求で必要とする排紙トレイ数を解析する解析ステップと、
前記検知ステップにおける検知の結果に基づいて、印刷済み用紙が無い排紙トレイが連続している排紙トレイ群を検索する検索ステップと、
前記解析ステップにおいて解析された排紙トレイ数以上の排紙トレイを有する排紙トレイ群のうち、最も少ない排紙トレイ数の排紙トレイ群を選択する選択ステップとを有することを特徴とする印刷装置の制御方法。
【請求項3】
請求項2記載の印刷装置の制御方法の各ステップをコンピュータに実行させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate