JP3210301B2 - Numerical control unit - Google Patents
Numerical control unitInfo
- Publication number
- JP3210301B2 JP3210301B2 JP14248399A JP14248399A JP3210301B2 JP 3210301 B2 JP3210301 B2 JP 3210301B2 JP 14248399 A JP14248399 A JP 14248399A JP 14248399 A JP14248399 A JP 14248399A JP 3210301 B2 JP3210301 B2 JP 3210301B2
- Authority
- JP
- Japan
- Prior art keywords
- command
- output
- spline
- curve
- speed command
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Numerical Control (AREA)
Description
【0001】[0001]
【発明の属する技術分野】この発明は、工作機械やロボ
ットなどの制御を行う数値制御装置に関するものであ
る。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a numerical controller for controlling a machine tool, a robot, and the like.
【0002】[0002]
【従来の技術】図12は例えば、特開昭64−8101
2号公報に示された、従来の数値制御装置を示すブロッ
ク図である。図において、41は指令がパンチされてい
る指令テープであり、42はこの指令テープ41を読み
込むテープリーダである。43は読み込まれたデータの
前処理を行う前処理手段であり、44は当該数値制御の
演算処理を実行する中央演算処理装置(以下、CPUと
いう)、45はCPU44よりアクセスされるメモリで
ある。46は補間データを工具の各軸毎の指令パルスと
して分配するパルス分配器であり、47はその指令パル
スに基づいてサーボモータを駆動するサーボ制御回路、
48はそのサーボモータである。BACKGROUND ART FIG. 12, for example, JP 64-8101
FIG. 2 is a block diagram showing a conventional numerical control device disclosed in Japanese Unexamined Patent Publication No. 2 (Kokai) No. 2; In the figure, reference numeral 41 denotes a command tape on which a command is punched, and reference numeral 42 denotes a tape reader for reading the command tape 41. Reference numeral 43 denotes a pre-processing unit for performing pre-processing of the read data, reference numeral 44 denotes a central processing unit (hereinafter, referred to as a CPU) for executing the arithmetic processing of the numerical control, and reference numeral 45 denotes a memory accessed by the CPU 44. 46 is a pulse distributor that distributes interpolation data as command pulses for each axis of the tool, 47 is a servo control circuit that drives a servomotor based on the command pulses,
48 is the servo motor.
【0003】次に動作について説明する。まず、テープ
リーダ42によって、指令位置や指令速度がパンチされ
ている指令テープ41より工具移動についてのデータが
読み込まれる。読み込まれたデータに補間指令のGコー
ドが含まれている場合には、前処理手段43において指
令された点列に基づくスプライン曲線の設定が行われ
る。CPU44は設定された当該スプライン曲線の接線
方向での単位時間あたりの移動量を演算し、メモリ45
に格納されている補間データ作成のためのプログラムに
従って工具軌跡を演算する。このようにして作成された
補間データは、パルス分配器46で工具の各軸毎の指令
パルスとして分配され、それぞれのサーボ制御回路47
に送られる。サーボ制御回路47は受け取った指令パル
スに従ってサーボモータ48を制御し、このサーボモー
タ48の回転によってボールねじ等を介して工具を移動
させる。Next, the operation will be described. First, the tape reader 42 reads tool movement data from the command tape 41 on which the command position and command speed are punched. When the read data includes the G code of the interpolation command, the preprocessing unit 43 sets a spline curve based on the commanded point sequence. The CPU 44 calculates the amount of movement per unit time in the tangential direction of the set spline curve, and
The tool trajectory is calculated in accordance with a program for creating interpolation data stored in. The interpolation data created in this way is distributed by the pulse distributor 46 as command pulses for each axis of the tool, and the respective servo control circuits 47
Sent to The servo control circuit 47 controls the servomotor 48 according to the received command pulse, and moves the tool via a ball screw or the like by the rotation of the servomotor 48.
【0004】このように、上記数値制御装置において
は、まず接線ベクトルを求め、一定速度でスプライン曲
線上を移動するためのパラメータ変化量をその接線ベク
トルより算出し、そのパラメータ変化量に応じて、スプ
ライン曲線上の補間点をパルス分配周期毎に計算してお
り、そのスプライン曲線は3次スプライン曲線に基づい
て計算するものであった。また、そのスプライン曲線を
一定速度で移動するためのスプライン曲線のパラメータ
Δtは、パルス分配毎の移動量fと接線ベクトルpt’
から求められていた。As described above, in the above numerical control device, first, a tangent vector is obtained, a parameter change amount for moving on a spline curve at a constant speed is calculated from the tangent vector, and according to the parameter change amount, The interpolation point on the spline curve is calculated for each pulse distribution cycle, and the spline curve is calculated based on the cubic spline curve. The parameter Δt of the spline curve for moving the spline curve at a constant speed is determined by the movement amount f for each pulse distribution and the tangent vector pt ′.
Was required from.
【0005】なお、このような従来の数値制御装置に関
連した技術が記載された文献としては、この他にも、例
えば特開平3−19963号公報などがある。この特開
平3−19963号公報による曲線補間装置は、与えら
れた任意の曲線に対して、所望の許容誤差を保証するよ
うに微小線分で曲線を補間するものであり、この方法
は、現在位置における曲線の曲率と現在位置から探索長
だけ離れた付近の曲線の曲率を比較し、その判定結果よ
り線分長を決定するものである。[0005] In addition, as a document which describes a technique related to such a conventional numerical control device, there is, for example, Japanese Patent Application Laid-Open No. 3-19963. The curve interpolating device disclosed in Japanese Patent Laid-Open Publication No. Hei 3-19963 interpolates a given arbitrary curve with a minute line segment so as to guarantee a desired allowable error. The curvature of the curve at the position is compared with the curvature of the curve near the current position by the search length, and the line segment length is determined from the result of the determination.
【0006】また、「コンピュータ エイデッド デザ
イン(Computer Aided Design )」第19巻第9号(1
987年9月)の第485〜498頁に掲載された論文
「カーブ アンド サーフェス コンストラクションズ
ユージング ラショナルビー・スプラインズ(Curve
and surface constructions using rational B-spline
s)」にもあるように、有理化Bスプライン(Non Unifo
rm Rational B-Spline 、以下NURBSという)曲線
がコンピュータ支援設計(CAD)において広く使用さ
れるようになってきている。Also, "Computer Aided Design", Vol. 19, No. 9 (1
(September 987), pp. 485-498, entitled “Curve and Surface Constructions Useing Rational Bee Splines”
and surface constructions using rational B-spline
s), rationalized B-splines (Non Unifo
The rm Rational B-Spline (NURBS) curve is becoming widely used in computer aided design (CAD).
【0007】[0007]
【発明が解決しようとする課題】従来の数値制御装置は
以上のように構成されているので、スプライン曲線上を
一定速度で移動する補間方式であり、進行方向(スプラ
イン曲線の接線方向)に対して、機械が振動を起こさな
いようななめらかな加減速制御が考慮されてはおらず、
始点のなめらかな加速制御、および終点での減速制御が
行われないため、スプライン曲線上をなめらかに機械制
御することができない。また、スプライン曲線上を一定
指令速度で移動するためのスプライン曲線のパラメータ
Δtは接線ベクトルpt’から求めているため、計算時
間がかかるばかりか、一定速度指令で移動するために求
めたスプライン曲線のパラメータΔtは、接線ベクトル
pt’から求められているが、接線ベクトルpt’では
正確に1パルス分配周期毎の移動量とスプライン曲線の
パラメータ変化量の比を求めることができず、曲率が大
きいところではパラメータΔtの計算誤差が発生し、ス
プライン曲線上を正確に指令速度で移動することはでき
ない。また、スプライン曲線の補間を行うにあたっての
接線ベクトルの求め方が簡単ではなく、複数のスプライ
ン曲線からなる軌跡を補間する場合についても、進行方
向(スプライン曲線の接線方向)に対して、機械が振動
を起こさないようななめらかな加減速制御が考慮されて
おらず、始点のなめらかな加速制御および終点での減速
制御が行われないので、スプライン曲線上をなめらかに
機械制御することができないなどの課題があった。Since the conventional numerical control device is constructed as described above, it is an interpolation system that moves on a spline curve at a constant speed, and the interpolation method moves in the traveling direction (tangential direction of the spline curve). Therefore, smooth acceleration / deceleration control that does not cause vibration of the machine is not considered,
Since smooth acceleration control at the start point and deceleration control at the end point are not performed, smooth mechanical control on the spline curve cannot be performed. Further, since the parameter Δt of the spline curve for moving on the spline curve at a constant command speed is obtained from the tangent vector pt ′, not only the calculation time is increased, but also the spline curve of the spline curve obtained for moving at the constant speed command is obtained. Although the parameter Δt is obtained from the tangent vector pt ′, the tangent vector pt ′ cannot accurately obtain the ratio between the movement amount per one pulse distribution cycle and the parameter change amount of the spline curve, and the parameter Δt is used when the curvature is large. Causes a calculation error of the parameter Δt, and cannot move accurately on the spline curve at the command speed. In addition, it is not easy to obtain a tangent vector when performing interpolation of a spline curve. Even when a locus composed of a plurality of spline curves is interpolated, the machine may vibrate in a traveling direction (tangential direction of the spline curve). The problem is that smooth acceleration / deceleration control that does not cause a problem is not considered, and smooth acceleration control at the start point and deceleration control at the end point are not performed, so that mechanical control on the spline curve cannot be performed smoothly. was there.
【0008】また、従来の補間方法では、探索長を細か
く設定しすぎると許容誤差は充分保証されるが、線分が
細かくなりすぎ、その後の直線補間部分での処理が追従
できず、高速な補間ができなくなって、探索長を大きく
しすぎると許容誤差が保証されなくなり、探索長の設定
が面倒なものとなるという問題点があった。また、NU
RBS曲線を前述の方法で補間すると、演算時間がかか
り高速な補間制御ができないという問題点があった。 In the conventional interpolation method, if the search length is set too small, the allowable error is sufficiently guaranteed, but the line segment becomes too small, and the subsequent processing in the linear interpolation part cannot follow up. If interpolation becomes impossible and the search length is set too large, an allowable error cannot be guaranteed, and the setting of the search length becomes troublesome. NU
When the RBS curve is interpolated by the above-described method, there is a problem that it takes a long calculation time to perform high-speed interpolation control .
【0009】この発明は上記のような課題を解決するた
めになされたものであり、始点の加速制御および終点で
の減速制御等の加減速制御を考慮した速度制御が行え、
スプライン曲線上をなめらかに駆動することができ、簡
単な計算方式で指令速度に対応したスプライン曲線のパ
ラメータを計算する手法、さらには、指令速度に対応し
たスプライン曲線のパラメータを正確に計算する手法を
もち、複数のスプライン曲線で構成される軌跡でも、加
減速制御を考慮して滑らかにスプライン曲線上を駆動で
き、また、該スプライン曲線がなめらかに接続されてい
ない場合には接続点で減速制御あるいは停止等の速度制
御を行うことができる数値制御装置を得ることを目的と
する。SUMMARY OF THE INVENTION The present invention has been made to solve the above-described problems, and has an acceleration control at a start point and a control at an end point.
Speed control considering acceleration / deceleration control such as deceleration control of
It can be driven smoothly on the spline curve,
The spline curve pattern corresponding to the command speed can be calculated using a simple calculation method.
Parameter calculation method, and also for command speed
Method to accurately calculate the parameters of the spline curve
Even if the trajectory is composed of multiple spline curves,
Drive smoothly on spline curve considering deceleration control
And the spline curves are connected smoothly.
If there is no speed control such as deceleration control or stop at the connection point
It is an object of the present invention to obtain a numerical control device capable of performing control.
【0010】[0010]
【課題を解決するための手段】この発明に係る数値制御
装置は、指令軌跡を所望の移動軌跡に相当する曲線を表
現するスプライン関数の形式で入力する指令入力部と、
指令入力部から出力されるスプライン曲線上の現在の指
令位置からスプライン曲線の終点までの曲線長さの近似
値として与えられる近似距離を計算し出力する終点距離
計算部と、終点距離計算部から出力される終点までの近
似距離に応じて送り速度指令を作成し出力する速度指令
出力部と、速度指令出力部から出力される速度指令を加
減速制御し滑らかな速度指令を出力する加減速制御部
と、加減速制御部から出力される速度指令に対応するス
プライン曲線のパラメータ変化量を用いて、スプライン
曲線のパラメータを計算し出力するパラメータ計算部
と、パラメータ計算部から出力されるスプライン曲線の
パラメータを用いてスプライン曲線上における次の指令
位置を計算するスプライン曲線位置計算部とを備えるよ
うにしたものである。A numerical controller according to the present invention displays a command trajectory by displaying a curve corresponding to a desired movement trajectory.
A command input section for inputting in the form of a spline function to be expressed,
The current finger on the spline curve output from the command input
Approximate curve length from command position to end point of spline curve
Calculates the approximate distance given as a value and outputs the end point distance
The calculation unit and the proximity to the end point output from the end point distance calculation unit
A speed command that creates and outputs a feed speed command according to the similar distance
Output section and the speed command output from the speed command output section.
Acceleration / deceleration control unit that controls deceleration and outputs smooth speed commands
And the speed corresponding to the speed command output from the acceleration / deceleration control unit.
The spline is calculated using the parameter change of the
Parameter calculator that calculates and outputs curve parameters
And the spline curve output from the parameter calculator
Next command on spline curve using parameters
And a spline curve position calculator for calculating the position .
【0011】この発明に係る数値制御装置は、パラメー
タ計算部のパラメータ変化量を、少なくとも1処理周期
前のパラメータ変化量と、少なくとも1処理周期前の指
令位置から計算される移動量との比を用いて計算するよ
うにしたものである。 [0011] The numerical controller according to the present invention has a parameter
The parameter change amount of the data calculation unit by at least one processing cycle.
The previous parameter change and the finger at least one processing cycle earlier
Calculate using the ratio to the travel distance calculated from the command position.
It is something that has been done.
【0012】この発明に係る数値制御装置は、指令軌跡
を所望の移動軌跡に相当する曲線を表現するスプライン
関数の形式で入力する指令入力部と、指令入力部から出
力されるスプライン曲線上の現在の指令位置からスプラ
イン曲線の終点までの曲線長さの近似値として与えられ
る近似距離を計算し出力する終点距離計算部と、終点距
離計算部から出力される終点までの近似距離に応じて送
り速度指令を作成し出力する速度指令出力部と速度指令
出力部から出力される速度指令を加減速制御し滑らかな
速度指令を出力する加減速制御部と、加減速制御部から
出力される速度指令に対応するスプライン曲線のパラメ
ータ変化量を用いて、スプライン曲線のパラメータを計
算し出力するパラメータ計算部と、パラメータ計算部か
ら出力されるスプライン曲線のパラメータを用いて、ス
プライン曲線上における次の指令位置を計算するスプラ
イン曲線位置計算部と、加減速制御部から出力される速
度指令に対応した距離と、少なくとも1処理周期前のス
プライン曲線上の指令位置から計算される移動量とを比
較して、パラメータ変化量の修正を行うパラメータ 修正
部とを備えるようにしたものである。 The numerical controller according to the present invention provides a command locus.
Is a spline that represents a curve corresponding to the desired trajectory
Command input section input in the form of a function and output from the command input section
From the current command position on the spline curve
Given as an approximation of the length of the curve to the end of the
An end-point distance calculator that calculates and outputs an approximate distance
Sends according to the approximate distance to the end point output from the separation calculation unit.
Command output section and speed command to create and output speed command
Acceleration / deceleration control of the speed command output from the output unit
Acceleration / deceleration control unit that outputs speed command and acceleration / deceleration control unit
Spline curve parameters corresponding to the output speed command
Calculate spline curve parameters using data change
Parameter calculation unit to calculate and output
Using the parameters of the spline curve output from
A spur that calculates the next command position on the pline curve
Speed output from the in-curve position calculator and acceleration / deceleration controller
And the distance corresponding to at least one processing cycle
Compare the travel distance calculated from the commanded position on the
Parameter correction to correct the parameter change amount
And a unit.
【0013】この発明に係る数値制御装置は、指令軌跡
を所望の移動軌跡に相当する複数の曲線をそれぞれ表現
するスプライン関数の形式で入力する指令入力部と、指
令入力部から出力される前記複数のスプライン曲線の接
続点での連続性を判断する接続状態判断部と、接続状態
判断部にて前後の前記スプライン曲線が連続に接続され
ていると判断された場合、スプライン曲線上の現在の指
令位置から後部のスプライン曲線の終点までの曲線長さ
の近似値として与えられる近似距離を計算し出力する終
点距離計算部と、終点距離計算部から出力される終点ま
での近似距離に応じて速度指令を作成し出力する速度指
令出力部と、速度指令出力部から出力される速度指令を
加減速制御し滑らかな速度指令を出力する加減速制御部
と、加減速制御部から出力される速度指令に対応するス
プライン曲線のパラメータ変化量を用いて、スプライン
曲線のパラメータを計算し出力するパラメータ計算部
と、パラメータ計算部から出力されるスプライン曲線の
パラメータを用いて、スプライン曲線上における次の指
令位置を計算するスプライン曲線位置計算部とを備える
ようにしたものである。 The numerical controller according to the present invention provides a command locus.
Represent multiple curves corresponding to the desired trajectory
Command input part to input in the form of
Of the plurality of spline curves output from the command input unit.
A connection state determination unit that determines continuity at a continuation point, and a connection state
The spline curves before and after are connected continuously by the judgment unit.
The current finger on the spline curve
Curve length from command position to end of rear spline curve
Calculate and output the approximate distance given as an approximate value of
The point distance calculator and the end point output from the end point distance calculator
Speed finger that creates and outputs a speed command according to the approximate distance at
Command output section and the speed command output from the speed command output section.
Acceleration / deceleration control section that controls acceleration / deceleration and outputs smooth speed commands
And the speed corresponding to the speed command output from the acceleration / deceleration control unit.
The spline is calculated using the parameter change of the
Parameter calculator that calculates and outputs curve parameters
And the spline curve output from the parameter calculator
The next finger on the spline curve
And a spline curve position calculator for calculating the command position
It is like that.
【0014】[0014]
【発明の実施の形態】実施の形態1. 以下、この発明の実施の形態1を図に基づいて説明す
る。図1は、この発明の実施の形態1による数値制御装
置を示すブロック図である。図において、1は軌跡指令
P(t) (ただし、tはスプライン曲線を定義しているパ
ラメータ、以下パラメータと略す)と送り速度指令Vco
m を入力する指令入力部である。なお、前記各指令は要
求に応じて1ブロックあるいは複数ブロック入力され、
記憶される。また、軌跡指令P(t) はスプライン曲線の
形式で入力される。DESCRIPTION OF THE PREFERRED EMBODIMENTS Embodiment 1 Hereinafter, a first embodiment of the present invention will be described with reference to the drawings. FIG. 1 is a block diagram showing a numerical control device according to Embodiment 1 of the present invention. In the figure, reference numeral 1 denotes a trajectory command P (t) (where t is a parameter defining a spline curve, abbreviated as a parameter hereinafter) and a feed speed command Vco.
Command input section for inputting m. Each command is input as one block or a plurality of blocks as required.
It is memorized. The trajectory command P (t) is input in the form of a spline curve.
【0015】2は後述する終点距離計算部、速度指令出
力部、および加減速制御部よりなる速度パターン生成部
であり、3は現在の指令位置からスプライン曲線の終点
までの曲線長さの近似値として与えられる近似距離Le
を計算する前記終点距離計算部、4はこの終点距離計算
部3で求めた終点までの近似距離Leを移動して停止で
きるように送り速度指令Vcom を制御し、加減速制御部
へ入力する速度指令Vout として出力する前記速度指令
出力部、5はこの速度指令出力部4の速度指令Vout が
なめらかに変化するように加減速制御を行う前記加減速
制御部である。なお、この加減速制御は、例えば特開平
1−237806号公報記載の台形加減速制御方法や従
来用いられている指数関数加減速制御方法などを用いれ
ばよい。ここで、前記台形加減速制御方法は、加速度Δ
Fを指定してその指令加速度ΔFで加速減速を行い、指
令速度となるまで加減速制御を行うように働く。加減速
制御部5に入力された速度指令Vout と、出力された速
度指令Vs の差の積分値は、追従距離Ldとして加減速
制御部5内に記憶されており、加減速制御部5は入力V
out が0になると、加減速制御部5の出力速度Vs の積
分値が前記追従距離Ldとなるまで速度指令Vs を出力
し続けるように働く。この加減速制御部5の出力速度V
s はサーボ系の各軸の送り速度の合成された速度指令と
して出力される。Reference numeral 2 denotes a speed pattern generation unit including an end point distance calculation unit, a speed command output unit, and an acceleration / deceleration control unit, which will be described later. Reference numeral 3 denotes an end point of the spline curve from the current command position.
Approximate distance Le given as an approximate value of the curve length up to
The end point distance calculation unit 4 calculates the feed speed command Vcom so that the approximate distance Le to the end point calculated by the end point distance calculation unit 3 can be moved and stopped, and the speed input to the acceleration / deceleration control unit. The speed command output unit 5 that outputs the command Vout is the acceleration / deceleration control unit that performs acceleration / deceleration control so that the speed command Vout of the speed command output unit 4 changes smoothly. For this acceleration / deceleration control, for example, a trapezoidal acceleration / deceleration control method described in Japanese Patent Application Laid-Open No. 1-237806 or an exponential function acceleration / deceleration control method conventionally used may be used. Here, the trapezoidal acceleration / deceleration control method includes an acceleration Δ
By specifying F, acceleration / deceleration is performed at the command acceleration ΔF, and acceleration / deceleration control is performed until the command speed is reached. The integral value of the difference between the speed command Vout input to the acceleration / deceleration control unit 5 and the output speed command Vs is stored in the acceleration / deceleration control unit 5 as the following distance Ld. V
When out becomes 0, it operates so as to continue to output the speed command Vs until the integrated value of the output speed Vs of the acceleration / deceleration control unit 5 reaches the following distance Ld. The output speed V of the acceleration / deceleration control unit 5
s is output as a synthesized speed command of the feed speed of each axis of the servo system.
【0016】6は加減速制御部5の速度指令Vs に対応
したスプライン曲線上の位置を決定するパラメータを計
算するパラメータ計算部であり、7はこのパラメータ計
算部6からのパラメータと指令入力部1からの曲線指令
より、サーボ制御系への指令位置(xk 、yk 、zk )
を計算するスプライン曲線位置計算部である。Reference numeral 6 denotes a parameter calculator for calculating a parameter for determining a position on the spline curve corresponding to the speed command Vs of the acceleration / deceleration controller 5, and 7 denotes a parameter from the parameter calculator 6 and the command input unit 1. Command position (xk, yk, zk) to servo control system from curve command from
Is a spline curve position calculation unit that calculates.
【0017】次に動作について説明する。ここで、図2
は動作の全体的な処理の流れを示すフローチャートであ
る。処理は一定処理周期(サンプリング周期)ΔTs 毎
に実行される。これらの処理は、CPU、メモリ、入出
力(I/O)インターフェイス等から構成されるコンピ
ュータシステムで実現される。今、図3のスプライン曲
線P(t) (0≦t≦1)が指令軌跡として与えられてい
るものとする。Ps は始点で座標が(xs 、ys 、zs
)、Pe は終点で座標値は(xe 、ye 、ze)、P(k
-1) は現在の指令位置(1処理周期前にサーボ制御系に
出力された位置指令)で座標は(x(k-1) 、y(k-1) 、
z(k-1) )とする。スプライン曲線P(t) は、例えば以
下の式(1)に示すBスプライン曲線形式で表現されて
いるものとする。Next, the operation will be described. Here, FIG.
Is a flowchart showing the flow of the overall processing of the operation. The processing is executed at a constant processing cycle (sampling cycle) ΔTs. These processes are realized by a computer system including a CPU, a memory, an input / output (I / O) interface, and the like. Now, it is assumed that the spline curve P (t) (0 ≦ t ≦ 1) in FIG. 3 is given as a command locus. Ps is the starting point and the coordinates are (xs, ys, zs
), Pe is the end point and the coordinate values are (xe, ye, ze), P (k
-1) is the current command position (the position command output to the servo control system one processing cycle ago) and the coordinates are (x (k-1), y (k-1),
z (k-1)). It is assumed that the spline curve P (t) is expressed in, for example, a B-spline curve format shown in the following equation (1).
【0018】[0018]
【数1】 (Equation 1)
【0019】ここで、BSi,n(t)はBスプライン関数で
あり、di は3次元空間中の制御点である。パラメータ
tが決定すれば、式(1)よりスプライン曲線上の位置
座標が決定する。ちなみに、パラメータt=0の時はP
s 点、t=1の時はPe 点である。[0019] Here, BS i, n (t) is a B-spline function, d i is the control point of the three-dimensional space. When the parameter t is determined, the position coordinates on the spline curve are determined from the equation (1). By the way, when the parameter t = 0, P
When s point and t = 1, it is Pe point.
【0020】図2において、ステップST1では、軌跡
指令を1ブロック読み込むか否かを判断する。もし、前
記軌跡指令が読み込まれていない場合は、ステップST
2で式(1)のようなBスプライン曲線形式で表現され
た軌跡指令1ブロックと、このブロックにおける送り速
度指令を読み込む。次に、ステップST3で現在の指令
位置P(k-1) (x(k-1) 、y(k-1) 、z(k-1) )からス
プライン曲線の終点までの曲線長さの近似値として与え
られる終点Peまでの近似距離を計算する。この際、ス
プライン曲線に係るパラメータtについては、t=t
(k−1)とする。現在の指令位置P(k-1) から前記終
点Pe までの近似距離Leは例えば次の式(2)を用い
て計算する。In FIG. 2, in step ST1, it is determined whether or not a trajectory command is read for one block. If the trajectory command has not been read, step ST
2, a trajectory command block expressed in the form of a B-spline curve as in equation (1) and a feed speed command in this block are read. Next, step ST3 in the current command position P (k-1) (x (k-1), y (k-1), z (k-1)) Crow
Given as an approximation to the length of the curve up to the end of the curve
The approximate distance to the end point Pe is calculated. At this time,
For the parameter t relating to the plumb curve, t = t
(K-1). The approximate distance Le from the current command position P (k-1) to the end point Pe is calculated using, for example, the following equation (2).
【0021】[0021]
【数2】 (Equation 2)
【0022】その後、ステップST4〜ST6におい
て、速度指令出力部4が、終点までの近似距離Leと前
記追従距離Ldの1処理周期前の追従距離Ld(k-1) 、
前記送り速度指令Vcom から、終点に正確に停止できる
ように速度指令Vcom を制御し、速度指令Vout を出力
する。なお、この速度指令Vout は以下の式(3)〜式
(5)で示される条件で決定される。Thereafter, in steps ST4 to ST6, the speed command output unit 4 outputs the approximate distance Le to the end point and the following distance Ld (k-1) one processing cycle before the following distance Ld.
From the feed speed command Vcom, the speed command Vcom is controlled so as to stop accurately at the end point, and the speed command Vout is output. The speed command Vout is determined under the conditions shown by the following equations (3) to (5).
【0023】 <条件1> Le−Ld(k-1) ≧Vcom *ΔTs なら、 Vout =Vcom ・・・・・・・(3) <条件2> 0<Le−Ld(k-1) <Vcom *ΔTs なら、 Vout =(Le−Ld(k-1) /ΔTs ・・・・・・・(4) <条件3> 0≧Le−Ld(k-1) なら、 Vout =0 ・・・・・・・(5)<Condition 1> If Le−Ld (k−1) ≧ Vcom * ΔTs, Vout = Vcom (3) <Condition 2> 0 <Le−Ld (k−1) <Vcom * If ΔTs, Vout = (Le−Ld (k−1) / ΔTs... (4) <Condition 3> If 0 ≧ Le−Ld (k−1), Vout = 0. ... (5)
【0024】すなわち、ステップST4では、前記条件
1〜3の判断を行う。条件1以外はすべて減速操作とな
る。条件1が成立すればYES、しないならNOの操作
を行う。ステップST5では、式(3)のごとくVout
を決定する。またステップST6なら、条件2、3に応
じて速度指令Vout を式(4)、式(5)の如く決定す
る。次にステップST7では、速度指令Vout を加減速
制御し、速度指令Vsを計算し出力する。加減速方式は
例えば前述の台形加減速方式を用いる。また追従距離L
dを、次の式(6)で修正し、次回の処理周期に用い
る。That is, in step ST4, the conditions 1 to 3 are determined. Except for condition 1, all deceleration operations are performed. If the condition 1 is satisfied, an operation of YES is performed, and if not, an operation of NO is performed. In step ST5, Vout is calculated as in equation (3).
To determine. In step ST6, the speed command Vout is determined according to the conditions 2 and 3 as shown in the equations (4) and (5). Next, in step ST7, the speed command Vout is subjected to acceleration / deceleration control, and the speed command Vs is calculated and output. As the acceleration / deceleration method, for example, the trapezoidal acceleration / deceleration method described above is used. The following distance L
d is modified by the following equation (6) and used in the next processing cycle.
【0025】 Ld=Ld(k-1) +(Vout −Vs )*ΔTs ・・・・・(6)Ld = Ld (k−1) + (Vout−Vs) * ΔTs (6)
【0026】次に、ステップST8では、スプライン曲
線P(t) 上の現在の指令位置P(k-1)から微小パラメー
タΔt’だけ変化させた場合のパラメータ変化量Δt’
と移動距離ΔP’の比αを求める。スプライン曲線P
(t)上の現在の位置P(k-1)の座標は前記(x(k-1)
、y(k-1) 、z(k-1) )であり、パラメータがt(k-1)
から微小パラメータΔt’変化したt(k-1) +Δt’に
おける位置P(t(k-1)+Δt’)は、前記式(1)を
用いて計算でき、そのときの座標値を(x(k-1)'、y(k
-1)'、z(k-1)')とする。なお、前記比αは次の式
(7)により求める。Next, in step ST8, the parameter change amount Δt ′ when the current command position P (k−1) on the spline curve P (t) is changed by the minute parameter Δt ′.
And the ratio α of the moving distance ΔP ′. Spline curve P
The coordinates of the current position P (k-1) on (t) are (x (k-1)
, Y (k-1), z (k-1)) and the parameter is t (k-1)
The position P (t (k−1) + Δt ′) at t (k−1) + Δt ′, which has changed by a small parameter Δt ′, can be calculated using the above-described equation (1), and the coordinate value at that time is (x ( k-1) ', y (k
-1) ', z (k-1)'). The ratio α is obtained by the following equation (7).
【0027】 α=Δt’/ΔP’ ・・・・・・・(7)Α = Δt ′ / ΔP ′ (7)
【0028】ただし、上記式(7)において移動距離Δ
P’は次の式(8)で与えられる。However, in the above equation (7), the moving distance Δ
P ′ is given by the following equation (8).
【0029】[0029]
【数3】 (Equation 3)
【0030】また、パラメータ変化量Δt’は、次の式
(9)が成り立つような値に設定する。The parameter change amount Δt ′ is set to a value that satisfies the following equation (9).
【0031】[0031]
【数4】 (Equation 4)
【0032】次に、ステップST9では、前記速度指令
Vs に対応するパラメータ変化量Δtk を次の式(1
0)を用いて推定する。Next, in step ST9, the parameter change amount Δtk corresponding to the speed command Vs is calculated by the following equation (1).
0).
【0033】 Δtk =α・Vs *ΔTs ・・・・・・・(10)Δtk = α · Vs * ΔTs (10)
【0034】次に、ステップST10では、推定したパ
ラメータ変化量Δtk を用いてスプライン曲線P(t)
上の位置P(t(k-1) +Δtk )を式(1)を用いて計
算する。P(t(k-1) +Δtk )の座標計算値を指令位
置としてサーボ制御系に出力する。その後ステップST
11において、位置P(t(k-1) +Δtk )の座標計算
値をそれぞれx(k-1) =xk 、y(k-1) =yk 、z(k-
1) =zk として、これらを次回の処理周期の現在の指
令位置として記憶しておく。Next, in step ST10, the spline curve P (t) is calculated using the estimated parameter variation Δtk.
The upper position P (t (k-1) +. DELTA.tk) is calculated using equation (1). The coordinate calculation value of P (t (k-1) + Δtk) is output to the servo control system as a command position. Then step ST
At 11, the coordinates of the position P (t (k-1) +. DELTA.tk) are calculated as x (k-1) = xk, y (k-1) = yk and z (k-
1) As = zk, these are stored as the current command positions in the next processing cycle.
【0035】なお、スプライン曲線の曲率が小さい場合
には、αを接線ベクトルから求めても同様な効果が得ら
れる。When the curvature of the spline curve is small, the same effect can be obtained by obtaining α from the tangent vector.
【0036】実施の形態2. 次に、この発明の実施の形態2を図について説明する。
図4は、この発明の実施の形態2による数値制御装置を
示すブロック図である。図において、1〜5および7は
実施の形態1のそれらと同様の構成であるためその説明
は省略する。また、8は1処理周期前の指令位置と2処
理周期前の指令位置から求められる1処理周期間の指令
位置の移動量ΔP(k-1) を求める移動量計算部である。
9はその指令位置の移動量ΔP(k-1) と、1処理周期前
の出力したパラメータ変化量Δt(k-1) (1処理周期前
パラメータ変化量Δtk )から、パラメータ変化量と移
動量の比αを計算するとともに、加減速制御部5の速度
指令Vs と前記比α、および1処理周期前のパラメータ
t(k-1) からパラメータtk を求める点で、図1に符号
6を付した実施の形態1のものとは異なったパラメータ
計算部である。Embodiment 2 Next, a second embodiment of the present invention will be described with reference to the drawings.
FIG. 4 is a block diagram showing a numerical control device according to Embodiment 2 of the present invention. In the figure, 1 to 5 and 7 have the same configurations as those of the first embodiment, and therefore the description thereof is omitted. Reference numeral 8 denotes a movement amount calculation unit for calculating the movement amount ΔP (k-1) of the command position during one processing cycle obtained from the command position one processing cycle ago and the command position two processing cycles ago.
Reference numeral 9 denotes a parameter change amount and a movement amount based on the movement amount ΔP (k-1) of the commanded position and the parameter change amount Δt (k-1) (the parameter change amount Δtk before one processing period) output one processing cycle ago. 1 in that the parameter tk is calculated from the speed command Vs of the acceleration / deceleration control unit 5, the ratio α, and the parameter t (k-1) one processing cycle earlier. This is a parameter calculator different from that of the first embodiment.
【0037】次に動作について説明する。ここで、図5
は動作の流れを示すフローチャートであり、ステップS
T1〜ST7およびステップST8〜ST11は図2の
それと同等の処理が行われるものであるためその説明は
省略する。ステップST20では前回の処理周期のサー
ボ系への指令位置(x(k-1) 、y(k-1) 、z(k-1) )と
前々回の処理周期のサーボ系への指令位置(x(k-2) 、
y(k-2) 、z(k-2) )から移動量ΔP(k-1) を次の式
(11)より求める。Next, the operation will be described. Here, FIG.
Is a flowchart showing the flow of the operation, in step S
Since T1 to ST7 and steps ST8 to ST11 perform the same processing as that of FIG. 2, their description is omitted. At step ST20, the command position (x (k-1), y (k-1), z (k-1)) to the servo system in the previous processing cycle and the command position (x (k-2),
y (k-2), z (k-2)), the moving amount ΔP (k-1) is obtained by the following equation (11).
【0038】[0038]
【数5】 (Equation 5)
【0039】次に、ステップST21において、パラメ
ータ計算部9が前記1処理周期前のパラメータ変化量Δ
t(k-1) と1処理周期間の指令位置の移動量ΔP(k-1)
から、次の式(12)によりパラメータ変化量と移動量
の比αを計算する。Next, in step ST21, the parameter calculator 9 calculates the parameter change amount Δ
t (k-1) and the movement amount ΔP (k-1) of the command position during one processing cycle
Then, the ratio α between the parameter change amount and the movement amount is calculated by the following equation (12).
【0040】 α=Δt(k-1) /ΔP(k-1) ・・・・・・・(12)Α = Δt (k−1) / ΔP (k−1) (12)
【0041】なお、この方式では、スプライン曲線の始
点でのパラメータ変化量と移動量の比αはパラメータ変
化量Δt(k-1) 、ΔP(k-1) が存在しないので求めるこ
とができない。従って始点での比αを求めるには、実施
の形態1の式(7)のように、微小パラメータΔt’変
化させた場合の移動量ΔP’を求め、それより当該比α
を計算しておく方法を用いる。In this method, the ratio α between the parameter change amount and the movement amount at the start point of the spline curve cannot be obtained because the parameter change amounts Δt (k−1) and ΔP (k−1) do not exist. Therefore, in order to obtain the ratio α at the starting point, as shown in equation (7) of the first embodiment, the amount of movement ΔP ′ when the minute parameter Δt ′ is changed is obtained, and the ratio α
Is used.
【0042】また、上記実施の形態2では、1処理周期
前のパラメータ変化量Δt(k-1) と移動量ΔP(k-1) を
用いて、パラメータ変化量と移動量の比αを計算した
が、数処理周期前のパラメータ変化量と移動量を用いて
計算してもよい。In the second embodiment, the ratio α between the parameter change amount and the movement amount is calculated using the parameter change amount Δt (k−1) and the movement amount ΔP (k−1) one processing cycle ago. However, the calculation may be performed using the parameter change amount and the movement amount several processing cycles before.
【0043】実施の形態3. 次に、この発明の実施の形態3を図について説明する。
図6は、この発明の実施の形態3による数値制御装置を
示すブロック図である。図において、1〜7は実施の形
態1のそれらと同様の構成であるためその説明は省略す
る。また、10はパラメータ計算部6で求めたパラメー
タが妥当であるか否かを判断し、妥当でない場合にはパ
ラメータを修正し、スプライン曲線位置計算部7で求め
るサーボ制御系への位置指令を修正するパラメータ修正
部である。Embodiment 3 Next, a third embodiment of the present invention will be described with reference to the drawings.
FIG. 6 is a block diagram showing a numerical control device according to Embodiment 3 of the present invention. In the figure, 1 to 7 have the same configurations as those of the first embodiment, and therefore the description thereof is omitted. Numeral 10 determines whether the parameters obtained by the parameter calculator 6 are valid, and if not, corrects the parameters, and corrects the position command to the servo control system obtained by the spline curve position calculator 7. This is a parameter correction unit.
【0044】次に動作について説明する。ここで、図7
は動作の流れを示すフローチャートであり、ステップS
T1〜ST9およびST11は図2のそれと同等の処理
が行われるものであるためその説明は省略する。ステッ
プST30では図2のステップST10と同様、ステッ
プST9で求めたパラメータ変化量Δtk を用いて、ス
プライン曲線上の位置P(t(k-1) +Δtk )を式
(1)を用いて計算し、座標値(xk ,yk ,zk )を
求める。次に、ステップST31では、加減速制御部5
から出力される指令速度Vs の1処理周期間の移動量V
s *ΔTs と、前回の処理周期で計算された指令位置
(x(k-1) 、y(k-1) 、z(k-1) )と今回計算される前
記指令位置(xk 、yk 、zk )から1処理周期間の指
令位置の移動量ΔPk との差βを次の式(13)により
求める。Next, the operation will be described. Here, FIG.
Is a flowchart showing the flow of the operation, in step S
In T1 to ST9 and ST11, the same processing as that in FIG. 2 is performed, and the description thereof is omitted. In step ST30, similarly to step ST10 in FIG. 2, the position P (t (k-1) + Δtk) on the spline curve is calculated using equation (1) using the parameter change amount Δtk obtained in step ST9. The coordinate values (xk, yk, zk) are obtained. Next, in step ST31, the acceleration / deceleration control unit 5
Amount V during one processing cycle of command speed Vs output from
s * ΔTs, the command positions (x (k−1), y (k−1), z (k−1)) calculated in the previous processing cycle and the command positions (xk, yk, zk) and the difference β from the movement amount ΔPk of the command position during one processing cycle is determined by the following equation (13).
【0045】 β=Vs *ΔTs −ΔPk ・・・・・・・(13)Β = Vs * ΔTs−ΔPk (13)
【0046】ここで、この移動量の差βは速度誤差に対
応する値であり、パラメータ変化量Δtk の計算誤差に
より生じる。なお、移動量ΔPk は次の式(14)によ
り求める。Here, the difference β of the movement amount is a value corresponding to the speed error, and is caused by a calculation error of the parameter change amount Δtk. The movement amount ΔPk is obtained by the following equation (14).
【0047】[0047]
【数6】 (Equation 6)
【0048】次にステップST32では、移動量の差β
が許容値以下であるか否かを判断する。差βが許容値以
下なら、処理はステップST34へ移り、そうでない場
合はステップST33に移る。なお、前記許容値はサー
ボ制御系が許容できる最大加速度等から決定される値で
ある。ステップST34では、ステップST31で求め
た前記指令位置(xk 、yk 、zk )をサーボ系の位置
指令として出力する。一方、ステップST34では、パ
ラメータ変化量Δtk を修正する。例えば、次の式(1
5)を用いて修正する。Next, at step ST32, the difference β
Is determined to be less than or equal to the allowable value. If difference β is equal to or smaller than the allowable value, the process proceeds to step ST34; otherwise, the process proceeds to step ST33. The allowable value is a value determined from the maximum acceleration and the like that can be allowed by the servo control system. In step ST34, the command position (xk, yk, zk) obtained in step ST31 is output as a position command for the servo system. On the other hand, in step ST34, the parameter change amount Δtk is corrected. For example, the following equation (1
Correct using 5).
【0049】 Δtk =(Vs *ΔTs /ΔPk )*Δtk ・・・・・(15)Δtk = (Vs * ΔTs / ΔPk) * Δtk (15)
【0050】ここで修正されたパラメータ変化量Δtk
を用いて、再度ステップST30でスプライン曲線上の
位置を計算し、パラメータ変化量Δtk 、すなわち差β
が規定値以下となるまでステップST30〜ST33に
よる処理が繰り返し行われる。The parameter variation Δtk corrected here
, The position on the spline curve is calculated again in step ST30, and the parameter change amount Δtk, that is, the difference β
Are repeated until the value becomes equal to or less than the specified value.
【0051】なお、この実施の形態のパラメータ修正方
法は、実施の形態2のパラメータ計算手法と組み合わせ
て用いれば、速度指令に応じたパラメータが簡単にしか
も正確に求められる。When the parameter correction method according to the present embodiment is used in combination with the parameter calculation method according to the second embodiment, a parameter corresponding to a speed command can be easily and accurately obtained.
【0052】実施の形態4. 次に、この発明の実施の形態4を図について説明する。
図8は、この発明の実施の形態4による数値制御装置を
示すブロック図である。図において、1〜5および7は
実施の形態1のそれらと同様であるためその説明は省略
する。また、11は速度指令を減速するか否かの判断を
後述の接続状態判断部に出力する点で、図1に符号6を
付した実施の形態1のものとは異なるパラメータ変換部
である。12は軌跡指令が複数のスプライン曲線で与え
られている場合、各スプライン曲線間の接続状態が連続
に接続されているか否かを判断し、接続状態が連続であ
ると判断すれば、スプライン曲線の終点の位置を変更す
る接続状態判断部である。なお、この接続状態判断部1
2による接続状態が連続であるか否かの判断は、例えば
接続点での接線ベクトルの向きと長さで判断することが
できる。また、軌跡指令がBスプライン曲線で表現され
ている場合は、接続点付近での前記Bスプライン曲線を
表現する制御点の位置関係から判断することもできる。Embodiment 4 FIG. Next, a fourth embodiment of the present invention will be described with reference to the drawings.
FIG. 8 is a block diagram showing a numerical controller according to Embodiment 4 of the present invention. In the figure, 1 to 5 and 7 are the same as those of the first embodiment, and the description thereof is omitted. Reference numeral 11 denotes a parameter conversion unit different from that of the first embodiment, which is denoted by reference numeral 6 in FIG. 1 in that a determination as to whether or not to reduce the speed command is output to a connection state determination unit described later. 12 is given by a trajectory command with a plurality of spline curves.
If they are, it is determined whether or not the connection state between each spline is connected to a continuous, if it is determined that the connection state is continuous, the connection state determining unit for changing the position of the end point of the spline curve is there. Note that this connection state determination unit 1
The determination as to whether or not the connection state according to 2 is continuous can be made based on, for example, the direction and length of the tangent vector at the connection point. When the trajectory command is represented by a B-spline curve, it can be determined from the positional relationship between the control points representing the B-spline curve near the connection point.
【0053】次に動作について説明する。ここで、図9
は動作の流れを示すフローチャートであり、ステップS
T1〜ST11は実施の形態1の図2のそれと同等の処
理が行われるものであるためその説明は省略する。今、
図10および図11のように、軌跡指令が2つのBスプ
ライン曲線P1(t),P2(t)で表されているとする。P1s
はP1(t)の始点、P1e(t) はP1(t) の終点、P2sはP
2(t)の始点、P2e はP2(t)の終点であり、P1eとP2s
は一致している。図10、図11の軌跡指令をP1sから
始動し、速度指令Vcom で移動するものとし、終点P2e
で停止するものとする。Pa 、Pb 点はP1(t)上の指令
位置であり、Pa はスプライン曲線P1(t)の終点P1eま
での距離が減速制御するのに十分な距離がある場合であ
り、Pbはスプライン曲線P1(t)の終点P1eまでの距離
が減速制御するのに十分でない場合である。Next, the operation will be described. Here, FIG.
Is a flowchart showing the flow of the operation, in step S
In T1 to ST11, processes equivalent to those in FIG. 2 of the first embodiment are performed, and therefore description thereof is omitted. now,
As shown in FIGS. 10 and 11, it is assumed that the trajectory command is represented by two B-spline curves P1 (t) and P2 (t). P1s
Is the start point of P1 (t), P1e (t) is the end point of P1 (t), and P2s is P
The start point of 2 (t), P2e is the end point of P2 (t), and P1e and P2s
Are consistent. The trajectory command shown in FIGS. 10 and 11 is started from P1s and moves at the speed command Vcom.
Stop at The points Pa and Pb are command positions on P1 (t), Pa is the case where the distance to the end point P1e of the spline curve P1 (t) is sufficient for deceleration control, and Pb is the spline curve P1. This is the case where the distance to the end point P1e in (t) is not sufficient for deceleration control.
【0054】例えば、現在の指令位置が前記Pa の場
合、ステップST3では、現在の指令位置Pa からP1e
までの曲線長さの近似値として与えられる近似距離を計
算し、ステップST4で減速操作の必要なしと判断し、
ステップST5へと処理が流れる。しかし、現在の指令
位置がPb のごとき位置にきた場合、ステップST4で
減速操作の必要があると判断すると、処理はステップS
T40に進み、次の軌跡指令があるか否かの判断が行わ
れる。もし、次の軌跡指令が存在しなければステップS
T6へ、存在すればステップST41へそれぞれ処理が
移る。ステップST41では、次の軌跡指令(図10、
図11ではP2(t))が、現在移動している軌跡指令(図
10、図11のP1(t))と連続に接続されているかどう
かを接続状態判断部12で判断する。もし、図10のご
とく連続に接続されていると判断すればステップST4
2の処理に、また図11のごとく連続に接続されていな
いと判断すれば、P1(t)の終点P1eで減速、停止するよ
うにステップST6の処理を行う。ステップST42で
は、接続点が連続であるので、終点を次の軌跡指令P2
(t)の終点P2eとして、再びステップST3で現在の指
令位置であるPbからスプライン曲線の終点P2eまで
の曲線長さの近似値として与えられる近似距離Leを次
の式(16)によって計算しなおし、ステップST4の
処理へと移る。For example, if the current command position is Pa, in step ST3, the current command position is shifted from Pa to P1e.
The approximate distance given as an approximate value of the curve length up to is calculated, and it is determined in step ST4 that the deceleration operation is not necessary,
The process flows to step ST5. However, when the current command position has reached a position such as Pb, if it is determined in step ST4 that a deceleration operation is necessary, the process proceeds to step S4.
Proceeding to T40, it is determined whether there is a next trajectory command. If there is no next trajectory command, step S
At T6, if there is, the process moves to step ST41. In step ST41, the next trajectory command (FIG. 10,
In FIG. 11, the connection state determination unit 12 determines whether or not P2 (t)) is continuously connected to the currently moving trajectory command (P1 (t) in FIGS. 10 and 11). If it is determined that the connection is continuous as shown in FIG. 10, step ST4
If it is determined that the connection is not continuous in the process of FIG. 11 as shown in FIG. 11, the process of step ST6 is performed so as to decelerate and stop at the end point P1e of P1 (t). In step ST42, since the connection points are continuous, the end point is set to the next locus command P2.
As the end point P2e of (t), the current finger is
From the command position Pb to the end point P2e of the spline curve
The approximate distance Le given as an approximate value of the curve length is calculated again by the following equation (16), and the process proceeds to step ST4.
【0055】[0055]
【数7】 (Equation 7)
【0056】ただし、現在の指令位置Pb の座標値を
(xb 、yb 、zb )、P2eの座標値を(x2e、y2e、
z2e)とする。However, the coordinates of the current command position Pb are (xb, yb, zb), and the coordinates of P2e are (x2e, y2e,
z2e).
【0057】このように、スプライン曲線の軌跡指令の
接続状態を判断して終点の位置を変更し、速度制御を行
うので、軌跡指令が複数のスプライン曲線で表現されて
いる場合でも滑らかな補間制御を行うことができる。As described above, the connection state of the trajectory command of the spline curve is determined, the position of the end point is changed, and speed control is performed. Therefore, even when the trajectory command is expressed by a plurality of spline curves, smooth interpolation control is performed. It can be performed.
【0058】[0058]
【発明の効果】以上のように、この発明によれば、指令
軌跡として与えられたスプライン曲線 上の現在の指令位
置からスプライン曲線の終点までの曲線長さの近似値と
して与えられる近似距離に基づく速度指令より算出され
たパラメータからスプライン曲線上における次の指令位
置を計算するとともに、滑らかな移動を実現するように
加減速制御した速度指令を出力するように構成したの
で、加減速制御を行いながらスプライン曲線の補間を行
うことが可能となり、機械工作の高速化、高精度化をは
かることができるという効果を奏する。As described above, according to the present invention, the command
Current command position on spline curve given as trajectory
Of the curve length from the position to the end of the spline curve
Calculated from the speed command based on the approximate distance given as
The next command position on the spline curve from the parameters
Calculation and realize smooth movement
It is configured to output the speed command with acceleration / deceleration control.
To perform spline curve interpolation while performing acceleration / deceleration control.
And increase the speed and accuracy of machining.
An effect that can mow be.
【0059】この発明によれば、パラメータ計算部のパ
ラメータ変化量は、少なくとも1処理周期前のパラメー
タ変化量と、少なくとも1処理周期前の指令位置から計
算される移動量との比を用いて計算するように構成した
ので、スプライン曲線のパラメータの計算時間を短縮で
き、数値制御装置のコスト低減を期待できるという効果
を奏する。 According to the present invention, the parameter calculation unit
The parameter change should be at least one parameter before the processing cycle.
From the data change amount and the command position at least one processing cycle earlier.
It is configured to calculate using the ratio with the calculated movement amount
So the calculation time of the parameters of the spline curve can be reduced
That the cost reduction of the numerical controller can be expected
To play.
【0060】この発明によれば、加減速制御部から出力
される速度指令に対応した距離と、少なくとも1処理周
期前のスプライン曲線上の指令位置から計算される移動
量とを比較して、パラメータ変化量の修正を行うパラメ
ータ修正部を備えるように構成したので、正確な速度制
御を行うことが可能となって、機械工作の高速化、高精
度化をはかることができるという効果を奏する。 According to the present invention, the output from the acceleration / deceleration control unit
And the distance corresponding to the speed command
Movement calculated from the command position on the previous spline curve
Parameter to correct the parameter change amount by comparing the
Data correction section so that accurate speed control
Control, speeding up machine work,
It has the effect of being able to measure the degree.
【0061】この発明によれば、複数のスプライン曲線
で指令軌跡を与える場合でも、複数のスプライン曲線の
接続点での連続性を判断する接続状態判断部を設けて、
接続状態判断部にて前後のスプライン曲線が連続に接続
されていると判断された際には、スプライン曲線上の現
在の指令位置から後部のスプライン曲線の終点までの曲
線長さの近似値として与えられる近似距離を計算するよ
うに構成したので、複数のスプライン曲線による複雑な
軌跡でも工作機械を滑らかに制御することが可能とな
り、機械工作の高速化、高精度化をはかることができる
という効果を奏する。 According to the present invention, a plurality of spline curves
Even if the command trajectory is given by
A connection state determination unit that determines continuity at connection points is provided,
The spline curves before and after are continuously connected by the connection status judgment unit.
If it is determined that the current
Song from the current command position to the end of the rear spline curve
Calculate the approximate distance given as an approximation of the line length
The complex configuration with multiple spline curves
Machine tools can be controlled smoothly even on trajectories.
Speed and precision of machine work.
This has the effect.
【図1】 この発明の実施の形態1による数値制御装置
を示すブロック図である。FIG. 1 is a block diagram showing a numerical control device according to a first embodiment of the present invention.
【図2】 上記実施の形態の動作の流れを示すフローチ
ャートである。FIG. 2 is a flowchart showing a flow of an operation of the embodiment.
【図3】 上記実施の形態におけるスプライン曲線の一
例を示す説明図である。FIG. 3 is an explanatory diagram showing an example of a spline curve in the embodiment.
【図4】 この発明の実施の形態2による数値制御装置
を示すブロック図である。FIG. 4 is a block diagram showing a numerical control device according to a second embodiment of the present invention.
【図5】 上記実施の形態の動作の流れを示すフローチ
ャートである。FIG. 5 is a flowchart showing a flow of the operation of the embodiment.
【図6】 この発明の実施の形態3による数値制御装置
を示すブロック図である。FIG. 6 is a block diagram showing a numerical control device according to a third embodiment of the present invention.
【図7】 上記実施の形態の動作の流れを示すフローチ
ャートである。FIG. 7 is a flowchart showing a flow of the operation of the embodiment.
【図8】 この発明の実施の形態4による数値制御装置
を示すブロック図である。FIG. 8 is a block diagram showing a numerical controller according to Embodiment 4 of the present invention.
【図9】 上記実施の形態の動作の流れを示すフローチ
ャートである。FIG. 9 is a flowchart showing a flow of the operation of the embodiment.
【図10】 上記実施の形態におけるスプライン曲線の
一例を示す説明図である。FIG. 10 is an explanatory diagram showing an example of a spline curve in the embodiment.
【図11】 上記実施の形態におけるスプライン曲線の
他の例を示す説明図である。FIG. 11 is an explanatory diagram showing another example of a spline curve in the embodiment.
【図12】 従来の数値制御装置を示すブロック図であ
る。FIG. 12 is a block diagram showing a conventional numerical control device.
【符号の説明】1 指令入力部、2 速度パターン生成部、3 終点距
離計算部、4 速度指令出力部、5 加減速制御部、6
パラメータ計算部、7 スプライン曲線位置計算部、
8 移動量計算部、9 パラメータ計算部、10 パラ
メータ修正部、11 パラメータ変換部、12 接続状
態判断部。 [Description of Signs] 1 Command input unit, 2 Speed pattern generation unit, 3 End point distance
Separation calculation unit, 4 speed command output unit, 5 acceleration / deceleration control unit, 6
Parameter calculator, 7 spline curve position calculator,
8 Movement amount calculation unit, 9 Parameter calculation unit, 10 parameters
Meter correction unit, 11 parameter conversion unit, 12 connection
Condition judgment part.
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G05B 19/4103 ──────────────────────────────────────────────────続 き Continued on front page (58) Field surveyed (Int.Cl. 7 , DB name) G05B 19/4103
Claims (4)
曲線を表現するスプライン関数の形式で入力する指令入
力部と、 前記指令入力部から出力される前記スプライン曲線上の
現在の指令位置から前記スプライン曲線の終点までの曲
線長さの近似値として与えられる近似距離を計算し出力
する終点距離計算部と、 前記終点距離計算部から出力される前記終点までの近似
距離に応じて送り速度指令を作成し出力する速度指令出
力部と、 前記速度指令出力部から出力される速度指令を加減速制
御し滑らかな速度指令を出力する加減速制御部と、 前記加減速制御部から出力される速度指令に対応する前
記スプライン曲線のパラメータ変化量を用いて、前記ス
プライン曲線のパラメータを計算し出力するパラメータ
計算部と、 前記パラメータ計算部から出力される前記スプライン曲
線のパラメータを用いて前記スプライン曲線上における
次の指令位置を計算するスプライン曲線位置計算部とを
備えた数値制御装置。 (1)Command trajectory corresponds to desired movement trajectory
Command input in the form of a spline function expressing a curve
Power and On the spline curve output from the command input unit
Song from the current command position to the end point of the spline curve
Calculate and output approximation distance given as approximation of line length
An end point distance calculation unit, Approximation to the end point output from the end point distance calculation unit
Speed command output that creates and outputs a feed speed command according to the distance
Power and The speed command output from the speed command output unit is controlled by acceleration / deceleration.
An acceleration / deceleration control unit that outputs a smooth speed command, Before corresponding to the speed command output from the acceleration / deceleration control unit
Using the parameter change amount of the spline curve,
Parameters for calculating and outputting parameters of the pline curve
A calculation unit, The spline tune output from the parameter calculation unit
Using the parameters of the line on the spline curve
A spline curve position calculator that calculates the next command position
Numerical control unit equipped.
量は、少なくとも1処理周期前のパラメータ変化量と、
少なくとも1処理周期前の指令位置から計算される移動
量との比を用いて計算する請求項1に記載の数値制御装
置。 2. A parameter change of the parameter calculator.
The amount is a parameter change amount at least one processing cycle before, and
Movement calculated from the command position at least one processing cycle before
The numerical control device according to claim 1, wherein the numerical control is performed using a ratio with the amount.
Place.
曲線を表現するスプライン関数の形式で入力する指令入
力部と、 前記指令入力部から出力される前記スプライン曲線上の
現在の指令位置から前記スプライン曲線の終点までの曲
線長さの近似値として与えられる近似距離を計算し出力
する終点距離計算部と、 前記終点距離計算部から出力される前記終点までの近似
距離に応じて送り速度指令を作成し出力する速度指令出
力部と、 前記速度指令出力部から出力される速度指令を加減速制
御し滑らかな速度指令 を出力する加減速制御部と、 前記加減速制御部から出力される速度指令に対応する前
記スプライン曲線のパラメータ変化量を用いて、前記ス
プライン曲線のパラメータを計算し出力するパラメータ
計算部と、 前記パラメータ計算部から出力される前記スプライン曲
線のパラメータを用いて、前記スプライン曲線上におけ
る次の指令位置を計算するスプライン曲線位置計算部
と、 前記加減速制御部から出力される速度指令に対応した距
離と、少なくとも1処理周期前のスプライン曲線上の指
令位置から計算される移動量とを比較して、前記パラメ
ータ変化量の修正を行うパラメータ修正部とを備えた数
値制御装置。 (3)Command trajectory corresponds to desired movement trajectory
Command input in the form of a spline function expressing a curve
Power and On the spline curve output from the command input unit
Song from the current command position to the end point of the spline curve
Calculate and output approximation distance given as approximation of line length
An end point distance calculation unit, Approximation to the end point output from the end point distance calculation unit
Speed command output that creates and outputs a feed speed command according to the distance
Power and The speed command output from the speed command output unit is controlled by acceleration / deceleration.
Smooth speed command Acceleration / deceleration control unit that outputs Before corresponding to the speed command output from the acceleration / deceleration control unit
Using the parameter change amount of the spline curve,
Parameters for calculating and outputting parameters of the pline curve
A calculation unit, The spline tune output from the parameter calculation unit
Using the parameters of the line, place
Spline curve position calculator for calculating the next command position
When, The distance corresponding to the speed command output from the acceleration / deceleration control unit
Release and the finger on the spline curve at least one processing cycle earlier
The travel distance calculated from the command position,
Number with parameter correction unit that corrects data change amount
Value control device.
複数の曲線をそれぞれ表現するスプライン関数の形式で
入力する指令入力部と、 前記指令入力部から出力される前記複数のスプライン曲
線の接続点での連続性を判断する接続状態判断部と、 前記接続状態判断部にて前後の前記スプライン曲線が連
続に接続されていると判断された場合、前記スプライン
曲線上の現在の指令位置から後部の前記スプライン曲線
の終点までの曲線長さの近似値として与えられる近似距
離を計算し出力する終点距離計算部と、 前記終点距離計算部から出力される前記終点までの近似
距離に応じて速度指令を作成し出力する速度指令出力部
と、 前記速度指令出力部から出力される速度指令を加減速制
御し滑らかな速度指令を出力する加減速制御部と、 前記加減速制御部から出力される速度指令に対応する前
記スプライン曲線のパラメータ変化量を用いて、前記ス
プライン曲線のパラメータを計算し出力するパラメータ
計算部と、 前記パラメータ計算部から出力される前記スプライン曲
線のパラメータを用いて、前記スプライン曲線上におけ
る次の指令位置を計算するスプライン曲線位置計算部と
を備えた数値制御装置。 (4)Command trajectory corresponds to desired movement trajectory
In the form of a spline function that represents each of multiple curves
A command input unit for inputting, The plurality of spline songs output from the command input unit
A connection state determination unit that determines continuity at a connection point of the line, The spline curves before and after the connection state determination unit are linked.
If it is determined that the spline is connected,
The spline curve at the rear from the current command position on the curve
Approximate distance given as an approximation of the length of the curve to the end point of
An end-point distance calculator for calculating and outputting the separation; Approximation to the end point output from the end point distance calculation unit
Speed command output unit that creates and outputs speed commands according to the distance
When, The speed command output from the speed command output unit is controlled by acceleration / deceleration.
An acceleration / deceleration control unit that outputs a smooth speed command, Before corresponding to the speed command output from the acceleration / deceleration control unit
Using the parameter change amount of the spline curve,
Parameters for calculating and outputting parameters of the pline curve
A calculation unit, The spline tune output from the parameter calculation unit
Using the parameters of the line, place
A spline curve position calculator for calculating the next command position
Numerical control unit equipped with
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP14248399A JP3210301B2 (en) | 1999-05-21 | 1999-05-21 | Numerical control unit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP14248399A JP3210301B2 (en) | 1999-05-21 | 1999-05-21 | Numerical control unit |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP5216727A Division JP3068989B2 (en) | 1993-08-31 | 1993-08-31 | Numerical control unit |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH11345015A JPH11345015A (en) | 1999-12-14 |
JP3210301B2 true JP3210301B2 (en) | 2001-09-17 |
Family
ID=15316382
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP14248399A Expired - Fee Related JP3210301B2 (en) | 1999-05-21 | 1999-05-21 | Numerical control unit |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3210301B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102540978B (en) * | 2010-12-09 | 2013-07-10 | 中国科学院沈阳计算技术研究所有限公司 | High-speed processing-oriented surface quality preferred spline real-time interpolation method |
DE112012006342B4 (en) | 2012-07-17 | 2019-05-09 | Mitsubishi Electric Corporation | Numerical control device and numerical control system |
-
1999
- 1999-05-21 JP JP14248399A patent/JP3210301B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH11345015A (en) | 1999-12-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Tajima et al. | Global tool-path smoothing for CNC machine tools with uninterrupted acceleration | |
Tikhon et al. | NURBS interpolator for constant material removal rate in open NC machine tools | |
CN101493687B (en) | Real time forward looking whole-process acceleration and deceleration controlled NURBS curve self-adapting subsection interpolation method | |
Tajima et al. | Kinematic corner smoothing for high speed machine tools | |
Erkorkmaz et al. | High speed CNC system design. Part I: jerk limited trajectory generation and quintic spline interpolation | |
CN102789194B (en) | Numerical controller with machining time prediction unit and machining error prediction unit | |
Lai et al. | On the development of a parametric interpolator with confined chord error, feedrate, acceleration and jerk | |
CN108227630B (en) | Free-form surface numerical control machining method adopting time parameter polynomial interpolation | |
KR100253684B1 (en) | Process of generating discrete points defining cutter path, by taking account of ability of individual machine, so as to increase machining efficiency | |
US11644813B2 (en) | Numerical controller, CNC machine tool, numerical control method, and computer-readable information storage medium | |
Wang et al. | Local asymmetrical corner trajectory smoothing with bidirectional planning and adjusting algorithm for CNC machining | |
Du et al. | An accurate adaptive parametric curve interpolator for NURBS curve interpolation | |
CN107291047B (en) | Positive and negative bidirectional NURBS curve interpolation method based on multiple constraint conditions | |
CN112486101B (en) | NURBS curve self-adaptive look-ahead interpolation method | |
US6539275B1 (en) | Machine controller and process with two-step interpolation | |
EP0780745B1 (en) | Method and apparatus for free curve interpolation | |
JP4142872B2 (en) | Numerical control processing method and numerical control system for machine tool | |
JPH11345014A (en) | Numerical controller | |
JP3466111B2 (en) | Numerical control unit | |
JP3210301B2 (en) | Numerical control unit | |
JP2007094936A (en) | Numerical value controller | |
JP2790643B2 (en) | Numerical control unit | |
JP2010267169A (en) | Numerical controller and program for controlling the same | |
JP3511583B2 (en) | Numerical control method | |
JP3068989B2 (en) | Numerical control unit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070713 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080713 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090713 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100713 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100713 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110713 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110713 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120713 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120713 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130713 Year of fee payment: 12 |
|
LAPS | Cancellation because of no payment of annual fees |