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

Block data processing method for numerical controller

Info

Publication number
JPH0728519A
JPH0728519A JP19409693A JP19409693A JPH0728519A JP H0728519 A JPH0728519 A JP H0728519A JP 19409693 A JP19409693 A JP 19409693A JP 19409693 A JP19409693 A JP 19409693A JP H0728519 A JPH0728519 A JP H0728519A
Authority
JP
Japan
Prior art keywords
block
movement
extent
per distribution
program
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.)
Granted
Application number
JP19409693A
Other languages
Japanese (ja)
Other versions
JP3219115B2 (en
Inventor
Shusuke Oba
秀典 大場
Naoyoshi Ishibashi
直義 石橋
Yoshiji Hiraga
義二 平賀
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)

Abstract

PURPOSE:To provide the pulse distributing method which is free from the reduction of speed regardless of a minimum block when a movement instruction (minimum block) where the extent of movement of one block does not reach the extent of movement per distribution period corresponding to the feed speed is included in NC data processed and outputted by CAD. CONSTITUTION:With respect to the block data processing method for numerical controller which has the function which divides the movement command value of one block of an NC program by the extent of movement per distribution period and processes generated fractions, the extent of movement, which is obtained by successively adding the extents of movement of the minimum block and two or more following blocks until the addition value exceeds the extent of movement per distribution period, is taken as the extent of movement of one new block instead of that of these two or more added blocks before the processing of fractions in the case of the minimum block whose extent of movement in the NC program does not reach the extent of movement per distribution period corresponding to the feed speed.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、工作機械を制御する数
値制御装置のプログラムブロックの移動量を各軸へ分配
する方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method of distributing a movement 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 as a movement pulse to each axis at every distribution cycle. Here, if the movement pulse of each axis corresponding to the feed speed at that time is distributed from the program block for each distribution cycle, a pulse that does not reach the feed speed at that time may remain as a surplus pulse at the end. . If this surplus pulse is distributed to each axis as it is, the moving speed of each axis will decrease only during one distribution cycle in which the surplus pulse is output, which causes a shock to the mechanical device. As a method for solving this, Japanese Patent Laid-Open No. 4-305707 has introduced a method in which a surplus pulse generated in one block is obtained before interpolation and is distributed by being distributed to preceding distribution pulses in the block. By using this method, even if an extra pulse occurs, the moving speed of each axis in each distribution cycle does not decrease for one distribution cycle. Further, since the surplus pulse is 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, when the amount of movement per block is smaller than the amount of movement per distribution cycle corresponding to the feed speed of the block (hereinafter referred to as a "minimum block"). There is.
For example, the distribution cycle is 1 msec and the feed rate is 6 m / mi.
When n is set, the movement amount for one distribution cycle is 100 μm, but the movement amount per block is several μ in the machining program.
There is a case where a minimum block having a size of m to several tens of μm is included. When the NC data is created using the CAM, such a minimal block is NC in the process of processing the CAM.
May be included in the data. Therefore, in this case, FIG.
Since the movement amount of the minimum blocks such as N3 and N4 in the machining program shown in (1) is less than the movement amount of one distribution cycle, the blocks N3 and N4 become the above-mentioned surplus pulses. In the conventional technique, the surplus pulse is dispersed and distributed and absorbed in the block in which the surplus pulse is generated, but in the case of the above-mentioned minimum block, since the block itself is the surplus pulse, the surplus pulse is The pulse cannot be absorbed. Therefore, in the conventional technique, there is a problem that the feed rate is reduced in the extremely 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 decrease even if such a minimal block is present.

【0004】[0004]

【課題を解決するための手段】上記問題を解決するた
め、第1の発明は、NCプログラムの1ブロック分の移
動指令値を分配周期当りの移動距離で分割して発生する
端数を処理する機能を有する数値制御装置のブロックデ
ータ処理方法において、NCプログラム中の1ブロック
の移動量が、その時の送り速度に対応した分配周期当た
りの移動量未満となる極小ブロックである場合に、前記
端数の処理に先行して、前記極小ブロック以降の2以上
のブロックの加算値が前記分配周期当りの移動量を超過
するまで順次加算した移動量を、加算される前記2以上
のブロックに換えて、新たな1ブロックとするものであ
る。また、第2の発明は、NCプログラムの1ブロック
分の移動指令値を分配周期当りの移動距離で分割して発
生する端数を処理する機能を有する数値制御装置のブロ
ックデータ処理方法において、NCプログラム中の1ブ
ロックの移動量が、予め設定された値未満の場合に、前
記端数の処理に先行して、前記極小ブロック以降の2以
上のブロックの加算値が前記分配周期当りの移動量を超
過するまで順次加算した移動量を、加算される前記2以
上のブロックに換えて、新たな1ブロックとするもので
ある。
In order to solve the above problems, a first invention is a function of processing a fraction generated by dividing a movement command value for one block of an NC program by a movement distance per distribution cycle. In the block data processing method of the numerical controller having the above, when the moving amount of one block in the NC program is a minimum block less than the moving amount per distribution cycle corresponding to the feed speed at that time, the processing of the fraction is performed. Prior to the above, the movement amount sequentially added until the added value of two or more blocks after the minimum block exceeds the movement amount per distribution cycle is replaced with the two or more blocks to be added, and a new one is added. One block is used. A second invention is a block data processing method for a numerical control device having a function of processing a fraction generated by dividing a movement command value for one block of the NC program by a movement distance per distribution cycle. When the movement amount of one block is less than a preset value, the addition value 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 that is sequentially added until the above is replaced with the two or more blocks to be added, and a new one block is created.

【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 moves of one distribution cycle. Until the amount is exceeded, the movement amount of the next block is sequentially added. Therefore, blocks having a movement amount of one distribution cycle or less are removed, and the feed speed is not reduced in the block having a small movement amount described above. It is possible to perform interpolation and distribute the moving 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パラメータなどでしきい値を固定し
て与える方法が考えられる。
Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a flow chart of the present invention, showing 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 move command block is read. Next, when the minimum block was saved when the block was read last time, the movement amount of the minimum block is added to the movement amount of the block read this time to obtain the current movement command block. Next, the moving distance of the current movement command block is calculated. For example, the movement amounts of the X, Y, and Z axes are x, y, and
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 and the threshold value are compared. 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. When the moving distance L is equal to or more 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 reading process of the next block. On the contrary, when the movement distance L is less than the threshold value, the current movement command block is saved in the minimum block area and the next block is read. The saved minimal block is added to the next loaded 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 the machining program as shown in FIG. 5, if the amount of movement per distribution cycle is 100 μm, the blocks N3 and N4 will be minimum blocks. Such an extremely small block is not created faithfully to the actual microfabrication shape, and may be output as a fraction in the CAM calculation process. Therefore, it may not be necessary to move faithfully to such a movement command of the minimum block. In such a case, the present invention adds the movement amount of the minimum block to the movement amount of the next block. If the movement amount of the next block thus obtained does not exceed the movement amount of one distribution cycle, the movement amount is added to the movement amount of the next block. Thus, when the moving amount of the block exceeds the moving amount of one distribution cycle, the block is interpolated as usual and the moving pulse is distributed to each axis. That is, when the program shown in FIG. 5 is given to the NC device, in the conventional method, the machining shape as shown in FIG. 6 results in the pulse distribution as shown in FIG. And applying the method of the present invention, FIG.
The machining program shown in is converted into the program shown in FIG. That is, the blocks N3 and N4 are absorbed by N5 and treated as a new block N3. As a result, the processed shape is given as shown in Fig. 3, and during pulse distribution,
According to the conventional method of distributing excess pulses, as shown in FIG. 4, the feed rate becomes almost constant, so that it is possible to prevent the speed from decreasing. As a method of determining the threshold value for determining whether the block is a minimum block, as described above, in addition to the method of using the movement amount of one distribution cycle corresponding to the feed speed at that time as the threshold value, an NC parameter or the like A method of fixing the threshold value may be considered.

【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 minimum block shorter than the movement amount per interpolation cycle corresponding to the feed speed at that time is read, the minimum block is incorporated into the long block and distributed, so that only the minimum block is distributed in one distribution cycle. The effect is that the feed rate will not decrease. This is particularly effective when the movement command data created by the CAM is directly given as the movement instruction of the NC device.

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

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

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

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

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

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

【図6】従来技術による指令形状FIG. 6 Commanded shape according to conventional technology

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

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】 NCプログラムの1ブロック分の移動指
令値を分配周期当りの移動距離で分割して発生する端数
を処理する機能を有する数値制御装置のブロックデータ
処理方法において、 NCプログラム中の1ブロックの移動量が、その時の送
り速度に対応した分配周期当たりの移動量未満となる極
小ブロックである場合に、前記端数の処理に先行して、
前記極小ブロック以降の2以上のブロックの加算値が前
記分配周期当りの移動量を超過するまで順次加算した移
動量を、加算される前記2以上のブロックに換えて、新
たな1ブロックとすることを特徴とする数値制御装置の
ブロックデータ処理方法。
1. A block data processing method for a numerical controller having a function of processing a fraction generated by dividing a movement command value for one block of an NC program by a movement distance per distribution cycle, wherein 1 in the NC program is used. If the movement amount of the block is a minimum block that is less than the movement amount per distribution cycle corresponding to the feed speed at that time, prior to the processing of the fraction,
A moving amount that is 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 to form a new block. And a block data processing method for a numerical control device.
【請求項2】 NCプログラムの1ブロック分の移動指
令値を分配周期当りの移動距離で分割して発生する端数
を処理する機能を有する数値制御装置のブロックデータ
処理方法において、 NCプログラム中の1ブロックの移動量が、予め設定さ
れた値未満の場合に、前記端数の処理に先行して、前記
極小ブロック以降の2以上のブロックの加算値が前記分
配周期当りの移動量を超過するまで順次加算した移動量
を、加算される前記2以上のブロックに換えて、新たな
1ブロックとすることを特徴とする数値制御装置のブロ
ックデータ処理方法。
2. A block data processing method for a numerical controller having a function of processing a fraction generated by dividing a movement command value for one block of an NC program by a movement distance per distribution cycle, wherein 1 in the NC program is included. When the movement amount of the block is less than a preset value, the processing is sequentially performed until the added value of two or more blocks after the minimum block exceeds the movement amount per distribution cycle prior to the processing of the fraction. A block data processing method for a numerical controller, wherein the added movement amount is replaced with the two or more blocks to be added to form a new block.
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 true JPH0728519A (en) 1995-01-31
JP3219115B2 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)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105388848A (en) * 2014-08-22 2016-03-09 发那科株式会社 Numerical controller that shortens cycle time of machining program

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105388848A (en) * 2014-08-22 2016-03-09 发那科株式会社 Numerical controller that shortens cycle time of machining program
JP2016045937A (en) * 2014-08-22 2016-04-04 ファナック株式会社 Numerical control apparatus that shortens cycle time of machining program
US10048677B2 (en) 2014-08-22 2018-08-14 Fanuc Corporation Numerical controller that shortens cycle time of machining program

Also Published As

Publication number Publication date
JP3219115B2 (en) 2001-10-15

Similar Documents

Publication Publication Date Title
CN106292549B (en) Interference between lathe and robot checks system
JP6301979B2 (en) Numerical control device for controlling axes of multiple systems by a single system program and its simulation device
JP2007094936A (en) Numerical value controller
JP2002132349A (en) Acceleration and deceleration control method
JP2935713B2 (en) Numerical control unit
US5004968A (en) Method for acceleration and deceleration control of servomotors
JP7376260B2 (en) numerical control device
US5723962A (en) Numerical control method and numerical control device
JPH02178711A (en) Numerical controller
CN111123844B (en) numerical control system
JP6105548B2 (en) Numerical control device with interference avoidance positioning function
JPH0728519A (en) Block data processing method for numerical controller
CN105652801A (en) A multiple-system numerical control device
JP2017049766A (en) Numerical controller including maximum velocity control function related to position
JP2016091142A (en) System enabling self-control of peripheral equipment of machine tool
JP6100816B2 (en) Numerical control device for speed control to suppress excessive position deviation
JP2880170B2 (en) Block overlap method
US9964940B2 (en) Numerical controller for performing axis control of two parallel axes
US5027045A (en) High-precision pulse interpolation method
JP2001154719A (en) Method for interpolating free curve
JP4560191B2 (en) Numerical controller
JPH03172903A (en) Feed speed control system for numerical controller
JPH01156803A (en) Feeding speed control method
JPH09319424A (en) Method and device for controlling feeding velocity for numerical control
JPH03144807A (en) Dry run controller for nc device

Legal Events

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

Free format text: PAYMENT UNTIL: 20080810

Year of fee payment: 7

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

Year of fee payment: 8

Free format text: PAYMENT UNTIL: 20090810

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

Free format text: PAYMENT UNTIL: 20090810

Year of fee payment: 8

FPAY Renewal fee payment (prs 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