JP2779797B2 - Numerical control unit - Google Patents

Numerical control unit

Info

Publication number
JP2779797B2
JP2779797B2 JP61198248A JP19824886A JP2779797B2 JP 2779797 B2 JP2779797 B2 JP 2779797B2 JP 61198248 A JP61198248 A JP 61198248A JP 19824886 A JP19824886 A JP 19824886A JP 2779797 B2 JP2779797 B2 JP 2779797B2
Authority
JP
Japan
Prior art keywords
control
unit
program
data
output
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 - Lifetime
Application number
JP61198248A
Other languages
Japanese (ja)
Other versions
JPS6354603A (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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP61198248A priority Critical patent/JP2779797B2/en
Priority to KR1019870007064A priority patent/KR910002317B1/en
Priority to US07/069,336 priority patent/US4862379A/en
Priority to DE19873722084 priority patent/DE3722084A1/en
Publication of JPS6354603A publication Critical patent/JPS6354603A/en
Application granted granted Critical
Publication of JP2779797B2 publication Critical patent/JP2779797B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明は、数値制御装置にかかるものであり、特に、
複数の主軸を含む被制御軸の制御を行う数値制御装置に
関するものである。 [従来の技術] 工作物に対する工具の位置を数値情報で指令する数値
制御装置は、生産性の向上、省力化、管理の徹底などの
利点があるため、各種の工作機械に適用され、広く利用
されている。 第2図には、従来の数値制御装置の一例が示されてい
る。この図において、制御部(50)には、中央処理装置
(以下、「CPU」という。)(52)が含まれており、ま
た、データ入出力部(54)、信号入出力部(56)及びパ
ルス発生器用インタフェース(66)が各々接続されてい
る。このパルス発生器用インタフェース(66)には、手
動操作用パルス発生器(68)が接続されている。 制御部(50)には、更に、演算部(58)、記憶部(6
0)、駆動部(62)が各々接続されており、駆動部(6
2)には、サーボモータ群(64)が接続されている。 これらのうち、データ入出力部(54)は、図示しない
外部データ入出力装置との間で加工データ、特に加工プ
ログラムの入出力を行うためのものであり、信号入出力
部(56)は、起動、停止などの制御データの入出力を行
うためのものである。また、手動操作用パルス発生器
(68)は、必要に応じて、制御対象の駆動量を手動で指
令して駆動部の制御軸の回転量の制御を行い、被制御機
械の位置調整をするためのものである。即ち、手動操作
用パルス発生器(68)は、その回転数に応じたパルスを
発生し、当該パルスと、数値制御装置内で予め選択され
ている倍率を乗じた値に相当する移動量または回転角度
によって制御軸の回転量の駆動制御が行われるようにな
っている。具体的には、手動操作用パルス発生器(68)
から指令を与えると、駆動部の制御軸が指令パルスに相
当する回転量で駆動を開始する。また、駆動部の駆動中
に被制御機械の位置に誤差が生じた場合にも、手動操作
用パルス発生器(68)から指令を与えることにより、制
御軸の回転量を制御して被制御機械の位置を調整するこ
とができる。この制御量は、X,Y,Zの三軸のいずれかに
投入されるが、全部に投入される場合もある。 次に、記憶部(60)には、データエリア(60A)とプ
ログラムエリア(60B)とが設けらている。データ入出
力部(54)から入力された加工データ及び加工プログラ
ムは、データエリア(60A)に格納され、信号入出力部
(56)から入力された制御データは、プログラムエリア
(60B)に格納されるようになっている。 次に、演算部(58)は、サーボモータ群(64)及び主
軸の制御に必要な演算を行うものであり、例えば、駆動
命令がベクトル速度で与えられたときに、その座標軸方
向の分解速度から所定時間の移動距離を求める補間など
の演算処理が行われる。 次に、駆動部(62)は、サーボモータ群(64)が、サ
ーボモータ(64A)、サーボモータ(64B)、サーボモー
タ(64C)の三個のサーボモータから構成されているこ
とに対応して、三個の駆動回路(62A)、(62B)、(62
C)から構成されている。 なお、サーボモータ群(64)は、実際には、旋盤やボ
ール盤等の工作機械の三軸の駆動部分のサーボモータに
対応するものである。 次に、上記装置の動作について説明する。加工制御を
行うために必要なデータは、データ入出力部(54)、信
号入出力部(56)によって外部装置から入力される。こ
れらのデータは、制御部(50)によって記憶部(60)の
データエリア(60A)、プログラムエリア(60B)に各々
格納される。 次に、制御部(50)は、プログラムエリア記憶部(60
B)に格納されたプログラムやデータに基づき、データ
エリア記憶部(60A)に格納されたデータやプログラム
から演算部(58)により上述した補間などの演算を行っ
て、駆動部(62)に必要な駆動指令を行う。 このとき、パルス発生器用インター0フェース(66)
を介して手動操作用パルス発生器(68)からパルス制御
部(50)に入力されると、パルスと予め選択されている
倍率の乗算値に相当する移動量又は回転量によって、制
御軸の駆動制御が行われる。 これにより、サーボモータ群(64)が駆動され、入力
データに従って所要の加工が実行される。 以上のように、主軸、サーボモータ群(64)のサーボ
モータ(64A)、サーボモータ(64B)及びサーボモータ
(64C)は、独立して駆動されるのではなく、全体が一
体になって駆動される。 [発明が解決しようとする問題点] ところで、以上のような従来の数値制御装置では、全
体が記憶部(60)のプログラムエリア(60B)に格納さ
れた制御用のプログラムで動作し、駆動部(62)に接続
されたサーボモータ(64A)、サーボモータ(64B)、及
びサーボモータ(64C)を独立に駆動させることができ
ない。 例えば、サーボモータ(64A)をボール盤のドリル移
動に使用し、サーボモータ(64B)とサーボモータ(64
C)を旋盤に使用するというようなことができない。 このため、各機械ごとに第2図に示すような数値制御
装置を設ける必要がある。従って、多数の機械の数値制
御を行う場合には、多大の装置設備が必要となり、コス
ト的にも好ましくないという不都合がある。 本発明は、かかる点に鑑みてなされたものであり、複
数の機械を効率的に数値制御できるとともに、コスト的
にも有利な数値制御装置を提供することを、その目的と
するものである。 [問題点を解決するための手段] 本発明は、信号入出力部から入力された制御データ
と、記憶部に格納された制御プログラムと加工プログラ
ムとに基づいて、演算部で必要な演算を行い、制御部に
より制御対象の駆動部に必要な制御指令を与えるととも
に、手動操作用パルス発生部によって必要な制御対象の
駆動量制御を行う数値制御装置において、 加工データ及び加工プログラムを入出力するデータ入
出力部と、各々独立して制御データの入出力の可能な複
数の信号入出力部と、各々独立して制御対象の駆動の可
能な複数の駆動部と、各々独立してパルス発生の可能な
複数の手動操作用パルス発生部と、各々独立して実行可
能な複数の制御プログラムとを、一台の数値制御装置に
設けるとともに、前記加工データと前記制御データと前
記複数の制御プログラムとを参照することにより、前記
複数の信号入出力部と、前記複数の駆動部と、前記複数
の手動操作用パルス発生部と、前記複数の制御プログラ
ムとを、任意に組合せて任意の軸数の系統を形成する前
記記憶部に格納された系統制御手段とを設け、前記制御
部が、前記任意の軸数の系統毎の前記制御プログラムに
基づいて制御を行うことを特徴とする。 [作用] 本発明では、データ入出力部と、信号入出力部と、駆
動部と、手動操作用パルス発生部と、制御プログラム
と、系統制御手段とから主に構成されている。 ここで、信号入出力部と、駆動部と、手動操作用パル
ス発生部と、制御プログラムとは、一台の数値制御装置
に各々複数設けられている。 そして、信号入出力部は、各々独立して制御データの
入出力が可能である。駆動部は、各々独立して制御対象
の駆動が可能である。手動操作用パルス発生部は、各々
独立してパルス発生が可能である。制御プログラムは、
各々独立して実行が可能である。 系統制御手段は、記憶部に格納されたプログラムであ
り、加工データと制御データと複数の制御プログラムと
を参照することにより、前記複数の信号入出力部、駆動
部、手動操作用パルス発生部、制御プログラムを、任意
に組み合わせて任意の軸数の系統を形成する。 即ち、本発明では、一台の数値制御装置に、信号入出
力部、駆動部、手動操作用パルス発生部、制御プログラ
ムが、それぞれ複数設けられるとともに、これら各部が
系統制御手段によって前記各部を少なくとも1つ備えた
任意の軸数の系統にグループ分けされる。 また、系統制御手段は、記憶部に格納されたプログラ
ムであるため、ハードウェアの構成により系統数が制限
されることはない。言い換えれば、系統制御手段のプロ
グラムの処理内容を変更することによって、系統数の増
減が可能となる。 また、制御部は、グループ分けされた各系統毎の制御
プログラムに基づいて制御を行う。即ち、制御部は、グ
ループ分けされた各系統毎の制御プログラムに基づい
て、制御対象を駆動するための駆動部に必要な制御指令
を与えるが、このとき、制御部では各系統毎の制御プロ
グラムを同時に実行することはできず、いわゆるタスク
制御により各系統の中のいずれか一つの制御プログラム
が指定された系統順に実行されるため、各系統毎のデー
タの演算には時間的なズレが生じる。そこで、数値制御
装置の制御軸の同期性を保持するため、上記各系統毎に
演算されたデータは一括して別のタスクで出力及び実行
される。このようにして、制御部は、系統毎の各制御プ
ログラムを異なる入力条件で実行することが可能にな
り、多系統の制御を実現することができる。 従って、各グループ毎に構成される任意の軸数の系統
毎で、それぞれ統合された制御が行われる。 ここで、制御プログラムとは、加工プログラムを解析
して実行するためのプログラムをいい、例えば、C言
語、アセンブラ言語等のコンピュータ言語で記述された
もの、またはこれらをCPU上で実行可能な形式にしたも
のである。加工プログラムとは、被加工物を加工するた
めのプログラムをいい、いわゆるNCプログラム言語で記
述されている。 尚、演算部は、前記系統制御手段によって系統に組み
合わされた制御対象間で、補間の演算を行う。即ち、演
算部は、任意のグループ内の制御対象間で、補間の演算
を行うことになる。 [実施例] 以下、本発明の実施例を、添付図面を参照しながら詳
細に説明する。 第1図には、本発明にかかる数値制御装置の一実施例
が示されている。この図において、CPU(10)を含む制
御部(12)には、まずデータ入出力部(14)が接続され
ている。このデータ入出力部(14)は、第2図のデータ
入出力部(54)に対応し、加工プログラム及び加工デー
タを外部データ入出力装置(図示せず)との間で授受す
るものである。 次に、制御部(12)には、信号入出力装置(16)が接
続されている。この信号入出力装置(16)は、各々独立
して制御用データの入出力の可能な信号入出力部(16
A)、(16B)、(16C)によって構成されている。すな
わち、信号入出力部(16A)、(16B)、(16C)は、各
々が第2図の信号入出力部(56)と同様の機能を有す
る。 また、制御部(12)には、パルス発生器用インタフェ
ース部(46)が接続されている。このパルス発生器用イ
ンタフェース部(46)は、各々独立してパルス入出力の
可能な、パルス発生器用インタフェース(46A)、(46
B)、(46C)によって構成されている。すなわち、パル
ス発生器用インタフェース(46A)、(46B)、(46C)
は、各々が第2図のパルス発生器用インタフェース(6
6)と同様の機能を有する。そして、これらのパルス発
生器用インタフェース(46A)、(46B)、(46C)に
は、各々独立してパルス発生の可能な手動操作用パルス
発生器(48A)、(48B)、(48C)が各々接続されてい
る。 次に、制御部(12)には、演算部(18)が接続されて
いる。この演算部(18)は、上述したような補間その他
の演算を行うものである。 次に、制御部(12)には、記憶部(20)が接続されて
いる。この記憶部(20)は、プログラムエリア(20
A)、(20B)、(20C)を有している。これらのプログ
ラムエリア(20A)、(20B)、(20C)には、各々独立
して動作可能な制御プログラムが格納されている。すな
わち、プログラムエリア(20A)、(20B)、(20C)に
格納されている制御プログラムは、各々が第2図のプロ
グラムエリア(60B)に格納されているプログラムと同
様の機能を有し、各々独立して実行可能である。 更に、記憶部(20)には、データエリア(20D)が設
けられている。このデータエリア(20D)は、第2図の
データエリア(60A)と同様に、加工データ及び加工プ
ログラムを格納するものであるが、その他に、系統制御
手段がプログラミングされて格納されている。 次に、制御部(12)には、駆動部(22)、(24)、
(26)が各々接続されている。これらの駆動部(22)、
(24)、(26)は、各々独立して動作可能であり、第2
図の駆動部(62)と同様の機能を各々有する。但し、制
御できるのは、各々一軸である。 次に、駆動部(22)、(24)、(26)には、サーボモ
ータ(28)、(30)、(32)が各々接続されている。サ
ーボモータ(28)、(30)、(32)は、必ずしも同一の
機械のものとは限らず、二種類以上の機械のものでもよ
く、独立して動作可能である。 次に、上述したデータエリア(20D)に格納されてい
る系統制御手段について説明する。この系統制御手段の
実行は、制御部(12)で行われる。 第3図に示すように、まず、データ入出力部(14)お
よび信号入出力部(16)から入力されたデータと、プロ
グラムエリア(20A)ないし(20C)に格納されている制
御プログラムを参照して、いずれの制御プログラムを動
作させるかを決定する(ステップSA、SB、SC参照)。 次に、動作させる制御プログラムと、それに使用され
る制御データの入出力が行われる信号入出力部(16A)
ないし(16C)との対応を決定する(ステップSD参
照)。次に、動作させる制御プログラムト、パルス発生
が行われる手動操作用パルス発生器(48A)ないし(48
C)との対応を決定する(ステップSE参照)。更に、該
制御プログラムと、動作対象となる駆動部(22)ないし
(26)との対応を決定する(ステップSF参照)。 このように、系統制御手段は、要求される制御動作の
内容に従って、信号入出力部(16A)ないし(16C)、プ
ログラムエリア(20A)ないし(20C)、駆動部(22)な
いし(26)、手動操作用パルス発生器(48A)ないし(4
8C)をそれぞれ少なくとも1つ備えた任意の軸数の任意
のグループに分ける機能を有するものである。 次に、上記実施例の全体的動作について、種々の場合
を例にとって説明する。 ます、第4図を参照しながら、一軸の機械(34)、
(36)、(38)を各々独立して制御する場合について説
明する。なお、信号入出力部(16A)では、機械(34)
の制御データD(34)が入出力され、信号入出力部(16
B)では、機械(36)の制御データD(36)が入出力さ
れ、信号入出力部(16C)では、機械(38)の制御デー
タD(38)が入出力されるものとする。 また、手動操作用パルス発生器(48A)では、機械(3
4)に対するパルス発生が行われ、手動操作用パルス発
生器(48B)では、機械(36)に対するパルス発生が行
われ、手動操作用パルス発生器(48C)では、機械(3
8)に対するパルス発生が行われるものとする。 そして、プログラムエリア(20A)ないし(20C)に、
機械(34)ないし(38)の制御プログラムが各々格納さ
れているものとする。 この場合には、上述したデータエリア(20D)の系統
制御手段により、信号入出力部(16A)と、プログラム
エリア(20A)と、手動操作用パルス発生器(48A)と、
駆動部(22)とが系統づけられ、信号入出力部(16B)
と、プログラムエリア(20B)と、手動操作用パルス発
生器(48B)と、駆動部(24)とが系統づけられ、信号
入出力部(16C)と、プログラムエリア(20C)と、手動
操作用パルス発生器(48C)と、駆動部(26)とが系統
づけられる。 機械(34)ないし(38)は、信号入出力部(16A)な
いし(16C)から各々入力された制御データと、プログ
ラムエリア(20A)ないし(20C)に各々格納された制御
プログラムとに基づいて、各々独立して制御される。す
なわち、独立して、起動動作や停止動作等が行われる。
このとき、制御部(12)では、いわゆるタスク制御が行
われる。つまり、制御部(12)では、プログラムエリア
(20A)、(20B)、(20C)内に格納されている制御プ
ログラムを系統づけられた各軸における異なる条件で、
すなわち各軸が起動状態にある場合や、停止状態にある
場合のときに実行される。しかも、実行される制御プロ
グラムは、現実には一つであり、各軸は時間的に独立し
た状態になっている。具体的には、プログラムエリア
(20A)内に格納された制御プログラムに基づくもの、
プログラムエリア(20B)内に格納された制御プログラ
ムに基づくもの、プログラムエリア(20C)内に格納さ
れた制御プログラムに基づくものが、それぞれ異なる時
間に実行され、制御データが演算される。そして、全制
御データの演算が終了すると一括して制御データを出力
及び実行するのである。従って、各軸は独立した動作を
行うことができるのである。 また、必要に応じて手動操作用パルス発生器(48A)
ないし(48C)が操作されて発生したパルスは、パルス
発生器用インタフェース(46A)ないし(46C)を各々介
して、制御部(12)に入力される。そして、上記パルス
と、数値制御装置内で予め選択されている倍率を乗じた
値に相当する移動量又は回転角度によって各系統ごとに
独立して制御軸の駆動制御が実行される。 以上のように、この例では、装置全体が三系統の独立
した数値制御装置として機能する。 次に、第5図を参照しながら、二つのサーボモータを
有する機械(40)と、一つのサーボモータを有する機械
(42)とを、各々独立して制御する場合について説明す
る。 第5図において、信号入出力部(16A)では、機械(4
0)に対する制御データD(40)の入出力が行われ、信
号入出力部(16C)では、機械(42)に対する制御デー
タD(42)の入出力が行われるものとする。 また、手動操作用パルス発生器(48C)では、機械(4
0)に対するパルス発生が行われ、手動操作用パルス発
生器(48A)では、機械(42)に対するパルス発生が行
われるものとする。 更に、プログラムエリア(20B)には、機械(40)を
動作させる制御プログラムが格納され、プログラムエリ
ア(20C)には、機械(42)に動作させる制御プログラ
ムが格納されているものとする。 この場合には、データエリア(20D)の系統制御手段
により、第5図に示すように、信号入出力部(16A)
と、プログラムエリア(20B)と、手動操作用パルス発
生器(48C)と、駆動部(22)及び(24)とが系統づけ
られ、信号入出力部(16C)と、プログラムエリア(20
C)と、手動操作用パルス発生器(48A)と、駆動部(2
6)とが系統づけられる。 機械(40)は、プログラムエリア(20B)に格納され
た制御プログラムにより制御され、機械(42)は、プロ
グラムエリア(20C)に格納された制御プログラムによ
り制御される。尚、機械(40)の制御においては、二つ
のサーボモータが対象であるから、演算部(18)では、
補間の演算が行われる。 以上のように、この例では、全体が二系統の独立した
数値制御装置として動作する。 次に、第6図を参照しながら、本実施例の更に他の動
作態様について説明する。 同図には、機械(44)が三つのサーボモータを有する
場合の例が示されている。この場合には、制御データD
(44)の入出力が行われる信号入出力部(16B)と、制
御プログラムが格納されているプログラムエリア(20
A)と、機械(44)に対するパルス発生が行われる手動
操作用パルス発生器(48B)と、駆動部(22)ないし(2
6)とが系統化される。この場合では、第2図に示した
装置と同様の一系統の制御が行われる。 尚、本発明は、何ら上記実施例に限定されるものでは
ない。例えば、上記実施例では、最大三つの独立した系
統を構築することができるが、二系統でもよいし、それ
以上の系統を構築できるようにしてもよい。 [発明の効果] 以上説明したように、本発明によれば、系統制御手段
が、一台の数値制御装置に設けられた複数の信号入出力
部と、複数の駆動部と、複数の手動操作用パルスの発生
部と、複数の制御プログラムとを、任意に組合せて任意
の軸数の系統を形成し、制御部が、前記任意の軸数の系
統毎の制御プログラムに基づいてタスク制御を実行する
ため、複数の各部を効率的に数値制御できるとともに、
コスト的にも有利になるという効果がある。 また、系統制御手段がプログラムであり、プログラム
の変更により、系統数を増減することができるため、装
置が複雑化せず、保守も容易になるという効果がある。
DETAILED DESCRIPTION OF THE INVENTION [Industrial Application Field] The present invention relates to a numerical control device,
The present invention relates to a numerical control device that controls a controlled axis including a plurality of spindles. [Prior art] Numerical control devices that instruct the position of a tool with respect to a workpiece by numerical information have advantages such as improved productivity, labor saving, and thorough management, and are applied to various machine tools and widely used. Have been. FIG. 2 shows an example of a conventional numerical controller. In this figure, the control unit (50) includes a central processing unit (hereinafter, referred to as “CPU”) (52), and further includes a data input / output unit (54) and a signal input / output unit (56). And a pulse generator interface (66). The pulse generator for manual operation (68) is connected to the interface for pulse generator (66). The control unit (50) further includes an arithmetic unit (58) and a storage unit (6
0) and the drive unit (62) are connected to each other, and the drive unit (6
2), a servo motor group (64) is connected. Of these, the data input / output unit (54) is for inputting / outputting processing data, particularly a processing program, from / to an external data input / output device (not shown), and the signal input / output unit (56) This is for inputting and outputting control data such as start and stop. In addition, the manual operation pulse generator (68) controls the rotation amount of the control shaft of the drive unit by manually instructing the drive amount of the control target as needed, and adjusts the position of the controlled machine. It is for. That is, the manual operation pulse generator (68) generates a pulse corresponding to the number of rotations, and moves or rotates the pulse corresponding to a value obtained by multiplying the pulse by a magnification selected in advance in the numerical controller. Drive control of the amount of rotation of the control shaft is performed according to the angle. Specifically, a pulse generator for manual operation (68)
, The control axis of the drive section starts driving with a rotation amount corresponding to the command pulse. Further, even when an error occurs in the position of the controlled machine during driving of the driving unit, the rotation amount of the control shaft is controlled by giving a command from the pulse generator for manual operation (68). Can be adjusted. This control amount is input to any of the three axes X, Y, and Z, but may be input to all of them. Next, the storage unit (60) is provided with a data area (60A) and a program area (60B). The processing data and the processing program input from the data input / output unit (54) are stored in the data area (60A), and the control data input from the signal input / output unit (56) is stored in the program area (60B). It has become so. Next, the calculation unit (58) performs calculations necessary for controlling the servomotor group (64) and the spindle. For example, when a drive command is given at a vector speed, the decomposition speed in the coordinate axis direction is , An arithmetic process such as interpolation for obtaining a moving distance for a predetermined time is performed. Next, the drive unit (62) corresponds to the fact that the servo motor group (64) is composed of three servo motors, a servo motor (64A), a servo motor (64B), and a servo motor (64C). And three drive circuits (62A), (62B), (62
C). Note that the servo motor group (64) actually corresponds to a servo motor of a three-axis driving portion of a machine tool such as a lathe or a drilling machine. Next, the operation of the above device will be described. Data necessary for performing processing control is input from an external device by a data input / output unit (54) and a signal input / output unit (56). These data are stored in the data area (60A) and the program area (60B) of the storage unit (60) by the control unit (50). Next, the control unit (50) sets the program area storage unit (60
Based on the programs and data stored in B), the calculation unit (58) performs the above-described interpolation and other calculations from the data and programs stored in the data area storage unit (60A), and is necessary for the drive unit (62). Performs various drive commands. At this time, interface 0 for pulse generator (66)
When the pulse is input from the pulse generator for manual operation (68) to the pulse control unit (50) via the controller, the driving amount of the control axis is determined by the amount of movement or rotation corresponding to the multiplication value of the pulse and the preselected magnification. Control is performed. As a result, the servo motor group (64) is driven, and required processing is executed according to the input data. As described above, the main shaft, the servo motors (64A), the servo motors (64B), and the servo motors (64C) of the servo motor group (64) are not driven independently, but are driven integrally as a whole. Is done. [Problems to be Solved by the Invention] By the way, in the above-described conventional numerical control device, the whole is operated by the control program stored in the program area (60B) of the storage unit (60), and the driving unit The servo motor (64A), servo motor (64B), and servo motor (64C) connected to (62) cannot be driven independently. For example, a servo motor (64A) is used for drill movement of a drilling machine, and a servo motor (64B) and a servo motor (64A) are used.
C) cannot be used for lathes. Therefore, it is necessary to provide a numerical controller as shown in FIG. 2 for each machine. Therefore, when numerical control of many machines is performed, a large amount of equipment is required, which is disadvantageous in terms of cost. The present invention has been made in view of the above point, and an object of the present invention is to provide a numerical control device that can numerically control a plurality of machines efficiently and is advantageous in cost. [Means for Solving the Problems] According to the present invention, a necessary operation is performed by an operation unit based on control data input from a signal input / output unit, and a control program and a machining program stored in a storage unit. In the numerical control device which gives necessary control commands to the drive unit to be controlled by the control unit and controls the drive amount of the control object by the pulse generator for manual operation, data for inputting and outputting machining data and a machining program Input / output unit, multiple signal input / output units that can independently input and output control data, multiple drive units that can independently drive controlled objects, and can generate pulses independently A plurality of pulse generators for manual operation, and a plurality of control programs that can be independently executed, provided in one numerical control device, the machining data and the control data and By referring to a number of control programs, the plurality of signal input / output units, the plurality of driving units, the plurality of manual operation pulse generation units, and the plurality of control programs, arbitrarily combined System control means stored in the storage unit that forms a system with an arbitrary number of axes, wherein the control unit performs control based on the control program for each system with the arbitrary number of axes. I do. [Operation] The present invention mainly includes a data input / output unit, a signal input / output unit, a drive unit, a manual operation pulse generation unit, a control program, and a system control unit. Here, a plurality of signal input / output units, driving units, manual operation pulse generation units, and control programs are provided in one numerical control device. The signal input / output units can independently input and output control data. The driving units can independently drive the control target. The pulse generator for manual operation can generate a pulse independently of each other. The control program is
Each can be executed independently. The system control unit is a program stored in the storage unit, and by referring to machining data, control data, and a plurality of control programs, the plurality of signal input / output units, a driving unit, a pulse generator for manual operation, Control systems are arbitrarily combined to form a system with an arbitrary number of axes. That is, in the present invention, a single numerical control device is provided with a plurality of signal input / output units, a drive unit, a pulse generator for manual operation, and a plurality of control programs. They are grouped into systems with an arbitrary number of axes provided. Further, since the system control means is a program stored in the storage unit, the number of systems is not limited by the hardware configuration. In other words, the number of systems can be increased or decreased by changing the processing contents of the program of the system control means. Further, the control unit performs control based on a control program for each grouped system. That is, the control unit gives necessary control commands to the drive unit for driving the control target based on the control program for each grouped system, and at this time, the control unit Cannot be executed at the same time, and any one of the control programs in each system is executed in a designated system order by so-called task control, so that a time shift occurs in the calculation of data for each system. . Therefore, in order to maintain the synchronization of the control axes of the numerical controller, the data calculated for each system is output and executed collectively by another task. In this way, the control unit can execute each control program for each system under different input conditions, and can realize multi-system control. Therefore, integrated control is performed for each system having an arbitrary number of axes configured for each group. Here, the control program refers to a program for analyzing and executing a machining program, for example, a program written in a computer language such as C language or assembler language, or a program that can be executed on a CPU. It was done. The machining program refers to a program for machining a workpiece, and is described in a so-called NC program language. The calculation unit performs an interpolation calculation between the control targets combined with the system by the system control unit. That is, the calculation unit performs the interpolation calculation between the control targets in an arbitrary group. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. FIG. 1 shows an embodiment of a numerical controller according to the present invention. In the figure, a data input / output unit (14) is connected to a control unit (12) including a CPU (10). The data input / output unit (14) corresponds to the data input / output unit (54) in FIG. 2 and exchanges a machining program and machining data with an external data input / output device (not shown). . Next, a signal input / output device (16) is connected to the control unit (12). This signal input / output device (16) has a signal input / output unit (16
A), (16B) and (16C). That is, each of the signal input / output units (16A), (16B), and (16C) has the same function as the signal input / output unit (56) of FIG. Further, a pulse generator interface section (46) is connected to the control section (12). The pulse generator interface section (46) includes pulse generator interfaces (46A), (46
B) and (46C). In other words, pulse generator interfaces (46A), (46B), (46C)
Are the pulse generator interfaces (6
It has the same function as 6). The pulse generator interfaces (46A), (46B), and (46C) have manually operated pulse generators (48A), (48B), and (48C) that can generate pulses independently of each other. It is connected. Next, an arithmetic unit (18) is connected to the control unit (12). The calculation unit (18) performs the above-described interpolation and other calculations. Next, the storage unit (20) is connected to the control unit (12). This storage unit (20) stores the program area (20
A), (20B) and (20C). These program areas (20A), (20B), and (20C) store control programs that can operate independently. That is, the control programs stored in the program areas (20A), (20B), and (20C) have the same functions as the programs stored in the program area (60B) in FIG. Can be run independently. Further, the storage section (20) is provided with a data area (20D). This data area (20D) stores the processing data and the processing program, similarly to the data area (60A) in FIG. 2, but in addition, the system control means is programmed and stored. Next, the control unit (12) includes the drive units (22), (24),
(26) are connected to each other. These drives (22),
(24) and (26) can operate independently, and the second
Each has the same function as that of the driving section (62) in the figure. However, only one axis can be controlled. Next, servo motors (28), (30), and (32) are connected to the driving units (22), (24), and (26), respectively. The servomotors (28), (30), and (32) are not necessarily of the same machine, but may be of two or more types of machines, and can operate independently. Next, the system control means stored in the data area (20D) will be described. The execution of the system control means is performed by the control unit (12). As shown in FIG. 3, first, refer to the data input from the data input / output unit (14) and the signal input / output unit (16), and the control programs stored in the program areas (20A) to (20C). Then, which control program is to be operated is determined (see steps SA, SB and SC). Next, a control program to be operated and a signal input / output unit (16A) for inputting and outputting control data used for the control program
Or (16C) is determined (see step SD). Next, the control program to be operated and the pulse generator for manual operation (48A) to generate a pulse (48A) to (48
Determine the correspondence with C) (see step SE). Further, the correspondence between the control program and the drive units (22) to (26) to be operated is determined (see step SF). As described above, the system control means includes the signal input / output units (16A) to (16C), the program areas (20A) to (20C), the drive units (22) to (26), Pulse generator for manual operation (48A) or (4
8C), and has a function of dividing into any group having an arbitrary number of axes and at least one of them. Next, the overall operation of the above embodiment will be described by taking various cases as examples. First, referring to FIG. 4, a single-axis machine (34),
A case where (36) and (38) are controlled independently will be described. In the signal input / output section (16A), the machine (34)
Control data D (34) is input / output, and the signal input / output unit (16
In B), the control data D (36) of the machine (36) is input / output, and the control data D (38) of the machine (38) is input / output in the signal input / output unit (16C). Also, the pulse generator for manual operation (48A) uses a mechanical (3
The pulse generation for 4) is performed, the pulse generator for manual operation (48B) generates a pulse for the machine (36), and the pulse generator for manual operation (48C) generates
Pulse generation for 8) shall be performed. Then, in the program area (20A) or (20C),
It is assumed that control programs for the machines (34) to (38) are stored respectively. In this case, the signal input / output unit (16A), the program area (20A), the manual operation pulse generator (48A),
The drive unit (22) is systematized, and the signal input / output unit (16B)
, A program area (20B), a pulse generator for manual operation (48B), and a drive section (24) are systematized. A signal input / output section (16C), a program area (20C), and a The pulse generator (48C) and the drive unit (26) are systematized. The machines (34) to (38) are based on the control data respectively input from the signal input / output units (16A) to (16C) and the control programs stored in the program areas (20A) to (20C). Are controlled independently. That is, a start operation, a stop operation, and the like are performed independently.
At this time, the control unit (12) performs so-called task control. That is, in the control unit (12), the control programs stored in the program areas (20A), (20B), and (20C) are processed under different conditions in each of the systematic axes.
That is, it is executed when each axis is in the activated state or in the stopped state. In addition, in reality, only one control program is executed, and each axis is temporally independent. Specifically, based on the control program stored in the program area (20A),
A program based on the control program stored in the program area (20B) and a program based on the control program stored in the program area (20C) are executed at different times, and control data is calculated. Then, when the calculation of all the control data is completed, the control data is output and executed collectively. Therefore, each axis can perform an independent operation. A pulse generator for manual operation (48A) if necessary
The pulses generated by operating (48C) to (48C) are input to the control unit (12) through the respective pulse generator interfaces (46A) to (46C). Then, the drive control of the control axis is executed independently for each system by the movement amount or the rotation angle corresponding to a value obtained by multiplying the pulse by a magnification previously selected in the numerical controller. As described above, in this example, the entire device functions as three independent numerical control devices. Next, a case where the machine (40) having two servomotors and the machine (42) having one servomotor are controlled independently will be described with reference to FIG. In FIG. 5, the signal input / output unit (16A)
It is assumed that input / output of control data D (40) to / from the device (0) is performed, and input / output of control data D (42) to / from the machine (42) is performed at the signal input / output unit (16C). In addition, with the pulse generator for manual operation (48C), the machine (4
0), and the pulse generator (48A) for manual operation generates a pulse for the machine (42). Further, it is assumed that a control program for operating the machine (40) is stored in the program area (20B), and a control program for operating the machine (42) is stored in the program area (20C). In this case, as shown in FIG. 5, the signal input / output unit (16A) is controlled by the system control means of the data area (20D).
, A program area (20B), a pulse generator for manual operation (48C), drive units (22) and (24) are systematized, a signal input / output unit (16C), and a program area (20C).
C), a pulse generator for manual operation (48A), and a drive unit (2
6) are systematized. The machine (40) is controlled by a control program stored in the program area (20B), and the machine (42) is controlled by a control program stored in the program area (20C). In the control of the machine (40), two servo motors are targeted.
An interpolation operation is performed. As described above, in this example, the whole operates as two independent numerical control devices. Next, still another operation mode of the present embodiment will be described with reference to FIG. The figure shows an example where the machine (44) has three servomotors. In this case, the control data D
The signal input / output section (16B) for input / output of (44) and the program area (20
A), a pulse generator for manual operation (48B) for generating pulses to the machine (44), and the driving units (22) to (2)
6) is systematized. In this case, one system control similar to that of the apparatus shown in FIG. 2 is performed. Note that the present invention is not limited to the above embodiment. For example, in the above embodiment, up to three independent systems can be constructed. However, two systems may be constructed, or more systems may be constructed. [Effects of the Invention] As described above, according to the present invention, the system control means includes a plurality of signal input / output units provided in one numerical control device, a plurality of driving units, and a plurality of manual operations. A pulse generation unit and a plurality of control programs are arbitrarily combined to form a system with an arbitrary number of axes, and the control unit executes task control based on the control program for each system with the arbitrary number of axes. In order to perform numerical control of each part efficiently,
This has the effect of being advantageous in terms of cost. Further, the system control means is a program, and the number of systems can be increased or decreased by changing the program. Therefore, there is an effect that the apparatus is not complicated and maintenance is easy.

【図面の簡単な説明】 第1図は本発明の一実施例を示す回路ブロック図、第2
図は従来の数値制御装置を示す回路ブロック図、第3図
は系統制御手段の機能を説明する説明図、第4図ないし
第6図は第1図の実施例の動作態様を示す説明図であ
る。 図において、(12)は制御部、(16)は信号入出力装
置、(18)は演算部、(20)は記憶部、(20A),(20
B),(20C)はプログラムエリア、(20D)はデータエ
リア、(22)、(24)、(26)は駆動部、(28)、(3
0)、(32)はサーボモータ、(46)はパルス発生器用
インタフェース部、(48)は手動操作用パルス発生器で
ある。 なお、各図中同一符号は、同一又は相当部分を示すもの
とする。
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a circuit block diagram showing one embodiment of the present invention, and FIG.
FIG. 1 is a circuit block diagram showing a conventional numerical control device, FIG. 3 is an explanatory diagram for explaining the function of a system control means, and FIGS. 4 to 6 are explanatory diagrams showing an operation mode of the embodiment of FIG. is there. In the figure, (12) is a control unit, (16) is a signal input / output device, (18) is an arithmetic unit, (20) is a storage unit, (20A), (20
(B) and (20C) are the program area, (20D) is the data area, (22), (24) and (26) are the drive units, (28) and (3)
0) and (32) are servomotors, (46) is a pulse generator interface unit, and (48) is a pulse generator for manual operation. Note that the same reference numerals in each drawing indicate the same or corresponding parts.

Claims (1)

(57)【特許請求の範囲】 1.信号入出力部から入力された制御データと、記憶部
に格納された制御プログラムと加工プログラムとに基づ
いて、演算部で必要な演算を行い、制御部により制御対
象の駆動部に必要な制御指令を与えるとともに、手動操
作用パルス発生部によって必要な制御対象の駆動量制御
を行う数値制御装置において、 加工データ及び加工プログラムを入出力するデータ入出
力部と、各々独立して制御データの入出力の可能な複数
の信号入出力部と、各々独立して制御対象の駆動の可能
な複数の駆動部と、各々独立してパルス発生の可能な複
数の手動操作用パルス発生部と、各々独立して実行可能
な複数の制御プログラムとを、一台の数値制御装置に設
けるとともに、 前記加工データと前記制御データと前記複数の制御プロ
グラムとを参照することにより、前記複数の信号入出力
部と、前記複数の駆動部と、前記複数の手動操作用パル
ス発生部と、前記複数の制御プログラムとを、任意に組
合せて任意の軸数の系統を形成する前記記憶部に格納さ
れた系統制御手段とを設け、 前記制御部が、前記任意の軸数の系統毎の前記制御プロ
グラムに基づいて制御を行うことを特徴とする数値制御
装置。 2.前記演算部は、前記系統制御手段によって組み合わ
された制御対象間で、補間の演算を行う特許請求の範囲
第1項に記載の数値制御装置。
(57) [Claims] Based on the control data input from the signal input / output unit, the control program and the machining program stored in the storage unit, the calculation unit performs necessary calculations, and the control unit issues control commands necessary for the drive unit to be controlled. And a data input / output unit for inputting / outputting processing data and a processing program, and a control input / output for each independently. A plurality of signal input / output units capable of independently driving, a plurality of drive units each capable of independently driving a controlled object, and a plurality of manual operation pulse generators each capable of independently generating a pulse; And a plurality of control programs executable by a single numerical control device, and by referring to the machining data, the control data, and the plurality of control programs. The plurality of signal input / output units, the plurality of driving units, the plurality of manual operation pulse generation units, and the plurality of control programs are arbitrarily combined to form a system having an arbitrary number of axes. A numerical controller provided with system control means stored in a storage unit, wherein the control unit performs control based on the control program for each system with the arbitrary number of axes. 2. 2. The numerical control device according to claim 1, wherein the calculation unit performs an interpolation calculation between control targets combined by the system control unit.
JP61198248A 1986-07-04 1986-08-26 Numerical control unit Expired - Lifetime JP2779797B2 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP61198248A JP2779797B2 (en) 1986-08-26 1986-08-26 Numerical control unit
KR1019870007064A KR910002317B1 (en) 1986-07-04 1987-07-02 Numerical control device
US07/069,336 US4862379A (en) 1986-07-04 1987-07-02 Numerical control machine
DE19873722084 DE3722084A1 (en) 1986-07-04 1987-07-03 NUMERICALLY CONTROLLED FACILITY

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61198248A JP2779797B2 (en) 1986-08-26 1986-08-26 Numerical control unit

Publications (2)

Publication Number Publication Date
JPS6354603A JPS6354603A (en) 1988-03-09
JP2779797B2 true JP2779797B2 (en) 1998-07-23

Family

ID=16387967

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61198248A Expired - Lifetime JP2779797B2 (en) 1986-07-04 1986-08-26 Numerical control unit

Country Status (1)

Country Link
JP (1) JP2779797B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112005003086T5 (en) * 2005-12-26 2007-11-08 Mitsubishi Denki K.K. Numerical control device and machine tool with numerical control

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4514814A (en) * 1982-09-07 1985-04-30 General Electric Company Multi-processor axis control
JPS61131105A (en) * 1984-11-30 1986-06-18 Fanuc Ltd Control system of lathe having two tool boxes

Also Published As

Publication number Publication date
JPS6354603A (en) 1988-03-09

Similar Documents

Publication Publication Date Title
JP3665008B2 (en) Synchronization control method and synchronization control apparatus
EP0378708A1 (en) Apparatus for controlling acceleration and deceleration for servo control
EP0357778B1 (en) Method of speed control for servomotor
KR910002317B1 (en) Numerical control device
JP2000347713A (en) Numerical controller
US6999844B2 (en) Numerical controller
JPH03196310A (en) Display system for numerical controller
JP2779797B2 (en) Numerical control unit
KR20020012199A (en) Programmable controller
JP2779796B2 (en) Numerical control unit
JP2687119B2 (en) Numerical control unit
JP2694638B2 (en) Numerical control unit
JP2694639B2 (en) Numerical control unit
JPS6354605A (en) Numerical controller
JP6916409B1 (en) Numerical control device
JP2687120B2 (en) Numerical control unit
JPS6354606A (en) Numerical controller
JPS60231207A (en) Command generating system of multi-axis servo system
US11590620B2 (en) Motion control method for dual-spindle machining, dual-spindle machining apparatus and computer program product
WO2022196622A1 (en) Numerical control device
JP3534845B2 (en) Multi-axis positioning controller
JPS6354608A (en) Numerical controller
JP3491913B2 (en) Numerical control unit
JPS6349903A (en) Numerical controller
JPH08234819A (en) Numerical controller