JP3219115B2 - Block data processing method for numerical controller - Google Patents

Block data processing method for numerical controller

Info

Publication number
JP3219115B2
JP3219115B2 JP19409693A JP19409693A JP3219115B2 JP 3219115 B2 JP3219115 B2 JP 3219115B2 JP 19409693 A JP19409693 A JP 19409693A JP 19409693 A JP19409693 A JP 19409693A JP 3219115 B2 JP3219115 B2 JP 3219115B2
Authority
JP
Japan
Prior art keywords
block
movement
moving amount
program
data processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP19409693A
Other languages
Japanese (ja)
Other versions
JPH0728519A (en
Inventor
秀典 大場
直義 石橋
義二 平賀
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yaskawa Electric Corp
Original Assignee
Yaskawa Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yaskawa Electric Corp filed Critical Yaskawa Electric Corp
Priority to JP19409693A priority Critical patent/JP3219115B2/en
Publication of JPH0728519A publication Critical patent/JPH0728519A/en
Application granted granted Critical
Publication of JP3219115B2 publication Critical patent/JP3219115B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Numerical Control (AREA)

Description

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

【0001】[0001]

【産業上の利用分野】本発明は、工作機械を制御する数
値制御装置のプログラムブロックの移動量を各軸へ分配
する方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method for distributing a moving amount of a program block of a numerical controller for controlling a machine tool to each axis.

【0002】[0002]

【従来の技術】従来、工作機械を制御する数値制御装置
では、各プログラムブロックを分配周期ごとに各軸へ移
動パルスとして分配している。ここで、プログラムブロ
ックから、その分配周期ごとの送り速度に対応した各軸
の移動パルスを分配周期ごとに分配してゆくと、最後に
その分配周期ごとの送り速度に満たないパルスが余剰パ
ルスとして残ってしまうことがある。この余剰パルスを
そのまま各軸に分配すると、各軸の移動速度は余剰パル
スを出力した1分配周期の間だけ低下することとなり、
機械装置にショックが生じる原因となる。これを解決す
る方法として、1ブロックに生じた余剰パルスを補間前
に求めておき、そのブロック内の先行する分配パルスに
分散させて分配する方法が特開平4−305707に
されている。そこに開示されている方法を用いると、
余剰パルスが生じた場合にも、各分配周期における各軸
の移動速度が1分配周期の間だけ低下することがなくな
る。また、余剰パルスを補間前に求めておくので、パル
ス分配を高速に行うことができる。
2. Description of the Related Art Conventionally, in a numerical control device for controlling a machine tool, each program block is distributed to each axis as a movement pulse at each distribution cycle. Here, the program block, the slide into dispensing movement pulse for each axis corresponding to the feed speed of each the distribution period for each distribution period, a pulse less than the feed speed of each end thereof dispensing cycle as excess pulse It may remain. If this surplus pulse is distributed to each axis as it is, the moving speed of each axis will decrease only for one distribution cycle that outputs the surplus pulse,
This can cause mechanical shock. As a method for solving this, to previously obtain a surplus pulse occurring in one block before the interpolation, open to the preceding methods is dispersed in distribution pulses distributes to in the block Hei 4-305707
It is shown. Using the method disclosed there ,
Even when an extra pulse is generated, the moving speed of each axis in each distribution cycle does not decrease for one distribution cycle. In addition, since the surplus pulses are obtained before interpolation, pulse distribution can be performed at high speed.

【0003】[0003]

【発明が解決しようとする課題】ところが、実際の加工
プログラム中には、ブロック当りの移動量がブロックの
送り速度に対応した分配周期当りの移動量より小さいブ
ロック(以下極小ブロックという)となる場合がある。
例えば、分配周期を1msec、送り速度を6m/mi
nとした場合に、1分配周期の移動量は100μmとな
るが、加工プログラムにはブロック当りの移動量が数μ
mから数10μmとなる極小ブロックが含まれているこ
とがある。CAMを使用してNCデータを作成する場
合、CAMの処理過程でこのような極小ブロックがNC
データに含まれることがある。従って、この場合に図5
に示された加工プログラム中のN3、N4のような極小
ブロックの移動量は1分配周期の移動量に満たないた
め、ブロックN3、N4はそのまま前述の余剰パルスと
なってしまう。従来技術では、余剰パルスの生じたブロ
ック内で余剰パルスを分散して分配し、吸収していた
が、前述の極小ブロックの場合には、そのブロック自体
が余剰パルスであるため、ブロック内で余剰パルスを吸
収することができない。従って、従来技術では、図7に
示されるように極小ブロックで送り速度が低下してしま
うという問題があった。そこで、本発明は、このような
極小ブロックがあっても速度低下を生じないパルス分配
方法を提供することを目的とする。
However, in the actual machining program, the amount of movement per block is a block smaller than the amount of movement per distribution cycle corresponding to the feed speed of the block (hereinafter referred to as an extremely small block). There is.
For example, the distribution cycle is 1 msec, and the feed speed is 6 m / mi.
When n is set, the moving amount in one distribution cycle is 100 μm, but the moving amount per block is several μm in the machining program.
In some cases, a very small block having a size of m to several tens μm is included. When the NC data is created using the CAM, such a minimal block is generated by the NC during the processing of the CAM.
May be included in data. Therefore, in this case, FIG.
Since the moving amount of the minimum block such as N3 and N4 in the machining program shown in (1) is less than the moving amount in one distribution cycle, the blocks N3 and N4 become the surplus pulses as described above. In the prior art, the extra pulse was distributed and distributed and absorbed in the block where the extra pulse occurred. However, in the case of the above-mentioned minimal block, the block itself is an extra pulse, so the extra pulse in the block was used. Inability to absorb pulses. Therefore, in the related art, there is a problem that the feed speed is reduced in the very small block as shown in FIG. Therefore, an object of the present invention is to provide a pulse distribution method that does not cause a speed reduction even with such a very small block.

【0004】上記問題を解決するため、第1の発明は、
NCプログラムの1ブロック分の移動量を分配周期当り
移動量で分割して発生する端数を処理する機能を有す
る数値制御装置のブロックデータ処理方法において、N
Cプログラム中の1ブロックの移動量が、その分配周期
の送り速度に対応した分配周期当たりの移動量未満とな
る極小ブロックである場合に、前記端数の処理に先行し
て、前記極小ブロック以降の2以上のブロックの加算値
が前記分配周期当りの移動量を超過するまで順次加算し
た移動量を、加算される前記2以上のブロックに換え
て、新たな1ブロックとするものである。また、第2の
発明は、NCプログラムの1ブロック分の移動量を分配
周期当りの移動量で分割して発生する端数を処理する機
能を有する数値制御装置のブロックデータ処理方法にお
いて、NCプログラム中の1ブロックの移動量が、予め
設定された値未満の場合に、前記端数の処理に先行し
て、前記極小ブロック以降の2以上のブロックの加算値
が前記分配周期当りの移動量を超過するまで順次加算し
た移動量を、加算される前記2以上のブロックに換え
て、新たな1ブロックとするものである。
[0004] In order to solve the above problems, a first invention is to provide
In a block data processing method of a numerical control device having a function of processing a fraction generated by dividing a movement amount of one block of an NC program by a movement amount per distribution cycle,
Movement of one block in the C program, the case is a minimum block to be less than the amount of movement per distribution period corresponding to the feed speed of the distribution period <br/>, prior to processing of the fractional said The moving amount sequentially added until the added value of two or more blocks after the minimum block exceeds the moving amount per distribution cycle is replaced with the two or more blocks to be added, and a new block is formed. is there. The second invention is the block data processing method for a numerical control apparatus having a function of processing a fraction generated by dividing by the moving amount per distribution period the amount of movement of one block of the NC program in the NC program If the movement amount of one block is less than a predetermined value, the sum of two or more blocks after the minimum block exceeds the movement amount per distribution cycle prior to the processing of the fraction. The moving amount sequentially added up to the above is replaced with two or more blocks to be added, and a new block is obtained.

【0005】[0005]

【作用】上記方法によって、プログラム中の1ブロック
の移動量が、その時の送り速度に対応した1分配周期の
移動量と比較して小さい場合にも、そのブロックの移動
量が1分配周期の移動量を越えるまで、順次、次のブロ
ックの移動量に足し合わせてゆくので、1分配周期の移
動量以下のブロックが除去され、前述の移動量が小さい
ブロックにて送り速度を低下せることなく、補間を行
い、各軸に移動パルスを分配することが可能となる。
According to the above method, even when the movement amount of one block in the program is smaller than the movement amount of one distribution cycle corresponding to the feed speed at that time, the movement amount of the block is one movement period. Until the amount exceeds the moving amount, the moving amount of the next block is sequentially added, so that blocks less than the moving amount of one distribution cycle are removed, and the moving speed of the block having the smaller moving amount is reduced without lowering the feed speed. It is possible to perform interpolation and distribute the movement pulse to each axis.

【0006】[0006]

【実施例】以下、本発明の実施例を図に基づいて説明す
る。図1は、本発明のフロー図であり、メモリ等から移
動指令ブロックを読み込みながら、加減速補間およびパ
ルス分配を行うループ処理を示している。まず、移動指
令ブロックを1ブロック読み込む。次に、前回ブロック
を読み込んだときに極小ブロックを保存していた場合
に、今回読み込んだブロックの移動量に極小ブロックの
移動量を足し合わせて、今回の移動指令ブロックとす
る。次に、今回の移動指令ブロックの移動距離を計算す
る。例えば、X、Y、Z軸の移動量がそれぞれx、y、
zの場合に、移動距離Lは次式で与えられる。 L=(x2 +y2 +z2 1/2 (1) 次に、移動距離Lとしきい値を比較する。このときのし
きい値は、その時の送り速度に対応した分配周期当たり
の移動量とする場合と、予め設定されている値とする場
合がある。移動距離Lがしきい値以上の場合は、極小ブ
ロックエリアを0(ゼロ)にクリアした後、加減速補間
およびパルス分配を行い、再び次のブロックの読み込み
処理に戻る。逆に、移動距離Lがしきい値未満の場合
は、今回の移動指令ブロックを極小ブロックエリアに保
存して次のブロックを読み込む。保存された極小ブロッ
クは、次に読み込まれたブロックに足し合わされる。以
上の処理が、移動指令ブロックの加減速補間およびパル
ス分配処理と共に繰り返される。例えば、図5に示され
る様な加工プログラムにおいて、1分配周期当たりの移
動量を100μmとすると、ブロックN3、N4は極小
ブロックとなる。このような極小ブロックは、実際の微
細加工形状に忠実に作成されたわけではなく、CAMの
計算過程における端数として出力される場合がある。従
って、このような極小ブロックの移動指令に忠実に移動
する必要はない場合もある。このような場合に、本発明
では、極小ブロックの移動量を、その次のブロックの移
動量に足し合わせることを行う。また、そうして得られ
た次のブロックの移動量が、まだ1分配周期の移動量を
越えていなければ、その移動量をさらに次のブロックの
移動量に足し合わせる。こうして、ブロックの移動量が
1分配周期の移動量を越えたときに、通常通りブロック
の補間を行い、移動パルスを各軸に分配するものであ
る。つまり、図5に示されるプログラムがNC装置に与
えられた場合、従来の方法では、図6に示すような加工
形状となって図7に示すようなパルス分配となり、速度
低下が生じていたが、本発明の方法を適用すると、図5
に示す加工プログラムは、図2に示すプログラムに変換
される。すなわち、ブロックN3、N4がN5に吸収さ
れ、新たなブロックN3として扱われる。その結果、加
工形状は、図3のように与えられ、パルス分配時には、
従来の余剰パルスの分配方法によって、図4に示される
ように、送り速度もほぼ一定となるため、速度の低下を
防ぐことができる。極小ブロックであるかどうか判別す
るしきい値の決定方法として、前述のように、その時の
送り速度に対応した1分配周期の移動量をしきい値とす
る方法の他に、NCパラメータなどでしきい値を固定し
て与える方法が考えられる。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described below with reference to the drawings. FIG. 1 is a flowchart of the present invention, and shows a loop process for performing acceleration / deceleration interpolation and pulse distribution while reading a movement command block from a memory or the like. First, one movement command block is read. Next, when the very small block was stored when the block was read last time, the movement amount of the very small block is added to the movement amount of the currently read block to obtain a current movement command block. Next, the movement distance of the current movement command block is calculated. For example, the movement amounts of the X, Y, and Z axes are x, y,
In the case of z, the moving distance L is given by the following equation. L = (x 2 + y 2 + z 2 ) 1/2 (1) Next, the moving distance L is compared with a threshold value. The threshold value at this time may be a movement amount per distribution cycle corresponding to the feed speed at that time, or may be a preset value. If the moving distance L is equal to or greater than the threshold value, the minimum block area is cleared to 0 (zero), acceleration / deceleration interpolation and pulse distribution are performed, and the process returns to the next block reading process. Conversely, if the moving distance L is less than the threshold value, the current movement command block is stored in the minimal block area and the next block is read. The saved tiny block is added to the next read block. The above processing is repeated together with the acceleration / deceleration interpolation of the movement command block and the pulse distribution processing. For example, in a machining program as shown in FIG. 5, if the movement amount per one distribution cycle is 100 μm, the blocks N3 and N4 are extremely small blocks. Such a very small block is not always created faithfully to the actual micro-machined shape, and may be output as a fraction in the CAM calculation process. Therefore, there is a case where it is not necessary to move faithfully in response to such a movement command of the very small block. In such a case, in the present invention, the moving amount of the minimal block is added to the moving amount of the next block. If the movement amount of the next block obtained in this way has not yet exceeded the movement amount of one distribution cycle, the movement amount is added to the movement amount of the next block. Thus, when the movement amount of the block exceeds the movement amount of one distribution cycle, the interpolation of the block is performed as usual, and the movement pulse is distributed to each axis. In other words, when the program shown in FIG. 5 is given to the NC device, the conventional method results in a processing shape as shown in FIG. 6 and a pulse distribution as shown in FIG. By applying the method of the present invention, FIG.
Is converted into the program shown in FIG. That is, the blocks N3 and N4 are absorbed by N5 and are treated as a new block N3. As a result, the processing shape is given as shown in FIG.
By the conventional surplus pulse distribution method, as shown in FIG. 4, the feed speed is also substantially constant, so that a decrease in the speed can be prevented. As described above, as a method of determining a threshold value for determining whether or not the block is a minimum block, in addition to a method of setting a movement amount in one distribution cycle corresponding to a feed speed at that time as a threshold value, an NC parameter or the like is used. A method of giving a fixed threshold value is conceivable.

【0007】[0007]

【発明の効果】以上述べたように、本発明によれば、移
動指令ブロックの移動距離が、しきい値よりも大きくな
るまで、次の移動指令ブロックを読み込み、足し合わせ
てゆくようにしたので、そのときの送り速度に対応した
補間周期当たりの移動量よりも短い極小ブロックを読み
込んだ場合でも、極小ブロックは長ブロックに組み込ま
れ分配されるため、1分配周期に極小ブロックのみが分
配されて、送り速度が低下することがなくなるという効
果がある。このことは、CAMで作成された移動指令デ
ータが直接NC装置の移動指令として与えられる場合に
特に有効である。
As described above, according to the present invention, the next movement command block is read and added until the movement distance of the movement command block becomes larger than the threshold value. Even when a very small block shorter than the moving amount per interpolation cycle corresponding to the feed speed at that time is read, the very small block is incorporated into the long block and distributed, so that only the very small block is distributed in one distribution cycle. This has the effect that the feed speed does not decrease. This is particularly effective when the movement command data created by the CAM is directly given as a movement command of the NC device.

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

【図1】本発明の実施例を示すフロー図FIG. 1 is a flowchart showing an embodiment of the present invention.

【図2】本発明による移動指令ブロックの例FIG. 2 shows an example of a movement command block according to the present invention.

【図3】本発明による指令形状FIG. 3 is a command shape according to the present invention.

【図4】本発明による指令速度FIG. 4 is a command speed according to the present invention.

【図5】従来技術による移動指令ブロックの例FIG. 5 shows an example of a movement command block according to the related art.

【図6】従来技術による指令形状FIG. 6 shows a command shape according to the prior art.

【図7】従来技術による指令速度FIG. 7: Command speed according to the prior art

───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭63−205709(JP,A) 特開 平2−146607(JP,A) (58)調査した分野(Int.Cl.7,DB名) G05B 19/18 - 19/46 ────────────────────────────────────────────────── ─── Continuation of the front page (56) References JP-A-63-205709 (JP, A) JP-A-2-146607 (JP, A) (58) Fields investigated (Int. Cl. 7 , DB name) G05B 19/18-19/46

Claims (2)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】NCプログラムの1ブロック分の移動量
分配周期当りの移動量で分割して発生する端数を処理す
る機能を有する数値制御装置のブロックデータ処理方法
において、NCプログラム中の1ブロックの移動量が、
その分配周期の送り速度に対応した分配周期当たりの移
動量未満となる極小ブロックである場合に、前記端数の
処理に先行して、前記極小ブロック以降の2以上のブロ
ックの加算値が前記分配周期当りの移動量を超過するま
で順次加算した移動量を、加算される前記2以上のブロ
ックに換えて、新たな1ブロックとすることを特徴とす
る数値制御装置のブロックデータ処理方法。
1. A block data processing method for a numerical control apparatus having a function of processing a fraction generated by dividing by the moving amount per distribution period the amount of movement of one block of the NC program, one block in the NC program The travel distance of
In that case a minimum block to be less than the amount of movement per distribution period corresponding to the feed speed of the distribution period, prior to processing of the fractional addition value is the distribution period of 2 or more blocks of the minimum block later A block data processing method for a numerical control device, characterized in that a moving amount sequentially added until a moving amount per hit is exceeded is replaced with the two or more blocks to be added and a new block is provided.
【請求項2】NCプログラムの1ブロック分の移動量
分配周期当りの移動量で分割して発生する端数を処理す
る機能を有する数値制御装置のブロックデータ処理方法
において、NCプログラム中の1ブロックの移動量が、
予め設定された値未満の場合に、前記端数の処理に先行
して、前記極小ブロック以降の2以上のブロックの加算
値が前記分配周期当りの移動量を超過するまで順次加算
した移動量を、加算される前記2以上のブロックに換え
て、新たな1ブロックとすることを特徴とする数値制御
装置のブロックデータ処理方法。
2. A block data processing method for a numerical control apparatus having a function of processing a fraction generated by dividing by the moving amount per distribution period the amount of movement of one block of the NC program, one block in the NC program The travel distance of
If the value is less than a preset value, prior to the processing of the fraction, the moving amount sequentially added until the added value of two or more blocks after the minimum block exceeds the moving amount per distribution cycle, A block data processing method for a numerical controller, wherein a new block is used instead of the two or more blocks to be added.
JP19409693A 1993-07-09 1993-07-09 Block data processing method for numerical controller Expired - Fee Related JP3219115B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP19409693A JP3219115B2 (en) 1993-07-09 1993-07-09 Block data processing method for numerical controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP19409693A JP3219115B2 (en) 1993-07-09 1993-07-09 Block data processing method for numerical controller

Publications (2)

Publication Number Publication Date
JPH0728519A JPH0728519A (en) 1995-01-31
JP3219115B2 true JP3219115B2 (en) 2001-10-15

Family

ID=16318885

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19409693A Expired - Fee Related JP3219115B2 (en) 1993-07-09 1993-07-09 Block data processing method for numerical controller

Country Status (1)

Country Link
JP (1) JP3219115B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6077601B2 (en) 2014-08-22 2017-02-08 ファナック株式会社 Numerical control device that shortens the cycle time of machining programs

Also Published As

Publication number Publication date
JPH0728519A (en) 1995-01-31

Similar Documents

Publication Publication Date Title
DE112013006980B4 (en) Numerical control device
CN106292549B (en) Interference between lathe and robot checks system
EP0093955A2 (en) Control apparatus for a grinding machine
DE102007045595A1 (en) Method and virtual machine tool for displaying actions of a real machine tool
JP2002172543A (en) Control parameter setting system and control parameter setting method for machining device
JP2002132349A (en) Acceleration and deceleration control method
JP2935713B2 (en) Numerical control unit
DE102009038155A1 (en) Servomotor controller for controlling servomotors in e.g. drill bit, has adjusting unit adjusting reverse correction amount based on selection of acceleration, and acceleration control instruction calculated by calculation unit
JP3219115B2 (en) Block data processing method for numerical controller
CN111123844B (en) numerical control system
JP2880170B2 (en) Block overlap method
JP2724647B2 (en) Feed rate control method in numerical control
JPH01152508A (en) Cnc control system
EP3955072A1 (en) Device and method for machining a workpiece
JP3151256B2 (en) Feed rate control method in numerical control
US5027045A (en) High-precision pulse interpolation method
JP3188396B2 (en) Feed rate control method and apparatus in numerical control
JPH0777692B2 (en) Thread cutting method
EP3690573B1 (en) Control of a machine tool
JPS59166449A (en) Method of controlling machine tool with many cutting tools
DE102016009443A1 (en) Numerical control for performing axis control of two parallel axes
JPS63265306A (en) Numerical controller
JP3394121B2 (en) Numerical control unit
JPH03172903A (en) Feed speed control system for numerical controller
JPH0573128A (en) Feed rate control method for numerical controller

Legal Events

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

Free format text: PAYMENT UNTIL: 20080810

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20090810

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20090810

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20100810

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees