JP2001154719A - Method for interpolating free curve - Google Patents
Method for interpolating free curveInfo
- Publication number
- JP2001154719A JP2001154719A JP33893999A JP33893999A JP2001154719A JP 2001154719 A JP2001154719 A JP 2001154719A JP 33893999 A JP33893999 A JP 33893999A JP 33893999 A JP33893999 A JP 33893999A JP 2001154719 A JP2001154719 A JP 2001154719A
- Authority
- JP
- Japan
- Prior art keywords
- curve
- unit
- speed
- command value
- block
- 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
Links
Landscapes
- Numerical Control (AREA)
Abstract
Description
【0001】[0001]
【発明の属する技術分野】本発明は、工作機械や産業用
ロボットなどに使われる数値制御装置における自由曲線
補間方法に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a free curve interpolation method in a numerical control device used for a machine tool, an industrial robot, or the like.
【0002】[0002]
【従来の技術】数値制御装置において自由曲線補間を実
行する際、例えば、 NURBS補間を実行する際、従
来、図4に示すようにG205と記述されたNURBS
補間区間開始ブロックのみに速度指令値F10000が
記述された加工プログラムを入力し、図5に示すように
曲線全体で、前記速度指令値を限界速度として加減速制
御を行っていた。あるいは、速度指令値を記述されてい
ない場合はNURBS補間区間以前のブロックで指令さ
れた速度指令値を用いて、曲線全体で、前記速度指令値
を限界速度として加減速制御を行っていた。2. Description of the Related Art When performing free curve interpolation in a numerical control device, for example, when performing NURBS interpolation, conventionally, as shown in FIG.
A machining program in which the speed command value F10000 is described is input only to the interpolation section start block, and acceleration / deceleration control is performed using the speed command value as a limit speed over the entire curve as shown in FIG. Alternatively, if no speed command value is described, acceleration / deceleration control is performed using the speed command value as a limit speed over the entire curve using a speed command value specified in a block before the NURBS interpolation section.
【0003】[0003]
【発明が解決しようとする課題】ところが、従来技術で
は、限界速度が1つの前記速度指令値に抑えられてしま
うため、加工工程によっては加工精度は悪くなるが速度
を上げてもよいような曲線の部分でも速度を上げること
ができず、その結果、加工時間が長くなってしまうとい
う問題があった。そこで、本発明は、曲線の部分的に指
定された速度であっても、加工工程による加工精度に応
じた速度によって、より細やかな速度制御を可能にし、
効率的に加工を行うことを目的とする。However, in the prior art, since the limit speed is limited to one of the speed command values, the processing accuracy is deteriorated depending on the processing step, but the speed may be increased. In this case, the speed cannot be increased, and as a result, there is a problem that the processing time becomes longer. Therefore, the present invention enables a finer speed control by a speed according to the processing accuracy in the processing step, even at a partially specified speed of the curve,
The purpose is to perform processing efficiently.
【0004】[0004]
【課題を解決するための手段】上記課題を解決するた
め、本発明の自由曲線補間方法は、自由曲線をある単位
で区切った単位曲線を表すブロック毎に速度指令値が記
述された加工プログラムを入力し、前記単位曲線毎に前
記速度指令値を限界速度として加減速制御を行うことを
特徴とする。また、請求項2記載の発明は、前記単位曲
線を表すブロックに前記速度指令値が記述されていない
場合は、以前の単位曲線を表すブロックまたは前記自由
曲線の補間区間以前のブロックで指令された速度指令値
が記述されているものと前記数値制御装置が解釈し、あ
らかじめ記憶された前記ブロックにおける前記速度指令
値を限界速度として加減速制御を行うことを特徴とす
る。さらに、請求項3記載の発明は、前記自由曲線はN
URBS曲線であって、前記単位曲線は階数の制御点数
分だけ指定してできる曲線であることを特徴とする。In order to solve the above-mentioned problems, a free curve interpolation method according to the present invention provides a machining program in which a speed command value is described for each block representing a unit curve obtained by dividing a free curve by a certain unit. The acceleration / deceleration control is performed for each unit curve by using the speed command value as a limit speed. Further, in the invention according to claim 2, when the speed command value is not described in the block representing the unit curve, a command is issued in a block representing a previous unit curve or a block before an interpolation section of the free curve. The numerical control device interprets that a speed command value is described, and performs acceleration / deceleration control using the speed command value in the block stored in advance as a limit speed. Furthermore, in the invention according to claim 3, the free curve is N
A URBS curve, wherein the unit curve is a curve that can be designated by the number of control points of the floor.
【0005】[0005]
【発明の実施の形態】以下、本発明の実施例の形態を図
に基づいて説明する。図1は本発明の自由曲線補間方法
を実施する数値制御装置の構成を示す図である。この数
値制御装置は、例えば、工作機械等の各種産業機械や産
業用ロボットの制御系に適用されるものであり、マイク
ロプロセッサ等の計算機ベースで数値制御を行う。図1
に示す数値制御装置はプログラム入力部101、プログ
ラム解析部102、制御部103、軸制御系110から
構成されており、制御部103は関数発生処理部104
と指令補正部105から、軸制御系110は軸制御部1
11と、サーボモータ112、位置検出器113から構
成されている。プログラム入力部101は、作業者等が
記述した加工プログラムを入力する部分であり、入力さ
れた加工プログラムはプログラム解析部102に出力さ
れる。プログラム解析部102は自動運転の場合に使用
されるものであり、プログラム入力部101が出力する
加工プログラムを解析して位置や速度等の各種データを
求め制御部103に出力する。制御部103の関数発生
処理部104では、入力した前記各種データから速度の
時間関数を生成して出力する。それを受けた指令補正部
105は時間関数に基づいて軸毎に補正された指令を生
成し、軸制御系110の軸制御部111に指令を出力す
る。この指令を受けた軸制御部111はサーボモータ1
12の回転方向と回転速度、回転量を制御する。尚、軸
制御部111は位置検出器113の位置検出信号に基づ
いてフィードバック制御を行う。DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a diagram showing the configuration of a numerical control device that implements the free curve interpolation method of the present invention. This numerical control device is applied to, for example, a control system of various industrial machines such as machine tools and industrial robots, and performs numerical control on a computer basis such as a microprocessor. FIG.
Is comprised of a program input unit 101, a program analysis unit 102, a control unit 103, and an axis control system 110. The control unit 103 includes a function generation processing unit 104
From the command correction unit 105, the axis control system 110
11, a servo motor 112, and a position detector 113. The program input unit 101 is a unit for inputting a machining program described by an operator or the like, and the input machining program is output to the program analysis unit 102. The program analysis unit 102 is used in the case of automatic operation, and analyzes a machining program output by the program input unit 101 to obtain various data such as a position and a speed, and outputs the data to the control unit 103. The function generation processing unit 104 of the control unit 103 generates and outputs a time function of speed from the various types of input data. The command correction unit 105 receiving the command generates a command corrected for each axis based on the time function, and outputs the command to the axis control unit 111 of the axis control system 110. Upon receiving this command, the axis control unit 111
The rotation direction, the rotation speed, and the rotation amount are controlled. The axis control unit 111 performs feedback control based on the position detection signal of the position detector 113.
【0006】次に本発明の方法を実施する手順をNUR
BS補間を実行する場合を例にして説明する。まず、数
値制御装置に入力されるNURBS補間の加工プログラ
ムについて説明する。図2のような場合、階数Pが4で
あるため、制御点とウェイトRの4つで1つの単位曲線
ができる。そして、1つの制御点とウェイトが追加され
る毎に単位曲線が1つ追加される。したがって、1ブロ
ックには1つの制御点とウェイトを指定するので、1ブ
ロック目から4ブロック目までが1つ目の単位曲線とな
り、2ブロック目から5ブロック目までが2つ目の単位
曲線、3ブロック目から6ブロック目までが3つ目の単
位曲線となる。ただし、ノットKに関しては、1ブロッ
ク目から8ブロック目までが1つ目の単位曲線のノット
であり、2ブロック目から9ブロック目までが2つ目の
単位曲線のノット、3ブロック目から10ブロック目ま
でが3つ目の単位曲線のノットである。さらに、各単位
曲線の先頭ブロックに各速度指令値、例えばF1000
0、F5000、F8000、を記述すると、本発明に
係るNURBS補間の加工プログラムになる。Next, the procedure for implementing the method of the present invention is described as NUR.
The case where BS interpolation is performed will be described as an example. First, a machining program for NURBS interpolation input to the numerical controller will be described. In the case shown in FIG. 2, since the floor P is 4, one unit curve is formed by the four control points and the weight R. Then, each time one control point and one weight are added, one unit curve is added. Therefore, one control point and one weight are designated for one block, so that the first to fourth blocks are the first unit curves, and the second to fifth blocks are the second unit curves, The third to sixth blocks form the third unit curve. However, regarding the knot K, the knots of the first unit curve are from the first block to the eighth block, and the knots of the second unit curve are from the second block to the ninth block. The blocks up to the block are knots of the third unit curve. Furthermore, each speed command value, for example, F1000, is added to the first block of each unit curve.
When 0, F5000, and F8000 are described, the processing program is NURBS interpolation according to the present invention.
【0007】次に上記加工プログラムを使ってNURB
S補間を実行する手順を説明する。その手順とは、次の
ようなステップを踏む。 図2のように、各単位曲線を表すブロック毎に速度
指令値が記述されたNURBS補間の加工プログラムは
プログラム入力部101によって数値制御装置に入力さ
れる。 入力された加工プログラムをプログラム解析部10
2が解析し、単位曲線毎の目標位置と、その目標位置で
の速度と、曲率半径極小点などその目標位置以外の減速
点と、その減速点での速度と速度指令値のデータとを生
成し、制御部103に出力する。 プログラム解析部102が出力した情報を基に、関
数発生処理部104が、前記速度指令値を限界速度とす
る速度の時間関数を生成し(図3)、その関数を受けた
指令補正部105が軸毎に補正された指令を生成して軸
制御系110の軸制御部111に出力する。 軸制御部111は入力した指令と位置検出器113
の位置検出信号からサーボモータ112を所定の回転量
だけ所定の回転方向、回転速度で回転させる。また、加
工プログラムの単位曲線を表すブロックで速度指令値が
記述されていない場合、例えば、図2のF5000が記
述されていない場合は、プログラム解析部102が、以
前の単位曲線を表すブロックにおける速度指令値F10
000を設定し、関数発生処理部104が前記速度指令
値を限界速度として速度の時間関数を生成して加減速制
御を行う。さらに、例えば、図2のF10000が記述
されていない場合は、プログラム解析部102が、NU
RBS補間区間以前のブロックの速度指令値を設定し、
関数発生処理部104で前記速度指令値を限界速度とし
て速度の時間関数を生成し、加減速制御を行う。Next, NURB using the above-mentioned machining program
The procedure for executing the S interpolation will be described. The procedure involves the following steps. As shown in FIG. 2, a NURBS interpolation machining program in which a speed command value is described for each block representing each unit curve is input to the numerical controller by the program input unit 101. The input machining program is converted to a program analysis unit 10
2 analyzes and generates a target position for each unit curve, a speed at the target position, a deceleration point other than the target position such as a minimum radius of curvature radius, and data of the speed and the speed command value at the deceleration point. Then, it outputs to the control unit 103. Based on the information output by the program analysis unit 102, the function generation processing unit 104 generates a time function of the speed with the speed command value as the limit speed (FIG. 3), and the command correction unit 105 receiving the function generates the time function. A command corrected for each axis is generated and output to the axis control unit 111 of the axis control system 110. The axis controller 111 receives the input command and the position detector 113.
, The servo motor 112 is rotated by a predetermined amount of rotation in a predetermined rotation direction and a predetermined rotation speed. When the speed command value is not described in the block representing the unit curve of the machining program, for example, when F5000 in FIG. 2 is not described, the program analysis unit 102 determines the speed in the block representing the previous unit curve. Command value F10
000, and the function generation processing unit 104 performs acceleration / deceleration control by generating a time function of speed using the speed command value as a limit speed. Further, for example, when F10000 in FIG. 2 is not described, the program analysis unit 102
Set the speed command value of the block before the RBS interpolation section,
The function generation processing unit 104 generates a time function of speed with the speed command value as a limit speed, and performs acceleration / deceleration control.
【0008】[0008]
【発明の効果】以上述べたように、本発明によれば、単
位曲線毎に限界速度が指定でき、前記限界速度にしたが
った速度制御ができるので、加工工程によって、加工精
度に応じた細やかな速度制御を可能にし、効率的に加工
を行うことができるという効果がある。As described above, according to the present invention, the limit speed can be designated for each unit curve, and the speed can be controlled in accordance with the limit speed. There is an effect that the speed can be controlled and machining can be performed efficiently.
【図1】本発明の方法を実施するための装置の構成を示
す説明図FIG. 1 is an explanatory diagram showing a configuration of an apparatus for carrying out a method of the present invention.
【図2】本発明の方法を実施するための装置に入力する
加工プログラムFIG. 2 shows a machining program input to an apparatus for implementing the method of the present invention.
【図3】本発明の方法で生成される時間と速度の関係を
示す関数の例FIG. 3 shows an example of a function showing the relationship between time and speed generated by the method of the present invention.
【図4】従来の方法を実施する装置に入力する加工プロ
グラムFIG. 4 is a machining program input to an apparatus for implementing a conventional method.
【図5】従来の方法で生成される時間と速度の関係を示
す関数の例FIG. 5 is an example of a function showing a relationship between time and speed generated by a conventional method.
101 プログラム入力部 102 プログラム解析部 103 制御部 104 関数発生処理部 105 指令補正部 110 軸制御系 111 軸制御部 112 サーボモータ 113 位置検出器 Reference Signs List 101 program input unit 102 program analysis unit 103 control unit 104 function generation processing unit 105 command correction unit 110 axis control system 111 axis control unit 112 servo motor 113 position detector
───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 5H269 AB01 AB33 BB05 EE01 EE13 GG01 GG08 PP15 QB17 RB03 RB11 ──────────────────────────────────────────────────続 き Continued on the front page F term (reference) 5H269 AB01 AB33 BB05 EE01 EE13 GG01 GG08 PP15 QB17 RB03 RB11
Claims (3)
おいて、 自由曲線をある単位で区切った単位曲線を表すブロック
毎に速度指令値が記述された加工プログラムを入力し、 前記単位曲線毎に前記速度指令値を限界速度として加減
速制御を行うことを特徴とする自由曲線補間方法。1. A free-curve interpolation method in a numerical controller, comprising: inputting a machining program in which a speed command value is described for each block representing a unit curve obtained by dividing the free curve by a certain unit; A free curve interpolation method characterized by performing acceleration / deceleration control using a command value as a limit speed.
令値が記述されていない場合は、以前の単位曲線を表す
ブロックまたは前記自由曲線の補間区間以前のブロック
で指令された速度指令値が記述されているものと前記数
値制御装置が解釈し、あらかじめ記憶された前記ブロッ
クにおける前記速度指令値を限界速度として加減速制御
を行うことを特徴とする請求項1記載の自由曲線補間方
法。2. If the speed command value is not described in a block representing the unit curve, a speed command value commanded in a block representing a previous unit curve or a block before an interpolation section of the free curve is described. 2. The free-curve interpolation method according to claim 1, wherein the numerical controller interprets that the speed control has been performed, and performs acceleration / deceleration control using the speed command value in the block stored in advance as a limit speed.
前記単位曲線は階数の制御点数分だけ指定してできる曲
線であることを特徴とする請求項1または請求項2記載
の自由曲線補間方法。3. The free curve is a NURBS curve,
3. The free curve interpolation method according to claim 1, wherein the unit curve is a curve that can be specified by the number of control points of the rank.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP33893999A JP2001154719A (en) | 1999-11-30 | 1999-11-30 | Method for interpolating free curve |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP33893999A JP2001154719A (en) | 1999-11-30 | 1999-11-30 | Method for interpolating free curve |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2001154719A true JP2001154719A (en) | 2001-06-08 |
Family
ID=18322758
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP33893999A Pending JP2001154719A (en) | 1999-11-30 | 1999-11-30 | Method for interpolating free curve |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2001154719A (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102141795A (en) * | 2011-03-23 | 2011-08-03 | 中国地质大学(武汉) | Hierarchically reconstructed NURBS curve interpolator and configuration method thereof |
CN104678899A (en) * | 2015-02-11 | 2015-06-03 | 北京配天技术有限公司 | Curve velocity planning method and device, as well as numerical control machining path data processing method |
JP2017041041A (en) * | 2015-08-19 | 2017-02-23 | 株式会社ソディック | Processing data generation apparatus and processing data generation program |
CN110780642A (en) * | 2019-10-28 | 2020-02-11 | 南京工程学院 | NURBS interpolation position parameter optimization and parallel computing hardening method thereof |
CN113211433A (en) * | 2021-04-21 | 2021-08-06 | 山东科技大学 | Separated visual servo control method based on composite characteristics |
-
1999
- 1999-11-30 JP JP33893999A patent/JP2001154719A/en active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102141795A (en) * | 2011-03-23 | 2011-08-03 | 中国地质大学(武汉) | Hierarchically reconstructed NURBS curve interpolator and configuration method thereof |
CN104678899A (en) * | 2015-02-11 | 2015-06-03 | 北京配天技术有限公司 | Curve velocity planning method and device, as well as numerical control machining path data processing method |
CN104678899B (en) * | 2015-02-11 | 2017-12-15 | 北京配天技术有限公司 | Curve speed planing method, device and its Machining Path data processing method |
JP2017041041A (en) * | 2015-08-19 | 2017-02-23 | 株式会社ソディック | Processing data generation apparatus and processing data generation program |
CN110780642A (en) * | 2019-10-28 | 2020-02-11 | 南京工程学院 | NURBS interpolation position parameter optimization and parallel computing hardening method thereof |
CN113211433A (en) * | 2021-04-21 | 2021-08-06 | 山东科技大学 | Separated visual servo control method based on composite characteristics |
CN113211433B (en) * | 2021-04-21 | 2022-09-20 | 山东科技大学 | Separated visual servo control method based on composite characteristics |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4813616B1 (en) | Numerical control device for machine tool having speed control function during arc motion | |
JPS61157909A (en) | System for correcting route error of robot | |
JP5339999B2 (en) | Numerical control device having interference check function | |
CN113168155B (en) | Numerical control device and numerical control method | |
JP5911939B1 (en) | Numerical controller with overlap function between arbitrary blocks by common acceleration / deceleration control unit | |
US5004968A (en) | Method for acceleration and deceleration control of servomotors | |
WO2018042704A1 (en) | Command value generating device | |
WO1991003009A1 (en) | Acceleration/deceleration control method of numeric controller | |
JPH06274228A (en) | Numerical control device | |
JP2001154719A (en) | Method for interpolating free curve | |
JP2012137990A (en) | Numerical control unit, movement control method, movement control program, and storage medium | |
EP1182524A1 (en) | Programmable controller | |
WO2014013550A1 (en) | Numerical control device and numerical control system | |
EP0930554A1 (en) | Method of conversion of robot teaching program | |
JP2880170B2 (en) | Block overlap method | |
JP4560191B2 (en) | Numerical controller | |
JPS6232508A (en) | Positioning control method for servo-system of numerical controller | |
JP2003015715A (en) | Command value generating method and command value generation system and prgraming device | |
JP3242190B2 (en) | Numerical control unit | |
JP2001166807A (en) | Method for commanding working by numerical controller | |
JP3198256B2 (en) | Numerical control unit | |
JP2000231412A (en) | In-position check method and device therefor | |
JPH06180606A (en) | Controller for object to be driven | |
JP2653130B2 (en) | Acceleration / deceleration control device | |
JPH09160620A (en) | Numerical controller |