JP2000242319A - 数値制御装置 - Google Patents
数値制御装置Info
- Publication number
- JP2000242319A JP2000242319A JP11039946A JP3994699A JP2000242319A JP 2000242319 A JP2000242319 A JP 2000242319A JP 11039946 A JP11039946 A JP 11039946A JP 3994699 A JP3994699 A JP 3994699A JP 2000242319 A JP2000242319 A JP 2000242319A
- Authority
- JP
- Japan
- Prior art keywords
- macro
- block
- data
- statement
- analysis
- 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.)
- Withdrawn
Links
- 238000004458 analytical method Methods 0.000 claims abstract description 70
- 238000013500 data storage Methods 0.000 claims abstract description 14
- 238000010586 diagram Methods 0.000 description 8
- 238000000034 method Methods 0.000 description 8
- 239000000284 extract Substances 0.000 description 4
- 238000012950 reanalysis Methods 0.000 description 3
- 238000000605 extraction Methods 0.000 description 2
- 238000003754 machining Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000002250 progressing effect Effects 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
Landscapes
- Numerical Control (AREA)
Abstract
(57)【要約】 (修正有)
【課題】 何等かの原因で解析済みのブロックを再解析
しても不都合を生じないようにし、加工プログラムの正
確な解析処理を行えるようにする。 【解決手段】 数値制御装置の加工プログラムPから1
ブロックづつ逐次取り出して、NC文であるかマクロ文
であるか判定し(手段10)、マクロ文の場合は、解析
用マクロ変数(格納手段21)によりそのマクロ文を解
析・実行し(同手段13)、一方、ブロックがNC文で
ある場合は、そのNC文を解析して実行可能な実行用デ
ータを作成し、当実行用データとモーダルデータを解析
済みバッファ20に複写するNC文解析手段12と、上
記バッファに取り込んだ実行用データの実行手段13と
を持ち、更に、当実行手段で実行されたブロックについ
て当手段から転送されるマクロ変数を保存し、再解析時
には、この保存されたマクロ変数が、マクロ変数データ
格納手段21に複写されるマクロ変数データ保存手段2
2を備える。
しても不都合を生じないようにし、加工プログラムの正
確な解析処理を行えるようにする。 【解決手段】 数値制御装置の加工プログラムPから1
ブロックづつ逐次取り出して、NC文であるかマクロ文
であるか判定し(手段10)、マクロ文の場合は、解析
用マクロ変数(格納手段21)によりそのマクロ文を解
析・実行し(同手段13)、一方、ブロックがNC文で
ある場合は、そのNC文を解析して実行可能な実行用デ
ータを作成し、当実行用データとモーダルデータを解析
済みバッファ20に複写するNC文解析手段12と、上
記バッファに取り込んだ実行用データの実行手段13と
を持ち、更に、当実行手段で実行されたブロックについ
て当手段から転送されるマクロ変数を保存し、再解析時
には、この保存されたマクロ変数が、マクロ変数データ
格納手段21に複写されるマクロ変数データ保存手段2
2を備える。
Description
【0001】
【発明の属する技術分野】本発明はNC工作機械の数値
制御装置に係り、特に、マクロ文を含む加工プログラム
を実行中に同じブロック指令の再解析処理を行う際の不
都合を防止できるようにした数値制御装置に関する。
制御装置に係り、特に、マクロ文を含む加工プログラム
を実行中に同じブロック指令の再解析処理を行う際の不
都合を防止できるようにした数値制御装置に関する。
【0002】
【従来の技術】図3は、数値制御装置での加工プログラ
ムの例を示す。一般に加工プログラムのフォーマットに
おいては、1ブロックを構成する文には、NC文とマク
ロ文の区別がある。図3において、N1ブロックがマク
ロ文、N2〜N4ブロックがNC文、N5〜N7ブロッ
クがマクロ文、N8ブロック以降がNC文である。NC
文は、NC工作機械をどのように動かすかの軸の移動に
関する指令である。これに対して、マクロ文は、軸の移
動に無関係な記述指令の一連の集まりをひとつの単位と
して定義したものである。この図3に挙げたマクロ文中
では、V1、V2は、マクロ変数と呼ばれる一種の汎用レ
ジスタである。N6ブロックにおけるIFは、いわゆる
IF文であって、その後の条件「V1の内容が3より小
さい」が成立すればN5ブロックへジャンプするという
指令である。
ムの例を示す。一般に加工プログラムのフォーマットに
おいては、1ブロックを構成する文には、NC文とマク
ロ文の区別がある。図3において、N1ブロックがマク
ロ文、N2〜N4ブロックがNC文、N5〜N7ブロッ
クがマクロ文、N8ブロック以降がNC文である。NC
文は、NC工作機械をどのように動かすかの軸の移動に
関する指令である。これに対して、マクロ文は、軸の移
動に無関係な記述指令の一連の集まりをひとつの単位と
して定義したものである。この図3に挙げたマクロ文中
では、V1、V2は、マクロ変数と呼ばれる一種の汎用レ
ジスタである。N6ブロックにおけるIFは、いわゆる
IF文であって、その後の条件「V1の内容が3より小
さい」が成立すればN5ブロックへジャンプするという
指令である。
【0003】次に、図5は、従来の数値制御装置におけ
る加工プログラムの解析処理を示すブロック図である。
Pが加工プログラム、10がブロック取出部、11はマ
クロ文解析・実行部、12がNC文解析部、13が実行
部である。ブロック取出部10は、加工プログラムPの
先頭のブロックから1ブロックづつ取出し、取出したブ
ロックがNC文であるか、あるいはマクロ文であるかを
判別する。NC文であれば、NC文解析部12に送り、
ここで解析して実行部13で使える形のデータを作成
し、それを解析済バッファ14に格納する。
る加工プログラムの解析処理を示すブロック図である。
Pが加工プログラム、10がブロック取出部、11はマ
クロ文解析・実行部、12がNC文解析部、13が実行
部である。ブロック取出部10は、加工プログラムPの
先頭のブロックから1ブロックづつ取出し、取出したブ
ロックがNC文であるか、あるいはマクロ文であるかを
判別する。NC文であれば、NC文解析部12に送り、
ここで解析して実行部13で使える形のデータを作成
し、それを解析済バッファ14に格納する。
【0004】NC文解析部12は、NC文1ブロックの
解析を終えると、次のNC文のブロックを解析するが、
その結果を解析済バッファ14に格納するかどうかは、
解析済バッファ14の状態による。すなわち、解析済バ
ッファ14内に既に格納されたデータがまだ実行部13
により取出されていない場合には、実行部13がこのデ
ータを取出して空になるまで、NC文解析結果のデータ
の格納処理を待つ。
解析を終えると、次のNC文のブロックを解析するが、
その結果を解析済バッファ14に格納するかどうかは、
解析済バッファ14の状態による。すなわち、解析済バ
ッファ14内に既に格納されたデータがまだ実行部13
により取出されていない場合には、実行部13がこのデ
ータを取出して空になるまで、NC文解析結果のデータ
の格納処理を待つ。
【0005】次に、図6は、解析済バッファ14の構造
例を示す図である。従来、数値制御装置における解析済
バッファ14は、大きく分けて実行用データ域14aと
モーダルデータ域14bとに分けられる。
例を示す図である。従来、数値制御装置における解析済
バッファ14は、大きく分けて実行用データ域14aと
モーダルデータ域14bとに分けられる。
【0006】解析済バッファ14の実行用データ域14
aに格納されるデータは、実行部13に転送されてそこ
で実行されるが、モーダルデータ域14bに格納される
データは、実行部13への転送と同時にモーダルデータ
保存域17に転送される。これは、実行中にモーダル情
報を表示するためや、再解析時にモーダル情報を解析用
モーダル域15に複写するためである。
aに格納されるデータは、実行部13に転送されてそこ
で実行されるが、モーダルデータ域14bに格納される
データは、実行部13への転送と同時にモーダルデータ
保存域17に転送される。これは、実行中にモーダル情
報を表示するためや、再解析時にモーダル情報を解析用
モーダル域15に複写するためである。
【0007】一方、加工プログラムPから取り出したブ
ロックがマクロ文の場合には、そのブロックは、マクロ
文解析・実行部11に送られて処理される。マクロ文の
解析実行が取り込んだブロックについて終わると、次の
ブロック取出しに移り、次のブロックもマクロ文なら、
無条件にその解析・実行を行う。
ロックがマクロ文の場合には、そのブロックは、マクロ
文解析・実行部11に送られて処理される。マクロ文の
解析実行が取り込んだブロックについて終わると、次の
ブロック取出しに移り、次のブロックもマクロ文なら、
無条件にその解析・実行を行う。
【0008】以上のような加工プログラムの解析・実行
処理を図3の加工プログラムについてタイミングチャー
トにすれば、図7に示すようになる。この図7に示すよ
うに、N2ブロックからN4ブロックのNC文では、実
行部13に解析済のデータが送られて解析済バッファ1
4が空になってから、次のブロックの解析済みのデータ
が格納されるというように逐次的に処理が進んでいるの
がわかる。これに対してN5ブロックからN8ブロック
までのマクロ文の解析は、実行部13での状態如何に関
らず進行している。なお、N6ブロックを解析した後
に、再びN5ブロックとN6ブロックを解析しているの
は、N6ブロックがIF文で始まる判定文であるから、
初回の判定ではマクロ変数V1の内容が2で3より小さ
い結果、N5ブロックへ戻るように指令されているから
である。
処理を図3の加工プログラムについてタイミングチャー
トにすれば、図7に示すようになる。この図7に示すよ
うに、N2ブロックからN4ブロックのNC文では、実
行部13に解析済のデータが送られて解析済バッファ1
4が空になってから、次のブロックの解析済みのデータ
が格納されるというように逐次的に処理が進んでいるの
がわかる。これに対してN5ブロックからN8ブロック
までのマクロ文の解析は、実行部13での状態如何に関
らず進行している。なお、N6ブロックを解析した後
に、再びN5ブロックとN6ブロックを解析しているの
は、N6ブロックがIF文で始まる判定文であるから、
初回の判定ではマクロ変数V1の内容が2で3より小さ
い結果、N5ブロックへ戻るように指令されているから
である。
【0009】ところで、加工プログラムの解析・実行処
理には、再解析といわれる処理がある。この再解析は、
実行部13において実行中のブロックの次のブロック以
降を既に解析し終わった後で、解析していた時とは何等
かの原因で実行条件が変わった場合に必要となる処理で
ある。例えば、あるブロックを解析していた時には、マ
シンロック〔実際の機械は移動させずに表示上の軸座標
だけを更新するモード〕がオフであったのが、その後マ
シンロックがオンになったような場合である。図7のタ
イミングチャートに即して説明すると、N4ブロックを
実行中に、すでにN8ブロックまで解析し終わっていた
ときに実行条件が変わってマシンロックがオフからオン
になった場合、再度N5ブロックから解析をしなければ
ならない。
理には、再解析といわれる処理がある。この再解析は、
実行部13において実行中のブロックの次のブロック以
降を既に解析し終わった後で、解析していた時とは何等
かの原因で実行条件が変わった場合に必要となる処理で
ある。例えば、あるブロックを解析していた時には、マ
シンロック〔実際の機械は移動させずに表示上の軸座標
だけを更新するモード〕がオフであったのが、その後マ
シンロックがオンになったような場合である。図7のタ
イミングチャートに即して説明すると、N4ブロックを
実行中に、すでにN8ブロックまで解析し終わっていた
ときに実行条件が変わってマシンロックがオフからオン
になった場合、再度N5ブロックから解析をしなければ
ならない。
【0010】
【発明が解決しようとする課題】しかしながら、加工プ
ログラムの内容によっては再解析を行ったことによっ
て、正常に解析した場合と結果が異なってくることがあ
り、そのために機械が指令通りの加工を行なえない場合
がある。
ログラムの内容によっては再解析を行ったことによっ
て、正常に解析した場合と結果が異なってくることがあ
り、そのために機械が指令通りの加工を行なえない場合
がある。
【0011】例えば、図3の加工プログラムでいえば、
N8ブロックまで解析が進んだ時点で、正常であればマ
クロ変数V2の内容は60である。再解析をN8ブロッ
クからやり直せば問題は生じないが、再解析をN5ブロ
ックからやり直すと、N5ブロックに戻ると、マクロ変
数の内容は、60+10=70で、N7ブロックでは、
70*2=140となってしまい、正常に解析した場合
と結果が大きく違ってくることになる。このような誤差
が生じる原因は、再解析処理においてそれ以前のマクロ
変数の内容を保存しないまま引き継いで解析・実行して
しまうことにある。
N8ブロックまで解析が進んだ時点で、正常であればマ
クロ変数V2の内容は60である。再解析をN8ブロッ
クからやり直せば問題は生じないが、再解析をN5ブロ
ックからやり直すと、N5ブロックに戻ると、マクロ変
数の内容は、60+10=70で、N7ブロックでは、
70*2=140となってしまい、正常に解析した場合
と結果が大きく違ってくることになる。このような誤差
が生じる原因は、再解析処理においてそれ以前のマクロ
変数の内容を保存しないまま引き継いで解析・実行して
しまうことにある。
【0012】このような加工プログラムのマクロ文再解
析に起因する誤差は従来から認識されており、その不都
合を防止するために講じられていたのは、プログラマー
が加工プログラムを作成する際に、再解析の問題の生じ
そうなブロックに、前のブロックが実行されるまで次の
ブロックの解析を禁止する先解析禁止のGコードをあら
かじめ挿入することであった。しかし、Gコードを挿入
し忘れることがあり、一方、先解析を禁止すると、ブロ
ックの実行が遅れて、全体として加工時間が長くなると
いう問題が生じた。
析に起因する誤差は従来から認識されており、その不都
合を防止するために講じられていたのは、プログラマー
が加工プログラムを作成する際に、再解析の問題の生じ
そうなブロックに、前のブロックが実行されるまで次の
ブロックの解析を禁止する先解析禁止のGコードをあら
かじめ挿入することであった。しかし、Gコードを挿入
し忘れることがあり、一方、先解析を禁止すると、ブロ
ックの実行が遅れて、全体として加工時間が長くなると
いう問題が生じた。
【0013】そこで、本発明の目的は、前記従来技術の
有する問題点を解消し、何等かの原因で解析済みのブロ
ックを再解析しても不都合を生じないようにし、加工プ
ログラムの正確な解析処理を行えるようにした数値制御
装置を提供することにある。
有する問題点を解消し、何等かの原因で解析済みのブロ
ックを再解析しても不都合を生じないようにし、加工プ
ログラムの正確な解析処理を行えるようにした数値制御
装置を提供することにある。
【0014】
【課題を解決するための手段】前記の目的を達成するた
めに、本発明は、NC文とマクロ文を含む加工プログラ
ムから1ブロックつづ読み出し、逐次ブロックを解析し
実行する数値制御装置において、前記加工プログラムか
ら1ブロックづつ逐次取り出し、ブロックがNC文であ
るかマクロ文であるかの判定を行う判定手段と、加工プ
ログラムのブロックがマクロ文である場合にそのマクロ
文を解析・実行するマクロ文解析・実行手段と、ブロッ
クを解析する処理に必要なマクロ変数が格納される解析
用マクロ変数格納手段と、NC文のブロックについて解
析済の実行用データと、モーダルデータ、およびマクロ
変数がそれぞれ格納される領域が割り当てられた解析済
バッファと、前記加工プログラムのブロックがNC文で
ある場合にそのNC文を解析して実行可能な実行用デー
タを作成し、その実行用データとモーダルデータを前記
解析済バッファが空の場合に格納するとともに、マクロ
変数格納手段のデータを前記解析済バッファに複写する
NC文解析手段と、前記解析済バッファから取り込んだ
実行用データを実行する実行手段と、前記実行手段で実
行されたブロックについて前記実行手段から転送される
マクロ変数を保存し、再解析時には保存されているマク
ロ変数が前記解析用マクロ変数データ格納手段に複写さ
れるマクロ変数データ保存手段と、を具備することを特
徴とするものである。
めに、本発明は、NC文とマクロ文を含む加工プログラ
ムから1ブロックつづ読み出し、逐次ブロックを解析し
実行する数値制御装置において、前記加工プログラムか
ら1ブロックづつ逐次取り出し、ブロックがNC文であ
るかマクロ文であるかの判定を行う判定手段と、加工プ
ログラムのブロックがマクロ文である場合にそのマクロ
文を解析・実行するマクロ文解析・実行手段と、ブロッ
クを解析する処理に必要なマクロ変数が格納される解析
用マクロ変数格納手段と、NC文のブロックについて解
析済の実行用データと、モーダルデータ、およびマクロ
変数がそれぞれ格納される領域が割り当てられた解析済
バッファと、前記加工プログラムのブロックがNC文で
ある場合にそのNC文を解析して実行可能な実行用デー
タを作成し、その実行用データとモーダルデータを前記
解析済バッファが空の場合に格納するとともに、マクロ
変数格納手段のデータを前記解析済バッファに複写する
NC文解析手段と、前記解析済バッファから取り込んだ
実行用データを実行する実行手段と、前記実行手段で実
行されたブロックについて前記実行手段から転送される
マクロ変数を保存し、再解析時には保存されているマク
ロ変数が前記解析用マクロ変数データ格納手段に複写さ
れるマクロ変数データ保存手段と、を具備することを特
徴とするものである。
【0015】本発明によれば、加工プログラムの再解析
処理においてそれ以前のマクロ変数の内容を保存してお
き、再解析を開始するときに保存したマクロ変数を使っ
て再解析処理を行うことができるので、誤差が生ぜずに
正確な再解析が可能となる。
処理においてそれ以前のマクロ変数の内容を保存してお
き、再解析を開始するときに保存したマクロ変数を使っ
て再解析処理を行うことができるので、誤差が生ぜずに
正確な再解析が可能となる。
【0016】
【発明の実施の形態】以下、本発明による数値制御装置
の一実施形態について、添付の図面を参照しながら説明
する。図1は、本実施の形態による数値制御装置のブロ
ック図である。なお、図5のブロック図と同一の参照符
号を付した構成要素は、同一の機能を有するものであ
る。
の一実施形態について、添付の図面を参照しながら説明
する。図1は、本実施の形態による数値制御装置のブロ
ック図である。なお、図5のブロック図と同一の参照符
号を付した構成要素は、同一の機能を有するものであ
る。
【0017】図1において、Pが加工プログラム、10
がブロック取出部、11はマクロ文解析・実行部、12
がNC文解析部、13が実行部である。ブロック取出部
10は、加工プログラムPの先頭のブロックから1ブロ
ックづつ取出し、取出したブロックがNC文であるか、
あるいはマクロ文であるかを判別する。NC文であれ
ば、NC文解析部12に送られ、ここで解析して実行部
13で使える形のデータを作成し、それを解析済バッフ
ァ20に格納する。このNC文解析部12が、NC文1
ブロックの解析を終えた後で、次のNC文のブロックを
解析するが、その結果を解析済バッファ20に格納する
かどうかは、解析済バッファ20の状態による。すなわ
ち、解析済バッファ20内に既に格納されたデータがま
だ実行部13により取出されていない場合には、実行部
13がこのデータを取出して空になるまで、NC文解析
結果のデータの格納処理は待たされる。
がブロック取出部、11はマクロ文解析・実行部、12
がNC文解析部、13が実行部である。ブロック取出部
10は、加工プログラムPの先頭のブロックから1ブロ
ックづつ取出し、取出したブロックがNC文であるか、
あるいはマクロ文であるかを判別する。NC文であれ
ば、NC文解析部12に送られ、ここで解析して実行部
13で使える形のデータを作成し、それを解析済バッフ
ァ20に格納する。このNC文解析部12が、NC文1
ブロックの解析を終えた後で、次のNC文のブロックを
解析するが、その結果を解析済バッファ20に格納する
かどうかは、解析済バッファ20の状態による。すなわ
ち、解析済バッファ20内に既に格納されたデータがま
だ実行部13により取出されていない場合には、実行部
13がこのデータを取出して空になるまで、NC文解析
結果のデータの格納処理は待たされる。
【0018】次に、図2は、解析済バッファ20のメモ
リ構成を示す。図6の解析済バッファ14は、解析済の
実行用データが格納される実行用データ域14aとモー
ダルデータが格納されるモーダルデータ域14bの二つ
の領域が割り当てられているが、本実施の形態では、実
行用データ域20a、モーダルデータ域20bに加え
て、実行部転送用にマクロ変数を一時的に格納しておく
ためのマクロ変数データ域20cが割り当てられてい
る。
リ構成を示す。図6の解析済バッファ14は、解析済の
実行用データが格納される実行用データ域14aとモー
ダルデータが格納されるモーダルデータ域14bの二つ
の領域が割り当てられているが、本実施の形態では、実
行用データ域20a、モーダルデータ域20bに加え
て、実行部転送用にマクロ変数を一時的に格納しておく
ためのマクロ変数データ域20cが割り当てられてい
る。
【0019】加工プログラムPから取り出したブロック
がマクロ文の場合には、そのブロックは、マクロ文解析
・実行部11に送られて処理され、その結果、マクロ変
数は、解析用マクロ変数域21に格納される。NC文解
析部12は、NC文を解析するときには解析用マクロ変
数域21のマクロ変数を参照して解析するとともに、こ
のマクロ変数の値を解析済の実行用データおよびモーダ
ルデータとともに解析済バッファ20が空のときに、そ
のマクロ変数データ域20cに複写する。
がマクロ文の場合には、そのブロックは、マクロ文解析
・実行部11に送られて処理され、その結果、マクロ変
数は、解析用マクロ変数域21に格納される。NC文解
析部12は、NC文を解析するときには解析用マクロ変
数域21のマクロ変数を参照して解析するとともに、こ
のマクロ変数の値を解析済の実行用データおよびモーダ
ルデータとともに解析済バッファ20が空のときに、そ
のマクロ変数データ域20cに複写する。
【0020】22は、前記解析用マクロ変数域21とは
別に実行部13用に設けたマクロ変数データ保存域であ
る。実行部13は、解析済バッファ20に格納されてい
る実行用データを実行するときに、モーダルデータをモ
ーダルデータ保存域17に転送するとともに、マクロ変
数のデータをマクロ変数データ保存域22に保存する。
このマクロ変数データ保存域22に保存されているマク
ロ変数は、再解析時に、解析用マクロ変数域21にそっ
くりそのまま複写されるようになっている。
別に実行部13用に設けたマクロ変数データ保存域であ
る。実行部13は、解析済バッファ20に格納されてい
る実行用データを実行するときに、モーダルデータをモ
ーダルデータ保存域17に転送するとともに、マクロ変
数のデータをマクロ変数データ保存域22に保存する。
このマクロ変数データ保存域22に保存されているマク
ロ変数は、再解析時に、解析用マクロ変数域21にそっ
くりそのまま複写されるようになっている。
【0021】次に、図3の加工プログラムについて解析
実行処理を行った場合のタイミングチャートを図4に示
す。この図4において、N1ブロックのマクロ文は、マ
クロ文解析・実行部11で解析されて、そのマクロ変数
の値V1=1、V2=10の値は、解析用マクロ変数域2
1に格納される。次に、N2ブロックをNC文解析部1
2で解析したときに、その解析結果の実行用データとと
もに、解析用マクロ変数域21のデータが解析済バッフ
ァ20に転送される。N2ブロックからN4ブロックの
NC文では、実行部13に解析済のデータが送られて解
析済バッファ20が空になってから、次のブロックの解
析済みのデータが格納されというように逐次的に処理が
進行する。N2ブロックを実行するときに、実行部13
は、マクロ変数の値V1=1、V2=20を解析済バッフ
ァ20のマクロ変数データ域20cからマクロ変数デー
タ保存域22に保存する。
実行処理を行った場合のタイミングチャートを図4に示
す。この図4において、N1ブロックのマクロ文は、マ
クロ文解析・実行部11で解析されて、そのマクロ変数
の値V1=1、V2=10の値は、解析用マクロ変数域2
1に格納される。次に、N2ブロックをNC文解析部1
2で解析したときに、その解析結果の実行用データとと
もに、解析用マクロ変数域21のデータが解析済バッフ
ァ20に転送される。N2ブロックからN4ブロックの
NC文では、実行部13に解析済のデータが送られて解
析済バッファ20が空になってから、次のブロックの解
析済みのデータが格納されというように逐次的に処理が
進行する。N2ブロックを実行するときに、実行部13
は、マクロ変数の値V1=1、V2=20を解析済バッフ
ァ20のマクロ変数データ域20cからマクロ変数デー
タ保存域22に保存する。
【0022】N5ブロックからN8ブロックまでのマク
ロ文の解析は、実行部での状態如何に関らず進行する。
この間、解析用マクロ変数域21に格納されるマクロ変
数V1、V2の値は、マクロ文が解析されるたびに更新さ
れていく。
ロ文の解析は、実行部での状態如何に関らず進行する。
この間、解析用マクロ変数域21に格納されるマクロ変
数V1、V2の値は、マクロ文が解析されるたびに更新さ
れていく。
【0023】そこで、N8ブロックまで解析が進んだ時
点で、何等かの原因で再解析処理をN5ブロックからや
り直すことになったものとする。この再解析直前に解析
用マクロ変数域21に格納されているマクロ変数の値は
V1=3、V2=60である。仮に、このままN5ブロッ
クに戻って再解析を行うとすると、マクロ変数V1の内
容は、60+10=70で、N7ブロックでは、70*
2=140となってしまい、正常に解析した場合と結果
が大きく違ってくることになる。
点で、何等かの原因で再解析処理をN5ブロックからや
り直すことになったものとする。この再解析直前に解析
用マクロ変数域21に格納されているマクロ変数の値は
V1=3、V2=60である。仮に、このままN5ブロッ
クに戻って再解析を行うとすると、マクロ変数V1の内
容は、60+10=70で、N7ブロックでは、70*
2=140となってしまい、正常に解析した場合と結果
が大きく違ってくることになる。
【0024】しかしながら、本発明によれば、再解析処
理を行う場合には、マクロ変数データ保存域22に格納
されているマクロ変数データ〔V1=1、V2=10〕が
解析用マクロ変数域21に複写される。したがって、N
5ブロックから再解析すると、この解析用マクロ変数域
21にあるマクロ変数を取出してN5〜N7ブロックま
で演算するので、N7ブロックでは、V2の内容は60
で正常な結果が得られ、従来のように再解析の結果に誤
差が生じてN8ブロックの動作が異常になることがな
い。
理を行う場合には、マクロ変数データ保存域22に格納
されているマクロ変数データ〔V1=1、V2=10〕が
解析用マクロ変数域21に複写される。したがって、N
5ブロックから再解析すると、この解析用マクロ変数域
21にあるマクロ変数を取出してN5〜N7ブロックま
で演算するので、N7ブロックでは、V2の内容は60
で正常な結果が得られ、従来のように再解析の結果に誤
差が生じてN8ブロックの動作が異常になることがな
い。
【0025】
【発明の効果】以上の説明から明らかなように、本発明
によれば、マクロ文を含む加工プログラムを実行中に何
等かの原因で再解析処理を行うことになっても、何の不
都合も発生せずに加工プログラムの実行が可能となるの
で、プログラマーの負担軽減と、加工時間の短縮に寄与
することができる等の効果を奏する。
によれば、マクロ文を含む加工プログラムを実行中に何
等かの原因で再解析処理を行うことになっても、何の不
都合も発生せずに加工プログラムの実行が可能となるの
で、プログラマーの負担軽減と、加工時間の短縮に寄与
することができる等の効果を奏する。
【図1】本発明による数値制御装置の一実施形態を示す
ブロック図。
ブロック図。
【図2】同実施形態による数値制御装置での解析済バッ
ファの構成例を示す図。
ファの構成例を示す図。
【図3】マクロ文、NC文を含む加工プログラムの例を
示す図。
示す図。
【図4】同実施形態による数値制御装置での解析処理の
タイミングチャート。
タイミングチャート。
【図5】従来の数値制御装置を示すブロック図。
【図6】従来の数値制御装置での解析済バッファの構成
を示す図。
を示す図。
【図7】従来の制御装置での解析処理のタイミングチャ
ート。
ート。
10 ブロック取出部 11 マクロ文解析・実行部 12 NC解析部 13 実行部 15 解析用モーダルデータ域 17 モーダルデータ保存域 20 解析済バッファ 21 解析用マクロ変数域 22 マクロ変数データ保存域 P 加工プログラム
───────────────────────────────────────────────────── フロントページの続き (72)発明者 四 條 弘 次 静岡県沼津市大岡2068の3 東芝機械株式 会社沼津事業所内 Fターム(参考) 5H269 AB01 BB05 BB07 EE01 EE25 EE29 9A001 DD15 JJ49 KK54 LL02
Claims (1)
- 【請求項1】NC文とマクロ文を含む加工プログラムか
ら1ブロックつづ読み出し、逐次ブロックを解析し実行
する数値制御装置において、 前記加工プログラムから1ブロックづつ逐次取り出し、
ブロックがNC文であるかマクロ文であるかの判定を行
う判定手段と、 加工プログラムのブロックがマクロ文である場合にその
マクロ文を解析・実行するマクロ文解析・実行手段と、 ブロックを解析する処理に必要なマクロ変数が格納され
る解析用マクロ変数格納手段と、 NC文のブロックについて解析済の実行用データと、モ
ーダルデータ、およびマクロ変数がそれぞれ格納される
領域が割り当てられた解析済バッファと、 前記加工プログラムのブロックがNC文である場合にそ
のNC文を解析して実行可能な実行用データを作成し、
その実行用データとモーダルデータを前記解析済バッフ
ァが空の場合に格納するとともに、マクロ変数格納手段
のデータを前記解析済バッファに複写するNC文解析手
段と、 前記解析済バッファから取り込んだ実行用データを実行
する実行手段と、 前記実行手段で実行されたブロックについて前記実行手
段から転送されるマクロ変数を保存し、再解析時には保
存されているマクロ変数が前記解析用マクロ変数データ
格納手段に複写されるマクロ変数データ保存手段と、を
具備することを特徴とする数値制御装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP11039946A JP2000242319A (ja) | 1999-02-18 | 1999-02-18 | 数値制御装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP11039946A JP2000242319A (ja) | 1999-02-18 | 1999-02-18 | 数値制御装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2000242319A true JP2000242319A (ja) | 2000-09-08 |
Family
ID=12567135
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP11039946A Withdrawn JP2000242319A (ja) | 1999-02-18 | 1999-02-18 | 数値制御装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2000242319A (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2013114425A (ja) * | 2011-11-28 | 2013-06-10 | Jtekt Corp | 数値制御装置 |
| CN104570959A (zh) * | 2013-10-18 | 2015-04-29 | 发那科株式会社 | 具备程序的预读功能的数值控制装置 |
| JP2017224137A (ja) * | 2016-06-15 | 2017-12-21 | ファナック株式会社 | 数値制御装置および変数判定方法 |
-
1999
- 1999-02-18 JP JP11039946A patent/JP2000242319A/ja not_active Withdrawn
Cited By (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2013114425A (ja) * | 2011-11-28 | 2013-06-10 | Jtekt Corp | 数値制御装置 |
| CN104570959A (zh) * | 2013-10-18 | 2015-04-29 | 发那科株式会社 | 具备程序的预读功能的数值控制装置 |
| CN104570959B (zh) * | 2013-10-18 | 2016-08-17 | 发那科株式会社 | 具备程序的预读功能的数值控制装置 |
| US10191472B2 (en) | 2013-10-18 | 2019-01-29 | Fanuc Corporation | Numerical controller provided with program pre-reading function |
| JP2017224137A (ja) * | 2016-06-15 | 2017-12-21 | ファナック株式会社 | 数値制御装置および変数判定方法 |
| CN107526334A (zh) * | 2016-06-15 | 2017-12-29 | 发那科株式会社 | 数值控制装置以及变量判定方法 |
| US10416652B2 (en) | 2016-06-15 | 2019-09-17 | Fanuc Corporation | Numerical controller and method for determining look-ahead variable |
| CN107526334B (zh) * | 2016-06-15 | 2020-01-07 | 发那科株式会社 | 数值控制装置以及变量判定方法 |
| US11137740B2 (en) | 2016-06-15 | 2021-10-05 | Fanuc Corporation | Numerical controller and method for determining look-ahead variable |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP2009530A2 (en) | Numerical controller having function of resuming look-ahead of block | |
| JP2017224137A (ja) | 数値制御装置および変数判定方法 | |
| JPH0410081B2 (ja) | ||
| JP7548464B1 (ja) | プログラマブルロジックコントローラ、支援装置、およびロギング方法 | |
| JPH05297911A (ja) | シーケンスコントローラ用シーケンス制御回路 | |
| JP2727023B2 (ja) | 情報処理装置 | |
| JPH06324861A (ja) | Cpu制御システム及び制御方法 | |
| JPS6211920A (ja) | コマンドリカバリ方式 | |
| JP2606658B2 (ja) | 論理シミュレータおよび制御方法 | |
| JPH0399322A (ja) | 割込み処理時の命令先取り方式 | |
| JP2860395B2 (ja) | チャネルコマンド先取り制御装置 | |
| JPS5835648A (ja) | プログラム実行制御方式 | |
| JP2581019B2 (ja) | シーケンスプログラムのデバッグ方法 | |
| KR100280404B1 (ko) | 디에스피에서의 다중 인터럽트 서비스 루틴 지원방법 | |
| JP2506591B2 (ja) | 補助処理装置 | |
| JPH0212305A (ja) | Pc装置の命令変更方式 | |
| JPS60126731A (ja) | プログラム制御方法 | |
| JPH07334374A (ja) | 割り込み検出処理装置 | |
| JPH0588878A (ja) | Lisp命令実行方式 | |
| JPH0335323A (ja) | 命令実行制御方式 | |
| JPS6269329A (ja) | メモリ破壊位置検出方式 | |
| JPH1031506A (ja) | 複数回書込検出可能なプログラマブルコントローラ | |
| JPS63228341A (ja) | プログラム構文チエツク方式 | |
| JPH01240941A (ja) | 情報処理装置 | |
| JPH07334376A (ja) | マイクロプロセッサ及びマルチタスク管理方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20060509 |