JP4133080B2 - Closed loop pulse train control method and apparatus for stepping motor - Google Patents
Closed loop pulse train control method and apparatus for stepping motor Download PDFInfo
- Publication number
- JP4133080B2 JP4133080B2 JP2002221942A JP2002221942A JP4133080B2 JP 4133080 B2 JP4133080 B2 JP 4133080B2 JP 2002221942 A JP2002221942 A JP 2002221942A JP 2002221942 A JP2002221942 A JP 2002221942A JP 4133080 B2 JP4133080 B2 JP 4133080B2
- Authority
- JP
- Japan
- Prior art keywords
- pulse
- deviation
- command pulse
- rotor position
- secondary command
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 15
- 230000005284 excitation Effects 0.000 claims description 39
- 230000003111 delayed effect Effects 0.000 claims description 17
- 230000008859 change Effects 0.000 claims description 2
- 230000001133 acceleration Effects 0.000 description 19
- 238000012937 correction Methods 0.000 description 19
- 238000010586 diagram Methods 0.000 description 11
- 230000000694 effects Effects 0.000 description 5
- 238000004804 winding Methods 0.000 description 5
- 238000005259 measurement Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- QIVUCLWGARAQIO-OLIXTKCUSA-N (3s)-n-[(3s,5s,6r)-6-methyl-2-oxo-1-(2,2,2-trifluoroethyl)-5-(2,3,6-trifluorophenyl)piperidin-3-yl]-2-oxospiro[1h-pyrrolo[2,3-b]pyridine-3,6'-5,7-dihydrocyclopenta[b]pyridine]-3'-carboxamide Chemical compound C1([C@H]2[C@H](N(C(=O)[C@@H](NC(=O)C=3C=C4C[C@]5(CC4=NC=3)C3=CC=CN=C3NC5=O)C2)CC(F)(F)F)C)=C(F)C=CC(F)=C1F QIVUCLWGARAQIO-OLIXTKCUSA-N 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000001846 repelling effect Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
Images
Landscapes
- Control Of Stepping Motors (AREA)
Description
【0001】
【産業上の利用分野】
本発明は、ステッピングモータの閉ループ駆動において、慣性負荷に対して最も適切な状態でステッピングモータを回転駆動させることができ、脱調や振動のない滑らかな駆動を実現できるステッピングモータの閉ループパルス列制御方法とその装置に関する。
【0002】
【従来の技術】
ステッピングモータは、内周面に所定間隔で交互にN・Sに励磁される励磁歯が形成されている円筒状のステータと、その中を回転し、その外周面にN・Sが交互に励磁されているロータ歯を有するロータとを主構成とするもので、近接するロータ歯と励磁歯との極性が異なる場合は互いに吸引し、同極の場合には互いに反発し合う性質を利用し、励磁歯の極性を次々と切り替えていくことによりロータを連続的にステップ回転させるものである。
【0003】
このようなステップ駆動において、回転トルクは励磁コイルによって励磁されたステータの励磁歯とロータのロータ歯間に発生する磁気エネルギによって生じる。そして、ロータを連続的にステップ回転させるためには、ロータ歯を連続的に引っ張るように回転方向において前記ロータ歯に近接する励磁歯の極性をロータの回転に先行して切り替えて行かねばならない。このロータ歯の位置と先行する励磁歯との角度が偏差である。即ち、ステッピングモータがステップ回転を続けるには、ステータの励磁位置とロータ位置の間に「励磁の進み角度」が必要であり、この「励磁の進み角度」が前記偏差である。減速の場合は逆に前記ロータ歯が近接する励磁歯の極性をロータの回転速度に対して遅らせるように切り替え、ロータのブレーキを掛けていくことになる。換言すれば進み角を減少させることによってロータを減速する。
【0004】
さて、一般的にステッピングモータは、それに接続される負荷をA地点からB地点に移動させるために使用される。この場合、ステッピングモータは一定の回転速度に達するまで加速され、一定の回転速度に達した後、その回転速度を維持し、B地点直前で減速される所謂台形駆動がなされる。このような台形駆動において、ステッピングモータのロータは、停止状態からステップ回転を始め、一定の回転速度に達し、この速度を維持した後、減速して停止する。起動時にはロータを回転させるために大きな回転トルクが必要であり、減速時にはブレーキをかけるために大きな減速トルクが必要となる。このようなトルクは前述のようにステータ・ロータ間の磁気エネルギによって生ずる。
【0005】
前述のように、ステータの各励磁歯は励磁コイルに流れる巻線電流によってN又はSに励磁されるが、励磁コイルのインダクタンスによって生じる「巻線電流の立ち上がり/立ち下がり時間」は励磁の切り替わりを遅らせるものである。高速回転になればなるほど励磁サイクルに占める「巻線電流の立ち上がり/立ち下がり時間」の割合は大きくなる。巻線電流の立ち上がりが1サイクルの励磁に占める時間が長ければ、回転トルクの立ち上がりに時間を要する。また、励磁切り替わり後の残留電流(これは、駆動制御部のスイッチングが切り変わって励磁コイルに流れる励磁電流の方向が切り変わったにも拘わらず、極微小時間、励磁コイルに同じ方向に流れ続けようとする電流のことで、図1(a)の(i3)で示す。)は、ロータの回転に減速トルクとして作用し、回転トルクを減少させる方向に働く。
【0006】
さて、ステッピングモータを回転させる場合、特に起動時或いは加減速時に駆動制御部からの励磁切替に対してロータが追従できなかったり、或いはステッピングモータを含む駆動系や装置の固有振動数と励磁周波数が略一致すると共振を生じ、励磁切替に対するロータの回転位置の偏差が大きくなりすぎて脱調(ロータが振動して正常に回転しなくなる現象)したり振動する。
【0007】
ステッピングモータを脱調させたり振動させることなく起動あるいは加減速させるには、ロータの回転位置がロータの励磁に同期追従できる範囲に保たれるようにステッピングモータの励磁巻線の励磁切り替え速度を制御しなければならない。
【0008】
そこで、従来の方式では慣性負荷が大きいほど、指令パルス発生器側では起動速度を低く設定する、又は加減速レートを下げる、或いは加減速に必要なトルクを下げるような駆動形態を用いることにより脱調を解消している。その他、電流容量の大きなステッピングモータと駆動装置(換言すればよりパワーの大きなステッピングモータ)を選択して加速トルクに余裕を持たせるようなことも行われていた。
【0009】
換言すれば、従来方式では慣性負荷に対してステッピングモータのパワーが十分大きくない場合には脱調を回避するためには過度に加速度(減速度)を小さくしてゆっくり加減速しなければならず、1サイクルの時間を長くせざるを得ないという問題があった。これに対して1サイクルの時間を短くするためには必要以上に大きなパワーのステッピングモータを使用する必要があった。
【0010】
加えて既設の装置において前記問題が発生した場合、駆動部分そのものを取り替える必要がありその対応が非常に困難であった。
【0011】
【発明が解決しようとする課題】
本発明はこのような従来の問題点に鑑みてなされたもので、慣性負荷に対するステッピングモータの制御を自動的に調整することができて脱調や振動のない滑らかな駆動を実現できるステッピングモータの閉ループパルス列制御方法を開発することをその課題とするものである。
【0012】
【課題を解決するための手段】
「請求項1」は本発明に係るステッピングモータ(1)の閉ループパルス列制御方法に関し「ステッピングモータ(1)のロータ位置を示すロータ位置パルス(ENCP)と、ステッピングモータ駆動用の駆動制御部(2)に向けて出力された指令パルス発生器(4)からの1次指令パルス(PGP)を受け取り、前記駆動制御部(2)に2次指令パルス(OUTP)を出力し、前記2次指令パルス(OUTP)に同期してステッピングモータ(1)の励磁シーケンスを切り替えるようにしたステッピングモータ(1)の閉ループパルス列制御方法において、
(a)2次指令パルス(OUTP)とロータ位置パルス(ENCP)との偏差を検出し、ロータ位置パルス(ENCP)に対して前記2次指令パルス(OUTP)が進んだ状態にある進み角側の偏差所定値と、ロータ位置パルス(ENCP)に対して前記2次指令パルス(OUTP)が遅れた状態にある遅れ角側の偏差所定値とによって定められる偏差所定範囲と、2次指令パルス(OUTP)とロータ位置パルス(ENCP)との偏差を比較し、
(b)当該偏差が偏差所定範囲より小さい場合は、1次指令パルス(PGP)をそのまま2次指令パルス(OUTP)として駆動制御部(2)に出力し、
(c)当該偏差が、ロータ位置パルス(ENCP)に対して前記2次指令パルス(OUTP)が進んだ状態に進み角側偏差所定値まで拡大した場合は、指令パルス発生(4)からの1次指令パルス(PGP)を保留すると共にこれを溜まりパルスとしてカウントし、前記1次指令パルス(PGP)と逆方向の高速パルスを2次指令パルス(OUTP)として駆動制御部(2)に出力することによって、2次指令パルス(OUTP)とロータ位置パルス(ENCP)との偏差が所定量に縮小するまで駆動制御部(2)の励磁シーケンスを一時的に引き戻し、
(d)当該偏差が、ロータ位置パルス(ENCP)に対して前記2次指令パルス(OUTP)が遅れた状態にある遅れ角側偏差所定値まで拡大した場合は、指令パルス発生器(4)からの1次指令パルス(PGP)を保留すると共に溜まりパルスが存在する場合にはこれを減算してその差を記憶し、且つ、前記1次指令パルス(PGP)と同方向の高速パルスを2次指令パルス(OUTP)として駆動制御部(2)に出力することによって2次指令パルスとロータ位置パルスとの偏差が所定量に縮小するまで駆動制御部(2)の励磁シーケンスを一時的に進ませ、
(e)ロータ位置パルスに対して2次指令パルスが遅れた状態にある遅れ角側の偏差所定値の絶対値を、ロータ位置パルスに対して2次指令パルスが進んだ状態にある進み角側の偏差所定値の絶対値より小さく設定することにより、ロータ位置パルスに対して2次指令パルスが進んだ状態にある進み角側の偏差所定値と、ロータ位置パルスに対して前記2次指令パルスが遅れた状態にある遅れ角側の偏差所定値とによって定められる偏差所定範囲を偏差0に対して非対称にすると共に、偏差所定範囲を狭めてステッピングモータのロータの振動を制限する」ことを特徴とする。
【0013】
本発明方法では指令パルス発生器(4)からの1次指令パルス(PGP)とロータ位置パルス(ENCP)との偏差が所定範囲を保つようにステッピングモータ(1)を駆動するものである。従来例のようにロータにかかる負荷に対して駆動制御部に入力する指令パルスの入力スピードが早過ぎてロータが追従できない場合、あるいはその逆の場合、脱調を起こすことになるが、本発明方法では前記偏差を所定範囲に維持する事で脱調や振動のない滑らかな駆動を実現できる。即ち、このように処理することで加速時或いは減速時の脱調或いは定速駆動時の振動を抑制して滑らかな加速や定速駆動を実現することができる。
【0015】
「請求項2」は「請求項1」の更なる改良に関し、
(a)1次指令パルス(PGP)の急激な速度変化や、ロータ(1a)の振動発生時に生じるロータ位置パルス(ENCP)の速度ムラによって、ロータ位置パルス(ENCP)と2次指令パルス(OUTP)の偏差が所定範囲の限界値に達した場合、
(b)偏差が縮小する方向に、ロータ(1a)の回転数よりも十分高速な2次指令パルス(OUTP)を駆動制御部(2)に所定量出力し、一時的に励磁シーケンスを実際のロータ位置に引き寄せて、偏差変動がもたらすトルクリップルを低減し、ステッピングモータ(1)の振動を抑制する」ことを特徴とするもので、このように処理することで加速時或いは減速時の脱調或いは定速駆動時の振動を抑制して滑らかな加速や定速駆動を実現することができる。
【0016】
「請求項3」は本発明方法を実施するためのステッピングモータ(1)の閉ループパルス列制御装置に関し「ステッピングモータ(1)の駆動用の1次指令パルス(PGP)を発生する指令パルス発生器(4)と、ステッピングモータ(1)の駆動制御を行う駆動制御部(2)と、ステッピングモータ(1)に設置され、ロータ位置をロータ位置パルス(ENCP)として出力するエンコーダ(3)と、指令パルス発生器(4)と駆動制御部(2)との間に設置され、指令パルス発生器(4)からの1次指令パルス(PGP)を取り込むと共に前記駆動制御部(2)に2次指令パルス(OUTP)を出力するためのパルス列インターフェイス部(5)とで構成されたステッピングモータのパルス列制御装置であって、
パルス列インターフェイス部(5)は、
(a)2次指令パルス(OUTP)とロータ位置パルス(ENCP)との偏差を検出し、ロータ位置パルス(ENCP)に対して前記2次指令パルス(OUTP)が進んだ状態にある進み角側の偏差所定値と、ロータ位置パルス(ENCP)に対して前記2次指令パルス(OUTP)が遅れた状態にある遅れ角側の偏差所定値とによって定められる偏差所定範囲と、2次指令パルス(OUTP)とロータ位置パルス(ENCP)との偏差を比較し、
(b)当該偏差が偏差所定範囲より小さい場合は、1次指令パルス(PGP)をそのまま2次指令パルス(OUTP)として駆動制御部(2)に出力し、
(c)当該偏差が、ロータ位置パルス(ENCP)に対して前記2次指令パルス(OUTP)が進んだ状態に進み角側偏差所定値まで拡大した場合は、指令パルス発生器(4)からの1次指令パルス(PGP)を保留すると共にこれを溜まりパルスとしてカウントし、前記1次指令パルス(PGP)と逆方向の高速パルスを2次指令パルス(OUTP)として駆動制御部(2)に出力することによって、2次指令パルス(OUTP)とロータ位置パルス(ENCP)との偏差が所定量に縮小するまで駆動制御部(2)の励磁シーケンスを一時的に引き戻し、
(d)当該偏差が、ロータ位置パルス(ENCP)に対して前記2次指令パルス(OUTP)が遅れた状態にある遅れ角側偏差所定値まで拡大した場合は、指令パルス発生器(4)からの1次指令パルス(PGP)を保留すると共に溜まりパルスが存在する場合にはこれを減算してその差を記憶し、且つ、前記1次指令パルス(PGP)と同方向の高速パルスを2次指令パルス(OUTP)として駆動制御部(2)に出力することによって2次指令パルスとロータ位置パルスとの偏差が所定量に縮小するまで駆動制御部(2)の励磁シーケンスを一時的に進ませ、
(e)ロータ位置パルスに対して2次指令パルスが遅れた状態にある遅れ角側の偏差所定値の絶対値を、ロータ位置パルスに対して2次指令パルスが進んだ状態にある進み角側の偏差所定値の絶対値より小さく設定することにより、ロータ位置パルスに対して2次指令パルスが進んだ状態にある進み角側の偏差所定値と、ロータ位置パルスに対して前記2次指令パルスが遅れた状態にある遅れ角側の偏差所定値とによって定められる偏差所定範囲を偏差0に対して非対称にすると共に、偏差所定範囲を狭めてステッピングモータのロータの振動を制限する機能を備えている」ことを特徴とする。
【0017】
さて、本発明では加速時における前記偏差維持方法として、1次指令パルス(PGP)の駆動制御部(2)へのパルス入力を一時的に遮断して前記1次指令パルス(PGP)と逆方向のパルスを駆動制御部(2)に入力してロータ位置パルス(ENCP)と2次指令パルス(OUTP)との偏差を一時的に縮小し、当該偏差が所定範囲内になれば指令パルス発生器(4)からの1次指令パルス(PGP)を駆動制御部(2)に出力し、そのままステッピングモータ(1)を回転させる。この時、前述の偏差縮小のために出力が抑制された1次指令パルス(PGP)は「溜まりパルス」として保持されている。
【0018】
このようにして加速時にはロータ(1a)の回転に合わせて2次指令パルス(OUTP)を駆動制御部(2)に出力してやるのであるが、まだロータ(1a)が加速不足で偏差が広がれば再び前述の操作により逆方向のパルスで偏差を縮める。このパルスのループ操作を繰り返すことで慣性負荷に応じた無理のない加速となり、加速時の脱調を回避することができる。(図4参照)
【0019】
逆に回転中のステッピングモータ(1)に対して指令パルス発生器(4)からの1次指令パルス(PGP)が急激な減速に入った場合、慣性負荷やロータ慣性によってロータ(1a)が指令通りの減速に追従できず、ロータ(1a)が2次指令パルス(OUTP)[この2次指令パルス(OUTP)は1次指令パルス(PGP)がパルス列インターフェイス部(5)をそのまま通過して2次指令パルス(OUTP)として出力されている。]を追い越す場合がある。
【0020】
このような場合、一時的にロータ(1a)の回転方向(1次指令パルスの方向)と同一方向に高速パルスを出力して2次指令パルス(OUTP)とロータ位置パルス(ENCP)との偏差を縮める。これにより加速と同様にパルスのループ操作を繰り返すことで脱調すること無理のない減速を行うことができる。(図5参照)
【0021】
また、回転中の振動によって1次指令パルス(PGP)とロータ位置パルス(ENCP)との間で偏差が所定値以上広がった場合でも、同様のループ操作が機能し偏差を縮めることができる。その結果、振動の振幅を低減させることができる。
【0022】
ロータ(1a)が振動することなく回転している状態では、励磁とロータ(1a)は一様が偏差を維持しているが、1次指令パルス(PGP)の急激な速度変化や外乱で一度偏差が変動すると、本来、釣り合うべき偏差位置を中心に偏差が増減し、その結果、回転に必要なトルクに「加速方向に働くトルクリップル」と「減速方向に働くトルクリップル」が重畳した状態となる。
【0023】
本発明では振動によって偏差が所定値に達した場合、高速パルスによってトルクリップルの元となる偏差の変動幅を縮小し、振動を収縮させている。更に、本発明では偏差0に対する進み角偏差所定値(絶対値)より遅れ側偏差所定値(絶対値)を小さくすることにより「即ち、偏差0を中心にして進み角偏差所定値を遅れ側偏差所定値より大きくして非対称とすることにより」偏差変動幅を狭めて振動抑制効果を向上させている。
【0024】
図3は前記偏差と偏差所定範囲(A)〜(−B)の関係を示す説明図である。図3の(A)は進み角側偏差所定値、(−B)は遅れ角側偏差所定値であり、その内側の(a)は逆方向高速パルスにより進み角側偏差所定値(A)以下に引き戻された状態を示し、(b)は順方向高速パルスにより遅れ角側偏差所定値(−B)以下(図中(−B)より右側)に引き戻された状態を示す。
【0025】
また、本実施例の場合、遅れ角側偏差所定値(−B)側に偏差0(遅れ角の引き戻し位置又はその近傍)が存在し、前記偏差0に対して進み角側偏差所定値(A)と遅れ角側偏差所定値(−B)は非対称に位置する。
【0026】
前記偏差が偏差所定範囲(即ち、進み角側偏差所定値(A)或いは遅れ角側偏差所定値(−B))を越えると脱調する。そこで、前記偏差が偏差所定範囲(A)〜(−B)をの進み角側所定値(A)を越えようとすると1次指令パルス(PGP)をそのまま2次指令パルス(OUTP)として駆動制御部(2)にそのまま出力することを一時中断して偏差が縮小する方向の逆方向高速パルスを2次指令パルス(OUTP)として駆動制御部(2)に出力し、偏差を縮小させる。
【0027】
偏差が偏差所定範囲(A)〜(−B)の十分内側(a)〜(-b)に戻れば再度1次指令パルス(PGP)をそのまま2次指令パルス(OUTP)として駆動制御部(2)にそのまま出力する。前記逆方向高速パルスのパルス数が「溜まりパルス」=1次指令パルス(PGP)−2次指令パルス(OUTP)としてカウントされる。
【0028】
逆に偏差0より左側は2次指令パルス(OUTP)がロータ位置パルス(ENCP)より若干遅れている場合(=減速時で、偏差が小さい)で、前記同様偏差が偏差所定範囲内に収まっている場合には偏差が加速側の所定値に達するまでは1次指令パルス(PGP)をそのまま2次指令パルス(OUTP)として駆動制御部(2)にそのまま出力する。前記偏差が偏差所定範囲を越えると脱調する。
【0029】
そこで、前記偏差が遅れ角側偏差所定値(−B)を越えた(=偏差が過小になったり、更にロータ(1a)が、1次指令パルス(PGP)がそのまま出力された2次指令パルス(OUTP)を追い越した)場合、1次指令パルス(PGP)をそのまま2次指令パルス(OUTP)として駆動制御部(2)にそのまま出力することを一時中断して偏差が縮小する方向の順方向高速パルスを2次指令パルス(OUTP)として駆動制御部(2)に出力し、偏差を縮小させる。
【0030】
偏差が遅れ角側偏差所定値(−B)より十分内側(-b)に戻れば再度1次指令パルス(PGP)をそのまま2次指令パルス(OUTP)として駆動制御部(2)にそのまま出力する。前述の順方向高速パルスは「溜まりパルス」が存在する場合、この「溜まりパルス」を解消する方向に出力される。
【0031】
「遅れ角側偏差」の設定値を「進み角側」にするほどブレーキ作用はソフトになると共に「溜まりパルス」の吐き出しが早く完了する。これに対して偏差を「遅れ角側」にすれば、換言すれば遅れ角側偏差の大きさを小さくすればそれだけブレーキ作用が強くなる。
【0032】
【発明の実施の態様】
以下、本発明を図示実施例に従って説明する。図1(b)は本発明の概念図で、指令パルス発生器(4)、駆動制御部(2)、ステッピングモータ(1)で構成される基本的なシステム上において、ステッピングモータ(1)にステッピングモータ(1)のロータ位置を検出するエンコーダ(3)[一般的には、回転軸を接続して同軸としたロータリエンコーダが使用される]を接続し、且つ指令パルス発生器(4)と駆動制御部(2)の間のパルス列インターフェイス部(5)に本発明にかかるパルス列制御回路(5a)を設けたもので、エンコーダ(3)が出力したロータ位置検出パルス(ENCP)を本発明のパルス列制御回路(5a)にフィードバックすることによって閉ループを構成する。
【0033】
前記パルス列制御回路(5a)を有するパルス列インターフェイス部(5)は、それ自体独立した回路として従来の指令パルス発生器(4)と駆動制御部(2)との間に設置してもよいし、指令パルス発生器(4)或いは駆動制御部(2)内に一体的に組み込んでもよい。また、適用されるステッピングモータ(1)は5相モータに限られるものではないが、ここでは5相モータをその代表例として説明する。
【0034】
指令パルス発生器(4)は、ステッピングモータ(1)を正転方向に回転させる順方向1次指令パルス(CWPGP)または逆転方向に回転させる逆方向1次指令出力パルス(CCWPGP)を台形駆動に合わせて出力するもので、起動初期ではパルス出力スピードは遅く、ステッピングモータ(1)の回転が加速するにつれて次第に高速になり、回転スピードが一定になった場合、該高速出力を維持し、減速時には次第に出力速度が低下する。なお、1次指令パルスの方向を特に指定する必要のない場合、単に(PGP)とする。
【0035】
図2は前記パルス列インターフェイス部(5)に組み込まれているパルス列制御回路(5a)のブロック回路図で、出力方向判別部(51)、出力セレクト部(52)、補正スタート判別部(53)、PG−OUT偏差カウンタ(54)、ENC周期計測回路(55)、OUT−ENC偏差カウンタ(56)、高速パルス発生回路(57)、補正パルス発生回路(58)、方向セレクト部(59)とOUTP周期タイマ(60)とで構成されている。各パーツの機能は順次説明していく。
【0036】
出力セレクト部(52)は、1次指令パルス(PGP)が入力し、これをそのまま2次指令パルス(OUTP)として或いは高速パルス発生回路(57)の入力を受け、偏差適正化処理するための2次指令パルス(OUTP)を出力したり、補正パルス発生回路(58)の入力を受け、「溜まりパルス」解消のための補正パルスを2次指令パルス(OUTP)として出力する機能を有する。
【0037】
高速パルス発生回路(57)は高速パルスを発生させ、前記出力セレクト部(52)に過剰に拡大又は縮小した偏差を適正化するための高速パルスを供給する働きを有する。同様に補正パルス発生回路(58)は「溜まりパルス」を解消するための補正パルスを発生させ、前記出力セレクト部(52)に補正パルスを供給する働きを有する。
【0038】
出力方向判別部(51)は、指令パルス発生器(4)からの順方向1次指令パルス(CWPGP)又は逆方向1次指令パルス(CCWPGP)を受け取り、その方向を認識して方向セレクト部(59)から出力される2次指令パルス(OUTP)の方向[即ち、順方向(=正転方向)か逆方向(逆転方向)か]を方向セレクト部(59)に指示する働きや、過剰に拡大又は縮小した偏差を適正化するための高速パルスを元にして出力された2次指令パルス(OUTP)の方向を方向セレクト部(59)に指示する働きを有する。
【0039】
方向セレクト部(59)は、前記出力セレクト部(52)からの2次指令パルス(OUTP)を受け取り、出力方向判別部(51)の出力方向指示に従って2次指令パルス(OUTP)を出力する働きとPG−OUT偏差カウンタ(54)、OUT−ENC偏差カウンタ(56)及びOUTP周期タイマ(60)に対して2次指令パルス(OUTP)を分岐出力する働きを有する。
【0040】
ENC周期計測回路(55)は、ロータ位置パルス(ENCP)の入力を受け、ロータ位置パルス(ENCP)のパルス発生周期を計測する働きを有し、偏差所定範囲をOUT−ENC偏差カウンタ(56)に指令する働きを有する。
【0041】
OUT−ENC偏差カウンタ(56)は、ロータ位置パルス(ENCP)と方向セレクト部(59)からの2次指令パルス(OUTP)の入力を受け、両者(OUTP)(ENCP)の偏差をカウントし、前記ENC周期計測回路(55)からの指令に基づく偏差所定範囲に前記偏差が入っているかそれともそれを越える状態にあるのかを検出し、偏差が偏差所定範囲限或いは偏差所定範囲を越えた場合、高速パルスフラグを出力セレクト部(52)に出力して前記偏差所定範囲を超えた状態を解消させ、偏差所定範囲内になるように出力セレクト部(52)を制御する働きを有する。
【0042】
OUTP周期タイマ(60)は、常時方向セレクト部(59)から出力される2次指令パルス(OUTP)の周期を計測している。
【0043】
PG−OUT偏差カウンタ(54)は、1次指令パルス(PGP)と2次指令パルス(OUTP)の入力を受け、「溜まりパルス」をカウントする働きを有する。
【0044】
補正スタート判別部(53)はOUTP周期タイマ(60)の計測結果を受け、PG−OUT偏差カウンタ(54)から送られてきた「溜まりパルス」のパルス数に合わせて補正パルスフラグを出力セレクト部(52)に出力する働きを有する。また、補正パルスフラグの出力中に1次指令パルス(PGP)が補正スタート判別部(53)に入力すると直ちに補正パルスモードを停止し偏差制御モードに復帰する。
【0045】
方向セレクト部(59)からの2次指令パルス(OUTP)が入力される駆動制御部(2)は、直流電源電圧から供給される直流電流をパルス幅変調制御するパルス幅変調回路(21)、前記パルス幅変調回路(21)によって直流電流をチョッピング制御する例えばトランジスタあるいはFETで構成されたチョッパ(22)、前記チョッパ(22)に直列接続されたリアクトル(23)、駆動制御部(2)の(+)側と接地側(GND)との間に接続され、前記リアクトル(23)と協働してチョッピング制御された駆動電流を平滑化する平滑コンデンサ(C1)、ステッピングモータ(1)を駆動制御する出力段トランジスタ(Tr1)(Tr2)〜(Tr9)(Tr10)にて構成されるパワー回路(P)、励磁シーケンスに従って出力段トランジスタ(Tr1)(Tr2)〜(Tr9)(Tr10)のベースにスイッチング信号を入力するカウンタ・励磁シーケンス発生回路(24)、及び接地側(GND)に接続され、駆動電流を検出する一対のセンス抵抗(R1)(R2)とで構成されている。
【0046】
前記カウンタ・励磁シーケンス発生回路(24)には前記インターフェイス部(5)からの2次指令パルス(OUTP)が入力しており、同回路(24)のカウンタ(図示せず)が前記2次指令パルス(OUTP)をカウントして励磁シーケンスを実行するようになっている。
【0047】
ステッピングモータ(1)の動作時には、指令パルス発生器(4)から正転或いは逆転方向の1次指令パルス(CWPGP)又は(CCWPGP)が出力される。以下、正転の場合を代表例として説明し、以下単に(PGP)と表記する。
【0048】
ステッピングモータ(1)の立ち上がり時には指令パルス発生器(4)から出力される1次指令パルス(PGP)の発生周期は遅く、時間の経過と共に加速される。一定時間経過後、定速となり、停止位置近くになると減速され、最後に停止するように出力される(図6の破線参照)。
【0049】
指令パルス発生器(4)から出力された1次指令パルス(PGP)は、前述のようにインターフェイス部(5)のパルス列制御回路(5a)の出力方向判別部(51)と出力セレクト部(52)に入力され、出力方向判別部(51)にて入力した1次指令パルス(PGP)の方向が判別され、その情報が方向セレクト部(59)に出力され、出力セレクト部(52)から方向セレクト部(59)を通って駆動制御部(2)に出力される2次指令パルス(OUTP)の方向を定める。
【0050】
前記出力セレクト部(52)からの2次指令パルス(OUTP)は、前述のように前記方向セレクト部(59)に入力し、方向セレクト部(59)から駆動制御部(2)に出力されると共にPG−OUT偏差カウンタ(54)、OUT−ENC偏差カウンタ(56)とOUTP周期タイマ(60)に分岐入力される。
【0051】
このOUT−ENC偏差カウンタ(56)にはエンコーダ(3)からのロータ位置パルス(ENCP)が入力をしており、前記2次指令パルス(OUTP)とロータ位置パルス(ENCP)との偏差をカウントしている。偏差については前述の通りである。前記偏差が所定範囲内の場合は、OUT−ENC偏差カウンタ(56)から高速パルスフラグ(偏差が所定範囲を越えて拡大或いは縮小した場合に出力セレクト部(52)に出力される信号である。内容は後に説明する。)が出力されず、1次指令パルス(PGP)はそのまま2次指令パルス(OUTP)として方向セレクト部(59)に出力され、前記出力方向判別部(51)の指示に従って出力される。この場合は正転であるから正転方向の2次指令パルス(OUTP)が駆動制御部(2)に出力される。
【0052】
ステッピングモータ(1)のロータ(1a)にはエンコーダ(3)が直結されているので、ロータ(1a)の回転角度はエンコーダ(3)にて時間遅れなくロータ位置パルス(ENCP)として出力される。このロータ位置パルス(ENCP)は前述のようにOUT−ENC偏差カウンタ(56)に入力されている。
【0053】
立ち上がり時のようにステッピングモータ(1)のロータ(1a)にかかる慣性負荷がステッピングモータ(1)のパワーと比較して大きく、前記2次指令パルス(OUTP)に対してロータ(1a)が追従できなくなると、その遅れはエンコーダ(3)のロータ位置パルス(ENCP)の遅れとなって現れる。そして両者の差違はOUT−ENC偏差カウンタ(56)にてその偏差がカウントされ、その偏差が所定範囲限或いはそれ以上となったとき、OUT−ENC偏差カウンタ(56)から出力セレクト部(52)に高速パルスフラグが出力される(図6実線参照)。
【0054】
また、ロータ位置パルス(ENCP)はENC周期計測回路(55)に入力しており、ロータ位置パルス(ENCP)の出力周期を検出し偏差の所定範囲をOUT−ENC偏差カウンタ(56)に出力するようになっており、偏差所定範囲にて比較が行われている。
【0055】
OUT−ENC偏差カウンタ(56)から高速パルスフラグが出力セレクト部(52)に出力されると、それまで遮断していた高速パルス発生回路(57)から出力された高速パルスを取り込むと同時に指令パルス発生器(4)からの1次指令パルス(PGP)がそのまま出力セレクト部(52)を通過して1次指令パルス(PGP)と同一の2次指令パルス(OUTP)となって出力されるのを遮断し、前記高速パルスを2次指令パルス(OUTP)として方向セレクト部(59)に出力する。
【0056】
OUT−ENC偏差カウンタ(56)には出力方向判別部(51)に方向セレクト部(59)から出力される2次指令パルス(OUTP)として出力された高速パルスの方向を指令する信号(2次指令パルス出力方向指令信号)が出力されており、前記方向セレクト部(59)から2次指令パルス(OUTP)として出力される高速パルスは、前記2次指令パルス出力方向指令信号に従って出力された出力方向判別部(51)の出力に従って前記偏差が縮小する方向(逆方向)に出力される。
【0057】
そして、前述のように偏差が所定範囲内に収まれば高速パルスの入力を遮断し、再度1次指令パルス(PGP)を出力セレクト部(52)、方向セレクト部(59)を通してそのまま2次指令パルス(OUTP)として駆動制御部(2)に出力することになる。以上のようにして偏差が所定範囲内に収まる状態を保持して加速していく(図6の進み角制御部分の実線部分参照)。図7(a)(b)は前記逆方向の高速パルスを繰り返し出力して偏差が所定範囲内に収まるようにしつつロータ(1a)を円滑に加速している状態を示す。従って、パルス出力の位置は段状の線で示される。
【0058】
一方、出力セレクト部(52)から分岐出力された2次指令パルス(OUTP)は前述のようにPG−OUT偏差カウンタ(54)に入力しており、2次指令パルス(OUTP)として出力された高速パルスの数をカウントし、これを「溜まりパルス」として記憶している。
【0059】
ロータ(1a)が一定の回転速度に達すると、その状態を保持し定速回転を行う。この定速回転において、何らかの原因によりロータ(1a)の振動が発生し回転ムラを起こした場合、2次指令パルス(OUTP)に対してロータ(1a)が遅れ(又は進み)、2次指令パルス(OUTP)とロータ位置パルス(ENCP)との偏差が所定範囲限或いはこれを越えて拡大(又は縮小)する場合がある。拡大する場合、前述したように1次指令パルス(PGP)がそのまま出力セレクト部(52)を通過して2次指令パルス(OUTP)として出力されることを停止し、2次指令パルス(OUTP)に対して遅れを生じたロータ(1a)の位置に合うように高速パルスを方向セレクト部(59)から逆方向2次指令パルス(OUTP)として出力し、2次指令パルス(OUTP)とロータ位置パルス(ENCP)との偏差が一定範囲内に入るように制御する。
【0060】
逆にロータ(1a)が進みすぎて2次指令パルス(OUTP)とロータ位置パルス(ENCP)との偏差が所定範囲限又は遅れ角側に拡大した場合、前記偏差を所定範囲内に入れるために、前述同様、1次指令パルス(PGP)がそのまま出力セレクト部(52)を通過して2次指令パルス(OUTP)として出力されることを停止し、2次指令パルス(OUTP)に対して進み過ぎたロータ(1a)の位置に合うように高速パルスを出力セレクト部(52)に出力しこれを2次指令パルス(OUTP)として方向セレクト部(59)に出力し、方向セレクト部(59)においてこの高速パルスを順方向の2次指令パルス(OUTP)として出力し、2次指令パルス(OUTP)とロータ位置パルス(ENCP)との偏差が一定範囲内に戻るように制御する。
【0061】
このとき、前記順方向の2次指令パルス(OUTP)がPG−OUT偏差カウンタ(54)に入力し、前述の「溜まりパルス=逆方向の2次指令パルス(OUTP)をカウントしたもの」が存在する場合には減算されることになり、PG−OUT偏差カウンタ(54)にはその差が記憶されることになる。このようにして、「溜まりパルス」の吐き出しが行われる。定速駆動においてこのような偏差維持制御が行われるので、ロータ(1a)の回転ムラが抑制され振動がなくなる。
【0062】
次に減速領域になると、ロータ(1a)にブレーキをかけながら次第にその回転速度を低下させていくことになる。この場合、前述のように慣性負荷のためにロータ(1a)が2次指令パルス(OUTP)に対して早く回転しすぎ、ロータ位置パルス(ENCP)と2次指令パルス(OUTP)との偏差が遅れ角側に拡大することがある。このような状態が生起されると脱調の原因となる。
【0063】
そこで、前述のようにロータ位置パルス(ENCP)と2次指令パルス(OUTP)との偏差を常時監視しているOUT−ENC偏差カウンタ(56)によって偏差が遅れ角側に拡大した場合には、直ちに前述同様高速パルスフラグが出力セレクト部(52)に出力され、1次指令パルス(PGP)の2次指令パルス(OUTP)としての出力を遮断すると共に高速パルス発生回路(57)の高速パルスを方向セレクト部(59)に出力し、順方向2次指令パルス(OUTP)として駆動制御部(2)に出力して前記偏差を所定の偏差範囲に引き戻す(図6の遅れ角制御部分の実線部分参照)。
【0064】
図8(a)(b)は前記順方向の高速パルスを繰り返し出力して偏差が所定範囲内に収まるようにしつつロータ(1a)を円滑に減速している状態を示す。従って、パルス出力の位置は段状の線で示される。
【0065】
OUTP周期タイマ(60)には常時方向セレクト部(59)から2次指令パルス(OUTP)が分岐して入力しており、2次指令パルス(OUTP)の出力周期を監視している。従って、「溜まりパルス」が存在する場合に、停止位置直前のどの時点で解消するかを知ることができる。OUTP周期タイマ(60)の計測結果が「溜まりパルス」解消時点に達すると、補正スタート判別部(53)は「溜まりパルス」解消のため補正パルスフラグを「溜まりパルス」数だけ出力セレクト部(52)に出力する。
【0066】
補正パルスフラグが出力されると、出力セレクト部(52)は1次指令パルス(PGP)のパルス出力を一時的に遮断して補正パルス発生回路(58)から出力されている補正パルスを取り込み、前記「溜まりパルス」に等しい数の補正パルスを2次指令パルス(OUTP)として方向セレクト部(59)に出力し、出力方向判別部(51)の指令に従って(この場合では順方向として)これを駆動制御部(2)に出力し「溜まりパルス」が解消する。(図9「溜まりパルス補正参照」)
【0067】
(実施例‐1)本発明における加速時の脱調防止効果を示す。
図10(a)は本発明を使用しなかった場合で立ち上がりに脱調を生じている。図10(b)は本発明を適用した場合で脱調を起こすことなくスムーズに立ち上がり、定速運転時においても大きな回転ムラを発生せず、スムーズに減速した後、補正パルスが出力し一定位置に停止している。
【0068】
(実施例‐2)本発明における減速時の脱調防止効果を示す。
図11(a)は本発明を使用しなかった場合で減速時に脱調を生じている。図11(b)は本発明を適用した場合で脱調を起こすことなくスムーズに減速している。
【0069】
(実施例‐3)本発明における定速運転時の振動抑制効果を示す。
図12(a)は本発明を使用しなかった場合で定速駆動時に大きな振動を生じている。また減速から停止に至る間まで大きな振動生じている。図12(b)は本発明を適用した場合で定速運転及び停止直前の低速運転において振動が効果的に抑制されている。
【0070】
(実施例‐4)本発明における定速運転時の他の振動抑制効果の例を示す。
図13(a)は本発明を使用しなかった場合で定速駆動時に大きな振動を生じている。図13(b)は本発明を適用した場合で定速運転において振動が効果的に抑制されている。
【0071】
【発明の効果】
本発明はステッピングモータのロータ位置を示すロータ位置パルスと駆動制御部に出力される2次指令パルスとの偏差を検出して当該偏差が所定範囲になるように駆動制御部への2次指令パルスの出力を制御するようにしているので、ロータの慣性負荷の如何に拘わらずステッピングモータの加速時・定速運転時・減速時の駆動制御を自動的に調整することができて脱調や振動のない滑らかな駆動を実現できる。
【0072】
そしてこのように指令パルス発生器と駆動制御部との間にパルス列インターフェイス部を設けているので、指令パルス発生器や駆動制御部と独立して設置することができ、既設の駆動装置にも適用することができるという利点がある。
【図面の簡単な説明】
【図1】本発明のブロック回路図
【図2】図1のインターフェース部のパルス列制御回路のブロック回路図
【図3】本発明における偏差所定範囲の説明図面
【図4】図3における進み角側偏差の説明図面
【図5】図3における遅れ角側偏差の説明図面
【図6】従来の台形駆動と本発明方法を採用した場合の台形駆動の比較説明図面
【図7】本発明の加速時におけるパルス発生器の1次指令パルス出力上の位置、2次指令パルス出力上の位置、ロータ位置の関係及び逆方向高速パルスの発生時点との関係を示すグラフ
【図8】本発明の減速時におけるパルス発生器の1次指令パルス出力上の位置、2次指令パルス出力上の位置、ロータ位置の関係及び順方向高速パルスの発生時点との関係を示すグラフ
【図9】一定速駆動において本発明において溜まりパルス補正を行う場合の説明図面
【図10】従来例と本発明の実施例1における駆動波形の比較図面
【図11】従来例と本発明の実施例2における駆動波形の比較図面
【図12】従来例と本発明の実施例3における駆動波形の比較図面
【図13】従来例と本発明の実施例4における駆動波形の比較図面
【符号の説明】
(1)ステッピングモータ
(2)駆動制御部
(3)エンコーダ
(4)指令パルス発生器
(PGP) 1次指令パルス
(OUTP) 2次指令パルス
(ENCP) ロータ位置パルス[0001]
[Industrial application fields]
The present invention relates to a stepping motor closed loop pulse train control method capable of rotating a stepping motor in a state most suitable for an inertia load in a closed loop driving of a stepping motor and realizing smooth driving without step-out or vibration. And the device.
[0002]
[Prior art]
A stepping motor has a cylindrical stator having excitation teeth that are alternately excited to N and S at predetermined intervals on the inner circumferential surface, and rotates inside the stator, and N and S are alternately excited on the outer circumferential surface. In the case where the polarity of the adjacent rotor teeth and the excitation teeth are different, they are attracted to each other, and in the case of the same polarity, utilizing the property of repelling each other, By successively switching the polarity of the excitation teeth, the rotor is continuously stepped.
[0003]
In such step drive, the rotational torque is generated by magnetic energy generated between the exciting tooth of the stator excited by the exciting coil and the rotor tooth of the rotor. In order to continuously rotate the rotor in steps, the polarity of the excitation teeth adjacent to the rotor teeth in the rotation direction must be switched prior to the rotation of the rotor so as to continuously pull the rotor teeth. The angle between the position of this rotor tooth and the preceding excitation tooth is a deviation. That is, in order for the stepping motor to continue the step rotation, an “excitation advance angle” is required between the excitation position of the stator and the rotor position, and this “excitation advance angle” is the deviation. In the case of deceleration, on the contrary, the polarity of the excitation tooth close to the rotor tooth is switched so as to be delayed with respect to the rotational speed of the rotor, and the brake of the rotor is applied. In other words, the rotor is decelerated by reducing the advance angle.
[0004]
Now, a stepping motor is generally used to move a load connected thereto from point A to point B. In this case, the stepping motor is accelerated until reaching a constant rotational speed, and after reaching the constant rotational speed, the so-called trapezoidal drive is performed in which the rotational speed is maintained and decelerated immediately before point B. In such trapezoidal drive, the rotor of the stepping motor starts step rotation from the stopped state, reaches a constant rotational speed, maintains this speed, and then decelerates and stops. At startup, a large rotational torque is required to rotate the rotor, and at the time of deceleration, a large deceleration torque is required to apply the brake. Such torque is generated by the magnetic energy between the stator and the rotor as described above.
[0005]
As described above, each exciting tooth of the stator is excited to N or S by the winding current flowing in the exciting coil, but the “winding current rise / fall time” caused by the inductance of the exciting coil is switched between excitations. It is something that delays. The higher the rotation speed, the larger the ratio of the “winding current rise / fall time” to the excitation cycle. If the rising time of the winding current occupies one cycle of excitation, it takes time for the rotating torque to rise. In addition, the residual current after switching the excitation (this continues to flow in the same direction to the excitation coil for a very short time, even though the switching of the drive control unit has changed and the direction of the excitation current flowing to the excitation coil has changed. (I3) in FIG. 1 (a) indicates the current to be applied, and acts as a deceleration torque on the rotation of the rotor and acts in a direction to reduce the rotation torque.
[0006]
Now, when rotating a stepping motor, the rotor cannot follow the excitation switching from the drive control unit, especially at startup or acceleration / deceleration, or the natural frequency and excitation frequency of the drive system and device including the stepping motor are When they substantially coincide, resonance occurs, and the deviation of the rotational position of the rotor with respect to excitation switching becomes too large, causing step-out (a phenomenon in which the rotor does not vibrate due to vibration) or vibrates.
[0007]
To start or accelerate / decelerate the stepping motor without stepping out or vibrating, the excitation switching speed of the excitation winding of the stepping motor is controlled so that the rotational position of the rotor is kept in a range that can follow the excitation of the rotor synchronously. Must.
[0008]
Therefore, in the conventional method, the higher the inertia load, the lower the start speed on the command pulse generator side, or the drive mode that lowers the acceleration / deceleration rate or lowers the torque required for acceleration / deceleration. The tone has been eliminated. In addition, a stepping motor having a large current capacity and a driving device (in other words, a stepping motor having a higher power) are selected to allow a margin for acceleration torque.
[0009]
In other words, in the conventional method, if the power of the stepping motor is not sufficiently large with respect to the inertia load, in order to avoid the step-out, the acceleration (deceleration) must be excessively reduced to accelerate and decelerate slowly. There was a problem that the time of one cycle had to be lengthened. On the other hand, in order to shorten the time of one cycle, it was necessary to use a stepping motor having a larger power than necessary.
[0010]
In addition, when the above problem occurs in the existing apparatus, it is necessary to replace the drive part itself, and it is very difficult to cope with it.
[0011]
[Problems to be solved by the invention]
The present invention has been made in view of the above-described conventional problems, and is a stepping motor that can automatically adjust the control of the stepping motor with respect to the inertial load and can realize smooth driving without step-out and vibration. The task is to develop a closed-loop pulse train control method.
[0012]
[Means for Solving the Problems]
“
(A) A lead angle side where a deviation between the secondary command pulse (OUTP) and the rotor position pulse (ENCP) is detected and the secondary command pulse (OUTP) is advanced with respect to the rotor position pulse (ENCP). And a predetermined deviation range defined by a predetermined deviation value on the delay angle side in which the secondary command pulse (OUTP) is delayed with respect to the rotor position pulse (ENCP), and a secondary command pulse ( OUTP) and the rotor position pulse (ENCP) are compared,
(B) The deviation isdeviationIf smaller than the predetermined range, the primary command pulse (PGP) is output as it is to the drive control unit (2) as the secondary command pulse (OUTP).
(C) When the deviation is advanced to the state where the secondary command pulse (OUTP) has advanced with respect to the rotor position pulse (ENCP) and is increased to a predetermined value on the angular side deviation, 1 from the command pulse generation (4) While holding the next command pulse (PGP)This is counted as a pool pulseThe secondary command pulse (OUTP) and the rotor position pulse (ENCP) are output as a secondary command pulse (OUTP) to the drive control unit (2) by outputting a high-speed pulse in the direction opposite to the primary command pulse (PGP). The excitation sequence of the drive control unit (2) is temporarily pulled back until the deviation from is reduced to a predetermined amount,
(D) When the deviation has expanded to a predetermined value on the delay angle side deviation in which the secondary command pulse (OUTP) is delayed with respect to the rotor position pulse (ENCP), the command pulse generator (4) While holding the primary command pulse (PGP)If there are any accumulated pulses, subtract them and store the difference, andBy outputting a high-speed pulse in the same direction as the primary command pulse (PGP) as a secondary command pulse (OUTP) to the drive control unit (2), the deviation between the secondary command pulse and the rotor position pulse becomes a predetermined amount. The excitation sequence of the drive controller (2) is temporarily advanced until it is reduced,
(E) The absolute value of the predetermined deviation value on the delay angle side when the secondary command pulse is delayed with respect to the rotor position pulse is the advance angle side when the secondary command pulse is advanced with respect to the rotor position pulse. By setting the deviation smaller than the absolute value of the predetermined deviation value, the deviation value on the lead angle side where the secondary command pulse has advanced with respect to the rotor position pulse and the secondary command pulse with respect to the rotor position pulse The predetermined deviation range determined by the predetermined deviation value on the delay angle side in the state of being delayed is made asymmetric with respect to the
[0013]
In the method of the present invention, the stepping motor (1) is driven so that the deviation between the primary command pulse (PGP) from the command pulse generator (4) and the rotor position pulse (ENCP) is kept within a predetermined range. As in the conventional example, when the input speed of the command pulse input to the drive control unit with respect to the load applied to the rotor is too fast to follow the rotor, or vice versa, a step-out occurs. In the method, smooth driving without step-out or vibration can be realized by maintaining the deviation within a predetermined range.That is, by performing such processing, it is possible to realize smooth acceleration and constant speed driving by suppressing step-out during acceleration or deceleration or vibration during constant speed driving.
[0015]
"Claim 2Is a further improvement of “
(A) The rotor position pulse (ENCP) and the secondary command pulse (OUTP) are caused by a rapid speed change of the primary command pulse (PGP) or unevenness in the speed of the rotor position pulse (ENCP) generated when vibration of the rotor (1a) occurs. ) Reaches the limit of the specified range,
(B) A secondary command pulse (OUTP) that is sufficiently faster than the rotational speed of the rotor (1a) is output to the drive control unit (2) by a predetermined amount in the direction in which the deviation is reduced, and the excitation sequence is temporarily It is characterized by reducing the torque ripple caused by deviation fluctuations by attracting the rotor position and suppressing the vibration of the stepping motor (1). By performing this process, the step-out during acceleration or deceleration is reduced. Alternatively, smooth acceleration and constant speed driving can be realized by suppressing vibration during constant speed driving.
[0016]
"
The pulse train interface (5)
(A) A lead angle side where a deviation between the secondary command pulse (OUTP) and the rotor position pulse (ENCP) is detected and the secondary command pulse (OUTP) is advanced with respect to the rotor position pulse (ENCP). And a predetermined deviation range defined by a predetermined deviation value on the delay angle side in which the secondary command pulse (OUTP) is delayed with respect to the rotor position pulse (ENCP), and a secondary command pulse ( OUTP) and the rotor position pulse (ENCP) are compared,
(B) The deviation isdeviationIf smaller than the predetermined range, the primary command pulse (PGP) is output as it is to the drive control unit (2) as the secondary command pulse (OUTP).
(C) When the deviation is advanced to a state in which the secondary command pulse (OUTP) has advanced with respect to the rotor position pulse (ENCP) and expanded to a predetermined angle side deviation, the command pulse generator (4) While holding the primary command pulse (PGP)This is counted as a pool pulseThe secondary command pulse (OUTP) and the rotor position pulse (ENCP) are output as a secondary command pulse (OUTP) to the drive control unit (2) by outputting a high-speed pulse in the direction opposite to the primary command pulse (PGP). The excitation sequence of the drive control unit (2) is temporarily pulled back until the deviation from is reduced to a predetermined amount,
(D) When the deviation has expanded to a predetermined value on the delay angle side deviation in which the secondary command pulse (OUTP) is delayed with respect to the rotor position pulse (ENCP), the command pulse generator (4) While holding the primary command pulse (PGP)If there are any accumulated pulses, subtract them and store the difference, andBy outputting a high-speed pulse in the same direction as the primary command pulse (PGP) as a secondary command pulse (OUTP) to the drive control unit (2), the deviation between the secondary command pulse and the rotor position pulse becomes a predetermined amount. The excitation sequence of the drive controller (2) is temporarily advanced until it is reduced,
(E) The absolute value of the predetermined deviation value on the delay angle side when the secondary command pulse is delayed with respect to the rotor position pulse is the advance angle side when the secondary command pulse is advanced with respect to the rotor position pulse. By setting the deviation smaller than the absolute value of the predetermined deviation value, the deviation value on the lead angle side where the secondary command pulse has advanced with respect to the rotor position pulse and the secondary command pulse with respect to the rotor position pulse The predetermined deviation range determined by the predetermined deviation value on the delay angle side in the state of being delayed is made asymmetric with respect to the
[0017]
In the present invention, as the method of maintaining the deviation during acceleration, the pulse input to the drive control unit (2) of the primary command pulse (PGP) is temporarily cut off to reverse the direction of the primary command pulse (PGP). Is input to the drive control unit (2) to temporarily reduce the deviation between the rotor position pulse (ENCP) and the secondary command pulse (OUTP), and if the deviation falls within the specified range, the command pulse generator The primary command pulse (PGP) from (4) is output to the drive controller (2), and the stepping motor (1) is rotated as it is. At this time, the primary command pulse (PGP) whose output is suppressed to reduce the above-described deviation is held as a “dwell pulse”.
[0018]
In this way, during acceleration, the secondary command pulse (OUTP) is output to the drive control unit (2) in accordance with the rotation of the rotor (1a). However, if the rotor (1a) is still underaccelerated and the deviation is widened again, The deviation is reduced by the reverse pulse by the above-described operation. By repeating this pulse loop operation, it is possible to accelerate according to the inertial load and to avoid step-out during acceleration. (See Figure 4)
[0019]
Conversely, when the primary command pulse (PGP) from the command pulse generator (4) suddenly decelerates to the rotating stepping motor (1), the rotor (1a) commands the inertial load or rotor inertia. The rotor (1a) is not able to follow the normal deceleration, the secondary command pulse (OUTP) [This secondary command pulse (OUTP) is the primary command pulse (PGP) that passes through the pulse train interface (5) as it is It is output as the next command pulse (OUTP). ] May be overtaken.
[0020]
In such a case, the deviation between the secondary command pulse (OUTP) and the rotor position pulse (ENCP) is temporarily output in the same direction as the rotation direction of the rotor (1a) (the direction of the primary command pulse). Shrink. Accordingly, it is possible to perform deceleration without undue stepping out by repeating the pulse loop operation in the same manner as acceleration. (See Figure 5)
[0021]
Also, even when the deviation between the primary command pulse (PGP) and the rotor position pulse (ENCP) exceeds a predetermined value due to vibration during rotation, the same loop operation functions and the deviation can be reduced. As a result, the amplitude of vibration can be reduced.
[0022]
In a state where the rotor (1a) is rotating without vibration, the excitation and the rotor (1a) are uniformly maintained with a deviation, but once the primary command pulse (PGP) suddenly changes in speed or is disturbed. When the deviation fluctuates, the deviation increases or decreases around the deviation position that should be balanced, and as a result, "torque ripple acting in the acceleration direction" and "torque ripple acting in the deceleration direction" are superimposed on the torque required for rotation. Become.
[0023]
In the present invention, when the deviation reaches a predetermined value due to the vibration, the fluctuation range of the deviation that becomes the source of the torque ripple is reduced by the high-speed pulse, and the vibration is contracted. Further, in the present invention, the delay side deviation predetermined value (absolute value) is made smaller than the predetermined advance angle deviation value (absolute value) with respect to the
[0024]
FIG. 3 is an explanatory diagram showing the relationship between the deviation and the predetermined deviation ranges (A) to (-B). 3A is a predetermined advance angle side deviation value, (−B) is a predetermined delay angle side deviation value, and inner part (a) is less than the advance angle side deviation predetermined value (A) due to the reverse high-speed pulse. (B) shows a state of being pulled back to a delay angle side deviation not more than a predetermined value (−B) (right side from (−B) in the figure) by the forward high-speed pulse.
[0025]
In the case of this embodiment, there is a deviation 0 (a delay angle retracting position or its vicinity) on the delay angle side deviation predetermined value (−B) side, and the advance angle side deviation predetermined value (A ) And the delay angle side deviation predetermined value (−B) are located asymmetrically.
[0026]
When the deviation exceeds a predetermined deviation range (that is, the advance angle side deviation predetermined value (A) or the delay angle side deviation predetermined value (-B)), the step-out occurs. Therefore, if the deviation tries to exceed the predetermined value (A) on the advance angle side within the predetermined deviation range (A) to (-B), the primary command pulse (PGP) is used as the secondary command pulse (OUTP) as it is. Output to the unit (2) as it is is temporarily interrupted, and a reverse high-speed pulse in a direction in which the deviation is reduced is output as a secondary command pulse (OUTP) to the drive control unit (2) to reduce the deviation.
[0027]
When the deviation returns sufficiently within (a) to (-b) within the predetermined deviation range (A) to (-B), the primary command pulse (PGP) is again used as the secondary command pulse (OUTP) as it is. ) As it is. The number of reverse high-speed pulses is counted as “dwell pulse” = primary command pulse (PGP) −secondary command pulse (OUTP).
[0028]
Conversely, on the left side of the
[0029]
Therefore, the deviation exceeds the delay angle side deviation predetermined value (−B) (= the deviation is too small, and the rotor (1a) is the secondary command pulse in which the primary command pulse (PGP) is output as it is. Forward direction in which deviation is reduced by temporarily interrupting the primary command pulse (PGP) as it is output as the secondary command pulse (OUTP) to the drive control unit (2) The high-speed pulse is output as a secondary command pulse (OUTP) to the drive controller (2), and the deviation is reduced.
[0030]
If the deviation returns sufficiently inside (-b) from the delay angle side deviation predetermined value (-B), the primary command pulse (PGP) is output as it is as the secondary command pulse (OUTP) to the drive controller (2) as it is. . The above-described forward high-speed pulse is output in a direction in which the “accumulated pulse” is canceled when the “accumulated pulse” exists.
[0031]
As the set value of “delay angle side deviation” is set to “advance angle side”, the braking action becomes softer and the discharge of the “accumulated pulse” is completed earlier. On the other hand, if the deviation is set to the “delay angle side”, in other words, the brake action becomes stronger as the magnitude of the delay angle side deviation is reduced.
[0032]
BEST MODE FOR CARRYING OUT THE INVENTION
The present invention will be described below with reference to the illustrated embodiments. FIG. 1 (b) is a conceptual diagram of the present invention. In a basic system composed of a command pulse generator (4), a drive control unit (2), and a stepping motor (1), the stepping motor (1) An encoder (3) that detects the rotor position of the stepping motor (1) [generally, a rotary encoder that is coaxial with a rotating shaft is used] is connected, and a command pulse generator (4) The pulse train interface unit (5) between the drive control unit (2) is provided with the pulse train control circuit (5a) according to the present invention, and the rotor position detection pulse (ENCP) output by the encoder (3) is A closed loop is formed by feeding back to the pulse train control circuit (5a).
[0033]
The pulse train interface unit (5) having the pulse train control circuit (5a) may be installed between the conventional command pulse generator (4) and the drive control unit (2) as an independent circuit, You may integrate in the command pulse generator (4) or a drive control part (2). The applied stepping motor (1) is not limited to a five-phase motor, but here, a five-phase motor will be described as a representative example.
[0034]
Command pulse generator (4) is trapezoidally driven with a forward primary command pulse (CWPGP) that rotates the stepping motor (1) in the forward direction or a reverse primary command output pulse (CCWPGP) that rotates in the reverse direction. The pulse output speed is slow at the beginning of startup, and gradually increases as the rotation of the stepping motor (1) accelerates.When the rotation speed becomes constant, the high-speed output is maintained, and during deceleration The output speed gradually decreases. If it is not necessary to specify the direction of the primary command pulse, it is simply (PGP).
[0035]
FIG. 2 is a block circuit diagram of the pulse train control circuit (5a) incorporated in the pulse train interface unit (5). The output direction discrimination unit (51), the output selection unit (52), the correction start discrimination unit (53), PG-OUT deviation counter (54), ENC period measurement circuit (55), OUT-ENC deviation counter (56), high-speed pulse generation circuit (57), correction pulse generation circuit (58), direction selector (59) and OUTP It consists of a periodic timer (60). The function of each part will be explained sequentially.
[0036]
The output selection unit (52) receives the primary command pulse (PGP) and receives it as the secondary command pulse (OUTP) or the input of the high-speed pulse generation circuit (57) to perform the deviation optimization process. It has a function of outputting a secondary command pulse (OUTP) or receiving a correction pulse generation circuit (58) and outputting a correction pulse for eliminating the “accumulated pulse” as a secondary command pulse (OUTP).
[0037]
The high-speed pulse generation circuit (57) has a function of generating a high-speed pulse and supplying the high-speed pulse for optimizing the excessively enlarged or reduced deviation to the output selection unit (52). Similarly, the correction pulse generation circuit (58) has a function of generating a correction pulse for eliminating the “accumulated pulse” and supplying the correction pulse to the output selection section (52).
[0038]
The output direction discriminating unit (51) receives the forward primary command pulse (CWPGP) or reverse primary command pulse (CCWPGP) from the command pulse generator (4), recognizes the direction, and selects the direction selection unit ( 59) The direction of the secondary command pulse (OUTP) output from 59 [that is, forward direction (= forward direction) or reverse direction (reverse direction)] is instructed to the direction selector (59) It has a function of instructing the direction selector (59) the direction of the secondary command pulse (OUTP) output based on the high-speed pulse for optimizing the enlarged or reduced deviation.
[0039]
The direction selection unit (59) receives the secondary command pulse (OUTP) from the output selection unit (52) and outputs the secondary command pulse (OUTP) according to the output direction instruction of the output direction discrimination unit (51). And PG-OUT deviation counter (54), OUT-ENC deviation counter (56), and OUTP cycle timer (60).
[0040]
The ENC cycle measuring circuit (55) has a function of receiving a rotor position pulse (ENCP) input and measuring a pulse generation cycle of the rotor position pulse (ENCP), and outputs a predetermined deviation range as an OUT-ENC deviation counter (56). Has the function of commanding.
[0041]
The OUT-ENC deviation counter (56) receives the rotor position pulse (ENCP) and the secondary command pulse (OUTP) input from the direction selector (59), and counts the deviation between the two (OUTP) (ENCP). When it is detected whether the deviation is within or beyond the predetermined deviation range based on the command from the ENC period measuring circuit (55), and the deviation exceeds the deviation predetermined range limit or the deviation predetermined range, The high-speed pulse flag is output to the output selection unit (52) to cancel the state where the deviation exceeds the predetermined range and to control the output selection unit (52) so that the deviation falls within the predetermined range.
[0042]
The OUTP cycle timer (60) measures the cycle of the secondary command pulse (OUTP) output from the constant direction selector (59).
[0043]
The PG-OUT deviation counter (54) has a function of receiving “primary command pulse (PGP)” and “secondary command pulse (OUTP)” and counting “accumulated pulses”.
[0044]
The correction start discriminating unit (53) receives the measurement result of the OUTP cycle timer (60), and outputs a correction pulse flag according to the number of “accumulated pulses” sent from the PG-OUT deviation counter (54). It has the function of outputting to (52). When the primary command pulse (PGP) is input to the correction start determination unit (53) while the correction pulse flag is being output, the correction pulse mode is immediately stopped and the deviation control mode is restored.
[0045]
The drive control unit (2) to which the secondary command pulse (OUTP) from the direction selection unit (59) is input includes a pulse width modulation circuit (21) that performs pulse width modulation control on the DC current supplied from the DC power supply voltage, The chopping control of the direct current by the pulse width modulation circuit (21), for example, a chopper (22) composed of a transistor or FET, a reactor (23) connected in series to the chopper (22), and a drive control unit (2) Connected between the (+) side and the ground side (GND) to drive the smoothing capacitor (C1) and stepping motor (1) to smooth the chopping controlled drive current in cooperation with the reactor (23) Power circuit (P) composed of output stage transistors (Tr1) (Tr2) to (Tr9) (Tr10) to be controlled, base of output stage transistors (Tr1) (Tr2) to (Tr9) (Tr10) according to the excitation sequence Counter / excitation sequence generator circuit to input switching signal to (24) And a pair of sense resistors (R1) and (R2) connected to the ground side (GND) and detecting a drive current.
[0046]
The counter / excitation sequence generation circuit (24) receives the secondary command pulse (OUTP) from the interface unit (5), and the counter (not shown) of the circuit (24) receives the secondary command pulse (OUTP). The excitation sequence is executed by counting pulses (OUTP).
[0047]
During operation of the stepping motor (1), a primary command pulse (CWPGP) or (CCWPGP) in the forward or reverse direction is output from the command pulse generator (4). Hereinafter, the case of normal rotation will be described as a representative example, and hereinafter simply referred to as (PGP).
[0048]
When the stepping motor (1) rises, the generation cycle of the primary command pulse (PGP) output from the command pulse generator (4) is slow and is accelerated as time elapses. After a certain period of time, the speed is constant, and when it is close to the stop position, it is decelerated and finally output so as to stop (see the broken line in FIG. 6).
[0049]
The primary command pulse (PGP) output from the command pulse generator (4) is output from the output direction discriminating unit (51) and the output select unit (52) of the pulse train control circuit (5a) of the interface unit (5) as described above. ) And the direction of the primary command pulse (PGP) input by the output direction determination unit (51) is determined, and the information is output to the direction selection unit (59). The direction is output from the output selection unit (52). The direction of the secondary command pulse (OUTP) output to the drive control unit (2) through the selection unit (59) is determined.
[0050]
The secondary command pulse (OUTP) from the output selection unit (52) is input to the direction selection unit (59) as described above, and is output from the direction selection unit (59) to the drive control unit (2). At the same time, it is branched and input to the PG-OUT deviation counter (54), OUT-ENC deviation counter (56) and OUTP cycle timer (60).
[0051]
The rotor position pulse (ENCP) from the encoder (3) is input to the OUT-ENC deviation counter (56), and the deviation between the secondary command pulse (OUTP) and the rotor position pulse (ENCP) is counted. is doing. The deviation is as described above. When the deviation is within the predetermined range, the OUT-ENC deviation counter (56) is a high-speed pulse flag (a signal output to the output selection section (52) when the deviation has expanded or reduced beyond the predetermined range). (The contents will be explained later.) Are not output, and the primary command pulse (PGP) is output as it is as the secondary command pulse (OUTP) to the direction selection unit (59), and in accordance with the instructions of the output direction discrimination unit (51) Is output. In this case, since it is normal rotation, a secondary command pulse (OUTP) in the normal rotation direction is output to the drive control section (2).
[0052]
Since the encoder (3) is directly connected to the rotor (1a) of the stepping motor (1), the rotation angle of the rotor (1a) is output as a rotor position pulse (ENCP) by the encoder (3) without time delay. . The rotor position pulse (ENCP) is input to the OUT-ENC deviation counter (56) as described above.
[0053]
The inertia load applied to the rotor (1a) of the stepping motor (1) is larger than the power of the stepping motor (1) as at the time of start-up, and the rotor (1a) follows the secondary command pulse (OUTP). If it becomes impossible, the delay appears as a delay of the rotor position pulse (ENCP) of the encoder (3). The difference between the two is counted by the OUT-ENC deviation counter (56), and when the deviation reaches a predetermined range limit or more, the OUT-ENC deviation counter (56) outputs the output selection unit (52). A high-speed pulse flag is output at (see the solid line in FIG. 6).
[0054]
The rotor position pulse (ENCP) is input to the ENC period measuring circuit (55), and the output period of the rotor position pulse (ENCP) is detected and a predetermined range of deviation is output to the OUT-ENC deviation counter (56). The comparison is performed within a predetermined deviation range.
[0055]
When the high-speed pulse flag is output from the OUT-ENC deviation counter (56) to the output selector (52), the high-speed pulse output from the high-speed pulse generation circuit (57) that has been interrupted is fetched at the same time as the command pulse. The primary command pulse (PGP) from the generator (4) passes through the output selection section (52) as it is and is output as the same secondary command pulse (OUTP) as the primary command pulse (PGP). The high-speed pulse is output as a secondary command pulse (OUTP) to the direction selection unit (59).
[0056]
The OUT-ENC deviation counter (56) instructs the output direction discriminating unit (51) to instruct the direction of the high-speed pulse output as the secondary command pulse (OUTP) output from the direction selection unit (59). Command pulse output direction command signal), and the high-speed pulse output as the secondary command pulse (OUTP) from the direction selector (59) is output according to the secondary command pulse output direction command signal. According to the output of the direction discriminating section (51), the deviation is outputted in the direction of reducing (reverse direction).
[0057]
If the deviation falls within the predetermined range as described above, the input of the high-speed pulse is cut off, and the primary command pulse (PGP) is again passed through the output selection unit (52) and direction selection unit (59) as it is as the secondary command pulse. (OUTP) is output to the drive control unit (2). As described above, acceleration is performed while maintaining a state where the deviation is within a predetermined range (see the solid line portion of the advance angle control portion in FIG. 6). FIGS. 7 (a) and 7 (b) show a state in which the rotor (1a) is smoothly accelerated while repeatedly outputting the high-speed pulses in the reverse direction so that the deviation is within a predetermined range. Therefore, the position of the pulse output is indicated by a stepped line.
[0058]
On the other hand, the secondary command pulse (OUTP) branched from the output selection unit (52) is input to the PG-OUT deviation counter (54) as described above, and is output as the secondary command pulse (OUTP). The number of high-speed pulses is counted and stored as “accumulated pulses”.
[0059]
When the rotor (1a) reaches a certain rotational speed, the rotor (1a) is maintained in that state and rotated at a constant speed. In this constant speed rotation, if the rotor (1a) vibrates for some reason and causes uneven rotation, the rotor (1a) is delayed (or advanced) with respect to the secondary command pulse (OUTP). In some cases, the deviation between (OUTP) and the rotor position pulse (ENCP) expands (or contracts) beyond a predetermined range limit or beyond. When enlarging, as described above, the primary command pulse (PGP) passes through the output select section (52) and stops being output as the secondary command pulse (OUTP), and the secondary command pulse (OUTP) A high-speed pulse is output as a reverse secondary command pulse (OUTP) from the direction selector (59) so as to match the position of the rotor (1a) that has delayed with respect to the secondary command pulse (OUTP) and the rotor position. The deviation from the pulse (ENCP) is controlled to be within a certain range.
[0060]
On the other hand, if the rotor (1a) moves too far and the deviation between the secondary command pulse (OUTP) and the rotor position pulse (ENCP) expands to the specified range limit or delay angle side, As described above, the primary command pulse (PGP) passes through the output selection section (52) and stops being output as the secondary command pulse (OUTP), and proceeds with respect to the secondary command pulse (OUTP). A high-speed pulse is output to the output selection unit (52) so as to match the position of the rotor (1a) that has passed, and this is output to the direction selection unit (59) as a secondary command pulse (OUTP), and the direction selection unit (59) The high-speed pulse is output as a secondary command pulse (OUTP) in the forward direction, and control is performed so that the deviation between the secondary command pulse (OUTP) and the rotor position pulse (ENCP) returns within a certain range.
[0061]
At this time, the secondary command pulse (OUTP) in the forward direction is input to the PG-OUT deviation counter (54), and the above-mentioned “accumulated pulse = counting secondary command pulse (OUTP) in the reverse direction” exists. In this case, the difference is subtracted, and the difference is stored in the PG-OUT deviation counter (54). In this way, the “accumulated pulse” is discharged. Such deviation maintenance control is performed in constant speed drive.BecauseRotation unevenness of the rotor (1a) is suppressed and vibration is eliminated.
[0062]
Next, in the deceleration region, the rotational speed is gradually reduced while braking the rotor (1a). In this case, as described above, the rotor (1a) rotates too quickly with respect to the secondary command pulse (OUTP) due to inertial load, and the deviation between the rotor position pulse (ENCP) and the secondary command pulse (OUTP) May expand to the delay angle side. When such a state occurs, it causes a step-out.
[0063]
Therefore, as described above, when the deviation is expanded to the delay angle side by the OUT-ENC deviation counter (56) that constantly monitors the deviation between the rotor position pulse (ENCP) and the secondary command pulse (OUTP), Immediately as described above, the high-speed pulse flag is output to the output select section (52), and the output of the primary command pulse (PGP) as the secondary command pulse (OUTP) is cut off and the high-speed pulse of the high-speed pulse generation circuit (57) is turned off. Output to the direction selection unit (59), and output to the drive control unit (2) as a forward secondary command pulse (OUTP) to return the deviation to a predetermined deviation range (the solid line portion of the delay angle control portion in FIG. 6) reference).
[0064]
FIGS. 8A and 8B show a state where the rotor (1a) is smoothly decelerated while repeatedly outputting the forward high-speed pulse so that the deviation falls within a predetermined range. Therefore, the position of the pulse output is indicated by a stepped line.
[0065]
A secondary command pulse (OUTP) is branched and input from the constant direction selector (59) to the OUTP cycle timer (60), and the output cycle of the secondary command pulse (OUTP) is monitored. Therefore, when the “accumulated pulse” is present, it is possible to know at which point in time immediately before the stop position it is resolved. When the measurement result of the OUTP cycle timer (60) reaches the “pile pulse” cancellation time point, the correction start determination unit (53) sets the correction pulse flag as many as the number of “pump pulses” in order to eliminate “pump pulse”. ).
[0066]
When the correction pulse flag is output, the output selection unit (52) temporarily interrupts the primary command pulse (PGP) pulse output and takes in the correction pulse output from the correction pulse generation circuit (58). The number of correction pulses equal to the “pump pulse” is output as a secondary command pulse (OUTP) to the direction selection unit (59), and this is output according to the command of the output direction discrimination unit (51) (in this case, as the forward direction). Outputs to the drive control unit (2) and the “accumulated pulse” is eliminated. (Refer to Fig. 9 “Accumulated pulse correction”)
[0067]
(Example-1) An effect of preventing step-out during acceleration in the present invention will be described.
FIG. 10A shows a step-out in the rise when the present invention is not used. FIG. 10 (b) shows a case where the present invention is applied and rises smoothly without causing a step-out, and does not generate large rotation unevenness even during constant speed operation. Has stopped.
[0068]
(Example-2) An effect of preventing step-out during deceleration in the present invention will be described.
FIG. 11A shows the case where the present invention is not used and the step-out occurs during deceleration. FIG. 11B shows a case where the present invention is applied and the vehicle is smoothly decelerated without causing a step-out.
[0069]
(Example-3) The vibration suppression effect during constant speed operation in the present invention will be described.
FIG. 12 (a) shows the case where the present invention is not used and a large vibration is generated during constant speed driving. Further, a large vibration is generated from the deceleration to the stop. FIG. 12B shows the case where the present invention is applied, and vibration is effectively suppressed in constant speed operation and low speed operation just before stopping.
[0070]
(Example-4) An example of another vibration suppressing effect during constant speed operation in the present invention will be described.
FIG. 13 (a) shows a large vibration during constant speed driving when the present invention is not used. FIG. 13 (b) shows a case where the present invention is applied and vibration is effectively suppressed in constant speed operation.
[0071]
【The invention's effect】
The present invention detects a deviation between a rotor position pulse indicating a rotor position of a stepping motor and a secondary command pulse output to the drive control unit, and outputs a secondary command pulse to the drive control unit so that the deviation falls within a predetermined range. The output control of the stepping motor can be automatically adjusted during acceleration / constant speed operation / deceleration regardless of the rotor's inertia load. Smooth drive without any problem can be realized.
[0072]
Since the pulse train interface unit is provided between the command pulse generator and the drive control unit in this way, it can be installed independently of the command pulse generator and the drive control unit, and can also be applied to existing drive devices. There is an advantage that you can.
[Brief description of the drawings]
FIG. 1 is a block circuit diagram of the present invention.
2 is a block circuit diagram of a pulse train control circuit of the interface unit of FIG.
FIG. 3 is an explanatory diagram of a predetermined deviation range in the present invention.
4 is an explanatory drawing of the lead angle side deviation in FIG. 3. FIG.
5 is an explanatory drawing of the delay angle side deviation in FIG. 3. FIG.
FIG. 6 is a comparative explanatory drawing of conventional trapezoidal drive and trapezoidal drive when the method of the present invention is adopted.
FIG. 7 is a graph showing the relationship between the position on the primary command pulse output of the pulse generator during acceleration of the present invention, the position on the secondary command pulse output, the position of the rotor, and the time of occurrence of the reverse high speed pulse
FIG. 8 is a graph showing the relationship between the position on the primary command pulse output of the pulse generator at the time of deceleration according to the present invention, the position on the secondary command pulse output, the rotor position, and the forward high-speed pulse generation time point.
FIG. 9 is an explanatory diagram for correcting accumulated pulses in the present invention in constant speed driving.
FIG. 10 is a comparison diagram of driving waveforms in the conventional example and Example 1 of the present invention.
FIG. 11 is a comparison diagram of driving waveforms in the conventional example and Example 2 of the present invention.
FIG. 12 is a comparison diagram of drive waveforms in the conventional example and Example 3 of the present invention.
FIG. 13 is a comparison diagram of drive waveforms in a conventional example and Example 4 of the present invention.
[Explanation of symbols]
(1) Stepping motor
(2) Drive controller
(3) Encoder
(4) Command pulse generator
(PGP) Primary command pulse
(OUTP) Secondary command pulse
(ENCP) Rotor position pulse
Claims (3)
(a)2次指令パルスとロータ位置パルスとの偏差を検出し、ロータ位置パルスに対して前記2次指令パルスが進んだ状態にある進み角側の偏差所定値と、ロータ位置パルスに対して前記2次指令パルスが遅れた状態にある遅れ角側の偏差所定値とによって定められる偏差所定範囲と、2次指令パルスとロータ位置パルスとの偏差を比較し、
(b)当該偏差が偏差所定範囲より小さい場合は、1次指令パルスをそのまま2次指令パルスとして駆動制御部に出力し、
(c)当該偏差が、ロータ位置パルスに対して前記2次指令パルスが進んだ状態に進み角側偏差所定値まで拡大した場合は、指令パルス発生器からの1次指令パルスを保留すると共にこれを溜まりパルスとしてカウントし、前記1次指令パルスと逆方向の高速パルスを2次指令パルスとして駆動制御部に出力することによって、2次指令パルスとロータ位置パルスとの偏差が所定量に縮小するまで駆動制御部の励磁シーケンスを一時的に引き戻し、
(d)当該偏差が、ロータ位置パルスに対して前記2次指令パルスが遅れた状態にある遅れ角側偏差所定値まで拡大した場合は、指令パルス発生器からの1次指令パルスを保留すると共に溜まりパルスが存在する場合にはこれを減算してその差を記憶し、且つ、前記1次指令パルスと同方向の高速パルスを2次指令パルスとして駆動制御部に出力することによって2次指令パルスとロータ位置パルスとの偏差が所定量に縮小するまで駆動制御部の励磁シーケンスを一時的に進ませ、
(e)ロータ位置パルスに対して2次指令パルスが遅れた状態にある遅れ角側の偏差所定値の絶対値を、ロータ位置パルスに対して2次指令パルスが進んだ状態にある進み角側の偏差所定値の絶対値より小さく設定することにより、ロータ位置パルスに対して2次指令パルスが進んだ状態にある進み角側の偏差所定値と、ロータ位置パルスに対して前記2次指令パルスが遅れた状態にある遅れ角側の偏差所定値とによって定められる偏差所定範囲を偏差0に対して非対称にすると共に、偏差所定範囲を狭めてステッピングモータのロータの振動を制限することを特徴とするステッピングモータの閉ループパルス列制御方法。A drive control unit that receives the rotor position pulse indicating the rotor position of the stepping motor and the primary command pulse output from the command pulse generator output to the drive control unit for driving the stepping motor, and controls the drive of the stepping motor. In a closed loop pulse train control method for a stepping motor that outputs a secondary command pulse and switches an excitation sequence of the stepping motor in synchronization with the secondary command pulse,
(A) The deviation between the secondary command pulse and the rotor position pulse is detected, and the advance angle side deviation predetermined value in which the secondary command pulse has advanced with respect to the rotor position pulse and the rotor position pulse A deviation predetermined range determined by a deviation predetermined value on the delay angle side in which the secondary command pulse is delayed, and a deviation between the secondary command pulse and the rotor position pulse is compared;
(B) When the deviation is smaller than the predetermined deviation range, the primary command pulse is output as it is as the secondary command pulse to the drive control unit,
(C) When the deviation proceeds to a state where the secondary command pulse has advanced with respect to the rotor position pulse and has expanded to a predetermined angle side deviation, the primary command pulse from the command pulse generator is held and this Is counted as a pool pulse, and a high-speed pulse in the direction opposite to the primary command pulse is output as a secondary command pulse to the drive control unit, whereby the deviation between the secondary command pulse and the rotor position pulse is reduced to a predetermined amount. Pull back the excitation sequence of the drive control unit temporarily until
(D) When the deviation has increased to a predetermined value on the delay angle side deviation in which the secondary command pulse is delayed with respect to the rotor position pulse, the primary command pulse from the command pulse generator is suspended. If there are any accumulated pulses, subtract them and store the difference, and output a high-speed pulse in the same direction as the primary command pulse to the drive control unit as a secondary command pulse. The excitation sequence of the drive controller is temporarily advanced until the deviation between the rotor position pulse and the rotor position pulse is reduced to a predetermined amount .
(E) The absolute value of the predetermined deviation value on the delay angle side when the secondary command pulse is delayed with respect to the rotor position pulse is the advance angle side when the secondary command pulse is advanced with respect to the rotor position pulse. By setting the deviation smaller than the absolute value of the predetermined deviation value, the deviation value on the lead angle side where the secondary command pulse has advanced with respect to the rotor position pulse and the secondary command pulse with respect to the rotor position pulse characterized thereby asymmetrically deviation predetermined range defined by the delay deviation predetermined value of delay angle side in the state with respect to the deviation 0, that you limit the vibration of the stepping motor rotor narrows the deviation predetermined range A closed loop pulse train control method for a stepping motor.
(b)偏差が縮小する方向に、ロータの回転数よりも十分高速な2次指令パルスを駆動制御部に所定量出力し、一時的に励磁シーケンスを実際のロータ位置に引き寄せて、偏差変動がもたらすトルクリップルを低減し、ステッピングモータの振動を抑制することを特徴とする請求項1に記載のステッピングモータの閉ループパルス列制御方法。(B) A secondary command pulse that is sufficiently faster than the rotational speed of the rotor is output to the drive control unit in a predetermined amount in the direction in which the deviation is reduced, and the excitation sequence is temporarily drawn to the actual rotor position, causing deviation fluctuations. 2. The closed loop pulse train control method for a stepping motor according to claim 1, wherein torque ripple caused is reduced and vibration of the stepping motor is suppressed.
パルス列インターフェイス部(5)は、The pulse train interface (5)
(a)2次指令パルスとロータ位置パルスとの偏差を検出し、ロータ位置パルスに対して(A) A deviation between the secondary command pulse and the rotor position pulse is detected, and the rotor position pulse is detected. 前記2次指令パルスが進んだ状態にある進み角側の偏差所定値と、ロータ位置パルスに対して前記2次指令パルスが遅れた状態にある遅れ角側の偏差所定値とによって定められる偏差所定範囲と、2次指令パルスとロータ位置パルスとの偏差を比較し、Deviation predetermined value determined by a predetermined deviation value on the advance angle side where the secondary command pulse is advanced and a predetermined deviation value on the delay angle side where the secondary command pulse is delayed with respect to the rotor position pulse. Compare the deviation between the range and secondary command pulse and rotor position pulse,
(b)当該偏差が偏差所定範囲より小さい場合は、1次指令パルスをそのまま2次指令パルスとして駆動制御部に出力し、(B) When the deviation is smaller than the predetermined deviation range, the primary command pulse is output as it is as the secondary command pulse to the drive control unit,
(c)当該偏差が、ロータ位置パルスに対して前記2次指令パルスが進んだ状態に進み角側偏差所定値まで拡大した場合は、指令パルス発生器からの1次指令パルスを保留すると共にこれを溜まりパルスとしてカウントし、前記1次指令パルスと逆方向の高速パルスを2次指令パルスとして駆動制御部に出力することによって、2次指令パルスとロータ位置パルスとの偏差が所定量に縮小するまで駆動制御部の励磁シーケンスを一時的に引き戻し、(C) When the deviation proceeds to a state where the secondary command pulse has advanced with respect to the rotor position pulse and has expanded to a predetermined angle side deviation, the primary command pulse from the command pulse generator is held and this Is counted as a pool pulse, and a high-speed pulse in the direction opposite to the primary command pulse is output as a secondary command pulse to the drive control unit, whereby the deviation between the secondary command pulse and the rotor position pulse is reduced to a predetermined amount. Pull back the excitation sequence of the drive control unit temporarily until
(d)当該偏差が、ロータ位置パルスに対して前記2次指令パルスが遅れた状態にある遅れ角側偏差所定値まで拡大した場合は、指令パルス発生器からの1次指令パルスを保留すると共に溜まりパルスが存在する場合にはこれを減算してその差を記憶し、且つ、前記1次指令パルスと同方向の高速パルスを2次指令パルスとして駆動制御部に出力することによって2次指令パルスとロータ位置パルスとの偏差が所定量に縮小するまで駆動制御部の励磁シーケンスを一時的に進ませ、(D) When the deviation has increased to a predetermined value on the delay angle side deviation in which the secondary command pulse is delayed with respect to the rotor position pulse, the primary command pulse from the command pulse generator is suspended. If there are any accumulated pulses, subtract them and store the difference, and output a high-speed pulse in the same direction as the primary command pulse to the drive control unit as a secondary command pulse. The excitation sequence of the drive controller is temporarily advanced until the deviation between the rotor position pulse and the rotor position pulse is reduced to a predetermined amount.
(e)ロータ位置パルスに対して2次指令パルスが遅れた状態にある遅れ角側の偏差所定値の絶対値を、ロータ位置パルスに対して2次指令パルスが進んだ状態にある進み角側の偏差所定値の絶対値より小さく設定することにより、ロータ位置パルスに対して2次指令パルスが進んだ状態にある進み角側の偏差所定値と、ロータ位置パルスに対して前記2次指令パルスが遅れた状態にある遅れ角側の偏差所定値とによって定められる偏差所定範囲を偏差0に対して非対称にすると共に、偏差所定範囲を狭めてステッピングモータのロータの振動を制限する機能を備えていることを特徴とするステッピングモータの閉ループパルス列制御装置。(E) The absolute value of the predetermined deviation value on the delay angle side when the secondary command pulse is delayed with respect to the rotor position pulse is the advance angle side when the secondary command pulse is advanced with respect to the rotor position pulse. By setting the deviation smaller than the absolute value of the predetermined deviation value, the deviation value on the lead angle side where the secondary command pulse has advanced with respect to the rotor position pulse and the secondary command pulse with respect to the rotor position pulse And a function for limiting the vibration of the rotor of the stepping motor by making the deviation predetermined range asymmetric with respect to the deviation 0 and narrowing the deviation predetermined range. A closed-loop pulse train control device for a stepping motor.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002221942A JP4133080B2 (en) | 2002-07-30 | 2002-07-30 | Closed loop pulse train control method and apparatus for stepping motor |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002221942A JP4133080B2 (en) | 2002-07-30 | 2002-07-30 | Closed loop pulse train control method and apparatus for stepping motor |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| JP2004064932A JP2004064932A (en) | 2004-02-26 |
| JP2004064932A5 JP2004064932A5 (en) | 2005-10-06 |
| JP4133080B2 true JP4133080B2 (en) | 2008-08-13 |
Family
ID=31942119
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2002221942A Expired - Fee Related JP4133080B2 (en) | 2002-07-30 | 2002-07-30 | Closed loop pulse train control method and apparatus for stepping motor |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4133080B2 (en) |
Families Citing this family (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7495409B2 (en) * | 2006-10-30 | 2009-02-24 | David Coutu | Method and apparatus for eliminating stall and cogging in multi-phase stepping motors |
| JP5258209B2 (en) * | 2007-05-31 | 2013-08-07 | キヤノン株式会社 | Stepping motor driving apparatus and image forming apparatus |
| JP5501713B2 (en) * | 2009-09-25 | 2014-05-28 | 京楽産業.株式会社 | Inspection method for gaming machines |
| JP5635753B2 (en) * | 2009-09-25 | 2014-12-03 | 京楽産業.株式会社 | Game machine |
| JP4959779B2 (en) * | 2009-12-15 | 2012-06-27 | シナノケンシ株式会社 | Stepping motor driving apparatus and driving method |
| JP6184221B2 (en) * | 2013-07-24 | 2017-08-23 | ミネベアミツミ株式会社 | Motor drive control device, motor and drive control method thereof |
| CN106655930B (en) * | 2016-09-18 | 2019-11-05 | 北京星网卫通科技开发有限公司 | A kind of error correcting method for step out of stepping motor based on proximity sensor |
| JP6471333B2 (en) * | 2017-03-21 | 2019-02-20 | 株式会社大都技研 | Amusement stand |
| JP6471334B2 (en) * | 2017-03-21 | 2019-02-20 | 株式会社大都技研 | Amusement stand |
| FR3079983B1 (en) * | 2018-04-09 | 2020-04-10 | Moving Magnet Technologies | METHOD FOR CONTROLLING A POLYPHASE MOTOR |
-
2002
- 2002-07-30 JP JP2002221942A patent/JP4133080B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2004064932A (en) | 2004-02-26 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5572105A (en) | Stepping motor control method including varying the number of split sections in one step drive period of a stepping motor | |
| JP4133080B2 (en) | Closed loop pulse train control method and apparatus for stepping motor | |
| JP6648063B2 (en) | Stepping motor control device and stepping motor control method | |
| JP2008271698A (en) | Motor drive | |
| JP2007209179A (en) | Vibration wave motor drive controller | |
| JP2012016122A (en) | Control method and control apparatus for stepping motor | |
| JP7158910B2 (en) | Stepping motor controller and stepping motor control method | |
| JP6287950B2 (en) | Stepping motor controller | |
| JP3662201B2 (en) | Stepping motor driving circuit and driving method thereof | |
| JP2006271127A (en) | Stop controlling method of stepping motor | |
| JP6337837B2 (en) | Stepping motor drive | |
| JP6184726B2 (en) | Driving method and driving apparatus for stepping motor | |
| JP2019216499A (en) | Control metho and controller of brushless dc motor | |
| JP3687618B2 (en) | Yarn winding machine | |
| JP5549430B2 (en) | Sheet conveying apparatus and image forming apparatus | |
| JP6512915B2 (en) | Control device using PWM, image forming apparatus provided with the same, and control method | |
| JPH0522968A (en) | Electromagnetic brake exciter | |
| JP3723884B2 (en) | Motor drive pulse generation circuit | |
| JP3651708B2 (en) | Motor speed control device | |
| US20240405700A1 (en) | Phase-locked loop control system and method for a motor | |
| JPH10243684A (en) | Velocity control apparatus of dc brushless motor | |
| JP5469848B2 (en) | Stepping motor driving method and stepping motor driving device | |
| JP2011155810A (en) | Micro-step drive method of two phase stepping motor | |
| JPH11252996A (en) | Driver of pulse motor and drive method therefor | |
| JPH10191695A (en) | Device for driving stepping motor |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050524 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050524 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20071219 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080108 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080307 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20080507 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080602 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110606 Year of fee payment: 3 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 4133080 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110606 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120606 Year of fee payment: 4 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120606 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130606 Year of fee payment: 5 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| LAPS | Cancellation because of no payment of annual fees |