(57)【要約】【課題】ベクトル制御によりモータの駆動制御を行うモータ制御装置において、モータへ供給される駆動電流の、スイッチング素子のスイッチングノイズに起因した検出精度の低下を防止するための技術を提供する。【解決手段】検出制御部８０１は、ＰＷＭ周期Ｔpwmごとに、当該ＰＷＭ周期内の検出タイミングｔs1，ｔs2に駆動電流の検出を行うか推定を行うかを、ＰＷＭ信号のデューティ比に基づいて選択する。検出タイミングｔs1，ｔs2は、それぞれ、ＰＷＭ周期Ｔpwmの開始タイミング及び中心タイミングのタイミングである。検出制御部８０１は、検出タイミングｔs1，ｔs2（の少なくともいずれか）における駆動電流の検出を禁止しなかった場合には、検出値生成部８０２に駆動電流の検出を実行させる。また、検出制御部８０１は、検出タイミングｔs1，ｔs2（の両方）における駆動電流の検出を禁止した場合には、電流推定部８０４に駆動電流の推定を実行させる。【選択図】図８
2018007505.tif 000002
【特許請求の範囲】
【請求項１】
モータの駆動制御を行うモータ制御装置であって、
前記モータへ供給する駆動電流を、前記モータの回転位相を基準とした回転座標系の電流値によって制御するベクトル制御を行い、前記駆動電流に対応する駆動電圧を出力するベクトル制御手段と、
前記ベクトル制御手段から出力された駆動電圧に基づいてＰＷＭ信号を生成する信号生成手段と、
前記信号生成手段によって生成されたＰＷＭ信号に従ってスイッチングを行うスイッチング素子を含み、前記スイッチング素子のスイッチングに応じた駆動電流を前記モータへ供給することによって前記モータを駆動する駆動回路と、
前記回転位相の決定に用いられる、前記モータの巻線に流れる駆動電流の電流値を生成する生成手段であって、ＰＷＭ周期ごとに、当該ＰＷＭ周期内の予め定められた検出タイミングに駆動電流の検出を行うか、または過去のＰＷＭ周期において生成した電流値を用いて駆動電流の推定を行うかを、前記信号生成手段によって生成されたＰＷＭ信号のデューティ比に基づいて選択する、前記生成手段と、
を備えることを特徴とするモータ制御装置。
【請求項２】
前記生成手段は、
前記検出タイミングと、前記デューティ比によって定まる、ハイレベルとローレベルとの間で前記ＰＷＭ信号のレベルが変化するタイミングとの相対的な関係に基づいて、前記ＰＷＭ周期ごとに前記駆動電流の検出を禁止するか否かを決定する禁止手段と、
前記禁止手段によって前記駆動電流の検出が禁止されなかった場合には、前記駆動電流の検出を行うことを選択し、前記禁止手段によって前記駆動電流の検出が禁止された場合には、前記駆動電流の推定を行うことを選択する選択手段と、を含む
ことを特徴とする請求項１に記載のモータ制御装置。
【請求項３】
前記信号生成手段は、前記モータの第１相及び第２相にそれぞれ対応する第１ＰＷＭ信号及び第２ＰＷＭ信号を生成し、
前記禁止手段は、前記第１ＰＷＭ信号のデューティ比及び前記第２ＰＷＭ信号のデューティ比の両方に基づいて、前記駆動電流の検出を禁止するか否かを決定する
ことを特徴とする請求項２に記載のモータ制御装置。
【請求項４】
前記検出タイミングは、前記ＰＷＭ周期の開始タイミング及び前記ＰＷＭ周期の半周期のタイミングである中心タイミングに予め定められており、
前記禁止手段は、前記開始タイミング及び前記中心タイミングのそれぞれについて前記駆動電流の検出を禁止するか否かを決定し、
前記選択手段は、
前記開始タイミング及び前記中心タイミングの少なくともいずれかにおける前記駆動電流の検出が禁止されなかった場合には、前記駆動電流の検出を行うことを選択し、
前記開始タイミング及び前記中心タイミングの両方における前記駆動電流の検出が禁止された場合には、前記駆動電流の推定を行うことを選択する
ことを特徴とする請求項２または３に記載のモータ制御装置。
【請求項５】
前記信号生成手段は、前記ＰＷＭ周期ごとに、前記駆動電圧に対応するデューティ比を有するとともに、ハイレベルの期間が前記ＰＷＭ信号の中心部に配置され、かつ、前記ＰＷＭ周期の中心タイミングに対して対称の波形となるＰＷＭ信号を生成し、
前記禁止手段は、第１閾値よりも前記デューティ比が小さい場合に、前記中心タイミングにおける前記駆動電流の検出を禁止し、前記第１閾値より大きい第２閾値よりも前記デューティ比が大きい場合に、前記開始タイミングにおける前記駆動電流の検出を禁止する
ことを特徴とする請求項４に記載のモータ制御装置。
【請求項６】
前記信号生成手段は、前記モータの第１相及び第２相にそれぞれ対応する第１ＰＷＭ信号及び第２ＰＷＭ信号を生成し、
前記禁止手段は、前記第１ＰＷＭ信号のデューティ比及び前記第２ＰＷＭ信号のデューティ比の両方に基づいて、前記開始タイミング及び前記中心タイミングのそれぞれについて前記駆動電流の検出を禁止するか否かを決定する
ことを特徴とする請求項４または５に記載のモータ制御装置。
【請求項７】
前記生成手段は、直前のＰＷＭ周期において生成した電流値と、前記モータの回転による、１ＰＷＭ周期における前記回転位相の変化量とに基づく推定演算によって、前記駆動電流の推定を行う推定手段を含む
ことを特徴とする請求項１から６のいずれか１項に記載のモータ制御装置。
【請求項８】
前記推定手段は、前記直前のＰＷＭ周期において生成した電流値を静止座標系から前記回転座標系に変換して得られる電流値を、前記直前のＰＷＭ周期について決定された前記回転位相を前記変化量だけ変化させた回転位相に基づいて、前記回転座標系から前記静止座標系に逆変換することによって、前記駆動電流の推定を行う
ことを特徴とする請求項７に記載のモータ制御装置。
【請求項９】
前記生成手段は、前記駆動回路に接続された電流検出素子に生じる電圧に基づいて、前記巻線に流れる駆動電流の検出を行う検出手段を含む
ことを特徴とする請求項１から８のいずれか１項に記載のモータ制御装置。
【請求項１０】
前記生成手段によって生成される、前記モータの第１相に対応する電流値及び前記モータの第２相に対応する電流値に基づく演算によって、前記ベクトル制御に用いられる前記回転位相を決定する決定手段、を更に備える
ことを特徴とする請求項１から９のいずれか１項に記載のモータ制御装置。
【請求項１１】
前記決定手段は、
前記モータの第１相及び第２相のそれぞれについて、前記ベクトル制御手段から出力された駆動電圧と、前記生成手段から生成された電流値とから、前記モータの回転に従って巻線に誘起される誘起電圧を演算する電圧演算手段と、
前記電圧演算手段によって演算された前記第１相の誘起電圧と前記第２相の誘起電圧との比から、前記回転位相の推定値を演算する位相演算手段と、
を含むことを特徴とする請求項１０に記載のモータ制御装置。
【請求項１２】
前記ベクトル制御手段は、前記決定手段における演算によって得られる前記回転位相の推定値のフィードバックに基づいて、当該推定値と、外部のコントローラから与えられる前記回転位相の指令値との差が０に近づくように、前記ベクトル制御を行う、
ことを特徴とする請求項１０または１１に記載のモータ制御装置。
【請求項１３】
前記駆動電流は、前記回転位相を基準とした回転座標系において、前記モータにトルクを発生させる第１の電流成分と、前記モータの回転子の磁束強度に影響する第２の電流成分とによって表され、
前記ベクトル制御手段は、前記第２の電流成分の電流値が０になるように当該第２の電流成分を制御しながら、前記第１の電流成分を制御することによって、前記駆動電流を制御する、
ことを特徴とする請求項１から１２のいずれか１項に記載のモータ制御装置。
【請求項１４】
記録材に画像を形成する画像形成手段と、
前記画像形成手段によって画像が形成される記録材の搬送用のローラを駆動するモータと、
前記モータの駆動制御を行う、請求項１から１３のいずれか１項に記載のモータ制御装置と、
を備えることを特徴とする画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータの駆動制御に関するものであり、特に、複写機、プリンタ等の画像形成装置において負荷の駆動源として使用可能なステッピングモータ等のモータの駆動制御に関するものである。
【背景技術】
【０００２】
複写機、プリンタ等の電子写真方式の画像形成装置において、画像が形成される用紙等の記録材を搬送する搬送系の駆動源として、ステッピングモータが広く用いられている。ステッピングモータは、モータの回転速度及び位置（位相）を検出する機構を備えていなくとも、モータに与えるパルス周期及びパルス数を制御することによって容易に速度制御及び位置（位相）制御を行える利点を有する。このような制御を行う際、モータが脱調状態となることを避けるためには、装置で必要となる負荷トルクに対して所定のマージンを有するモータ出力トルクが得られるように、駆動電流をモータへ供給する必要がある。これにより、必要以上に電力を消費するとともに、余剰トルクに起因して装置に振動及び騒音が生じる問題がある。
【０００３】
このような問題に対処するための技術として、特許文献１乃至３には、ベクトル制御（またはＦＯＣ：Field Oriented Control）と称される方式が提案されている。ベクトル制御は、回転子の磁束方向をｄ軸、これに直交する方向をｑ軸と定義した回転座標系を用いて、モータに適切なトルクが発生するように駆動電流の振幅及び位相を制御する方式である。回転座標系では、駆動電流のｑ軸成分（ｑ軸電流）は、回転子の回転に寄与するトルクを発生させるトルク電流成分であり、駆動電流のｄ軸成分（ｄ軸電流）は、回転子の磁束強度に影響する励磁電流成分である。特に、ステッピングモータのように回転子に永久磁石を用いるモータでは、ｄ軸電流を必要とせずに、ｑ軸電流のみを用いてトルク制御が可能である。その結果として、静止座標系におけるモータの駆動電流が理想的な正弦波となるため、電力効率が良い駆動制御を実現できるのみならず、上述のような余剰トルクに起因した装置の振動及び騒音を抑えられる。
【０００４】
上述のようなベクトル制御には、モータの回転子（ロータ）の回転速度及び回転位相の検出が必要となる。特許文献３には、ロータリエンコーダを用いることなくロータの回転速度及び位相を推定する方法が提案されている。具体的には、モータの駆動電流を検出し、電圧方程式に基づいて推定されたＡ相及びＢ相における誘起電圧比の逆正接を演算することで、ロータの位相を推定（決定）している。ロータの回転速度は、ロータの位相の推定結果の時間微分によって推定される。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第３６６１８６４号公報
【特許文献２】特開平６−２２５５９５号公報
【特許文献３】特許第５５３７５６５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ステッピングモータ等のモータを駆動する駆動回路には、例えば、モータの駆動電圧に対応するＰＷＭ信号によって駆動される複数のスイッチング素子（ＦＥＴ）で構成されたフルブリッジ回路が使用される。フルブリッジ回路は、ＰＷＭ信号によって駆動されるＦＥＴのスイッチングに応じた駆動電流をモータへ供給する。上述のベクトル制御によるモータの駆動制御を実現するためには、このような駆動回路からモータへ供給される駆動電流を検出し、ロータの回転位相を推定（決定）する必要がある。
【０００７】
しかし、ＰＷＭ信号のレベルの変化点から時間的に近いタイミングに駆動電流の検出を行った場合、駆動電流の検出結果がスイッチング素子のスイッチングノイズの影響を受けることで、検出結果に誤差が生じうる。駆動電流の検出結果に誤差が生じると、ロータの回転位相の推定精度が低下し、モータの駆動制御に不具合が生じうる。
【０００８】
本発明は、上述の課題に鑑みてなされたものである。本発明は、ベクトル制御によりモータの駆動制御を行うモータ制御装置において、モータへ供給される駆動電流の、スイッチング素子のスイッチングノイズに起因した検出精度の低下を防止するための技術を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明は、例えば、モータ制御装置として実現できる。本発明の一態様に係るモータ制御装置は、モータの駆動制御を行うモータ制御装置であって、前記モータへ供給する駆動電流を、前記モータの回転位相を基準とした回転座標系の電流値によって制御するベクトル制御を行い、前記駆動電流に対応する駆動電圧を出力するベクトル制御手段と、前記ベクトル制御手段から出力された駆動電圧に基づいてＰＷＭ信号を生成する信号生成手段と、前記信号生成手段によって生成されたＰＷＭ信号に従ってスイッチングを行うスイッチング素子を含み、前記スイッチング素子のスイッチングに応じた駆動電流を前記モータへ供給することによって前記モータを駆動する駆動回路と、前記回転位相の決定に用いられる、前記モータの巻線に流れる駆動電流の電流値を生成する生成手段であって、ＰＷＭ周期ごとに、当該ＰＷＭ周期内の予め定められた検出タイミングに駆動電流の検出を行うか、または過去のＰＷＭ周期において生成した電流値を用いて駆動電流の推定を行うかを、前記信号生成手段によって生成されたＰＷＭ信号のデューティ比に基づいて選択する、前記生成手段と、を備えることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、ベクトル制御によりモータの駆動制御を行うモータ制御装置において、モータへ供給される駆動電流の、スイッチングノイズによる検出精度の低下を防止できる。それにより、モータの回転子（ロータ）の回転位相の推定精度の低下を防止し、モータの制御効率を悪化させずにモータのベクトル制御を行うことが可能となる。
【図面の簡単な説明】
【００１１】
【図１】画像形成装置の全体の構成例を示す図
【図２】画像形成装置の制御構成例を示すブロック図
【図３】モータ制御部の構成例を示すブロック図
【図４】モータと回転座標系のｄｑ軸との関係を示す図
【図５】ＰＷＭインバータの構成例、及びフルブリッジ回路における入力ＰＷＭ信号と駆動電流との関係の例を示す図
【図６】ＰＷＭ信号と駆動電流の検出タイミングの例を示す図
【図７】ＰＷＭ信号と駆動電流の検出タイミングの例を示す図
【図８】電流値生成部の構成例を示すブロック図
【図９】電流推定部による駆動電流の推定の例を示す図
【図１０】モータ制御部による駆動電流の検出フローを示すフローチャート
【発明を実施するための形態】
【００１２】
以下、本発明を実施するための形態について図面を用いて説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものでなく、また実施形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
【００１３】
＜画像形成装置＞
まず、図１を参照して、本発明の実施形態に係るモータ制御装置が実装される画像形成装置の構成例について説明する。図１に示す画像形成装置１００は、原稿自動送り装置２０１、読取装置２０２、及び画像形成装置本体３０１を備えている。
【００１４】
原稿自動送り装置２０１の原稿載置部２０３に置かれた原稿は、給紙ローラ２０４によって１枚ずつ給紙され、搬送ガイド２０６を経由して読取装置２０２の原稿ガラス台２１４に搬送される。更に、原稿は、搬送ベルト２０８によって一定速度で搬送された後、排紙ローラ２０５によって装置外部へ排紙される。この間、読取装置２０２の読取位置において照明系２０９によって照明された原稿画像からの反射光は、反射ミラー２１０，２１１，２１２から成る光学系によって画像読取部１０１に導かれ、画像読取部１０１によって画像信号に変換される。画像読取部１０１は、レンズ、光電変換素子であるＣＣＤ、ＣＣＤの駆動回路等で構成される。画像読取部１０１から出力された画像信号は、ＡＳＩＣ等のハードウェアデバイスで構成される画像処理部１１２によって、各種補正処理が行われた後、画像形成装置本体３０１へ出力される。
【００１５】
読取装置２０２における原稿の読取モードとして、流し読みモード及び固定モードがある。流し読みモードは、照明系２０９及び光学系を停止した状態で、原稿を一定速度で搬送しながら当該原稿の画像を読み取るモードである。固定モードは、読取装置２０２の原稿ガラス台２１４上に原稿を載置し、照明系２０９及び光学系を一定速度で移動させながら、原稿ガラス台２１４上に載置された原稿の画像を読み取るモードである。通常、シート状の原稿は流し読みモードにより読み取られ、綴じられた原稿は固定モードで読み取られる。
【００１６】
画像形成装置１００は、読取装置２０２から出力される画像信号に基づいて、画像形成装置本体３０１においてページ単位で記録紙（記録材）に画像を形成するコピー機能を有する。なお、画像形成装置１００は、ネットワークを介して外部装置から受信したデータに基づいて記録紙に画像を形成する印刷機能も有している。
【００１７】
読取装置２０２から出力された画像信号は、光走査装置３１１に入力される。光走査装置３１１は、半導体レーザ及びポリゴンミラーを含み、入力された画像信号で変調されたレーザ光（光信号）を、半導体レーザから出力する。半導体レーザから出力されたレーザ光が、ポリゴンミラー、及びミラー３１２，３１３を経由して感光ドラム３０９の表面に照射されることで、感光ドラム３０９が露光される。帯電器３１０によって表面が一様に帯電した感光ドラム３０９がレーザ光によって露光されることで、感光ドラム３０９上に静電潜像が形成される。感光ドラム３０９上に形成された静電潜像が、現像器３１４から供給されるトナーによって現像されることで、感光ドラム３０９上にトナー像が形成される。感光ドラム３０９上のトナー像は、感光ドラム３０９の回転に伴って転写分離器３１５と対向する位置（転写位置）まで移動すると、転写分離器３１５によって記録紙に転写される。
【００１８】
記録紙は、紙カセット３０２及び３０４に収納されており、それぞれ異なる種類の記録紙を収納可能である。例えば、紙カセット３０２には標準の記録紙が収納され、紙カセット３０４にはタブ紙が収納される。紙カセット３０２に収納された記録紙は、給紙ローラ３０３によって搬送路上に給紙され、搬送ローラ３０６によってレジストローラ３０８の位置まで搬送され、そこで一時的に停止する。一方、紙カセット３０４に収納された記録紙は、給紙ローラ３０５によって搬送路上に給紙され、搬送ローラ３０７，３０６によってレジストローラ３０８の位置まで搬送され、そこで一時的に停止する。
【００１９】
レジストローラ３０８の位置まで搬送された記録紙は、感光ドラム３０９上のトナー像が転写位置に到達するタイミングに合わせて、レジストローラ３０８によって転写位置へ搬送される。転写位置において感光ドラム３０９からトナー像が転写された記録紙は、搬送ベルト３１７によって定着器３１８へ搬送される。定着器３１８は、熱及び圧力により、記録紙上のトナー像を当該記録紙に定着させる。
【００２０】
片面印刷モードで画像形成が行われる場合には、定着器３１８を通過した記録紙は、排紙ローラ３１９，３２４によって装置外部へ排紙される。両面印刷モードで画像形成が行われる場合には、定着器３１８を通過後、表面（第１面）に画像が形成された記録紙は、排紙ローラ３１９、搬送ローラ３２０及び反転ローラ３２１によって、反転パス３２５へ搬送される。更に、記録紙の後端が、反転パス３２５と両面パス３２６との合流ポイントを通過した直後に、反転ローラ３２１の回転を反転させることで、記録紙が逆方向に搬送され始め、両面パス３２６へ搬送される。その後、記録紙は、搬送ローラ３２２，３２３によって両面パス３２６を搬送され、再び搬送ローラ３０６によってレジストローラ３０８の位置まで搬送され、そこで一時的に停止する。更に、記録紙の表面（第１面）への画像形成と同様に、転写位置において記録紙の裏面（第２面）へのトナー像の転写処理が行われ、更に定着器３１８によって定着処理が行われた後、記録紙は、装置外部へ排紙される。
【００２１】
また、表面へ画像形成された記録紙の表裏を反転させて（第１面が下向きになるように反転させて）記録紙を装置外部へ排紙する場合には、定着器３１８を通過した記録紙を、排紙ローラ３２４ではなく搬送ローラ３２０へ向かう方向へ一時的に搬送する。その後、記録紙の後端が搬送ローラ３２０の位置を通過する直前に、搬送ローラ３２０の回転を反転させることで、記録紙が逆方向に搬送され始め、排紙ローラ３２４へ向かう方向へ搬送される。その結果、記録紙は、表裏が反転した状態で排紙ローラ３２４によって装置外部へ排紙される。
【００２２】
このように、画像形成装置本体３０１は、画像が形成される記録紙の搬送用のローラとして、搬送ローラ３０６，３０７、排紙ローラ３１９、反転ローラ３２１、搬送ローラ３２２，３２３、及び排紙ローラ３２４を備えている。更に、給紙ローラ３０３、レジストローラ３０８等のローラも、記録紙の搬送用のローラである。これらのローラを駆動するモータの駆動制御は、後述するように、システムコントローラ１５１（図２）からの指示により、モータ制御部１５７（図２）によって行われる。
【００２３】
（画像形成装置の制御構成）
図２は、画像形成装置１００の制御構成例を示すブロック図である。図２に示すシステムコントローラ１５１は、ＣＰＵ１５１ａ、ＲＯＭ１５１ｂ、及びＲＡＭ１５１ｃを備え、画像形成装置１００全体を制御する。システムコントローラ１５１は、画像処理部１１２、操作部１５２、アナログ・デジタル（Ａ／Ｄ）変換器１５３、高圧制御部１５５、モータ制御部１５７、センサ類１５９、及びＡＣドライバ１６０と接続されている。システムコントローラ１５１は、接続された各ユニットとの間でデータの交換が可能である。
【００２４】
ＣＰＵ１５１ａは、ＲＯＭ１５１ｂに格納された各種プログラムを読み出して実行することによって、予め定められた画像形成シーケンスに関連する各種シーケンスを実行する。ＲＡＭ１５１ｃは、記憶デバイスであり、ＣＰＵ１５１ａは、各種プログラムを実行するためのワークエリアとして、または各種データが一時的に格納される一時記憶領域として使用される。ＲＡＭ１５１ｃには、例えば、高圧制御部１５５に対する設定値、モータ制御部１５７に対する指令値、操作部１５２から受信される情報等のデータが格納される。
【００２５】
システムコントローラ１５１は、ユーザが各種の設定を行うための操作画面を、操作部１５２に設けられた表示部に表示するよう、操作部１５２を制御することで、操作部１５２を介してユーザによる設定を受け付ける。システムコントローラ１５１は、操作部１５２を介したユーザによる設定の内容（複写倍率の設定値、濃度設定値等）を示す情報を、操作部１５２から受信する。また、システムコントローラ１５１は、画像形成装置の状態をユーザに知らせるためのデータを操作部１５２に送信する。操作部１５２は、システムコントローラ１５１から受信したデータに基づいて、画像形成装置の状態を示す情報（例えば、画像形成枚数、画像形成中か否かを示す情報、ジャムの発生及び発生個所を示す情報）を表示部に表示する。
【００２６】
システムコントローラ１５１（ＣＰＵ１５１ａ）は、画像処理部１１２に対して、画像処理部１１２における画像処理に必要となる、画像形成装置１００内の各デバイスの設定値データを送信する。また、システムコントローラ１５１は、各デバイスからの信号（センサ類１５９からの信号）を受信して、受信した信号に基づいて高圧制御部１５５を制御する。高圧制御部１５５は、システムコントローラ１５１から出力される設定値に基づいて、高圧ユニット１５６を構成する帯電器３１０、現像器３１４、及び転写分離器３１５に対して、それぞれの動作に必要となる電圧を供給する。
【００２７】
Ａ／Ｄ変換器１５３は、定着ヒータ１６１の温度を検出するためのサーミスタ１５４から検出信号を受信し、当該検出信号をデジタル信号に変換してシステムコントローラ１５１に送信する。システムコントローラ１５１は、Ａ／Ｄ変換器１５３から受信したデジタル信号に基づいてＡＣドライバ１６０を制御することで、定着ヒータ１６１の温度を、定着処理のための所望の温度に制御する。なお、定着ヒータ１６１は、定着器３１８に含まれる、定着処理に用いられるヒータである。
【００２８】
このように、システムコントローラ１５１は、画像形成装置１００の動作シーケンスを制御する。また、システムコントローラ１５１は、モータ制御部１５７を介して、各モータの駆動シーケンスを制御する。モータ制御部１５７は、システムコントローラ１５１からの指示に従って、記録紙の搬送用のローラを駆動する駆動源に相当するモータ（図３に示すステッピングモータ５０９）を制御する。なお、画像形成装置１００は、記録紙の搬送用の各ローラに対応するモータごとに、当該モータを制御するモータ制御部１５７を備えている。本実施形態では、モータ制御部１５７は、モータの駆動制御を行うモータ制御装置の一例である。
【００２９】
モータ制御部１５７の外部のコントローラに相当するシステムコントローラ１５１（ＣＰＵ１５１ａ）は、制御対象のモータ（ステッピングモータ５０９）の回転子の位相（回転位相）の指令値（θ＿ｒｅｆ）を生成し、モータ制御部１５７へ出力する。例えば、位相指令値θ＿ｒｅｆは、パルス状の矩形波信号であり、１パルスがステッピングモータの回転角度の最小変化量を規定する。なお、モータの回転速度の指令値（速度指令値ω＿ｒｅｆ）は、θ＿ｒｅｆに対応する周波数として求められる。ＣＰＵ１５１ａは、モータの駆動シーケンスを開始すると、生成した位相指令値θ＿ｒｅｆを、所定の時間周期（制御周期）でモータ制御部１５７へ出力する。モータ制御部１５７は、ＣＰＵ１５１ａから与えられる位相指令値に従って、モータ（ステッピングモータ５０９）の位相制御及び速度制御を実行する。
【００３０】
＜ベクトル制御＞
次に、図３及び図４を参照して、モータ制御部１５７によって実行される、ステッピングモータ５０９のベクトル制御の概要について説明する。図３は、本実施形態に係るモータ制御部１５７の構成例を示すブロック図である。図３に示すモータ制御部１５７の基本的な構成は、ブラシレスＤＣモータ、ＡＣサーボモータ等のモータで利用されている、静止座標系から回転座標系への座標変換を用いたインバータ制御に対応した構成である。なお、ステッピングモータ５０９は、少なくとも２相から成るモータであり、本実施形態では、Ａ相及びＢ相から成る２相のモータである。
【００３１】
モータ制御部１５７では、ベクトル制御部５１５から出力される、ステッピングモータ５０９の駆動電圧Ｖα，Ｖβに応じて、ＰＷＭインバータ５０６がステッピングモータ５０９へ駆動電流を供給することによって、ステッピングモータ５０９を駆動する。なお、図３に示すように、ベクトル制御部５１５は、速度制御器５０２、電流制御器５０３，５０４、及び座標変換器５０５，５１１によって構成されている。
【００３２】
ここで、図４は、Ａ相及びＢ相から成る２相のモータと回転座標系のｄ軸及びｑ軸との関係を示す図である。同図では、静止座標系における、Ａ相及びＢ相の巻線に対応した軸をそれぞれα軸及びβ軸と定義している。また、静止座標系におけるα軸と、回転子（ロータ）として用いられる永久磁石の磁極によって作られる磁束の方向（ｄ軸）との成す角度をθと定義している。この場合、ステッピングモータ５０９の出力軸の回転位相は、角度θによって表される。ベクトル制御では、図４に示すように、回転子の磁束方向に沿ったｄ軸と、ｄ軸から９０度進んだ方向に沿った（ｄ軸と直交する）ｑ軸とで表される、ステッピングモータ５０９の位相θを基準とした回転座標系が用いられる。
【００３３】
モータ制御部１５７は、ステッピングモータ５０９へ供給する駆動電流を、ステッピングモータ５０９の位相θを基準とした回転座標系の電流値によって制御するベクトル制御を行う。ベクトル制御では、ステッピングモータ５０９のＡ相及びＢ相の巻線に流れる駆動電流に対応する電流ベクトルが、α軸及びβ軸で表される静止座標系から、ｄ軸及びｑ軸で表される回転座標系に変換される。このような座標変換の結果、ステッピングモータ５０９に供給される駆動電流は、回転座標系において、直流のｄ軸成分（ｄ軸電流）及びｑ軸成分（ｑ軸電流）によって表される。この場合、ｑ軸電流は、ステッピングモータ５０９にトルクを発生させるトルク電流成分に相当し、回転子の回転に寄与する電流である。ｄ軸電流は、ステッピングモータ５０９の回転子の磁束強度に影響する励磁電流成分に相当する。モータ制御部１５７は、回転座標系におけるｑ軸電流及びｄ軸電流を独立して制御することで、ステッピングモータ５０９のベクトル制御を実現する。
【００３４】
具体的には、モータ制御部１５７は、ステッピングモータ５０９の回転子の位相（ロータ位相）及び回転速度を推定（決定）し、その推定結果に基づいてベクトル制御を行う。モータ制御部１５７は、図３に示すように、位相制御器５０１、速度制御器５０２、及び電流制御器５０３，５０４へのそれぞれのフィードバックに基づく３つの制御ループを含み、これらの制御ループによってベクトル制御を実現する。なお、図３に示すモータ制御部１５７において、ステッピングモータ５０９の位相θの推定は、誘起電圧演算部５１２及び位相演算部５１３によって行われる。また、ステッピングモータ５０９の回転速度ωの推定は、位相θの推定値に基づいて、速度演算部５１４によって行われる。
【００３５】
位相制御器５０１を含む、最も外側の制御ループでは、ステッピングモータ５０９の位相θの推定値のフィードバックに基づいて、ステッピングモータ５０９の位相制御を行う。モータ制御部１５７には、システムコントローラ１５１のＣＰＵ１５１ａから、ステッピングモータ５０９の位相指令値θ＿ｒｅｆが与えられる。位相制御器５０１は、位相演算部５１３からフィードバックされる、ステッピングモータ５０９の位相θの推定値の、位相指令値θ＿ｒｅｆ（目標値）に対する偏差が０に近づくように、速度指令値ω＿ｒｅｆを生成して出力する。このようにして、位相制御器５０１によるステッピングモータ５０９の位相制御が行われる。
【００３６】
速度制御器５０２を含む制御ループでは、ステッピングモータ５０９の回転速度ωの推定値のフィードバックに基づいて、ステッピングモータ５０９の速度制御を行う。速度制御器５０２は、速度演算部５１４からフィードバックされる、ステッピングモータ５０９の回転速度ωの推定値の、速度指令値ω＿ｒｅｆ（目標値）に対する偏差が０に近づくように、電流指令値ｉｑ＿ｒｅｆ，ｉｄ＿ｒｅｆを生成して出力する。なお、電流指令値ｉｑ＿ｒｅｆ，ｉｄ＿ｒｅｆは、静止座標系（αβ軸）から回転座標系（ｄｑ軸）への座標変換後の、回転座標系における電流指令値である。
【００３７】
電流制御器５０３，５０４を含む制御ループでは、ステッピングモータ５０９の各相の巻線に流れる駆動電流の検出値のフィードバックに基づいて、ステッピングモータ５０９の各相の巻線に供給する駆動電流を制御する。ここで、ステッピングモータ５０９のＡ相及びＢ相の巻線にそれぞれ流れる電流（交流電流）の電流値ｉα，ｉβは、静止座標系において、ステッピングモータ５０９の位相θを用いて次式によって表すことができる。
ｉα＝Ｉ＊ｃｏｓθ
ｉβ＝Ｉ＊ｓｉｎθ      （１）
この場合、回転座標系におけるｄ軸電流及びｑ軸電流（直流電流）の電流値ｉｄ，ｉｑは、次式に示す座標変換（クラーク変換）によって表される。
ｉｄ＝  ｃｏｓθ＊ｉα＋ｓｉｎθ＊ｉβ
ｉｑ＝−ｓｉｎθ＊ｉα＋ｃｏｓθ＊ｉβ      （２）
【００３８】
このような座標変換によって、静止座標系における、Ａ相及びＢ相の巻線にそれぞれ流れる交流電流値ｉα，ｉβは、回転座標系における直流電流値ｉｑ，ｉｄに変換される。なお、ｑ軸電流は、ステッピングモータ５０９にトルクを発生させるトルク電流成分（第１の電流成分）である。ｄ軸電流は、ステッピングモータ５０９の回転子の磁束強度に影響する励磁電流成分（第２の電流成分）であり、ステッピングモータ５０９のトルクの発生には寄与しない。
【００３９】
ステッピングモータ５０９のＡ相及びＢ相の巻線に流れる駆動電流は、電流検出部５０７，５０８によってそれぞれ検出される。電流検出部５０７，５０８は、ＰＷＭインバータ５０６からステッピングモータ５０９のＡ相及びＢ相の巻線にそれぞれ供給される駆動電流が流れる経路に接続されている。電流検出部５０７，５０８は、ステッピングモータ５０９の各相の巻線に流れる駆動電流を検出して電流検出値を出力する。電流検出部５０７，５０８から出力された電流検出値は、Ａ／Ｄ変換器５１０によってアナログ値からデジタル値へ変換されることで、ＣＰＵ、またはＦＰＧＡ等のプログラミングデバイスによる取り込みが可能になる。Ａ／Ｄ変換器５１０から出力される、静止座標系における電流検出値ｉα'，ｉβ'は、電流値生成部５５０へ入力される。なお、電流値生成部５５０には、更に、ＰＷＭインバータ５０６から出力される、駆動電圧Ｖα，Ｖβにそれぞれ対応するデューティ比ＤＲ＿ａ，ＤＲ＿ｂと、位相演算部５１３から出力される、位相θの推定値とが入力される。本実施形態の電流値生成部５５０は、後述するように、これらの入力されたデータに基づいて、ＰＷＭインバータ５０６における１ＰＷＭ周期ごとの電流値ｉα，ｉβを生成して出力する。電流値生成部５５０から出力される電流値ｉα，ｉβは、座標変換器５１１及び誘起電圧演算部５１２へ入力される。
【００４０】
座標変換器５１１は、式（２）によって、静止座標系（αβ軸）における電流値ｉα，ｉβを回転座標系（ｄｑ軸）における電流値ｉｑ，ｉｄへ変換して出力する。電流制御器５０３，５０４には、座標変換器５１１から出力される、回転座標系における検出された電流値ｉｑ，ｉｄと、速度制御器５０２から出力される、回転座標系における電流指令値ｉｑ＿ｒｅｆ，ｉｄ＿ｒｅｆとの差分値が入力される。電流制御器５０３，５０４は、入力された差分値（即ち、検出された電流値ｉｑ，ｉｄの、目標値である電流指令値ｉｑ＿ｒｅｆ，ｉｄ＿ｒｅｆに対する偏差）が０に近づくように、回転座標系における電流値ｉｑ'，ｉｄ'を生成及び出力する。なお、位相制御器５０１、速度制御器５０２、及び電流制御器５０３，５０４はそれぞれ、例えば、比例補償器及び積分補償器で構成され、ＰＩ制御によりフィードバック制御を実現する。
【００４１】
座標変換器５０５は、電流制御器５０３，５０４から出力される、回転座標系における電流値ｉｑ'，ｉｄ'を、次式によって、静止座標系における電流値ｉα''，ｉβ''へ逆変換する。
ｉα''＝ｃｏｓθ＊ｉｄ'−ｓｉｎθ＊ｉｑ'
ｉβ''＝ｓｉｎθ＊ｉｄ'＋ｃｏｓθ＊ｉｑ'      （３）
座標変換器５０５は、静止座標系への座標変換後の電流値ｉα''，ｉβ''に応じた駆動電圧Ｖα，Ｖβを、フルブリッジ回路で構成されたＰＷＭインバータ５０６、及び誘起電圧演算部５１２へ出力する。
【００４２】
このようにして、ベクトル制御部５１５は、ステッピングモータ５０９の位相θを基準とした回転座標系（ｄｑ軸）の電流値によって、ステッピングモータ５０９の各相の巻線に供給する駆動電流を制御するベクトル制御を行う。本実施形態では、ステッピングモータ５０９の位相θは、後述するように、当該モータの各相の巻線に流れる駆動電流の検出結果に基づく推定演算によって決定される。ベクトル制御部５１５は、ステッピングモータ５０９の位相θの推定値のフィードバックに基づくベクトル制御の結果として、ステッピングモータ５０９へ供給する駆動電流に対応する駆動電圧Ｖα，Ｖβを出力する。なお、ベクトル制御では、通常、ステッピングモータ５０９のトルクの発生には寄与しない電流成分であるｄ軸電流は、値が０となるように制御される。即ち、ベクトル制御部５１５では、電流指令値ｉｄ＿ｒｅｆが０に設定される。
【００４３】
ＰＷＭインバータ５０６では、座標変換器５０５から入力された駆動電圧Ｖα，Ｖβによってフルブリッジ回路５３０ａ，５３０ｂ（図５）が駆動される。その結果、ＰＷＭインバータ５０６は、駆動電圧Ｖα，Ｖβに応じてステッピングモータ５０９の各相の巻線に駆動電流を供給することによって、ステッピングモータ５０９を駆動する。
【００４４】
＜センサレス制御＞
上述のように、ベクトル制御では、モータの位相制御及び速度制御を行うために、モータの位相及び回転速度を示す情報のフィードバックが必要である。具体的には、図３に示す構成では、ステッピングモータ５０９の回転子の位相θを示す位相情報、及びステッピングモータ５０９の回転速度ωを示す速度情報を、位相制御器５０１及び速度制御器５０２にそれぞれフィードバックする必要がある。
【００４５】
通常、モータの位相及び回転速度を検出（推定）するためには、モータの回転軸にロータリエンコーダを取り付け、エンコーダの出力パルス数に基づいて位相を検出し、エンコーダの出力パルス周期に基づいて回転速度を検出する。しかし、本来ステッピングモータの駆動に不要であるエンコーダを追加することによって、上述のように、コストアップ及び配置スペースの確保が問題となる。そこで、エンコーダ等の位相検知のためのセンサを用いることなくモータの位相及び回転速度を推定し、その推定結果に基づいてベクトル制御を行うセンサレス制御が提案されている。以下では、再び図３を参照して、ステッピングモータ５０９のセンサレス制御について説明する。
【００４６】
まず、誘起電圧演算部５１２は、ステッピングモータ５０９（の回転子）の回転に従って、Ａ相（第１相）及びＢ相（第２相）の巻線にそれぞれ誘起される誘起電圧（Ａ相及びＢ相の逆起電圧）を演算する。具体的には、Ａ／Ｄ変換器５１０によるデジタル値への変換後の電流値ｉα，ｉβと、ベクトル制御部５１５から出力された、ステッピングモータ５０９の駆動電圧Ｖα，Ｖβとが、誘起電圧演算部５１２に入力される。誘起電圧演算部５１２は、Ａ相及びＢ相のそれぞれについて、駆動電圧Ｖα，Ｖβと電流値ｉα，ｉβとから、以下の電圧方程式によって、ステッピングモータ５０９の誘起電圧Ｅα，Ｅβを演算する。
Ｅα＝Ｖα−Ｒ＊ｉα−Ｌ＊ｄｉα／ｄｔ
Ｅβ＝Ｖβ−Ｒ＊ｉβ−Ｌ＊ｄｉβ／ｄｔ      （４）
ここで、Ｒは巻線レジスタンス、Ｌは巻線インダクタンスである。Ｒ及びＬの値は、使用されているステッピングモータ５０９に固有の値であり、ＲＯＭ１５１ｂ、またはモータ制御部１５７内に設けられた不図示のメモリに予め格納されている。
【００４７】
誘起電圧演算部５１２によって演算された、Ａ相及びＢ相の誘起電圧Ｅα，Ｅβは、位相演算部５１３へ入力される。位相演算部５１３は、Ａ相の誘起電圧ＥαとＢ相の誘起電圧Ｅβとの比から、次式によってステッピングモータ５０９の位相θの推定値を演算する。
θ＝ｔａｎ-1(−Ｅβ／Ｅα)      （５）
位相演算部５１３は、このような推定演算により得られた位相θの推定値を、位相制御器５０１及び速度演算部５１４に出力（フィードバック）する。なお、位相θの推定値は、位相演算部５１３から速度制御器５０２、座標変換器５０５，５１１にもフィードバックされることで、座標変換等に利用される。
【００４８】
なお、ステッピングモータ５０９の実際の回転位相（機械角）と、推定された回転位相（電気角）とが１対１に対応しない場合には、電気角から機械角への変換を行う変換器を、位相演算部５１３と位相制御器５０１との間に設けてもよい。この場合、ステッピングモータ５０９の位相θの推定値は、このような変換器によって実際の回転位相（機械角）に変換された後に、位相制御器５０１へフィードバックされる。
【００４９】
速度演算部５１４は、入力された位相θから、次式によってステッピングモータ５０９の回転速度ωの推定値を演算する。
ω＝ｄθ／ｄｔ      （６）
式（６）のように、回転速度ωは、位相θの推定値の時間変化に基づいて演算される。速度演算部５１４は、得られた回転速度ωを速度制御器５０２に出力（フィードバック）する。
【００５０】
＜ＰＷＭインバータ及び電流検出部＞
次に、図５（Ａ）を参照して、ＰＷＭインバータ５０６の構成及び動作の概要について説明する。ＰＷＭインバータ５０６は、駆動対象のステッピングモータ５０９の相数（本実施形態では２相）に等しい数のフルブリッジ回路（Ｈブリッジ回路）を、ステッピングモータ５０９の駆動回路として備えている。本実施形態では、図５（Ａ）に示すように、ＰＷＭインバータ５０６は、ステッピングモータ５０９のＡ相及びＢ相にそれぞれ対応するフルブリッジ回路５３０ａ，５３０ｂを備えている。ＰＷＭインバータ５０６は、更に、Ａ相に対応するＰＷＭ信号生成部５２０ａ、反転器５３１ａ、及びシャント抵抗５３２ａと、Ｂ相に対応するＰＷＭ信号生成部５２０ｂ、反転器５３１ｂ、及びシャント抵抗５３２ｂとを備えている。
【００５１】
ＰＷＭインバータ５０６には、ベクトル制御部５１５から出力された駆動電圧Ｖα，Ｖβが入力される。ＰＷＭインバータ５０６は、Ｖαに対応するＡ相用のＰＷＭ信号をＰＷＭ信号生成部５２０ａで生成し、Ｖβに対応するＢ相用のＰＷＭ信号をＰＷＭ信号生成部５２０ｂで生成する。更に、ＰＷＭインバータ５０６は、Ａ相用及びＢ相用のＰＷＭ信号によってフルブリッジ回路５３０ａ，５３０ｂをそれぞれ駆動することで、ステッピングモータ５０９のＡ相及びＢ相の巻線に駆動電流を供給する。このようにして、ＰＷＭインバータ５０６は、駆動電圧Ｖα，Ｖβに応じてステッピングモータ５０９のＡ相及びＢ相の巻線にそれぞれ駆動電流を供給することで、ステッピングモータ５０９を駆動する。以下では、駆動電圧Ｖαに応じてステッピングモータ５０９のＡ相の巻線に駆動電流を供給するための、Ａ相に対応する駆動回路の構成及び動作について主に説明するが、Ｂ相に対応する駆動回路についても同様である。
【００５２】
フルブリッジ回路５３０ａは、電源（電源電圧Ｖcc）に近い高電位側（ハイサイド）のＦＥＴ（スイッチング素子）Ｑ１，Ｑ２と、グラウンド（ＧＮＤ）に近い低電位側（ローサイド）のＦＥＴ（スイッチング素子）Ｑ３，Ｑ４とで構成される。フルブリッジ回路５３０ａとＧＮＤとの間には、Ａ相の巻線に流れる駆動電流の検出用の電流検出素子（電流検出抵抗）として、シャント抵抗５３２ａが接続されている。
【００５３】
より具体的には、フルブリッジ回路５３０ａは、電源とシャント抵抗５３２ａとの間に直列に接続されたＱ１及びＱ３を含む。フルブリッジ回路５３０ａは、更に、電源とシャント抵抗５３２ａとの間に直列に接続され、かつ、Ｑ１，Ｑ３とは並列に接続されたＱ２，Ｑ４を含む。ステッピングモータ５０９のＡ相の巻線は、Ｑ１とＱ３との接続点と、Ｑ２とＱ４との接続点とをブリッジするように、これら２つの接続点の間に接続されている。本実施形態では、Ｑ１〜Ｑ４としてＮチャネルＦＥＴを使用する。Ｑ１，Ｑ２のドレイン端子は電源と接続されている。また、Ｑ３，Ｑ４のソース端子はシャント抵抗５３２ａを介してＧＮＤと接続されている。
【００５４】
ＰＷＭ信号生成部５２０ａは、ＰＷＭ信号の生成（ＰＷＭ制御）の１周期（ＰＷＭ周期）ごとに、駆動電圧Ｖαに対応するデューティ比ＤＲ＿ａのＰＷＭ信号を生成して出力する。なお、ＰＷＭ信号のデューティ比とは、ＰＷＭ信号の１周期におけるハイレベルの期間の占める割合である。ＰＷＭ信号生成部５２０ａは、例えば、変調波（本実施形態では、駆動電圧Ｖα，Ｖβ）と、三角波（キャリア）とを比較することによってＰＷＭ信号を生成する三角波比較方式で、ＰＷＭ信号の生成を行う。変調波の値（Ｖα）が、三角波の値以上である場合にはハイレベル（Ｈレベル）、三角波の値未満である場合にはローレベル（Ｌレベル）の信号が生成されることで、ＰＷＭ信号が生成される。なお、ＰＷＭ信号のデューティ比とは、ＰＷＭ信号の１周期におけるＨレベルの期間の占める割合である。このようにして、ＰＷＭ信号生成部５２０ａは、フルブリッジ回路５３０ａ内のＱ１〜Ｑ４をスイッチングさせるための、ＨレベルとＬレベルとの間で変化するＰＷＭ信号（Ａ相用）を、駆動電圧Ｖαから生成する。なお、ＰＷＭ信号生成部５２０ｂも同様に、駆動電圧ＶβからＰＷＭ信号（Ｂ相用）を生成する。
【００５５】
ＰＷＭ信号生成部５２０ａから出力されたＰＷＭ信号は、フルブリッジ回路５３０ａのＱ１，Ｑ４、及び反転器５３１ａへ入力される。反転器５３１ａは、入力されたＰＷＭ信号のレベルを、ＨレベルとＬレベルとの間で反転させることで、ＨレベルとＬレベルとが反転した信号（反転ＰＷＭ信号）を生成して出力する。反転器５３１ａから出力された反転ＰＷＭ信号は、フルブリッジ回路５３０ａのＱ２，Ｑ３へ入力される。フルブリッジ回路５３０ａでは、Ｑ１〜Ｑ４のゲートにそれぞれ入力されるＰＷＭ信号または反転ＰＷＭ信号により、Ｑ１〜Ｑ４のそれぞれのスイッチング（ゲートに入力される信号によるオン状態とオフ状態の切り替え動作）が行われる。
【００５６】
具体的には、Ｑ１〜Ｑ４は、ゲートに入力されるＰＷＭ信号がＨレベルである場合にはオン状態となり、ドレイン‐ソース間に電流が流れる。一方、Ｑ１〜Ｑ４は、ゲートに入力されるＰＷＭ信号がＬレベルである場合にはオフ状態となり、ドレイン‐ソース間に電流は流れない。Ｑ１，Ｑ４では、ＰＷＭ信号生成部５２０ａから出力されたＰＷＭ信号によって、このようなスイッチングが行われる。一方、Ｑ２，Ｑ３では、ＰＷＭ信号生成部５２０ａから出力されたＰＷＭ信号のＨレベルとＬレベルとを反転して得られた反転ＰＷＭ信号によって、このようなスイッチングが行われる。このため、Ｑ１，Ｑ４がオン状態の場合にＱ２，Ｑ３はオフ状態となり、Ｑ１，Ｑ４がオフ状態の場合にＱ２，Ｑ３はオン状態となる。
【００５７】
このように、ＰＷＭインバータ５０６において、ＰＷＭ信号生成部５２０ａは、駆動電圧Ｖαに対応するデューティ比ＤＲ＿ａのＰＷＭ信号を生成する。フルブリッジ回路５３０ａは、当該ＰＷＭ信号によるＱ１〜Ｑ４のスイッチングに依存して変化する駆動電流を、ステッピングモータ５０９のＡ相の巻線に供給する。このため、Ａ相の巻線に流れる駆動電流は、１ＰＷＭ周期ごとに、ＰＷＭ信号生成部５２０ａによって生成されるＰＷＭ信号のデューティ比ＤＲ＿ａに依存して変化する。したがって、駆動電圧Ｖαに応じた駆動電流が、フルブリッジ回路５３０ａからステッピングモータ５０９のＡ相の巻線に供給される。同様にして、駆動電圧Ｖβに応じた駆動電流が、フルブリッジ回路５３０ｂからステッピングモータ５０９のＢ相の巻線に供給される。
【００５８】
電流検出部５０７は、シャント抵抗５３２ａに生じる電圧（即ち、シャント抵抗５３２ａの両端間の電位差）を測定することで、ステッピングモータ５０９のＡ相の巻線に流れる駆動電流を検出し、検出値ｉαを出力する。また、電流検出部５０８は、シャント抵抗５３２ｂに生じる電圧を測定することで、ステッピングモータ５０９のＢ相の巻線に流れる駆動電流を検出し、検出値ｉβを出力する。電流検出部５０７，５０８から出力された電流検出値ｉα，ｉβは、上述のように、Ａ／Ｄ変換器５１０に入力されてＡ／Ｄ変換が行われる。Ａ／Ｄ変換後の電流検出値ｉα，ｉβは、電流値生成部５５０に入力される。
【００５９】
ここで、図５（Ｂ）及び（Ｃ）は、フルブリッジ回路５３０ａに入力されるＰＷＭ信号とステッピングモータ５０９のＡ相の巻線に流れる駆動電流との関係の一例を示す図である。図５（Ｂ）は、ＰＷＭ信号がＨレベル（反転ＰＷＭ信号がＬレベル）であり、かつ、電源からＧＮＤの方向へ駆動電流が流れる例を示している。図５（Ｃ）は、ＰＷＭ信号がＬレベル（反転ＰＷＭ信号がＨレベル）であり、かつ、ＧＮＤから電源の方向へ駆動電流が流れる例を示している。また、図５（Ｂ）及び図５（Ｃ）はいずれも、ステッピングモータ５０９のＡ相の巻線に流れる駆動電流が、Ｑ１とＱ３との接続点からＱ２とＱ４との接続点の方向に流れる例を示している。
【００６０】
図５（Ｂ）及び（Ｃ）に示すように、ＰＷＭ信号がＨレベルの場合とＬレベルの場合とで、駆動電流が流れる方向が、ステッピングモータ５０９の巻線において同一であっても、シャント抵抗５３２ａにおいては異なる現象が発生する。このため、電流検出部５０７は、シャント抵抗５３２ａに生じる電圧に対応する検出値の正負の極性（符号）を、ステッピングモータ５０９の巻線に流れる駆動電流の正負の極性と一致するよう、必要に応じて切り替える（反転させる）処理を行っている。
【００６１】
＜駆動電流の検出タイミング＞
本実施形態の電流値生成部５５０（図３，図８）は、電流検出部５０７，５０８から出力された（Ａ／Ｄ変換後の）電流検出値ｉα'，ｉβ'をそれぞれサンプリングする。更に、電流値生成部５５０は、得られたサンプル値に基づいて、１ＰＷＭ周期Ｔpwmごとの電流値ｉα，ｉβを生成する。電流値生成部５５０は、ＰＷＭ周期Ｔpwmごとに、ＰＷＭ周期内の予め定められた検出タイミングに駆動電流の検出（即ち、電流検出値ｉα'，ｉβ'のサンプリング）を行う。以下では、一例として、駆動電流の検出タイミングが、ＰＷＭ周期Ｔpwmの開始タイミングｔs2及び中心タイミングｔs1に予め定められている例について説明する。なお、ＰＷＭ周期Ｔpwmの中心タイミングは、ＰＷＭ周期の半周期Ｔpwm／２のタイミングに相当する。
【００６２】
図６は、Ａ相に対応するフルブリッジ回路５３０ａに入力されるＰＷＭ信号（ＰＷＭ＿ａ１）及び反転ＰＷＭ信号（ＰＷＭ＿ａ２）の波形と、ステッピングモータ５０９のＡ相の巻線に流れる駆動電流Ｉ＿ａ(ｔ)の波形の例を示している。なお、図６では、Ｉ＿ａ(ｔ)＞０は、ステッピングモータ５０９のＡ相の巻線を、駆動電流が、図５（Ｂ）及び（Ｃ）に示す矢印の方向に流れる場合に相当する。ＰＷＭ信号は、一般に、Ｈレベルの期間（以下、「Ｈ期間」と称する。）及びＬレベルの期間（以下、「Ｌ期間」と称する。）とが交互に配置されるように生成される。本実施形態のＰＷＭ信号生成部５２０ａ，５２０ｂによって生成されるＰＷＭ信号は、図６に示すように、Ｈ期間がＰＷＭ周期Ｔpwmの中心部に配置され、かつ、ＰＷＭ周期Ｔpwmの中心タイミングに対して対称の波形となるように形成される（中央成長）。
【００６３】
本実施形態の電流値生成部５５０は、基本的には、１ＰＷＭ周期Ｔpwmごとに、タイミングｔs1，ｔs2の少なくともいずれかにおいて駆動電流の検出（電流検出値ｉα'，ｉβ'のサンプリング）を行う。しかし、図６に示すように、ＰＷＭ信号生成部５２０ａによって生成されるＰＷＭ信号のレベルがＨレベルとＬレベルとの間で変化するタイミング６０１，６０２には、駆動電流Ｉ＿ａ(ｔ)にスイッチングノイズが生じうる。このようなスイッチングノイズに起因した駆動電流の検出精度の低下を防止するためには、ＰＷＭ信号のレベルが変化するタイミング６０１，６０２から時間的に近いタイミングを避けて駆動電流の検出を行う必要がある。
【００６４】
ＰＷＭ信号のレベルが変化するタイミング６０１，６０２は、ＰＷＭ信号のデューティ比ＤＲ＿ａによって定まる。例えば、図７（Ａ）に示すように、デューティ比ＤＲ＿ａが小さい場合には、ＰＷＭ周期Ｔpwmの中心タイミング付近で、駆動電流Ｉ＿ａ(ｔ)にスイッチングノイズが生じる。一方、図７（Ｂ）に示すように、デューティ比ＤＲ＿ａが大きい場合には、ＰＷＭ周期Ｔpwmの開始タイミング（及び次のＰＷＭ周期の開始タイミング）付近で、駆動電流Ｉ＿ａ(ｔ)にスイッチングノイズが生じる。
【００６５】
そこで、本実施形態の電流値生成部５５０は、ＰＷＭ信号のデューティ比ＤＲ＿ａに基づいて、タイミングｔs1，ｔs2のうちでスイッチングノイズの影響を受けるタイミングにおける駆動電流の検出を禁止する。例えば、電流値生成部５５０は、第１閾値よりもデューティ比ＤＲ＿ａが小さい場合に、タイミングｔs1における駆動電流の検出を禁止し、第２閾値よりもデューティ比ＤＲ＿ａが大きい場合に、ｔs2における駆動電流の検出を禁止するように動作する。この第２閾値は、第１閾値よりも大きい値に定められる。本実施形態では、一例として、第１閾値を１０％、第２閾値を９０％に定めている。なお、デューティ比ＤＲ＿ａに基づいて現在のＰＷＭ周期Ｔpwmの開始タイミングｔs2における駆動電流の検出が禁止される場合には、次のＰＷＭ周期の開始タイミングにおける駆動電流の検出も一緒に禁止されてもよい。これは、図７（Ｂ）に示すように、デューティ比ＤＲ＿ａが大きい場合には、次のＰＷＭ周期の開始タイミング付近でも、Ｉ＿ａ(ｔ)にスイッチングノイズが生じるためである。
【００６６】
上述のように第１及び第２閾値を用いた場合、電流値生成部５５０は、第１閾値＜デューティ比ＤＲ＿ａ＜第２閾値であれば、タイミングｔs1，ｔs2の両方において駆動電流の検出を行うように動作することになる。タイミングｔs1，ｔs2の両方で駆動電流の検出（電流検出値ｉα'，ｉβ'のサンプリング）を行った場合には、電流値生成部５５０は、得られたサンプル値の平均値を電流値ｉαとして生成してもよい。なお、変形例として、電流値生成部５５０は、単純に閾値を５０％に定め、閾値とデューティ比ＤＲ＿ａとの比較によって、タイミングｔs1，ｔs2のいずれかにおける駆動電流の検出を禁止するように動作してもよい。
【００６７】
このように、電流値生成部５５０は、駆動電流の検出タイミングｔs1，ｔs2と、ＰＷＭ信号のレベルが変化するタイミングとの相対的な関係に基づいて、ＰＷＭ周期Ｔpwmごとに駆動電流の検出を禁止するか否かを決定する禁止処理を行う。ＰＷＭ信号のレベルが変化するタイミングは、上述のように、ＰＷＭ信号のデューティ比ＤＲ＿ａによって定められうる。ここで、このような禁止処理では、１ＰＷＭ周期Ｔpwm内のタイミングｔs1，ｔs2の両方における駆動電流の検出が禁止されることもありうる。このため、本実施形態の電流値生成部５５０は更に、ＰＷＭ信号のデューティ比ＤＲ＿ａに基づいて１ＰＷＭ周期Ｔpwm内のタイミングｔs1，ｔs2の両方における駆動電流の検出を禁止した場合には、当該ＰＷＭ周期における駆動電流の推定を行う。駆動電流の推定は、後述するように、過去のＰＷＭ周期において生成した電流値ｉα，ｉβを用いて行うことが可能である。
【００６８】
したがって、本実施形態の電流値生成部５５０は、ＰＷＭ周期Ｔpwmごとに、当該ＰＷＭ周期内の検出タイミングｔs1，ｔs2に駆動電流の検出を行うか、または駆動電流の推定を行うかを、ＰＷＭ信号のデューティ比ＤＲ＿ａに基づいて選択する。具体的には、電流値生成部５５０は、ＰＷＭ周期Ｔpwmごとに、検出タイミングｔs1，ｔs2（の少なくともいずれか）における駆動電流の検出を禁止しなかった場合には、駆動電流の検出を行うことを選択する。一方、電流値生成部５５０は、ＰＷＭ周期Ｔpwmごとに、検出タイミングｔs1，ｔs2（の両方）における駆動電流の検出を禁止した場合には、駆動電流の推定を行うことを選択する。
【００６９】
このような処理によって、電流値生成部５５０は、ＰＷＭ信号のレベルの変化に伴って駆動電流Ｉ＿ａ(ｔ)に生じるスイッチングノイズに起因した、駆動電流の検出精度の低下を防止しながら、駆動電流の電流値ｉαを生成することが可能になる。なお、Ａ相に対応するＰＷＭ信号のデューティ比ＤＲ＿ａに基づく、駆動電流Ｉ＿ａ(ｔ)についての処理について説明しているが、Ｂ相に対応するＰＷＭ信号のデューティ比ＤＲ＿ｂに基づいて、駆動電流Ｉ＿ｂ(ｔ)について同様の処理を行ってもよい。それにより、駆動電流Ｉ＿ｂ(ｂ)に生じるスイッチングノイズに起因した、駆動電流の検出精度の低下を防止しながら、駆動電流の電流値ｉβを生成することが可能になる。
【００７０】
ここで、Ａ相に対応する駆動電流Ｉ＿ａ(ｔ)には、Ａ相に対応するＰＷＭ信号のレベルの変化に起因したスイッチングノイズだけでなく、Ｂ相に対応するＰＷＭ信号のレベルの変化に起因したスイッチングノイズも生じうる。図７（Ｃ）に示す例では、Ａ相に対応するＰＷＭ信号のレベルが変化するタイミング６０１，６０２に、駆動電流Ｉ＿ａ(ｔ)にスイッチングノイズが生じている。更に、Ｂ相に対応するＰＷＭ信号のレベルが変化するタイミング６０３，６０４にも、駆動電流Ｉ＿ａ(ｔ)にスイッチングノイズが生じている。なお、Ｂ相に対応する駆動電流Ｉ＿ｂ(ｔ)にも、タイミング６０１〜６０４に同様のスイッチングノイズが生じる。
【００７１】
そこで、本実施形態では、Ａ相に対応するＰＷＭ信号のデューティ比ＤＲ＿ａ及びＢ相に対応するＰＷＭ信号のデューティ比ＤＲ＿ｂの両方に基づいて、駆動電流Ｉ＿ａ(ｔ)，Ｉ＿ｂ(ｔ)の検出を禁止するか否かを決定してもよい。これにより、Ａ相及びＢ相の両方のＰＷＭ信号におけるレベルの変化に伴って駆動電流Ｉ＿ａ(ｔ)，Ｉ＿ｂ(ｔ)に生じるスイッチングノイズに起因した、駆動電流の検出精度の低下を防止しながら、駆動電流の電流値ｉα，ｉβを生成することが可能になる。なお、後述する図８及び図１０では、このような禁止処理の例を示している。
【００７２】
＜電流値生成部の構成＞
図８は、本実施形態の電流値生成部５５０の構成例を示すブロック図である。電流値生成部５５０には、ＰＷＭインバータ５０６から出力される、駆動電圧Ｖα，Ｖβにそれぞれ対応するデューティ比ＤＲ＿ａ，ＤＲ＿ｂと、Ａ／Ｄ変換器５１０から出力される電流検出値ｉα'，ｉβ'とが入力される。電流値生成部５５０には、更に、位相演算部５１３から出力される位相θの推定値が位相θnとして入力されてメモリ８０６に格納される。
【００７３】
電流値生成部５５０において、検出制御部８０１は、ＰＷＭ周期Ｔpwmごとに、入力されたデューティ比ＤＲ＿ａ，ＤＲ＿ｂに基づいて、駆動電流の検出タイミングｔs1，ｔs2のそれぞれについて駆動電流の検出を禁止するか否かを決定する。更に、検出制御部８０１は、そのような決定の結果に従って、Ａ相及びＢ相に対応する駆動電流の検出を行うか、Ａ相及びＢ相に対応する駆動電流の推定を行うかを選択し、検出値生成部８０２、電流推定部８０４及び出力選択部８０３を制御する。
【００７４】
具体的には、検出制御部８０１は、検出タイミングｔs1，ｔs2の少なくともいずれかにおける駆動電流を禁止しなかった場合には、駆動電流の検出を行うよう、検出値生成部８０２を制御する。また、検出制御部８０１は、駆動電流の推定を行わないよう、電流推定部８０４を制御する。これにより、検出値生成部８０２は、検出制御部８０１によって禁止されなかった検出タイミングにおいて駆動電流の検出（電流検出値ｉα'，ｉβ'のサンプリング）を行って、電流値ｉα＿ｄ，ｉβ＿ｄを生成する。なお、検出値生成部８０２は、タイミングｔs1，ｔs2の両方で電流検出値ｉα'，ｉβ'のサンプリングを行った場合には、得られたサンプル値の平均値を電流値ｉα＿ｄ，ｉβ＿ｄとして生成する。
【００７５】
一方、検出制御部８０１は、検出タイミングｔs1，ｔs2の両方における駆動電流を禁止した場合には、駆動電流の推定を行うよう、電流推定部８０４を制御し、かつ、駆動電流の検出を行わないよう、検出値生成部８０２を制御する。この場合、電流推定部８０４は、後述するように、直前のＰＷＭ周期において生成した電流値と、ステッピングモータ５０９の回転による、１ＰＷＭ周期Ｔpwmにおける位相θの変化量とに基づく推定演算によって、駆動電流の推定を行う。電流推定部８０４は、駆動電流の推定値として、電流値ｉα＿ｅ，ｉβ＿ｅを生成する。
【００７６】
出力選択部８０３は、検出制御部８０１からの指示に従って、検出値生成部８０２によって生成された電流値ｉα＿ｄ，ｉβ＿ｄ、または電流推定部８０４によって生成された電流値ｉα＿ｅ，ｉβ＿ｅを、電流値ｉα，ｉβとして選択的に出力する。出力選択部８０３から出力された電流値ｉα，ｉβは、座標変換器５１１及び誘起電圧演算部５１２へ送られるとともに、座標変換器８０５へフィードバックされる。座標変換器８０５は、静止座標系（αβ軸）における電流値ｉα，ｉβを回転座標系（ｄｑ軸）における電流値ｉｑn，ｉｄnへ変換してメモリ８０６へ出力する。なお、電流値生成部５５０に座標変換器８０５を設けずに、座標変換器５１１から出力される電流値ｉｑ，ｉｄを、電流値生成部５５０へフィードバックして電流値ｉｑn，ｉｄnとしてメモリ８０６へ格納してもよい。
【００７７】
電流値推定部８０４は、メモリ８０６に格納されたデータに基づいて、駆動電流の推定演算を行う。この推定演算には、直前のＰＷＭ周期において生成した電流値ｉα，ｉβを静止座標系から回転座標系に変換して得られる電流値ｉｄn-1，ｉｑn-1と、直前のＰＷＭ周期について決定された位相θn-1とが用いられる。
【００７８】
＜駆動電流の推定＞
次に、電流値推定部８０４による駆動電流の推定方法について説明する。図９は、式（１）によって導出される、Ａ相及びＢ相の巻線にそれぞれ流れる駆動電流ｉα，ｉβと、式（５）によって導出される位相θとを示している。図９には、Ａ相に対応する駆動電流ｉαは余弦波、Ｂ相に対応する駆動電流ｉβは正弦波となることが示されている。
【００７９】
ここで、式（６）のように位相θを微分して得られるステッピングモータ５０９の回転速度をω［rpm］とし、ステッピングモータ５０９の極数をＮ（例えば、Ｎ＝５０）とする。この場合、ステッピングモータ５０９の、１秒当たりの位相θの変化量Δθは、次式によって求められる。
Δθ＝ω／６０［sec］×Ｎ×３６０［°］      （７）
また、駆動電流の検出（サンプリング）の周波数をＦs（例えば、５０ｋＨｚ）とすると、サンプリング間隔（１ＰＷＭ周期）における位相θの変化量Δθsは、
Δθs＝Δθ／Fs      （７）
と求められる。例えば、ω＝３００［rpm］とすると、Δθs＝１．８°と求められる。
【００８０】
電流値推定部８０４は、Δθs、直前のＰＷＭ周期について決定された位相θn-1、及び電流値ｉｄn-1，ｉｑn-1を式（３）に適用することで、次式のように駆動電流の推定演算を行うことが可能である。
ｉα＿ｅ＝ｃｏｓ(θn-1＋Δθs)＊ｉｑn-1−ｓｉｎ(θn-1＋Δθs)＊ｉｄn-1
ｉβ＿ｅ＝ｓｉｎ(θn-1＋Δθs)＊ｉｑn-1＋ｃｏｓ(θn-1＋Δθs)＊ｉｄn-1
（８）
なお、ｉｄn-1，ｉｑn-1は、直前のＰＷＭ周期において生成した電流値ｉα，ｉβを静止座標系から回転座標系に変換して得られる電流値である。
【００８１】
式（８）は、電流値ｉｄn-1，ｉｑn-1を、直前のＰＷＭ周期について決定された位相θn-1を変化量Δθsだけ変化させた回転位相に基づいて、回転座標系から静止座標系に逆変換して、推定値ｉα＿ｅ，ｉβ＿ｅを演算することを意味している。このように、１周期前のＰＷＭ周期について決定（推定）された位相θn-1から今回（現在）のＰＷＭ周期における電流検出タイミングまでの位相θの変化量に基づいて、推定値ｉα＿ｅ，ｉβ＿ｅを生成することが可能である。なお、電流推定部８０４は、処理を簡略化するために、このような推定演算を行わずに、直前のＰＷＭ周期において生成した電流値ｉα，ｉβを、現在のＰＷＭ周期における電流値としてそのまま使用することも可能である。
【００８２】
＜駆動電流の検出フロー＞
図１０は、モータ制御部１５７によって実行される、駆動電流の検出フローを示すフローチャートである。なお、モータ制御部１５７は、ＦＰＧＡやＡＳＩＣ等のデバイスによって構成されてもよく、その場合、図１０に示す制御フローはそのような回路が有する機能に従った処理の手順を示す。モータ制御部１５７は、ＰＷＭ信号生成部５２０ａ，５２０ｂによって生成されるＰＷＭ信号の１ＰＷＭ周期ごとに、図１０に示す制御フローを実行する。なお、以下ではＡ相の駆動電流の検出について説明するが、Ｂ相の駆動電流の検出についても同様である。
【００８３】
まず、Ｓ１０１で、モータ制御部１５７（電流値生成部５５０）は、Ａ相に対応するＰＷＭ信号のデューティ比ＤＲ＿ａが第１閾値（１０％）より小さいか否かを判定する。モータ制御部１５７は、ＤＲ＿ａが第１閾値より小さい場合にはＳ１０３へ処理を進め、タイミングｔs1における駆動電流の検出を禁止した後、処理をＳ１０５へ進める。一方、モータ制御部１５７は、ＤＲ＿ａが第１閾値より小さくない場合にはＳ１０２へ処理を進め、ＤＲ＿ａが第２閾値（９０％）より大きいか否かを判定する。ータ制御部１５７は、ＤＲ＿ａが第２閾値より大きい場合にはＳ１０４へ処理を進め、タイミングｔs2における駆動電流の検出を禁止した後、処理をＳ１０５へ進める。一方、モータ制御部１５７は、ＤＲ＿ａが第２閾値より大きくない場合にはＳ１０５へ処理を進める。
【００８４】
Ｓ１０５〜Ｓ１０８では、モータ制御部１５７（電流値生成部５５０）は、Ｂ相に対応するＰＷＭ信号のデューティ比ＤＲ＿ｂに基づいて、Ｓ１０１〜Ｓ１０４と同様の処理を行い、処理をＳ１０９へ進める。
【００８５】
Ｓ１０９で、モータ制御部１５７（電流値生成部５５０）は、タイミングｔs1，ｔs2の両方における駆動電流の検出が禁止されているか否かを判定し、禁止されている場合には処理をＳ１１２へ進め、それ以外の場合には、処理をＳ１１０へ進める。Ｓ１１２では、モータ制御部１５７は、上述の推定演算によって駆動電流の推定を行い、その後、処理を終了する。
【００８６】
Ｓ１１０で、モータ制御部１５７（電流値生成部５５０）は、タイミングｔs2における駆動電流の検出のみが禁止されているか否かを判定し、禁止されている場合には処理をＳ１１３へ進め、それ以外の場合には、処理をＳ１１１へ進める。Ｓ１１３では、モータ制御部１５７は、タイミングｔs1における駆動電流の検出を行い、その後、処理を終了する。
【００８７】
Ｓ１１１で、モータ制御部１５７（電流値生成部５５０）は、タイミングｔs1における駆動電流の検出のみが禁止されているか否かを判定し、禁止されている場合には処理をＳ１１４へ進め、それ以外の場合には、処理をＳ１１５へ進める。Ｓ１１４では、モータ制御部１５７は、タイミングｔs2における駆動電流の検出を行い、その後、処理を終了する。一方、Ｓ１１５では、モータ制御部１５７は、タイミングｔs1，ｔs2の両方において駆動電流の検出を行う。更に、Ｓ１１６で、モータ制御部１５７は、タイミングｔs1，ｔs2における駆動電流の検出値（サンプル値）の平均値を算出し、算出した平均値を電流値ｉα，ｉβとして生成し、処理を終了する。
【００８８】
以上説明したように、電流値生成部５５０（検出制御部８０１）は、ＰＷＭ周期Ｔpwmごとに、当該ＰＷＭ周期内の検出タイミングｔs1，ｔs2に駆動電流の検出を行うか、または駆動電流の推定を行うかを、ＰＷＭ信号のデューティ比に基づいて選択する。検出制御部８０１は、検出タイミングｔs1，ｔs2（の少なくともいずれか）における駆動電流の検出を禁止しなかった場合には、検出値生成部８０２に駆動電流の検出を実行させる。また、検出制御部８０１は、検出タイミングｔs1，ｔs2（の両方）における駆動電流の検出を禁止した場合には、電流推定部８０４に駆動電流の推定を実行させる。
【００８９】
本実施形態によれば、ＰＷＭ信号のレベルの変化に伴って駆動電流Ｉ＿ａ(ｔ)，Ｉ＿ｂ(ｔ)に生じるスイッチングノイズに起因した、駆動電流の検出精度の低下を防止しながら、駆動電流の電流値ｉα，ｉβを生成することが可能になる。それにより、ステッピングモータ５０９の回転子（ロータ）の回転位相の推定精度の低下を防止し、ステッピングモータ５０９の制御効率を悪化させずにベクトル制御を行うことが可能となる。
【符号の説明】
【００９０】
１００：画像形成装置、１５１ａ：ＣＰＵ、１５７：モータ制御部、５０１：位相制御器、５０６：ＰＷＭインバータ、５０７，５０８：電流検出部、５０９：ステッピングモータ、５１０：Ａ／Ｄ変換器、５１２：誘起電圧演算部、５１３：位相演算部、５１４：速度演算部、５１５：ベクトル制御部、５３０ａ，５３０ｂ：フルブリッジ回路、５２０ａ，５２０ｂ：ＰＷＭ信号生成部、５５０：電流値生成部
【図１】
2018007505.tif 000003
【図２】
2018007505.tif 000004
【図３】
2018007505.tif 000005
【図４】
2018007505.tif 000006
【図５】
2018007505.tif 000007
【図６】
2018007505.tif 000008
【図７】
2018007505.tif 000009
【図８】
2018007505.tif 000010
【図９】
2018007505.tif 000011
【図１０】
2018007505.tif 000012