JPH03196308A - 数値制御装置 - Google Patents
数値制御装置Info
- Publication number
- JPH03196308A JPH03196308A JP20186290A JP20186290A JPH03196308A JP H03196308 A JPH03196308 A JP H03196308A JP 20186290 A JP20186290 A JP 20186290A JP 20186290 A JP20186290 A JP 20186290A JP H03196308 A JPH03196308 A JP H03196308A
- Authority
- JP
- Japan
- Prior art keywords
- macro
- variable
- user
- numerical control
- command
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 claims description 10
- 230000006870 function Effects 0.000 abstract description 26
- 230000004048 modification Effects 0.000 abstract 2
- 238000012986 modification Methods 0.000 abstract 2
- 238000010586 diagram Methods 0.000 description 5
- 230000014509 gene expression Effects 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000002826 coolant Substances 0.000 description 1
- 239000013256 coordination polymer Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 235000013601 eggs Nutrition 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
Landscapes
- Numerical Control (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
(産業上の利用分野)
本発明は、数値制御装置に係り、特に数値制御装置のソ
フトウェアを改造することなくユーザの希望する種々の
特殊処理が行なえる装置に関する。
フトウェアを改造することなくユーザの希望する種々の
特殊処理が行なえる装置に関する。
(従来の技術)
数値制御装置は、紙テープ等から指令された指令プログ
ラムに基いて数値制御処理を実行し、該処理結果により
工作機械を駆動してワークに指令通りの加工を施すもの
である。
ラムに基いて数値制御処理を実行し、該処理結果により
工作機械を駆動してワークに指令通りの加工を施すもの
である。
第1図はかかる従来の数値制御装置のブロック図である
。
。
テープリーダ11からブロック毎に読込まれた指令プロ
グラムは、まず、処理装置や制御プログラムメモリ等を
内蔵する制御装置12に入力される。ついで、制御装置
12は該指令プログラムに応じた数値制御処理を実行し
、工作機械のサーボモータを駆動してテーブル又は刃物
を移動指令通りに移動せしめ、或いは強電制御装置13
を介して工作機械14のクーラントのオン/オフ、スピ
ンドル正転/逆転/停止等の制御を行なう。
グラムは、まず、処理装置や制御プログラムメモリ等を
内蔵する制御装置12に入力される。ついで、制御装置
12は該指令プログラムに応じた数値制御処理を実行し
、工作機械のサーボモータを駆動してテーブル又は刃物
を移動指令通りに移動せしめ、或いは強電制御装置13
を介して工作機械14のクーラントのオン/オフ、スピ
ンドル正転/逆転/停止等の制御を行なう。
尚、15は原点復帰、ジョグ等を指令するスイッチ、卵
類等を有する操作盤、16は手動により1ブロツクの指
令データ等を入力するマニュアル・データ・インプット
装置(以後MDIという)、17は機械現在位置等を表
示する表示ユニットであり、各装置11〜17(工作機
械14は除く)によりコンピュータ数値制御装置(CN
Cという)が構成されている。
類等を有する操作盤、16は手動により1ブロツクの指
令データ等を入力するマニュアル・データ・インプット
装置(以後MDIという)、17は機械現在位置等を表
示する表示ユニットであり、各装置11〜17(工作機
械14は除く)によりコンピュータ数値制御装置(CN
Cという)が構成されている。
ところで従来の数値制御装置に与えられていた指令には
、移動指令、速度指令、工作機械に所定の機械動作を指
示する補助機能命令、主軸の回転数を指示する主軸機能
命令、工具交換を指示する工具機能命令、その他準備機
能命令などがあって、それらが順次に読み込まれる時に
、このCNCにおける制御装置12は、それらの指令を
解読して実行していたから、工作機械や処理装置(CP
U)等の内部状態、或はそこに外部からオペレータが設
定した状態信号に応じて指令プログラムの順序を変更す
ることはできなかった。
、移動指令、速度指令、工作機械に所定の機械動作を指
示する補助機能命令、主軸の回転数を指示する主軸機能
命令、工具交換を指示する工具機能命令、その他準備機
能命令などがあって、それらが順次に読み込まれる時に
、このCNCにおける制御装置12は、それらの指令を
解読して実行していたから、工作機械や処理装置(CP
U)等の内部状態、或はそこに外部からオペレータが設
定した状態信号に応じて指令プログラムの順序を変更す
ることはできなかった。
(発明が解決しようとする問題点)
ところが最近のCNCは機能の向上が要求されてきてお
り、工作機械やNCの状態に応じてその処理内容を指令
プログラムから指令する機能が必要になってきた。また
一般にCNCのソフトウェアは標準的な工作機械の制御
が行なえるように作られているが、工作機械によって、
或いは同種の工作機械でもユーザによって特殊な工作機
械制御が必要とされる場合がある。
り、工作機械やNCの状態に応じてその処理内容を指令
プログラムから指令する機能が必要になってきた。また
一般にCNCのソフトウェアは標準的な工作機械の制御
が行なえるように作られているが、工作機械によって、
或いは同種の工作機械でもユーザによって特殊な工作機
械制御が必要とされる場合がある。
このような場合、従来はその都度CNCのソフトウェア
を改造し特殊仕様通りの制御が行なえるようにしていた
。即ち、数値制御メーカは特殊な工作機械制御が要求さ
れる毎にその都度ソフトウェアを改造しており、このた
め多大の労力と時間を必要とし、人件費の増大、ひいて
はコストアップの弊害を招来していた。
を改造し特殊仕様通りの制御が行なえるようにしていた
。即ち、数値制御メーカは特殊な工作機械制御が要求さ
れる毎にその都度ソフトウェアを改造しており、このた
め多大の労力と時間を必要とし、人件費の増大、ひいて
はコストアップの弊害を招来していた。
そこで、従来からパートプログラム中に、定数は異なっ
ているがステートメントそのものは同じという命令群が
存在するとき、その都度プログラムをしなくてもすむよ
うに、そのグループにマクロ定義をほどこして、それに
特定シンボルを与えて格納し、マクロ識別名を含むマク
ロ呼出命令がプログラムされた指令プログラムからそれ
を呼び出して数値制御処理を行なおうという考えはあっ
た。
ているがステートメントそのものは同じという命令群が
存在するとき、その都度プログラムをしなくてもすむよ
うに、そのグループにマクロ定義をほどこして、それに
特定シンボルを与えて格納し、マクロ識別名を含むマク
ロ呼出命令がプログラムされた指令プログラムからそれ
を呼び出して数値制御処理を行なおうという考えはあっ
た。
マクロ定義のひとつに、カスタムマクロ、或はユーザマ
クロといわれるプログラム手法がある。
クロといわれるプログラム手法がある。
これは、ユーザや機械メーカが作成した一群の命令で構
成される機能を予めNG装置に登録しておき、あたかも
専用のソフトが組み込まれているかの様に、いつでも簡
単な手順で、マクロを呼び出して使用することができる
機能である。
成される機能を予めNG装置に登録しておき、あたかも
専用のソフトが組み込まれているかの様に、いつでも簡
単な手順で、マクロを呼び出して使用することができる
機能である。
ある−群の命令で構成されるマクロプログラムは、その
後通常のプログラムに代表命令を書くことにより特殊な
機能を実行できる点では、一種のサブプログラムである
が、通常の指令のみでプログラムが構成されるのではな
く、変数、演算指令、制御指令を使用して構成すること
ができ、更にマクロ呼び出し指令との間で引数(パラメ
ータ)の受は渡しが可能であるため、使用する工作機械
を含む数値制御システムにマツチした仕様や、ユーザ独
自の固定サイクルや自動プログラミングが実現できる。
後通常のプログラムに代表命令を書くことにより特殊な
機能を実行できる点では、一種のサブプログラムである
が、通常の指令のみでプログラムが構成されるのではな
く、変数、演算指令、制御指令を使用して構成すること
ができ、更にマクロ呼び出し指令との間で引数(パラメ
ータ)の受は渡しが可能であるため、使用する工作機械
を含む数値制御システムにマツチした仕様や、ユーザ独
自の固定サイクルや自動プログラミングが実現できる。
ここでは、登録される一群の命令をユーザマクロ本体或
は単にマクロといい、代表命令をユーザマクロ命令、或
はマクロ呼出命令という。
は単にマクロといい、代表命令をユーザマクロ命令、或
はマクロ呼出命令という。
ここで変数とは、マクロの中にあって、あるアドレスに
直接に数値を与えるのではなく、マクロを呼び出して実
行する際に定義されている変数に値を与えて使用される
ものであって、これによって、マクロに融通性と汎用性
を付与するものである。
直接に数値を与えるのではなく、マクロを呼び出して実
行する際に定義されている変数に値を与えて使用される
ものであって、これによって、マクロに融通性と汎用性
を付与するものである。
例えば、変数は#に続く変数番号i (1,2、・・・
)によって指定し、 #i と表現することができる。即ち#5、#109、#10
05という様に。
)によって指定し、 #i と表現することができる。即ち#5、#109、#10
05という様に。
また、変数番号としては、自然数のほか、式を使用する
ことも可能であり、その場合には、#[#100] 、
# [#1001−1]、# [#6/2]という様に
なる。
ことも可能であり、その場合には、#[#100] 、
# [#1001−1]、# [#6/2]という様に
なる。
さらにアドレスに続く数値を変数で置換することもでき
る。即ち〈アドレス〉#i又は〈アドレス〉−#iとプ
ログラムすれば、変数の値をそのまま、又はその補数を
、そのアドレスの指令値とすることを意味する。
る。即ち〈アドレス〉#i又は〈アドレス〉−#iとプ
ログラムすれば、変数の値をそのまま、又はその補数を
、そのアドレスの指令値とすることを意味する。
ところがこのように変更可能なマクロ変数に代入できる
数は、従来では指令プログラム中のマクロ呼出命令であ
るコールステートメント中で直接に指定される数値に限
られている。そのためタイマ時刻等の読取り制御等の処
理機能を直接にプログラムで実行させるとき、こうした
工作機械が有する複数種類の数値制御処理機能に対応し
た変数を持たせることができず、数値制御装置の有する
多様な機能をユーザが更に独自に拡張してマクロ命令を
構成するうえで、不十分であった。
数は、従来では指令プログラム中のマクロ呼出命令であ
るコールステートメント中で直接に指定される数値に限
られている。そのためタイマ時刻等の読取り制御等の処
理機能を直接にプログラムで実行させるとき、こうした
工作機械が有する複数種類の数値制御処理機能に対応し
た変数を持たせることができず、数値制御装置の有する
多様な機能をユーザが更に独自に拡張してマクロ命令を
構成するうえで、不十分であった。
従って、本発明は工作機械に対する特殊な制御が要求さ
れても、数値制御機能に対応するマクロ命令を呼び出す
マクロ呼出命令をプログラムしておくだけで、CNCの
ソフトウェアを同等改造せずに対処できる低コストの数
値制御装置を提供することを目的としている。
れても、数値制御機能に対応するマクロ命令を呼び出す
マクロ呼出命令をプログラムしておくだけで、CNCの
ソフトウェアを同等改造せずに対処できる低コストの数
値制御装置を提供することを目的としている。
C問題点を解決するための手段)
この目的は本発明において、マクロ識別名を含むユーザ
マクロ呼出命令がプログラムされた指令プログラムに基
づいて数値制御処理を実行し、該処理結果により工作機
械を駆動してワークに指令通りの加工を施すとともにそ
の経過時間を計数するクロックを有する数値制御装置に
おいて、前記数値制御処理の経過時間を代表する状態量
を変数値とするシステム変数を記憶した変数メモリと、
1ないし複数のシステム変数を含み前記マクロ識別名に
より識別可能な複数の機能命令をマクロ命令として予め
記憶しているマクロ登録メモリと、このマクロ登録メモ
リから前記マクロ命令を呼び出したとき前記変数メモリ
からマクロ命令に含まれるシステム変数を読出し前記経
過時間を予め定めた時間と比較するとともにこのシステ
ム変数の内容に応じて前記マクロ登録メモリから読出さ
れたマクロ命令に従って所定の数値制御処理を実行する
マクロ処理手段とを有することを特徴とする数値制御装
置により達成される。
マクロ呼出命令がプログラムされた指令プログラムに基
づいて数値制御処理を実行し、該処理結果により工作機
械を駆動してワークに指令通りの加工を施すとともにそ
の経過時間を計数するクロックを有する数値制御装置に
おいて、前記数値制御処理の経過時間を代表する状態量
を変数値とするシステム変数を記憶した変数メモリと、
1ないし複数のシステム変数を含み前記マクロ識別名に
より識別可能な複数の機能命令をマクロ命令として予め
記憶しているマクロ登録メモリと、このマクロ登録メモ
リから前記マクロ命令を呼び出したとき前記変数メモリ
からマクロ命令に含まれるシステム変数を読出し前記経
過時間を予め定めた時間と比較するとともにこのシステ
ム変数の内容に応じて前記マクロ登録メモリから読出さ
れたマクロ命令に従って所定の数値制御処理を実行する
マクロ処理手段とを有することを特徴とする数値制御装
置により達成される。
(イ乍用)
本発明によれば、マクロ登録メモリ(24)からユーザ
マクロ呼出命令により所定のユーザマクロを呼出し、マ
クロ処理手段(27)において該ユーザマクロに応じた
マクロ処理を実行する際に、システム変数に対応する数
値制御装置或は工作機械の状態量を読みとって、システ
ム変数により規定された機能命令に従ってシステム状態
を判別して、その時点で必要とされる特殊の数値制御処
理機能を選択して実行できる。
マクロ呼出命令により所定のユーザマクロを呼出し、マ
クロ処理手段(27)において該ユーザマクロに応じた
マクロ処理を実行する際に、システム変数に対応する数
値制御装置或は工作機械の状態量を読みとって、システ
ム変数により規定された機能命令に従ってシステム状態
を判別して、その時点で必要とされる特殊の数値制御処
理機能を選択して実行できる。
(実施例)
以下、本発明の実施例を図面に従って詳細に説明する。
第2図は本発明に係るCNCのブロック図である。
図中、−21は指令プログラムが穿孔されている指令テ
ープ、22は1又は複数のユーザマクロが穿孔されてい
るユーザマクロ指令テープである。
ープ、22は1又は複数のユーザマクロが穿孔されてい
るユーザマクロ指令テープである。
ここで各ユーザマクロは、第3図の如く少なくとも■マ
クロ識別名(たとえば09001)と■後述するシステ
ム変数を用いた命令とから構成され、それらの命令の最
終行には、たとえばM99*(*はエンド・オブ・ブロ
ックを、M99はマクロの終りをそれぞれ意味する)が
プログラムされている。
クロ識別名(たとえば09001)と■後述するシステ
ム変数を用いた命令とから構成され、それらの命令の最
終行には、たとえばM99*(*はエンド・オブ・ブロ
ックを、M99はマクロの終りをそれぞれ意味する)が
プログラムされている。
以下に、ユーザマクロの一例を示す。ここで#30.0
1がシステム変数である。
1がシステム変数である。
09001 *
#3001=Q*
WHILE [#3001LE#2’O]、DOIEN
D 1 * M99* 変数は、その変数番号(3,001或は20など)によ
り、ローカル変数、コモン変数、システム変数に分類さ
れる。
D 1 * M99* 変数は、その変数番号(3,001或は20など)によ
り、ローカル変数、コモン変数、システム変数に分類さ
れる。
ローカル変数とは、マクロ内でローカルに使用される変
数であって、その変数番号には1〜33が使用される。
数であって、その変数番号には1〜33が使用される。
即ちある時点で呼び出したマクロで使用しているローカ
ル変数#iと他の時点で呼び出したマクロで使用してい
る#iとは(iが同じ値かどうかを問わず)、別のもの
として扱われる。従って、多重呼び出しのように、マク
ロAから別のマクロBを呼ぶような場合、マクロAで使
用しているローカル変数をマクロBで誤って使用してそ
の値を破壊してしまうというおそれはない。このローカ
ル変数は、引数の受は渡しに使用される。
ル変数#iと他の時点で呼び出したマクロで使用してい
る#iとは(iが同じ値かどうかを問わず)、別のもの
として扱われる。従って、多重呼び出しのように、マク
ロAから別のマクロBを呼ぶような場合、マクロAで使
用しているローカル変数をマクロBで誤って使用してそ
の値を破壊してしまうというおそれはない。このローカ
ル変数は、引数の受は渡しに使用される。
コモン変数の変数番号には100〜199.500〜9
99が使用される。ローカル変数がマクロ内でローカル
に使用されるのに対して、メインプログラム或はそこか
ら呼ばれたサブプログラム、各マクロを通じて、コモン
変数は共通に使用される。従って、あるマクロAで使用
している#iと他のマクロで使用する#iとが同じもの
であって、一方のマクロで演算した結束のコモン変数を
、別のマクロで使用することができる。
99が使用される。ローカル変数がマクロ内でローカル
に使用されるのに対して、メインプログラム或はそこか
ら呼ばれたサブプログラム、各マクロを通じて、コモン
変数は共通に使用される。従って、あるマクロAで使用
している#iと他のマクロで使用する#iとが同じもの
であって、一方のマクロで演算した結束のコモン変数を
、別のマクロで使用することができる。
1
更にシステム変数は、後述するシステム変数メモリに格
納されるものであって、ローカル変数やコモン変数とは
異なり、工作機械が有する複数種類の数値制御処理機能
に対応する変数番号(システム符号)が割り当てられて
いて、工作機械或はNC装置の内部状態等の状態量に応
じて決定される変数となるものである。
納されるものであって、ローカル変数やコモン変数とは
異なり、工作機械が有する複数種類の数値制御処理機能
に対応する変数番号(システム符号)が割り当てられて
いて、工作機械或はNC装置の内部状態等の状態量に応
じて決定される変数となるものである。
又、上記指令テープ21から読み込まれる指令プログラ
ムには、通常の指令のほかに、マクロ識別名を含むユー
ザマクロ呼出命令(ユーザマクロコール)がプログラム
され、適宜のプログラムステップにて所定のユーザマク
ロを呼出すことにより、該ユーザマクロに応じた処理の
実行が可能である。このユーザマクロ呼出命令は、少な
(ともG65(ユーザマクロ呼出しのG機能命令)と、
例えばP4O10(Pは9001がマクロ識別名である
ことを示すワードアドレス、9001はマクロ識別名)
とを有している。
ムには、通常の指令のほかに、マクロ識別名を含むユー
ザマクロ呼出命令(ユーザマクロコール)がプログラム
され、適宜のプログラムステップにて所定のユーザマク
ロを呼出すことにより、該ユーザマクロに応じた処理の
実行が可能である。このユーザマクロ呼出命令は、少な
(ともG65(ユーザマクロ呼出しのG機能命令)と、
例えばP4O10(Pは9001がマクロ識別名である
ことを示すワードアドレス、9001はマクロ識別名)
とを有している。
23は紙テープリーグであり、指令テープ21.22に
穿孔されている指令を読取る。24は2 マクロ登録メモリであり、ユーザマクロ指令テープ22
から読取られた複数のユーザマクロが該メモリに記憶さ
れる。25は判別回路であり、26は通常処理部、27
はユーザマクロ処理部である。これら処理部26.27
はそれぞれ演算部、制御部、メモリ等を内蔵している。
穿孔されている指令を読取る。24は2 マクロ登録メモリであり、ユーザマクロ指令テープ22
から読取られた複数のユーザマクロが該メモリに記憶さ
れる。25は判別回路であり、26は通常処理部、27
はユーザマクロ処理部である。これら処理部26.27
はそれぞれ演算部、制御部、メモリ等を内蔵している。
テープリーダ23から判別回路25に読込まれた情報が
ユーザマクロ本体であれば(ワードアドレスOにより識
別する)、これをマクロ登録メモリ24に転送記憶せし
め、通常指令であれば次段の通常処理部26へ送出し、
又ユーザマクロ呼出命令であれば該当するユーザマクロ
処理部27へ送出する。尚、これら処理部26.27を
共通に構成してもよい。また通常の指令とユーザマクロ
本体とは1つのテープに混在することはなくそれぞれ別
々のテープから入力される。
ユーザマクロ本体であれば(ワードアドレスOにより識
別する)、これをマクロ登録メモリ24に転送記憶せし
め、通常指令であれば次段の通常処理部26へ送出し、
又ユーザマクロ呼出命令であれば該当するユーザマクロ
処理部27へ送出する。尚、これら処理部26.27を
共通に構成してもよい。また通常の指令とユーザマクロ
本体とは1つのテープに混在することはなくそれぞれ別
々のテープから入力される。
28は、工作機械が有する複数種類の数値制御処理機能
のそれぞれに対応するシステム符号が割り当てられると
ともに該システム符号に割り当てられた機能命令により
実行される処理内容を短足するシステム変数を記憶した
変数メモリであり、通常処理部26及びユーザマクロ処
理部27の双方から参照できるようになっている。各シ
ステム変数#iはその変数番号iに応じてシステム内で
の用途が固定される。
のそれぞれに対応するシステム符号が割り当てられると
ともに該システム符号に割り当てられた機能命令により
実行される処理内容を短足するシステム変数を記憶した
変数メモリであり、通常処理部26及びユーザマクロ処
理部27の双方から参照できるようになっている。各シ
ステム変数#iはその変数番号iに応じてシステム内で
の用途が固定される。
即ち、この変数メモリ28内のマクロ用DI領域では、
#1000〜#1035がそれぞれ工作機械との間で授
受される16ビツトの入力信号からなるインクフェース
信号をその変数値として記憶し、マクロ用Do領域では
、#1100〜#1135がそれぞれ工作機械との間で
授受される16ビツトの出力信号からなるインタフェー
ス信号をその変数値として記憶し、工具オフセット用領
域では、# 200−1〜#2099がそれぞれ99種
類の工具のオフセット量をその変数値として記憶し、マ
クロアラーム用領域では、#3000がマクロ中の誤り
を検出したときNC装置をアラームにする信号をその変
数値として紀憶し、クロック領域では、#3001、#
3002がそれぞれ基準時刻からの経過時間に関するク
ロック信号をその変数値として記憶し、自動運転制御領
域では、13003がシングルブロック停止の抑制或は
その解除に関する信号をその変数値として記憶し、位置
記憶域では、#3004がフィードホールド、フィード
レートオーバライドの無効或はその解除に関する信号を
その変数値として記憶し、モーダル情報領域では、#4
000〜#4−012がそれぞれモーダル指令の現在値
信号をその変数値として記憶し、機械座標領域では、#
5001〜#5104が各種機械位置をその変数値とし
て記憶している。
#1000〜#1035がそれぞれ工作機械との間で授
受される16ビツトの入力信号からなるインクフェース
信号をその変数値として記憶し、マクロ用Do領域では
、#1100〜#1135がそれぞれ工作機械との間で
授受される16ビツトの出力信号からなるインタフェー
ス信号をその変数値として記憶し、工具オフセット用領
域では、# 200−1〜#2099がそれぞれ99種
類の工具のオフセット量をその変数値として記憶し、マ
クロアラーム用領域では、#3000がマクロ中の誤り
を検出したときNC装置をアラームにする信号をその変
数値として紀憶し、クロック領域では、#3001、#
3002がそれぞれ基準時刻からの経過時間に関するク
ロック信号をその変数値として記憶し、自動運転制御領
域では、13003がシングルブロック停止の抑制或は
その解除に関する信号をその変数値として記憶し、位置
記憶域では、#3004がフィードホールド、フィード
レートオーバライドの無効或はその解除に関する信号を
その変数値として記憶し、モーダル情報領域では、#4
000〜#4−012がそれぞれモーダル指令の現在値
信号をその変数値として記憶し、機械座標領域では、#
5001〜#5104が各種機械位置をその変数値とし
て記憶している。
29は、工作機械、表示ユニット、テープパンチャ等と
の入出力のインタフェースを司るインクフェイス回路で
ある。30は工作機械、31はMDI、32は表示ユニ
ット、33は操作盤である34はアドレス変換ユニット
で、変数番号iを変数メモリ28のアドレスに変換する
。
の入出力のインタフェースを司るインクフェイス回路で
ある。30は工作機械、31はMDI、32は表示ユニ
ット、33は操作盤である34はアドレス変換ユニット
で、変数番号iを変数メモリ28のアドレスに変換する
。
さて、予めユーザマクロ指令テープ22から複数のユー
ザマクロがユーザマクロ登録メモリ24に記憶されてお
り、この状態で指令テープ21か 5 ら指令プログラムが読み込まれたものとする。読み込ま
れた指令が通常のNC指令であれば、該NC指令は通常
処理部26に入力され、従来と同様のNC処理が実行さ
れる。又、指令がユーザマクロ呼出命令であれば、判別
回路25はユーザマクロ登録メモリ24から該当するユ
ーザマクロを呼び出し、これをユーザマクロ処理部27
に人力し、後述のユーザマクロ処理を行う。
ザマクロがユーザマクロ登録メモリ24に記憶されてお
り、この状態で指令テープ21か 5 ら指令プログラムが読み込まれたものとする。読み込ま
れた指令が通常のNC指令であれば、該NC指令は通常
処理部26に入力され、従来と同様のNC処理が実行さ
れる。又、指令がユーザマクロ呼出命令であれば、判別
回路25はユーザマクロ登録メモリ24から該当するユ
ーザマクロを呼び出し、これをユーザマクロ処理部27
に人力し、後述のユーザマクロ処理を行う。
なお、指令テープ21.22からユーザマクロたけてな
(指令プログラムをもマクロ登録メモリ24に予め記憶
させておき、該記憶したNC指令を順次に読み出してN
C処理を実行するいわゆるメモリ運転方式とした場合に
は、NCの操作盤33上のモード選択スイッチをテープ
編集モードにしてプログラムの読み込みを行い、その後
NC処理に際しては該モード選択スイッチを自動モード
にする。
(指令プログラムをもマクロ登録メモリ24に予め記憶
させておき、該記憶したNC指令を順次に読み出してN
C処理を実行するいわゆるメモリ運転方式とした場合に
は、NCの操作盤33上のモード選択スイッチをテープ
編集モードにしてプログラムの読み込みを行い、その後
NC処理に際しては該モード選択スイッチを自動モード
にする。
次に本発明の詳細な説明する。
(A)ユーザマクロの登録
クロックの時刻を得るユーザマクロ
6
CNCは、第1、第2の2種類のクロックを有しており
、第1クロツクは1ミリ秒刻みに計数され、電源投入後
の時刻(この時刻はシステム変数の値として変数レジス
タに記憶されている)を計時するために使用され、又第
2クロツクは0. 1時間(6分)刻みに計数され、C
NCの総使用時間(この時間もシステム変数の値として
変数レジスタに記憶されている)を計時するために使用
される。
、第1クロツクは1ミリ秒刻みに計数され、電源投入後
の時刻(この時刻はシステム変数の値として変数レジス
タに記憶されている)を計時するために使用され、又第
2クロツクは0. 1時間(6分)刻みに計数され、C
NCの総使用時間(この時間もシステム変数の値として
変数レジスタに記憶されている)を計時するために使用
される。
今、ユーザがある時刻から20 m5ec経過した時点
で次の工作処理を行なうという特殊な使用が必要になっ
たとすれば、ユーザは以下のユーザマクロを作成する。
で次の工作処理を行なうという特殊な使用が必要になっ
たとすれば、ユーザは以下のユーザマクロを作成する。
尚、電源投入後の時刻を示すシステム変数は、#300
1に対応する変数レジスタに、又CNCの総使用時間を
示すシステム変数は、#3002に対応する変数レジス
タにそれぞれ記憶されている。
1に対応する変数レジスタに、又CNCの総使用時間を
示すシステム変数は、#3002に対応する変数レジス
タにそれぞれ記憶されている。
09100*
・・・■# 1 = #3001
・・・■WHI L E [#3001
−#IL E#20]D O1*・・・■E N D
l* ・・・0
M99* ・
・・■上記ユーザマクロのうち■はマクロ識別名、■は
現時刻(#3001に対応するレジスタの内容)を#1
の変数レジスタにセットするマクロ命令(現時刻の取込
み)、■はユーザマクロの終りを示す命令である。
・・・■# 1 = #3001
・・・■WHI L E [#3001
−#IL E#20]D O1*・・・■E N D
l* ・・・0
M99* ・
・・■上記ユーザマクロのうち■はマクロ識別名、■は
現時刻(#3001に対応するレジスタの内容)を#1
の変数レジスタにセットするマクロ命令(現時刻の取込
み)、■はユーザマクロの終りを示す命令である。
又■、■の
WHILE[<条件式>] DOm(m=1,2 =I
NDm はく条件式〉が成立している間はDOmのブロックから
ENDmのブロック迄を繰返すマクロ命令で、不成立の
場合にはENDmの次のブロックを実行する。又L E
(L E S S or E qual)は≦を意味
し、更に(#3001−# 1 )は#3001. #
1に対応する変数レジスタの内容の減算を意味する。
NDm はく条件式〉が成立している間はDOmのブロックから
ENDmのブロック迄を繰返すマクロ命令で、不成立の
場合にはENDmの次のブロックを実行する。又L E
(L E S S or E qual)は≦を意味
し、更に(#3001−# 1 )は#3001. #
1に対応する変数レジスタの内容の減算を意味する。
尚、システム符号#20に対応する変数レジスタには2
0が格納されている。
0が格納されている。
従って、20 m5ec経過してく条件式〉が成立しな
(なると、■に移行する。
(なると、■に移行する。
上記■〜■のユーザマクロが作成されればこれを紙テー
プ22に穿孔し、テープリーグ23に読込ませれば、判
別回路25はワードアドレス0を識別して以後のユーザ
マクロをマクロ登録メモリ24に転送記憶させる。これ
によりクロック時刻をつるユーザマクロの登録が終了す
る。
プ22に穿孔し、テープリーグ23に読込ませれば、判
別回路25はワードアドレス0を識別して以後のユーザ
マクロをマクロ登録メモリ24に転送記憶させる。これ
によりクロック時刻をつるユーザマクロの登録が終了す
る。
以上から、クロック時刻を得るためのユーザマクロは通
常のドウエル(DWELL)機能に類似している。しか
し、ドウエルは機械動作を所定時間停止させ、該時間経
過後に機械動作を再開する機能であるが、上記ユーザマ
クロは機械動作を停止することなく所定時間の計時が可
能な、換言すれば工作機械の動作中であっても計時でき
る機能を有している。
常のドウエル(DWELL)機能に類似している。しか
し、ドウエルは機械動作を所定時間停止させ、該時間経
過後に機械動作を再開する機能であるが、上記ユーザマ
クロは機械動作を停止することなく所定時間の計時が可
能な、換言すれば工作機械の動作中であっても計時でき
る機能を有している。
(B)ユーザマクロ呼出命令
ユーザマクロ呼出命令は、指令テープ21にプログラム
しておくことによりマクロ登録メモリ24から所定のユ
ーザマクロを呼出してユーザマクロ処理部27により数
値制御処理を実行させる命令で、少なくとも 9 G65P(マクロ識別名) が指令される。
しておくことによりマクロ登録メモリ24から所定のユ
ーザマクロを呼出してユーザマクロ処理部27により数
値制御処理を実行させる命令で、少なくとも 9 G65P(マクロ識別名) が指令される。
さて、指令テープ21からテープリーグ23により指令
が読込まれれば、判別回路25はユーザマクロ呼出命令
か否かの判定を行い、ユーザマクロ呼出命令でなければ
通常処理部26は該指令に基いた処理を行って工作機械
を制御し、一方ユーザマクロ呼出命令であれば、該呼出
命令のワードアドレスPのあとに指示されているマクロ
識別名を有するユーザマクロに含まれるマクロ命令に従
って、マクロ登録メモリ24から所定のシステム符号に
対応する変数レジスタの内容を呼出してユーザマクロ処
理部27に引渡し、マクロ処理を実行させ工作機械をユ
ーザマクロに応じて制御する。
が読込まれれば、判別回路25はユーザマクロ呼出命令
か否かの判定を行い、ユーザマクロ呼出命令でなければ
通常処理部26は該指令に基いた処理を行って工作機械
を制御し、一方ユーザマクロ呼出命令であれば、該呼出
命令のワードアドレスPのあとに指示されているマクロ
識別名を有するユーザマクロに含まれるマクロ命令に従
って、マクロ登録メモリ24から所定のシステム符号に
対応する変数レジスタの内容を呼出してユーザマクロ処
理部27に引渡し、マクロ処理を実行させ工作機械をユ
ーザマクロに応じて制御する。
(発明の効果)
以上、本発明においてはユーザマクロを予め、複数登録
しているマクロ登録メモリからユーザマクロ呼出命令に
より所定のユーザマクロを呼出し、マクロ処理部におい
て該ユーザマクロに応じ 0 たマクロ処理を実行する際に、CNCのソフトウェアを
その都度改善するのではなく、システム符号に割り当て
られた機能命令により実行される処理内容が、システム
変数を任意に変更して工作機械が有する複数種類の数値
制御処理機能に対応したシステム符号を指定するだけで
、必要とされる特殊の数値制御処理機能を選択して実行
できる。したがってユーザは何等CNCのソフトウェア
を改造することなく、単に該特殊制御のユーザマクロを
作成し、マクロ登録メモリに記憶させ、指令テープなど
の適所に該ユーザマクロ呼出命令をプログラムするだけ
でよい。
しているマクロ登録メモリからユーザマクロ呼出命令に
より所定のユーザマクロを呼出し、マクロ処理部におい
て該ユーザマクロに応じ 0 たマクロ処理を実行する際に、CNCのソフトウェアを
その都度改善するのではなく、システム符号に割り当て
られた機能命令により実行される処理内容が、システム
変数を任意に変更して工作機械が有する複数種類の数値
制御処理機能に対応したシステム符号を指定するだけで
、必要とされる特殊の数値制御処理機能を選択して実行
できる。したがってユーザは何等CNCのソフトウェア
を改造することなく、単に該特殊制御のユーザマクロを
作成し、マクロ登録メモリに記憶させ、指令テープなど
の適所に該ユーザマクロ呼出命令をプログラムするだけ
でよい。
この結果、ソフトウェアの改造に要する労力と時間を省
くことができ低コストで、しかもユーザの要望に適合し
たCNCを提供できる。又、ユーザマクロを使用するこ
とによって、機械、システムにマツチした特殊仕様や、
ユーザ独自の固定サイクルや自動プログラミングが実現
可能となった。
くことができ低コストで、しかもユーザの要望に適合し
たCNCを提供できる。又、ユーザマクロを使用するこ
とによって、機械、システムにマツチした特殊仕様や、
ユーザ独自の固定サイクルや自動プログラミングが実現
可能となった。
第1図は従来の数値制御装置のブロック図、第2図は本
発明に係るCNCのブロック図、第3図は指令プログラ
ムの一例を示す説明図である。 21・・・指令テープ、22・・・ユーザマクロ指令テ
ープ、23・・・テープリーグ、24・・・マクロ登録
メモリ、25・・・判別回路、26・・・通常処理部、
27・・・ユーザマクロ処理部、28・・・変数メモリ
、29・・・インタフェース回路。
発明に係るCNCのブロック図、第3図は指令プログラ
ムの一例を示す説明図である。 21・・・指令テープ、22・・・ユーザマクロ指令テ
ープ、23・・・テープリーグ、24・・・マクロ登録
メモリ、25・・・判別回路、26・・・通常処理部、
27・・・ユーザマクロ処理部、28・・・変数メモリ
、29・・・インタフェース回路。
Claims (1)
- マクロ識別名を含むユーザマクロ呼出命令がプログラム
された指令プログラムに基づいて数値制御処理を実行し
、該処理結果により工作機械を駆動してワークに指令通
りの加工を施すとともにその経過時間を計数するクロッ
クを有する数値制御装置において、前記数値制御処理の
経過時間を代表する状態量を変数値とするシステム変数
を記憶した変数メモリと、1ないし複数のシステム変数
を含み前記マクロ識別名により識別可能な複数の機能命
令をマクロ命令として予め記憶しているマクロ登録メモ
リと、このマクロ登録メモリから前記マクロ命令を呼び
出したとき前記変数メモリからマクロ命令に含まれるシ
ステム変数を読出し前記経過時間を予め定めた時間と比
較するとともにこのシステム変数の内容に応じて前記マ
クロ登録メモリから読出されたマクロ命令に従って所定
の数値制御処理を実行するマクロ処理手段とを有するこ
とを特徴とする数値制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP20186290A JPH03196308A (ja) | 1990-07-30 | 1990-07-30 | 数値制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP20186290A JPH03196308A (ja) | 1990-07-30 | 1990-07-30 | 数値制御装置 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP7099780A Division JPS56168223A (en) | 1980-05-28 | 1980-05-28 | Numerical value control system |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH03196308A true JPH03196308A (ja) | 1991-08-27 |
Family
ID=16448122
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP20186290A Pending JPH03196308A (ja) | 1990-07-30 | 1990-07-30 | 数値制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH03196308A (ja) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS56168223A (en) * | 1980-05-28 | 1981-12-24 | Fanuc Ltd | Numerical value control system |
-
1990
- 1990-07-30 JP JP20186290A patent/JPH03196308A/ja active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS56168223A (en) * | 1980-05-28 | 1981-12-24 | Fanuc Ltd | Numerical value control system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4484286A (en) | Numerical control system | |
JP4311349B2 (ja) | 数値制御システム | |
EP1826644A2 (en) | Numerical controller | |
EP0230471B1 (en) | Manual operation system for machine controlled by numerical control unit | |
JPH01308185A (ja) | モータ制御装置 | |
JPS6232805B2 (ja) | ||
JPH03196308A (ja) | 数値制御装置 | |
GB2083247A (en) | A programmable machine | |
JPH03196309A (ja) | 数値制御装置 | |
JPH03206503A (ja) | 数値制御装置 | |
JPH03206505A (ja) | 数値制御装置 | |
JPH06318109A (ja) | 数値制御装置 | |
EP0382853B1 (en) | Programmable controller | |
JPH03196307A (ja) | 数値制御装置 | |
JP3764436B2 (ja) | 機械の制御装置 | |
JPS59201107A (ja) | 数値制御加工再開制御方式 | |
WO1989002110A1 (en) | Cnc program execution apparatus | |
JPH03206504A (ja) | 数値制御装置 | |
JP2588944B2 (ja) | Ncデータ作成方法 | |
JP3460747B2 (ja) | 数値制御装置 | |
JPH02151909A (ja) | 産業用機械の制御装置 | |
JPH0336606A (ja) | 数値制御装置 | |
JPH0460805A (ja) | シーケンス・プログラム作成方法 | |
JPH055123B2 (ja) | ||
JP2942812B2 (ja) | 変種変量生産プログラムの作成装置 |