以下、図面を参照して、本発明の実施の形態について詳細に説明する。
図1は、本実施の形態に係る画像形成装置の構成を示す断面図である。画像形成装置の筐体1内部には、感光体ドラム2が回転可能に配設されている。感光体ドラム2は、例えば、表面にOPC等よりなる感光体層が被覆された導電性円筒体からなるものが用いられている。感光体ドラム2は、対応するDCモータ(以下モータ)によって矢印方向に沿って所定のプロセススピードで回転駆動される。
感光体ドラム2の表面は、感光体ドラム2の略直下に配置された帯電器としての帯電ロール3によって所定の電位に帯電された後、ROS(Raster Output Scanner)4によって、レーザービーム(LB)による画像露光が施される。これにより感光体ドラム2の表面に静電潜像が形成される。
現像装置5は、周方向に沿ってそれぞれ配置されたイエロー(Y)、マゼンタ(M)、シアン(C)、ブラック(K)の各色の現像器5Y、5M、5C、5Kを有している。感光体ドラム2上に形成された静電潜像は、現像装置5がモータにより駆動され回転することによって各色の現像器5Y、5M、5C、5Kで現像され、所定の色のトナー像が形成される。
カラー画像を印刷する場合には、感光体ドラム2の表面には、帯電・露光・現像の各工程が、YMCKの各色に対応して4回繰り返される。その結果、当該感光体ドラム2の表面には、YMCKの各色に対応したトナー像が順次形成される。
現像装置5は、1つの色について一連の工程が終了すると、所定のタイミングで回転駆動され、現像する色に対応した現像器5Y、5M、5C、5Kが、感光体ドラム2と対向する現像位置に移動する。
感光体ドラム2上に順次形成されるトナー像は、感光体ドラム2の外周に中間転写体としての中間転写ベルト6が巻き付けられた一次転写位置において、中間転写ベルト6上に互いに重ね合わされた状態で、一次転写ロール7によって一次転写される。この中間転写ベルト6上に多重に転写されたYMCKのトナー像は、二次転写ロール8によって、所定のタイミングで給紙される記録用紙9上に一括して二次転写される。
なお、負荷ユニットとしての二次転写ロール8は、中間転写ベルト6の周上における距離が、感光体ドラム2の下流側に近い位置に配置されており、この二次転写ロール8が中間転写ベルト6に当接するタイミングに呼応して、感光体ドラム2の駆動速度を低減もしくは増加するように構成されている。
また、中間転写ベルト6は、複数のロールによって張架されており、所定のプロセススピードで循環移動し、感光体ドラム2に従動回転するように構成されている。中間転写ベルト6は、感光体ドラム2における回動方向の上流側にて中間転写ベルト6のラップ位置を特定するラップインロール15と、感光体ドラム2上に形成されたトナー像を中間転写ベルト6上に転写する一次転写ロール7と、ラップ位置の下流側にて中間転写ベルト6のラップ位置を特定するラップアウトロール16と、二次転写ロール8に中間転写ベルト6を介して当接するバックアップロール17と、中間転写ベルト6のクリーニング装置18に対向する第1のクリーニングバックアップロール19と、第2のクリーニングバックアップロール20とによって、所定の張力で張架されている。中間転写ベルト6は、これら複数のロール7、15〜17、19、20によって張架されているが、この実施の形態では、画像形成装置の小型化を図るため、その張架される断面形状が、偏平な細長い略台形状となるように構成されている。
記録用紙9は、筐体1の下部に配置された給紙部10から、ピックアップロール11によって送り出されるとともに、フィードロール12及びリタードロール13によって1枚ずつ捌かれた状態で給紙され、レジストロール14によって中間転写ベルト6上に転写されたトナー像と同期した状態で、中間転写ベルト6の二次転写位置へと搬送される。二次転写ロール8は、所定のタイミングで中間転写ベルト6の表面に接離するように構成されている。
また、中間転写ベルト6のクリーニング装置18は、第1のクリーニングバックアップロール19によって張架された中間転写ベルト6の表面に当接するように配置されたスクレーパ24と、第2のクリーニングバックアップロール20によって張架された中間転写ベルト6の表面に圧接するように配置されたクリーニングブラシ25とを備えている。これらのスクレーパ24やクリーニングブラシ25によって除去された残留トナーや紙粉は、クリーニング装置18の内部に回収されるようになっている。なお、クリーニング装置18は、揺動軸26を中心にして、図中反時計周り方向に揺動可能に支持されており、中間転写ベルト6の表面から離間した位置に退避しているとともに、所定のタイミングで中間転写ベルト6の表面に当接するように構成されている。
さらに、中間転写ベルト6からトナー像が転写された記録用紙9は、定着装置27へと搬送され、この定着装置27の加熱ロール及び加圧ロールによって熱及び圧力でトナー像が記録用紙9上に定着される。片面プリントの場合には、記録用紙9は、排出ロール28によって筐体1の上部に設けられた排出トレイ29上にそのまま排出される。
一方、両面プリントの場合には、定着装置27によりトナー像が定着された記録用紙9は、排出ロール28によって排出トレイ29上にそのまま排出されずに、排出ロール28によって記録用紙9の後端部を挟持した状態で、排出ロール28を逆転させる。このとき、記録用紙9の搬送径路を両面用の用紙搬送路30に切り替え、この両面用の用紙搬送路30に配設された搬送ロール31によって、記録用紙9の表裏を反転した状態で、再度、中間転写ベルト6の二次転写位置へ搬送して、記録用紙9の裏面に画像を形成するようになっている。
また、この画像形成装置には、筐体1の側面に手差しトレイ32が開閉自在に装着可能となっている。手差しトレイ32上に載置された任意のサイズ及び種類の記録用紙9は、給紙ロール33によって給紙され、搬送ロール31及びレジストロール14を介して、中間転写ベルト6の二次転写位置へ搬送されることにより、任意のサイズ及び種類の記録用紙9にも画像を形成することが可能となっている。
なお、トナー像の転写工程が終了した後の感光体ドラム2の表面は、当該感光体ドラム2が1回転する毎に、感光体ドラム2の斜め下方に配置されたクリーニング装置34のクリーニングブレード35によって、残留トナーなどが除去され、次の画像形成工程に備えるようになっている。
更にこの画像形成装置には、中間転写ベルト6の上部には、当該中間転写ベルト6上に形成されたパッチの濃度を検出する反射型フォトセンサからなるADCセンサ23が配設されている。ADCセンサ23で検出されたパッチ濃度や位置に基づいて、トナー濃度を制御したり、位置ずれを制御したりする。
また、この画像形成装置には、画像形成装置内部の温度や湿度を計測する環境センサ44が設けられている。この環境センサ44で検出された温度や湿度に応じて、後述するPWM閾値が設定される。なお、環境センサ44は装置外部に設けられていてもよい。
なお、この画像形成装置は、装置の小型化を達成しつつメンテナンス性を向上させるように、感光体ドラム2、現像装置5やクリーニング装置18、定着装置27等の各機能がそれぞれユニット化されている。これにより画像形成装置の上部カバー22を開くことによって、各ユニットを画像形成装置本体に容易に着脱することができる。
図2は、この画像形成装置におけるモータ制御系の構成を示すブロック図である。
画像形成装置の内部には、画像形成装置を構成する各部を制御する制御部50が設けられている。また、制御部50は、感光体ドラム2を含む感光体ユニット、フィードロール12、リタードロール13及び、レジストロール14などを含む記録媒体搬送ユニット、現像器5Y、5M、5C、5Kを有する現像装置5などの現像ユニット、クリーニングバックアップロール19,20を有するクリーナユニット、加熱ロールと加圧ロールとを有する定着装置27(定着装置ユニット)等の各ユニットの回転体に対して回転力を与えるDCモータ(モータ)60a〜60dの回転数を制御する。なお、図2では、4つのモータ60a〜60dのみが示されているが、実際には各ユニットに応じたモータが設置されている。
制御部50は、CPU52、クロック発生部54及び処理部56を有する。クロック発生部54は、例えば10MHzのクロック信号を発生し、CPU52及び処理部56に対して出力する。CPU52は、処理部56などにバス接続され、クロック発生部54から入力されたクロック信号に同期して処理部56などを制御する。処理部56は、各ユニットに応じて複数のデジタル処理回路(図2ではモータ60a〜60dに合わせて4つのデジタル処理回路58a〜58dが図示されている)を有し、ASlC(Application Specific Integrated Circuit)として1チップ化されている。
デジタル処理回路58a〜58dは、それぞれ同一の回路であり、クロック発生部54から処理部56に対して入力されたクロック信号に同期して動作し、それぞれパルス発生器(FG=Function Generator)62a〜62dから出力されたパルスに応じて、ドライバ64a〜64dを介してモータ60a〜60dをPWM(Pulse Width Modulation)制御する。
ドライバ64a〜64dは、デジタル処理回路58a〜58dの制御により、モータ60a〜60dに対して電流を供給し、モータ60a〜60dは、ドライバ64a〜64dから供給される電流に応じて回転する。パルス発生器62a〜62dは、例えばモータ60a〜60dの回転軸と同軸で共に回転するホール素子(例えば、図9参照)、発光素子及び受光素子(図示せず)などを有し、モータ60a〜60dの回転に応じてパルスを生成し、デジタル処理回路58a〜58dに対して出力する。
以下、モータ60a〜60dなど複数ある構成部分の、いずれかを特定せずに示す場合には、末尾の添字a〜dを省略して、単に「モータ60」などと略記する。
図3は、デジタル処理回路58の詳細構成を示したブロック図である。
デジタル処理回路58は、カウンタ70、レジスタ72、差分算出部74、加算部76、乗算部78及び変調パルス生成部80を含んで構成されている。
カウンタ70は、パルス発生器62から入力されるパルスに対し、パルス幅をクロック信号に同期してカウントすることによって計測し、そのカウント値(デジタルデータ)を検出された回転数として差分算出部74及びCPU52に対して出力する。例えば、図4に示すように、モータの回転に同期して周波数500Hzでデューティー比が50%のパルスをパルス発生器62が発生し、クロック発生部54からデジタル処理回路58に10MHzのクロック信号が入力される場合、カウンタ70は、1mS(半周期)のパルス幅を10MHzのクロック信号に同期してカウントし、カウント値10000(1[mS] ÷ (1/10[MHz]=10000、ここで10000は10進数)をCPU52及び差分算出部74に対して出力する。このとき、カウンタ70は、差分算出部74に対し、カウント値を例えば16bitのデジタルデータに変換して出力する。
レジスタ72は、ユーザインターフェイス(図示せず)及びCPU52を介して入力される初期値、及び設定値などを記憶し、デジタル処理回路58を構成する各部に所定の値を出力する。レジスタ72が記憶する値には、モータ60の目標周波数(目標回転数)、モータ60起動時のパルスを規定する起動信号、後述するフィードバックレート(FBレート)、及び変調パルス生成部80に対する設定値がある。
具体的には、レジスタ72は、モータ60の目標周波数に対応するパルス幅の値(カウント値)を16bitのデータとして差分算出部74に対して出力したり、モータ60の起動時のパルスを規定する起動信号を加算部76に対して出力したり、変調パルス生成部80に対する設定値を設定制御信号により変調パルス生成部80に対して出力したり、FBレートを乗算部78に対して出力したりする。なお、FBレートは、モータの回転ぶれ(ワウフラッター)を抑えるため、後述する加算部76の出力値を乗算によって丸めるために用いられるレートで、ここでは1/2n(nは1〜16までの整数)で規定される。
なお、レジスタ72に記憶される値は、ユーザインターフェイス(図示せず)又はカウンタ70と、CPU52とを介して変更できる。
差分算出部74は、カウンタ70から入力されるカウント値と、レジスタ72から入力される目標周波数に対応するパルス幅の値(カウント値)とを比較し、パルス発生器62により検出された回転周波数(回転数)の目標周波数に対する差分を算出し、加算部76に対して出力する。検出された回転周波数の目標周波数に対する差分は、検出された回転周波数が目標周波数よりも遅いことを示す差分(プラス側の差分)と、検出された回転周波数が目標周波数よりも速いことを示す差分(マイナス側の差分)との2値からなり、それぞれ18bitのデータとして加算部76に対して出力される。
なお、プラス側の差分は0以上の値であり、マイナス側の差分は0以下の値である。すなわち、検出された回転周波数が目標周波数よりも遅い場合には、マイナス側の差分は0となり、検出された回転周波数が目標周波数よりも速い場合には、プラス側の差分は0となる。
加算部76は、差分算出部74からプラス側の差分及びマイナス側の差分が入力されると、プラス側の差分及びマイナス側の差分を合わせて累積加算し、24ビットのデータとして乗算部78に対して出力する。ただし、加算部76は、レジスタ72から起動信号が入力された場合、即ち、モータ60の起動時の所定の期間(初期制御期間)には、差分算出部74から入力されたプラス側の差分及びマイナス側の差分を累積加算した結果でなく、起動信号に応じた所定の値を乗算部78に対して出力する。
乗算部78は、加算部76から入力される24bitのデータと、レジスタ72から入力されるFBレート(1/2n)とを乗算し、例えば20bitのデータとして変調パルス生成部80に対して出力する。
変調パルス生成部80は、乗算部78から入力される20bitのデータと、レジスタ72から入力される設定制御信号(所定の設定値を示す信号)により、パルス幅変調したパルスを生成し、ドライバ64に対して出力する。ただし、モータ60の起動時には、レジスタ72から入力される設定制御信号により、所定の期間(初期制御期間)に所定のパルスを出力するようにしてもよい。例えば、初期制御期間には、変調パルス生成部80は、デューティ比が50%未満のパルスを少なくとも1回以上出力することにより、モータ60の目標周波数に対する回転周波数のオーバーシュートを低減する。
なお、デジタル処理回路58a〜58dそれぞれのレジスタ72は、CPU52の制御によって、個別の初期値及び設定値などを記憶する。個々のレジスタ72に記憶する値を個別に変えることによって、制御部50は、モータ60a〜60dそれぞれに対して異なる制御をすることができる。
デジタル処理回路58は、更に比較器82、閾値テーブル84、及び比較結果レジスタ86を備えている。
比較器82には、変調パルス生成部80から変調パルス生成部80で生成されたパルスのパルス幅を示すデータ(以下、パルス幅データと呼称)が入力される。比較器82は、パルス幅データが入力される毎に、入力されたパルス幅データと、閾値テーブル84に設定されている複数個の閾値とを比較し、比較結果を比較結果レジスタ86に出力する。パルス幅データは、時間で示されていてもよいし、デューティー比で示されていてもよい。
閾値テーブル84に設定される複数個の閾値は、モータ100の駆動対象である回転体を備えたユニットが画像形成装置に装着されているか否か、ユニットの寿命、ユニットに異常が発生したか否かなど、ユニットの状態を判断するための閾値であって、本実施の形態では、3つの閾値TH1、TH2、TH3が設定される。ただし、閾値TH1、TH3、TH3の大小関係は、ここではTH1<TH2<TH3である。これは、モータ60は、負荷が重くなるに従い、該モータ60に対するパルスのパルス幅が大きくなる傾向があることから、ここでは閾値を段階的に設定して、モータ60にかかる負荷状態を検出し、ユニットの状態を判断するようにしている。
この3つの閾値TH1、TH2、TH3は、CPU52によって、環境センサ44から出力された画像形成装置の環境(温度や湿度)の情報に応じて適宜設定される。具体的には、温度及び湿度に応じて使用する閾値を定めたテーブルを記憶したメモリ(図示省略)がCPU52にバスを介して接続されており、CPU52はこのテーブルから該当する閾値を読み出して、デジタル処理回路58の閾値テーブル84に設定する。
図5は、予め定められた複数の閾値テーブルと、該複数の閾値テーブルの中でどの閾値テーブルを使用するかを温度及び湿度に応じて選択するための選択テーブルの一例である。例えば、温度が0度以上5度未満で且つ湿度が70%未満の場合には、選択テーブルでは閾値テーブルAが指定されているため、CPU52は、閾値テーブルAを参照し、閾値テーブルAで指定されている閾値a、b、cの各々を、デジタル処理回路58の閾値テーブル84に設定する。すなわち、閾値テーブル84に閾値TH1としてaを、閾値TH2としてbを、閾値TH3としてcを設定する。同様に、温度が5度以上10度未満で且つ湿度が80%未満の場合には、閾値テーブルBで指定されている閾値d、e、fの各々を閾値テーブル84に設定する。
例えば、感光体ドラムを回転させるモータは、現像器内部にあるトナーの温湿度変化により負荷変動を引き起こす。すなわち、装置内部の環境が高温高湿であるほど負荷が重くなる傾向がある。従って、温湿度による影響を考慮した閾値を設定することが好ましい。また、温湿度による負荷変動は単純な一次関数的に示されるような変動ではなく、指数関数的に増加する傾向がある。このため、本実施の形態では、図5に示すように、温度湿度に応じて複数個の閾値の組み合わせをテーブルに記憶しておき、環境センサ44の検出結果に応じて、閾値が設定されるようにする。
なお、閾値はユニット毎に異なるため、上記選択テーブルや閾値テーブルは、ユニット毎に定められ記憶されている。
比較結果レジスタ86は、3ビットの領域(bit0,bit1,bit2)を有し、この3ビットの領域に上記3つの閾値と比較した比較結果が記憶される。具体的には、パルス幅データが閾値TH1以下のときには、比較結果レジスタの1番目のビット(bit0)にフラグ(1)を立て、他の2ビットはフラグを立てない(0とする)。パルス幅データが閾値TH2を越え且つ閾値TH3以下のときには、比較結果レジスタの2番目のビット(bit1)にフラグを立て、他の2ビットはフラグを立てない。パルス幅データが閾値TH3を越えたときには、比較結果レジスタの3番目のビット(bit2)にフラグを立て、他の2ビットはフラグを立てない。この比較結果レジスタ86により、変調パルス生成部80で生成されたパルスのパルス幅のレベルを把握することができる。CPU52は、この比較結果レジスタ86のフラグの状態に基づいて、ユニットの状態を判断する。
次に、デジタル処理回路58のPWM制御の動作について説明する。
モータ60が回転すると、パルス発生器62は、モータ60の回転に応じたパルスを発生し、カウンタ70に対して出力する。カウンタ70は、パルス発生器62から入力されたパルスのパルス幅に対応するカウント値をカウントし、差分算出部74に対して出力する。差分算出部74は、カウンタ70から入力されたカウント値と、レジスタ72から入力されたモータ60の目標周波数に対応するカウント値とを比較し、プラス側の差分及びマイナス側の差分を算出する。
例えば、ここでカウント値10000dec(2710hex)を目標周波数に対応するカウント値とし、仮にモータの回転に応じてパルス発生器62から出力されるパルスからカウントされたカウント値が11111dec(2B67hex)であった場合には、検出された回転周波数が目標周波数よりも遅いため、2B67hex-2710hex=457hexをプラス側差分として算出し、マイナス側差分として0を算出する。この差分が以下のように用いられてパルス幅としてフィードバックされる。
加算部76は、差分算出部74により算出されたプラス側の差分及びマイナス側の差分を累積加算して24bitのデータを算出し、乗算部78に対して出力する。乗算部78は、モータのワウフラが発生しないよう、加算部76から入力された24bitのデータをレジスタ72から入力されたFBレートによって丸め、20bitのデータとして変調パルス生成部80に対して出力する。
変調パルス生成部80は、乗算部78から入力される20bitのデータと、レジスタ72から入力される設定制御信号により、パルス幅変調したパルスを生成し、ドライバ64に対して出力する。ドライバ64は、変調パルス生成部80から入力されたパルスに従ってモータ60を駆動する。
これにより、モータの回転スピードが遅い場合には、上記差分だけパルス幅がプラスされたパルスが出力され、モータの回転スピードが速い場合には、パルス幅から上記差分だけマイナスしたパルスが出力される。
ただし、モータ60の起動時には、レジスタ72が起動信号を加算部76に対して出力し、変調パルス生成部80からドライバ64に対して所定のパルスが出力されて、モータ60が駆動される。
次に、変調パルス生成部80で生成されたパルスに基づいて、モータの駆動対象であるユニットの状態を判断する処理について説明する。
図6、図7は、CPU52で実行されるユニット状態の判断処理ルーチンの流れを示したフローチャートである。
ステップ100では、環境センサ44から温度レベルを取得し、ステップ102では、環境センサ44から湿度レベルを取得する。
ステップ104では、上記取得した温湿度レベルから、該当するモータ60に対する閾値TH1、TH2、TH3を求める。具体的には、上記図5に示す選択テーブルで閾値テーブルを選択し、選択した閾値テーブルに指定されている閾値TH1、TH2、TH3を読み出す。
ステップ106では、上記で求めた閾値TH1、TH2、TH3を、デジタル処理回路58の閾値テーブル84に設定する。
ステップ108では、該当するモータ60のライフ(累積使用時間)に応じて、異常と判断する回数XをCPU52内の不図示のレジスタにセットする。ここで、累積使用時間として、画像形成装置で常時カウントされているPV(Print Volume、印刷枚数)を使用してもよい。本実施の形態では、上記3つの閾値と変調パルス生成部80で生成されたパルスのパルス幅を示すパルス幅データとの比較結果を連続10回サンプリングし、サンプリングされた各々の比較結果が示すパルス幅レベルのうち、同一のパルス幅レベルがここでセットされた回数Xを越えた場合に、このパルス幅レベルに基づいてユニット状態を判断する。この回数Xは、モータ60のライフに依存する。CPU52は、ライフに応じて回数Xを演算により算出してもよいし、ライフに応じた回数Xを所定のメモリに記憶しておき、これを読み出してセットしてもよい。なお、ここでは、サンプリング回数が10回であるため、Xは10以下の整数とする。
ステップ110では、DCモータの駆動を開始する。
ステップ112では、4つの変数ctr1、ctr2、ctr3、Samp ctrに0をセットする。ここで、変数ctr1は、パルス幅データが閾値TH1以下である回数をカウントするための変数である。変数ctr2は、パルス幅データが閾値TH2を越え、閾値TH3以下となった回数をカウントするための変数である。変数crt3は、パルス幅データが閾値TH3を越えた回数をカウントするための変数である。また、変数Samp ctrは、サンプリング回数をカウントするための変数である。
ステップ114では、DCモータの駆動開始からNmsだけ時間が経過したか否かを判断し、Nmsだけ時間が経過した場合には、ステップ116に移行する。ここで、Nmsは、初期制御時間以上の時間とする。
ステップ116、120、124では、比較結果レジスタ86のフラグの状態を判断する。上述したように、比較結果レジスタ86の3つのビットには、比較器82で変調パルス生成部80から入力したパルス幅データと、上記で設定した3つの閾値TH1、TH2、TH3との最新の比較結果が記憶されている。ステップ116では、比較結果レジスタ86のbit0にフラグが立っているか否かを判断する。ここで、比較結果レジスタ86のbit0にフラグが立っていると判断した場合には、パルス幅データが閾値TH1以下であるため、ステップ118で、変数ctr1に1を加算する。
また、ステップ116で、比較結果レジスタ86のbit0にフラグが立っていないと判断した場合には、ステップ120に移行し、比較結果レジスタ86のbit1にフラグが立っているか否かを判断する。ここで、比較結果レジスタ86のbit1にフラグが立っていると判断した場合には、パルス幅データが閾値TH2を越え、閾値TH3以下となっているため、ステップ122で、変数ctr2に1を加算する。
また、ステップ120で、比較結果レジスタ86のbit1にフラグが立っていないと判断した場合には、ステップ124に移行し、比較結果レジスタ86のbit2にフラグが立っているか否かを判断する。ここで、比較結果レジスタ86のbit2にフラグが立っていると判断した場合には、パルス幅データが閾値TH3を越えたため、ステップ126で、変数ctr3に1を加算する。
また、ステップ124で、比較結果レジスタ86のbit2にフラグが立っていないと判断した場合には、パルス幅データは、閾値TH1を越え閾値TH2以下であるため(ユニットは正常に装着され寿命に到達しておらず正常に動作している見なされる)、ctr1〜ctr3の変数の値は更新されない。
ステップ118、122,126で変数をインクリメントした後、或いはステップ124で否定判定された場合には、ステップ128に移行し、変数Samp Ctrを1インクリメントする。
ステップ130では、変数Samp Crtが10以上になったか否かを判断する。ここで、変数Samp Crtが10未満であると判断した場合には、ステップ114に戻り、上記処理を繰り返す。すなわち、CPU52は比較器82の比較結果を10回サンプリングする。
ステップ130で、変数Samp Crtが10以上になったと判断した場合には、ステップ132(図7)に移行する。ステップ132では、変数ctr1が回数Xを越えたか否かを判断する。ここで、変数ctr1がXを越えたと判断した場合には、パルス幅が小さすぎる、すなわちモータ60の負荷が軽すぎることから、ユニットが画像形成装置に装着されていないと判断し、ステップ134に移行し、タッチパネルディスプレイなどのユーザインターフェイス(図示せず)にユニットが装着されていない旨のメッセージを表示する。
ステップ132で、変数ctr1がXを越えていないと判断した場合には、ステップ136に移行し、変数ctr2がXを越えたか否かを判断する。ここで、変数ctr2が回数Xを越えたと判断した場合には、パルス幅が大きい、すなわちモータ60の負荷が重くなってきており、ユニットの寿命が近づいていると判断し、ステップ138に移行し、ユーザインターフェイスにユニットの寿命が近づいている旨の警告メッセージを表示する。
ステップ136で、変数ctr2がXを越えていないと判断した場合には、ステップ140に移行し、変数ctr3がXを越えたか否かを判断する。ここで、変数ctr3が回数Xを越えたと判断した場合には、パルス幅が大きすぎる、すなわちモータ60の負荷が異常に重いため、ユニットに異常が発生したと判断し、ステップ142に移行し、ユーザインターフェイスにユニットに異常が発生した旨のメッセージを表示する。
ステップ140で、変数ctr3がXを越えていないと判断した場合には、変数ctr1〜ctr3のいずれもX回を越えていない、すなわち、パルス幅データは、閾値TH1を越え閾値TH2以下の状態が続いているため、ユニットは正常に装着され寿命に到達しておらず正常に動作している見なされ、メッセージの表示等は行われず、画像形成動作が継続される。
ステップ134、138,142でメッセージを表示した後、或いはステップ140で否定判定された場合には、ステップ144に移行し、変数ctr1、ctr2、ctr3、Samp ctrに0をセットする。
ステップ146では、モータ60のON状態を継続するか否かを判断する。画像形成動作が終了していない間は、ここでは否定判断され、ステップ148に移行する。
ステップ148では、ステップ108と同様に、該当するモータ60のライフ(使用期間)に応じて、異常と判断する回数XをCPU52内の不図示のレジスタにセットする。すなわち、上記10回のサンプリング経過後、モータのライフも変化しているため、それに合わせて、Xの値を新たにセットする。
Xをセットした後は、ステップ114に移行し、上記と同様の処理を繰り返す。
なお、ここでは、1回の画像形成動作期間では、温度や湿度に大きな変化は生じないと考え、ステップ146の後は、閾値TH1、TH2、TH3は変更していないが、これに限定されず、例えば、温度や湿度が大きく変化すると考えて、ステップ146で肯定判断された後に、ステップ100に戻って、新たに閾値を設定するようにしてもよい。
また、ステップ146で、画像形成動作が終了した場合には、モータ60のOFF状態にするため、否定判断されて、本処理ルーチンは終了する。
なお、上記では、10回サンプリングする期間中に、同じ比較結果(同じパルス幅レベル)が何回出現したかを見て、その比較結果に基づいてユニットの状態を判断するようにしたが、サンプリング期間に限らず同じ比較結果が所定回数連続した場合に、その比較結果に基づいてユニットの状態を判断するようにしてもよい。
ここで、具体的な数値を例に挙げて説明する。
例えば、モータの回転を500Hzとし、PWM周波数をモーター回転基本周波数の8倍にあたる4KHzでPWM制御するとする。このとき1周期は250μSとなる。この1周期におけるパルス幅に対して、閾値TH1=20μS、閾値TH2=125μS、閾値TH3=200μSの3種類の閾値を閾値テーブル84に設定する。
上記閾値TH1以下のパルス幅データをサンプリング期間のうち所定回数以上検出した場合、あるいは所定回数連続して検出した場合には、モータ駆動ユニットが無負荷(未装着)であると判断する。
閾値TH2を超え閾値TH3以下のパルス幅データをサンプリング期間のうち所定回数以上検出した場合、あるいは所定回数連続して検出した場合には、モータ60が駆動する負荷ユニットがトルク大になっていることを示すため、負荷の寿命に近づいた(交換時期である)と判断する。
また、閾値TH3を越えるパルス幅データをサンプリング期間のうち所定回数以上検出した場合、あるいは所定回数連続して検出した場合には、モータ60が駆動する負荷ユニットの異常であると判断できる。
なお、パルス幅データが閾値TH3を越える状態が所定期間以上継続した場合には、モータ60の異常発熱の恐れが生じるため、2次障害を防ぐために、デジタル処理回路58は、CPU52からのコマンド(命令)によらず、モータ60を停止させるようにしてもよい。あるいはCPU52からモータ60を停止するコマンドを発行してもよい。
以上説明したように、変調パルス生成部80で生成されたパルスのパルス幅を示すパルス幅データを複数個の閾値と比較し、この比較結果に基づいてユニットの状態を判断するようにしたため、低コストでかつユニットの状態を容易に判断することができる。
また、上記実施の形態では、デジタル処理回路58(ASIC)内に閾値を比較するための比較部82を設けたため、アナログの素子を使用する場合に比べて、検出回路を安定化させるための高価な回路を設ける必要もなく、また全く別の制御回路を設ける必要も無くなる。すなわち、上記実施の形態では、デジタル処理回路58に設けられた回路で、パルス幅データと複数個の閾値とを比較して判断することが可能であるため、低コスト化できる。また、デジタル処理であるため、高精度に処理できる。さらにまた、同一のモータで異なるユニットを駆動する場合であっても、ユニット毎に(使用用途によって)個別に閾値を設定することができ、高精度にユニットの状態を判断できる。
また、ユニットの寿命などの判断を実回転の検出結果に基づいて判断できるため、従来、予測制御に頼っていた交換表示を実際の寿命まで伸ばすことができる。
また、ユニットに異常が発生した場合でも、フューズ等の保護回路を破損する前にモータを停止したり、ユニットを交換する等の適切な対応をとることができる。
なお、上記実施の形態では、環境センサ44で検出された温度や湿度に応じて閾値を変更する例について説明したが、環境による変動が小さい場合には、温度や湿度を考慮せず、ユニット毎に定められた閾値を設定するだけでも、ユニットの状態を判断することは可能である。
また、記録用紙の種類(紙質)に応じて、ユニットの回転体のトルク変化が生じるような場合には、記録用紙の種類毎に閾値を変更するようにしてもよい。
また、上記実施の形態では、パルス幅を示すパルス幅データを複数個の閾値と比較し、この比較結果のみに基づいてユニットの状態を判断するようにしたが、該比較結果に加えて各ユニット毎の実際の使用期間も考慮して、ユニットの状態を判断するようにしてもよい。
また、上記実施の形態では、モータ60のライフ(累積使用時間)に応じて、異常と判断する回数Xをセットする例について説明したが、これに限定されず、モータ60の種類やモータ60が駆動するユニットの種類に応じて回数Xを決定してセットするようにしてもよい。
また、上記実施の形態では、比較結果のサンプリング期間(数)を10回とする例について説明したが、これに限定されず、画像形成装置やモータ、ユニットに応じて好適な回数を設定することができる。
また、上記実施の形態では、ユニットの装着状態、ユニットの寿命、及びユニットの異常状態の各々を複数個の閾値と比較して判断する例について説明したが、これに限定されず、ユニットの装着状態、ユニットの寿命、及びユニットの異常状態のいずれか1つのみあるいはいずれか2つを複数個の閾値と比較して判断するようにしてもよい。また、異常状態についてより詳細に判断する場合には、異常レベル(軽度、中度、重度など)を判断するための閾値を複数個設定して判断したりすることもできる。寿命についても、寿命にはまだ至っていないか、寿命に近づきつつあるか、寿命に到達したか、等の寿命レベルを複数の閾値で判断することもできる。
なお、上記実施の形態では、PWM制御において、カウンタ70は、パルス発生器62から入力されるパルスに対し、パルス幅をクロック信号に同期してカウントすることによって計測し、このカウント値(デジタルデータ)を回転数として差分算出部74に出力する例について説明したが、これに限定されず、例えば、以下のようにカウント値を算出して差分算出部74に出力することもできる。
例えば、図8に示すように、パルス発生器62が出力するデューティー比が50%のパルスに対し、カウンタ70は、パルス幅及びパルス間隔それぞれをクロック信号に同期してカウントすることによって計測し、それぞれのカウント値(デジタルデータ)を差分算出部74に出力する。このように、カウンタ70は、パルス幅からデータxを計数し、パルス間隔からデータyを計数することにより、パルス発生器62が出力するパルスに対して2種類のカウント値を計数することができ、パルスの数に対して2倍のデータを計数することができる。この2種類のカウント値の各々を変調パルス生成部80でパルスを生成するのに用いることによって、モータ60の回転に伴うパルス発生器62からのパルスが少ない場合にも、制御部50は、モータ60の回転を精度よく制御することができる。また、このような回転数データを用いて変調パルス生成部80で生成されたパルスを、ユニットの状態判断に用いることによって、より精度高くユニットの状態を判断することができる。なお、この2種類のカウント値は、変調パルス生成部80において個々に用いてもよいし、両者を平均化して用いることもできる。
また、図9に示すように、ホールを3つ有するホール素子90をパルス発生器62に設けた場合には、ホール素子90の回転軸92がモータ60の回転軸と共に回転し、モータ60が1回転すると、パルス発生器62からパルスが3つ出力される。ここで、図8に示したように、パルス発生器62から出力されるパルスに対し、カウンタ70がパルス幅及びパルス間隔それぞれをクロック信号に同期してカウントすると、モータ60の回転に対する回転数を示すデータを6つ計数することができる。
このように、モータ60の回転数を示すデータをパルスの数よりも増やすことができるため、モータ60の回転に伴うパルス発生器62からのパルスが少ない場合にも、制御部50は、モータ60の回転を精度よく制御することができる。
また、上記ホール素子90による3つのパルスのパルス幅を平均化した値、及び3つのパルスのパルス間隔を平均化した値のそれぞれを変調パルス生成部80で用いてもよい。このように平均化したものを用いてPWM制御することによって、パルス発生器62で発生するパルスにばらつき(機械的な誤差)が生じても、そのばらつきを低減させることができる。また、このようにパルス幅やパルス間隔の平均値に基づいて変調パルス生成部80で生成されたパルスを、ユニットの状態判断に用いることによって、より精度高くユニットの状態を判断することができる。
さらにまた、図10に示すように、パルス発生器62から出力されるパルスに対し、カウンタ70は、例えば3つのパルスごとに、パルス幅を移動平均することによってパルス幅に対するカウント値を計数し、機械的な誤差を拡散するようにしてもよい。また、同様に、パルス発生器62から出力されるパルスに対し、カウンタ70は、例えば3つのパルスごとに、パルス間隔を移動平均することによってパルス間隔に対するカウント値を計数してもよい。さらにまた、パルス幅及びパルス間隔それぞれを移動平均したものを組合わせてカウント値を計数するようにしてもよい。このように移動平均値を用いて制御することによって、パルス発生器62で発生するパルスにばらつき(機械的な誤差)が生じても、そのばらつきを低減させることができる。
また、このようにパルス幅やパルス間隔の移動平均値に基づいて変調パルス生成部80で生成されたパルスを、ユニットの状態判断に用いることによって、より精度高くユニットの状態を判断することができる。