JPH0236406A - Nc device having spline interpolation function - Google Patents

Nc device having spline interpolation function

Info

Publication number
JPH0236406A
JPH0236406A JP18781588A JP18781588A JPH0236406A JP H0236406 A JPH0236406 A JP H0236406A JP 18781588 A JP18781588 A JP 18781588A JP 18781588 A JP18781588 A JP 18781588A JP H0236406 A JPH0236406 A JP H0236406A
Authority
JP
Japan
Prior art keywords
vector
teaching points
teaching
point
section
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP18781588A
Other languages
Japanese (ja)
Inventor
Shigeo Hotta
堀田 茂雄
Shinji Nishimura
慎二 西村
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.)
Toyoda Koki KK
Original Assignee
Toyoda Koki KK
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 Toyoda Koki KK filed Critical Toyoda Koki KK
Priority to JP18781588A priority Critical patent/JPH0236406A/en
Publication of JPH0236406A publication Critical patent/JPH0236406A/en
Pending legal-status Critical Current

Links

Landscapes

  • Numerical Control (AREA)

Abstract

PURPOSE:To attain smooth interpolation on a real time basis by means of designating teaching points on less tool loci by changing one variable of a spline function and generating a position on the tool loci. CONSTITUTION:CPU 20 generates approximate tangent vectors in the intermediate point of continuous three teaching points from two unit vectors of a displacement vector between adjacent teaching points in the three continuous teaching points from position a data or respective teaching points stored in a memory 25. The spline function in which one variable passing through two adjacent teaching points is set to be a parameter is operated from a tangent vector in two adjacent teaching points and the position vector by position data stored in the memory 25. The parameter in the spline function is changed and interpolation data on respective positions on the spline function is generated. Thus, more smooth and precise curved surface working can be executed by less number of teaching points.

Description

【発明の詳細な説明】[Detailed description of the invention] 【産業上の利用分野】[Industrial application field]

本発明は、曲面加工を高速かつ精度良く実行するための
スプライン補間機能を有するNC装置に関する。
The present invention relates to an NC device having a spline interpolation function for performing curved surface machining at high speed and with high precision.

【従来技術】[Prior art]

従来、NC装置で曲面加工を行う場合には、第6図、第
7図に示すように、工具軌跡A、Bを求め、その工具軌
跡ASBを直線補間や円弧補間を用いて加工していた。 更に、スプライン補間機能を持っているものについては
、加工曲面に沿って工具を移動させるための工具軌跡上
の全教示点数をスプライン関数に代入して、その工具軌
跡上の位置を発生させ、より加工精度を向上させること
を行っていた。
Conventionally, when performing curved surface machining with an NC device, as shown in Figures 6 and 7, tool trajectories A and B were obtained and the tool trajectories ASB were processed using linear interpolation or circular interpolation. . Furthermore, for those that have a spline interpolation function, the total number of teaching points on the tool trajectory for moving the tool along the machining curved surface is assigned to the spline function, and the position on the tool trajectory is generated. We were working to improve machining accuracy.

【発明が解決しようとする課題】[Problem to be solved by the invention]

ところが、第6図に示すように、工具軌跡を直線補間で
精度良く実行するためには、工具軌跡上の点を多数指定
する必要があり、加工精度を向上させるためには、第6
図に示すように、各教示点を指定するためのNCデータ
数が多くなるという欠点があり、NCデータの作成に時
間を要するという問題がある。 また、第7図に示すように円弧補間を行う場合には、工
具軌跡上の教示点の数は減少するが、実際の工具軌跡と
近似される円弧とに偏差を生じ、加工精度が向上しない
という問題がある。 更に、スプライン補間機能を用いる場合には、工具軌跡
上の教示点の数は減少し、実際の工具軌跡と近似される
円弧との偏差も少なくなるが、スプライン関数に工具軌
跡上の全教示点数を代入しての計算は、膨大な時間を必
要とし、NC装置における短いサンプリングタイムの間
に、その工具軌跡上の位置を発生させることは、不可能
であり、リアルタイムにて、スプライン補間することは
できなかった。 本発明は、上記の課題を解決するために成されたもので
あり、その目的とするところは、少ない工具軌跡上の教
示点数の指定で滑らかな補間をリアルタイムにて行なえ
るスプライン補間機能を有するNC装置を提供すること
である。
However, as shown in Fig. 6, in order to accurately perform linear interpolation of the tool trajectory, it is necessary to specify many points on the tool trajectory.
As shown in the figure, there is a drawback that the number of NC data for specifying each teaching point increases, and there is a problem that it takes time to create the NC data. Furthermore, when circular interpolation is performed as shown in Figure 7, the number of teaching points on the tool path is reduced, but a deviation occurs between the actual tool path and the approximated circular arc, and machining accuracy does not improve. There is a problem. Furthermore, when using the spline interpolation function, the number of teaching points on the tool path decreases, and the deviation between the actual tool path and the approximated circular arc also decreases, but the total number of teaching points on the tool path is It takes a huge amount of time to calculate by substituting I couldn't. The present invention has been made to solve the above problems, and its purpose is to have a spline interpolation function that can perform smooth interpolation in real time by specifying a small number of teaching points on the tool path. The purpose of the present invention is to provide an NC device.

【課題を解決するための手段】[Means to solve the problem]

上記課題を解決するための発明の構成は、加工曲面に沿
って加工工具を移動させるための工具軌跡上の各教示点
の位置データを記憶する位置データ記憶手段と、前記位
置データ記憶手段により記憶された各教示点の位置デー
タによる連続した3教示点における隣接した2教示点間
の変位ベクトルの2つの単位ベクトルから前記連続した
3教示点の中間教示点における近似的な各接線ベクトル
を発生させるベクトル発生手段と、前記位置データ記憶
手段により記憶された隣接する2教示点の位置データに
よる位置ベクトルと前記ベクトル発生手段により発生さ
れたその2教示点における接線ベクトルとから隣接した
2教示点間の前記工具軌跡上の位置を1変数によって変
化させることのできるスプライン関数を発生させるスプ
ライン発生手段と、前記スプライン発生手段により発生
されたスプライン関数の1変数を変化させて前記工具軌
跡上の位置を発生させるスプライン補間手段とを備えた
ことを特徴とする。
The structure of the invention for solving the above problems includes a position data storage means for storing position data of each teaching point on a tool trajectory for moving a machining tool along a machining curved surface; Generate approximate tangent vectors at intermediate teaching points of the three consecutive teaching points from two unit vectors of displacement vectors between two adjacent teaching points at the three consecutive teaching points based on the position data of each teaching point. A vector generation means generates a position vector between two adjacent teach points based on the position data of the two adjacent teach points stored by the position data storage means and a tangent vector at the two teach points generated by the vector generation means. spline generating means for generating a spline function capable of changing a position on the tool trajectory by one variable; and generating the position on the tool trajectory by changing one variable of the spline function generated by the spline generating means. The invention is characterized by comprising a spline interpolation means for

【作用】[Effect]

位置データ記憶手段に記憶された各教示点の位置データ
から連続した3教示点の隣接した2教示点間の変位ベク
トルの2つの単位ベクトルからその連続した3教示点の
中間教示点において、ベクトル発生手段にて、近似的な
各接線ベクトルを発生させ、隣接する2教示点における
接線ベクトルと位置データ記憶手段に記憶されたその位
置データによる位置ベクトルとからスプライン発生手段
にて、隣接した2教示点間を通る1変数をパラメータと
するスプライン関数が演算される。次に、スプライン補
間手段にて、スプライン関数におけるパラメータを変化
させてスプライン関数上の各位置に関する補間データが
生成され、補間データに従って工作機械が制御される。 このように、加工面上にとられた工具軌跡上の連続した
3教示点を順次指定し、求められた隣接する2教示点に
おける接線ベクトルとその位置ベクトルとから2教示点
間がスプライン補間されることにより滑らかに加工され
る。
From the position data of each teaching point stored in the position data storage means, a vector is generated from two unit vectors of the displacement vector between two adjacent teaching points of three consecutive teaching points at an intermediate teaching point of the three consecutive teaching points. The means generates approximate tangent vectors, and the spline generating means generates approximate tangent vectors at the two adjacent taught points from the tangent vectors at the two adjacent taught points and the position vectors based on the position data stored in the position data storage means. A spline function is calculated with one variable passing between the parameters as a parameter. Next, the spline interpolation means changes parameters in the spline function to generate interpolated data regarding each position on the spline function, and the machine tool is controlled according to the interpolated data. In this way, three consecutive teaching points on the tool trajectory taken on the machining surface are sequentially specified, and spline interpolation is performed between the two teaching points from the tangent vector and its position vector at the two adjacent teaching points found. This allows for smooth processing.

【実施例】【Example】

以下、本発明を具体的な実施例に基づいて説明する。 第1図は、本発明のスプライン補間機能を存するNC装
置を利用する直交座標型6釉のレーザ加工ロボット30
を示している。 第1図において、レール12はレール10,11に案内
されて、サーボモータ(図示路)により駆動され、第1
軸(X軸)方向に移動する。キャリア13はレール12
上に摺動自在に配設されており、サーボモータ(図示路
)により回転される送り螺子14により、第2軸(Y軸
)方向に移動する。キャリア13には摺動子15が配設
されており、その摺動子15は図示しない送り螺子機構
により第3軸(Z軸)方向に移動するようになっている
。そして、摺動チエ5の先端部にはそれぞれ第4軸、第
5軸、第6軸の回りに旋回する作業ヘッド16が配設さ
れている。又、作業ヘッド16の先端にはレーザ光を照
射するレーザビームヘッド(工具)17が設けられてい
る。 又、1はレーザ発振装置であり、それにより発振された
レーザ光は、第1軸に平行なU軸方向に摺動する結合子
4に結合されU軸方向に伸縮する導光路5と、結合子4
を介して導光路5と結合し第2軸に平行に配設された導
光路6とによってキャリア13に導かれる。そして、そ
のレーザ光はレーザビームヘッド17から加工物に対し
て放射される。 第2図は上記レーザ加工ロボット30のスプライン補間
機能を有するNC装置の電気的構成を示したブロックダ
イヤグラムである。 20はマイクロコンピュータ等から成る中央処理装置で
ある。この中央処理装置20には、メモリ25、サーボ
モータを駆動するためのサーボCPU22a〜22f1
ジヨグ運転の指令、教示点の指示等を行うオペレーティ
ングボックス(以下OP盤という)26が接続され、又
、教示動作の開始指令等を行う操作盤27が接続されて
いる。 ロボットに取付けられた各軸駆動用のサーボモータM1
〜M6は、それぞれサーボCPU22a〜22fによっ
て駆動される。 前記サーボCPU22 a〜22fのそれぞれは、中央
処理装置20から出力される出力角度データθ1〜θ6
と、サーボモータM1〜M6に連結されたエンコーダE
1〜E6の出力α1〜α6との間の偏差を演算し、この
演算された偏差の大きさに応じた速度で各サーボモータ
M1〜M6を回転させるように作動する。 前記メモリ25にはロボットを教示点等の位置データに
従って動作させるためのプログラムが記憶されたPA領
領域教示点の位置データを記憶する位置データ記憶手段
としてのPDA領域が設けられており、教示モードにお
いて、−複数の教示点における位置データが記憶される
。 次にCPU20の処理手順を第3図のフローチャートに
従って説明する。 まず、位置データ記憶手段を形成するメモリ25のPD
A領域に、0Fll’26により、第5図に示すように
、工具軌跡上の各教示点P1〜P、の位置データが記憶
され、操作盤27によりスプライン補間を用いた加工開
始が指令されると、第3図のプログラムが起動される。 まず、教示点に工具軌跡上の開始点P1を含む第1区間
である2教示点P、、P、間のスプライン補間について
述べる。尚、教示点P、は第1区間の区間始点であり、
教示点P2は第1区間の区間終点である。 ステップ100ではメモリ25のPDA領域に記憶され
ている工具軌跡上の教示点の位置データから連続した3
教示点P 、、 P 2. P 、を読み込み、次にス
テップ102に移行して、第1区間の区間始点P1と区
間終点P、の位IベクトルV1とV、を求める。 次に、ベクトル発生手段を達成するステップ104に移
行し、第1区間の区間始点P、と区間終点P2での工具
軌跡上の接線ベクトルの単位ベクトルT1とT、を求め
る。 第1区間の区間始点P、における接線ベクトルの単位ベ
クトルT、は、区間始点P1が工具軌跡上の開始点であ
るので、その前の教示点が存在しないため、工具軌跡上
の中間教示点とは異なった方法により求める。即ち、第
4図(a)に示すように、隣接した教示点P1から教示
点P2に至る変位ベクトルaと隣接した教示点P2から
教示点P3に至る変位ベクトルbとかり、工具軌跡上の
開始点P、における接線ベクトルの単位ベクトルT、は
、T+= (2a  b> / I 2a  b 1で
近似的に求める。又、その接線ベクトルの太きさmは、 m=V2−V+ で近似的に求められる。 又、第1区間の区間終点である工具軌跡上の中間教示点
P2における接線ベクトルの単位ベクトルT2は、上記
連続した3教示点p I+ p 、、 p 、において
、第4図(b)でi=1として、隣接した教示点P1か
ら教示点P2に至る変位ベクトルCの単位ベクトル7と
隣接した教示点P2から教示点P3に至る変位ベクトル
dの単位ベクトルfとから、次式で近似的に求められる
。 T2= (e+f)/l e+f ここで、;=7/171.7=T/1オ又、その接線ベ
クトルの大きさmは、 m=1Vi−v で近似的に求められる。 次に、スプライン発生手段を達成するステップ106に
移行し、第1区間である2教示点P、、P2間のスプラ
イン関数がパラメータSを用いて発生される。 その第1区間のスプライン関数V、(s)は、次式7式
% ここで、係数B、、、B、、B、、B、は次の様にして
、区間始点P1での位置ベクトルV、と接線ベクトルの
単位ベクトルT、及び区間終点P2での位置を用いて求
められる。 であるので、 ここで、m=1Vz−V ここで、m=  V2  V 次に、ステップ108でスプライン関数のパラメータS
が第1区間の区間始点P1である初期値の0に設定され
、そして、スプライン補間手段を達成するステップ11
0で、パラメータSに対応した工具軌跡上の位置ベクト
ルV+(s)が演算される。 そして、ステップ112でその位置へ工具を移動させる
ように各制御軸の駆動回路に対し/(ルス分配が行われ
る。次に、ステップ114で、+ラメータSが1か否か
、即ち、スプライン補間の第1区間の区間終点P2に達
したか否かが判定される。ステップ114の判定結果が
NOの場合には、ステップ116へ移行して、パラメー
タSの値が微小量ΔSだけ加算され、ステップ110に
戻り、第5図に示すように、次の補間点が演算される。 そして、スプライン補間の第1区間の区間終点P2まで
補間演算が完了すると、ステップ114の判定はYES
とtlす、ステップ118へ移行して位置データは最終
データか否かが判定される。この場合は、位置データが
R++A’データでないのでステップ100へ移行する
。 そして、第2区間である2教示点P 2+ P 、間の
スプライン補間が実行される。尚、教示点P2は第2区
間の区間始点であり、教示点P3は第2区間の区間終点
である。 ステップ100ではメモリ25のPDA領域に記憶され
ている工具軌跡上の教示点の位置データから連続した3
教示点P L+ P −、P−を読み込み、次にステッ
プ102に移行して、第2区間の区間始点P、と区間終
点P、の位置ベクトルV2とV3を求める。 次に、ベクトル発生手段を達成するステップ104に移
行し、qg2区間の区間始点P2と区間終点P3での工
具軌跡上の接線ベクトルの単位ベクトルT2とT、を求
める。 ′fPJ2区間の区間始点P2における接線ベクトルの
単位ベクトルT2は、区間始点P、が工具軌跡上の開始
点でないので、滑らかなスプライン補間とするために、
上述の第1区間の区間終点P2で求められた接線ベクト
ルの単位ベクトルT2と等しくする。 そして、上述の第1区間の区間終点P2で接線ベクトル
の単位ベクトルT2を求めたと同様に、第2区間の区間
終点である工具軌跡上の中間教示点P、における接線ベ
クトルの単位ベクトルT3は、上記連続した3教示点P
 、、 P 3. P 、において、第4図ら)でi=
2として、隣接した教示点P2から教示点P3に至る変
位ベクトル7の単位ベクトル7と隣接した教示点P、か
ら教示点P4に至る変位ベクトルdの単位ベクトルfと
から、次式で近似的に求められる。 T3= (e+f)/  e+f ここで、e=c/let、r=ct/1ctlそして、
ステップ106〜ステツプ114は、上述の第1区間で
ある2教示点P1.P2間のスプライン関数の発生の場
合と同様に説明され、ステップ118で位置データが最
終データでないので、ステップ100へ移行する。 そして、次に、第3区間以降の各教示点間について、ス
プライン補間が実行される。 次に、第i区間である2教示点Pt、P+47間のスプ
ライン補間について述べる。尚、教示点PtはlEi区
間の区間始点であり、教示点P l+1は第i区間の区
間終点である。 ステップ100ではメモリ25のPDA領域に記憶され
ている工具軌跡上の教示点の位置データから連続した3
教示点P 1. P I+l+ P 142を読み込み
、そして、次にステップ102に移行して、第i区間の
区間始点Ptと区間終点P、+、の位置ベク)jし■東
と■田そ求のる。 次に、ベクトル発生手段を達成するステップ104に移
行して、第i区間の区間始点Plと区間終点P、。、で
の接線ベクトルの単位ベクトル〒IとT I+ +を求
める。 第i区間の区間始点Ptにおける接線ベクトルの単位ベ
クトルTIは、区間始点PLが工具軌跡上の開始点でな
いので、滑らかなスプライン補間とするために、一つ前
の区間である9F、 i −1区間の区間終点P、で求
められた接線ベクトルの単位ベクトルTIと等しくする
。 そして、上述の第1区間の区間終点P、での接線ベクト
ルの単位ベクトルT2を求めたと同様に、第i区間の区
間終点である工具軌跡上の中間教示点P l+1の接線
ベクトルの単位ベクトルT II+は、上記連続した3
教示点P l、 P l+I+ P l+2において、
第4図(b)に示すように、隣接した教示点P1から教
示点P l+1に至る変位ベクトルCの単位ベクトルe
と隣接した教示点P Illから教示点P l+2に至
る変位ベクトルdの単位ベクトルfとから、次式で近似
的に求められる。 Tt++=(e+f)/   e+f ここで、e=c/lc1.f=d/ld又、その接線ベ
クトルの大きさmは、 m=  V、、、−V。 で近似的に求められる。 次に、スプライン発生手段を達成するステップ106に
移行し、第i区間である2教示点P+、Ptや。 間のスプライン関数がパラメータSを用いて発生される
。 その第i区間のスプライン関数Vl(S)は、次式%式
% ここで、係数B、、B2.B、、B4は次の様にして、
区間始点Ptでの位置ベクトルv五と接線ベクトルの単
位ベクトルT、及び区間終点P Illでの位置ベクト
ルV l + 1と接線ベクトルの単位ベクトルT I
+ +を用いて求められる。 V i (0) = B + = V tVl(s)=
82+2B3・s+3B、・s’であるので、 ここで、m=  V+*+−Vl ここで、m=  V、+、−■。 次に、ステップ108でスプライン関数のパラメータS
が第1区間の区間始点P、である初期値の0に設定され
、そして、スプライン補間手段を達成するステップ11
0で、パラメータSに対応した工具軌跡上の位置ベクト
ルVt(S)が演算される。 そして、ステップ112でその位置へ工具を移動させる
ように各制御軸の駆動回路に対しパルス分配が行われる
。次に、ステップ114でパラメータSが1か否か、即
ち、スプライン補間の第i区間の区間終点Pい、に達し
たか否かが判定される。 ステップ114の判定結果がNOの場合には、ステップ
116へ移行し、パラメータSの値が微小量ΔSだけ加
算され、ステップ110に戻り、次の補間点が演算され
る。 そして、スプライン補間の第i区間の区間終点P l+
1まで補間演算が完了すると、ステップ114の判定は
YESとなり、ステップ118へ移行して位置データは
最終データか否かが判定され、ステップ118で位置デ
ータが最終データでないので、ステップ100へ移行す
る。 そして、次に、第i+1区間以降の各教示点間について
、スプライン補間が実行される。 次に、教示点の最終データである工具軌跡上の終了点P
。を含む最後の区間である第n−1区間の2教示点P 
、、、 P 、、間 のスプライン補間について述べる
。尚、教示点P h−1は第n−1区間の区間始点であ
り、教示点P1は第n−1区間の区間終点である。 ステップ100ではメモリ25のPDA領域に記憶され
ている工具軌跡上の教示点の位置データから連続した3
教示点Pイ4.P n−1+ P nを読み込み、次に
ステップ102に移行して、第n −1区間の区間始点
p +、−9と区間終点P、、の位置ベクトルV、、−
1とV。を求める。 次に、ベクトル発生手段を達成するステップ104に移
行し、第n −1区間の区間始点P、、−1と区間終点
P7での接線ベクトルの単位ベクトルT7とToを求め
る。 第n−1区間の区間始点P。−1における接線ベクトル
の単位ベクトルT h−1は、区間始点P、−が工具軌
跡上の開始点でないので、滑らかなスプライン補間とす
るために、一つ前の区間である第n−2区間の区間終点
P、−6で求められた接線ベクトルの単位ベクトルT 
n−1と等しくする。 そして、第n−1区間の区間終点P、、における接線ベ
クトルの単位ベクトルT、、は、区間終点P、。 が工具軌跡上の終了点であるので、その後の教示点が存
在しないため、工具軌跡上の開始点や中間教示点とは異
なった方法により求める。即ち、第4図(C)に示すよ
うに、隣接した教示点P。−2から教示点P7−1に至
る変位ベクトルjと隣接した教示点P Jl−1から教
示点P1に至る変位ベクトルhとから、工具軌跡上の終
了点P1における接線ベクトルの単位ベクトルT、、は
、 T、−−((g−2h)/Ig−2hl)て近似的に求
める。 そして、ステップ106〜ステツプ114は、上述のス
プライン関数の発生の場合と同様に説明される。 次に、教示点の最終データである工具軌跡上の終了点P
。を含む最後の区間である’M n −1区間の2教示
点P R−、、P 、、間のスプライン補間まで補間演
算が完了となるので、ステップ118における判定はY
ESとなり、本プログラムは終了する。 そして、係る処理が実行され、第5図に示すように、1
つの工具軌跡上に沿ったスプライン補間により工具と工
作物との相対的位置関係が制御される。
The present invention will be described below based on specific examples. FIG. 1 shows an orthogonal coordinate type six-glaze laser processing robot 30 that uses an NC device having a spline interpolation function according to the present invention.
It shows. In FIG. 1, the rail 12 is guided by the rails 10 and 11 and is driven by a servo motor (path shown).
Move in the axis (X-axis) direction. Carrier 13 is rail 12
It is slidably disposed on the top and is moved in the second axis (Y-axis) direction by a feed screw 14 rotated by a servo motor (path shown). A slider 15 is disposed on the carrier 13, and the slider 15 is moved in the third axis (Z-axis) direction by a feed screw mechanism (not shown). Further, a working head 16 that rotates around a fourth axis, a fifth axis, and a sixth axis is disposed at the tip of the sliding die 5, respectively. Further, a laser beam head (tool) 17 that irradiates laser light is provided at the tip of the work head 16. Further, 1 is a laser oscillation device, and the laser beam oscillated thereby is coupled to a connector 4 that slides in the U-axis direction parallel to the first axis, and is coupled to a light guide path 5 that expands and contracts in the U-axis direction. child 4
The light is coupled to the light guide path 5 via the light guide path 6 and is guided to the carrier 13 by the light guide path 6 arranged parallel to the second axis. The laser beam is then emitted from the laser beam head 17 to the workpiece. FIG. 2 is a block diagram showing the electrical configuration of the NC device of the laser processing robot 30 having a spline interpolation function. 20 is a central processing unit consisting of a microcomputer and the like. This central processing unit 20 includes a memory 25 and servo CPUs 22a to 22f1 for driving servo motors.
An operating box (hereinafter referred to as OP panel) 26 for issuing commands for jog operation, instructions for teaching points, etc. is connected, and an operation panel 27 for issuing commands for starting teaching operations, etc. is also connected. Servo motor M1 for driving each axis installed on the robot
~M6 are driven by the servo CPUs 22a~22f, respectively. Each of the servo CPUs 22a to 22f receives output angle data θ1 to θ6 output from the central processing unit 20.
and encoder E connected to servo motors M1 to M6.
The servo motors M1 to M6 are operated to rotate each servo motor at a speed corresponding to the magnitude of the calculated deviation. The memory 25 is provided with a PDA area as a position data storage means for storing the position data of the PA area teaching point in which a program for operating the robot according to the position data of the teaching point etc. In - position data at a plurality of teaching points are stored. Next, the processing procedure of the CPU 20 will be explained according to the flowchart shown in FIG. First, the PD of the memory 25 forming the position data storage means.
As shown in FIG. 5, the position data of each teaching point P1 to P on the tool trajectory is stored in the A area by 0Fll'26, and the start of machining using spline interpolation is commanded by the operation panel 27. Then, the program shown in FIG. 3 is started. First, spline interpolation between two teaching points P, , P, which is the first section including the starting point P1 on the tool trajectory as a teaching point, will be described. In addition, the teaching point P is the section start point of the first section,
The teaching point P2 is the end point of the first section. In step 100, three continuous teaching point positions on the tool path stored in the PDA area of the memory 25 are selected.
Teaching point P,, P2. P, and then the process moves to step 102 to obtain the digit I vectors V1 and V of the section start point P1 and section end point P of the first section. Next, the process moves to step 104 for achieving the vector generation means, and unit vectors T1 and T of tangent vectors on the tool trajectory at the section start point P and section end point P2 of the first section are determined. The unit vector T of the tangent vector at the section start point P of the first section is the intermediate teach point on the tool trajectory because the section start point P1 is the starting point on the tool trajectory and there is no previous teaching point. is determined using different methods. That is, as shown in FIG. 4(a), there is a displacement vector a from the adjacent teaching point P1 to the teaching point P2, and a displacement vector b from the adjacent teaching point P2 to the teaching point P3. The unit vector T of the tangent vector at point P is approximately determined by T+= (2a b> / I 2a b 1. Also, the thickness m of the tangent vector is approximately determined by m=V2-V+ In addition, the unit vector T2 of the tangent vector at the intermediate teaching point P2 on the tool trajectory, which is the end point of the first section, is calculated as shown in Fig. 4 ( In b), with i=1, from the unit vector 7 of the displacement vector C from the adjacent teaching point P1 to the teaching point P2 and the unit vector f of the displacement vector d from the adjacent teaching point P2 to the teaching point P3, the following formula is obtained. Approximately, T2= (e+f)/l e+f, where;=7/171.7=T/1o, and the size m of the tangent vector is approximately as follows: m=1Vi-v Next, the process moves to step 106 for achieving the spline generation means, and a spline function between the two teaching points P, P2, which is the first section, is generated using the parameter S. The spline of the first section is calculated. The function V, (s) is expressed by the following formula 7.% Here, the coefficients B, , B, , B, , B are the units of the position vector V at the section start point P1 and the tangent vector as follows. It is obtained using the vector T and the position at the end point P2 of the section. Therefore, here, m=1Vz-V Here, m=V2 V Next, in step 108, the parameter S of the spline function
is set to an initial value of 0, which is the interval starting point P1 of the first interval, and step 11 of achieving spline interpolation means.
0, the position vector V+(s) on the tool trajectory corresponding to the parameter S is calculated. Then, in step 112, /(rus distribution is performed on the drive circuit of each control axis to move the tool to that position.Next, in step 114, it is determined whether the +rammeter S is 1 or not, that is, the spline interpolation It is determined whether the interval end point P2 of the first interval has been reached. If the determination result in step 114 is NO, the process moves to step 116, where the value of the parameter S is added by a minute amount ΔS, Returning to step 110, the next interpolation point is calculated as shown in FIG. 5. When the interpolation calculation is completed up to the section end point P2 of the first section of the spline interpolation, the determination at step 114 is YES.
Then, the process moves to step 118, where it is determined whether the position data is the final data. In this case, since the position data is not R++A' data, the process moves to step 100. Then, spline interpolation between the two teaching points P 2+ P, which is the second section, is executed. Note that the teaching point P2 is the section start point of the second section, and the teaching point P3 is the section end point of the second section. In step 100, three continuous teaching point positions on the tool path stored in the PDA area of the memory 25 are selected.
The teaching points P L+ P -, P- are read, and then the process moves to step 102 to find the position vectors V2 and V3 of the section start point P and section end point P of the second section. Next, the process moves to step 104 for achieving the vector generation means, and the unit vectors T2 and T of the tangential vector on the tool trajectory at the section start point P2 and section end point P3 of the qg2 section are obtained. 'fThe unit vector T2 of the tangent vector at the section start point P2 of the PJ2 section is, since the section start point P is not the starting point on the tool path, in order to perform smooth spline interpolation,
It is made equal to the unit vector T2 of the tangent vector found at the end point P2 of the first section described above. Then, in the same way as finding the unit vector T2 of the tangent vector at the end point P2 of the first section described above, the unit vector T3 of the tangent vector at the intermediate teaching point P on the tool trajectory, which is the end point of the second section, is as follows: The above three consecutive teaching points P
,, P 3. P, in Figure 4 et al.), i=
2, from the unit vector 7 of the displacement vector 7 from the adjacent teaching point P2 to the teaching point P3 and the unit vector f of the displacement vector d from the adjacent teaching point P to the teaching point P4, approximately Desired. T3= (e+f)/e+f where e=c/let, r=ct/1ctl and,
Steps 106 to 114 are the first section described above, which is the two teaching points P1. The explanation is similar to the case of the generation of the spline function between P2, and since the position data at step 118 is not final data, the process moves to step 100. Then, spline interpolation is performed between each teaching point in the third and subsequent sections. Next, spline interpolation between the two teaching points Pt and P+47, which is the i-th section, will be described. Note that the teaching point Pt is the section start point of the lEi section, and the teaching point P1+1 is the section end point of the i-th section. In step 100, three continuous teaching point positions on the tool path stored in the PDA area of the memory 25 are selected.
Teaching point P 1. P I+l+ P 142 is read, and then the process moves to step 102, where the position vectors of the section start point Pt and section end point P, +, of the i-th section are calculated. Next, the process moves to step 104 in which the vector generation means performs the section start point Pl and section end point P of the i-th section. Find the unit vectors 〒I and T I+ + of the tangent vectors at ,. Since the section start point PL is not the starting point on the tool trajectory, the unit vector TI of the tangent vector at the section start point Pt of the i-th section is 9F, i -1, which is the previous section, in order to achieve smooth spline interpolation. It is made equal to the unit vector TI of the tangent vector found at the end point P of the section. Then, in the same way as finding the unit vector T2 of the tangent vector at the end point P of the first section described above, the unit vector T of the tangent vector at the intermediate teaching point Pl+1 on the tool trajectory which is the end point of the i-th section is calculated. II+ is the above consecutive 3
At the teaching point P l, P l+I+ P l+2,
As shown in FIG. 4(b), the unit vector e of the displacement vector C from the adjacent teaching point P1 to the teaching point Pl+1
and the unit vector f of the displacement vector d from the adjacent teaching point P Ill to the teaching point P l+2, it can be approximately determined by the following equation. Tt++=(e+f)/e+f where e=c/lc1. f=d/ld, and the magnitude m of the tangent vector is m=V, , -V. It can be approximated by Next, the process moves to step 106 for achieving the spline generation means, and the second teaching point P+, Pt, which is the i-th section. A spline function between is generated using the parameter S. The spline function Vl(S) of the i-th interval is expressed by the following formula % Formula % Here, coefficients B, , B2. B,,B4 are as follows,
The unit vector T of the position vector v5 and the tangent vector at the section start point Pt, and the unit vector T I of the position vector V l + 1 and the tangent vector at the section end point P Ill
+ It is obtained using +. V i (0) = B + = V tVl(s) =
82+2B3・s+3B,・s', where m= V+*+-Vl where m= V, +, -■. Next, in step 108, the parameter S of the spline function
is set to an initial value of 0, which is the interval starting point P of the first interval, and step 11 to achieve spline interpolation means.
0, the position vector Vt(S) on the tool trajectory corresponding to the parameter S is calculated. Then, in step 112, pulses are distributed to the drive circuits of each control axis to move the tool to that position. Next, in step 114, it is determined whether the parameter S is 1, that is, whether the end point P of the i-th interval of spline interpolation has been reached. If the determination result in step 114 is NO, the process moves to step 116, where the value of the parameter S is added by a minute amount ΔS, and the process returns to step 110, where the next interpolation point is calculated. Then, the end point P l+ of the i-th interval of spline interpolation
When the interpolation calculation is completed up to 1, the determination in step 114 becomes YES, and the process moves to step 118, where it is determined whether the position data is the final data.In step 118, since the position data is not the final data, the process moves to step 100. . Then, spline interpolation is performed between each teaching point after the i+1th interval. Next, the end point P on the tool trajectory which is the final data of the teaching point
. 2 teaching points P of the n-1th section which is the last section including
We will now discuss spline interpolation between , , P , . Note that the teaching point P h-1 is the section start point of the n-1th section, and the teaching point P1 is the section end point of the n-1th section. In step 100, three continuous teaching point positions on the tool path stored in the PDA area of the memory 25 are selected.
Teaching point P 4. Pn-1+Pn is read, and then the process moves to step 102, where the position vectors V, - of the section start point p+,-9 and the section end point P, of the n-1th section are read.
1 and V. seek. Next, the process moves to step 104 for achieving the vector generation means, and the unit vectors T7 and To of the tangent vectors at the section start point P, -1 and the section end point P7 of the n-1 section are obtained. Section starting point P of the n-1th section. The unit vector T h-1 of the tangential vector at -1 is the section start point P, - is not the start point on the tool path, so in order to perform smooth spline interpolation, the n-2th section which is the previous section The unit vector T of the tangent vector found at the end point P of the section, -6
Make it equal to n-1. Then, the unit vector T of the tangent vector at the end point P, , of the n-1th section is the end point P, . Since is the end point on the tool trajectory, there is no teaching point after that, so it is determined by a method different from that for the starting point and intermediate teaching points on the tool trajectory. That is, as shown in FIG. 4(C), adjacent teaching points P. From the displacement vector j from −2 to teaching point P7-1 and the displacement vector h from the adjacent teaching point PJl-1 to teaching point P1, the unit vector T of the tangent vector at the end point P1 on the tool path, is approximately determined by T, --((g-2h)/Ig-2hl). Steps 106 to 114 are then described in the same manner as for the generation of the spline function described above. Next, the end point P on the tool trajectory which is the final data of the teaching point
. Since the interpolation calculation is completed up to the spline interpolation between the two teaching points PR-,,P, of the last interval 'Mn-1 interval including 'Mn-1, the determination in step 118 is Y
ES, and the program ends. Then, such processing is executed, and as shown in FIG.
The relative positional relationship between the tool and workpiece is controlled by spline interpolation along two tool trajectories.

【発明の効果】【Effect of the invention】

本発明は、位置データ記憶手段により記tαされた各教
示点の位置データによる連続した3教示点における隣接
した2教示点間の変位ベクトルの2つの単位ベクトルか
ら連続した3教示点の中間教示点における近似的な各接
線ベクトルを発生させるベクトル発生手段と、位置デー
タ記憶手段により記憶された隣接する2教示点の位置デ
ータによる位置ベクトルとベクトル発生手段により発生
されたその2教示点における接線ベクトルとから隣接し
た2教示点間の工具軌跡上の位置を1変数によって変化
させることのできるスプライン関数を発生させるスプラ
イン発生手段とを備えているので、隣接する2教示点の
接線ベクトルの演算が簡単に行われるため、演算速度が
向上し、工具軌跡上の各教示点間の位置をスプライン捕
間子役によりリアルタイムにて発生させることが可能と
なる。 したがって、少ない教示点数でより滑らかな精度の良い
曲面加工を実行することができる。
The present invention provides an intermediate teaching point of three consecutive teaching points from two unit vectors of displacement vectors between two adjacent teaching points at three consecutive teaching points based on the position data of each teaching point recorded tα by the position data storage means. a vector generating means for generating approximate tangent vectors at each point, a position vector based on position data of two adjacent taught points stored by a position data storage means, and a tangent vector at the two taught points generated by the vector generating means; Since it is equipped with a spline generating means that generates a spline function that can change the position on the tool trajectory between two adjacent teaching points by one variable, calculation of the tangent vector of two adjacent teaching points can be easily performed. As a result, the calculation speed is improved, and the position between each teaching point on the tool trajectory can be generated in real time using the spline interpolator. Therefore, smoother and more accurate curved surface machining can be performed with a smaller number of teaching points.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は本発明の具体的な一実施例に係るスプライン補
間機能を有するNC装置からなるレーザ加工ロボットの
機械的構成を示した機構図。第2図は本実施例に係るス
プライン補間機能を有するNC装置からなるレーザ加工
ロボットの電気的構成を示したブロックダイヤグラム。 第3図はCPU3Oの処理手順を示したフローチャート
。第4図(a)、第4図(b)、第4図(C)は各教示
点の接線ベクトルを近似的に求めるための説明図。第5
図はスプライン補間を示した説明図。第6図は従来の直
線補間を示した説明図。第7図は従来の円弧補間を示し
た説明図である。 レーザ発振装置 1 キャリア 14 ・−作業ヘッド 17 CPU   25 ・・・°メ レーザ加エロボッ 0、 11. 12 −・レール ・送り螺子 15 °摺動子 ・−レーザビームへラド モリ ト
FIG. 1 is a mechanical diagram showing the mechanical configuration of a laser processing robot including an NC device having a spline interpolation function according to a specific embodiment of the present invention. FIG. 2 is a block diagram showing the electrical configuration of a laser processing robot including an NC device having a spline interpolation function according to this embodiment. FIG. 3 is a flowchart showing the processing procedure of the CPU 3O. FIG. 4(a), FIG. 4(b), and FIG. 4(C) are explanatory diagrams for approximately determining the tangent vector of each teaching point. Fifth
The figure is an explanatory diagram showing spline interpolation. FIG. 6 is an explanatory diagram showing conventional linear interpolation. FIG. 7 is an explanatory diagram showing conventional circular interpolation. Laser oscillation device 1 Carrier 14 ・-Work head 17 CPU 25 ・・・°Melaser processing robot 0, 11. 12 -・Rail・Feed screw 15°Slider・−Radomorito to laser beam

Claims (1)

【特許請求の範囲】 加工曲面に沿って加工工具を移動させるための工具軌跡
上の各教示点の位置データを記憶する位置データ記憶手
段と、 前記位置データ記憶手段により記憶された各教示点の位
置データによる連続した3教示点における隣接した2教
示点間の変位ベクトルの2つの単位ベクトルから前記連
続した3教示点の中間教示点における近似的な各接線ベ
クトルを発生させるベクトル発生手段と、 前記位置データ記憶手段により記憶された隣接する2教
示点の位置データによる位置ベクトルと前記ベクトル発
生手段により発生されたその2教示点における接線ベク
トルとから隣接した2教示点間の前記工具軌跡上の位置
を1変数によって変化させることのできるスプライン関
数を発生させるスプライン発生手段と、 前記スプライン発生手段により発生されたスプライン関
数の1変数を変化させて前記工具軌跡上の位置を発生さ
せるスプライン補間手段と を備えたことを特徴とするスプライン補間機能を有する
NC装置。
[Scope of Claims] Position data storage means for storing position data of each teaching point on a tool trajectory for moving a machining tool along a machining curved surface; and vector generating means for generating approximate tangent vectors at intermediate teaching points of the three consecutive teaching points from two unit vectors of displacement vectors between two adjacent teaching points at the three consecutive teaching points based on position data; The position on the tool trajectory between the two adjacent teaching points is calculated from the position vector based on the position data of the two adjacent teaching points stored by the position data storage means and the tangent vector at the two teaching points generated by the vector generating means. spline generation means for generating a spline function that can be changed by one variable; and spline interpolation means for generating a position on the tool path by changing one variable of the spline function generated by the spline generation means. An NC device having a spline interpolation function.
JP18781588A 1988-07-26 1988-07-26 Nc device having spline interpolation function Pending JPH0236406A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP18781588A JPH0236406A (en) 1988-07-26 1988-07-26 Nc device having spline interpolation function

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP18781588A JPH0236406A (en) 1988-07-26 1988-07-26 Nc device having spline interpolation function

Publications (1)

Publication Number Publication Date
JPH0236406A true JPH0236406A (en) 1990-02-06

Family

ID=16212725

Family Applications (1)

Application Number Title Priority Date Filing Date
JP18781588A Pending JPH0236406A (en) 1988-07-26 1988-07-26 Nc device having spline interpolation function

Country Status (1)

Country Link
JP (1) JPH0236406A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5227978A (en) * 1990-11-08 1993-07-13 Mitsubishi Denki Kabushiki Kaisha Numerical control device with rational b-spline interpolator
US5723961A (en) * 1995-07-17 1998-03-03 Mitsubishi Denki Kabushiki Kaisha Numerical control apparatus having spline interpolating function
DE112016007478T5 (en) 2016-12-27 2019-08-08 Mitsubishi Electric Corporation Numerical control apparatus, program conversion apparatus, numerical control method and program conversion method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60262213A (en) * 1984-06-06 1985-12-25 Nippei Toyama Corp Movement control method of industrial robot
JPS6115207A (en) * 1984-06-29 1986-01-23 Shin Meiwa Ind Co Ltd Method and device for control of robot
JPS6310207A (en) * 1986-07-02 1988-01-16 Matsushita Electric Ind Co Ltd Robot control method
JPS6382214A (en) * 1986-09-25 1988-04-13 Shinko Electric Co Ltd Transport device for for parts

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60262213A (en) * 1984-06-06 1985-12-25 Nippei Toyama Corp Movement control method of industrial robot
JPS6115207A (en) * 1984-06-29 1986-01-23 Shin Meiwa Ind Co Ltd Method and device for control of robot
JPS6310207A (en) * 1986-07-02 1988-01-16 Matsushita Electric Ind Co Ltd Robot control method
JPS6382214A (en) * 1986-09-25 1988-04-13 Shinko Electric Co Ltd Transport device for for parts

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5227978A (en) * 1990-11-08 1993-07-13 Mitsubishi Denki Kabushiki Kaisha Numerical control device with rational b-spline interpolator
US5723961A (en) * 1995-07-17 1998-03-03 Mitsubishi Denki Kabushiki Kaisha Numerical control apparatus having spline interpolating function
DE112016007478T5 (en) 2016-12-27 2019-08-08 Mitsubishi Electric Corporation Numerical control apparatus, program conversion apparatus, numerical control method and program conversion method
DE112016007478B4 (en) 2016-12-27 2021-11-25 Mitsubishi Electric Corporation Numerical control device, program conversion device, numerical control method, and program conversion method

Similar Documents

Publication Publication Date Title
US9170580B2 (en) Determining trajectories of redundant actuators jointly tracking reference trajectory
Tajima et al. Accurate interpolation of machining tool-paths based on FIR filtering
US9261872B2 (en) System and method for controlling redundant actuators of a machine
JP3592628B2 (en) Numerical control method
US5020001A (en) Robot controller
JP5255108B2 (en) Numerical control device for speed control by command path speed condition
US7348748B2 (en) Motorized system and method of control
US4963805A (en) Numerical control apparatus for machining non-circular workpieces
JP4199103B2 (en) Numerical control apparatus and numerical control method
WO2013140679A1 (en) Track control device
JPS63318240A (en) Acceleration and deceleration controller
JPH05154681A (en) Optical path length fixing device in laser beam machine
Tang et al. Toolpath interpolation with novel corner smoothing technique
JPH0236406A (en) Nc device having spline interpolation function
JPH06282321A (en) Method and device for converting/preparing numerical control program for machine tool and numerically controlled machine tool
JP3089797B2 (en) Numerical control unit
Sencer et al. Smooth polynomial interpolation for point-to-point trajectories with vibration avoidance
Alzaydi Trajectory generation and optimization for five-axis on-the-fly laser drilling: a state-of-the-art review
KR0161010B1 (en) Modification method of moving path in accordance with diameteral change of work
JPH10286788A (en) Locus control device
WO2002033815A1 (en) Method for controlling acceleration/deceleration of motor
Alzaydi Time-optimal connection between on-the-fly drilling trajectories and rest boundary conditions
WO2022176784A1 (en) Control device for industrial machine
Takeuchi et al. Interpolation of a clothoid curve based on iterative true-value prediction considering the discretization error
JP3120597B2 (en) Numerical controller for machining non-round workpieces