JP2005031877A - Motor control device and motor control method - Google Patents

Motor control device and motor control method Download PDF

Info

Publication number
JP2005031877A
JP2005031877A JP2003194787A JP2003194787A JP2005031877A JP 2005031877 A JP2005031877 A JP 2005031877A JP 2003194787 A JP2003194787 A JP 2003194787A JP 2003194787 A JP2003194787 A JP 2003194787A JP 2005031877 A JP2005031877 A JP 2005031877A
Authority
JP
Japan
Prior art keywords
motor
control system
speed
control
action
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2003194787A
Other languages
Japanese (ja)
Inventor
Sunao Ishizaki
直 石崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP2003194787A priority Critical patent/JP2005031877A/en
Publication of JP2005031877A publication Critical patent/JP2005031877A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Control Of Position Or Direction (AREA)
  • Control Of Electric Motors In General (AREA)
  • Stopping Of Electric Motors (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To obtain a motor control device which moves a moving object very precisely to a target stopping position in a short period of time without troublesome processing, and also obtain a method therefor. <P>SOLUTION: A motor 14 is controlled in two steps by the following two control systems: a first control system which controls the rotation of the motor 14 so that a recording medium 22 may move, at a prescribed speed and with prescribed precision, to a halfway position on the way to the target stopping position of the recording medium 22 as a moving object; and a second control system which controls the rotation of the motor 14 so that the recording medium 22 may move from the halfway position to the target stopping position at a speed lower than the prescribed speed and with higher precision than the prescribed precision. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

【0001】
【発明の属する技術分野】
本発明は、被移動体を移動するために回転駆動されるモータの回転駆動を制御するモータ制御装置及びモータ制御方法に関する。
【0002】
【従来の技術】
近年、小型で高速回転可能なモータが普及しており、これに伴い、モータ制御装置においても、迅速かつ高精度なモータの回転駆動制御が望まれている。
【0003】
ところで、このようなモータの所定速度で回転している状態から減速させて停止させる際の回転駆動制御においては、当該モータの回転駆動により移動される被移動体の移動時の摩擦力や、当該モータから被移動体に至る移動力の伝達機構(ギヤ、ベルト等)による負荷等の非線形外乱に起因して、被移動体を目標とする停止位置に短時間で移動させることが難しい、という問題点があった。
【0004】
図15には、記録媒体(記録用紙)に画像を形成する画像形成装置(プリンタ)において、記録媒体を副走査方向に所定量だけ移動することにより改行動作を行うモータの回転駆動制御を、従来の比例積分制御系(PI制御系)によって行った場合の用紙送り誤差(目標停止位置に対する実際の位置の差)の測定結果例が示されている。なお、同図の(A)は用紙送り速度の時間的な推移のみを示したものであり、(B)は当該用紙送り速度に加え、用紙送り誤差の時間的な推移を(A)より時間軸(横軸)を拡大して示したものである。また、同図(B)の用紙送り誤差の単位は1/4800インチである。
【0005】
同図に示すように、この場合、用紙送り速度が0近傍に達した後も、数100(msec)にわたって用紙送り誤差が0近傍に達しておらず、モータの整定アクションにかなりの時間を要することがわかる。画像形成装置の改行動作では、一般に、記録媒体の位置決め時間として数10(msec)程度が、位置決め精度として±10(μm)程度が各々要求されるため、同図に示すものでは当該要求を満足することができない。
【0006】
そこで、この問題点を解決するための技術として、従来、モータを減速させる際に、当該モータに対する速度指令値を不連続に低下させる技術があった(例えば、特許文献1参照。)。
【0007】
また、上記のような非線形外乱に起因する被移動体の目標停止位置への位置決め精度の低下を防止することを目的として、従来、プリンタにおける改行のための紙送り機構を駆動するモータの制御として、紙送り駆動負荷に応じたモータ電流を改行動作時以外のタイミングで測定し、当該モータ電流に基づいてモータの駆動を制御する技術があった(例えば、特許文献2参照。)。
【0008】
【特許文献1】
特開2002−233177公報
【特許文献2】
特開2002−326417公報
【0009】
【発明が解決しようとする課題】
しかしながら、上記の速度指令値を不連続に低下させる技術では、被移動体を目標とする停止位置に短時間で移動させることはできるものの、移動体の位置決め精度が低い、という問題点があった。
【0010】
また、上記のモータ電流を測定して用いる技術では、被移動体を高精度に位置決めすることはできるものの、モータ電流を測定する処理が必要となり、処理が煩雑になってしまうと共に、被移動体を目標とする停止位置に短時間で移動させることが困難である、という問題点があった。
【0011】
本発明は、上記問題点を解決するためになされたものであり、煩雑な処理を伴うことなく、被移動体を目標とする停止位置に短時間でかつ高精度に移動させることのできるモータ制御装置及びモータ制御方法を提供することを目的とする。
【0012】
【課題を解決するための手段】
上記目的を達成するために、請求項1に記載のモータ制御装置は、被移動体を移動するために回転駆動されるモータの回転駆動を制御するモータ制御装置であって、前記被移動体の目標停止位置に至る途中位置まで所定速度かつ所定精度で前記被移動体が移動するように前記モータの回転駆動を制御する第1制御系と、前記途中位置から前記目標停止位置まで前記所定速度より低速度かつ前記所定精度より高精度で前記被移動体が移動するように前記モータの回転駆動を制御する第2制御系と、の2つの制御系により2段階で前記モータの回転駆動を制御する制御手段を備えている。
【0013】
請求項1に記載の発明では、被移動体を移動するために回転駆動されるモータの該回転駆動が制御対象とされる。なお、上記被移動体には、前述の画像形成装置における記録媒体の他、記録ヘッドを主走査方向に移動させて画像を形成する画像形成装置における上記記録ヘッド、画像読取部を主走査方向及び副走査方向の少なくとも一方に移動させつつ画像情報を読み取るスキャナにおける上記画像読取部等、モータによって移動される全てのものが含まれる。また、上記モータには、DC(直流)モータ及びAC(交流)モータが含まれる。
【0014】
ここで、本発明では、制御手段により、被移動体の目標停止位置に至る途中位置まで所定速度かつ所定精度で被移動体が移動するようにモータの回転駆動が第1制御系によって制御され、上記途中位置から上記目標停止位置まで上記所定速度より低速度かつ上記所定精度より高精度で被移動体が移動するようにモータの回転駆動が第2制御系によって制御される。
【0015】
すなわち、通常、被移動体を移動するために回転駆動されるモータの回転駆動を制御する制御系では、被移動体の移動速度と移動精度とはトレードオフの関係にある。すなわち、高速性を重視する制御系では精度が或る程度犠牲となり、精度を重視する制御系では高速性が或る程度犠牲となる。
【0016】
この点に着目して本発明では、被移動体の目標停止位置までの移動期間を、その途中位置までの移動期間と、残りの移動期間と、の2つの期間に区分し、各期間毎に異なる制御系でモータの回転駆動を制御すると共に、上記残りの移動期間では、上記途中位置までの期間において適用した第1制御系より低速度かつ高精度で被移動体を移動できる第2制御系、すなわち、第1制御系より移動精度を重視した制御系によってモータの回転駆動を制御している。これにより、本発明では、上記途中位置までの移動期間では被移動体を高速に移動させ、残りの移動期間では目標停止位置に高精度に位置決めすることができ、被移動体を目標停止位置に短時間でかつ高精度に移動させることができるようにしている。
【0017】
なお、本発明では、前述した従来の技術のように、被移動体を移動させるための駆動負荷に応じたモータ電流を移動動作時以外のタイミングで測定するといった煩雑な処理を伴うこともない。
【0018】
このように、請求項1に記載のモータ制御装置によれば、被移動体の目標停止位置に至る途中位置まで所定速度かつ所定精度で被移動体が移動するようにモータの回転駆動を制御する第1制御系と、上記途中位置から上記目標停止位置まで上記所定速度より低速度かつ上記所定精度より高精度で被移動体が移動するようにモータの回転駆動を制御する第2制御系と、の2つの制御系により2段階でモータの回転駆動を制御しているので、煩雑な処理を伴うことなく、被移動体を目標とする停止位置に短時間でかつ高精度に移動させることができる。
【0019】
なお、本発明は、請求項2に記載の発明のように、前記途中位置を、前記目標停止位置の近傍の位置とすることが好ましい。これにより、速度を重視した第1制御系による制御期間を長くすることができるので、被移動体の移動時間を、より短縮することができる。
【0020】
ところで、通常、モータの回転駆動制御では、回転速度を減速させて停止させる際に、減速アクションを行った後に整定アクションを行うものとされている。
【0021】
この点を利用して、請求項2に記載の発明は、請求項3に記載の発明のように、前記途中位置を、前記モータの減速アクションと整定アクションの境界に対応する位置とすることが、制御系の切替えを行う上で好都合である。
【0022】
なお、本発明は、請求項4に記載の発明のように、前記第1制御系を、比例積分制御系とし、前記第2制御系を、スライディングモード制御系とすることができる。
【0023】
ここで、上記比例積分制御系の好適な例としては、図3に示した制御系を例示することができる。すなわち、この制御系は、制御対象12として表されたモータを、回転速度の速度目標値vrと実際の回転速度vの誤差に基づいてモータに流れる電流を示す電流指令値c_outを生成してモータに入力すると共に、モータに流れる電流の目標値である電流目標値crをフィードフォワードとして用いた系である。
【0024】
また、上記スライディングモード制御系の好適な例として、図5に示した制御系を例示することができる。すなわち、この制御系は、モータの回転位置x、回転速度x、及び目標停止位置と回転位置xとの誤差の時間積分によって示される位置誤差積分xの各状態量を定数c、cでσ=c−c−x=0となるように拘束すると共に、外乱dによって前記各状態量がσ=0という条件から外れた場合に当該条件に引き戻すための非線形電流を入力する制御系である。
【0025】
一方、上記目的を達成するために、請求項5に記載のモータ制御方法は、被移動体を移動するために回転駆動されるモータの回転駆動を制御するモータ制御方法であって、前記被移動体の目標停止位置に至る途中位置まで所定速度かつ所定精度で前記被移動体が移動するように前記モータの回転駆動を制御する第1制御系と、前記途中位置から前記目標停止位置まで前記所定速度より低速度かつ前記所定精度より高精度で前記被移動体が移動するように前記モータの回転駆動を制御する第2制御系と、の2つの制御系により2段階で前記モータの回転駆動を制御するものである。
【0026】
従って、請求項5に記載の発明によれば、請求項1に記載の発明と同様にモータの回転駆動を制御するので、請求項1記載の発明と同様に、煩雑な処理を伴うことなく、被移動体を目標とする停止位置に短時間でかつ高精度に移動させることができる。
【0027】
【発明の実施の形態】
以下、本発明の好ましい実施の形態について図面を参照しながら詳細に説明する。図1には、本実施の形態において本発明が適用されるモータ駆動装置10の機械系の構成が示されている。なお、モータ駆動装置10は、記録媒体に画像を形成する画像形成装置における当該記録媒体を副走査方向に搬送する役割を有するものである。以下、同図を参照して、本実施の形態に係るモータ駆動装置10の構成を説明する。なお、同図における円弧状矢印は、対応する回転部材の回転方向を示している。
【0028】
モータ駆動装置10は、記録媒体22を搬送するためのプラテンローラ18と、記録媒体22をモータ駆動装置10の外部へ排出するための排出ローラ20とを備えている。
【0029】
プラテンローラ18及び排出ローラ20は、駆動部12によりそれぞれ駆動され、記録媒体22を矢印Aの方向(副走査方向)に所定のピッチで間欠搬送するようになっている。
【0030】
駆動部12には、駆動源としてのモータ14と、複数のギヤ、ベルト、プーリ等が備えられている。モータ14の回転軸の回転によって生じる駆動力はこれらのギヤや、ベルト、プーリを介してプラテンローラ18及び排出ローラ20に伝達される。
【0031】
なお、プラテンローラ18及び排出ローラ20の記録媒体22を挟んだ対向位置には従動ローラ19が各々設けられており、記録媒体22は、モータ14の回転駆動に応じて互いに同一方向に回転されたプラテンローラ18及び排出ローラ20と、各々に対応する従動ローラ19とに挟持された状態で副走査方向に搬送される。
【0032】
一方、駆動部12には、モータ14の回転速度及び回転位置を検出するためのエンコーダ16が設けられている。当該エンコーダ16にはコードホイール16Aが備えられている。このコードホイール16Aは、フィルム状の円盤により構成されており、プラテンローラ18の回転軸に一体的に設けられたギヤに設けられ、モータ14の回転駆動に応じてプラテンローラ18と一体的に回転するようになっている。また、コードホイール16Aの外周部付近には、当該コードホイール16Aと同心円状に、等間隔で遮光部と透光部とが交互に配設されている。
【0033】
また、エンコーダ16には、当該コードホイール16Aの遮光部及び透光部の配設部位を挟むようにフォトセンサ16Bが備えられている。フォトセンサ16Bには、光を出射する投光部と、当該投光部から出射された光を受光する受光部と、が上記遮光部及び透光部の配設部位を挟むように互いに対向されて設けられており、受光部から受光量に応じた検出信号が出力される。従って、モータ14が回転駆動されてコードホイール16Aが回転されると、各々上記遮光部及び透光部に応じたローレベル及びハイレベルの検出信号がフォトセンサ16Bから連続的に出力されるので、当該ローレベル及びハイレベルの信号周期に基づいてモータ14の回転速度が検出できると共に、ローレベル又はハイレベルの出現回数を計数することによりモータ14の回転位置が検出できる。なお、当該モータ14の回転位置は、記録媒体22の搬送量(搬送位置)を示す情報として適用されるものである。
【0034】
図2には、モータ駆動装置10の電気系の構成が示されている。同図に示すように、モータ駆動装置10は、装置全体の動作を司るCPU(中央処理装置)28と、前述のモータ14及びエンコーダ16が含まれた制御対象12と、が備えられている。また、モータ駆動装置10は、CPU28と制御対象12との間に介在されたASIC(Application Specific Integrated Circuit)30が備えられている。
【0035】
ASIC30には、主としてCPU28から入力された後述する電流指令値をアナログ量に変換して出力するデジタル/アナログ変換の役割を有する電流制御部32が設けられている。
【0036】
また、ASIC30には、前述のエンコーダ16のフォトセンサ16Bに接続された速度検出部34及び位置検出部36が設けられており、それぞれフォトセンサ16Bから入力された検出信号に基づいてモータ14の回転速度及び回転位置を検出する。
【0037】
さらに、ASIC30には、タイマ38が設けられており、CPU28により実行される後述する各アクション処理における所定のサンプリング周期(割り込み処理の周期)を計時する。
【0038】
一方、モータ駆動装置10には、CPU28に接続されたROM(Read Only Memory)40及びRAM(Random Access Memory)42が備えられている。
【0039】
ROM40には、モータ14を制御するための後述するファームウェアが内蔵されており、CPU28は、RAM42をワークエリアとして用いて当該ファームウェアを実行することにより、ASIC30を介してモータ14の動作を制御する。
【0040】
ところで、モータ14の動作状態は、モータ14を起動して所望の回転速度まで到達させる加速アクション、モータ14の回転速度を上記所望の回転速度で一定に保つ等速アクション、モータ14を上記所望の回転速度から減速させる減速アクション及びモータ14を停止させる整定アクション、の4つのアクションに分類することができる。
【0041】
そして、CPU28では、当該各アクションに応じた処理手順が上記ファームウェアで実行され、モータ14の回転速度が各アクションの種類に応じた推移となる電流指令値を示す電流指令値信号がASIC30の電流制御部32に出力される。この結果、電流制御部32から上記電流指令値を示すレベルの電流が制御対象12に対して出力される。
【0042】
なお、制御対象12には電流増幅回路24が備えられており、ASIC30から入力された電流は電流増幅回路24によってモータ14の仕様に応じた電流レベルとなるように増幅された後にモータ14に入力される。
【0043】
ところで、本実施の形態に係るモータ駆動装置10では、加速アクション、等速アクション、及び減速アクションの3つのアクションの実行時に適用される第1制御系48(図3参照。)と、整定アクションの実行時に適用される第2制御系70(図5参照。)と、の、2つの制御系により2段階でモータ14の回転駆動を制御する。次に、第1制御系48の構成について説明する。
【0044】
図3に示すように、第1制御系48では、関数vr(n)で表されるモータ14の回転速度の目標値(以下、「速度目標値」という。)と、関数cr(n)で表されるモータ14に流す電流の目標値(以下、「電流目標値」という。)が入力パラメータとされている。ここで、nは所定期間毎に行われるサンプリングの制御開始時からの累積回数を示す。
【0045】
そして、この制御系には、入力された速度目標値vrをモータ14の回転位置の目標値(以下、「位置目標値」という。)prに換算するための積分部50が備えられており、積分部50の出力端は2入力とされた加算部52の一方の入力端に接続されている。
【0046】
一方、加算部52の他方の入力端には、後述する積分部64の回転位置psを出力する出力端が接続されている。積分部64は、制御対象12におけるモータ14の実際の回転速度vを積分して実際の回転位置psを得るためのものである。また、加算部52には、回転位置psの正負が逆とされて入力される。従って、加算部52からは位置目標値prから実際の回転位置psが減算されて得られた回転位置の誤差(以下、「位置誤差」という。)peが出力される。
【0047】
そして、加算部52の位置誤差peを出力する出力端は第1の制御演算部54の入力端に接続されている。
【0048】
第1の制御演算部54は、入力された位置誤差peをモータ14の回転速度v_cmpに換算するものであり、具体的には、PI制御やPID制御等の既存の制御手法により実現される。そして、第1の制御演算部54の回転速度v_cmpを出力する出力端は2入力とされた加算部56の一方の入力端に接続されている。
【0049】
また、加算部56の出力端は、一方の入力端に速度目標値vrが入力される加算部58の他方の入力端に接続されており、加算部58の出力端は第2の制御演算部60の入力端に接続されている。
【0050】
一方、加算部56の他方の入力端には、制御対象12におけるモータ14の実際の回転速度vを出力する出力端が接続されており、加算部56には、回転速度vの正負が逆とされた値が入力される。従って、加算部58からは、速度目標値vrから実際の回転速度vが減算され、かつ回転速度v_cmpが加算されて得られた回転速度の誤差(以下、「速度誤差」という。)veが第2の制御演算部60に出力される。
【0051】
第2の制御演算部60は、入力された速度誤差veをモータ14に流す電流の値c_cmpに換算するものであり、具体的には、PI制御やPID制御等の既存の制御手法により実現される。そして、第2の制御演算部60の電流値c_cmpを出力する出力端は、一方の入力端に電流目標値crが入力される加算部62の他方の入力端に接続されている。従って、加算部62からは電流目標値crと電流値c_cmpとを加算した値とされた電流指令値c_outが出力される。
【0052】
この電流指令値c_outは、前述したようにASIC30の電流制御部32によってアナログ量に変換された後に制御対象12の電流増幅回路24に入力される。
【0053】
そして、モータ14の実際の回転速度vを実際の回転位置psに換算する積分部64が制御対象12の回転速度vを出力する出力端に接続されており、前述したように、回転速度vが加算部56に、回転位置psが加算部52に、各々入力される構成である。
【0054】
本実施の形態に係るモータ駆動装置10では、以上のように構成された第1制御系48により、関数vr(n)により示される速度目標値と、関数cr(n)により示される電流目標値とを入力パラメータとして整定アクション以外のアクションが制御されるが、これらの入力パラメータは、各アクション毎に予め定められている。以下、各アクション毎の当該入力パラメータについて説明する。
【0055】
まず、加速アクションの入力パラメータについて説明する。加速アクションでは、関数vr(n)により示される速度目標値の推移を、図4(A)に示すように、両端部が2次関数により示される曲線(放物線)とされ、かつ中間部が1次関数により示される直線とされると共に、上記曲線と上記直線とが滑らかに接続された形状を示すものとする。
【0056】
また、加速アクションにおける関数cr(n)により示される電流目標値の推移を、図4(B)に示すように、台形形状を示すものとする。なお、同図に示すように、本実施の形態では、このときの電流の最大値(瞬時電流値)が、直線加速時における電流値の1.2倍程度となるようにする。この‘1.2倍’という数値は、モータ14に駆動用の電力を供給する電源装置における電源電圧の安全上の規格値とされている約42Vを当該電源電圧が越えないように定めた値であり、上記規格値や、制御対象とするモータの仕様等の各種パラメータによって左右される値である。
【0057】
このような台形形状と、上記曲線と上記直線とを滑らかに接続する、という条件から、上記曲線と直線との間の接続点を得ることができる。本実施の形態における当該接続点は、図4(A)及び図4(B)に示すように、回転開始時から所望とする回転速度に到達するまでの期間を1.0としたときの1/6(6分の1)及び5/6(6分の5)の各時刻が当該接続点として得られる。
【0058】
そして、当該接続点から逆算することにより、加速アクション時の関数vr(n)が次の(1)式に示すように得ることができる。
【0059】
【数1】

Figure 2005031877
【0060】
また、これらの関数vr(n)の各演算式を微分することにより関数cr(n)が次の(2)式に示すように得ることができる。
【0061】
【数2】
Figure 2005031877
【0062】
なお、上記(1)式及び(2)式におけるNは加速アクション時における全サンプリング数によって示される加速期間を表す。また、上記(1)式におけるvは加速アクション時における最終的な回転速度を、cはモータ14が当該回転速度vで回転するときにモータ14に流れる電流の値を、各々表す。
【0063】
次に、等速アクションの入力パラメータについて説明する。等速アクションでは、関数vr(n)により示される速度目標値の推移を次の(3)式で示されるものとし、関数cr(n)により示される電流目標値の推移を次の(4)式で示されるものとする。すなわち、この場合の速度目標値は回転速度vで一定とされ、電流目標値は0(零)で一定とされる。
【0064】
【数3】
Figure 2005031877
【0065】
【数4】
Figure 2005031877
【0066】
なお、上記(3)式及び(4)式におけるNは等速アクション時における全サンプリング数によって示される等速期間を表す。
【0067】
次に、減速アクションの入力パラメータについて説明する。減速アクションでは、関数vr(n)により示される速度目標値の推移を、図4(A)で示したものの時刻1.0に対応する縦軸を中心とした線対称の形状を示すものとする。従って、減速アクション時の関数vr(n)は次の(5)式に示されるものとなり、関数cr(n)は次の(6)式に示されるものとなる。
【0068】
【数5】
Figure 2005031877
【0069】
【数6】
Figure 2005031877
【0070】
なお、上記(5)式及び(6)式におけるNは減速アクション時における全サンプリング数によって示される減速期間を表す。また、上記(5)式におけるvは減速アクション開始時における回転速度を、cはモータ14が当該回転速度vで回転するときにモータ14に流れる電流の値を、各々表す。
【0071】
次に、整定アクションの実行時に適用される第2制御系70の構成について説明する。図5に示すように、第2制御系70では、記録媒体22の目標とする停止位置に対応するモータ14の回転位置を示す情報(以下、「目標停止位置」という。)rが入力パラメータとされている。
【0072】
そして、この制御系には、目標停止位置rが一方の入力端に入力される2入力の加算部80が備えられており、当該加算部80の他方の入力端には、後述する積分部88の回転位置xを出力する出力端が接続されている。積分部88は、制御対象12におけるモータ14の実際の回転速度xを積分して実際の回転位置xを得るためのものである。また、加算部80には、回転位置xの正負が逆とされて入力される。従って、加算部80からは目標停止位置rから実際の回転位置xが減算されて得られた回転位置の誤差(以下、「位置誤差」という。)が出力される。
【0073】
そして、加算部80の位置誤差を出力する出力端は第3の制御演算部74の入力端に接続されている。
【0074】
第3の制御演算部74は、積分部74Aと、後述する積分係数Kの正負を逆とした値を入力値に乗算する役割を有する乗算部74Bと、後述する比例係数Kを入力値に乗算する役割を有する乗算部74Cと、を備えており、加算部80の出力端は積分部74A及び乗算部74Cの各々の入力端に接続されている。なお、積分部74Aの出力端は乗算部74Bの入力端に接続されている。
【0075】
そして、乗算部74Bの出力端は2入力とされた加算部82の一方の入力端に、乗算部74Cの出力端は加算部82の他方の入力端に、各々接続されている。従って、加算部82では、上記位置誤差を積分した位置誤差積分xに積分係数−Kを乗算して得られた値と、上記位置誤差に比例係数Kを乗算して得られた値と、が加算され、当該加算結果が加算部82から出力される。
【0076】
そして、加算部82の出力端は2入力とされた加算部84の一方の入力端に接続されている。また、加算部84の他方の入力端には、回転位置xに後述するフィードバック係数Kを乗算して出力する役割を有する第4の制御演算部78の出力端が接続されている。従って、加算部84からは、加算部82からの出力値と、回転位置Xにフィードバック係数Kを乗算して得られた値との加算結果が出力されることになる。そして、加算部84の出力端は2入力とされた加算部86の一方の入力端に接続されている。
【0077】
一方、第2制御系70には非線形電流入力部72が備えられている。この非線形電流入力部72には、モータ14に流す電流の調整値の上限値となる電流係数Kを出力する係数出力部72Aと、電流係数Kの正負を逆とした−Kを出力する係数出力部72Bと、電流係数K及び電流係数−Kの何れか一方を選択して出力する選択部72Cと、選択部72Cによって選択された電流係数に対して、上記電流の調整値の範囲を制限するための飽和関数sat(σ)を乗算する乗算部72Dと、が備えられている。なお、本実施の形態に係る飽和関数sat(σ)は次の(7)式で表される。ここで、σは次の(8)式で示される後述する切替面を、Lは所定定数を、各々表す。また、(8)式におけるc及びcは、切替面σの傾きを表す定数である。
【0078】
【数7】
Figure 2005031877
【0079】
【数8】
Figure 2005031877
【0080】
なお、選択部72Cでは、σの値が正の値である場合は電流係数Kを選択して乗算部72Dに出力し、σの値が負の値である場合は電流係数−Kを選択して乗算部72Dに出力する。
【0081】
そして、乗算部72Dの出力端は前述した加算部86の他方の入力端に接続され、当該加算部86からはモータ14に流す電流を示す電流指令値c_outが制御対象12に出力される。
【0082】
一方、制御対象12には、モータ14のトルク定数(誘導電圧定数)等のパラメータに応じて定められた定数bを入力値に乗算する乗算部12Aと、モータ14に流す電流の外乱dによる変動を含めるための2入力の加算部12Bと、モータ14の実際の回転速度x2を得るための積分部12Cと、が含まれている。
【0083】
そして、加算部86の出力端は乗算部12Aの入力端に接続されている。従って、制御対象12では、電流指令値c_outが乗算部12Aに入力されて定数bが乗算され、これに加算部12Bによって外乱dによる影響が反映された後に積分部12Cによって積分されて回転速度xとして出力される。
【0084】
なお、第2制御系70は、スライディングモード制御系と呼ばれるものであり、通常のPI制御系に比較して外乱の影響を受けにくく制御精度は高精度なものである。
【0085】
ここで、第2制御系70の動作について図5及び図6を参照しつつ説明する。
1.制御係数の設定
まず、積分係数K、比例係数K、フィードバック係数Kを次の(9)式〜(11)式のように設定する。ここで、定数c及び定数cの値は次項に示す伝達関数が安定となるように選択する。
【0086】
【数9】
Figure 2005031877
【0087】
2.状態方程式と伝達関数
まず、外乱dと非線形電流入力部72を無視して考える。
【0088】
【数10】
Figure 2005031877
【0089】
【数11】
Figure 2005031877
【0090】
ここで、状態方程式をr=0の初期値問題として考える。これは、初期位置x2=p0を目標位置x2=psに至らせる制御を、初期位置x2=p0−psから目標位置x2=0に至らせる制御を行うことと等価である。
【0091】
このとき、状態方程式より、
【0092】
【数12】
Figure 2005031877
【0093】
となる。従って、状態ベクトルは、この条件に従ってx=0に収束する。なお、このときの収束の速さは伝達関数の極によって決定される。
3.非線形電流入力部72について
以上では外乱dを無視したが、実際は外乱dによって状態ベクトルがσ=0の条件から外れる場合がある。このとき、非線形電流入力部72によって状態ベクトルを切替面σに拘束させることで安定化を図ることができる。
【0094】
なお、非線形電流が大き過ぎると切替面σの近傍で振動するチャタリングが発生するため、状態ベクトルが切替面σから遠く離れても当該電流が大きくなり過ぎないように(7)式により飽和特性を持たせている。
4.外乱抑制動作の説明
外乱入力から切替条件出力への伝達特性を考える。
【0095】
【数13】
Figure 2005031877
【0096】
【数14】
Figure 2005031877
【0097】
以上の式から伝達関数を求めると、
【0098】
【数15】
Figure 2005031877
【0099】
となり、図7で示される。
【0100】
すなわち、同図に示すように、状態ベクトルが切替面σに拘束されると、システム90Bだけが動作するので外乱dから切替面σ上での状態への伝達関数は0となる。従って、切替面σ上では外乱dの影響を受けない。
【0101】
一方、これとは逆に、状態ベクトルが切替面σから外れるとシステム90Aを通って外乱dが伝達するが、システム90Aは不安定なので状態ベクトルは発散する。従って、安定に動作させるには、非線形電流入力部72による非線形電流の入力によって状態ベクトルを切替面σに拘束する必要がある。
【0102】
なお、スライディングモード制御系は従来既知の技術であるので、これ以上のここでの説明は省略する。
【0103】
ところで、本実施の形態では、加速アクション、等速アクション、及び減速アクションの各アクションにおいては、前述のように定められた関数vr(n)により示される速度目標値及び関数cr(n)により示される電流目標値を用いて、各アクション毎にモータ14の回転動作を制御することになるが、当該制御時に各目標値を実際に各関数を用いた演算により導出するのではなく、各目標値を予め算出し、かつROM40の所定領域に記憶しておき、制御時に、これをROM40から逐次読み出すことによって適用するものとしている。これにより、各関数による演算時間を削減することができ、高速な制御が実現できる。
【0104】
また、本実施の形態では、図3に示した第1制御系48及び図5に示した第2制御系70をハードウェアにより実現しているのではなく、ファームウェアにより実現しており、該ファームウェアはROM40に予め記憶されている。これによって、当該制御系を容易に変更することが可能となり、モータ駆動装置10の融通性を向上できる。
【0105】
図8には、本実施の形態に係るROM40のメモリマップの一部が示されている。同図に示すように、ROM40には、加速アクション用の速度目標値の配列acc_vr(N)及び電流目標値の配列acc_cr(N)と、減速アクション用の速度目標値の配列dcc_vr(N)及び電流目標値の配列dcc_cr(N)と、の各配列の記憶領域が設けられている。そして、これらの配列には、各々対応する前述の関数によって算出された各目標値が時系列順に予め記憶されている。なお、等速アクションにおける各目標値は、本実施の形態では固定値とされているので、このための配列はROM40には設けられていない。
【0106】
一方、ROM40には、ファームウェアが各アクション毎に所定記憶領域に予め記憶されている(図8では図示省略)。
【0107】
そして、加速アクションを実行するファームウェアの先頭アドレスが変数action(1)に対応する記憶領域に、等速アクションを実行するファームウェアの先頭アドレスが変数action(2)に対応する記憶領域に、減速アクションを実行するファームウェアの先頭アドレスが変数action(3)に対応する記憶領域に、整定アクションを実行するファームウェアの先頭アドレスが変数action(4)に対応する記憶領域に、各々記憶されている。
【0108】
以下、本実施の形態の作用を説明する。モータ駆動装置10では、プラテンローラ18及び排出ローラ20により記録媒体22を所定量づつ副走査方向(図1矢印A方向)に送り出す(副走査を行なう)際に、CPU28によりROM40に記憶されたファームウェアが読み出され実行されることによってモータ14の駆動制御を行う。
【0109】
図9には、当該駆動制御の開始時に最初に実行される制御開始処理の流れが示されている。以下、当該制御開始処理について同図を参照しつつ説明する。
【0110】
まず、ステップ100では、変数の初期設定として、モータ14のアクションを示す変数p、サンプリングの累積回数を示す変数n及び位置目標値prに所定の初期値(本実施の形態では、p=1、n=0、pr=0)を代入する。これにより、これらの変数の値がRAM42の所定領域に記憶される。
【0111】
次のステップ102では、予めROM40に記憶されている加速アクション処理の全サンプリング数N、等速アクション処理の全サンプリング数N、減速アクション処理の全サンプリング数N及び整定アクション処理の全サンプリング数Nをそれぞれ読み出し、その後にステップ104に移行して、ASIC30から所定のサンプリング周期毎にCPU28に入力されるサンプリング割り込み信号を有効にし、その後に本制御開始処理を終了する。
【0112】
上記ステップ104の処理により、これ以後、ASIC30のタイマ38で所定のサンプリング周期(本実施の形態では0.1秒)が計時されたタイミングでASIC30からCPU28にサンプリング割り込み信号が入力された際にCPU28では、割り込みエントリ処理を実行するファームウェアを起動する。
【0113】
図10には、当該割り込みエントリ処理の流れが示されている。以下、当該割り込みエントリ処理について同図を参照しつつ説明する。
【0114】
まず、ステップ110では、RAM42の所定領域に記憶されている変数pの値を読み出し、次のステップ112では、ROM40のaction(p)に対応する記憶領域に先頭アドレスが記憶されているファームウェアを実行し、その後に本割り込みエントリ処理を終了する。
【0115】
上記ステップ112の処理により、例えば、変数pの値が‘1’であったときは加速アクション処理が実行され、‘2’であったときは等速アクション処理が実行される。
【0116】
図11には、変数pの値が‘1’であるときに実行される加速アクション処理の流れが示されている。以下、当該加速アクション処理について同図を参照しつつ説明する。
【0117】
まず、ステップ130では、ROM40に記憶された加速アクション用速度目標値の配列及び加速アクション用電流目標値の配列を参照し、RAM42の所定領域に記憶されているサンプリングの累積回数を示す変数nの値に応じたacc_vr(n)及びacc_cr(n)の値を読み出し、それぞれ速度目標値vr、電流目標値crとして設定する。
【0118】
次のステップ132は、図3に示した第1制御系48における積分部50による処理に相当するもので、位置目標値prを導出するものである。当該位置目標値prは、速度目標値vrにサンプリング周期(割り込み周期)Tを乗算して得られた値の累積値であり、初期設定は図9のステップ100の処理によりpr=0となっている。
【0119】
次のステップ134では、図3に示した第1制御系48と同様の処理を1サンプリング分だけ行うファームウエアを実行することによりモータ14の回転駆動を制御し、その後にステップ136に移行して、変数nの値が加速アクションにおける全サンプリング数N未満であるか否かを判定する。当該判定が肯定判定となった場合はステップ138に移行して、変数nの値を1だけインクリメントした後、本加速アクション処理を終了する。
【0120】
また、ステップ136で否定判定となった場合はステップ140に移行して、変数nの値を0とした後、ステップ142に移行して、変数pの値を1だけインクリメントした後に本加速アクション処理を終了する。
【0121】
一方、図12には、変数pの値が‘2’であるときに実行される等速アクション処理の流れが示されている。以下、当該等速アクション処理について同図を参照しつつ説明する。なお、同図の図11と同様の処理を行うステップについては図11と同一のステップ番号を付して、その説明を省略する。
【0122】
まず、ステップ128では、等速アクション処理の全サンプリング数Nが0であるか否かを判定し、肯定判定となった場合はステップ142に移行し、否定判定となった場合にはステップ129に移行する。すなわち、本実施の形態に係るモータ駆動装置10では、記録媒体22の微少改行動作をモータ14により行う際には、全サンプリング数Nとして0を予め記憶しておくことにより、等速アクション処理を行わないものとしている。
【0123】
ステップ129では、回転速度vを速度目標値vrとして設定すると共に、0を電流目標値crとして設定し、その後にステップ132に移行する。
【0124】
その後、ステップ135では、変数nの値が等速アクションにおける全サンプリング数N未満であるか否かを判定する。当該判定が肯定判定となった場合はステップ138に移行し、否定判定となった場合はステップ140に移行する。
【0125】
なお、減速アクション処理については、電流目標値及び速度目標値として、各々減速アクション用速度目標値の配列dcc_vr(N)及び減速アクション用電流目標値の配列dcc_cr(N)を参照する点のみが加速アクション処理と異なる。
【0126】
一方、図13には、変数pの値が‘4’であるときに実行される整定アクション処理の流れが示されている。以下、当該整定アクション処理について同図を参照しつつ説明する。
【0127】
まず、ステップ150では、目標停止位置rとして所望の位置を示す値pr_stopを設定し、次のステップ152では、図5に示した第2制御系70と同様の処理を1サンプリング分だけ行うファームウエアを実行することによりモータ14の回転駆動を制御し、その後にステップ154に移行して、変数nの値が整定アクションにおける全サンプリング数N未満であるか否かを判定する。当該判定が肯定判定となった場合はステップ156に移行して、変数nの値を1だけインクリメントした後、本整定アクション処理を終了する。
【0128】
一方、ステップ154で否定判定となった場合はステップ158に移行して、ASIC30から所定のサンプリング周期毎にCPU28に入力されるサンプリング割り込み信号を無効にすることにより割り込み処理の実行を停止した後、本整定アクション処理を終了する。
【0129】
図14には、図15に測定結果を示したものと同様の画像形成装置において、モータの回転駆動制御を、本実施の形態と同様に、減速アクションまではPI制御系によって行い、整定アクション時にスライディングモード制御系によって行った場合の用紙送り誤差の測定結果例が示されている。なお、同図の(A)は用紙送り速度の時間的な推移のみを示したものであり、(B)は当該用紙送り速度に加え、用紙送り誤差の時間的な推移を(A)より時間軸(横軸)を拡大して示したものである。また、同図(B)の用紙送り誤差の単位は1/4800インチである。
【0130】
同図に示すように、この場合、用紙送り速度が0近傍に達した後の数(msec)程度で用紙送り誤差が0近傍に達しており、図15に示した従来のPI制御系のみによる制御に比較して、大幅に整定アクションに要する時間を短縮でき、かつ位置決め精度を向上できることがわかる。
【0131】
以上詳細に説明したように、本実施の形態では、記録媒体の目標停止位置に至る途中位置まで所定速度かつ所定精度で記録媒体が移動するようにモータの回転駆動を制御する第1制御系と、上記途中位置から上記目標停止位置まで上記所定速度より低速度かつ上記所定精度より高精度で記録媒体が移動するようにモータの回転駆動を制御する第2制御系と、の2つの制御系により2段階でモータの回転駆動を制御しているので、煩雑な処理を伴うことなく、記録媒体を目標とする停止位置に短時間でかつ高精度に移動させることができる。
【0132】
また、本実施の形態では、上記途中位置を、上記目標停止位置の近傍の位置としているので、回転速度を重視した第1制御系による制御期間を長くすることができ、記録媒体の移動時間を、より短縮することができる。
【0133】
特に、本実施の形態では、上記途中位置を、モータの減速アクションと整定アクションの境界に対応する位置としているので、制御系の切り替えを行う上で好都合である。
【0134】
なお、本実施の形態では、本発明の第1制御系としてPI制御系を、第2制御系としてスライディングモード制御系を、各々適用した場合について説明したが、本発明はこれに限定されるものではなく、本発明の第1制御系としてLQ制御系等の高速制御指向の制御系を適用し、本発明の第2制御系として、外乱を含む複数自由度とされた制御系において、外乱を見かけ上相殺することのできる、スライディングモード制御系以外の制御系等の高精度制御指向の制御系を適用する形態とすることもできる。この場合も、本実施の形態と同様の効果を奏することができる。
【0135】
また、本実施の形態では、整定アクション開始時に第2制御系による制御に移行する場合について説明したが、本発明はこれに限定されるものではなく、例えば、整定アクションに移行する直前、又は移行した直後のタイミングで第2制御系による制御に移行する形態とすることもできる。整定アクションに移行する直前に第2制御系に移行する場合は、本実施の形態に比較して位置決め時間が長くなるものの、位置決め精度を高精度化することができる。また、逆に、整定アクションに移行した直後に第2制御系に移行する場合は、本実施の形態に比較して位置決め精度が悪化するものの、位置決め時間を短縮することができる。
【0136】
また、本実施の形態において説明した各ファームウェアの処理の流れ(図9〜図13参照。)やモータ駆動装置10の制御系の構成(図3及び図5参照。)は一例であり、本発明の主旨を逸脱しない範囲内において適宜変更可能であることは言うまでもない。
【0137】
さらに、本実施の形態で説明したモータ駆動装置10の構成(図1及び図2参照。)も一例であり、本発明の主旨を逸脱しない範囲内において適宜変更可能であることは言うまでもない。
【0138】
【発明の効果】
以上説明したように、本発明のモータ制御装置及びモータ制御方法によれば、被移動体の目標停止位置に至る途中位置まで所定速度かつ所定精度で被移動体が移動するようにモータの回転駆動を制御する第1制御系と、上記途中位置から上記目標停止位置まで上記所定速度より低速度かつ上記所定精度より高精度で被移動体が移動するようにモータの回転駆動を制御する第2制御系と、の2つの制御系により2段階でモータの回転駆動を制御しているので、煩雑な処理を伴うことなく、被移動体を目標とする停止位置に短時間でかつ高精度に移動させることができる、という優れた効果を有する。
【図面の簡単な説明】
【図1】実施の形態に係るモータ駆動装置の概略構成を示す斜視図である。
【図2】実施の形態に係るモータ駆動装置の電気系の構成を示すブロック図である。
【図3】実施の形態に係るモータ駆動装置の第1制御系の構成を示すブロック図である。
【図4】実施の形態に係る加速時の速度目標値及び電流目標値の推移を示すグラフである。
【図5】実施の形態に係るモータ駆動装置の第2制御系の構成を示すブロック図である。
【図6】第2制御系の動作の説明に供する模式図である。
【図7】第2制御系の動作の説明に供するブロック図である。
【図8】実施の形態に係るROMのメモリマップの一部を示す模式図である。
【図9】実施の形態に係る制御開始処理の流れを示すフローチャートである。
【図10】実施の形態に係る割り込みエントリ処理の流れを示すフローチャートである。
【図11】実施の形態に係る加速アクション処理の流れを示すフローチャートである。
【図12】実施の形態に係る等速アクション処理の流れを示すフローチャートである。
【図13】実施の形態に係る整定アクション処理の流れを示すフローチャートである。
【図14】実施の形態の効果の説明に供するグラフである。
【図15】従来技術の問題点の説明に供するグラフである。
【符号の説明】
10 モータ駆動装置
12 駆動部、制御対象
14 モータ
16 エンコーダ
22 記録媒体(被移動体)
28 CPU(制御手段)
40 ROM
48 第1制御系
70 第2制御系[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a motor control device and a motor control method for controlling the rotational drive of a motor that is rotationally driven to move a moving object.
[0002]
[Prior art]
In recent years, small and motors that can rotate at high speed have become widespread, and accordingly, in motor control devices, quick and highly accurate motor rotation drive control is desired.
[0003]
By the way, in the rotational drive control when decelerating and stopping from the state where the motor rotates at a predetermined speed, the frictional force at the time of movement of the moving object moved by the rotational drive of the motor, The problem is that it is difficult to move the moving object to the target stop position in a short time due to non-linear disturbance such as a load by the transmission mechanism (gear, belt, etc.) of the moving force from the motor to the moving object. There was a point.
[0004]
FIG. 15 shows conventional rotational drive control of a motor that performs a line feed operation by moving the recording medium by a predetermined amount in the sub-scanning direction in an image forming apparatus (printer) that forms an image on a recording medium (recording paper). An example of a measurement result of a paper feed error (difference in actual position with respect to a target stop position) when performed by the proportional integral control system (PI control system) is shown. Note that (A) in the figure shows only the temporal transition of the paper feeding speed, and (B) shows the temporal transition of the paper feeding error in addition to the paper feeding speed from the time axis (horizontal). (Axis) is shown enlarged. Further, the unit of the paper feed error in FIG.
[0005]
As shown in the figure, in this case, even after the paper feed speed reaches near zero, the paper feed error does not reach near zero for several hundreds (msec), and it takes a considerable time for the motor settling action. Recognize. In a line feed operation of an image forming apparatus, generally, a recording medium positioning time of about several tens (msec) is required and a positioning accuracy of about ± 10 (μm) is required. Can not do it.
[0006]
Thus, as a technique for solving this problem, there has conventionally been a technique for discontinuously reducing a speed command value for the motor when the motor is decelerated (see, for example, Patent Document 1).
[0007]
Moreover, as a control of a motor that drives a paper feed mechanism for a line feed in a printer in the past, in order to prevent a decrease in positioning accuracy of a moving object to a target stop position due to a nonlinear disturbance as described above, There has been a technique for measuring a motor current corresponding to a paper feed driving load at a timing other than the time of a line feed operation and controlling driving of the motor based on the motor current (for example, refer to Patent Document 2).
[0008]
[Patent Document 1]
JP 2002-233177 A
[Patent Document 2]
JP 2002-326417 A
[0009]
[Problems to be solved by the invention]
However, the above-described technique for discontinuously reducing the speed command value has a problem in that although the moving object can be moved to the target stop position in a short time, the positioning accuracy of the moving object is low. .
[0010]
In addition, although the above-described technique for measuring and using the motor current can position the moving object with high accuracy, the process for measuring the motor current is required, and the process becomes complicated. There is a problem that it is difficult to move to a target stop position in a short time.
[0011]
The present invention has been made in order to solve the above-described problems, and can control a moving object to a target stop position in a short time and with high accuracy without complicated processing. An object is to provide an apparatus and a motor control method.
[0012]
[Means for Solving the Problems]
In order to achieve the above object, a motor control device according to claim 1 is a motor control device that controls a rotational drive of a motor that is rotationally driven to move a moving object, A first control system for controlling the rotational drive of the motor so that the movable body moves at a predetermined speed and with a predetermined accuracy to an intermediate position to reach a target stop position; and from the predetermined speed from the intermediate position to the target stop position. The rotational drive of the motor is controlled in two stages by two control systems, a second control system that controls the rotational drive of the motor so that the movable body moves at a lower speed and with a higher precision than the predetermined precision. Control means are provided.
[0013]
According to the first aspect of the present invention, the rotational drive of the motor that is rotationally driven to move the moving object is the control target. In addition to the recording medium in the image forming apparatus described above, the moving body includes the recording head in the image forming apparatus that forms the image by moving the recording head in the main scanning direction, and the image reading unit in the main scanning direction. This includes everything that is moved by a motor, such as the image reading unit in a scanner that reads image information while moving in at least one of the sub-scanning directions. The motor includes a DC (direct current) motor and an AC (alternating current) motor.
[0014]
Here, in the present invention, the rotation control of the motor is controlled by the first control system so that the moving body moves at a predetermined speed and with a predetermined accuracy by the control means to a midway position to the target stop position of the moving body. The rotation control of the motor is controlled by the second control system so that the moving object moves from the midway position to the target stop position at a speed lower than the predetermined speed and higher than the predetermined accuracy.
[0015]
That is, normally, in a control system that controls the rotational drive of a motor that is rotationally driven to move the moving object, the moving speed and the moving accuracy of the moving object are in a trade-off relationship. That is, in a control system that emphasizes high speed, accuracy is sacrificed to some extent, and in a control system that emphasizes accuracy, high speed is sacrificed to some extent.
[0016]
Focusing on this point, in the present invention, the movement period to the target stop position of the moving object is divided into two periods, a movement period to the middle position and a remaining movement period, and each period is divided into two periods. A second control system capable of controlling the rotational drive of the motor with a different control system and moving the moving object at a lower speed and with higher accuracy than the first control system applied in the period up to the intermediate position in the remaining movement period. That is, the rotational drive of the motor is controlled by a control system that places greater emphasis on movement accuracy than the first control system. Thus, in the present invention, the moving object can be moved at high speed during the movement period up to the intermediate position, and can be positioned with high accuracy at the target stop position during the remaining movement period. It can be moved with high accuracy in a short time.
[0017]
In the present invention, unlike the prior art described above, a complicated process of measuring the motor current corresponding to the driving load for moving the moving object at a timing other than the moving operation is not involved.
[0018]
Thus, according to the motor control device of the first aspect, the rotational drive of the motor is controlled so that the movable body moves at a predetermined speed and with a predetermined accuracy to a midway position to the target stop position of the movable body. A first control system, a second control system that controls the rotational drive of the motor so that the moving object moves at a speed lower than the predetermined speed and higher than the predetermined accuracy from the midway position to the target stop position; Since the rotational drive of the motor is controlled in two stages by the two control systems, the moving object can be moved to the target stop position in a short time and with high accuracy without complicated processing. .
[0019]
In the present invention, as in the invention described in claim 2, it is preferable that the midway position is a position in the vicinity of the target stop position. Thereby, since the control period by the 1st control system which considered speed as important can be lengthened, the movement time of a to-be-moved body can be shortened more.
[0020]
By the way, in the rotational drive control of the motor, normally, when the rotational speed is decelerated and stopped, the settling action is performed after the deceleration action.
[0021]
By utilizing this point, the invention according to claim 2 can set the intermediate position to a position corresponding to the boundary between the deceleration action and the settling action of the motor, as in the invention according to claim 3. This is convenient for switching the control system.
[0022]
According to the present invention, the first control system can be a proportional-integral control system and the second control system can be a sliding mode control system, as in the invention described in claim 4.
[0023]
Here, as a suitable example of the proportional integral control system, the control system shown in FIG. 3 can be exemplified. In other words, the control system generates a current command value c_out indicating a current flowing through the motor based on an error between the rotational speed target value vr and the actual rotational speed v. And a current target value cr, which is a target value of the current flowing through the motor, is used as feedforward.
[0024]
Further, as a suitable example of the sliding mode control system, the control system shown in FIG. 5 can be exemplified. That is, this control system is a motor rotation position x. 1 , Rotation speed x 2 , And target stop position and rotation position x 1 Position error integral x shown by time integral of error with 0 Is the constant c 0 , C 1 Where σ = c 0 x 0 -C 1 x 1 -X 2 And a control system that inputs a nonlinear current for returning to the condition when each state quantity deviates from the condition of σ = 0 due to the disturbance d.
[0025]
On the other hand, in order to achieve the above object, a motor control method according to claim 5 is a motor control method for controlling a rotational drive of a motor that is rotationally driven to move a moving object, wherein A first control system for controlling the rotational drive of the motor so that the movable body moves at a predetermined speed and with a predetermined accuracy to an intermediate position to a target stop position of the body; and the predetermined control position from the intermediate position to the target stop position The motor is driven in two stages by two control systems: a second control system that controls the rotational drive of the motor so that the moving body moves at a speed lower than the speed and higher than the predetermined precision. It is something to control.
[0026]
Therefore, according to the invention described in claim 5, since the rotational drive of the motor is controlled similarly to the invention described in claim 1, as in the invention described in claim 1, without complicated processing, The moving object can be moved to the target stop position in a short time and with high accuracy.
[0027]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the drawings. FIG. 1 shows the configuration of a mechanical system of a motor drive device 10 to which the present invention is applied in the present embodiment. The motor driving device 10 has a role of transporting the recording medium in the sub-scanning direction in the image forming apparatus that forms an image on the recording medium. Hereinafter, the configuration of the motor drive device 10 according to the present embodiment will be described with reference to FIG. In addition, the circular arc-shaped arrow in the figure has shown the rotation direction of the corresponding rotation member.
[0028]
The motor driving device 10 includes a platen roller 18 for conveying the recording medium 22 and a discharge roller 20 for discharging the recording medium 22 to the outside of the motor driving device 10.
[0029]
The platen roller 18 and the discharge roller 20 are respectively driven by the drive unit 12 to intermittently convey the recording medium 22 in the direction of arrow A (sub-scanning direction) at a predetermined pitch.
[0030]
The drive unit 12 includes a motor 14 as a drive source and a plurality of gears, belts, pulleys, and the like. The driving force generated by the rotation of the rotating shaft of the motor 14 is transmitted to the platen roller 18 and the discharge roller 20 through these gears, belts, and pulleys.
[0031]
In addition, driven rollers 19 are respectively provided at opposing positions of the platen roller 18 and the discharge roller 20 across the recording medium 22, and the recording medium 22 is rotated in the same direction according to the rotational drive of the motor 14. The paper is conveyed in the sub-scanning direction while being sandwiched between the platen roller 18 and the discharge roller 20 and the corresponding driven roller 19.
[0032]
On the other hand, the drive unit 12 is provided with an encoder 16 for detecting the rotational speed and rotational position of the motor 14. The encoder 16 is provided with a code wheel 16A. The code wheel 16 </ b> A is formed of a film disk, and is provided on a gear that is integrally provided on the rotation shaft of the platen roller 18. It is supposed to do. Further, in the vicinity of the outer peripheral portion of the code wheel 16A, a light shielding portion and a light transmitting portion are alternately arranged at equal intervals concentrically with the code wheel 16A.
[0033]
The encoder 16 is provided with a photosensor 16B so as to sandwich the light shielding part and the light transmitting part of the code wheel 16A. In the photosensor 16B, a light projecting unit that emits light and a light receiving unit that receives light emitted from the light projecting unit are opposed to each other so as to sandwich the light shielding unit and the light transmitting unit. A detection signal corresponding to the amount of received light is output from the light receiving unit. Accordingly, when the motor 14 is driven to rotate and the code wheel 16A is rotated, low level and high level detection signals corresponding to the light shielding part and the light transmitting part are continuously output from the photosensor 16B. The rotational speed of the motor 14 can be detected based on the low-level and high-level signal cycles, and the rotational position of the motor 14 can be detected by counting the number of appearances of the low level or high level. The rotational position of the motor 14 is applied as information indicating the conveyance amount (conveyance position) of the recording medium 22.
[0034]
FIG. 2 shows the configuration of the electric system of the motor drive device 10. As shown in the figure, the motor drive device 10 includes a CPU (central processing unit) 28 that controls the operation of the entire device, and a control object 12 including the motor 14 and the encoder 16 described above. In addition, the motor driving device 10 includes an ASIC (Application Specific Integrated Circuit) 30 interposed between the CPU 28 and the control target 12.
[0035]
The ASIC 30 is provided with a current control unit 32 having a role of digital / analog conversion mainly converting a current command value (described later) input from the CPU 28 into an analog amount and outputting the analog amount.
[0036]
Further, the ASIC 30 is provided with a speed detection unit 34 and a position detection unit 36 connected to the photo sensor 16B of the encoder 16, and the rotation of the motor 14 based on the detection signal input from the photo sensor 16B. Detect speed and rotational position.
[0037]
Further, the ASIC 30 is provided with a timer 38, which measures a predetermined sampling period (interrupt process period) in each action process (described later) executed by the CPU 28.
[0038]
On the other hand, the motor drive device 10 includes a ROM (Read Only Memory) 40 and a RAM (Random Access Memory) 42 connected to the CPU 28.
[0039]
The ROM 40 incorporates firmware to be described later for controlling the motor 14, and the CPU 28 controls the operation of the motor 14 via the ASIC 30 by executing the firmware using the RAM 42 as a work area.
[0040]
By the way, the operating state of the motor 14 includes an acceleration action for starting the motor 14 to reach a desired rotational speed, a constant speed action for keeping the rotational speed of the motor 14 constant at the desired rotational speed, The actions can be classified into four actions: a deceleration action for decelerating from the rotational speed and a settling action for stopping the motor 14.
[0041]
Then, in the CPU 28, a processing procedure corresponding to each action is executed by the firmware, and a current command value signal indicating a current command value at which the rotation speed of the motor 14 changes according to the type of each action is a current control of the ASIC 30. Is output to the unit 32. As a result, a current having a level indicating the current command value is output from the current control unit 32 to the controlled object 12.
[0042]
The control target 12 is provided with a current amplification circuit 24, and the current input from the ASIC 30 is amplified by the current amplification circuit 24 to a current level according to the specifications of the motor 14 and then input to the motor 14. Is done.
[0043]
By the way, in the motor drive device 10 according to the present embodiment, the first control system 48 (see FIG. 3) applied at the time of executing the three actions of the acceleration action, the constant speed action, and the deceleration action, and the settling action. The rotation control of the motor 14 is controlled in two stages by two control systems, the second control system 70 (see FIG. 5) applied at the time of execution. Next, the configuration of the first control system 48 will be described.
[0044]
As shown in FIG. 3, in the first control system 48, a target value of the rotational speed of the motor 14 (hereinafter referred to as “speed target value”) represented by a function vr (n) and a function cr (n). A target value (hereinafter referred to as “current target value”) of the current that flows through the motor 14 is used as an input parameter. Here, n indicates the cumulative number from the start of sampling control performed every predetermined period.
[0045]
The control system includes an integration unit 50 for converting the input speed target value vr to a target value (hereinafter referred to as “position target value”) pr of the rotational position of the motor 14. The output terminal of the integrating unit 50 is connected to one input terminal of the adding unit 52 having two inputs.
[0046]
On the other hand, the other input terminal of the adder 52 is connected to an output terminal that outputs a rotational position ps of an integrator 64 described later. The integrator 64 is for integrating the actual rotational speed v of the motor 14 in the controlled object 12 to obtain the actual rotational position ps. Further, the adding unit 52 is inputted with the sign of the rotational position ps being reversed. Therefore, the adder 52 outputs a rotational position error (hereinafter referred to as “position error”) pe obtained by subtracting the actual rotational position ps from the position target value pr.
[0047]
The output terminal for outputting the position error pe of the adder 52 is connected to the input terminal of the first control calculator 54.
[0048]
The first control calculation unit 54 converts the input position error pe into the rotation speed v_cmp of the motor 14, and is specifically realized by an existing control method such as PI control or PID control. The output terminal for outputting the rotation speed v_cmp of the first control calculation unit 54 is connected to one input terminal of the adder unit 56 having two inputs.
[0049]
Further, the output terminal of the adding unit 56 is connected to the other input terminal of the adding unit 58 to which the speed target value vr is input to one input terminal, and the output terminal of the adding unit 58 is the second control arithmetic unit. 60 is connected to the input terminal.
[0050]
On the other hand, an output terminal for outputting the actual rotational speed v of the motor 14 in the controlled object 12 is connected to the other input terminal of the adder 56, and the sign of the rotational speed v is reversed to the adder 56. The entered value is entered. Accordingly, the rotational speed error (hereinafter referred to as “speed error”) ve obtained by subtracting the actual rotational speed v from the speed target value vr and adding the rotational speed v_cmp from the adding unit 58 is the first. 2 is output to the second control calculation unit 60.
[0051]
The second control calculation unit 60 converts the input speed error ve into a value c_cmp of the current flowing through the motor 14, and is specifically realized by an existing control method such as PI control or PID control. The And the output terminal which outputs the electric current value c_cmp of the 2nd control calculating part 60 is connected to the other input terminal of the addition part 62 by which the electric current target value cr is input into one input terminal. Therefore, the adder 62 outputs a current command value c_out that is a value obtained by adding the current target value cr and the current value c_cmp.
[0052]
The current command value c_out is converted into an analog amount by the current control unit 32 of the ASIC 30 as described above, and then input to the current amplification circuit 24 of the controlled object 12.
[0053]
An integrating unit 64 that converts the actual rotational speed v of the motor 14 into the actual rotational position ps is connected to the output terminal that outputs the rotational speed v of the controlled object 12, and as described above, the rotational speed v is The rotation position ps is input to the adder unit 56 to the adder unit 52.
[0054]
In the motor drive device 10 according to the present embodiment, the first control system 48 configured as described above causes the target speed value indicated by the function vr (n) and the target current value indicated by the function cr (n). As an input parameter, actions other than the settling action are controlled. These input parameters are determined in advance for each action. The input parameters for each action will be described below.
[0055]
First, input parameters for the acceleration action will be described. In the acceleration action, the transition of the speed target value indicated by the function vr (n) is a curve (parabola) indicated by a quadratic function at both ends as shown in FIG. A straight line represented by a next function is used, and the curve and the straight line are smoothly connected.
[0056]
In addition, the transition of the current target value indicated by the function cr (n) in the acceleration action is assumed to have a trapezoidal shape as shown in FIG. As shown in the figure, in the present embodiment, the maximum current value (instantaneous current value) at this time is set to about 1.2 times the current value during linear acceleration. This numerical value of “1.2 times” is a value determined so that the power supply voltage does not exceed about 42 V, which is the standard value for safety of the power supply voltage in the power supply device that supplies driving power to the motor 14. It is a value that depends on the standard value and various parameters such as the specifications of the motor to be controlled.
[0057]
A connection point between the curve and the straight line can be obtained from such a trapezoidal shape and the condition that the curve and the straight line are smoothly connected. As shown in FIGS. 4A and 4B, the connection point in the present embodiment is 1 when the period from the start of rotation until reaching the desired rotation speed is 1.0. Each time of / 6 (1/6) and 5/6 (5/6) is obtained as the connection point.
[0058]
Then, by calculating backward from the connection point, the function vr (n) at the time of acceleration action can be obtained as shown in the following equation (1).
[0059]
[Expression 1]
Figure 2005031877
[0060]
Further, the function cr (n) can be obtained as shown in the following equation (2) by differentiating each arithmetic expression of these functions vr (n).
[0061]
[Expression 2]
Figure 2005031877
[0062]
N in the above formulas (1) and (2) A Represents the acceleration period indicated by the total number of samples during acceleration action. Also, v in the above equation (1) 0 Is the final rotation speed during acceleration action, c 0 The motor 14 has the rotational speed v 0 Represents the value of the current flowing through the motor 14 when rotating at.
[0063]
Next, input parameters for the constant speed action will be described. In the constant speed action, the transition of the speed target value represented by the function vr (n) is represented by the following equation (3), and the transition of the current target value represented by the function cr (n) is represented by the following (4). It shall be shown by a formula. That is, the speed target value in this case is the rotational speed v. 0 The current target value is constant at 0 (zero).
[0064]
[Equation 3]
Figure 2005031877
[0065]
[Expression 4]
Figure 2005031877
[0066]
Note that N in the above equations (3) and (4) C Represents a constant velocity period indicated by the total number of samples during a constant velocity action.
[0067]
Next, input parameters for the deceleration action will be described. In the deceleration action, the transition of the speed target value indicated by the function vr (n) has a line-symmetric shape centered on the vertical axis corresponding to the time 1.0 shown in FIG. . Therefore, the function vr (n) during the deceleration action is expressed by the following equation (5), and the function cr (n) is expressed by the following equation (6).
[0068]
[Equation 5]
Figure 2005031877
[0069]
[Formula 6]
Figure 2005031877
[0070]
N in the above formulas (5) and (6) D Represents the deceleration period indicated by the total number of samples during the deceleration action. Also, v in the above equation (5) 0 Is the rotation speed at the start of deceleration action, c 0 The motor 14 has the rotational speed v 0 Represents the value of the current flowing through the motor 14 when rotating at.
[0071]
Next, the configuration of the second control system 70 applied when executing the settling action will be described. As shown in FIG. 5, in the second control system 70, information (hereinafter referred to as “target stop position”) r indicating the rotational position of the motor 14 corresponding to the target stop position of the recording medium 22 is an input parameter. Has been.
[0072]
The control system includes a two-input adder 80 in which the target stop position r is input to one input end. The other input end of the adder 80 has an integrator 88 described later. Rotation position x 1 Is connected to the output terminal. The integrating unit 88 is an actual rotational speed x of the motor 14 in the controlled object 12. 2 To integrate the actual rotational position x 1 Is to get. Further, the adding unit 80 includes a rotational position x. 1 The sign is input with its sign reversed. Accordingly, the adder 80 determines from the target stop position r to the actual rotational position x. 1 An error of the rotational position obtained by subtracting (hereinafter referred to as “position error”) is output.
[0073]
The output terminal for outputting the position error of the adding unit 80 is connected to the input terminal of the third control calculation unit 74.
[0074]
The third control calculation unit 74 includes an integration unit 74A and an integration coefficient K described later. I A multiplication unit 74B having a role of multiplying the input value by a value obtained by reversing the sign of the value, and a proportional coefficient K described later P And a multiplication unit 74C having a role of multiplying the input value by the input value, and an output end of the addition unit 80 is connected to an input end of each of the integration unit 74A and the multiplication unit 74C. The output end of the integrating unit 74A is connected to the input end of the multiplying unit 74B.
[0075]
The output terminal of the multiplying unit 74B is connected to one input terminal of the adding unit 82 having two inputs, and the output terminal of the multiplying unit 74C is connected to the other input terminal of the adding unit 82. Accordingly, the adding unit 82 integrates the position error by integrating the position error x 0 Integral coefficient -K I And the proportional error K P Are added to each other, and the addition result is output from the adder 82.
[0076]
The output terminal of the adding unit 82 is connected to one input terminal of the adding unit 84 having two inputs. In addition, the other input end of the adder 84 has a rotational position x. 1 The feedback coefficient K described later in F Is connected to the output terminal of the fourth control arithmetic unit 78 having the role of multiplying and outputting. Therefore, the adder 84 outputs the output value from the adder 82 and the rotational position X. 1 Feedback factor K F The result of addition with the value obtained by multiplying is output. The output terminal of the adding unit 84 is connected to one input terminal of the adding unit 86 having two inputs.
[0077]
On the other hand, the second control system 70 includes a nonlinear current input unit 72. The nonlinear current input unit 72 includes a current coefficient K that is an upper limit value of an adjustment value of the current flowing through the motor 14. S A coefficient output unit 72A that outputs a current coefficient K S -K with the positive and negative signs reversed S A coefficient output unit 72B that outputs a current coefficient K S And current coefficient -K S A selection unit 72C that selects and outputs any one of the above, and a multiplication that multiplies the current coefficient selected by the selection unit 72C with a saturation function sat (σ) for limiting the range of the adjustment value of the current 72D. The saturation function sat (σ) according to the present embodiment is expressed by the following equation (7). Here, σ represents a later-described switching surface represented by the following equation (8), and L represents a predetermined constant. In addition, c in equation (8) 0 And c 1 Is a constant representing the slope of the switching surface σ.
[0078]
[Expression 7]
Figure 2005031877
[0079]
[Equation 8]
Figure 2005031877
[0080]
In the selection unit 72C, when the value of σ is a positive value, the current coefficient K S Is selected and output to the multiplier 72D. If the value of σ is a negative value, the current coefficient −K S Is output to the multiplier 72D.
[0081]
The output end of the multiplier 72D is connected to the other input end of the adder 86 described above, and the adder 86 outputs a current command value c_out indicating the current flowing through the motor 14 to the controlled object 12.
[0082]
On the other hand, the control object 12 includes a multiplier 12A that multiplies the input value by a constant b determined according to a parameter such as a torque constant (inductive voltage constant) of the motor 14, and a fluctuation caused by a disturbance d of the current flowing through the motor 14. Are included, and an integration unit 12C for obtaining the actual rotational speed x2 of the motor 14 is included.
[0083]
The output terminal of the adder 86 is connected to the input terminal of the multiplier 12A. Therefore, in the control target 12, the current command value c_out is input to the multiplication unit 12A, multiplied by the constant b, and after this is reflected by the addition unit 12B by the influence of the disturbance d, it is integrated by the integration unit 12C to be rotated. 2 Is output as
[0084]
The second control system 70 is called a sliding mode control system, and is less susceptible to disturbance than a normal PI control system, and has high control accuracy.
[0085]
Here, the operation of the second control system 70 will be described with reference to FIGS. 5 and 6.
1. Control coefficient setting
First, the integration coefficient K I , Proportional coefficient K P , Feedback coefficient K F Is set as in the following equations (9) to (11). Where the constant c 0 And constant c 1 The value of is selected so that the transfer function shown in the next section is stable.
[0086]
[Equation 9]
Figure 2005031877
[0087]
2. Equation of state and transfer function
First, the disturbance d and the nonlinear current input unit 72 are ignored.
[0088]
[Expression 10]
Figure 2005031877
[0089]
[Expression 11]
Figure 2005031877
[0090]
Here, the state equation is considered as an initial value problem of r = 0. This is equivalent to performing control for bringing the initial position x2 = p0 to the target position x2 = ps and control for bringing the initial position x2 = p0-ps to the target position x2 = 0.
[0091]
At this time, from the equation of state,
[0092]
[Expression 12]
Figure 2005031877
[0093]
It becomes. Therefore, the state vector converges to x = 0 according to this condition. Note that the speed of convergence at this time is determined by the pole of the transfer function.
3. Nonlinear current input unit 72
Although the disturbance d is ignored in the above, the state vector may actually deviate from the condition of σ = 0 due to the disturbance d. At this time, stabilization can be achieved by constraining the state vector to the switching plane σ by the nonlinear current input unit 72.
[0094]
If the nonlinear current is too large, chattering that vibrates in the vicinity of the switching surface σ occurs. Therefore, even if the state vector is far from the switching surface σ, the saturation characteristic is expressed by equation (7) so that the current does not become too large. I have it.
4). Explanation of disturbance suppression operation
Consider the transfer characteristics from disturbance input to switching condition output.
[0095]
[Formula 13]
Figure 2005031877
[0096]
[Expression 14]
Figure 2005031877
[0097]
When the transfer function is obtained from the above equation,
[0098]
[Expression 15]
Figure 2005031877
[0099]
And is shown in FIG.
[0100]
That is, as shown in the figure, when the state vector is constrained to the switching surface σ, only the system 90B operates, so the transfer function from the disturbance d to the state on the switching surface σ is zero. Therefore, it is not affected by the disturbance d on the switching surface σ.
[0101]
On the other hand, when the state vector deviates from the switching plane σ, the disturbance d is transmitted through the system 90A. However, since the system 90A is unstable, the state vector diverges. Therefore, in order to operate stably, it is necessary to constrain the state vector to the switching plane σ by the input of the nonlinear current by the nonlinear current input unit 72.
[0102]
Since the sliding mode control system is a conventionally known technique, further description here is omitted.
[0103]
By the way, in this embodiment, the acceleration action, the constant speed action, and the deceleration action are indicated by the speed target value and the function cr (n) indicated by the function vr (n) defined as described above. The rotational operation of the motor 14 is controlled for each action using the current target value that is generated, but each target value is not derived by actual calculation using each function during the control. Is calculated in advance and stored in a predetermined area of the ROM 40, and this is applied by sequentially reading it from the ROM 40 during control. Thereby, the calculation time by each function can be reduced, and high-speed control can be realized.
[0104]
In the present embodiment, the first control system 48 shown in FIG. 3 and the second control system 70 shown in FIG. 5 are not realized by hardware, but are realized by firmware. Is stored in the ROM 40 in advance. As a result, the control system can be easily changed, and the flexibility of the motor drive device 10 can be improved.
[0105]
FIG. 8 shows a part of the memory map of the ROM 40 according to the present embodiment. As shown in the figure, the ROM 40 has a speed target value array acc_vr (N A ) And current target value array acc_cr (N A ) And an array dcc_vr (N of speed target values for deceleration action) D ) And current target value array dcc_cr (N D ) And a storage area for each array. In these arrays, the target values calculated by the corresponding functions are stored in advance in chronological order. Since each target value in the constant speed action is a fixed value in the present embodiment, an array for this purpose is not provided in the ROM 40.
[0106]
On the other hand, in the ROM 40, firmware is stored in advance in a predetermined storage area for each action (not shown in FIG. 8).
[0107]
Then, the deceleration address is applied to the storage area corresponding to the variable action (1) in the storage area corresponding to the variable action (1), and the storage area corresponding to the variable action (2) is included in the storage area corresponding to the variable action (2). The start address of the firmware to be executed is stored in the storage area corresponding to the variable action (3), and the start address of the firmware to execute the settling action is stored in the storage area corresponding to the variable action (4).
[0108]
Hereinafter, the operation of the present embodiment will be described. In the motor drive device 10, the firmware stored in the ROM 40 by the CPU 28 when the recording medium 22 is sent by the platen roller 18 and the discharge roller 20 in the sub-scanning direction (arrow A direction in FIG. 1) by a predetermined amount (sub-scanning is performed). Is read out and executed to control the drive of the motor 14.
[0109]
FIG. 9 shows a flow of a control start process that is executed first at the start of the drive control. Hereinafter, the control start process will be described with reference to FIG.
[0110]
First, in step 100, as variable initial setting, a variable p indicating the action of the motor 14, a variable n indicating the cumulative number of samplings, and a position target value pr are set to predetermined initial values (in this embodiment, p = 1, n = 0, pr = 0) is substituted. Thus, the values of these variables are stored in a predetermined area of the RAM 42.
[0111]
In the next step 102, the total number N of acceleration action processes stored in the ROM 40 in advance. A The total number of samplings for constant speed action processing N C , Total sampling number N for deceleration action processing D And total sampling number N of settling action processing S , And then the process proceeds to step 104 to validate the sampling interrupt signal input from the ASIC 30 to the CPU 28 every predetermined sampling period, and thereafter the control start process is terminated.
[0112]
After the processing in step 104, when the sampling interrupt signal is input from the ASIC 30 to the CPU 28 at the timing when the timer 38 of the ASIC 30 measures a predetermined sampling period (0.1 seconds in this embodiment), the CPU 28 Then, the firmware for executing the interrupt entry process is activated.
[0113]
FIG. 10 shows the flow of the interrupt entry process. Hereinafter, the interrupt entry process will be described with reference to FIG.
[0114]
First, in step 110, the value of the variable p stored in a predetermined area of the RAM 42 is read, and in the next step 112, the firmware whose head address is stored in the storage area corresponding to the action (p) of the ROM 40 is executed. Then, this interrupt entry process is terminated.
[0115]
By the process of step 112, for example, when the value of the variable p is “1”, the acceleration action process is executed, and when it is “2”, the constant speed action process is executed.
[0116]
FIG. 11 shows the flow of acceleration action processing executed when the value of the variable p is “1”. Hereinafter, the acceleration action process will be described with reference to FIG.
[0117]
First, in step 130, the array of acceleration action speed target values and the array of acceleration action current target values stored in the ROM 40 are referred to, and the variable n indicating the cumulative number of samplings stored in a predetermined area of the RAM 42 is set. The values of acc_vr (n) and acc_cr (n) corresponding to the values are read and set as the speed target value vr and the current target value cr, respectively.
[0118]
The next step 132 corresponds to the processing by the integrating unit 50 in the first control system 48 shown in FIG. 3, and derives the position target value pr. The position target value pr is a cumulative value obtained by multiplying the speed target value vr by the sampling cycle (interrupt cycle) T, and the initial setting is pr = 0 by the processing of step 100 in FIG. Yes.
[0119]
In the next step 134, the rotation drive of the motor 14 is controlled by executing firmware that performs the same processing as the first control system 48 shown in FIG. , The value of variable n is the total number of samples N in the acceleration action A It is judged whether it is less than. If the determination is affirmative, the process proceeds to step 138, and after the value of the variable n is incremented by 1, this acceleration action process is terminated.
[0120]
On the other hand, if a negative determination is made at step 136, the routine proceeds to step 140, where the value of variable n is set to 0, and then the routine proceeds to step 142, where the value of variable p is incremented by 1, and then this acceleration action process Exit.
[0121]
On the other hand, FIG. 12 shows the flow of constant velocity action processing executed when the value of the variable p is “2”. Hereinafter, the constant speed action process will be described with reference to FIG. In addition, the same step number as FIG. 11 is attached | subjected about the step which performs the process similar to FIG. 11 of the figure, and the description is abbreviate | omitted.
[0122]
First, in step 128, the total sampling number N of the constant speed action process. C Is determined to be 0. If the determination is affirmative, the process proceeds to step 142. If the determination is negative, the process proceeds to step 129. That is, in the motor drive device 10 according to the present embodiment, when the minute line feed operation of the recording medium 22 is performed by the motor 14, the total number of samplings N C In this case, constant velocity action processing is not performed by storing 0 beforehand.
[0123]
In step 129, the rotational speed v 0 Is set as the speed target value vr, 0 is set as the current target value cr, and then the process proceeds to step 132.
[0124]
Thereafter, in step 135, the value of the variable n is set to the total sampling number N in the constant speed action. C It is judged whether it is less than. If the determination is affirmative, the process proceeds to step 138. If the determination is negative, the process proceeds to step 140.
[0125]
Regarding the deceleration action process, an array of speed target values dcc_vr (N D ) And an array dcc_cr (N D ) Is different from the accelerated action process only in that it refers to.
[0126]
On the other hand, FIG. 13 shows the flow of settling action processing executed when the value of the variable p is “4”. Hereinafter, the settling action process will be described with reference to FIG.
[0127]
First, in step 150, a value pr_stop indicating a desired position is set as the target stop position r, and in the next step 152, firmware that performs the same processing as the second control system 70 shown in FIG. 5 for one sampling. , The rotational drive of the motor 14 is controlled, and then the routine proceeds to step 154 where the value of the variable n is the total number of samplings N in the settling action. S It is judged whether it is less than. If the determination is affirmative, the process proceeds to step 156, the value of the variable n is incremented by 1, and the settling action process is terminated.
[0128]
On the other hand, if a negative determination is made in step 154, the process proceeds to step 158, where execution of the interrupt process is stopped by invalidating the sampling interrupt signal input from the ASIC 30 to the CPU 28 every predetermined sampling period. This settling action process is terminated.
[0129]
In the image forming apparatus similar to that shown in FIG. 15, the rotational drive control of the motor is performed by the PI control system until the deceleration action in the image forming apparatus similar to that shown in FIG. An example of the measurement result of the paper feed error when performed by the sliding mode control system is shown. Note that (A) in the figure shows only the temporal transition of the paper feeding speed, and (B) shows the temporal transition of the paper feeding error in addition to the paper feeding speed from the time axis (horizontal). (Axis) is shown enlarged. Further, the unit of the paper feed error in FIG.
[0130]
As shown in the figure, in this case, the paper feed error reaches near 0 in the number (msec) after the paper feed speed reaches near 0, and control is performed only by the conventional PI control system shown in FIG. In comparison, it can be seen that the time required for the settling action can be greatly shortened and the positioning accuracy can be improved.
[0131]
As described above in detail, in the present embodiment, the first control system that controls the rotational drive of the motor so that the recording medium moves at a predetermined speed and with a predetermined accuracy to a midway position to the target stop position of the recording medium; And a second control system that controls the rotational drive of the motor so that the recording medium moves from the midway position to the target stop position at a speed lower than the predetermined speed and higher than the predetermined accuracy. Since the rotational drive of the motor is controlled in two stages, the recording medium can be moved to the target stop position in a short time and with high accuracy without complicated processing.
[0132]
Further, in the present embodiment, since the intermediate position is a position in the vicinity of the target stop position, it is possible to lengthen the control period by the first control system focusing on the rotational speed, and to reduce the movement time of the recording medium. , Can be shortened more.
[0133]
In particular, in the present embodiment, the intermediate position is a position corresponding to the boundary between the motor deceleration action and the settling action, which is convenient for switching the control system.
[0134]
In this embodiment, the case where the PI control system is applied as the first control system and the sliding mode control system is applied as the second control system has been described. However, the present invention is not limited to this. Instead, a high-speed control-oriented control system such as an LQ control system is applied as the first control system of the present invention, and the disturbance is reduced in the control system having a plurality of degrees of freedom including the disturbance as the second control system of the present invention. A high-precision control-oriented control system such as a control system other than the sliding mode control system, which can be canceled out apparently, may be applied. Also in this case, the same effects as in the present embodiment can be obtained.
[0135]
In the present embodiment, the case where the control is shifted to the control by the second control system at the start of the settling action has been described. However, the present invention is not limited to this, for example, immediately before the transition to the settling action or the transition It can also be set as the form which transfers to control by a 2nd control system at the timing immediately after doing. In the case of shifting to the second control system immediately before shifting to the settling action, the positioning accuracy can be increased although the positioning time is longer than in the present embodiment. On the contrary, in the case of shifting to the second control system immediately after shifting to the settling action, the positioning time can be shortened although the positioning accuracy is deteriorated as compared with the present embodiment.
[0136]
Further, the processing flow of each firmware described in the present embodiment (see FIGS. 9 to 13) and the configuration of the control system of the motor drive device 10 (see FIGS. 3 and 5) are examples, and the present invention. Needless to say, changes can be made as appropriate without departing from the spirit of the present invention.
[0137]
Furthermore, the configuration of the motor drive device 10 described in the present embodiment (see FIGS. 1 and 2) is also an example, and it is needless to say that the configuration can be appropriately changed without departing from the gist of the present invention.
[0138]
【The invention's effect】
As described above, according to the motor control device and the motor control method of the present invention, the rotation of the motor is driven so that the movable body moves at a predetermined speed and with a predetermined accuracy to a midway position that reaches the target stop position of the movable body. A first control system that controls the motor, and a second control that controls the rotational drive of the motor so that the moving object moves from the midway position to the target stop position at a speed lower than the predetermined speed and higher than the predetermined accuracy. Since the rotational drive of the motor is controlled in two stages by the two control systems, the moving object is moved to the target stop position in a short time and with high accuracy without complicated processing. It has an excellent effect of being able to.
[Brief description of the drawings]
FIG. 1 is a perspective view showing a schematic configuration of a motor drive device according to an embodiment.
FIG. 2 is a block diagram showing a configuration of an electric system of the motor drive device according to the embodiment.
FIG. 3 is a block diagram showing a configuration of a first control system of the motor drive device according to the embodiment.
FIG. 4 is a graph showing changes in a speed target value and a current target value during acceleration according to the embodiment.
FIG. 5 is a block diagram showing a configuration of a second control system of the motor drive device according to the embodiment.
FIG. 6 is a schematic diagram for explaining the operation of the second control system.
FIG. 7 is a block diagram for explaining the operation of the second control system;
FIG. 8 is a schematic diagram showing a part of a memory map of a ROM according to the embodiment.
FIG. 9 is a flowchart showing a flow of control start processing according to the embodiment.
FIG. 10 is a flowchart showing a flow of interrupt entry processing according to the embodiment.
FIG. 11 is a flowchart showing a flow of acceleration action processing according to the embodiment.
FIG. 12 is a flowchart showing a flow of constant velocity action processing according to the embodiment.
FIG. 13 is a flowchart showing a flow of settling action processing according to the embodiment.
FIG. 14 is a graph for explaining the effect of the embodiment.
FIG. 15 is a graph for explaining problems of the prior art.
[Explanation of symbols]
10 Motor drive device
12 Drive unit, control target
14 Motor
16 Encoder
22 Recording medium (moving object)
28 CPU (control means)
40 ROM
48 First control system
70 Second control system

Claims (5)

被移動体を移動するために回転駆動されるモータの回転駆動を制御するモータ制御装置であって、
前記被移動体の目標停止位置に至る途中位置まで所定速度かつ所定精度で前記被移動体が移動するように前記モータの回転駆動を制御する第1制御系と、前記途中位置から前記目標停止位置まで前記所定速度より低速度かつ前記所定精度より高精度で前記被移動体が移動するように前記モータの回転駆動を制御する第2制御系と、の2つの制御系により2段階で前記モータの回転駆動を制御する制御手段、
を備えたモータ制御装置。
A motor control device that controls rotational driving of a motor that is rotationally driven to move a moving object,
A first control system for controlling the rotational drive of the motor so that the movable body moves at a predetermined speed and with a predetermined accuracy to a midway position to the target stop position of the movable body; and the target stop position from the midway position The second control system controls the rotational drive of the motor so that the object to be moved moves at a speed lower than the predetermined speed and higher than the predetermined accuracy. Control means for controlling the rotational drive;
A motor control device comprising:
前記途中位置を、前記目標停止位置の近傍の位置とした
請求項1記載のモータ制御装置。
The motor control device according to claim 1, wherein the intermediate position is a position in the vicinity of the target stop position.
前記途中位置を、前記モータの減速アクションと整定アクションの境界に対応する位置とした
請求項2記載のモータ制御装置。
The motor control device according to claim 2, wherein the intermediate position is a position corresponding to a boundary between a deceleration action and a settling action of the motor.
前記第1制御系を、比例積分制御系とし、
前記第2制御系を、スライディングモード制御系とした
請求項1乃至請求項3の何れか1項記載のモータ制御装置。
The first control system is a proportional integral control system,
The motor control device according to any one of claims 1 to 3, wherein the second control system is a sliding mode control system.
被移動体を移動するために回転駆動されるモータの回転駆動を制御するモータ制御方法であって、
前記被移動体の目標停止位置に至る途中位置まで所定速度かつ所定精度で前記被移動体が移動するように前記モータの回転駆動を制御する第1制御系と、前記途中位置から前記目標停止位置まで前記所定速度より低速度かつ前記所定精度より高精度で前記被移動体が移動するように前記モータの回転駆動を制御する第2制御系と、の2つの制御系により2段階で前記モータの回転駆動を制御する
モータ制御方法。
A motor control method for controlling rotational driving of a motor that is rotationally driven to move a moving object,
A first control system for controlling the rotational drive of the motor so that the movable body moves at a predetermined speed and with a predetermined accuracy to a midway position to the target stop position of the movable body; and the target stop position from the midway position The second control system controls the rotational drive of the motor so that the object to be moved moves at a speed lower than the predetermined speed and higher than the predetermined accuracy. A motor control method for controlling rotational driving.
JP2003194787A 2003-07-10 2003-07-10 Motor control device and motor control method Pending JP2005031877A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003194787A JP2005031877A (en) 2003-07-10 2003-07-10 Motor control device and motor control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003194787A JP2005031877A (en) 2003-07-10 2003-07-10 Motor control device and motor control method

Publications (1)

Publication Number Publication Date
JP2005031877A true JP2005031877A (en) 2005-02-03

Family

ID=34205833

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003194787A Pending JP2005031877A (en) 2003-07-10 2003-07-10 Motor control device and motor control method

Country Status (1)

Country Link
JP (1) JP2005031877A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7578498B2 (en) 2007-06-13 2009-08-25 Kabushiki Kaisha Toshiba Sheet processing apparatus and sheet processing method
JP2012088064A (en) * 2010-10-15 2012-05-10 Meidensha Corp Speed control device
JP2012205350A (en) * 2011-03-24 2012-10-22 Toshiba Mitsubishi-Electric Industrial System Corp Motor drive system and motor drive method

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7578498B2 (en) 2007-06-13 2009-08-25 Kabushiki Kaisha Toshiba Sheet processing apparatus and sheet processing method
US7744074B2 (en) 2007-06-13 2010-06-29 Kabushiki Kaisha Toshiba Sheet processing apparatus and sheet processing method
US7802781B2 (en) 2007-06-13 2010-09-28 Kabushiki Kaisha Toshiba Sheet processing apparatus and sheet processing method
US7845626B2 (en) 2007-06-13 2010-12-07 Kabushiki Kaisha Toshiba Sheet processing apparatus and sheet processing method
US8016280B2 (en) 2007-06-13 2011-09-13 Kabushiki Kaisha Toshiba Sheet processing apparatus and sheet processing method
US8172213B2 (en) 2007-06-13 2012-05-08 Kabushiki Kaisha Toshiba Sheet processing apparatus and sheet processing method
JP2012088064A (en) * 2010-10-15 2012-05-10 Meidensha Corp Speed control device
JP2012205350A (en) * 2011-03-24 2012-10-22 Toshiba Mitsubishi-Electric Industrial System Corp Motor drive system and motor drive method

Similar Documents

Publication Publication Date Title
US7339342B2 (en) Stepper motor controlling apparatus and pen recorder
CN102904512A (en) Control system and control method for step motor
JPH08179831A (en) Quadrant projection correcting method for full-closed loop system
JP4447891B2 (en) DC motor control apparatus and recording apparatus
JP2018117494A (en) Motor stop control method and motor stop control device
US7135831B2 (en) Method and device for controlling motor
JP2006289939A (en) Print medium carrying device and print medium carrying method
JP4093191B2 (en) Motor control device and printer
US6906488B2 (en) Position control system for use in driving system transmitting driving force of driving source to driven member through power transmission mechanism, image forming apparatus, position control method, program for performing the position control method, and storage medium having the program stored thereon
JP2005031877A (en) Motor control device and motor control method
US20100185340A1 (en) Controller and machining apparatus
US6822411B2 (en) Method and apparatus for controlling motors
JP2011044006A (en) Moving body controller, image forming device, sheet feeder and image reader
JP2005033889A (en) Motor controller
CN116137504A (en) Error correction method for stepping motor, sample analysis device and storage medium
JP5125370B2 (en) Drive control device and drive control method
JP2004040839A (en) Motor control method and motor controller
US8219240B2 (en) Conveyance device and conveyance method
JP5343379B2 (en) Drive control device
US20230347643A1 (en) Pulse generator
KR100849159B1 (en) Printing medium conveying apparatus and printing medium conveying method
JP2706743B2 (en) Control method of belt transmission mechanism
JP3397867B2 (en) Traveling body drive
JP2004163947A (en) Motor drive controller for image reader and image reader equipped with same
JP2006252081A (en) Belt-positioning device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060622

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090409

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090414

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090811