(57)【要約】【課題】実際に必要な負荷トルクに応じて、ステッピングモータへ供給する電流を適切な大きさに設定することのできる画像形成装置およびそのためのステッピングモータの制御方法を提供する。【解決手段】ステッピングモータに対して供給されているモータ駆動電流実績値とステッピングモータの負荷トルクとの関係に基づいて、各演算周期におけるステッピングモータが負っている負荷トルクを推定する。そして、この推定された負荷トルクに対して、適切なマージンを有する値を目標負荷トルクに決定する。さらに、この決定した目標負荷トルクを生じることのできる電流値を新たなモータ駆動電流設定値として出力する。【選択図】図７
2011199969.tif 000002
【特許請求の範囲】
【請求項１】
ステッピングモータと、
前記ステッピングモータを駆動するためのドライバと、
前記ステッピングモータの駆動を行なうための前記ドライバの電流の大きさである電流実績値を検出するための電流検出部と、
前記電流実績値に基づいて、前記ドライバに対して、前記ステッピングモータへ供給すべき電流の大きさを設定するための電流設定値を所定の演算周期毎に与える制御部とを備え、前記制御部は、
前記電流設定値についての、前記電流実績値と前記ステッピングモータの負荷トルクとの関係を参照して、前回の演算周期における前記電流設定値および今回の演算周期における前記電流実績値に対応する負荷トルクを推定負荷トルクとして決定する手段と、
前記推定負荷トルクから前記ステッピングモータに出力させるべきトルクである目標負荷トルクを決定する手段と、
前記ステッピングモータの最大出力トルクと前記ステッピングモータへ供給される電流の大きさとの関係を参照して、前記目標負荷トルクの大きさに対応する電流値を前記電流設定値に決定する手段とを含む、画像形成装置。
【請求項２】
前記制御部は、
複数の異なる大きさの前記電流設定値の別に、前記電流実績値と前記ステッピングモータの出力トルクとの関係を複数格納する手段と、
複数の前記電流実績値と前記ステッピングモータの出力トルクとの関係のうち、前回の演算周期における前記電流設定値に関連する２つ以上の関係を用いて、前回の演算周期における前記電流設定値についての、前記電流実績値と前記ステッピングモータの出力トルクとの関係を決定する手段とをさらに含む、請求項１に記載の画像形成装置。
【請求項３】
前記制御部は、
前記ドライバに対して、前記ステッピングモータの回転速度を設定するための手段と、
複数の異なる大きさの前記電流設定値の別に、前記ステッピングモータの回転速度と前記ステッピングモータの最大出力トルクとの関係を複数格納する手段と、
複数の前記ステッピングモータの回転速度と前記ステッピングモータの最大出力トルクとの関係から、前記ステッピングモータに設定されている回転速度に対応する前記ステッピングモータの最大出力トルクをそれぞれ取得することで、前記ステッピングモータに設定されている回転速度についての、前記ステッピングモータの最大出力トルクと前記ステッピングモータへ供給される電流の大きさとの関係を決定する手段とを含む、請求項１または２に記載の画像形成装置。
【請求項４】
前記電流検出部は、生の電流検出値に含まれる高周波成分をフィルタリングするためのローパスフィルタを含む、請求項１〜３のいずれか１項に記載の画像形成装置。
【請求項５】
前記目標負荷トルクを決定する手段は、前記推定負荷トルクに対する前記目標負荷トルクの比率が１を越えるように、前記目標負荷トルクの大きさを決定する、請求項１〜４のいずれか１項に記載の画像形成装置。
【請求項６】
前記目標負荷トルクを決定する手段は、連続する画像形成処理において、前記推定負荷トルクに対する前記目標負荷トルクの比率を先に大きく設定しておき、画像形成処理が実行される毎に、当該比率を減じる、請求項５に記載の画像形成装置。
【請求項７】
前記ステッピングモータは、画像形成に用いる用紙の搬送経路に配置され、
前記制御部は、画像形成処理の進行に応じて、前記ステッピングモータに設定する回転速度を変更する、請求項１〜６のいずれか１項に記載の画像形成装置。
【請求項８】
前記制御部は、前記画像形成処理の期間を複数の演算周期に分割し、各演算周期における前記ステッピングモータの駆動を行なうための前記ドライバの電流の大きさの代表値を前記電流実績値として取得する手段をさらに含む、請求項１〜７のいずれか１項に記載の画像形成装置。
【請求項９】
前記制御部は、各画像形成処理における前記目標負荷トルクの決定に、先の画像形成処理において取得された前記電流実績値に基づいて推定された負荷トルクの時間変化を用いる、請求項８に記載の画像形成装置。
【請求項１０】
前記制御部は、複数の先の画像形成処理においてそれぞれ推定された複数の負荷トルクの時間変化を統計的処理することで、各画像形成処理における推定された負荷トルクの時間変化を決定するための手段をさらに含む、請求項９に記載の画像形成装置。
【請求項１１】
前記電流検出部の出力側に設けられた少なくとも１つのピークホールド回路をさらに備え、
前記制御部は、各演算周期の境界タイミングで、前記ピークホールド回路に対するリセット信号を出力する、請求項８〜１０のいずれか１項に記載の画像形成装置。
【請求項１２】
画像形成装置におけるステッピングモータの制御方法であって、
前記ステッピングモータを駆動するためのドライバの電流の大きさである電流実績値を検出するステップと、
検出された電流実績値に基づいて、前記ドライバに対して、前記ステッピングモータへ供給すべき電流の大きさを設定するための電流設定値を所定の演算周期毎に与えるステップとを備え、前記電流設定値を所定の演算周期毎に与えるステップは、
前記電流設定値についての、前記電流実績値と前記ステッピングモータの負荷トルクとの関係を参照して、前回の演算周期における前記電流設定値および今回の演算周期における前記電流実績値に対応する負荷トルクを推定負荷トルクとして決定するステップと、
前記推定負荷トルクから前記ステッピングモータに出力させるべきトルクである目標負荷トルクを決定するステップと、
前記ステッピングモータの最大出力トルクと前記ステッピングモータへ供給される電流の大きさとの関係を参照して、前記目標負荷トルクの大きさに対応する電流値を前記電流設定値に決定するステップとを含む、制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ステッピングモータを有する画像形成装置およびそのステッピングモータの制御方法に関する。
【背景技術】
【０００２】
従来から、プリンタや複合機などの画像形成装置においては、用紙を搬送するための手段としてステッピングモータが採用されることが多い。これは、ステッピングモータでは、回転センサなどが不要な、いわゆるオープンループの位置制御が可能であるという利点を有するからである。このオープンループの位置制御が可能である半面、ステッピングモータでは、最大出力トルク以上の負荷トルクが一瞬でも印加されると脱調という現象を起こして停止してしまうため、この脱調を防止するように制御する必要がある。
【０００３】
そのため、たとえば、画像形成装置の用紙搬送に用いられるステッピングモータでは、装置のばらつき、環境温度、装置耐久などを考慮して、予めピーク負荷トルクを想定し、その想定したピーク負荷トルクに対して所定のマージンを設けた最大出力トルクを発揮できるように、ステッピングモータへ供給する駆動電流の大きさを設定することで、脱調を防止するという方法が一般的に採用されている。
【０００４】
このような脱調を防止しながらステッピングモータを駆動する方法としては、以下のような技術が知られている。
【０００５】
特開２００１−２６２９３８（特許文献１）には、位置センサを付加したステッピングモータに対して、指令パルスとモータ移動量との偏差量に応じて、モータ駆動電流を可変とする構成が開示されている。
【０００６】
特開平６−１３３５９３号公報（特許文献２）には、印加パルスの立ち上がり時と立ち下がり時の中央部の負荷電流と、立ち下がり時直前の負荷電流の差に基づいて、ステッピングモータの速度制御を行なう構成が開示されている。
【０００７】
特開２０００−３４１９９４号公報（特許文献３）には、励磁電流傾きの変化によりステッピングモータのロータのステップ移行状態を検出して、ロータがステータと一致したタイミングで、供給励磁電流が装置の最大負荷に対応した予め設定されているチョッピング定電流値を該供給励磁電流まで下げる構成が開示されている。
【０００８】
特開２００２−１０６８９（特許文献４）には、電流検知回路により１ステップ毎の駆動電流を監視し、常に必要十分な電流が流れる様に可変電源によって駆動電圧を変化させることにより、パルスモータの駆動電流波形の立ち上がり時間を必要トルクによって変化させる構成が開示されている。
【０００９】
特開２００２−６４９９６（特許文献５）には、ステッピングモータの駆動電流の変化を検出して負荷を判断して信号を発生することで、現在正常に回転しているか、脱調を起こす危険があるか等の判断を行なう構成が開示されている。
【００１０】
特開２００４−１０４８８８（特許文献６）には、ステッピングモータの駆動使用量が設定値以上のとき、ドライバに与える電流目標値を順次に変更してモータの脱調臨界の電流目標値を検索する構成が開示されている。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２００１−２６２９３８号公報
【特許文献２】特開平６−１３３５９３号公報
【特許文献３】特開２０００−３４１９９４号公報
【特許文献４】特開２００２−１０６８９号公報
【特許文献５】特開２００２−６４９９６号公報
【特許文献６】特開２００４−１０４８８８号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
しかしながら、上述した従来のステッピングモータの制御方法および上記の各特許文献については、以下のような課題がある。
【００１３】
上述した従来の制御方法のように、予め想定したピーク負荷トルクに応じた大きさの駆動電流を設定する場合には、本来必要なトルクより過剰なトルクを発生させることとなり、ＤＣブラシレスモータといった他の搬送手段に比較して、効率が悪いという課題があった。また、ある程度のマージンを考慮してステッピングモータへの供給電流を多くするため、ステッピングモータやそれを駆動するドライバ（特に、その中のスイッチング素子）の温度上昇が大きくなり、耐熱性を高めるために定格サイズをより大きくしたり、冷却用の措置を施す必要が生じたりする。さらに、軽負荷時などにトルク過大で振動が発生するという課題や、想定外の用紙を使用した場合などの負荷変動に対応することが難しいという課題があった。
【００１４】
また、特許文献１に開示された制御方法では、ステッピングモータに位置センサが必要であり、オープンループの位置制御が可能という本来の利点が失われてしまう。また、常に偏差を監視して励磁を制御するための高速な演算装置が必要となり、コストアップの問題が生じ得る。
【００１５】
また、特許文献２に開示された制御方法では、ステッピングモータの回転速度が変化してしまうので、画像形成装置のように、用紙を予め定められた搬送速度で搬送する構成には適していない。また、パルスレート（数ｋＨｚ〜数１０ｋＨｚ程度）と同程度の演算周期で制御演算を実行しなければならず、コストアップの問題が生じ得る。さらに、１−２相励磁より多くの励磁形式のステッピングモータには適用が困難であるという課題もある。
【００１６】
また、特許文献３に開示された制御方法では、パルスレートよりも十分に短い演算周期で制御演算を実行しなければならず、演算装置に起因するコストアップの問題が生じ得る。
【００１７】
また、特許文献４に開示された制御方法では、電源電圧自体を制御する必要があり、比較的高価な電源装置（レギュレータ）などが必要となり、コストアップの問題が生じ得る。
【００１８】
また、特許文献５に開示された制御方法では、パルスレートと同程度の演算周期で制御演算を実行しなければならず、コストアップの問題が生じ得る。
【００１９】
また、特許文献６に開示された制御方法では、瞬間的な負荷変動に対応することができないという課題がある。
【００２０】
本発明は、上記のような問題を解決するためになされたものであって、実際に必要な負荷トルクに応じて、ステッピングモータへ供給する電流を適切な大きさに設定することのできる画像形成装置およびそのためのステッピングモータの制御方法を提供するものである。
【課題を解決するための手段】
【００２１】
この発明のある局面に従う画像形成装置は、ステッピングモータと、ステッピングモータを駆動するためのドライバと、ステッピングモータの駆動を行なうためのドライバの電流の大きさである電流実績値を検出するための電流検出部と、電流実績値に基づいて、ドライバに対して、ステッピングモータへ供給すべき電流の大きさを設定するための電流設定値を所定の演算周期毎に与える制御部とを有する。制御部は、電流設定値についての、電流実績値とステッピングモータの負荷トルクとの関係を参照して、前回の演算周期における電流設定値および今回の演算周期における電流実績値に対応する負荷トルクを推定負荷トルクとして決定する手段と、推定負荷トルクからステッピングモータに出力させるべきトルクである目標負荷トルクを決定する手段と、ステッピングモータの最大出力トルクとステッピングモータへ供給される電流の大きさとの関係を参照して、目標負荷トルクの大きさに対応する電流値を電流設定値に決定する手段とを含む。
【００２２】
好ましくは、制御部は、複数の異なる大きさの電流設定値の別に、電流実績値とステッピングモータの出力トルクとの関係を複数格納する手段と、複数の電流実績値とステッピングモータの出力トルクとの関係のうち、前回の演算周期における電流設定値に関連する２つ以上の関係を用いて、前回の演算周期における電流設定値についての、電流実績値とステッピングモータの出力トルクとの関係を決定する手段とをさらに含む。
【００２３】
好ましくは、制御部は、ドライバに対して、ステッピングモータの回転速度を設定するための手段と、複数の異なる大きさの電流設定値の別に、ステッピングモータの回転速度とステッピングモータの最大出力トルクとの関係を複数格納する手段と、複数のステッピングモータの回転速度とステッピングモータの最大出力トルクとの関係から、ステッピングモータに設定されている回転速度に対応するステッピングモータの最大出力トルクをそれぞれ取得することで、ステッピングモータに設定されている回転速度についての、ステッピングモータの最大出力トルクとステッピングモータへ供給される電流の大きさとの関係を決定する手段とを含む。
【００２４】
好ましくは、電流検出部は、生の電流検出値に含まれる高周波成分をフィルタリングするためのローパスフィルタを含む。
【００２５】
好ましくは、目標負荷トルクを決定する手段は、推定負荷トルクに対する目標負荷トルクの比率が１を越えるように、目標負荷トルクの大きさを決定する。
【００２６】
さらに好ましくは、目標負荷トルクを決定する手段は、連続する画像形成処理において、推定負荷トルクに対する目標負荷トルクの比率を先に大きく設定しておき、画像形成処理が実行される毎に、当該比率を減じる。
【００２７】
好ましくは、ステッピングモータは、画像形成に用いる用紙の搬送経路に配置され、制御部は、画像形成処理の進行に応じて、ステッピングモータに設定する回転速度を変更する。
【００２８】
好ましくは、制御部は、画像形成処理の期間を複数の演算周期に分割し、各演算周期におけるステッピングモータの駆動を行なうためのドライバの電流の大きさの代表値を電流実績値として取得する手段をさらに含む。
【００２９】
さらに好ましくは、制御部は、各画像形成処理における目標負荷トルクの決定に、先の画像形成処理において取得された電流実績値に基づいて推定された負荷トルクの時間変化を用いる。
【００３０】
さらに好ましくは、制御部は、複数の先の画像形成処理においてそれぞれ推定された複数の負荷トルクの時間変化を統計的処理することで、各画像形成処理における推定された負荷トルクの時間変化を決定するための手段をさらに含む。
【００３１】
さらに好ましくは、本画像形成装置は、電流検出部の出力側に設けられた少なくとも１つのピークホールド回路をさらに有し、制御部は、各演算周期の境界タイミングで、ピークホールド回路に対するリセット信号を出力する。
【００３２】
この発明の別の局面に従えば、画像形成装置におけるステッピングモータの制御方法を提供する。本制御方法は、ステッピングモータを駆動するためのドライバの電流の大きさである電流実績値を検出するステップと、検出された電流実績値に基づいて、ドライバに対して、ステッピングモータへ供給すべき電流の大きさを設定するための電流設定値を所定の演算周期毎に与えるステップとを有する。電流設定値を所定の演算周期毎に与えるステップは、電流設定値についての、電流実績値とステッピングモータの負荷トルクとの関係を参照して、前回の演算周期における電流設定値および今回の演算周期における電流実績値に対応する負荷トルクを推定負荷トルクとして決定するステップと、推定負荷トルクからステッピングモータに出力させるべきトルクである目標負荷トルクを決定するステップと、ステッピングモータの最大出力トルクとステッピングモータへ供給される電流の大きさとの関係を参照して、目標負荷トルクの大きさに対応する電流値を電流設定値に決定するステップとを含む。
【発明の効果】
【００３３】
本発明によれば、実際に必要な負荷トルクに応じて、ステッピングモータへ供給する電流を適切な大きさに設定することのできる画像形成装置およびそのためのステッピングモータの制御方法を提供できる。
【図面の簡単な説明】
【００３４】
【図１】この発明の実施の形態１に従う画像形成装置の概略構成図である。
【図２】図１に示す制御部１０の概略構成を示す図である。
【図３】図１に示す制御部１０における制御構造を示す模式図である。
【図４】この発明に関連するステッピングモータ駆動用の回路構成の一例を示す図である。
【図５】この発明の実施の形態１に従うステッピングモータ駆動用の回路構成の一例を示す図である。
【図６】図５に示す電流センサおよびローパスフィルタを用いて検出されたモータ駆動電流実績値の時間変化の一例を示す図である。
【図７】図３に示すモータ制御モジュールの処理内容を説明するためのブロック図である。
【図８】この発明の実施の形態１に従うモータ駆動電流実績値−負荷トルクの関係の一例を示す図である。
【図９】図６に示すモータ駆動電流実績値の時間変化に基づいて算出された推定負荷トルクの時間変化の一例を示す図である。
【図１０】この発明の実施の形態１に従うモータ駆動電流実績値−負荷トルクの関係を決定するための処理を説明するための図である。
【図１１】この発明の実施の形態１に従うパルスレート−プルアウトトルクの関係の一例を示す図である。
【図１２】図１１に示すパルスレート−プルアウトトルクの関係から算出されたプルアウトトルク−モータ駆動電流設定値の関係の一例を示す図である。
【図１３】この発明の実施の形態１に従うステッピングモータの全体処理を示すフローチャートである。
【図１４】この発明の実施の形態１に従うステッピングモータに対するモータ駆動電流設定値を制御するための処理を示すフローチャートである。
【図１５】図７に示すブロック図を簡素化したブロック図である。
【図１６】この発明の実施の形態２に従うステッピングモータ駆動用の回路構成の一例を示す図である。
【図１７】図１６に示すステッピングモータ駆動用の回路構成において測定されたモータ駆動電流実績値の時間変化の一例を示す図である。
【図１８】図１７に示すモータ駆動電流実績値のサンプル値によって算出される推定負荷トルクＴ＾の時間変化の一例を示す。
【図１９】この発明の実施の形態２に従う画像形成装置での動作について説明するための図であり。
【図２０】この発明の実施の形態２に従うモータ制御モジュールの処理内容を説明するためのブロック図である。
【図２１】この発明の実施の形態２に従うステッピングモータに対するモータ駆動電流設定値を制御するための処理を示すフローチャートである。
【図２２】この発明の実施の形態２の変形例に従うステッピングモータ駆動用の回路構成の一例を示す図である。
【図２３】この発明の実施の形態２の変形例に従うモータ駆動電流実績値の算出処理を説明するための図である。
【発明を実施するための形態】
【００３５】
本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
【００３６】
［実施の形態１］
＜装置構成＞
図１は、この発明の実施の形態１に従う画像形成装置の概略構成図である。図２は、図１に示す制御部１０の概略構成を示す図である。
【００３７】
図１を参照して、本実施の形態に従う画像形成装置１は、原稿から画像情報を読取ってイメージデータを生成するためのスキャナ２と、プリント処理が可能なプリントエンジン３と、全体制御を司る制御部１０とを含む。
【００３８】
スキャナ２は、プラテンガラスに載置された原稿に向けて光源から光を照射するとともに、原稿から反射した光を撮像素子などによって受光することで、原稿の画像情報を読取る。あるいは、スキャナ２は、連続的な原稿読取りを可能とするように、原稿給紙台、送出ローラ、レジストローラ、搬送ドラム、および排紙台などを含んでいてもよい。
【００３９】
プリントエンジン３は、パーソナルコンピュータから受信した印刷ジョブ、および／または、スキャナ２で読取られたイメージデータなどの画像データに基づいて、用紙Ｓ上にプリント処理を行なう。図１には、代表的に、タンデム式のカラー電子写真方式の構成を図示するが、モノクロの電子写真方式の構成、４サイクル式のカラー電子写真方式、インクジェット方式、感熱方式といった任意のプリント構成を採用することができる。
【００４０】
より具体的には、プリントエンジン３は、それぞれイエロー（Ｙ），マゼンダ（Ｍ），シアン（Ｃ），黒（Ｋ）のトナー像を形成する４つのイメージングユニット（作像ユニット）２０Ｙ，２０Ｍ，２０Ｃ，２０Ｋを含む。イメージングユニット２０Ｙ，２０Ｍ，２０Ｃ，２０Ｋは、その順序に転写ベルト４の移動方向に配置される。各イメージングユニット２０は、タイミングを同期させてこの転写ベルト４上に各色のトナー像を順次形成する。転写ベルト４は、その表面にトナー像を保持する像担持体であり、この転写ベルト４が各イメージングユニット２０を一巡すると、その表面にはフルカラー（４色）のトナー像が形成される。
【００４１】
その後、転写ベルト４上に形成されたフルカラーのトナー像は、転写ローラ５によって用紙Ｓに転写される。転写ローラ５は所定電位にバイアスされており、このバイアス電位によって、帯電したトナー像に静電界による吸引力が生じる。すなわち、このトナー像に生じる吸引力を用いて、転写ベルト４から用紙Ｓへのトナー像の転写が行なわれる。カラーのトナー像が転写された用紙Ｓは、定着装置６により定着された後、排出トレーに出力される。
【００４２】
この用紙Ｓは、画像形成装置１の下部に装着されるトレー内に収納されており、画像形成処理の実行タイミングに対応して、順次搬送される。この画像形成に用いる用紙Ｓの搬送経路には、ステッピングモータによって駆動されるローラが複数配置されている。図１に示す例では、用紙Ｓが収納されているトレー側から搬送ローラ１１，１３，１５が順に配置されている。これらの搬送ローラ１１，１３，１５は、それぞれステッピングモータ１２，１４，１６によって回転駆動される。また、定着装置６の定着ローラについても、ステッピングモータ１８によって駆動される。
【００４３】
これらのステッピングモータ１２，１４，１６，１８は、それぞれ対応するドライバ（後述する）に接続されている。これらのドライバには、制御部１０からステッピングモータを駆動するための設定値および／または指令値が与えられる。
【００４４】
すなわち、各ステッピングモータは、画像形成に用いる用紙の搬送経路に配置される。そして、制御部１０は、画像形成処理の進行に応じて、各ステッピングモータに設定する回転速度を適宜変更する。
【００４５】
イメージングユニット２０Ｙ，２０Ｍ，２０Ｃ，２０Ｋは、出力画像に応じた各色のトナー像を形成するための感光体ドラム２１Ｙ，２１Ｍ，２１Ｃ，２１Ｋをそれぞれ含む。各イメージングユニット２０では、感光体ドラム２１の回転方向に沿って、帯電装置、露光装置、現像装置、除電装置などが配置される。感光体ドラム２１は、予め帯電装置によってその表面が帯電された状態で、制御部１０からの指令に従って、露光装置により露光される。露光装置が出力画像に応じて感光体ドラム２１の表面をレーザー光で走査することで、感光体ドラム２１の表面に出力画像に応じた静電潜像を形成する。この静電潜像は、現像装置で供給されるトナーが付着することで、トナー像として現像される。そして、感光体ドラム２１表面に現像されたトナー像は、各感光体ドラム２１と転写ベルト４との接触によって、各感光体ドラム２１から転写ベルト４に転写される。
【００４６】
なお、感光体ドラム２１を帯電させるためのバイアス電圧が帯電グリッド高圧電源３１により印可されるとともに、トナーを帯電させるためのバイアス電圧が現像バイアス高圧電源３２により印可される。
【００４７】
また、画像形成装置１は、操作パネル７をさらに含む。操作パネル７は、各種ユーザ操作を受付ける入力部であって、かつ、各種情報をユーザに通知する表示部でもある。より具体的には、操作パネル７は、入力部の機能として、テンキーを含む各種入力キー群、およびタッチセンサなどを含むとともに、表示部の機能として、タッチセンサと一体化した液晶表示部、およびＬＥＤ（Light Emitting Diode）などからなる各種インジケータを含む。
【００４８】
図２を参照して、制御部１０は、ＣＰＵ（Central Processing Unit）１０１と、ＲＡＭ（Random Access Memory）１０３と、ＲＯＭ（Read Only Memory）１０５と、ＥＥＰＲＯＭ（Electrical Erasable and Programmable Read Only Memory）１０７と、ＨＤＤ（Hard Disk Drive）１０９と、外部通信Ｉ／Ｆ（インターフェイス：Interface）１１１と、内部通信Ｉ／Ｆ１１３と、入力ポート１１５と、出力ポート１１７とを含む。なお、これらの部位は、内部バス１１９を介して互いに接続される。
【００４９】
制御部１０では、ＣＰＵ１０１が、ＲＯＭ１０５などに予め格納されている各種処理を実行するためのプログラムをＲＡＭ１０３などに展開して実行することで、画像形成装置１が制御される。
【００５０】
ＲＡＭ１０３は、揮発性メモリであり、ワークメモリとして使用される。より具体的には、ＲＡＭ１０３には、実行されるプログラム自体に加えて、処理対象の画像データや各種変数データが一時的に格納される。ＥＥＰＲＯＭ１０７は、典型的には不揮発性の半導体メモリであり、画像形成装置１のＩＰアドレスやネットワークドメインなどを各種設定値を記憶する。ＨＤＤ１０９は、典型的には不揮発性の磁気メモリであり、画像処理装置から受信した印刷ジョブやスキャナ２によって読取ったイメージデータなどを蓄積する。
【００５１】
外部通信Ｉ／Ｆ１１１は、典型的にはイーサネット（登録商標）といった汎用的な通信プロトコルをサポートし、ネットワークを介してパーソナルコンピュータや他の画像形成装置との間でデータ通信を提供する。
【００５２】
内部通信Ｉ／Ｆ１１３は、操作パネル７と接続され、操作パネル７に対するユーザ操作に応じた信号を受信して、ＣＰＵ１０１へ伝送するとともに、ＣＰＵ１０１からの命令に従って、操作パネル７にメッセージなどを表示するために必要な信号を送信する。
【００５３】
入力ポート１１５は、典型的には、Ａ／Ｄ（Analog to Digital）変換器を含んでおり、プリントエンジン３などに含まれる各種センサなどからの値を取込む。一方、出力ポート１１７は、典型的には、Ｄ／Ａ（Digital to Analog）変換器を含んでおり、ＣＰＵ１０１による演算結果に応じた指令値などをプリントエンジン３などに含まれる各種アクチュエータへ与える。
【００５４】
上述の例では、演算装置の一例であるＣＰＵを用いて制御部１０を構成する例を示したが、ＣＰＵに代えて、または、ＣＰＵに加えて、ＤＳＰ（Digital Signal Processor）を採用してもよい。あるいは、後述するような制御機能の一部もしくは全部をＡＳＩＣ（Application Specific Integrated Circuit）などのハードウェアとして実装してもよい。
【００５５】
＜制御部における制御構造＞
図３は、図１に示す制御部１０における制御構造を示す模式図である。図３を参照して、制御部１０は、典型的には、プリント処理制御モジュール１５０と、モータ制御モジュール１５１，１５２，…，１５Ｎを含む。
【００５６】
プリント処理制御モジュール１５０は、操作パネル７などを介してユーザ操作に応答して、プリント（画像形成）処理に必要な全体処理を実行する。より具体的には、プリント処理制御モジュール１５０は、一連のプリント処理のシーケンスに沿って、各ステッピングモータに所定のタイミングで起動したり、プリント対象の画像データの生成を開始したりするための指令を発する。
【００５７】
モータ制御モジュール１５１，１５２，…，１５Ｎの各々は、対応するドライバと関連付けられている。すなわち、モータ制御モジュール１５１，１５２，…，１５Ｎは、それぞれドライバからモータ駆動電流実績値１，２，…Ｎを受信するとともに、後述する演算処理によって、対応するドライバを駆動するための制御指令である、モータ駆動パルスレート１，２，…Ｎおよびモータ駆動電流設定値１，２，…，Ｎを出力する。
【００５８】
＜ステッピングモータ駆動回路＞
図４は、この発明に関連するステッピングモータ駆動用の回路構成の一例を示す図である。図５は、この発明の実施の形態１に従うステッピングモータ駆動用の回路構成の一例を示す図である。
【００５９】
図４には、各ステッピングモータに生じ得る最大のピーク負荷トルクを予測し、そのピーク負荷トルクに応じたモータ駆動電流設定値を設定する方法に適した回路構成を示す。すなわち、図４に示す回路構成は、ステッピングモータ２００と、ステッピングモータ２００を駆動するためのドライバ２１０と、ドライバ２１０に対して、ステッピングモータ２００の回転速度を設定するための制御部９０とを含む。
【００６０】
ステッピングモータ２００としては、任意の方式のステッピングモータを採用することができるが、図４には、１−２相励磁方式のステッピングモータを示す。より具体的には、ステッピングモータ２００は、第１相コイル２０４と第２相コイル２０６とを有する。これらのコイル２０４および２０６は、ドライバ２１０からそれぞれ駆動電流（パルス電流）を供給されることで、ステッピングモータ２００内に磁界磁界を発生する。このコイル２０４および２０６が発生する界磁磁界を適切なタイミングで切替えることで、ステッピングモータ２００のロータが回転する。
【００６１】
なお、ドライバ２１０からコイル２０４および２０６へ供給される駆動電流の周波数、すなわち、ステッピングモータ２００の回転速度は、制御部９０によって与えられるモータ駆動パルスレート設定値によって定められる。典型的には、制御部９０は、画像形成処理の進行に応じて、モータ駆動パルスレート設定値を適宜変更する。
【００６２】
また、ドライバ２１０からコイル２０４および２０６へ供給される駆動電流の大きさは、制御電源ＶＣＣとグランドＧＮＤとの間に接続された分圧抵抗Ｒｆから取り出された電圧値に応じた、モータ駆動電流設定値によって定められる。このモータ駆動電流設定値は、装置のばらつき、環境温度、装置耐久などを考慮して決定される。
【００６３】
これに対して、図５に示すように、本実施の形態に従うステッピングモータ駆動用の回路構成は、図４に示す回路構成に比較して、（ａ）ステッピングモータ２００の駆動のために供される電流の大きさを検出するための構成、および、（ｂ）ドライバ２１０へ与えるモータ駆動電流設定値を自在に変更するための構成、が付加されている点において相違する。
【００６４】
より具体的には、上記（ａ）の構成として、本実施の形態に従うステッピングモータ駆動用の回路構成は、電流センサ２２０と、ローパスフィルタ（Low Pass Filter；以下「ＬＰＦ」と称す。）２２２とを含む。
【００６５】
電流センサ２２０は、モータ駆動電源からドライバ２１０へ電力を供給するための電源経路上に配置され、ステッピングモータ２００が駆動されたときに、ステッピングモータ２００における負荷に応じてドライバ２１０へ流入する電流の大きさを検出する。本実施の形態に従う画像形成装置１においては、この検出された電流の大きさによって、各演算周期におけるステッピングモータ２００の負荷トルクが推定される。
【００６６】
なお、本実施の形態においては、１−２相励磁方式のステッピングモータを採用した関係上、ドライバ２１０の電源側に電流センサ２２０を設ける構成を示すが、ステッピングモータ２００の駆動のために供される電流の大きさを検出できれば、電流センサ２２０はいずれの位置に設けてもよい。たとえば、ドライバ２１０のグランドへの流出側に電流センサ２２０を設けてもよい。
【００６７】
また、図５には、電流センサ２２０の一例として、コイル型の電流センサを図示するが、抵抗型（シャント）の電流センサを用いてもよい。
【００６８】
ＬＰＦ２２２は、電流センサ２２０による生の電流検出値に含まれる高周波成分をフィルタリングする。これは、ステッピングモータ２００を定電流方式で駆動する場合には、ドライバ２１０からステッピングモータ２００へ供給される電流は、高周波のスイッチング電流となっており、電流センサ２２０によって検出された生の電流値のままでは、後述するようなトルク変動成分を判別することができないためである。
【００６９】
この電流センサ２２０により検出される生の信号波形には、ステッピングモータ２００の回転速度によっても異なるが、周波数の高い方から、（ｉ）スイッチング成分（低電流チョッパ制御成分）（数十ｋ〜１００ｋＨｚ）、（ｉｉ）励磁ステップ成分（パルスレートの周波数；２相フルステップ励磁方式の場合には、１〜５ｋＨｚおよびその整数倍）、（ｉｉｉ）電気角周期の成分（励磁成分の１／４及びその整数倍成分；２５０Ｈｚ〜）、（ｉｖ）モータギアの噛み合いによる負荷変動成分（２００Ｈｚ前後）、（ｖ）駆動系振動成分（１５０〜４００Ｈｚ）等が含まれる。
【００７０】
本実施の形態に従うステッピングモータの制御方法において、対応すべき負荷変動成分の周波数帯域は、瞬時的な変動がない場合には〜１００Ｈｚ程度となり、瞬時的な変動にも対応する必要がある場合には１５０Ｈｚ程度が必要となる。したがって、対応すべき負荷変動成分の周波数帯域に応じて、適切なカットオフ周波数を有するＬＰＦ２２２が採用される。これにより、電流センサ２２０により検出される生の信号波形に含まれる高周波成分をカットすることで、目的とする周波数帯域の負荷変動成分だけを含むようなモータ駆動電流実績値を得ることができる。
【００７１】
ＬＰＦ２２２から出力されるモータ駆動電流実績値は、制御部１０へ与えられる。典型的には、制御部１０の入力ポート１１５にＬＰＦ２２２からの電圧値が入力される。なお、制御部１０内の入力ポート１１５ではなく、制御部１０とは別に設けたＡ／Ｄ変換器を用いてデジタル値に変換した上で、制御部１０へその結果を入力するようにしてもよい。
【００７２】
また、上述したように、ＬＰＦ２２２には、対応すべき負荷変動成分に応じて、適切な周波数帯域（カットオフ周波数）を設定する必要があるが、その周波数帯域設定を固定値ではなく、制御部１０からの指令によって変更可能なプログラマブル方式であってもよい。あるいは、ＬＰＦ２２２を制御部１０が取り込み可能な周波数帯域よりも高いカットオフ周波数を設定しておき（もしくは、対応すべき負荷変動成分以外の成分が含まれるようなより広い周波数帯域であってもよい）、制御部１０の内部処理（デジタルフィルタ）を用いて、不必要な周波数帯域の成分をカットするような構成でもよい。
【００７３】
上述のように、電流センサ２２０およびＬＰＦ２２２を用いて検出された、モータ駆動電流実績値の時間変化の一例を図６に示す。なお、図６に示す縦軸のスケールは、換算後の値である。すなわち、実際のＬＰＦ２２２の信号波形は、電流センサ２２０のスケーリングによって適当なレンジの電圧値になっており、この電圧値が制御部１０の入力ポートから取り込まれると、そのＡ／Ｄ変換器の分解能に応じて量子化されたデジタルデータ（バイナリ値）として扱われる。
【００７４】
なお、本明細書において、「モータ駆動電流実績値」とは、ステッピングモータ２００の駆動のために供される電流の大きさを示す値を総称するものである。そのため、モータ駆動電源ＶＤＤからドライバ２１０へ供給される電流の大きさを検出した結果（図５）の他、ステッピングモータ２００のコイルを流れた後にドライバ２１０からグランドへ流出する電流の大きさを検出した結果などを含み得る。
【００７５】
次に、上記（ｂ）の構成として、本実施の形態に従う制御部１０は、ドライバ２１０に対して、モータ駆動電流設定値を自在に設定することができる。このモータ駆動電流設定値は、ドライバ２１０からステッピングモータ２００へ供給されるパルス電流の大きさの目標値を定める。そのため、モータ駆動電流設定値によって、ステッピングモータ２００が発生するトルクを自在に制御することができる。
【００７６】
なお、モータ駆動電流設定値は、典型的には、電圧値として与えられる。そのため、図５に示す構成においては、制御部１０の出力ポート１１７において、ＣＰＵ１０１からの制御指令をＤ／Ａ変換器でアナログの電圧値に変換して出力する。代替的に、制御部１０とは別にＤ／Ａ変換器を設けておき、そのＤ／Ａ変換器を介して制御部１０からモータ駆動電流設定値を設定してもよい。あるいは、制御部１０とは別に設けた電子ボリュームを使用するようにしてもよい。
【００７７】
本明細書において、「モータ駆動電流設定値」とは、上述の「モータ駆動電流実績値」と対応する値を意味し、ドライバ２１０に対して与えられた「モータ駆動電流設定値」に対して、ステッピングモータ２００の駆動のために供されたモータ駆動電流の大きさを示す値を総称するものが「モータ駆動電流実績値」である。
【００７８】
また、制御部１０は、ドライバ２１０に対して、モータ駆動パルスレート設定値についても自在に設定することができる。このモータ駆動パルスレート設定値は、ドライバ２１０からステッピングモータ２００へ供給されるパルス電流の周波数を定める。そのため、モータ駆動パルスレート設定値によって、ステッピングモータ２００の回転速度を自在に制御することができる。そして、制御部１０は、画像形成処理の進行に応じて、モータ駆動パルスレート設定値を適宜変更する。
【００７９】
なお、モータ駆動パルスレート設定値の出力構成についても、制御部１０の出力ポート１１７を利用する構成に代えて、制御部１０とは別にＡＳＩＣを設けて、そのＡＳＩＣを経由してモータ駆動パルスレート設定値を出力するようにしてもよい。
【００８０】
＜ステッピングモータ制御の概要＞
以下に詳細に説明するように、本実施の形態に従う画像形成装置においては、ステッピングモータ２００に対して供給されているモータ駆動電流実績値とステッピングモータ２００の負荷トルクとの関係に基づいて、各演算周期におけるステッピングモータ２００が負っている負荷トルクを推定する。そして、この推定された負荷トルクに対して、適切なマージンを有する値を目標負荷トルクに決定する。さらに、この決定した目標負荷トルクを生じることのできる電流値を新たなモータ駆動電流設定値として出力する。
【００８１】
このように、本実施の形態に従う画像形成装置においては、各ステッピングモータが負っている負荷トルクに対して、適切なマージンが常に確保されるように、ドライバが制御される。これにより、負荷変動に応じて常に適切な電流値がドライバへ供給されることになる。
【００８２】
＜演算処理ブロック＞
図７は、図３に示すモータ制御モジュールの処理内容を説明するためのブロック図である。なお、図７には、モータ制御モジュール１５１の処理内容を示すが、他のモータ制御モジュール１５２，…，１５Ｎについても同様である。
【００８３】
図７を参照して、モータ制御モジュール１５１は、マージン目標値設定部３０２と、割算部３０４，３１０と、掛算部３０６と、遅延素子３０８，３１８と、モータ駆動電流設定値算出部３１２と、モータ駆動パルスレート設定部３１４と、負荷トルク推定部３１６と、モータ駆動電流設定値出力部３２０と、モータ駆動電流実績値入力部３２２とを含む。各部は、所定の演算周期で動作する。そのため、各演算周期では、モータ駆動電流実績値入力部３２２により、今回の演算周期（現演算周期）におけるモータ駆動電流実績値ＩＬが取得されるとともに、後述する演算処理によって算出された、当該演算周期におけるモータ駆動電流設定値Ｉ１がモータ駆動電流設定値出力部３２０から出力される。
【００８４】
負荷トルク推定部３１６は、モータ駆動電流実績値ＩＬと、１演算周期前のモータ駆動電流設定値Ｉ０と、モータ駆動パルスレート設定値とに基づいて、当該演算周期における対応するステッピングモータ２００が負っている負荷トルクを推定する。この負荷トルク推定部３１６により推定される負荷トルクを、以下では「推定負荷トルクＴ＾」と表わす。この負荷トルク推定部３１６における負荷トルクの推定処理については、後述する。
【００８５】
マージン目標値設定部３０２と、割算部３０４，３１０と、掛算部３０６と、遅延素子３０８とは、推定負荷トルクＴ＾から、ステッピングモータ２００に出力させるべきトルクである目標負荷トルクＴ１を決定する。すなわち、これらの部位は、マージン目標値設定部３０２から出力される目標マージンＭｔについてのフィードバックループを提供する。
【００８６】
より具体的には、割算部３１０は、現演算周期において算出された推定負荷トルクＴ＾を基準とする、１演算周期前において算出された目標負荷トルクＴ０の比率を算出する。すなわち、割算部３１０は、現演算周期のマージンＭｃ（＝Ｔ０／Ｔ＾）を算出する。この現演算周期のマージンＭｃは、現演算周期において推定されたステッピングモータ２００が負っている負荷トルクの大きさに対して、１演算周期前においてドライバ２１０からステッピングモータ２００へ供給されている電流によってステッピングモータ２００が発生できていた最大負荷トルクについてのマージン（余裕度）を示す。
【００８７】
マージン目標値設定部３０２は、画像形成装置１における画像形成処理を安定して行なうための余裕度である、目標マージンＭｔを出力する。この目標マージンＭｔは、画像形成処理の進行に伴って変化させてもよい。
【００８８】
割算部３０４は、割算部３１０によって算出された現演算周期のマージンＭｃを基準とする、目標マージンＭｔの比率を算出する。すなわち、割算部３０４は、マージンについての偏差Ｅ（＝Ｍｔ／Ｍｃ）を算出する。このマージンについての偏差Ｅは、マージン目標値設定部３０２によって設定される目標マージンＭｔを実現しようとした場合に、１演算周期前の目標負荷トルクＴ０がどの程度（比率）ずれているかを示す値である。そのため、掛算部３０６によって、１演算周期前の目標負荷トルクＴ０に対してマージンについての偏差Ｅが乗じられることで、現演算周期の目標負荷トルクＴ１が算出される。
【００８９】
モータ駆動電流設定値算出部３１２は、割算部３０４から与えられる現演算周期の目標負荷トルクＴ１と、モータ駆動パルスレート設定値とに基づいて、当該演算周期における対応するステッピングモータ２００へ供給すべきモータ駆動電流設定値Ｉ１を算出する。このモータ駆動電流設定値算出部３１２におけるモータ駆動電流設定値Ｉ１の算出処理については、後述する。そして、モータ駆動電流設定値算出部３１２によって算出されたモータ駆動電流設定値Ｉ１は、モータ駆動電流設定値出力部３２０を介して、対応するドライバ２１０へ与えられる。
【００９０】
モータ駆動パルスレート設定部３１４は、対応するステッピングモータ２００の回転速度を制御するためのモータ駆動パルスレート設定値を出力する。なお、モータ駆動パルスレート設定部３１４によるモータ駆動パルスレート設定値の変更タイミングは、モータ駆動電流設定値Ｉ１の演算周期とは独立して設定されてもよい。
【００９１】
上述のように、図７に示すような目標マージンＭｔについてのフィードバックループを構成することで、ステッピングモータ２００の各演算周期のマージンＭｃを目標マージンＭｔに一致させることができるので、ステッピングモータ２００が実際に負っている負荷の大きさに応じて適切なマージンを確保しつつステッピングモータ２００を駆動することができる。なお、図７に示す制御ループにおいては、通常、目標マージンＭｔは１を超える値に設定されるので、目標負荷トルクＴ１は、推定負荷トルクＴ＾に対する目標負荷トルクＴ１の比率が１を越えるように決定される。
【００９２】
なお、連続的な用紙搬送の実行が要求される場合には、１枚目の用紙搬送においては、目標マージンＭｔを相対的に高い値に設定しておき、後続の用紙搬送においては、状況に応じて、目標マージンＭｔを徐々に適正レベルまで下げてもよい。すなわち、連続する画像形成処理において、推定負荷トルクＴ＾に対する目標負荷トルクＴ１の比率（目標マージンＭｔ）を先に大きく設定しておき、画像形成処理が実行される毎に、当該比率を減じるようにしてもよい。
【００９３】
なお、実際のソフトウェアの実装においては、各部における演算処理は、現実の物理的な単位を有する値のままではなく、定数を乗じて得られる値を用いてもよい。その場合には、浮動小数点演算ではなく、より高速に処理が可能な固定小数点演算を適用することもできる。
【００９４】
＜推定負荷トルクの算出＞
次に、図７に示す負荷トルク推定部３１６における推定負荷トルクＴ＾の算出処理の詳細について説明する。
【００９５】
図８は、この発明の実施の形態１に従うモータ駆動電流実績値−負荷トルクの関係の一例を示す図である。図９は、図６に示すモータ駆動電流実績値の時間変化に基づいて算出された推定負荷トルクの時間変化の一例を示す図である。図１０は、この発明の実施の形態１に従うモータ駆動電流実績値−負荷トルクの関係を決定するための処理を説明するための図である。
【００９６】
ＤＣモータやＤＣブラシレスモータの制御として用いられている電流換算方式は、無制御モータについては、一定電圧の条件下で電流とトルクとの関係が一意に定まり、定速制御モータについては、一定電圧の条件下で制御速度という条件毎に電流とトルクとの関係が一意に定まるという原理に基づいている。
【００９７】
これに対して、ステッピングモータを定電流制御方式で制御する場合においては、一定電圧の条件下で回転速度（パルスレート）が一定であっても、モータ駆動電流設定値の大きさに依存して、モータ駆動電流実績値と負荷トルクとの関係が変化してしまう。
【００９８】
モータ駆動電流設定値は、ステッピングモータの最大出力トルクを制御する値であるため、負荷トルクに対して適切なレベルのマージンをもった最大出力トルクを発揮するためにモータ駆動電流設定値を変えてしまうと、上述のようにモータ駆動電流実績値と負荷トルクとの関係が変わり、負荷トルクを単純に推定することができなくなる。そのため、負荷トルクの推定には、モータ駆動電設定流というパラメータを固定する必要がある。
【００９９】
図８には、モータ駆動電流設定値に依存して、モータ駆動電流実績値と推定負荷トルクとの関係が変換する例を示す。モータ駆動電流設定値は、制御部１０によって決定されるパラメータであるので既知である。そのため、対象のモータ駆動系（ステッピングモータ２００とドライバ２１０）について、複数の異なる大きさのモータ駆動電流設定値をそれぞれ設定し、各モータ駆動電流設定値について、モータ駆動電流実績値−負荷トルクの関係を実験的に取得する。
【０１００】
図８に示す例では、モータ駆動電流設定値を０．４Ａ／相、０．６Ａ／相、０．８Ａ／相、１．０Ａ／相の計４種類にそれぞれ設定した場合についての、モータ駆動電流実績値−負荷トルクの関係を示す。なお、負荷トルクとは、ある条件下において、ステッピングモータ２００が実際に出力しているトルクの大きさを意味する。
【０１０１】
ドライバ２１０へ与えられるモータ駆動電流設定値の大きさは、動作状態などに応じて変化するため、上述の４種類のいずれかと全く一致するとは限らない。そのため、本実施の形態に従う負荷トルク推定部３１６は、図８に示すような、複数の異なる大きさのモータ駆動電流目標値の別に、モータ駆動電流実績値−負荷トルクの関係を複数格納しておき、複数のモータ駆動電流実績値−負荷トルクの関係のうち、前回の演算周期におけるモータ駆動電流設定値に関連する２つ以上の関係を用いて、１周期前の演算周期における電流設定値についての、各制御周期におけるモータ駆動電流実績値−負荷トルクの関係を決定する。
【０１０２】
一例として、図８に示す例では、モータ駆動電流設定値が０．７Ａ／相である場合におけるモータ駆動電流実績値−負荷トルクの関係を前後の２つのモータ駆動電流実績値−負荷トルクとの関係から補間処理（線形補間処理）を用いて、決定する例を示す。このように、ドライバ２１０に設定されているモータ駆動電流設定値の大きさと連動して、モータ駆動電流実績値−負荷トルクの関係を逐次更新することで、各演算周期における負荷トルクをより正確に推定することができる。
【０１０３】
すなわち、本実施の形態に従う負荷トルク推定部３１６は、モータ駆動電流設定値についての、モータ駆動電流実績値とステッピングモータの負荷トルクの関係を参照して、前回の演算周期におけるモータ駆動電流設定値および今回の演算周期におけるモータ駆動電流実績値に対応する負荷トルクを推定負荷トルクＴ＾として決定する。
【０１０４】
図６に示すモータ駆動電流実績値に対して、上述のような負荷トルクの推定処理を実行することで得られた推定負荷トルクＴ＾の時間変化の一例を図９に示す。図９に示すように、推定負荷トルクＴ＾は、一回の画像形成処理（用紙搬送制御）においても比較的大きく変動していることがわかる。
【０１０５】
なお、図８に示すモータ駆動電流実績値−負荷トルクの関係は、ステッピングモータ２００の回転速度（駆動パルスレート）にも依存して変化する。そのため、本実施の形態に従う負荷トルク推定部３１６は、駆動パルスレートの別に、図８に示すようなモータ駆動電流実績値−負荷トルクの関係を複数格納しておき、各演算周期における駆動パルスレート設定値に応じて、必要なモータ駆動電流実績値−負荷トルクの関係を選択し、あるいは、動的に生成するようにしてもよい。
【０１０６】
より具体的には、図１０（ａ）に示すように、パルスレート１，２，…，Ｎの別に、予め取得されている複数のモータ駆動電流実績値−負荷トルクの関係のうちから、ドライバ２１０に設定されているモータ駆動パルスレート設定値に対応するモータ駆動電流実績値−負荷トルクの関係を選択する。その上で、上述したような補間処理などを用いて、ドライバ２１０に設定されているモータ駆動電流設定値に応じた、モータ駆動電流実績値−負荷トルクの関係を決定するようにしてもよい。
【０１０７】
なお、ステッピングモータ２００の立ち上げ時、立ち下げ時、変速時などには、予め取得されているパルスレートのいずれとも一致しないパルスレートでステッピングモータ２００が駆動される場合もある。その場合には、図１０（ｂ）に示すような処理を採用してもよい。すなわち、図１０（ｂ）に示す処理では、パルスレート１，２，…，Ｎの別に、予め取得されている複数のモータ駆動電流実績値−負荷トルクの関係のうちから、ドライバ２１０に設定されているモータ駆動パルスレート設定値に関連する２つ以上の関係を用いて、モータ駆動パルスレート設定値についてのモータ駆動電流実績値−負荷トルクの関係を決定する。この場合にも、線形補間もしくは高次補間を用いることができる。そして、目的のモータ駆動パルスレート設定値についてのモータ駆動電流実績値−負荷トルクの関係に対して、上述したような補間処理などをさらに適用することで、ドライバ２１０に設定されているモータ駆動電流設定値に応じた、モータ駆動電流実績値−負荷トルクの関係が決定される。
【０１０８】
但し、画像形成装置における一般的な用紙搬送制御では、定常状態におけるステッピングモータの回転速度は数パターンしか存在しない場合も多い。そのため、図１０に示すモータ駆動電流実績値−負荷トルクの関係は、その定常状態に応じた数パターンだけを予め取得しておけば十分なことが多い。そのため、用紙搬送制御の定常状態においては、上述の図１０（ａ）に示すような方法を採用する一方で、過渡状態（立ち上げ時、立ち下げ時、変速時のようなステッピングモータの回転速度が連続的に変化する状況）においては、加減速開始前の駆動パルスレートの値、または、加減速完了時の駆動パルスレートの値を利用して図１０（ａ）に示すような方法で推定負荷トルクＴ＾を暫定的に算出し、さらにその暫定値に加減速トルク（環境や耐久度による変動がないとした場合の値）を加味することで、推定負荷トルクＴ＾を決定してもよい。
【０１０９】
＜モータ駆動電流設定値の算出＞
次に、図７に示すモータ駆動電流設定値算出部３１２におけるモータ駆動電流設定値Ｉ１の算出処理の詳細について説明する。
【０１１０】
図１１は、この発明の実施の形態１に従うパルスレート−プルアウトトルクの関係の一例を示す図である。図１２は、図１１に示すパルスレート−プルアウトトルクの関係から算出されたプルアウトトルク−モータ駆動電流設定値の関係の一例を示す図である。
【０１１１】
図１１に示すパルスレート−プルアウトトルクの関係は、ステッピングモータの性能を評価する際に一般的に使用される、ステッピングモータの最大出力トルク（プルアウトトルク）特性である。すなわち、モータ駆動電流値の別に、ステッピングモータ２００が出力可能なトルクの最大値が示される。言い換えれば、図１１に示す特性線は、対応する負荷トルクより大きな負荷トルクが印加されると、ステッピングモータ２００が脱調する境界値を示す。
【０１１２】
したがって、図１１に示すようなパルスレート−プルアウトトルクの関係が予め取得されていれば、ステッピングモータ２００を駆動する回転速度（駆動パルスレート）を固定することで、図１２に示すようなプルアウトトルク−モータ駆動電流設定値の関係を一意に決定することができる。図１２に示すプルアウトトルク−モータ駆動電流設定値の関係から、目標負荷トルクＴ１に対応する電流値をモータ駆動電流設定値として決定することができる。
【０１１３】
図１２に示すパルスレート−プルアウトトルクの関係は、図１１に示すモータ駆動電流設定値の別に取得される、複数のパルスレート−プルアウトトルクの関係のうち、目的のモータ駆動パルスレート設定値にそれぞれ対応するプルアウトトルクの値を用いて算出される。典型的には、図１１に示すように、モータ駆動パルスレート設定値の位置にそれぞれ対応する複数のプルアウトトルクの値を多項式近似することで、図１２に示すようなプルアウトトルク−モータ駆動電流設定値の関係を決定する。
【０１１４】
なお、多項式近似を用いてプルアウトトルク−モータ駆動電流設定値の関係を決定する方法に代えて、複数の異なる大きさのモータ駆動パルスレート設定値の別に、プルアウトトルク−モータ駆動電流設定値の関係を実測しておき、補間処理を用いて、目的のモータ駆動パルスレート設定値についてのプルアウトトルク−モータ駆動電流設定値の関係を決定してもよい。
【０１１５】
すなわち、図７に示すモータ駆動電流設定値算出部３１２は、ステッピングモータ２００の駆動パルスレート設定値とステッピングモータ２００の最大出力トルクとの関係から、当該ステッピングモータ２００に設定されている駆動パルスレート設定値に対応するステッピングモータ２００の最大出力トルクをそれぞれ取得することで、ステッピングモータ２００に設定されている回転速度についての、ステッピングモータ２００の最大出力トルクとステッピングモータ２００へ供給される電流の大きさとの関係を決定する。
【０１１６】
なお、ステッピングモータ２００の立ち上げ時、立ち下げ時、変速時などには、駆動パルスレートの値が変化するので、駆動パルスレートの変更毎に、図１２に示すようなプルアウトトルク−モータ駆動電流設定値の関係を決定する必要がある。但し、画像形成装置における一般的な用紙搬送制御では、定常状態におけるステッピングモータの回転速度は数パターンしか存在しない場合も多い。そのため、図１２に示すプルアウトトルク−モータ駆動電流設定値の関係を、その定常状態に応じた数パターンだけを予め取得しておけば十分なことが多い。
【０１１７】
また、過渡状態（立ち上げ時、立ち下げ時、変速時のようなステッピングモータの回転速度が連続的に変化する状況）においては、加減速開始前の駆動パルスレートの値、または、加減速完了時の駆動パルスレートの値を利用して図１１および図１２に示すような方法でモータ駆動電流設定値を暫定的に算出し、さらにその暫定値に加減速トルク（環境や耐久度による変動がないとした場合の値）を加味することで、最終的なモータ駆動電流設定値を決定してもよい。
【０１１８】
＜その他の構成＞
図７に示す演算処理部ブロックにおいて、モータ駆動電流設定値Ｉ１の算出に用いる特性値、および推定負荷トルクＴ＾の算出に用いる特性値として、トルクの値を対数軸（ログスケール）で定義しておくことで、演算処理ブロック内の乗除算は加減算を置き換えることができる。
【０１１９】
＜フローチャート＞
上述の制御部１０における処理手順は、図１３および図１４に示すようなフローチャートにまとめることができる。
【０１２０】
図１３は、この発明の実施の形態１に従うステッピングモータの全体処理を示すフローチャートである。図１４は、この発明の実施の形態１に従うステッピングモータに対するモータ駆動電流設定値を制御するための処理を示すフローチャートである。
【０１２１】
図１３を参照して、ＣＰＵ１０１（図３に示すモータ制御モジュール１５１）は、ステッピングモータの起動開始指令を受けて、図１３に示す全体処理を開始する。なお、ステッピングモータの起動開始指令は、図３に示すプリント処理制御モジュール１５０によって発行される。
【０１２２】
より具体的には、ＣＰＵ１０１は、ドライバ２１０の励磁信号をオンにセットすることで、ステッピングモータ２００を起動する（ステップＳ２）。続いて、ＣＰＵ１０１は、ステッピングモータ２００へ供給される電流を制御するための図１４に示す処理を別タスクとして実行する（ステップＳ４）。
【０１２３】
そして、ＣＰＵ１０１は、ドライバ２１０に対して与えられるモータ駆動パルスレート設定値の大きさを所定値まで増加させる（ステップＳ６）。すなわち、ステッピングモータ２００を立ち上げる。その後、ＣＰＵ１０１は、画像形成処理の進行に応じて、モータ駆動パルスレート設定値を適宜変更する（ステップＳ８）。
【０１２４】
その後、ＣＰＵ１０１は、ステッピングモータ２００に対する立ち下げ指令を受けたか否かを判断する（ステップＳ１０）。ステッピングモータ２００に対する立ち下げ指令を受けていない場合（ステップＳ１０においてＮＯの場合）には、ステップＳ８の処理が繰返される。
【０１２５】
これに対して、ステッピングモータ２００に対する立ち下げ指令を受けた場合（ステップＳ１０においてＹＥＳの場合）には、ＣＰＵ１０１は、ドライバ２１０に対して与えられるモータ駆動パルスレート設定値の大きさをゼロまで低下させる（ステップＳ１２）。すなわち、ステッピングモータ２００を立ち下げる。
【０１２６】
また、ＣＰＵ１０１は、ステップＳ４において別タスクとして実行させたステッピングモータ２００へ供給される電流を制御するための処理を終了する（ステップＳ１４）。
【０１２７】
最終的に、ＣＰＵ１０１は、ドライバ２１０の励磁信号をオフにセットすることで、ステッピングモータ２００を停止する（ステップＳ１６）。
【０１２８】
一方、図１３のステップＳ４において、ステッピングモータ２００へ供給される電流を制御するための処理の開始が指示されると、図１４に示すフローチャートに沿って処理が開始される。すなわち、図１４に示すように、まず、ＣＰＵ１０１は、演算処理を実行すべきであるか否かを判断する（ステップＳ１００）。すなわち、ＣＰＵ１０１は、現在のタイミングが演算周期であるか否かを判断する。演算処理を実行すべきではないと判断された場合（ステップＳ１００においてＮＯの場合）には、ステップＳ１００の処理が繰返される。
【０１２９】
一方、演算処理を実行すべきであると判断された場合（ステップＳ１００においてＹＥＳの場合）には、ＣＰＵ１０１は、現時点のモータ駆動電流実績値ＩＬを取得する（ステップＳ１０２）。すなわち、モータ駆動電流実績値入力部３２２（図７）が新たなモータ駆動電流実績値ＩＬを取得する。
【０１３０】
そして、ＣＰＵ１０１は、現時点のモータ駆動パルスレート設定値と、１演算周期前のモータ駆動電流設定値Ｉ０とに基づいて、図８に示すような、モータ駆動電流実績値−負荷トルクの関係を取得する（ステップＳ１０４）。続いて、ＣＰＵ１０１は、取得したモータ駆動電流実績値−負荷トルクの関係を参照して、現時点のモータ駆動電流実績値ＩＬに対応する負荷トルクを、推定負荷トルクＴ＾として算出する（ステップＳ１０６）。
【０１３１】
そして、ＣＰＵ１０１は、推定負荷トルクＴ＾と、１演算周期前の目標負荷トルクＴ０と、目標マージンＭｔとに基づいて、今回の当該演算周期における目標負荷トルクＴ１を算出する（ステップＳ１０８）。続いて、ＣＰＵ１０１は、パルスレート−プルアウトトルクの関係に基づいて、現時点のモータ駆動パルスレート設定値に対応する、プルアウトトルク−モータ駆動電流設定値の関係（図１２）を取得する（ステップＳ１１０）。さらに、ＣＰＵ１０１は、プルアウトトルク−モータ駆動電流設定値の関係を参照して、今回の当該演算周期における目標負荷トルクＴ１に基づいて、モータ駆動電流設定値Ｉ１を算出する（ステップＳ１１２）。最終的に、ＣＰＵ１０１は、算出したモータ駆動電流設定値Ｉ１をドライバ２１０へ与える（ステップＳ１１４）。
【０１３２】
その後、ＣＰＵ１０１は、本処理の終了が指示されたか否かを判断する（ステップＳ１１６）。本処理の終了が指示されていなければ（ステップＳ１１６においてＮＯの場合）、ステップＳ１００以下の処理が繰返し実行される。これに対して、本処理の終了が指示されると（ステップＳ１１６においてＹＥＳの場合）、処理は終了する。
【０１３３】
＜実施の形態１の変形例＞
上述の実施の形態１においては、図７に示すブロック図に示すように、トルクのマージン（余裕度）に着目して、目標マージンＭｔについてのフィードバックループを提供する。
【０１３４】
図７に示すブロック図では、１演算周期前において算出された目標負荷トルクＴ０を用いて、目標負荷トルクＴ１を算出することになるが、算出過程において、目標負荷トルクＴ０自体がキャンセルさせるため、より簡素化した構成を採用することが可能となる。
【０１３５】
図１５は、図７に示すブロック図を簡素化したブロック図である。図１５に示すブロック図は、図７に示すブロック図と比較して、割算部３０４，３１０と、掛算部３０６と、遅延素子３０８とを取除いた上で、掛算部３０７を設けたものである。
【０１３６】
掛算部３０７は、負荷トルク推定部３１６により算出される推定負荷トルクＴ＾にマージン目標値設定部３０２から出力される目標マージンＭｔを乗じることで、現演算周期の目標負荷トルクＴ１を算出する。
【０１３７】
それ以外の部位の処理は、図７と同様であるので、詳細な説明は繰返さない
図１５に示す制御ブロックを採用することで、演算処理に必要な計算量をより低減することができる。
【０１３８】
＜作用効果＞
本実施の形態によれば、ステッピングモータの実際の動作状況における負荷トルクがリアルタイムに推定できる。そのため、負荷トルクの大きさに応じて、適切なトルクマージンが確保されるように、モータ駆動電流値を適切に変化させて出力トルクを制御することができる。
【０１３９】
その結果、トルクマージンを適切に管理できるので、過剰な出力トルクを抑制して、モータ駆動電流（消費電流）を適正化できる。したがって、省エネ、温度上昇抑制、低騒音・低振動化が可能となる。また、適切な出力トルクで運転するので、オーバスペックのステッピングモータを採用する必要がなくなり、その結果、コストアップを抑制しつつ、高精度搬送が可能な高性能のステッピングモータを採用することもできる。同時に、負荷に応じた適正サイズのステッピングモータを採用することにより、軽量化、省スペース化、低コスト化を図ることもできる。
【０１４０】
さらに、単純にモータ駆動電流を低減させるのではないので、マージン不足による脱調リスクの増大を抑制できる。
【０１４１】
［実施の形態２］
上述の実施の形態１においては、図５に示すようにＬＰＦ２２２によってフィルタリング（帯域制限）された後の負荷変動に対して制御応答が可能となるように、制御部１０の演算周期をＬＰＦ２２２のカットオフ周波数に相当する周期より短くする必要がある。そのため、制御部１０における演算量が相対的に多くなるので、安価なプロセッサ（ＣＰＵ）を採用することが難しくなる。
【０１４２】
そこで、以下に説明する実施の形態２においては、対象プロセス（本実施の形態においては、用紙搬送）に応じて演算周期を決定することが可能な構成について例示する。このような構成を採用することで、上述の実施の形態１と同程度の制御応答を提供することのできない制御部１０（ＣＰＵ）を採用した場合であっても、ステッピングモータ２００を、実際の負荷トルクに対して出力トルクが適切となるように制御することができる。
【０１４３】
図１６は、この発明の実施の形態２に従うステッピングモータ駆動用の回路構成の一例を示す図である。図１６に示す回路構成は、図５に示す実施の形態１に従うステッピングモータ駆動用の回路構成に比較して、ＬＰＦ２２２と制御部１０との間に、ピークホールド回路２３２をさらに設けた点のみが異なっている。すなわち、ピークホールド回路２３２は、電流センサ２２０およびＬＰＦ２２２の出力側に設けられる。
【０１４４】
ピークホールド回路２３２は、制ＬＰＦ２２２からの出力時間的な変化のうち、最大値を抽出して保持する。また、ピークホールド回路２３２による保持動作は、制御部１０からのリセット信号によってリセット（ゼロクリア）される。言い換えれば、ピークホールド回路２３２は、直近の制御部１０からのリセット信号から各時点までに入力されたＬＰＦ２２２の出力のうち、最大の値を出力する。そのため、制御部１０が何らかのタイミングでリセット信号を順次出力すると、隣接するリセットタイミングで区切られた区間毎に、当該区間における最大値が出力される。
【０１４５】
すなわち、画像形成処理の期間を複数の演算周期に分割し、各演算周期におけるドライバ２１０からステッピングモータ２００へ供給される電流の大きさの代表値がモータ駆動電流実績値として取得される。
【０１４６】
図１７は、図１６に示すステッピングモータ駆動用の回路構成において測定されたモータ駆動電流実績値の時間変化の一例を示す図である。図１８は、図１７に示すモータ駆動電流実績値のサンプル値によって算出される推定負荷トルクＴ＾の時間変化の一例を示す。
【０１４７】
図１７には、ピークホールド回路２３２からの出力波形をＬＰＦ２２２からの出力波形（実値）と比較して示す。また、図１７には、各区間（隣接する２つのリセット信号の間）の確定値（制御部１０へ取込まれる値）についても、□印を付して示す。
【０１４８】
また、図１８には、図１７に示す各区間の確定値に基づいて算出される推定負荷トルクＴ＾の値を、上述の実施の形態１に示すような方法によって算出した推定負荷トルクＴ＾の時間変化と比較して示す。
【０１４９】
図１９は、この発明の実施の形態２に従う画像形成装置での動作について説明するための図であり。図１９を参照して、画像形成装置１の制御部１０は、処理対象のプロセスである用紙搬送の１回分の周期を想定する。この周期を「通紙周期」とも称す。
【０１５０】
まず、制御部１０は、通紙周期を適当な区間に分割する。本実施の形態においては、この分割によって得られた各区間の長さが「演算周期」に相当する。この区間の時間長さが制御部１０のＣＰＵ１０１の処理周期と同じであれば、各区間の長さを別途管理する必要がなくなり都合がよい。あるいは、各区間がＣＰＵ１０１の処理周期の整数倍とすれば、比較的単純のタスクで各区間の長さを管理することができ、また、より時間的に長い周期を用いることで、後述する推定負荷トルクなどを保持するためのメモリ容量が少なくて済む。
【０１５１】
制御部１０は、各区間の境界タイミングにおいてピークホールド回路２３２からの出力値（当該区間における電流検出値の最大値）を当該区間の確定値として取込んだ上で、ピークホールド回路２３２にリセット信号を与える。すなわち、各演算周期の境界タイミングで、ピークホールド回路２３２はリセットされる。これにより、ピークホールド回路２３２が直前の区間において保持していた値がゼロクリアされる。
【０１５２】
上述のような構成を採用することで、データ取込み、および、処理周期の速度が低い制御部１０（ＣＰＵ１０１）であっても、ステッピングモータ２００に与えられる負荷（たとえば、衝撃負荷）の時間的変化を適切に監視することができる。
【０１５３】
ただし、上述のような方法を採用した場合には、演算周期が相対的に長くなるので、この演算周期のむだ時間の大きさによっては、リアルタイムでステッピングモータ２００を制御することが困難となる。
【０１５４】
ところで、画像形成装置における用紙搬送においては、同種類の用紙を連続的に搬送することが多い。たとえば、１枚の原稿に対して、複数のコピーを生成するような場合である。そのため、時間的に連続する用紙搬送の間においては、そこで生じる負荷トルク変動の傾向が互いに強い相関性を有すると考えられる。
【０１５５】
そこで、本実施の形態においては、先行の用紙搬送制御（Ｊｏｂ１）において取得されたモータ駆動電流実績値（区間ピーク値）に基づいて、当該用紙搬送制御における推定負荷トルクを算出しておき、この算出した推定負荷トルクを次の用紙搬送制御（Ｊｏｂ２）において用いる。すなわち、各画像形成処理における目標負荷トルクの決定に、先の画像形成処理において取得されたモータ駆動電流実績値に基づいて推定された負荷トルクの時間変化が用いられる。
【０１５６】
なお、図１９に示すように、初めて用紙搬送制御を行なう場合には、推定負荷トルクが存在しないので、生じ得る負荷トルクに応じた推定負荷トルクが初期設定として与えられる。
【０１５７】
図２０は、この発明の実施の形態２に従うモータ制御モジュールの処理内容を説明するためのブロック図である。図２０に示すモータ制御モジュールは、図７に示すモータ制御モジュールにおいて、リセット信号生成部３３２と、リングメモリ３３４とをさらに追加したものに相当する。
【０１５８】
リセット信号生成部３３２は、定義された区間の時間長さに応じたタイミングで、リセット信号を出力する。すなわち、リセット信号生成部３３２は、用紙搬送制御に応じた区間を管理する。
【０１５９】
リングメモリ３３４は、用紙搬送に対して定義された複数の区間に対応付けて領域が割当てられている。各領域のアドレスは、通紙周期で一巡するように設定される。そのため、用紙搬送制御の進行に同期して、必要なデータの読出しおよび書込みが可能となる。このリングメモリ３３４には、基本的には、算出された推定負荷トルクが各区間に対応付けて保存される。また、各用紙搬送制御において、前回の用紙搬送制御において算出された、対応する区間における推定負荷トルクの値が読み出されて使用される。
【０１６０】
＜フローチャート＞
上述の制御部１０における処理手順は、図２１に示すようなフローチャートにまとめることができる。なお、本実施の形態に従うステッピングモータの全体処理については、上述の図１３に示すフローチャートにおける処理手順と同様であるので、詳細な説明は繰返さない。
【０１６１】
図２１を参照して、まず、ＣＰＵ１０１は、用紙搬送の通紙周期に応じて、区間分割数Ｎを設定するとともに、区間カウンタｉを初期化する（ステップＳ２００）。
【０１６２】
次に、ＣＰＵ１０１は、先の用紙搬送制御において算出された推定負荷トルクが存在するか否かを判断する（ステップＳ２０２）。すなわち、図２０に示すリングメモリ３３４に先の用紙搬送制御の結果が保存されているか否かが判断される。
【０１６３】
先の用紙搬送制御において算出された推定負荷トルクが存在する場合（ステップＳ２０２においてＹＥＳの場合）には、ＣＰＵ１０１は、当該先の用紙搬送制御において算出された推定負荷トルクを読出対象に設定する（ステップＳ２０４）。
【０１６４】
これに対して、先の用紙搬送制御において算出された推定負荷トルクが存在する場合（ステップＳ２０２においてＹＥＳの場合）には、ＣＰＵ１０１は、予め用意されている推定負荷トルクを初期値として設定する（ステップＳ２０６）。
【０１６５】
そして、ＣＰＵ１０１は、ピークホールド回路２３２に対してリセット信号を与えて、その保持している値をリセット（ゼロクリア）する（ステップＳ２０８）。続いて、ＣＰＵ１０１は、演算処理を実行すべきであるか否かを判断する（ステップＳ２１０）。すなわち、ＣＰＵ１０１は、現在のタイミングが演算周期であるか否かを判断する。演算処理を実行すべきではないと判断された場合（ステップＳ２１０においてＮＯの場合）には、ステップＳ２１０の処理が繰返される。
【０１６６】
一方、演算処理を実行すべきであると判断された場合（ステップＳ２１０においてＹＥＳの場合）には、ＣＰＵ１０１は、現区間が通紙区間の先頭であるか否かを判断する（ステップＳ２１２）。すなわち、用紙搬送が連続して実行される場合に、先行の用紙搬送が完了し、次の用紙搬送が開始されたタイミングであるか否かが判断される。
【０１６７】
現区間が通紙区間の先頭であると判断された場合（ステップＳ２１２においてＹＥＳの場合）、ＣＰＵ１０１は、区間カウンタｉを初期化する（ステップＳ２１４）。そして、処理はステップＳ２１６へ進む。
【０１６８】
一方、現区間が通紙区間の先頭であると判断されなかった場合（ステップＳ２１２においてＮＯの場合）、ステップＳ２１４の処理はスキップされる。
【０１６９】
そして、ＣＰＵ１０１は、現時点のモータ駆動電流実績値ＩＬ（ピーク値）を取得する（ステップＳ２１６）。すなわち、モータ駆動電流実績値入力部３２２（図２０）が新たなモータ駆動電流実績値ＩＬを取得する。続いて、ＣＰＵ１０１は、先の用紙搬送制御において算出された一連の推定負荷トルクのうち現区間に対応する区間の値と、１演算周期前の目標負荷トルクＴ０と、目標マージンＭｔとに基づいて、今回の当該演算周期における目標負荷トルクＴ１を算出する（ステップＳ２１８）。続いて、ＣＰＵ１０１は、パルスレート−プルアウトトルクの関係に基づいて、現時点のモータ駆動パルスレート設定値に対応する、プルアウトトルク−モータ駆動電流設定値の関係（図１２）を取得する（ステップＳ２２０）。さらに、ＣＰＵ１０１は、プルアウトトルク−モータ駆動電流設定値の関係を参照して、今回の当該演算周期における目標負荷トルクＴ１に基づいて、モータ駆動電流設定値Ｉ１を算出する（ステップＳ２２２）。最終的に、ＣＰＵ１０１は、算出したモータ駆動電流設定値Ｉ１をドライバ２１０へ与える（ステップＳ２２４）。
【０１７０】
その後、ＣＰＵ１０１は、ピークホールド回路２３２に対してリセット信号を与えて、その保持している値をリセット（ゼロクリア）する（ステップＳ２２６）。
【０１７１】
続いて、ＣＰＵ１０１は、以下に示すような負荷トルクの推定処理を実行する。すなわち、ＣＰＵ１０１は、現時点のモータ駆動パルスレート設定値と、１演算周期前（ステップＳ２２６によるリセット前）のモータ駆動電流設定値Ｉ０とに基づいて、図８に示すような、モータ駆動電流実績値−負荷トルクの関係を取得する（ステップＳ２２８）。続いて、ＣＰＵ１０１は、取得したモータ駆動電流実績値−負荷トルクの関係を参照して、ステップＳ２１６において取得したモータ駆動電流実績値ＩＬ（ピーク値）に対応する負荷トルクを、推定負荷トルクＴ＾として算出する（ステップＳ２３０）。そして、ＣＰＵ１０１は、算出した推定負荷トルクＴ＾を新たな推定負荷トルクＴ＾として、現区間に対応するメモリに保存する（ステップＳ２３２）。すなわち、図２０に示すリングメモリ３３４のうち、区間カウンタｉに対応する領域の値をステップＳ２３０において算出した推定負荷トルクＴ＾の値に更新する。そして、ＣＰＵ１０１は、区間カウンタｉをインクリメントする（ステップＳ２３４）。
【０１７２】
その後、ＣＰＵ１０１は、本処理の終了が指示されたか否かを判断する（ステップＳ２３６）。本処理の終了が指示されていなければ（ステップＳ２３６においてＮＯの場合）、ステップＳ２１０以下の処理が繰返し実行される。これに対して、本処理の終了が指示されると（ステップＳ２３６においてＹＥＳの場合）、処理は終了する。
【０１７３】
＜その他の構成＞
ピークホールド回路２３２に対するリセット周期、すなわち演算周期は、一定としてもよいが、ピークホールド回路２３２に対するリセット時に瞬時的な負荷変動が生じた場合であっても、その値を適切に検出できるように、負荷変動が生じ難いタイミングを動的に決定してもよい。具体的には、用紙がローラに噛み込む瞬間などの過渡的な負荷変動が生じると予想される期間に含まれないように、リセットタイミングを変更する方法が考えられる。あるいは、区間の分割位置を連続する用紙搬送の間で異ならないようにずらしてもよい。この場合には、複数回の用紙搬送において算出された結果を統合して、推定負荷トルクを算出してもよい。
【０１７４】
また、上述の実施の形態においては、１つの前の用紙搬送において算出された推定負荷トルクをそのまま利用する構成について例示したが、複数回の用紙搬送において算出された複数の推定負荷トルクを統計的処理（単純平均や重み付き平均など）を用いて、制御に利用する推定負荷トルクを決定してもよい。すなわち、複数の先の画像形成処理においてそれぞれ推定された複数の負荷トルクの時間変化を統計的処理することで、今回の画像形成処理における推定された負荷トルクの時間変化が決定される。
【０１７５】
なお、連続的な用紙搬送の実行が要求される場合には、１枚目の用紙搬送においては、目標マージンＭｔを相対的に高い値に設定しておき、後続の用紙搬送においては、状況に応じて、目標マージンＭｔを徐々に適正レベルまで下げてもよい。
【０１７６】
＜実施の形態２の変形例＞
さらに、リセットタイミングで瞬間的な負荷変動が生じてもそれを的確に検出できるように、リセットタイミングの異なる複数のピークホールド回路を設けてもよい。
【０１７７】
図２２は、この発明の実施の形態２の変形例に従うステッピングモータ駆動用の回路構成の一例を示す図である。図２２に示す回路構成は、図１６に示す実施の形態２に従うステッピングモータ駆動用の回路構成に比較して、ＬＰＦ２２２と制御部１０との間に、ピークホールド回路２３４をさらに設けた点のみが異なっている。
【０１７８】
ピークホールド回路２３２および２３４に対しては、それぞれ異なるタイミングでリセット信号１および２が制御部１０から与えられる。このように異なるリセットタイミングを有する複数のピークホールド回路を採用することで、モータ駆動電流実績値において瞬間的な負荷変動が生じても、その変動を適切に検出することができる。
【０１７９】
なお、制御部１０から出力ポート１１７を介してリセット信号を出力する構成を採用する場合には、２つのＡ／Ｄ変換器が必要となるため、その構成をより簡素化する観点からは、制御部１０とは別に設けたマルチプレクサを用いて、ピークホールド回路２３２および２３４に対して、リセット信号をそれぞれ選択的に与えてもよい。
【０１８０】
上述のように、複数のピークホールド回路に対して異なるリセットタイミングを与えることによって、異なるタイミングでそれぞれのピーク値が更新される。そのため、たとえば、図２３に示すような方法によって、最終的なモータ駆動電流実績値を算出してもよい。
【０１８１】
図２３は、この発明の実施の形態２の変形例に従うモータ駆動電流実績値の算出処理を説明するための図である。図２３を参照して、ピークホールド回路２３２および２３４からそれぞれ出力されるモータ駆動電流実績値（ピーク値）のうち、時間的に隣接する複数の値を反映して、ピークホールド回路２３２および２３４の各区間より短い区間毎に、統計値を算出してもよい。この場合、単純平均や重み付き平均、あるいは最大値などの統計的処理を採用することができる。
【０１８２】
＜作用効果＞
本実施の形態によれば、データ処理能力が相対的に低い廉価な制御装置（ＣＰＵ）を採用した場合であっても、上述の実施の形態１における作用効果と同様の作用効果を発揮できる。
【０１８３】
［その他の実施の形態］
上述の実施の形態において説明したような制御を実行させるプログラムを任意の方法で提供することもできる。このようなプログラムは、フレキシブルディスク、ＣＤ−ＲＯＭ（Compact Disk-Read Only Memory）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）およびメモリカードなどのコンピュータ読取り可能な記録媒体に記録させた状態で提供することもできる。あるいは、ネットワークを介したダウンロードによって、プログラムを提供することもできる。
【０１８４】
このようなプログラムは、コンピュータのオペレーティングシステム（ＯＳ）の一部として提供されるプログラムモジュールのうち、必要なモジュールを所定の配列で所定のタイミングで呼出して処理を実行させるものであってもよい。その場合、プログラム自体には上記モジュールが含まれずＯＳと協働して処理が実行される。このようなモジュールを含まないプログラムも、本実施の形態に従うプログラムに含まれ得る。
【０１８５】
今回開示された実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した実施の形態の説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【０１８６】
１  画像形成装置、２  スキャナ、３  プリントエンジン、４  転写ベルト、５  転写ローラ、６  定着装置、７  操作パネル、１０  制御部、１１，１３，１５  搬送ローラ、１２，１４，１６，１８  ステッピングモータ、２０，２０Ｙ，２０Ｍ，２０Ｃ，２０Ｋ  イメージングユニット、２１，２１Ｙ，２１Ｍ，２１Ｃ，２１Ｋ  感光体ドラム、３１  帯電グリッド高圧電源、３２  現像バイアス高圧電源、９０  制御部、１０１  ＣＰＵ、１０３  ＲＡＭ、１０５  ＲＯＭ、１０７  ＥＥＰＲＯＭ、１０９  ＨＤＤ、１１１  外部通信Ｉ／Ｆ、１１３  内部通信Ｉ／Ｆ、１１５  入力ポート、１１７  出力ポート、１１９  内部バス、１５０  プリント処理制御モジュール、１５１，１５２，  モータ制御モジュール、２００  ステッピングモータ、２０４  第１相コイル、２０６  第２相コイル、２１０  ドライバ、２２０  電流センサ、２２２  ＬＰＦ、２３２  ピークホールド回路、２３４  ピークホールド回路、３０２  マージン目標値設定部、３０４，３１０  割算部、３０６，３０７  掛算部、３０８，３１８  遅延素子、３１２  モータ駆動電流設定値算出部、３１４  モータ駆動パルスレート設定部、３１６  負荷トルク推定部、３２０  モータ駆動電流設定値出力部、３２２  モータ駆動電流実績値入力部、３３２  リセット信号生成部、３３４  リングメモリ、Ｒｆ  分圧抵抗、Ｓ  用紙、ＶＣＣ  制御電源、ＶＤＤ  モータ駆動電源。
【図１】
2011199969.tif 000003
【図２】
2011199969.tif 000004
【図３】
2011199969.tif 000005
【図４】
2011199969.tif 000006
【図５】
2011199969.tif 000007
【図６】
2011199969.tif 000008
【図７】
2011199969.tif 000009
【図８】
2011199969.tif 000010
【図９】
2011199969.tif 000011
【図１０】
2011199969.tif 000012
【図１１】
2011199969.tif 000013
【図１２】
2011199969.tif 000014
【図１３】
2011199969.tif 000015
【図１４】
2011199969.tif 000016
【図１５】
2011199969.tif 000017
【図１６】
2011199969.tif 000018
【図１７】
2011199969.tif 000019
【図１８】
2011199969.tif 000020
【図１９】
2011199969.tif 000021
【図２０】
2011199969.tif 000022
【図２１】
2011199969.tif 000023
【図２２】
2011199969.tif 000024
【図２３】
2011199969.tif 000025