(57)【要約】【課題】  ラスタデータのドットカウント値に基づいてトナー消費量を予測する技術において、濃度制御やパルス幅制御等を考慮して、より正確にトナー消費量の予測を行うこと。【解決手段】  ラスタデータのドットカウント値に基づいてトナー消費量を算出する際に、画像形成を行う際の濃度値やパルス幅に応じて、トナー消費量を補正する。【選択図】  図７
2016008980.tif 000002
【特許請求の範囲】
【請求項１】
記録材を用いて画像形成を行う画像形成装置であって、
ラスタデータのドットカウント値を取得する取得手段と、
前記取得手段により取得されたドットカウント値に基づいて、前記記録材の消費量を算出する算出手段と、
画像形成を行う際の濃度値に応じて、前記算出手段により算出された前記記録材の消費量を補正する補正手段と、
を有することを特徴とする画像形成装置。
【請求項２】
複数の濃度値それぞれに対して補正値を対応づけたデータを記憶する記憶手段と、
前記記憶手段に記憶されたデータを参照することにより、画像形成を行う際の濃度値に対応する補正値を特定する特定手段と、を更に有し、
前記補正手段は、前記算出手段により算出された前記記録材の消費量に、前記特定手段により特定された補正値を乗算することにより、前記算出手段により算出された前記記録材の消費量を補正することを特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記画像形成を行う際の濃度値の設定をユーザから受け付ける受付手段を更に有することを特徴とする請求項１又は２に記載の画像形成装置。
【請求項４】
記録材を用いて画像形成を行う画像形成装置であって、
ラスタデータのドットカウント値を取得する取得手段と、
前記取得手段により取得されたドットカウント値に基づいて、前記記録材の消費量を算出する算出手段と、
画像形成を行う際のパルス幅に応じて、前記算出手段により算出された前記記録材の消費量を補正する補正手段と、
を有することを特徴とする画像形成装置。
【請求項５】
複数のパルス幅それぞれに対して補正値を対応づけたデータを記憶する記憶手段と、
前記記憶手段に記憶されたデータを参照することにより、画像形成を行う際のパルス幅に対応する補正値を特定する特定手段と、を更に有し、
前記補正手段は、前記算出手段により算出された前記記録材の消費量に、前記特定手段により特定された補正値を乗算することにより、前記算出手段により算出された前記記録材の消費量を補正することを特徴とする請求項４に記載の画像形成装置。
【請求項６】
前記記憶手段は、複数の印刷モードそれぞれに対して、複数のパルス幅それぞれに対して補正値を対応づけたデータを記憶し、
画像形成を行う際の印刷モードに応じて、前記記憶手段に記憶された複数のデータの中から使用すべきデータを選択する選択手段を更に有し、
前記特定手段は、前記選択手段により選択されたデータを参照することにより、画像形成を行う際のパルス幅に対応する補正値を特定することを特徴とする請求項５に記載の画像形成装置。
【請求項７】
画像形成を行う際の印刷モードをユーザから受け付ける受付手段を更に有することを特徴とする請求項４乃至６の何れか１項に記載の画像形成装置。
【請求項８】
前記算出手段は、前記ドットカウント値に所定値を乗算することにより、前記記録材の消費量を算出することを特徴とする請求項１乃至７の何れか１項に記載の画像形成装置。
【請求項９】
前記補正手段により補正された前記記録材の消費量に基づいて、前記記録材の残量を予測する予測手段を更に有することを特徴とする請求項１乃至８の何れか１項に記載の画像形成装置。
【請求項１０】
前記記録材は、トナーであることを特徴とする請求項１乃至９の何れか１項に記載の画像形成装置。
【請求項１１】
記録材を用いて画像形成を行う画像形成装置の制御方法であって、
ラスタデータのドットカウント値を取得する取得工程と、
前記取得工程により取得されたドットカウント値に基づいて、前記記録材の消費量を算出する算出工程と、
画像形成を行う際の濃度値に応じて、前記算出工程により算出された前記記録材の消費量を補正する補正工程と、
を有することを特徴とする制御方法。
【請求項１２】
記録材を用いて画像形成を行う画像形成装置の制御方法であって、
ラスタデータのドットカウント値を取得する取得工程と、
前記取得工程により取得されたドットカウント値に基づいて、前記記録材の消費量を算出する算出工程と、
画像形成を行う際のパルス幅に応じて、前記算出工程により算出された前記記録材の消費量を補正する補正工程と、
を有することを特徴とする制御方法。
【請求項１３】
記録材を用いて画像形成を行う画像形成装置に、
ラスタデータのドットカウント値を取得する取得工程と、
前記取得工程により取得されたドットカウント値に基づいて、前記記録材の消費量を算出する算出工程と、
画像形成を行う際の濃度値に応じて、前記算出工程により算出された前記記録材の消費量を補正する補正工程と、
を実行させるためのプログラム。
【請求項１４】
記録材を用いて画像形成を行う画像形成装置に、
ラスタデータのドットカウント値を取得する取得工程と、
前記取得工程により取得されたドットカウント値に基づいて、前記記録材の消費量を算出する算出工程と、
画像形成を行う際のパルス幅に応じて、前記算出工程により算出された前記記録材の消費量を補正する補正工程と、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置、制御方法、及びプログラムに関する。
【背景技術】
【０００２】
画像形成装置は、トナー等の記録材を用いて、シートに画像形成を行う。一般的に、記録材は、カートリッジ等の収容部に収容されている。
【０００３】
従来、ラスタデータのドットカウント値に基づいて、カートリッジにおけるトナー残量を予測する技術が知られている（特許文献１）。具体的には、ラスタデータのドットカウント値に基づいてトナー消費量を算出し、現在のトナー残量から今回のトナー消費量を減算することにより、トナー残量を算出する。ここで、トナー消費量は、ラスタデータのドットカウント値に対して、装置ごとに予め定められたトナー消費係数を乗算することにより算出することが一般的であった。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−３４３６２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、トナー消費量は、ラスタデータのドットカウント値に対して、単純に比例するとは限らない。
【０００６】
例えば、ユーザによる濃度設定に従って現像バイアス電圧を変化させる濃度制御や、ユーザによる印字モード設定に従って１ドットの露光量を変化させるパルス幅制御等が変化すると、予測されるトナー消費量の誤差が大きくなってしまうことがある。
【０００７】
本発明は、ラスタデータのドットカウント値に基づいてトナー消費量を予測する技術において、濃度制御やパルス幅制御等を考慮して、より正確にトナー消費量の予測を行うことを目的とする。
【課題を解決するための手段】
【０００８】
本発明に係る画像形成装置は、記録材を用いて画像形成を行う画像形成装置であって、ラスタデータのドットカウント値を取得する取得手段と、前記取得手段により取得されたドットカウント値に基づいて、前記記録材の消費量を算出する算出手段と、画像形成を行う際の濃度値に応じて、前記算出手段により算出された前記記録材の消費量を補正する補正手段と、を有することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、ラスタデータのドットカウント値に基づいてトナー消費量を予測する技術において、濃度制御やパルス幅制御等を考慮して、より正確にトナー消費量の予測を行うことが可能となる。
【図面の簡単な説明】
【００１０】
【図１】画像形成装置の構成を示すブロック図
【図２】コントローラの構成を示すブロック図
【図３】プリントエンジンの構成を示すブロック図
【図４】トナーの残量検知の制御を示すフローチャート（前半）
【図５】トナーの残量検知の制御を示すフローチャート（後半）
【図６】トナー残量のカレント値の推移を示す図
【図７】トナー残量の予測値の算出処理の詳細を示すフローチャート
【図８】濃度値によるトナー消費量の補正処理の詳細を示すフローチャート
【図９】パルス幅によるトナー消費量の補正処理の詳細を示すフローチャート
【図１０】濃度値と消費予測濃度補正値の対応表
【図１１】（Ａ）印刷モードとパルス幅テーブルの対応表  （Ｂ）通常印刷時における諧調と消費予測パルス幅補正値の対応表  （Ｃ）バーコード印刷時における諧調と消費予測パルス幅補正値の対応表  （Ｄ）高品質印刷時における諧調と消費予測パルス幅補正値の対応表
【発明を実施するための形態】
【００１１】
〔第１の実施形態〕
図１は、画像形成装置の構成を示すブロック図である。
【００１２】
データ処理装置１０１（例えばＰＣ）は、画像データを生成し、当該画像データを画像形成装置１０２に送信する。
【００１３】
画像形成装置１０２（例えばレーザープリンタ）は、データ処理装置１０１から画像データを受信し、当該画像データに基づいてシートに画像形成を行う。なお、画像形成装置１０２は、スキャナ機能やＦＡＸ機能等を有する複合機であってもよい。
【００１４】
ＵＩ３０１は、ユーザインターフェースであり、ユーザに様々な情報を伝える表示部や、ユーザから様々な操作を受付または受け付ける操作部を有する。表示部には、後述するトナー残量のカレント値が表示される。なお、トナー残量のカレント値は、外部Ｉ／Ｆを介してデータ処理装置１０１等の外部装置に送信し、データ処理装置１０１等の外部装置が有する表示部に表示してもよい。
【００１５】
コントローラ３０２は、ＰＤＬデータに基づいてビットマップデータを生成し、当該ビットマップデータをプリントエンジン３０３に送信する。コントローラ３０２の詳細は、図２を用いて後述する。
【００１６】
プリントエンジン３０３は、コントローラ３０２から受信したビットマップデータに基づいて、電子写真方式でトナーを用いてシートに画像形成を行う。なお、画像形成の方式は、電子写真方式以外の、例えばインクジェット方式等でもよい。この場合、電子写真方式の記録材はトナーであるが、インクジェット方式の記録材はインクである。プリントエンジン３０３の詳細は、図３を用いて後述する。
【００１７】
なお、コントローラ３０２とプリントエンジン３０３は、別体としているが、一体であってもよい。
【００１８】
図２は、コントローラの構成を示すブロック図である。
【００１９】
ＣＰＵ４０１は、ＲＯＭ４０２に格納されたプログラムをＲＡＭ４０３に展開し、当該プログラムを実行して画像形成装置１０２の制御を行う。また、ＣＰＵ４０１は、後述するように、ドットカウント部４０９でカウントされるドットカウントから換算されるトナー消費量の予測値や、プリントエンジン３０３から通知されるトナー残量のセンサー値に基づいて、トナー残量を算出する。そして、ＣＰＵ４０１は、算出したトナー残量を、パネルＩ／Ｆ４０５を介してＵＩ３０１に表示したり、外部Ｉ／Ｆ４０４を介してデータ処理装置１０１に通知したりする。
【００２０】
ＲＯＭ４０２は、ＣＰＵ４０１が実行するプログラム等を記憶する。
【００２１】
ＲＡＭ４０３は、ＲＯＭ４０２から展開されたプログラム等を記憶する。また、ＲＡＭ４０３は、ＰＤＬデータ、ＰＤＬデータを解釈して生成される中間データ、中間データをレンダリングして生成されるビットマップデータ、その他の処理に必要な一時的な各種処理ステータスやログ情報等も記憶する。
【００２２】
外部Ｉ／Ｆ４０４は、データ処理装置１０１とコントローラ３０２とを相互に接続し、双方間のデータ通信すなわちデータの送信や受信を中継する。
【００２３】
パネルＩ／Ｆ４０５は、ＵＩ３０１とコントローラ３０２とを相互に接続し、双方間のデータ通信すなわちデータの送信や受信を中継する。
【００２４】
エンジンＩ／Ｆ４０６は、プリントエンジン３０３とコントローラ３０２とを相互に接続し、双方間のデータ通信すなわちデータの送信や受信を中継する。
【００２５】
ＤＭＡＣ４０７は、ＣＰＵ４０１から命令を受け、ＲＡＭ４０３に対してデータアクセスすなわちデータの書き込みや読み出しを行う。
【００２６】
レンダリング部４０８は、中間データをビットマップデータに展開する。
【００２７】
ドットカウント部４０９は、展開されたビットマップデータに含まれるドットのうち、画像形成を行う際にトナーを消費するドットの数をカウントする。具体的には、白以外の色のドット数がカウントされる。例えば、モノクロ印刷の場合は、Ｋ（黒）に対応するドット数である。また、カラー印刷の場合は、Ｙ（イエロー）・Ｍ（マゼンダ）・Ｃ（シアン）・Ｋ（黒）の何れかに対応するドットの数である。なお、ドット数のカウントは、ＣＰＵ４０１やレンダリング部４０８が行ってもよい。
【００２８】
ＥＥＰＲＯＭ４１０は、画像形成装置１０２の設定情報等を記憶する。
【００２９】
バス４１１は、コントローラ３０２内の各構成を相互に接続する。
【００３０】
図３は、プリントエンジンの構成を示すブロック図である。
【００３１】
ＣＰＵ５０１は、ＲＯＭ５０２に格納されたプログラムをＲＡＭ５０３に展開し、当該プログラムを実行してプリントエンジン３０３の制御を行う。
【００３２】
ＲＯＭ５０２は、ＣＰＵ５０１が実行するプログラム等を記憶する。
【００３３】
ＲＡＭ５０３は、ＲＯＭ５０２から展開されたプログラム等を記憶する。
【００３４】
トナー残量センサー５０４は、カートリッジ５０９に含まれるトナー残量を計測する。センサーにおけるトナー残量の検知方式としては、例えば、透磁率検知式、マグネット式、圧電振動式、透過光式等が存在する。センサーは、例えば、トナー残量が２０％、０％等の所定値に達した場合に、その値をセンサー値として検知する。つまり、トナー残量が１００％〜２１％であるときは１００％、トナー残量が２０％〜１％であるときは２０％、トナー残量が０％であるときは０％として検知する。なお、センサーは、カートリッジ５０９の中に備えられることとしてもよい。
【００３５】
駆動制御部５０５は、画像形成部５０８が画像形成を行う際に必要な各種モーターを駆動させる。
【００３６】
ステータス変化検知部５０６は、画像形成装置におけるジャムやカバーオープン等のステータス変化を検知する。また、ステータス変化検知部５０６は、カートリッジ５０９の交換も検知する。なお、テータス変化の検知は、ＣＰＵ５０１が行うこととしてもよい。
【００３７】
コントローラＩ／Ｆ５０７は、コントローラ３０２とプリントエンジン３０３とを相互に接続し、双方間のデータ通信すなわちデータの送信や受信を中継する。
【００３８】
画像形成部５０８は、コントローラ３０２から受信したビットマップデータに基づいて、電子写真方式でトナーを用いてシートに画像形成を行う。
【００３９】
カートリッジ５０９は、トナーを収容する収容部として、画像形成装置１０２に装着可能な所謂プロセスカートリッジであり、画像形成部５０８が画像形成を行う際に使用するトナー等を格納する。また、カートリッジ５０９は、不揮発性の記憶媒体を有し、その中にはカートリッジ情報が記憶される。カートリッジ情報には、例えば、カートリッジが新品か否かを示す情報、カートリッジの色を示す色情報、カートリッジの現在のトナー残量を示すトナー残量情報等が含まれる。なお、カートリッジ５０９は、バス５１０には接続されているが、専用線を介してＣＰＵ５０１と接続されることとしてもよい。
【００４０】
バス５１０は、プリントエンジン３０３内の各構成を相互に接続する。
【００４１】
図４及び図５は、トナーの残量検知の制御を示すフローチャートである。
【００４２】
左側のフローチャートに示す制御は、コントローラ３０２において、ＣＰＵ４０１がＲＯＭ４０２に格納された制御プログラムをＲＡＭ４０３に展開して実行することにより実現される。また、右側のフローチャートに示す制御は、プリントエンジン３０３において、ＣＰＵ５０１がＲＯＭ５０２に格納された制御プログラムをＲＡＭ５０３に展開して実行することにより実現される。
【００４３】
まず、ＣＰＵ５０１は、カートリッジ５０９が交換されたか否か判断する（Ｓ２０１）。これは、画像形成装置１０２にカートリッジ５０９が新たに装着されたことを検出することによって判断する。カートリッジ５０９が装着されたことは、ステータス変化検知部５０６がカートリッジ５０９の装着を検知しＣＰＵ５０１に通知することによって認識される。カートリッジ５０９の装着は、カートリッジ５０９を交換するために設けられたカバーの開閉よって検知してもよいし、部品の着脱に応じてハード的にオン／オフ状態が変化するボタンやスイッチ等によって検知してもよい。Ｓ２０１でＹＥＳの場合、Ｓ２０２に進む。Ｓ２０１でＮＯの場合、待機する。
【００４４】
次に、ＣＰＵ５０１は、カートリッジ５０９が交換された旨を示すカートリッジ交換通知を、コントローラＩ／Ｆ５０７を介してコントローラ３０２へ送信する（Ｓ２０２）。
【００４５】
次に、ＣＰＵ４０１は、カートリッジ交換通知を、エンジンＩ／Ｆ４０６を介してプリントエンジン３０３から受信したか否か判断する（Ｓ１０１）。Ｓ１０１でＹＥＳの場合、Ｓ１０２に進む。Ｓ１０１でＮＯの場合、待機する。
【００４６】
次に、ＣＰＵ４０１は、カートリッジ５０９のカートリッジ情報を要求するカートリッジ情報要求を、エンジンＩ／Ｆ４０６を介してプリントエンジン３０３へ送信する（Ｓ１０２）。
【００４７】
次に、ＣＰＵ５０１は、カートリッジ情報要求を、コントローラＩ／Ｆ５０７を介してコントローラ３０２から受信したか否か判断する（Ｓ２０３）。Ｓ２０３でＹＥＳの場合、Ｓ２０４に進む。Ｓ２０３でＮＯの場合、待機する。
【００４８】
次に、ＣＰＵ５０１は、カートリッジ５０９のカートリッジ情報を、コントローラＩ／Ｆ５０７を介してコントローラ３０２へ送信する（Ｓ２０４）。
【００４９】
次に、ＣＰＵ４０１は、カートリッジ情報を、エンジンＩ／Ｆ４０６を介してプリントエンジン３０３から受信したか否か判断する（Ｓ１０３）。Ｓ１０３でＹＥＳの場合、Ｓ１０４に進む。Ｓ１０３でＮＯの場合、待機する。
【００５０】
次に、ＣＰＵ４０１は、カートリッジ情報に基づいて、トナー残量のカレント値の初期化を行う（Ｓ１０４）。ここで、トナー残量のカレント値とは、コントローラ３０２がカートリッジ５０９のトナー残量として認識している値であり、ＵＩ３０１を介してユーザに表示される値である。トナー残量のカレント値の初期化は、具体的には、カートリッジ情報を参照し、カートリッジが新品であることが分かれば、トナー残量のカレント値を１００％に設定する。また、カートリッジが新品であることが分からなければ、トナー残量のカレント値を前述したカートリッジ情報に含まれるトナー残量情報に対応する値に設定する。トナー残量のカレント値は、ＲＡＭ４０３等に保持される。
【００５１】
次に、ＣＰＵ４０１は、画像形成を実行すべきジョブを、外部Ｉ／Ｆ４０４を介してデータ処理装置１０１から入力したか否か判断する（Ｓ１０５）。ここで、ジョブとしては、ＰＤＬ印刷ジョブ、コピージョブ、ＦＡＸ受信印刷ジョブ等が挙げられる。Ｓ１０５でＹＥＳの場合、Ｓ１０６に進む。Ｓ１０５でＮＯの場合、Ｓ１１１へ進む。
【００５２】
次に、ＣＰＵ４０１は、ジョブに基づいて、画像形成に必要な画像処理を実行する（Ｓ１０６）。ここで、画像処理の中には、レンダリング部４０８を制御して、印刷データを展開しラスタデータを生成する処理が含まれる。
【００５３】
次に、ＣＰＵ４０１は、画像処理によって生成されたラスタデータを、エンジンＩ／Ｆ４０６を介してプリントエンジン３０３へ送信する（Ｓ１０７）。
【００５４】
次に、ＣＰＵ４０１は、ドットカウント部４０９から、ラスタデータの生成時に計測されたドットカウント値を取得する（Ｓ１０８）。なお、ドットカウント値は、ページ単位で取得してもよいし、ジョブ単位で取得してもよい。
【００５５】
次に、ＣＰＵ４０１は、Ｓ１０８で取得したドットカウント値に基づいて、トナー残量の予測値の算出処理を実行する（Ｓ１０９）。トナー残量の予測値の算出処理の詳細は、図７を用いて後述する。
【００５６】
次に、ＣＰＵ４０１は、Ｓ１０９で算出した予測値により、トナー残量のカレント値を更新する（Ｓ１１０）。
【００５７】
一方、ＣＰＵ５０１は、ラスタデータを、コントローラＩ／Ｆ５０７を介してコントローラ３０２から受信したか否か判断する（Ｓ２０５）。Ｓ２０５でＹＥＳの場合、Ｓ２０６に進む。Ｓ２０５でＮＯの場合、Ｓ２０８へ進む。
【００５８】
次に、ＣＰＵ５０１は、画像形成部５０８を制御することにより、ラスタデータに基づいて画像形成を実行する（Ｓ２０６）。
【００５９】
次に、ＣＰＵ５０１は、トナー残量センサー５０４から、トナー残量のセンサー値を取得する（Ｓ２０７）。なお、センサー値取得のタイミングは、ページ単位で画像形成が完了したタイミングでもよいし、ジョブ単位で画像形成が完了したタイミングでもよい。また、センサー値取得のタイミングは、所定の時間が経過する度としてもよい。
【００６０】
次に、ＣＰＵ５０１は、今回取得したセンサー値が、前回取得したセンサー値から変化したか否か判断する（Ｓ２０８）。Ｓ２０８でＹＥＳの場合、Ｓ２０９に進む。Ｓ２０８でＮＯの場合、Ｓ２０５に戻る。
【００６１】
次に、ＣＰＵ５０１は、センサー値が変化した旨を示すセンサー値変化通知を、コントローラＩ／Ｆ５０７を介してコントローラ３０２へ送信する（Ｓ２０９）。
【００６２】
次に、ＣＰＵ４０１は、センサー値変化通知を、エンジンＩ／Ｆ４０６を介してプリントエンジン３０３から受信したか否か判断する（Ｓ１１１）。Ｓ１１１でＹＥＳの場合、Ｓ１１２に進む。Ｓ１１１でＮＯの場合、Ｓ１０５に戻る。
【００６３】
次に、ＣＰＵ４０１は、センサー値を要求するセンサー値要求を、エンジンＩ／Ｆ４０６を介してプリントエンジン３０３へ送信する（Ｓ１１２）。
【００６４】
次に、ＣＰＵ５０１は、センサー値要求を、コントローラＩ／Ｆ５０７を介してコントローラ３０２から受信したか否か判断する（Ｓ２１０）。Ｓ２１０でＹＥＳの場合、Ｓ２１１に進む。Ｓ２１０でＮＯの場合、待機する。
【００６５】
次に、ＣＰＵ５０１は、センサー値を、コントローラＩ／Ｆ５０７を介してコントローラ３０２へ送信する（Ｓ２１１）。
【００６６】
次に、ＣＰＵ４０１は、センサー値を、エンジンＩ／Ｆ４０６を介してプリントエンジン３０３から受信したか否か判断する（Ｓ１１３）。Ｓ１１３でＹＥＳの場合、Ｓ１１４に進む。Ｓ１１３でＮＯの場合、待機する。
【００６７】
次に、ＣＰＵ４０１は、Ｓ１１３で受信したセンサー値で、トナー残量のカレント値を更新する（Ｓ１１４）。このとき、今回取得したセンサー値は、ＲＡＭ４０３等に保持しておく。なお、前回取得したセンサー値が保持されていれば、それを今回取得したセンサー値で更新する。
【００６８】
次に、ＣＰＵ４０１は、トナー残量のカレント値を参照して、トナー残量がゼロになったか否か判断する（Ｓ１１５）。Ｓ１１５でＹＥＳの場合、処理を終了する。Ｓ１１５でＮＯの場合、Ｓ１０５に戻る。
【００６９】
一方、ＣＰＵ５０１は、トナー残量のセンサー値を参照して、トナー残量がゼロになったか否か判断する（Ｓ２１２）。Ｓ２１２でＹＥＳの場合、処理を終了する。Ｓ２１２でＮＯの場合、Ｓ２０５に戻る。
【００７０】
図６は、トナー残量のカレント値の推移を示す図である。
【００７１】
２００は、現実のトナー残量の推移を示す。ここで、現実のトナー残量とは、実際に存在しているトナー残量の正確な値であり、例えばセンサーが全体域に渡って非常に精度の良いものでない限り、直接的に取得することは非常に困難である。
【００７２】
２０１〜２０３は、トナー残量のセンサー値の推移を示す。
【００７３】
２１０は、トナー残量のセンサー値のとり得る値を示す。本実施形態では、この値を１００％、２０％、０％としているが、その他の値としてもよい。
【００７４】
２５０は、トナー残量のカレント値の推移を示す。
【００７５】
Ｐ２５１は、カートリッジの交換後、Ｓ１０４においてトナー残量のカレント値を初期化したときに対応する。
【００７６】
Ｐ２５１からＰ２５２の区間は、トナー残量のセンサー値（２０％）を受信するまでの間、Ｓ１０５〜Ｓ１１１のループにおいてトナー残量の予測値を算出してトナー残量のカレント値を更新しているときに対応する。
【００７７】
Ｓ２５２からＳ２５３の区間は、トナー残量のセンサー値（２０％）を受信した際に、Ｓ１０４においてセンサー値（２０％）でトナー残量のカレント値を更新したときに対応する。このとき、ユーザに対してトナーＬＯＷ（トナー残量が少なくなってきたこと）を通知する。
【００７８】
Ｐ２５３からＰ２５４の区間は、トナー残量のセンサー値（０％）を受信するまでの間、Ｓ１０５〜Ｓ１１１のループにおいてトナー残量の予測値を算出してトナー残量のカレント値を更新しているときに対応する。
【００７９】
Ｓ２５４からＳ２５５の区間は、トナー残量のセンサー値（０％）を受信した際に、Ｓ１０４においてセンサー値（０％）でトナー残量のカレント値を更新したときに対応する。このとき、ユーザに対してトナーＯＵＴ（トナー残量が無くなったこと）を通知する。
【００８０】
図７は、トナー残量の予測値の算出処理の詳細を示すフローチャートである。
【００８１】
まず、ＣＰＵ４０１は、以下の式に基づいてトナー消費量を算出する（Ｓ３０１）。
【００８２】
Ｓ１  ＝  Ｄ  ×  Ｇ
Ｓ１：トナー消費量［ｇ］
Ｄ：ドット数［ｄｏｔ］
Ｇ：１ドットあたりのトナー消費量［ｇ／ｄｏｔ］
ここで、１ドットあたりのトナー消費量は、ＲＯＭ４０２に予め格納されていてもよいし、Ｓ１０３で受信したカートリッジ情報に含まれていてもよい。また、×は乗算を意味する。
【００８３】
次に、ＣＰＵ４０１は、Ｓ３０１で算出したトナー消費量に対して、濃度値によるトナー消費量の補正処理を実行する（Ｓ３０２）。濃度値によるトナー消費量の補正処理の詳細は、図８を用いて後述する。
【００８４】
次に、ＣＰＵ４０１は、Ｓ３０２で補正処理を実行した後のトナー消費量に対して、パルス幅によるトナー消費量の補正処理を実行する（Ｓ３０３）。パルス幅によるトナー消費量の補正処理の詳細は、図９を用いて後述する。
【００８５】
なお、本実施形態では、Ｓ３０２の後にＳ３０３を行うこととしたが、この順番を逆にしてもよい。
【００８６】
次に、ＣＰＵ４０１は、Ｓ３０３で補正処理を実行した後のトナー消費量を用いて、以下の式に基づいてトナー残量を算出する（Ｓ３０４）。
【００８７】
Ｚ  ＝  Ｃ  −  Ｓ３
Ｚ：新たなトナー残量［ｇ］
Ｃ：現在のトナー残量［ｇ］
Ｓ３：トナー消費量（パルス幅補正済）［ｇ］
さらに、以下の式に基づいて、トナー残量を％で算出してもよい。
【００８８】
Ｚ’  ＝  Ｚ／Ｍ
Ｚ’：新たなトナー残量［％］
Ｚ：新たなトナー残量［ｇ］
Ｍ：カートリッジの未使用状態におけるトナー残量［ｇ］
ここで、カートリッジの未使用状態におけるトナー残量は、ＲＯＭ４０２に予め格納されていてもよいし、Ｓ１０新たなトナー残量３で受信したカートリッジ情報に含まれていてもよい。
【００８９】
図８は、濃度値によるトナー消費量の補正処理の詳細を示すフローチャートである。
【００９０】
まず、ＣＰＵ４０１は、現在設定されている濃度値を確認する（Ｓ４０１）。ここで、濃度値は、予めＵＩ３０１を介して１〜５の何れかの値をユーザから値を受け付け、その値をＲＯＭ４０２に記憶しておくものとする。
【００９１】
次に、ＣＰＵ４０１は、図１０を参照し、複数の濃度値の中からＳ４０１で確認した濃度値に対応する消費予測濃度補正値を選択し特定する（Ｓ４０２）。図１０は、濃度値と消費予測濃度補正値の対応表である。この対応表は、ＲＯＭ４０２に記憶しておくものとする。
【００９２】
次に、ＣＰＵ４０１は、Ｓ４０２で選択した消費予測濃度補正値を用いて、以下の式に基づいてＳ３０１で算出したトナー消費量を補正する（Ｓ４０３）。
【００９３】
Ｓ２  ＝  Ｓ１  ×  Ｎ
Ｓ２：トナー消費量（濃度値補正済）［ｇ］
Ｓ１：トナー消費量［ｇ］
Ｎ：消費予測濃度補正値
図９は、パルス幅によるトナー消費量の補正処理の詳細を示すフローチャートである。
【００９４】
まず、ＣＰＵ４０１は、印刷ジョブに設定されている印刷モードを確認する（Ｓ５０１）。ここで、印刷モードは、印刷ジョブの印刷設定として、通常印刷、バーコード印刷、高品質印刷の何れかが設定されているものとする。
【００９５】
次に、ＣＰＵ４０１は、Ｓ５０１で確認した印刷モードが通常印刷であるか否か判断する（Ｓ５０２）。Ｓ５０２でＹＥＳの場合、処理を終了する。Ｓ５０２でＮＯの場合、Ｓ５０３に進む。
【００９６】
次に、ＣＰＵ４０１は、Ｓ５０１で確認した印刷モードがバーコード印刷であるか否か判断する（Ｓ５０３）。Ｓ５０３でＹＥＳの場合、Ｓ５０４に進む。Ｓ５０７でＮＯの場合、Ｓ５０３に進む。
【００９７】
次に、ＣＰＵ４０１は、図１１（Ａ）を参照し、バーコード印刷に対応するパルス幅テーブルとして、テーブル２を選択する（Ｓ５０４）。図１１（Ａ）は、印刷モードとパルス幅テーブルの対応表である。この対応表は、ＲＯＭ４０２に記憶しておくものとする。
【００９８】
次に、ＣＰＵ４０１は、Ｓ５０４で選択したテーブル２に対応する図１１（Ｃ）の消費予測濃度補正値を用いて、以下の式に基づいてＳ４０３で算出したトナー消費量を補正する（Ｓ５０５）。図１１（Ｃ）は、バーコード印刷時における諧調と消費予測パルス幅補正値の対応表である。この対応表は、ＲＯＭ４０２に記憶しておくものとする。
【００９９】
Ｓ３  ＝  Ｓ２  ×  Ｐ１
Ｓ３：トナー消費量（パルス幅補正済）［ｇ］
Ｓ２：トナー消費量（濃度値補正済）［ｇ］
Ｐ１：諧調１の消費予測パルス幅補正値
次に、ＣＰＵ４０１は、図１１（Ａ）を参照し、高品質印刷に対応するパルス幅テーブルとして、テーブル３を選択する（Ｓ５０６）。
【０１００】
次に、ＣＰＵ４０１は、ドットカウント部４０９によりカウントされたドット数のうち、諧調が１〜３に対応するドット率をそれぞれ確認する（Ｓ５０７）。
【０１０１】
次に、ＣＰＵ４０１は、Ｓ５０６で選択したテーブル３に対応する図１１（Ｄ）の消費予測濃度補正値を用いて、以下の式に基づいてＳ４０３で算出したトナー消費量を補正する（Ｓ５０８）。図１１（Ｄ）は、高品質印刷時における諧調と消費予測パルス幅補正値の対応表である。この対応表は、ＲＯＭ４０２に記憶しておくものとする。
【０１０２】
Ｓ３  ＝  Ｓ２×｛（Ｒ１×Ｐ１）＋（Ｒ２×Ｐ２）＋（Ｒ３×Ｐ３）｝／１００
Ｓ３：トナー消費量（パルス幅補正済）［ｇ］
Ｓ２：トナー消費量（濃度値補正済）［ｇ］
Ｒ１：階調１のドット率［％］
Ｐ１：階調１の消費予測パルス幅補正値
Ｒ２：階調２のドット率［％］
Ｐ２：階調２の消費予測パルス幅補正値
Ｒ３：階調３のドット率［％］
Ｐ３：階調３の消費予測パルス幅補正値
なお、本実施形態では、Ｓ５０２でＹＥＳの場合、パルス幅によるトナー消費量の補正処理を省略しているが、図１１（Ｂ）の消費予測濃度補正値を用いて、Ｓ５０５と同様の式に基づいてＳ４０３で算出したトナー消費量を補正することとしてもよい。この結果としては、諧調１の消費予測パルス幅補正値が１であるため、パルス幅によるトナー消費量の補正処理を省略した場合と同様となる。
【０１０３】
〔他の実施形態〕
本発明は、以下の処理を実行することによっても実現される。
【０１０４】
即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2016008980.tif 000003
【図２】
2016008980.tif 000004
【図３】
2016008980.tif 000005
【図４】
2016008980.tif 000006
【図５】
2016008980.tif 000007
【図６】
2016008980.tif 000008
【図７】
2016008980.tif 000009
【図８】
2016008980.tif 000010
【図９】
2016008980.tif 000011
【図１０】
2016008980.tif 000012
【図１１】
2016008980.tif 000013