JP3660038B2 - Numerical controller - Google Patents

Numerical controller Download PDF

Info

Publication number
JP3660038B2
JP3660038B2 JP31996095A JP31996095A JP3660038B2 JP 3660038 B2 JP3660038 B2 JP 3660038B2 JP 31996095 A JP31996095 A JP 31996095A JP 31996095 A JP31996095 A JP 31996095A JP 3660038 B2 JP3660038 B2 JP 3660038B2
Authority
JP
Japan
Prior art keywords
machining
range
command data
axis movement
data
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
JP31996095A
Other languages
Japanese (ja)
Other versions
JPH09160620A (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.)
Shibaura Machine Co Ltd
Original Assignee
Toshiba Machine Co Ltd
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 Toshiba Machine Co Ltd filed Critical Toshiba Machine Co Ltd
Priority to JP31996095A priority Critical patent/JP3660038B2/en
Publication of JPH09160620A publication Critical patent/JPH09160620A/en
Application granted granted Critical
Publication of JP3660038B2 publication Critical patent/JP3660038B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Numerical Control (AREA)

Description

【0001】
【発明の属する技術分野】
この発明は、数値制御装置に係り、特にNC工作機械のプログラム実行に関する。
【0002】
【従来の技術】
数値制御装置では、一旦加工が終了した後に部分的に再加工する必要のある場合や、加工範囲を限定して部分加工する場合がある。図9に、このような再加工又は部分加工を行なう際の説明図を示す。例えば、金型加工等において、加工対象物91の斜線箇所92を再加工又は部分加工したい場合を想定する。その際、例えば、斜線箇所92に部分的に肉盛り修正を行い、その箇所だけを加工するという方策をとる。
【0003】
現在、一般的に用いられているNC加工プログラムでは、このように加工範囲を限定して行なおうとした場合、全体のプログラムを実行させる必要がある。この方法では、加工プログラムをはじめから実行して全体を加工するので、必要な加工範囲以外も含み、非常に時間がかかる。
【0004】
そこで、従来の他の方法によると、加工範囲の限定方法としては、シーケンス番号サーチ機能やプログラムリスタート機能等により、加工プログラムの途中工程から実行する方法がある。また、プログラムのブロック中に読み飛ばしを指定するための判断記号(例えば、フラグ「1」)を付加しておき、プログラム実行時にこの該当ブロックを無視するようにしたオプショナルブロックスキップと呼ばれる方法等が採用された。
【0005】
【発明が解決しようとする課題】
しかしながら、上述のような従来技術では、プログラムの途中工程から実行するため又は判断記号を付加するため等に、加工プログラムそのものを編集又は修正することが不可欠である。そのため、データ作成に時間がかかるという問題があった。
【0006】
本発明は、上記問題を解決しようとするものであり、加工プログラム中の任意の領域を限定した部分加工・再加工が容易に実現することのできる数値制御装置を提供することを目的とする。
【0007】
【課題を解決するための手段】
本発明の数値制御装置によれば、
指令データを記憶した加工プログラム記憶手段と、
加工範囲を設定した加工範囲設定テーブル記憶手段と、
前記指令データを前記加工範囲と比較して、前記加工範囲内の場合には該指令データによる命令を実行し、前記加工範囲外の場合には該命令を不実行とする制御手段と、
前記制御手段により制御される駆動手段と、
前記指令データによる軸移動が、前記加工範囲外から前記加工範囲内への軸移動であるかを判断し、このような軸移動であると判断された場合、その軸移動線と前記加工範囲の境界との交点又はその近傍を求め、その交点又は近傍を開始点として設定する設定手段とを備える。
また本発明の数値制御装置によれば、
指令データを記憶した加工プログラム記憶手段と、
加工範囲を設定した加工範囲設定テーブル記憶手段と、
前記指令データを前記加工範囲と比較して、前記加工範囲内の場合には該指令データによる命令を実行し、前記加工範囲外の場合には該命令を不実行とする制御手段と、
前記制御手段により制御される駆動手段と、
部分加工又は再加工ための前記加工範囲又は加工状況を表示するための表示手段とを備える。
【0008】
前記制御手段は、前記加工プログラム記憶手段の前記指令データによるプログラム実行の際、前記指令データによる軸移動範囲と前記加工範囲とを比較し、前記軸移動範囲が、前記加工範囲内に全て含まれる場合はそのまま軸移動を実行し、一部だけ含まれる場合は加工範囲内の指令データに変換して軸移動を実行し、一方、加工範囲内に全く含まれない場合はその軸移動を不実行にすることができる。
【0009】
さらに、部分加工又は再加工のために、加工範囲を入力する入力手段、開始点を入力する入力手段、又は、開始点を自動的に設定する設定手段とをさらに備えると良い。
【0010】
本発明の数値制御装置においては、各軸毎の加工範囲設定テーブルを設け、各指令データによる加工プログラム実行の際、各軸移動範囲と加工範囲設定テーブルに記憶された加工範囲とを各指令データ毎に常時比較して実行する。そして、指令データによる軸移動範囲が、加工範囲に全て含まれる場合はそのまま軸移動を実行し、一部だけ含まれる場合、即ち加工範囲内外にまたがった場合は加工範囲内の指令データに変換して軸移動を実行し、一方、加工範囲外に含まれる場合はその軸移動を不実行にすることにより、プログラムを変更修正せずにプログラム解析処理を実行しながら、設定された加工範囲内の加工プログラムをリアルタイム的に実行することができ、加工プログラム中の任意の領域を限定した部分加工・再加工が容易に実現することができる。
【0011】
【発明の実施の形態】
以下本発明の実施の形態のいくつかを詳述する。
【0012】
図1は本発明による実施の一形態にかかる数値制御装置の構成図を示す。
【0013】
数値制御装置1は、NC加工プログラム記憶部2、NC加工プログラム解析実行部3、加工範囲設定テーブル記憶部4、出力制御部5、及び出力インターフェース部6を備えている。出力インターフェース部6には、駆動部7が接続されている。また、各種プログラム及びデータを入力する入力部8及び表示する表示部9が設けられている。
【0014】
NC加工プログラム記憶部2には、1ブロック毎に機械の動作を命令する情報である指令データが記憶されている。これらの指令データは、通常は、JIS B 6311で規定されたISOコードとEIAコードのいずれかが用いられる。例えば、NC工作装置の指令データとしては、G機能(制御機能、準備機能)、M機能(補助機能)、F機能(送り機能)、寸法語X、Y、Z(X軸、Y軸、Z軸の運動ディメンジョン)等がある。
【0015】
NC加工プログラム解析実行部3は、マイクロコンピュータ等で構成され、NC加工プログラム記憶部2に記憶された指令データを1ブロックずつ順次読み出し解析し、さらに、加工範囲設定テーブル記憶部4に記憶されているデータを参照して所定の動作を行う。
【0016】
加工範囲設定テーブル記憶部4には、加工範囲を限定するために必要なデータを記憶している。これら加工範囲データの設定は、入力装置8により適宜入力することができる。
【0017】
出力制御部5では、NC加工プログラム解析実行部3の指令により、所定の駆動部7の回転数、回転角度、回転速度、移動幅、移動速度等を指示する。
【0018】
出力インターフェース部6は、送り速度位置制御部5の指令を所定の駆動部7に分配する。
【0019】
駆動部7は、送りモータ等によるNC工作機の回転部又は移動部等から構成される。駆動部7は、通常、サーボ機構を有し、複数の駆動装置により構成されている。出力インターフェース部6を介して送られてきた指令信号により、所定の駆動部7が駆動され、NC工作機の位置決め、移動幅、移動速度又は回転速度等が制御される。
【0020】
入力部8は、キーボード、マウス等周知の入力装置であり、NC加工プログラム記憶部2、加工範囲設定テーブル記憶部4のプログラム又はデータの入力を行う。また、メインテナンス、障害対策等のための入力も行うことができる。
【0021】
表示部9は、CRT、液晶ディスプレー等の表示装置により構成され、各種のデータ、プログラム等を表示できる。また、2次元又は3次元のグラフィック機能を備えることにより、全体加工図又は部分加工図等により、必要に応じて加工範囲、加工状況等を表示することができる。
【0022】
次にこのような数値制御装置の動作概要を説明する。
NC加工プログラム解析実行部3は、NC加工プログラム記憶部2のデータに基づき、また、加工範囲設定テーブル記憶部4を参照して、指令信号を出力する。すなわち、各指令データによる加工プログラム実行の際、各軸移動範囲と加工範囲設定テーブルに記憶された加工範囲とを各指令データ毎に常時比較して実行する。そして、指令データによる軸移動範囲が、加工範囲に全て含まれる場合はそのまま軸移動を実行し、一部だけ含まれる場合、即ち加工範囲内外にまたがった場合は加工範囲内の指令データに変換して軸移動を実行し、一方、加工範囲外に含まれる場合はその軸移動を不実行にする。加工範囲内か加工範囲外かの判断及び実行する際の変換処理については、後に詳述する。この指令信号を受けて、送り速度位置制御部5は、出力インターフェース部6を介して、送りモータ7の回転数、回転角度及び回転速度等を指令することにより、NC工作機の位置決め及び移動速度等を制御する。
【0023】
このようにして、NC加工プログラム記憶部2のデータの内、加工範囲設定テーブル記憶部4で設定された任意の加工範囲内のみの部分加工・再加工を、容易に行うことができる。
【0024】
図2に、NC加工プログラム記憶部2に記憶されたNC加工プログラムの一例を示す。ここで、ブロック番号00では、準備機能として、初期状態がX座標2500及びY座標−2000に移動することを示す。ブロック番号01では、直線補間で所定の移動速度を設定している。ブロック番号03は、X座標2500及びY座標2500に移動することを示す。ブロック番号04は、X座標2000及びY座標変化なし、で移動することを示す。以後ブロック番号22まで、X座標、Y座標の所定値にそれぞれ移動する。最後にブロック番号23では、プログラムの終了を示す。
【0025】
また、図3に、加工範囲設定テーブル記憶部4に設定された加工範囲設定テーブルにおいて、長方形の加工範囲を設定する場合の一例を示す。ここでは、長方形の4隅の各座標値データを記憶することにより、加工範囲を設定したデータテーブル形式を示している。
【0026】
図4に、本願発明に係る加工動作の詳細なフローチャートを示す。
まず、NC加工プログラム中のブロック番号00、01の指令データを順次入力し、初期設定を行う(S10)。次に加工範囲設定テーブルの加工範囲データを入力する(S20)。次に、順次NC加工プログラムを1ブロックずつ入力する(S30)。ここで、ブロック番号23の指令データのようにプログラムエンド指令が入力されると(S40)、実行終了になる。次に、指令データによる軸移動範囲が、加工範囲設定テーブルで設定された加工範囲に全て含まれるか否かが解析される(S50)。例えば、この解析は、前回の座標値と今回入力された座標値の両方から移動範囲を求め、その移動範囲と加工範囲設定テーブル中の加工範囲データとを比較して、加工範囲内であるか否かを判断することにより解析できる。解析の結果、今回入力された指令データによる軸移動範囲が加工範囲に全て含まれる場合、そのまま実行する(S60)。一方、軸移動範囲が加工範囲に全て含まれるとは限らない場合は、一部のみ加工範囲内に含まれるか、即ち、加工範囲内と加工範囲外とにまたがるものなのか、又は、全く加工範囲内に含まれない場合、即ち、加工範囲外であるのかが解析される(S70)。ここで、軸移動範囲が一部だけ加工範囲内に含まれる場合は、その軸移動範囲が加工範囲内におさまるよう指令データを一時的に変換する。この具合的な変換の方法としては、例えば、NC加工プログラム解析実行部3等により、加工範囲設定テーブルで設定された加工範囲の端部まで又はその近辺までしか移動しないように、適宜計算して変換することができる。一方、移動範囲が、全く加工範囲内に含まれない場合は、指令データを無効とし不実行のままとして次のNC加工プログラムを入力する(S30)。
【0027】
このような、フローチャートにより、図2のプログラムは、次のように具体的に実行される。
(1)全加工範囲の工程実行
加工範囲設定テーブルにデータが設定されていない場合は、全加工範囲の工程が行われる。すなわち、ステップS50において、各々の指令データは加工範囲内であり、YESと判断される。よって、次のステップS60により全指令データが実行されることになる。このようにして、図2のNC加工プログラムの各ブロックの指令データにより、図5に示す位置B00〜B23のような軌跡で軸移動が実行される。ここで、位置Bnmは、図2のブロック番号nmによる指令データに相当する。また、ソフトストロークリミットとは、指令データにより加工する際の限界範囲である。
(2)加工範囲指定による工程実行
加工範囲設定テーブルにデータが設定されている場合は、部分加工工程が行われる。図6に、加工範囲を設定した場合のNC加工プログラムの指令データの自動変換の説明図を示し、また、図7に、軸移動の軌跡を表す説明図を示す。
【0028】
図2におけるブロック番号00、02〜09の指令データが入力されたときは、ステップS50及びS70により、加工範囲設定テーブルの加工範囲外と判断され、不実行となる。なお、ブロック番号01の指令データは、軸移動の命令を含まないので、適宜移動速度等が設定される。次に、ステップS30に戻り、次のブロック番号10の指令データから順次入力する。ブロック番号10の指令データが入力されると、ステップS50及びS70によると、位置B09から位置B10への軸移動範囲は、加工範囲内に一部含まれる、即ち、加工範囲内外にまたがるものであると判断される。従って、ステップS80により、ブロック番号10の指令データは、位置B10まで移動せずに加工範囲内の外周端まで移動するよう指示する指令データ(X500、Y2000)に自動変換されることにより、加工範囲内の位置B’10への軸移動となる。次に、ブロック番号11の指令データが入力されると、この変換された指令データによる位置B’10をもとにしたX座標0へのX方向移動の指令データであり、この軸移動範囲は加工範囲内に全て含まれるため、ステップS60により、そのまま実行される。以下、同様にブロック番号12の指令データは(X0、Y500)に変換され、位置B’12に移動し、同様に、位置B’13、B’14、〜B’15のように自動変換又はそのまま実行され、加工範囲内を軸移動する。ブロック番号17〜22の指令データは、軸移動範囲が加工範囲内に全く含まれない、即ち加工範囲外であるため、不実行となる。最後にブロック番号23のプログラムエンド指令により、NC加工プログラムが終了する。
【0029】
なお、NC加工プログラムの加工範囲指定によるプログラム実行を行う場合、NC加工プログラム実行前に、加工範囲指定メニュー又はキースイッチ等の入力部の操作により、加工プログラム実行前に位置決めをしておきたい各軸座標値を入力することもできる。また、この各軸座標値として、加工範囲設定テーブルの加工範囲データの一つを用いるようにしても良い。この場合、例えば、先に任意の位置に開始位置を設定した後に、加工範囲内のプログラム実行することができる。図8は、その一例を示したものであり、ここでは、部分加工又は再加工のための開始点として位置P1を用いるようにした。
【0030】
また、自動的に開始点を設定する方法としては、まず、指令データによる軸移動が、加工範囲外から加工範囲内への軸移動であるかを判断する。つぎに、このような軸移動であると判断された場合、その軸移動線と加工範囲の境界との交点又はその近傍を求め、その交点又は近傍を開始点として設定することができる。例えば、図8のように、位置P1又はその近傍を自動的に開始点として設定するためには、まず、位置B09から位置B10への軸移動が、加工範囲外から範囲内への軸移動であることを判断する。つぎに、この軸移動が加工範囲領域に入る交点を求めて、その交点又は近傍を開始点として設定することにより実施することができる。
【0031】
以上の実施の態様ではX、Y座標値のみで説明を行ったが、X,Y,Z座標をもつ三次元に適応することも可能である。軸移動指令のみならず、また、NC加工プログラム以外にも、あらゆるプログラム実行の部分的な実行に適用することが可能である。
【0032】
【発明の効果】
以上のように、本発明の数値制御装置によれば、各軸毎の加工範囲設定テーブルを設け、各指令データによる加工プログラム実行の際、各軸移動範囲と加工範囲設定テーブルに記憶された加工範囲とを各指令データ毎に常時比較して実行し、指令データによる軸移動範囲が、加工範囲に全て含まれる場合はそのまま軸移動を実行し、一部だけ含まれる場合、即ち加工範囲内外にまたがった場合は加工範囲内の指令データに変換して軸移動を実行し、一方、加工範囲外に含まれる場合はその軸移動を不実行にすることにより、プログラムを変更修正せずにプログラム解析処理を実行しながら、設定された加工範囲内の加工プログラムをリアルタイム的に実行することができ、加工プログラム中の任意の領域を限定した部分加工・再加工が容易に実現することが可能となる。
【図面の簡単な説明】
【図1】本発明にかかる数値制御装置の構成図。
【図2】NC加工プログラム記憶部2に記憶されたNC加工プログラムの説明図。
【図3】加工範囲設定テーブル記憶部4で設定された加工範囲設定テーブル。
【図4】加工範囲動作のフローチャート。
【図5】全加工範囲の工程実行の軸移動説明図。
【図6】加工範囲指定による加工プログラム変換の説明図。
【図7】加工範囲指定による工程実行の軸移動説明図。
【図8】開始点を設定したときの加工範囲指定による工程実行の軸移動説明図。
【図9】再加工・部分加工の概略図。
【符号の説明】
1 数値制御装置
2 NC加工プログラム記憶部
3 NC加工プログラム解析実行部
4 加工範囲設定テーブル記憶部
5 出力制御部
6 出力インターフェース部
7 駆動部
8 入力部
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a numerical control device, and more particularly to program execution of an NC machine tool.
[0002]
[Prior art]
In the numerical control device, there is a case where it is necessary to partially rework after machining is completed, or there is a case where the machining range is limited and partial machining is performed. FIG. 9 shows an explanatory diagram when performing such reworking or partial machining. For example, a case is assumed where it is desired to rework or partially process the hatched portion 92 of the workpiece 91 in die machining or the like. At this time, for example, a measure is taken to partially correct the build-up in the hatched portion 92 and process only that portion.
[0003]
At present, in the NC machining program that is generally used, if the machining range is limited in this way, it is necessary to execute the entire program. In this method, since the machining program is executed from the beginning and the whole is machined, it takes a very long time to include a range other than the necessary machining range.
[0004]
Therefore, according to another conventional method, there is a method of executing the machining program from an intermediate step of the machining program by a sequence number search function, a program restart function or the like as a method for limiting the machining range. In addition, there is a method called optional block skip in which a determination symbol (for example, flag “1”) for designating skipping is added in a program block, and the corresponding block is ignored during program execution. Adopted.
[0005]
[Problems to be solved by the invention]
However, in the prior art as described above, it is indispensable to edit or modify the machining program itself in order to execute it from an intermediate step of the program or to add a judgment symbol. Therefore, there is a problem that it takes time to create data.
[0006]
The present invention is intended to solve the above problem, and an object of the present invention is to provide a numerical control device capable of easily realizing partial machining / rework in which an arbitrary region in a machining program is limited.
[0007]
[Means for Solving the Problems]
According to the numerical control device of the present invention,
Machining program storage means for storing command data;
Processing range setting table storage means for setting the processing range;
Control means for comparing the command data with the machining range, executing a command based on the command data when the machining data is within the machining range, and not executing the command when the machining data is outside the machining range;
Drive means controlled by the control means;
It is determined whether the axis movement based on the command data is an axis movement from the outside of the machining range to the inside of the machining range. When it is determined that such an axis movement is such an axis movement line and the machining range, Setting means for obtaining an intersection with the boundary or the vicinity thereof and setting the intersection or the vicinity as a start point.
Moreover, according to the numerical control device of the present invention,
Machining program storage means for storing command data;
Processing range setting table storage means for setting the processing range;
Control means for comparing the command data with the machining range, executing a command based on the command data when the machining data is within the machining range, and not executing the command when the machining data is outside the machining range;
Drive means controlled by the control means;
Display means for displaying the processing range or processing status for partial processing or reprocessing.
[0008]
The control means compares the axis movement range based on the command data with the machining range when executing the program based on the command data in the machining program storage means, and the axis movement range is all included in the machining range. If this is the case, the axis movement is executed as it is. If only part of it is included, it is converted into command data within the machining range and the axis movement is executed. Can be.
[0009]
Furthermore, it is preferable to further include an input means for inputting a machining range, an input means for inputting a start point, or a setting means for automatically setting the start point for partial machining or rework.
[0010]
In the numerical control device of the present invention, a machining range setting table for each axis is provided, and when the machining program is executed with each command data, each axis movement range and the machining range stored in the machining range setting table are set to each command data. Always compare and execute every time. If the entire axis movement range based on the command data is included in the machining range, the axis movement is executed as it is. On the other hand, if it is outside the machining range, the axis movement is not executed, so that the program analysis process is executed without changing the program and the program is within the set machining range. The machining program can be executed in real time, and partial machining / re-machining in which an arbitrary area in the machining program is limited can be easily realized.
[0011]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, some of the embodiments of the present invention will be described in detail.
[0012]
FIG. 1 is a block diagram of a numerical control apparatus according to an embodiment of the present invention.
[0013]
The numerical control device 1 includes an NC machining program storage unit 2, an NC machining program analysis execution unit 3, a machining range setting table storage unit 4, an output control unit 5, and an output interface unit 6. A drive unit 7 is connected to the output interface unit 6. Also, an input unit 8 for inputting various programs and data and a display unit 9 for displaying are provided.
[0014]
The NC machining program storage unit 2 stores command data that is information for instructing the operation of the machine for each block. As these command data, either an ISO code or an EIA code defined in JIS B 6311 is usually used. For example, the NC machine tool command data includes G function (control function, preparation function), M function (auxiliary function), F function (feed function), dimension words X, Y, Z (X axis, Y axis, Z Axis motion dimensions).
[0015]
The NC machining program analysis execution unit 3 is composed of a microcomputer or the like, sequentially reads and analyzes the command data stored in the NC machining program storage unit 2 block by block, and is further stored in the machining range setting table storage unit 4. A predetermined operation is performed with reference to the stored data.
[0016]
The processing range setting table storage unit 4 stores data necessary for limiting the processing range. The setting of the processing range data can be appropriately input by the input device 8.
[0017]
The output control unit 5 instructs the rotation number, rotation angle, rotation speed, movement width, movement speed, and the like of a predetermined drive unit 7 according to a command from the NC machining program analysis execution unit 3.
[0018]
The output interface unit 6 distributes the command of the feed speed position control unit 5 to a predetermined drive unit 7.
[0019]
The drive unit 7 includes a rotating unit or a moving unit of an NC machine tool using a feed motor or the like. The drive unit 7 usually has a servo mechanism and is constituted by a plurality of drive devices. A predetermined drive unit 7 is driven by a command signal sent via the output interface unit 6, and the positioning, movement width, movement speed, rotation speed, etc. of the NC machine tool are controlled.
[0020]
The input unit 8 is a known input device such as a keyboard and a mouse, and inputs programs or data in the NC machining program storage unit 2 and the machining range setting table storage unit 4. It is also possible to make inputs for maintenance, countermeasures against troubles, and the like.
[0021]
The display unit 9 includes a display device such as a CRT or a liquid crystal display, and can display various data, programs, and the like. In addition, by providing a two-dimensional or three-dimensional graphic function, a processing range, a processing status, and the like can be displayed as required by an overall processing diagram or a partial processing diagram.
[0022]
Next, an outline of the operation of such a numerical control apparatus will be described.
The NC machining program analysis executing unit 3 outputs a command signal based on data in the NC machining program storage unit 2 and referring to the machining range setting table storage unit 4. That is, when the machining program is executed by each command data, each axis movement range and the machining range stored in the machining range setting table are always compared and executed for each command data. If the entire axis movement range based on the command data is included in the machining range, the axis movement is executed as it is. On the other hand, if it is outside the machining range, the axis movement is not executed. The determination whether it is within the machining range or outside the machining range and the conversion process when executing will be described in detail later. In response to this command signal, the feed speed position control unit 5 commands the rotation speed, rotation angle, rotation speed, and the like of the feed motor 7 via the output interface unit 6, thereby positioning and moving speed of the NC machine tool. Control etc.
[0023]
In this way, it is possible to easily perform partial machining / rework only within an arbitrary machining range set in the machining range setting table storage unit 4 in the data of the NC machining program storage unit 2.
[0024]
FIG. 2 shows an example of the NC machining program stored in the NC machining program storage unit 2. Here, the block number 00 indicates that the initial state moves to the X coordinate 2500 and the Y coordinate −2000 as a preparation function. In block number 01, a predetermined moving speed is set by linear interpolation. Block number 03 indicates movement to X coordinate 2500 and Y coordinate 2500. A block number 04 indicates that the movement is performed with no change in the X coordinate 2000 and the Y coordinate. Thereafter, up to the block number 22, the X coordinate and the Y coordinate are respectively moved to predetermined values. Finally, block number 23 indicates the end of the program.
[0025]
FIG. 3 shows an example in which a rectangular processing range is set in the processing range setting table set in the processing range setting table storage unit 4. Here, a data table format in which the processing range is set by storing the coordinate value data of the four corners of the rectangle is shown.
[0026]
FIG. 4 shows a detailed flowchart of the machining operation according to the present invention.
First, command data of block numbers 00 and 01 in the NC machining program are sequentially input to perform initial setting (S10). Next, the machining range data of the machining range setting table is input (S20). Next, the NC machining program is sequentially input block by block (S30). Here, when the program end command is input as in the command data of block number 23 (S40), the execution ends. Next, it is analyzed whether or not the axis movement range based on the command data is included in the machining range set in the machining range setting table (S50). For example, in this analysis, the movement range is obtained from both the previous coordinate value and the coordinate value input this time, and the movement range is compared with the machining range data in the machining range setting table to determine whether it is within the machining range. It can be analyzed by judging whether or not. As a result of the analysis, if the entire axis movement range based on the command data input this time is included in the machining range, it is executed as it is (S60). On the other hand, if the axis movement range is not always included in the machining range, only a part of the axis movement range is included in the machining range, i.e., it extends over the machining range and outside the machining range, or no machining is performed. If it is not included in the range, that is, whether it is out of the processing range is analyzed (S70). Here, when only a part of the axis movement range is included in the machining range, the command data is temporarily converted so that the axis movement range falls within the machining range. As this specific conversion method, for example, the NC machining program analysis execution unit 3 or the like appropriately calculates so as to move only to or near the end of the machining range set in the machining range setting table. Can be converted. On the other hand, if the moving range is not included in the machining range at all, the next NC machining program is input with the command data invalidated and left unexecuted (S30).
[0027]
According to such a flowchart, the program in FIG. 2 is specifically executed as follows.
(1) If the data is not set in the process execution machining range setting table for the entire machining range, the process for the entire machining range is performed. That is, in step S50, each command data is within the machining range, and it is determined YES. Accordingly, all command data is executed in the next step S60. In this way, the axis movement is executed along a locus such as positions B00 to B23 shown in FIG. 5 according to the command data of each block of the NC machining program of FIG. Here, the position Bnm corresponds to the command data by the block number nm in FIG. Further, the soft stroke limit is a limit range when machining by command data.
(2) When data is set in the process execution machining range setting table by machining range designation, a partial machining process is performed. FIG. 6 shows an explanatory diagram of automatic conversion of NC machining program command data when the machining range is set, and FIG. 7 shows an explanatory diagram showing the axis movement locus.
[0028]
When command data of block numbers 00 and 02 to 09 in FIG. 2 are input, it is determined that the processing range is outside the processing range of the processing range setting table in steps S50 and S70, and the processing is not executed. Since the command data of block number 01 does not include an axis movement command, a moving speed or the like is set as appropriate. Next, returning to step S30, the command data of the next block number 10 are sequentially input. When the command data of block number 10 is input, according to steps S50 and S70, the axial movement range from the position B09 to the position B10 is partially included in the machining range, that is, extends within and outside the machining range. It is judged. Accordingly, in step S80, the command data of block number 10 is automatically converted into command data (X500, Y2000) instructing to move to the outer peripheral end within the machining range without moving to the position B10, so that the machining range is obtained. The axis is moved to the position B′10. Next, when command data of block number 11 is input, it is command data for movement in the X direction to the X coordinate 0 based on the position B′10 based on the converted command data. Since they are all included in the processing range, they are executed as they are in step S60. Similarly, the command data of the block number 12 is converted into (X0, Y500) and moved to the position B′12. Similarly, the command data is automatically converted into the positions B′13, B′14, to B′15. It is executed as it is, and the axis is moved within the machining range. The command data of block numbers 17 to 22 are not executed because the axis movement range is not included in the machining range at all, that is, outside the machining range. Finally, the NC machining program is terminated by a program end command of block number 23.
[0029]
In addition, when executing a program by specifying the machining range of the NC machining program, each position to be positioned before the machining program is executed by operating the machining range designation menu or an input unit such as a key switch before the NC machining program is executed. An axis coordinate value can also be input. Further, as each axis coordinate value, one of the machining range data in the machining range setting table may be used. In this case, for example, after the start position is first set at an arbitrary position, the program within the machining range can be executed. FIG. 8 shows an example of this. Here, the position P1 is used as a starting point for partial machining or reworking.
[0030]
As a method for automatically setting the start point, it is first determined whether or not the axis movement based on the command data is an axis movement from the outside of the machining range to the inside of the machining range. Next, when it is determined that it is such an axial movement, an intersection or its vicinity between the axis movement line and the boundary of the machining range can be obtained, and the intersection or the vicinity can be set as a starting point. For example, as shown in FIG. 8, in order to automatically set the position P1 or the vicinity thereof as a starting point, first, the axis movement from the position B09 to the position B10 is an axis movement from outside the processing range to within the range. Judge that there is. Next, this axis movement can be performed by obtaining an intersection point that enters the machining range region and setting the intersection point or the vicinity thereof as a start point.
[0031]
In the above embodiment, the description has been made only with the X and Y coordinate values, but it is also possible to apply to three dimensions having X, Y and Z coordinates. The present invention can be applied not only to axis movement commands but also to partial execution of any program execution other than NC machining programs.
[0032]
【The invention's effect】
As described above, according to the numerical control device of the present invention, the machining range setting table for each axis is provided, and when the machining program is executed with each command data, the machining range stored in each axis movement range and the machining range setting table is stored. The range is always compared for each command data, and if the axis movement range based on the command data is completely included in the machining range, the axis movement is executed as it is, and if only a part is included, that is, inside or outside the machining range. If it crosses, it is converted into command data within the machining range and the axis is moved. On the other hand, if it is outside the machining range, the axis movement is not executed. While executing processing, machining programs within the set machining range can be executed in real time, making it easy to perform partial machining and re-machining in a limited area within the machining program. It is possible to present.
[Brief description of the drawings]
FIG. 1 is a configuration diagram of a numerical controller according to the present invention.
FIG. 2 is an explanatory diagram of an NC machining program stored in an NC machining program storage unit 2;
FIG. 3 is a processing range setting table set in a processing range setting table storage unit 4;
FIG. 4 is a flowchart of processing range operation.
FIG. 5 is an explanatory diagram of axis movement for process execution in the entire machining range.
FIG. 6 is an explanatory diagram of machining program conversion by machining range designation.
FIG. 7 is an explanatory diagram of axis movement for process execution by specifying a machining range.
FIG. 8 is an explanatory diagram of axis movement for process execution by specifying a machining range when a start point is set.
FIG. 9 is a schematic view of reworking / partial machining.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 1 Numerical control apparatus 2 NC process program memory | storage part 3 NC process program analysis execution part 4 Process range setting table memory | storage part 5 Output control part 6 Output interface part 7 Drive part 8 Input part

Claims (4)

指令データを記憶した加工プログラム記憶手段と、
加工範囲を設定した加工範囲設定テーブル記憶手段と、
前記指令データを前記加工範囲と比較して、前記加工範囲内の場合には該指令データによる命令を実行し、前記加工範囲外の場合には該命令を不実行とする制御手段と、
前記制御手段により制御される駆動手段と、
前記指令データによる軸移動が、前記加工範囲外から前記加工範囲内への軸移動であるかを判断し、このような軸移動であると判断された場合、その軸移動線と前記加工範囲の境界との交点又はその近傍を求め、その交点又は近傍を開始点として設定する設定手段とを備えた数値制御装置。
Machining program storage means for storing command data;
Processing range setting table storage means for setting the processing range;
Control means for comparing the command data with the machining range, executing a command according to the command data when the machining data is within the machining range, and not executing the command when the machining data is outside the machining range;
Drive means controlled by the control means;
It is determined whether the axis movement based on the command data is an axis movement from the outside of the machining range to the inside of the machining range. A numerical control apparatus comprising: a setting unit that obtains an intersection with the boundary or the vicinity thereof and sets the intersection or the vicinity as a start point.
指令データを記憶した加工プログラム記憶手段と、
加工範囲を設定した加工範囲設定テーブル記憶手段と、
前記指令データを前記加工範囲と比較して、前記加工範囲内の場合には該指令データによる命令を実行し、前記加工範囲外の場合には該命令を不実行とする制御手段と、
前記制御手段により制御される駆動手段と、
部分加工又は再加工ための前記加工範囲又は加工状況を表示するための表示手段とを備えた数値制御装置。
Machining program storage means for storing command data;
Processing range setting table storage means for setting the processing range;
Control means for comparing the command data with the machining range, executing a command according to the command data when the machining data is within the machining range, and not executing the command when the machining data is outside the machining range;
Drive means controlled by the control means;
A numerical control device comprising display means for displaying the processing range or processing status for partial processing or reprocessing.
前記制御手段は、前記加工プログラム記憶手段の前記指令データによるプログラム実行の際、前記指令データによる軸移動範囲と前記加工範囲とを比較し、前記軸移動範囲が、前記加工範囲内に全て含まれる場合はそのまま軸移動を実行し、一部だけ含まれる場合は加工範囲内の指令データに変換して軸移動を実行し、一方、加工範囲内に全く含まれない場合はその軸移動を不実行にすることを特徴とする請求項1または2に記載の数値制御装置。  The control means compares the axis movement range based on the command data with the machining range when executing the program based on the command data in the machining program storage means, and the axis movement range is all included in the machining range. If this is the case, the axis movement is executed as it is. If only part of it is included, it is converted into command data within the machining range and the axis movement is executed. The numerical control apparatus according to claim 1, wherein: 前記制御手段は、前回の前記指令データの座標値と今回の前記指令データの座標値とから前記軸移動範囲を求めることを特徴とする請求項1又は2に記載の数値制御装置。  The numerical control device according to claim 1, wherein the control unit obtains the axis movement range from a coordinate value of the previous command data and a coordinate value of the current command data.
JP31996095A 1995-12-08 1995-12-08 Numerical controller Expired - Fee Related JP3660038B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP31996095A JP3660038B2 (en) 1995-12-08 1995-12-08 Numerical controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP31996095A JP3660038B2 (en) 1995-12-08 1995-12-08 Numerical controller

Publications (2)

Publication Number Publication Date
JPH09160620A JPH09160620A (en) 1997-06-20
JP3660038B2 true JP3660038B2 (en) 2005-06-15

Family

ID=18116177

Family Applications (1)

Application Number Title Priority Date Filing Date
JP31996095A Expired - Fee Related JP3660038B2 (en) 1995-12-08 1995-12-08 Numerical controller

Country Status (1)

Country Link
JP (1) JP3660038B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014013539A (en) * 2012-07-05 2014-01-23 Fanuc Ltd Numerical control device including program resuming function

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4654937B2 (en) * 2006-02-24 2011-03-23 ブラザー工業株式会社 Numerical control apparatus, numerical control method, and computer program
JP2013114425A (en) * 2011-11-28 2013-06-10 Jtekt Corp Numerical controller

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014013539A (en) * 2012-07-05 2014-01-23 Fanuc Ltd Numerical control device including program resuming function

Also Published As

Publication number Publication date
JPH09160620A (en) 1997-06-20

Similar Documents

Publication Publication Date Title
US5465215A (en) Numerical control method and apparatus
JP2002172543A (en) Control parameter setting system and control parameter setting method for machining device
JP3660038B2 (en) Numerical controller
JP4059614B2 (en) Control device for 3D laser processing machine
JP2875135B2 (en) Program device for programmable controller
JPH04252307A (en) Interactive numerical controller
JP2869105B2 (en) Workpiece processing data editing method
JP2813079B2 (en) Numerical control unit
JPH0392907A (en) Numerical controller
JPH0566819A (en) Interactive automatic programming method
JP2642451B2 (en) Numerical control unit
JP3471644B2 (en) Control device for area machining operation
JP2537418B2 (en) Control program generator
JP2005085095A (en) Numerical controller, parameter setting method for numerical controller, and numerical control program
JP2573209Y2 (en) Tool path display device for NC equipment
JPH06202906A (en) Nc program editing device
JPH06114678A (en) Tool locus display device of nc device
JPH02256446A (en) Control method for machine tool with ic card
JP2005115669A (en) Numerical control device
JPH0883113A (en) Controller for nc machine tool
JPH05204431A (en) Automatic program preparing device provided with automatic changing function for cutting shaft
JP2538391Y2 (en) Tool path display device for NC equipment
JPH02253309A (en) Working data control method by ic card
JPH11338533A (en) Robot teaching device
JPH05237741A (en) Nc data originating method

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040302

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040428

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040604

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040803

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20050215

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050316

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20080325

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

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

Free format text: PAYMENT UNTIL: 20080325

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20080325

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20090325

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100325

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees