JP3199769B2 - Servo control device - Google Patents

Servo control device

Info

Publication number
JP3199769B2
JP3199769B2 JP09971391A JP9971391A JP3199769B2 JP 3199769 B2 JP3199769 B2 JP 3199769B2 JP 09971391 A JP09971391 A JP 09971391A JP 9971391 A JP9971391 A JP 9971391A JP 3199769 B2 JP3199769 B2 JP 3199769B2
Authority
JP
Japan
Prior art keywords
command
speed
movement command
unit
loop processing
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
Application number
JP09971391A
Other languages
Japanese (ja)
Other versions
JPH04308902A (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.)
FANUC Corp
Original Assignee
FANUC 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 FANUC Corp filed Critical FANUC Corp
Priority to JP09971391A priority Critical patent/JP3199769B2/en
Publication of JPH04308902A publication Critical patent/JPH04308902A/en
Application granted granted Critical
Publication of JP3199769B2 publication Critical patent/JP3199769B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Control Of Position Or Direction (AREA)
  • Automatic Control Of Machine Tools (AREA)
  • Numerical Control (AREA)

Description

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

【0001】[0001]

【産業上の利用分野】本発明は、サーボモータのサーボ
制御をプロセッサで行なう、いわゆるディジタルサーボ
(ソフトウエアサーボ)に関し、特に、工作機械やロボ
ット等において高精度の滑らかな軌跡が要求されるサー
ボモータの制御に適したサーボ制御装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a so-called digital servo (software servo) in which a servo control of a servo motor is performed by a processor, and more particularly, to a servo requiring a high-precision smooth locus in a machine tool or a robot. The present invention relates to a servo control device suitable for controlling a motor.

【0002】[0002]

【従来の技術】サーボモータを用いて工作機械の送り軸
やロボットのアームなどを制御するとき、位置偏差量を
低減させるためにフィードフォワード制御が行われる。
特に、工作機械で高速切削を行う場合、サーボ系の追従
遅れによる形状誤差が生じる。そのため、この形状誤差
を少くするため位置ループにフィードフォワードをかけ
ることがある。
2. Description of the Related Art When a servomotor is used to control a feed axis of a machine tool, a robot arm, or the like, feedforward control is performed to reduce the amount of positional deviation.
In particular, when high-speed cutting is performed by a machine tool, a shape error occurs due to a delay in following the servo system. Therefore, in order to reduce this shape error, feedforward may be applied to the position loop.

【0003】図4は従来から公知の位置、速度のフィー
ドフォワード制御を行なうサーボ系のブロック線図であ
る。図4中、伝達関数1のKp は位置ループにおけるポ
ジションゲイン、伝達関数2は速度ループの伝達関数で
k1は速度ループにおける積分ゲインで、k2は速度ル
ープにおける比例ゲインである。3はサーボモータの機
械部で、Ktはトルク定数、Jmはイナーシャ、4はサ
ーボモータの回転速度を積分し、位置を算出する伝達関
数である。また、5,6は位置のフィードフォワード項
であり、5は移動指令aを微分する伝達関数の項、6は
位置のフィードフォワード係数α1を乗じる項である。
FIG. 4 is a block diagram of a servo system for performing conventionally known position and speed feedforward control. In FIG. 4, Kp of the transfer function 1 is the position gain in the position loop, transfer function 2 is the transfer function of the speed loop, k1 is the integral gain in the speed loop, and k2 is the proportional gain in the speed loop. Reference numeral 3 denotes a mechanical part of the servomotor, Kt denotes a torque constant, Jm denotes inertia, and 4 denotes a transfer function for calculating the position by integrating the rotational speed of the servomotor. Also, 5 and 6 are position feedforward terms, 5 is a term of a transfer function for differentiating the movement command a, and 6 is a term multiplied by the position feedforward coefficient α1.

【0004】また、7,8は速度フィードフォワード制
御の伝達関数で、7は伝達関数5の出力を微分する項、
8は速度フィードフォワード係数α2を乗じる項であ
る。
[0004] Reference numerals 7 and 8 denote transfer functions of the speed feedforward control, and 7 denotes a term for differentiating the output of the transfer function 5.
8 is a term multiplied by the velocity feedforward coefficient α2.

【0005】数値制御装置等のホストプロセッサより分
配周期(以下ITP周期という)毎の移動指令Mcが出
力され、該移動指令Mcよりサーボ制御を行なうプロセ
ッサは位置・速度ループ処理における移動指令aを求
め、位置・速度ループ処理を行ないサーボモータを制御
する。まず、位置、速度のフィードフォワード制御を行
なわないときの動作を説明すると、求められた当該位置
・速度ループ周期の移動指令aよりサーボモータの実際
の移動量のフィードバック量afを減じて位置偏差を求
めこの位置偏差にポジションゲインKp を乗じ速度指令
Vc1 を求め、この速度指令からサーボモータの実速度
のフィードバック量Vfを減じて速度偏差をもとめて、
この速度偏差の積分値に積分ゲインK1を乗じた値に、
上記速度偏差に比例ゲインK2を乗じた値を加算してト
ルク指令(サーボモータへの電流指令)Tc1を求める
速度ループ処理を行い、求められたトルク指令Tc1で
サーボモータを駆動している。
A movement command Mc for each distribution cycle (hereinafter referred to as ITP cycle) is output from a host processor such as a numerical controller, and a processor that performs servo control based on the movement command Mc obtains a movement command a in the position / speed loop processing. And performs a position / velocity loop process to control the servomotor. First, the operation when the feedforward control of the position and the speed is not performed will be described. The position deviation is calculated by subtracting the feedback amount af of the actual movement amount of the servo motor from the obtained movement command a of the position / speed loop cycle. The position deviation is multiplied by a position gain Kp to obtain a speed command Vc1, and a feedback amount Vf of the actual speed of the servo motor is subtracted from the speed command to obtain a speed deviation.
The value obtained by multiplying the integral value of the speed deviation by the integral gain K1 is
A value obtained by multiplying the speed deviation by a proportional gain K2 is added to perform a speed loop process for obtaining a torque command (current command to the servo motor) Tc1, and the servo motor is driven by the obtained torque command Tc1.

【0006】また、位置および速度のフィードフォワー
ド制御も行なうときは、移動指令aを微分し(項5)、
その微分値に位置フィードフォワード係数α1を乗じた
値を移動指令の単位から速度指令の単位に変換し位置の
フィードフォワード量Vc2を求め、この位置のフィー
ドフォワード量Vc2を、通常の位置ループ処理で求め
た速度指令Vc1に加算して、速度ループ処理に対する
速度指令とする。該速度指令(Vc=Vc1+Vc2)
よって前述した速度ループ処理を行ないトルク指令Tc
1を求める。また、項5から出力される移動指令の微分
値をさらに微分し(加速度)、この微分値に速度フィー
ドフォワード係数α2を乗じて得られる値を移動指令の
単位からトルク指令(電流指令)の単位に変換し速度フ
ィードフォワード量Tc2を求め、先に求めたトルク指
令Tc1に該速度フィードフォワード量Tc2を加算し
サーボモータへのトルク指令(電流指令)としてサーボ
モータを駆動している。
When the position and velocity feedforward control is also performed, the movement command a is differentiated (section 5).
The value obtained by multiplying the differential value by the position feedforward coefficient α1 is converted from the unit of the movement command to the unit of the speed command to obtain the feedforward amount Vc2 of the position, and the feedforward amount Vc2 of this position is obtained by ordinary position loop processing. The speed command Vc1 is added to the obtained speed command to obtain a speed command for the speed loop process. The speed command (Vc = Vc1 + Vc2)
Therefore, the above-described speed loop processing is performed to execute the torque command Tc.
Find 1 Further, the differential value of the movement command output from the term 5 is further differentiated (acceleration), and a value obtained by multiplying the differentiated value by the speed feedforward coefficient α2 is converted from the unit of the movement command to the unit of the torque command (current command). To obtain the speed feedforward amount Tc2, add the speed feedforward amount Tc2 to the previously obtained torque command Tc1, and drive the servomotor as a torque command (current command) to the servomotor.

【0007】[0007]

【発明が解決しようとする課題】上述したようなサーボ
制御をプロセッサで行なうディジタルサーボの場合、移
動指令,速度指令,トルク指令がディジタル化されたも
のであり、これらの指令は少なくとも、ディジタル化の
最小単位で変化することになり、この量子化による誤差
が発生する。工作機械等において、テーブル(ワーク)
や工具を駆動するサーボモータを上記ディジタルサーボ
で制御した場合、工具軌跡に滑らかさが要求され、高精
度の加工が要求される場合において、量子化による誤差
が生じ、必要とする工具軌跡の滑らかさにならないとい
う問題がある。また、フィードフォワード制御を行なっ
た際には、移動指令の微分およびそのまた微分を行なう
ことから、移動指令の値が値が変化する時、フィードォ
ワード量Vc2,Tc2の値は大きく変化し、これが速
度指令およびトルク指令に加算されることになるので、
モータ速度は瞬間的に変化しショックが発生したり、振
動が発生したりする原因となる。
In the case of a digital servo in which the above-described servo control is performed by a processor, a movement command, a speed command, and a torque command are digitized, and these commands are at least digitized. It changes in the minimum unit, and an error occurs due to this quantization. Table (work) for machine tools
When the servomotor that drives the tool or tool is controlled by the above digital servo, smoothness is required for the tool trajectory, and when high-precision machining is required, an error due to quantization occurs, and the required tool trajectory is smoothed. There is a problem that does not matter. Further, when the feedforward control is performed, the derivative of the movement command and the differentiation thereof are performed. Therefore, when the value of the movement command changes, the values of the feedforward amounts Vc2 and Tc2 greatly change, Since this will be added to the speed command and torque command,
The motor speed changes instantaneously, causing a shock or a vibration.

【0008】そこで本発明の目的は、ディジタルサーボ
において、量子化による誤差を少なくし、また、フィー
ドフォワード制御を実施してもショックや振動を抑制
し、高精度で滑らかな移動軌跡を得ることができるサー
ボ制御装置を提供することにある。
It is an object of the present invention to reduce errors due to quantization in a digital servo, to suppress shock and vibration even when feedforward control is performed, and to obtain a highly accurate and smooth movement trajectory. It is an object of the present invention to provide a servo control device that can perform the control.

【0009】[0009]

【課題を解決するための手段】本発明は、指令プログラ
ムに基づいて移動指令量を計算する計算手段と、該計算
手段から受けた移動指令量に基づいて位置ループ処理を
行い制御対象の位置制御を行なう位置ループ処理手段と
を有するサーボ制御装置において、上記計算手段で算出
する移動指令最小単位を、制御対象の位置を検出する位
置検出手段からの位置フィードバック信号の検出単位よ
り小さくし、位置ループ処理においては位置フィードバ
ック量を移動指令の単位に変換してデータ処理を行い制
御対象の位置制御を行なうようにした
SUMMARY OF THE INVENTION The present invention provides a command program.
Calculating means for calculating the movement command amount based on the
Position loop processing based on the movement command amount received from the
Position loop processing means for performing position control of the control target
In the servo control device having
The minimum unit of movement command to be executed is
Unit of position feedback signal detection from the position detection means
Position feedback in the position loop processing.
The amount of data is converted to the movement command unit and
The position of the target is controlled .

【0010】[0010]

【作用】計算手段から出力される移動指令は制御対象の
位置を検出する位置検出手段からの位置フィードバック
信号の検出単位よりも小さな単位の量で出力され、位置
・速度ループの処理をこの単位で処理されることになる
ので、速度指令,トルク指令の各位置・速度ループ処理
周期毎の変化量もこの小さな単位による変化となり、そ
の変化量をこの小さな単位に基づいて小さくすることが
でき、量子化の誤差はこの小さな単位による誤差とな
り、滑らかな軌跡を得ることができる。またフィードフ
ォワード制御を行なうときも、移動指令を上記小さな単
位で行ない、各周期毎の移動指令の変化量を小さくすれ
ば、この移動指令を微分およびそのまた微分を行なって
求められるフィードフォワード量Vc2,Tc2も大き
く変化せず、モータにショクや振動が発生することを
防止することができる。
The movement command output from the calculation means is
Position feedback from position detection means for detecting position
The output is performed in smaller units than the signal detection unit , and the processing of the position / velocity loop is processed in this unit. Therefore, the variation of the speed command and torque command in each position / speed loop processing cycle is also The change is caused by the small unit, and the amount of change can be reduced based on the small unit. The quantization error becomes an error in the small unit, and a smooth trajectory can be obtained. Also, when the feedforward control is performed, if the movement command is performed in the above-described small unit and the amount of change of the movement command in each cycle is reduced, the movement command is differentiated and the feedforward amount Vc2 obtained by differentiating the movement command. , it is possible to prevent the Tc2 also does not change significantly, shock or vibration motor generates.

【0011】[0011]

【実施例】図3は、本発明の1実施例を実施するデジタ
ルサーボ制御装置のブロック図であり、構成は従来のデ
ジタルサーボ制御を行う装置と同一構成であるので、概
略的に示している。
FIG. 3 is a block diagram of a digital servo control device for carrying out an embodiment of the present invention. Since the configuration is the same as that of a conventional device for performing digital servo control, it is schematically shown. .

【0012】図3において、20はホストプロセッサと
しての数値制御装置(以下、NCという)、21は共有
RAM、22はプロセッサ(CPU),ROM,RAM
等を有するデジタルサーボ回路、23はトランジスタイ
ンバータ等のサーボアンプ、24はサーボモータ、25
はサーボモータ24の回転と共にパルスを発生し位置を
検出するパルスコーダである。
In FIG. 3, reference numeral 20 denotes a numerical controller (hereinafter, referred to as NC) as a host processor, 21 denotes a shared RAM, 22 denotes a processor (CPU), ROM, and RAM.
A servo amplifier such as a transistor inverter; 24, a servomotor;
Is a pulse coder that generates a pulse with the rotation of the servomotor 24 and detects the position.

【0013】NC20はIPT周期(分配周期)毎に移
動指令Mcを共有RAM21に書込み、デジタルサーボ
回路22のCPUはこの移動指令Mcを共有RAM21
から読取り、上記ITP周期をN個に分割した周期Tで
位置・速度ループ処理を行う。すなわち、ITP周期毎
NC20から出力される移動指令McがITP周期中均
等に分配されるように位置・速度ループ処理に対する移
動指令aを求め、パルスコーダ25からのフィードバッ
クパルスによって得られるサーボモータ24の現在位置
との差より位置ループ処理を行う。さらには、位置のフ
ィードフォワード制御処理を行って速度指令を求め、次
に、該速度指令とパルスコーダ25からのフィードバッ
クパルスによって得られるサーボモータ24の実速度よ
り速度ループ処理、さらには速度のフィードフォワード
処理を行い、トルク指令(電流指令)を求める。そし
て、電流ループ処理を行い、PWM指令を作成し、サー
ボアンプ23を介してサーボモータ24を駆動する。
The NC 20 writes a movement command Mc into the shared RAM 21 at every IPT cycle (distribution cycle), and the CPU of the digital servo circuit 22 writes the movement command Mc into the shared RAM 21.
And the position / velocity loop processing is performed in a cycle T obtained by dividing the above ITP cycle into N pieces. That is, a movement command a for the position / velocity loop processing is determined so that the movement command Mc output from the NC 20 every ITP cycle is evenly distributed during the ITP cycle, and the current value of the servo motor 24 obtained by the feedback pulse from the pulse coder 25 is obtained. Position loop processing is performed based on the difference from the position. Further, a position feed-forward control process is performed to obtain a speed command. Next, a speed loop process is performed based on the speed command and the actual speed of the servo motor 24 obtained by a feedback pulse from the pulse coder 25. Processing is performed to obtain a torque command (current command). Then, a current loop process is performed to generate a PWM command, and the servo motor 24 is driven via the servo amplifier 23.

【0014】図1,図2は本実施例のディジタルサーボ
回路22のプロセッサとNC装置のプロセッサが行なう
処理のフローチャートである。
FIGS. 1 and 2 are flowcharts of the processing performed by the processor of the digital servo circuit 22 and the processor of the NC unit according to the present embodiment.

【0015】NC装置20のプロセッサはITP周期
毎、図2の処理を実行し、NCプログラムを読み、各軸
毎の移動指令を作成する(ステップS201,S20
2)。この場合、従来は、この移動指令の最小単位をサ
ーボモータ24に取りつけられたパルスコーダ25から
の位置フィードバックパルスの検出単位とほぼ同等の単
位としていたが、本発明では、この位置フィードバック
パルスの検出単位よりも十分細かい単位で算出する。そ
して、この算出した移動指令Mcを共有RAM21に書
き込み当該周期の処理を終了する。以下、該処理をNC
装置20のプロセッサはIPT周期毎繰り返し実行す
る。
The processor of the NC unit 20 executes the processing of FIG. 2 for each ITP cycle, reads the NC program, and creates a movement command for each axis (steps S201 and S20).
2). In this case, conventionally, the minimum unit of the movement command is set to be substantially the same as the unit for detecting the position feedback pulse from the pulse coder 25 attached to the servomotor 24. However, in the present invention, the unit for detecting the position feedback pulse is It is calculated in a unit that is sufficiently smaller than that. Then, the calculated movement command Mc is written into the shared RAM 21, and the processing of the cycle ends. Hereinafter, this processing is referred to as NC
The processor of the device 20 repeatedly executes every IPT cycle.

【0016】一方、ディジタルサーボ回路22のプロセ
ッサはIPT周期毎共有RAM21から移動指令MCを
読み取り、IPT周期を等分割した位置・速度ループ処
理周期毎の図1に示す処理を実行する。まず位置・速度
ループ処理周期毎の移動指令aを求め(ステップS10
1)、該移動指令aを位置偏差εを記憶するレジスタR
(ε)に加算し、さらに、パルスコーダ25で検出され
る位置フィードバック量afに対し移動指令aの単位に
変換する変換係数βを乗じて得られる値をレジスタR
(ε)から減じて位置偏差を求める(ステップS10
2)。なお、β=(位置フィードバックパルスの検出最
小単位)/(移動指令aの最小単位)>1である。
On the other hand, the processor of the digital servo circuit 22 reads the movement command MC from the shared RAM 21 for each IPT cycle, and executes the processing shown in FIG. 1 for each position / speed loop processing cycle obtained by equally dividing the IPT cycle. First, a movement command a for each position / speed loop processing cycle is obtained (step S10).
1) The movement command a is stored in a register R for storing the position deviation ε.
(Ε), and a value obtained by multiplying the position feedback amount af detected by the pulse coder 25 by a conversion coefficient β for converting into the unit of the movement command a is stored in the register R.
(Ε) to obtain the position deviation (step S10)
2). Here, β = (minimum unit of position feedback pulse detection) / (minimum unit of movement command a)> 1.

【0017】次に、求められた位置偏差εが上記変換係
数βのの範囲内か否か、すなわち−β<ε<βであるか
否か判断し(ステップS103)、範囲外であれば、該
位置偏差εに位置ループ処理におけるポジションゲイン
Kp を乗じて速度指令Vc1を求める(ステップS10
4)。また、位置偏差εが上記係数βの範囲内ならば、
速度指令Vc1を「0」とする(ステップS105)。
この(ステップS105の処理は、停止時に位置偏差ε
が上記変換係数βの範囲内であり、位置の検出単位で
は、位置偏差が「0」である時に、ステップS104の
ように速度指令Vc1を求めサーボモータを駆動する
と、パルスコーダ25から位置フィードバックパルスが
1パルス出力される毎に、位置偏差εは+β,−β変動
することになり、振動が発生する等、不安定になること
から速度指令Vc1を「0」にするものである。
Next, it is determined whether the obtained position deviation ε is within the range of the conversion coefficient β, ie, whether −β <ε <β (step S103). The speed command Vc1 is obtained by multiplying the position deviation ε by the position gain Kp in the position loop processing (step S10).
4). If the position deviation ε is within the range of the coefficient β,
The speed command Vc1 is set to “0” (step S105).
This processing (step S105 is performed when the position deviation ε
Is within the range of the conversion coefficient β, and in the position detection unit, when the position deviation is “0”, the speed command Vc1 is obtained as in step S104 and the servomotor is driven. Each time one pulse is output, the position deviation ε fluctuates by + β and −β, and becomes unstable due to generation of vibration, and so the speed command Vc1 is set to “0”.

【0018】次に、移動指令aからレジスタR1(a)
に記憶する1つ前の位置・速度ループにおける移動指令
を減じて移動指令の微分を行ない、得られた値に位置フ
ィードフォワード係数α1および移動指令の単位を速度
指令の単位に変換する係数P1を乗じて位置のフィード
フォワード量Vc2を求める(ステップS106)。す
なわち、図4の伝達関数5,6の処理を行ない位置のフ
ィードフォワード量Vc2を求める。そして、ステップ
S104若しくはステップS105で求めた速度指令V
c1に上記位置フィードフォワード量Vc2を加算し速
度ループ処理に対する速度指令Vcを求め(ステップS
107)、アキュムレータAに該速度指令Vcを加算す
ると共にパルスコーダ25で検出される速度フィードバ
ック量Vfを該アキュムレータAから減じ(ステップS
108)、アギュムレータAに記憶する値に積分ゲイン
K1を乗じた値と、速度指令Vcから速度フィードバッ
ク量Vfを減じた値に比例ゲインK2を乗じた値を加算
し、トルク指令Tc1を求める(ステップS109)。
すなわち、ステップS108,S109の処理が図4に
おける速度ループ処理に対応する。
Next, from the movement command a, the register R1 (a)
The differential of the move command is performed by subtracting the move command in the previous position / velocity loop stored in the unit. The position is multiplied to obtain a feedforward amount Vc2 at the position (step S106). That is, the processing of the transfer functions 5 and 6 in FIG. 4 is performed to determine the feedforward amount Vc2 at the position. Then, the speed command V obtained in step S104 or step S105.
The speed command Vc for the speed loop process is obtained by adding the position feedforward amount Vc2 to c1 (step S
107), the speed command Vc is added to the accumulator A, and the speed feedback amount Vf detected by the pulse coder 25 is subtracted from the accumulator A (Step S).
108), a value obtained by multiplying the value stored in the accumulator A by the integral gain K1 and a value obtained by multiplying a value obtained by subtracting the speed feedback amount Vf from the speed command Vc by a proportional gain K2 are added to obtain a torque command Tc1 (step) S109).
That is, the processing in steps S108 and S109 corresponds to the speed loop processing in FIG.

【0019】次に、速度フィードフォワード量Tc2を
求める(図4の伝達関数7,8の処理)。位置・速度ル
ープ処理周期nでの移動指令をa(n)、1周期前の移
動指令をa(n−1)、2周期前をa(n−2)とする
と、当該周期nでの図4における伝達関数5による微分
値はa(n)−a(n−1)となる。また当該周期より
1周期前の微分値はa(n−1)−a(n−2)とな
る。そして、伝達関数7による微分は上記微分値の差と
して求められるから、 [a(n)−a(n−1)]−[a(n−1)−a(n−2)] =a(n)−2a(n−1)+a(n−2)…(1) となる。そこで、当該周期より1つ前の移動指令a(n
−1)をレジスタR1(a)に、2つ前の移動指令a
(n−2)をレジスタR2(a)に記憶しておき、上記
第(1)式の演算を行ない、得られた値に速度フィード
フォワード係数α2、および移動指令の単位からトルク
指令(電流指令)の単位へ変換する係数P2を乗じて速
度フィードフォワード量Tc2を求める(ステップS1
10)。
Next, the speed feedforward amount Tc2 is obtained (processing of the transfer functions 7 and 8 in FIG. 4). Assuming that the movement command in the position / speed loop processing cycle n is a (n), the movement command one cycle before is a (n−1), and the movement command two cycles before is a (n−2), The differential value by the transfer function 5 in 4 is a (n) -a (n-1). The differential value one cycle before the cycle is a (n-1) -a (n-2). Then, since the differentiation by the transfer function 7 is obtained as the difference between the above-mentioned differential values, [a (n) −a (n−1)] − [a (n−1) −a (n−2)] = a ( n) -2a (n-1) + a (n-2) (1) Therefore, the movement command a (n
-1) is stored in the register R1 (a).
(N-2) is stored in the register R2 (a), and the calculation of the above equation (1) is performed, and the obtained value is converted into a torque command (current command) from the speed feedforward coefficient α2 and the unit of the movement command. ) Is multiplied by a coefficient P2 to be converted into a unit of the speed feedforward amount Tc2 (step S1).
10).

【0020】そして、レジスタR2(a)にレジスタR
1(a)の値を、レジスタR1(a)に当該周期で求め
られた移動指令aを格納し、次の周期で用いる1つ前、
および2つ前の周期の移動指令を記憶する(ステップS
111,S112)。次に、ステップS109、S11
0で求められたトルク指令Tc1と速度フィードフォワ
ード量Tc2を加算しモータへのトルク指令Tcを求
め、このトルク指令Tcを電流ループ処理に引き渡し
(ステップS113、S114)、当該位置・速度ルー
プ処理を終了する。そして、電流ループ処理が従来と同
様に実行され、PWM指令を作成し、サーボアンプ23
を介してサーボモータ24を駆動し該モータの位置・速
度が制御されることになる。
The register R2 (a) stores the register R
The value of 1 (a) is stored in the register R1 (a) with the movement command a obtained in the cycle, and is used immediately before the next cycle.
And the movement command of the previous two cycles is stored (step S
111, S112). Next, steps S109 and S11
The torque command Tc1 and the speed feedforward amount Tc2 obtained at 0 are added to obtain a torque command Tc to the motor, and the torque command Tc is passed to the current loop processing (steps S113 and S114), and the position / speed loop processing is performed. finish. Then, the current loop processing is executed in the same manner as in the related art, a PWM command is created, and the servo amplifier 23
, The servo motor 24 is driven to control the position and speed of the motor.

【0021】図5、図6は半径150mm、切削速度6
000mm/min、位置および速度フィードフォワー
ド係数α1=1.0,α2=1.0で円弧切削を行なっ
た時の工具軌跡のシュミレーション結果を表したもの
で、図5は移動指令の最小単位を5μmとし、図6では
移動指令の最小単位を0.5μmとしたときの工具軌跡
を表すもので、この図5、図6から明らかのように、移
動指令の最小単位を小さくすれば、工具軌跡が滑らかに
なることが分かる。
5 and 6 show a radius of 150 mm and a cutting speed of 6
000 mm / min, position and velocity feedforward coefficients α1 = 1.0, α2 = 1.0, showing simulation results of tool trajectory when arc cutting is performed. FIG. 5 shows the minimum unit of the movement command as 5 μm. In FIG. 6, the tool trajectory when the minimum unit of the movement command is 0.5 μm is shown. As is clear from FIGS. 5 and 6, if the minimum unit of the movement command is reduced, the tool trajectory becomes smaller. It turns out that it becomes smooth.

【0022】[0022]

【発明の効果】本発明は、サーボ制御をプロセッサの処
理によって行なうディジタルサーボにおいて、単に該デ
ィジタルサーボのプロセッサに対して出力される移動指
令の最小単位を小さくし、この小さな単位で位置・速度
ループ処理を行なうことによって量子化にともなう誤差
によるショックや振動を軽減すると共に移動軌跡を滑ら
かにできるという効果を有するものである。
According to the present invention, in a digital servo system in which servo control is performed by processing of a processor, the minimum unit of a movement command output to the processor of the digital servo is simply reduced, and the position / velocity loop is reduced by the small unit. By performing the processing, it is possible to reduce shocks and vibrations due to errors due to quantization and to have an effect that a moving trajectory can be smoothed.

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

【図1】本発明の一実施例のディジタルサーボ回路のプ
ロセッサが実施する位置・速度ループ処理のフローチャ
ートである。
FIG. 1 is a flowchart of a position / velocity loop process executed by a processor of a digital servo circuit according to an embodiment of the present invention.

【図2】同実施例のホストプロセッサが実施する分配周
期毎の処理のフローチャートである。
FIG. 2 is a flowchart of a process for each distribution cycle performed by the host processor of the embodiment.

【図3】同実施例を実施するディジタルサーボ装置のブ
ロック図である。
FIG. 3 is a block diagram of a digital servo device that implements the embodiment.

【図4】フィードフォワード制御を行なうサーボ系のブ
ロック線図である。
FIG. 4 is a block diagram of a servo system that performs feedforward control.

【図5】移動指令を5μmとしたときの円弧切削軌跡の
シュミレーション状態を示す図である。
FIG. 5 is a diagram showing a simulation state of an arc cutting locus when a movement command is set to 5 μm.

【図6】移動指令を0.5μmとしたときの円弧切削軌
跡のシュミレーション状態を示す図である。
FIG. 6 is a diagram showing a simulation state of an arc cutting locus when a movement command is set to 0.5 μm.

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

1 位置ループの伝達関数 2 速度ループの伝達関数 3 モータの伝達関数 4 速度から位置に変換する伝達関数 5 位置フィードフォワードの微分の伝達関数 6 位置フィードフォワード係数の伝達関数 7 速度フィードフォワードの微分伝達関数 8 速度フィードフォワード係数の伝達関数 20 数値制御装置 21 共有RAM 22 ディジタルサーボ回路 23 サーボアンプ 24 サーボモータ 25 パルスコーダ Reference Signs List 1 transfer function of position loop 2 transfer function of speed loop 3 transfer function of motor 4 transfer function converting speed to position 5 transfer function of differential of position feed forward 6 transfer function of position feed forward coefficient 7 differential transfer of speed feed forward Function 8 Transfer function of speed feedforward coefficient 20 Numerical controller 21 Shared RAM 22 Digital servo circuit 23 Servo amplifier 24 Servo motor 25 Pulse coder

───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G05B 19/18 - 19/46 G05D 3/00 - 3/20 B23Q 15/00 - 15/28 ──────────────────────────────────────────────────続 き Continued on the front page (58) Fields surveyed (Int. Cl. 7 , DB name) G05B 19/18-19/46 G05D 3/00-3/20 B23Q 15/00-15/28

Claims (3)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 指令プログラムに基づいて移動指令量を
計算する計算手段と、該計算手段から受けた移動指令量
に基づいて位置ループ処理を行い制御対象の位置制御を
行う位置ループ処理手段とを有するサーボ制御装置にお
いて、上記計算手段で算出する移動指令最小単位を制御
対象の位置を検出する位置検出手段からの位置フィード
バック信号の検出単位より小さくし、位置ループ処理手
段においては位置フィードバック量を移動指令の単位に
変換してデータ処理を行い制御対象の位置制御を行うサ
ーボ制御装置
A movement command amount is determined based on a command program.
Calculating means for calculating, and a movement command amount received from the calculating means
Position loop processing based on the
Servo control device having position loop processing means for performing
Control the minimum unit of movement command calculated by the above calculation means.
Position feed from position detection means that detects the position of the target
Make it smaller than the back signal detection unit and
In the step, the position feedback amount is used as the unit of the movement command.
Conversion and data processing to control the position of the control target
Robot control device .
【請求項2】 上記位置ループ処理にフィードフォワー
ド制御も付加して行なうことを特徴とする請求項1記載
のサーボ制御装置
2. The servo control device according to claim 1, wherein feedforward control is added to the position loop processing.
【請求項3】 上記位置ループ処理において、位置偏差
が位置フィードバック信号の検出単位内に入ると位置ル
ープ処理で求められる速度指令を零にする請求項1若し
くは請求項2記載のサーボ制御装置
3. The servo control device according to claim 1, wherein in the position loop processing, when a position deviation falls within a unit of detection of the position feedback signal, a speed command obtained by the position loop processing is set to zero.
JP09971391A 1991-04-05 1991-04-05 Servo control device Expired - Fee Related JP3199769B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP09971391A JP3199769B2 (en) 1991-04-05 1991-04-05 Servo control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP09971391A JP3199769B2 (en) 1991-04-05 1991-04-05 Servo control device

Publications (2)

Publication Number Publication Date
JPH04308902A JPH04308902A (en) 1992-10-30
JP3199769B2 true JP3199769B2 (en) 2001-08-20

Family

ID=14254720

Family Applications (1)

Application Number Title Priority Date Filing Date
JP09971391A Expired - Fee Related JP3199769B2 (en) 1991-04-05 1991-04-05 Servo control device

Country Status (1)

Country Link
JP (1) JP3199769B2 (en)

Also Published As

Publication number Publication date
JPH04308902A (en) 1992-10-30

Similar Documents

Publication Publication Date Title
JP2762364B2 (en) Feedforward control method for servo motor
Koren et al. Advanced controllers for feed drives
JP2573120B2 (en) Speed control method and control device for synchronous AC servomotor
JP3129622B2 (en) Quadrant projection correction method in full closed loop system
JP5791815B2 (en) Machine tool feed axis control method and feed axis control apparatus
JP3313643B2 (en) Servo control method in orbit machining with bite tool and servo controller for orbit machining
JPH0866893A (en) Collision detecting method
JP3545006B2 (en) Two-degree-of-freedom controller and servo controller for electric motor
JPH06245561A (en) Abnormal load detection control method for servo motor
JP2875646B2 (en) Backlash acceleration correction device
JPS6315604B2 (en)
JP2003058213A (en) Numerical controller
EP0510212B1 (en) Method for controlling servomotor feedforward
JPH06339292A (en) Force controlling method by estimation of disturbance load
WO1991019592A1 (en) System for correcting quantity of deformation of tool
JP3199769B2 (en) Servo control device
KR970002259B1 (en) Method for controlling servomotor
JPH0392911A (en) Robot control method for sliding mode control
KR970003877B1 (en) Method of controlling feed-forward of servo motor
JP2709766B2 (en) Feed forward control method of servo motor
JPH06131050A (en) Method for detecting collision of movable part driven by servo motor
JP3308656B2 (en) Servo motor control method
JP2014176291A (en) Feed axis control method and feed axis control device for machine tool
JP3197898B2 (en) Servo motor control method
JPH03246708A (en) Acceleration feedback control system for servomotor

Legal Events

Date Code Title Description
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: 20080615

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20090615

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20100615

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees