(57)【要約】【課題】トナー等の印刷剤の消費量を精度良く算出し、印刷剤の検知残量と物理残量との乖離（誤差）の少ない残量表示を可能にすること。【解決手段】コントローラ３０２が、印刷データにおける各ページについて、ラインまたはブロック単位で、ランレングス圧縮を行い、黒画素と白画素との構成比率から黒画素の占有率を求め（Ｓ１０４）、トナー使用量算出テーブルを用いて、前記占有率と印刷に用いる用紙サイズとに対応するトナーの消費量を求め（Ｓ１０５）、前記黒画素の散らばりの度合いに対応する補正値を、トナー使用量補正テーブルを参照して取得し、該補正値を用いて、前記トナーの消費量を補正する（Ｓ１０４，Ｓ１０５）。【選択図】図５
2015069184.tif 000002
【特許請求の範囲】
【請求項１】
画像形成装置であって、
印刷データにおける各ページについて、ラインまたはブロック単位で、ランレングス圧縮を行い、黒画素と白画素との構成比率から黒画素の占有率を求める算出手段と、
テーブルを用いて、前記算出手段が求めた該占有率と印刷に用いる用紙サイズとに対応するトナーの消費量を求める予測手段と、
前記黒画素の散らばりの度合いに対応する補正値を、補正テーブルを参照して取得する取得手段と、
前記取得手段が取得した補正値を用いて、前記予測手段が求めたトナーの消費量を補正する補正手段と、
を有することを特徴とする画像形成装置。
【請求項２】
前記補正手段により補正されたトナーの消費量を用いて、前記画像形成装置のトナーの残量を求める残量算出手段を有することを特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記補正テーブルに対して、黒画素の散らばりの度合いごとの補正値を設定する設定手段を有することを特徴とする請求項１又は２に記載の画像形成装置。
【請求項４】
前記残量算出手段は、トナーを収納するカートリッジが交換された場合に、該カートリッジに収納されているトナー量を該カートリッジに備えられているメモリから読み出してトナー残量として設定することを特徴とする請求項２又は３に記載の画像形成装置。
【請求項５】
画像形成装置の制御方法であって、
印刷データにおける各ページについて、ラインまたはブロック単位で、ランレングス圧縮を行い、黒画素と白画素との構成比率から黒画素の占有率を求める算出ステップと、
テーブルを用いて、前記算出ステップで求めた該占有率と印刷に用いる用紙サイズとに対応するトナーの消費量を求める予測ステップと、
前記黒画素の散らばりの度合いに対応する補正値を、補正テーブルを参照して取得する取得ステップと、
前記取得ステップで取得した補正値を用いて、前記予測ステップで求めたトナーの消費量を補正する補正ステップと、
を有することを特徴とする画像形成装置の制御方法。
【請求項６】
コンピュータを、請求項１乃至４のいずれか１項に記載された手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、トナー等の印刷剤の残量を検知する機能を有する画像形成装置に関するものである。
【背景技術】
【０００２】
従来より、トナー消費量を計算し、装置内のトナー残量を管理する画像形成装置が提案されている。装置内のトナー量を正確に管理することができれば、装置内のトナー残量をユーザ自身が知ることが可能となり、交換時期に合わせて新しいカートリッジを用意することができ、ユーザにとって極めて好便である。
【０００３】
特許文献１では、ドットカウンタを用いてトナー消費量を算出する技術が提案されており、トナー消費量を用いてトナー残量を管理することが可能となる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−１９４３７９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記特許文献１のようにドットカウンタを用いてトナー消費量を算出する技術では、精度の高いトナーの消費量の算出が可能である。しかし、ドットカウンタを備えていない画像形成装置では、上記特許文献１の技術を用いることができない。そのため、ドットカウンタを備えていない画像形成装置において、より精度の高い残量検知について検討されている。
【０００６】
本発明は、上記の問題点を解決するためになされたものである。本発明の目的は、トナー等の印刷剤の消費量を精度良く算出することができ、印刷剤の検知残量と物理残量との乖離（誤差）の少ない残量表示を可能とする仕組みを提供することである。
【課題を解決するための手段】
【０００７】
本発明は、画像形成装置であって、印刷データにおける各ページについて、ラインまたはブロック単位で、ランレングス圧縮を行い、黒画素と白画素との構成比率から黒画素の占有率を求める算出手段と、テーブルを用いて、前記算出手段が求めた該占有率と印刷に用いる用紙サイズとに対応するトナーの消費量を求める予測手段と、前記黒画素の散らばりの度合いに対応する補正値を、補正テーブルを参照して取得する取得手段と、前記取得手段が取得した補正値を用いて、前記予測手段が求めたトナーの消費量を補正する補正手段と、を有することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、トナー等の印刷剤の消費量を精度良く算出することができる。この結果、印刷剤の検知残量と物理残量との乖離（誤差）の少ない残量表示を行うことができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の一実施例を示す画像形成装置のシステム構成を例示する図。
【図２】コントローラの構成を例示する図。
【図３】プリンタエンジンの構成を例示する図。
【図４】本実施例のトナー残量に関連する処理を例示するフローチャート。
【図５】トナー消費量算出処理を例示するフローチャート。
【図６】トナー使用量補正処理を例示するフローチャート。
【図７】トナー使用量算出テーブルを例示する図。
【図８】トナー使用量補正テーブルを例示する図。
【図９】トナー使用量補正値設定画面を例示する図。
【発明を実施するための形態】
【００１０】
以下、本発明を実施するための形態について図面を用いて説明する。
【実施例１】
【００１１】
〔プリンタのシステム構成の説明〕
図１は、本発明の一実施例を示す画像形成装置のシステム構成の概略の一例を示す図である。
図１において、データ処理装置１０１は、例えば、コンピュータであり、画像情報の供給源として機能する。画像形成装置１０２は、例えば、電子写真プリンタであり、スキャナ機能やＦＡＸ機能を有するものであってもよい。画像形成装置１０２は、プリンタコントローラ（以下、コントローラ）３０２、パネル部３０１、プリンタエンジン３０３等を有する。
【００１２】
コントローラ３０２は、データ処理装置１０１から供給される画像情報（例えば、ページ記述言語（以下、ＰＤＬ））に基づいて、ページ毎にラスタデータを生成し、プリンタエンジン３０３に送出する。パネル部３０１は、ユーザインターフェースとして使用される。コントローラ３０２は、パネル部３０１を介してユーザからの所望の動作指示を受け付ける。また、コントローラ３０２は、パネル部３０１を介して、画像形成装置１０２の状態やユーザへの警告等をユーザに通知する。パネル部３０１に表示する画像形成装置１０２の状態には、トナーカートリッジ制御部５０９を介して取得するトナー残量も含まれる。プリンタエンジン３０３は、コントローラ３０２から供給されるラスタデータに基づいて、感光ドラム上に潜像を形成し、その潜像を記録媒体上にトナーを転写・定着（電子写真方式）することにより画像を記録する。
【００１３】
〔コントローラのシステム構成の説明〕
図２は、コントローラ３０２の構成の一例を示すブロック図である。
図２において、４０１はパネルＩ／Ｆ部で、パネル部３０１とのデータ通信を行うためのものである。ＣＰＵ４０７は、パネルＩ／Ｆ部４０１を介して、ユーザからのパネル部３０１を介しての設定および指示内容を受け付ける。
【００１４】
４０２はホストＩ／Ｆ部で、ネットワークを介してホストコンピュータ等のデータ処理装置１０１と双方向に通信接続するためのものである。４０３はＲＯＭで、本発明で説明する処理や、その他画像形成装置１０２の行う制御プログラムコードが保持される。４０４はＲＡＭである。ＲＡＭ４０４には、ホストＩ／Ｆ部４０２を介して受信した印刷データ、印刷データを解釈して生成される中間データ、中間データをレンダリングして生成されるビットマップ、その他の処理に必要な一時的な各種処理ステータスやログ情報等が格納される。また、ＲＡＭ４０４には、ＣＰＵ４０７が実行するプログラムコードがＲＯＭ４０３等から読み出されて展開される。
【００１５】
４０５はエンジンＩ／Ｆ部で、プリンタエンジン３０３と通信接続するためのものである。ＣＰＵ４０７は、エンジンＩ／Ｆ部４０５を介して、プリンタエンジン３０３の状態を認識する。４０６はＤＭＡ制御部である。ＣＰＵ４０７は、ＲＡＭ４０４内に格納されているビットマップデータを、ＤＭＡ制御部４０６を介してエンジンＩ／Ｆ部４０５に転送する。
【００１６】
４０７はＣＰＵで、ＲＯＭ４０３に格納された制御プログラムコードに基づいて、ＣＰＵバス４２０に接続されたデバイスを制御する。４０８はＥＥＰＲＯＭで、画像形成装置１０２の設定情報を保持するための不揮発性メモリである。ＥＥＰＲＯＭ４０８は、後述する図７のトナー使用量算出テーブル６０１、および図８のトナー使用量補正テーブル７０１の情報を保持する部分でもある。
【００１７】
４０９はメディアＩ／Ｆ部で、ＵＳＢメモリ等のリムーバブルメディア３０４から画像データ、プログラムデータ、機器設定データ等の各種データを読み取ったり書き込んだりするためのものである。
【００１８】
４１０は、ジョブ制御部というＲＯＭ４０３に保持されるプログラム群の１つのモジュールであり、このプログラムは、ＲＯＭ４０３からＲＡＭ４０４に展開され、ＣＰＵ４０７により実行される。ＣＰＵ４０７は、ジョブ制御部４１０の実行により、データ処理装置１０１から受信したデータを、印刷ジョブとしてＲＡＭ４０４に保存した上で、印刷処理を実行する。さらに、ＣＰＵ４０７は、ジョブ制御部４１０の実行により、データ処理装置１０１から受信したデータを、印刷ジョブとしてＲＡＭ４０４に保存したり、保存されている印刷ジョブをＲＡＭ４０４から消去したりする。
【００１９】
４１１は、ホストＩ／Ｆ部４０２を介してデータ処理装置１０１から受信した印刷ジョブを画像形成装置１０２内部で扱いやすい形である中間データに変換する処理を行う中間データ作成部である。中間データ作成部４１１は、ＲＯＭ４０３に保持されるプログラムのモジュールで、そのプログラムは、ＲＯＭ４０３からＲＡＭ４０４に展開された後、ＣＰＵ４０７により実行される。
【００２０】
４１２は、中間データ作成部４１１がＲＡＭ４０４に格納した中間データの内容に従って、ビットマップイメージに展開するレンダリング部である。４１２は、レンダリング部というＲＯＭ４０３に保持されるプログラムのモジュールであり、ＲＯＭ４０３からＲＡＭ４０４に展開された後、ＣＰＵ４０７により実行される。
【００２１】
４１３は、トナー残量算出部というＲＯＭ４０３に保持されるプログラムのモジュールであり、そのプログラムモジュールは、ＲＯＭ４０３からＲＡＭ４０４に展開された後、ＣＰＵ４０７により実行される。
【００２２】
４１４は、印刷するページの有効ドット数の比率を求めトナー使用量を算出するトナー使用量算出部である。トナー使用量算出部４１４は、ＲＯＭ４０３に保持されるプログラムのモジュールで、そのプログラムは、ＲＯＭ４０３からＲＡＭ４０４に展開された後、ＣＰＵ４０７により実行される。ＣＰＵ４０７は、トナー残量算出部４１３の実行により、トナー残量を算出する。ＣＰＵ４０７は、算出されたトナー残量を、パネルＩ／Ｆ部４０１を介してパネル部３０１にトナー残量として表示したり、ホストＩ／Ｆ部４０２を介してデータ処理装置１０１にトナー残量として通知したりする。
【００２３】
４２０は、アドレス、データ、コントロールバスを含むＣＰＵバスである。４０１から４０９のデバイスは、それぞれＣＰＵバス４２０に接続されたすべてのデバイスにアクセスできる。
【００２４】
〔プリンタエンジンのシステム構成の説明〕
図３は、プリンタエンジン３０３の構成の一例を示すブロック図である。
図３に示すように、プリンタエンジン３０３は、少なくとも５０１〜５０６に示すデバイスや制御部で構成される。
【００２５】
５０２はＲＯＭで、プリンタエンジン３０３の行う制御プログラムコードが保持される。５０３はＲＡＭである。ＲＡＭ５０３は、コントローラＩ／Ｆ部５０７を介して受信した印刷データ、プリンタエンジン３０３の状態を示すステータス情報などを格納する。また、ＲＡＭ５０３には、ＣＰＵ５０１が実行するプログラムコードがＲＯＭ５０２等から読み出されて展開される。
【００２６】
５０４は環境センサ部で、温度や湿度を測定するためのものである。５０５は駆動制御部で、所定の画像形成処理を行うための各種モータを駆動する。５０６は異常検知部で、画像形成装置のカバーや紙詰まりなどの異常を検知する。５０７はコントローラＩ／Ｆ部で、所定の通信プロトコルに基づいてコントローラ３０２と通知を行うためのものである。
【００２７】
ＣＰＵ５０１は、ＲＯＭ５０２等に格納された制御プログラムコードに基づいて、ＣＰＵバス５１０に接続されたデバイスを制御する。ＣＰＵ５０１は、５０４〜５０６の各部によって変化した状態情報をコントローラＩ／Ｆ部５０７を介してコントローラ３０２に通知する。また、ＣＰＵ５０１は、コントローラＩ／Ｆ部５０７を介してコントローラ３０２からの指示コマンドを受け、関連するデバイスに指示内容を伝えたりする。
【００２８】
５０８は画像形成部で、コントローラＩ／Ｆ部５０７を介してコントローラ３０２から送信されたビットマップ画像情報に対して所定の画像形成処理（例えば電子写真技術における帯電、露光、現像、転写、定着といった一連の処理）を行う。５０９はトナーカートリッジ制御部で、プリンタエンジン３０３に装着されているトナーカートリッジに対する各種制御を行う。５１０はＣＰＵバスで、アドレスバス、データバス、コントロールバスを含む。各デバイスは、それぞれＣＰＵバス５１０に接続された全てのデバイスにアクセスできる。
【００２９】
以下、図４〜図６のフローチャートを参照して、本発明の画像形成装置の処理について説明する。なお、図４〜図６に示すコントローラ３０２の処理は、コントローラ３０２のＣＰＵ４０７がＲＯＭ４０３等に格納されるプログラムを実行することにより、実現される。また、図４に示すプリンタエンジン３０３の処理は、プリンタエンジン３０３のＣＰＵ５０１がＲＯＭ５０２等に格納されるプログラムを実行することにより実現される。
【００３０】
〔トナー残量に関連するコントローラ３０２及びプリンタエンジン３０３の処理の説明〕
図４は、コントローラ３０２およびプリンタエンジン３０３のトナー残量に関連する処理手順を示すフローチャートである。図４において、Ｓ１１〜Ｓ２０は、コントローラ３０２のＣＰＵ４０７によって実行される処理である。なお、ＣＰＵ４０７は、プリンタエンジン３０３との通信処理を、エンジンＩ／Ｆ部４０５を介して実行する。Ｓ３１〜Ｓ３５は、プリンタエンジン３０３のＣＰＵ５０１によって実行される処理である。なお、ＣＰＵ５０１は、コントローラ３０２との通信処理を、コントローラＩ／Ｆ部５０７を介して実行する。
【００３１】
まず、Ｓ１１において、コントローラ３０２のＣＰＵ４０７は、トナーカートリッジ制御部５０９を介して、トナーカートリッジが交換された可能性があるかどうかを判断する。例えば、トナーカートリッジ制御部５０９は、トナーカートリッジが交換された可能性がある場合には、その旨をコントローラ３０２に通知するものとする。ＣＰＵ４０７は、トナーカートリッジ制御部５０９からトナーカートリッジが交換された可能性がある旨の通知を受け取った場合には、トナーカートリッジが交換された可能性があると判断する。一方、前記通知を受け取っていない場合には、ＣＰＵ４０７は、トナーカートリッジが交換された可能性がないと判断する。
【００３２】
上記Ｓ１１において、トナーカートリッジが交換された可能性がないと判断した場合（Ｓ１１でＮｏの場合）、ＣＰＵ４０７は、Ｓ１１の判断を繰り返す。一方、上記Ｓ１１において、トナーカートリッジが交換された可能性があると判断した場合（Ｓ１１でＹｅｓの場合）、ＣＰＵ４０７は、Ｓ１２に処理を進める。
【００３３】
Ｓ１２において、ＣＰＵ４０７は、トナーカートリッジ制御部５０９に装着されているトナーカートリッジ情報を取得するために、エンジンＩ／Ｆ部４０５を介してプリンタエンジン３０３にトナーカートリッジ情報取得コマンドを送信する。
【００３４】
プリンタエンジン３０３のＣＰＵ５０１は、Ｓ３１において、上記Ｓ１２でコントローラ３０２から送信されたコマンドを、コントローラＩ／Ｆ部５０７を介して受信する。次に、Ｓ３２において、ＣＰＵ５０１は、上記Ｓ３１で受信したコマンドを解釈し、その解釈に従ってトナーカートリッジ制御部５０９が有するトナーカートリッジ情報を、コントローラＩ／Ｆ部５０７を介してコントローラ３０２に返送する。なお、上記Ｓ３２で返送する情報は、トナーカートリッジ制御部５０９が有するトナーカートリッジ情報であり、例えば、後述のＳ１４やＳ１９で処理されるトナー残量などが含まれる。なお、トナーカートリッジ制御部５０９は、トナーカートリッジが交換された可能性がある場合、トナーカートリッジに備えられている不揮発性メモリから、トナーカートリッジのトナー量等を含むトナーカートリッジ情報を読み出す。トナーカートリッジの不揮発性メモリには、製造時等に該トナーカートリッジに収納されるトナーの量等のトナーカートリッジ情報が記憶されているものとする。なお、ここでは、トナーカートリッジに不揮発性メモリを備え、該不揮発性メモリにトナー量等を記憶する構成について説明したが、本実施例はこれに限定されるものではない。例えば、トナーカートリッジ制御部５０９は、トナーカートリッジの種別に応じて決まるトナー量等のトナーカートリッジ情報をコントローラ３０２に返送してもよい。
【００３５】
コントローラ３０２のＣＰＵ４０７は、Ｓ１３において、上記Ｓ３２でプリンタエンジン３０３からの返送ステータスをエンジンＩ／Ｆ部４０５を介して受信する。
次に、Ｓ１４において、ＣＰＵ４０７は、プリンタエンジン３０３から受信した情報に基づき、トナー残量の初期値を設定し、トナー残量算出部４１３で保持する。なお、ここで設定されるトナー残量の初期値は、パネルＩ／Ｆ部４０１を介してパネル部３０１にトナー残量を表示したり、ホストＩ／Ｆ部４０２を介してデータ処理装置１０１にトナー残量を通知したりするために用いられる。
【００３６】
次に、Ｓ１５において、ＣＰＵ４０７は、ホストＩ／Ｆ部４０２を介して、データ処理装置１０１から印刷指示がされているかどうかを判断する。そして、印刷指示されていないと判断した場合（Ｓ１５でＮｏの場合）、ＣＰＵ４０７は、Ｓ１１に処理を移行する。一方、印刷指示されていると判断した場合（Ｓ１５でＹｅｓの場合）、ＣＰＵ４０７は、Ｓ１６に処理を移行する。
【００３７】
Ｓ１６において、ＣＰＵ４０７は、ホストＩ／Ｆ部４０２を介して、データ処理装置１０１から送付・印刷指示された画像イメージのトナー使用量（消費量）を、トナー使用量算出部４１４で算出するように制御する（Ｓ１６の詳細は後述する図５に示す）。
【００３８】
次に、Ｓ１７において、ＣＰＵ４０７は、ホストＩ／Ｆ部４０２を介して、データ処理装置１０１から印刷指示された画像イメージを、エンジンＩ／Ｆ部４０５を介してプリンタエンジン３０３に印刷指示するため、印刷開始コマンドを送信する。
【００３９】
プリンタエンジン３０３のＣＰＵ５０１は、Ｓ３３において、上記Ｓ１７でコントローラ３０２から送信されたコマンドをコントローラＩ／Ｆ部５０７を介して受信する。画像形成部５０８では、コントローラＩ／Ｆ部５０７を介してコントローラ３０２から送信されたビットマップ画像情報を所定の画像形成処理を行う。なお、所定の画像形成処理とは、例えば電子写真技術における帯電、露光、現像、転写、定着といった一連の処理に対応する。
【００４０】
ＣＰＵ５０１は、画像形成部５０８の画像形成処理が終わるのを待ち、Ｓ３４において、印刷終了通知を、コントローラＩ／Ｆ部５０７を介してコントローラ３０２に返送する。
【００４１】
コントローラ３０２のＣＰＵ４０７は、Ｓ１８において、上記Ｓ３４でプリンタエンジン３０３から送信された返送ステータスをエンジンＩ／Ｆ部４０５を介して受信する。その後、ＣＰＵ４０７は、プリンタエンジン３０３から受信した情報に基づき、パネルＩ／Ｆ部４０１を介してパネル部３０１に印刷が完了した等の表示などを行う。
【００４２】
次に、Ｓ１９において、ＣＰＵ４０７は、上記Ｓ１６にてトナー使用量算出部４１４で求めたトナー使用量をもとに、トナー残量算出部４１３が保持するトナー残量の値を更新する。さらに、ＣＰＵ４０７は、エンジンＩ／Ｆ部４０５を介してトナーカートリッジ制御部５０９が有するトナー残量を更新するためのコマンドを送信する。
【００４３】
プリンタエンジン３０３のＣＰＵ５０１は、Ｓ３５において、上記Ｓ１９でコントローラ３０２から送信されたコマンドをコントローラＩ／Ｆ部５０７を介して受信する。さらに、ＣＰＵ５０１は、該受信したコマンドに含まれる値で、トナーカートリッジ制御部５０９が保持するトナー残量を更新する。さらに、トナーカートリッジ制御部５０９は、更新されたトナー残量を用いて、トナーカートリッジに備えられている不揮発性メモリに記憶されているトナー量を更新する。なお、ここでは、トナーカートリッジに不揮発性メモリを備え、該不揮発性メモリにトナー量を記憶する構成について説明したが、本実施例はこれに限定されるものではない。
上記Ｓ３５の処理を完了すると、ＣＰＵ５０１は、Ｓ３１からの処理を繰り返す。
【００４４】
コントローラ３０２のＣＰＵ４０７は、Ｓ２０において、上記Ｓ１９で更新したトナー残量を、パネルＩ／Ｆ部４０１を介してパネル部３０１にトナー残量として表示する。その後、ＣＰＵ４０７は、Ｓ１１からの処理を繰り返す。
【００４５】
（トナー使用量（消費量）算出に掛かる処理の説明）
図５は、トナー使用量算出部４１４の処理を示し、図４のＳ１６で行うトナー使用量算出処理の詳細手順を示すフローチャートである。なお、本フローチャートの処理は、コントローラ３０２のＣＰＵ４０７が実行する。
【００４６】
まず、Ｓ１０１において、コントローラ３０２のＣＰＵ４０７は、プリンタエンジン３０３のエンジンタイプから、図７の中の自機に該当するトナー使用量算出テーブル６０１を導き出す。本テーブルは、テストチャートなどから実際に消費するトナー使用量を実測した値を格納し、乖離が少ない使用量を算出できるようにした。
【００４７】
次に、Ｓ１０２において、ＣＰＵ４０７は、ホストＩ／Ｆ部４０２を介して、データ処理装置１０１から送付・印刷指示された画像イメージサイズから、上記Ｓ１０１で求めたテーブルの用紙サイズ６０３を確定する。
【００４８】
次に、Ｓ１０３において、ＣＰＵ４０７は、データ処理装置１０１から送付・印刷指示された画像イメージにおいて、トナーの使用量を算出していない画像データの有無を確認する。そして、トナーの使用量を算出していない画像データが有ると判定した場合（Ｓ１０３でＹｅｓの場合）、ＣＰＵ４０７は、Ｓ１０４に処理を進める。
【００４９】
Ｓ１０４において、ＣＰＵ４０７は、主走査方向の１ラインもしくは複数ラインをまとめたブロック単位での有効ドット数の比率を算出する。本実施例では、ラインもしくはブロックの画像データを、一次元符号化方式（ＭＨ圧縮）や二次元圧縮方式（ＭＭＲ圧縮）によりランレングス圧縮し、その圧縮により求めた白データ（白ラン）と有効画素（黒ラン）から、構成比率を求める方式とした。即ち、本実施例では、印刷データにおける各ページについて、上記ラインまたはブロック単位で、ランレングス圧縮を行い、黒画素と白画素との構成比率から黒画素の占有率を求める。
【００５０】
次に、Ｓ１０５にて、ＣＰＵ４０７は、Ｓ１０１で求めたトナー使用量算出テーブル６０１、Ｓ１０２で求めた用紙サイズ６０３、及びＳ１０４で求めた占有率６０２から、画像イメージの中のラインもしくはブロックが使用（消費）すると予測される使用量６０４を導き出す。
【００５１】
次に、Ｓ１０６において、ＣＰＵ４０７は、上記Ｓ１０５で求めたトナー使用量６０４に対する補正処理を実行する。本実施例では、図８の有効画素の散らばり具合（有効画素が散らばるとランレングス圧縮の圧縮率が低下する。また、散らばりの少ないデータでは、ランレングス圧縮の圧縮率が上がるという特性を利用）により補正する方式とした。また、その補正値は、ユーザが設定可能とする方式としたが、この方式こだわるものでない。例えば、印刷濃度の使われ方や使用する用紙タイプ、環境センサ５０４などから求める湿度や温度などの使用環境により補正する方式により行うことも可能である。
【００５２】
次に、Ｓ１０７において、ＣＰＵ４０７は、上記Ｓ１０６で補正したトナー使用量を、ジョブ単位で累計するためトータル値に加算した後、Ｓ１０３に戻り、次ラインもしくはブロックの処理を行う。なお、上記Ｓ１０３において、消耗品使用量を算出していない画像データが存在しないと判断した場合は、ＣＰＵ４０７は、本処理を終了する。
【００５３】
（トナー使用量（消費量）の補正に掛かる処理の説明）
図６は、トナー使用量算出部４１４の中にあって使用量を補正する処理を示し、図５のＳ１０６で行うトナー使用量補正処理の詳細手順を示すフローチャートである。なお、本フローチャート処理は、コントローラ３０２のＣＰＵ４０７が実行する。
【００５４】
まず、コントローラ３０２におけるＣＰＵ４０７は、Ｓ２０１において、図５のＳ１０４でランレングス圧縮したデータについて、有効画素の散らばりが大きいか否かを判断する。本実施例では、"散らばり大"を、ランレングス圧縮した結果のサイズが、ある閾値より大きい（すなわち、ランレングス圧縮の圧縮率が低い）場合に該当するよう判断する構成とした。
【００５５】
そして、Ｓ２０１において、有効画素の散らばりが大きい（すなわち、ランレングス圧縮の圧縮率が低い）と判定した場合（Ｓ２０１でＹｅｓの場合）、ＣＰＵ４０７は、Ｓ２０２に処理を進める。Ｓ２０２において、ＣＰＵ４０７は、図８のトナー使用量補正テーブル７０１から該当する補正値７０２を取得し、Ｓ２０６に処理を移行する
【００５６】
一方、上記Ｓ２０１において、有効画素の散らばりが大きくないと判断した場合（Ｓ２０１でＮｏの場合）、ＣＰＵ４０７は、Ｓ２０３に処理を進める。Ｓ２０３において、ＣＰＵ４０７は、図５のＳ１０４でランレングス圧縮したデータについて、有効画素の散らばりが通常値（普通）か否かを判断する。本実施例では、ランレングス圧縮した結果のサイズが、通常値（すなわち、ランレングス圧縮の圧縮率が適量）の場合に該当するよう判断する構成とした。
【００５７】
そして、Ｓ２０３において、有効画素の散らばりが通常（すなわち、ランレングス圧縮の圧縮率が適度（中））と判断した場合（Ｓ２０３でＹｅｓの場合）、ＣＰＵ４０７は、Ｓ２０４に処理を進める。Ｓ２０４では、ＣＰＵ４０７は、図８のトナー使用量補正テーブル７０１から該当する補正値７０３を取得し、Ｓ２０６に処理を移行する
【００５８】
一方、上記Ｓ２０１において、有効画素の散らばりが通常（すなわち、ランレングス圧縮の圧縮率が適度（中））でないと判断した場合（Ｓ２０３でＮｏの場合）、ＣＰＵ４０７は、Ｓ２０５に処理を進める。Ｓ２０５において、ＣＰＵ４０７は、図８のトナー使用量補正テーブル７０１から該当する補正値７０４を取得し、Ｓ２０６に処理を移行する
【００５９】
次に、Ｓ２０６において、ＣＰＵ４０７は、上記Ｓ２０２、Ｓ２０４又はＳ２０５で取得した補正値（図８の補正値７０２、７０３、７０４）に、補正有りを示すデータが格納されている（補正値に有効データが有る）か否かを判断する。
【００６０】
そして、補正有りを示すデータが格納されている（補正値に有効データが有る）と判断した場合（Ｓ２０６でＹｅｓの場合）、ＣＰＵ４０７は、Ｓ２０７に処理を進める。Ｓ２０７において、ＣＰＵ４０７は、図５のＳ１０５で求めた使用量６０４に対して、図８の補正値７０２、７０３又は７０４に格納された値による補正処理を行い、本処理を終了する。
【００６１】
一方、補正有りを示すデータが格納されていない（補正値に有効データがない"補正なし"）と判断した場合（Ｓ２０６でＮｏの場合）、ＣＰＵ４０７は、Ｓ２０８に処理を進める。Ｓ２０８において、ＣＰＵ４０７は、図５のＳ１０５で求めた使用量６０４に対する補正処理を行わず、本処理を終了する。
【００６２】
（トナー使用量を算出するためのテーブルの説明）
図７は、本実施例のトナー使用量算出テーブルの一例を示す図である。トナー使用量算出テーブルは、例えば、不揮発性メモリＥＥＰＲＯＭ４１０に格納され、コントローラ３０２におけるＣＰＵ４０７によりアクセス可能である。また、トナー使用量算出テーブルは、テストチャートなどから実際に消費するトナー使用量を実測した値を格納し、乖離が少ない使用量を算出できるように構成されている。
【００６３】
本トナー使用量算出テーブル６０１は、エンジンタイプごとに存在し、有効ドットの占有率６０２と用紙サイズ６０３から、トナー使用量６０４を導きだせる構成とした。
なお、本実施例における有効ドットの占有率６０２は、０％、２５％、５０％、７５％、１００％と２５％刻みにしたが、これにこだわるものではなく、１０％単位や５％単位など、もっと細かな範囲で算出できるようにしてもよい。
【００６４】
また、本実施例におけるトナー使用量６０４は、ラインもしくはブロック単位の使用量を格納することで、細かな単位で算出可能とし、実際に使用されるトナー量との乖離が少ない使用量を予測（算出）できるようにした。
【００６５】
（トナー使用量を補正するためのテーブルの説明）
図８は、本実施例のトナー使用量補正テーブルである。トナー使用量補正テーブルは、例えば、不揮発性メモリＥＥＰＲＯＭ４１０に格納され、コントローラ３０２のＣＰＵ４０７よりアクセス可能である。また、トナー使用量補正テーブルは、図９に示す画面により、ユーザが値を調整でき、実際に使用されるトナー量と乖離が少なくなるよう補正できるように構成されている。
【００６６】
本実施例では、トナー使用量を補正するために、有効画素の散らばり具合で補正できる構成とした。なお、有効画素の散らばり具合を判断する条件としては、有効画素が散らばるとランレングス圧縮の圧縮率が低下する。また、散らばりの少ないデータでは、ランレングス圧縮の圧縮率が上がるという特性を利用している。
【００６７】
ランレングス圧縮の圧縮率が低い場合は、"散らばり大"の７０２の補正値を用いる。また、圧縮率が適量な場合は、通常時の補正を行うため７０３の値を使用する。また、ランレングス圧縮の圧縮率が高い場合は、"散らばり小（密集している）"の７０４の補正値を使用する。本実施例においては、７０２、７０３、７０４の各補正値は、トナー使用量補正値設定画面８０１により更新・設定可能とした。
【００６８】
（トナー使用量を補正するための値を設定・更新するための仕組みの説明）
図９は、本実施例のトナー使用量補正値設定画面である。トナー使用量補正値設定画面は、コントローラ３０２のＣＰＵ４０７の制御により、パネルＩ／Ｆ部４０１を介してパネル部３０１に表示され、オペレータであるユーザからの値の設定・更新を可能にしている。なお、本画面で設定された値は、図８のトナー使用量補正テーブルの７０２、７０３、７０４に格納され、不揮発性メモリＥＥＰＲＯＭ４１０にて保持されるものとする。
【００６９】
図９において、８０１はトナー使用量補正値設定画面であり、コントローラ３０２のＣＰＵ４０７により、パネルＩ／Ｆ部４０１を介してパネル部３０１に表示される。８０２は有効画素が散らばっている場合（散らばり「大」）の補正値であり、図７の７０２に格納・保持される。８０３は有効画素が通常の散らばり具合（散らばり「普通（中）」）に使用する補正値であり、図７の７０３に格納・保持される。８０４は有効画素が密集している場合（散らばり「小」）の補正値であり、図７の７０４に格納・保持される。なお、本実施例では、８０２〜８０４を、「補正なし」もしくは「０．０５％」単位に補正値を増減できる構成とするが、この構成に限定されるものではなく、補正値の増減単位はいくつでもよい。
【００７０】
８０５は設定指示ボタンで、本画面で設定した値を不揮発性メモリＥＥＰＲＯＭ４１０に書き込ませるためのものである。８０６は戻るボタンで、本画面で設定した値を不揮発性メモリＥＥＰＲＯＭ４１０に書き込ませることなく、前の画面に表示を戻すためのものである。
【００７１】
なお、上記実施例では、印刷剤の一例としてトナーを用いて説明したが、トナー以外の印刷剤であっても本発明は適用可能である。例えば、印刷剤としてインクを用いても本発明を適用可能である。
また、上記実施例では、１種類の印刷剤にのみ着目して説明したが、複数の印刷剤を用いて画像形成可能な画像形成装置の場合、印刷剤ごとにそれぞれ図４で示した処理を実行し、印刷剤ごとにそれぞれ印刷剤の残量を求めるものとする。
【００７２】
この場合、コントローラ３０２は、印刷剤ごとに、印刷データにおける各ページについて、ラインまたはブロック単位で、印刷剤により印刷する画素と他の画素との構成比率から印刷剤により印刷する画素の占有率を求める。また、コントローラ３０２は、印刷剤ごとに、上記占有率と印刷に用いる用紙サイズから印刷剤の消費量を求める。さらに、コントローラ３０２は、印刷剤ごとに、印刷剤により印刷する画素の散らばりの度合いに対応する補正値を用いて、上記求めた印刷剤の消費量を補正する。また、コントローラ３０２は、印刷剤ごとに、上記補正された印刷剤の消費量を用いて、印刷剤の残量を求める。
【００７３】
また、上記実施例では、トナー使用量算出テーブル（図７）を用いて、有効ドットの占有率と印刷に用いる用紙サイズとに対応する印刷剤の消費量を求める構成を示した。しかし、用紙サイズごとに、有効ドットの占有率からトナー使用量を算出するための算出式を用意しておき、印刷に用いる用紙サイズに対応する算出式を用いて、有効ドットの占有率と印刷に用いる用紙サイズとに対応する印刷剤の消費量を求めるようにしてもよい。
【００７４】
以上の構成により、トナーやインク等の印刷剤の消費量を精度良く算出することができる。そして、印刷剤容器内の印刷剤の残量（例えばトナー容器内のトナー残量）を精度良く求め、物理残量との乖離（誤差）の少ない残量表示等の通知をユーザ等に行うことができる。また、本発明によれば、ドットカウンタを備えていない画像形成装置であっても、印刷剤の消費量を精度良く求めることができ、印刷剤容器内の印刷剤の残量を精度良く求めることができる。
【００７５】
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
また、上記各実施例を組み合わせた構成も全て本発明に含まれるものである。
【００７６】
（他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。
本発明は上記実施例に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施例の有機的な組合せを含む）が可能であり、それらを本発明の範囲から除外するものではない。即ち、上述した各実施例及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
【図１】
2015069184.tif 000003
【図２】
2015069184.tif 000004
【図３】
2015069184.tif 000005
【図４】
2015069184.tif 000006
【図５】
2015069184.tif 000007
【図６】
2015069184.tif 000008
【図７】
2015069184.tif 000009
【図８】
2015069184.tif 000010
【図９】
2015069184.tif 000011