(57)【特許請求の範囲】
【請求項１】
シリアル通信信号線によって接続された第一の制御部および第二の制御部を含んで構成される画像形成装置であって、
前記第一、第二の制御部はそれぞれ、発振器を内部に備え、前記発振器が出力するクロック信号に基づきパルス信号を出力して負荷の制御を行い、
前記シリアル通信信号線は、前記第一の制御部から前記第二の制御部に、前記第二の制御部が前記負荷を制御するための制御データおよび前記第一の制御部が出力するパルス信号を送信するために用いられ、
前記第一の制御部は、前記シリアル通信信号線を介して前記制御データと前記第一の制御部が出力するパルス信号を選択的に出力する第一のセレクタを備え、
前記第二の制御部は、
前記第一の制御部から出力される前記制御データと前記パルス信号を選択的に受け取る第二のセレクタを備え、
前記シリアル通信信号線を介して前記制御データのうちの一つである前記第二の制御部が生成するパルス信号のパルス幅を調整するための調整要求データを前記第一の制御部から受け付けると、前記シリアル通信信号線を介して前記第一の制御部が生成したパルス信号の幅を測定し、
前記調整要求データにて指定されたパルス信号の幅と前記測定したパルス信号の幅とを比較し、
前記比較の結果に基づいて、前記第二の制御部が備える発振器が出力するクロック信号に基づくパルス信号の幅を補正することを特徴とする画像形成装置。
【請求項２】
前記第一の制御部は、前記シリアル通信信号線を介して前記調整要求データを送信したことを契機として、前記シリアル通信信号線を介した前記第二の制御部への出力を、所定の幅のパルス信号に切り替えることを特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記第二の制御部は、前記第一の制御部から前記シリアル通信信号線を介して前記調整要求データを受信したことを契機として、前記シリアル通信信号線を介して受信する出力に対し、パルス信号の幅の測定に切り替えることを特徴とする請求項２に記載の画像形成装置。
【請求項４】
前記第二の制御部は、
定期的に周辺の温度を取得して前記第一の制御部に通知し、
前記調整要求データに対する動作が完了した際にその旨を前記第一の制御部に通知し、
前記第一の制御部は、
前記調整要求データに対する動作が完了した通知を受信した際に、前記第二の制御部から通知された直近の温度を記憶する記憶部を有し、
前記第二の制御部から新たに通知された温度と、前記記憶部にて記憶している温度との差が所定の閾値よりも大きい場合に、前記シリアル通信信号線を介して前記調整要求データを新たに送信することを特徴とする請求項２または３に記載の画像形成装置。
【請求項５】
前記第二の制御部は、前記調整要求データにて指定されたパルス信号の幅と前記測定したパルス信号の幅との比に基づいて、前記第二の制御部が備える発振器が出力するクロック信号に基づくパルス信号の幅を補正することを特徴とする請求項１乃至４のいずれか一項に記載の画像形成装置。
【請求項６】
前記第二の制御部は、前記第二の制御部が備える発振器が出力するクロック信号の分解能にて対応可能な幅となるように、前記パルス信号の幅を補正することを特徴とする請求項５に記載の画像形成装置。
【請求項７】
前記第二の制御部にて制御される負荷は、ステッピングモータであることを特徴とする請求項１乃至６のいずれか一項に記載の画像形成装置。
【請求項８】
前記第一の制御部と前記第二の制御部とは、前記画像形成装置において温度環境が異なる位置に配置されることを特徴とする請求項１乃至７のいずれか一項に記載の画像形成装置。
【請求項９】
前記シリアル通信信号線は、前記第一の制御部から前記第二の制御部へ信号を出力するための第一の信号線と、前記第二の制御部から前記第一の制御部への信号を出力するための第二の信号線との２線から構成されることを特徴とする請求項１乃至８のいずれか一項に記載の画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置に関する。
【背景技術】
【０００２】
従来、画像形成装置などの電子機器において、各所に配置されたステッピングモータ、ＤＣブラシレスモータなどのアクチュエータを制御するために、モータの制御信号を出力するＣＰＵやＡＳＩＣを複数の基板に分散配置している。このような配置の場合、各モータを回転させるための全体の制御タイミングの指示を出すメインＣＰＵと、各基板に配置されたＣＰＵ等との接続は、より少ない信号線で伝達するため２線式や３線式のシリアル通信方式が一般的に用いられる（例えば、特許文献１）。
【０００３】
従来、各基板に配置されシリアル通信信号線によって接続されたＣＰＵ等を駆動させる方式としては、各基板に水晶発振器を接続する方法や、通信信号線にＣＬＫ信号を設けてＣＬＫ信号で駆動する方法などが用いられる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１−１８６２３１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
各基板のＣＰＵ等に水晶発振器を接続する構成の場合、水晶発振器の個数分のコストがかかる。また、シリアル通信信号と共にＣＬＫ信号を送る方式の場合、放射ノイズや、ＣＬＫ信号線分コスト、伝送路上の外来ノイズによる動作不安定などの問題がある。
【０００６】
そこで、図１に示すようにＣＰＵ等に内蔵されている内蔵発振器を使用して制御を行う構成が考えられる。この構成では、メイン基板とサブ基板のそれぞれに内蔵発振器とＣＰＵを設け、それぞれに接続されたステッピングモータやＤＣブラシレスモータの制御を行う。
【０００７】
一般的に内蔵発振器は外付けの水晶発振器に比べて安価であり、コストの面で優れている。しかし、内蔵発振器は一般的に水晶発振器に比べて周波数の温度に対する特性変化が著しい傾向がある。そのため、画像形成装置において、温度が異なる場所に設置された基板に分散配置されたＣＰＵ等で、内蔵発振器を用いて精度が必要な制御を行う場合、複数の内蔵発振器の環境温度による動作の差分によって問題が生じることがある。
【課題を解決するための手段】
【０００８】
上記課題を解決するために本願発明は以下の構成を有する。すなわち、シリアル通信信号線によって接続された第一の制御部および第二の制御部を含んで構成される画像形成装置であって、前記第一、第二の制御部はそれぞれ、発振器を内部に備え、前記発振器が出力するクロック信号に基づきパルス信号を出力して負荷の制御を行い、前記シリアル通信信号線は、前記第一の制御部から前記第二の制御部に、前記第二の制御部が前記負荷を制御するための制御データおよび前記第一の制御部が出力するパルス信号を送信するために用いられ、前記第一の制御部は、前記シリアル通信信号線を介して前記制御データと前記第一の制御部が出力するパルス信号を選択的に出力する第一のセレクタを備え、前記第二の制御部は、前記第一の制御部から出力される前記制御データと前記パルス信号を選択的に受け取る第二のセレクタを備え、前記シリアル通信信号線を介して前記制御データのうちの一つである前記第二の制御部が生成するパルス信号のパルス幅を調整するための調整要求データを前記第一の制御部から受け付けると、前記シリアル通信信号線を介して前記第一の制御部が生成したパルス信号の幅を測定し、前記調整要求データにて指定されたパルス信号の幅と前記測定したパルス信号の幅とを比較し、前記比較の結果に基づいて、前記第二の制御部が備える発振器が出力するクロック信号に基づくパルス信号の幅を補正する。
【発明の効果】
【０００９】
本発明により、内蔵発振器を用いるＣＰＵ等を備えた基板を、機体内で温度の変化が大きい条件で複数使用する場合でも、各基板において精度の良い制御を実現できる。
【図面の簡単な説明】
【００１０】
【図１】従来の回路構成の例を説明するための図。
【図２】水晶発振器の温度特性を説明するための図。
【図３】水晶発振器の温度特性を説明するための図。
【図４】温度変動時のモータ駆動パルスを説明するための図。
【図５】画像形成装置の断面図。
【図６】本願発明に係る回路構成の例の図。
【図７】本願発明に係るメイン基板からの通信パケットの例を示す図。
【図８】本願発明に係るサブ基板からの通信パケットの例を示す図。
【図９】本願発明に係る通信パケットの構成例を示す図。
【図１０】本願発明に係るメイン基板のＣＰＵにおけるフローチャート。
【図１１】本願発明に係るサブ基板のＣＰＵにおけるフローチャート。
【図１２】周波数調整時の出力波形とメイン基板、サブ基板のタイマ図。
【図１３】本願発明を適用したモータ駆動パルスを説明するための図。
【図１４】本願発明を適用したモータ駆動パルスを説明するための図。
【図１５】本願発明を適用したモータ駆動パルスを説明するための図。
【発明を実施するための形態】
【００１１】
［課題の説明］
本願発明の実施形態について説明する前に、本願発明が扱う課題について、従来の制御回路の構成を用いて詳細に説明する。
【００１２】
図１に示すような従来の制御回路の構成において、メイン基板１０１とサブ基板１０２とがシリアル通信信号線にて接続されている。メイン基板１０１にはメインＣＰＵ１１１と内蔵発振器１１２およびＰＬＬ回路１１３とＰＷＭ制御部１１９を設けている。ＰＬＬ回路１１３は、外部から入力された基準信号について、内部の位相比較器やＶＣＯで構成されたループ回路によって逓倍した周波数を出力する回路である。また、サブ基板１０２側にはサブＣＰＵ１３１と内蔵発振器１３２、および内蔵発振器１３２が発生するクロック信号を逓倍するＰＬＬ回路１３３とＰＷＭ制御部１３９を設けている。
【００１３】
図２、図３は、内蔵発振器における周波数の温度に対する特性の一例を示す。図２、図３において、横軸に温度、縦軸に基準周波数に対する偏差を示し、また、各線はそれぞれ、内蔵発振器の特性を示している。図２、図３を参照すると、内蔵発振器として、低温および高温域で周波数が低下するものや、低温で周波数が下がり高温で周波数が上がるもの等が存在し、温度に対する周波数偏差の変化割合は発振器によって様々である。
【００１４】
上記の内蔵発振器の特性の結果、内蔵発振器を用いるＣＰＵやＬＳＩが出力するモータの駆動パルスにおいて発生する事象について、図４を用いて説明する。タイマカウンタ値２５１は、サブＣＰＵ１３１に内蔵されＰＬＬ回路１３３により駆動されるタイマカウンタの値を示す。ここでは、モータの駆動パルスを生成する際に、タイマカウンタ値２５１がタイマ定数２５３に達すると、モータ駆動クロックパルス２５２の論理を反転することでモータ駆動信号を出力するような回路構成を用いる。
【００１５】
この時、図２の−２０℃付近の温度域のように、発振器が発生するクロック信号の周波数が理想値よりも著しく低い周波数偏差となる場合、カウンタ推移２６１に示すようにカウントアップが周波数に比例して遅くなる。その結果、モータの駆動パルス２６２の周波数も下がり、モータの駆動速度はわずかに低下する。また、図２の８０℃付近の温度域においても、同様に発振器の周波数は理想値よりも低い周波数偏差を示すため、同様の問題が発生する。
【００１６】
また、図３の８０℃付近の温度域のように、発振器が発生するクロック信号の周波数が理想値よりも著しく高い周波数偏差となる場合、カウンタ推移２７１に示すようにカウントアップが周波数に比例して急峻になる。その結果、モータの駆動パルス２７２の周波数も上がり、モータの駆動速度はわずかに上昇する。
【００１７】
このため、例えば、図５に示すような画像形成装置において、温度が異なる場所に設置された基板に分散配置されたＣＰＵやＬＳＩで、内蔵発振器を用いて精度が必要な紙送り制御を行う場合に、複数のモータの速度差によって問題が生じる場合がある。
【００１８】
図５に示す画像形成装置２０１は、用紙カセット２０２に格納されている用紙２０３に画像形成（印刷）を行う装置である。用紙２０３は、紙等の記録媒体であり、給紙ローラ２０４によって用紙カセット２０２から引き出される。用紙カセット２０２から給紙された用紙２０３は、縦パスローラ２０５に達すると更に上部へ搬送され、さらに搬送ローラ２０６、レジストローラ２０７まで搬送される。
【００１９】
画像形成部２０９は、電子写真式のイエロー、マゼンダ、シアン、ブラックの４色からなる可視トナー像を感光ドラムに上に形成し、ポリイミド製の中間転写ベルトに転写して二次転写ローラ２０８へと伝達する機能を有する。画像形成部２０９の中間転写ベルトと二次転写ローラ２０８は、作像駆動ステッピングモータ１２０によって駆動される。
【００２０】
レジストローラ２０７まで搬送された用紙２０３は、画像形成部２０９の画像形成タイミングと同期して二次転写ローラ２０８に搬送され、画像形成部２０９によって形成された可視トナー像が用紙２０３に二次転写される。二次転写ローラ２０８を通過した用紙２０３は、定着前センサ１４４を経由して熱定着ローラ２１０によって可視トナー像を固着され、排紙トレイ２１１に排出される。熱定着ローラ２１０は、定着駆動ステッピングモータ１４０によって駆動される。
【００２１】
二次転写ローラ２０８と熱定着ローラ２１０との間では、用紙搬送方向下流に位置する熱定着ローラ２１０の回転速度を二次転写ローラ２０８の回転速度より所定量だけ遅くすることによって用紙に弛みを持たせる。これにより、二次転写部での転写を安定させたり、用紙の斜行を防止するループ制御を行っている。
【００２２】
ここで、作像駆動ステッピングモータ１２０によって駆動される二次転写ローラ２０８はメイン基板１０１に接続され、一方、定着駆動ステッピングモータ１４０によって駆動される熱定着ローラ２１０はサブ基板１０２によって制御されている。そのため、２つのモータを同じ速度で駆動するよう制御していても、定着ヒータに近い場所に位置するサブ基板１０２は温度変化の影響を受け、メイン基板１０１とは若干回転速度にずれが生じる。その結果、二次転写ローラ２０８と熱定着ローラ２１０との間で前述のループ制御の精度が低下する事により、二次転写の精度悪化や用紙の斜行、用紙後端跳ねなどによる画像品質劣化が発生するという問題がある。
【００２３】
上記の例では最も温度差の発生しやすい熱定着ローラ２１０と二次転写ローラ２０８とを例に挙げた。しかし、他の給紙ローラ２０４や縦パスローラ２０５、搬送ローラ２０６なども、大型の画像形成装置において複数のサブ基板にそれぞれ配置されたステッピングモータで駆動される場合、同様の問題が発生する。
【００２４】
すなわち一枚の用紙を搬送する場合、複数のローラで同時に矜持搬送するが、この時はそれぞれ同じ速度で回転する必要がある。しかし、前述のように他の熱源やモータ自身によって発生する熱により内蔵発振器の周波数が変化する場合、各ローラに速度差が発生し、用紙に引っ張りや撓みなどが生じて用紙にダメージを与えるという問題が生じる。
【００２５】
＜第一の実施形態＞
以下、本願発明に係る実施形態について説明を行う。本実施形態に係る画像形成装置は、図５に示した装置構成を前提として説明するが、これに限定するものではなく、他の構成であってもよい。
【００２６】
［装置構成］
本実施形態に係る画像形成装置に用いる制御部について、図６を用いて説明する。制御部は、メイン基板３０１、およびサブ基板３０２を含む。メイン基板３０１と、サブ基板３０２とは、２本のシリアル通信信号線（シリアル通信送信信号線３０３およびシリアル通信受信信号線３０４）で接続される。
【００２７】
メイン基板３０１は、メインＣＰＵ３１１、クロック発振器３１２、ＰＬＬ回路３１３、ＲＯＭ３１４、ＲＡＭ３１５、ＵＡＲＴ−Ｉ／Ｆ３１６、タイマ３１７、セレクタ３１８、およびＰＷＭ制御部３１９を含んで構成される。メイン基板３０１は画像形成装置の各部の制御基板に指示を出し、全体の制御タイミングを統括する制御部である。
【００２８】
メインＣＰＵ３１１は、ＲＯＭ３１４に格納されたプログラムを読み込んで動作する。ＲＡＭ３１５は、メインＣＰＵ３１１が演算を行う際の作業データを保存する。
【００２９】
クロック発振器３１２はメインＣＰＵ３１１を動作させるためのクロック（ここでは、４ＭＨｚとする）を出力する。ＰＬＬ回路３１３は、クロック発振器３１２からのクロックを位相同期回路によって２０逓倍してから、メインＣＰＵ３１１およびＵＡＲＴ−Ｉ／Ｆ３１６、タイマ３１７、およびＰＷＭ制御部３１９に供給する。
【００３０】
ＵＡＲＴ−Ｉ／Ｆ３１６は、調歩同期式の２線シリアルインタフェースであり、サブ基板３０２とシリアル信号の送受信を行う。このうち、送信信号は、セレクタ３１８を介してシリアル通信送信信号線３０３へと接続されたサブ基板３０２へ送信される。同様に、受信信号は、サブ基板３０２から送信され、シリアル通信受信信号線３０４を介して受信される。
【００３１】
ＵＡＲＴ−Ｉ／Ｆ３１６は、メインＣＰＵ３１１から指定された８ビットのデータに対し、先頭にスタートビットを１ビット、末尾にストップビットを１ビット付加し、所定の速度で１ビットずつシリアル信号として送信する機能を有する。ここでの所定の速度は、７６８００ｂｐｓとする。ＵＡＲＴ−Ｉ／Ｆ３１６は更に、接続先から送信されたシリアル信号についてスタートビットを検出してから１ビットずつ受信し、ストップビットまでのデータをまとめて１バイトのデータとしてメインＣＰＵ３１１に渡す機能を有する。これらを繰り返すことで、ＵＡＲＴ−Ｉ／Ｆ３１６は、複数バイトのバイト列の送受信を行うことが出来る。
【００３２】
タイマ３１７は、予めメインＣＰＵ３１１から指定されたクロック数の負論理パルスを出力することが可能であり、セレクタ３１８を介してサブ基板３０２と接続される。
【００３３】
セレクタ３１８は、ＵＡＲＴ−Ｉ／Ｆ３１６の送信信号およびタイマ３１７の出力信号を、メインＣＰＵ３１１からの設定に基づいて選択して出力する機能を有し、選択した信号をサブ基板３０２に出力する。セレクタ３１８は、通常はＵＡＲＴ−Ｉ／Ｆ３１６の送信信号をサブ基板３０２に出力するよう設定されている。セレクタ３１８の出力の切り替えについては、フローチャートと併せて後述する。
【００３４】
ＰＷＭ制御部３１９は、作像駆動ステッピングモータ１２０を駆動するためのモータクロックパルス信号を出力する制御を行う。ＰＷＭ制御部３１９と作像駆動ステッピングモータ１２０の間には、モータクロックパルス信号を１−２相励磁の各相信号に変換しスイッチングを行うモータドライバ（不図示）が有り、これが作像駆動ステッピングモータ１２０を駆動する。つまり、メイン基板３０１側の負荷としては作像駆動ステッピングモータ１２０が相当する。
【００３５】
サブ基板３０２は、サブＣＰＵ３３１、クロック発振器３３２、ＰＬＬ回路３３３、ＲＯＭ３３４、ＲＡＭ３３５、ＵＡＲＴ−Ｉ／Ｆ３３６、タイマ３３７、セレクタ３３８、ＰＷＭ制御部３３９、Ｉ／Ｏポート３４３、およびＡ／Ｄ変換器３４５を含んで構成される。
【００３６】
サブ基板３０２は、メイン基板３０１とは離れた場所に配置されており、前述のようにメイン基板３０１とは、２本のシリアル通信信号線（シリアル通信送信信号線３０３およびシリアル通信受信信号線３０４）で接続されている。ここでの離れた場所とは、例えば、画像形成装置２０１内において、温度環境が異なる位置が挙げられる。
【００３７】
サブＣＰＵ３３１は、サブ基板３０２上の動作を制御するＣＰＵであり、ＲＯＭ３３４に格納されたプログラムを読み込んで動作する。ＲＡＭ３３５は、サブＣＰＵ３３１が演算を行う際の作業データを保存する。
【００３８】
クロック発振器３３２は、サブＣＰＵ３３１を動作させるためのクロックを出力し、ＰＬＬ回路３３３はそれを位相同期回路によって４０逓倍してから、サブＣＰＵ３３１、ＵＡＲＴ−Ｉ／Ｆ３３６、タイマ３３７、およびＰＷＭ制御部３３９に供給する。
【００３９】
ＵＡＲＴ−Ｉ／Ｆ３３６は、調歩同期式の２線シリアルインタフェースであり、メイン基板３０１とシリアル信号の送受信を行う。このうち、受信信号は、セレクタ３３８を介してシリアル通信送信信号線３０３と接続されているメイン基板３０１から受信される。同様に、送信信号は、シリアル通信受信信号線３０４を介してメイン基板３０１へ送信される。
【００４０】
タイマ３３７は、負論理のパルス信号の立下りエッジから立ち上がりエッジまでのパルス幅を、ＰＬＬ回路３３３から供給されたクロック単位で時計測するカウンタを持つ。ここでの計測結果は、サブＣＰＵ３３１から読み出し可能である。
【００４１】
セレクタ３３８は、メイン基板３０１から入力された信号を、サブＣＰＵ３３１からの設定に基づいてＵＡＲＴ−Ｉ／Ｆ３３６の送信信号およびタイマ３３７に対して選択して出力する機能を有する。セレクタ３３８は、通常はメイン基板３０１からの入力信号をＵＡＲＴ−Ｉ／Ｆ３３６に出力するよう設定されている。セレクタ３３８の出力の切り替えについては、フローチャートと併せて後述する。
【００４２】
ＰＷＭ制御部３３９は、定着駆動ステッピングモータ１４０を駆動するためのモータクロックパルス信号を出力する制御を行う。つまり、サブ基板３０２側の負荷としては定着駆動ステッピングモータ１４０が相当する。上述したように、作像駆動ステッピングモータ１２０と定着駆動ステッピングモータ１４０とは離れた位置に配置されているため、それぞれ別基板（ここではメイン基板３０１とサブ基板３０２）のＰＷＭ回路から制御される構成である。
【００４３】
Ｉ／Ｏポート３４３にはレジセンサ１４３および定着前センサ１４４が接続される。レジセンサ１４３によって、レジストローラ２０７〜二次転写ローラ２０８間に用紙が侵入・排出されたタイミングが検知される。また、定着前センサ１４４によって、二次転写ローラ２０８〜熱定着ローラ２１０間に用紙が侵入・排出されたタイミングが検知される。
【００４４】
Ａ／Ｄ変換器３４５は、サブ基板３０２近傍に配置されたサーミスタ１４５に接続され、サブ基板３０２周辺の温度を１０ビットのデジタル値に変換することで、サブＣＰＵ３３１が温度を読み取ることが出来るようにする。
【００４５】
［データ構造］
次に、メイン基板３０１のＵＡＲＴ−Ｉ／Ｆ３１６と、サブ基板３０２のＵＡＲＴ−Ｉ／Ｆ３３６との間で通信されるデータの構造について、図７〜図９を用いて説明する。
【００４６】
図７の４０１は、メイン基板３０１のＵＡＲＴ−Ｉ／Ｆ３１６から送信されるシリアル通信パケットの外形である。非通信時は＋３．３Ｖであり、調歩同期方式で可変長のパケットを１バイトずつ順次出力する。４０１の場合は４バイトのシリアル通信パケットの例である。
【００４７】
図８の４０２は、サブ基板３０２のＵＡＲＴ−Ｉ／Ｆ３３６から送信されるシリアル通信パケットの外形である。非通信時は＋３．３Ｖであり、調歩同期方式で可変長のパケットを１バイトずつ順次出力する。４０２の場合は３バイトのシリアル通信パケットの例である。
【００４８】
図９は、メイン基板３０１のＵＡＲＴ−Ｉ／Ｆ３１６と、サブ基板３０２のＵＡＲＴ−Ｉ／Ｆ３３６とで通信されるパケットの詳細である。
【００４９】
ステッピングモータ駆動指示パケット４１１は、メイン基板３０１からサブ基板３０２へ送信されるステッピングモータ駆動を指示するためのパケットである。コマンド部４１２は、ステッピングモータ駆動を指示するコマンドを示すＩＤ＝１０を含む。パケット長部４１３は、本パケットの長さを示す。速度指示部４１４は、定着駆動ステッピングモータ１４０の駆動速度を示す速度指示値を示す。パルス数指示部４１５は、定着駆動ステッピングモータ１４０の駆動パルス数を示すパルス数指示値を示す。
【００５０】
例として、メインＣＰＵ３１１がＵＡＲＴ−Ｉ／Ｆ３１６からステッピングモータ駆動指示パケット４１１を、速度指示部４１４にて速度指示値＝３００ＰＰＳ、パルス数指示部４１５にてパルス数指示値＝２００パルスを指定して送信したとする。サブＣＰＵ３３１は、ＵＡＲＴ−Ｉ／Ｆ３３６にてこれを受信し、ＰＷＭ制御部３３９を制御して定着駆動ステッピングモータ１４０を３００ＰＰＳで２００パルス分駆動させる。
【００５１】
温度通知パケット４２１は、サブ基板３０２のＡ／Ｄ変換器３４５の変換結果をメイン基板３０１に通知するためのパケットである。Ａ／Ｄ変換器３４５にはサーミスタ１４５が接続されているため、サブ基板３０２の周辺温度をメイン基板３０１に通知することが出来る。コマンド部４２２は、サブ基板３０２からメイン基板３０１に温度を通知するコマンドを示すＩＤ＝Ａ０を含む。パケット長部４２３は、本パケットの長さを示す。通知温度部４２４は、サーミスタ１４５の出力電圧をＡ／Ｄ変換した１０ビットのデジタル値が格納される部位であり、ここではサブＣＰＵ３３１が０．１度単位の温度に変換した値が格納される。
【００５２】
温度通知パケット４２１は、サブＣＰＵ３３１が定期的にＵＡＲＴ−Ｉ／Ｆ３３６によってメイン基板３０１側に送信する。ここでは、一例として、温度通知パケット４２１は、１秒間隔にてサブＣＰＵ３３１から送信されるものとするが、これに限定するものではない。そして、メインＣＰＵ３１１は、ＵＡＲＴ−Ｉ／Ｆ３１６によって温度通知パケット４２１を受信すると、記憶部であるＲＡＭ３１５にサブ基板３０２の温度情報として保存する。
【００５３】
周波数変動調整要求パケット４３１は、メイン基板３０１からサブ基板３０２へ送信される、周波数の調整（補正）を要求するためのパケットである。コマンド部４３２は、周波数変動調整を指示するコマンドを示すＩＤ＝Ｅ０を含む。パケット長部４３３は、本パケットの長さを示す。パルス幅指示部４３４は、メイン基板３０１が出力する周波数変動調整パルスのパルス幅について、理論値を示す。なお、ここでは、周波数変動調整要求パケットをキャリブレーションコマンドとも称する。
【００５４】
周波数変動調整完了パケット４４１は、サブ基板３０２からメイン基板３０１へ送信される周波数の調整が完了した旨を通知するためのパケットである。コマンド部４４２は、周波数変動調整完了を示すコマンドを示すＩＤ＝Ｅ１を含む。パケット長部４４３は、本パケットの長さを示す。結果部４４４は、サブ基板３０２が実施した周波数変動調整の結果を示す。
【００５５】
周波数変動調整要求パケット４３１と、周波数変動調整完了パケット４４１の使用方法については後述する。
【００５６】
［動作フロー］
メイン基板３０１とサブ基板３０２の周波数同期制御について図１０と図１１を用いて説明する。図１０のＳ５０１〜Ｓ５０７は、メインＣＰＵ３１１が行う処理手順を示すフローチャートである。
【００５７】
処理が開始されると、Ｓ５０１にて、メインＣＰＵ３１１は、サブ基板３０２側の温度変化を判定する。具体的には、メインＣＰＵ３１１は、ＲＡＭ３１５に保存されている最後に受信したサブ基板３０２側の温度と、同じくＲＡＭ３１５に保存されている前回の同期制御時の温度とを比較し、変動値が所定の閾値よりも大きいか否かを判定する。ここでの所定の閾値は１０℃とするがこれに限定するものではない。変動値が１０℃を超えている場合（Ｓ５０１にてＹＥＳ）、Ｓ５０３へ進み、１０℃を超えていない場合は本処理フローを終了する。
【００５８】
Ｓ５０２にて、メインＣＰＵ３１１は、ＵＡＲＴ−Ｉ／Ｆ３１６から周波数変動調整要求パケット４３１を送信する。上述したように、この時点では、セレクタ３１８において、サブ基板３０２への出力はＵＡＲＴ−Ｉ／Ｆ３１６側となっている。
【００５９】
Ｓ５０３にて、メインＣＰＵ３１１は、セレクタ３１８においてサブ基板３０２への出力をタイマ３１７側に切り替える。
【００６０】
Ｓ５０４にて、メインＣＰＵ３１１は、タイマ３１７から周波数同期用のパルスの出力を行う。周波数同期用のパルスの内容については後述する。
【００６１】
Ｓ５０５にて、メインＣＰＵ３１１は、セレクタ３１８においてサブ基板３０２への出力をＵＡＲＴ−Ｉ／Ｆ３１６側に切り替える。
【００６２】
Ｓ５０６にて、メインＣＰＵ３１１は、ＵＡＲＴ−Ｉ／Ｆ３１６にてサブ基板３０２側から周波数変動調整完了パケット４４１を受信したか否かを確認する。周波数変動調整完了パケットを受信していれば（Ｓ５０６にてＹＥＳ）Ｓ５０７へ進み、受信していなければ（Ｓ５０６にてＮＯ）Ｓ５０２へ戻り、処理をリトライする。
【００６３】
Ｓ５０７にて、メインＣＰＵ３１１は、次回の調整のためにＲＡＭ３１５へサブ基板３０２側の現在の温度を保存する。上述したように、サブ基板３０２側の温度はサブ基板３０２から１秒ごとに送信されており、メイン基板３０１はＳ５０７を行う時点の直近にて受信した温度を、キャリブレーション完了時の温度として保持するものとする。そして、本処理フローを終了する。
【００６４】
一方、図１１のＳ５２１〜Ｓ５２７は、サブＣＰＵ３３１が行う処理手順を示すフローチャートである。
【００６５】
処理が開始されると、Ｓ５２１にて、サブＣＰＵ３３１は、ＵＡＲＴ−Ｉ／Ｆ３３６にてメイン基板３０１から周波数変動調整要求パケット４３１を受信したか否かを判定する。上述したように、この時点では、セレクタ３３８において、サブ基板３０２への出力はＵＡＲＴ−Ｉ／Ｆ３３６側となっている。周波数変動調整要求パケット４３１を受信していれば（Ｓ５２１にてＹＥＳ）、Ｓ５２２へ進み、受信していなければ（Ｓ５２１にてＮＯ）本処理フローを終了する。
【００６６】
Ｓ５２２にて、サブＣＰＵ３３１は、セレクタ３３８においてメイン基板３０１からの入力の入力先をタイマ３３７側に切り替える。
【００６７】
Ｓ５２３にて、サブＣＰＵ３３１は、タイマ３３７にてメイン基板３０１から出力された周波数同期用のパルスの幅を測定する。周波数同期用のパルスの測定については後述する。
【００６８】
Ｓ５２４にて、サブＣＰＵ３３１は、タイマ３３７にて測定されたパルスの幅を取得する。
【００６９】
Ｓ５２５にて、サブＣＰＵ３３１は、タイマ３３７にて測定されたパルスの幅に応じて、モータパルスのクロック補正値を計算する。ここでの計算方法については後述する。
【００７０】
Ｓ５２６にて、サブＣＰＵ３３１は、セレクタ３３８においてメイン基板３０１からの入力の入力先をタイマ３３７からＵＡＲＴ−Ｉ／Ｆ３３６側に切り替える。
【００７１】
Ｓ５２７にて、サブＣＰＵ３３１は、ＵＡＲＴ−Ｉ／Ｆ３３６にてメイン基板３０１側へ周波数変動調整完了パケット４４１を送信する。そして、本処理フローを終了する。
【００７２】
［周波数変動調整用のパルスの出力および測定］
続いて、図１０のＳ５０４および図１１のＳ５２３における周波数変動調整用のパルスの出力と測定について、図１２を用いて説明する。
【００７３】
波形４５１は、メイン基板３０１が出力するシリアル通信送信信号線３０３の信号レベルを示す波形である。波形４５１は、Ｓ５０２にてメイン基板３０１が周波数変動調整要求パケット４３１を出力した後に、セレクタ３１８を切り替え、Ｓ５０４にて周波数同期用パルス４５２を出力することを示す。
【００７４】
周波数同期用パルス４５２は、タイマ３１７がサブ基板３０２に対して出力している信号である。タイマ３１７が出力する信号は、通常の非通信時はＨレベルであるのに対して、周波数同期用パルス４５２の区間だけＬレベルが出力されるよう制御している。この時、タイマ３１７の内部カウンタの値は波形４６１のように制御される。つまり、タイマ３１７がＬレベルの出力を開始するのと同時にカウントが開始され、ＰＬＬ回路３１３から入力されたクロックによって１ずつカウントアップする。タイマ３１７の内部カウンタの値が波形４６１に示すように上昇し、タイマ定数４６２と一致すると、タイマ３１７は、出力をＨレベルに戻す。周波数変動調整要求パケット４３１のパルス幅指示部４３４にて指定される値は、このタイマ定数４６２と同じ値である。
【００７５】
波形４６３は、サブ基板３０２に入力された周波数同期用のパルスをタイマ３３７が立ち下りエッジからカウントした内部カウンタの値（以下、内部カウンタ値Ｃ）を示す。入力がＬレベルに変化すると同時にカウントを開始し、ＰＬＬ回路３３３から入力されたクロックによって１ずつカウントアップする。入力される信号レベルがＨレベルに戻ると、カウントアップを停止する。このようにして、メイン基板３０１が出力した周波数同期用のパルスの幅を、サブ基板３０２側で測定する。言い換えると、メイン基板３０１が出力する周波数同期用のパルスは、クロック発振器３１２のクロック周波数に基づいているが、サブ基板３０２側で測定する際には、クロック発振器３３２のクロック周波数に基づいて計測が行われる。そのため、クロック発振器３１２の周波数とクロック発振器３３２の周波数が異なっていれば、指定されたパルス幅と、計測されたパルス幅とは異なる値となる。
【００７６】
この時のタイマ３３７の内部カウンタ値Ｃは、クロック発振器３１２の周波数とクロック発振器３３２の周波数が同じであれば、差が生じているとしても、発振タイミングの位相ズレ分程度の誤差である。そのため、その理想値４６５はタイマ定数４６２と同じ値であるとして判断できる。
【００７７】
しかし、クロック発振器３１２の周波数よりクロック発振器３３２の周波数が高い場合、結果４６４に示すように理想値４６５より大きな内部カウント値でカウントアップが終了してしまう。
【００７８】
また、クロック発振器３１２の周波数よりクロック発振器３３２の周波数が低い場合、内部カウンタ値Ｃの例として波形４６６を示すと、結果４６７に示すように理想値４６５より小さな内部カウント値でカウントアップが終了してしまう。
【００７９】
図１１のＳ５２５におけるクロック補正値の計算は、タイマ３３７の内部カウント値Ｃと、周波数変動調整要求パケット４３１で送信されたタイマ定数４６２との比較によって行われる。すなわち、クロック発振器３１２とクロック発振器３３２との周波数比Ｄは、
周波数比Ｄ＝（内部カウント値Ｃ）／（タイマ定数４６２）
である。サブ基板３０２は、周波数比ＤをＲＡＭ３３５に保存する。通常、周波数比Ｄはほぼ１に近い値をとる。例えば、クロック発振器３１２の周波数が４．０００ＭＨｚであり、クロック発振器３３２の周波数が３．９９０ＭＨｚである場合、周波数比Ｄは０．９９７５となる。
【００８０】
また、図１１のＳ５２７にて送信される周波数変動調整完了パケット４４１の結果部４４４には、周波数比Ｄが格納されてメイン基板３０１に送信される。
【００８１】
続いて、計算して得られた周波数比Ｄの反映について図１３を用いて説明する。
【００８２】
波形６６１は、サブ基板３０２に接続された定着駆動ステッピングモータ１４０を駆動するＰＷＭ制御部３３９の内部カウンタの値を示す。波形６６１は、出力６６２に示す通り、ＰＷＭ制御部３３９の内部カウンタがタイマ定数と一致すると、出力６６２をトグル出力するように構成される。
【００８３】
ＰＷＭ定数理論値６６３は、メインＣＰＵ３１１からステッピングモータ駆動指示パケット４１１によって通知されたモータの駆動速度（ＰＰＳ）によって決定される１パルス辺りの幅を決定する値の理論値である。第１のＰＷＭ定数６６４は、サブ基板３０２のクロック発振器３３２の周波数がクロック発振器３１２よりもわずかに低い場合において、ＰＷＭ定数理論値６６３に対して周波数比Ｄを加味したＰＷＭ制御部３３９の周波数を示す。第１のＰＷＭ定数６６４は、以下の数式によって決定される。
第１のＰＷＭ定数６６４＝周波数比Ｄ×ＰＷＭ定数理論値６６３
【００８４】
例として、図１０、図１１のフローチャートに従って測定した周波数同期用パルス４５２の幅が１０００クロックであり、内部カウント値Ｃが９８０と測定された場合、周波数比Ｄは０．９８０となる。この時、ＰＷＭ定数理論値６６３が５００クロックである場合、上記の式に基づいて周波数比を加味すると、約４９０クロックとする事が理想的である。これにより、第１のＰＷＭ定数６６４を４９０クロックとすることで周波数の変動を補正したパルス出力が可能となり、サブ基板３０２に接続された定着駆動ステッピングモータ１４０はメイン基板３０１との速度のずれを極小とすることが出来る。
【００８５】
以上、複数の基板に分けてＣＰＵ等を配置し、シリアル通信信号線で接続した構成の画像形成装置において、メイン基板からシリアル通信で周波数同期調整指示を行うことを契機として、メイン基板からシリアル通信信号線で周波数同期用のパルス信号を送信する。そして、サブ基板でこの幅を測定した結果をモータ駆動パルスの幅へと反映する。これにより、温度に影響を受ける発振器を各基板に設けていてもメイン基板とサブ基板とでモータの駆動速度を同期することが出来る。
【００８６】
また、上記のモータの駆動信号の制御により、用紙の斜行や引っ張り、たわみによる画像劣化を抑止した画像形成装置を、信号線などの追加無しに実現することが可能になる。
【００８７】
＜第二の実施形態＞
本願発明に係る第二の実施形態について説明する。なお、図６〜図１２を用いて説明した、メイン基板３０１とサブ基板３０２の間でやりとりされる通信パケットなどについては、第一の実施形態と同じであるため説明を省略する。
【００８８】
ＰＷＭ制御部３３９が出力するパルスの周期が短い場合、第一の実施形態で述べたようにＰＷＭ制御部３３９のクロック周期に周波数比Ｄを乗じても小数点以下になってしまい、有効に補正することが出来ない場合がある。このような場合の補正手段について、図１４、図１５を用いて説明する。
【００８９】
図１４の波形６６１は、図１２と同じくサブ基板３０２に接続された定着駆動ステッピングモータ１４０を駆動するＰＷＭ制御部３３９の内部カウンタの値を示す。波形６６１は、出力６６２に示す通り、ＰＷＭ制御部３３９の内部カウンタがタイマ定数と一致すると、出力６６２をトグル出力するように構成される。
【００９０】
第１のＰＷＭ定数６６４は、ＰＷＭ制御部３３９のＰＷＭ定数である。第１のＰＷＭ定数６６４は、メインＣＰＵ３１１からステッピングモータ駆動指示パケット４１１によって通知されたモータの駆動速度（ＰＰＳ）によって決定される１パルス辺りの幅を決定する値に周波数比Ｄを加味した値である。第２のＰＷＭ定数６６５は、第１のＰＷＭ定数６６４より小さい補正値を示す第２のＰＷＭ定数である。波形６６７は、出力６６２がトグルされる都度、カウントアップする補正カウンタの値を示す。補正量カウンタの値は、同じく周波数比Ｄによって決定されるＰＷＭ補正定数６６８と一致すると０に戻る。
【００９１】
ＰＷＭ制御部３３９は、通常は内部カウンタの値が、波形６６１に示すように、第１のＰＷＭ定数６６４と一致することで０に戻る。一方、波形６６７に示すように、補正量カウンタの値が０の場合、内部カウンタは、第２のＰＷＭ定数６６５と一致することで０に戻る。
【００９２】
第１のＰＷＭ定数６６４、第２のＰＷＭ定数６６５、およびＰＷＭ補正定数６６８は、以下の数式によって決定される。
第１のＰＷＭ定数６６４＝周波数比Ｄ×ＰＷＭ理論値  ※小数点以下四捨五入
第２のＰＷＭ定数６６５＝（第１のＰＷＭ定数６６４）−１
ＰＷＭ補正定数６６８＝１／｛（第１のＰＷＭ定数６６４）−（周波数比Ｄ×ＰＷＭ理論値）｝
【００９３】
例として、図１０、図１１のフローチャートに従って測定した周波数同期用パルス４５２の幅が１０００クロックであり、内部カウント値Ｃが９８０と測定された場合、周波数比Ｄは０．９８０となる。この時、ＰＷＭ理論値が１０クロックである場合、周波数比を加味すると約９．８０クロックとすることが理想的である。しかし、１クロック以下の分解能で補正することは出来ない。
【００９４】
そこで、第１のＰＷＭ定数６６４に対して、小数点以下を四捨五入することで１０クロックとする。更に、第２のＰＷＭ定数６６５をそれより１小さい９クロックとし、ＰＷＭ補正定数６６８を５とする。その結果、５パルスおきに９クロック幅パルスが出力され、５パルス分のクロックとしては補正前５０クロックだったものが４９クロックとなる。これにより、クロックは正の整数となり、サブ基板３０２の分解能で対応可能となる。
【００９５】
よって、１クロックの分解能未満で、周波数に比例したクロック数のパルス出力が可能となり、サブ基板３０２に接続された定着駆動ステッピングモータ１４０はメイン基板３０１との速度のずれを極小とすることが出来る。なお、周波数比Ｄ×ＰＷＭ理論値が最初から整数であった場合は、この限りでは無い。
【００９６】
次に、クロック発振器３３２の周波数がクロック発振器３１２よりもわずかに高い場合の補正例を、図１５を用いて説明する。
【００９７】
ＰＷＭ制御部の周波数を示す第１のＰＷＭ定数６６４と別に、第１のＰＷＭ定数６６４より大きい補正値を示す補正量を示す第２のＰＷＭ定数６７５がある。補正カウンタとＰＷＭ補正定数６６８に関しては、図１４と同様である。
【００９８】
第２のＰＷＭ定数６７５、およびＰＷＭ補正定数６６８は、以下の数式により決定される。
第１のＰＷＭ定数６６４＝周波数比Ｄ×ＰＷＭ理論値  ※小数点以下四捨五入
第２のＰＷＭ定数６７５＝（第１のＰＷＭ定数６６４）＋１
ＰＷＭ補正定数６６８＝１／｛（第１のＰＷＭ定数６６４）−（周波数比Ｄ×ＰＷＭ理論値）｝
【００９９】
例として、周波数同期用パルス４５２の幅（＝タイマ定数４６２）が１０００クロックであり、内部カウント値Ｃが１０３３と測定された場合、周波数比Ｄは１．０３３となる。この時、第１のＰＷＭ定数６６４が１０クロックである場合、周波数比Ｄを加味すると約１０．３３クロックとすることが理想的である。しかし、１クロック以下の分解能で補正することは出来ない。
【０１００】
そこで、第１のＰＷＭ定数６６４に対して、小数点以下を四捨五入することで１０クロックとする。更に、第２のＰＷＭ定数６７５をそれより１大きい１１クロックとし、ＰＷＭ補正定数６６８を３とする。その結果、３パルスおきに１１クロックのパルスが出力され、３０パルス分のクロックとしては補正前３０クロックだったものが３１クロックとなる。
【０１０１】
よって、１クロックの分解能未満で、周波数に比例したクロック数のパルス出力が可能となり、サブ基板３０２に接続された定着駆動ステッピングモータ１４０はメイン基板３０１との速度差のずれを極小とすることが出来る。
【０１０２】
以上、複数の基板に分けてＣＰＵ等を配置し、シリアル通信信号線で接続した構成のプリンタエンジンにおいて、メイン基板とサブ基板とで水晶発振器の温度変動による周波数のズレを補正する際に、出力したいパルス幅が１クロック（すなわち、分解能）より小さい値となることを防いで、モータの駆動速度を同期することが出来る。
【０１０３】
また、クロック周波数の高い信号を長時間出力する場合に誤差が累積することがあったとしても、用紙の斜行や引っ張り、たわみによる画像劣化を抑止した画像形成装置を、クロック周波数を上げたりすることなしに実現が可能になる。
【０１０４】
＜その他の実施形態＞
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１０５】
１２０…作像駆動ステッピングモータ、１４０…定着駆動ステッピングモータ、１４５…定着駆動部周辺サーミスタ、３０１…メイン基板、３０２…サブ基板、３１１…メインＣＰＵ、３１２…クロック発振器、３１３…ＰＬＬ回路、３１４…ＲＯＭ、３１５…ＲＡＭ、３１６…ＵＡＲＴ−Ｉ／Ｆ、３１７…パルス出力タイマ、３１８…セレクタ、３１９…ＰＷＭ制御部、３３１…サブＣＰＵ、３３２…クロック発振器、３３３…ＰＬＬ回路、３３４…ＲＯＭ、３３５…ＲＡＭ、３３６…ＵＡＲＴ−Ｉ／Ｆ、３３７…パルス計測タイマ、３３８…セレクタ、３３９…ＰＷＭ制御部、３４３…Ｉ／Ｏポート、３４５…Ａ／Ｄ変換器
【図１】
0006639200.tif 000002
【図２】
0006639200.tif 000003
【図３】
0006639200.tif 000004
【図４】
0006639200.tif 000005
【図５】
0006639200.tif 000006
【図６】
0006639200.tif 000007
【図７】
0006639200.tif 000008
【図８】
0006639200.tif 000009
【図９】
0006639200.tif 000010
【図１０】
0006639200.tif 000011
【図１１】
0006639200.tif 000012
【図１２】
0006639200.tif 000013
【図１３】
0006639200.tif 000014
【図１４】
0006639200.tif 000015
【図１５】
0006639200.tif 000016