(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0010】
以下、本発明について実施形態をもって説明するが、本発明は、後述する実施形態に限定されるものではない。
図1は、本発明の画像形成装置のハードウェア構成を示す概略図である。
【0011】
画像形成装置100は、カラー印刷が可能なタンデム方式の画像形成装置である。画像形成装置100は、コントローラ110と、露光装置120と、感光体ドラム122a〜122dと、転写ベルト124と、パターン検出装置126とを備える。
【0012】
コントローラ110は、画像形成装置100が備える種々のハードウェア装置を制御する手段である。コントローラ110は、プロセッサ111と、ROM112と、RAM113と、出力値算出部114と、書込部115と、カウンタ116とを備える。
【0013】
プロセッサ111は、種々の演算を行うCPUやMPU等の演算処理装置である。ROM112は、本発明のプログラムやデータなどを持続的に保持するための記憶装置である。RAM113は、本発明のプログラムを実行するためのメモリ空間を提供すると共に、種々のデータを一時的に保存する記憶装置である。
【0014】
プロセッサ111は、UNIX(登録商標)、LINUX(登録商標)、WINDOWS(登録商標)OS、ITRON、VxWORKs、QNX、EneaOSEなどの種々のOSの管理下で、本発明のプログラムをROM112から読み取り、RAM113に展開して実行することにより、後述する機能を画像形成装置上で実現する。本発明のプログラムは、アセンブラ、C、C++、Java(登録商標)、Java Script(登録商標)、PERL、RUBY、PYTHONなどの種々のプログラミング言語で記述することができる。
【0015】
出力値算出部114は、パターン検出装置126の出力電圧であるセンサ出力値を算出する手段である。出力値算出部114は、パターン検出装置126の出力電流によって印加されたセンサ出力値を算出する。
【0016】
書込部115は、印刷対象の画像を規定する画像情報に基づいて、露光装置120を制御する手段である。書込部115は、露光装置120の露光タイミングを制御することにより、帯電した感光体ドラム122a〜122dに静電潜像を形成する。
【0017】
カウンタ116は、一定の時間間隔で数値を計数する手段である。カウンタ116は、他の手段の要求に応じて、当該要求時に保持する数値であるカウンタ値を提供する。
【0018】
露光装置120は、感光体ドラム122a〜122dを露光する装置である。露光装置120は、ポリゴンミラーと、レーザダイオード等の光源(図示せず)と、複数のミラーとを備えており、光源が照射する光線をポリゴンミラーおよびミラーで反射して感光体ドラム122a〜122dを露光し、静電潜像を形成する。
【0019】
感光体ドラム122a〜122dは、露光装置120の照射光によって静電潜像が形成される感光体である。感光体ドラム122a〜122dは、帯電装置によって帯電された後、露光装置120から光線が照射され、感光体ドラムの表面上に静電潜像が形成され、現像装置によってCMYK色のトナーが付着される。
【0020】
転写ベルト124は、感光体ドラム122a〜122dに付着したトナーが転写されるベルトである。感光体ドラム122a〜122d上の各色のトナーは、転写ローラによって転写ベルト124が各感光体ドラムに押圧されることによって転写される。
【0021】
パターン検出装置126は、転写ベルト124に転写されたトナーの転写位置を検出するパターン画像(以下、「検出パターン」とする。)を検出する手段である。パターン検出装置126は、
図2に示すように、発光装置210と、受光装置212とを備えている。
【0022】
発光装置210は、転写ベルト124に光を照射する装置である。受光装置212は、発光装置210が転写ベルト124に照射した光の反射光を検知する装置である。受光装置212は、転写ベルト124または
図2に示すような検出パターンの反射光を受光すると、その光量に応じた出力電流をコントローラ110の出力値算出部114に供給する。反射光の光量は、トナーが付着していない転写ベルト124部分の光量が最も大きく、トナーが付着した部分については、トナーの濃度が高いほど光量が小さくなる。
【0023】
図3は、本発明の画像形成装置に実装される補正部の機能構成を示す図である。以下、
図3を参照して、補正部300の機能構成について説明する。
【0024】
補正部300は、転写ベルト124上のトナーの転写位置のずれを補正する手段である。トナーの転写位置のずれとは、転写ベルト124上の同一の位置に各色のトナーを転写する場合に生じ得る各色トナーの転写位置のずれである。補正部300は、制御部301と、出力値取得部302と、トナー位置検出部303と、色ずれ判断部304と、補正パラメータ算出部305とを備える。
【0025】
制御部301は、補正部300が実行する処理の全体制御を行う手段である。制御部301は、出力値取得部302、トナー位置検出部303および補正パラメータ算出部305を用いて、露光装置120による感光体ドラム122a〜122dの露光タイミングの補正に利用される補正パラメータを算出する。
【0026】
出力値取得部302は、出力値算出部114からセンサ出力値を取得する手段である。出力値取得部302は、制御部301やトナー位置検出部303の要求に応じてセンサ出力値を取得する。
【0027】
トナー位置検出部303は、検出パターンを形成するトナーの位置を検出する手段である。トナー位置検出部303は、転写ベルト124上の各色のトナー位置を示すトナー位置情報を取得する処理であるトナー位置検出処理を実行する。トナー位置検出処理については、
図5および
図6を参照して詳述する。
【0028】
色ずれ判断部304は、トナーの転写位置にずれが生じているか判断する手段である。色ずれ判断部304は、トナー位置検出部303が取得したトナー位置情報を使用して各色のトナーの転写位置ずれを算出する。トナー位置情報は、転写ベルト124上のトナーを検出した際にカウンタ116が提供するカウンタ値であり、色ずれ判断部304は、検出パターンを形成するトナー各色のカウンタ値の差分を算出する。
【0029】
具体的には、色ずれ判断部304は、例えば、Y色のトナーを検出した際のカウンタ値と、その他の各色(BCM)のトナーを検出した際のカウンタ値との差分を算出する。これらのカウンタ値の差分が、トナーの転写位置ずれが生じていない場合に期待されるカウンタ値の差分と異なる場合は、色ずれ判断部304は、トナーの転写位置にずれが生じていると判断する。
【0030】
補正パラメータ算出部305は、露光装置120による感光体ドラム122a〜122dの露光タイミングを是正する補正パラメータを算出する手段である。補正パラメータ算出部305は、トナーの転写位置にずれが生じている場合は、当該位置ずれを是正する補正パラメータ値を算出する。書込部115は、この補正パラメータを用いて露光装置120の露光タイミングを補正する。
【0031】
本実施形態では、コントローラ110が実行するソフトウェアプログラムによって補正部300を実現するが、他の実施形態では、補正部300の機能を有する半導体集積回路を画像形成装置100に実装してもよい。
【0032】
図4は、補正部300が実行する補正パラメータの算出処理を示すフローチャートである。以下、
図4を参照して、補正パラメータの算出処理について説明する。
【0033】
図4の処理は、ステップS400から開始し、ステップS401では、補正部300の制御部301が出力値取得部302を呼び出し、出力値取得部302が、出力値算出部114からセンサ出力値の最大値(V
belt)を取得する。センサ出力値の最大値(V
belt)は、トナーの付着していない転写ベルトに照射された光の反射光を検出したパターン検出装置126によって出力される。
【0034】
ステップS402では、制御部301がトナー位置検出部303を呼び出し、トナー位置検出部303が、検出パターンの各色についてトナー位置検出処理を実行し、転写ベルト124上のトナー位置を検出する。
【0035】
ステップS403では、制御部301が、検出パターンの全色についてトナー位置検出処理を実行したか否か判断する。全色についてトナー位置検出処理を実行していない場合は(no)、ステップS402に処理が分岐し、トナー位置検出部303が、トナー位置検出処理を実行していない色についてトナー位置検出処理を実行する。一方、全色についてトナー位置検出処理を実行した場合は(yes)、ステップS404に処理が分岐する。
【0036】
ステップS404では、制御部301が色ずれ判断部304を呼び出し、色ずれ判断部304が、トナー位置検出処理で取得した各色のトナー位置情報を使用して、トナーの色ずれが生じているか否か判断する。トナーの色ずれが生じていない場合は(no)、ステップS407で処理が終了する。一方、トナーの色ずれが生じている場合は(yes)、ステップS405に処理が分岐する。
【0037】
ステップS405では、制御部301が補正パラメータ算出部305を呼び出し、補正パラメータ算出部305が、ずれが生じている色のトナーが付着される感光体ドラムの露光タイミングを補正する補正パラメータを算出する。ステップS406では、補正パラメータ算出部305は、当該補正パラメータをRAM113に保存し、ステップS407で処理が終了する。
【0038】
図5は、
図4のステップS402に示すトナー位置検出処理の一実施形態を示すフローチャートである。
図5の処理は、ステップS500から開始し、ステップS501でトナー位置検出部303が、第1の閾値(Th
1)を設定する。ここで、Δd1はセンサ出力値の最大値(V
belt)と第1の閾値との差分である。本実施形態では、パターン検出装置126が、トナーの付着していない転写ベルト124に一定時間光を照射し、その反射光によるセンサ出力値の最大値とノイズによって減少する最小値との差分にマージンを加えた値を、第1の閾値(Th
1)とすることが好適である。
【0039】
ステップS502では、トナー位置検出部303は、出力値取得部302にセンサ出力値を取得させる。ステップS503では、トナー位置検出部303は、センサ出力値が第1の閾値(Th
1)を下回ったか否か判断する。センサ出力値が第1の閾値(Th
1)を下回っていない場合は(no)、ステップS502に処理が分岐し、センサ出力値が第1の閾値(Th
1)を下回るまでステップS502の処理を反復する。一方、センサ出力値が第1の閾値(Th
1)を下回った場合は(yes)、ステップS504に処理が分岐する。
【0040】
ステップS504では、トナー位置検出部303は、センサ出力値が第1の閾値(Th
1)を下回ったときのトナーの位置情報を当該センサ出力値と関連付けてRAM113に保存する。ステップS505では、トナー位置検出部303は、次の閾値(Th
j)を設定する。
【0041】
ここで、変数jは2以上の整数であり、初期値は2とする。Δd1はノイズの影響を避ける役割があるので比較的大きく、Δd2はセンサ出力が変化し始めている段階であるためノイズの影響を受けにくい。このため、Δd2値は、Δd1よりも小さな値とすることができる(Δd1>Δd2)。また、以降の閾値の差分(例えば、第2の閾値と第3の閾値との差分)は、Δd2と同じである。
【0042】
ステップS506では、トナー位置検出部303は、変数jをインクリメントする。ステップS507では、トナー位置検出部303は、出力値取得部302にセンサ出力値を取得させる。ステップS508では、トナー位置検出部303は、当該センサ出力値が閾値(Th
j)を下回ったか否か判断する。センサ出力値が閾値(Th
j)を下回った場合は(yes)、ステップS504に処理が分岐する。一方、センサ出力値が閾値(Th
j)以上である場合は(no)、ステップS509に処理が分岐する。
【0043】
ステップS509では、トナー位置検出部303は、当該センサ出力値が閾値(Th
j―1)を上回ったか否か判断する。当該センサ出力値が閾値(Th
j―1)を上回っていない場合は(no)、ステップS507に処理が分岐する。一方、当該センサ出力値が閾値(Th
j―1)を上回った場合は(yes)、ステップS510に処理が分岐する。
【0044】
ステップS510では、トナー位置検出部303は、判定用閾値決定処理を実行する。ステップS511では、トナー位置検出部303は、RAM113に保存されているトナーの位置情報のうち判定用閾値を初めて下回ったときのセンサ出力値に関連付けられている位置情報を残し、それ以外の位置情報を削除する。本実施形態では、判定用閾値を初めて下回ったときのセンサ出力値に関連付けられている位置情報のみをRAM113に残すが、他の実施形態では、判定用閾値を下回るセンサ出力値に関連付けられている総ての位置情報を残してもよい。これにより、メモリの不要な使用量を削減することができる。
【0045】
ステップS512では、トナー位置検出部303は、出力値取得部302にセンサ出力値を取得させる。ステップS513では、トナー位置検出部303は、当該センサ出力値が判定用閾値を上回ったか否か判断する。本実施形態では、センサ出力値が判定用閾値を上回るか否か判断するが、他の実施形態では、センサ出力値が判定用閾値以上であるか否か判断してもよい。
【0046】
センサ出力値が判定用閾値以下である場合は(no)、ステップS512に処理が分岐する。一方、センサ出力値が判定用閾値を上回った場合は(yes)、ステップS514に処理が分岐する。ステップS514では、トナー位置検出部303は、センサ出力値が判定用閾値を上回ったときのトナーの位置情報をRAM113に保存し、ステップS515で処理が終了する。本実施形態では、ステップS513でセンサ出力値が判定用閾値を上回ったと判断したときのトナーの位置情報を保存するが、ステップS511の削除処理で複数のトナーの位置情報を残す実施形態では、ステップS513でセンサ出力値が判定用閾値以下であると判断したときのトナーの位置情報を保存してもよい。
【0047】
色ずれ判断部304は、
図5に示す処理でRAM113に保存されたトナー位置情報であるカウンタ値を使用して、各色のトナー検出位置を特定し、色ずれの有無を判断することができる。例えば、センサ出力値が判定用閾値を初めて下回ったときのトナーの位置情報と、ステップS513でセンサ出力値が判定用閾値を上回ったと判断したときのトナーの位置情報とがRAM113に保存されている場合は、色ずれ判断部304は、これらの位置情報の平均値を、トナー検出位置を示す位置情報として特定することができる。
【0048】
また、判定用閾値を下回るセンサ出力値に関連付けられている複数のトナーの位置情報と、ステップS513でセンサ出力値が判定用閾値以下であると判断したときのトナーの位置情報とがRAM113に保存されている場合は、色ずれ判断部304は、これらの位置情報の平均値を、トナー検出位置を示す位置情報として特定することができる。
【0049】
図6は、
図5のステップS510に示す判定用閾値決定処理を示すフローチャートである。以下、
図6を参照して判定用閾値決定処理の2つの実施形態について説明する。なお、
図6に示す実施形態では、判定用閾値決定処理を実行する際に整数nが変数jに設定されているものとする。
【0050】
図6に示す判定用閾値決定処理の一実施形態は、ステップS600から開始し、ステップS601でトナー位置検出部303が、センサ出力値の最大値(V
belt)と第n−1の閾値(Th
n―1)の平均値を算出する。ステップS602では、トナー位置検出部303は、第1の閾値から第n−1の閾値のうち当該平均値と同一の値または当該平均値に近似する値を判定用閾値として決定し、ステップS603で処理が終了する。
【0051】
図6に示す判定用閾値決定処理の別の実施形態は、ステップS604から開始し、ステップS605でトナー位置検出部303が、第1の閾値から第nの閾値の中間値である第n/2の閾値を判定用閾値として決定し、ステップS606で処理が終了する。ここで、n/2が割り切れない値である場合は、小数点以下の値を切り上げまたは切り捨てた値を採用する。
【0052】
図7は、
図5に示す処理を採用する実施形態において、センサ出力値の変化と、当該変化に伴って補正部300が実行する処理のタイミングを示す図である。
【0053】
パターン検出装置126が転写ベルト124上のトナーを検出していないときには、センサ出力値は最大値(V
belt)となる。転写ベルト124の周動に伴い、検出パターンがパターン検出装置126の近傍に搬送され、パターン検出装置126が検出パターンを形成するトナーを検出すると、
図7に示すように、トナーの階調に従ってセンサ出力値が減少する。
図7に示すグラフは、トナーの中心部の反射率が最も低い理想的な例を示すが、補正部300は、トナーの中心部以外の部分の反射率が最も低い場合でも、トナーの転写位置のずれを補正することができる。
【0054】
補正部300は、センサ出力値を監視し、センサ出力値が第1の閾値(Th
1)を下回ると、そのときのトナーの位置情報を保存し、第2の閾値(Th
2)を設定する。補正部300は、センサ出力値が第2の閾値(Th
2)を下回るか監視し、センサ出力値が第2の閾値(Th
2)を下回ると、そのときのトナーの位置情報を保存し、第3の閾値(Th
3)を設定する。補正部300は、センサ出力値が閾値を下回らなくなるまで、同様の処理を反復する。
【0055】
続けて転写ベルト124が周動され、検出パターンを形成するトナーの中心部に照射された光の反射光がパターン検出装置126によって検出されると、出力値の最小値が出力される。さらに転写ベルト124が周動され、検出パターンを形成するトナーの中心部と端部との間に照射された光の反射光が検知されると、センサ出力値が増加する。センサ出力値が増加し、2番目に小さい閾値(Th
n-1)を上回ると、補正部300は、判定用閾値決定処理を実行して判定用閾値を決定する。これにより、判定用閾値を決定するための専用の検出パターンを使用することなく、判定用閾値を決定することができる。
【0056】
補正部300は、センサ出力値の監視を継続し、センサ出力値が判定用閾値を上回ると、そのときのトナーの位置情報を取得する。補正部300は、上述したように、当該位置情報および判定用閾値を下回るセンサ出力値に関連する位置情報を使用してトナーの検出位置を特定し、色ずれが生じているか否かを判断する。
【0057】
図8は、
図4のステップS402に示すトナー位置検出処理の別の実施形態を示すフローチャートである。以下、
図8を参照して、トナー位置検出処理の別の実施形態について、
図5に示すトナー位置検出処理との相違点を中心に説明する。
【0058】
図8の処理は、ステップS800から開始し、ステップS801でトナー位置検出部303が、第1の閾値(Th
1)を設定する。ステップS802では、トナー位置検出部303は、ROM112から既定値である初期設定閾値を取得する。初期設定閾値の一例として、ベルト表面でのセンサ出力のノイズの影響とトナー濃度の変動の影響を避けるために、初期設定閾値はベルト表面(トナーのない位置)でのセンサ出力値の50%の値を採用することができる。
【0059】
ステップS803では、トナー位置検出部303は、出力値取得部302にセンサ出力値を取得させる。ステップS804では、トナー位置検出部303は、センサ出力値が第1の閾値(Th
1)を下回ったか否か判断する。
【0060】
センサ出力値が第1の閾値(Th
1)を下回っていない場合は(no)、ステップS803に処理が分岐し、センサ出力値が第1の閾値(Th
1)を下回るまでステップS803の処理を反復する。一方、センサ出力値が第1の閾値(Th
1)を下回った場合は(yes)、ステップS805に処理が分岐する。
【0061】
ステップS805では、トナー位置検出部303は、センサ出力値が第1の閾値(Th
1)を下回ったときのトナーの位置情報をRAM113に保存する。ステップS806では、トナー位置検出部303は、次の閾値(Th
j)を設定する。ステップS807では、トナー位置検出部303は、変数jをインクリメントする。ステップS808では、トナー位置検出部303は、出力値取得部302にセンサ出力値を取得させる。
【0062】
ステップS809では、トナー位置検出部303は、当該センサ出力値が初期設定閾値を下回ったか否か判断する。本実施形態では、センサ出力値が初期設定閾値を下回ったか否か判断するが、他の実施形態では、センサ出力値が初期設定閾値以下になったか否か判断してもよい。
【0063】
センサ出力値が初期設定閾値を下回っていない場合は(no)、ステップS810に処理が分岐する。ステップS810では、トナー位置検出部303は、当該センサ出力値が閾値(Th
j)を下回ったか否か判断する。センサ出力値が閾値(Th
j)を下回った場合は(yes)、ステップS805に処理が分岐する。一方、センサ出力値が閾値(Th
j)以上である場合は(no)、ステップS811に処理が分岐する。
【0064】
ステップS811では、トナー位置検出部303は、当該センサ出力値が閾値(Th
j―1)を上回ったか否か判断する。当該センサ出力値が閾値(Th
j―1)を上回っていない場合は(no)、ステップS808に処理が分岐する。一方、当該センサ出力値が閾値(Th
j―1)を上回った場合は(yes)、ステップS812に処理が分岐する。ステップS812では、トナー位置検出部303は、判定用閾値決定処理を実行する。
【0065】
一方、ステップS809の判定でセンサ出力値が初期設定閾値を下回った場合は(yes)、ステップS813に処理が分岐する。ステップS813では、トナー位置検出部303は、センサ出力値が初期設定閾値を下回ったときのトナーの位置情報をRAM113に保存する。ステップS814では、トナー位置検出部303は、初期設定閾値を判定用閾値として決定する。
【0066】
ステップS815では、トナー位置検出部303は、RAM113に保存されているトナーの位置情報のうち判定用閾値を下回るセンサ出力値に関連付けられている位置情報以外の位置情報を削除する。ステップS816では、トナー位置検出部303は、出力値取得部302にセンサ出力値を取得させる。ステップS817では、トナー位置検出部303は、当該センサ出力値が判定用閾値を上回ったか否か判断する。
【0067】
センサ出力値が判定用閾値以下である場合は(no)、ステップS816に処理が分岐する。一方、センサ出力値が判定用閾値を上回った場合は(yes)、ステップS818に処理が分岐する。ステップS818では、トナー位置検出部303は、センサ出力値が判定用閾値を上回ったときのトナーの位置情報をRAM113に保存し、ステップS819で処理が終了する。
【0068】
図9は、
図8に示す処理を採用する実施形態において、センサ出力値の変化と、当該変化に伴って補正部300が実行する処理を示す図である。
【0069】
補正部300は、センサ出力値を監視し、センサ出力値が第1の閾値(Th
1)を下回ると、そのときのトナーの位置情報を保存し、センサ出力値が初期設定閾値を下回るか監視する。センサ出力値が初期設定閾値を下回らない場合は、センサ出力値が第2の閾値(Th
2)を下回るか監視する。センサ出力値が第2の閾値(Th
2)を下回ると、補正部300は、そのときのトナーの位置情報を保存し、センサ出力値が初期設定閾値を下回るか監視する。
【0070】
センサ出力値が初期設定閾値を下回ると、補正部300は、そのときのトナーの位置情報を保存し、初期設定閾値を判定用閾値として決定する。これにより、判定用閾値を決定するための専用の検出パターンを使用することなく、判定用閾値を決定することができる。
【0071】
そして、補正部300は、センサ出力値が初期設定閾値を上回るか監視し、センサ出力値が初期設定閾値を上回ったときの位置情報や判定用閾値を下回るセンサ出力値に関連する位置情報を使用して、色ずれが生じているか否かを判断する。
【0072】
これまで本実施形態につき説明してきたが、本発明は、上述した実施形態に限定されるものではなく、本実施形態の構成要素を変更若しくは削除し、または本実施形態の構成要素に他の構成要素を追加するなど、当業者が想到することができる範囲内で変更することができる。いずれの態様においても本発明の作用効果を奏する限り、本発明の範囲に含まれるものである。