(57)【特許請求の範囲】
【請求項１】
画像形成制御および紙搬送制御を行うマスターＣＰＵと、そのマスターＣＰＵからのデータに基づいて前記マスターＣＰＵが制御する紙搬送より搬送方向上流側の紙搬送制御を行うスレーブＣＰＵと、
前記マスターＣＰＵと前記スレーブＣＰＵとを接続して所定の負荷の動作を制御するためのデータを送信するシリアル通信線と、
を備え、
前記マスターＣＰＵ及び前記スレーブＣＰＵはそれぞれの動作の基準となるクロック信号を発生する発振回路を有し、
前記マスターＣＰＵと前記スレーブＣＰＵ間で所定の通信データの受け渡しを、前記シリアル通信線を使用して、前記マスターＣＰＵ側の発振回路のクロック信号により予め決められた所定時間を有するシリアル通信で行い、
前記スレーブＣＰＵ側の発振回路のクロック信号による前記所定時間のカウント値に応じて前記スレーブＣＰＵ側の発振回路のクロック信号に基づく紙搬送制御に係る前記所定の負荷に関連する信号を補正することを特徴とする画像形成装置。
【請求項２】
マスターＣＰＵとそのマスターＣＰＵからのデータに基づいて所定の負荷の動作を制御するスレーブＣＰＵを備え、
前記マスターＣＰＵは画像形成制御および紙搬送制御を行い、
前記スレーブＣＰＵは前記マスターＣＰＵが制御する紙搬送より搬送方向上流側の紙搬送制御を行い、
前記マスターＣＰＵと前記スレーブＣＰＵ間で所定の通信データの受け渡しを、前記マスターＣＰＵ側の発振回路のクロック信号により予め決められた所定時間を有するシリアル通信で行い、
前記スレーブＣＰＵ又は前記マスターＣＰＵは、
各ＣＰＵ側の発振回路のクロック信号により、前記シリアル通信の予め決められた所定時間をカウントし、
前記予め決められた所定時間と前記カウントで得られたカウンタ値とからスレーブＣＰＵ側の発振回路のクロック周波数（又は周期）を算出し、
前記算出したスレーブＣＰＵ側の発振回路のクロック周波数（又は周期）と、当該スレーブＣＰＵ側において予め決められたクロック周波数（又は周期）とを比較し、両クロック周波数（又は周期）の差異からスレーブＣＰＵ側の発振回路のクロック周波数（又は周期）の変動を検出し、
前記検出したスレーブＣＰＵ側の発振回路のクロック周波数の変動に基づいて、スレーブＣＰＵによる紙搬送の動作が、スレーブＣＰＵ側において予め決められたクロック周波数に基づく動作となるように前記スレーブＣＰＵ側の発振回路のクロック信号に基づく紙搬送制御に係る前記所定の負荷に関連する信号の補正を行う画像形成装置。
【請求項３】
請求項２において、
前記予め決められた所定時間は、シリアル通信において通信データ間の送信間隔であり、
前記マスターＣＰＵは、前記スレーブＣＰＵへ予め決められた所定時間の送信間隔でシリアル通信を行い、
前記スレーブＣＰＵは、前記スレーブＣＰＵ側の発振回路のクロック信号で前記送信間隔をカウントし、前記予め決められた所定時間と前記カウントで得られたカウンタ値とからスレーブＣＰＵ側の発振回路のクロック周波数を算出する画像形成装置。
【請求項４】
請求項２において、
前記予め決められた所定時間は、前記通信データのデータ送信時間であり、
前記マスターＣＰＵは、前記スレーブＣＰＵへ予め決められた所定時間のデータ送信時間の通信データをシリアル通信し、
前記スレーブＣＰＵは、スレーブＣＰＵ側の発振回路のクロック信号で前記通信データのデータ送信時間をカウントし、予め決められた所定時間と前記カウントで得られたカウンタ値とからスレーブＣＰＵ側の発振回路のクロック周波数を算出する画像形成装置。
【請求項５】
請求項１から４までのいずれか１項において、
前記スレーブＣＰＵ側の発振回路の発振精度は、前記マスターＣＰＵ側の発振回路の発振精度より低い画像形成装置。
【請求項６】
請求項２において、
前記画像形成部および複数段の紙搬送部は直列接続自在であり、各紙搬送部はそれぞれスレーブＣＰＵを備え、
マスターＣＰＵと各スレーブＣＰＵとをカスケード接続し、当該カスケード接続においてマスターＣＰＵ側を上流側としてシリアル通信を行い、
下流側のスレーブＣＰＵは、予め決められた所定時間のカウントにおいて、当該下流側のスレーブＣＰＵに接続される上流側のマスターＣＰＵ又はスレーブＣＰＵからの通信データのデータ長及び／又は通信データ間の時間間隔に基づいて、前記予め決められた所定時間を取得し、取得した所定時間を当該下流側のＣＰＵ側の発振回路のクロック信号によりカウントし、
前記予め決められた所定時間と前記カウントで得られたカウンタ値とからスレーブＣＰＵ側の発振回路のクロック周波数を算出する画像形成装置。
【請求項７】
請求項２において、
前記画像形成部および複数段の紙搬送部は直列接続自在であり、各紙搬送部はそれぞれスレーブＣＰＵを備え、
マスターＣＰＵと各スレーブＣＰＵとをカスケード接続し、当該カスケード接続においてマスターＣＰＵ側を上流側としてシリアル通信を行い、
上流側のスレーブＣＰＵ又はマスターＣＰＵは、予め決められた所定時間のカウントにおいて、当該上流側のスレーブＣＰＵに接続される下流側のマスターＣＰＵからの通信データのデータ長及び／又は通信データ間の時間間隔に基づいて、前記予め決められた所定時間を取得し、取得した所定時間を当該上流側のスレーブＣＰＵ側の発振回路のクロック信号又はマスター側の発振回路のクロック信号によりカウントし、
前記予め決められた所定時間と前記カウントで得られたカウンタ値とからスレーブＣＰＵ側の発振回路のクロック周波数を算出する画像形成装置。
【請求項８】
請求項２において、
前記画像形成部および複数段の紙搬送部は直列接続自在であり、各紙搬送部はそれぞれスレーブＣＰＵを備え、
マスターＣＰＵと各スレーブＣＰＵとをカスケード接続し、当該カスケード接続においてマスターＣＰＵ側を上流側としてシリアル通信を行い、
下流側のスレーブＣＰＵは、予め決められた所定時間のカウントにおいて、当該下流側のスレーブＣＰＵに接続される上流側のマスターＣＰＵ又はスレーブＣＰＵからの通信データのデータ長及び／又は通信データ間の時間間隔に基づいて、前記予め決められた所定時間を取得し、取得した所定時間を当該下流側のＣＰＵ側の発振回路のクロック信号によりカウントし、前記予め決められた所定時間と前記カウントで得られたカウンタ値とからスレーブＣＰＵ側の発振回路のクロック周波数（又は周期）を算出して第１のクロック周波数（又は周期）とし、
上流側のスレーブＣＰＵは、予め決められた所定時間のカウントにおいて、当該上流側のスレーブＣＰＵに接続される下流側のマスターＣＰＵからの通信データのデータ長及び／又は通信データ間の時間間隔に基づいて、前記予め決められた所定時間を取得し、取得した所定時間を当該上流側のスレーブＣＰＵ側の発振回路のクロック信号によりカウントし、前記予め決められた所定時間と前記カウントで得られたカウンタ値とからスレーブＣＰＵ側の発振回路のクロック周波数を算出して第２のクロック周波数とし、
前記第１のクロック周波数と第２のクロック周波数とに重み付けを行って当該スレーブＣＰＵのクロック周波数を算出する画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置に関する。特に、マスターＣＰＵとそのマスターＣＰＵからのデータに基づいて所定の負荷の動作を制御するスレーブＣＰＵを備える画像形成装置に関する。
【背景技術】
【０００２】
従来、画像形成装置として、レーザビームを走査することによって転写材に画像を形成するレーザビームプリンタがある。
【０００３】
図１５は従来のレーザビームプリンタの概略構成を示す図である。図１５（ａ）は画像形成部２に一つのオプションカセットを接続する構成を示し、図１５（ｂ）は画像形成部２に複数のオプションカセットを多段に接続する構成を示している。
【０００４】
レーザビームプリンタ等の画像形成装置１は、静電記録方式によって画像を転写紙６に形成する画像形成部２を備える。
【０００５】
画像形成部２は、イメージ展開部（図示せず）からレーザビームのオン、オフ信号を受け取り、このオン、オフ信号に基づきレーザビームを駆動することによって転写紙６に画像を形成する。画像形成部２は転写紙を搭載するためのカセット桶３２を備え、内部の転写紙搬送機構（図示していない）は、カセット桶３２から取り出した転写紙を搬送する。転写紙搬送機構を駆動するモータ（図示していない）は、ステッピングモータが使用されることが多く、マスターＣＰＵ１８によって制御が行われる。
【０００６】
画像形成部２は給紙部１６を備えたオプションカセット１７を着脱自在としている。オプションカセット１７は装着した画像形成部２に対して、給紙部１６の内部に備える転写紙搬送機構（図示していない）によってカセット桶３２に収納した転写紙６を画像形成部２に送る。給紙部１６内のスレーブＣＰＵ１９は、マスターＣＰＵ１８からの指示を通信手段（図示していない）によって送受信し、スレーブＣＰＵ１９に内蔵あるいは外装したＲＯＭ（図示せず）に格納されたプログラムに従って給紙部１６を制御する。マスターＣＰＵ１８は画像形成部２を制御し、スレーブＣＰＵ１９は給紙部１６を制御する。
【０００７】
従来、マスターＣＰＵ１８とスレーブＣＰＵ１９との間のデータ送受信には、調歩同期式シリアルもしくはクロック同期式シリアル通信が代表的通信手段として使用されることが多い。以下では、クロック同期式シリアル通信を例に説明する。
【０００８】
図１６にマスターＣＰＵ１８とスレーブＣＰＵ１９の通信の概略を説明するための接続概略図を示す。
【０００９】
通信手段２０は、マスターＣＰＵ１８が出力するクロック信号を送るクロック信号線（CLK）３０５と、マスターＣＰＵ１８が出力するクロック信号に同期したコマンド信号を送るコマンド信号線（CMD）３０６と、スレーブＣＰＵ１９が出力するステータス信号を送るステータス信号線（STS）３０７を有している。
【００１０】
ステータス信号は、クロック信号線（M-CLK）３０５のクロック信号に同期して送信される。ステータス信号線（STS）３０７は、スレーブＣＰＵ１９からマスターＣＰＵ１８への一方向に限らず双方向としてもよい。また、ステータス信号線（STS）３０７は、オプションカセット１７に設けられたセンサ出力を割り込ませて送っても良い。
【００１１】
図１７は、クロック信号（M-CLK信号）とコマンド信号（CMD信号）とステータス信号（STS信号）のタイミングチャートを示している。
【００１２】
マスターＣＰＵ１８は、クロック信号（M-CLK信号）に同期したコマンド信号（CMD信号）をスレーブＣＰＵ１９へ送出し、スレーブＣＰＵ１９はクロック信号（CLK信号）に同期したステータス信号（STS信号）をマスターＣＰＵ１８へ返送することで２つのＣＰＵ間の通信が成立する。
【００１３】
また、図１６に示すように、マスターＣＰＵ１８は、マスターＣＰＵ用クロック回路２２からのクロックＭ−ＣＬＫ２１に同期して動作する。一方、スレーブＣＰＵ１９はスレーブＣＰＵ用クロック回路２４からのクロックＳ−ＣＬＫ２３に同期して動作する。
【００１４】
マスターＣＰＵ用クロック回路２２は、画像形成部２における静電潜像や転写紙搬送を制御するために、精度の高いクロック発振回路である水晶発振器を使用していることが多い。
【００１５】
また、スレーブＣＰＵ１９からの駆動信号によって駆動されるオプションモータ（図示していない）の回転速度に誤差が発生すると、オプションカセット１７の転写紙搬送速度にも当然誤差が生じる。転写紙搬送速度の誤差が生じると、オプションカセット１７から搬送された転写紙は、画像形成部２の搬送ローラとの間で受渡しがスムーズに行われず、転写紙が破れたり、逆に座屈したりして、転写紙搬送が不可能となってしまい適切な画像形成動作が得られなくなってしまう。
【００１６】
このため、オプションカセット１７の転写紙搬送速度の精度を上げるために、スレーブＣＰＵ用クロック回路２４についても、精度の高いクロック発振回路である水晶発振器を使用していることが多い。
【００１７】
また、図１５（ｂ）は、オプションカセット１７−１〜１７−３を多段構成として給紙部１６−１〜１６−３を多段とし、且つ、スレーブＣＰＵ１９−１〜１９−３がマスターＣＰＵ１８に対しカスケード接続される構成を示す。ここでは、給紙部１６−１〜１６−３は３段構成の例を示しているが、３段に限るものではなく、２段であっても３段以上であってもよい。
【００１８】
この多段構成では、マスターＣＰＵ１８から最下段のスレーブＣＰＵ１９−３へ送信データ１８−１を送信する。スレーブＣＰＵ１９−３は、受け取った送信データからスレーブＣＰＵ１９−３に関連するデータを取り出し、ＲＯＭ（図示していない）に格納されているプログラムに従って搬送処理等の処理を行った後、一段上のスレーブＣＰＵ１９−２へ送信データ１８−２を送信する。
【００１９】
スレーブＣＰＵ１９−２は、送信データからスレーブＣＰＵ１９−２に関連するデータを取り出し、ＲＯＭ（図示していない）に格納されているプログラムに従って搬送処理等の処理を行った後、一段上のスレーブＣＰＵ１９−１へ送信データ１８−３を送信する。
【００２０】
スレーブＣＰＵ１９−１は、受け取った送信データからスレーブＣＰＵ１９−１に関連するデータを取り出し、ＲＯＭ（図示していない）に格納されているプログラムに従って搬送処理等の処理を行った後、一段上のマスターＣＰＵ１８へ送信データ１８−４を送信する。
【００２１】
両面搬送ユニット、オプションカセットユニット、オプション封筒ユニット等の複数のオプションユニットに対して同時期に同じ処理を実行させる場合、オプション通信部から各オプションユニットに対して時系列的に通信処理を行って実行させると処理にずれが生じるという問題がある。このような問題に対して、複数のオプションユニットに対して個別に信号を供給する制御と、複数のオプションユニットに共通の信号を供給する制御とを設け、エンジン制御部の状態に応じて信号供給モードを変える画像形成装置が知られている。
【００２２】
この信号供給モードは、所定の信号を複数のオプションユニット各々に対して時系列に出力するモードと、複数のオプションユニットに固有の信号を複数のオプションユニットに対して同時に出力するモードである（特許文献１）。
【先行技術文献】
【特許文献】
【００２３】
【特許文献１】特開平９−１９３５０８号公報
【発明の概要】
【発明が解決しようとする課題】
【００２４】
近年メカトロニクス制御用のＣＰＵの技術革新がめざましく、安価なＲＣ発振回路を内蔵したワンチップＣＰＵが提供されるようになった。
【００２５】
ＣＰＵ等の半導体内で構成されるＲＣ発振回路の精度は、水晶発振子やセラミック発振子に比べると精度に点で劣るものであるが、高い発振精度を必要としない制御部分では使用することができる。また、ＣＰＵに対して発振器もしくは発振子を外付けする必要が無く、単純かつ安価な構成で制御部分を構成できるといった利点がある。
【００２６】
しかしながら、転写紙搬送速度の精度を必要とする給紙部では、転写紙を搬送するモータは発振器の発振周期に基づいて駆動され、転写紙の搬送速度の精度は発振器の発振精度に依存することになる。そのため、画像形成装置において、画像形成部とオプションカセットに設けられる給紙部の発振回路の発振精度が異なると、両者の転写紙の搬送速度の精度も異なることになり、ひいては転写紙の搬送に支障が生じることになる。そのため、給紙部においても画像形成部と同様に、高い発振精度を有した発振器を使用しなければならず、発振精度が劣るＲＣ発振回路を使用することによって得られる利点を享受できないという問題がある。
【００２７】
そのため、オプションカセットの給紙部側のＣＰＵを駆動する発振回路として、発振精度が劣るＲＣ発振回路を使用した場合であっても、転写紙の搬送速度の精度に差異が生じない構成が求められている。
【００２８】
本発明は、マスターＣＰＵとスレーブＣＰＵのそれぞれを駆動する発振回路の発振精度が異なる場合であっても適正な画像形成動作を行うことが可能な画像形成装置を提供することを目的としている。
【００２９】
さらに、本発明は、画像形成部に対して複数の給紙部が接続されて、給紙を搬送する構成が多段に構成され、且つ、各給紙部を制御するスレーブＣＰＵが画像形成部を制御するマスターＣＰＵに対し、直列にカスケード接続されている場合であっても、転写紙の搬送速度の精度に大きな差異が生じさせないことを目的としている。
【課題を解決するための手段】
【００３０】
上記目的を達成するために、本発明による画像形成装置は、画像形成制御および紙搬送制御を行うマスターＣＰＵと、そのマスターＣＰＵからのデータに基づいて前記マスターＣＰＵが制御する紙搬送より搬送方向上流側の紙搬送制御を行うスレーブＣＰＵと、前記マスターＣＰＵと前記スレーブＣＰＵとを接続して所定の負荷の動作（operation）を制御するためのデータを送信するシリアル通信線と、を備え、前記マスターＣＰＵ及び前記スレーブＣＰＵはそれぞれの動作の基準となるクロック信号を発生する発振回路を有し、前記マスターＣＰＵと前記スレーブＣＰＵ間で所定の通信データの受け渡しを、前記シリアル通信線を使用して、前記マスターＣＰＵ側の発振回路のクロック信号により予め決められた所定時間を有するシリアル通信で行い、前記スレーブＣＰＵ側の発振回路のクロック信号による前記所定時間のカウント値に応じて前記スレーブＣＰＵ側の発振回路のクロック信号に基づく紙搬送制御に係る前記所定の負荷に関連する信号を補正する。
【００３１】
より具体的には、前記マスターＣＰＵは画像形成制御および紙搬送制御を行い、前記スレーブＣＰＵは前記マスターＣＰＵが制御する紙搬送より搬送方向上流側の紙搬送制御を行い、前記マスターＣＰＵと前記スレーブＣＰＵ間は前記通信データの受け渡しを、予め決められた所定時間を有するシリアル通信で行う。前記スレーブＣＰＵ又は前記マスターＣＰＵは、各ＣＰＵ側の発振回路のクロック信号により、前記シリアル通信の予め決められた所定時間をカウントし、前記予め決められた所定時間と前記カウントで得られたカウンタ値とからスレーブＣＰＵ側の発振回路のクロック周波数を算出し、前記算出したスレーブＣＰＵ側の発振回路のクロック周波数（又は周期）と、当該スレーブＣＰＵ側において予め決められたクロック周波数（又は周期）とを比較し、両クロック周波数（又は周期）の差異からスレーブＣＰＵ側の発振回路のクロック周波数（又は周期）の変動を検出し、前記検出したスレーブＣＰＵ側の発振回路のクロック周波数の変動に基づいて、スレーブＣＰＵによる紙搬送の動作が、スレーブＣＰＵ側において予め決められたクロック周波数に基づく動作となるように補正を行う。
【発明の効果】
【００３２】
本発明によれば、画像形成装置において、マスターＣＰＵ及びスレーブＣＰＵはそれぞれの動作の基準となるクロック信号を発生する発振回路を有し、スレーブＣＰＵは、マスターＣＰＵから送信される所定データの送信時間をスレーブＣＰＵが備える発振回路が発生するクロック信号に基づいてカウントし、そのカウント値に応じてスレーブＣＰＵが所定の負荷に関連する信号を補正することで、各発振回路の差異を低減させることができる。
【００３３】
また、本発明によれば、画像形成装置において、画像形成制御および紙搬送を行う画像形成部側のマスターＣＰＵと紙搬送を行う紙搬送部側のスレーブＣＰＵを有し、各発振回路で形成されるクロック信号で駆動される転写紙搬送速度の精度の差異を低減させることができる。
【図面の簡単な説明】
【００３４】
【図１】本発明の画像形成装置の構成を説明するための概略図である。
【図２】マスターＣＰＵとスレーブＣＰＵとの間で行われる通信の概略を説明するための接続図である。
【図３】送信間隔を所定時間として行うカウント動作を説明するためのタイミングチャートである。
【図４】本発明のクロック周波数（又は周期）の推定動作を説明するためのフローチャートである。
【図５】データ送信時間の時間幅を所定時間として行うカウント動作を説明するためのタイミングチャートである。
【図６】マスターＣＰＵとスレーブＣＰＵとの間で行われる通信の概略を説明するための接続図である。
【図７】補正用信号の信号幅を所定時間として行うカウント動作を説明するためのタイミングチャートである。
【図８】本発明の第１の態様の概要を説明するための図である。
【図９】本発明の画像形成装置の第２の態様の構成例について説明するための図である。
【図１０】本発明の画像形成装置の第２の態様の第１の形態と第２の形態を説明するための図である。
【図１１】本発明の画像形成装置の第２の態様の第３の形態を説明するための図である。
【図１２】マスターＣＰＵとスレーブＣＰＵの間の送信状態を説明するための図である。
【図１３】マスターＣＰＵとスレーブＣＰＵの間の送信状態を説明するためのタイミングチャートである。
【図１４】本発明のクロック周波数（又は周期）の推定動作を説明するためのフローチャートである。
【図１５】従来のレーザビームプリンタの概略構成を示す図である。
【図１６】マスターＣＰＵ１８とスレーブＣＰＵ１９の通信の概略を説明するための接続概略図を示す図である。
【図１７】クロック信号（CLK信号）とコマンド信号（CMD信号）とステータス信号（STS信号）のタイミングチャートを示す図である。
【発明を実施するための形態】
【００３５】
本発明を実施する最良の形態について、以下に図を用いて詳細に説明する。
本発明における画像形成装置の構成を、図１を用いて説明する。図１は本発明の画像形成装置の構成を説明するための概略図である。図１では、レーザビームプリンタの例を用いて示している。レーザビームプリンタは、レーザビームを走査することによって転写材に画像を形成する画像形成装置であるが、本発明はレーザビームに限られるものではなく、搬送される用紙上に画像を形成する任意の形式の画像形成装置に適用することができる。  
【００３６】
レーザビームプリンタ等の画像形成装置１は、図１に示すように、静電記録方式によって画像を転写紙６に形成する画像形成部２と給紙部１６を備える。給紙部１６はフィニッシャー（ＦＩＮ）、オートドキュメントフィーダ（ＡＤＦ）と共に紙搬送部を構成することができる。なお、フィニッシャーは画像を形成する用紙を扱い、オートドキュメントフィーダは、読取対象の原稿を扱うものである。
【００３７】
以下では、紙搬送部について主に給紙部を用いて説明する。
【００３８】
画像形成部２は、イメージ展開部１４からレーザビームのオン／オフ信号を受け取り、このオン／オフ信号に基づいてレーザビームを駆動することによって転写紙６に画像を形成し、主電源５によって電力供給を受ける。
【００３９】
イメージ展開部１４は、画像形成装置１の外部に備えたホストコンピュータ３０であるＣＰＵとシリアルインタフェースあるいはパラレルインタフェースを介して接続され、ホストコンピュータ３０から受け取った画像情報をビットマップに展開する。
【００４０】
画像形成部２は、ドラム状の感光体３，現像装置１３，定着装置１０が転写紙６の搬送路に沿って配置され、感光体３上にはレーザスキャナ４が設けられている。
【００４１】
レーザスキャナ４は、例えば、半導体レーザ、回転多面鏡、光学レンズなどから構成され、ビットマップの画像情報に基づくオン／オフ信号によりレーザ光を変調し、変調したレーザビームを感光体３上に走査する。これによって、感光体３上には出射されたレーザビームによって静電潜像が形成される。感光体３上に形成された静電潜像は、現像装置１３によって現像され、感光体３上に現像剤像が形成される。
【００４２】
転写紙６の搬送路は、カセット桶３２，給紙ローラ７，搬送ローラ３４，フラッパ１２等により形成される。カセット桶３２から給紙ローラ７で取り出され、搬送ローラ３４で搬送された転写紙６は、画像が形成された後、排紙口１５から排出される。給紙ローラ７および搬送ローラ３４は、マスターＣＰＵ１８で制御されるモータ（図示していない）によって駆動される。
【００４３】
また、搬送路上には、転写紙６が所定位置に達したことを検出するレジストセンサ８、および排紙センサ１１が設けられる。レジストセンサ８は、転写紙６が感光体３の入口側に到達したことを検出するセンサである。排紙センサ１１は、定着装置１０の出口側に設けられ、定着装置１０における紙づまり（ジャム）を検出するセンサである。
【００４４】
レジストセンサ８は、感光体３の入口側に転写紙６が到達したことを検出する。このレジストセンサ８が転写紙を検出すると、画像形成処理が開始される。
【００４５】
感光体３上に形成された現像剤像は、給紙ローラ７から搬送路に沿って送り出された転写紙６に転写ローラ９で転写される。この現像剤像が転写された転写紙６は定着装置１０に送られる。
【００４６】
定着装置１０は、転写紙６を加熱、加圧することによって転写紙６に現像剤像を定着させる。画像が定着された転写紙６は、フラッパ１２を経て排紙口１５から外部に搬出される。フラッパ１２は、フェイスアップ排紙およびフェイスダウン排紙などの排紙状態を形成するための手段である。フェイスアップ排紙は、画像形成面が上を向いている状態で行う排紙動作であり、フェイスダウン排紙は、画像形成面が下を向いている状態で行う排紙動作である。
【００４７】
画像形成部２の画像形成制御および紙搬送制御は、マスターＣＰＵ１８で行われる。マスターＣＰＵ１８は、ＲＯＭ１８ａを内蔵あるいは外装し、このＲＯＭ１８ａに格納されている制御プログラムに基づいて画像形成部２の画像形成動作および転写紙の搬送動作を制御する。
【００４８】
給紙部１６は、オプションカセット１７内に設けられ、カセット桶３３から転写紙を取り出して画像形成部２に供給する。給紙部１６は、所定のサイズを有する転写紙をカセット桶３３に収納する。カセット桶３３に収納する転写紙は、画像形成部２のカセット桶３２に収納された転写紙と同サイズに限らず、任意のサイズとすることができる。給紙部１６は、オプションピックアップローラ３１とオプションカセット給紙搬送ローラ３５をモータ３６で駆動し、転写紙を画像形成部２に送り出す動作を行う。点線３８は、モータからの駆動伝達状況を模式的に表している。モータ３６はステッピングモータが使用されることが多く、スレーブＣＰＵ１９によって制御される。
【００４９】
給紙部１６内のスレーブＣＰＵ１９は、マスターＣＰＵ１８が制御する紙搬送より搬送方向上流側の紙搬送制御を行い、マスターＣＰＵ１８からの指示を通信手段２０によって送受信する。スレーブＣＰＵ１９は、ＲＯＭ１９ａを内蔵あるいは外装し、このＲＯＭ１９ａに格納されている制御プログラムに基づいて給紙部１６の転写紙の搬送動作を制御する。
【００５０】
したがって、マスターＣＰＵ１８は画像形成部２を制御し、スレーブＣＰＵ１９は給紙部１６を制御する。マスターＣＰＵ１８とスレーブＣＰＵ１９との間のデータ送受信は、通信手段２０によって行われる。マスターＣＰＵ１８とスレーブＣＰＵ１９の間は通信データの受け渡しを、予め決められた所定時間を有するシリアル通信で行う。本実施の形態では、この通信はクロック同期式シリアル通信で行われているが、調歩同期またはこれに類するシリアル通信方式であっても良い。
【００５１】
図２はマスターＣＰＵ１８とスレーブＣＰＵ１９との間で行われる通信の概略を説明するための接続図である。
【００５２】
通信手段２０は、マスターＣＰＵ１８が出力するクロック信号を送るクロック信号線（M-CLK）３０５と、マスターＣＰＵ１８が出力するクロック信号に同期したコマンド信号を送るコマンド信号線（CMD）３０６と、スレーブＣＰＵ１９が出力するステータス信号を送るステータス信号線（STS）３０７を有している。
【００５３】
ステータス信号は、クロック信号線（M-CLK）３０５のクロック信号に同期して送信される。ステータス信号線（STS）３０７は、スレーブＣＰＵ１９からマスターＣＰＵ１８への一方向に限らず双方向としてもよい。また、ステータス信号線（STS）３０７は、オプションカセット１７に設けられたセンサ出力を割り込ませて送っても良い。
【００５４】
クロック信号（M-CLK信号）とコマンド信号（CMD信号）とステータス信号（STS信号）の信号関係は、前記した図１７のタイミングチャートと同様である。
【００５５】
マスターＣＰＵ１８は、クロック信号（M-CLK信号）に同期したコマンド信号（CMD信号）をスレーブＣＰＵ１９へ送出し、スレーブＣＰＵ１９はクロック信号（M-CLK信号）に同期したステータス信号（STS信号）をマスターＣＰＵ１８へ返送することで２つのＣＰＵ間の通信が成立する。
【００５６】
図２に示すように、マスターＣＰＵ１８は、マスターＣＰＵ用クロック回路２２からのクロックＭ−ＣＬＫ２１に同期して動作する。一方、スレーブＣＰＵ１９はスレーブＣＰＵ用クロック回路２４からのクロックＳ−ＣＬＫ２３に同期して動作する。
【００５７】
マスターＣＰＵ用クロック回路２２は、画像形成部２における静電潜像や転写紙搬送を制御するために、精度の高いクロック発振回路である水晶発振器を使用していることが多い。一方、本発明の構成では、スレーブＣＰＵ用クロック回路１０１は精度の低いＲＣ発振回路で構成することができ、スレーブＣＰＵ１９内に内蔵させて形成することができる。
【００５８】
なお、スレーブＣＰＵ用クロック回路１０１は、スレーブＣＰＵへ外部部品として接続する構成とすることもできる。
【００５９】
給紙部１６のオプションモータ３６は、スレーブＣＰＵ１９からの駆動信号３７によって駆動される。この駆動信号３７は、スレーブＣＰＵ用クロック回路１０１に同期して形成される。このスレーブＣＰＵ用クロック回路１０１として発振精度の低いＲＣ発振回路を使用すると、オプションモータ３６の回転速度が予め設定した回転速度からずれるズレの程度が大きくなる場合が生じる。このようにオプションモータ３６の回転速度が予め設定した回転速度からずれると、給紙部１６から搬送された転写紙の搬送速度は、画像形成部２の搬送ローラ３４による搬送速度との間に誤差が生じることになる。その結果として、転写紙の受渡しがスムーズに行われず、転写紙が破れたり、逆に座屈したりして、転写紙搬送が不可能となってしまうことになる。
【００６０】
そこで、本発明の画像形成装置の実施の態様は、予め決められた所定時間の形成において、画像形成部に設けたマスターＣＰＵ側の発振回路のクロック周波数又はクロック周期に基づいて所定時間を形成する第１の態様と、紙搬送部に設けたスレーブＣＰＵ側の発振回路のクロック周波数又はクロック周期に基づいて所定時間を形成する第２の態様（後述）とを含む。本発明の第１の態様は、マスターＣＰＵ１８とスレーブＣＰＵ１９との間の通信において予め決められた所定時間を、スレーブＣＰＵ１９においてＲＣ発振回路のクロック信号でカウントして測定して、ＲＣ発振回路のクロック発振周期（又は周波数）を求める。求めたクロック発振周期（又は周波数）と予め決められたクロック発振周期（又は周波数）とを比較することによって、ＲＣ発振回路のクロック発振周期（又は周波数）のズレを求め、このズレに基づいて、ステッピングモータの回転や他の動作を補正する補正値を求める。
【００６１】
この第１の態様において、予め決められた所定時間は、シリアル通信において、通信データを送信する送信間隔の時間幅とする第１の形態、通信データ自体のデータ送信時間の時間幅、あるいは通信データを送信しない時間の時間幅とする第２の形態、補正用信号を用いる第３の形態の各形態により行うことができる。
【００６２】
以下、第１の形態を図３、図４を用いて説明し、第２の形態を図５を用いて説明し、第３の形態を図６、図７を用いて説明する。
【００６３】
はじめに、第１の形態について、図３，図４を用いて説明する。
【００６４】
第１の形態は、予め決められた所定時間として通信データを送信する送信間隔の時間幅を用いる形態である。
【００６５】
マスターＣＰＵは、スレーブＣＰＵへ予め決められた所定時間の送信間隔でシリアル通信を行い、スレーブＣＰＵは、スレーブＣＰＵ側の発振回路のクロック信号で前記送信間隔をカウントする。このカウントで得られたカウンタ値と、予め決められた所定時間とからスレーブＣＰＵ側の発振回路のクロック周波数（又は周期））を算出する。
【００６６】
図３は、スレーブＣＰＵが送信間隔ｔ0を所定時間としてカウント動作を行うタイミングチャートを示し、図４は、スレーブＣＰＵによる送信間隔のカウント動作を行う際のフローチャートを示している。
【００６７】
図３に示す各信号は、図１７と同様であり、図３（ａ）はコマンド信号線（CMD）３０６を示し、図３（ｂ）はステータス信号線（STS）３０７を示し、図３（ｃ）はクロック信号線（M-CLK）３０５を示している。
【００６８】
マスターＣＰＵ１８はスレーブＣＰＵ１９へｔ0の送信間隔でコマンド信号ＣＭＤ０とコマンド信号ＣＭＤ１を送信する。マスターＣＰＵ用クロック回路２２は例えば水晶発振器で構成され、発振精度の高いクロック信号を出力する。マスターＣＰＵ１８が送信するコマンド信号ＣＭＤ０とのコマンド信号ＣＭＤ１の送信間隔は、クロック信号Ｍ−ＣＬＫ３０５に同期しているため、この送信間隔の時間幅ｔ0は高い精度を有している。また、クロック信号線（M-CLK）３０５で送信されるクロック信号Ｍ−ＣＬＫについても、その送信間隔の時間幅ｔ0は高い精度を有している。
【００６９】
図３（ｄ）は、スレーブＣＰＵにおいて、スレーブＣＰＵ内のクロック信号Ｓ−ＣＬＫによって送信間隔の時間幅ｔ0をカウントするカウント動作状態を示している。
【００７０】
スレーブＣＰＵ１９は、例えば、コマンド信号ＣＭＤ０の先頭ビットからコマンド信号ＣＭＤ１の先頭ビットまでの時間を、クロック信号Ｓ−ＣＬＫ２３に同期してカウントしてカウンタ値ｃ0を得る。
【００７１】
ここで、スレーブＣＰＵ１９側のクロック信号Ｓ−ＣＬＫ２３の周期は、中央値Ｔ0cを中心として、上限値Ｔ0uと下限値Ｔ0dの幅で変動する。このクロック周期が変動する要因としては部品個体差、温度変化、電圧変化等が挙げられる。
【００７２】
図３（ｄ）から分かるように、Ｓ−ＣＬＫの周期が上限値Ｔ0uのときにはカウンタ値ｃ0ｕが得られ、Ｓ−ＣＬＫの周期が中央値Ｔ0ｃのときにはカウンタ値ｃ0ｃが得られ、Ｓ−ＣＬＫの周期が下限値Ｔ0ｄのときにはカウンタ値ｃ0ｄが得られる。したがって、カウンタ値ｃ0は、ｃ0ｃを中心として、上限のカウンタ値ｃ0ｕと下限のカウンタ値ｃ0ｄの幅で変動する。
【００７３】
ここで、クロック信号Ｓ−ＣＬＫ２３の周波数（又は周期）は以下の式（１）で求められる。
Ｓ−ＣＬＫ周波数＝カウンタ値c0／時間間隔t0    …（１）
【００７４】
式（１）のＳ−ＣＬＫ周波数又はその逆数のＳ−ＣＬＫ周期の変化を、給紙部内のステッピングモータ制御や他の動作制御に反映させる。
【００７５】
例えば、ステッピングモータの回転動作と回転数との関係を定めたステッピングモータ駆動テーブルにおいて、この回転数の値を、Ｓ−ＣＬＫのクロック周波数（又は周期）に応じて変更することで、ステッピングモータの駆動で実現される動作速度が一定となるように補正する。
【００７６】
これは、ステッピングモータでは、その回転速度は与えられるクロックのクロック周波数（又は周期）に依存するため、クロック周波数（又は周期）が変動すると同じ回転数であっても回転速度も変動するためである。本発明は、クロック周波数（又は周期）の変動に対応して回転数を変更することによってステッピングモータの回転速度を一定に保持する。
【００７７】
ステッピングモータ駆動テーブルは、種々の回転動作に対する回転数を定めておくものであり、クロック周波数（又は周期）の変動に応じてこの回転数を補正することによって、クロック周波数（又は周期）が変動した場合であっても回転速度を一定に保持することができる。
【００７８】
次に、図４のフローチャートに従ってスレーブＣＰＵ側のクロック周波数（又は周期））を推定する動作について説明をする。なお、ここでは、予め決められた所定時間として通信データを送信する送信間隔の時間幅を用いる場合を示している。
【００７９】
画像形成装置によるプリント動作を開始した後（S1）、各プリント動作の前に以下に示すS5〜S8の動作によってスレーブＣＰＵ側のクロック周波数（又は周期）を推定する(S2)。なお、ここでは、スレーブＣＰＵ側のクロック周波数（又は周期）の推定をプリント動作毎に行う例を示しているが、この推定動作はプリント動作毎に行う場合に限らない。例えば、画像形成装置の電源投入時に行う他、所定時間間隔で行うようにしても良い。
【００８０】
プリントのジョブ単位あるいは所定時間内では、スレーブＣＰＵ１９のクロック周波数はほぼ安定していると見なせる。
【００８１】
S2のスレーブＣＰＵ側のクロック周波数（クロック周期）の推定では、はじめに、マスターＣＰＵ１８からコマンド信号ＣＭＤ０とコマンド信号ＣＭＤ１を予め決められた送信間隔の時間幅ｔ0で送出する(S5)。
【００８２】
スレーブＣＰＵ１９は、コマンド信号ＣＭＤ０の先頭ビットからコマンド信号ＣＭＤ１の先頭ビットまでの時間ｔ0を、スレーブＣＰＵ側のクロック信号Ｓ−ＣＬＫ２３に同期してカウント（すなわち測定）し、カウンタ値ｃ0を取得する（S6）。スレーブＣＰＵ１９は、取得したカウンタ値ｃ0を用いて、スレーブＣＰＵ側のクロック周波数（又は周期）を前記した式（１）に基づいて算出する。
Ｓ−ＣＬＫ周波数＝カウンタ値c0／時間間隔t0    …（１）
【００８３】
上記式（１）において、時間間隔t0はマスターＣＰＵ側のクロック信号に基づいて形成されるものであるため高い精度を有している。
【００８４】
一方、カウンタ値ｃ0は、スレーブＣＰＵ側のクロック周波数の変動に依存して変化する。したがって、式（１）で算出したＳ−ＣＬＫ周波数は、スレーブＣＰＵ側のクロック周波数を表している(S7)。
【００８５】
式（１）で算出したＳ−ＣＬＫ周波数を元にしてステッピングモータ駆動テーブル等を補正する。なお、ここでは、ステッピングモータ駆動テーブルの例を示しているが、給紙部１６側においてスレーブＣＰＵ側のクロック周波数に基づいて駆動する構成についても同様とすることができる。対応する駆動テーブルを補正することによって、スレーブＣＰＵ側のクロック周波数の変動にかかわらず一定の動作速度と維持することができる(S8)。
【００８６】
S5〜S8の動作によってスレーブＣＰＵ側のクロック周波数（又は周期）の推定が完了し、駆動テーブルの補正が完了した後（S2）、プリント動作を行って（S3）、プリント処理を終了する(S4)。
【００８７】
上記した例では、送信間隔の時間幅をコマンド信号ＣＭＤ０の先頭ビットからコマンド信号ＣＭＤ１の先頭ビットまでの時間から求める例を示している（図３中のＡで示す区間）が、この例に限らず他の時間幅を用いても良い。例えば、コマンド信号ＣＭＤ０の終了ビットからコマンド信号ＣＭＤ１の終了ビットまでの時間間隔（図３中のＢで示す区間）を用いたり、コマンド信号ＣＭＤ０のクロック信号とのコマンド信号ＣＭＤ１のクロック信号のクロック信号間隔（図３中のＣ，Ｄで示す区間）を用いても良い。
【００８８】
次に、第２の形態について、図５を用いて説明する。図５は、スレーブＣＰＵがデータ送信時間の時間幅ｔ0を所定時間としてカウント動作を行うタイミングチャートを示している。
【００８９】
第２の形態は、予め決められた所定時間として通信データ自体のデータ送信時間の時間幅を用いる形態である。
【００９０】
マスターＣＰＵは、スレーブＣＰＵへ予め決められた所定時間のデータ送信時間の通信データをシリアル通信し、スレーブＣＰＵは、スレーブＣＰＵ側の発振回路のクロック信号で通信データのデータ送信時間をカウントする。このカウントで得られたカウンタ値と、予め決められた所定時間とからスレーブＣＰＵ側の発振回路のクロック周波数（又は周期）を算出する。
【００９１】
図５は、スレーブＣＰＵがデータ送信時間ｔ0を所定時間としてカウント動作を行うタイミングチャートを示している。
【００９２】
図５に示す各信号は、図３と同様であり、図５（ａ）はコマンド信号線（CMD）３０６を示し、図５（ｂ）はステータス信号線（STS）３０７を示し、図５（ｃ）はクロック信号線（M-CLK）３０５を示している。
【００９３】
マスターＣＰＵ１８はスレーブＣＰＵ１９へｔ0のデータ送信時間でコマンド信号ＣＭＤ０を送信する。マスターＣＰＵ１８が送信するコマンド信号ＣＭＤ０のデータ送信時間の時間幅は、発振精度の高い晶発振器のクロック信号Ｍ−ＣＬＫ２１に同期しているため、このデータ送信時間の時間幅ｔ0は高い精度を有している。また、クロック信号線（M-CLK）３０５で送信されるクロック信号Ｍ−ＣＬＫについても、そのデータ送信時間に相当する時間幅ｔ0は高い精度を有している。
【００９４】
図５（ｄ）は、スレーブＣＰＵにおいて、スレーブＣＰＵ内のクロック信号Ｓ−ＣＬＫによってデータ送信時間の時間幅ｔ0をカウントするカウント動作状態を示している。
【００９５】
スレーブＣＰＵ１９は、コマンド信号ＣＭＤ０のデータ送信時間の時間幅ｔ0を、クロック信号Ｓ−ＣＬＫ２３に同期してカウントしてカウンタ値ｃ0を得る。
【００９６】
ここで、スレーブＣＰＵ１９側のクロック信号Ｓ−ＣＬＫ２３の周期は、中央値Ｔ0cを中心として、上限値Ｔ0uと下限値Ｔ0dの幅で変動する。このクロック信号が変動する要因としては部品個体差、温度変化、電圧変化等が挙げられる。
【００９７】
図５（ｄ）から分かるように、Ｓ−ＣＬＫの周期が上限値Ｔ0uのときにはカウンタ値ｃ0ｕが得られ、Ｓ−ＣＬＫの周期が中央値Ｔ0ｃのときにはカウンタ値ｃ0ｃが得られ、Ｓ−ＣＬＫの周期が下限値Ｔ0ｄのときにはカウンタ値ｃ0ｄが得られる。したがって、カウンタ値ｃ0は、ｃ0ｃを中心として、上限のカウンタ値ｃ0ｕと下限のカウンタ値ｃ0ｄの幅で変動する。
【００９８】
ここで、クロック信号Ｓ−ＣＬＫ２３の周波数（又は周期）は前記した第１の形態と同様に式（１）で求められる。
Ｓ−ＣＬＫ周波数＝カウンタ値c0／時間間隔t0    …（１）
【００９９】
式（１）のＳ−ＣＬＫ周波数又はその逆数のＳ−ＣＬＫ周期を、給紙部内のステッピングモータ制御や他の動作制御に反映させる。
【０１００】
上記した例では、データ送信時間の時間幅をコマンド信号ＣＭＤ０のデータ送信時間の時間幅から求める例を示している（図５中のＥで示す区間）が、この例に限らず他の時間幅を用いても良い。例えば、コマンド信号ＣＭＤ０に対応するクロック信号Ｍ−ＣＬＫの時間幅（図５中のＦで示す区間）を用いることができる。また、コマンド信号ＣＭＤ１を用いても良い（図５中のＧ，Ｈで示す区間）。なお、コマンド信号ＣＭＤ１によるデータ送信時間の時間幅はコマンド信号ＣＭＤ０によるデータ送信時間の時間幅と異なっても良い。この場合には、Ｓ−ＣＬＫ周波数の算出に用いる時間間隔ｔ0はコマンド信号ＣＭＤ１のデータ送信時間の時間幅を用いる。
【０１０１】
次に、第３の形態について、図６，図７を用いて説明する。
【０１０２】
第３の形態は、予め決められた所定時間として補正用信号を用いる形態である。ここでは、通信データとして信号長が予め決められた補正用信号を用いる形態を示す。
【０１０３】
マスターＣＰＵは、スレーブＣＰＵへ補正用信号３０８を出力し、スレーブＣＰＵは、スレーブＣＰＵ側の発振回路のクロック信号により補正用信号３０８の信号長をカウントする。このカウントで得られたカウンタ値と、予め決められた所定時間とからスレーブＣＰＵ側の発振回路のクロック周波数（又は周期）を算出する。
【０１０４】
図６は、図２と同様に、マスターＣＰＵ１８とスレーブＣＰＵ１９との間で行われる通信の概略を説明するための接続図である。
【０１０５】
通信手段２０は、マスターＣＰＵ１８が出力するクロック信号を送るクロック信号線（M-CLK）３０５と、マスターＣＰＵ１８が出力するクロック信号に同期したコマンド信号を送るコマンド信号線（CMD）３０６と、スレーブＣＰＵ１９が出力するステータス信号を送るステータス信号線（STS）３０７を有している。
【０１０６】
ステータス信号は、クロック信号線（M-CLK）３０５のクロック信号に同期して送信される。ステータス信号線（STS）３０７は、スレーブＣＰＵ１９からマスターＣＰＵ１８への一方向に限らず双方向としてもよい。また、ステータス信号線（STS）３０７は、オプションカセット１７に設けられたセンサ出力を割り込ませて送っても良い。
【０１０７】
クロック信号（M-CLK信号）とコマンド信号（CMD信号）とステータス信号（STS信号）の信号関係は、前記した図１７タイミングチャートと同様である。
【０１０８】
マスターＣＰＵ１８は、クロック信号（M-CLK信号）に同期したコマンド信号（CMD信号）をスレーブＣＰＵ１９へ送出する。スレーブＣＰＵ１９はクロック信号（M-CLK信号）に同期したステータス信号（STS信号）をマスターＣＰＵ１８へ返送する。このようにして、２つのＣＰＵ間の通信が成立する。また、マスターＣＰＵ１８からスレーブＣＰＵ１９に補正信号３０８を送出する。
【０１０９】
図６に示すように、マスターＣＰＵ１８は、マスターＣＰＵ用クロック回路２２からのクロックＭ−ＣＬＫ２１に同期して動作する。一方、スレーブＣＰＵ１９はスレーブＣＰＵ用クロック回路２４からのクロックＳ−ＣＬＫ２３に同期して動作する。
【０１１０】
図７は、スレーブＣＰＵが補正用信号の信号幅ｔ0を所定時間としてカウント動作を行うタイミングチャートを示している。
【０１１１】
図７（ａ）は補正用信号３０８を示し、図７（ｂ）はスレーブＣＰＵにおいて、スレーブＣＰＵ内のクロック信号Ｓ−ＣＬＫによって補正用信号の信号幅ｔ0をカウントするカウント動作状態を示している。なお、ここでは、クロック信号Ｍ−ＣＬＫ、コマンド信号ＣＭＤ０、ステータス信号ＳＴＳについては省略している。
【０１１２】
マスターＣＰＵ１８が送信する補正用信号の信号幅は、発振精度の高い晶発振器のクロック信号Ｍ−ＣＬＫ２１に同期しているため、この補正用信号の信号幅ｔ0は高い精度を有している。
【０１１３】
スレーブＣＰＵ１９は、補正用信号の信号幅ｔ0を、クロック信号Ｓ−ＣＬＫ２３に同期してカウントしてカウンタ値ｃ0を得る。
【０１１４】
ここで、スレーブＣＰＵ１９側のクロック信号Ｓ−ＣＬＫ２３の周期は、中央値Ｔ0cを中心として、上限値Ｔ0uと下限値Ｔ0dの幅で変動する。このクロック信号が変動する要因としては部品個体差、温度変化、電圧変化等が挙げられる。
【０１１５】
図７（ｂ）において、Ｓ−ＣＬＫの周期が上限値Ｔ0uのときにはカウンタ値ｃ0ｕが得られ、Ｓ−ＣＬＫの周期が中央値Ｔ0ｃのときにはカウンタ値ｃ0ｃが得られ、Ｓ−ＣＬＫの周期が下限値Ｔ0ｄのときにはカウンタ値ｃ0ｄが得られる。したがって、カウンタ値ｃ0は、ｃ0ｃを中心として、上限のカウンタ値ｃ0ｕと下限のカウンタ値ｃ0ｄの幅で変動する。
【０１１６】
ここで、クロック信号Ｓ−ＣＬＫ２３の周波数（又は周期）は前記した第１、２の形態と同様に式（１）で求められる。
Ｓ−ＣＬＫ周波数＝カウンタ値c0／時間間隔t0    …（１）
【０１１７】
式（１）のＳ−ＣＬＫ周波数又はその逆数のＳ−ＣＬＫ周期を、給紙部内のステッピングモータ制御や他の動作制御に反映させる。
【０１１８】
図７（ａ）では、補正用信号のローの区間を信号幅としているが、補正用信号３０８のハイの区間を信号幅として用いても良い。
【０１１９】
図８は、本発明の第１の態様の概要を説明するための図である。
【０１２０】
図８（ａ）はマスターＣＰＵに一つのスレーブＣＰＵが接続される構成例を示し、図８（ｂ）はマスターＣＰＵに複数のスレーブＣＰＵがカスケード接続される構成例を示している。
【０１２１】
図８（ａ）に示す構成例において、スレーブＣＰＵ１（１９）はマスターＣＰＵ１８から所定時間ｔMの情報を受け取って、この所定時間ｔMをスレーブＣＰＵ１（１９）が有するクロック信号でカウントしカウンタ値ｃ1を得る。これによって、スレーブＣＰＵ１（１９）側のクロック周波数Ｓ−ＣＬＫは、Ｓ−ＣＬＫ＝ｃ0／ｔMの演算によって算出することができる。
【０１２２】
図８（ｂ）に示すカスケード接続の構成例において、各スレーブＣＰＵ１〜３（１９−１〜１９−３）は、マスターＣＰＵ１８から所定時間ｔMのデータを受け取って、この所定時間ｔMを各スレーブＣＰＵ１〜３（１９−１〜１９−３）が有するそれぞれのクロック信号でカウントしカウンタ値ｃ1〜ｃ3を得る。これによって、スレーブＣＰＵ１（１９−１）側のクロック周波数Ｓ−ＣＬＫ１は、Ｓ−ＣＬＫ１＝ｃ1／ｔMの演算によって算出することができる。スレーブＣＰＵ２（１９−２）側のクロック周波数Ｓ−ＣＬＫ２は、Ｓ−ＣＬＫ２＝ｃ2／ｔMの演算によって算出することができる。スレーブＣＰＵ３（１９−３）側のクロック周波数Ｓ−ＣＬＫ３は、Ｓ−ＣＬＫ３＝ｃ3／ｔMの演算によって算出することができる。
【０１２３】
マスターＣＰＵ１８から各スレーブＣＰＵ１〜３（１９−１〜１９−３）への所定時間ｔMのデータの送出は、カスケード接続されたスレーブＣＰＵ１〜３（１９−１〜１９−３）間で順にデータを送ることによって行う他、図８（ｂ）中の破線で示すように、マスターＣＰＵ１８から各スレーブＣＰＵ１〜３（１９−１〜１９−３）に個別に送ることで行うことができる。
【０１２４】
各スレーブＣＰＵ１〜３（１９−１〜１９−３）間で順にデータを送る場合には、例えば、マスターＣＰＵから各スレーブＣＰＵに個別に送るデータと所定時間ｔMのデータとを含むデータを送信し、各スレーブＣＰＵは個別のデータと所定時間ｔMのデータを取得すると共に、他のスレーブＣＰＵ用のデータと所定時間ｔMのデータを次のスレーブＣＰＵに送信することで行うことができる。
【０１２５】
次に、本発明の第２の態様について図９〜図１４を用いて説明する。
【０１２６】
本発明の画像形成装置の第２の態様は、給紙部に設けたスレーブＣＰＵ側の発振回路のクロック周波数（又は周期）に基づいて所定時間を形成する形態であり、第１の態様と同様に、画像形成制御および給紙搬送制御を行うマスターＣＰＵを有する画像形成部と、給紙搬送制御を行うスレーブＣＰＵを有する給紙部とを備える。
【０１２７】
マスターＣＰＵとスレーブＣＰＵは、それぞれ独立した発振回路を有し、マスターＣＰＵとスレーブＣＰＵ間は通信データの受け渡しを、予め決められた所定時間を有するシリアル通信で行う。
【０１２８】
はじめに、図９を用いて本発明の画像形成装置の第２の態様の構成例について説明する。
【０１２９】
図９において、本発明の画像形成装置の第２の態様の構成例はレーザビームプリンタの例を示し、図１に示した画像形成装置において、画像形成部２に複数のオプションカセット１７−１〜１７−３を直列に接続する。各オプションカセット１７−１〜１７−３はそれぞれ給紙部１６−１〜１６−３を備え、転写紙を画像形成部２に搬送する。
【０１３０】
給紙部１６−１〜１６−３は、それぞれスレーブＣＰＵ１９−１〜１９−３を備え、内蔵ＲＯＭ１９-a1〜１９−a3に格納されたプログラムに従って制御される。スレーブＣＰＵ１９−１〜１９−３およびマスターＣＰＵ１８はカスケード接続され、マスターＣＰＵ１８からスレーブＣＰＵ１９−３に送信データ１８−１が送られ、スレーブＣＰＵ１９−３からスレーブＣＰＵ１９−２に送信データ１８−２が送られ、スレーブＣＰＵ１９−２からスレーブＣＰＵ１９−１に送信データ１８−４が送られる。なお、各給紙部１６−１〜１６−３の構成は前記した給紙部１６と同様であるため、ここでの説明は省略する。
【０１３１】
また、ここでは、オプションカセットおよび給紙部を３段に積み重ねた例を示しているが、２段あるいは４段以上に積み重ねた構成であっても良い。
【０１３２】
第２の態様では、給紙部に設けたスレーブＣＰＵ側の発振回路のクロック周波数（又は周期）に基づいた所定時間を、下流側のＣＰＵのクロック周波数（又は周期）でカウントして測定する第１の形態、下流側のＣＰＵから取得した所定時間を、上流側のＣＰＵのクロック周波数（又は周期）でカウントして測定する第２の形態を備える。さらに、第１の形態で取得したクロック周波数（又は周期）と第２の形態で取得したクロック周波数（又は周期）の２つのクロック周波数（又は周期）に重み付けして加算することによりクロック周波数（又は周期）を算出する第３の形態とすることができる。
【０１３３】
図１０は第２の態様の第１の形態と第２の形態を説明するための図であり、図１１は第２の態様の第３の形態を説明するための図である。
【０１３４】
はじめに、第１の形態について説明する。第１の形態は、画像形成部２および複数段の給紙部１６は直列接続自在とし、各給紙部１６（１６−１〜１６−３）はそれぞれスレーブＣＰＵ１９（１９−１〜１９−３）を備える。画像形成部２のマスターＣＰＵ１８および各スレーブＣＰＵ１９（１９−１〜１９−３）とをカスケード接続し、このカスケード接続においてマスターＣＰＵ１８側を上流側としてシリアル通信を行う。
【０１３５】
下流側のスレーブＣＰＵ１９（１９−１〜１９−３）は、予め決められた所定時間をカウントする際において、この下流側のスレーブＣＰＵ１９（１９−１〜１９−３）に接続される上流側のマスターＣＰＵ１８又はスレーブＣＰＵ１９からの通信データのデータ長及び／又は通信データ間の時間間隔に基づいて、予め決められた所定時間を取得する。取得した所定時間をこの下流側のスレーブＣＰＵ１９側の発振回路のクロック信号によりカウントし、予め決められた所定時間とカウントで得られたカウンタ値とからスレーブＣＰＵ１９側の発振回路のクロック周波数（又は周期）を算出する。
【０１３６】
図１０（ａ）、（ｂ）は第１の形態を説明するための図である。図１０（ａ）に示す例では、マスターＣＰＵ１８は、カスケード接続されたスレーブＣＰＵ１９−１〜１９−３の内のスレーブＣＰＵ１９−３に予め決められた所定時間ｔMの情報を含む通信データを送る。
【０１３７】
スレーブＣＰＵ１９−３は、マスターＣＰＵ１８から取得した所定時間ｔMを、スレーブＣＰＵ１９−３が備えるクロック周波数でカウントし、得られたカウンタ値ｃMを所定時間ｔMで除算することによってスレーブＣＰＵ１９−３のクロック周波数Ｓu−ＣＬＫ3＝ｃM／ｔMを求める。スレーブＣＰＵ１９−３は、求めたクロック周波数Ｓu−ＣＬＫ3に基づいて所定時間ｔ3を形成し、スレーブＣＰＵ１９−２に送る。ここに、所定時間ｔ３の形成とは、所定時間のデータ長を有する通信データの生成および送信、または、所定時間の時間間隔での通信データの生成および送信、等である。後述する他の所定時間の形成についても同様である。
【０１３８】
次に、スレーブＣＰＵ１９−２は、スレーブＣＰＵ１９−３から取得した所定時間ｔ3を、スレーブＣＰＵ１９−２が備えるクロック周波数でカウントし、得られたカウンタ値ｃ3を所定時間ｔ3で除算することによってスレーブＣＰＵ１９−２のクロック周波数Ｓu−ＣＬＫ2＝ｃ3／ｔ3を求める。
【０１３９】
次に、スレーブＣＰＵ１９−１は、スレーブＣＰＵ１９−２から取得した所定時間ｔ2を、スレーブＣＰＵ１９−１が備えるクロック周波数でカウントし、得られたカウンタ値ｃ2を所定時間ｔ2で除算することによってスレーブＣＰＵ１９−２のクロック周波数Ｓu−ＣＬＫ1＝ｃ2／t2を求める。
【０１４０】
図１０（ｂ）に示す例では、マスターＣＰＵ１８は、カスケード接続されたスレーブＣＰＵ１９−１〜１９−３の内のスレーブＣＰＵ１９−１に予め決められた所定時間ｔMの情報を含む通信データを送る。
【０１４１】
スレーブＣＰＵ１９−１は、マスターＣＰＵ１８から取得した所定時間ｔMを、スレーブＣＰＵ１９−１が備えるクロック周波数でカウントし、得られたカウンタ値ｃMを所定時間ｔMで除算することによってスレーブＣＰＵ１９−１のクロック周波数Ｓu−ＣＬＫ1＝ｃM／ｔMを求める。スレーブＣＰＵ１９−１は、求めたクロック周波数Ｓu−ＣＬＫ1に基づいて所定時間ｔ１を形成し、スレーブＣＰＵ１９−２に送る。
【０１４２】
次に、スレーブＣＰＵ１９−２は、スレーブＣＰＵ１９−１から取得した所定時間ｔ１を、スレーブＣＰＵ１９−２が備えるクロック周波数でカウントし、得られたカウンタ値ｃ１を所定時間ｔ１で除算することによってスレーブＣＰＵ１９−２のクロック周波数Ｓu−ＣＬＫ2＝ｃ１／t1を求める。
【０１４３】
次に、スレーブＣＰＵ１９−３は、スレーブＣＰＵ１９−２から取得した所定時間ｔ2を、スレーブＣＰＵ１９−３が備えるクロック周波数でカウントし、得られたカウンタ値ｃ2を所定時間ｔ2で除算することによってスレーブＣＰＵ１９−３のクロック周波数Ｓu−ＣＬＫ3＝ｃ2／t2を求める。
【０１４４】
次に、第２の形態について説明する。第２の形態では、画像形成部および複数段の給紙部は直列接続自在であり、各給紙部はそれぞれスレーブＣＰＵを備え、マスターＣＰＵおよび各スレーブＣＰＵとをカスケード接続し、このカスケード接続においてマスターＣＰＵ側を上流側としてシリアル通信を行う。
【０１４５】
上流側のスレーブＣＰＵ又はマスターＣＰＵは、予め決められた所定時間のカウントにおいて、当該上流側のスレーブＣＰＵに接続される下流側のマスターＣＰＵからの通信データのデータ長及び／又は通信データ間の時間間隔に基づいて、前記予め決められた所定時間を取得する。取得した所定時間を当該上流側のスレーブＣＰＵ側の発振回路のクロック信号又はマスター側の発振回路のクロック信号によりカウントし、予め決められた所定時間とカウントで得られたカウンタ値とからスレーブＣＰＵ側の発振回路のクロック周波数（又は周期）を算出する。
【０１４６】
図１０（ｃ）に示す例では、スレーブＣＰＵ１９−１は、スレーブＣＰＵ１９−１のクロック周波数（又は周期）に基づいて所定時間ｔ1を形成しマスターＣＰＵ１８に送る。
【０１４７】
マスターＣＰＵ１８は、スレーブＣＰＵ１９−１から送られた所定時間ｔ1を、マスターＣＰＵ１８が備えるクロック周波数でカウントし、得られたカウンタ値ｃ1を所定時間ｔ1で除算することによってスレーブＣＰＵ１９−１のクロック周波数Ｓd−ＣＬＫ1＝ｃ1／t1を求める。マスターＣＰＵ１８は、求めたクロック周波数Ｓu−ＣＬＫ1をスレーブＣＰＵ１９−１に送る。
【０１４８】
次に、スレーブＣＰＵ１９−２は、スレーブＣＰＵ１９−２のクロック周波数（又は周期）に基づいて所定時間ｔ2を形成しスレーブＣＰＵ１９−１に送る。スレーブＣＰＵ１９−１は、スレーブＣＰＵ１９−２から送られた所定時間ｔ2を、マスターＣＰＵ１８から送られたクロック周波数Ｓd−ＣＬＫ1でカウントし、得られたカウンタ値ｃ2を所定時間ｔ2で除算することによってスレーブＣＰＵ１９−２のクロック周波数Ｓd−ＣＬＫ2＝ｃ2／t2を求める。スレーブＣＰＵ１９−２は、求めたクロック周波数Ｓd−ＣＬＫ2をスレーブＣＰＵ１９−３に送る。
【０１４９】
次に、スレーブＣＰＵ１９−３は、スレーブＣＰＵ１９−３のクロック周波数（又は周期）に基づいて所定時間ｔ3を形成しスレーブＣＰＵ１９−２に送る。スレーブＣＰＵ１９−２は、スレーブＣＰＵ１９−３から送られた所定時間ｔ3を、スレーブＣＰＵ１９−１から送られたクロック周波数Ｓd−ＣＬＫ2でカウントし、得られたカウンタ値ｃ3を所定時間ｔ3で除算することによってスレーブＣＰＵ１９−３のクロック周波数Ｓd−ＣＬＫ3＝ｃ3／t3を求める。
【０１５０】
第３の形態は、画像形成部および複数段の給紙部は直列接続自在であり、各給紙部はそれぞれスレーブＣＰＵを備え、マスターＣＰＵおよび各スレーブＣＰＵとをカスケード接続し、カスケード接続においてマスターＣＰＵ側を上流側としてシリアル通信を行う。
【０１５１】
下流側のスレーブＣＰＵは、第１の形態で示したように、予め決められた所定時間のカウントにおいて、この下流側のスレーブＣＰＵに接続される上流側のマスターＣＰＵ又はスレーブＣＰＵからの通信データのデータ長及び／又は通信データ間の時間間隔に基づいて、予め決められた所定時間を取得する。取得した所定時間を下流側のＣＰＵ側の発振回路のクロック信号によりカウントし、予め決められた所定時間と前記カウントで得られたカウンタ値とからスレーブＣＰＵ側の発振回路のクロック周波数（又は周期）を算出して第１のクロック周波数（又は周期）として算出する。
【０１５２】
一方、上流側のスレーブＣＰＵは、第２の形態で示したように、予め決められた所定時間のカウントにおいて、この上流側のスレーブＣＰＵに接続される下流側のマスターＣＰＵからの通信データのデータ長及び／又は通信データ間の時間間隔に基づいて、予め決められた所定時間を取得する。取得した所定時間を当該上流側のスレーブＣＰＵ側の発振回路のクロック信号によりカウントし、予め決められた所定時間と前記カウントで得られたカウンタ値とからスレーブＣＰＵ側の発振回路のクロック周波数（又は周期）を算出して第２のクロック周波数（又は周期）として算出する。
【０１５３】
第３の形態では、第１の形態で算出した第１のクロック周波数（又は周期）と第２の形態で算出した第２のクロック周波数（又は周期）にそれぞれ重み付けを行って加算し、スレーブＣＰＵのクロック周波数（又は周期）を算出する。この重み付けは、各クロック周波数（又は周期）の算出に用いる所定時間の精度に応じて定めることができる。例えば、精度が高い所定時間を用いて算出したクロック周波数（又は周期）ほど大きな重み付けを行う。
【０１５４】
図１１は、前記した第１、２の形態のクロック周波数（又は周期）を算出する処理によって第１および第２のクロック周波数（又は周期）が求めて、ＣＰＵ内に格納した状態からの重み付け処理を示している。
【０１５５】
例えば、マスターＣＰＵ１８は第２の形態によって算出したクロック周波数Ｓd−ＣＬＫ１を格納し、スレーブＣＰＵ１９−１は第１の形態によって算出したクロック周波数Ｓu−ＣＬＫ1と第２の形態によって算出したクロック周波数Ｓd−ＣＬＫ2を格納し、スレーブＣＰＵ１９−２は第１の形態によって算出したクロック周波数Ｓu−ＣＬＫ2と第２の形態によって算出したクロック周波数Ｓd−ＣＬＫ3を格納し、スレーブＣＰＵ１９−３は第１の形態によって算出したクロック周波数Ｓu−ＣＬＫ3を格納している。
【０１５６】
ここで、スレーブＣＰＵ１９−１は、クロック周波数Ｓd−ＣＬＫ１に重み付けとして係数k11を乗算し、クロック周波数Ｓu−ＣＬＫ１に重み付けとして係数k12を乗算して、これらの乗算値を加算することで、重み付けしたクロック周波数Ｓu−ＣＬＫ1を算出する。
【０１５７】
スレーブＣＰＵ１９−２は、クロック周波数Ｓd−ＣＬＫ2に重み付けとして係数k21を乗算し、クロック周波数Ｓu−ＣＬＫ2に重み付けとして係数k22を乗算して、これらの乗算値を加算することで、重み付けしたクロック周波数Ｓu−ＣＬＫ2を算出する。
【０１５８】
スレーブＣＰＵ１９−３は、クロック周波数Ｓd−ＣＬＫ3に重み付けとして係数k31を乗算し、クロック周波数Ｓu−ＣＬＫ3に重み付けとして係数k32を乗算して、これらの乗算値を加算することで、重み付けしたクロック周波数Ｓu−ＣＬＫ3を算出する。
【０１５９】
なお、重み付けの係数k11〜k32は、例えば、加算するクロック周波数の精度の度合いに応じて任意に設定することができる。
【０１６０】
以下、図１２〜図１４を用いて本発明の画像形成装置の第２の態様の動作例について説明する。
【０１６１】
図１２はマスターＣＰＵとスレーブＣＰＵの間の送信状態を説明するための構成図、およびタイミングチャートである。図１２において、マスターＣＰＵおよびスレーブＣＰＵ１〜スレーブＣＰＵ３がカスケード接続される。マスターＣＰＵはスレーブＣＰＵ３にSiM-3の信号を送り、スレーブＣＰＵ３はスレーブＣＰＵ２にSi3-2の信号を送り、スレーブＣＰＵ２はスレーブＣＰＵ１にSi2-1の信号を送り、スレーブＣＰＵ１はマスターＣＰＵにSi1-Mの信号を送る。
【０１６２】
スレーブＣＰＵ３は、マスターＣＰＵから受け取ったSiM-3から送信データdata1を取得し、この送信データ18-1を元にしてＲＯＭ３に格納されているプログラムに従って所定の処理を行った後、一段上のスレーブＣＰＵ２へ信号Si3-2を送る。
【０１６３】
スレーブＣＰＵ２は、スレーブＣＰＵ３から受け取ったSi3-2から送信データdata2を取得し、この送信データdata2を元にしてＲＯＭ２に格納されているプログラムに従って所定の処理を行った後、一段上のスレーブＣＰＵ１へ信号Si2-1を送る。
【０１６４】
スレーブＣＰＵ１は、スレーブＣＰＵ２から受け取ったSi2-1から送信データdata3を取得し、この送信データdata3を元にしてＲＯＭ１に格納されているプログラムに従って所定の処理を行った後、マスターＣＰＵへ信号Si1-Mを送る。上記した所定処理は、例えば、給紙部による紙送り動作である。
【０１６５】
図１３において、上流側（マスターＣＰＵ）から送った所定時間を元にして、クロック周波数Ｓ−ＣＬＫ３とクロック周波数Ｓ−ＣＬＫ２とを算出し、下流側（スレーブＣＰＵ）から送った所定時間を元にして、クロック周波数Ｓ−ＣＬＫ２とクロック周波数Ｓ−ＣＬＫ１とを算出する。
【０１６６】
上流側（マスターＣＰＵ）からの所定時間を元にする処理において、スレーブＣＰＵ３は、マスターＣＰＵのクロック周波数Ｍ−ＣＬＫに基づいて形成された所定時間ｔ14を、スレーブＣＰＵ３内のクロック周波数でカウントし、カウンタ値ｃ14を得る。このカウンタ値ｃ14を所定時間ｔ14で除算することによってクロック周波数Ｓ−ＣＬＫ３を算出する。また、スレーブＣＰＵ２は、スレーブＣＰＵ３のクロック周波数Ｓ−ＣＬＫ３に基づいて形成された所定時間ｔ13を、スレーブＣＰＵ２内のクロック周波数でカウントし、カウンタ値ｃ13を得る。このカウンタ値ｃ13を所定時間ｔ13で除算することによってクロック周波数Ｓ−ＣＬＫ２を算出する。
【０１６７】
一方、下流側（スレーブＣＰＵ）からの所定時間を元にする処理において、マスターＣＰＵは、スレーブＣＰＵ１のクロック周波数Ｓ−ＣＬＫ１に基づいて形成された所定時間ｔ12を、マスターＣＰＵ内のクロック周波数でカウントし、カウンタ値ｃ12を得る。このカウンタ値ｃ12を所定時間ｔ12で除算することによってクロック周波数Ｓ−ＣＬＫ２を算出する。
【０１６８】
スレーブＣＰＵ１は、スレーブＣＰＵ２のクロック周波数Ｓ−ＣＬＫ２に基づいて形成された所定時間ｔ11を、スレーブＣＰＵ１内のクロック周波数でカウントし、カウンタ値ｃ11を得る。このカウンタ値ｃ11を所定時間ｔ11で除算することによってクロック周波数Ｓ−ＣＬＫ１を算出する。
【０１６９】
上記上流側からおよび下流側からの算出処理によって、スレーブＣＰＵ２について２つのクロック周波数Ｓ−ＣＬＫ２が算出される。この２つのクロック周波数Ｓ−ＣＬＫ２はいずれも推定値を元にして算出されている。そこで、この２つのクロック周波数Ｓ−ＣＬＫ２を重み付けして加算することによって精度を向上させる。ここでは、重み付けおよび加算を行う処理として、加算値を２で除算する平均演算を行っている。
【０１７０】
図１４は、図１２に示す多段構成時におけるクロック推測を行う時のフローチャートを示している。
【０１７１】
図１４のフローチャートにおいて、画像形成装置によるプリント動作を開始した後（S11）、各プリント動作の前にS21〜S53の動作によってスレーブＣＰＵ側のクロック周波数（又は周期）を推定し補正を行う(S12)。なお、ここでは、スレーブＣＰＵ側のクロック周波数（又は周期）の推定をプリント動作毎に行う例を示しているが、この推定動作はプリント動作毎に行う場合に限らず、画像形成装置の電源投入時に行う他、所定時間間隔で行うようにしても良い。
【０１７２】
なお、S21〜S53の動作において、S21〜S26は上流（マスター）からの所定時間に基づいてクロック周波数を算出する処理である。S31〜S38は下流（スレーブ）からの所定時間に基づいてクロック周波数を算出する処理である。S41は重み付けによってクロック周波数を算出する処理である。S51〜S53は算出してクロック周波数に基づいてステッピングモータの駆動テーブルを補正する処理である。
【０１７３】
S21〜S26の処理では、はじめに、マスターＣＰＵはt14の時間間隔のコマンド信号をSiM-3に送信する(S21)。スレーブＣＰＵ３は、SiM-3に送信されたコマンド信号についてコマンド間隔t14をクロック周波数Ｓ−ＣＬＫ３でカウントし、カウンタ値c14を得る(S22)。このカウンタ値ｃ14と時間間隔t14とにより、クロック周波数Ｓ−ＣＬＫ３（＝c14/t14）を算出して推定する（S23）。
【０１７４】
次に、スレーブＣＰＵ３は、推定したクロック周波数Ｓ−ＣＬＫ３（＝c14/t14）に基づいて時間間隔t13を形成し、t13の時間間隔のコマンド信号をSi3-2に送信する(S24)。スレーブＣＰＵ２は、Si3-2に送信されたコマンド信号について、コマンド間隔t13をクロック周波数Ｓ−ＣＬＫ３でカウントし、カウンタ値c13を得る(S25)。このカウンタ値ｃ13と時間間隔t13とにより、クロック周波数Ｓ−ＣＬＫ２（＝c13/t13）を算出して推定する（S26）。
【０１７５】
次に、S31〜S38の処理では、スレーブＣＰＵ１はt11の時間間隔のコマンド信号をSi1-Mに送信する(S31)。マスターＣＰＵは、Si1-Mに送信されたコマンド信号についてコマンド間隔t11をクロック周波数Ｍ−ＣＬＫでカウントし、カウンタ値c11を得る(S32)。このカウンタ値ｃ11と時間間隔t11とにより、クロック周波数Ｓ−ＣＬＫ１（＝c11/t11）を算出して推定する（S33）。マスターＣＰＵは、推定したクロック周波数Ｓ−ＣＬＫ１（＝c11/t11）をスレーブＣＰＵ１に送信する（S34）。
【０１７６】
次に、スレーブＣＰＵ１は、t12の時間間隔のコマンド信号をSi2-1に送信する(S35)。スレーブＣＰＵ１は、Si2-1に送信されたコマンド信号について、コマンド間隔t12をクロック周波数Ｓ−ＣＬＫ１でカウントし、カウンタ値c12を得る(S36)。このカウンタ値ｃ12と時間間隔t12とにより、クロック周波数Ｓ−ＣＬＫ２（＝c12/t12）を算出して推定する（S37）。スレーブＣＰＵ１は、算出したクロック周波数Ｓ−ＣＬＫ２（＝c12/t12）をスレーブＣＰＵ２に送信する（S38）。
【０１７７】
これによって、スレーブＣＰＵ２は、S26の処理で算出したクロック周波数Ｓ−ＣＬＫ２（＝c13/t13）と、S37の処理で算出したクロック周波数Ｓ−ＣＬＫ２（＝c12/t12）の２つのクロック周波数Ｓ−ＣＬＫ２の値を取得する。この２つのクロック周波数Ｓ−ＣＬＫ２の値から重み付け処理によってクロック周波数Ｓ−ＣＬＫ２を求める。ここでは、平均演算によって、クロック周波数Ｓ−ＣＬＫ２（＝1/（（t12/c12）＋（t13/c13））/２））を算出する(S41)。
【０１７８】
次に、S33で算出したクロック周波数Ｓ−ＣＬＫ１（＝c11/t11）によってステッピングモータの駆動テーブルを補正し（S51）、S41で算出したクロック周波数Ｓ−ＣＬＫ２（＝1/（（t12/c12）＋（t13/c13））/２））によってステッピングモータの駆動テーブルを補正し（S52）、S26で算出したクロック周波数Ｓ−ＣＬＫ３（＝t13/c13）によってステッピングモータの駆動テーブルを補正する（S53）。
【０１７９】
なお、本発明の実施の形態では、マスターＣＰＵが画像形成制御を行うＣＰＵであり、一方、スレーブＣＰＵは紙搬送の制御を行うことを説明しているが、スレーブＣＰＵは紙搬送制御とは異なる制御、例えば、表示部のLEDの点滅制御や高圧ユニットのトランスのSW制御等、紙搬送以外の制御を行ってもよい。
【産業上の利用可能性】
【０１８０】
本発明は、画像形成制御を主に行うマスターＣＰＵと紙搬送等の制御を行うスレーブＣＰＵを有し、それぞれのＣＰＵを駆動する発振回路の精度が異なる場合における画像形成装置へ利用可能である。画像形成装置は、プリントの他、複写機、ファクシミリ機等も含み得る。
【符号の説明】
【０１８１】
１    画像形成装置
２    画像形成部
３    感光体
４    レーザスキャナ
５    主電源
６    転写紙
７    給紙ローラ
８    レジストセンサ
９    転写ローラ
１０    定着装置
１１    排紙センサ
１２    フラッパ
１３    現像装置
１４    イメージ展開部
１５    排紙口
１６    給紙部
１７    オプションカセット
１８    送信データ
１８ａ  ＲＯＭ
１９    スレーブＣＰＵ
１９ａ  ＲＯＭ
２０    通信手段
２２    マスターＣＰＵ用クロック回路
２３    クロックＳ−ＣＬＫ
２４    スレーブ用クロック回路
３０    ホストコンピュータ
３１    オプションピックアップローラ
３２    カセット桶
３３    カセット桶
３４    搬送ローラ
３５    オプションカセット給紙搬送ローラ
３６    オプションモータ
３７    駆動信号
１０１    スレーブＣＰＵ用クロック回路
３０８    補正信号
ＣＭＤ０    コマンド信号
ＣＭＤ１    コマンド信号
【図１】
0005509055.tif 000002
【図２】
0005509055.tif 000003
【図３】
0005509055.tif 000004
【図４】
0005509055.tif 000005
【図５】
0005509055.tif 000006
【図６】
0005509055.tif 000007
【図７】
0005509055.tif 000008
【図８】
0005509055.tif 000009
【図９】
0005509055.tif 000010
【図１０】
0005509055.tif 000011
【図１１】
0005509055.tif 000012
【図１２】
0005509055.tif 000013
【図１３】
0005509055.tif 000014
【図１４】
0005509055.tif 000015
【図１５】
0005509055.tif 000016
【図１６】
0005509055.tif 000017
【図１７】
0005509055.tif 000018