以下に、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品および構成要素には同一の符号を付してある。それらの名称および機能も同じである。
図1は、本発明の実施の形態における画像形成装置としてのMFP(Multi Function Peripheral)の概略構成を示す模式的断面図である。本実施の形態にかかるMFP1は、タンデム式のカラー印字を行なうものとする。なお、本発明にかかる画像形成装置はタンデム式のカラー印字を行なうMFPに限定されず、モノクロ印字を行なうものであってもよい。また、MFPに限定されず、プリンタや複写機であってもよい。
図1を参照して、MFP1には、大きくは、スキャナ装置10と、作像部20と、印字媒体である用紙の搬送部30と、後処理装置40と、排紙装置50と、制御部60と、図示されないコンピュータ等の外部機器と通信を行なうための外部機器IF(インタフェース)70と、ファクシミリ(FAX)通信を行なうための回線に接続するFAX回線IF80とを含んで構成される。また、MFP1の正面には、図示されない操作パネルが設けられ、使用者に各種情報を提供したり、操作ボタンを表示して使用者からの操作を受付けたりする。
スキャナ装置10には、スキャナモータにより原稿に沿って移動して原稿全体を走査するスキャナが含まれ、原稿台上に載置された原稿が、図示しない露光ランプにより照射されて走査される。原稿面からの反射光は、スキャナに含まれるCCD(Charge Coupled Device)によってRGBの色データ(アナログ信号)に変換されて、図示されないスキャナ制御部に出力される。CCDがスキャナ制御部に出力する色データを、画像データという。スキャナ制御部は、CCDから入力される画像データに所定の画像処理を施して作像部20にデジタル信号を出力する。スキャナ制御部から出力されるデジタル信号は、シアン用の画像色データCと、マゼンタ用の画像色データMと、イエロー用の画像色データYと、ブラック用の画像色データKとである。
制御部60は、シリアル通信を行なうための回線と画像バスとで接続された、エンジン制御部61とプリンタコントローラ部65とを含んで構成され、MFP1全体の制御を行なう。制御部60については後述する。
作像部20は、印刷制御部21と、中間転写ベルト22と、シアン、マゼンタ、イエロー、ブラックそれぞれの感光体ドラム23C,23M,23Y,23K(これらを代表させて感光体ドラム23と称する)と、定着部24とを備えて構成される。
感光体ドラム23はその表面が一様に帯電される。印刷制御部21は、エンジン制御部61からの制御信号に従って、入力された画像色データC,M,Y,Kに基づいて、シアン、マゼンタ、イエロー、ブラックそれぞれの感光体ドラム23C,23M,23Y,23Kにレーザビームを出力する。これにより、感光体ドラム23表面が露光されて潜像が形成され、トナーが供給されることで各色のトナー画像が現像される。感光体ドラム23表面に現像されたトナー画像は中間転写ベルト22に転写される。
搬送部30は、印刷用紙を格納するカセット31と、カセット31から中間転写ベルト22および定着部24を経て後処理装置40まで用紙を搬送する搬送路32とを含んで構成される。搬送路32に沿って複数のローラが備えられ、エンジン制御部61からの制御信号に従ってこれらが回転することで搬送路32内を印刷用紙が搬送される。中間転写ベルト22まで搬送された印刷用紙には、中間転写ベルト22上のトナー画像が転写される。トナー画像が転写された印刷用紙はさらに定着部24まで搬送されて、定着部24で熱圧着される。
後処理装置40は、印字後の用紙にパンチ穴を空けるパンチユニット41、折加工する折ユニット42、およびステープル加工するステープラ43を含んで構成される。印字後の用紙は、エンジン制御部61からの制御信号に従ってこれらの後処理が施される。
排紙装置50は、複数の排紙トレーと、エンジン制御部61からの制御信号に従って後処理装置40から搬送されてきた用紙をこれら複数の排紙トレーに振り分けて排出するための機構とを含んで構成される。
図2は、MFP1の制御構成を示すブロック図であり、主に、上記エンジン制御部61およびプリンタコントローラ部65の構成を示すブロック図である。図2を参照して、エンジン制御部61は、CPU(Central Processing Unit)611、ROM(Read Only Memory)612、RAM(Random Access Memory)613、IF制御部614、不揮発性メモリ615、拡張I/O(Input/Output)616、温度センサや湿度センサなどの環境条件を検出するための環境センサ617、モータやソレノイドやクラッチや高圧電源やリレーなどの画像形成動作や安定化動作に必要な構成を動作させるための機構618、中間転写ベルト22上のトナー画像の濃度を検出するトナー濃度センサ(IDC(Image Density Control)センサ)619、各色の感光体ドラム23を露光するためのレーザダイオード620、各色の感光体ドラム23が格納される図示しないトナーカートリッジに関する情報を記憶するためのトナーカートリッジメモリ621を含んで構成される。プリンタコントローラ部65は、画像処理コントローラ651とパネルコントローラ653とを含んで構成される。
画像処理コントローラ651は、外部機器IF70およびFAX回線IF80に接続されて、これらから印字指示と画像データとを受け取る。さらに、画像処理コントローラ651は、パネルコントローラ653およびスキャン装置10に接続されて、パネルコントローラ653から入力される図示しない操作パネルからの操作信号に従って、スキャン装置10で読取った画像データを受け取る。画像処理コントローラ651は、さらに、パネルコントローラ653から入力される図示しない操作パネルからの操作信号に従って、取得した画像データに対して指定された画像処理を行なう。画像処理が施された画像データには印字指示などがデータの管理情報として関連付けられて、画像バスを介してエンジン制御部61のIF制御部614に入力される。そして、画像メモリとして機能するRAM613に管理情報と共に格納される。または、データ量に応じては、順次、HDD(Hard Disk Drive)などの他の記憶装置に移されて記憶されてもよい。
エンジン制御部61のCPU611は、ROM612に記憶されているプログラムを読み出して実行し、MFP1の駆動構成を制御する。具体的には、不揮発性メモリ615には、安定化動作を実施するか否かを判断するために用いるしきい値が記憶されている。このしきい値については後述する。CPU611は、環境センサ617やトナー濃度センサ619から得られるセンサ信号、トナーカートリッジメモリ621に記憶されているトナーカートリッジに関する情報などと上記しきい値とを用いて安定化動作を実施するか否かを判断する。そして、その結果に応じてレーザダイオード620に対して発光制御信号を出力する。また、モータ等の安定化動作に必要な構成を動作させるための機構618に対して制御信号を出力する。この制御によって、これらを動作させて安定化処理を実施させる。
MFP1のエンジン制御部61は、所定のタイミングで安定化動作を実施するか否かを判断し、その結果に応じて安定化動作を実施する。本発明において具体的な安定化動作の内容は特定の動作内容には限定されないが、一例として、先に図24に示された動作と同様のものとする。上記所定のタイミングとしては、MFP1に電源が投入されたりスリープ状態から復帰したりした際に行なわれるウォームアップ動作に関連したタイミングと、MFP1の稼動中のタイミングとがある。さらに、稼動中に実施される安定化動作としては、印字動作中に安定化動作を実施すると判断されて自動的に行なわれる動作と、操作パネルなどによって使用者から指示されると行なわれる動作とがある。ウォームアップ動作に関連したタイミングとしては、具体的にはウォームアップ動作後が挙げられる。以降の説明では、ウォームアップ動作に関連したタイミングをウォームアップ動作後として説明するが、ウォームアップ動作前であってもよいし、ウォームアップ動作中であってもよい。これらすべてを含むものとする。なお、以降の説明において、ウォームアップ動作の後に実施される安定化動作を第1安定化動作と称し、印字動作中に実施要と判断されて自動的に実施される安定化動作を第2安定化動作と称し、稼動中に使用者からの指示によって実施される安定化動作を第3安定化動作と称する。MFP1では、第3安定化動作の頻度に基づいて、第1安定化動作および第2安定化動作について設定される実施頻度のレベル(以下、頻度レベルと称される)を調整する。上記ROM612や不揮発性メモリ615には、その調整に用いるためのカウンタやしきい値などの変数が記憶されている。以下の説明では、これらの変数が不揮発性メモリ615に記憶されているものとするが、後述する処理等によって変更されるものではないいくつかの変数はROM612に記憶されていてもよい。
図3は、MFP1のROM612や不揮発性メモリ615などの記憶装置に記憶されている変数の具体例を示す図である。図3を参照して、MFP1の記憶装置は、カウンタCTPRINT1,CTPRINT2,CTSTABI1,CTSTABI2,CTSTABI3,CTWUPと、タイマTIMECOUNTERと、値T0,Tと、しきい値△T1,△T2,CT2と、レベルL1,L2とを記憶する。
カウンタCTPRINT1は、印字頻度計測用の印字枚数を計測するために用いられるカウンタであって、後述の、安定化動作の頻度レベルを変更するための処理が実行されてからの印字枚数を計測するために用いられるカウンタである。カウンタCTPRINT1は、後述する、安定化動作の頻度レベルを変更するか否かを判断する処理において用いられる。CPU611が印字ごとに所定値をカウントアップすることで印字枚数が計測される。カウンタCTPRINT1の値は、安定化動作の頻度レベルを変更すると判断された際にリセットされる。
カウンタCTPRINT2もまた印字枚数を計測するために用いられるカウンタであって、前回の安定化動作時からの印字枚数を計測するために用いられるカウンタである。カウンタCTPRINT2は、後述する、印字動作中に、所定の印字枚数に達するごとに安定化動作を実施する際に、安定化動作を実施すると判断するために用いられる。CPU611が印字ごとに所定値をカウントアップすることで印字枚数が計測される。カウンタCTPRINT2の値は、安定化動作が実施された際にリセットされる。
カウンタCTSTABI1は、前回の安定化動作の頻度レベルを変更するための処理が実行されてからの第1安定化動作の実施回数を計測するために用いられるカウンタである。カウンタCTSTABI2は、前回の安定化動作の頻度レベルを変更するための処理が実行されてからの第2安定化動作の実施回数を計測するために用いられるカウンタである。カウンタCTSTABI3は、前回の安定化動作の頻度レベルを変更するための処理が実行されてからの第3安定化動作の実施回数を計測するために用いられるカウンタである。
カウンタCTWUPは、前回の安定化動作の頻度レベルを変更するための処理が実行されてからの、MFP1の起動回数を計測するために用いられるカウンタであって、電源投入による起動やスリープモードからの復帰の回数を計測するために用いられるカウンタである。言い換えると、起動後や復帰後のウォームアップ動作の回数を計測するために用いられるカウンタとも言える。
タイマTIMECOUNTERは、前回の安定化動作の頻度レベルを変更するための処理が実行されてからの、MFP1の稼働時間を計測するために用いられるタイマであって、印字中や待機中などの、MFP1が動作可能な時間を計測するタイマである。
値T0は前回の安定化動作時の機内環境値であり、値Tは現在の機内環境値である。環境値としては、具体的に温度が挙げられる。その他、湿度であってもよいし、温度と湿度との組合せであってもよい。また、値T0は、安定化動作の種類、つまり第1安定化動作、第2安定化動作、および第3安定化動作ごとの、前回の安定化動作時の機内環境値であってもよい。
しきい値△T1は第1安定化動作を実施するか否かを機内環境値を用いて判断する際に用いられるしきい値であり、しきい値△T2は第2安定化動作を機内環境値を用いて実施するか否かを判断する際に用いられるしきい値である。しきい値CT2は第2安定化動作を印字枚数を用いて実施するか否かを判断する際、つまり、所定の印字枚数ごとに第2安定化動作を行なう場合に、上記所定の印字枚数に達したか否かを判断するために用いられるしきい値である。
レベルL1は、第1安定化動作の頻度レベルであり、レベルL2は、第2安定化動作の頻度レベルである。
図4は、エンジン制御部61で実行される処理の流れの具体例を示すフローチャートである。図4を参照して、ステップS101で各種初期動作が行なわれて、ステップS103で不揮発性メモリ615から必要なデータの読み込みがなされた後、ステップS105で、CPU611において、ウォームアップ動作の制御が実行される。ウォームアップ動作が終了すると、ステップS107でCPU611は、後述する、起動時のウォームアップ動作後の安定化動作である第1安定化動作を実施するか否かを判断する処理を行なう。ステップS107での判断の結果、第1安定化動作を実施する場合(ステップS109でYES)、ステップS111でCPU611は、後述する、第1安定化動作を実施するための処理を実行する。その際、CPU611は、第1安定化動作の実施要求をプリンタコントローラ部65に送信し、後述する、プリンタコントローラ部65での処理によって送信される、安定化動作に用いられる画像パターンおよび安定化実施の指示をIF制御部614を介して受信し、それらに基づいてCPU611は第1安定化動作を実施する。
第1安定化動作が実施された場合(ステップS109でYES)であっても、されなかった場合(ステップS109でNO)であっても、上記ステップS105で起動時のウォームアップ動作が行なわれた後に、ステップS113でCPU611は、上述の、起動回数を計測するためのカウンタCTWUPを更新し、さらにステップS115で稼動時間を計測するためのタイマTIMECOUNTERを更新する。その後、ステップS117でCP611は、後述する、安定化動作を実施するか否かを判断する際に用いられるしきい値等の条件を変更するための処理を実行し、さらに、ステップS119で必要に応じてその他の制御を実行する。上記他の制御については本発明において特定の制御には限定されない。
その後、CPU611は、ステップS121で、所定の、スリープ状態に移行するための条件が成立するか否かを判断する。ここでの判断の方法は本発明において特定の方法には限定されない。そして、スリープ状態に移行する条件が成立したと判断されると(ステップS121でYES)、ステップS123でCPU611はMFP1をスリープ状態とするための制御を実行し、スリープ状態中において、ステップS125でスリープ状態を解除する条件が成立したか否かを判断する。ここでの判断の方法も本発明において特定の方法には限定されない。スリープ状態を解除する条件が成立したと判断されると(ステップS125でYES)、ステップS127でCPU611はスリープ状態を解除するための制御を実行する。
スリープ状態ではない状態、つまり、稼動状態において、後述する、プリンタコントローラ部65における処理によって送信される印字要求をIF制御部614を介して受信すると(ステップS129でYES)、ステップS131でCPU611は、後述する印字制御を実行する。その後、ステップS133でCPU611は、後述する、印字状態における安定化動作である第2安定化動作を実施するか否かを判断する処理を行なう。ステップS133での判断の結果、第2安定化動作を実施する場合(ステップS135でYES)、ステップS137でCPU611は、後述する、第2安定化動作を実施するための処理を実行する。一方、稼動状態において、後述する、プリンタコントローラ部65における処理によって送信される、使用者の指示による安定化動作の実施要求をIF制御部614を介して受信すると(ステップS139でYES)、ステップS141でCPU611は、後述する、使用者の指示による安定化動作である第3安定化動作を実施するための処理を実行する。第2安定化動作または第3安定化動作を実施する際、CPU611は、第2安定化動作または第3安定化動作の実施要求をプリンタコントローラ部65に送信し、後述する、プリンタコントローラ部65での処理によって送信される、安定化動作に用いられる画像パターンおよび安定化動作の実施の指示をIF制御部614を介して受信し、それらに基づいてCPU611は第2安定化動作または第3安定化動作を実施する。その後、処理をステップS115に戻し、CPU611において上述の処理が繰り返される。
図5は、プリンタコントローラ部65で実行される処理の流れの具体例を示すフローチャートである。図5を参照して、ステップS201で各種初期動作が行なわれた後、ステップS203でパネルコントローラ653において図示しない操作パネルで情報を入出力するための処理が実行される。
操作パネルから入力された操作信号がコピー開始を指示する信号である場合(ステップS205でYES)、ステップS207で画像処理コントローラ651はスキャナ装置10に対して制御信号を出力することで原稿を読取らせて画像データを取得し、ステップS209で取得した画像データをエンジン制御部61のRAM613に転送する。PCなどである外部機器から送信された画像データを印字(PCプリント)するための指示が外部機器IF70から入力された場合(ステップS211でYES)、ステップS213で画像処理コントローラ651は外部機器IF70を介して外部機器から画像データを受信し、ステップS209で受信した画像データをエンジン制御部61のRAM613に転送する。FAX回線を介して送信された画像データを印字するための指示がFAX回線IF80から入力された場合(ステップS217でYES)、ステップS219で画像処理コントローラ651はFAX回線IF80を介して画像データをFAX送信元の装置から受信し、ステップS221で受信した画像データをエンジン制御部61のRAM613に転送する。
ステップS209、ステップS215、またはステップS221でRAM613に転送された画像データはRAM613に一時的に保存される。または、必要に応じて、図示しないHDDなどの他の記憶装置に転送されて保存されてもよい。これは、ページ数の多い文書データなどのデータ量の大きい画像データが取得された場合に行なわれる。この場合、好ましくは、RAM613に保存された画像データの量が所定以下になった場合には、HDDからRAM613に順次画像データが戻される。
エンジン制御部61または操作パネルから安定化動作の実施を要求する信号が入力されていない場合、つまり、エンジン制御部61において安定化動作を実施するタイミングと判断されていない場合には(ステップS223でNO)、ステップS233で上述の、RAM613とHDDとの間の画像データの転送処理が実行され、RAM613上に印字すべき画像データがある場合には(ステップS235でYES)、ステップS237で画像処理コントローラ651はエンジン制御部61のIF制御部614を介してRAM613から画像データを取り出し、ステップS239で、画像データに関連付けられている上述の管理情報を参照して、カラー設定や給紙設定や片面または両面印刷の設定などの印字モードを適したモードに切り替えるための情報を生成する。そして、ステップS241で画像処理コントローラ651は、エンジン制御部61に対してステップS239で生成した情報と印字コマンドとを送信した後、ステップS243でシリアル通信を行なって、所定のタイミングで画像データをエンジン制御部61に転送する。エンジン制御部61では、上記印字コマンドで印字動作が開始されて、上記ステップS243で転送された画像データの画像形成動作が行なわれる。
エンジン制御部61または操作パネルから安定化動作の実施を要求する信号が入力された場合、つまり、エンジン制御部61において安定化動作を実施するタイミングと判断された場合または使用者が安定化動作の実施を指示した場合には(ステップS223でYES)、上記ステップS225で上記信号に応じて画像処理コントローラ651において予め記憶されている安定化動作に用いられるパターン画像の画像データが準備されて、ステップS227でエンジン制御部61に対して上記画像データが転送されると共に安定化動作を実施させるコマンドが送信される。エンジン制御部651では、上記コマンドで安定化動作が実施され、その結果がプリントコントローラ部65に入力される。ステップS229で画像処理コントローラ651は、エンジン制御部61から、後述する安定化動作の結果を受け取り、ステップS231で結果を内部パラメータに反映させる。
図6は、上記ステップS107でエンジン制御部61で実行される、第1安定化動作を実施するか否かを判断する処理の流れの具体例を示すフローチャートである。図6を参照して、ステップS301でCPU611は不揮発性メモリ615から、前回の安定化動作時の環境値T0を取得する。ステップS303でCPU611は、拡張I/O616を介して環境センサ617から現在の環境値Tを取得する。さらに、ステップS305でCPU611は不揮発性メモリ615から上述のしきい値△T1を取得する。
ステップS307でCPU611は、環境値T0と環境値Tとの差分としきい値△T1とを比較する。その結果、上記差分がしきい値△T1よりも大なる場合(ステップS307でYES)、ステップS309でCPU611は第1安定化動作を実施すると判断し、実施要求をセットする。つまり、第1安定化動作を実施するか否かの判断においては、CPU611は、現在の機内環境値である機内温度(T)が前回の安定化動作時の機内温度(T0)からしきい値(△T1)以上に変化した場合に、自動的に第1安定化動作を実施すると判断する。上記条件を満たさない場合には(ステップS307でNO)、CPU611は第1安定化動作を実施しないものと判断する。
図7は、上記ステップS111でエンジン制御部61で実行される、第1安定化動作を実施するための処理の流れの具体例を示すフローチャートである。図7を参照して、ステップS401でCPU611は各部に必要な制御信号を出力して、図24に示されたような安定化動作を行なうように制御する。その後、ステップS403でCUP611は、拡張I/O616を介して環境センサ617で検出される現在の機内温度等の環境値Tを取得し、現在の環境値Tを前回安定動作時の環境値T0として不揮発性メモリ615に記憶させる。また、ステップS405でCPU611は、上述の第1安定化動作の実施回数を計測するためのカウンタCTSTABI1を加算し、ステップS407で、上述の、安定化動作実施以降の印字枚数を計測するためのカウンタCTPRINT2をリセットする。そして、ステップS409でCPU611は、第1安定化動作の実施要求をリセットする。
図8は、上記ステップS131でエンジン制御部61で実行される、印字制御の流れの具体例を示すフローチャートである。図8を参照して、ステップS501でCPU611は各部に必要な制御信号を出力して、印字動作を行なうように制御する。その後、ステップS503でCPU611は、上述の、前回の安定化動作の頻度レベルを変更するための処理が実行されてからの印字枚数を計測するためのカウンタCTPRINT1を加算し、ステップS505で、上述の、前回の安定化動作時からの印字枚数を計測するためカウンタCTPRINT2を加算する。
図9は、上記ステップS133でエンジン制御部61で実行される、第2安定化動作を実施するか否かを判断する処理の流れの具体例を示すフローチャートである。図9を参照して、ステップS601でCPU611は不揮発性メモリ615から、前回の安定化動作時の環境値T0を取得する。ステップS603でCPU611は、拡張I/O616を介して環境センサ617から現在の環境値Tを取得する。さらに、ステップS605でCPU611は不揮発性メモリ615から上述のしきい値△T2を取得する。ステップS607でCPU611は、不揮発性メモリ615に記憶されているカウンタCTPRINT2から、前回の安定化動作時からの印字枚数であるカウント値を取得する。また、ステップS609でCPU611は、不揮発性メモリ615から上述のしきい値CT2を取得する。
ステップS611でCPU611は、環境値T0と環境値Tとの差分としきい値△T2とを比較する。その結果、上記差分がしきい値△T2以上である場合(ステップS611でYES)、ステップS615でCPU611は第2安定化動作を実施すると判断し、実施要求をセットする。また、上記差分がしきい値△T2より小なる場合であっても(ステップS611でNO)、カウンタCTPRINT2のカウント値がしきい値CT2以上である場合も(ステップS613でYES)、ステップS615でCPU611は第2安定化動作を実施すると判断し、実施要求をセットする。つまり、第2安定化動作を実施するか否かの判断においては、CPU611は、現在の機内環境値である機内温度(T)が前回の安定化動作時の機内温度(T0)からしきい値(△T2)以上に変化した場合や、前回の安定化動作時からの印字枚数(CTPTINT2)がしきい値である枚数(CT2)に達した場合に、自動的に第2安定化動作を実施すると判断する。そのいずれでもない場合には(ステップS611でNO、かつステップS613でNO)、CPU611は第2安定化動作を実施しないものと判断する。
図10は、上記ステップS137でエンジン制御部61で実行される、第2安定化動作を実施するための処理の流れの具体例を示すフローチャートである。図10を参照して、ステップS701でCPU611は各部に必要な制御信号を出力して、図24に示されたような安定化動作を行なうように制御する。その後、ステップS703でCUP611は、拡張I/O616を介して環境センサ617で検出される現在の機内温度等の環境値Tを取得し、現在の環境値Tを前回安定動作時の環境値T0として不揮発性メモリ615に記憶させる。また、ステップS705でCPU611は、上述の、第2安定化動作の実施回数を計測するためのカウンタCTSTABI2を加算し、ステップS707で、上述の、前回の安定化動作時からの印字枚数を計測するためのカウンタCTPRINT2をリセットする。そして、ステップS709でCPU611は、第2安定化動作の実施要求をリセットする。
上記ステップS223では、プリンタコントローラ部65は図1には図示されない操作パネルから使用者の操作による安定化動作の実施要求を受付け、上記ステップS227でその指示がエンジン制御部61に渡される。エンジン制御部61ではその指示を解析することで、上記ステップS139で使用者からの安定化動作の実施要求がなされたことを判断する。図11(A)〜図11(B)は、操作パネルにおいて安定化動作の実施を指示する操作の具体例を説明する図である。図11(A)は、基本の表示状態の具体例を示している。図11(A)に示される各ボタンのうちの、ユーティリティ設定を行なうための「Utility」ボタンを押下することで、図11(A)の表示が図11(B)に切り替わる。図11(B)の画面に表示されたユーティリティ設定のうち、安定化動作の実施を指示するための「画像安定化」ボタンを押下することで、図11(B)の表示が図11(C)に切り替わる。図11(C)の画面においては、安定化動作の種類として、安定化動作のみを行なうものと、初期化動作に加えて安定化動作を行なうものとが示されている。この画面において安定化動作のみを行なうボタンを選択して押下することで、操作パネルから安定化動作の実施要求がプリンタコントローラ部65に入力される。
図12は、上記ステップS141でエンジン制御部61で実行される、使用者からの指示に従った安定化動作である、第3安定化動作を実施するための処理の流れの具体例を示すフローチャートである。図12を参照して、ステップS801でCPU611は各部に必要な制御信号を出力して、図24に示されたような安定化動作を行なうように制御する。その後、ステップS803でCUP611は、拡張I/O616を介して環境センサ617で検出される現在の機内温度等の環境値Tを取得し、現在の環境値Tを前回安定動作時の環境値T0として不揮発性メモリ615に記憶させる。また、ステップS805でCPU611は、上述の、第3安定化動作の実施回数を計測するためのカウンタCTSTABI3を加算し、ステップS807で、上述の、安定化動作実施以降の印字枚数を計測するためのカウンタCTPRINT2をリセットする。そして、ステップS809でCPU611は、第3安定化動作の実施要求をリセットする。
上記ステップS117でエンジン制御部61で実行される、安定化動作を実施するか否かを判断する際に用いられるしきい値等の、安定化動作を実施する条件を変更するための処理は、使用者からの第3安定化動作の実施要求の回数に基づいて、自動で行なわれる第1安定化動作および第2安定化動作の実施の頻度レベルを、増加させるか、減少させるか、または現状維持とするか、について判断する処理である。なお、現状維持とする場合も含め「条件を変更するための処理」と称するものとする。
図13は、上記処理の流れの第1の具体例を示すフローチャートである。第1の具体例では、所定枚数印字するごとの、第3安定化動作の実施回数(CTSTABI3)に基づいて判断する。上記所定枚数としては、たとえば10000枚が相当する。この「10000枚」は、約1ヶ月の間の印字枚数と想定される枚数である。具体的に、1ヶ月の間に第3安定化動作が3回以上実施された場合、使用者が画質に不満を持っているとして、安定化動作の頻度レベルを増加すると判断する。逆に、1ヶ月の間の第3安定化動作の実施回数が2回未満であった場合には、使用者の所望する画質よりも過剰な画質としているとして、安定化動作の頻度レベルを減少させると判断する。なお、上の枚数や回数のしきい値は一例であり、本発明においてこれらの値に限定されない。特に、上記「所定枚数」はMFP1の印字速度や使用環境によって異なるものである。
図13を参照して、ステップS901でCPU611は、不揮発性メモリ615に記憶されているカウンタCTPRINT1から、前回安定化動作の頻度レベルを変更するための処理が実行されてからの印字枚数であるカウント値を取得する。ステップS903でカウンタCTPRINT1のカウント値と上記「所定枚数」である10000とを比較し、カウンタCTPRINT1のカウント値が所定枚数以上である場合(ステップS903でYES)、CPU611は安定化動作を実施する条件を変更するものと判断し、以降の処理を実行する。カウンタCTPRINT1のカウント値が所定枚数未満である場合(ステップS903でNO)、CPU611は安定化動作を実施する条件を変更しないと判断し、以降の処理をスキップして、本処理を終了する。すなわち、CPU611は、前回安定化動作の頻度レベルを変更するための処理が実行されてからの印字枚数が予め設定されている印字枚数に達するごとに、ステップS905以降の処理を実行して、実施の頻度レベルを増加させる、減少させる、または現状維持とする、かについて判断する。
ステップS905で、CPU611は、不揮発性メモリ615に記憶されているカウンタCTSTABI1から、前回の安定化動作の頻度レベルを変更するための処理が実行されてからの第1安定化動作の実施回数であるカウント値を取得する。ステップS907で、CPU611は、不揮発性メモリ615に記憶されているカウンタCTSTABI2から、前回の安定化動作の頻度レベルを変更するための処理が実行されてからの第2安定化動作の実施回数であるカウント値を取得する。ステップS909で、CPU611は、不揮発性メモリ615に記憶されているカウンタCTSTABI3から、前回の安定化動作の頻度レベルを変更するための処理が実行されてからの第3安定化動作の実施回数であるカウント値を取得する。ステップS911で、CPU611は、不揮発性メモリ615に記憶されているカウンタCTWUPから、前回の安定化動作の頻度レベルを変更するための処理が実行されてからのMFP1の起動回数であるカウント値を取得する。
ステップS913でCPU611は、上記ステップS909で取得した、前回の安定化動作の頻度レベルを変更するための処理が実行されてからの第3安定化動作の実施回数であるカウンタCTSTABI3のカウント値と、上述の、安定化動作の頻度レベルを減少させるか否かを判断するためのしきい値である「2」とを比較する。上記カウント値が2未満でない場合、つまり、2以上である場合(ステップS913でNO)、ステップS915でCPU611は、さらに上記カウント値と、上述の、安定化動作の頻度レベルを増加させるか否かを判断するためのしきい値である「3」とを比較する。
以上の比較の結果、上記カウント値が3以上である場合、つまり、前回の安定化動作の頻度レベルを変更するための処理が実行されてからの第3安定化動作の実施回数が3回以上である場合には(ステップS913でNO、かつステップS915でYES)、CPU611は安定化動作の頻度レベルを増加すると判断し、ステップS917で、後述する、安定化動作の頻度レベルを増加させるための処理を実行する。上記カウント値が2未満である場合、つまり、前回の安定化動作の頻度レベルを変更するための処理が実行されてからの第3安定化動作の実施回数が2回未満である場合には(ステップS913でYES)、CPU611は安定化動作の頻度レベルを減少させると判断し、ステップS919で、後述する、安定化動作の実施頻度を抑制する処理を実行する。上記カウント値が2である場合(ステップS913でNO、かつステップS915でNO)、CPU611は安定化動作の実施頻度を現状維持させると判断し、ステップS917,S919の処理を行なわない。
以上の処理が終わると、CPU611は、カウンタCTSTABI1,CTSTABI2,CTSTABI3,CTPRINT1,CTWUPをリセットし(ステップS921〜S929)、タイマTIMECOUNTERをリセットする(ステップS931)。
図14は、上記処理の流れの第2の具体例を示すフローチャートである。第2の具体例では、所定の稼働時間ごとの、第3安定化動作の実施回数(CTSTABI3)に基づいて判断する。上記所定の稼動時間としては、たとえば稼動時間としては200時間が相当し、スリープ状態で休止している時間をその50%とし、スリープ状態ではない稼動状態での稼動時間(実稼働時間)を100時間する。この「100時間」は、約1ヶ月の間の稼働時間と想定される時間である。第1の具体例と同様に、第2の具体例においても、1ヶ月の間に第3安定化動作が3回以上実施された場合、使用者が画質に不満を持っているとして、安定化動作の頻度レベルを増加すると判断する。逆に、1ヶ月の間の第3安定化動作の実施回数が2回未満であった場合には、使用者の所望する画質よりも過剰な画質としているとして、安定化動作の頻度レベルを減少させると判断する。そのため、図14に示される第2の具体例処理は、図13に示される第1の具体例での処理のステップS901,S903のみ異なる。なお、上の稼働時間のしきい値は一例であり、本発明においてこれらの値に限定されない。
図14を参照して、ステップS1001でCPU611は、不揮発性メモリ615に記憶されているタイマTIMECOUNTERから、前回の安定化動作の頻度レベルを変更するための処理が実行されてからの、MFP1の稼働時間であるカウント値を取得する。ステップS1003でカウンタCTPRINT1のカウント値と上記「所定の稼働時間」である100時間とを比較し、タイマTIMECOUNTERのカウント値が所定の稼働時間以上である場合(ステップS1003でYES)、CPU611は安定化動作を実施する条件を変更するものと判断し、第1の具体例と同様の以降の処理を実行する。タイマTIMECOUNTER1のカウント値が所定の稼働時間未満である場合(ステップS1003でNO)、CPU611は安定化動作を実施する条件を変更しないと判断し、以降の処理をスキップして、本処理を終了する。すなわち、CPU611は、前回安定化動作の頻度レベルを変更するための処理が実行されてからの実稼動時間が予め設定されている時間に達するごとに、第1の具体例と同様のステップS905以降の処理を実行して、実施の頻度レベルを増加させる、減少させる、または現状維持とする、かについて判断する。
図15は、上記ステップS917の、安定化動作の頻度レベルを増加させるための処理の流れの具体例を示すフローチャートである。第1安定化動作の頻度レベルがすでに高い場合には、第1安定化動作の頻度レベルを増加させるよりも第2安定化動作の頻度レベルを増加させる方が、安定化動作全体の頻度レベルを増加させる効果は高くなる。そのため、前回の安定化動作の頻度レベルを変更するための処理が実行されてからの第1安定化動作の実施回数(CTSTABI1)を処理に利用する。その際、第1安定化動作の実施の頻度レベルによって、第1安定化動作の実施頻度が高いか低いかの判断が異なる。すなわち、第1安定化動作の実施の頻度レベルL1が高い場合には、標準の場合や低い場合よりも多くの回数の第1安定化動作が実施されることで「実施頻度が高い」ことに該当する。従って、好ましくは、第1安定化動作の実施回数(CTSTABI1)を処理に利用する際には、第1安定化動作の実施の頻度レベルL1が考慮される。
さらに、MFP1において電源の投入やスリープ状態からの復帰の回数の合計、つまり、それらの後のウォームアップ動作の回数が所定数よりも少ない場合には第1安定化動作の実施頻度が低い。上記「所定数」としては、たとえば100が挙げられるが、この回数のしきい値は一例であり、本発明において100に限定されない。そのため、ウォームアップ動作の回数が所定数よりも少ない場合には、第1安定化動作の頻度レベルを増加させても安定化動作全体の実施頻度を増加させる効果は低い。そこで、本処理では、CPU611は、ウォームアップ動作の回数(CTWUP)を処理に利用する。エンジン制御部61が安定化動作の頻度レベルを増加させるための処理を行なう際には、第1安定化動作の実施回数(CTSTABI1)を必ず用いる。その際、第1安定化動作の実施の頻度レベルL1を用いることは必須ではない。しかしながら、実質的な「実施頻度」を判断するためには、頻度レベルL1を用いることは好ましい。これは、後述する、安定動作の実施頻度を抑制する処理においても同様である。さらに、ウォームアップ動作の回数(CTWUP)を用いることは必須ではない。しかしながら、安定化動作全体の実施頻度を増加させる効果をより向上させるためには、ウォームアップ動作の回数(CTWUP)を用いることは好ましい。
図15を参照して、ステップS1101でCPU611は、不揮発性メモリ615に記憶されているカウンタCTWUPから、前回の安定化動作の頻度レベルを変更するための処理が実行されてからのMFP1の起動回数であるカウント値を取得して、上記「所定数」である100と比較する。
上記カウント値が100以上である場合、すなわち、電源の投入やスリープ状態からの復帰の後のウォームアップ動作の回数が100回以上である場合には(ステップS1101でYES)、CPU611は、不揮発性メモリ615に記憶されている第1安定化動作の頻度レベルL1を読み出す。頻度レベルL1が「高」に設定されている場合には(ステップS1103でYES)、ステップS1105でCPU611は第1安定化動作の実施頻度を判断するために用いるしきい値Aを「50」と設定する。頻度レベルL1が「標準」に設定されている場合には(ステップS1103でNO、かつステップS1107でYES)、ステップS1109でCPU611は第1安定化動作の実施頻度を判断するために用いるしきい値Aを「20」と設定する。頻度レベルL1が「低」に設定されている場合には(ステップS1103でNO、かつステップS1107でNO)、ステップS1111でCPU611は第1安定化動作の実施頻度を判断するために用いるしきい値Aを「10」と設定する。上述のしきい値Aとして設定される具体的な値は、値「50」,「20」,「10」には限定されない。これらの値は、予めROM612などに、第1安定化動作の頻度レベルL1と対応付けられて記憶されているものとする。
ステップS1113でCPU611は、不揮発性メモリ615に記憶されているカウンタCTSTABI1から、前回の安定化動作の頻度レベルを変更するための処理が実行されてからの第1安定化動作の実施回数であるカウント値を取得して、上述のしきい値Aである50、20、または10と比較する。その結果、上記カウント値がしきい値A未満である場合には(ステップS1113でNO)、ステップS1115でCPU611は第1安定化動作の頻度レベルを増加させるための処理を実行する。上記カウント値がしきい値A以上である場合には(ステップS1113でYES)、ステップS1117でCPU611は第2安定化動作の頻度レベルを増加させるための処理を実行する。つまり、第1安定化動作の頻度レベルL1がいずれのレベルであっても、そのレベルにおいて第1安定化動作が所定回数以上の多い回数実施されている場合、CPU611は第1安定化動作の頻度レベルよりも第2安定化動作の頻度レベルを増加させた方が効果的と判断し、第2安定化動作の頻度レベルを増加させるための処理を実行する。第1安定化動作の頻度レベルL1がいずれのレベルであっても、そのレベルにおいて第1安定化動作が所定回数よりも少ない回数しか実施されていない場合、CPU611は第2安定化動作の頻度レベルよりも第1安定化動作の頻度レベルを増加させた方が効果的と判断し、第1安定化動作の頻度レベルを増加させるための処理を実行する。
なお、上記ステップS1101の比較において、前回の安定化動作の頻度レベルを変更するための処理が実行されてからのMFP1の起動回数が上記「所定数」である100回未満である場合、すなわち、電源の投入やスリープ状態からの復帰の後のウォームアップ動作の回数が100回未満である場合には(ステップS1101でNO)、ステップS1117でCPU611は第2安定化動作の頻度レベルを増加させるための処理を実行する。つまり、電源の投入やスリープ状態からの復帰の後のウォームアップ動作の回数が所定数よりも少ない場合には、CPU611は第1安定化動作の頻度レベルを増加させるよりも第2安定化動作の頻度レベルを増加させる方が安定化動作全体の頻度レベルを増加させる効果が高いと判断し、第2安定化動作の頻度レベルを増加させるための処理を実行する。
図16は、上記ステップS919の、安定化動作の実施頻度を抑制する処理の流れの第1の具体例を示すフローチャートであり、図17は、上記ステップS919の、安定化動作の実施頻度を抑制する処理の流れの第2の具体例を示すフローチャートである。第1の具体例でエンジン制御部61は、第1安定化動作の実施頻度が所定よりも高い場合には、第1安定化動作の実施が過剰であるとしてその頻度レベルを減じ、第1安定化動作の実施頻度が低い場合には、第1安定化動作の実施頻度が適正であるとして第2安定化動作の頻度レベルを減じるようにする。第2の具体例でエンジン制御部61は、実施実績の高い安定化動作の頻度レベルを減じるようにする。すなわち、第2安定化動作の実施頻度が所定よりも高い場合には、第2安定化動作が過剰に実施されているとしてその頻度レベルを減じ、第2安定化動作の実施頻度が低い場合には、第2安定化動作の頻度レベルが適正であるとして第1安定化動作の頻度レベルを減じるようにする。
図16を参照して、第1の具体例では、図15に示された処理のステップS1103〜S1111と同様の処理が行なわれて、各レベルにおいて、第1安定化動作の実施頻度を判断するために用いるしきい値Aが設定される。そして、ステップS1113と同様の処理が行なわれて、第1安定化動作の実施回数と設定されたしきい値Aとが比較される。
安定化動作の実施頻度を抑制する処理の第1の具体例においては、上記カウント値がしきい値A以上である場合には(ステップS1113でYES)、ステップS1201でCPU611は第1安定化動作の頻度レベルを減じるための処理を実行する。上記カウント値がしきい値A未満である場合には(ステップS1113でNO)、ステップS1203でCPU611は第2安定化動作の頻度レベルを減じるための処理を実行する。つまり、第1安定化動作の頻度レベルL1がいずれのレベルであっても、そのレベルにおいて第1安定化動作が所定回数以上の多い回数実施されている場合、CPU611は第1安定化動作の実施頻度が高いと判断して第1安定化動作の頻度レベルを減じるための処理を実行する。第1安定化動作の頻度レベルL1がいずれのレベルであっても、そのレベルにおいて第1安定化動作が所定回数よりも少ない回数しか実施されていない場合、CPU611は第1安定化動作の頻度レベルよりも第2安定化動作の頻度レベルを減じる方が効果的と判断し、第2安定化動作の頻度レベルを減じるための処理を実行する。
図17を参照して、第2の具体例では、CPU611は、不揮発性メモリ615に記憶されている第2安定化動作の頻度レベルL2を読み出す。頻度レベルL2が「高」に設定されている場合には(ステップS1303でYES)、ステップS1305でCPU611は第2安定化動作の実施頻度を判断するために用いるしきい値Aを「83」と設定する。頻度レベルL2が「標準」に設定されている場合には(ステップS1303でNO、かつステップS1307でYES)、ステップS1309でCPU611は第2安定化動作の実施頻度を判断するために用いるしきい値Aを「40」と設定する。頻度レベルL2が「低」に設定されている場合には(ステップS1303でNO、かつステップS1307でNO)、ステップS1311でCPU611は第2安定化動作の実施頻度を判断するために用いるしきい値Aを「22」と設定する。上述のしきい値Aとして設定される具体的な値は、値「83」,「40」,「22」には限定されない。これらの値は、予めROM612などに、第2安定化動作の頻度レベルL2と対応付けられて記憶されているものとする。
ステップS1313でCPU611は、不揮発性メモリ615に記憶されているカウンタCTSTABI2から、前回の安定化動作の頻度レベルを変更するための処理が実行されてからの第1安定化動作の実施回数であるカウント値を取得して、上述のしきい値Aである83、40、または22と比較する。その結果、上記カウント値がしきい値A未満である場合には(ステップS1313でNO)、ステップS1315でCPU611は第1安定化動作の頻度レベルを減じるための処理を実行する。上記カウント値がしきい値A以上である場合には(ステップS1313でYES)、ステップS1317でCPU611は第2安定化動作の頻度レベルを減じるための処理を実行する。つまり、第2安定化動作の頻度レベルL2がいずれのレベルであっても、そのレベルにおいて第2安定化動作が所定回数以上の多い回数実施されている場合、CPU611は第2安定化動作の実施頻度が高く、第1安定化動作よりも第2安定化動作の方が実施実績が高いと判断し、第2安定化動作の頻度レベルを減じるための処理を実行する。第2安定化動作の頻度レベルL2がいずれのレベルであっても、そのレベルにおいて第2安定化動作が所定回数よりも少ない回数しか実施されていない場合、CPU611は第2安定化動作の実施頻度が低く、第2安定化動作よりも第1安定化動作の方が実施実績が高いと判断し、第1安定化動作の頻度レベルを減じるための処理を実行する。
上記ステップS1115,S1117,S1201,S1203,S1315,S1317で実行される、第1安定化動作または第2安定化動作の頻度レベルを変更する処理は、具体的には、安定化動作を実施するか否かを判断するために用いられるしきい値を変更することによって行なわれる。すなわち、しきい値を引き下げることで実施すると判断される機会が増え、実施頻度が増加する。逆に、しきい値を引き上げることで実施すると判断される機会が減り、実施頻度が減少する。第1安定化動作である、起動時または復帰時のウォームアップ動作後の安定化動作は、図6にも示されたように、その際の機内温度等の環境値Tに応じて実施するか否かが判断される。そこで、第1安定化動作の頻度レベルを変更する際には、しきい値として環境値のしきい値△T1を変更する。環境値のしきい値△T1を引き下げることで、機内温度の変化がより小さいうちに第1安定化動作が実施されるため、第1安定化動作の実施頻度が増加する。逆に、環境値のしきい値△T1を引き上げることで、機内温度の変化が所定量に達するまで第1安定化動作が実施されないため、第1安定化動作の実施頻度が減少する。第2安定化動作である、印字動作中に自動的に行なわれる安定化動作は、図9にも示されたように、その際の機内温度等の環境値Tに加えて、前回の安定化動作時からの印字枚数CTPRINT2にも応じて実施するか否かが判断される。そこで、第2安定化動作の頻度レベルを変更する際には、しきい値として環境値のしきい値△T2と印字枚数のしきい値CT2とを変更する。環境値のしきい値△T2および印字枚数のしきい値CT2を引き下げることで、機内温度の変化がより小さいうちに、または印字枚数がより少ない段階のうちに第2安定化動作が実施されるため、第2安定化動作の実施頻度が増加する。逆に、環境値のしきい値△T2および印字枚数のしきい値CT2を引き上げることで、機内温度の変化が所定量に達するまで、または印字枚数がより多くの枚数に達するまでは第2安定化動作が実施されないため、第2安定化動作の実施頻度が減少する。具体的に、図18は、上記ステップS1115での第1安定化動作の頻度レベルを増加させるための処理の流れの具体例を示し、図19は上記ステップS1201またはS1315での第1安定化動作の頻度レベルを減じるための処理の流れの具体例を示し、図20は上記ステップS1117での第2安定化動作の頻度レベルを増加させるための処理の流れの具体例を示し、図21は上記ステップS1203またはS1317での第2安定化動作の頻度レベルを減じるための処理の流れの具体例を示すフローチャートである。
第1安定化動作の頻度レベルを増加させる場合、図18を参照して、ステップS1401でCPU611は、不揮発性メモリ615に記憶されている第1安定化動作の頻度レベルL1を読み出す。頻度レベルL1が「低」に設定されている場合には(ステップS1403でYES)、ステップS1405でCPU611は、頻度レベルL1を1ランク上のレベルである「標準」に変更し、ステップS1407で、第1安定化動作を実施するか否かを判断するために用いられる環境値のしきい値△T1を、「標準」レベルに対応付けて予めROM612等に記憶されている値であって、現在のしきい値の値(たとえば8℃)よりも小さい5℃に設定する。
頻度レベルL1が「標準」に設定されている場合には(ステップS1403でNO、かつステップS1409でYES)、ステップS1411でCPU611は、頻度レベルL1を1ランク上のレベルである「高」に変更し、ステップS1413で、上記しきい値△T1を「高」レベルに対応付けて予めROM612等に記憶されている値であって、現在のしきい値の値(たとえば5℃)よりも小さい2℃に設定する。頻度レベルL1が「高」に設定されている場合には(ステップS1403でNO、かつステップS1409でNO)、現レベルより上の頻度レベルが存在しないことから、頻度レベルを増加させるための処理を行なうことなく、本処理を終了する。
以上の処理によって、第1安定化処理の実施頻度として現在設定されているレベルよりも上のレベルが存在する場合には、1ランク上のレベルに設定されると共に、第1安定化処理を実施するか否かを判断する環境値のしきい値△T1が引き下げられる。これにより、第1安定化処理の頻度レベルが増加される。
第1安定化動作の実施頻度を減じる場合、図19を参照して、ステップS1501でCPU611は、不揮発性メモリ615に記憶されている第1安定化動作の頻度レベルL1を読み出す。頻度レベルL1が「高」に設定されている場合には(ステップS1503でYES)、ステップS1505でCPU611は、頻度レベルL1を1ランク下のレベルである「標準」に変更し、ステップS1507で、第1安定化動作を実施するか否かを判断するために用いられる環境値のしきい値△T1を、「標準」レベルに対応付けて予めROM612等に記憶されている値であって、現在のしきい値の値(たとえば2℃)よりも大きい5℃に設定する。
頻度レベルL1が「標準」に設定されている場合には(ステップS1503でNO、かつステップS1509でYES)、ステップS1511でCPU611は、頻度レベルL1を1ランク下のレベルである「低」に変更し、ステップS1513で、上記しきい値△T1を「低」レベルに対応付けて予めROM612等に記憶されている値であって、現在のしきい値の値(たとえば5℃)よりも大きい8℃に設定する。頻度レベルL1が「低」に設定されている場合には(ステップS1503でNO、かつステップS1509でNO)、現レベルよりも下の頻度レベルが存在しないことから、頻度レベルを減じるための処理を行なうことなく、本処理を終了する。
以上の処理によって、第1安定化処理の頻度レベルとして現在設定されているレベルよりも下のレベルが存在する場合には、1ランク下のレベルに設定されると共に、第1安定化処理を実施するか否かを判断する環境値のしきい値△T1が引き上げられる。これにより、第1安定化処理の頻度レベルが減じられる。
第2安定化動作の頻度レベルを増加させる場合、図20を参照して、ステップS1601でCPU611は、不揮発性メモリ615に記憶されている第2安定化動作の頻度レベルL2を読み出す。頻度レベルL2が「低」に設定されている場合には(ステップS1603でYES)、ステップS1605でCPU611は、頻度レベルL2を1ランク上のレベルである「標準」に変更し、ステップS1607で、第2安定化動作を実施するか否かを判断するために用いられる環境値のしきい値△T2を、「標準」レベルに対応付けて予めROM612等に記憶されている値であって、現在のしきい値の値(たとえば8℃)よりも小さい5℃に設定する。また、第2安定化動作を実施するか否かを判断するために用いられる印字枚数のしきい値CT2を、「標準」レベルに対応付けて予めROM612等に記憶されている値であって、現在のしきい値の値(たとえば800枚)よりも小さい500枚に設定する。
頻度レベルL2が「標準」に設定されている場合には(ステップS1603でNO、かつステップS1609でYES)、ステップS1611でCPU611は、頻度レベルL2を1ランク上のレベルである「高」に変更し、ステップS1613で、上記しきい値△T2を「高」レベルに対応付けて予めROM612等に記憶されている値であって、現在のしきい値の値(たとえば5℃)よりも小さい2℃に設定する。また、上記しきい値CT2を「高」レベルに対応付けて予めROM612等に記憶されている値であって、現在のしきい値の値(たとえば500枚)よりも小さい300枚に設定する。頻度レベルL2が「高」に設定されている場合には(ステップS1603でNO、かつステップS1609でNO)、現レベルより上の頻度レベルが存在しないことから、頻度レベルを増加させるための処理を行なうことなく、本処理を終了する。
以上の処理によって、第2安定化処理の頻度レベルとして現在設定されているレベルよりも上のレベルが存在する場合には、1ランク上のレベルに設定されると共に、第2安定化処理を実施するか否かを判断する環境値のしきい値△T2および印字枚数のしきい値CT2が引き下げられる。これにより、第2安定化処理の頻度レベルが増加される。
第2安定化動作の頻度レベルを減じる場合、図21を参照して、ステップS1701でCPU611は、不揮発性メモリ615に記憶されている第2安定化動作の頻度レベルL2を読み出す。頻度レベルL2が「高」に設定されている場合には(ステップS1703でYES)、ステップS1705でCPU611は、頻度レベルL2を1ランク下のレベルである「標準」に変更し、ステップS1707で、第2安定化動作を実施するか否かを判断するために用いられる環境値のしきい値△T2を、「標準」レベルに対応付けて予めROM612等に記憶されている値であって、現在のしきい値の値(たとえば2℃)よりも大きい5℃に設定する。また、第2安定化動作を実施するか否かを判断するために用いられる印字枚数のしきい値CT2を、「標準」レベルに対応付けて予めROM612等に記憶されている値であって、現在のしきい値の値(たとえば300枚)よりも大きい500枚に設定する。
頻度レベルL2が「標準」に設定されている場合には(ステップS1703でNO、かつステップS1709でYES)、ステップS1711でCPU611は、頻度レベルL2を1ランク下のレベルである「低」に変更し、ステップS1713で、上記しきい値△T2を「低」レベルに対応付けて予めROM612等に記憶されている値であって、現在のしきい値の値(たとえば5℃)よりも大きい8℃に設定する。また、上記しきい値CT2を「低」レベルに対応付けて予めROM612等に記憶されている値であって、現在のしきい値の値(たとえば500枚)よりも大きい800枚に設定する。頻度レベルL2が「低」に設定されている場合には(ステップS1703でNO、かつステップS1709でNO)、現レベルよりも下の頻度レベルが存在しないことから、頻度レベルを減じるための処理を行なうことなく、本処理を終了する。
以上の処理によって、第2安定化処理の頻度レベルとして現在設定されているレベルよりも下のレベルが存在する場合には、1ランク下のレベルに設定されると共に、第2安定化処理を実施するか否かを判断する環境値のしきい値△T2および印字枚数のしきい値CT2が引き上げられる。これにより、第2安定化処理の頻度レベルが減じられる。
なお、第2安定化動作の頻度レベルを変更するためには環境値のしきい値△T2および印字枚数のしきい値CT2のパラメータを変更するものとして以降の説明を行なうが、一方のしきい値のみを変更する場合であっても、頻度レベルを変更する効果は得られる。好ましくは、両パラメータを変更することではあるが、少なくとも一方のしきい値を変更することであってよい。
以上の処理の結果、MFP1における安定化動作の頻度レベルの遷移は、図22および図23に示されるようになる。図22は、安定化動作の頻度レベルを変化させるための具体的な条件を示し、図23は安定化動作の頻度レベルの遷移を示している。すなわち、図22を参照して、安定化動作の頻度レベルを変更する条件として、条件1〜5が挙げられる。先述のように、安定化動作の頻度レベルを変更する最も大きな条件は、使用者の指示に従った安定化動作である第3安定化動作の実施回数であり、その実施回数が多い場合には使用者が画質に不満を持っているとして安定化動作の頻度レベルを増加させ、実施回数が少ない場合には使用者の所望する画質よりも過剰な画質とする安定化動作が行なわれているとして安定化動作の頻度レベルを減少させる。
より詳しくは、第3安定化動作の実施回数が多い場合であっても、起動時やスリープからの復帰時のウォームアップ回数(復帰回数)が多い場合であって第1安定化動作の実施回数が少ない場合には、エンジン制御部61は、第2安定化動作の頻度レベルを増加させるよりも第1安定化動作の頻度レベルを増加させる方が全体として安定化動作の実施頻度を増加させることに効果があるとして、第1安定化動作の頻度レベルを増加させる。この条件を条件1とする。復帰回数が多い場合であってもすでに第1安定化動作の実施回数が多い場合には、エンジン制御部61は、第1安定化動作の頻度レベルを増加させるよりも第2安定化動作の頻度レベルを増加させる方が全体として安定化動作の実施頻度を増加させることに効果があるとして、第2安定化動作の頻度レベルを増加させる。この条件を条件2とする。また、復帰回数が少ない場合も、同様に、エンジン制御部61は、第1安定化動作の頻度レベルを増加させるよりも第2安定化動作の頻度レベルを増加させる方が全体として安定化動作の実施頻度を増加させることに効果があるとして、第2安定化動作の頻度レベルを増加させる。この条件を条件3とする。
第3安定化動作の実施回数が少ない場合、第1安定化動作の実施回数が多い場合には、エンジン制御部61は、第2安定化動作の頻度レベルを減じるよりも第1安定化動作の頻度レベルを減じる方が全体として安定化動作の実施頻度を減少させることに効果があるとして、第1安定化動作の頻度レベルを減じる。この条件を条件4とする。第1安定化動作の実施回数が少ない場合には、エンジン制御部61は、第1安定化動作の頻度レベルを減じるよりも第2安定化動作の頻度レベルを減じる方が全体として安定化動作の実施頻度を減少させることに効果があるとして、第2安定化動作の頻度レベルを減じる。この条件を条件5とする。
MFP1のエンジン制御部61は、以上の条件を用いて第1安定化動作の頻度レベルおよび第2安定化動作の頻度レベルを図23に示されるように変更する。すなわち、図23を参照して、第1安定化動作の頻度レベルが「低」、第2安定化動作の頻度レベルが「低」である状態(L1:低,L2:低)において条件1が検出された場合、エンジン制御部61は第1安定化動作の頻度レベルを増加させ、第1安定化動作の頻度レベルが「標準」、第2安定化動作の頻度レベルが「低」である状態(L1:標準,L2:低)とする。さらにその状態において条件1が検出された場合、エンジン制御部61は第1安定化動作の頻度レベルを増加させ、第1安定化動作の頻度レベルが「高」、第2安定化動作の頻度レベルが「低」である状態(L1:高,L2:低)とする。この状態において条件4が検出された場合、エンジン制御部61は第1安定化動作の頻度レベルを減少させ、第1安定化動作の頻度レベルが「標準」、第2安定化動作の頻度レベルが「低」である状態(L1:標準,L2:低)とする。さらにその状態において条件4が検出された場合、エンジン制御部61は第1安定化動作の頻度レベルを減少させ、第1安定化動作の頻度レベルが「低」、第2安定化動作の頻度レベルが「低」である状態(L1:低,L2:低)とする。
第1安定化動作の頻度レベルが「低」、第2安定化動作の頻度レベルが「低」である状態(L1:低,L2:低)において条件2が検出された場合、エンジン制御部61は第2安定化動作の頻度レベルを増加させ、第1安定化動作の頻度レベルが「低」、第2安定化動作の頻度レベルが「標準」である状態(L1:低,L2:標準)とする。さらにその状態において条件3が検出された場合、エンジン制御部61は第2安定化動作の頻度レベルを増加させ、第1安定化動作の頻度レベルが「低」、第2安定化動作の頻度レベルが「高」である状態(L1:低,L2:高)とする。この状態において条件5が検出された場合、エンジン制御部61は第2安定化動作の頻度レベルを減少させ、第1安定化動作の頻度レベルが「低」、第2安定化動作の頻度レベルが「標準」である状態(L1:低,L2:標準)とする。さらにその状態において条件5が検出された場合、エンジン制御部61は第2安定化動作の頻度レベルを減少させ、第1安定化動作の頻度レベルが「低」、第2安定化動作の頻度レベルが「低」である状態(L1:低,L2:低)とする。
第1安定化動作の頻度レベルが「標準」、第2安定化動作の頻度レベルが「低」である状態(L1:標準,L2:低)において条件3が検出された場合、エンジン制御部61は第2安定化動作の頻度レベルを増加させ、第1安定化動作の頻度レベルが「標準」、第2安定化動作の頻度レベルが「標準」である状態(L1:標準,L2:標準)とする。第1安定化動作の頻度レベルが「低」、第2安定化動作の頻度レベルが「標準」である状態(L1:低,L2:標準)において条件1が検出された場合、エンジン制御部61は第1安定化動作の頻度レベルを増加させ、同様に、第1安定化動作の頻度レベルが「標準」、第2安定化動作の頻度レベルが「標準」である状態(L1:標準,L2:標準)とする。この状態において条件1が検出された場合には、エンジン制御部61は第1安定化動作の頻度レベルを増加させ、第1安定化動作の頻度レベルが「高」、第2安定化動作の頻度レベルが「標準」である状態(L1:高,L2:標準)とする。また、条件3が検出された場合には、エンジン制御部61は第2安定化動作の頻度レベルを増加させ、第1安定化動作の頻度レベルが「標準」、第2安定化動作の頻度レベルが「高」である状態(L1:標準,L2:高)とする。第1安定化動作の頻度レベルが「高」、第2安定化動作の頻度レベルが「低」である状態(L1:高,L2:低)において条件3が検出された場合、エンジン制御部61は第2安定化動作の頻度レベルを増加させ、同様に、第1安定化動作の頻度レベルが「高」、第2安定化動作の頻度レベルが「標準」である状態(L1:高,L2:標準)とする。第1安定化動作の頻度レベルが「低」、第2安定化動作の頻度レベルが「高」である状態(L1:低,L2:高)において条件1が検出された場合、エンジン制御部61は第1安定化動作の頻度レベルを増加させ、同様に、第1安定化動作の頻度レベルが「標準」、第2安定化動作の頻度レベルが「高」である状態(L1:標準,L2:高)とする。
第1安定化動作の頻度レベルが「高」、第2安定化動作の頻度レベルが「標準」である状態(L1:高,L2:標準)において条件5が検出された場合には、エンジン制御部61は第2安定化動作の頻度レベルを減少させ、第1安定化動作の頻度レベルが「高」、第2安定化動作の頻度レベルが「低」である状態(L1:高,L2:低)とする。条件2が検出された場合には、エンジン制御部61は第2安定化動作の頻度レベルを増加させ、第1安定化動作の頻度レベルが「高」、第2安定化動作の頻度レベルが「高」である状態(L1:高,L2:高)とする。条件4が検出された場合には、エンジン制御部61は第1安定化動作の頻度レベルを減少させ、第1安定化動作の頻度レベルが「標準」、第2安定化動作の頻度レベルが「標準」である状態(L1:標準,L2:標準)とする。この状態において、さらに条件5が検出された場合には、エンジン制御部61は第2安定化動作の頻度レベルを減少させ、第1安定化動作の頻度レベルが「標準」、第2安定化動作の頻度レベルが「低」である状態(L1:標準,L2:低)とする。
第1安定化動作の頻度レベルが「標準」、第2安定化動作の頻度レベルが「高」である状態(L1:標準,L2:高)において条件4が検出された場合には、エンジン制御部61は第1安定化動作の頻度レベルを減少させ、第1安定化動作の頻度レベルが「低」、第2安定化動作の頻度レベルが「高」である状態(L1:低,L2:高)とする。条件1が検出された場合には、エンジン制御部61は第1安定化動作の頻度レベルを増加させ、第1安定化動作の頻度レベルが「高」、第2安定化動作の頻度レベルが「高」である状態(L1:高,L2:高)とする。条件5が検出された場合には、エンジン制御部61は第2安定化動作の頻度レベルを減少させ、第1安定化動作の頻度レベルが「標準」、第2安定化動作の頻度レベルが「標準」である状態(L1:標準,L2:標準)とする。この状態において、さらに条件4が検出された場合には、エンジン制御部61は第1安定化動作の頻度レベルを減少させ、第1安定化動作の頻度レベルが「低」、第2安定化動作の頻度レベルが「標準」である状態(L1:低,L2:標準)とする。
第1安定化動作の頻度レベルが「高」、第2安定化動作の頻度レベルが「高」である状態(L1:高,L2:高)において条件5が検出された場合には、エンジン制御部61は第2安定化動作の頻度レベルを減少させ、第1安定化動作の頻度レベルが「高」、第2安定化動作の頻度レベルが「標準」である状態(L1:高,L2:標準)とする。条件4が検出された場合には、エンジン制御部61は第1安定化動作の頻度レベルを減少させ、第1安定化動作の頻度レベルが「標準」、第2安定化動作の頻度レベルが「高」である状態(L1:標準,L2:高)とする。
MFP1において以上のようにして安定化動作の実施頻度が変更されることで、使用者に満足する画質を提供しつつ、安定化動作の実施頻度を最適化できる。これにより、画像形成動作が中断されて安定化動作が実施される際に、使用者が画像形成動作の再開を待ったり、過剰な頻度で安定化動作が行なわれることで消耗品が過剰に消耗したり、することを防止することができる。また、MFP1では、複数の条件を用いて、自動的に行なわれる複数の安定化動作のうちから頻度レベルを変更する安定化動作を選択することで、全体の安定化動作の実施頻度を効果的に変更することができる。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
1 MFP、10 スキャナ装置、20 作像部、21 印刷制御部、22 中間転写ベルト、23,23C,23M,23Y,23K 感光体ドラム、24 定着部、30 搬送部、31 カセット、32 搬送路、40 後処理装置、41 パンチユニット、42 折ユニット、43 ステープラ、50 排紙装置、60 制御部、61 エンジン制御部、65 プリンタコントローラ部、70 外部機器IF、80 FAX回線IF、611 CPU、612 ROM、613 RAM、614 IF制御部、615 不揮発性メモリ、616 拡張I/O、617 環境センサ、618 モータやソレノイドやクラッチや高圧電源やリレーなどの画像形成動作や安定化動作に必要な構成を動作させるための機構、619 トナー濃度センサ、620 レーザダイオード、621 トナーカートリッジメモリ、651 画像処理コントローラ、653 パネルコントローラ。