JPH0793015A - 数値制御装置 - Google Patents
数値制御装置Info
- Publication number
- JPH0793015A JPH0793015A JP23848093A JP23848093A JPH0793015A JP H0793015 A JPH0793015 A JP H0793015A JP 23848093 A JP23848093 A JP 23848093A JP 23848093 A JP23848093 A JP 23848093A JP H0793015 A JPH0793015 A JP H0793015A
- Authority
- JP
- Japan
- Prior art keywords
- numerical control
- control program
- command
- interpolation
- analysis 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)【要約】
【目的】 1つの数値制御プログラムで複数の補間する
可動軸の組み合せを制御することができ、数値制御プロ
グラム作成者は、数値制御プログラム作成時の負担を軽
減できる。 【構成】 マスタの数値制御プログラム解析処理部16
から並列処理起動指令を入力して、処理を実行していな
いスレーブの数値制御プログラム解析処理部に起動を指
令する解析処理部起動管理部12aと、可動軸の補間組
み合わせ指令を受け取り、複数の補間処理部15のうち
処理を実行していない補間処理部と可動軸の制御可また
は制御不可状態をマスタの数値制御プログラム解析処理
部16またはスレーブの数値制御プログラム解析処理部
17a〜17nに通知する補間処理起動管理部14とを
備えた。
可動軸の組み合せを制御することができ、数値制御プロ
グラム作成者は、数値制御プログラム作成時の負担を軽
減できる。 【構成】 マスタの数値制御プログラム解析処理部16
から並列処理起動指令を入力して、処理を実行していな
いスレーブの数値制御プログラム解析処理部に起動を指
令する解析処理部起動管理部12aと、可動軸の補間組
み合わせ指令を受け取り、複数の補間処理部15のうち
処理を実行していない補間処理部と可動軸の制御可また
は制御不可状態をマスタの数値制御プログラム解析処理
部16またはスレーブの数値制御プログラム解析処理部
17a〜17nに通知する補間処理起動管理部14とを
備えた。
Description
【0001】
【産業上の利用分野】本発明は、工作機械や自動組み立
て装置、自動搬送装置などの制御に用いる数値制御装置
に関する発明であり、さらに詳しくは、可動軸を制御す
る数値制御プログラム運転方式に関する発明である。
て装置、自動搬送装置などの制御に用いる数値制御装置
に関する発明であり、さらに詳しくは、可動軸を制御す
る数値制御プログラム運転方式に関する発明である。
【0002】
【従来の技術】図10は、例えば特開平3−28908
号公報に示された従来の多系統数値制御装置の各系統の
数値制御部および軸出力回路の内部構成を示すブロック
図である。ただし、図10の構成要素の番号は、説明を
しやすくするため便宜上変更している。
号公報に示された従来の多系統数値制御装置の各系統の
数値制御部および軸出力回路の内部構成を示すブロック
図である。ただし、図10の構成要素の番号は、説明を
しやすくするため便宜上変更している。
【0003】図において、1aは第1系統の数値制御プ
ログラムであり、2はこの数値制御プログラム1aから
読み込んだ指令を解析し数値演算する第1系統の数値制
御部である。第1系統の数値制御部2は、数値制御プロ
グラム1aから読み込まれた数値制御プログラムを格納
するメモリ2aと、この格納メモリ2aから数値制御プ
ログラムを1ブロック単位で読み出し、指令を解読して
数値(軸移動量)演算を行う指令解読・数値演算部2b
と、この指令解読・数値演算部2bで演算された軸デー
タである軸移動量を軸毎に記憶する軸データ格納メモリ
2cとから構成されている。
ログラムであり、2はこの数値制御プログラム1aから
読み込んだ指令を解析し数値演算する第1系統の数値制
御部である。第1系統の数値制御部2は、数値制御プロ
グラム1aから読み込まれた数値制御プログラムを格納
するメモリ2aと、この格納メモリ2aから数値制御プ
ログラムを1ブロック単位で読み出し、指令を解読して
数値(軸移動量)演算を行う指令解読・数値演算部2b
と、この指令解読・数値演算部2bで演算された軸デー
タである軸移動量を軸毎に記憶する軸データ格納メモリ
2cとから構成されている。
【0004】また、1bは第2系統の数値制御プログラ
ムであり、3はこの数値制御プログラム1bから読み込
んだ指令を解析し数値演算する第2系統の数値制御部で
ある。第2系統の数値制御部3は、数値制御プログラム
1bから読み込まれた数値制御プログラムを格納する格
納メモリ3aと、この格納メモリ3aから数値制御プロ
グラムを1ブロック単位で読み出し、指令を解読して数
値(軸移動量)演算を行う指令解読・数値演算部3b
と、この指令解読・数値演算部3bで演算された軸デー
タである軸移動量を軸毎に記憶する軸データ格納メモリ
3cとから構成されている。
ムであり、3はこの数値制御プログラム1bから読み込
んだ指令を解析し数値演算する第2系統の数値制御部で
ある。第2系統の数値制御部3は、数値制御プログラム
1bから読み込まれた数値制御プログラムを格納する格
納メモリ3aと、この格納メモリ3aから数値制御プロ
グラムを1ブロック単位で読み出し、指令を解読して数
値(軸移動量)演算を行う指令解読・数値演算部3b
と、この指令解読・数値演算部3bで演算された軸デー
タである軸移動量を軸毎に記憶する軸データ格納メモリ
3cとから構成されている。
【0005】4は軸出力回路部で、全数値制御プログラ
ムについて処理された軸データがいずれのモータ6aか
ら6nに対応するかをチェックし、かつ該軸データをモ
ータ6a〜6nの番号順に並べ変えるとともに、全数値
制御プログラム指令を監視する軸制御回路4aと、モー
タの番号順に並べかえられた軸データ、すなわち、最終
制御軸対応の軸移動量をモータ6a〜6nの順番に格納
する軸移動量メモリ4bと、この軸移動量メモリ4bの
軸移動量を対応する軸のサーボユニット5a〜5nに出
力する軸移動量出力回路4cとから構成されている。
ムについて処理された軸データがいずれのモータ6aか
ら6nに対応するかをチェックし、かつ該軸データをモ
ータ6a〜6nの番号順に並べ変えるとともに、全数値
制御プログラム指令を監視する軸制御回路4aと、モー
タの番号順に並べかえられた軸データ、すなわち、最終
制御軸対応の軸移動量をモータ6a〜6nの順番に格納
する軸移動量メモリ4bと、この軸移動量メモリ4bの
軸移動量を対応する軸のサーボユニット5a〜5nに出
力する軸移動量出力回路4cとから構成されている。
【0006】図11は、従来の数値制御装置で例えば旋
盤などの工作機械を制御する場合の可動軸の構成を示し
ている。図11は、図11(a)に示すように第1系統
は第1軸、第2軸、第3軸がX軸、Y軸、C軸として構
成され、図11(b)に示すように第2系統は第4軸、
第5軸、第6軸がX軸、Y軸、C軸として構成されてい
る例を示している。従来工作機械を制御する場合では、
図11(a)、図11(b)に示すように、可動軸を系
統としてあらかじめ構成し、可動軸を制御する数値制御
プログラムも系統単位に作成していた。また、従来の数
値制御装置は、複雑な加工を行う場合のタクトタイムの
向上などの為に、例えば図11(a)の第1系統のZ軸
と図11(b)の第2系統のZ軸を入れ替え変えるなど
各系統の軸を入れ替える制御が可能となっている。
盤などの工作機械を制御する場合の可動軸の構成を示し
ている。図11は、図11(a)に示すように第1系統
は第1軸、第2軸、第3軸がX軸、Y軸、C軸として構
成され、図11(b)に示すように第2系統は第4軸、
第5軸、第6軸がX軸、Y軸、C軸として構成されてい
る例を示している。従来工作機械を制御する場合では、
図11(a)、図11(b)に示すように、可動軸を系
統としてあらかじめ構成し、可動軸を制御する数値制御
プログラムも系統単位に作成していた。また、従来の数
値制御装置は、複雑な加工を行う場合のタクトタイムの
向上などの為に、例えば図11(a)の第1系統のZ軸
と図11(b)の第2系統のZ軸を入れ替え変えるなど
各系統の軸を入れ替える制御が可能となっている。
【0007】図12は、従来の数値制御装置の数値制御
プログラムを示しており、上記のような系統間の制御す
る可動軸の入れ替えについて示している。図において
(a)は第1系統の数値制御プログラムであり、(b)
は第2系統の数値制御プログラムである。図12(a)
の第1系統の数値制御プログラムにおいて G110 X1 Z2;指令は、この指令以降は、軸指
令名称が同じZ軸であるが、駆動するモータは第2系統
のZ軸とする指令であり、図12(b)の第2系統の数
値制御プログラムにおいて G110 X2 Z1 C1;指令は、この指令以降
は、軸指令名称が同じZ軸、C軸であるが、駆動するモ
ータは第1系統のZ軸、C軸とする指令である。
プログラムを示しており、上記のような系統間の制御す
る可動軸の入れ替えについて示している。図において
(a)は第1系統の数値制御プログラムであり、(b)
は第2系統の数値制御プログラムである。図12(a)
の第1系統の数値制御プログラムにおいて G110 X1 Z2;指令は、この指令以降は、軸指
令名称が同じZ軸であるが、駆動するモータは第2系統
のZ軸とする指令であり、図12(b)の第2系統の数
値制御プログラムにおいて G110 X2 Z1 C1;指令は、この指令以降
は、軸指令名称が同じZ軸、C軸であるが、駆動するモ
ータは第1系統のZ軸、C軸とする指令である。
【0008】
【発明が解決しようとする課題】図13は自動組立機な
どの可動軸の構成について示したものである。自動組立
機など場合は、図13(a)、(b)、(c)などに示
すように、ある工程の場合は、X軸、Z軸を補間制御
し、ある工程の場合はX軸、Y軸を補間制御し、また、
別の場合にはZ軸、A軸を補間制御する必要がある。ま
た、タクトタイムを向上のために、それぞれの補間制御
同時に実行することも要求される。特開平3−2890
8に示した様な従来の数値制御装置では、旋盤などの工
作機械を対象としており、あらかじめ各可動軸が制御系
統として決められており、数値制御プログラムが系統単
位で記憶されているが、自動組立機など可動軸の補間の
組み合わせが、ワークや組立作業の違いによって異なる
場合は、あらかじめ各可動軸の組み合わせや、数値制御
プログラムを系統単位に決めることが出来ず、従来の数
値制御装置で制御することが困難であった。また、数値
制御装置では数値制御プログラムで系統間の軸の組み合
わせを変えることが出来るが、あらかじめ可動軸が決め
られた系統間で可動軸を入れ替えるだけであり、図13
で示したような機械の場合の制御は困難であるなどの問
題点があった。
どの可動軸の構成について示したものである。自動組立
機など場合は、図13(a)、(b)、(c)などに示
すように、ある工程の場合は、X軸、Z軸を補間制御
し、ある工程の場合はX軸、Y軸を補間制御し、また、
別の場合にはZ軸、A軸を補間制御する必要がある。ま
た、タクトタイムを向上のために、それぞれの補間制御
同時に実行することも要求される。特開平3−2890
8に示した様な従来の数値制御装置では、旋盤などの工
作機械を対象としており、あらかじめ各可動軸が制御系
統として決められており、数値制御プログラムが系統単
位で記憶されているが、自動組立機など可動軸の補間の
組み合わせが、ワークや組立作業の違いによって異なる
場合は、あらかじめ各可動軸の組み合わせや、数値制御
プログラムを系統単位に決めることが出来ず、従来の数
値制御装置で制御することが困難であった。また、数値
制御装置では数値制御プログラムで系統間の軸の組み合
わせを変えることが出来るが、あらかじめ可動軸が決め
られた系統間で可動軸を入れ替えるだけであり、図13
で示したような機械の場合の制御は困難であるなどの問
題点があった。
【0009】また、図13に示したような自動組立機な
どでは、可動軸の補間の組み合わせが組立工程単位で変
わる場合が多く、また、可動軸の補間の組み合わせを同
時に複数制御する場合があり、従来の数値制御装置で
は、複数の系統の数値制御プログラムを同時に実行し、
かつある工程が開始される時や終了する時には、複数の
系統の数値制御プログラム間での待ち合わせを行い、軸
の補間の組み合わせを変えるなどが必要でり、これら制
御指令のタイミングなどを考慮しながら系統毎の数値制
御プログラムを作成しなければならなかった。また、従
来のプログラマブルコントローラとサーボ制御装置の組
み合わせで上記のような場合を制御する場合は、ラダー
回路が複雑になるなどの問題点があった。
どでは、可動軸の補間の組み合わせが組立工程単位で変
わる場合が多く、また、可動軸の補間の組み合わせを同
時に複数制御する場合があり、従来の数値制御装置で
は、複数の系統の数値制御プログラムを同時に実行し、
かつある工程が開始される時や終了する時には、複数の
系統の数値制御プログラム間での待ち合わせを行い、軸
の補間の組み合わせを変えるなどが必要でり、これら制
御指令のタイミングなどを考慮しながら系統毎の数値制
御プログラムを作成しなければならなかった。また、従
来のプログラマブルコントローラとサーボ制御装置の組
み合わせで上記のような場合を制御する場合は、ラダー
回路が複雑になるなどの問題点があった。
【0010】さらに、図13に示したような自動組立機
などでは、工作機械などに比較して軸数が多い場合が多
く、上記のような動作を複数同時に独立して制御できな
いため、数値制御装置の使用台数が多くなるなどの問題
点があった。
などでは、工作機械などに比較して軸数が多い場合が多
く、上記のような動作を複数同時に独立して制御できな
いため、数値制御装置の使用台数が多くなるなどの問題
点があった。
【0011】
【課題を解決するための手段】第1の発明にかかる数値
制御装置は、複数の補間処理手段と、数値制御プログラ
ムを解析して前記補間処理手段に補間指令を出力すると
ともに、数値制御プログラムに指定された可動軸の補間
の組み合わせを同時に複数制御する並列処理の開始指令
が指定されている場合に実行中の数値制御プログラム番
号と並列処理先頭指令とを並列処理起動指令として出力
するマスタの数値制御プログラム解析処理手段と、前記
数値制御プログラムを解析して前記補間処理手段に補間
指令を出力するスレーブの数値制御プログラム解析手段
と、外部信号により前記マスタの数値制御プログラム解
析手段を起動し、前記マスタの数値制御プログラム解析
処理手段からの前記並列処理起動指令を入力して、前記
スレーブの数値制御プログラム解析処理手段のうち解析
処理を実行していないスレーブの数値制御プログラム解
析処理手段に前記マスタの数値制御プログラム解析処理
手段と並列処理をするために起動を指令する解析処理部
起動管理手段と、前記マスタの数値制御プログラム解析
処理手段または前記スレーブの数値制御プログラム解析
処理手段からの可動軸の補間組み合わせ指令を受け取
り、前記複数の補間処理手段のうち補間処理を実行して
いない補間処理手段と可動軸の制御可または制御不可状
態を前記マスタの数値制御プログラム解析処理手段また
は前記スレーブの数値制御プログラム解析処理手段に通
知する補間処理部起動保管手段とを備えたものである。
制御装置は、複数の補間処理手段と、数値制御プログラ
ムを解析して前記補間処理手段に補間指令を出力すると
ともに、数値制御プログラムに指定された可動軸の補間
の組み合わせを同時に複数制御する並列処理の開始指令
が指定されている場合に実行中の数値制御プログラム番
号と並列処理先頭指令とを並列処理起動指令として出力
するマスタの数値制御プログラム解析処理手段と、前記
数値制御プログラムを解析して前記補間処理手段に補間
指令を出力するスレーブの数値制御プログラム解析手段
と、外部信号により前記マスタの数値制御プログラム解
析手段を起動し、前記マスタの数値制御プログラム解析
処理手段からの前記並列処理起動指令を入力して、前記
スレーブの数値制御プログラム解析処理手段のうち解析
処理を実行していないスレーブの数値制御プログラム解
析処理手段に前記マスタの数値制御プログラム解析処理
手段と並列処理をするために起動を指令する解析処理部
起動管理手段と、前記マスタの数値制御プログラム解析
処理手段または前記スレーブの数値制御プログラム解析
処理手段からの可動軸の補間組み合わせ指令を受け取
り、前記複数の補間処理手段のうち補間処理を実行して
いない補間処理手段と可動軸の制御可または制御不可状
態を前記マスタの数値制御プログラム解析処理手段また
は前記スレーブの数値制御プログラム解析処理手段に通
知する補間処理部起動保管手段とを備えたものである。
【0012】第2の発明にかかる数値制御装置は、さら
に複雑な可動軸の補間の組み合わせ制御を可能とし、ま
た、複数の補間制御を並列に実行する数値制御プログラ
ムを複数同時に実行することを可能とするため、複数の
補間処理手段と、数値制御プログラムを解析して前記補
間処理手段に補間指令を出力するとともに、数値制御プ
ログラムに指定された可動軸の補間の組み合わせを同時
に複数制御する並列処理の開始指令が指定されている場
合に実行中の数値制御プログラム番号と並列処理先頭指
令とを並列処理起動指令として出力する少なくとも2つ
以上の数値制御プログラム解析処理手段と、外部信号ま
たは前記数値制御プログラム解析処理手段からの可動軸
の補間の組み合わせを同時に複数制御する前記並列処理
起動指令を入力して、前記数値制御プログラム解析処理
手段のうち解析処理を実行していない前記数値制御プロ
グラム解析処理手段に対して前記並列処理起動指令を出
力した前記数値制御プログラム解析処理手段と並列処理
をする起動を指令する解析処理部起動管理手段と、前記
数値制御プログラム解析処理手段からの可動軸の補間組
み合わせ指令を受け取り、前記複数の補間処理手段のう
ち補間処理を実行していない補間処理手段と軸名称に対
応する可動軸と前記可動軸の制御可または制御不可状態
を前記数値制御プログラム解析処理手段に通知する補間
処理部起動管理手段とを備えたものである。
に複雑な可動軸の補間の組み合わせ制御を可能とし、ま
た、複数の補間制御を並列に実行する数値制御プログラ
ムを複数同時に実行することを可能とするため、複数の
補間処理手段と、数値制御プログラムを解析して前記補
間処理手段に補間指令を出力するとともに、数値制御プ
ログラムに指定された可動軸の補間の組み合わせを同時
に複数制御する並列処理の開始指令が指定されている場
合に実行中の数値制御プログラム番号と並列処理先頭指
令とを並列処理起動指令として出力する少なくとも2つ
以上の数値制御プログラム解析処理手段と、外部信号ま
たは前記数値制御プログラム解析処理手段からの可動軸
の補間の組み合わせを同時に複数制御する前記並列処理
起動指令を入力して、前記数値制御プログラム解析処理
手段のうち解析処理を実行していない前記数値制御プロ
グラム解析処理手段に対して前記並列処理起動指令を出
力した前記数値制御プログラム解析処理手段と並列処理
をする起動を指令する解析処理部起動管理手段と、前記
数値制御プログラム解析処理手段からの可動軸の補間組
み合わせ指令を受け取り、前記複数の補間処理手段のう
ち補間処理を実行していない補間処理手段と軸名称に対
応する可動軸と前記可動軸の制御可または制御不可状態
を前記数値制御プログラム解析処理手段に通知する補間
処理部起動管理手段とを備えたものである。
【0013】
【作用】第1の発明におけるマスタの数値制御プログラ
ム解析処理手段は、数値制御プログラムに指令された並
列処理の開始指令により実行中の数値制御プログラム番
号と並列処理先頭指令を解析処理部起動管理手段に指示
し、解析処理部起動管理手段は現在処理していないスレ
ーブの数値制御プログラム解析処理手段に起動を通知す
ることにより、軸の待ち合わせや補間する可動軸の組み
合わせ指令などの制御指令のタイミングを考慮しながら
系統毎の数値制御プログラムを作成することなく、1つ
の数値制御プログラムで複数の補間する可動軸の組み合
せを同時に制御することが出来る。
ム解析処理手段は、数値制御プログラムに指令された並
列処理の開始指令により実行中の数値制御プログラム番
号と並列処理先頭指令を解析処理部起動管理手段に指示
し、解析処理部起動管理手段は現在処理していないスレ
ーブの数値制御プログラム解析処理手段に起動を通知す
ることにより、軸の待ち合わせや補間する可動軸の組み
合わせ指令などの制御指令のタイミングを考慮しながら
系統毎の数値制御プログラムを作成することなく、1つ
の数値制御プログラムで複数の補間する可動軸の組み合
せを同時に制御することが出来る。
【0014】第2の発明における数値制御プログラム解
析処理手段は、数値制御プログラムに指令された並列処
理の開始指令により実行中の数値制御プログラム番号と
並列処理先頭指令を解析処理部起動管理手段に指示し、
解析処理起動管理手段は、外部機械操作盤などからの外
部信号または、数値制御プログラム解析処理手段からの
起動指示により現在処理中でない数値制御プログラム解
析処理手段を起動し、さらに数値制御プログラム解析処
理手段は数値制御プログラムで軸名称で指令された任意
の可動軸の補間指令を補間処理部起動管理手段に指示
し、補間処理部起動管理手段が軸名称に対応する可動軸
と現在処理を実行していない補間処理手段を数値制御プ
ログラム解析処理手段に通知することにより、あらかじ
め各可動軸の組み合わせや、数値制御プログラムを系統
単位に決めることが出来ないような機械の制御を可能と
する。
析処理手段は、数値制御プログラムに指令された並列処
理の開始指令により実行中の数値制御プログラム番号と
並列処理先頭指令を解析処理部起動管理手段に指示し、
解析処理起動管理手段は、外部機械操作盤などからの外
部信号または、数値制御プログラム解析処理手段からの
起動指示により現在処理中でない数値制御プログラム解
析処理手段を起動し、さらに数値制御プログラム解析処
理手段は数値制御プログラムで軸名称で指令された任意
の可動軸の補間指令を補間処理部起動管理手段に指示
し、補間処理部起動管理手段が軸名称に対応する可動軸
と現在処理を実行していない補間処理手段を数値制御プ
ログラム解析処理手段に通知することにより、あらかじ
め各可動軸の組み合わせや、数値制御プログラムを系統
単位に決めることが出来ないような機械の制御を可能と
する。
【0015】
実施例1.図1は、第1の発明の数値制御装置の一実施
例を説明したブロック図であり、ここでは可動軸がn軸
の場合の例を示している。図において、1は数値制御プ
ログラム、10は数値制御プログラム1を格納する数値
制御プログラム格納メモリ、12aは解析処理部起動管
理部、13は外部機械操作盤、14は補間処理起動管理
部、15は補間処理部である。
例を説明したブロック図であり、ここでは可動軸がn軸
の場合の例を示している。図において、1は数値制御プ
ログラム、10は数値制御プログラム1を格納する数値
制御プログラム格納メモリ、12aは解析処理部起動管
理部、13は外部機械操作盤、14は補間処理起動管理
部、15は補間処理部である。
【0016】16は数値制御プログラム格納メモリ10
に記憶された数値制御プログラム1を読みとり、可動軸
の移動指令や補間の組合せ指令など、数値制御プログラ
ム1に記述された内容を解析するマスタの数値制御プロ
グラム解析処理部である。17a〜17nは、数値制御
プログラム格納メモリ10に記憶されたマスタの数値制
御プログラム解析処理部16が解析している数値制御プ
ログラムと同一の数値制御プログラム1を読みとり、可
動軸の移動指令や補間の組合せ指令など、数値制御プロ
グラム1に記述された内容を解析するスレーブの数値制
御プログラム解析処理部である。解析処理部起動管理部
12aは、外部機械操作盤13からの外部起動信号によ
りマスタの数値制御プログラム解析処理部16を起動
し、また、マスタの数値制御プログラム解析処理部16
からの解析処理起動要求を受け取り、スレーブの数値制
御プログラム解析処理部17a〜17nのうち処理を実
行していないスレーブの数値制御プログラム解析処理部
に処理の開始を指示する解析処理部起動管理部である。
補間処理起動管理部14は、マスタの数値制御プログラ
ム解析処理部16およびスレーブの数値制御プログラム
解析処理部17a〜17nから数値制御プログラムに指
令された可動軸の補間組み合わせ指令を受け取り、現在
処理を実行していない補間処理部を通知する。補間処理
部15は、マスタの数値制御プログラム解析処理部16
およびスレーブの数値制御プログラム解析処理部17a
〜17nからの例えば、移動速度や移動距離など可動軸
の移動情報を受け取り、各可動軸の単位時間あたりの移
動量を計算する。補間処理部15は、複数の補間の組合
わせを同時に処理できるように補間処理部15a〜15
nで構成されている。軸制御回路4は、従来と同様に補
間処理部15からの、制御する可動軸とその可動軸の移
動量を入力する。軸制御回路4の構成、サーボユニット
5a〜5n、モータ6a〜6nは従来と同様であるので
説明を省略する。
に記憶された数値制御プログラム1を読みとり、可動軸
の移動指令や補間の組合せ指令など、数値制御プログラ
ム1に記述された内容を解析するマスタの数値制御プロ
グラム解析処理部である。17a〜17nは、数値制御
プログラム格納メモリ10に記憶されたマスタの数値制
御プログラム解析処理部16が解析している数値制御プ
ログラムと同一の数値制御プログラム1を読みとり、可
動軸の移動指令や補間の組合せ指令など、数値制御プロ
グラム1に記述された内容を解析するスレーブの数値制
御プログラム解析処理部である。解析処理部起動管理部
12aは、外部機械操作盤13からの外部起動信号によ
りマスタの数値制御プログラム解析処理部16を起動
し、また、マスタの数値制御プログラム解析処理部16
からの解析処理起動要求を受け取り、スレーブの数値制
御プログラム解析処理部17a〜17nのうち処理を実
行していないスレーブの数値制御プログラム解析処理部
に処理の開始を指示する解析処理部起動管理部である。
補間処理起動管理部14は、マスタの数値制御プログラ
ム解析処理部16およびスレーブの数値制御プログラム
解析処理部17a〜17nから数値制御プログラムに指
令された可動軸の補間組み合わせ指令を受け取り、現在
処理を実行していない補間処理部を通知する。補間処理
部15は、マスタの数値制御プログラム解析処理部16
およびスレーブの数値制御プログラム解析処理部17a
〜17nからの例えば、移動速度や移動距離など可動軸
の移動情報を受け取り、各可動軸の単位時間あたりの移
動量を計算する。補間処理部15は、複数の補間の組合
わせを同時に処理できるように補間処理部15a〜15
nで構成されている。軸制御回路4は、従来と同様に補
間処理部15からの、制御する可動軸とその可動軸の移
動量を入力する。軸制御回路4の構成、サーボユニット
5a〜5n、モータ6a〜6nは従来と同様であるので
説明を省略する。
【0017】図2は、本発明による数値制御プログラム
の一例を示したものである。図において、説明のために
数値制御プログラムに各行に行番号を付け、行番号15
0から行番号350までは、見やすくするために段落を
ずらしている。また、各行は1つの指令の区切りであ
り、以下この指令の単位をブロック呼ぶ。
の一例を示したものである。図において、説明のために
数値制御プログラムに各行に行番号を付け、行番号15
0から行番号350までは、見やすくするために段落を
ずらしている。また、各行は1つの指令の区切りであ
り、以下この指令の単位をブロック呼ぶ。
【0018】図2では、軸の名称がそれぞれ、 X Y Z U V W A の場合についての例である。
【0019】図2中、行番号10、行番号60などの指
令 GP(□,□,□) は、補間軸の組合せ指令であり、()内には補間を行う
軸名称を指令する。
令 GP(□,□,□) は、補間軸の組合せ指令であり、()内には補間を行う
軸名称を指令する。
【0020】行番号30、行番号40などの指令 MOV(□□□□□,□□□□□,□□□□□) は、移動指令であり、()内には、先に示したGP指令
で指令したそれぞれの軸の位置を指令する。
で指令したそれぞれの軸の位置を指令する。
【0021】行番号20、行番号70などの指令 F(□□□□□) は、移動指令の速度の指令であり、()内には、速度を
指定する。
指定する。
【0022】行番号140の指令 PARA(□□□□□) は、同時に複数の一連のブロックを並列に実行を開始す
る並列処理開始指令であり、行番号150、行番号20
0などの指令 PRG(□□□□□) は、並列に実行するブロックの先頭を指令する並列処理
先頭指令である。PARA()の()内には、並列処理
先頭指令PRG()を識別するためのマークである。P
RG()の()内は、PARAで指定したマークであ
り、同じマークの複数のそれぞれの並列処理先頭指令か
ら並列に実行するものである。図6では、行番号140
で指令した並列処理開始指令で並列処理を行う各範囲
は、(a)−(1),(a)−(2),(a)−(3)
である。
る並列処理開始指令であり、行番号150、行番号20
0などの指令 PRG(□□□□□) は、並列に実行するブロックの先頭を指令する並列処理
先頭指令である。PARA()の()内には、並列処理
先頭指令PRG()を識別するためのマークである。P
RG()の()内は、PARAで指定したマークであ
り、同じマークの複数のそれぞれの並列処理先頭指令か
ら並列に実行するものである。図6では、行番号140
で指令した並列処理開始指令で並列処理を行う各範囲
は、(a)−(1),(a)−(2),(a)−(3)
である。
【0023】行番号360の指令 PEND(□□□□□) は、並列処理終了を指令する。()内には、終了する並
列処理の開始指令時のマークを指令する。このブロック
では、指令したマークのそれぞれの並列実行が全て終了
したら次のブロックに実行が移る。
列処理の開始指令時のマークを指令する。このブロック
では、指令したマークのそれぞれの並列実行が全て終了
したら次のブロックに実行が移る。
【0024】図3は図1の解析処理部起動管理部12の
動作についてのフローチャートである。以下、図のフロ
ーチャートにより解析処理部起動管理部12の動作につ
いて説明する。
動作についてのフローチャートである。以下、図のフロ
ーチャートにより解析処理部起動管理部12の動作につ
いて説明する。
【0025】外部機械操作盤13からの外部起動信号ま
たは、マスタの数値制御プログラム解析処理部16から
の指令により解析処理部起動管理12aの処理が開始さ
れ、ステップ1で、外部起動信号かマスタの数値制御プ
ログラム解析処理部16からの指令かを判別し、外部起
動信号からの起動であれば、ステップ2でマスタの数値
制御プログラム解析処理部16を起動し指定された数値
制御プログラムの実行を指示する。ステップ1で外部起
動信号からではなくマスタの数値制御プログラム解析処
理部16からの起動指令である場合はステップ3に進
み、スレーブの数値制御プログラム解析処理部17a〜
17nのうち現在処理を実行していないスレーブの数値
制御プログラム解析処理部を検索し、ステップ4で現在
処理を実行していないスレーブの数値制御プログラム解
析処理部があるかどうかを判別し、あれば、ステップ5
で、検索されたスレーブの数値制御プログラム解析処理
部に起動を指示する。また、スレーブ数値制御プログラ
ム解析処理部がなければ、ステップ6でエラーとして処
理を終了する。
たは、マスタの数値制御プログラム解析処理部16から
の指令により解析処理部起動管理12aの処理が開始さ
れ、ステップ1で、外部起動信号かマスタの数値制御プ
ログラム解析処理部16からの指令かを判別し、外部起
動信号からの起動であれば、ステップ2でマスタの数値
制御プログラム解析処理部16を起動し指定された数値
制御プログラムの実行を指示する。ステップ1で外部起
動信号からではなくマスタの数値制御プログラム解析処
理部16からの起動指令である場合はステップ3に進
み、スレーブの数値制御プログラム解析処理部17a〜
17nのうち現在処理を実行していないスレーブの数値
制御プログラム解析処理部を検索し、ステップ4で現在
処理を実行していないスレーブの数値制御プログラム解
析処理部があるかどうかを判別し、あれば、ステップ5
で、検索されたスレーブの数値制御プログラム解析処理
部に起動を指示する。また、スレーブ数値制御プログラ
ム解析処理部がなければ、ステップ6でエラーとして処
理を終了する。
【0026】図4は図1のマスタの数値制御プログラム
解析処理部16の動作についてフローチャートである。
以下、図のフローチャートによりマスタの数値制御プロ
グラム解析処理部16の動作について説明する。ただ
し、説明を簡単にするために速度の指令については説明
を省略する。
解析処理部16の動作についてフローチャートである。
以下、図のフローチャートによりマスタの数値制御プロ
グラム解析処理部16の動作について説明する。ただ
し、説明を簡単にするために速度の指令については説明
を省略する。
【0027】数値制御プログラムの運転が開始される
と、解析処理部起動管理部12aからマスタの数値制御
プログラム解析処理部16が起動される。図4のステッ
プ10で、マスタの数値制御プログラム解析処理部16
は数値制御プログラムを数値制御プログラム格納メモリ
10から1ブロック読み出す。次にステップ11で数値
制御プログラムに記述された指令が、例えば図2の10
行目、60行目などの補間軸の組合せ指令かどうかを判
別し、補間軸の組合せ指令であれば、ステップ12で補
間処理起動管理部14に可動軸の制御可不可および現在
処理を実行していない補間処理部がどれであるかを問い
合わせてその番号を数値制御プログラム解析処理部の内
部記憶領域に記憶しておく。ステップ13では、ステッ
プ12の結果数値制御プログラムで指令された可動軸が
制御可能である場合は次のステップ14に進む。ステッ
プ14では、図2の行番号420のSTOP指令まで数
値制御プログラムを実行したかどうかを判別し、終了で
なければステップ10に進み数値制御プログラムの次の
ブロックを実行する。終了であればステップ15で数値
制御プログラム解析処理部の処理の終了を解析処理部起
動管理部12aに通知して、数値制御プログラム解析処
理を終了する。また、ステップ13で可動軸が既に制御
中である場合にはステップ16でエラーとしてステップ
15で処理を終了する。
と、解析処理部起動管理部12aからマスタの数値制御
プログラム解析処理部16が起動される。図4のステッ
プ10で、マスタの数値制御プログラム解析処理部16
は数値制御プログラムを数値制御プログラム格納メモリ
10から1ブロック読み出す。次にステップ11で数値
制御プログラムに記述された指令が、例えば図2の10
行目、60行目などの補間軸の組合せ指令かどうかを判
別し、補間軸の組合せ指令であれば、ステップ12で補
間処理起動管理部14に可動軸の制御可不可および現在
処理を実行していない補間処理部がどれであるかを問い
合わせてその番号を数値制御プログラム解析処理部の内
部記憶領域に記憶しておく。ステップ13では、ステッ
プ12の結果数値制御プログラムで指令された可動軸が
制御可能である場合は次のステップ14に進む。ステッ
プ14では、図2の行番号420のSTOP指令まで数
値制御プログラムを実行したかどうかを判別し、終了で
なければステップ10に進み数値制御プログラムの次の
ブロックを実行する。終了であればステップ15で数値
制御プログラム解析処理部の処理の終了を解析処理部起
動管理部12aに通知して、数値制御プログラム解析処
理を終了する。また、ステップ13で可動軸が既に制御
中である場合にはステップ16でエラーとしてステップ
15で処理を終了する。
【0028】ステップ10で補間の組合せ指令でない場
合は、ステップ20に進み、ステップ20では、たとえ
ば図2の30行目、40行目などの移動指令かどうかを
判別し、移動指令であれば、ステップ21に進む、ステ
ップ21では数値制御プログラムの内容から移動量など
の可動軸の移動情報を取り出し、次にステップ22で、
ステップ12で記憶した補間処理部15a〜15nのい
ずれに解析結果を出力するかの情報を取り出し、その補
間処理部に対して移動情報を出力し、ステップ13に進
む。
合は、ステップ20に進み、ステップ20では、たとえ
ば図2の30行目、40行目などの移動指令かどうかを
判別し、移動指令であれば、ステップ21に進む、ステ
ップ21では数値制御プログラムの内容から移動量など
の可動軸の移動情報を取り出し、次にステップ22で、
ステップ12で記憶した補間処理部15a〜15nのい
ずれに解析結果を出力するかの情報を取り出し、その補
間処理部に対して移動情報を出力し、ステップ13に進
む。
【0029】ステップ20で移動指令でない場合には、
ステップ30に進み、例えば図6の行番号140の並列
処理開始指令であるかどうかを判別し、並列処理開始指
令であればステップ31に進む。ステップ31では、並
列処理開始指令以降からたとえば図6の行番号360の
並列処理終了指令までの間で、たとえば図6の行番号2
00の並列処理先頭指令の2つめ以降を数値制御プログ
ラムから検索する。次にステップ32では、並列処理先
頭指令があるかどうかステップ31の結果を判別し、並
列処理指令があればステップ33に進み、なければステ
ップ13に進む。ステップ33では、解析処理部起動管
理部12aにスレーブの数値制御プログラム解析処理部
17aまたは17b〜17nを、ステップ31で検索し
た並列処理先頭指令の箇所から起動するように要求す
る。ここで、ステップ31で、2つめ以降の並列処理先
頭指令を検索するのは、1つめの並列処理先頭指令から
の各ブロックは、マスタの数値制御プログラム解析処理
部16で処理を実行するためである。
ステップ30に進み、例えば図6の行番号140の並列
処理開始指令であるかどうかを判別し、並列処理開始指
令であればステップ31に進む。ステップ31では、並
列処理開始指令以降からたとえば図6の行番号360の
並列処理終了指令までの間で、たとえば図6の行番号2
00の並列処理先頭指令の2つめ以降を数値制御プログ
ラムから検索する。次にステップ32では、並列処理先
頭指令があるかどうかステップ31の結果を判別し、並
列処理指令があればステップ33に進み、なければステ
ップ13に進む。ステップ33では、解析処理部起動管
理部12aにスレーブの数値制御プログラム解析処理部
17aまたは17b〜17nを、ステップ31で検索し
た並列処理先頭指令の箇所から起動するように要求す
る。ここで、ステップ31で、2つめ以降の並列処理先
頭指令を検索するのは、1つめの並列処理先頭指令から
の各ブロックは、マスタの数値制御プログラム解析処理
部16で処理を実行するためである。
【0030】ステップ30で、並列処理開始指令でない
場合は、ステップ40に進み、たとえば図6の行番号1
50の並列処理の開始マークかどうかを判別し、並列処
理開始マークであればステップ41に進み、並列処理中
フラグがオンであるかどうかを判別する。もし、並列処
理中フラグがオンでなければ、図6の(b)−(1)の
マスタの数値制御プログラム解析処理部で実行する並列
実行範囲の先頭ブロックであるため、そのブロック以降
の数値制御プログラムの処理が並列処理中であることを
示すために並列処理中フラグをオンし、ステップ13に
進む。もし、ステップ41で並列処理中フラグがオンで
あれば、並列実行範囲の最後のブロックの次のブロック
であり、並列処理区間が終了する必要があり、ステップ
43に進む、ステップ43では、数値制御プログラム内
のたとえば図6の行番号360の並列処理終了指令を検
索し、次に実行ブロック箇所を並列処理終了指令の次の
ブロックとする。次にステップ45で、スレーブの数値
制御プログラム解析処理部17の処理終了を待ち、全て
の並列処理が終了した時点で、ステップ13に進む。
場合は、ステップ40に進み、たとえば図6の行番号1
50の並列処理の開始マークかどうかを判別し、並列処
理開始マークであればステップ41に進み、並列処理中
フラグがオンであるかどうかを判別する。もし、並列処
理中フラグがオンでなければ、図6の(b)−(1)の
マスタの数値制御プログラム解析処理部で実行する並列
実行範囲の先頭ブロックであるため、そのブロック以降
の数値制御プログラムの処理が並列処理中であることを
示すために並列処理中フラグをオンし、ステップ13に
進む。もし、ステップ41で並列処理中フラグがオンで
あれば、並列実行範囲の最後のブロックの次のブロック
であり、並列処理区間が終了する必要があり、ステップ
43に進む、ステップ43では、数値制御プログラム内
のたとえば図6の行番号360の並列処理終了指令を検
索し、次に実行ブロック箇所を並列処理終了指令の次の
ブロックとする。次にステップ45で、スレーブの数値
制御プログラム解析処理部17の処理終了を待ち、全て
の並列処理が終了した時点で、ステップ13に進む。
【0031】ステップ40で、並列処理先頭指令でない
場合は、ステップ50に進み、例えば図6の行番号36
0の並列処理終了指令かどうかを判別する。並列処理終
了指令であれば、ステップ44に進む。
場合は、ステップ50に進み、例えば図6の行番号36
0の並列処理終了指令かどうかを判別する。並列処理終
了指令であれば、ステップ44に進む。
【0032】ステップ50で並列処理終了指令でない場
合は、数値制御プログラムに誤った記述がなされている
ものとして本実施例では、ステップ200でエラーとし
てステップ15に進み処理を終了している。
合は、数値制御プログラムに誤った記述がなされている
ものとして本実施例では、ステップ200でエラーとし
てステップ15に進み処理を終了している。
【0033】次に、図1のスレーブの数値制御プログラ
ム解析処理部17a〜17nの動作について図5のフロ
ーチャートを用いて詳しく説明する。ただし、説明を簡
単にするために速度の指令については説明を省略する。
ム解析処理部17a〜17nの動作について図5のフロ
ーチャートを用いて詳しく説明する。ただし、説明を簡
単にするために速度の指令については説明を省略する。
【0034】ステップ10からステップ16、ステップ
20からステップ22、ステップ40からステップ4
2、ステップ50、ステップ200は、図4と同様であ
るので説明を省略する。ただし、スレーブの数値制御プ
ログラム解析処理部17a〜17nの処理は、数値制御
プログラムの先頭から開始するのではなく、解析処理部
起動管理12aから指示された箇所、具合的には、並列
処理先頭指令の箇所から開始する。また、スレーブの数
値制御プログラム解析処理部17は、たとえば図2の
(a)−(2)または(a)−(3)の並列処理区間の
みの実行となるので図4と異なり、ステップ13、ステ
ップ22、ステップ42のつぎは、ステップ10に進
む。
20からステップ22、ステップ40からステップ4
2、ステップ50、ステップ200は、図4と同様であ
るので説明を省略する。ただし、スレーブの数値制御プ
ログラム解析処理部17a〜17nの処理は、数値制御
プログラムの先頭から開始するのではなく、解析処理部
起動管理12aから指示された箇所、具合的には、並列
処理先頭指令の箇所から開始する。また、スレーブの数
値制御プログラム解析処理部17は、たとえば図2の
(a)−(2)または(a)−(3)の並列処理区間の
みの実行となるので図4と異なり、ステップ13、ステ
ップ22、ステップ42のつぎは、ステップ10に進
む。
【0035】ステップ40からの並列処理先頭指令の処
理のステップ41までは、マスタの数値制御プログラム
解析処理部16とまったく同様である。ステップ41の
判別で、並列処理中フラグがオンでなければ、図2の
(a)−(2)または(a)−(3)のスレーブの数値
制御プログラム解析処理部17a〜17nで実行する並
列実行範囲の先頭ブロックであるため、以下の処理が並
列処理中であることを示すために並列処理中フラグをオ
ンし、ステップ10に進む。もし、ステップ41で並列
処理中フラグがオンであれば、並列実行範囲の最後のブ
ロックの次のブロックであり、並列処理区間が終了する
必要があり、ステップ70に進む、ステップ70では、
マスタの数値制御プログラム解析処理部16に並列運転
の終了を通知し、ステップ71で解析処理部起動管理1
2aに並列運転の終了を通知して処理を終了する。
理のステップ41までは、マスタの数値制御プログラム
解析処理部16とまったく同様である。ステップ41の
判別で、並列処理中フラグがオンでなければ、図2の
(a)−(2)または(a)−(3)のスレーブの数値
制御プログラム解析処理部17a〜17nで実行する並
列実行範囲の先頭ブロックであるため、以下の処理が並
列処理中であることを示すために並列処理中フラグをオ
ンし、ステップ10に進む。もし、ステップ41で並列
処理中フラグがオンであれば、並列実行範囲の最後のブ
ロックの次のブロックであり、並列処理区間が終了する
必要があり、ステップ70に進む、ステップ70では、
マスタの数値制御プログラム解析処理部16に並列運転
の終了を通知し、ステップ71で解析処理部起動管理1
2aに並列運転の終了を通知して処理を終了する。
【0036】ステップ40で、並列処理先頭指令でない
場合は、ステップ50に進み、例えば図6の行番号36
0の並列処理終了指令かどうかを判別する。並列処理終
了指令であれば、ステップ70に進む。
場合は、ステップ50に進み、例えば図6の行番号36
0の並列処理終了指令かどうかを判別する。並列処理終
了指令であれば、ステップ70に進む。
【0037】ステップ50で並列処理終了指令でない場
合は、数値制御プログラムに誤った記述がなされている
ものとして本実施例では、エラーとして処理を終了して
いる。
合は、数値制御プログラムに誤った記述がなされている
ものとして本実施例では、エラーとして処理を終了して
いる。
【0038】実施例2.図6は、第2の発明の数値制御
装置の一実施例を説明したブロック図であり、ここでは
可動軸が6軸の場合の例を示している。軸制御回路4、
サーボユニット5a〜5n、モータ6a〜6n、数値制
御プログラム格納メモリ10、外部機械操作盤13、補
間処理部起動管理14、補間処理部15は図1と同様で
あり説明を省略する。
装置の一実施例を説明したブロック図であり、ここでは
可動軸が6軸の場合の例を示している。軸制御回路4、
サーボユニット5a〜5n、モータ6a〜6n、数値制
御プログラム格納メモリ10、外部機械操作盤13、補
間処理部起動管理14、補間処理部15は図1と同様で
あり説明を省略する。
【0039】12bは解析処理部起動管理部、13は外
部機械操作盤、19a〜19nは数値制御プログラム解
析部である。
部機械操作盤、19a〜19nは数値制御プログラム解
析部である。
【0040】解析処理部起動管理部12bは、外部機械
操作盤13からの外部起動信号により数値制御プログラ
ム解析部19a〜19nのうち1つをマスタとして起動
する。また、数値制御プログラム解析処理部19は、前
記数値制御プログラム格納メモリ10に記憶された数値
制御プログラム1aから1nのうち解析処理部起動管理
12bから指示された数値制御プログラムを読みとり、
可動軸の移動指令や補間の組合せ指令など、数値制御プ
ログラムに記述された内容を解析する。さらに、解析処
理部起動管理部12bは、数値制御プログラム解析処理
部19a〜19nからの解析処理起動要求を受け取り、
数値制御プログラム解析処理部19のうち処理を実行し
ていない数値制御プログラム解析処理部19をスレーブ
の数値制御プログラム解析処理部として起動する。
操作盤13からの外部起動信号により数値制御プログラ
ム解析部19a〜19nのうち1つをマスタとして起動
する。また、数値制御プログラム解析処理部19は、前
記数値制御プログラム格納メモリ10に記憶された数値
制御プログラム1aから1nのうち解析処理部起動管理
12bから指示された数値制御プログラムを読みとり、
可動軸の移動指令や補間の組合せ指令など、数値制御プ
ログラムに記述された内容を解析する。さらに、解析処
理部起動管理部12bは、数値制御プログラム解析処理
部19a〜19nからの解析処理起動要求を受け取り、
数値制御プログラム解析処理部19のうち処理を実行し
ていない数値制御プログラム解析処理部19をスレーブ
の数値制御プログラム解析処理部として起動する。
【0041】図7は図6の解析処理部起動管理部12b
の動作についてのフローチャートである。以下、図のフ
ローチャートにより解析処理部起動管理部12bの動作
について説明する。
の動作についてのフローチャートである。以下、図のフ
ローチャートにより解析処理部起動管理部12bの動作
について説明する。
【0042】外部機械操作盤13からの外部起動信号ま
たは、数値制御プログラム解析処理部19からの起動指
示により解析処理部起動管理部12bの処理が開始さ
れ、ステップ80で現在処理を実行していない数値制御
プログラム解析処理部19を検索し、ステップ81で現
在処理を実行していない数値制御プログラム解析処理部
19があればステップ82で数値制御プログラム解析処
理部からの起動要求かどうかを判別し、数値制御プログ
ラム解析処理部19からの起動要求であれば、ステップ
83に進み、検索された数値制御プログラム解析処理部
19をスレーブとして起動を指示する。また、ステップ
83で外部機械操作盤13からの外部起動信号による起
動であれば、ステップ84に進み、数値制御プログラム
解析処理部19をマスタとして起動する。ステップ81
で数値制御プログラム解析処理部19がなければエラー
として処理を終了する。
たは、数値制御プログラム解析処理部19からの起動指
示により解析処理部起動管理部12bの処理が開始さ
れ、ステップ80で現在処理を実行していない数値制御
プログラム解析処理部19を検索し、ステップ81で現
在処理を実行していない数値制御プログラム解析処理部
19があればステップ82で数値制御プログラム解析処
理部からの起動要求かどうかを判別し、数値制御プログ
ラム解析処理部19からの起動要求であれば、ステップ
83に進み、検索された数値制御プログラム解析処理部
19をスレーブとして起動を指示する。また、ステップ
83で外部機械操作盤13からの外部起動信号による起
動であれば、ステップ84に進み、数値制御プログラム
解析処理部19をマスタとして起動する。ステップ81
で数値制御プログラム解析処理部19がなければエラー
として処理を終了する。
【0043】図8は数値制御プログラム解析処理部19
の動作についてのフローチャートである。以下、図のフ
ローチャートにより数値制御プログラム解析処理部19
の動作について説明する。
の動作についてのフローチャートである。以下、図のフ
ローチャートにより数値制御プログラム解析処理部19
の動作について説明する。
【0044】ステップ10からステップ16、ステップ
20からステップ22、ステップ30からステップ3
2、ステップ40からステップ42、ステップ50、ス
テップ200は、図7と同様であるので説明を省略す
る。ただし、数値制御プログラム解析処理部19a〜1
9nの処理はスレーブとして起動された場合、数値制御
プログラムの先頭から開始するのではなく、解析処理部
起動管理部12bから指示された箇所、具合的には、並
列処理先頭指令の箇所から開始する。
20からステップ22、ステップ30からステップ3
2、ステップ40からステップ42、ステップ50、ス
テップ200は、図7と同様であるので説明を省略す
る。ただし、数値制御プログラム解析処理部19a〜1
9nの処理はスレーブとして起動された場合、数値制御
プログラムの先頭から開始するのではなく、解析処理部
起動管理部12bから指示された箇所、具合的には、並
列処理先頭指令の箇所から開始する。
【0045】ステップ30からの並列処理開始指令の処
理で、ステップ32の並列処理先頭の検索結果の判別
で、並列処理先頭指令がある場合は、ステップ90に進
み、ステップ90では、解析処理部起動管理部12b
に、スレーブとして数値制御プログラム解析処理部19
を起動する要求を出力する。
理で、ステップ32の並列処理先頭の検索結果の判別
で、並列処理先頭指令がある場合は、ステップ90に進
み、ステップ90では、解析処理部起動管理部12b
に、スレーブとして数値制御プログラム解析処理部19
を起動する要求を出力する。
【0046】また、ステップ40からの並列処理先頭指
令の処理のステップ41で並列処理中フラグがオンであ
るかどうかを判別し、もし、並列処理中フラグがオンで
あり、図6の(a)−(1)〜(a)−(3)など並列
実行範囲の最後のブロックの次のブロックであり並列処
理区間が終了する必要があり、ステップ100に進む、
ステップ100では、該数値制御プログラム解析部19
がマスターとして起動されているかどうかを判別し、マ
スターの処理であれば、次のステップ43に進む。ステ
ップ43では、数値制御プログラム内の例えば図2の行
番号360の並列処理終了指令を検索し、次のブロック
を並列処理終了指令の次のブロックとなるようにする。
次にステップ101で、他のスレーブとして起動されて
いる数値制御プログラム解析部19の処理終了を待ち、
全ての並列処理が終了した時点でステップ14に進む。
令の処理のステップ41で並列処理中フラグがオンであ
るかどうかを判別し、もし、並列処理中フラグがオンで
あり、図6の(a)−(1)〜(a)−(3)など並列
実行範囲の最後のブロックの次のブロックであり並列処
理区間が終了する必要があり、ステップ100に進む、
ステップ100では、該数値制御プログラム解析部19
がマスターとして起動されているかどうかを判別し、マ
スターの処理であれば、次のステップ43に進む。ステ
ップ43では、数値制御プログラム内の例えば図2の行
番号360の並列処理終了指令を検索し、次のブロック
を並列処理終了指令の次のブロックとなるようにする。
次にステップ101で、他のスレーブとして起動されて
いる数値制御プログラム解析部19の処理終了を待ち、
全ての並列処理が終了した時点でステップ14に進む。
【0047】ステップ50からの並列処理終了指令の処
理では、ステップ110で、該数値制御プログラム解析
部19がマスターとして起動されているかどうかを判別
しマスターとして起動されている場合は、ステップ10
2に進む。マスターとして起動されていないの場合は、
ステップ111に進み、スレーブとしての数値制御プロ
グラム解析処理部19の処理終了をマスタとして起動さ
れている数値制御プログラム解析処理部19に処理の終
了を通知し、ステップ120に進む。
理では、ステップ110で、該数値制御プログラム解析
部19がマスターとして起動されているかどうかを判別
しマスターとして起動されている場合は、ステップ10
2に進む。マスターとして起動されていないの場合は、
ステップ111に進み、スレーブとしての数値制御プロ
グラム解析処理部19の処理終了をマスタとして起動さ
れている数値制御プログラム解析処理部19に処理の終
了を通知し、ステップ120に進む。
【0048】ステップ13で数値制御プログラムの終了
と判別された場合はステップ120に進み、解析処理部
起動管理12bに処理の終了を通知し、処理を終了す
る。
と判別された場合はステップ120に進み、解析処理部
起動管理12bに処理の終了を通知し、処理を終了す
る。
【0049】図9は、本発明による数値制御プログラム
の一例を示したものである。図において、説明のために
数値制御プログラムに各行に行番号を付け、行番号19
0から行番号560ないし行番号310から行番号45
0までは、見やすくするために段落をずらしている。ま
た、各行は1つの指令の区切りであり、以下この指令の
単位をブロック呼ぶ。また、図6の数値制御プログラム
解析処理部19は、マスタ、スレーブいずれの場合でも
処理できるため、図9のように数値制御プログラムの
(a)の部分の並列動作中にさらに、行番号300の並
列制御開始指令があった場合も上記と同様の処理とな
る。
の一例を示したものである。図において、説明のために
数値制御プログラムに各行に行番号を付け、行番号19
0から行番号560ないし行番号310から行番号45
0までは、見やすくするために段落をずらしている。ま
た、各行は1つの指令の区切りであり、以下この指令の
単位をブロック呼ぶ。また、図6の数値制御プログラム
解析処理部19は、マスタ、スレーブいずれの場合でも
処理できるため、図9のように数値制御プログラムの
(a)の部分の並列動作中にさらに、行番号300の並
列制御開始指令があった場合も上記と同様の処理とな
る。
【0050】なお、上記実施例では、EIA規格の数値
制御プログラムでない場合について示したが、EIA規
格の数値制御プログラムなど他の言語でも同様である。
制御プログラムでない場合について示したが、EIA規
格の数値制御プログラムなど他の言語でも同様である。
【0051】
【発明の効果】第1の発明の数値制御装置によれば、マ
スタの数値制御プログラム解析部は、数値制御プログラ
ムに指令された並列処理の開始指令により実行中の数値
制御プログラム番号と並列処理先頭指令を解析部起動管
理部に指示し、解析部起動管理部は現在処理していない
スレーブの数値制御プログラム解析部に起動を通知する
ようにし、さらに数値制御プログラム解析部は数値制御
プログラムで指令された任意の可動軸の補間指令を補間
処理部起動管理部に指示し、補間処理部起動管理部が可
動軸の制御可不可状態と現在処理を実行していない補間
処理部を数値制御プログラム解析部に通知するようにし
たので、1つの数値制御プログラムで複数の補間する可
動軸の組み合せを制御することができ、数値制御プログ
ラム作成者は、軸の待ち合わせや補間する可動軸の組み
合わ指令などの制御指令のタイミングを考慮しながら系
統毎の数値制御プログラムを作成する必要がなく、数値
制御プログラム作成時の負担を軽減できる。
スタの数値制御プログラム解析部は、数値制御プログラ
ムに指令された並列処理の開始指令により実行中の数値
制御プログラム番号と並列処理先頭指令を解析部起動管
理部に指示し、解析部起動管理部は現在処理していない
スレーブの数値制御プログラム解析部に起動を通知する
ようにし、さらに数値制御プログラム解析部は数値制御
プログラムで指令された任意の可動軸の補間指令を補間
処理部起動管理部に指示し、補間処理部起動管理部が可
動軸の制御可不可状態と現在処理を実行していない補間
処理部を数値制御プログラム解析部に通知するようにし
たので、1つの数値制御プログラムで複数の補間する可
動軸の組み合せを制御することができ、数値制御プログ
ラム作成者は、軸の待ち合わせや補間する可動軸の組み
合わ指令などの制御指令のタイミングを考慮しながら系
統毎の数値制御プログラムを作成する必要がなく、数値
制御プログラム作成時の負担を軽減できる。
【0052】また数値制御プログラム作成時に、機械の
系統を意識する必要がなく、制御を行う可動軸のみに注
目して数値制御プログラムを作成することができ、数値
制御プログラム作成者の負担を軽減することができる。
系統を意識する必要がなく、制御を行う可動軸のみに注
目して数値制御プログラムを作成することができ、数値
制御プログラム作成者の負担を軽減することができる。
【0053】第2の発明によれば、数値制御プログラム
解析部は、数値制御プログラムに指令された並列処理の
開始指令により実行中の数値制御プログラム番号と並列
処理先頭指令を解析部起動管理部に指示し、解析処理起
動管理は、外部機械操作盤などからの外部信号または、
数値制御プログラム解析部からの起動指示により現在処
理中でない数値制御プログラム解析部を起動し、さらに
数値制御プログラム解析部は数値制御プログラムで指令
された任意の可動軸の補間指令を補間処理部起動管理部
に指示し、補間処理部起動管理部が可動軸の制御可不可
状態と現在処理を実行していない補間処理部を数値制御
プログラム解析部に通知するようにしたので、あらかじ
め各可動軸の組み合わせや、数値制御プログラムを系統
単位に決めることができないような機械の制御を可能と
し、1つの数値制御プログラムで複数の補間する可動軸
の組み合せを制御することができ、また、複数の数値制
御プログラムを同時に制御できるため、1台の数値制御
装置で多くの可動軸を制御できるため利用範囲を拡大で
き、数値制御プログラム作成も容易になる。
解析部は、数値制御プログラムに指令された並列処理の
開始指令により実行中の数値制御プログラム番号と並列
処理先頭指令を解析部起動管理部に指示し、解析処理起
動管理は、外部機械操作盤などからの外部信号または、
数値制御プログラム解析部からの起動指示により現在処
理中でない数値制御プログラム解析部を起動し、さらに
数値制御プログラム解析部は数値制御プログラムで指令
された任意の可動軸の補間指令を補間処理部起動管理部
に指示し、補間処理部起動管理部が可動軸の制御可不可
状態と現在処理を実行していない補間処理部を数値制御
プログラム解析部に通知するようにしたので、あらかじ
め各可動軸の組み合わせや、数値制御プログラムを系統
単位に決めることができないような機械の制御を可能と
し、1つの数値制御プログラムで複数の補間する可動軸
の組み合せを制御することができ、また、複数の数値制
御プログラムを同時に制御できるため、1台の数値制御
装置で多くの可動軸を制御できるため利用範囲を拡大で
き、数値制御プログラム作成も容易になる。
【図1】第1の発明による数値制御装置の一実施例を示
すブロック図である。
すブロック図である。
【図2】第1の発明による数値制御プログラムの一実施
例である。
例である。
【図3】図1の解析処理部起動管理12aの動作を説明
したフローチャートである。
したフローチャートである。
【図4】図1のマスタの数値制御プログラム解析処理部
16の動作を説明したフローチャートである。
16の動作を説明したフローチャートである。
【図5】図1のスレーブの数値制御プログラム解析処理
部17の動作を説明したフローチャートである。
部17の動作を説明したフローチャートである。
【図6】第2の発明による数値制御装置の一実施例を示
すブロック図である。
すブロック図である。
【図7】図6の解析処理部起動管理12bの動作を説明
したフローチートである。
したフローチートである。
【図8】図10の数値制御プログラム解析処理部19の
動作を説明したフローチャートである。
動作を説明したフローチャートである。
【図9】第2の発明による数値制御プログラムの一実施
例である。
例である。
【図10】従来の数値制御装置を示す図である。
【図11】工作機械の可動軸の構成を示す図である。
【図12】従来の数値制御プログラムの例である。
【図13】自動組立機などの可動軸の構成を示す図であ
る。
る。
1 数値制御プログラム 2 第1系統の数値演算部 3 第2系統の数値演算部 4 軸制御回路 5a〜5n サーボユニット 6a〜6n モータ 10 数値制御プログラムの格納メモリ 12,12a,12b 解析処理部起動管理部 13 外部機械操作盤 14 補間処理部起動管理部 15 補間処理部 16 マスタの数値制御プログラム解析処理部 17 スレーブの数値制御プログラム解析処理部 19 数値制御プログラム解析処理部
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 9064−3H G05B 19/403 X
Claims (2)
- 【請求項1】 複数の補間処理手段と、数値制御プログ
ラムを解析して前記補間処理手段に補間指令を出力する
とともに、前記数値制御プログラムに指定された可動軸
の補間の組み合わせを同時に複数制御する並列処理の開
始指令が指定されている場合に実行中の数値制御プログ
ラム番号と並列処理先頭指令とを並列処理起動指令とし
て出力するマスタの数値制御プログラム解析処理手段
と、前記数値制御プログラムを解析して前記補間処理手
段に補間指令を出力するスレーブの数値制御プログラム
解析手段と、外部信号により前記マスタの数値制御プロ
グラム解析手段を起動し、前記マスタの数値制御プログ
ラム解析処理手段からの前記並列処理起動指令を入力し
て、前記スレーブの数値制御プログラム解析処理手段の
うち解析処理を実行していないスレーブの数値制御プロ
グラム解析処理手段に前記マスタの数値制御プログラム
解析処理手段と並列処理をするために起動を指令する解
析処理部起動管理手段と、前記マスタの数値制御プログ
ラム解析処理手段または前記スレーブの数値制御プログ
ラム解析処理手段からの可動軸の補間組み合わせ指令を
受け取り、前記複数の補間処理手段のうち補間処理を実
行していない補間処理手段と可動軸の制御可または制御
不可状態を前記マスタの数値制御プログラム解析処理手
段または前記スレーブの数値制御プログラム解析処理手
段に通知する補間処理部起動管理手段とを備えたことを
特徴とする数値制御装置。 - 【請求項2】 複数の補間処理手段と、数値制御プログ
ラムを解析して前記補間処理手段に補間指令を出力する
とともに、数値制御プログラムに指定された可動軸の補
間の組み合わせを同時に複数制御する並列処理の開始指
令が指定されている場合に実行中の数値制御プログラム
番号と並列処理先頭指令とを並列処理起動指令として出
力する少なくとも2つ以上の数値制御プログラム解析処
理手段と、外部信号または前記数値制御プログラム解析
処理手段からの可動軸の補間の組み合わせを同時に複数
制御する前記並列処理起動指令を入力して、前記数値制
御プログラム解析処理手段のうち解析処理を実行してい
ない前記数値制御プログラム解析処理手段に対して前記
並列処理起動指令を出力した前記数値制御プログラム解
析処理手段と並列処理をする起動を指令する解析処理部
起動管理手段と、前記数値制御プログラム解析処理手段
からの可動軸の補間組み合わせ指令を受け取り、前記複
数の補間処理手段のうち補間処理を実行していない補間
処理手段と軸名称に対応する可動軸と前記可動軸の制御
可または制御不可状態を前記数値制御プログラム解析処
理手段に通知する補間処理部起動管理手段とを備えたこ
とを特徴とする数値制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP23848093A JP2887176B2 (ja) | 1993-09-24 | 1993-09-24 | 数値制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP23848093A JP2887176B2 (ja) | 1993-09-24 | 1993-09-24 | 数値制御装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0793015A true JPH0793015A (ja) | 1995-04-07 |
JP2887176B2 JP2887176B2 (ja) | 1999-04-26 |
Family
ID=17030874
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP23848093A Expired - Fee Related JP2887176B2 (ja) | 1993-09-24 | 1993-09-24 | 数値制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2887176B2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008016061A (ja) * | 2007-10-01 | 2008-01-24 | Citizen Holdings Co Ltd | 多軸多系統nc旋盤の制御方法 |
CN101833302A (zh) * | 2009-03-11 | 2010-09-15 | 发那科株式会社 | 具有轴重新配置功能的数值控制器 |
-
1993
- 1993-09-24 JP JP23848093A patent/JP2887176B2/ja not_active Expired - Fee Related
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008016061A (ja) * | 2007-10-01 | 2008-01-24 | Citizen Holdings Co Ltd | 多軸多系統nc旋盤の制御方法 |
CN101833302A (zh) * | 2009-03-11 | 2010-09-15 | 发那科株式会社 | 具有轴重新配置功能的数值控制器 |
JP2010211566A (ja) * | 2009-03-11 | 2010-09-24 | Fanuc Ltd | 軸の再構成機能を有する数値制御装置 |
US7928682B2 (en) | 2009-03-11 | 2011-04-19 | Fanuc Ltd | Numerical controller having axis reconfiguration function |
Also Published As
Publication number | Publication date |
---|---|
JP2887176B2 (ja) | 1999-04-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4119372B2 (ja) | 数値制御方法及び数値制御システム | |
JP2880590B2 (ja) | 産業用ロボットの同期制御方法 | |
EP0782056B1 (en) | Numerically controlled machine tool and method | |
KR100347297B1 (ko) | 수치제어방법 | |
US4607327A (en) | Modular numerical control system with automatic programming function | |
JP2998473B2 (ja) | 数値制御工作機械 | |
JP2735209B2 (ja) | 数値制御装置 | |
JPH09179621A (ja) | 数値制御装置における記憶手段アクセス制御方法および数値制御装置 | |
JPH0793015A (ja) | 数値制御装置 | |
EP1394642B1 (en) | Multi-system numerical control device | |
US8224478B2 (en) | Numerical controller | |
JP3180805B2 (ja) | 数値制御工作機械 | |
JPH06282318A (ja) | 数値制御工作機械 | |
JP3660038B2 (ja) | 数値制御装置 | |
JP2646026B2 (ja) | 多系統工作機械の制御方法 | |
JP2875801B2 (ja) | Dnc装置 | |
JP2779796B2 (ja) | 数値制御装置 | |
JPH1195825A (ja) | 数値制御プログラムの実行方法 | |
JP4208600B2 (ja) | Nc工作機械 | |
JPH02300801A (ja) | 数値制御装置 | |
JPH01295306A (ja) | 数値制御装置 | |
JP2694639B2 (ja) | 数値制御装置 | |
JPH0969007A (ja) | 複数ロボット再生制御システム | |
JPH0883113A (ja) | Nc工作機械の制御装置 | |
JP2694638B2 (ja) | 数値制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |