(57)【要約】      （修正有）【課題】印刷装置のスタックフルに関する通知を，好適な通知先に行うことが期待できる技術を提供する。【解決手段】プリンタ１００は，印刷ジョブを受信し，受信した印刷ジョブに基づく印刷を画像形成部１０に実行させる。プリンタ１００は，印刷ジョブごとに，送信元情報と出力枚数とを関連付けて，印刷リストに記憶する。プリンタ１００は，トレイ２１〜２４がスタックフルになったと判断した場合，印刷リストから印刷ジョブの送信元情報を読み出し，スタックフルに関する通知を送信元の装置に通知する。さらに，プリンタ１００は，高さセンサ２６〜２９を備え，トレイ２１〜２４に収容されている枚数の増減を検知する。そして，プリンタ１００は，枚数の減少を検知した場合，減少枚数と出力枚数とが一致する印刷ジョブの送信元情報を，印刷リストから除外する。【選択図】図１
2016159604.tif 000002
【特許請求の範囲】
【請求項１】
外部装置と通信を行う通信部と，
シートに画像を印刷する印刷部と，
前記印刷部にて画像が印刷されたシートを収容する排紙トレイと，
前記排紙トレイに収容されているシートの枚数を表す信号を出力する枚数センサと，
記憶部と，
制御部と，
を備え，
前記制御部は，
前記印刷部に画像を印刷させるジョブである印刷ジョブを，前記通信部を介して受信する受信処理と，
前記印刷ジョブの送信元を特定する情報である送信元情報を取得する送信元取得処理と，
前記印刷ジョブに基づいて，前記印刷部に画像を印刷させる印刷処理と，
前記印刷ジョブの前記排紙トレイへのシートの出力枚数を取得するシート数取得処理と，
前記印刷ジョブごとに，前記送信元情報と前記出力枚数とを関連付けて，前記記憶部に記憶させる記憶処理と，
前記排紙トレイが，印刷物の積載高さが基準値を超えた状態であるスタックフルになったか否かを判断する判断処理と，
前記判断処理にてスタックフルになったと判断された場合，前記記憶部に記憶されている前記印刷ジョブごとの前記送信元情報を読み出し，読み出された前記送信元情報に対応する外部装置に，スタックフルに関する通知を，前記通信部を介して送信する通知処理と，
前記枚数センサからの信号に基づいて，前記排紙トレイに収容されるシートの枚数の増減を検知する検知処理と，
前記検知処理にてシートの枚数の減少を検知した場合，前記記憶部に記憶されている前記印刷ジョブごとの前記出力枚数を読み出し，シートの減少枚数と前記出力枚数が一致する前記印刷ジョブの前記送信元情報を，前記通知処理での通知に用いる前記送信元情報から除外する除外処理と，
を実行することを特徴とする印刷装置。
【請求項２】
請求項１に記載する印刷装置において，
前記排紙トレイを複数備え，
前記制御部は，
前記印刷ジョブにおける印刷物の出力先となる排紙トレイを示す情報である出力先情報を取得する出力先取得処理を実行し，
前記記憶処理では，前記印刷ジョブごとに，前記出力先情報を，前記送信元情報および前記出力枚数に関連付けて，前記記憶部に記憶させ，
前記排紙トレイごとに，前記判断処理，前記通知処理，前記検知処理，および前記除外処理を実行することを特徴とする印刷装置。
【請求項３】
請求項１または請求項２に記載する印刷装置において，
前記制御部は，
前記検知処理にてシートの枚数の減少を検知した場合，前記記憶部に記憶されている前記印刷ジョブごとの前記出力枚数を読み出し，前記送信元情報によって特定される送信元ごとの合計の出力枚数を算出し，シートの減少枚数と，合計の出力枚数が一致する送信元に対応する全ての印刷ジョブの前記送信元情報を，前記通知処理での通知に用いる前記送信元情報から除外する第２除外処理，
を実行することを特徴とする印刷装置。
【請求項４】
請求項１から請求項３のいずれか１つに記載する印刷装置において，
前記制御部は，
前記検知処理にてシートの枚数の減少を検知した場合であって，前記排紙トレイに収容されるシートの枚数が０枚となった場合に，前記記憶部に記憶されている全ての印刷ジョブの前記送信元情報を，前記通知処理での通知に用いる前記送信元情報から除外する第３除外処理，
を実行することを特徴とする印刷装置。
【請求項５】
請求項１から請求項４のいずれか１つに記載する印刷装置において，
前記制御部は，
前記除外処理では，除外対象となった前記送信元情報を，前記記憶部から削除することを特徴とする印刷装置。
【請求項６】
請求項１から請求項４のいずれか１つに記載する印刷装置において，
前記制御部は，
前記除外処理では，除外対象である旨の情報である除外情報を，除外対象となった前記送信元情報に関連付けて前記記憶部に記憶させ，
前記通知処理では，前記除外情報が関連付けられていない前記送信元情報に対応する外部装置に，前記通知を送信することを特徴とする印刷装置。
【請求項７】
請求項６に記載する印刷装置において，
前記制御部は，
前記検知処理にてシートの枚数の増加を検知した場合であって，当該増加が前記印刷処理でのシートの印刷によるものではない場合，
前記記憶部に記憶される前記印刷ジョブのうち，前記除外情報が記憶されかつ前記出力枚数がシートの増加枚数よりも多い前記印刷ジョブを抽出する抽出処理と，
前記抽出処理にて抽出された前記印刷ジョブである抽出ジョブの前記出力枚数と，シートの増加枚数と，の差分から，想定されるシートの減少枚数を算出する算出処理と，
前記抽出ジョブの前記除外情報を，前記記憶部から削除する削除処理と，
を実行し，
前記算出処理にて算出された減少枚数をシートの減少枚数として，前記除外処理を実行し，当該除外処理にて除外対象となる印刷ジョブが無かった場合に，前記抽出ジョブの前記除外情報を再度前記記憶部に記憶させることを特徴とする印刷装置。
【請求項８】
外部装置と通信を行う通信部と，
シートに画像を印刷する印刷部と，
前記印刷部にて画像が印刷されたシートを収容する排紙トレイと，
前記排紙トレイに収容されているシートの有無に応じて異なる信号を出力するシートセンサと，
記憶部と，
制御部と，
を備え，
前記制御部は，
前記印刷部に画像を印刷させるジョブである印刷ジョブを，前記通信部を介して受信する受信処理と，
前記印刷ジョブの送信元を特定する情報である送信元情報を取得する送信元取得処理と，
前記印刷ジョブに基づいて，前記印刷部に画像を印刷させる印刷処理と，
前記印刷ジョブごとに，前記送信元情報を，前記記憶部に記憶させる記憶処理と，
前記排紙トレイが，印刷物の積載高さが基準値を超えた状態であるスタックフルになったか否かを判断する判断処理と，
前記判断処理にてスタックフルになったと判断された場合，前記記憶部に記憶されている前記印刷ジョブごとの前記送信元情報を読み出し，読み出された前記送信元情報に対応する外部装置に，スタックフルに関する通知を，前記通信部を介して送信する通知処理と，
前記シートセンサからの信号が，シートの有を示す信号からシートの無を示す信号に変化した場合，前記記憶部に記憶されている全ての前記送信元情報を，前記通知処理での通知に用いる前記送信元情報から除外する全除外処理と，
を実行することを特徴とする印刷装置。
【請求項９】
印刷装置の通知方法であって，
前記印刷装置の印刷部に画像を印刷させるジョブである印刷ジョブを受信する受信ステップと，
前記印刷ジョブの送信元を特定する情報である送信元情報を取得する送信元取得ステップと，
前記印刷ジョブに基づいて，前記印刷部に画像を印刷させる印刷ステップと，
前記印刷ジョブの，前記印刷ステップにて画像が印刷されたシートを収容する排紙トレイへの，シートの出力枚数を取得するシート数取得ステップと，
前記印刷ジョブごとに，前記送信元情報と前記出力枚数とを関連付けて，前記印刷装置の記憶部に記憶させる記憶ステップと，
前記排紙トレイが，印刷物の積載高さが基準値を超えた状態であるスタックフルになったか否かを判断する判断ステップと，
前記判断ステップにてスタックフルになったと判断された場合，前記記憶部に記憶されている前記印刷ジョブごとの前記送信元情報を読み出し，読み出された前記送信元情報に対応する外部装置に，スタックフルに関する通知を送信する通知ステップと，
前記排紙トレイに収容されているシートの枚数を表す信号を出力する枚数センサからの信号に基づいて，前記排紙トレイに収容されるシートの枚数の増減を検知する検知ステップと，
前記検知ステップにてシートの枚数の減少を検知した場合，前記記憶部に記憶されている前記印刷ジョブごとの前記出力枚数を読み出し，シートの減少枚数と前記出力枚数が一致する前記印刷ジョブの前記送信元情報を，前記通知ステップでの通知に用いる前記送信元情報から除外する除外ステップと，
を含むことを特徴とする印刷装置の通知方法。
【請求項１０】
印刷装置の通知方法であって，
前記印刷装置の印刷部に画像を印刷させるジョブである印刷ジョブを受信する受信ステップと，
前記印刷ジョブの送信元を特定する情報である送信元情報を取得する送信元取得ステップと，
前記印刷ジョブに基づいて，前記印刷部に画像を印刷させる印刷ステップと，
前記印刷ジョブごとに，前記送信元情報を，前記印刷装置の記憶部に記憶させる記憶ステップと，
前記印刷ステップにて画像が印刷されたシートを収容する排紙トレイが，印刷物の積載高さが基準値を超えた状態であるスタックフルになったか否かを判断する判断ステップと，
前記判断ステップにてスタックフルになったと判断された場合，前記記憶部に記憶されている前記印刷ジョブごとの前記送信元情報を読み出し，読み出された前記送信元情報に対応する外部装置に，スタックフルに関する通知を送信する通知ステップと，
前記排紙トレイに収容されているシートの有無に応じて異なる信号を出力するシートセンサからの信号が，シートの有を示す信号からシートの無を示す信号に変化した場合，前記記憶部に記憶されている全ての前記送信元情報を，前記通知処理での通知に用いる前記送信元情報から除外する全除外ステップと，
を含むことを特徴とする印刷装置の通知方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，印刷装置および印刷装置の通知方法に関する。さらに詳細には，印刷物を収容する排紙トレイのスタックフルを検知した際における通知に関するものである。
【背景技術】
【０００２】
従来から，シートに画像を印刷する印刷装置において，印刷後のシートである印刷物を収容する排紙トレイが，印刷物の積載高さが基準高さを超えた状態であるスタックフルとなったことを検知した際に，ユーザに対して，印刷物を取り除くように促すメッセージの通知等の，スタックフルに関する通知を行う技術が知られている。
【０００３】
印刷装置の通知に関する技術としては，例えば，特許文献１がある。特許文献１では，複数の排紙トレイを備え，複数のＰＣと接続するプリンタであって，排紙トレイごとに，印刷を行ったユーザを記憶し，シートが所定時間を越えて排紙トレイに放置された場合に，シートが放置された状態が所定時間を越えた旨のメッセージの通知を，記憶されているユーザに行う構成が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１１−１４７６６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら，前記した従来の技術には，次のような問題があった。すなわち，１つの排紙トレイを複数のユーザが共用し，当該排紙トレイに複数のユーザが印刷物を出力することがある。そのため，例えば，あるユーザが印刷物を持ち去った後，別のユーザの印刷物によってスタックフルとなることもあり得る。この場合，印刷を行った全てのユーザに対して通知を行うと，すでに印刷物を持ち去ったユーザに対しても通知を行ってしまうため，当該ユーザに不必要な不安を与えてしまう可能性がある。
【０００６】
本発明は，前記した従来の技術が有する問題点を解決するためになされたものである。すなわちその課題とするところは，印刷装置のスタックフルに関する通知を，好適な通知先に行うことが期待できる技術を提供することにある。
【課題を解決するための手段】
【０００７】
この課題の解決を目的としてなされた印刷装置は，外部装置と通信を行う通信部と，シートに画像を印刷する印刷部と，前記印刷部にて画像が印刷されたシートを収容する排紙トレイと，前記排紙トレイに収容されているシートの枚数を表す信号を出力する枚数センサと，記憶部と，制御部と，を備え，前記制御部は，前記印刷部に画像を印刷させるジョブである印刷ジョブを，前記通信部を介して受信する受信処理と，前記印刷ジョブの送信元を特定する情報である送信元情報を取得する送信元取得処理と，前記印刷ジョブに基づいて，前記印刷部に画像を印刷させる印刷処理と，前記印刷ジョブの前記排紙トレイへのシートの出力枚数を取得するシート数取得処理と，前記印刷ジョブごとに，前記送信元情報と前記出力枚数とを関連付けて，前記記憶部に記憶させる記憶処理と，前記排紙トレイが，印刷物の積載高さが基準値を超えた状態であるスタックフルになったか否かを判断する判断処理と，前記判断処理にてスタックフルになったと判断された場合，前記記憶部に記憶されている前記印刷ジョブごとの前記送信元情報を読み出し，読み出された前記送信元情報に対応する外部装置に，スタックフルに関する通知を，前記通信部を介して送信する通知処理と，前記枚数センサからの信号に基づいて，前記排紙トレイに収容されるシートの枚数の増減を検知する検知処理と，前記検知処理にてシートの枚数の減少を検知した場合，前記記憶部に記憶されている前記印刷ジョブごとの前記出力枚数を読み出し，シートの減少枚数と前記出力枚数が一致する前記印刷ジョブの前記送信元情報を，前記通知処理での通知に用いる前記送信元情報から除外する除外処理と，を実行することを特徴としている。
【０００８】
本明細書に開示される印刷装置は，印刷ジョブを受信し，受信した印刷ジョブに基づいて，印刷部に画像を印刷させる。また，印刷装置は，印刷ジョブごとに，そのジョブの送信元情報と出力枚数とを関連付けて記憶する。そして，排紙トレイがスタックフルとなったと判断した場合，印刷装置は，記憶されている送信元情報に対応する外部装置に，スタックフルを通知する。さらに，印刷装置は，枚数センサを備え，排紙トレイに収容されているシートの枚数の増減を検知する。そして，印刷装置は，枚数の減少を検知した場合，減少枚数と出力枚数が一致する印刷ジョブの送信元情報を，通知に用いる送信元情報から除外する。
【０００９】
すなわち，本明細書に開示される印刷装置は，シートが排紙トレイから取り出されて収容されているシートの枚数が減った場合，減った枚数と同じ枚数だけシートを出力した印刷ジョブについては，当該印刷ジョブの印刷物が持ち去られたと推測されることから，スタックフル時の通知先から除外する。これにより，スタックフル時には，当該印刷ジョブの送信元にはスタックフルに関する通知が行われない。従って，印刷物を持ち去ったと推測されるユーザに不必要な不安を与える可能性は低く，好適な通知が期待できる。
【００１０】
また，本明細書に開示される印刷装置は，前記排紙トレイを複数備え，前記制御部は，前記印刷ジョブにおける印刷物の出力先となる排紙トレイを示す情報である出力先情報を取得する出力先取得処理を実行し，前記記憶処理では，前記印刷ジョブごとに，前記出力先情報を，前記送信元情報および前記出力枚数に関連付けて，前記記憶部に記憶させ，前記排紙トレイごとに，前記判断処理，前記通知処理，前記検知処理，および前記除外処理を実行するとよい。複数の排紙トレイを備える構成では，出力先の排紙トレイごとに印刷物を出力した送信元を記憶し，排紙トレイごとにスタックフル時の通知先を決定する方が，出力先を区別せずに通知先を決定する場合と比較して，通知先を選別する上で好ましい。
【００１１】
また，前記制御部は，前記検知処理にてシートの枚数の減少を検知した場合，前記記憶部に記憶されている前記印刷ジョブごとの前記出力枚数を読み出し，前記送信元情報によって特定される送信元ごとの合計の出力枚数を算出し，シートの減少枚数と，合計の出力枚数が一致する送信元に対応する全ての印刷ジョブの前記送信元情報を，前記通知処理での通知に用いる前記送信元情報から除外する第２除外処理，を実行するとよい。一人のユーザが複数の印刷ジョブの印刷物を纏めて持ち去ることもある。そのため，送信元ごとの合計の出力枚数を算出し，シートの減少枚数が合計の出力枚数と一致する場合には，その送信元の印刷物が纏めて持ち去られたと推測されることから，その送信元をスタックフル時の通知先から除外する方が好ましい。
【００１２】
また，前記制御部は，前記検知処理にてシートの枚数の減少を検知した場合であって，前記排紙トレイに収容されるシートの枚数が０枚となった場合に，前記記憶部に記憶されている全ての印刷ジョブの前記送信元情報を，前記通知処理での通知に用いる前記送信元情報から除外する第３除外処理，を実行するとよい。排紙トレイから全てのシートが取り出された場合，これまで出力した印刷ジョブについては，全て印刷物が持ち去られたと推測されることから，スタックフル時の通知先から除外する方が好ましい。
【００１３】
また，前記制御部は，前記除外処理では，除外対象となった前記送信元情報を，前記記憶部から削除するとよい。通知対象から除外された送信元情報を記憶部から削除することで，送信元情報の蓄積による記憶部の負荷を軽減できる。
【００１４】
また，前記制御部は，前記除外処理では，除外対象である旨の情報である除外情報を，除外対象となった前記送信元情報に関連付けて前記記憶部に記憶させ，前記通知処理では，前記除外情報が関連付けられていない前記送信元情報に対応する外部装置に，前記通知を送信するとよい。除外情報を送信元情報に関連付けて記憶し，通知対象から除外された送信元情報を記憶部に残すことで，送信元情報を印刷の履歴等として用いることができる。
【００１５】
また，前記制御部は，前記検知処理にてシートの枚数の増加を検知した場合であって，当該増加が前記印刷処理でのシートの印刷によるものではない場合，前記記憶部に記憶される前記印刷ジョブのうち，前記除外情報が記憶されかつ前記出力枚数がシートの増加枚数よりも多い前記印刷ジョブを抽出する抽出処理と，前記抽出処理にて抽出された前記印刷ジョブである抽出ジョブの前記出力枚数と，シートの増加枚数と，の差分から，想定されるシートの減少枚数を算出する算出処理と，前記抽出ジョブの前記除外情報を，前記記憶部から削除する削除処理と，を実行し，前記算出処理にて算出された減少枚数をシートの減少枚数として，前記除外処理を実行し，当該除外処理にて除外対象となる印刷ジョブが無かった場合に，前記抽出ジョブの前記除外情報を再度前記記憶部に記憶させるとよい。ユーザが排紙トレイから印刷物を持ち去る際，必要以上に持ち去り，他のユーザの印刷物を排紙トレイに戻す可能性がある。この場合，排紙トレイ上のシートの枚数が一旦減少し，その後に増加するが，始めの減少の際に排紙トレイに残ったままの印刷ジョブに対して誤って除外情報が記憶される可能性がある。そこで，増加を検知した場合には，誤って除外情報が記憶された可能性がある印刷ジョブの除外情報を一旦削除し，この増減によって最終的にユーザが持ち去ったシートの枚数を想定し，その想定枚数に基づいて改めて除外対象を決定することで，より好適な通知が期待できる。
【００１６】
また，本明細書に開示される印刷装置は，外部装置と通信を行う通信部と，シートに画像を印刷する印刷部と，前記印刷部にて画像が印刷されたシートを収容する排紙トレイと，前記排紙トレイに収容されているシートの有無に応じて異なる信号を出力するシートセンサと，記憶部と，制御部と，を備え，前記制御部は，前記印刷部に画像を印刷させるジョブである印刷ジョブを，前記通信部を介して受信する受信処理と，前記印刷ジョブの送信元を特定する情報である送信元情報を取得する送信元取得処理と，前記印刷ジョブに基づいて，前記印刷部に画像を印刷させる印刷処理と，前記印刷ジョブごとに，前記送信元情報を，前記記憶部に記憶させる記憶処理と，前記排紙トレイが，印刷物の積載高さが基準値を超えた状態であるスタックフルになったか否かを判断する判断処理と，前記判断処理にてスタックフルになったと判断された場合，前記記憶部に記憶されている前記印刷ジョブごとの前記送信元情報を読み出し，読み出された前記送信元情報に対応する外部装置に，スタックフルに関する通知を，前記通信部を介して送信する通知処理と，前記シートセンサからの信号が，シートの有を示す信号からシートの無を示す信号に変化した場合，前記記憶部に記憶されている全ての前記送信元情報を，前記通知処理での通知に用いる前記送信元情報から除外する全除外処理と，を実行する印刷装置であってもよい。印刷装置は，印刷ジョブごとに送信元情報を記憶する。さらに，印刷装置は，シートセンサを備え，排紙トレイのシートが無くなった場合，これまで出力した印刷ジョブについては，全て印刷物が持ち去られたと推測されることから，スタックフル時の通知先から除外する。これにより，シートが無くなった後の印刷によってスタックフルになった際には，シートが無くなる前に出力された印刷ジョブの送信元にはスタックフルに関する通知が行われない。従って，シートが無くなる前の印刷ジョブのユーザに不必要な不安を与える可能性は低く，好適な通知が期待できる。
【００１７】
上記印刷装置の機能を実現するための印刷装置の通知方法，コンピュータプログラム，および当該コンピュータプログラムを格納するコンピュータ読取可能な記憶媒体も，新規で有用である。
【発明の効果】
【００１８】
本発明によれば，印刷装置のスタックフルに関する通知を，好適な通知先に行うことが期待できる技術が実現される。
【図面の簡単な説明】
【００１９】
【図１】第１の形態にかかるプリンタの概略構成を示す断面図である。
【図２】高さセンサの例を示す説明図である。
【図３】第１の形態のプリンタの電気的構成を示すブロック図である。
【図４】印刷リストの例を示す説明図である。
【図５】開始処理の手順を示すフローチャートである。
【図６】第１の形態の印刷処理の手順を示すフローチャートである。
【図７】第１の形態の印刷リスト更新処理の手順を示すフローチャートである。
【図８】減少処理の手順を示すフローチャートである。
【図９】増加処理の手順を示すフローチャートである。
【図１０】印刷リストの変化を示す説明図である。
【図１１】第２の形態のプリンタの電気的構成を示すブロック図である。
【図１２】スタックフルセンサの例を示す説明図である。
【図１３】印刷リストの例を示す説明図である。
【図１４】第２の形態の印刷処理の手順を示すフローチャートである。
【図１５】第２の形態の印刷リスト更新処理の手順を示すフローチャートである。
【発明を実施するための形態】
【００２０】
以下，本発明にかかる印刷装置を具体化した第１の形態について，添付図面を参照しつつ詳細に説明する。本形態は，複数の排紙トレイを備え，各排紙トレイに収容されているシートの枚数を取得できる構成を備えたプリンタに本発明を適用したものである。
【００２１】
本形態のプリンタ１００は，図１に示すように，シートに画像を印刷する画像形成部１０と，印刷前のシートを画像形成部１０に給紙する給紙部１１と，印刷済みのシートを収容する排紙シート収容部１２とを備えている。さらに，プリンタ１００内には，給紙部１１から画像形成部１０を経由して排紙シート収容部１２へと至るシートの経路であるシート搬送路１３が形成されている。図１中でのプリンタ１００によるシートの搬送方向は，概略，下から上向きである。
【００２２】
画像形成部１０は，電子写真方式により，シート搬送路１３を通って搬送されるシートに画像を形成する。画像形成部１０は，図１に示すように，感光体５１，帯電部５２，露光部５３，現像部５４，転写部５５，定着部５６を有している。画像形成部１０は，印刷部の一例である。
【００２３】
画像形成時には，プリンタ１００は，感光体５１を，帯電部５２によって帯電し，露光部５３によって露光する。これにより，感光体５１の表面上に印刷データに基づいた静電潜像が形成される。次に，プリンタ１００は，現像部５４によって静電潜像にトナーを供給し，感光体５１上にトナー像を形成する。さらに，プリンタ１００は，感光体５１と転写部５５との間を搬送されるシートに対して，転写部５５によって，感光体５１からトナー像を転写する。その後，プリンタ１００は，シートに載ったトナー像を，定着部５６によってシートに定着する。
【００２４】
給紙部１１は，図１に示すように，給紙トレイ１１１と分離部１１２とを備える。給紙部１１は，給紙トレイ１１１上に収容されているシートを分離部１１２にて１枚ずつに分離し，シート搬送路１３へ送出する。なお，図１に示したプリンタ１００は，１組の給紙トレイ１１１と分離部１１２とを備えているが，複数組を備えているプリンタであってもよい。
【００２５】
排紙シート収容部１２は，図１に示すように，本体トレイ２４とその上方に設けられた３段の排紙トレイ，すなわち，下から順に排紙トレイ２１と，排紙トレイ２２と，排紙トレイ２３とを備える。排紙シート収容部１２は，画像形成部１０にて印刷済みのシートを収容する。本体トレイ２４は，画像形成部１０の筐体の上側の外面に形成されている。排紙トレイ２１，２２，２３，および本体トレイ２４は，排紙トレイの一例である。つまり，プリンタ１００は，印刷済みのシートである印刷物の出力先を，計４箇所備えている。そして，プリンタ１００は，印刷ジョブにて指定された出力先へ，印刷物を出力する。なお，以下では，特に区別の必要のない場合には，排紙トレイ２１，２２，２３，および本体トレイ２４をまとめて，トレイ２１〜２４とする。
【００２６】
プリンタ１００は，出力先のトレイ２１〜２４ごとに，シートの積載高さを測る高さセンサ２６〜２９を備えている。高さセンサ２７は，例えば，図２に示すように，収容されているシートの最上面に接触するアーム２７１と，アームの回転角を測定する可変抵抗器２７２とを備える。そして，高さセンサ２７は，可変抵抗器２７２の抵抗値に応じた信号を出力する。プリンタ１００は，高さセンサ２７の出力信号に基づいて，アーム２７１の回転位置を取得する。なお，高さセンサ２６，２８，２９は，いずれも，高さセンサ２７と同様の構成である。
【００２７】
そして，例えば，高さセンサ２７のアーム２７１は，図１に示すように，排紙トレイ２１に収容されているシートの上面にて押し上げられる。つまり，アーム２７１の回転位置は，収容されているシート束の高さによって異なる。そして，高さセンサ２７の取り付け位置，アーム２７１の長さ等に基づいて，プリンタ１００は，アーム２７１の回転位置からアーム２７１の先端の高さ，つまり，排紙トレイ２１に収容されているシートの上面の高さを取得できる。
【００２８】
さらに，プリンタ１００は，実行した印刷ジョブの前後における高さセンサ２６〜２９の出力信号を利用して，トレイ２１〜２４に収容されているシートの枚数を取得する。例えば，プリンタ１００は，実行した印刷ジョブにて出力したシートの枚数と，印刷ジョブの開始前と終了後とにおける高さセンサ２６〜２９の出力信号の差とから，シート１枚あたりの高さセンサ２６〜２９の出力信号の変化量，つまり，印刷されたシート１枚あたりの厚さを取得する。そして，プリンタ１００は，高さセンサ２６〜２９の出力信号と，１枚あたりの厚さとに基づいて，トレイ２１〜２４に収容されているシートの枚数を取得できる。
【００２９】
つまり，高さセンサ２６〜２９は，該当するトレイ２１〜２４に収容されているシートの枚数を表す信号を出力すると見なすことができる。高さセンサ２６〜２９は，枚数センサの一例である。なお，プリンタ１００は，高さセンサ２６〜２９の出力信号と，その出力信号に対応するシートの枚数との関係を取得してもよい。
【００３０】
プリンタ１００のトレイ２１〜２４には，適切に収容できる最大の積載高さである基準値が設定されている。トレイ２１〜２４の基準値は，それぞれ，トレイの底面とシートの排出口との間の空間の大きさ，トレイ自体の耐荷重等に基づいて予め決定されている。そして，トレイ２１〜２４への積載高さが基準値を超えた状態でさらにシートを排出すると，排出済みシートの押し出し，シートの破損，排出口のジャム等の可能性が高まる。そのため，プリンタ１００は，出力先のトレイ２１〜２４の積載高さが基準値を超えた状態であるスタックフルになった場合には，該当するトレイへの出力を停止して，スタックフルを報知する。
【００３１】
プリンタ１００は，高さセンサ２６〜２９の出力信号に基づいて，トレイ２１〜２４がスタックフルであるか否かを判断する。つまり，高さセンサ２６〜２９の出力信号が所定の基準高さを超えた位置を示す信号となった場合，プリンタ１００は，該当するトレイがスタックフルであると判断する。つまり，高さセンサ２６〜２９は，トレイ２１〜２４について，スタックフルである場合と，スタックフルではない場合とで異なる信号を出力すると見なすこともできる。なお，プリンタ１００は，高さセンサ２６〜２９とは別に，スタックフルを検出するセンサを備えていてもよい。
【００３２】
続いて，プリンタ１００の電気的構成について説明する。プリンタ１００は，図３に示すように，ＣＰＵ３１と，ＲＯＭ３２と，ＲＡＭ３３と，ＮＶＲＡＭ（不揮発性ＲＡＭ）３４とを含むコントローラ３０を備えている。また，プリンタ１００は，画像形成部１０と，前述した高さセンサ２６，２７，２８，２９と，ネットワークＩＦ（インターフェース）３７と，操作パネル４０とを備え，これらがコントローラ３０に電気的に接続されている。
【００３３】
ＲＯＭ３２には，プリンタ１００を制御するための各種制御プログラムや各種設定，初期値等が記憶されている。ＲＡＭ３３は，各種制御プログラムが読み出される作業領域として，あるいは，データを一時的に記憶する記憶領域として利用される。ＲＡＭ３３は，記憶部の一例である。
【００３４】
ＣＰＵ３１は，ＲＯＭ３２から読み出した制御プログラムに従って，その処理結果をＲＡＭ３３またはＮＶＲＡＭ３４に記憶させながら，プリンタ１００の各構成要素を制御する。ＣＰＵ３１は，制御部の一例である。コントローラ３０が制御部であってもよい。なお，図３中のコントローラ３０は，ＣＰＵ３１等，プリンタ１００の制御に利用されるハードウェアを纏めた総称であって，実際にプリンタ１００に存在する単一のハードウェアを表すとは限らない。
【００３５】
ネットワークＩＦ３７は，ＬＡＮケーブル等を用いてネットワークを介して接続された装置と通信を行うためのハードウェアである。ネットワークＩＦ３７は，通信部の一例である。
【００３６】
操作パネル４０は，ユーザに対する報知を表示する液晶ディスプレイと，ユーザによる指示入力を受け付けるためのボタン群とを備える。ボタン群には，例えば，スタートキー，ストップキー，テンキー等が含まれる。
【００３７】
続いて，プリンタ１００において，出力先であるトレイ２１〜２４のうちの少なくとも１つがスタックフルとなった際の通知動作について説明する。プリンタ１００は，トレイ２１〜２４の１つがスタックフルとなった場合，該当するトレイ２１〜２４が出力先となっている印刷ジョブを送信した送信元のうち，印刷物が持ち去られていないと推定される送信元へ，スタックフルを通知する。
【００３８】
そのために，プリンタ１００は，ＲＡＭ３３に，例えば，図４に示すような，複数のレコードＤから成る印刷リスト７１を用意している。プリンタ１００は，受け付けた印刷ジョブごとに，１つのレコードＤを割り当てる。印刷リスト７１の各レコードＤには，割り当てられた印刷ジョブに対応する，ジョブ番号，送信元，印刷時刻，出力先，出力枚数，持ち去り時刻，の各情報が記憶される。
【００３９】
ジョブ番号情報は，印刷ジョブを区別する情報であり，例えば，プリンタ１００にて受け付けた印刷ジョブ毎に割り当てられる連番の番号である。送信元情報は，印刷ジョブを送信した送信元を特定する情報であり，例えば，送信元の装置に対応するノード名，ＩＰアドレスが該当する。印刷時刻情報は，印刷ジョブの印刷を実行した時刻の情報である。出力先情報は，印刷ジョブの印刷物を出力するトレイを特定する情報である。出力枚数情報は，印刷ジョブによって出力した印刷物の枚数である。また，持ち去り時刻情報は，出力した印刷物が持ち去られたとプリンタ１００が推定した時刻の情報である。
【００４０】
プリンタ１００は，印刷ジョブを受け付けると，受け付けた印刷ジョブに新たなジョブ番号を割り当てる。また，プリンタ１００は，印刷リスト７１にレコードＤを１つ追加し，追加したレコードＤのジョブ番号に受け付けた印刷ジョブのジョブ番号を記憶することで，レコードＤと印刷ジョブとを関連付ける。さらに，プリンタ１００は，追加したレコードＤに受け付けた印刷ジョブの情報である，送信元と，出力先とを記憶する。印刷物の出力先は，印刷ジョブに含まれる印刷設定，または，プリンタ１００に設定されている出力先設定に基づいて決定される。
【００４１】
さらに，プリンタ１００は，印刷の実行に伴って，１枚の印刷ごとに，印刷リスト７１のうち印刷中の印刷ジョブに関連付けられたレコードＤに記憶されている出力枚数を更新する。プリンタ１００は，印刷ジョブの印刷終了時に印刷ジョブの出力枚数を記憶してもよい。なお，印刷リスト７１は，ＲＡＭ３３に記憶されるため，電源オン時に用意され，電源オフされたら削除される。また，プリンタ１００は，印刷リスト７１を，１日１回程度のあらかじめ設定したタイミングで削除してもよい。
【００４２】
また，プリンタ１００は，高さセンサ２６〜２９の出力信号を定期的に取得し，取得した出力信号に基づいて，トレイ２１〜２４に収容されているシートの枚数を取得する。そして，プリンタ１００は，トレイ２１〜２４に収容されている枚数の減少を検知した場合，該当するトレイが出力先に指定されており，かつ，出力枚数が減少枚数と一致する印刷ジョブを，印刷リスト７１から検索する。該当する印刷ジョブが見つかれば，プリンタ１００は，見つかった印刷ジョブの印刷物が持ち去られたと推定し，印刷リスト７１の該当する印刷ジョブのレコードＤの持ち去り時刻として，その時点の現在時刻を記憶する。
【００４３】
そして，プリンタ１００は，トレイ２１〜２４のいずれかがスタックフルとなった場合，印刷リスト７１から，スタックフルのトレイが出力先である印刷ジョブの情報を読み出す。そして，プリンタ１００は，レコードＤの持ち去り時刻が空欄である印刷ジョブの送信元にスタックフルを通知する。スタックフルの通知は，例えば，スタックフルになった旨の通知であってもよいし，印刷物を取り除く旨の通知であってもよい。レコードＤの持ち去り時刻が空欄である印刷ジョブの印刷物は，持ち去られていない可能性が高い。
【００４４】
一方，レコードＤの持ち去り時刻が空欄ではない印刷ジョブについては，前述したように，印刷物が持ち去られたと推定されることから，プリンタ１００は，スタックフルを通知する通知先としない。つまり，レコードＤの持ち去り時刻の欄に時刻を記憶することにより，プリンタ１００は，レコードＤに該当する印刷ジョブをスタックフルの通知先から除外する。持ち去り時刻の情報は，当該印刷ジョブを通知先から除外する除外対象であることを示す情報に相当する。
【００４５】
続いて，プリンタ１００にて，上記の通知動作を実現するプリンタ１００の各処理の手順について，図５〜図９のフローチャートを参照して説明する。まず，プリンタの動作を開始する開始処理について，図５のフローチャートを参照して説明する。この開始処理は，プリンタ１００の電源がオンされたことを契機にＣＰＵ３１によって実行される。
【００４６】
開始処理では，まず，プリンタ１００は，ＲＡＭ３３に，前述した印刷リスト７１を用意する（Ｓ１０１）。具体的には，印刷リスト７１用の記憶領域を確保し，印刷ジョブに割り当てられたレコードＤが１つも記憶されていない印刷リスト７１を，当該記憶領域に記憶する。
【００４７】
そして，プリンタ１００は，高さセンサ２６〜２９の出力信号に基づいて，トレイ２１〜２４に現在収容されている枚数であるシート枚数を取得する（Ｓ１０２）。そして，Ｓ１０２にて取得したトレイ２１〜２４のシート枚数を，ＲＡＭ３３に記憶する（Ｓ１０３）。
【００４８】
さらに，プリンタ１００は，タイマをスタートして（Ｓ１０５），開始処理を終了する。タイマは，トレイ２１〜２４のシート枚数を定期的に更新するための処理である，印刷リスト更新処理を開始するタイミングを決定するために使用される。印刷リスト更新処理については，後述する。
【００４９】
次に，プリンタ１００の印刷処理について，図６のフローチャートを参照して説明する。この印刷処理は，印刷ジョブを受信したことを契機にＣＰＵ３１によって実行される。つまり，プリンタ１００は，ネットワークＩＦ３７を介して印刷ジョブを開始する指示入力を受け付けた場合に，印刷処理の実行を開始する。この印刷処理の実行契機となる印刷ジョブの受信動作は，受信処理の一例である。
【００５０】
印刷処理では，プリンタ１００は，受信した印刷ジョブの送信元情報を取得し，印刷リスト７１に新たなレコードＤを追加して，取得した送信元情報と新たに割り当てたジョブ番号とを，新たなレコードＤに記憶する（Ｓ２０１）。Ｓ２０１は，送信元取得処理の一例である。この時点では，プリンタ１００は，このレコードＤの出力枚数を０枚とし，印刷時刻および持ち去り時刻は未定のため空欄とする。さらに，プリンタ１００は，受信した印刷ジョブの情報に基づき，受信した印刷ジョブの印刷物を出力する排紙トレイである出力先を決定し，決定した出力先の情報を当該印刷ジョブのレコードＤに記憶する（Ｓ２０２）。これにより，送信元情報と出力先情報と出力枚数とは，ジョブ番号に関連付けて記憶される。
【００５１】
Ｓ２０２の後，プリンタ１００は，出力先のトレイがスタックフルであるか否かを判断する（Ｓ２０４）。Ｓ２０４は，判断処理の一例である。プリンタ１００は，例えば，該当するトレイ２１〜２４に設けられている高さセンサ２６〜２９の出力信号に基づいて，スタックフルであるか否かを判断する。なお，高さセンサ２６〜２９の出力信号は，シートの排出時にも一時的にスタックフルである旨の信号となる場合がある。そのため，プリンタ１００は，高さセンサ２６〜２９の出力信号が，所定時間以上継続してスタックフルである旨の信号である場合に，スタックフルであると判断する。
【００５２】
スタックフルではないと判断した場合（Ｓ２０４：ＮＯ），プリンタ１００は，印刷ジョブの情報に基づいて，１枚の印刷を画像形成部１０に行わせる（Ｓ２０５）。Ｓ２０５は印刷処理の一例である。さらに，印刷の完了後に，プリンタ１００は，印刷リスト７１の該当する印刷ジョブのレコードＤに記憶されている出力枚数を１枚増加する（Ｓ２０６）。Ｓ２０６は，シート数取得処理と記憶処理との一例である。
【００５３】
そして，プリンタ１００は，印刷リスト７１の該当するレコードＤの印刷時刻の欄に現在時刻を記憶する（Ｓ２０７）。なお，印刷時刻の更新は，１枚目の印刷時のみ行ってもよいし，１枚印刷するごとに行ってもよいし，ジョブの最終の１枚の印刷時のみ行ってもよい。
【００５４】
そして，プリンタ１００は，印刷ジョブが終了したか否かを判断する（Ｓ２０８）。印刷ジョブが終了していないと判断した場合（Ｓ２０８：ＮＯ），プリンタ１００は，Ｓ２０４に戻って，スタックフルか否かを判断し，スタックフルではない場合には次ページの印刷を行う。
【００５５】
印刷ジョブの開始時，または，印刷ジョブに基づく印刷の実行中に，出力先のトレイがスタックフルとなったと判断した場合（Ｓ２０４：ＹＥＳ），プリンタ１００は，スタックフルを報知する（Ｓ２１２）。報知としては，プリンタ１００は，例えば，操作パネル４０への警告メッセージの表示，警告音の出力等を行う。なお，Ｓ２１２は，省略してもよい。
【００５６】
さらに，プリンタ１００は，印刷リスト７１から，出力先が実行中の印刷ジョブの出力先と同じであって，かつ，持ち去り時刻が空欄であるレコードＤを選択し，そのレコードＤに記憶されている印刷ジョブの送信元に，スタックフルである旨を通知する信号を送信する（Ｓ２１３）。Ｓ２１３は，通知処理の一例である。持ち去り時刻に時刻が記憶されていない印刷ジョブは，印刷物を持ち去られていないと推定される印刷ジョブである。
【００５７】
Ｓ２１３では，例えば，送信元がＰＣであれば，ＰＣにスタックフルである旨のエラー番号を送信する。ＰＣは，当該エラー番号を受信すると，ＰＣのディスプレイに当該エラー番号に対応するメッセージを表示させる。なお，Ｓ２１３にて通知先に該当する印刷ジョブが複数ある場合，送信元が一致する印刷ジョブについては印刷ジョブ毎に通知する必要はなく，該当する送信元に１回のみ通知するとしてもよい。
【００５８】
そして，プリンタ１００は，Ｓ２０４に戻り，出力先がスタックフルであるか否かを判断する。プリンタ１００は，出力先がスタックフルであれば，スタックフルが解消されるまで待機する。なお，待機の間もＳ２１２とＳ２１３とを繰り返して実行してもよい。例えば，所定時間待機してもスタックフルが解消されない場合には，再度通知するとしてもよい。
【００５９】
例えば，ユーザが印刷物を持ち去れば，出力先のトレイのシート枚数が減少し，高さセンサの出力信号が変化する。そして，出力先がスタックフルではないと判断した場合（Ｓ２１５：ＮＯ），プリンタ１００は，Ｓ２０５へ進んで，次の１枚の印刷を実行する。
【００６０】
そして，印刷ジョブが終了したと判断した場合（Ｓ２０８：ＹＥＳ），プリンタ１００は，印刷後フラグをオンとして（Ｓ２１５），印刷処理を終了する。印刷後フラグは，印刷の実行によってトレイのシート枚数が増加したことを示すフラグであり，ＲＡＭ３３に記憶される。印刷後フラグの初期値はオフである。印刷後フラグについては後述する。
【００６１】
次に，プリンタ１００の印刷リスト更新処理について，図７のフローチャートを参照して説明する。この印刷リスト更新処理は，開始処理のＳ１０５にてスタートしたタイマの経過時刻が定期的なタイミングとなったことを契機に，ＣＰＵ３１によって実行される。これにより，プリンタ１００は，定期的にトレイ２１〜２４のシート枚数を取得して，印刷リスト７１を更新する。定期的とは，例えば，６０秒ごとである。
【００６２】
印刷リスト更新処理では，プリンタ１００は，まず，印刷ジョブの実行中であるか否かを判断する（Ｓ３０１）。そして，印刷ジョブの実行中であると判断した場合（Ｓ３０１：ＹＥＳ），印刷リスト更新処理を終了する。印刷ジョブの実行中には，トレイ２１〜２４のシート枚数は流動的に変化しているので，印刷リスト更新処理を実行しない。
【００６３】
一方，印刷ジョブの実行中ではないと判断した場合（Ｓ３０１：ＮＯ），プリンタ１００は，トレイ２１〜２４の１つを選択する（Ｓ３０２）。そして，プリンタ１００は，以下の処理を選択したトレイ毎に繰り返す。そして，以下では，Ｓ３０２にて選択したトレイ２１〜２４の１つを，単に，選択トレイとする。
【００６４】
そして，プリンタ１００は，選択トレイの高さセンサの出力信号に基づいて，選択トレイのシート枚数を取得する（Ｓ３０３）。そして，取得したシート枚数が０枚であるか否かを判断する（Ｓ３０４）。シート枚数が０枚であると判断した場合（Ｓ３０４：ＹＥＳ），プリンタ１００は，選択トレイを出力先として実行された印刷ジョブを全て持ち去り済みとする（Ｓ３０５）。Ｓ３０５は，第３除外処理の一例である。
【００６５】
具体的に，選択トレイのシート枚数が０枚であれば，それ以前に印刷されて選択トレイに出力された印刷物は全て持ち去り済みであると推定できる。そこで，プリンタ１００は，Ｓ３０５にて，出力先として選択トレイが記憶されているレコードＤのうち，持ち去り時刻が空欄となっている全てのレコードＤの持ち去り時刻に，現在時刻を記憶する。前述した印刷処理のＳ２１３では，持ち去り時刻が空欄のレコードＤの送信元を通知の対象とする。そのため，持ち去り時刻に現在時刻を記憶することで，そのレコードＤの印刷ジョブは，スタックフル時の通知の対象から除外される。
【００６６】
さらに，プリンタ１００は，今回の印刷リスト更新処理にて取得した選択トレイのシート枚数を記憶し（Ｓ３０６），全トレイについての処理が終了したか否かを判断する（Ｓ３０７）。終了していないと判断した場合（Ｓ３０７：ＮＯ），Ｓ３０２に戻って次のトレイを選択し，同様に処理を実行する。一方，全トレイについて終了したと判断した場合（Ｓ３０７：ＹＥＳ），印刷リスト更新処理を終了する。なお，プリンタ１００は，Ｓ３０６にて記憶したシート枚数を，次回の印刷リスト更新処理にて使用する。
【００６７】
一方，シート枚数が０枚ではないと判断した場合（Ｓ３０４：ＮＯ），プリンタ１００は，前回の印刷リスト更新処理のＳ３０６にて記憶された前回のシート枚数と，今回のシート枚数との差を取得する（Ｓ３０８）。プリンタ１００は，印刷リスト更新処理を定期的に実行しており，印刷リスト更新処理の処理中にシート枚数を記憶している。そして，プリンタ１００は，Ｓ３０８にて，前回のシート枚数との差を取得することで，前回からのシート枚数の増減を検知する。Ｓ３０８は，検知処理の一例である。
【００６８】
そして，プリンタ１００は，取得したシート枚数の差が０か否かを判断する（Ｓ３０９）。そして，シート枚数の差が０であると判断した場合（Ｓ３０９：ＹＥＳ），シート枚数の変化がないので，プリンタ１００は，印刷リスト７１を更新することなく，今回のシート枚数を記憶して（Ｓ３０６），全トレイについて終了したか否かを判断する（Ｓ３０７）。全トレイについて終了したと判断した場合（Ｓ３０７：ＹＥＳ），この印刷リスト更新処理を終了する。なお，この場合，Ｓ３０６をスキップしてもよい。
【００６９】
一方，差が０ではないと判断した場合（Ｓ３０９：ＮＯ），プリンタ１００は，前回に比較してシート枚数が減少しているか否かを判断する（Ｓ３１０）。そして，減少していると判断した場合（Ｓ３１０：ＹＥＳ），プリンタ１００は，シート枚数の差分を減少枚数として（Ｓ３１２），減少処理を実行する（Ｓ３１３）。減少処理は，シート枚数の減少が印刷物の持ち去りによると推定し，持ち去られた印刷ジョブを推定して，該当する印刷ジョブを持ち去り済みとしてスタックフル時の通知の対象から除外する処理である。
【００７０】
次に，減少処理の手順について，図８のフローチャートを参照して説明する。減少処理では，プリンタ１００は，まず，印刷リスト更新処理のＳ３１２にて取得した減少枚数と，印刷リスト７１のレコードＤに記憶されている出力枚数と，が一致する印刷ジョブがあるか否かを判断する（Ｓ４０１）。一致する印刷ジョブがあると判断した場合（Ｓ４０１：ＹＥＳ），プリンタ１００は，印刷リスト７１中のその印刷ジョブを持ち去り済みと推定してスタックフル時の通知の対象から除外する（Ｓ４０２）。Ｓ４０２は，除外処理の一例である。具体的には，プリンタ１００は，印刷リスト７１のうち，該当する印刷ジョブのレコードＤの持ち去り時刻に現在時刻を記憶する。
【００７１】
一方，減少枚数とレコードＤの出力枚数とが一致する印刷ジョブがないと判断した場合（Ｓ４０１：ＮＯ），プリンタ１００は，送信元の情報が互いに一致する複数の印刷ジョブであって，各印刷ジョブの出力枚数の合計が，減少枚数と一致する印刷ジョブがあるか否かを判断する（Ｓ４０４）。合計枚数が減少枚数と一致する複数の印刷ジョブがあると判断した場合（Ｓ４０４：ＹＥＳ），プリンタ１００は，当該複数の印刷ジョブを全て持ち去り済みと推定してスタックフル時の通知の対象から除外する（Ｓ４０５）。Ｓ４０５は，第２除外処理の一例である。具体的には，プリンタ１００は，印刷リスト７１のうち，該当する全ジョブのレコードＤの持ち去り時刻に現在時刻を記憶する。
【００７２】
そして，プリンタ１００は，Ｓ４０２またはＳ４０５にて，印刷リスト７１を更新した後，印刷リスト７１を更新したことを示す更新フラグをオンとして（Ｓ４０７），減少処理を終了する。一方，合計枚数が減少枚数と一致する複数の印刷ジョブがないと判断した場合（Ｓ４０４：ＮＯ），プリンタ１００は，印刷リスト７１を更新せず，更新フラグをオフとして（Ｓ４０８），減少処理を終了する。
【００７３】
減少処理の終了後，プリンタ１００は，図７の印刷リスト更新処理に戻り，今回のシート枚数を記憶して（Ｓ３０６），全トレイについて終了したか否かを判断する（Ｓ３０７）。全トレイについて終了したと判断した場合（Ｓ３０７：ＹＥＳ），印刷リスト更新処理を終了する。
【００７４】
一方，前回に比較してシート枚数が減少していないと判断した場合（Ｓ３１０：ＮＯ），つまり，シート枚数が増加したと判断した場合，プリンタ１００は，印刷後フラグがオンであるか否かを判断する（Ｓ３１５）。印刷後フラグは，前述した印刷処理のＳ２１５にて，印刷ジョブが終了した後にオンとされるフラグである。
【００７５】
印刷後フラグがオンではないと判断した場合（Ｓ３１５：ＮＯ），プリンタ１００は，シート枚数の差分を増加枚数として（Ｓ３１６），増加処理を実行する（Ｓ３１７）。増加処理は，シート枚数の増加が印刷によるものではなく，ユーザが一旦持ち去った印刷物を返却したことによるものと推定して，印刷リスト７１を更新する処理である。
【００７６】
つまり，持ち去るべきではない他人の印刷ジョブの印刷物を誤って一緒に持ち去ってしまい，誤って持ち去ってしまった印刷物を返却したという状況を想定している。この場合，始めに持ち去った印刷物の枚数が，持ち去るべき印刷ジョブの枚数とは異なっていたことになる。つまり，プリンタ１００は，誤った減少枚数に基づいて減少処理を実行した可能性がある。そこで，増加処理では，誤って持ち去り済みとして除外した印刷ジョブを推定して，持ち去り済みではない状態に戻す処理を行う。
【００７７】
次に，増加処理の手順について，図９のフローチャートを参照して説明する。増加処理では，プリンタ１００は，まず，印刷リスト７１のレコードＤのうち，出力先が選択トレイであって，持ち去り時刻が記憶済みであるレコードＤの印刷ジョブを抽出する（Ｓ５０１）。つまり，プリンタ１００は，選択トレイに出力された印刷物が既に持ち去られたと推定した印刷ジョブを抽出する。
【００７８】
そして，抽出した印刷ジョブである抽出ジョブの出力枚数が，増加枚数よりも多いか否かを判断する（Ｓ５０３）。Ｓ５０１とＳ５０３とによって，印刷リスト７１から除外され，かつ，出力枚数が増加枚数よりも多い印刷ジョブが抽出される。Ｓ５０１とＳ５０３との組は，抽出処理の一例である。
【００７９】
前述したように，余分に持ち去った場合を想定しているため，先に持ち去られた枚数は，返却によって増加した枚数よりも多いはずである。つまり，各印刷ジョブの出力枚数は減少処理の実行時に減少枚数としたシート枚数であり，出力枚数が増加枚数以下である印刷ジョブは，上記の訂正の対象ではないとする。そのため，プリンタ１００は，Ｓ５０１とＳ５０３にて，出力枚数が増加枚数より多い印刷ジョブを，本処理の対象の可能性がある印刷ジョブとして抽出する。
【００８０】
そして，抽出ジョブの出力枚数が増加枚数よりも多いと判断した場合（Ｓ５０３：ＹＥＳ），プリンタ１００は，印刷リスト７１の抽出ジョブに該当するレコードＤの持ち去り時刻を移動させる（Ｓ５０４）。具体的に，プリンタ１００は，印刷リスト７１のうち，抽出ジョブのレコードＤの持ち去り時刻を印刷リスト７１とは別に記憶し，印刷リスト７１の抽出ジョブのレコードＤから持ち去り時刻を削除する。Ｓ５０４は，削除処理の一例である。プリンタ１００は，抽出ジョブのレコードＤに持ち去り時刻を後で復活させる場合があるので，印刷リスト７１とは別に記憶しておく。
【００８１】
さらに，プリンタ１００は，抽出ジョブの出力枚数から増加枚数を減じて減少枚数を取得する（Ｓ５０５）。Ｓ５０５は，算出処理の一例である。Ｓ５０５にて取得した減少枚数は，抽出ジョブが誤って持ち去り済みと判断したジョブであった場合に，本来持ち去るはずの出力枚数に相当する。なお，Ｓ５０４とＳ５０５とは，逆順であってもよい。
【００８２】
次に，プリンタ１００は，Ｓ５０５の減少枚数に基づいて，減少処理を実行する（Ｓ５０６）。Ｓ５０６の減少処理は，印刷リスト更新処理のＳ３１３にて説明した減少処理と同じものである。つまり，プリンタ１００は，減少処理にて，減少枚数に該当する印刷ジョブを検索して，該当する印刷ジョブがあれば，その印刷ジョブを改めて持ち去り済みとする。
【００８３】
Ｓ５０６の減少処理の終了後，プリンタ１００は，更新フラグがオンとなっているか否かを判断する（Ｓ５０７）。前述したように，減少処理では，プリンタ１００は，印刷リスト７１を更新した場合に更新フラグをオンとし，印刷リスト７１を更新することなく終了する場合には，更新フラグをオフとする。つまり，更新フラグがオンとなっているのは，減少処理にて減少枚数に該当する印刷ジョブがあり，その印刷ジョブを持ち去り済みに変更した場合である。
【００８４】
そこで，更新フラグがオンであると判断した場合（Ｓ５０７：ＹＥＳ），プリンタ１００は，増加処理を終了する。抽出ジョブのレコードＤから持ち去り時刻を削除することで，印刷リスト７１が更新されたことから，プリンタ１００は，適切な抽出ジョブであった，つまり，抽出ジョブは持ち去り済みではないと判断し，印刷リスト７１を，Ｓ５０４にて持ち去り時刻を削除した状態で確定する。そして，プリンタ１００は，移動して別に記憶した持ち去り時刻を削除する。
【００８５】
一方，更新フラグがオンではないと判断した場合（Ｓ５０７：ＮＯ），プリンタ１００は，Ｓ５０４にて仮に削除した持ち去り時刻を復活させる（Ｓ５１０）。つまり，プリンタ１００は，別に記憶しておいた持ち去り時刻を，印刷リスト７１の抽出ジョブのレコードＤに再び記憶させ，抽出ジョブの選択をやり直す。
【００８６】
そして，Ｓ５１０の後，または，抽出ジョブの出力枚数が増加枚数よりも多くないと判断した場合（Ｓ５０３：ＮＯ），プリンタ１００は，次の抽出ジョブがあるか否かを判断する（Ｓ５１１）。次の抽出ジョブがあると判断した場合（Ｓ５１１：ＹＥＳ），Ｓ５０３に戻って出力枚数が多いか否かを判断する。一方，次の抽出ジョブがないと判断した場合（Ｓ５１１：ＮＯ），増加処理を終了する。
【００８７】
例えば，図１０の（１）に示すように，３つの印刷ジョブＡ，Ｂ，Ｃが実行され，トレイＴのシート枚数が１２枚である状態から，シート枚数が６枚に減少した場合，プリンタ１００は，減少枚数を６枚として前述した減少処理を実行する。印刷リスト７１には，６枚のジョブＢのレコードＤが記憶されているため，プリンタ１００は，このジョブＢを除外対象であると判断して，図１０の（２）に示すように，ジョブＢのレコードＤに持ち去り時刻を記憶する。図１０の（２）では，さらに１枚のシートが持ち去られ，出力枚数１枚のジョブＣも通知先から除外された状態を示している。図１０の（２）では，シート枚数は５枚である。
【００８８】
その後，シート枚数が１枚増加して６枚となった場合，増加枚数を１枚として前述した増加処理を実行する。増加処理では，出力枚数が増加枚数より多い印刷ジョブであるジョブＢが抽出され，プリンタ１００は，減少枚数を５枚として減少処理を実行する。これにより，図１０の（３）に示すように，ジョブＡが通知先から除外されるとともに，ジョブＢは通知先として復活する。
【００８９】
なお，前述したように，減少処理では，プリンタ１００は，複数の印刷ジョブをまとめて持ち去り済みと判断する場合がある。そのため，プリンタ１００は，増加処理にて抽出ジョブを抽出する際，持ち去り時刻が同時刻である複数の印刷ジョブがあれば，その複数の印刷ジョブを全て抽出ジョブとする。この場合，プリンタ１００は，Ｓ５０３では，抽出ジョブの合計の出力枚数と増加枚数とを比較する。また，プリンタ１００は，Ｓ５０４では，全ての抽出ジョブの持ち去り時刻を削除し，Ｓ５１０では，全ての抽出ジョブの持ち去り時刻を復活させる。
【００９０】
増加処理の終了後，プリンタ１００は，図７の印刷リスト更新処理に戻り，今回のシート枚数を記憶して（Ｓ３０６），全トレイについて終了したか否かを判断する（Ｓ３０７）。全トレイについて終了したと判断した場合（Ｓ３０７：ＹＥＳ），印刷リスト更新処理を終了する。
【００９１】
一方，プリンタ１００は，印刷リスト更新処理のＳ３１５にて，印刷後フラグがオンであると判断した場合（Ｓ３１５：ＹＥＳ），枚数の増加は印刷ジョブによるものと推定されるので，印刷リスト７１の更新を行わない。つまり，印刷リスト７１の更新は，印刷処理にて終了していると推定されるので，プリンタ１００は，印刷リスト７１を更新せず，印刷後フラグをオフとする（Ｓ３１９）。さらに，現在のシート枚数を記憶して（Ｓ３０６），全トレイについて終了したか否かを判断する（Ｓ３０７）。全トレイについて終了したと判断した場合（Ｓ３０７：ＹＥＳ），印刷リスト更新処理を終了する。
【００９２】
以上，詳細に説明したように，プリンタ１００は，印刷ジョブを受信し，印刷を実行した場合，印刷ジョブの送信元と出力枚数と印刷物の出力先とを，ジョブ番号と関連付けて印刷リスト７１に記憶する。また，高さセンサ２６〜２９の出力信号に基づいて，トレイ２１〜２４のシート枚数を取得し，トレイ２１〜２４のシート枚数の減少を検知した場合，減少枚数と出力枚数とが一致する印刷ジョブを，持ち去り済みとして，印刷リスト７１に持ち去り時刻を記憶する。そして，いずれかのトレイがスタックフルとなった場合，印刷リスト７１にレコードＤが記憶されている印刷ジョブのうち，出力先がスタックフルとなったトレイであり，持ち去り時刻に時刻が記憶されていない印刷ジョブの送信元に，スタックフルを通知する。これにより，印刷物を持ち去ったと推測される印刷ジョブの送信元には，スタックフルが通知されない。従って，スタックフルに関する通知を，好適な通知先に行うことが期待できる。
【００９３】
続いて，本発明にかかる印刷装置を具体化した第２の形態について，添付図面を参照しつつ詳細に説明する。第２の形態のプリンタ２００は，各排紙トレイの高さセンサ２６〜２９を備えていない点で，第１の形態のプリンタ１００とは異なる第１の形態のプリンタ１００と共通の箇所については，同じ符号を付して，説明を省略する。
【００９４】
まず，プリンタ２００の電気的構成について図１１を参照して説明する。プリンタ２００は，プリンタ１００の高さセンサ２６〜２９に代えて，トレイ２１〜２４がスタックフルであるか否かを検出するスタックフルセンサ６１〜６４と，トレイ２１〜２４に収容されるシートの有無に応じて異なる信号を出力するシートセンサ６５〜６８とを備える。
【００９５】
スタックフルセンサ６１〜６４は，トレイ２１〜２４がスタックフルである場合と，スタックフルではない場合とで異なる信号を出力する。例えば，スタックフルセンサ６１は排紙トレイ２１の収容空間の上方に取り付けられている。スタックフルセンサ６１は，例えば，図１２に示すように，シートによって一端が押し上げられることで回転する回転片６１１と，回転片６１１の所定角度以上の回転によって光路が遮断される光透過センサ６１２とを備える。排紙トレイ２１がスタックフルではない場合には，スタックフルセンサ６１の回転片６１１は，図１２中に実線で示すように，自重によって光透過センサ６１２の光路を遮断しない位置となる。この状態で，スタックフルセンサ６１は，排紙トレイ２１がスタックフルではないことに対応する信号を出力する。
【００９６】
一方，排紙トレイ２１にシートが収容されると，シートによってスタックフルセンサ６１の回転片６１１の一端が押し上げられることで回転片６１１が回転する。そして，排紙トレイ２１に収容されるシートの量が多くなり，排紙トレイ２１の積載高さが基準値を超えた状態となると，図１２に二点鎖線で示すように，回転片６１１の他端によって，光透過センサ６１２の光路が遮断される。この状態で，スタックフルセンサ６１は，排紙トレイ２１がスタックフルであることを示す信号を出力する。
【００９７】
なお，スタックフルセンサ６２〜６４は，いずれも，スタックフルセンサ６１と同様の構成である。各スタックフルセンサ６１〜６４の出力信号が変化する積載高さである基準値は，それぞれ対応するトレイ２１〜２４に設定された量であり，トレイ２１〜２４ごとに異なる量であってもよい。
【００９８】
また，プリンタ２００は，トレイ２１〜２４のそれぞれに収容されているシートの有無に応じて異なる信号を出力するシートセンサ６５〜６８を備えている。シートセンサ６５〜６８は，例えば，トレイの底面に設けられた反射型光センサである。なお，プリンタ２００は，各トレイに収容されているシートの枚数は取得しない。
【００９９】
また，プリンタ２００は，ＲＡＭ３３に，例えば，図１３に示すような，複数のレコードからなる印刷リスト７２を用意している。印刷リスト７２のレコードは，プリンタ１００の印刷リスト７１のレコードＤに対し，ほぼ同様ではあるが，出力枚数の欄と持ち去り時刻の欄とを省略したレコードである。プリンタ２００では，トレイに収容されているシートの枚数を取得せず，出力枚数に基づく判断は行わない。さらに，印刷時刻の欄も省略したレコードとしてもよい。つまり，プリンタ２００の印刷リスト７２の各レコードには，印刷ジョブに対応させて，少なくとも，ジョブ番号，送信元，出力先，の各情報が記憶される。
【０１００】
続いて，プリンタ２００にて，スタックフルの通知動作を実現する開始処理の手順について説明する。プリンタ２００の開始処理は，図５に示したプリンタ１００の開始処理に対して，Ｓ１０２とＳ１０３とが異なるものである。つまり，プリンタ２００は，シート枚数を取得する代わりに，シートの有無を取得する。プリンタ２００は，開始処理にて，印刷リスト７２を用意し，トレイ２１〜２４のシートの有無を取得して記憶させ，タイマをスタートさせる。
【０１０１】
また，プリンタ２００の印刷処理は，図６のプリンタ１００の印刷処理とは部分的に異なる。また，プリンタ２００の印刷リスト更新処理は，図７のプリンタ１００の印刷リスト更新処理は異なる。そこで，以下では，プリンタ２００における印刷処理と印刷リスト更新処理とについて，フローチャートを参照して説明する。
【０１０２】
始めに，プリンタ２００にて実行される印刷処理の手順について，図１４のフローチャートを参照して説明する。図１４では，図６の印刷処理と同じ手順については，同じ符号を付しており，以下では図６の印刷処理と異なる部分のみを説明する。プリンタ２００は，図６のＳ２１３に代えて，印刷リスト７２にレコードが記憶されている印刷ジョブの送信元に通知する（Ｓ６０１）。つまり，プリンタ２００では，印刷リスト７２にレコードが記憶されているか否かに基づいて，通知先とするか否かを判断する。
【０１０３】
さらに，プリンタ２００では，印刷ジョブの印刷が終了したら，印刷処理を終了する。プリンタ１００の印刷処理では，印刷の終了後，Ｓ２１５にて印刷後フラグをオンとするが，プリンタ２００ではこの動作は不要である。プリンタ２００の各処理では，印刷後フラグと更新フラグとは，いずれも使用されない。
【０１０４】
次に，プリンタ２００の印刷リスト更新処理について，図１５のフローチャートを参照して説明する。プリンタ２００は，プリンタ１００と同様に，定期的なタイミングで印刷リスト更新処理を実行する。図１５では，図７の印刷リスト更新処理と同じ手順については，同じ符号を付して，説明を省略する。
【０１０５】
プリンタ２００は，印刷リスト更新処理にて，図７の印刷リスト更新処理と同様に，印刷中であれば処理を終了し，１つずつトレイを選択して選択トレイ毎に以下の処理を実行する（Ｓ３０１，Ｓ３０２）。
【０１０６】
印刷リスト更新処理では，プリンタ２００は，選択トレイのシートセンサの出力信号に基づいて，収容されているシートの有無を取得する（Ｓ７０１）。そして，プリンタ２００は，選択トレイにシートが無いか否かを判断する（Ｓ７０２）。選択トレイにシートが有ると判断した場合（Ｓ７０２：ＮＯ），プリンタ２００は，シートが有ることを記憶し（Ｓ７０３），次のトレイを選択する。
【０１０７】
一方，選択トレイにシートが無いと判断した場合（Ｓ７０２：ＹＥＳ），プリンタ２００は，前回の印刷リスト更新処理の実行時には，選択トレイにシートが有る状態であったか否かを判断する（Ｓ７０５）。具体的には，プリンタ２００は，前回の印刷リスト更新処理にて，Ｓ７０３が実行されたか否かを判断する。そして，前回もシートが無い状態であったと判断した場合（Ｓ７０５：ＮＯ），プリンタ２００は，次のトレイを選択する。
【０１０８】
一方，前回はシートが有って今回は無い，すなわちシートが全て持ち去られたと判断した場合（Ｓ７０５：ＹＥＳ），プリンタ２００は，出力先が選択トレイである印刷ジョブのレコードを印刷リスト７２から全て削除し（Ｓ７０６），次のトレイを選択する。７０６は，全除外処理の一例である。つまり，プリンタ２００では，選択トレイのシートセンサの出力信号がシートの有を示す信号からシートの無を示す信号に変化した場合，選択トレイを出力先として出力された印刷ジョブの印刷物は，全て持ち去り済みとなったと判断して，該当する印刷ジョブのレコードを印刷リスト７２から削除する。
【０１０９】
そして，全トレイについて処理が終了したら（Ｓ３０７：ＹＥＳ），プリンタ２００は，印刷リスト更新処理を終了する。
【０１１０】
なお，プリンタ２００では，持ち去り済みと判断した印刷ジョブのレコードを，印刷リスト７２から削除するとしたが，プリンタ１００と同様に，除外された旨を示す情報を追加して記憶するとしてもよい。除外された旨を示す情報としては，持ち去り時刻の情報でもよいし，単に除外マーク等でもよい。持ち去り済みの印刷ジョブのレコードを削除すれば，印刷リスト７２のレコードの蓄積によるＲＡＭ３３の負荷を軽減できる。一方，レコードを削除せず，除外された情報を追加して残すとすれば，印刷リスト７２を印刷の履歴等として用いることができる。
【０１１１】
以上，詳細に説明したように，プリンタ２００は，選択トレイのシートが無くなったと判断した場合，該当する選択トレイが出力先となっている印刷ジョブのレコードを印刷リスト７２から削除する。印刷リスト７２には，選択トレイが空となった後に出力された印刷ジョブのレコードだけが記憶されているので，印刷リスト７２に記憶されているレコードの印刷ジョブの印刷物は，トレイに残っている可能性がある。そして，いずれかのトレイがスタックフルとなった場合，印刷リスト７２に記憶されているレコードの印刷ジョブのうち，出力先がスタックフルとなったトレイであるレコードの印刷ジョブの送信元に，スタックフルを通知する。これにより，スタックフルに関する通知を，好適な通知先に行うことが期待できる。
【０１１２】
なお，本実施の形態は単なる例示にすぎず，本発明を何ら限定するものではない。したがって本発明は当然に，その要旨を逸脱しない範囲内で種々の改良，変形が可能である。例えば，プリンタに限らず，複写機，複合機，ＦＡＸ装置等，印刷機能を備えるものであれば適用可能である。また，本発明は，電子写真方式に限らず，インクジェット方式の画像形成部を備える装置にも適用可能である。また，本発明は，カラー印刷可能な装置にも，モノクロ専用の装置にも適用可能である。
【０１１３】
また，本実施の形態では，複数の排紙トレイを有するプリンタ１００，２００を例示しているが，排紙トレイが１箇所のみの装置にも適用可能である。例えば，本体トレイ２４のみを備えるプリンタ１００，２００にも適用できる。排紙トレイが１箇所であれば，印刷リスト７１，７２に出力先を記憶する欄を設ける必要はない。
【０１１４】
また，本実施の形態では，高さセンサ２６〜２９として，アーム２７１と，可変抵抗器２７２とを備えるものを例示しているが，これに限らない。例えば，シート束の上面に向けて光を照射する光反射方式の距離センサや，シート束の厚さを検出する超音波センサ等としてもよい。また，プリンタ１００においても，高さセンサとは別にスタックフルセンサを備えていてもよい。また，本形態では，スタックフルセンサ６１〜６４として，回転片と光透過センサとを備えるものを例示しているが，これに限らない。例えば，トレイに設けられた重量センサ等としてもよい。
【０１１５】
また，本実施の形態では，送信元情報として，印刷ジョブを送信した装置に関する情報を記憶するとしたが，印刷ジョブの情報から送信元のユーザが特定できる場合には，送信元ユーザの情報としてもよい。例えば，個人使用のＰＣからの送信であれば，プリンタ１００，２００は，使用ユーザを送信元と判断し，スタックフルの場合に該当ユーザのメールアドレス等に通知してもよい。また，印刷時刻に代えて，印刷ジョブの受信時刻を記憶してもよい。
【０１１６】
また，本実施の形態では，減少処理にて，各印刷ジョブの出力枚数と減少枚数とが一致しない場合には，複数の印刷ジョブの出力枚数の合計と減少枚数とを比較するとしたが，当該比較をしなくてもよい。具体的に，減少処理のＳ４０４とＳ４０５とを省略し，Ｓ４０１にてＮＯであればＳ４０８に進むとしてもよい。なお，この場合，増加処理でも合計枚数を考慮する必要はない。そして，合計枚数を考慮しない場合には，増加処理にて，抽出ジョブの持ち去り時刻を移動させる必要はなく，増加処理のＳ５０４とＳ５１０とを省略して，Ｓ５０７にてＹＥＳの場合に持ち去り時刻を削除するとしてもよい。
【０１１７】
また，本実施の形態では，トレイのシート枚数が増加した場合に，増加処理を実行するとしたが，増加処理を実行しなくてもよい。一度持ち去られた印刷物が再び収容される可能性が低いのであれば，増加処理を実行する必要性は低い。また，あるいは，シート枚数が増加した場合には，持ち去り済みと判断されている全ての印刷ジョブを持ち去り済みではないとしてもよい。あるいは，増加処理にて抽出対象とする印刷ジョブを，持ち去り済みの全ての印刷ジョブとしているが，例えば，そのうち直近に持ち去られた印刷ジョブのみとしてもよいし，所定時間内に持ち去られた印刷ジョブとしてもよい。
【０１１８】
また，本実施の形態では，印刷リスト更新処理を定期的に実行するとしたが，高さセンサ２６〜２９やシートセンサ６５〜６８の出力信号の変化を監視して，変化があった時のみ実行するとしてもよい。
【０１１９】
また，本実施の形態では，印刷リスト７１，７２をＲＡＭ３３に記憶するとしたが，ＮＶＲＡＭ３４に記憶してもよい。その場合，例えば，電源オン時には，印刷リスト７１，７２の内容を削除するとよい。
【０１２０】
また，実施の形態に開示されている処理は，単一のＣＰＵ，複数のＣＰＵ，ＡＳＩＣなどのハードウェア，またはそれらの組み合わせで実行されてもよい。また，実施の形態に開示されている処理は，その処理を実行するためのプログラムを記録した記録媒体，または方法等の種々の態様で実現することができる。
【符号の説明】
【０１２１】
１０  画像形成部
２１，２２，２３  排紙トレイ
２４  本体トレイ
２６，２７，２８，２９  高さセンサ
３１  ＣＰＵ
３４  ＮＶＲＡＭ
３７  ネットワークＩＦ
３８  ＵＳＢＩＦ
４０  操作パネル
６１，６２，６３，６４  スタックフルセンサ
６５，６６，６７，６８  シートセンサ
１００  プリンタ
【図１】
2016159604.tif 000003
【図２】
2016159604.tif 000004
【図３】
2016159604.tif 000005
【図４】
2016159604.tif 000006
【図５】
2016159604.tif 000007
【図６】
2016159604.tif 000008
【図７】
2016159604.tif 000009
【図８】
2016159604.tif 000010
【図９】
2016159604.tif 000011
【図１０】
2016159604.tif 000012
【図１１】
2016159604.tif 000013
【図１２】
2016159604.tif 000014
【図１３】
2016159604.tif 000015
【図１４】
2016159604.tif 000016
【図１５】
2016159604.tif 000017