(57)【特許請求の範囲】
【請求項１】
ホスト機器を介して複数のユーザによって使用される印刷装置において、
時間帯毎にユーザ個々の１日あたりの平均印刷回数が導出可能なようにユーザ個々の当該印刷装置での印刷履歴を記憶する記憶手段と、
この日の所定の時間帯に当該印刷装置で印刷するユーザを予測し、この予測したユーザのそれぞれにより前記この日の前記所定の時間帯に実際に印刷された回数を計数する計数手段と、
前記計数手段により計数された回数が前記所定の時間帯における前記予測したユーザの前記平均印刷回数の合計値を超えた場合に、当該印刷装置をレディーモードからスリープモードに移行制御する制御手段と、
を有することを特徴とする印刷装置。
【請求項２】
前記制御手段は、前記所定の時間帯における前記予測したユーザの前記平均印刷回数の合計値が予め定めた閾値を超えている場合であって、且つ、前記計数手段により計数された回数が前記所定の時間帯における前記予測したユーザの前記平均印刷回数の合計値を超えていない場合に、当該印刷装置をレディーモードに維持することを特徴とする請求項１に記載の印刷装置。
【請求項３】
前記制御手段は、前記所定の時間帯における前記予測したユーザの前記平均印刷回数の合計値が予め定めた閾値を超えていない場合には、前記計数手段により計数された回数にかかわらず当該印刷装置をレディーモードからスリープモードに移行制御することを特徴とする請求項１、又は２に記載の印刷装置。
【請求項４】
前記計数手段は、前記ホスト機器へのログイン情報に基づいて、または、所定時間だけ遡るまでの間に当該印刷装置で印刷したユーザ情報に基づいて、当該印刷装置で印刷するユーザを予測することを特徴とする請求項１から３のいずれかに記載の印刷装置。
【請求項５】
前記記憶手段は、１日を複数の時間帯に分割し、この分割された時間帯毎にユーザ個々の１日あたりの平均印刷回数を前記印刷履歴として記憶することを特徴とする請求項１から４のいずれかに記載の印刷装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、消費電力の削減を図る印刷装置及び印刷装置の電力制御方法に関する。
【背景技術】
【０００２】
今日、地球環境の保持が世界的に叫ばれ、地球温暖化防止会議を中心として温室効果ガスの排出規制が実現化に向かっている。このような状況において、プリンタ装置や複写機等の印刷装置においても、消費電力の削減が求められている。
【０００３】
このような現状において、印刷装置においては、例えば熱定着器の温度を下げて消費電力を低減するスリープモードが設けられており、過去の印刷履歴をもとにスリープモードの自動制御方法も様々提案されている。
【０００４】
例えば、特許文献１では、一定期間中の印刷指示時刻と稼動時間帯を記憶し、このデータに基づいて稼働状況に応じたスケジュールを作成し、印刷装置を運用している。また、特許文献２は、電源投入からの時間経過に従って時間帯を構成し、各々の時間帯の印刷回数の履歴から節電モードへの移行制御を行っている。
【０００５】
また、一定時間間隔の時間帯毎の印刷状況の実績を収集し、この実績データに基づいて消費電力を低減すると共に、ウォームアップの待ち時間をユーザに感じさせることの少ない印刷装置の提案も行われている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平６−１５５８５９号公報
【特許文献２】特開２００７−３０３２５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、一般的なオフィス用途の印刷装置では、必ずしも毎日同じ時間帯に印刷が行なわれるわけではなく、例えば印刷履歴を調べても、このあたりの時間帯に印刷することが多いという程度の傾向が見られるに過ぎない。
【０００８】
この様な傾向を印刷履歴から読み取って節電スケジュールを生成することに意義はあるが、上記特許文献１の方法では、まれに印刷する時間帯は節電対象となってしまい、印刷する毎にウォームアップ時間を待たされるか、待たされることを回避するためにスリープモードを禁止し、無駄な電力を消費してしまう問題がある。特に、長いウォームアップ時間を要する印刷装置では、上記問題は深刻である。
【０００９】
また、特許文献２及び一定時間間隔の時間帯毎の印刷状況の実績を収集し、この実績データに基づいて消費電力を低減する装置においても、印刷装置の使用状態をユーザ毎に管理しているわけではない。例えば、生成したスケジュールには対応する時間帯に在席していないユーザが過去の同時間帯に印刷した実績も含まれており、当該ユーザの印刷実績を除くと対応する時間帯はスリープ状態のままで良い場合でも印刷待機中に設定されることがある。また、逆に対応する時間帯に在席しているユーザは過去の多くの場合で同時間帯に印刷した実績がある場合のみ在席しているような使用方法では、印刷装置全体としては印刷待機中でよい場合でもスリープ状態に設定されることもある。
【００１０】
そこで、本発明は上記問題に鑑みてなされたものであり、複数ユーザが使用するホスト機器が対象とする印刷装置において、ホスト機器を使用するユーザ毎に一定時間間隔の時間帯毎の印刷状況を収集し、この実績をもとに現在ホスト機器を使用しているユーザに対応したユーザ毎の印刷実績のみを参照して稼働スケジュールを作成し、消費電力の削減とウォームアップ待ち時間の低減を実現することを目的とする。
【課題を解決するための手段】
【００１１】
上記課題は第１の発明によれば、ホスト機器を介して複数のユーザによって使用される印刷装置において、時間帯毎にユーザ個々の１日あたりの平均印刷回数が導出可能なようにユーザ個々の当該印刷装置での印刷履歴を記憶する記憶手段と、この日の所定の時間帯に当該印刷装置で印刷するユーザを予測し、この予測したユーザのそれぞれにより前記この日の前記所定の時間帯に実際に印刷された回数を計数する計数手段と、前記計数手段により計数された回数が前記所定の時間帯における前記予測したユーザの前記平均印刷回数の合計値を超えた場合に、当該印刷装置をレディーモードからスリープモードに移行制御する制御手段とを有することを特徴とする印刷装置を提供することによって達成できる。
【００１２】
また、上記課題は第２の発明によれば、前記制御手段は、前記所定の時間帯における前記予測したユーザの前記平均印刷回数の合計値が予め定めた閾値を超えている場合であって、且つ、前記計数手段により計数された回数が前記所定の時間帯における前記予測したユーザの前記平均印刷回数の合計値を超えていない場合に、当該印刷装置をレディーモードに維持する印刷装置を提供することによって達成できる。
【００１３】
また、上記課題は第３の発明によれば、前記制御手段は、前記所定の時間帯における前記予測したユーザの前記平均印刷回数の合計値が予め定めた閾値を超えていない場合には、前記計数手段により計数された回数にかかわらず当該印刷装置をレディーモードからスリープモードに移行制御する印刷装置を提供することによって達成できる。
【００１４】
また、上記課題は第４の発明によれば、前記計数手段は、前記ホスト機器へのログイン情報に基づいて、または、所定時間だけ遡るまでの間に当該印刷装置で印刷したユーザ情報に基づいて、当該印刷装置で印刷するユーザを予測する印刷装置を提供することによって達成できる。
【００１５】
また、上記課題は第５の発明によれば、前記記憶手段は、１日を複数の時間帯に分割し、この分割された時間帯毎にユーザ個々の１日あたりの平均印刷回数を前記印刷履歴として記憶する印刷装置を提供することによって達成できる。
【発明の効果】
【００１６】
本発明によれば、一定時間間隔毎の印刷スケジュールを作成し、該一定時間間隔の各時間帯毎のユーザ個々の印刷回数の情報と、各時間帯毎の全てのユーザの印刷回数の平均値の情報とを比較することによって、印刷装置をスリープモード又はレディーモードに設定し、消費電力の低減を図る印刷装置を提供するものである。
【図面の簡単な説明】
【００１７】
【図１】印刷装置の内部構成を示す図である。
【図２】不揮発性メモリに記憶される内容を説明する図であり、印刷実績データの構成を示す図である。
【図３】不揮発性メモリに記憶される内容を説明する図であり、印刷実績データの具体的なデータ構成を説明する図である。
【図４】実績とり開始年月日、及びスケジュールを説明する図である。
【図５】１日分データの構成を説明する図である。
【図６】スケジュールテーブルの構成を説明する図である。
【図７】プリンタ装置を使用するユーザ名の情報を記憶するテーブル構成を説明する図である。
【図８】本実施形態の基本的な処理を説明するフローチャートである。
【図９】プリンタ装置を使用するユーザ名の情報を記憶するテーブルである。
【図１０】スケジュールテーブルの作成処理を説明するフローチャートである。
【図１１】プリンタエンジンに関する消費電力を説明する図である。
【図１２】印刷実績の収集処理を説明するフローチャートである。
【図１３】スケジュール処理を説明するフローチャートである。
【発明を実施するための形態】
【００１８】
以下、本発明の実施の形態を図面に基づいて説明する。
図１は、本実施形態の印刷装置の内部構成を説明する図である。
本例の印刷装置（以下、プリンタ装置で示す）１はＣＰＵ２、ＲＯＭ３、ＲＡＭ４、不揮発性メモリ５、時計回路６、プリント制御ＬＳＩ７、プリンタエンジンインターフェース（以下、プリンタエンジンＩ／Ｆで示す）８、ＵＳＢ/ＬＡＮインターフェース（以下、ＵＳＢ/ＬＡＮ Ｉ／Ｆで示す）９で構成されている。尚、上記プリンタ装置１には不図示のホスト機器から印刷データが供給され、この印刷データに基づいて印刷処理が行われる。
【００１９】
ＣＰＵ２は、ＲＯＭ３や不揮発性メモリ５に記憶されたプログラム及びデータに従ってプリンタ装置１のシステム制御や、後述するスケジュールテーブルの作成処理、印刷実績データの取得処理、及びスケジュールの実行制御等を行なう。また、ＲＡＭ４はワークエリアとして機能する。
【００２０】
ホスト機器から供給される印刷データは、例えばＵＳＢ/ＬＡＮ Ｉ／Ｆ９を介してプリンタ装置１に供給され、ＣＰＵ２の制御に従ってＲＡＭ４に描画処理が行われ、プリント制御ＬＳＩ７を用いてプリンタエンジンＩ／Ｆ８から不図示のエンジン部へ描画データが転送され、印刷出力が行われる。
【００２１】
プリンタ装置１に配設された不揮発性メモリ５には以下で説明する情報が記憶され、時計回路６は時刻の計時処理を行う。
【００２２】
図２及び図３は、上記不揮発性メモリ５に記憶される内容を説明する図であり、図２は印刷実績データの構成を示し、図３は印刷実績データの具体的なデータ構成を説明するものである。ここで、印刷実績データとは、後述する一定時間帯毎のプリンタ装置１の印刷履歴である。
【００２３】
図２に示すように印刷実績データは、印刷実績ユーザ名データと、前月分の印刷実績データ（参照用）と、前月分の印刷実績データに今月分の実績を書き込んだ今月分の印刷実績データ（書き込み用）で構成されている。印刷実績ユーザ名データとしては、同図に示すようにユーザナンバー（ユーザNo.）とユーザ名の情報であり、例えば５１２名分のユーザNo.とユーザ名の情報が記憶されている。また、前月分印刷実績データと今月分印刷実績データは基本的に同じ構成であり、図３に示すように、「ヘッダ」、「曜日別データ」、「日付別データ」で構成されている。
【００２４】
「ヘッダ」には、ヘッダコード、領域ＩＤ、実績とり開始年月日、データ年月、待ち時間限界値の各エリアが設けられ、対応するデータが記憶される。ここで、実績とり開始年月日とは、例えば図４に示す例で説明すると、２００９年３月１０日が実績とり開始年月日である。尚、同図の例では、後述するスケジュールの実行は、上記実績とり開始年月日から１ヶ月後の２００９年４月１０日から行うことができる。
【００２５】
一方、「曜日別データ」には、第１週から第６週までの１ヶ月分の曜日別データのエリアが設けられ、各週のエリアにはそれぞれの週の１週間分（日曜日〜土曜日）のデータが記憶される。尚、第６週まで存在しない月は、第５週までのデータとなる。
また、「日付別データ」には、１日から３１日までの１ヶ月分の日付別データの記憶エリアが設けられ、各日付の記録エリアにデータが記憶される。
【００２６】
図５は、上記「曜日別データ」、及び「日付別データ」として記憶される各日の「１日分のデータ」構成を説明する図である。本例では「１日分データ」として、１４４個のエリアを有し、１０分毎にプリンタエンジンからの情報を取得し、記憶する構成である。また、１４４個の各エリアにはユーザ毎の印刷回数と使用中状態の情報が記憶されている。印刷回数と使用中状態の記憶エリアで構成され、１０分間に行われたプリンタ装置１の印刷回数と使用中状態が記憶される。
【００２７】
一方、図６はスケジュールテーブルの構成を示す図である。このスケジュールテーブルは後述する処理によって生成されるテーブルであり、スケジュールテーブルにはスケジュール実行許可のフラグ領域と、レディ状態維持時間、閾値、及び００：００〜２４：００までの１０分毎の平均印刷回数のデータが書き込まれる。
【００２８】
また、図７はプリンタ装置１を使用するユーザ名情報を記憶するテーブルであり、ユーザ名、ホストアドレス、有効期限が記憶されている。例えば、同図に示す例では、５１２のユーザ設定が可能であり、ホストアドレスにはユーザに対応するホストコンピュータ（ホスト機器）のアドレスデータ（１）〜（５１２）が記憶され、それぞれが有する有効期限が記憶される。
【００２９】
以上の構成において、以下に本例の処理動作を説明する。
図８は、本実施形態の基本的な処理を説明するフローチャートである。
先ず、プリンタ装置１の電源を投入すると、印刷実績データの確認（ステップ（以下、Ｓで示す）１）、印刷データ受信/タイマー割込待ち（Ｓ２）、及び状態監視データ受信/タイマー割込み待ち（Ｓ３）の各プロセスが駆動する。
【００３０】
先ず、印刷データ受信/タイマー割込待ち（Ｓ２）の処理は、一定時間毎の割り込み処理において、プリンタ装置１にホスト機器からの印刷データの受信が有るか判断するものであり、印刷データを受信すると（Ｓ４がＹＥＳ）、印刷データを展開し（Ｓ５）、ユーザ毎の印刷実績データの印刷回数をプラス（＋）１する（Ｓ６）。例えば、図５の対応する時間帯のエリアの対応するユーザ名の印刷回数を＋１する。
【００３１】
その後、例えばＲＡＭ４に構築されたフレームメモリに展開した印刷データをプリンタエンジンＩ／Ｆ８を介して不図示の印字ヘッドに送信し、用紙等の記録媒体に印刷処理を行う（Ｓ７）。その後、後述するスケジュール実行許可の判断を行い（Ｓ８）、スケジュールの実行処理を行う（Ｓ９）。尚、このスケジュール実行処理については、後述する。
【００３２】
また、状態監視データ受信/タイマー割込み待ち（Ｓ３）の処理は、一定時間毎の割り込み処理において、ホスト機器から送信された受信データ内にログインユーザ情報が含まれている場合（Ｓ１０がＹＥＳ）、プリンタ装置１の使用ユーザ名情報の更新処理を行うものである（Ｓ１１）。
【００３３】
図９は使用ユーザ名情報の更新処理を具体的に説明するフローチャートである。先ず、現在時刻の取得を行い（Ｓ１１−１）、ユーザ名情報更新フラグをクリアする（Ｓ１１−２）。すなわち、ＣＰＵ２は時計回路６から時刻データを読み取ると共に、ユーザ名情報更新フラグを“０”にセットする。
【００３４】
次に、ユーザ名情報分の処理行うため、先ずユーザ名情報分の処理が完了したか判断する（Ｓ１１−３）。この最初の判断はＮＯであり、以後入力ユーザ名がプリンタ使用ユーザ名情報テーブル上のユーザ名と一致するか判断し（Ｓ１１−４）、一致する場合（Ｓ１１−４がＹＥＳ）、当該ユーザ情報の有効期限のチェックを行う（Ｓ１１−５）。一方、一致しない場合には次のユーザ名に対する処理を行う（Ｓ１１−４がＮＯ、Ｓ１１−３）。
【００３５】
次に、上記ユーザ名が一致する場合（Ｓ１１−４がＹＥＳ）、更に当該ユーザ名情報の有効期限が過去の時刻（＜現在時刻）であるか判断する（Ｓ１１−５）。ここで、ユーザ名情報の有効期限が過去の時刻でなければ（Ｓ１１−５がＮＯ）、対応するユーザ名情報の有効期限に有効時間を加算し（Ｓ１１−７）、ユーザ名情報更新フラグをオンにセットする（Ｓ１１−８）。一方、ユーザ名情報の有効期限が過去の時刻であれば（Ｓ１１−５がＹＥＳ）、ユーザ名情報変化フラグをセットする（Ｓ１１−６）。
【００３６】
上記のようにユーザ名情報更新フラグ、及びユーザ名情報変化フラグをセットすることによって、ユーザ名情報分の処理が完了した後（Ｓ１１−３がＹＥＳ）、ユーザ名情報更新フラグのオンを判断し、対応するユーザ名情報が登録されているか否かの判断を行うことができる（Ｓ１１−９）。例えば、対応するユーザ名情報が登録されていない場合（Ｓ１１−９がＮＯ）、当該ユーザ名情報を図７に示すプリンタ使用ユーザ名情報のテーブルに追加する（Ｓ１１−１０）。この場合、新たなユーザ名情報のエリアに、有効期限として現在時刻に有効時間を加算した情報をセットし（Ｓ１１−１１）、更にユーザ名情報変化フラグをセットする（Ｓ１１−１２）。
【００３７】
次に、図８に示すフローチャートの説明に戻り、印刷実績データの確認処理を実行する（Ｓ１）。この処理は、不揮発性メモリ５に記憶されている印刷実績データをＲＡＭ４に読み出し、確認処理を行う。具体的には、不揮発性メモリ５に印刷実績データが記憶されていること、及び読み出した印刷実績データに問題が無いことを確認する。
【００３８】
次に、プリンタ装置１を使用しているユーザ名情報を取得する（Ｓ１２）。図１０は、ユーザ名情報の取得処理を説明するフローチャートである。
【００３９】
先ず、ＲＡＭ４のワークエリアの競合による情報の矛盾を避けるため、ユーザ名情報を全て別エリアに読み出す（Ｓ１２−１）。次に、前述のユーザ名情報変化フラグの読み込み処理を行い（Ｓ１２−２）、ユーザ名情報変化フラグをクリアする（Ｓ１２−３）。
【００４０】
次に、現在時刻の情報を取得し（Ｓ１２−４）、ユーザ名情報の有効性を判断するため、ユーザ名情報分の処理が終了したか判断する（Ｓ１２−５）。この最初の判断はＮＯであり、先ず読み込んだユーザ名情報の各ユーザ名毎の有効期限と現在時刻の比較を行い（Ｓ１２−６）、有効期限が現在時刻より過去の時刻である場合（Ｓ１２−６がＹＥＳ）、更に前回処理時刻との比較を行う（Ｓ１２−７）。そして、前回処理時刻より過去の時刻となっている場合、当該ユーザ名は無効であり、ユーザ名情報に変化が発生したと判断し（Ｓ１２−７がＮＯ）、読み込んだユーザ名情報変化フラグをセットする（Ｓ１２−８）。
【００４１】
その後、ユーザ名情報分の処理が終了すると（Ｓ１２−５がＹＥＳ）、取得した現在時刻を前回処理時刻として保存する（Ｓ１２−９）。
以上のようにしてプリンタ使用ユーザ名情報の取得を行った後、図８に示すフローチャートの説明に戻り、スケジュールテーブルの作成処理を行う（Ｓ１３）。この処理はワークエリア上の印刷実績データ、及び前述の処理において取得したプリンタ使用ユーザ名情報を用いて、図６に示すスケジュールテーブルを作成する処理である。
【００４２】
図１１は、このスケジュールテーブルの作成処理を具体的に説明するフローチャートである。先ず、ＣＰＵ２はプリンタエンジンの情報を読み込み（Ｓ１３−１）、プリンタエンジンを識別する（Ｓ１３−２）。すなわち、「プリント時の消費電力」や、「レディ状態の消費電力」、「スリープ状態の消費電力」をもとに、所定の演算を行い閾値を決定する。尚、この閾値の意味については後述する。
【００４３】
次に、印刷実績データの読込処理を行う（Ｓ１３−３）。この印刷実績データの読み込み処理は、上記「曜日別データ」及び「日付別データ」の両方のデータを読み込む。
次に、実績取り開始から１ヶ月以下であるか判断する（Ｓ１３−４）。すなわち、前述の「ヘッダ」に記憶した実績とり開始年月日の情報を確認し、実績データの収集を開始した日から１ヶ月を経過しているか判断する。この理由は、スケジュールを曜日別で行なう場合には１週間、日付別で行う場合には１月間のリードタイムが必要であり、本例では「曜日別データ」と「日付別データ」の両方のデータを使用するため、少なくとも１ヶ月の実績情報の収集を必要とする。したがって、前述の図４に示す例では、２００９年４月１０日から印刷実績データの読み込み処理を行うことが可能となる。
【００４４】
ここで、実績とり開始年月日から１ヶ月が経過していない場合（Ｓ１３−４がＹＥＳ）、図６に示すスケジュールテーブルのスケジュール実行許可のフラグをリセットし、実行禁止に設定する（Ｓ１３−５）。一方、実績とり開始年月日から１ヶ月が経過している場合（Ｓ１３−４がＮＯ）、スケジュール実行許可のフラグを実行許可に設定する（Ｓ１３−６）。
次に、スケジュールテーブルの時間帯を０にセットし（Ｓ１３−７）、時間帯が１４４を越えるまで以下の処理を行なう（Ｓ１３−８）。すなわち、先ずユーザNo.１をセットし（Ｓ１３−９）、「曜日別データ」と「日付別データ」のそれぞれの時間帯毎の印刷回数と使用中状態延べ数を集計するため、曜日別時間帯別印刷回数／使用中状態カウンタのクリア処理と、日付別時間帯別印刷回数／使用中状態カウンタのクリア処理を行い（Ｓ１３−１０、Ｓ１３−１１）、現在使用中ユーザ分の集計を行う。
【００４５】
先ず、前述の処理によって取得した読み込み済みプリンタ使用ユーザ名情報の有効期限が現在時刻より過去の場合（Ｓ１３−１２がＮＯ、Ｓ１３−１３がＹＥＳ）、当該ユーザ名情報は無効であり、スケジュールテーブル作成の対象としない。一方、有効期限が現在時刻以後の場合（Ｓ１３−１３がＮＯ）、使用中ユーザNo.に対応した曜日別データの指定時間帯の印刷回数を曜日別の印刷回数カウンタへ加算し、使用中状態カウンタを＋１する（Ｓ１３−１４）。また、使用中ユーザNo.に対応した日付別データの指定時間帯の印刷回数を日付別の印刷回数カウンタへ加算し、使用中状態カウンタを＋１する（Ｓ１３−１５）。その後、次の使用中ユーザ分の処理を行うべく、ユーザNo.を＋１する（Ｓ１３−１６）。
【００４６】
その後、上記処理（Ｓ１３−１２〜Ｓ１３−１６）の処理を繰り返し、使用中ユーザ分の集計を行う。
【００４７】
次に、上記処理が完了すると（Ｓ１３−１２がＹＥＳ）、使用中ユーザのみの曜日別データの指定時間帯平均印刷回数を算出する（Ｓ１３−１７）。この計算は、例えば「曜日別時間帯別印刷回数カウンタ÷曜日別時間帯別使用中状態カウンタ」を計算することによって求める。同様に、使用中ユーザのみの日付別データの指定時間帯平均印刷回数を算出する（Ｓ１３−１８）。この計算は、例えば「日付別時間帯別印刷回数カウンタ÷日付別時間帯別使用中状態カウンタ」を計算することによって求める。
【００４８】
そして、それぞれの平均印刷回数の大きい方、即ち印刷実績の高い方をスケジュールテーブルの該当時間帯に書き込む（Ｓ１３−１９〜Ｓ１３−２１）。この処理はプリンタ装置１を使用する業種や使用者の業務内容によって、曜日を基準に仕事を行う場合もあり、または日付を基準に仕事を行う場合もあり、何れの場合でも、時間帯毎の平均印刷回数の大きい方を選択する方がユーザの便宜を図ることができると考えるからである。したがって、１０分毎の時間帯によって、ある時間帯では「曜日別データ」が使用され、別のある時間帯では「日付別データ」が使用される。
【００４９】
その後、次の時間帯を処理するため時間帯を＋１し（Ｓ１３−２２）、上記処理を繰り返し（Ｓ１３−８〜Ｓ１３−２２）、１４４の時間帯全てに対して処理を行い（Ｓ１３−８がＹＥＳ）、スケジュールテーブルの作成処理を終了する。
【００５０】
以上のようにしてスケジュールテーブルの作成処理が完了すると、図８に示すフローチャートの説明に戻り、現在時刻の情報を読み取る（Ｓ１４）。その後、１分間隔でプリンタ使用ユーザ名取得処理を行い（Ｓ１５、Ｓ１６）、使用中のユーザ情報に変化がある場合（Ｓ１７がＹＥＳ）、スケジュールテーブルの作成処理を再度行う（Ｓ１８）。このスケジュールテーブルの作成処理は、前述の図１１において説明した処理と同様であり、１分間隔でこの処理を繰り返すことによって、プリンタ使用中ユーザが増減した場合でも運用状態に即したスケジュールテーブルの作成処理を行うことができる。
【００５１】
次に、１０分経過の判断を行い（Ｓ１９）、印刷実績の収集処理を行う（Ｓ２０）。図１２は、この印刷実績収集処理を具体的に説明するフローチャートである。先ず、この時間帯のユーザ毎の印刷実績データを取得するため、ユーザ毎の印刷実績データの当該時間帯のデータを読み込む（Ｓ２０−１）。
【００５２】
次に、印刷実績データ(RAM)が管理する全ユーザ分のデータ処理を行うため、先ずユーザNo.１をセットし（Ｓ２０−２）、ユーザNo.１のユーザ名情報の有効期限が、この時間帯より前（現在時刻−１０分より以前）であるか判断する（Ｓ２０−３がＮＯ、Ｓ２０−４）。そして、当該ユーザ名情報の有効期限がこの時間帯より前である場合（Ｓ２０−４がＹＥＳ）、当該ユーザの印刷実績データは無効であるので処理を行わない。
【００５３】
一方、有効期限がこの時間帯以後の場合（Ｓ２０−４がＮＯ）、印刷実績データの更新処理を行う。先ず、ユーザNo.に対応したユーザの日付別データの印刷回数に、この時間帯のユーザ毎の印刷実績データの印刷回数を加算する（Ｓ２０−５）。次に、ユーザNo.に対応したユーザの日付別データの使用中回数を＋１する（Ｓ２０−６）。
【００５４】
ここで、「日付別データ」は毎月の日付別の印刷実績を履歴となるものであり、実際の作業に対応するものであるが、「曜日別データ」は毎週の曜日別の印刷実績を記録するものであり、単純に記録する場合には問題がある。例えば、毎月特定の日付に大量の印刷が行われるのは日付別データで記録すべき項目であり、これを曜日別に記録すると本来の曜日別の目的と異なった結果が導き出される。
【００５５】
そこで、大量の印刷が行われることの多い、例えば期初日後１週間であるか判断し（Ｓ２０−７）、この期間内であれば「曜日別データ」の更新を行うことなく、次のユーザNo.の処理を行う（Ｓ２０−７がＮＯ）。
【００５６】
一方、上記期間内でなければ（Ｓ２０−７がＹＥＳ）、ユーザNo.に対応したユーザの曜日別データの印刷回数に、この時間帯のユーザ毎の印刷実績データの印刷回数を加算し、（Ｓ２０−８）、ユーザNo.に対応したユーザの曜日別データの使用中回数を＋１する（Ｓ２０−９）。また、次の使用中ユーザ分の処理を行うべく、ユーザNo.を＋１する（Ｓ２０−１０）。
【００５７】
以上の処理を繰り返し、全ユーザ分の処理が終了すると（Ｓ２０−３がＹＥＳ）、日付別印刷実績データを不揮発性メモリ５に書き込み（Ｓ２０−１１）、続けて曜日別印刷実績データを不揮発性メモリ５に書き込み（Ｓ２０−１２）、更に印刷実績ユーザ名データの差分を不揮発性メモリ５に書き込む（Ｓ２０−１３）。
【００５８】
次に、図８に示すフローチャートに戻り、更新されたスケジュールテーブルに基づいてスケジュールを実行すべく、スケジュールの判断を行う。この判断は、前述の図６に示すスケジュールテーブルのスケジュール実行許可フラグを確認し（Ｓ２１）、スケジュール実行許可フラグが設定されていれば（Ｓ２１がＹＥＳ）、スケジュールを実行する（Ｓ２２）。
図１３は、上記スケジュール実行処理を具体的に説明するフローチャートである。
先ず、プリンタエンジンから現在の状態情報(EngSts)を読み出す（Ｓ２２−１）。次に、スケジュールテーブルから当該時間帯の平均印刷回数(PrintAve)の情報を読み出し（Ｓ２２−２）、更にユーザ毎の印刷実績データから当該の時間帯の印刷回数(PrintCnt)の情報を読み出す（Ｓ２２−３）。
【００５９】
次に、スケジュールテーブルから閾値の情報を読み出す（Ｓ２２−４）。ここで、閾値の情報を使用することは、以下の意味をもつ。すなわち、プリンタ装置１では省電力のため、例えば定着器への電源供給を停止するなどの方法によって節電状態(Sleep状態)の設定を行っている。このため、再度印刷を行う際には、ウォームアップを行うための電力が必要である。このことを考慮すると、印刷完了後、印刷可能状態(Ready状態)を維持して次の印刷を開始する場合の消費電力が、節電状態で待機後ウォームアップして次の印刷を開始する場合の消費電力より小さくて済む限界時間（印刷可能状態の維持時間）が存在することが考えられる。
【００６０】
そこで、この限界時間（印刷可能状態の維持時間）t1を求め、このt1時間以内で印刷が行われるならば、印刷可能状態(Ready状態)を維持した方が節電状態(Sleep状態)に移行させるより消費電力が小さくて済む。このため、印刷実績を収集する前述の時間間隔（１０分）とt1が近似している場合、その時間間隔内の印刷回数を計数することが、印刷時間や印刷枚数より消費電力の少ない設定を導き出すことに容易な方法である。プリンタエンジン装置の各状態毎の消費電力の測定値と状態移行に要する時間を基に演算を行った結果、本例では限界時間t1は、0.152時間(9.12分)を得ており、このt1の値を前述の時間間隔で実行できる回数を閾値として設定を行う。
【００６１】
すなわち、本実施形態のプリンタ装置１の場合、時間間隔は１０分に設定されており、印刷回数は「時間間隔÷t1」で求めることにより1.10回(10分÷9.12分)となり、この回数以上であれば印刷処理と印刷処理の間隔がt1時間以上となる。したがって、閾値として例えば１．１０の設定が行われている。
【００６２】
次に、上記閾値を読み出し（Ｓ２２−４）、この時間帯の印刷回数(PrintCnt)がこの時間帯の平均印刷回数(PrintAve)より大きいか判断する（Ｓ２２−５）。すなわち、(PrintCnt-PrintAve≧0)の計算を行い、PrintCnt-PrintAve≧0である場合（Ｓ２２−５がＹＥＳ）、プリンタエンジン状態(EngSts)がReady状態であれば（Ｓ２２−６がＹＥＳ）、プリンタ装置１をSleep状態に設定する（Ｓ２２−７）。また、PrintCnt-PrintAve≧0ではない場合（Ｓ２２−５がＮＯ）でも、当該時間帯の平均印刷回数(PrintAve)が閾値より小さい場合（Ｓ２２−８がＮＯ）、プリンタ装置１をSleep状態に設定する（Ｓ２２−６、Ｓ２２−７）。
【００６３】
一方、PrintCnt-PrintAve≧0ではなく（Ｓ２２−５がＮＯ）、当該時間帯の平均印刷回数(PrintAve)が閾値より大きい場合（Ｓ２２−８がＹＥＳ）、プリンタ装置１をReady状態に設定するため、プリンタエンジン状態(EngSts)がReady状態でなければ（Ｓ２２−９がＮＯ）、プリンタ装置１をReady状態に設定する（Ｓ２２−１０）。
【００６４】
その後、図８のフローチャートの処理に戻り、次の時間経過処理に備えて時間待ちを行い（Ｓ２３）、時間待ち終了後に再度現在時刻の情報を読み取り（Ｓ１４）、上記処理を繰り返す（Ｓ１４〜Ｓ２３）。
【００６５】
以上のように、本実施形態によれば、プリンタ装置１の印刷実績データに基づいて、プリンタ装置１の使用状況をユーザ毎に管理し、且つ現在プリンタ装置１を使用する目的でホスト機器にログインしているプリンタ装置１の使用予定のあるユーザの印刷実績の印刷傾向を把握し、生成した節電スケジュールに従ってプリンタ装置１の省電力状態を制御することにより、消費電力の更なる低減を可能とすることができる。また、当該時間帯に在席していないユーザの印刷実績に左右されることなく、且つ当該時間帯に在席しているユーザにとっては印刷時のウォームアップ待ちを減らし、更なる迅速な印刷処理を実行することが可能となる。
【００６６】
なお、本実施形態の説明では、閾値について具体的な数値を使用して説明したが、本発明は上記数値に限定されるものではない。
【符号の説明】
【００６７】
１・・・プリンタ装置
２・・・ＣＰＵ
３・・・ＲＯＭ
４・・・ＲＡＭ
５・・・不揮発性メモリ
６・・・時計回路
７・・・プリント制御ＬＳＩ
８・・・プリンタエンジンＩ／Ｆ
９・・・ＵＳＢ/ＬＡＮ Ｉ／Ｆ
【図１】
0005742212.tif 000002
【図２】
0005742212.tif 000003
【図３】
0005742212.tif 000004
【図５】
0005742212.tif 000005
【図６】
0005742212.tif 000006
【図７】
0005742212.tif 000007
【図８】
0005742212.tif 000008
【図９】
0005742212.tif 000009
【図１０】
0005742212.tif 000010
【図１１】
0005742212.tif 000011
【図１２】
0005742212.tif 000012
【図１３】
0005742212.tif 000013
【図４】
0005742212.tif 000014