JP3219115B2 - Block data processing method for numerical controller - Google Patents
Block data processing method for numerical controllerInfo
- 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
Links
Landscapes
- Numerical Control (AREA)
Description
【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.
【図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)
分配周期当りの移動量で分割して発生する端数を処理す
る機能を有する数値制御装置のブロックデータ処理方法
において、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.
分配周期当りの移動量で分割して発生する端数を処理す
る機能を有する数値制御装置のブロックデータ処理方法
において、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.
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)
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 |
-
1993
- 1993-07-09 JP JP19409693A patent/JP3219115B2/en not_active Expired - Fee Related
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 |