JP2778341B2 - Servo motor speed control method - Google Patents

Servo motor speed control method

Info

Publication number
JP2778341B2
JP2778341B2 JP8876892A JP8876892A JP2778341B2 JP 2778341 B2 JP2778341 B2 JP 2778341B2 JP 8876892 A JP8876892 A JP 8876892A JP 8876892 A JP8876892 A JP 8876892A JP 2778341 B2 JP2778341 B2 JP 2778341B2
Authority
JP
Japan
Prior art keywords
speed
control method
feedback
time
servo motor
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 - Lifetime
Application number
JP8876892A
Other languages
Japanese (ja)
Other versions
JPH05289749A (en
Inventor
光康 加知
朗 三谷
勇二 三浦
芳男 篠原
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP8876892A priority Critical patent/JP2778341B2/en
Publication of JPH05289749A publication Critical patent/JPH05289749A/en
Application granted granted Critical
Publication of JP2778341B2 publication Critical patent/JP2778341B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Numerical Control (AREA)
  • Control Of Position Or Direction (AREA)

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【産業上の利用分野】この発明は、サーボモータの速度
制御方法に関し、さらに詳しくは、工作機械の送り軸等
を駆動制御するサーボモータの速度制御方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a speed control method for a servomotor, and more particularly, to a speed control method for a servomotor for driving and controlling a feed shaft of a machine tool.

【0002】[0002]

【従来の技術】デジタル制御によるサーボモータの速度
制御方法では、エンコーダやデジタル処理されたレゾル
バから得られる位置フィードバックパルスが1サンプリ
ング時間内に何個カウントされたかによりフィードバッ
ク速度を定めている。
2. Description of the Related Art In a speed control method of a servo motor by digital control, a feedback speed is determined based on how many position feedback pulses obtained from an encoder or a digitally processed resolver are counted within one sampling time.

【0003】しかし、低速度では、1サンプリング時間
内に1パルスにならず、数サンプリング時間でやっと1
パルスになる。つまり、1サンプリング時間内のカウン
トが“0”の状態が続いた後、突然カウントが“1”に
なる。そこで、速度フィードバック量は、“0”が続い
た後、突然大きくなる。このため、脈動トルクが発生
し、きめ細かなサーボ運転には好ましくない。特に、最
近は、軸受の改良で非常に動き易い工作機械が増加して
おり、脈動トルクが問題化している。
However, at a low speed, one pulse is not generated within one sampling time, and only one pulse is obtained within a few sampling times.
Become a pulse. That is, after the count continues to be "0" within one sampling time, the count suddenly becomes "1". Therefore, the speed feedback amount suddenly increases after “0” continues. For this reason, pulsating torque is generated, which is not preferable for fine servo operation. In particular, recently, machine tools that are very easy to move due to improvements in bearings have increased, and pulsating torque has become a problem.

【0004】ところで、1サンプリング時間内に1パル
スが来る最低回転数Nr(rpm)は、 Nr=60/{(1回転当りのパルス数)×(1サンプ
リング時間)} である。(1回転当りのパルス数)を増やしていくにし
ても、それ以上に(1サンプリング時間)が短縮されて
いく傾向にあるので、Nrは大きくなっていく。すなわ
ち、1パルスには大きな重みを持つことになる。
The minimum rotation speed Nr (rpm) at which one pulse comes within one sampling time is Nr = 60 / {(number of pulses per rotation) × (one sampling time)}. Even if (the number of pulses per rotation) is increased, Nr is increased because (1 sampling time) tends to be further reduced. That is, one pulse has a large weight.

【0005】図9,図10は、この状態を説明するもの
である。図9は、速度指令に対して、フィードバック速
度がかなり大きな幅で変動することを示している。図1
0は、同じ位置パルスが速度指令に与える影響とフィー
ドバック速度へ与える影響を示している。この時、理論
上の比重K(フィードバック速度/速度指令)は、位置
のゲインをKp(1/sec) とし、1サンプリング時間を
ITvとすれば、 K=1/(Kp・ITv) となる。位置ゲインKp は物理的条件で上限値が定まる
から、1サンプリング時間ITvが短縮されると、理論
上の比重Kは増す。従って、低速度の時のみならず、高
速度でも、変動率は小さいが、トルク指令の変動幅とし
ては問題になる。
FIGS. 9 and 10 explain this state. FIG. 9 shows that the feedback speed fluctuates with a considerably large width in response to the speed command. FIG.
0 indicates the effect of the same position pulse on the speed command and the effect on the feedback speed. At this time, the theoretical specific gravity K (feedback speed / speed command) is given by K = 1 / (Kp · ITv), where the position gain is Kp (1 / sec) and one sampling time is ITv. Since the upper limit of the position gain Kp is determined by physical conditions, if the one sampling time ITv is shortened, the theoretical specific gravity K increases. Therefore, not only at low speed but also at high speed, the fluctuation rate is small, but there is a problem in the fluctuation width of the torque command.

【0006】そこで、入って来たパルス数Mとそれに要
した時間Tの比M/Tにより速度を求める方法(これを
M/T方式という)が提案されている。図11は、M/
T方式の制御を行う構成のブロック図である。時刻カウ
ンタ140は、クロックパルスをカウントする。そのカ
ウント値は、位置フィードバックパルスにより、ラッチ
141にラッチされる。さらに、そのラッチ141の保
持値は、割込みパルスである速度演算信号(ITvパル
ス)により、ラッチ142にラッチされる。このラッチ
142の保持値は、時刻tである。一方、位置フィード
バックパルスは、アップダウンカウンタ143でカウン
トされる。そのカウント値は、前記速度演算信号(IT
vパルス)により、ラッチ144にラッチされる。この
ラッチ144の保持値は、パルス数Pである。CPU
は、異なるタイミングで時刻tとパルス数Pを読み込
み、時刻tの差である時間Tでパルス数Pの差であるパ
ルス数Mを割って、速度vを求める。すなわち、 v=(パルス数Pの差M)/(時刻tの差T) である。
Therefore, a method has been proposed in which the speed is determined by the ratio M / T of the number M of incoming pulses and the time T required for the number (this is called an M / T method). FIG.
FIG. 3 is a block diagram of a configuration for performing T-system control. The time counter 140 counts clock pulses. The count value is latched by the latch 141 by the position feedback pulse. Further, the value held by the latch 141 is latched by the latch 142 in response to a speed calculation signal (ITv pulse) which is an interrupt pulse. The value held in the latch 142 is time t. On the other hand, the position feedback pulse is counted by the up / down counter 143. The count value is calculated by the speed calculation signal (IT
(v pulse), and is latched by the latch 144. The value held by the latch 144 is the pulse number P. CPU
Reads the time t and the number of pulses P at different timings, and divides the number of pulses M, which is the difference between the number of pulses P, by the time T, which is the difference between the times t, to obtain the velocity v. That is, v = (difference M of pulse number P) / (difference T at time t).

【0007】図12は、M/T方式の具体例の説明図で
ある。時刻カウンタ140のカウント値は、単純に増加
する。アップダウンカウンタ143のカウント値は、位
置フィードバックパルスである正転パルスPP1,逆転
パルスPP2,正転パルスPP3,正転パルスPP4,正
転パルスPP5により、P1,P2,P1,P3,P4,…
と増減する。第1のサンプリング(第1ITv)時点で
は、時刻t1とパルス数P1が読み取られる。第2のサン
プリング(第2ITv)時点では、時刻t3とパルス数
1が読み取られる。そこで、速度vは、 v=(P1−P1)/(t3−t1)=0 で算出される。第3のサンプリング(第3ITv)時点
では、時刻t4とパルス数P3が読み取られる。そこで、
速度vは、 v=(P3−P1)/(t4−t3) で算出される。
FIG. 12 is an explanatory diagram of a specific example of the M / T system. The count value of the time counter 140 simply increases. The count value of the up / down counter 143 is determined by the forward rotation pulse PP 1 , the reverse rotation pulse PP 2 , the forward rotation pulse PP 3 , the forward rotation pulse PP 4 , and the forward rotation pulse PP 5 which are position feedback pulses, P 1 , P 2 , P 1 , P 3 , P 4 , ...
Increase or decrease. At the time of the first sampling (first ITv), the time t 1 and the pulse number P 1 are read. At the time of the second sampling (second ITv), the time t 3 and the pulse number P 1 are read. Therefore, the speed v is calculated as follows: v = (P 1 −P 1 ) / (t 3 −t 1 ) = 0. At the time of the third sampling (third ITv), the time t 4 and the pulse number P 3 are read. Therefore,
The speed v is calculated as follows: v = (P 3 −P 1 ) / (t 4 −t 3 ).

【0008】図13は、M/T方式の別の具体例の説明
図である。時刻カウンタ140のカウント値は、単純に
増加する。アップダウンカウンタ143のカウント値
は、位置フィードバックパルスである正転パルスP
1,正転パルスPP2,正転パルスPP3により、P1
2,P3,… と増減する。第1のサンプリング(第1
ITv)時点では、時刻t1とパルス数P1が読み取られ
る。第2のサンプリング(第2ITv)時点では、時刻
1とパルス数P1が読み取られる。(P1−P1)=0で
あるから、速度vは、“0”となる。第3のサンプリン
グ(第3ITv)時点では、時刻t2とパルス数P2が読
み取られる。そこで、速度vは、 v=(P2−P1)/(t2−t1) で算出される。
FIG. 13 is an explanatory diagram of another specific example of the M / T system. The count value of the time counter 140 simply increases. The count value of the up / down counter 143 is a forward rotation pulse P which is a position feedback pulse.
By P 1 , forward rotation pulse PP 2 , forward rotation pulse PP 3 , P 1 ,
P 2 , P 3 ,... First sampling (first
At time ITv), the time t 1 and the pulse number P 1 are read. At the time of the second sampling (second ITv), the time t 1 and the pulse number P 1 are read. Since (P 1 −P 1 ) = 0, the speed v becomes “0”. At the time of the third sampling (third ITv), the time t 2 and the pulse number P 2 are read. Therefore, the speed v is calculated as follows: v = (P 2 −P 1 ) / (t 2 −t 1 ).

【0009】クロックパルスの周期は充分短いので、時
間Tは高分解能(1単位が非常に小さい)になる。そこ
で、図14に示すように、フィードバック値の変動幅
は、非常に小さくなる。また、1サンプリング時間内に
1パルスも来ない低速でも、“0”と“1”の間の中間
の速度が得られる。
Since the period of the clock pulse is sufficiently short, the time T has a high resolution (one unit is very small). Therefore, as shown in FIG. 14, the fluctuation range of the feedback value becomes very small. Further, even at a low speed in which one pulse does not come within one sampling time, an intermediate speed between "0" and "1" can be obtained.

【0010】[0010]

【発明が解決しようとする課題】しかし、フィードバッ
ク速度を得るのにM/T方式を使用すると、次の2つの
問題点が生じる。
However, when the M / T method is used to obtain the feedback speed, the following two problems occur.

【0011】第1の問題点は、1サンプリング時間(I
Tv)に1パルスも来ない低速度になったとき、位置の
ゲインが変動する問題点である。図10は、低速度にお
ける速度指令,フィードバック速度,トルク指令(速度
誤差)を示したものである。サーボモータが1サンプリ
ング時間に1パルス以下の低速度で運転していた時、第
K番目(Kは2以上の整数)のサンプリング時に初めて
1パルスが来て、ここで実際の速度が判る。ところが、
この時以前の数サンプリング時間に亘ってフィードバッ
ク速度は“0”として処理されており、第K番目のサン
プリング時に大きな値のフィードバック速度を返して初
めてマクロ的に釣り合うことになる。このため、ここで
M/T方式で算出した小さな速度(斜線部で示す)をフ
ィードバック速度とすると、全体としてはフィードバッ
ク速度が不足している。
The first problem is that one sampling time (I
This is a problem that the gain of the position fluctuates when the speed becomes low at which no pulse comes to Tv). FIG. 10 shows a speed command, a feedback speed, and a torque command (speed error) at a low speed. When the servo motor is operating at a low speed of one pulse or less in one sampling time, one pulse comes for the first time at the K-th (K is an integer of 2 or more) sampling, and the actual speed can be determined. However,
At this time, the feedback speed is processed as "0" for several sampling times before, and a macro value is balanced only by returning a large value feedback speed at the time of the K-th sampling. For this reason, if the small speed (indicated by the hatched portion) calculated by the M / T method is used as the feedback speed, the feedback speed is insufficient as a whole.

【0012】ところで、フィードバック速度が減少する
と、図15に示すように、位置のゲインが等価的に上が
り、位置誤差(ドループ)が変わってしまう。従って、
2軸以上で補間した時の軌跡に歪みが生ずる。
When the feedback speed decreases, as shown in FIG. 15, the position gain increases equivalently, and the position error (droop) changes. Therefore,
Distortion occurs in the trajectory when interpolation is performed on two or more axes.

【0013】図16は、円弧補間の場合の誤差を表示し
たものである。図16の(a)が位置誤差の変化による
軌跡の歪みを示している。象限切換点に近づいて低速に
なるにつれ、位置のゲインが上がり、ゲイン無限大の方
向すなわち指令円(実際のサーボモータの軌跡は位置誤
差分内側に入っている。)に向って突出し、やがて制御
の不感帯部に入る。速度反転後は、円の内側に速く入り
込み、やがて速度が上がって通常の状態に落ちて円弧軌
跡に戻る。図16の(b)は、円弧の象限切換点ではロ
ストモーションによる誤差も含めて表現したものであ
る。
FIG. 16 shows errors in the case of circular interpolation. FIG. 16A shows the trajectory distortion due to the change in the position error. As the speed decreases as approaching the quadrant switching point, the gain of the position increases, and the position protrudes in the direction of infinite gain, that is, the command circle (the actual servo motor trajectory is inside the position error). Into the dead zone. After the speed reversal, the vehicle quickly enters the inside of the circle, eventually increases in speed, returns to a normal state, and returns to an arc trajectory. FIG. 16 (b) expresses an error due to lost motion at the quadrant switching point of the arc.

【0014】第2の問題点は、パルス波形に歪みがあっ
た場合に、速度に演算誤差を生じる問題点である。図1
7は、エンコーダのA相パルスとB相パルスおよび位置
フィードバックパルスである。A相パルスまたはB相パ
ルスの一方の立上り/立下りと他方の極性とから位置フ
ィードバックパルスの正転/逆転が決まる。この例で
は、位置フィードバックパルスとして、正転パルスPP
1,逆転パルスPP2,正転パルスPP3,正転パルスP
4,正転パルスPP5が生じる。
The second problem is that when the pulse waveform is distorted, a calculation error occurs in the speed. FIG.
Reference numeral 7 denotes an A-phase pulse, a B-phase pulse, and a position feedback pulse of the encoder. The forward / reverse rotation of the position feedback pulse is determined from the rising / falling edge of one of the A-phase pulse or the B-phase pulse and the polarity of the other. In this example, the forward rotation pulse PP is used as the position feedback pulse.
1, the reverse rotation pulse PP 2, forward rotation pulse PP 3, forward pulse P
P 4 and the normal rotation pulse PP 5 are generated.

【0015】逆転パルスPP2と正転パルスPP3は、B
相パルスの立ち上がり部に割れ(凹み)を持っているた
めに生じるもので、本来の位置フィードバックパルスで
はない。これらは、同じサンプリング期間内に生じれ
ば、互いに打ち消される関係にある。ところが、別のサ
ンプリング期間に跨がり,しかも正転パルスPP3 のサ
ンプリング期間に正転パルスPP4 が入らない場合に
は、非常に短時間に1パルスが来たということになり、
非常に高速であると誤判定してしまう。
The reverse rotation pulse PP 2 and the normal rotation pulse PP 3 are B
This is caused by having a crack (dent) at the rising portion of the phase pulse, and is not an original position feedback pulse. These are mutually canceled if they occur within the same sampling period. However, straddles to another sampling period, yet when the forward pulse PP 4 to the sampling period of the forward pulse PP 3 does not turn on, will be very that one pulse has come in a short period of time,
It is erroneously determined that the speed is very high.

【0016】この発明は、上記問題点を解決するために
なされたもので、1サンプリング時間(ITv)に1パ
ルスも来ない低速度に対応したサーボモータの速度制御
方法を提供することを目的とする。また、パルス波形に
歪みがあった場合にでも速度に演算誤差を生じないよう
にしたサーボモータの速度制御方法を提供することを目
的とする。
SUMMARY OF THE INVENTION The present invention has been made to solve the above problems, and has as its object to provide a speed control method of a servomotor corresponding to a low speed in which one pulse does not come in one sampling time (ITv). I do. It is another object of the present invention to provide a speed control method for a servomotor which does not cause a calculation error in the speed even when the pulse waveform is distorted.

【0017】[0017]

【課題を解決するための手段】第1に、この発明は、速
度指令とフィードバック速度の差に基づいて電流指令を
生成するサーボモータの速度制御方法において、位置フ
ィードバックパルス数Mをそのカウントに要した時間T
で割った速度(M/T)を1サンプリング時間(IT
v)当たりの位置フィードバックパルス数で表した速度
(1/a)が“1”以下のとき、合計で“1−1/a”
となるように分けた“1−1/a”の一部を次回以降の
複数回のサンプリング時にそれぞれフィードバック速度
とすることを特徴とするサーボモータの速度制御方法を
提供する。
First, the present invention relates to a method for controlling the speed of a servomotor which generates a current command based on a difference between a speed command and a feedback speed. Time T
Speed (M / T) divided by 1 sampling time (IT
When the speed (1 / a) expressed by the number of position feedback pulses per v) is "1" or less, the total is "1-1 / a".
A servo motor speed control method characterized in that a part of "1-1 / a" divided as follows is used as a feedback speed at each of a plurality of subsequent samplings.

【0018】第2に、この発明は、上記第1のサーボモ
ータの速度制御方法において、“1−1/a”を、n
(=整数)個の“1/a”と,1個の“1−1/a−n
/a”に分けることを特徴とするサーボモータの速度制
御方法を提供する。第3に、この発明は、上記第1のサ
ーボモータの速度制御方法において、“1−1/a”
を、n(=整数)個の“A”(但し、“1/a”<
“A”<“1−1/a”と,1個の“1−1/a−n・
A”に分けることを特徴とするサーボモータの速度制御
方法を提供する。
Secondly, according to the present invention, in the above-mentioned first servomotor speed control method, "1-1 / a" is replaced by n
(= Integer) "1 / a" and one " 1-1 / a- n"
/ A ". A third aspect of the present invention is the servomotor speed control method according to the first aspect, wherein" 1-1 / a "is used.
With n (= integer) “A” (where “1 / a” <
“A” <“1-1 / a” and one “1-1 / a− n ·
A "is provided.

【0019】第4に、この発明は、速度指令とフィード
バック速度の差に基づいて電流指令を生成するサーボモ
ータの速度制御方法において、位置フィードバックパル
ス数Mをそのカウントに要した時間Tで割った速度(M
/T)を1サンプリング時間(ITv)当たりの位置フ
ィードバックパルス数で表した速度(1/a)が“1”
以下のとき、“1−1/a”を次回のサンプリング時に
フィードバック速度とすることを特徴とするサーボモー
タの速度制御方法を提供する。
Fourth, the present invention relates to a speed control method of a servo motor for generating a current command based on a difference between a speed command and a feedback speed, wherein the number M of position feedback pulses is divided by a time T required for the count. Speed (M
/ T) is expressed as the number of position feedback pulses per sampling time (ITv), and the speed (1 / a) is “1”.
In the following case, there is provided a servo motor speed control method characterized in that "1-1 / a" is used as a feedback speed at the next sampling.

【0020】第5に、この発明は、速度(1/a)の値
に応じて、上記第1,上記第2,上記第3,上記第4の
サーボモータの速度制御方法の一つを選択することを特
徴とするサーボモータの速度制御方法を提供する。第6
に、この発明は、上記第3または上記第5のサーボモー
タの速度制御方法において、速度(1/a)の値に応じ
て、“A”の値を変更することを特徴とするサーボモー
タの速度制御方法を提供する。
[0020] Fifth, the present invention, depending on the value of the speed (1 / a), first upper SL, the second, the third, the one of the speed control method of the fourth servo motor A speed control method for a servo motor is provided. Sixth
According to a third aspect of the present invention, in the third or fifth speed control method for a servomotor, the value of "A" is changed according to the value of the speed (1 / a). A speed control method is provided.

【0021】第7に、この発明は、速度指令とフィード
バック速度の差に基づいて電流指令を生成するサーボモ
ータの速度制御方法において、位置フィードバックパル
ス数Mをそのカウントに要した時間Tで割った速度(M
/T)を1サンプリング時間(ITv)当たりの位置フ
ィードバックパルス数で表した速度(1/a)が“1”
以下のとき、合計で“1”となるように分けたn(=整
数)個の“B”(<1/a)と,1個の“1−n・B”
を次回以降の複数回のサンプリング時にそれぞれフィー
ドバック速度とすることを特徴とするサーボモータの速
度制御装置を提供する。
Seventh, the present invention relates to a servo motor speed control method for generating a current command based on a difference between a speed command and a feedback speed, wherein the number M of position feedback pulses is divided by a time T required for the count. Speed (M
/ T) is expressed as the number of position feedback pulses per sampling time (ITv), and the speed (1 / a) is “1”.
In the following cases, n (= integer) “B” (<1 / a) divided into a total of “1” and one “1-n · B”
Is set to a feedback speed at each of a plurality of samplings from the next time onward.

【0022】第8に、この発明は、速度指令とフィード
バック速度の差に基づいて電流指令を生成するサーボモ
ータの速度制御方法において、位置フィードバックパル
ス数Mをそのカウントに要した時間Tで割った速度(M
/T)を1サンプリング時間(ITv)当たりの位置フ
ィードバックパルス数で表した速度(1/a)が“1”
以下のとき、時間積分値が“1”となるように所定の関
数で決めた値を次回以降の複数回のサンプリング時にそ
れぞれフィードバック速度とすることを特徴とするサー
ボモータの速度制御装置を提供する。
Eighth, according to the present invention, in a speed control method of a servo motor for generating a current command based on a difference between a speed command and a feedback speed, the number M of position feedback pulses is divided by a time T required for the count. Speed (M
/ T) is expressed as the number of position feedback pulses per sampling time (ITv), and the speed (1 / a) is “1”.
Provided is a servo motor speed control device characterized in that a value determined by a predetermined function is set as a feedback speed at the time of a plurality of subsequent samplings so that the time integration value becomes "1" in the following cases. .

【0023】第9に、この発明は、上記第1,上記第
2,上記第3,上記第5,上記第6のいずれかのサーボ
モータの速度制御装置において、“1−1/a”の一部
を次回以降の複数回のサンプリング時にそれぞれフィー
ドバック速度とするときに、フィードバック速度に基づ
く係数を速度指令に乗ずることを特徴とするサーボモー
タの速度制御方法を提供する。
Ninth, according to the present invention, in any one of the first, second, third, fifth, and sixth servomotor speed control devices, the "1-1 / a" A speed control method for a servomotor, characterized in that a speed command is multiplied by a coefficient based on the feedback speed when a part of the speed is used as a feedback speed at a plurality of subsequent samplings.

【0024】第10に、この発明は、速度指令とフィー
ドバック速度の差に基づいて電流指令を生成するサーボ
モータの速度制御方法において、位置フィードバックパ
ルス数Mをそのカウントに要した時間Tで割った速度
(M/T)を1サンプリング時間(ITv)当たりの位
置フィードバックパルス数で表した速度(1/a)が所
定の範囲にあるとき、サンプリング時間内に実在する位
置フィードバックパルス数をサンプリング時間で割った
値をフィードバック速度とすることを特徴とするサーボ
モータの速度制御方法を提供する。
Tenthly, the present invention provides a method for controlling the speed of a servomotor which generates a current command based on a difference between a speed command and a feedback speed, wherein the number M of position feedback pulses is divided by a time T required for the counting. When the speed (1 / a) representing the speed (M / T) by the number of position feedback pulses per one sampling time (ITv) is within a predetermined range, the number of position feedback pulses actually existing within the sampling time is calculated by the sampling time. A speed control method for a servo motor, wherein a divided value is used as a feedback speed is provided.

【0025】第11に、この発明は、速度指令とフィー
ドバック速度の差に基づいて電流指令を生成するサーボ
モータの速度制御方法において、位置フィードバックパ
ルス数Mをそのカウントに要した時間Tで割った速度
(M/T)が所定の値または速度指令に基づいて得られ
た値より大きいとき、サンプリング時間内に実在する位
置フィードバックパルス数をサンプリング時間で割った
値をフィードバック速度とすることを特徴とするサーボ
モータの速度制御方法を提供する。
Eleventh, the present invention relates to a servo motor speed control method for generating a current command based on a difference between a speed command and a feedback speed, wherein the number M of position feedback pulses is divided by a time T required for the count. When the speed (M / T) is larger than a predetermined value or a value obtained based on the speed command, a value obtained by dividing the number of position feedback pulses actually existing within the sampling time by the sampling time is used as the feedback speed. To provide a speed control method of a servo motor.

【0026】第12に、この発明は、速度指令とフィー
ドバック速度の差に基づいて電流指令を生成するサーボ
モータの速度制御方法において、位置フィードバックパ
ルス数Mをそのカウントに要した時間Tで割った速度
(M/T)を1サンプリング時間当たりの位置フィード
バックパルス数に換算した値Meがサンプリング時間内
に実在する位置フィードバックパルス数より2以上大き
いか小さいとき、サンプリング時間内に実在する位置フ
ィードバックパルス数をサンプリング時間で割った値を
フィードバック速度とすることを特徴とするサーボモー
タの速度制御方法を提供する。
Twelfth, the present invention relates to a speed control method of a servo motor for generating a current command based on a difference between a speed command and a feedback speed, wherein the number M of position feedback pulses is divided by a time T required for the count. When the value Me obtained by converting the speed (M / T) into the number of position feedback pulses per sampling time is larger or smaller than the number of position feedback pulses actually existing within the sampling time by 2 or more, the number of position feedback pulses actually existing within the sampling time Is divided by a sampling time to provide a feedback speed, and a speed control method for a servo motor is provided.

【0027】第13に、この発明は、上記第1から上記
第12のいずれかのサーボモータの速度制御方法におい
て、クロックパルスをカウンタでカウントして時間Tを
測定すると共に、カウンタがオーバフローしたとき、予
め定めた値または演算式により算出した値をフィードバ
ック速度とすることを特徴とするサーボモータの速度制
御方法を提供する。
According to a thirteenth aspect of the present invention, in any one of the first to twelfth servomotor speed control methods, the clock pulse is counted by a counter to measure the time T, and the counter is used when the counter overflows. A speed control method for a servo motor, wherein a feedback value is a value calculated by a predetermined value or an arithmetic expression.

【0028】[0028]

【作用】M/T方式によりフィードバック速度を求める
と、分解能が上がるため電流指令も滑らかになり、振動
の低減に効果が上がる。しかし、1サンプリング時間内
に1パルス以下の低速度になると、フィードバック速度
が不足してしまう。そこで、この発明は、不足分を次回
以降のサンプリング時にフィードバック速度とする。こ
れにより不足がなくなる。
When the feedback speed is obtained by the M / T method, the resolution is increased, so that the current command becomes smooth, and the effect of reducing the vibration is improved. However, if the speed becomes lower than one pulse within one sampling time, the feedback speed becomes insufficient. Therefore, according to the present invention, the shortage is used as the feedback speed at the time of the next and subsequent samplings. This eliminates the shortage.

【0029】ところで、フィードバック速度が時間的に
遅れると、制御上の位相遅れが増加し、制御が不安定に
なる。一方、サーボモータの速度制御特性は、駆動する
負荷で変わり、応答性も変わるため、同じ遅れ時間でも
位相の遅れへの影響は異なり、また、必要とするトル
ク,軌跡の要求精度などでも異なってくる。従って、不
足分をフィードバック速度とする手法にもバリエーショ
ンが必要である。そこで、この発明は、不足分を次回以
降のサンプリング時にフィードバック速度とする手法の
種々のバリエーションを提供する。これにより実情に応
じた対応が可能となる。
When the feedback speed is delayed in time, the control phase delay increases, and the control becomes unstable. On the other hand, the speed control characteristics of the servomotor vary depending on the load to be driven and the responsiveness also varies. Therefore, the influence on the phase delay differs even with the same delay time, and the required torque and required accuracy of the locus also differ. come. Therefore, there is a need for a variation in the method of using the shortage as the feedback speed. Thus, the present invention provides various variations of a method of using the shortage as a feedback speed at the time of the next and subsequent samplings. This makes it possible to respond to the actual situation.

【0030】1サンプリング時間内のパルス数を“1/
a”とすると、不足分は“1−1/a”となる。上記第
1のサーボモータの速度制御方法は、この不足分“1−
1/a”を次のサンプリング時以降でフィードバック速
度とする。上記第2のサーボモータの速度制御方法は、
この不足分“1−1/a”を次回以降のサンプリング時
に“1/a”づつフィードバック速度とする。最終回は
“1/a”または“1/a”より小さくなる。上記第3
のサーボモータの速度制御方法は、制御上の遅れを小さ
くするため、予めトルク指令の変動値として許容できる
値“A”を把握しておき、その値“A”づつフィードバ
ック速度とする。最終回は“A”または“A”より小さ
くなる。上記第4のサーボモータの速度制御方法は、極
端な場合であり、不足分“1−1/a”を一気にフィー
ドバック速度とする。
The number of pulses in one sampling time is represented by “1 /
a, the shortage becomes “1-1 / a.” The first servo motor speed control method uses the shortage “1-1 / a”.
1 / a "is the feedback speed after the next sampling. The speed control method of the second servomotor is as follows.
The shortage “1-1 / a” is used as the feedback speed by “1 / a” at the time of the next sampling. The last round is “1 / a” or smaller than “1 / a”. The third above
In order to reduce the delay in control, the servo motor speed control method of this embodiment grasps in advance a value "A" that is allowable as a torque command variation value, and sets the value "A" as the feedback speed. The last round is "A" or smaller than "A". The speed control method of the fourth servo motor is an extreme case, and the shortage "1-1 / a" is used as the feedback speed at a stretch.

【0031】上記第5のサーボモータの速度制御方法
は、速度(1/a)に応じて上記バリエーションを使い
分ける。上記第6のサーボモータの速度制御方法は、速
度(1/a)に応じて上記値“A”を変える。これらに
より、最適なフィードバック速度を与える。
In the speed control method for the fifth servo motor, the above variations are selectively used depending on the speed (1 / a). In the sixth servomotor speed control method, the value "A" is changed according to the speed (1 / a). These give the optimum feedback speed.

【0032】上記第7および第8のサーボモータの速度
制御方法は、制御の位相遅れを重視し、速度(1/a)
とは無関係に、所定の値または所定の関数によりフィー
ドバック速度を決める。例えば、位相遅れの条件からm
(=整数)サンプリング時間を最大許容値とすれば、m
サンプリング時間についてフィードバック速度を1/m
とする。このとき、速度(1/a)によりmの値を変更
し、適切なフィードバック速度を与えることも可能であ
る。なお、位置フィードバックパルスは、単にフィード
バック速度,波形の起点を与えるだけである。
In the seventh and eighth speed control methods of the servomotor, the phase delay of control is emphasized, and the speed (1 / a)
Independently of this, the feedback speed is determined by a predetermined value or a predetermined function. For example, m
(= Integer) If the sampling time is the maximum allowable value, m
1 / m feedback speed for sampling time
And At this time, it is also possible to change the value of m according to the speed (1 / a) to provide an appropriate feedback speed. The position feedback pulse merely gives the feedback speed and the starting point of the waveform.

【0033】この発明は、フィードバック速度の不足分
を後から補充するものであるから、遅れた時間分だけ軌
跡は狂うことになるが、実際にはほとんど問題ない。そ
れは、1パルス分に満たない距離の違いを論じているか
らである。実際に問題になるのは、このような補正の違
い(フィードバック速度の不足)が蓄積されてくるとこ
ろに問題がある。しかし、第9のサーボモータの速度制
御方法は、これもなくそうとするものである。すなわ
ち、第9のサーボモータの速度制御方法は、フィードバ
ック速度の不足分に相当する係数を位置ゲインすなわち
速度指令に掛け、不足分の減少と共に“1”に戻すこと
で補充中の影響も除くようにしている。この場合、係数
がかかるので速度指令は変動するが、速度指令そのもの
が小さな値であるので、問題はない。
In the present invention, since the shortage of the feedback speed is supplemented later, the trajectory will be deviated by the delay time, but there is practically no problem. This is because the difference in distance less than one pulse is discussed. Actually becomes a problem, the difference of such a correction (lack of feedback speed) there is a problem in a place that comes is accumulated. However, the ninth method for controlling the speed of the servomotor does not do so. That is, the ninth speed control method of the servomotor multiplies the position gain, that is, the speed command, by a coefficient corresponding to the shortage of the feedback speed, and returns to “1” with the decrease of the shortage, thereby eliminating the influence during replenishment. I have to. In this case, the speed command fluctuates because of the coefficient, but there is no problem because the speed command itself is a small value.

【0034】第10のサーボモータの速度制御方法は、
速度(1/a)が所定の範囲にあるとき、サンプリング
時間内に実在する位置フィードバックパルス数をサンプ
リング時間で割った値をフィードバック速度とする。第
11のサーボモータの速度制御方法は、速度(1/a)
が所定の値または速度指令に基づいて得られた値より大
きいとき、サンプリング時間内に実在する位置フィード
バックパルス数をサンプリング時間で割った値をフィー
ドバック速度とする。そこで、パルス波形の歪が影響し
て考えられない程の大きな速度となったときに、速度
(M/T)を捨てて、サンプリング時間内に実在する位
置フィードバックパルス数をサンプリング時間で割った
値をフィードバック速度とするように出来る。そこで、
パルス波形の歪の影響を除去できる。
A tenth servomotor speed control method is as follows.
When the speed (1 / a) is within a predetermined range, a value obtained by dividing the number of position feedback pulses actually existing within the sampling time by the sampling time is defined as a feedback speed. The speed control method of the eleventh servomotor is based on the speed (1 / a)
Is larger than a predetermined value or a value obtained based on the speed command, a value obtained by dividing the number of position feedback pulses actually existing within the sampling time by the sampling time is used as the feedback speed. Thus, when the speed becomes unbelievably high due to the influence of the pulse waveform distortion, the speed (M / T) is discarded, and the value obtained by dividing the actual number of position feedback pulses within the sampling time by the sampling time. Is the feedback speed. Therefore,
The effect of the distortion of the pulse waveform can be removed.

【0035】サンプリング周期は一般に1msecに満たな
い短時間であり、且つ、今問題にしている状況から見
て、速度は小さく、変速も大きくないので、1サンプリ
ング時間内では均一なパルス分布である。すなわち、サ
ンプリング時間内のごく短い間にパルスが偏在すること
はなく、偏在してもせいぜいサンプリング時の前後の両
端において含まれたり、外れたりする程度である。従っ
て、速度(M/T)を1サンプリング時間当たりのパル
ス数に換算した値Meと,該サンプリング時間内に実在
するパルス数Mの差は2以内になる。一方、パルス波形
の歪が影響して考えられない程の大きな速度となったと
きは、速度(M/T)を1サンプリング時間当たりのパ
ルス数に換算した値Meと,該サンプリング時間内に実
在するパルス数Mの差は、2以内に収まらない。第12
のサーボモータの速度制御方法は、速度(M/T)を1
サンプリング時間当たりのパルス数に換算した値Me
と,該サンプリング時間内に実在するパルス数Mの差
は、とうてい2以内に収まらないとき、速度(M/T)
を捨てて、サンプリング時間内に実在する位置フィード
バックパルス数をサンプリング時間で割った値をフィー
ドバック速度とする。これにより、パルス波形の歪の影
響を除去できる。
The sampling period is generally a short period of less than 1 msec, and the speed is small and the shift is not large in the present situation. Therefore, the pulse distribution is uniform within one sampling time. That is, the pulse is not unevenly distributed within a very short time within the sampling time, and even if unevenly distributed, the pulse is included or deviated at both ends before and after the sampling at the most. Therefore, the difference between the value Me obtained by converting the speed (M / T) into the number of pulses per sampling time and the number M of pulses actually existing within the sampling time is within two. On the other hand, when the pulse waveform is distorted and the speed becomes too large to be considered, the value Me obtained by converting the speed (M / T) into the number of pulses per sampling time and the actual value within the sampling time are used. The difference in the number M of pulses to be performed does not fall within two. Twelfth
The servo motor speed control method of (1) sets the speed (M / T) to 1
Value Me converted to the number of pulses per sampling time
And the difference between the number M of pulses actually existing within the sampling time is almost equal to or less than 2, the speed (M / T)
Is discarded, and the value obtained by dividing the number of position feedback pulses actually existing within the sampling time by the sampling time is used as the feedback speed. Thereby, the influence of the distortion of the pulse waveform can be removed.

【0036】クロックパルスをカウンタでカウントして
時間Tを測定する場合、カウンタがオーバフローする場
合がある。例えば、サーボモータは停止中でも電流のP
WM制御等の影響で揺動しているが、この揺動は不規則
であり、位置フィードバックパルスが来ないまま、時間
を測定するカウンタがオーバフローする可能性がある。
第13のサーボモータの速度制御方法は、カウンタがオ
ーバフローしたとき、予め定めた値または演算式により
算出した値をフィードバック速度とするので、オーバフ
ロー時にもトルク指令値が大きく変動することはない。
When the clock pulse is counted by the counter to measure the time T, the counter may overflow. For example, while the servomotor is stopped, the current P
Although the swing is caused by the influence of the WM control or the like, the swing is irregular, and the counter for measuring the time may overflow without the position feedback pulse coming.
In the thirteenth servo motor speed control method, when the counter overflows, a predetermined value or a value calculated by an arithmetic expression is used as the feedback speed, so that the torque command value does not greatly change even when the counter overflows.

【0037】[0037]

【実施例】図1は、この発明のサーボモータの速度制御
方法を実施するサーボモータの速度制御装置1のブロッ
ク図である。このサーボモータの速度制御装置1は、位
置制御ループと,速度制御ループと,電流制御ループか
らなる。
FIG. 1 is a block diagram of a servomotor speed control device 1 for implementing a servomotor speed control method according to the present invention. The servo motor speed control device 1 includes a position control loop, a speed control loop, and a current control loop.

【0038】速度制御ループ内には、第1速度演算器
2,第2速度演算器3および係数演算器4が含まれてい
る。第1速度演算器2は、フィードバック速度を演算す
る。第2速度演算器3は、位置フィードバックパルス数
Mが1サンプリング時間(ITv)当たりに“1”以下
のとき、不足するフィードバック速度分を補う機能を有
する。係数演算器4は、第2速度演算器3の出力から速
度指令に掛ける係数を演算する。
The speed control loop includes a first speed calculator 2, a second speed calculator 3, and a coefficient calculator 4. The first speed calculator 2 calculates a feedback speed. When the position feedback pulse number M is equal to or less than "1" per one sampling time (ITv), the second speed calculator 3 has a function of compensating for the insufficient feedback speed. The coefficient calculator 4 calculates a coefficient to be multiplied by the speed command from the output of the second speed calculator 3.

【0039】図2は、第1速度演算器2の詳細ブロック
図である。カウンタ21は、時間Tを測定するため、ク
ロックパルスをカウントする。カウンタ22は、1サン
プリング時間内に到着する位置フィードバックパルス数
をアップダウンカウントする。
FIG. 2 is a detailed block diagram of the first speed calculator 2. The counter 21 counts clock pulses to measure the time T. The counter 22 counts up and down the number of position feedback pulses arriving within one sampling time.

【0040】スイッチSWa1は、比較器COM2の機能
を働かせない機能を選択するスイッチである。スイッチ
SWa2は、比較器COM2の機能を働かせる機能を選択
するスイッチである。スイッチSWb1は、比較器COM
3の機能を働かせるか否かを選択するスイッチである。
スイッチSWb2は、比較器COM4の機能を働かせるか
否かを選択するスイッチである。これらのスイッチSW
a1,SWa2,SWb1,SWb2は、最適のフィードバック
手法のバリエーションを選択するように実情に応じて設
定する。
The switch SWa1 is a switch for selecting a function that does not activate the function of the comparator COM2. The switch SWa2 is a switch for selecting a function for operating the function of the comparator COM2. The switch SWb1 is connected to the comparator COM.
This is a switch for selecting whether to activate the function of No. 3.
The switch SWb2 is a switch for selecting whether to activate the function of the comparator COM4. These switches SW
a1, SWa2, SWb1, and SWb2 are set according to the actual situation so as to select the optimal feedback method variation.

【0041】比較器COM1は、カウンタ21がオーバ
フローした場合には、演算器25より第1演算速度V1
を出力させる。カウンタ21がオーバフローしなけれ
ば、比較器COM3,比較器COM4に制御を移す。
When the counter 21 overflows, the comparator COM1 outputs the first operation speed V1 from the arithmetic unit 25.
Output. If the counter 21 does not overflow, the control is transferred to the comparators COM3 and COM4.

【0042】比較器COM2は、停止状態でなく且つ速
度(1/a)が“1”以下の場合には、演算器24より
第1演算速度V1を出力させる。それ以外の場合には、
比較器COM1に制御を移す。停止状態か否かは、速度
指令や位置誤差等により判断する。速度(1/a)は、
図示せぬM/T方式の演算部により算出する。振動,騒
音の問題は主観的で、微妙なもののため、実際には性能
に全く関係がないのに問題になることは多い。例えば工
作機械で停止中の振動が気になるが、補間の軌跡が問題
となる切削作業中はかなり大きな切削反力があって負荷
としては重い状態にあり、トルク指令の幅がかなり大き
くても問題にならない場合もよく見られる。このような
場合に、比較器COM2の機能が有用である。
When the comparator COM2 is not stopped and the speed (1 / a) is equal to or less than "1", the arithmetic unit 24 outputs the first calculation speed V1. Otherwise,
The control is transferred to the comparator COM1. Whether the vehicle is in the stop state is determined based on a speed command, a position error, and the like. The speed (1 / a) is
It is calculated by an M / T type arithmetic unit (not shown). The problem of vibration and noise is subjective and subtle, and often causes a problem even though it has nothing to do with performance. For example, while the machine tool is not moving, the vibration may be a concern.However, during the cutting operation where the interpolation trajectory is a problem, there is a considerable cutting reaction force and the load is heavy. Often this is not a problem. In such a case, the function of the comparator COM2 is useful.

【0043】比較器COM3は、速度(1/a)が所定
値Vpより小さい場合には、演算器23より第1演算速
度V1を出力させる。そうでない場合には、演算器24
より第1演算速度V1を出力させる。速度(1/a)
は、図示せぬM/T方式の演算部により算出する。比較
器COM4は、速度(1/a)を1サンプリング時間の
パルス数に換算した値Meと1サンプリング時間内に実
際に存在したパルス数Mとの差が2以上の場合には、演
算器24より第1演算速度V1を出力させる。そうでな
い場合には、演算器23より第1演算速度V1を出力さ
せる。速度(1/a)は、図示せぬM/T方式の演算部
により算出する。
When the speed (1 / a) is smaller than the predetermined value Vp, the comparator COM3 causes the calculator 23 to output the first calculation speed V1. Otherwise, the operator 24
Then, the first calculation speed V1 is output. Speed (1 / a)
Is calculated by a not-shown M / T type calculation unit. When the difference between the value Me obtained by converting the speed (1 / a) into the number of pulses in one sampling time and the number M of pulses actually existing in one sampling time is 2 or more, the comparator COM4 operates the arithmetic unit 24. Then, the first calculation speed V1 is output. If not, the arithmetic unit 23 outputs the first arithmetic speed V1. The speed (1 / a) is calculated by an unillustrated M / T type calculation unit.

【0044】演算器23は、位置フィードバックパルス
数Mをそのカウントに要した時間Tで割った速度(M/
T)を1サンプリング時間(ITv)当たりの位置フィ
ードバックパルス数で表した速度(1/a)で第1演算
速度V1を出力する。演算器24は、サンプリング時間
内に実在する位置フィードバックパルス数をサンプリン
グ時間で割った速度で第1演算速度V1を出力する。演
算器25は、一定値1/c(但し、c>1)で第1演算
速度V1を出力する。
The arithmetic unit 23 calculates the speed (M / M) by dividing the number M of position feedback pulses by the time T required for the count.
T) is output at the speed (1 / a) represented by the number of position feedback pulses per sampling time (ITv). The calculator 24 outputs the first calculation speed V1 at a speed obtained by dividing the number of position feedback pulses actually existing within the sampling time by the sampling time. The calculator 25 outputs the first calculation speed V1 at a constant value 1 / c (where c> 1).

【0045】比較器COM5は、第1演算速度V1 が
“1”より大きいときは、第1演算速度V1をフィード
バック速度とする。第1演算速度V1 が“1”以下なら
第2速度演算器3に制御を移す。なお、速度の単位は、
(1/ITv)を“1”としている。
When the first operation speed V1 is higher than "1", the comparator COM5 uses the first operation speed V1 as a feedback speed. If the first calculation speed V1 is "1" or less, the control is transferred to the second speed calculator 3. The unit of the speed is
(1 / ITv) is set to “1”.

【0046】原則として、1(1/ITv)以下の値1
/aの時は、不足分(1−1/a)は全て返されるが、
指令が停止のとき軌跡と関係ないので返す必要はない。
但し、返しても問題ないので、破線のスイッチSWcを
設けてもよい。
In principle, a value of 1 (1 / ITv) or less 1
In the case of / a, all shortfalls (1-1 / a) are returned,
When the command is stopped, there is no need to return it because it has nothing to do with the path.
However, since there is no problem in returning, a switch SWc indicated by a broken line may be provided.

【0047】結局、第1速度演算器2から出力される第
1演算速度V1は、M/T方式による速度か,M/IT
v方式による速度か,一定速度1/cかである。
As a result, the first calculation speed V1 output from the first speed calculator 2 is the speed according to the M / T method or the M / IT
Either the speed according to the v method or the constant speed 1 / c.

【0048】図3は、第2速度演算器3の詳細ブロック
図である。第2速度演算器3は、“1”以下の低速度の
場合にフィードバック速度の不足分を補充する処理と,
その補充が複数重なったときの処理とを含んでいる。分
配器31は、フィードバック速度の不足分の補充が重な
ったとき、空きの主演算器32を指示する。主演算器3
2は4個あるので、4個の補充が重なった場合まで対応
できる。なお、主演算器32が4個未満でも5個以上で
もよい。主演算器32の詳細は、図4を参照して後で説
明する。合成器33は、主演算器32の出力を加算し、
第2演算速度V2を出力する。また、重なっている補充
の数jを出力する。
FIG. 3 is a detailed block diagram of the second speed calculator 3. The second speed calculator 3 performs a process of supplementing a shortage of the feedback speed when the speed is lower than “1”;
And processing when a plurality of such replenishments overlap. The distributor 31 indicates an empty main arithmetic unit 32 when replenishment for the shortage of the feedback speed is overlapped. Main operation unit 3
Since there are four 2s, it is possible to cope with the case where four replenishments overlap. Note that the number of main arithmetic units 32 may be less than four or five or more. Details of the main arithmetic unit 32 will be described later with reference to FIG. The synthesizer 33 adds the outputs of the main arithmetic unit 32,
The second calculation speed V2 is output. It also outputs the number of overlapping replenishments j.

【0049】図4は、主演算器32の詳細ブロック図で
ある。スイッチSWdの中には、スイッチSWd1,SW
d2,SWd3,SWd4の4つのスイッチがある。これらス
イッチSWd1,SWd2,SWd3,SWd4のスイッチは、
1つだけオンか又は全てオフである。SWd1がオンされ
ると、次の1回目(i=1)のサンプリング時に“1/
a”を第2演算速度V2とし、2回目(i≠1)以降の
サンプリング時は不足分の残りR(=1−1/a−i/
a)が“1/a”より大きい場合(R>1/a)は“1
/a”を第2演算速度V2とし、小さい場合は不足分の
残りRを第2演算速度V2とする。
FIG. 4 is a detailed block diagram of the main arithmetic unit 32. The switches SWd1 and SWd are included in the switches SWd.
There are four switches d2, SWd3, and SWd4. These switches SWd1, SWd2, SWd3, and SWd4 are:
Only one is on or all are off. When SWd1 is turned on, “1/1 /” is set at the next first (i = 1) sampling.
a ″ is the second calculation speed V2, and at the time of the second (i ≠ 1) or later sampling, the remaining R (= 1−1 / a−i /
If a) is larger than “1 / a” (R> 1 / a), “1”
/ A "is set as the second calculation speed V2, and if it is smaller, the remaining amount R is set as the second calculation speed V2.

【0050】SWd2がオンされると、次の1回目(i=
1)のサンプリング時に“A”を第2演算速度V2と
し、2回目(i≠1)以降のサンプリング時は不足分の
残りR(=1−1/a−i・A)が“A”より大きい場
合(R>A)は“A”を第2演算速度V2とし、小さい
場合は不足分の残りRを第2演算速度V2とする。な
お、速度(1/a)の値に応じて、“A”の値を変更し
てもよい。SWd3がオンされると、次のサンプリング時
に、“1−1/a”を第2演算速度V2とする。
When SWd2 is turned on, the first time (i =
At the time of sampling 1), “A” is set to the second operation speed V2, and at the time of the second (i ≠ 1) or later sampling, the remaining R (= 1−1 / a−i · A) is shorter than “A”. If it is larger (R> A), “A” is set as the second calculation speed V2, and if it is smaller, the remaining R is set as the second calculation speed V2. The value of “A” may be changed according to the value of the speed (1 / a). When SWd3 is turned on, "1-1 / a" is set to the second calculation speed V2 at the next sampling.

【0051】SWd4がオンされると、次の1回目(i=
1)のサンプリング時に“B”を第2演算速度V2と
し、2回目(i≠1)以降のサンプリング時は不足分の
残りR(=1−i・B)が“B”より大きい場合(R>
B)は“B”を第2演算速度V2とし、小さい場合は不
足分の残りRを第2演算速度V2とする。なお、速度
(1/a)の値に応じて、“B”の値を変更してもよ
い。図5に示すように、アナログサーボのとき、エンコ
ーダパルスをフィルタを通してフィードバック速度とす
ることで良好な結果を得られることが分っている。これ
をならって、1パルス分のフィードバック速度を数サン
プリング時にわたってフィードバックしていくが、その
合計は“1”になるような波形にする。
When SWd4 is turned on, the first time (i =
In the sampling of 1), “B” is set to the second operation speed V2, and the remaining R (= 1−i · B) is larger than “B” in the second (i ≠ 1) and subsequent samplings (R >
In B), "B" is set to the second calculation speed V2, and if it is smaller, the remaining shortage R is set to the second calculation speed V2. The value of “B” may be changed according to the value of the speed (1 / a). As shown in FIG. 5, it has been found that good results can be obtained by using an encoder pulse as a feedback speed through a filter in the case of analog servo. Following this, the feedback speed for one pulse is fed back over several sampling times, and the waveform is such that the total becomes "1".

【0052】スイッチSWeは、スイッチSWd1,SW
d2,SWd3,SWd4が全てオフであるとき、オンされ
る。スイッチSWeがオンされると、サンプリング時毎
に、所定の関数f(i)による値を第2演算速度V2と
する。図6に、その関数f(i)を例示する。
The switch SWe includes switches SWd1, SW
It is turned on when d2, SWd3, and SWd4 are all off. When the switch SWe is turned on, a value based on a predetermined function f (i) is set as a second calculation speed V2 every time sampling is performed. FIG. 6 illustrates the function f (i).

【0053】図7は、位置フィードバックパルスP0
1,P2 に対応するフィードバック速度の不足分の補
充が重なる場合を示している。このように補充が重なる
場合は、各補充の和が第2演算速度V2となり、それが
フィードバック速度となる。
FIG. 7 shows the position feedback pulse P 0 ,
This shows a case where the replenishment for the shortage of the feedback speed corresponding to P 1 and P 2 overlaps. When the replenishments overlap in this way, the sum of the replenishments becomes the second calculation speed V2, which becomes the feedback speed.

【0054】係数演算器4は、フィードバック速度の不
足分を補充している間も位置ゲインを変えないようにす
るため(速度指令とフィードバック速度の比率を同じに
するため)に速度指令にかける係数を出力する。この係
数は、フィードバック速度の不足分を全て補充した時
“1”になることより、補充が重ならない場合は、既に
返したフィードバック速度(第2演算速度V2)の積算
値と全く同じ値となる。補充が重なる場合は、均一化す
る。すなわち、補充の重なる期間では関連する第2演算
速度V2の全ての積算値を重なりの数jで割った値とす
る。図7で説明すれば、〔k-3,k-2〕期間では、Poによ
る第2演算速度V2の積算値(この場合は“1”にな
る)とP1 による第2演算速度V2の積算値(この場合
はV2そのものになる)の合計を“2”で割ることで得
られる。
The coefficient calculator 4 applies a coefficient to the speed command so as not to change the position gain (to make the ratio between the speed command and the feedback speed the same) even while the shortage of the feedback speed is being supplemented. Is output. This coefficient becomes “1” when all the shortfalls in the feedback speed are replenished. If the replenishment does not overlap, the coefficient becomes exactly the same value as the integrated value of the already returned feedback speed (second calculation speed V2). . If replenishment overlaps, equalize. That is, in the period in which replenishment overlaps, a value obtained by dividing all integrated values of the related second calculation speed V2 by the number j of overlaps is used. To describe in Figure 7, the [k-3, k-2] period, the integrated value of the second operational speed V2 by P o (this case is "1") and by P 1 of the second operational speed V2 It is obtained by dividing the sum of the integrated value (in this case, V2 itself) by “2”.

【0055】図8は、この発明における図10(従来)
に相当する図である。
FIG. 8 shows FIG. 10 (conventional) of the present invention.
FIG.

【0056】[0056]

【発明の効果】この発明のサーボモータの速度制御方法
によれば、サーボモータの速度が低くなって、1サンプ
リング時間に1パルスも来なくなり、フィードバック速
度に不足が生ずると、予め用意したバリエーションか
ら、位相の遅れ許容範囲内で滑らかなトルクが出力され
るパターンが選ばれ、フィードバック速度の不足分が補
われる。このため、滑らかな運転で且つ2軸以上の補間
運転でも正確な軌跡が得られる。また、負荷によって
は、停止中の振動,騒音の抑制のように、位置ゲインの
変動に関係のない状態でのみM/T方式を使った方がよ
い場合もあるが、M/T方式とM/ITv方式を使い分
けるから、これに対応できる。さらに、M/T方式にお
いては、パルス波形に凹のある場合に演算で得られた速
度値に大きな誤差を含む可能性があるが、これを検出し
てM/ITv方式に切換えるようにしているので、誤動
作を生じない。
According to the servo motor speed control method of the present invention, when the speed of the servo motor is reduced and one pulse does not come in one sampling time, and the feedback speed becomes insufficient, the variation prepared in advance is used. A pattern in which a smooth torque is output within the allowable range of the phase delay is selected, and the shortage of the feedback speed is compensated. Therefore, an accurate trajectory can be obtained even in a smooth operation and an interpolation operation of two or more axes. Also, depending on the load, it may be better to use the M / T method only in a state that is not related to the fluctuation of the position gain, such as to suppress vibration and noise during stoppage. Since the / ITv method is used properly, this can be handled. Further, in the M / T system, there is a possibility that the speed value obtained by the calculation may include a large error when the pulse waveform has a concave portion, but this is detected and switched to the M / ITv system. Therefore, no malfunction occurs.

【図面の簡単な説明】[Brief description of the drawings]

【図1】サーボモータの速度制御装置のブロック図。FIG. 1 is a block diagram of a servomotor speed control device.

【図2】第1速度演算器の詳細ブロック図。FIG. 2 is a detailed block diagram of a first speed calculator.

【図3】第2速度演算器の詳細ブロック図。FIG. 3 is a detailed block diagram of a second speed calculator.

【図4】主演算器の詳細ブロック図。FIG. 4 is a detailed block diagram of a main processing unit.

【図5】アナログサーボのエンコーダの波形処理の説明
図。
FIG. 5 is an explanatory diagram of waveform processing of an analog servo encoder.

【図6】関数の例示図。FIG. 6 is an exemplary diagram of a function.

【図7】フィードバック速度の不足分の補充が重なった
場合の説明図。
FIG. 7 is an explanatory diagram in the case where replenishments for the shortage of the feedback speed overlap.

【図8】この発明における速度指令とフィードバック速
度とトルク指令の説明図。
FIG. 8 is an explanatory diagram of a speed command, a feedback speed, and a torque command according to the present invention.

【図9】従来のサーボモータの速度制御の概念図。FIG. 9 is a conceptual diagram of a conventional servo motor speed control.

【図10】M/T方式の説明図。FIG. 10 is an explanatory diagram of an M / T method.

【図11】M/T方式を実施する装置のブロック図。FIG. 11 is a block diagram of an apparatus that implements the M / T method.

【図12】M/T方式の具体例の説明図。FIG. 12 is an explanatory diagram of a specific example of the M / T method.

【図13】M/T方式の具体例の説明図。FIG. 13 is an explanatory diagram of a specific example of the M / T method.

【図14】M/T方式における速度フィードバックと速
度指令の関係の説明図。
FIG. 14 is an explanatory diagram of a relationship between speed feedback and a speed command in the M / T method.

【図15】フィードバック速度と位置ゲインの関係の説
明図。
FIG. 15 is an explanatory diagram of a relationship between a feedback speed and a position gain.

【図16】円弧補間における位置ゲインが変動したとき
の軌跡の例示図。
FIG. 16 is a view showing an example of a trajectory when a position gain in circular interpolation changes.

【図17】エンコーダのパルス波形割れの例。FIG. 17 is an example of a pulse waveform crack of an encoder.

【符号の説明】[Explanation of symbols]

1 サーボモータの制御装置 2 第1速度演算器 3 第2速度演算器 4 係数演算器 21,22 カウンタ COM1〜COM5 比較器 SWa1,SWa2,SWb1,SWb2 スイッチ 31 分配器 32 主演算器 33 合成器 SWd1,SWd2,SWd3,SWd4,SWe スイッチ REFERENCE SIGNS LIST 1 Servo motor control device 2 First speed calculator 3 Second speed calculator 4 Coefficient calculator 21, 22 Counter COM1 to COM5 Comparator SWa1, SWa2, SWb1, SWb2 Switch 31 Distributor 32 Main calculator 33 Synthesizer SWd1 , SWd2, SWd3, SWd4, SWe switch

───────────────────────────────────────────────────── フロントページの続き (72)発明者 篠原 芳男 名古屋市東区矢田南五丁目1番14号 三 菱電機株式会社 名古屋製作所内 (58)調査した分野(Int.Cl.6,DB名) G05D 3/00 - 3/20──────────────────────────────────────────────────続 き Continuation of the front page (72) Inventor Yoshio Shinohara 5-1-1, Yadaminami, Higashi-ku, Nagoya-shi Nagoya Works, Mitsubishi Electric Co., Ltd. (58) Field surveyed (Int. Cl. 6 , DB name) G05D 3/00-3/20

Claims (13)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 速度指令とフィードバック速度の差に基
づいて電流指令を生成するサーボモータの速度制御方法
において、位置フィードバックパルス数Mをそのカウン
トに要した時間Tで割った速度(M/T)を1サンプリ
ング時間(ITv)当たりの位置フィードバックパルス
数で表した速度(1/a)が“1”以下のとき、合計で
“1−1/a”となるように分けた“1−1/a”の一
部を次回以降の複数回のサンプリング時にそれぞれフィ
ードバック速度とすることを特徴とするサーボモータの
速度制御方法。
In a speed control method of a servomotor for generating a current command based on a difference between a speed command and a feedback speed, a speed (M / T) obtained by dividing the number M of position feedback pulses by a time T required for the count. When the speed (1 / a) expressed by the number of position feedback pulses per sampling time (ITv) is equal to or less than "1", "1-1 / a" is divided so as to be "1-1 / a" in total. a speed control method for a servo motor, wherein a part of a '' is set as a feedback speed at each of a plurality of samplings from the next time.
【請求項2】 請求項1に記載のサーボモータの速度制
御方法において、“1−1/a”を、n(=整数)個の
“1/a”と,1個の“1−1/a−n/a”に分ける
ことを特徴とするサーボモータの速度制御方法。
2. A speed control method for a servo motor according to claim 1, the "1-1 / a", and n (= integer) "1 / a", 1 single "1 -1 / a -n / a ".
【請求項3】 請求項1に記載のサーボモータの速度制
御方法において、“1−1/a”を、n(=整数)個の
“A”(但し、“1/a”<“A”<“1−1/a”
と,1個の“1−1/a−n・A”に分けることを特徴
とするサーボモータの速度制御方法。
3. The servo motor speed control method according to claim 1, wherein “1-1 / a” is replaced by n (= integer) “A” (where “1 / a” <“A”). <“1-1 / a”
A speed control method of a servo motor, wherein the speed is divided into one " 1-1 / a- nA".
【請求項4】 速度指令とフィードバック速度の差に基
づいて電流指令を生成するサーボモータの速度制御方法
において、位置フィードバックパルス数Mをそのカウン
トに要した時間Tで割った速度(M/T)を1サンプリ
ング時間(ITv)当たりの位置フィードバックパルス
数で表した速度(1/a)が“1”以下のとき、“1−
1/a”を次回のサンプリング時にフィードバック速度
とすることを特徴とするサーボモータの速度制御方法。
4. In a speed control method for a servomotor that generates a current command based on a difference between a speed command and a feedback speed, a speed (M / T) obtained by dividing the number M of position feedback pulses by a time T required for the count. When the speed (1 / a) expressed by the number of position feedback pulses per sampling time (ITv) is equal to or less than “1”, “1-
A speed control method for a servo motor, wherein 1 / a "is used as a feedback speed at the next sampling.
【請求項5】 速度(1/a)の値に応じて、請求項
1,請求項2,請求項3,請求項4に記載のサーボモー
タの速度制御方法の一つを選択することを特徴とするサ
ーボモータの速度制御方法。
5. Depending on the value of the speed (1 / a),請 Motomeko 1, claim 2, claim 3, the selection of one of the speed control method for a servo motor according to claim 4 Characteristic servo motor speed control method.
【請求項6】 請求項3または請求項5に記載のサーボ
モータの速度制御方法において、速度(1/a)の値に
応じて、“A”の値を変更することを特徴とするサーボ
モータの速度制御方法。
6. The servo motor speed control method according to claim 3, wherein the value of “A” is changed in accordance with the value of the speed (1 / a). Speed control method.
【請求項7】 速度指令とフィードバック速度の差に基
づいて電流指令を生成するサーボモータの速度制御方法
において、位置フィードバックパルス数Mをそのカウン
トに要した時間Tで割った速度(M/T)を1サンプリ
ング時間(ITv)当たりの位置フィードバックパルス
数で表した速度(1/a)が“1”以下のとき、合計で
“1”となるように分けたn(=整数)個の“B”(<
1/a)と,1個の“1−n・B”を次回以降の複数回
のサンプリング時にそれぞれフィードバック速度とする
ことを特徴とするサーボモータの速度制御装置。
7. A servo motor speed control method for generating a current command based on a difference between a speed command and a feedback speed, wherein a speed (M / T) obtained by dividing the number M of position feedback pulses by a time T required for the count. When the speed (1 / a) expressed by the number of position feedback pulses per sampling time (ITv) is equal to or less than “1”, n (= integer) “B” divided so as to be “1” in total. ”(<
1 / a) and one “1-n · B” as a feedback speed at the time of a plurality of subsequent samplings, respectively.
【請求項8】 速度指令とフィードバック速度の差に基
づいて電流指令を生成するサーボモータの速度制御方法
において、位置フィードバックパルス数Mをそのカウン
トに要した時間Tで割った速度(M/T)を1サンプリ
ング時間(ITv)当たりの位置フィードバックパルス
数で表した速度(1/a)が“1”以下のとき、時間積
分値が“1”となるように所定の関数で決めた値を次回
以降の複数回のサンプリング時にそれぞれフィードバッ
ク速度とすることを特徴とするサーボモータの速度制御
装置。
8. In a speed control method of a servo motor for generating a current command based on a difference between a speed command and a feedback speed, a speed (M / T) obtained by dividing the number M of position feedback pulses by a time T required for the count. When the velocity (1 / a) expressed by the number of position feedback pulses per one sampling time (ITv) is equal to or less than “1”, the value determined by a predetermined function so that the time integration value becomes “1” is calculated next time. A speed control device for a servo motor, wherein a feedback speed is set for each of a plurality of subsequent samplings.
【請求項9】 請求項1,請求項2,請求項3,請求項
5,請求項6のいずれかに記載のサーボモータの速度制
御装置において、“1−1/a”の一部を次回以降の複
数回のサンプリング時にそれぞれフィードバック速度と
するときに、フィードバック速度に基づく係数を速度指
令に乗ずることを特徴とするサーボモータの速度制御方
法。
9. The servo motor speed control device according to claim 1, wherein a part of “1-1 / a” is set to the next time. A speed control method for a servo motor, comprising: multiplying a speed command by a coefficient based on the feedback speed when the feedback speed is set at each of a plurality of subsequent samplings.
【請求項10】 速度指令とフィードバック速度の差に
基づいて電流指令を生成するサーボモータの速度制御方
法において、位置フィードバックパルス数Mをそのカウ
ントに要した時間Tで割った速度(M/T)を1サンプ
リング時間(ITv)当たりの位置フィードバックパル
ス数で表した速度(1/a)が所定の範囲にあるとき、
サンプリング時間内に実在する位置フィードバックパル
ス数をサンプリング時間で割った値をフィードバック速
度とすることを特徴とするサーボモータの速度制御方
法。
10. A servo motor speed control method for generating a current command based on a difference between a speed command and a feedback speed, wherein a speed (M / T) obtained by dividing the number M of position feedback pulses by a time T required for the count. When the speed (1 / a) expressed by the number of position feedback pulses per sampling time (ITv) is within a predetermined range,
A speed control method for a servo motor, wherein a value obtained by dividing the number of position feedback pulses actually existing within a sampling time by a sampling time is used as a feedback speed.
【請求項11】 速度指令とフィードバック速度の差に
基づいて電流指令を生成するサーボモータの速度制御方
法において、位置フィードバックパルス数Mをそのカウ
ントに要した時間Tで割った速度(M/T)が所定の値
または速度指令に基づいて得られた値より大きいとき、
サンプリング時間内に実在する位置フィードバックパル
ス数をサンプリング時間で割った値をフィードバック速
度とすることを特徴とするサーボモータの速度制御方
法。
11. In a speed control method for a servomotor that generates a current command based on a difference between a speed command and a feedback speed, a speed (M / T) obtained by dividing the number M of position feedback pulses by a time T required for the count. Is greater than a predetermined value or a value obtained based on the speed command,
A speed control method for a servo motor, wherein a value obtained by dividing the number of position feedback pulses actually existing within a sampling time by a sampling time is used as a feedback speed.
【請求項12】 速度指令とフィードバック速度の差に
基づいて電流指令を生成するサーボモータの速度制御方
法において、位置フィードバックパルス数Mをそのカウ
ントに要した時間Tで割った速度(M/T)をサンプリ
ング時間当たりの位置フィードバックパルス数に換算し
た値Meがサンプリング時間内に実在する位置フィード
バックパルス数より2以上大きいか小さいとき、サンプ
リング時間内に実在する位置フィードバックパルス数を
サンプリング時間で割った値をフィードバック速度とす
ることを特徴とするサーボモータの速度制御方法。
12. A speed (M / T) obtained by dividing the number M of position feedback pulses by the time T required for counting in a speed control method of a servo motor that generates a current command based on a difference between the speed command and a feedback speed. Is converted to the number of position feedback pulses per sampling time, and when Me is larger or smaller than the number of position feedback pulses actually existing within the sampling time by 2 or more, a value obtained by dividing the number of position feedback pulses actually existing within the sampling time by the sampling time. A speed as a feedback speed.
【請求項13】 請求項1から請求項12のいずれかに
記載のサーボモータの速度制御方法において、クロック
パルスをカウンタでカウントして時間Tを測定すると共
に、カウンタがオーバフローしたとき、予め定めた値ま
たは演算式により算出した値をフィードバック速度とす
ることを特徴とするサーボモータの速度制御方法。
13. The servo motor speed control method according to claim 1, wherein the clock pulse is counted by a counter to measure the time T, and when the counter overflows, the predetermined time is determined. A speed control method for a servo motor, wherein a value calculated by a value or an arithmetic expression is used as a feedback speed.
JP8876892A 1992-04-09 1992-04-09 Servo motor speed control method Expired - Lifetime JP2778341B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8876892A JP2778341B2 (en) 1992-04-09 1992-04-09 Servo motor speed control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8876892A JP2778341B2 (en) 1992-04-09 1992-04-09 Servo motor speed control method

Publications (2)

Publication Number Publication Date
JPH05289749A JPH05289749A (en) 1993-11-05
JP2778341B2 true JP2778341B2 (en) 1998-07-23

Family

ID=13952043

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8876892A Expired - Lifetime JP2778341B2 (en) 1992-04-09 1992-04-09 Servo motor speed control method

Country Status (1)

Country Link
JP (1) JP2778341B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5989612A (en) * 1996-10-11 1999-11-23 Rodia Inc. Foods including antimycotic agent

Also Published As

Publication number Publication date
JPH05289749A (en) 1993-11-05

Similar Documents

Publication Publication Date Title
EP0051477B1 (en) Spindle orientation control method and apparatus
Pritschow et al. Direct drives for high-dynamic machine tool axes
EP0292575B1 (en) Servo motor controller
JPH063994B2 (en) Control method for multiple digital servos
SU822772A3 (en) Device for control of synchronous motion of gear-working lathe
JP2708056B2 (en) Machine tools for processing workpieces
JPH08179831A (en) Quadrant projection correcting method for full-closed loop system
JP2720584B2 (en) Tuning phase controller for servo system
JPH0833763B2 (en) Numerical control unit
WO1988004445A1 (en) Numerical controller
JP2778341B2 (en) Servo motor speed control method
CN106843304A (en) Motor general-purpose control system and method
JPS61214002A (en) Control system for follow-up error
US4234830A (en) Stepping motor control circuit
JP2793804B2 (en) Pulse distribution method
US4642542A (en) Velocity control systems
KR930001582B1 (en) Reference-point return method
JP2001290541A (en) Method for accelerating and decelerating industrial machine
JP2670871B2 (en) Flexible feedback method
KR920009888B1 (en) Method of controlling servo motor
US4362979A (en) Stepping motor control circuit
KR970003877B1 (en) Method of controlling feed-forward of servo motor
Zhu FPGA-based velocity estimation for control of harmonic drives
JPH08328635A (en) Position control system
JPH0667240B2 (en) Speed controller for digital servo system with pulse encoder

Legal Events

Date Code Title Description
FPAY Renewal fee payment (prs date is renewal date of database)

Year of fee payment: 10

Free format text: PAYMENT UNTIL: 20080508

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090508

Year of fee payment: 11

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100508

Year of fee payment: 12

FPAY Renewal fee payment (prs date is renewal date of database)

Year of fee payment: 12

Free format text: PAYMENT UNTIL: 20100508

FPAY Renewal fee payment (prs date is renewal date of database)

Year of fee payment: 13

Free format text: PAYMENT UNTIL: 20110508

FPAY Renewal fee payment (prs date is renewal date of database)

Year of fee payment: 13

Free format text: PAYMENT UNTIL: 20110508

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120508

Year of fee payment: 14

EXPY Cancellation because of completion of term