JPH0728519A - 数値制御装置のブロックデータ処理方法 - Google Patents
数値制御装置のブロックデータ処理方法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 amount
- movement
- distribution cycle
- 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.)
- Granted
Links
Landscapes
- Numerical Control (AREA)
Abstract
(57)【要約】 (修正有)
【目的】 CADで処理されて出力されるNCデータに
は、1ブロックの移動量が送り速度に対応した分配周期
当りの移動量に満たない移動命令(極小ブロック)を含
むことがある。このような極小ブロックがあっても速度
低下を生じないパルス分配方法を提供する。 【構成】 NCプログラムの1ブロック分の移動指令値
を分配周期当りの移動距離で分割して発生する端数を処
理する機能を有する数値制御装置のブロックデータ処理
方法において、NCプログラム中の1ブロックの移動量
が、その時の送り速度に対応した分配周期当たりの移動
量未満となる極小ブロックである場合に、前記端数の処
理に先行して、前記極小ブロック以降の2以上のブロッ
クの加算値が前記分配周期当りの移動量を超過するまで
順次加算した移動量を、加算される前記2以上のブロッ
クに換えて、新たな1ブロックとする。
は、1ブロックの移動量が送り速度に対応した分配周期
当りの移動量に満たない移動命令(極小ブロック)を含
むことがある。このような極小ブロックがあっても速度
低下を生じないパルス分配方法を提供する。 【構成】 NCプログラムの1ブロック分の移動指令値
を分配周期当りの移動距離で分割して発生する端数を処
理する機能を有する数値制御装置のブロックデータ処理
方法において、NCプログラム中の1ブロックの移動量
が、その時の送り速度に対応した分配周期当たりの移動
量未満となる極小ブロックである場合に、前記端数の処
理に先行して、前記極小ブロック以降の2以上のブロッ
クの加算値が前記分配周期当りの移動量を超過するまで
順次加算した移動量を、加算される前記2以上のブロッ
クに換えて、新たな1ブロックとする。
Description
【0001】
【産業上の利用分野】本発明は、工作機械を制御する数
値制御装置のプログラムブロックの移動量を各軸へ分配
する方法に関する。
値制御装置のプログラムブロックの移動量を各軸へ分配
する方法に関する。
【0002】
【従来の技術】従来、工作機械を制御する数値制御装置
では、各プログラムブロックを分配周期ごとに各軸へ移
動パルスとして分配している。ここで、プログラムブロ
ックから、その時の送り速度に対応した各軸の移動パル
スを分配周期ごとに分配してゆくと、最後にその時の送
り速度に満たないパルスが余剰パルスとして残ってしま
うことがある。この余剰パルスをそのまま各軸に分配す
ると、各軸の移動速度は余剰パルスを出力した1分配周
期の間だけ低下することとなり、機械装置にショックが
生じる原因となる。これを解決する方法として、1ブロ
ックに生じた余剰パルスを補間前に求めておき、そのブ
ロック内の先行する分配パルスに分散させて分配する方
法が特開平4−305707に紹介されている。本方法
を用いると、余剰パルスが生じた場合にも、各分配周期
における各軸の移動速度が1分配周期の間だけ低下する
ことがなくなる。また、余剰パルスを補間前に求めてお
くので、パルス分配を高速に行うことができる。
では、各プログラムブロックを分配周期ごとに各軸へ移
動パルスとして分配している。ここで、プログラムブロ
ックから、その時の送り速度に対応した各軸の移動パル
スを分配周期ごとに分配してゆくと、最後にその時の送
り速度に満たないパルスが余剰パルスとして残ってしま
うことがある。この余剰パルスをそのまま各軸に分配す
ると、各軸の移動速度は余剰パルスを出力した1分配周
期の間だけ低下することとなり、機械装置にショックが
生じる原因となる。これを解決する方法として、1ブロ
ックに生じた余剰パルスを補間前に求めておき、そのブ
ロック内の先行する分配パルスに分散させて分配する方
法が特開平4−305707に紹介されている。本方法
を用いると、余剰パルスが生じた場合にも、各分配周期
における各軸の移動速度が1分配周期の間だけ低下する
ことがなくなる。また、余剰パルスを補間前に求めてお
くので、パルス分配を高速に行うことができる。
【0003】
【発明が解決しようとする課題】ところが、実際の加工
プログラム中には、ブロック当りの移動量がブロックの
送り速度に対応した分配周期当りの移動量より小さいブ
ロック(以下極小ブロックという)となる場合がある。
例えば、分配周期を1msec、送り速度を6m/mi
nとした場合に、1分配周期の移動量は100μmとな
るが、加工プログラムにはブロック当りの移動量が数μ
mから数10μmとなる極小ブロックが含まれているこ
とがある。CAMを使用してNCデータを作成する場
合、CAMの処理過程でこのような極小ブロックがNC
データに含まれることがある。従って、この場合に図5
に示された加工プログラム中のN3、N4のような極小
ブロックの移動量は1分配周期の移動量に満たないた
め、ブロックN3、N4はそのまま前述の余剰パルスと
なってしまう。従来技術では、余剰パルスの生じたブロ
ック内で余剰パルスを分散して分配し、吸収していた
が、前述の極小ブロックの場合には、そのブロック自体
が余剰パルスであるため、ブロック内で余剰パルスを吸
収することができない。従って、従来技術では、図7に
示されるように極小ブロックで送り速度が低下してしま
うという問題があった。そこで、本発明は、このような
極小ブロックがあっても速度低下を生じないパルス分配
方法を提供することを目的とする。
プログラム中には、ブロック当りの移動量がブロックの
送り速度に対応した分配周期当りの移動量より小さいブ
ロック(以下極小ブロックという)となる場合がある。
例えば、分配周期を1msec、送り速度を6m/mi
nとした場合に、1分配周期の移動量は100μmとな
るが、加工プログラムにはブロック当りの移動量が数μ
mから数10μmとなる極小ブロックが含まれているこ
とがある。CAMを使用してNCデータを作成する場
合、CAMの処理過程でこのような極小ブロックがNC
データに含まれることがある。従って、この場合に図5
に示された加工プログラム中のN3、N4のような極小
ブロックの移動量は1分配周期の移動量に満たないた
め、ブロックN3、N4はそのまま前述の余剰パルスと
なってしまう。従来技術では、余剰パルスの生じたブロ
ック内で余剰パルスを分散して分配し、吸収していた
が、前述の極小ブロックの場合には、そのブロック自体
が余剰パルスであるため、ブロック内で余剰パルスを吸
収することができない。従って、従来技術では、図7に
示されるように極小ブロックで送り速度が低下してしま
うという問題があった。そこで、本発明は、このような
極小ブロックがあっても速度低下を生じないパルス分配
方法を提供することを目的とする。
【0004】
【課題を解決するための手段】上記問題を解決するた
め、第1の発明は、NCプログラムの1ブロック分の移
動指令値を分配周期当りの移動距離で分割して発生する
端数を処理する機能を有する数値制御装置のブロックデ
ータ処理方法において、NCプログラム中の1ブロック
の移動量が、その時の送り速度に対応した分配周期当た
りの移動量未満となる極小ブロックである場合に、前記
端数の処理に先行して、前記極小ブロック以降の2以上
のブロックの加算値が前記分配周期当りの移動量を超過
するまで順次加算した移動量を、加算される前記2以上
のブロックに換えて、新たな1ブロックとするものであ
る。また、第2の発明は、NCプログラムの1ブロック
分の移動指令値を分配周期当りの移動距離で分割して発
生する端数を処理する機能を有する数値制御装置のブロ
ックデータ処理方法において、NCプログラム中の1ブ
ロックの移動量が、予め設定された値未満の場合に、前
記端数の処理に先行して、前記極小ブロック以降の2以
上のブロックの加算値が前記分配周期当りの移動量を超
過するまで順次加算した移動量を、加算される前記2以
上のブロックに換えて、新たな1ブロックとするもので
ある。
め、第1の発明は、NCプログラムの1ブロック分の移
動指令値を分配周期当りの移動距離で分割して発生する
端数を処理する機能を有する数値制御装置のブロックデ
ータ処理方法において、NCプログラム中の1ブロック
の移動量が、その時の送り速度に対応した分配周期当た
りの移動量未満となる極小ブロックである場合に、前記
端数の処理に先行して、前記極小ブロック以降の2以上
のブロックの加算値が前記分配周期当りの移動量を超過
するまで順次加算した移動量を、加算される前記2以上
のブロックに換えて、新たな1ブロックとするものであ
る。また、第2の発明は、NCプログラムの1ブロック
分の移動指令値を分配周期当りの移動距離で分割して発
生する端数を処理する機能を有する数値制御装置のブロ
ックデータ処理方法において、NCプログラム中の1ブ
ロックの移動量が、予め設定された値未満の場合に、前
記端数の処理に先行して、前記極小ブロック以降の2以
上のブロックの加算値が前記分配周期当りの移動量を超
過するまで順次加算した移動量を、加算される前記2以
上のブロックに換えて、新たな1ブロックとするもので
ある。
【0005】
【作用】上記方法によって、プログラム中の1ブロック
の移動量が、その時の送り速度に対応した1分配周期の
移動量と比較して小さい場合にも、そのブロックの移動
量が1分配周期の移動量を越えるまで、順次、次のブロ
ックの移動量に足し合わせてゆくので、1分配周期の移
動量以下のブロックが除去され、前述の移動量が小さい
ブロックにて送り速度を低下せることなく、補間を行
い、各軸に移動パルスを分配することが可能となる。
の移動量が、その時の送り速度に対応した1分配周期の
移動量と比較して小さい場合にも、そのブロックの移動
量が1分配周期の移動量を越えるまで、順次、次のブロ
ックの移動量に足し合わせてゆくので、1分配周期の移
動量以下のブロックが除去され、前述の移動量が小さい
ブロックにて送り速度を低下せることなく、補間を行
い、各軸に移動パルスを分配することが可能となる。
【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パラメータなどでしきい値を固定し
て与える方法が考えられる。
る。図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パラメータなどでしきい値を固定し
て与える方法が考えられる。
【0007】
【発明の効果】以上述べたように、本発明によれば、移
動指令ブロックの移動距離が、しきい値よりも大きくな
るまで、次の移動指令ブロックを読み込み、足し合わせ
てゆくようにしたので、そのときの送り速度に対応した
補間周期当たりの移動量よりも短い極小ブロックを読み
込んだ場合でも、極小ブロックは長ブロックに組み込ま
れ分配されるため、1分配周期に極小ブロックのみが分
配されて、送り速度が低下することがなくなるという効
果がある。このことは、CAMで作成された移動指令デ
ータが直接NC装置の移動指令として与えられる場合に
特に有効である。
動指令ブロックの移動距離が、しきい値よりも大きくな
るまで、次の移動指令ブロックを読み込み、足し合わせ
てゆくようにしたので、そのときの送り速度に対応した
補間周期当たりの移動量よりも短い極小ブロックを読み
込んだ場合でも、極小ブロックは長ブロックに組み込ま
れ分配されるため、1分配周期に極小ブロックのみが分
配されて、送り速度が低下することがなくなるという効
果がある。このことは、CAMで作成された移動指令デ
ータが直接NC装置の移動指令として与えられる場合に
特に有効である。
【図1】本発明の実施例を示すフロー図
【図2】本発明による移動指令ブロックの例
【図3】本発明による指令形状
【図4】本発明による指令速度
【図5】従来技術による移動指令ブロックの例
【図6】従来技術による指令形状
【図7】従来技術による指令速度
Claims (2)
- 【請求項1】 NCプログラムの1ブロック分の移動指
令値を分配周期当りの移動距離で分割して発生する端数
を処理する機能を有する数値制御装置のブロックデータ
処理方法において、 NCプログラム中の1ブロックの移動量が、その時の送
り速度に対応した分配周期当たりの移動量未満となる極
小ブロックである場合に、前記端数の処理に先行して、
前記極小ブロック以降の2以上のブロックの加算値が前
記分配周期当りの移動量を超過するまで順次加算した移
動量を、加算される前記2以上のブロックに換えて、新
たな1ブロックとすることを特徴とする数値制御装置の
ブロックデータ処理方法。 - 【請求項2】 NCプログラムの1ブロック分の移動指
令値を分配周期当りの移動距離で分割して発生する端数
を処理する機能を有する数値制御装置のブロックデータ
処理方法において、 NCプログラム中の1ブロックの移動量が、予め設定さ
れた値未満の場合に、前記端数の処理に先行して、前記
極小ブロック以降の2以上のブロックの加算値が前記分
配周期当りの移動量を超過するまで順次加算した移動量
を、加算される前記2以上のブロックに換えて、新たな
1ブロックとすることを特徴とする数値制御装置のブロ
ックデータ処理方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP19409693A JP3219115B2 (ja) | 1993-07-09 | 1993-07-09 | 数値制御装置のブロックデータ処理方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP19409693A JP3219115B2 (ja) | 1993-07-09 | 1993-07-09 | 数値制御装置のブロックデータ処理方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH0728519A true JPH0728519A (ja) | 1995-01-31 |
| JP3219115B2 JP3219115B2 (ja) | 2001-10-15 |
Family
ID=16318885
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP19409693A Expired - Fee Related JP3219115B2 (ja) | 1993-07-09 | 1993-07-09 | 数値制御装置のブロックデータ処理方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3219115B2 (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN105388848A (zh) * | 2014-08-22 | 2016-03-09 | 发那科株式会社 | 缩短加工程序的周期时间的数值控制装置 |
-
1993
- 1993-07-09 JP JP19409693A patent/JP3219115B2/ja not_active Expired - Fee Related
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN105388848A (zh) * | 2014-08-22 | 2016-03-09 | 发那科株式会社 | 缩短加工程序的周期时间的数值控制装置 |
| JP2016045937A (ja) * | 2014-08-22 | 2016-04-04 | ファナック株式会社 | 加工プログラムのサイクルタイムを短縮する数値制御装置 |
| 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 (ja) | 2001-10-15 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN106292549B (zh) | 机床和机器人之间的干扰检查系统 | |
| US6920363B2 (en) | Acceleration and deceleration control method | |
| JP6301979B2 (ja) | 単系統用のプログラムで複数系統の軸を制御する数値制御装置およびそのシミュレーション装置 | |
| JP2935713B2 (ja) | 数値制御装置 | |
| JP6100816B2 (ja) | 位置偏差過大を抑制する速度制御を行う数値制御装置 | |
| JP2007094936A (ja) | 数値制御装置 | |
| JP6105548B2 (ja) | 干渉回避位置決め機能を備えた数値制御装置 | |
| EP0930554A1 (en) | Method of conversion of robot teaching program | |
| JP2021002092A (ja) | 数値制御装置 | |
| CN111123844B (zh) | 数值控制系统 | |
| JP3513100B2 (ja) | 制御装置 | |
| JP3219115B2 (ja) | 数値制御装置のブロックデータ処理方法 | |
| JP2880170B2 (ja) | ブロックオーバラップ方法 | |
| JP2724647B2 (ja) | 数値制御における送り速度制御方法 | |
| US9964940B2 (en) | Numerical controller for performing axis control of two parallel axes | |
| JP2001154719A (ja) | 自由曲線補間方法 | |
| JP4560191B2 (ja) | 数値制御装置 | |
| JP3188396B2 (ja) | 数値制御における送り速度制御方法および装置 | |
| JP2000267718A (ja) | 数値制御装置のブロック間速度制御方法 | |
| JP3513840B2 (ja) | 数値制御装置の送り速度制御方法 | |
| JPH03172903A (ja) | 数値制御装置の送り速度制御方式 | |
| JPH01156803A (ja) | 送り速度制御方法 | |
| JP2023136047A (ja) | 制御ユニット、レーザー加工装置、制御ユニットの制御方法、及びプログラム | |
| JPH0317707A (ja) | 数値制御装置におけるプログラム指令値の補正方式 | |
| JPH1039913A (ja) | Ncデ−タ作成方法及びnc装置 |
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 |